Recovery for overloaded mobile edge computing

Recovery for overloaded mobile edge computing

Accepted Manuscript Recovery for overloaded mobile edge computing Dimas Satria, Daihee Park, Minho Jo PII: DOI: Reference: S0167-739X(16)30209-6 http...

1MB Sizes 154 Downloads 180 Views

Accepted Manuscript Recovery for overloaded mobile edge computing Dimas Satria, Daihee Park, Minho Jo PII: DOI: Reference:

S0167-739X(16)30209-6 http://dx.doi.org/10.1016/j.future.2016.06.024 FUTURE 3090

To appear in:

Future Generation Computer Systems

Received date: 30 January 2016 Revised date: 10 April 2016 Accepted date: 20 June 2016 Please cite this article as: D. Satria, D. Park, M. Jo, Recovery for overloaded mobile edge computing, Future Generation Computer Systems (2016), http://dx.doi.org/10.1016/j.future.2016.06.024 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Highlights (for review)

Highlights  Fail-safe mobile-edge computing system is proposed.  The system uses multihop wireless network.  The system allows multi destination data transfer for mobile users to relay.

*Manuscript with source files (Word document) Click here to view linked References

Recovery for Overloaded Mobile Edge Computing Dimas Satria Department of Computer and Information Science Korea University Sejong City, South Korea [email protected] *Corresponding author:

Daihee Park Department of Computer and Information Science Korea University Sejong City, South Korea [email protected]

Minho Jo* Department of Computer and Information Science Korea University Sejong City, South Korea [email protected]

Minho Jo ([email protected])

*Corresponding author: Minho Jo ([email protected])

Abstract—Mobile edge computing (MEC) allows the use of its services with low latency, location awareness and mobility support to make up for the disadvantages of cloud computing. But an overloaded MEC system or any MEC system failure significantly degrades quality of experience (QoE) and negates the advantages of MEC. In this paper, we propose two different recovery schemes for overloaded or broken MEC. One recovery scheme is where an overloaded MEC offloads its work to available neighboring MECs within transfer range. The other recovery scheme is for situations when there is no available neighboring MEC within transfer range. The second scheme accesses user devices of a neighboring MEC adjacent to the overloaded MEC as ad-hoc relay nodes in order to bridge the transfer disconnect between two MECs. Numerical experiments demonstrated the performance and verified the possibility of the proposed schemes, providing insightful results for potential future research. Index Terms—mobile edge computing (MEC); recovery schemes; offloading; ad-hoc relay node; fog computing 1

1. Introduction Nowadays, many organizations and institutes have built applications that take advantage of cloud computing to handle big-data processes or to provide services to users. Cloud computing can provide elastic resources which enables application providers seamlessly scaling their services [1]. For enterprises, they can use cloud computing for consumer support system to deliver services to customers based on their needs, preferences, or past transactions [2]. Cloud computing can provide multi-level authentication as a service for users to have high security networks [3]. Despite the fact that cloud computing provides many benefits to the users, it poses some limitations and challenges [4]. One of the challenges arise when users require quick responses from the system for delay-sensitive applications. Existing cloud computing cannot satisfy requirements for low latency, location awareness, and mobility support. Therefore, in order to resolve the disadvantages of cloud computing, the mobile edge computing paradigm, sometimes called fog computing, recently emerged. The European Telecommunications Standards Institute (ETSI) defines mobile edge computing (MEC) as an extension of cloud computing. MEC can be illustrated as a cloud server at the edge of a mobile network to provide information technology and cloud computing capabilities to mobile subscribers [5]. The MEC architecture generally can be seen like Fig. 1. The MEC architecture consists of user devices, MEC at the proximity of the user devices, and cloud infrastructure. Infrastructure-to-device (I2D) communication between the user devices and MEC can be LTE or any other wireless communication protocols. MEC is connected via core network to cloud servers which is hosted somewhere in the Internet. MEC can process and optimize partially big data collected from devices before transferring them to the cloud servers. Doing big data analytics in MEC instead of cloud infrastructures prevents wasting huge amount of bandwidth when data collection from devices are transferred to core network [6]. MEC opens big opportunities for many users to run compute-intensive calculations for their applications in real time. The existence of MEC may also help cloud servers to improve website performance [7]. 2

Based on the ETSI standard [5], MEC deployment can be inside the base station or at an aggregation point within a radio access network (RAN). Integrating a MEC platform inside the base station results in minimal latency to mobile users since that is the closest point to them in the mobile network [8]. Integrating a MEC platform at an aggregation point has advantages when the system locates multiple base stations closely together. This strategy may serve several base stations by using only one MEC server to reduce deployment costs.

Figure 1. Mobile edge computing architecture.

MEC can play a role in real-time computing services in limited areas. Augmented reality, face recognition, interactive gaming, unmanned vehicles, drones, smart traffic control systems, surveillance systems, and natural language processing are examples of mobile applications that attract great attention nowadays, and that will greatly benefit from mobile edge computing’s fast computation [9-14]. MEC system failure, however, can be caused by hardware breakdown, software breakdown, or MEC resource overflow (an overloaded MEC). MEC system failure affects the quality of experience (QoE) for users and negates MEC advantages. MEC system failure may render it unable to fulfill service requests; or worse, all 3

users will lose the MEC connection. The cost of MEC downtime can be painful for industries when they rely on MEC to run their businesses. Thus, we propose two recovery schemes to solve the MEC failure problem. The first recovery scheme, called recovery scheme I, is designed for when there is at least one available neighboring MEC within wireless transfer range of an overloaded MEC (O-MEC). The second scheme is designed for situations when there is no available neighboring MEC within wireless transfer range of the overloaded MEC. For recovery scheme II, we use mobile user devices of available neighboring MECs as ad-hoc relay nodes to connect mobile user devices of the O-MEC to an available neighboring MEC. Under both schemes, neighboring MECs are grouped into a cluster based on geographic position relative to the location of the OMEC. The MECs for both recovery schemes are deployed inside the base station as the edge between the mobile network and IP network. To the best of our knowledge, we are introducing the first-ever MEC recovery. We provide numerical simulation results showing the possibilities of our proposed recovery schemes. Because recovery scheme II is much more complex and realistic, we only do a simulation for recovery scheme II in this paper. In recovery scheme II, we develop an optimization formula for assigning ad-hoc relay nodes to data transfer demands of the disconnected mobile user devices of the overloaded MEC. The numerical results show the possibilities of our proposed recovery schemes and provide insightful future research topics. The rest of the paper is set out as follows. Section 2 discusses related work. Section 3 presents the two proposed recovery schemes. We show the numerical results in Section 4. Finally, Section 5 concludes this research. 2. Related Work To the best of our knowledge, there is no previous work on recovery schemes for mobile edge computing failure. The related research is not specifically for MEC, but the approaches are related to recovery from MEC failure. 4

Nishiyama et al. proposed a multihop device-to-device (D2D) communications network system in 2014 with a decentralized infrastructureless communications system after a disaster [15]. The proposed system can choose the best routing technologies between mobile ad hoc network (MANET)-type and delay/disruption-tolerant (DTN)-type networks, according to the situation and the usage method. Their prototype can transmit messages by relaying them through other mobile terminals without any infrastructure support. In 2012, Reddy et al. proposed route recovery in vehicle-to-vehicle (V2V) communications to deliver the data safely to the destination [16]. In a network, there is frequent link failure due to high mobility of nodes from the available network region. Frequent link failure prevents packets from reaching their respective destinations. The main goal of their scheme is to establish parallel routes during link failures for real-time application scenarios in order to deliver the data safely to their destinations and to minimize losses. In 2013, Kenington and Westberg proposed a failure predictor for base stations by analyzing the frequency of the plurality of alarms and warnings in order to assess the likelihood of failure [17]. Li et al. proposed virtual machine provisioning (VMP) mechanism in 2015 to adapt workload fluctuation in cloud computing [18]. They adopted the exponential smoothing (ES) prediction to forecast the arrival rate of forthcoming jobs. Computing resource scheduling is expected as key solution for maximizing the provider’s profit, and as well for protecting customers’ quality of service (QoS) in cloud. Loke proposed an abstract model of context-aware systems in sensor-cloudlets and context-cloudlets in 2012 [19]. The cloudlets depend on and adapt to the available resources at the time that utilize sensors, reasoning components, and component mapping context into actions. The author also explained composition of sensors and key components supporting a mix-and-match approach for assembling resources to build a context-aware system. In 2016, Liu et al. proposed an energy-efficient scheduling of tasks, in which the mobile device offloads appropriate tasks with time constraint to the cloud via a Wi-Fi access point [20]. Offloading tasks

5

to the cloud considers sequential tasks, parallel tasks, and hybrid tasks. The purposes of proposed work are for accelerating executions and saving energy consumption of mobile device. Chang et al. developed a mobile cloud-based depression diagnosis framework in 2015 [21]. The system integrates an ontology and a Bayesian network to deduce the probability of becoming depressed. The system leverages mobile agent technology and cloud environment to implement the diagnosis environment. Saleem et al. proposed resource management in mobile sink (MS) based wireless sensor networks (WSN) in 2014 that is integrated with cloud computing [22]. Some applications incorporating wireless sensors and cloud computing are described. The authors also explained the mobile sink trajectories to collect data from sensor nodes and transfer the data to cloud in energy efficient manner. Ghafoor et al. proposed an efficient trajectory design for mobile sink in WSN in 2014 [23]. The trajectory is based on the Hilbert Curve Order that depends on the node density to achieve the full node coverage with better packet delivery ratio. In 2015, Ahmed et al. surveyed the state-of-the-art cloud-based mobile application execution frameworks (CMAEFs) in perspective of seamless application execution in mobile cloud computing [24]. The authors classified the seamless application execution to formulate a taxonomy. The principles of designing seamless CMAEFs in the mobile cloud computing and open challenges to execute the seamless application are presented. Ahmed et al. comprehensively studied mobile application execution framework with some optimization strategies related to design, deployment, and execution of application migration in mobile cloud computing in 2015 [25]. They also presented several application scenarios that require application execution optimization related to mobile cloud computing. Various metrics in context of optimal application execution including mobile device, network, application type, user preferences, and cost are discussed. Saleem et al. presented the integration of Cognitive Radio Sensor Networks (CRSNs) with cloud computing to overcome resource limitation in 2014 [26]. The integration of both technologies helps CRSNs 6

in better spectrum sensing and to provide bigger storage and computational support. The authors discussed the issues and challenges for cloud based CRSN. In 2015, Shaukat et al. presented comprehensive survey on mobile cloudlet architectures [27]. The authors discussed the critical aspects of the current cloudlet frameworks in mobile cloud computing to show the strengths and weaknesses of the frameworks. The requirements to deploy a cloudlet in wireless local area networks successfully are also presented. Rehmani and Pathan presented different types of emerging communication technologies based on WSNs in 2015 [28]. The principal working methods of WSNs with their characteristics are discussed. The authors provided several schemes related to WSNs including energy-efficient data collection, distribution mechanism, distributed data gathering algorithms for mobile WSNs, and mobility schemes. Wei et al. proposed a cloud resource allocation model based on an imperfect information Stackelberg game (CSAMIISG) using Hidden Markov model (HMM) in 2016 [29]. The proposed model is intended to solve the problem in resource allocation in the cloud computing that is lacking of incentives and fairness by using a multidimensional resource auction. HMM is used to predict a current price based on the service providers’ historical resource demand. The imperfect information Stackelberg game model dynamically predicts the bid and can motivate service providers to choose the optimal bidding strategy. But none of the previous research is for MEC. In addition, we introduce a new approach using mobile user devices as ad-hoc relay nodes (RNs) for recovery. 3. Proposed Recovery Scheme MEC system failure can occur when a MEC is overloaded and/or broken. MEC can be overloaded by serving too many tasks, managing too many resources, performing data filtration, or from handling too many service requests. MECs are deployed in the base station or at an aggregation point that is close to users in a specific limited area. Clustering neighboring MECs within radio transfer range prepares available neighboring 7

MECs in the cluster to assist O-MEC(s) by workload offloading. One MEC in the cluster becomes a cluster head to manage the recovery system, ensuring it works well, and it makes the decision as to when any MEC is overloaded or broken. All MECs inside the cluster are connected using wireless broadband communications. But sometimes, it is impossible to cluster MECs that are outside transfer range, which is the scenario for recovery scheme II. Nevertheless, we cluster MECs neighboring an overloaded MEC in as short a distance as possible in order to find possible ad-hoc relay nodes. The status of MECs is sent to the cloud server periodically by MEC cluster head. So, the network engineer can notice any problem in MEC system immediately. The proposed recovery system uses a traffic counter for every MEC in order to prepare for situations of system failure, as illustrated in Fig. 2. A traffic counter calculates the number of users connected to the MEC in real time.

Figure 2. Traffic counter for MEC.

Our proposed algorithm for recovery from MEC failure is shown in Table 1. The recovery algorithm for MEC failure has two steps: (1) get traffic counter data, and (2) check the MEC status and recovery schemes. In step (1), MEC retrieves data reports from all users monitored by the traffic counter. The total number of service requests from users will overflow in MEC when it increases to a certain threshold level. Traffic counter data from step (1) will be used in step (2) for making a decision. 8

Table 1. Recovery algorithm for MEC failure (1) Get traffic counter data. 1: totalServiceRequest = GetTotalServiceRequest() (2) Check MEC status and recovery schemes. 2 : MECResourceStatus = GetResourceStatus() 3: 4 : if ((MECResourceStatus == overload) || 5 : (totalServiceRequest >= totalServiceThreshold)) 6: 7 : notify MEC cluster head of MEC status 8: 9 : if (offloading directly to neighboring MECs == available) 15: // [Recovery Scheme I] 16: get info about available MECs from cluster head 19: share load with other available MECs 20: else 21: // offloading to neighboring MECs through ad-hoc relay nodes 22: if (workload offloading by ad-hoc relay node == available) 23: // [Recovery Scheme II] 24: perform multihop communication 25: end if 29: end if 30: end if

In step (2) (checking MEC status and the recovery schemes), the recovery algorithm for MEC failure determines different recovery schemes for the different network topology situations. One MEC checks the resource status to determine if it is overloaded. If a MEC is overloaded, it sends a notification message to the MEC cluster head to prepare other available MECs to help. If there are any available neighboring MECs from the same cluster around the O-MEC and within wireless radio transfer range, the recovery algorithm for MEC failure will trigger recovery scheme I. Recovery scheme I allows the O-MEC to offload work to other MECs within the same cluster. If there is no available neighboring MEC around the O-MEC, the O-MEC will run recovery scheme II to offload work to neighboring MECs through ad-hoc relay nodes.

9

3.1 Recovery scheme I: offloading directly to neighboring MECs

Figure 3. Offloading within MEC cluster in recovery scheme I.

When a MEC is out of service, other MECs within the same cluster can help by sharing their own resources for the workload. Fig. 3 describes recovery scheme I. In Fig. 3, MEC 1 analyzes the MEC resources that show MEC 1 has failed due to excessive workload. MEC 1 sends notification to the cluster head, MEC 3. MEC 3 searches for an available MEC within wireless radio transfer range in the same cluster to help MEC 1. After that, MEC 3 informs MEC 1 of the address of the MEC available for offloading. In this case, MEC 1 passes the excessive load directly to the other available MEC to recover from the service failure.

3.2 Recovery scheme II: offloading to neighboring MECs through ad-hoc relay nodes It is possible that there are no available neighboring MECs around the O-MEC because they are outside wireless-transfer range or because all neighboring MECs are working at full capacity, as shown in Fig. 4. Thus, the O-MEC will not be able to provide services anymore. To solve the problem, we propose that the 10

user devices of an available MEC adjacent to the O-MEC become ad-hoc RNs. Notice that the ad-hoc RNs are not base stations of femto/pico cells, but are users in neighboring MECs. Fig. 4 illustrates that the OMEC is overloaded. Therefore, the users in the O-MEC are disconnected and do not get service from that MEC anymore.

Figure 4. Recovery scheme II by using nodes of available neighboring MEC 1 and MEC 2 adjacent to the O-MEC.

11

Figure 5. Multihop wireless network with ad-hoc RNs and disconnected nodes in recovery scheme II.

The disconnected user devices in the O-MEC are grouped based on geographic position closely related to the location of adjacent user devices of the recovery MECs. There are two types of disconnected user device: a disconnected user device adjacent to an ad-hoc relay node (called an adjacent disconnected node), and a disconnected user device not adjacent to an ad-hoc relay node (called a normal disconnected node). Each cluster head of disconnected user devices sends messages to its neighboring ad-hoc RNs to determine whether they are connected to any available recovery MEC. If the neighboring ad-hoc RNs are connected to an available recovery MEC, then the disconnected user devices in the O-MEC will search for the possible paths from among all pairs of devices using the Floyd-Warshall algorithm in a multihop wireless network environment. This operation requires O(n3) time complexity. The disconnected user devices in the O-MEC are divided into two parts in Fig. 4. On the left, user devices in cluster A build a multihop wireless network, whereas on the right, user devices in cluster B build the other multihop wireless network. 12

Fig. 5 illustrates a multihop wireless network for recovery of disconnected user devices in the O-MEC. The recovery MEC receives service requests from the disconnected user devices via ad-hoc RNs. A user device of the recovery MEC plays the role of ad-hoc RN on the border of the O-MEC. The radio transfer link availability from an ad-hoc RN to the disconnected nodes depends on the signal-to-noise ratio (SNR) among them. SNR should be more than a certain threshold in order to maintain the communications link. The Floyd-Warshall algorithm is applied to finding some possible paths from each of the disconnected user devices to the recovery MEC in the user device cluster. The routing algorithm used in this recovery scheme is different from the general routing protocols for ad-hoc networks such as AODV, DSR, and DSDV in the following reasons. Our proposed mobile edge recovery routing protocol should consider two additional important constraints for building a recovery route. Namely the proposed recovery routing should find nearest recovery MEC and ad-hoc relay nodes first and then must route through them. On the other hand general ad-hoc routing protocols do not need to do it. Our proposed recovery routing protocol is more difficult than the general ad-hoc routing ones. The proposed MEC recovery routing algorithm has been designed for finding the shortest path and other possible alternative paths from the ad-hoc RNs to each disconnected node. The purpose of finding many possible paths is that when the shortest path in the MEC network is suddenly broken, the recovery MEC can still communicate with the disconnected user device via the other alternative paths. Transferring data from recovery MEC to the disconnected user devices is limited by capacity (resources) of available adhoc RNs. It is possible that ad-hoc RNs cannot afford to receive massive data at a time due to limited capacity. Therefor the recovery MEC partitions the data and sends them in several data chunks. The recovery MEC can use several paths in the ad-hoc network to send multiple data in chunks for a disconnected user device at one time. “Hello” message is periodically broadcasted in the network to see the current status of connection links among the nodes. When a normal disconnected node needs a service from the recovery MEC, that node will send the service request via the shortest path in the multihop 13

wireless network to an adjacent disconnected node. This adjacent disconnected node will forward the service request to an ad-hoc RN. Then the ad-hoc RN will pass the service request to a recovery MEC. The recovery MEC sends a flag message back to the normal disconnected node in order to notify that the service request is received and will be processed. When the requested service is completed, the recovery MEC transmits the recovery result to the cloud server and/or to the normal disconnected node. If the disconnected users are a collection of sensor nodes in wireless sensor network to use massive data analytics service from the recovery MEC, the recovery MEC may not need to send a flag message when a service request is received. The recovery MEC is not required to send a big data analytics service result report to the cloud server. Our research only considers data downlink from the recovery MEC by LTE technology with frequency division duplex (FDD). Data uplink by LTE will be left for further research. The recovery MEC is assumed to be a single data source for disconnected users. The data frame structure for LTE has two types: type 1 for FDD and type 2 for time division duplex (TDD). One radio frame of LTE downlink type 1 consists of 10 subframes. The frame structure of type 1 is applicable to both full duplex and half duplex FDD [30]. A base station can send one downlink subframe in 10 msec. Every subframe has two slots. The slot is usually called a resource block (RB). The dimension of a resource block is 12 subcarriers in the frequency domain by six or seven symbols in the time domain. Each subcarrier occupies 15 kHz. If the resource block uses a normal cyclic prefix (CP), it has seven symbols. One subcarrier by one symbol builds a resource element. So, one resource block contains 84 resource elements if a normal CP is used. Depending on the transmission bandwidth of the MEC base station, the total number of occupied resource blocks varies. That can be seen in Table 2 [31].

14

Table 2 Transmission Bandwidth Configuration Maximum Number of Channel Maximum Occupied Bandwidth Resource Blocks Bandwidth (MHz) (Transmission (MHz) Bandwidth Configuration) 1.4 6 1.08 3

15

2.7

5

25

4.5

10

50

9.0

15

75

13.5

20

100

18.0

We assume that an ad-hoc RN can transfer data to many disconnected user devices at the same time, as shown in Fig. 6. The ad-hoc RN can pass data to disconnected nodes using resource block allocation under LTE with a different frequency band for each destination at the same time. The purpose of spreading out data transfer to several destination points is to maintain QoE for disconnected user devices at the same time.

Figure 6. Data downlink from recovery MEC to many disconnected user devices through ad-hoc relay nodes.

15

Ad-hoc RNs have different capacities, depending on available resources such as buffer size and bandwidth. The transfer between RNs and disconnected user devices is given by

(1)

(2)

R represents a matrix for total transfer capacity of ad-hoc RNs per second, and

is the capacity of the k-

th ad-hoc RN. The total number of ad-hoc RNs is i. N is a matrix for the total required data for disconnected user devices adjacent to the ad-hoc RNs from the O-MEC coverage area. The disconnected user devices will send service requests to the ad-hoc RNs via the shortest path. The ad-hoc RNs calculate the total required data for disconnected user devices and then sends them to the recovery MEC for processing. The recovery MEC also calculates a capacity allocation for each ad-hoc RN.

is the total

required data for all disconnected user devices that connect via the shortest path wireless network to the l-th disconnected user device that is adjacent to the ad-hoc RNs.

(3)

(4)

16

The feature matrix F shows the transfer capacity allocation of ad-hoc RNs to the disconnected nodes. is a feature element of the k-th RN to the l-th disconnected user device as an element of matrix F. represents the link status matrix for the matrix F.

denotes the link status of the k-th ad-hoc RN to the l-

th disconnected user device.

(5)

(6) The value of indicator element

depends on the SNR between the ad-hoc RN and the disconnected user

device. The SNR should be better than or equal to -5.1 dB to possibly establish communications link with quadrature phase-shift keying modulation at code rate 1/8, as stated by Werther and Minihold [32]. If has a value of 1, the k-th ad-hoc RN can build a communications link with the l-th disconnected user device. Otherwise, it is not possible to have a communications link between them when the SNR is worse than the threshold.

is the SNR between the k-th ad-hoc RN and the l-th disconnected user device.

Liu et al. designed D2D communication based on LTE network which can reach 360 meters for maximum discovery distance of user devices in 2013 [33]. Based on that, the appropriate distance of a disconnected user device to ad-hoc RN or other disconnected user devices should not exceed 360 meters to possibly build communication link. The maximum discovery distance depends on the transmitter and receiver antenna gains, path loss between transmitter and receiver, polarization, wavelength, etc. The value of link status element

can be seen from Eq. (6), where

is the calculated data allocated to the k-th ad-hoc RN

for the l-th disconnected user device.

17

Figure 7. An example of link status between ad-hoc RNs and disconnected user devices.

For example, four disconnected user devices (N1, N2, N3 and N4) need to build a connection to the available ad-hoc relay nodes R1, R2 and R3. The SNR for each possible connection can be seen in Fig. 7. When the SNR is worse than -5.1 dB, the connection cannot be established. Link status matrix Ic shows all possible connections between them. From Fig. 7, ad-hoc relay node R1 can communicate with disconnected user device N1 and N2, but not with N3 and N4.

(7) An optimization technique is applied to find the optimal data allocation from every ad-hoc RN to the disconnected user devices adjacent to ad-hoc relay nodes. Each ad-hoc RN has limitations in relaying data for disconnected user devices. Thus, we need to properly assign ad-hoc RNs to data requests of disconnected user devices. Eq. (7) is the mathematical formula for minimizing error in allocating ad-hoc RNs to disconnected user devices to successfully transfer the requested data of each disconnected node. 18

The dot product between two matrices, the transfer capacity allocation of ad-hoc RNs (FT), and the total transfer capacity of ad-hoc RNs per second (R) results in the total requested data of disconnected user devices (N). If the transpose of the optimal transfer capacity allocation of ad-hoc RN matrix (FT) is reached, the value of

will be zero. Thus, our objective is for maximal assignment without overflowing

the capacity of the ad-hoc RNs. A gradient descent method is used to find the optimum value of matrix FT. The sum of capacity allocation of the ad-hoc RNs to neighboring disconnected user devices (

)

should be greater than zero. The sum value of all fkl is zero when ad-hoc RNs cannot establish communications links to neighboring user devices, when the transfer capacity for every ad-hoc RN is zero, or when no disconnected user device requires data from the recovery MEC. 4. Numerical Results and Analytics 4.1 Numerical Results We simulated the more complex recovery scheme II. Simulation was performed using Python and Matlab on a Samsung PC with an Intel Core i7 3.4 GHz processor and 8 GB of memory, running Windows 10. From the estimation calculation for downlink under LTE in [34], we assume that an ad-hoc RN has the capacity to relay 1, 2 or 3 resource blocks (RBs) under LTE with FDD at one time, using 64 quadrature amplitude modulation (six bits per symbol). The maximum throughput that an ad-hoc RN can have with code rate 4/5 is 604.8 kb/sec for 1 RB allocation, 1209.6 kb/sec for 2 RB allocations, and 1814.4 kb/sec for 3 RB allocations. We assume that we have one available recovery MEC in the recovery system for our simulation.

19

Throughput (kb/sec)

16000 14000 12000 10000 8000 6000 4000 2000 0 1

2

3

4

5

6

7

8

Number of ad-hoc RNs capacity 1 RB

capacity 2 RBs

capacity 3 RBs

Figure 8. Throughput of ad-hoc RNs depending on different numbers of ad-hoc RNs and different capacities of RNs in the RBs.

Fig. 8 shows the maximum throughput of all the ad-hoc RNs in kilobits per second. The performance of an ad-hoc RN is very important, because it plays the role of both bottleneck and bridge between the two sides (disconnected user devices and the available recovery MEC). The performance of ad-hoc RNs can determine the performance of the whole MEC recovery system. In Fig. 8, we can see that throughput increases in proportion to increasing numbers of ad-hoc RNs. And we can see the increasing throughput when the capacity of an ad-hoc RN increases by the number of resource blocks. It gives a clue as to the importance of capacity in mobile user devices as ad-hoc RNs.

20

Maximum number of disconnecred user devices

600 500 400 300 200 100 0 1

2

3

4

5

6

7

8

Number of ad-hoc RNs capacity 1 RB

capacity 2 RBs

capacity 3 RBs

Figure 9. Maximum number of handled disconnected user devices with different numbers of ad-hoc RNs and transfer capacities in RBs.

If all disconnected user devices need voice data with minimum download speed of 30 kbps from the recovery MEC under the throughput results of ad-hoc RNs in Fig. 8, we explore the possible maximum number of handled disconnected users in the MEC recovery system, as shown in Fig. 9. For example, in our MEC recovery system, a MEC network with five ad-hoc RNs can handle a maximum of 80 disconnected users under an ad-hoc RN capacity of 1 RB, or 161 disconnected users with 2 RBs, or 241 disconnected users with 3 RBs. It is obvious that a higher number of, and a higher capacity in, ad-hoc RNs handles more disconnected users in our proposed MEC recovery system.

21

Maximum time to transfer data to disconnected user devices (sec)

1

adj disconnected node = 2 adj disconnected node = 4 adj disconnected node = 6 adj disconnected node = 8 adj disconnected node = 10

0.9 0.8 0.7 0.6 0.5 0.4 0.3

0.2 0.1 0 2

4

6

8

10

Number of ad-hoc RNs

Maximum time to transfer data to disconnected user devices (sec)

(a) 20 disconnected user devices 4.5

adj disconnected node = 2

4

adj disconnected node = 4

3.5

adj disconnected node = 6 adj disconnected node = 8

3

adj disconnected node = 10

2.5 2 1.5 1 0.5

0 2

4

6

Number of ad-hoc RNs

(b) 50 disconnected user devices 22

8

10

adj disconnected node = 2

4.5

adj disconnected node = 4

4

adj disconnected node = 6

3.5

adj disconnected node = 8

Maximum time to transfer data to disconnected user devices (sec)

5

adj disconnected node = 10

3

2.5 2

1.5 1

0.5 0 2

4

6

8

10

Number of ad-hoc RNs (c) 100 disconnected user devices.

Maximum time to transfer data to disconnected user devices (sec)

25

adj disconnected node = 2 adj disconnected node = 4 adj disconnected node = 6 adj disconnected node = 8 adj disconnected node = 10

20

15

10

5

0 2

4

6

8

Number of ad-hoc RNs (d) 500 disconnected user devices.

23

10

Maximum time to transfer data to disconnected user devices (sec)

40

adj disconnected node = 2 adj disconnected node = 4 adj disconnected node = 6 adj disconnected node = 8 adj disconnected node = 10

35 30 25 20 15 10

5 0 2

4

6

8

10

Number of ad-hoc RNs (e) 700 disconnected user devices. 45

adj disconnected node = 2 adj disconnected node = 4

Maximum time to transfer data to disconnected user devices (sec)

40

adj disconnected node = 6

35

adj disconnected node = 8 30

adj disconnected node = 10

25

20 15 10 5 0 2

4

6

8

10

Number of ad-hoc RNs

(f) 1000 disconnected user devices. Figure 10. Maximum data transfer time from recovery MEC to a disconnected user with different number of disconnected user devices. 24

We conducted simulation to see the worst transfer time of data flow from the recovery MEC to a disconnected node as shown in Fig. 10. The ad-hoc RN relays data to the adjacent disconnected nodes when the ad-hoc RN fully receives the data chunk from a recovery MEC. A disconnected node needs to receive a whole data chunk before transferring to the next disconnected node. This process occurs often until the data reaches the target disconnected user. This simulation uses Eq. (7) to calculate data allocation for transferring all data chunks to the target user via multiple paths. Fig. 10 shows the maximum data transfer times, depending on different numbers of ad-hoc RNs and adjacent disconnected nodes with total of 20, 50, 100, 500, 700, and 1000 disconnected users in our proposed MEC recovery system. In this simulation, we applied a number of RBs at random for an ad-hoc RN. The y-axis represents the worst data transfer time from the recovery MEC to all of the disconnected nodes in each situation. We can see from all the results that the data transfer time significantly improves with four ad-hoc RNs, and does not decrease significantly with more than four ad-hoc RNs, regardless of a total number of disconnected nodes in the MEC system. We determined that there exists a certain threshold for the number of ad-hoc RNs for adequate performance in real-time MEC processing. In this example, four ad-hoc RNs might be the threshold. Under two ad-hoc RNs and a total of twenty disconnected users in the MEC system, the maximum transfer time is 0.64 seconds for two adjacent disconnected users, 0.75 seconds for four adjacent disconnected users, 0.72 seconds for six, 0.7 seconds for eight adjacent disconnected users, and 0.9 seconds for 10 adjacent disconnected users. But with four ad-hoc RNs, the time is 0.3 seconds for two adjacent disconnected users, 0.38 seconds for four adjacent disconnected users, 0.52 seconds for six, 0.39 seconds for eight adjacent disconnected users, and 0.39 seconds for 10 adjacent disconnected users. Fig. 11 shows the maximum transfer time for 500 disconnected users with total of 10, 20, 50, 100, and 500 adjacent disconnected nodes, respectively. This simulation uses two different numbers of ad-hoc RNs, one-fifth of total adjacent disconnected nodes and half of total adjacent disconnected nodes, respectively. Table 3 shows the execution times of data allocation calculation for this experiment. The data 25

allocation calculation with 10 adjacent disconnected nodes and 2 ad-hoc RNs takes 0.139 second for 1500 iterations of gradient descent method and 0.49% allocation error. When the calculation incorporates big

Maximum time to transfer data to disconnected user devices (sec)

numbers of adjacent disconnected nodes and ad-hoc RNs, it takes much more time to finish.

30 25 20 15 10 5 0 10

20

50

100

500

Number of adjacent disconnected nodes total ad-hoc RNs = 0.2 of adjacent disconnected nodes total ad-hoc RNs = 0.5 of adjacent disconnected nodes

Figure 11. Maximum data transfer time from recovery MEC to a disconnected user with different number of disconnected user devices.

26

Table 3. Execution time of data allocation calculation for different numbers of adjacent disconnected nodes and ad-hoc RNs in second Number of adjacent disconnected nodes

Ad-hoc RNs = 0.2 of total adjacent disconnected nodes

Ad-hoc RNs = 0.5 of total adjacent disconnected nodes

10

0.230

0.310

20

0.477

0.783

50

1.423

3.816

100

4.559

10.856

500

99.274

246.418

4.2 Insightful Analytics Our proposed MEC recovery scheme is expected to be well fitted to user-dense areas like urban environments, because we can utilize a higher number of ad-hoc RNs from more potential users connected to a recovery MEC. We can see the importance of ad-hoc RNs in our proposed MEC recovery system. In addition, we can see that the capacity of ad-hoc RNs will influence throughput. Because the capacity of mobile devices has lately increased dramatically, our proposed MEC recovery scheme will be more powerful in the future. We applied the optimal algorithm for allocation of ad-hoc RNs in this research. But in order to improve performance, we expect that many heuristic algorithms can be developed in future research. 5. Conclusion In this paper, we raise the issue of recovery when MEC has failed. Because MEC provides real-time services in many field applications, MEC failure is serious. Thus we propose two MEC recovery schemes in this paper and the conducted simulation supports possibility of our proposed schemes in this research. We have shown that neighboring recovery MECs in the cluster can mitigate the problem of overloaded 27

MEC by workload offloading. The simulation results of offloading to neighboring recovery MECs through ad-hoc relay nodes have shown that our proposed MEC recovery scheme is expected to work well in dense areas. In addition we have found out that the capacity of ad-hoc relay nodes affects the MEC recovery system throughput significantly. These results give us insightful motivation to improve the MEC recovery system throughput further by ad-hoc relay nodes in the future. In future research, we need to do more simulation under different MEC conditions and system environments for more insightful knowledge. We expect that many potential heuristic algorithms for allocating ad-hoc relay nodes to disconnected users for reducing execution time in the future.. Acknowledgement This research was supported by a Korea University Grant. We gratefully acknowledge Berihun Fekade in the Internet of Things and Cognitive Network (IoTCoN) Lab of Korea University for his help and insightful suggestion. References [1]

[2] [3] [4]

[5]

[6]

[7]

F. Lin, X. Zhou, D. Huang, W. Song, D. Han, Service Scheduling in Cloud Computing based on Queuing Game Model, in: KSII Transaction on Internet and Information Systems, vol. 8, no. 5, 2014, pp. 1554 - 1566. http://dx.doi.org/10.3837/tiis.2014.05.003 J. Yu, J. Lin, An Architecture for Cloud-based Consumer Support Software-as-a-Service, in: Smart Computing Review, vol. 4, no. 1, 2014, pp. 53-66. http://dx.doi.org/10.6029/smartcr.2014.01.006 I. Butun, M. Erol-Kantarci, B. Kantarci, H. Song, Cloud-centric Multi-level Authentication as a Service for Secure Public Safety Device Networks, in: IEEE Communications Magazine, 54(4), 2016. M. A. Shahid, M. Sharif, Cloud Computing Security Models, Architectures, Issues and Challenges: A Survey, in: Smart Computing Review, vol. 5, no. 6, 2015, pp. 602-616. http://dx.doi.org/10.6029/smartcr.2015.06.010 Mobile-edge computing - introductory technical white paper, Mobile-Edge Computing (MEC) ISG, European Telecommunications Standards Institute (ETSI), Sept. 2014. URL: https://portal.etsi.org/Portals/0/TBpages/MEC/Docs/Mobile-edge_Computing__Introductory_Technical_White_Paper_V1%2018-09-14.pdf Arif Ahmed, Ejaz Ahmed, A Survey on Mobile Edge Computing, in: Proceedings of 10th IEEE International Conference on Intelligent Systems and Control (ISCO'16), India, January 2016. http://dx.doi.org/10.13140/RG.2.1.3254.7925 J. Zhu, D. S. Chan, M. S. Prabhu, P. Natarajan, H. Hu and F. Bonomi, Improving Web Sites Performance Using Edge Servers in Fog Computing Architecture, in: Service Oriented System 28

[8] [9] [10]

[11]

[12]

[13]

[14] [15]

[16]

[17] [18]

[19]

[20]

[21]

[22]

[23]

Engineering (SOSE), 2013 IEEE 7th International Symposium on, Redwood City, 2013, pp. 320-323. http://dx.doi.org/10.1109/SOSE.2013.73 D. Frydman. It’s a question of Edge, Saguna Blog. http://www.saguna.net/blog/it-s-a-question-ofedge/, 2015 (accessed 17.12.2015) K. Kumar and Y. Lu, Cloud computing for mobile users: Can offloading computation save energy?, in: IEEE Comput., vol. 43, no. 4, 2010, pp. 51–56. http://dx.doi.org/10.1109/MC.2010.89 W. Hui, C. Lin, Y. Yang, MediaCloud: A New Paradigm of Multimedia Computing, in: KSII Transaction on Internet and Information Systems, vol. 6, no. 4, 2012, pp. 1153 - 1170. http://dx.doi.org/10.3837/tiis.2012.04.012 B.-R. Huang, C. H. Lin; C.-H. Lee, Mobile augmented reality based on cloud computing, in: AntiCounterfeiting, Security and Identification (ASID), 2012 International Conference on, vol., no., pp.15, 24-26 Aug. 2012. http://dx.doi.org/10.1109/ICASID.2012.6325354 J. Chung, Y. Park, J. Park, H. Cho, Adaptive Cloud Offloading of Augmented Reality Applications on Smart Devices for Minimum Energy Consumption, in: KSII Transaction on Internet and Information Systems, vol. 9, no. 8, 2015, pp.3090-3102. http://dx.doi.org/10.3837/tiis.2015.08.020 T. Soyata, R. Muraleedharan, C. Funai, M. Kwon, and W. Heinzelman, Cloud-vision: Real-time face recognition using a mobile-cloudlet-cloud acceleration architecture, in: Proc. IEEE ISCC, 2012, pp. 000059–000066. http://dx.doi.org/10.1109/ISCC.2012.6249269 J. Cohen, Embedded speech recognition applications in mobile phones: Status, trends, and challenges, in: Proc. IEEE ICASSP, 2008, pp. 5352–5355. http://dx.doi.org/10.1109/ICASSP.2008.4518869 H. Nishiyama, M. Ito, N. Kato, Relay-by-smartphone: realizing multihop device-to-device communications, in: Communications Magazine, IEEE, vol.52, no.4, pp.56-65, April 2014. http://dx.doi.org/10.1109/MCOM.2014.6807947 B. S. K. Reddy, M. S. Ganesh, P. V. Krishna, Temporary Parallel Route Recovery for Frequent Link Failure in VANET, in: Advances in Computing and Information Technology, vol. 176, 2012, pp. 369374. http://dx.doi.org/10.1007/978-3-642-31513-8_38 P. Kenington, E. Westberg, Base-station failure predictor, U.S. Patent: 8433260, issued date April 30, 2013. URL: http://www.google.com/patents/US8433260 Q. Li, Q. Yang, Q. He, K. S. Kwak, Profit-Maximizing Virtual Machine Provisioning Based on Workload Prediction in Computing Cloud, in KSII Transaction on Internet and Information Systems, vol. 9, no. 12, 2015, pp. 4950-4966. http://dx.doi.org/10.3837/tiis.2015.12.012 Seng W. Loke, Supporting ubiquitous sensor-cloudlets and context-cloudlets: Programming compositions of context-aware systems for mobile users, in: Future Generation Computer Systems, vol. 28, no. 4, 2012. http://dx.doi.org/10.1016/j.future.2011.09.004 Tundong Liu, Fufeng Chen, Yingran Ma, Yi Xie, An energy-efficient task scheduling for mobile devices based on cloud assistant, in: Future Generation Computer Systems, vol. 61, 2016. http://dx.doi.org/10.1016/j.future.2016.02.004 Yue-Shan Chang, Chih-Tien Fan, Win-Tsung Lo, Wan-Chun Hung, Shyan-Ming Yuan, Mobile cloud-based depression diagnosis using an ontology and a Bayesian network, in: Future Generation Computer Systems, Vol. 43-44, 2015. http://dx.doi.org/10.1016/j.future.2014.05.004 Yasir Saleem et al., Resource Management in Mobile Sink based Wireless Sensor Networks through Cloud Computing, Book Chapter at Resource Management in Mobile Computing Environments, in: Springer-Verlag Handbook, Volume 3, 2014, pp 439-459. http://dx.doi.org/10.1007/978-3-31906704-9_20 Saim Ghafoor, Mubashir Husain Rehmani, Sunghyun Cho, and Sung-Han Park, An Efficient Trajectory Design for Mobile Sink in a Wireless Sensor Network, in: Elsevier Computers and 29

Electrical Engineering Journal, Volume 40, Issue 7, Oct 2014, Pages 2089-2100. http://dx.doi.org/10.1016/j.compeleceng.2014.07.018 [24] Ejaz Ahmed, Abdullah Gani, Muhammad Khurram Khan, Rajkumar Buyya, Samee U. Khan, Seamless Application Execution in Mobile Cloud Computing: Motivation, Taxonomy, and Open Challenges, in: Journal of Network and Computer Applications, Vol. 52, Pages 154-172, June 2015. http://dx.doi.org/10.1016/j.jnca.2015.03.001 [25] Ejaz Ahmed, Abdullah Gani, Mehdi Sookhak, Siti Hafizah Ab Hamid, Feng Xia, Application Optimization in Mobile Cloud Computing: Motivation, Taxonomies, and Open Challenges, in: Journal of Network and Computer Applications, Vol. 52, Pages 52-68, June 2015. http://dx.doi.org/10.1016/j.jnca.2015.02.003 [26] Yasir Saleem, Farrukh Salim, Mubashir Husain Rehmani, Integration of Cognitive Radio Sensor Networks and Cloud Computing: A Recent Trend, Cognitive Radio Sensor Networks: Applications, Architectures, and Challenges, in: Advances in Wireless Technologies and Telecommunication (AWTT) series., Editors: Mubashir Husain Rehmani and Yasir Faheem, IGI Global USA, 2014. http://dx.doi.org/10.4018/978-1-4666-6539-2.ch047 [27] Usman Shaukat, Ejaz Ahmed, Zahid Anwar, Feng Xia, Cloudlet Deployment in Local Wireless Area Networks, Motivation, Taxonomies, and Open Research Challenges, in: Journal of Network and Computer Applications, vol. 62, 2016. http://dx.doi.org/10.1016/j.jnca.2015.11.009 [28] Mubashir Husain Rehmani and Al-Sakib Khan Pathan, Emerging Communication Technologies based on Wireless Sensor Networks: Current Research and Future Applications, in: CRC Press, Taylor and Francis Group, USA, 2015. [29] W. Wei; X. Fan; H. Song; X. Fan; J. Yang, "Imperfect Information Dynamic Stackelberg Game Based Resource Allocation Using Hidden Markov for Cloud Computing," in IEEE Transactions on Services Computing , vol.PP, no.99, pp.1-1 http://dx.doi.org/10.1109/TSC.2016.2528246 [30] 3GPP, TR 36.211 V12.7.0, Physical Channels and Modulation, Release 17, September 2014. [31] LTE Resource Guide, Anritsu Company, 2009. [32] O. Werther, R. Minihold, LTE System Specifications and their Impact on RF & Base Band Circuits, Rohde & Schwarz., Munich, Apr. 2013. [33] C. Liu, G. Zhu, X. Zhou, J. Liu, S. Xu and B. Ai, The design and implementation of FPGA subsystem in D2D communication based on LTE network, in: Wireless, Mobile and Multimedia Networks (ICWMMN 2013), 5th IET International Conference on, Beijing, 2013, pp. 276-279. http://dx.doi.org/10.1049/cp.2013.2424 [34] P. K. Rekhi, M. Luthra, S. Malik, and R. Atri, Throughput Calculation for LTE TDD and FDD Systems, Dec. 2012.

Dimas Satria received his BEng from the double degree program in Diponegoro University, Indonesia, and Fontys University of Applied Sciences, The Netherlands, in 2011. He worked in the Netherlands as a software engineer in the electronics and semiconductor industries. He has been a graduate student in the Department of Computer and Information Science since 2015 at Korea University, Sejong Metropolitan City. His research interests include mobile cloud computing and the Internet of Things (IoT). 30

Daihee Park received the BS degree in mathematics from Korea University, Korea, in 1982, and his PhD degree in computer science from Florida State University, USA, in 1992. He joined Korea University in 1993 where he is currently a professor in the Dept. of Computer and Information Science. His research interests include data mining and intelligent database.

Minho Jo is professor in the Department of Computer and Information Science, Korea University, South Korea. He received his PhD from Lehigh University, USA, in 1994. He is the Founder and Editor-in-Chief of KSII Transactions on Internet and Information Systems, Editor of IEEE Wireless Communications and Associate Editor of IEEE IoT Journal. He served as an Editor of IEEE Network. He is Vice President of the Institute of Electronics and Information Engineers (IEIE), and Vice President of the Korea Information Processing Society. His interest areas include LTE-Unlicensed, cognitive radio, IoT, HetNets in 5G, green (energy-efficient) wireless communications, mobile cloud computing, optimization and probability in networks, network security, and massive MIMO.

31