recovery for overloaded mobile edge...
TRANSCRIPT
1
Recovery for Overloaded Mobile
Edge Computing
Dimas Satria
Department of Computer and
Information Science
Korea University
Sejong City, South Korea
Daihee Park
Department of Computer and
Information Science
Korea University
Sejong City, South Korea
Minho Jo*
Department of Computer and
Information Science
Korea University
Sejong City, South Korea
*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
2
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].
3
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 users will lose
4
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 O-MEC. 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.
5
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 to the cloud
6
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
in better spectrum sensing and to provide bigger storage and computational support. The authors discussed
7
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 (CSAM-IISG) 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 MECs
in the cluster to assist O-MEC(s) by workload offloading. One MEC in the cluster becomes a cluster head to
8
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.
9
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.
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
10
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
11
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 O-
MEC 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.
12
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.
13
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 ad-hoc 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 wireless network to an adjacent disconnected
14
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].
15
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.
Table 2
Transmission Bandwidth Configuration
Channel
Bandwidth
(MHz)
Maximum
Number of
Resource Blocks
(Transmission
Bandwidth
Configuration)
Maximum Occupied
Bandwidth (MHz)
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
16
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
⋮𝑑𝑟𝑖
] (1)
𝑵 = [
𝑑𝑛1
𝑑𝑛2
⋮𝑑𝑛𝑗
] (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.
𝑭 =
[ 𝑓11 𝑓12 ⋯ 𝑓1𝑗
𝑓21 𝑓22 … 𝑓2𝑗
⋮𝑓𝑖1
⋮𝑓𝑖2
⋮ ⋮… 𝑓𝑖𝑗 ]
(3)
𝑰𝒄 = [
𝑠11 𝑠21⋯ 𝑠𝑖1
𝑠12 𝑠21 ⋯ 𝑠𝑖2
⋮𝑠1𝑗
⋮𝑠2𝑗
⋮ ⋮⋯ 𝑠𝑖𝑗
] (4)
17
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.
𝑠𝑘𝑙 = {1
0 𝑖𝑓 𝑠(𝑅𝑘, 𝑁𝑙) ≥ −5.1 𝑑𝐵
𝑒𝑙𝑠𝑒 (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.
18
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.
𝑚𝑖𝑛 (𝑭𝑇𝑹 − 𝑵)2
𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ∑ ∑𝑓𝑘𝑙
𝑗
𝑙=1
𝑖
𝑘=1
> 0
∀𝑖, 𝑑𝑟𝑖 > 0
and ∀𝑗, 𝑑𝑛𝑗 > 0 (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.
19
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 (∑ ∑ 𝑓𝑘𝑙𝑗𝑙=1
𝑖𝑘=1 ) 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.
20
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.
0
2000
4000
6000
8000
10000
12000
14000
16000
1 2 3 4 5 6 7 8
Thro
ughput
(kb/s
ec)
Number of ad-hoc RNs
capacity 1 RB capacity 2 RBs capacity 3 RBs
21
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.
0
100
200
300
400
500
600
1 2 3 4 5 6 7 8
Max
imum
num
ber
of
dis
connec
red u
ser
dev
ices
Number of ad-hoc RNs
capacity 1 RB capacity 2 RBs capacity 3 RBs
22
(a) 20 disconnected user devices
(b) 50 disconnected user devices
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to d
isco
nnec
ted
use
r dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to d
isco
nnec
ted
use
r dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
23
(c) 100 disconnected user devices.
(d) 500 disconnected user devices.
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to
dis
connec
ted u
ser
dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
0
5
10
15
20
25
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to
dis
connec
ted u
ser
dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
24
(e) 700 disconnected user devices.
(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.
0
5
10
15
20
25
30
35
40
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to
dis
connec
ted u
ser
dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
0
5
10
15
20
25
30
35
40
45
2 4 6 8 10
Max
imum
tim
e to
tra
nsf
er d
ata
to
dis
connec
ted u
ser
dev
ices
(se
c)
Number of ad-hoc RNs
adj disconnected node = 2
adj disconnected node = 4
adj disconnected node = 6
adj disconnected node = 8
adj disconnected node = 10
25
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 allocation
26
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 numbers of
adjacent disconnected nodes and ad-hoc RNs, it takes much more time to finish.
Figure 11. Maximum data transfer time from recovery MEC to a disconnected user with different number of
disconnected user devices.
0
5
10
15
20
25
30
10 20 50 100 500
Max
imum
tim
e to
tra
nsf
er d
ata
to
dis
connec
ted u
ser
dev
ices
(se
c)
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
27
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 MEC by workload
offloading. The simulation results of offloading to neighboring recovery MECs through ad-hoc relay nodes
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
28
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] 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
[2] 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
[3] 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.
[4] 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
[5] 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
[6] 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
[7] 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
Engineering (SOSE), 2013 IEEE 7th International Symposium on, Redwood City, 2013, pp. 320-323.
http://dx.doi.org/10.1109/SOSE.2013.73
29
[8] D. Frydman. It’s a question of Edge, Saguna Blog. http://www.saguna.net/blog/it-s-a-question-of-edge/,
2015 (accessed 17.12.2015)
[9] 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
[10] 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
[11] B.-R. Huang, C. H. Lin; C.-H. Lee, Mobile augmented reality based on cloud computing, in: Anti-
Counterfeiting, Security and Identification (ASID), 2012 International Conference on, vol., no., pp.1-
5, 24-26 Aug. 2012. http://dx.doi.org/10.1109/ICASID.2012.6325354
[12] 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
[13] 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
[14] 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
[15] 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
[16] 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. 369-
374. http://dx.doi.org/10.1007/978-3-642-31513-8_38
[17] P. Kenington, E. Westberg, Base-station failure predictor, U.S. Patent: 8433260, issued date April 30,
2013. URL: http://www.google.com/patents/US8433260
[18] 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
[19] 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
[20] 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
[21] 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
[22] 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-319-06704-
9_20
[23] 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 Electrical
Engineering Journal, Volume 40, Issue 7, Oct 2014, Pages 2089-2100.
http://dx.doi.org/10.1016/j.compeleceng.2014.07.018
30
[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).
31
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.