Professional Documents
Culture Documents
fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 1
Abstract—Along with Network Function Virtualization (NFV), Mobile Edge Computing (MEC) is becoming a new computing paradigm
that enables accommodating innovative applications and services with stringent response delay and resource requirements, including
autonomous vehicles and augmented reality. Provisioning reliable network services for users is the top priority of most network service
providers, as unreliable services or severe service failures can result in tremendous losses of users, particularly for their mission-critical
applications. In this paper, we study reliability-aware VNF instances provisioning in an MEC, where different users request different
network services with different reliability requirements through paying their requested services with the aim to maximize the network
throughput. To this end, we first formulate a novel reliability-aware VNF instance placement problem by provisioning primary and
secondary VNF instances at different cloudlets in MEC for each user while meeting the specified reliability requirement of the user
request. We then show that the problem is NP-hard and formulate an Integer Linear Programming (ILP) solution. Due to the NP-hardness
of the problem, we instead devise an approximation algorithm with a logarithmic approximation ratio for the problem. Moreover, we also
consider two special cases of the problem. For one special case where each request only requests one primary and one secondary VNF
instances, the problem is still NP-hard, and we devise a constant approximation algorithm for it. For another special case where different
VNFs have the same amounts of computing resource demands, we show that it is polynomial-time solvable by developing a dynamic
programming solution for it. We finally evaluate the performance of the proposed algorithms through experimental simulations.
Experimental results demonstrate that the proposed algorithms are promising, and the empirical results of the algorithms outperform their
analytical counterparts as theoretical estimations usually are very conservative.
Index Terms—Reliability-Aware VNF instances provisioning; VNF instance placements; virtualized network function implementation;
approximation algorithms; generalized assignment problems; dynamic programming; Mobile Edge Computing; combinatorial optimization
problems.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 2
at other peer cloudlets in the MEC. problem. Moreover, Section 7 deals with two special cases
In this paper, we consider reliability-aware VNF services of the problem and proposes a constant approximation
provisioning in an MEC. We assume that each user request algorithm and an exact solution for the two special cases,
needs a VNF service with a specified reliability requirement. respectively. Section 8 evaluates the proposed algorithms
In order to meet the reliability requirement of the user, empirically, and Section 9 concludes the paper.
multiple VNF instances need to be placed at different
cloudlets. We distinguish between the single primary VNF
instance and one or multiple secondary VNF instances for 2 R ELATED W ORK
each offloaded user request [17]: the former is an active VNF Several studies on the provisioning of reliable VNF services
instance while the latter are idle ones until the primary have been conducted recently. Existing methods to improve
one fails. Moreover, as the usage of network resources reliability of NFV are summarized by Han et al. [17]. For
follows pay-as-you-go, there are multiple users competing for example, Beck et al. [4] conducted one pioneering study
limited network resources, yet the resources at each cloudlet related to survivability of VNF instances in the context of
have capacity constraints. Hence, it needs to be determined the VNF resource allocation, by admitting a set of VNF
which requests should be admitted, subject to the capacity requests with the aim of reducing the amount of network
constraints on cloudlets. resource allocated to VNF chains, while computing resilient
The novelty of the work in this paper lies in the pro- allocations to protect network services from both link and
visioning of reliability-aware VNF instances for network VNF instance failures. They however did not differentiate
function services in MEC, by formulating a novel reliability- reliability requirements of different requests. Casazza et al. [8]
aware VNF instances provisioning problem. Efficient approx- cast a problem of assigning virtual machines for network
imation and exact algorithms are proposed for allocating function implementations to servers in order to guarantee the
network resources to accommodate primary and secondary availability of virtual machines via VNF instance replications.
VNF instances in different cloudlets to meet individual They considered a geo-distributed data center network in
user reliability requirements. Furthermore, the formulated which there are sufficient resources to accommodate all
optimization problem may be of independent interests as the user requests. Their objective is to maximize the minimum
Generalized Assignment Problem (GAP) is a special case of availability among all requests by developing heuristics.
the problem. To the best of our knowledge, there is no prior Ceselli et al. [9] dealt with the design of edge cloud networks
study on similarly formulated problems, and this problem, with the aim to determine where to install cloudlets among
which generalizes the GAP problem, has wide potential the potential AP sites by developing efficient heuristics. Ding
applications in practice, particularly in the fault-tolerance et al. [12] proposed an approach to enhancing the network
domain. resilience while maximizing cost-efficiency of the network
The main contributions of this paper are described as through improving the ratio of the reliability to the backup
follows. We study the provisioning of reliability-aware VNF cost of VNF instances. Fan et al. investigated how to map
instances in an MEC to meet individual user reliability service function chains to a network with high end-to-end
requirements. We first formulate a novel optimization prob- reliability requirements, by adopting on-site and off-site VNF
lem for provisioning multiple VNF instances at different instance backups [14], [15]. Their work is one of the first
cloudlets in MEC to meet the reliability requirement of each works on this topic, and recently Li et al. [25] proposed onsite
request. We then show the NP-hardness of the problem and and off-site backup mechanisms by developing efficient
formulate an integer linear programming (ILP) solution to scheduling algorithms for the problem through adopting
the problem when its size is small, otherwise, we develop the primal and dual update technique. Kang et al. [23]
an approximation algorithm with an approximation ratio of studied the tradeoff between the reliability of a network
O(log K), where K is the number of cloudlets in the MEC. service, as measured by the probability that the service is
Moreover, we also consider two special cases of the problem. correctly executed, and the computational load of servers.
Specifically, we devise a constant approximation algorithm Engelmann et al. [13] studied the end-to-end service reliability
for a special case of the problem where each request needs in data center networks (DCNs). They divided large flows
only one primary and one secondary VNF instances. We also into several smaller flows yet provided only one backup
develop a dynamic programming algorithm that delivers an flow for reliability guarantee. Moualla et al. [28] considered
exact solution to another special case of the problem where the placement of service chains in DCNs, and devised an
the VNF instances of different types of virtual network func- algorithm for the placement on the special fat-tree topological
tions demand the same amount of computing resources. We network structure. Kong et al. [24] proposed a mechanism
finally evaluate the performance of the proposed algorithms that employs both backup path protection and VNF instance
through experimental simulations. Experimental results replication in order to guarantee the availability of a service
demonstrate that the proposed algorithms are promising and function chain. The proposed mechanism determines the
the empirical results outperform their analytical counterparts number of VNF instance replicas required for each VNF in
as the theoretical estimations usually are very conservative. the SFC, and allocates the replicas to physical nodes on the
The rest of the paper is organized as follows. Section 2 primary and backup paths while taking into account the or-
reviews related work. Section 3 introduces notions, nota- dered dependency among VNFs. Herker et al. [18] introduced
tions, and the problem definitions. Section 4 shows the several VNF backup strategies for service function chains,
NP-hardness of the problem. Section 5 provides an ILP and analyzed the impact of different data-center architectures
formulation of the problem, while Section 6 devises an on the service provision. They then proposed cost-per-
algorithm with a logarithmic approximation ratio for the throughput algorithms for a given reliability requirement.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 3
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 4
VNF instance. Step (2) in Eq. (3) follows we assume that TABLE 1
cloudlets in the system have the same failure probabilities. Table of Symbols
This assumption is in alignment with the common industry
practice where network operators keep their equipments to Notations Descriptions
a limited range so that they can standardize the process and G = (V, E) a WMAN
minimize their OPEX. We also assume that failures of VNF k∈K a cloudlet co-located with an AP
instance are independent with each other and links (optical Ck the residual computing capacity of
cables) in G are reliable. cloudlet k
F (= f1 , f2 , . . . , f|F | ) the set of network functions offered in
As most network functions are stateful, the primary G
and secondary VNF instances of a network function need fi a network functions offered in G
to synchronize with each other so that there is minimum ci the computing resource demand of net-
interruptions when the primary VNF instance fails. It is work function fi
worth noting that the internal state of a VNF instance R the set of user requests
often contain sensitive information, e.g., encryption keys. rj = (fj , Rj , cj , pj ) ∈ R a user request, where fj (∈ F ) is the
If synchronization of the internal states of primary and requested type of VNF, Rj is the relia-
secondary VNF instances is via the same links as user traffic, bility requirement of request rj with
0 < Rj ≤ 1, cj is the amount of
sensitive information may be exposed. Instead, the internal computing resource demanded, and pj
state of the primary VNF instance should be periodically (∈ R+ ) is the revenue
distributed to secondary VNF instances over a dedicated nj the number of secondary VNF instances
out-of-band, i.e., separate from user traffic, network. The needed for request rj to meet its reliable
service requirement
commonly used Control Plane Network (CPN) [16], [31]
is an excellent candidate for synchronization between the
primary and secondary VNF instances of a network function.
profit pi with 1 ≤ i ≤ n. There is a bin with capacity W . If an
item aj can be packed into the bin, it brings a profit of pj . The
3.3 Problem definition knapsack problem is to pack as many items as possible such
Given an MEC G = (V, E), a set R of requests, associated that the total profit of packed items is maximized, subject to
with each request rj ∈ R, there is a payment pj , a network the bin capacity W .
function fj ∈ F , and a reliability requirement represented Given an instance of the knapsack problem, we construct
by the number nj (0 ≤ nj < K ) of secondary VNF instances an instance of the reliability-aware VNF instances provi-
with each of them being placed at a different cloudlet, the sioning problem as follows. We assume that there are two
reliability-aware VNF instances provisioning problem is to admit cloudlets (K = 2) with each having W computing capacity.
as many requests in R as possible such that the total revenue There are n requests, which correspond the n items in the
collected by the service provider is maximized, subject to knapsack problem. We further assume that each request rj
computing capacity constraint on each cloudlet and the has only one secondary VNF instance, i.e., nj = 1. As each
specified reliability guarantee of each admitted request. request implementation has a primary VNF instance. Thus,
A request rj is admitted if its (nj + 1) VNF instances there are two VNF instances for each request allocated to two
are placed at (nj + 1) different cloudlets, and each cloudlet cloudlets. The computing demand of each of the two VNF
has sufficient computing resource to meet the computing instances of rj is wj . If request rj is admitted, the revenue
resource demand cj of its network function fj , assuming brought by its implementation is pj . Then, the reliability-
that max1≤j≤|R| {nj } ≤ K − 1. There are a set R of requests, aware VNF instances provisioning problem is to admit
each request rj ∈ R needs nj + 1 replicas of its VNF fj , as many requests as possible such that the total revenue
and its admission will result in a revenue of pj where each collected from admitted requests is maximized, subject the
instance of fj demands the amount cji of computing resource computing capacity constraints on the two cloudlets.
from each of the nj + 1 cloudlets. The problem is to admit It can be seen that a solution to the latter in turn returns a
as many requests in R as possible to maximize the revenue, solution to the former, while the reduction from an instance
subject to the cloudlet computing capacity constraint. of the knapsack problem to an instance of the reliability-
Notice that in this paper we do not explicitly consider aware VNF instances provisioning problem takes polynomial
user mobility. However, we assume the users are allowed time. Also, verifying the solution of the latter can be easily
to move in the MEC, and they can issue their requests for done in polynomial time. As the knapsack problem is NP-
services through the APs in which they are located. complete, the reliability-aware VNF instances provisioning
Table 1 lists the frequently used notations used in this problem is NP-complete, too.
paper.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 5
demand by its primary and secondary VNF instances. The 6.2 Algorithm description
optimization objective thus is We first sort all requests by the ratio of the payment of
Pn each request to the total amount of its computing resource
maximize j=1 pj xj , demand to meet its VNF instance reliability. In other words,
pj pi
we rank request rj ahead of request ri if (nj +1)c j
≥ (ni +1)ci
subject to the following constraints. for any two requests ri ∈ R and rj ∈ R. For the sake of
|R|
convenience, we assume that the sorted request sequence is
X r1 , r2 , . . . , r|R| . We then examine requests in the sequence
cj · yj,k ≤ Ck , ∀k, 1 ≤ k ≤ K (4)
one by one to determine whether a request will be admitted
j=1
immediately.
K
X For each request rj , we calculate its normalized cost if one
(nj + 1) · xj = yj,k , ∀rj ∈ R (5)
of its VNF instances is instantiated at cloudlet k as follows.
k=1
Ck (j)
1−
xj ∈ {0, 1}, ∀rj ∈ R (6) wk (j) α Ck
−1
ψk (j) = = . (9)
yj,k ∈ {0, 1}, ∀rj ∈ R, ∀k, 1 ≤ k ≤ K, (7) Ck cj
where yj,k is a boolean variable, yj,k = 1 if a VNF instance For each request rj , we identify top-(nj + 1) cloudlets with
of request rj is allocated to cloudlet k ; yj,k = 0 otherwise. the lowest normalized costs, and denote by Kj the set of
Constraint (4) says that the total computing demand by the cloudlets. We here introduce an admission control policy for
VNF instances of all different requests rj in any cloudlet k request admissions. That is, if the sum of normalized costs of
is no greater than its residual computing resource capacity. the identified top-(nj + 1) cloudlets for request rj is greater
Constraint (5) ensures that the number of secondary VNF than K , i.e., P
k∈Kj ψk (j)
instances at different cloudlets for each admitted request rj > K, (10)
is exactly nj + 1. Constraints (6) and (7) limit the ranges of pj
boolean variables xj and yj,k to either 0 or 1. then request rj will be rejected. Otherwise, it will be admitted,
and its (nj + 1) VNF instances will be placed in the top-
(nj + 1) cloudlets. The algorithm detail for the reliability-
6 A PPROXIMATION A LGORITHM FOR THE aware VNF instances provisioning problem is given in
R ELIABILITY -AWARE VNF I NSTANCES P ROVI - Algorithm 1.
SIONING P ROBLEM Algorithm 1 Approximation algorithm for the reliability-
In this section, we propose an approximation algorithm for aware VNF instances provisioning problem
the reliability-aware VNF instances provisioning problem. Input: A set of K cloudlets with each having a residual
We start with cost modeling, and then provide an overview computing capacity C , a set of requests R with each request
of the proposed algorithm and details of the algorithm. We rj = (fj , Rj , cj , pj )
Output: Admit a subset of requests in R that maximizes the
finally analyze the approximation ratio and time complexity sum of revenues of admitted requests while meeting the
of the proposed algorithm. reliability requirement of each admitted request.
1: A ← ∅ /* the set of admitted requests */;
2: Sort requests in R by the ratio of the payment of each request
6.1 Cost modeling
to the total amount of its computing resource demand to
The approximation algorithm examines the requests in R meet its VNF instance reliability;
one by one. When request rj is considered, the resource 3: for each request rj in the sorted order do
4: Calculate the number nj of secondary VNF instances of
availability of cloudlets affects whether rj can be admitted.
its network function by Inequality (3);
We thus denote by Ck (j) the amount of residual computing 5: Assign each cloudlet k a cost by Eq. (9) if rj is admitted;
resource at cloudlet k with Ck (0) = Ck . 6: Identify top-(nj +1) cloudlets Cj1 , Cj2 , . . . , Cjnj , Cj(nj +1) ,
The key to the approximation algorithm is that we use an with smallest costs, by a linear time selection algorithm;
exponential function to model the cost wk (j) of instantiating 7: if there is a cloudlet jk among the nj + 1 identified
a VNF instance of request rj with computing resource cloudlets such that Cjk < cj or the sum of costs of the
demand cj at cloudlet k , which is defined as follows. (nj + 1) identified cloudlets is greater than K · pj (by
Inequality (10)) then
Ck 1− CCk (j) 8: Reject request rj ;
wk (j) = (α k − 1), (8) 9: else
cj 10: Allocate a VNF instance of request rj to each of the
top-(nj + 1) cloudlets;
where α > 1 is a constant to reflect the sensitivity of the
11: Update the residual computing capacity of each of these
workload at each cloudlet, which will be determined later, cloudlets as Cjk ← Cjk −cj for all k with 1 ≤ k ≤ nj +1;
Ck (j)
and 1 − C k
is the utilization ratio of cloudlet k when request 12: A ← A ∪ {rj };
rj is considered. The rationale is that the high utilization a 13: end if
resource has, the higher the risk associated with the resource 14: end for
utilization, thus the usage of resources with high utilization 15: return Set A of admitted requests and their primary and
should be discouraged. The proposed exponential function secondary VNF instance placements in cloudlets.
will guide the resource allocations.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 6
K
6.3 Algorithm analysis X X X 1
≤ wk (j) ( ) (13)
In the following, we first provide an upper bound on the k=1 rj 0 ∈D k0 ∈Kopt
Ck0
j0
sum of costs of all cloudlets in G after a subset of requests
K
in R is admitted. We then show a lower bound on the X
sum of costs of cloudlets that an optimal solution uses to ≤ wk (j) · 1 (14)
k=1
admit a request rejected by the proposed algorithm, and
K
we finally analyze the approximation ratio of the proposed X X
= wk (j) ≤ 2K log α · pj 0 by Lemma 1. (15)
approximation algorithm.
k=1 j 0 ∈A
Lemma 1. Given an MEC G(V, E) and a set of requests R, de-
note by A the set of requests admitted by Algorithm 1, Notice that Inequality (12) holds because the utilization
then, the sum of costs of all K cloudlets is of each resource does not decrease and consequently the
cost of any cloudlet k with 1 ≤ k ≤ K does not decrease
K
X X with
Pp morePq request admissions. PInequality (13) holds since
wk (j) ≤ 2K · log α · pj 0 , A B ≤
Pp
A q
B for all Ai ≥ 0 and
i=1 j=1 i j i=1 i j=1 j
k=1 rj 0 ∈A
Bj ≥ 0. The proof of Inequality (14) proceeds as follows. All
where α is a constant with 2K · Qmax + 2 ≤ α ≤ algorithms, including an optimal algorithm for the problem
2Cmin /cmax , Cmin (= min{Ck | 1 ≤ k ≤ K}) is the of concern, the total amount of allocated computing resources
minimum cloudlet computing capacity, R is the set of in any cloudlet is no more than the capacity of the cloudlet.
requests, and Qmax (= max{pj 0 · cj 0 | rj 0 ∈ R}) is the By Inequality (15), we have
maximum product of the profit and computing resource Popt Popt − P
demand among requests. = +1
P P P
Please see Appendix A for the proof. 2 log α · rj0 ∈A pj 0
Let D (⊆ R) be the set of requests that are admitted ≤ P + 1 ≤ 2 log α + 1
rj 0 ∈A pj 0
by an optimal algorithm but rejected by the proposed
approximation algorithm. We now prove a lower bound = O(log(K · Qmax )), when α = 2K · Qmax + 2.
on the sum of normalized costs of all cloudlets used to admit = O(log K + log Qmax )
any request in D. = O(log K), as Qmax usually is a constant,
Lemma 2. Let D be the set of requests that are admitted by
where Qmax is the maximum product of the profit and
an optimal algorithm yet rejected by the approximation
opt computing resource demand among requests, i.e., Qmax =
algorithm, and let Kj 0 be the set of (nj 0 + 1) cloudlets
max{pj 0 · cj 0 | rj 0 ∈ R}.
to which the optimal algorithm places VNF instances for
The running time of Algorithm 1 is dominated by the
request rj 0 ∈ D. Then, for any request rj 0 ∈ D, we have
time required to sort all requests by their ratio, which takes
ψk (j 0 )
P
k∈Kjopt
0
O(|R · | log |R|) time. Then, there are |R| iterations, and
≥ K, (11) within each iteration j , it identifies the top-(nj + 1) cloudlets
pj 0
with the smallest weights using a linear time selection
where α is a constant with 2K · Qmax + 2 ≤ α ≤ algorithm. The algorithm thus takes O(|R| · log |R| + |R| · K)
2Cmin /cmax , Cmin (= min{Ck | 1 ≤ k ≤ K}) is the time.
minimum cloudlet computing capacity, and Qmax (=
max{pj 0 · cj 0 | rj 0 ∈ R}) is the maximum product of the
7 A PPROXIMATION AND E XACT A LGORITHMS FOR
profit and computing resource demand among requests.
S PECIAL C ASES OF THE R ELIABILITY -AWARE VNF
Please see Appendix B for the proof. I NSTANCES P ROVISIONING P ROBLEM
Theorem 2. Given an MEC G(V, E), K cloudlets in G, and a
In this section, we study two special cases of the reliability-
set R of requests, there is an approximation algorithm,
aware VNF instances provisioning problem, and propose a
Algorithm 1, with an approximation ratio of O(log K)
constant approximation algorithm and an exact algorithm
for the reliability-aware VNF instances provisioning
for the cases, respectively.
problem, which takes O(|R| · log |R| + |R| · K) time.
Proof: Let Popt and P be the total revenues of admitted 7.1 A constant approximation algorithm for a special
requests by an optimal algorithm and the proposed approx- reliability-aware VNF instances provisioning problem
imation algorithm for requests in R, respectively, we then
We start dealing with a special case of the reliability-aware
have
X X VNF instances provisioning problem where each request has
K(Popt − P) ≤ K pj 0 = K · pj 0 only one primary and secondary VNF instances, i.e., nj = 1
rj 0 ∈D rj 0 ∈D for all requests rj ∈ R. Even for this special case, it is still
X X wk (j 0 ) NP-hard, for which we develop a constant approximation
≤ ( ), by Lemma 2 algorithm by a non-trivial reduction to the well-known
∈D opt
Ck
rj 0 k∈Kj 0 Generalized Assignment Problem (GAP) [10], and a solution
X X wk (j) to the latter in turn returns a feasible solution to the former.
≤ ( ) (12) The Generalized Assignment Problem (GAP) is defined as
Ck
rj 0 ∈D k∈K 0
j
opt
follows. Given a set B of K bins with each bin Bk ∈ B
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 7
having identical capacity of C , a set I of N items, and for Algorithm 2 An approximation algorithm for the special
each pair of item Ij ∈ I and bin Bk ∈ B , a profit p(Ij , Bk ) reliability-aware VNF instances provisioning problem with
is obtained if item Ij is placed to bin Bk with size s(Ij , Bk ), nj = 1 for every request rj ∈ R
the GAP is to pack as many as items in set I into the bins Input: A set of K cloudlets with each having a residual
in B such that the total profit is maximized, subject to the computing capacity C , a set of requests R with each request
capacity constraint on each bin. rj = (fj , Rj , cj , pj )
Given an instance of this special reliability-aware VNF Output: Admit a subset I 0 of requests in R that maximizes the
sum of revenues of admitted requests while meeting the
instances provisioning problem, we construct an instance of reliability of each admitted request.
the GAP as follows. We first assume that the K cloudlets
are indexed into 1, 2, . . . , K and K is even. Otherwise, we 1: if K is even then
2: Construct an instance of the GAP, where each request
assume that there are K + 1 cloudlets, and one cloudlet is
rj ∈ R has a corresponding item Ij and each pair of
a virtual one that implies that it does not exist. We pair the cloudlets has a corresponding bin Bk0 with bin capacity
K cloudlets into K/2 pairs, let B10 , B20 , . . . , BK/2
0
be the K/2 cap(Bk0 ) = 2C with 1 ≤ k ≤ K/2;
pair-bins with each having 2C computing capacity as the 3: Find an approximate solution I 0 to the GAP problem
instance of the GAP problem. Each request rj ∈ R has a using the approximation algorithm due to Cohen et
corresponding item Ij and with resource demand 2cj for its al. [10];
primary and secondary VNF instances. 4: else
5: Construct an instance of the GAP, where each request
If the primary and secondary VNF instances of request rj ∈ R has a corresponding item Ij and each pair of
rj ∈ R will be placed into one pair of cloudlets, correspond- cloudlets has a corresponding bin Bk0 with bin capacity
ing to one bin Bk0 with size 2cj , then the capacity 2C of bin cap(Bk0 ) = 2C with 1 ≤ k ≤ K+1 , where a virtual cloudlet
2
Bk0 is no less than the total resource demand 2cj by these (bin) is added to the system, and let K 0 = K + 1, which is
two VNF instances, and this placement will result in a profit even;
(revenue) p(Ij , Bk0 ) that is defined as 6: Find an approximate solution I 0 to the GAP problem
using the approximation algorithm due to Cohen et
p(Ij , Bk0 ) = pj , al. [10];
0
7: Pmin ← ∞;
where 1 ≤ j ≤ |R| and 1 ≤ k ≤ K/2. 8: for i ← 1 to K 0 /2 do
The size of placing item Ij into Bk0 is s(Ij , Bk0 ) = 2cj , 9: Calculate Pi0 from I 0 i ;
corresponding to the resource demand 2cj of VNF instances 10: if Pi0 < Pmin
0
then
of request rj . 11: Pmin ← Pi0 ; i0 ← i; Itemp
0 0
← Ii00 ;
The constructed GAP instance can be solved by invoking 12: end if;
the approximation algorithm due to Cohen et al. [10] with 13: end for;
1 14: if i0 = K 0 /2 then
an approximation ratio of 2+ , where is a constant with I 0 ← I 0 \ IK 0
15: 0 /2 ;
0 < ≤ 1. 16: else
The solution delivered by the approximation algorithm 17: Ii00 ← IK 0 0 0 0 0 0
0 /2 ; IK 0 /2 ← Itemp ; I ← I \ IK 0 /2 ;
will be in the form of assigning a set I 0 ⊆ I of requests. 18: end if;
Specifically, each item Ij ∈ I 0 that corresponds to the primary 19: end if;
and secondary VNF instances of request rj are assigned 20: for each item Ij ∈ Ik0 assigned to bin Bk0 with 1 ≤ k ≤ dK/2e
to cloudlets B2k and B2k+1 if its corresponding item Ij is do
21: if k ≤ bK/2c then
assigned to bin Bk0 with 1 ≤ k ≤ K/2. 22: Instantiate the primary and secondary VNF instances
We then extend the solution from the even K to the odd of fj for request rj in cloudlets 2k − 1 and 2k;
K , for which we create a virtual cloudlet with the same capac- 23: end if;
ity as other cloudlets. Thus, we now have K 0 = K + 1 bins. 24: end for;
They are corresponding K 0 /2 pair-bins B10 , B20 , . . . , B 0K+1 25: return the set of admitted requests and their primary and
2 secondary VNF instance placements in cloudlets.
with each having the computing capacity of 2C . Assume
that the virtual cloudlet is paired with the cloudlet indexed
K . We then apply the approximation algorithm for the GAP
problem due to Cohen et al. [10]. Theorem 3. Given an MEC G(V, E) that contains K cloudlets
Let I 0 be the approximate solution and I10 .I20 , . . . , IK0
0 /2 with each having identical residual computing capacity
0 0 0
the sets of admitted requests in bins B1 , B2 , . . . , BK 0 /2 , C , and a set of requests R with each request rj ∈ R
respectively. Let P10 , P20 , . . . , PK0
0 /2 be the profit sum of
having exactly one secondary VNF instance, there is an
requests admitted in their corresponding pair-bins. approximation algorithm with an approximation ratio of
PK 0 /2 1
Denote by i=1 Pi0 the total revenue collected by admit- 6+0 , Algorithm 2, for this special reliability-aware VNF
instances provisioning problem. The proposed algorithm
ting the requests in I 0 . The average profit among the K 0 /2 |R|·K
PK 0
P0 0 0
takes O( 0 + K04 ) time, where 0 is a constant with
pair-bins thus is Ki=1 0 /2 . Let Pmin = min1≤i≤K 0 /2 {Pi }. If
i
0
0 < ≤ 3.
0 0 0
PK 0 /2 = Pmin , we discard the requests in BK 0 /2 from the
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 8
secondary VNF instances into B2k and B2k+1 ) is equal to The defined profit maximization problem can be solved,
their resource demand 2cj , it follows that the allocation of using dynamic programming as follows. Without loss of
VNF instances by solving the GAP problem, i.e., the capacity generality, we assume
constraint on each cloudlet will not be violated.
We then analyze the approximation ratio of Algorithm 2,
C1 ≥ C2 ≥ . . . ≥ CK , (16)
by distinguishing it into two cases, depending on whether and
the value of K is even or not. If K is even, then the solution U1 ≥ U2 ≥ . . . ≥ Un . (17)
1
is an approximate solution, which is 2+ times the optimal
by the approximation algorithm in [10]; otherwise (K is odd), Because each job needs at most one computing unit from
we create a virtual cloudlet indexed as K 0 (= K + 1). Let I 0 any bin, we assume n ≥ C1 , otherwise excessive capacity
be the approximate solution delivered by the approximation larger than n will be useless.
algorithm. As this solution is built upon the assumption that Let Wi = |{j | Cj ≥ i}| be the number of bins that have at
there are K 0 cloudlets, we in fact have only K cloudlets in the least i computing units, for each and every i with 1 ≤ i ≤ n.
network. Following Algorithm 2, let A be the total profit Notice that some Wi may be zero. We then have
of the approximate solution, the minimum profit among the
W1 ≥ W2 ≥ . . . , ≥ Wn . (18)
K 0 /2 pairs of cloudlets thus is no greater than KA0 /2 . As we
will remove all admitted requests in the minimum profit Definition: If a job J is selected which needs U com-
pair-bin from the solution, the resulting profit by the solution puting units, then we assign one computing unit starting
thus is at least A − KA 2
0 /2 = A(1 − K+1 ) ≥ A/3 due to the from the bin with the largest remaining capacity in an non-
fact that K ≥ 2. Since A ≥ 2+ , 3 ≥ OP
OP T A T increasing order of remaining capacities until U computing
6+0 , where OP T is
0
the optimal solution to the problem, and = 3 is a constant units have been assigned. We refer to this scheduling method
with 0 < 0 ≤ 3. as the canonical scheduling.
We finally analyze the running time of Algorithm 2. Theorem 4. All jobs J1 , J2 , . . . , Jn can be selected if and only
The construction of the GAP instance takes O(|R| · K) time, if the following condition is satisfied.
while invoking the approximation algorithm due to Cohen i i
|R|·K
et al. [10] takes O( 0 + K04 ) time. The solution delivered
X X
Uj ≤ Wj for all i with 1 ≤ i ≤ n. (19)
by the proposed algorithm, Algorithm 2, thus is no less j=1 j=1
1 0
than 6+ 0 times the optimal one, where is a constant with
0 Proof: We prove Claim (19) by induction on the number
0 < ≤ 3.
of jobs n.
We start with induction basis. When n = 1, there is only
7.2 A dynamic programming algorithm for another spe- one job that requires U1 computing units. Therefore, if J1
cial reliability-aware VNF instances provisioning prob- can be selected, we must have U1 ≤ W1 . On the other hand,
lem if U1 ≤ W1 , then J1 can be selected because its demanded
We then study another special case of the reliability-aware U1 computing units can be satisfied. We then assume that
VNF instances provisioning problem where different VNF Claim (19) holds for all n with 1 ≤ n ≤ h. We finally show
instances of different network functions have the same that Claim (19) also holds when n = h + 1 as follows.
amounts of computing resource demands, i.e., ci = cj On one hand, suppose that all h + 1 jobs can be selected.
for all fi ∈ F and fj ∈ F . For the sake of convenience, In this case, since the first h jobs can be selected by the
Pi Pi
we assume that the computing resource demand by each induction assumption, we have j=1 Uj ≤ j=1 Wj for all
network function is one computing unit. We propose an i with 1 ≤ i ≤ h. Now, because the first h + 1 jobs can also
Ph+1 Ph+1
exact algorithm for the problem through a reduction to a be selected, we then must have j=1 Uj ≤ j=1 Wj where
Ph+1
profit maximization problem (defined later), and the solution
j=1 Uj is the total number of computing units required by
to the latter in turn returns a solution to the former. The Ph+1
the h + 1 jobs and j=1 Wj is the total number of available
reduction is as follows. computing units provided by all bins, because any bin with
a capacity larger than h + 1 can only contribute at most h + 1
7.2.1 A dynamic programming algorithm computing units.
Denote by n the number of requests r1 , r2 , . . . , rn in On the other hand, suppose Claim (19) holds, i.e.,
Pi Pi
R, which correspond n jobs J1 , J2 , . . . , Jn . There are K j=1 Uj ≤ j=1 Wj for all i with 1 ≤ i ≤ h + 1. We show
cloudlets in G, and each can be treated as a bin Bi with that all h + 1 jobs can be selected by canonically scheduling
computing capacity Ci , 1 ≤ i ≤ K . The reliability require- J1 and distinguishing two cases: Case A and Case B, to deal
ment of request rj is implemented by placing (nj + 1) VNF with the remaining h jobs.
Pi Pi
instances to nj + 1 cloudlets with each being allocated a Case A: if U1 = W1 , then we have j=2 Uj ≤ j=2 Wj
computing unit at each cloudlet. The implementation of job for all i with 2 ≤ i ≤ h + 1. Because there are h remaining
Jj will take Uj bins and consume one computing unit in jobs, by the induction assumption, all the remaining h jobs
each of the chosen Uj bins. The profit (revenue) obtained can be selected.
by implementing job Jj is pj . The profit maximization problem Case B: if U1 < W1 , then not all W1 bins are used, and
then is to find a subset A of R (A ⊆ R) such as the sum of there are W1 − U1 bins not used. We relabel the h remaining
profits of admitted requests in A is maximized, subject to the jobs by labeling job J2 as J10 , J3 as J20 , . . ., and Jh+1 as
computing capacity on each cloudlet in the network. Jh0 . Accordingly, we have U10 = U2 , U20 = U3 , . . ., Uh0 =
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 9
Capacity
and (ii) W2 > U1 , respectively.
Subcase (i): if W2 ≤ U1 , then
W10 = W2 + W1 − U1 , (20) U1
Note that if p = h + 1, then from Inequality (17) we have Denote by P (i, h, Y ) the maximum profit from selecting i
Wj > Uj for all j with 1 ≤ j ≤ h + 1. Then, all jobs can be jobs from the first h jobs with i ≤ h ≤ n, whose total
selected. We thus assume that p ≤ h, and this situation is number of computing units needed is Y . Clearly 0 ≤ Y ≤
n
illustrated in Fig. 2. We now have W10 = W1 ≥ W2 > U1 ≥
P
j=1 Uj = U . If there is no solution, then P (i, h, Y ) = 0.
U2 = U10 . The initiation of P (0, h, Y ) is 0 for any 1 ≤ h ≤ n and
For i = 2, . . . , p − 1, we have 0 ≤ Y ≤ U . The recurrence is defined as follows.
i i+1 i+1
ph + P (i − 1, h − 1, Z),
X X X
Uj0 = Uj ≤ U1 , from inequality (17)
j=1 j=2 j=2
P (i, h, Y ) = max if Y = Z + Uh and Y ≤ Lh ,
P (i, h − 1, Y ), otherwise.
i
X
≤ Wj , from the assumption of subcase (ii) (28)
j=1 where ph is the revenue collected if request rh is admitted
i
X and Uh = nh + 1 is the number of VNF instances placed
≤ Wj0 . (25) for request rh , and Z is the total number of computing
j=1 units required by the first h − 1 jobs admitted prior to the
Ph−1
For i = p, p + 1, . . . , h, we have admission of job h, i.e., Z = i=1 Uji . Note that from
i p−1 i Corollary 1, Y ≤ Li is to guarantee that the solution is valid.
Denote by V (i, h, Y ) = {j1 , j2 , . . . , ji } the set of indices
X X X
Wj0 = Wj0 + Wp0 + Wj0 ,
j=1 j=1 j=p+1 of the selected i jobs that achieves P (i, h, Y ) – the maximum
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 10
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 11
Normalized Revenue
ILP
Normalized Revenue
30,000 0.9
ILP
ALG-1 ALG-1 0.9
Greedy 0.8 45,000 0.8
25,000 Greedy
0.7 0.7
20,000 0.6 40,000 0.6
0.5 0.5
15,000
0.4 35,000 0.4
10,000 0.3 ILP 0.3 ILP
5,000 0.2 ALG-1 30,000 0.2 ALG-1
0.1 Greedy 0.1 Greedy
0 0 25,000 0
100 200 300 400 500 600 700 800 9001000 100 200 300 400 500 600 700 800 9001000 20 40 60 80 100 20 40 60 80 100
Number of Requests Number of Requests Number of Cloudlets Number of Cloudlets
(a) Total revenues by different al- (b) Normalized revenues by dif- (c) Total revenues by different al- (d) Normalized revenues by dif-
gorithms with different numbers ferent algorithms with different gorithms with different number of ferent algorithms with different
of requests numbers of requests cloudlets number of cloudlets
Fig. 3. Performance evaluation of the approximation algorithm ALG-1 for the reliability-aware VNF instances provisioning problem
network resources, thereby achieving better performance. We algorithm ALG-1 runs fastest, while algorithm ILP is the
also evaluate the approximation ratio of algorithm ALG-1 slowest. This demonstrates a non-trivial tradeoff between
empirically through comparing the total revenue delivered the quality of a solution and the running time to deliver the
by algorithm ALG-1 and the optimal one by the optimal solution.
algorithm ILP. It can be seen from Figs. 3 (c)-(d) that the We thirdly evaluate the performance of ALG-3 against
empirical approximation ratio of algorithm ALG-1 is at most ILP and ALG-1 for the special reliability-aware VNF in-
1.17 in all cases, compared with the analytical approximation stances provisioning problem where the computing demand
ratio of 20 according to Theorem 2 when K = 100. This by each network function instance is identical, by varying
demonstrates that the empirical performance of algorithm the number of requests from 100 to 1,000.
ALG-1 is significantly better than its analytical counterpart.
Normalized Revenue
ILP
50,000 ALG-3 0.9
ALG-1 0.8
8.3 Algorithm performance evaluation for special 40,000 0.7
0.6
reliability-aware VNF instances provisioning problems 30,000 0.5
0.4
20,000
0.3 ILP
10,000 0.2 ALG-3
ALG-1
Total Revenue in Dollars
40,000 0.1
1
Normalized Revenue
ILP 0
100 200 300 400 500 600 700 800 9001000
0
100 200 300 400 500 600 700 800 9001000
ALG-1 0.9
30,000 ALG-2 0.8 Number of Requests Number of Requests
0.7
0.6 (a) Total revenues (b) Normalized Revenues
20,000 0.5
0.4
Running Time in Seconds
0.3 ILP
10,000 ALG-1 10,000 ILP
0.2
0.1
ALG-2 ALG-3
1,000 ALG-1
0 0
100 200 300 400 500 600 700 800 9001000 100 200 300 400 500 600 700 800 9001000
Number of Requests Number of Requests 100
1
Running Time in Seconds
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 12
that the running time of algorithm ALG-1 is only a small the performance of algorithm ALG-1. Fig. 7 (a) shows the
fraction of algorithm ALG-3, not to mention algorithm ILP. performance of algorithm ALG-1 with and without adopting
the admission control policy. It can be seen that algorithm
8.4 Parameter impacts on algorithm performance ALG-1 achieves a higher revenue if it does not adopt the
We finally study the impact of important parameters on the admission control policy for the first four hundred requests.
performance of algorithms ALG-1. However, with more and more request arrivals, it achieves
In all experiments so far we assumed that the maximum a higher revenue in the long term if the admission control
number nmax of secondary VNF instances of each request policy is adopted. The rationale is that without any admission
is set at 4. We now investigate the impact of nmax on the control policy, requests that consume excessive resources
performance of algorithm ALG-1, by varying nmax while will be admitted if there are sufficient resources for them.
fixing the number of cloudlets at 20. Fig. 6 (a) shows the total Consequently, such resource allocations will heavily impact
revenue delivered by it when the number of requests grows the admissions of future requests. As a result, the total
from 100 to 1,000. Notice that when the number of requests is revenue by algorithm ALG-1 without the admission control
less than 300, the total revenues of different algorithms with policy is only two-thirds of that by itself with the admission
different nmax are nearly identical, meaning the network has control policy. Fig 7 (b) plots the performance curves of
a relatively abundant amount of resources to accommodate algorithm ALG-1 by varying the value of α in Eq. (9) from
different requests. However, with more requests, the larger 21 K to 25 K , where K is the number of cloudlets in the
the value of nmax , the smaller the total revenue delivered by network. It can be seen from Fig 7 (b) that the larger the
algorithm ALG-1. The reason behind this is that the amount value of α, the less the total revenue delivered by ALG-1 and
of available resources in the network and the payments of vice versa. This is due to the fact that the larger the value of
requests do not change, yet each request demands more α, the higher the cost of using an overloaded resource will
resources when nmax increases. be, leading to more conservative resource usage.
We also evaluate the total revenues delivered by algo-
rithm ALG-1 by varying the number of cloudlets K while
fixing the number of requests at 1,000. The results are shown 9 C ONCLUSION
in Fig. 6 (b). When the number K of cloudlets increases, the In this paper, we studied reliability-aware VNF instances
amount of available resources increases accordingly. As a provisioning in MEC, by casting a novel optimization
result, the larger K is, the higher the total revenue delivered problem. We first showed that the problem is NP-hard and
by algorithm ALG-1 is. Meanwhile, for the same K , the larger formulated an integer linear program solution for it. We
the value of nmax , the lower the total revenue delivered by then proposed a logarithmic-approximation algorithm for the
ALG-1, because the revenue of a request does not increase problem. Particularly for a special case of the problem where
yet the resource demand of the request increases. each request needs only one secondary VNF instance, we
developed a constant approximation algorithm. Moreover,
Total Revenue in Dollars
40,000 30,000
With Admission Control l=1
35,000 l=2
Without Admission Control 25,000
30,000
20,000
l=3
l=4 Proof: Consider a request rj 0 ∈ A admitted by the
25,000 l=5
20,000 15,000 approximation algorithm. Then, for any cloudlet k with
15,000 10,000 1 ≤ k ≤ K , we have
10,000
5,000
wk (j 0 + 1) − wk (j 0 )
5,000
0 0
100 200 300 400 500 600 700 800 9001000 100 200 300 400 500 600 700 800 9001000
Number of Requests Number of Requests Ck C (j 0 +1) Ck C (j 0 )
1− k C 1− kC
(a) Total revenues by algorithm (b) Total revenues by algorithm
= · (α k − 1) − · (α k − 1)
cj 0 +1 cj 0
ALG-1 with and without the ad- ALG-1 with different α (= 2l · K ) 0 0
mission control policy Ck C (j +1)
1− k C Ck C (j )
1− kC
≤ · (α k − 1) − · (α k − 1) (30)
cj 0 cj 0
Fig. 7. Impacts of the admission control policy and the value of α on the Ck C (j 0 +1) C (j 0 )
1− k C 1− kC
performance of algorithm ALG-1 = · α k −α k
cj 0
The rest is to investigate the impacts of both the ad- Ck C (j 0 ) Ck (j 0 )−Ck (j 0 +1)
1− kC
mission control policy and the parameter α in Eq. (9) on = ·α k (α Ck
− 1)
cj 0
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 13
Ck C (j 0 ) c 0
j
1− kC Proof: Consider a request rj 0 that is admitted by the op-
≤ ·α k (α Ck − 1) (31)
cj 0 timal algorithm yet rejected by the proposed approximation
Ck C (j 0 ) c 0
1− kC j
log α algorithm. Since rj 0 is admitted by the optimal algorithm, it
= ·α k (2 Ck − 1)
cj 0 means that the optimal algorithm is able to admit rj 0 using
opt
Ck C (j 0 )
1− kC
a set Kj 0 of cloudlets. There are exactly two cases. Case
≤ ·α k (cj 0 · log α/Ck ) (32) opt
1: every cloudlet in Kj 0 has sufficient resources to admit
cj 0
1−
Ck (j 0 ) rj 0 ; and Case 2: at least one cloudlet in Kjopt 0 does not have
=α Ck
· log α. (33) sufficient resources to meet the resource demand of rj 0 .
In the following we show that Inequality (11) holds in
where Inequality (30) follows because requests are sorted, In-
both of the two cases.
equality (31) holds because at most cj 0 amount of computing opt
Case 1: If every cloudlet in Kj 0 has sufficient re-
resource is consumed at cloudlet k , and Inequality (32) holds
sources to admit rj 0 , the proposed approximation algo-
because 2x − 1 ≤ x with 0 ≤ x ≤ 1.
rithm must be able to find a set Kj 0 of cloudlets such
Recall that Kj 0 is the set of cloudlets in which the
that Kj 0 can meet the resource demand of request rj 0
proposed approximation algorithm places a VNF instance opt
andPfor any set including P Kj 0 of 0nj + 1 cloudlets. That
0
of rj 0 . We then calculate the sum of costs of cloudlets in G 0
when admitting request rj 0 . Notice that if none of the VNF is, k∈Kj 0 ψ k (j ) ≤ opt ψk (j ). Since rj 0 is rejected
k∈Kj 0
instances of rj 0 is created at a cloudlet k , the cost of the by the proposed algorithm, the cost sum of cloudlets
opt
cloudlet does not change after the admission of request rj 0 . in Kj 0 when admitting request rj 0 is no less than the
The difference in the cost sum of all cloudlets before and given threshold in the admission control policy (10), i.e.,
K · pj 0 ≤ k∈Kj0 ψk (j 0 ) ≤ k∈Kopt ψk (j 0 ).
P P
after admitting request rj 0 thus is 0 j
opt
K
X X Case 2: At least one cloudlet in Kj 0 does not have
0 0 0 0 sufficient available resource to meet the demand of request
(wk (j + 1) − wk (j )) = (wk (j + 1) − wk (j ))
k=1 k∈Kj 0 rj 0 . Thus, there must exist at least one cloudlet k 0 such
Ck (j 0 ) that its residual computing capacity Ck0 (j 0 ) is less than
1−
X
≤ (α Ck
· log α), by Inequality (33) the computing demand cj 0 . Consequently, the sum of the
opt
k∈Kj 0 normalized costs of cloudlets in Kj 0 is greater than Kpj 0 :
X wk (j 0 )
C 0 (j 0 )
= log α +1 1− k
Ck X α C 0
k −1
k∈Kj 0 ψk (j 0 ) ≥ ψk0 (j 0 ) =
c j0
X wk (j 0 ) X k∈Kjopt
0
= log α + 1 c 0
1− Cj 0
k∈K
Ck k∈K α k −1
j0 j0
> , since Ck (j 0 ) < cj 0
≤ log α · ((pj 0 · K) + K) (34) cj 0
1
= log α · K · (pj 0 + 1) α1− log α − 1
≥ , since α ≤ 2Cmin /cmax ≤ 2Ck0 /cj0
≤ log α · K · (pj 0 + pj 0 ) (35) cj 0
α
=2 log α · K · pj 0 , (36) −1
= 2 ≥ Kpj 0 , since α ≥ 2K · Qmax + 2 ≥ cj 0 · pj 0 + 2.
cj 0
where Ineq. (34) follows from the fact that rj 0 is admitted
and Ineq. (10), Ineq. (35) follows because pj 0 ≥ 1.
The cost sum of all cloudlets after having examined last
request r|R| thus is ACKNOWLEDGMENTS
K |R| K We really appreciate the three anonymous referees and the
associate editor for their expertise comments and construc-
X X X
wk (|R| + 1) = (wk (j 0 + 1) − wk (j 0 ))
k=1 j 0 =1 k=1 tive suggestions, which have helped us improve the quality
K and presentation of the paper greatly.
X X
= (wk (j 0 + 1) − wk (j 0 ))
rj 0 ∈A k=1 R EFERENCES
X
≤ (2K · pj 0 · log α) (37) [1] S. Aidi, M. F. Zhani, and Yehia Elkhatib. On improving service
rj 0 ∈A chains survivability through efficient backup provisioning. Proc. of
X International Conference on Network and Service Management (CNSM),
= 2K · log α · pj 0 , IEEE, 2018.
rj 0 ∈A [2] Amazon Web Services, Inc. Amazon EC2 instance configura-
tion. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/
where Inequality (37) follows from Inequality (36). ebs-ec2-config.html, 2018.
[3] A.-L. Barabási and R. Albert. Emergence of scaling in random
networks. Science, Vol. 286, pp. 509–512, 1999.
[4] M. T. Beck, J. F. Botero, and K. Samelin. Resilient allocation of
A PPENDIX B service function chains. Proc. of IEEE Conference on Network Function
P ROOF OF L EMMA 2 Virtualization and Software Defined Networks (NFV-SDN), IEEE, 2017.
[5] J. Bailey and S. Stuart FAUCET: Deploying sdn in the enterprise.
ACM Queue, Vol. 14, pp. 54–68, 2016.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TMC.2019.2927214, IEEE
Transactions on Mobile Computing
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. X, NO. X, XX, 2018 14
[6] Flavio Bonomi, Rodolfo Milito, Jiang Zhu, Sateesh Addepalli Fog and Service Management, Vol 14, pp. 554–568, 2017.
computing and its role in the internet of things. Proc. MCC workshop [30] M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies. The case for
on Mobile cloud computing, ACM, 2012. vm-based cloudlets in mobile computing. IEEE Pervasive Computing,
[7] F. Carpio and A. Jukan Improving reliability of service function Vol. 8, pp. 1536–1268, 2009.
chains with combined vnf migrations and replications https://arxiv. [31] A. Singh, J. Ong, A. Agarwal, et al. Jupiter rising: A decade of clos
org/abs/1711.08965, 2018. topologies and centralized control in google’s datacenter network.
[8] M. Casazza, P. Fouilhoux, M. Bouet, and S. Secci. Securing virtual Communications of the ACM, Vol. 59, pp. 88–97, 2016.
network function placement with high availability guarantees. Proc. [32] T. Taleb, S. Dutta, A. Ksentini, M. Iqbal, and H. Flinck. Mobile edge
of IFIP Networking, Lecture Notes in Computer Science, 2017. computing potential in making cities smarter. IEEE Communications
[9] A. Ceselli, M. Premoli, and S. Secci. Mobile edge cloud network Magazine, Vol. 55, No. 3, pp. 38–43, IEEE, 2017.
design optimization. IEEE/ACM Transactions on Networking, Vol.25, [33] Z. Xu, W. Liang, M. Jia, M. Huang, and G. Mao. Task offloading
No.3, pp.1818–1831, 2017. with network function services in a mobile edge-cloud network. To
[10] R. Cohen, L. Katzir, and D. Raz. An efficient approximation for the appear in IEEE Transactions on Mobile Computing, Vol.99, Acceptance
generalized assignment problem. Information Processing Letters, Vol. date: October 19, DOI: 10.1109/TMC.2018.2877623, 2018.
100, pp. 162–166, Elsevier, 2006. [34] S. Yi, C. Li, and Q. Li A survey of fog computing: concepts,
[11] A. V. Dastjerdi and R. Buyya. Fog computing: Helping the internet applications and issues. Proc. of Workshop on Mobile Big Data, ACM,
of things realize its potential Computer, Vol. 49, No. 8, pp. 112–116, 2015.
IEEE, 2016.
[12] W. Ding, H. Yu, and S. Luo. Enhancing the reliability of services in Meitian Huang received the BSc degree with
nfv with the cost-efficient redundancy scheme. Proc. of ICC, IEEE, the first class Honours in Computer Science at
2017. the Australian National University in 2015. He
[13] A. Engelmann and A. Jukan. A reliability study of parallelized vnf currently is studying for his PhD degree in the Re-
chaining. Proc. of ICC, IEEE, 2018. search School of Computer Science at the Aus-
[14] J. Fan, C. Guan, Y. Zhao, and C. Qiao. Availability-aware mapping tralian National University. His research interests
of service function chains. Proc. of INFOCOM’17, IEEE, 2017. include software-defined networking, algorithm
[15] J. Fan, M. Jiang, and C. Qiao. Carrier-grade availability-aware design and analysis, and cloud computing.
mapping of service function chains with on-site backups. Proc. of
IWQoS’17, IEEE, 2017.
[16] R. Govindan, I. Minei, M. Kallahalla, et al. Evolve or die: Weifa Liang (M’99–SM’01) received the PhD
High-availability design principles drawn from google’s network degree from the Australian National University
infrastructure. Proc. of SIGCOMM, ACM, 2016. in 1998, the ME degree from the University of
[17] B. Han, V. Gopalakrishnan, G. Kathirvel, and A. Shaikh. On Science and Technology of China in 1989, and
the resiliency of virtual network functions. IEEE Communications the BSc degree from Wuhan University, China
Magazine, Vol. 55, pp. 152–157, 2017. in 1984, all in Computer Science. He is cur-
[18] S. Herker, X. An, W. Kiess, S. Beker, A. Kirstaedter. Data-center rently a full Professor in the Research School
architecture impacts on virtualized network functions service chain of Computer Science at the Australian National
embedding with high availability requirements. Proc. of 2015 IEEE University. His research interests include design
Globecom Workshops (GC Wkshps), IEEE, 2015. and analysis of energy efficient routing protocols
[19] Hewlett-Packard Development Company. L.P. Servers for enter- for wireless ad hoc and sensor networks, mobile
prise bladeSystem, rack & tower and hyperscale. http://www8.hp. edge computing, cloud computing, Network Function Virtualization and
com/us/en/products/servers/, 2015. Software-Defined Networking, design and analysis of parallel and dis-
[20] M. Huang, W. Liang, Z. Xu, and S. Guo. Efficient algorithms tributed algorithms, approximation algorithms, combinatorial optimization,
for throughput maximization in software-defined networks with and graph theory. He is a senior member of the IEEE.
consolidated middleboxes. IEEE Transactions on Network and Service Xiaojun Shen (SM’02) received the B.S. degree
Management, Vol.14, No.3, pp.631–645, 2017. in numerical analysis from Tsinghua University,
[21] R. Jain and S. Paul. Network virtualization and software defined Beijing, China, in 1968, the M.S. degree in com-
networking for cloud computing: a survey. IEEE Communications puter science from the Nanjing University of
Magazine, Vol. 51, No. 11, pp. 24–31, IEEE, 2013. Science and Technology, China, in 1982, and
[22] M. Jia, W. Liang, and Z. Xu. QoS-aware task offloading in the Ph.D. degree in computer science from the
distributed cloudlets with virtual network function services. Proc of University of Illinois at Urbana-Champaign in
20th ACM International Conference on Modeling, Analysis and Simulation 1989. He is a full Professor in the School of Com-
of Wireless and Mobile Systems (MSWiM), ACM, pp.109–116, 2017. puting and Engineering, University of Missouri-
[23] J. Kang, O. Simeone, and J. Kang. On the trade-off between com- Kansas City. His current research focuses on
putational load and reliability for network function virtualization. fundamental scheduling problems in wired and
IEEE Communications Letters, Vol. 21, pp. 1767–1770, 2017. wireless computer networks.
[24] J. Kong, I. Kim, X. Wang, Q. Zhang, H. C. Cankaya, W. Xie, T.
Ikeuchi, and J. P. Jue. Guaranteed-availability network function Yu Ma received his BSc degree with the first class
virtualization with network protection and vnf replication. Proc. of Honours in Computer Science at the Australian
IEEE Global Communications Conference, IEEE, 2017. National University in 2015. He is currently a PhD
[25] J. Li, W. Liang, M. Huang, and X. Jia. Providing reliability-aware candidate in the Research School of Computer
virtualized network function services for mobile edge computing. Science at the Australian National University.
To appear in Proc. of 39th Int’l Conf. on Distributed Computing Systems His research interests include Software Defined
(ICDCS’19), July, IEEE, 2019. Networking, Internet of Things (IoT), and Social
[26] P. G. Lopez, A. Montresor, D. Epema, A. Datta, T. Higashino, A. Networking.
Iamnitchi, M. Barcellos, P. Felber, and E. Riviere. Edge-centric
computing: vision and challenges. ACM SIGCOMM Computer
Communication Review, Vol. 45, No. 5, pp. 37–42, ACM, 2015. Haibin Kan (M’13) received the Ph.D. degree
[27] R. Mijumbi, J. Serrat, J.-L. Gorricho, N. Bouten, F. De Turck, and from Fudan University, Shanghai, China, 1999.
R. Boutaba. Network function virtualization: State-of-the-art and After receiving the Ph.D. degree, he became a
research challenges. IEEE Communications Surveys & Tutorials, Vol. faculty of Fudan University. From June 2002 to
18, No. 1, pp. 236–262, IEEE, 2016. January 2006, he was with the Japan Advanced
[28] G. Moualla, T. Turletti, and D. Saucez. An availability-aware Institute of Science and Technology as an Assis-
sfc placement algorithm for fat-tree data centers. Proc. of IEEE tant Professor. He went back to Fudan University
International Conference on Cloud Networking, IEEE, 2018. in February 2006, where he is currently a full
[29] L. Qu, C. Assi, K. Shaban, and M. J. Khabbaz. A reliability-aware Professor. His research topics include coding
network service chain provisioning with delay guarantees in nfv- theory, complexity of computing, and information
enabled enterprise datacenter networks. IEEE Transactions on Network security.
1536-1233 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.