Zum Hauptinhalt springen

LMM: latency-aware micro-service mashup in mobile edge computing environment

Zhou, Ao ; Qi, Lianyong ; et al.
In: Neural Computing and Applications, Jg. 32 (2020-01-02), S. 15411-15425
Online unknown

LMM: latency-aware micro-service mashup in mobile edge computing environment 

Internet of Things (IoT) applications introduce a set of stringent requirements (e.g., low latency, high bandwidth) to network and computing paradigm. 5G networks are faced with great challenges for supporting IoT services. The centralized cloud computing paradigm also becomes inefficient for those stringent requirements. Only extending spectrum resources cannot solve the problem effectively. Mobile edge computing offers an IT service environment at the Radio Access Network edge and presents great opportunities for the development of IoT applications. With the capability to reduce latency and offer an improved user experience, mobile edge computing becomes a key technology toward 5G. To achieve abundant sharing, complex IoT applications have been implemented as a set of lightweight micro-services that are distributed among containers over the mobile edge network. How to produce the optimal collocation of suitable micro-service for an application in mobile edge computing environment is an important issue that should be addressed. To address this issue, we propose a latency-aware micro-service mashup approach in this paper. Firstly, the problem is formulated into an integer nonlinear programming. Then, we prove the NP-hardness of the problem by reducing it into the delay constrained least cost problem. Finally, we propose an approximation latency-aware micro-service mashup approach to solve the problem. Experiment results show that the proposed approach achieves a substantial reduction in network resource consumption while still ensuring the latency constraint.

Keywords: Micro-service; Mobile edge computing; Network resource consumption; Latency; Mashup

Introduction

Nowadays, IoT is a term that has gained widespread attention from academia, business, and government [[1]]. Many researchers devote to exploiting IoT technologies to make the city more open, efficient, sustainable, productive, and competitive [[3]–[5]]. E.g., citywide crowd flows can be forecasted by mining traffic data send by sensors[[6]–[8]], face recognition, and human identification [[9]] can be performed based on the photos taken by video cameras installed in the street.

With the advancement of software technique, complex IoT applications have been implemented as a set of lightweight and independent micro-services [[10]]. Each micro-service is provided by a lightweight container [[11]]. Different from services in the form of monolithic software, micro-services allow IoT services deployed more easily and flexibly [[12]]. The functional capability of a single micro-service is limited. A collection of loosely coupled micro-services are structured to implement complex business capabilities through lightweight communication protocols. We refer to this process as micro-service mashup.

Where to put the IoT services is an important issue that should be addressed. One efficient way is to deploy the IoT services on the cloud [[13]]. However, the user is at the edge of the mobile network, and clouds are typically far from the network edge. The high latency makes cloud computing not efficient enough for these IoT services [[15]]. The problem cannot be solved only through spectrum extension. In addition, much pressure is added to the network. The current core network bandwidth would be challenged for its capability of transferring large amount of the IoT-created data [[16]].

Mobile edge computing [[17]] has been introduced to the IoT service provision for shorter response time and smaller network pressure [[18]]. As shown in Fig. 1, mobile edge computing offers an IT service environment at the Radio Access Network (RAN) edge. With the capability to reduce latency and offer an improved user experience, mobile edge computing can make a great contribution to satisfy the high throughout and low latency requirements of 5G. The burden of backbone IP networks and cellular core networks can be greatly relieved. We can also exploit the real-time radio network conditions to optimize the network and service. European 5G PPP recognizes mobile edge computing as a key technology toward 5G. The emergency of mobile edge computing presents great opportunities for the development of 5G and IoT applications.

Graph: Fig. 1 Mobile edge computing environment

There are still several issues that should be addressed for provisioning micro-services in the edge. One significant issue is how to produce the optimal collocation of suitable micro-service for a user with the consideration of the network traffic. Because the process capability of a single micro-service is limited, larger amount of micro-services that deliver the same functionality are usually deployed. To avoid ambiguity, we refer to the end-to-end service for a user as an application, refer to all atom component units with the same functionality as micro-service and refer to each candidate as micro-service instance. The micro-service mashup strategy has significant impact on the Quality of Service (QoS) and the network resource utilization. One factor largely contributes to this issue; edge computing is a distributed computing platform. Those micro-service candidates potentially differ in terms of location for deploying over containers on different cloudlets. There is a tremendous difference in latency and network resource utilization when the micro-services from different containers are selected in the service mashup process. Thus, the communication latency and network resource consumption grow when the selected micro-services are deployed far away from each other or from the end user. Little attention has been paid to the problem.

Although service mashup problem has already been studied in the literature, micro-service mashup in mobile edge computing environment is relatively novel in the research community. Many works have addressed service mashup and services composition problems, such as [[19]–[22]]. These works focus on this QoS-aware service mashup/composition problem and give their solutions from different perspectives. However, most of those studies do not account for the network condition, the location of the requestor, and inter-service latency, which may have significant impact on the micro-service mashup in mobile edge computing environment.

In addition, it seems that micro-services mashup is similar to workflow provision [[23]]. Although sharing several characteristics, micro-services provision, and workflow provision are not the same. A workflow task consists of several individual sub-tasks [[24]]. Workflow provision deals with static sub-tasks connection topology where sub-tasks are arranged in a fixed, predetermined order [[25]]. In contrary, component units of micro-services are loosely coupled. Micro-services mashup deals with complex services that are generated based on business capability requirements where the connection topology of the component units is not flexible.

In this paper, we propose a latency-aware micro-service mashup algorithm in mobile edge computing environment. We formulate the problem into an integer nonlinear programming. The aim of the integer nonlinear programming is to reduce the network resource consumption while the overall turnaround time satisfies a specific constraint. The functional requirements, with respect to the latency requirements, the topology of edge network, and the statements of each micro-service instance, are considered in the formulation. We prove that the problem is NP-hard. As we know, a NP-hard problem cannot be solved in polynomial time. To address this issue, an approximation algorithm is designed to make a trade-off between the goodness of the approximation and the running time for micro-service mashup. We conduct experiment on the Shanghai Telecoms base station dataset. The experiment results illustrate that our approach can reduce network resource consumption while still guaranteeing end-to-end latency.

More specifically, the major contributions include:

  • In contrast to existing service mashup approaches, we focus not only on efficient service mashup but also on network resource consumption in edge network as another essential consideration. To the best of our knowledge, this is the earliest effort to consider network resource consumption for micro-service mashup in mobile edge computing environment.
  • We formulate the problem into an integer nonlinear programming. We prove the NP-hardness of the problem by reducing it into the delay constrained least cost problem. An approximation latency-aware micro-service mashup approach (LMM) is proposed by us to solve the problem.
  • To evaluate the performance of our approach, we implement all approaches in a simulation platform. The experimental results show that our approach achieves higher network-resource efficiency as well as end-to-end latency guarantee.

The remainder of this paper is as follows: Sect. 2 provides a review of the mobile edge computing and service mashup-related work. Section 3 describes the system model. We formulate the micro-service mashup problem in mobile edge computing as a optimization problem in Sect. 4. Section 5 presents LMM, an approximation approach to solve micro-service mashup problem. Section 6 compares the performance of LMM with respect to state-of-the-art algorithms. Finally, Sect. 7 concludes our work and presents the future work.

Related works

There are plenty of related works in the literature. Due to space limitation, we will only review some notable work here.

Mobile edge computing

The stringent requirements of IoT services have brought great challenges to 5G network and computing paradigm. Traditionally, the IoT service requests are submitted through the mobile edge network and processed by the remote cloud. Although cloud computing has tremendously changed the way we live, cloud computing is not always efficient for IoT service providing. Traditionally, clouds are geographically far away from network edge. The communication latency is always long and unpredictable. The low latency, high bandwidth requirements cannot be satisfied by only extending spectrum resources. Mobile edge computing has been introduced to address this issue. In mobile edge computing, IT service environment and cloud-computing capabilities are provided in the mobile edge network within the RAN. The services are provisioned on cloudlets. A cloudlet is a resource-rich cluster [[27]] and co-located with the base stations (BSs) in a mobile edge network within the RAN. Mobile edge computing promises dramatic increment throughout and reduction in latency, tackling the key challenges for materializing 5G vision. Together with Software-Defined Networking and Network Functions Visualization, mobile edge computing is recognized by the European 5G PPP as key technology toward 5G.

Many studies focus on the cloudlet placement problem in a mobile edge network. A large-scale mobile edge network consists of hundreds and thousands of BSs. Poor cloudlet placement strategy will results in load unbalance and long access latency. The cloudlets that are close to the large stream of people will be overloaded, while other cloudlets that are far away from the stream of people are under-loaded. Considering the topology of mobile edge network, cloudlet placement methods are proposed by [[28]]. The methods presented in [[29]] investigate to offload computation-intensive tasks of mobile users to cloudlets for energy savings. Taking the QoS requirements into consideration, Hoang et al. [[30]] devise a novel linear programming solution for task offloading in mobile edge computing environment. Cardellini et al. [[31]] and Gelenbe et al. [[32]] consider that tasks can be offloaded to both the cloud data center and the local cloudlets at the same time. When all cloudlets have been placed in the mobile edge network, we should determine which cloudlet to process a specific request. The methods proposed in [[33]] deal with the request assignment problem to minimize the average access latency. However, those methods assume that all services are independent from each other, and do not consider the condition that a collection of loosely coupled micro-services should be structured to implement complex business.

Workflow

A workflow task consists of several individual tasks. Workflow scheduling is to optimize the Task-to-Resource assignment. Malawski et al. [[34]] aim to gain insight into resource allocation for executing scientific workflow on clouds with budget and deadline constraints. Zhu et al. [[35]] study to optimize multiple objectives simultaneously for workflow scheduling in cloud computing environment and work to come up with an evolutionary algorithm to solve the problem. Arabnejad et al. [[36]] design a low-time complexity workflow scheduling algorithm with Quality of Service constrained on heterogeneous resources. There is a lot of wastage for inefficient use of resources. Lee et al. [[37]] proposed a resource-efficient scheduling algorithm for workflow application in clouds

Micro-services mashup and workflow provision are not the same. Sub-tasks of a workflow are arranged in a fixed, predetermined order. The connection topology of a workflow application is flexible. Contrary, component units of micro-services are loosely coupled. A collection of loosely coupled micro-services are structured dynamically based on the business capability requirements.

Service mashup/composition

Service mashup/composition is a hot research field in service computing. We need to composite several atom services to achieve a more complex service when the functional requirements of a user cannot be fulfilled by an individual service. Most of current researches assume that all the QoS values can be predetermined and aim to select the service with optimal QoS value. Achieving a trade-off between adaptation and efficiency in a highly dynamic environment is challenging and necessary. Multi-agent techniques and reinforcement learning are integrated together for adaptive service composition for the method proposed by Wang et al. [[38]]. QoS is an significant criterion in the service selection process for composition. Deng et al. [[39]] exploit the fact that QoS attributes of a service are correlated with other services. QoS correlations are considered in service selection for composition. Chen et al. [[40]] formulate the QoS-aware service composition as a multi-objective optimization problem and present a flexible evolutionary algorithm to solve the problem. Deng et al. [[41]] investigate to study how to select component services from all candidates to create mashups with optimal cost performance. However, the network condition and how to calculate the inter-services latency are ignored in the proposed approach.

Preliminaries

System model

Table. 1 summarizes the symbols used in this paper. As shown in Fig. 1, we consider a mobile edge network N=(V,C,E) that is comprised of a set of BSs and cloudlets, where V denotes the set of all BSs in the mobile edge network, C denotes the set of all cloudlets, and E denotes all direct links between two BSs or between a BS and a cloudlet. Suppose |V| and |E| denote

the number of BSs and links in N, respectively. |C| denotes the number of cloudlet in N. vi denotes the ith BS in N, cj denotes the jth cloudlet in N. For each BSs pair (vi,vj) , let l(vi,vj) be the hops of the shortest path between the two BSs and denote by d(vi,vj) the average data transmission latency between the two BSs. If a cloudlet cj is co-located with the BS vi , there is a link (vi,cj) in E. The transmission latency of (vi,cj) is 0. Denoted by vcj the BS that cj is co-located with.

As shown in Figs. 2 and 3, a collection of loosely coupled micro-services are structured to implements complex business capabilities through lightweight communication protocols. Let K denotes the number of function components required for a specific user. The K number of micro-services is denoted by MS={ms1,...,msm,...,msK} . Because the process capability of a single micro-service is limited, a group of micro-service instances that deliver the same functionality are usually deployed. Suppose MSγ={msγ1,...,msγn,...,msγ|msγ|} denotes the set of instance for msγ . msγn denotes the nth instance of msγ . The request processing rate of the micro-service instance msγn is denoted by μmsγn . The current request arrival rate of msγn is denoted by λmsγn . Micro-services are provided by the lightweight containers in the cloudlets. cmsγn denotes the cloudlet that the micro-service instance msγn is deployed on.

Notations

Symbol

Meaning

vi

The ith BS in the mobile edge network

cj

The jth cloudlet in the mobile edge network

|V|

The number of BSs in the mobile edge network

|C|

The number of cloudlets in the mobile edge network

E

All direct links between two BSs or between a BS and a cloudlet

K

The number of function components required for a specific requestor

MS

The set of micro-services

msγ

A micro-service

MSγ

The set of instance for msγ

msγn

The nth instance of msγ

|msγ|

The number of instance for msγ

μmsγn

The processing rate of micro-service instance msγn

λmsγn

The current request arrival rate of msγn

dsin

The average data size per service request

dsinγ

The data size becomes after having been processed by msγ

cmsγn

The cloudlet that the micro-service instance msγn is deployed on

d(vi,vj)

The average data transmission latency between the two BSs

l(vi,vj)

The hops of a shortest path between the two BSs

λin

The request arrival rate of a user

Δlatency

The service access latency constraint

Xγn

A binary variable indexing whether msγn is selected in micro-service mashup

t

The average service access latency

nsc

The network resource consumption

Graph: Fig. 2 Intruder detection application developed by micro-service architecture

Graph: Fig. 3 Example of micro-service mashup

Problem definitions

The latency-aware micro-service mashup in mobile edge computing environment in a mobile edge network N=(V,C,E) is defined as follows. Given the location of all instance in MS, the functional requirements of a specific mashup request, the access point ap of the requestor, the service request arrival rate λin of the requestor, and the network latency, the problem is to select K micro-service instances such that the network resource consumption is minimized, subject to that the functional requirements and the average service access latency constraint Δlatency are satisfied, where the service access latency consists of communication latency, execution, and queuing time.

Note that mashup request is different from service request. We take the intruder detection application as an example. The requestor firstly submits a mashup request. After the mashup request has been received, micro-services are structured based on the functional and non-functional requirements. Then, photos are taken periodically, and each photo is submitted as a service request for processing.

In other words, the problem is to identify K micro-service instances from all candidates such that the average service access latency constraint is satisfied and the network resource consumption is minimized.

An example is shown in Fig. 3. We add a micro-service MS0 as the entrance portal and a micro-service MSK+1 as the exit portal. There is only one instance MS01 for MS0 , and only one instance MSK+11 for MSK+1 .

Problem formulation

We introduce some definitions in the following.

Service access latency

The service access latency consists of the communication latency, the execution time, and the queuing time.

The execution time and queuing time is often analyzed using queuing models. This paper employs M/M/1 queue model which assumes the exponential service time and the Poisson request arrival. According to M/M/1 queue model, the average processing latency (including execution time, and queuing time) of msγn is calculated as follows:

  • tγn=1μmsγn-λmsγn+λinγ.
  • Graph

    μmsγn denotes the processing rate, λmsγn denotes the current request arrival rate, and λinγ denotes the additional request arrival rate if msγn is selected.

    We define a binary variable Xγn for micro-service mashup by the following:

    2 Xγn=1,if micro servicemsγnis selected0,otherwise.

    Graph

    Therefore, the average execution and queuing time are calculated by the following:

    3 te=n=1K1μmsγn-λmsγn+λinγ.

    Graph

    The communication latency consists of the latency from the end user to the location of the first micro-service instance, the total latency between micro-service for request processing, the latency from the location of the last micro-service instance to the requestor. Suppose the average data size per service request is dsin . The data size becomes dsinγ after having been processed by msγ . In real-world, the functional relation between the input data size and the output data size can be obtained through experiments.

    The average latency between micro-services for request processing is calculated by the following:

    4 tm=γ=1K-1m=1|msγ|u=1|msγ+1|dcmsγm,cmsγ+1udsinγXγmXγ+1u.

    Graph

    The average latency from the end user to the location of the first micro-service instance is calculated by the following:

    5 ts=m=1|ms1|dvap,cms1mdsinX1m+dsin/Wlog21+TPHδ2+I.

    Graph

    The second part denotes the latency from the user to the serving BS [[42]]. H denotes the channel gain between the user and the BS. TP denotes the transmission power. W denotes the channel bandwidth. δ2 denotes the noise power. I denotes the inter-cell interference power.

    The latency from the location of the last micro-service instance to the end user is calculated by the following:

    6 tf=m=1|ms1|dvap,cmsK1dsinKXKm+dsinK/Wlog21+TPHδ2+I.

    Graph

    Therefore, the communication latency is calculated by the following:

    7 tc=tm+ts+tf.

    Graph

    Based on the above-mentioned discussion, the average access latency is calculated as follows:

    8 t=te+tc.

    Graph

    Network resource consumption

    When the source node and the destination node are further from each other, the network packet will be transferred by more links. Thus, more network resource would be consumed. We multiply the hops in application packet transfer by the data size to evaluate the network resource consumption.

    The hops in application packet transfer consist of the hops from the end user to the location of the first micro-service instance, the total hops between micro-services for request processing, the hops from the location of the last micro-service instance to the requestor.

    The network resource consumption for request processing is calculated by the following:

    9 nsm=γ=1K-1m=1|msγ|u=1|msγ+1|lcmsγm,cmsγ+1udsinγXγmXγ+1u.

    Graph

    The hops from the end user to the location of the first micro-service instance are calculated by the following:

    10 nss=m=1dsinlvap,msγmX1m+1.

    Graph

    The hops from the location of the last micro-service instance to the end user are calculated by the following:

    11 nsf=m=1dsinKlvap,msKuXKm+1.

    Graph

    Based on the above-mentioned discussion, the service access latency is calculated as follows:

    12 nsc=nsm+nss+nsf.

    Graph

    An integer nonlinear programming formulation

    By summering all above discussion, we can formulate this latency-aware micro-service mashup in mobile edge computing environment as an integer nonlinear programming as:

    INLP 1.

    13 minnsc.

    Graph

    14 subject to:tΔlatency,n=1|msγ|Xγn=1,γ=1Kn=1|msγ|Xγn=K.

    Graph

    where the target is to minimize the network resource consumption, the first constraint is to ensure that the latency constraint is satisfied, and the last two constraints are to ensure that the functional requirements are satisfied.

    Proposition 1

    The latency-aware micro-service mashup problem in mobile edge computing environment is NP-Hard.

    Proof

    We reduce the delay constrained least cost (DCLC) problem to the latency-aware micro-service mashup problem in mobile edge computing environment.

    The idea is that even if a simpler case of the latency-aware micro-service mashup problem in mobile edge computing environment can be solved, then it can be used to solve the delay constrained least cost problem.

    We now construct a new directed graph G~=(V~,E~,ν~01,ν~K+11) . ν~01 denotes the application entrance portal, and ν~K+11 denotes the application exit porta. V~ consists of all related micro-service instances. ν~γn denotes the node for ms~γn . There are three types of edges in the graph. Micro-service connection edge connects two micro-service instances. There is a micro-service instance edge from ν~γn to ν~γ+1u for n[1,msγ] , u[1,msγ+1] , and γ[1,K-1] . The cost and the latency of an micro-service connection edge are defined by the following:

    15 cν~γn,ν~γ+1u=dsinγlcmsγn,cmsγ+1u.

    Graph

    16 dν~γn,ν~γ+1u=tγn+dsinγdcmsγn,cmsγ+1u.

    Graph

    There is an entrance edge from ν~01 to ν~1n for n[1,ms1] .The cost of an entrance edge is defined by the following:

    17 cν~01,ν~1n=dsinγlνap,cms1n+1.

    Graph

    18 dν~01,ν~1n=dsinγdνap,cms1n+ts.

    Graph

    There is an entrance edge from ν~Kn to ν~K+11 for n[1,msK] . The cost of an entrance edge is defined by the following:

    19 cν~Kn,ν~K+11=dsinKlcmsKn,νap+1

    Graph

    20 dν~Kn,ν~K+11=tKn+dsinKdcmsKn,νap+tf

    Graph

    Now, INLP1 can be transformed to:

    INLP 2

    21 minpP(ν~01,ν~K+11))epc(e)

    Graph

    22 subject toepd(e)Δlatency

    Graph

    where P(ν~01,ν~K+11) is the set of all paths from ν~01 to ν~K+11 .

    It is easy to see that an algorithm for solving the latency-aware micro-service mashup problem in mobile edge computing environment can be used to solve the DCLC problem. The DCLC problem is a well-known NP-Hard problem [[43]]. Hence, it follows that the latency-aware micro-service mashup problem in mobile edge computing environment is NP-Hard.

    For the NP-Hard problem, approximation algorithm [[44]] is a powerful tool to make a trade-off between the goodness of the approximation and the running time. An approach based on the approximation algorithm has been proposed in this paper to attack the NP-Hard problem.

    An approximation approach for latency-aware dynamic micro-service mashup

    We now devise an approximation approach for this special latency-aware dynamic micro-service mashup problem in mobile edge computing environment.

    Details of LMM

    This approach is developed based upon the algorithm proposed in [41] by exploiting the characteristic of our problem.

    Definition 1

    (1+ε) -approximation algorithm. Assume POPT is the optimal path and OPT is the cost of the optimal path for INLP 2. An algorithm is a (1+ε)- approximation algorithm (0<ε<1) for INLP 2 if the algorithm generates a set of micro-services instances such that epc(e)(1+ε) OPT and epd(e)Δlatency in a polynomial time.

    Let fr(c) denotes the minimum latency for all paths from ν~01 to the nodes in {ν~γn,n=1msγ} with the at most cost c. If we know the value of OPT, the process presented in Algorithm 1 can be employed to calculate the optimal path. Algorithm 1 is designed based upon a dynamic programming algorithm. However, OPT cannot be known in priori. The key idea is to obtain a value that is approximate to OPT and employs the value to calculate the optimal path by using Algorithm 1.

    Before describing how to obtain a value that is approximate to OPT, we first give an important theorem.

    Suppose PL and PR are two paths from ν~01 to ν~K+11 , where PL denotes the path with the minimum latency among all paths (from ν~01 to ν~K+11 ) with the at most cost c(PL),PR denotes the path with the minimum latency among all paths (from ν~01 to ν~K+11 ) with the at most cost c(PR) . d(PL)>Δlatency,d(PR)Δlatency .

    Proposition 2

    The cost of all micro-service instances in PR is (1+ϵ) -approximation to OPT if c(PR)(1+ϵ)c(PL) .

    Since d(PR)Δlatency , we must have OPT<c(PR) . Otherwise, PR is the optimal solution for the problem. This is in contradiction with the assumption that POPT is the optimal solution.

    In addition, PL is the path with the minimum latency among all paths (from ν~01 to ν~K+11 ) with the at most cost c(PL) , and d(PL)>Δlatency implies that OPT>C(PL) . Otherwise, POPT is the path with the minimum latency among all paths.

    The above discussion implies that:

    23 c(PL)<OPT<c(PR)

    Graph

    Based on (23) and the assumption that c(PL)<OPT<c(PR) , we must have:

    24 c(PR)(1+ϵ)c(PL)

    Graph

    25 <(1+ϵ)OPT

    Graph

    Now, we can prove that the cost of PR is (1+ε)- approximation to OPT.

    According to Proposition 2, we can start with a range [cL,cR] , and narrow down this range until the path PL with the minimum latency among all paths with the at most cost cL , and the path PR with the minimum latency among all paths with the at most cost cR satisfy d(PL)>Δlatency,d(PR)Δlatency,c(PR)(1+ε)c(PL).

    To compute the upper bound and the lower bound, we require an algorithm to decide whether a cost value Cv satisfies Cv<OPT or OPTCv(1+ε) .

    As we known, if we replace the cost of each edge by:

    26 c(ν~γn,ν~γ+1u)=floorcν~γn,ν~γ+1uϵCv/(K+1)ϵCvK+1

    Graph

    The cost of each edge decreases at most ϵCv/(K+1) , and the cost of each feasible path decreases at most ϵCv .

    Based on the discussion, we now scale the cost of each edge by the following:

    27 c(ν~γn,ν~γ+1u)=floorcν~γn,ν~γ+1uϵCv/(K+1)

    Graph

    Now, we can employ Algorithm 1 to calculate the optimal feasible path after the scaled cost is used. If the scaled cost of the optimal feasible path is smaller than (K+1)/ε , we have that the cost of the path is at most:

    28 ϵCvK+1c+ϵCv<ϵCvK+1K+1ϵ+ϵCv=Cv(1+ϵ)

    Graph

    We have that OPT<Cv(1+ϵ) .

    If the scaled cost of the optimal feasible path is larger than or equal to, we have that the cost of the path is at most:

    29 ϵCvK+1c+ϵCv>ϵCvK+1K+1ϵ+ϵCv=Cv(1+ϵ)>Cv

    Graph

    We have that OPT>Cv . This process is illustrated in Algorithm 2.

    Based on Algorithm 1 and Algorithm 2, we propose Algorithm 3 to calculate the optimal mashup strategy. In Algorithm 3, the ceil function returns the smallest integer that is larger than a particular number. The floor function returns the largest integer that is smaller than a particular number. Firstly, Algorithm 3 starts with a range [cL,cR] . Then, by using Algorithm 2, Algorithm 3 narrows down this range until the path PL with the minimum latency among all paths with the at most cost cL , and the path PR with the minimum latency among all paths with the at most cost cR satisfy d(PL)>Δlatency,d(PR)Δlatency,c(PR)(1+ε)c(PL). Finally, Algorithm 1 is used by Algorithm 3 to find the optimal micro-services instances.

    Graph

    Graph

    Graph

    Analysis

    Proposition 3

    The worst-case time complexity of our proposed mashup approach is O((log2log2(cR/cL)γ|msγ||msγ+1|)(K+1)/ϵ) , where cL=γ=1|K|-1min{cv~γn,v~γ+1u,nu}+min{cv~01,v~1n,n}+min{cv~Kn,v~K+11,n} , and cR is equal to γ=1|K|-1max{cv~γn,v~γ+1u,nu}+max{cv~01,v~1n,n}+max{cv~Kn,v~K+11,n} .

    Proof

    The time complexity of Algorithm 1: Lines 3–16 uses O(OPT) iterations to search for the path. It requires γ|msγ||msγ+1| comparisons for calculate fγ . Therefore, the total complexity is O(OPTγ|msγ||msγ+1|) .

    The time complexity of Algorithm 2: The time complexity of lines 7–10 requires O(γ|msγ||msγ+1|) operations at each iteration. Lines 6–12 uses O((K+1)/ϵ) iterations of Algorithm B. Therefore, the total complexity is O((γ|msγ||msγ+1|)(K+1)/ϵ) .

    The time complexity of Algorithm 3:

    The min value of cL is γ=1|K|-1min{cv~γn,v~γ+1u,nu}+min{cv~01,v~1n,n}+min{cv~Kn,v~K+11,n} , and the max value of cR is γ=1|K|-1max{cv~γn,v~γ+1u,nu}+max{cv~01,v~1n,n}+max{cv~Kn,v~K+11,n} .

    Suppose the values of cL and cR become cLx and cRx after x iterations. If OPT>cLxcRx , we obtain that:

    30 cRx+1cLx+1=cRxcLx1/2.

    Graph

    Else, we obtain that:

    31 cRx+1cLx+1=cRxcLx1/2(1+ϵ).

    Graph

    We can see that:

    32 cRxcLx1/2cRxcLx1/2(1+ϵ).

    Graph

    Therefore, in the worst condition, CHECK( Cv ) is always false. The value of ratio after x iterations becomes:

    33 cRxcLx=cRcL)1/2x(1+ϵ)(2x-1)/2x-1.

    Graph

    We can break the iteration until:

    34 cRcL1/2x(1+ϵ)(2x-1)/2x-1(1+ϵ).

    Graph

    35 cRcL1/2x(1+ϵ)(2x-1-1)/2x-1<2.

    Graph

    36 log2cRcL1/2x<log22.

    Graph

    37 12xlog2cRcL<1.

    Graph

    38 log2cRcL<2x.

    Graph

    39 x>log2log2cRcL.

    Graph

    Inequality (39) implies that the complexity of lines 1–10 is log2log2((cR)/(cL)) . Each CHECK requires O((γ|msγ||msγ+1|)(K+1)/ϵ) . Therefore, the total complexity is O(log2log2((cR)/(cL))(γ|msγ||msγ+1|)(K+1)/ϵ), where cL=γ=1|K|-1min{cv~γn,v~γ+1u,nu}+min{cv~01,v~1n,n}+min{cv~Kn,v~K+11,n} , and cR is equal to γ=1|K|-1max{cv~γn,v~γ+1u,nu}+max{cv~01,v~1n,n}+max{cv~Kn,v~K+11,n} .

    Performance evaluation

    In order to evaluate the effectiveness of the micro-service mashup approach proposed in this paper, we carry out two sets of experiments. The first set of experiments evaluates the performance improvement by comparing our approach with the approaches that do not account for network topology and inter-service latency. The second set of experiments evaluates the efficiency of our micro-service mashup algorithm in different scale scenarios.

    Experiment setup

    We have realized the approaches using Java language. Experiments are implemented on a computer with Intel (R) i7-5500U CPU 2.40 GHz, 8 GB of RAM and Windows 8.1 operating system professional version. Our experiments are designed based on the Shanghai Telecoms base station dataset. Figure 4 illustrates the BS locations of Shanghai Telecom. There are totally 3233 BSs, and we randomly select 10% among them as the locations of cloudlets. We deploy 40 micro-services on the cloudlets. The number of instance for each micro-service follows uniform distribution with the range [2, 10]. Those instances are uniformly distributed over the cloudlets. Each application requires 5 micro-services. There are 100 mashup requests. ϵ is set to 0.1. The request process rate of each instance follows uniform distribution with the range [10/s, 20/s]. The current request arrival rate of each instance and the request rate of each user follow uniform distribution with the range [2/s, 5/s]. The average data size per request and the data size after processed are 1MB. The average latency of each link follows uniform distribution with the range [2 ms, 5 ms]. We propose the current minimal latency with an additional latency 10 ms as the latency constraint of each micro-service. The wireless channel gain is H=127+30logd and d is 128 m. The channel bandwidth W is 20 MHz, the noise power is 210-13 W, and the transmit power TP is 0.5 W. The inter-cell interference power I is 0 [[45]].

    Graph: Fig. 4 BS locations of Shanghai Telecom

    We use latency and network resource consumption as the metrics to measure the performance of our method in comparison with other mash up methods.

    To illustrate the effectiveness of our latency-aware micro-service mashup approach (LMM), we compare our approach with the other three common approaches:

    • DelayFirst: in this approach, only the service access latency delay is considered, and the algorithm always selects the service with minimum delay and disregards the network resource consumption.
    • CostFirst: in this approach, only the network resource consumption is considered and disregards the latency.
    • DACS: traditional service mashup approach; both the network resource consumption and latency are considered. However, the approach does not consider the inter-service latency.

    We focus on the following three parameters in the experiments:

    • Micro-service instance number. The number of instance of a micro-service.
    • Latency constraint. The latency constraint of each application.
    • Mashup request number. The number of mashup request that has been submitted.
    Impact of the mashup request number

    In this section, we study the impact of mashup request number to the performance of our approach. We vary the value of mashup request number from 50 to 300 with a step value of 50. Figures 5 and 6 show the experiment results. Figure 5 illustrates the total cost under different values of mash request number. Figure 6 illustrates the total latency under different values of user number. Observing from Figs. 5 and 6, we draw the conclusion that: (1) The cost of DelayFirst is higher than other approaches. The costs of CostFirst and DACS are lower than LMM; (2) A smaller value of cost does not indicate a better performance. As shown in Fig. 6, CostFirst and DACS cannot ensure that the latency is within the service latency constraint; (3) Our approach has the smallest cost for all approaches that can satisfy the latency constraint. Because the process capability of a single micro-service is limited, a group of micro-service instances that deliver the same functionality are usually deployed. Because edge computing is a distributed computing platform, those micro-service instances are deployed over containers on different cloudlets, and there is a tremendous difference in latency and network resource utilization when the micro-services from different containers are selected in the service mashup process. In contrast to other existing solutions, we focus not only on efficient service mashup but also on the edge network topology in the micro-services instance selection. Therefore, our approach outperforms other approaches under all experimental settings.

    Graph: Fig. 5 Total cost under different values of mashup request number

    Graph: Fig. 6 Total latency under different values of mashup request number

    Impact of the latency constraint

    In the experiments, we vary the additional latency from 5 to 30 with a step value of 5. Results are shown in Figs. 7 and 8. Figure 7 illustrates the cost under different values of latency constraint. Figure 8 illustrates the total latency under different values of latency constraint. Under all experimental settings, CostFirst and DACS obtain smaller cost values consistently. However, the values of total latency of those two approaches are larger than the latency constraint. That is because CostFirst only considers the cost, and DACS ignores the inter-micro-service latency. DelayFirst and LMM can ensure that the latency is always smaller than the latency constraint. LMM obtains smaller cost than DelayFirst. This observation indicates that our approach outperforms other approaches.

    Graph: Fig. 7 Total cost under different values of additional latency

    Graph: Fig. 8 Total latency under different values of additional latency

    Impact of the micro-service instance number

    To study the impact of the number of micro-service instance to the performance of all approaches, we vary the value of the number of micro-service instance from 4 to 20 with a step value of 4. Figures 9 and 10 show the results. Figure 9 illustrates the cost of all approaches under different values of micro-service instance number. Figure 10 illustrates the total latency of all approaches under different values of micro-service instance number. Observing from Figs. 9 and 10, we draw the conclusion that: (1) the value of micro-service instance number impacts the cost and the total latency significantly. With the given number of micro-service instance increasing from 4 to 20, the cost and the total latency decrease quickly; (2) although the costs of CostFirst and DACS are higher than LMM, CostFirst and DACS cannot ensure that the latency is smaller than the service access latency constraint.

    Graph: Fig. 9 Total cost under different values of instance number

    Graph: Fig. 10 Total latency under different values of instance number

    Impact of the parameter ϵ

    In this section, we study the impact of parameter ϵ to the performance of our approach. We vary the value of ϵ from 0.1 to 1 with a step value of 0.1. Figures 11, 12, and 13 show the experiment results. Figure 11 illustrates the total cost under different values of ϵ . Figure 12 illustrates the total latency under different values of ϵ . Optimal denotes the cost of the optimal solution. Figure 13 illustrates the total processing time of our approach under different values of ϵ . Observing from Figs. 11, 12, and 13, we draw the conclusion that: (1) the value of ϵ impacts the cost and the total latency significantly. The cost ascends quickly with the increasing of ϵ . The total latency also ascends with the increase in the value of ϵ , indicating that the performance can be improved by given a smaller value of ϵ ; (2) the processing time of our approach decreases with the increasing of the value of ϵ . A smaller value of ϵ will provide better performance. There is negative correlation between the performance and the value of ϵ . Those results indicate that we need to make a trade-off between the performance and the processing time.

    Graph: Fig. 11 Total cost under different values of ϵ

    Graph: Fig. 12 Total latency under different values of ϵ

    Graph: Fig. 13 Total process time under different values of ϵ

    Conclusion

    With the advancement of software technique, complex IoT applications have been implemented as a set of lightweight and independent micro-services. Mobile edge computing has been introduced to those micro-services provision for shorter response time and smaller network pressure. One significant issue is how to produce the optimal collocation of suitable micro-service with the consideration of the network traffic.

    In this paper, we focus on latency-aware micro-service mashup in mobile edge computing environment. To improve the performance of micro-service mashups, we take the inter-service latency and mobile edge network topology into consideration. This problem is formulated as integer nonlinear programming problem. We prove the NP-hardness of the problem by reducing it into a delay constrained least cost problem. An approximation approach is proposed to achieve the objective. The experimental results show that our latency-aware micro-service mashup approach can reduce the network resource consumption without violating the latency constraint. Our future research directions include considering the reliability problem and the user distribution-aware cloudlet placement in mobile edge computing environment.

    Acknowledgements

    I would like to express my gratitude to all those who helped me during the writing of this paper. The work presented in this study is supported by NSFC (61602054), NSFC (61571066).

    Compliance with ethical standards

    Conflict of Interest

    The authors declare that they have no conflict of interest.

    Publisher's Note

    Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

    References 1 Kitchin R. The real-time city? Big data and smart urbanism. GeoJournal. 2014; 79: 1-14. 10.1007/s10708-013-9516-8 2 Clement SJ, McKee DW, Xu J (April 2017) Service-oriented reference architecture for smart cities. In: 2017 IEEE symposium on service-oriented system engineering (SOSE), pp 81–85 3 Jin J, Gubbi J, Marusic S, Palaniswami M. An information framework for creating a smart city through internet of things. IEEE Internet Things J. 2014; 1: 112-121. 10.1109/JIOT.2013.2296516 4 Sanchez L, Muoz L, Galache JA, Sotres P, Santana JR, Gutierrez V, Ramdhany R, Gluhak A, Krco S, Theodoridis E, Pfisterer D. Smartsantander: Iot experimentation over a smart city testbed. Comput Netw. 2014; 61: 217-238. 10.1016/j.bjp.2013.12.020 5 Wang Y, Zheng Y, Xue Y (2014) Travel time estimation of a path using sparse trajectories. In: Proceedings of the 20th ACM SIGKDD international conference on knowledge discovery and data mining, KDD '14, New York, NY, USA. ACM, New York, pp 25–34 6 Li Y, Zheng Y, Zhang H, Chen L (2015) Traffic prediction in a bike-sharing system. In: Proceedings of the 23rd SIGSPATIAL international conference on advances in geographic information systems, SIGSPATIAL '15, New York, NY, USA. ACM, New York, pp 33:1–33:10 7 Wang H, Ma S, Dai H. A rhombic dodecahedron topology for human-centric banking big data. IEEE Trans Comput Soc Syst. 2019; 6: 1095-1105. 10.1109/TCSS.2019.2918193 8 Wang H, Ma S, Dai H-N, Imran M, Wang T. Blockchain-based data privacy management with nudge theory in open banking. Future Gener Comput Syst. 2019. 10.1016/j.future.2019.09.010 9 Drolia U, Guo K, Tan J, Gandhi R, Narasimhan P (2017) Cachier: edge-caching for recognition applications. In: 2017 IEEE 37th international conference on distributed computing systems (ICDCS), pp 276–286 Benchara FZ, Youssfi M, Bouattane O, Ouajji H (2016) A new efficient distributed computing middleware based on cloud micro-services for HPC. In: 2016 5th international conference on multimedia computing and systems (ICMCS), pp 354–359 Bhamare D, Samaka M, Erbad A, Jain R, Gupta L, Chan HA (2017) Multi-objective scheduling of micro-services for optimal service function chains. In: 2017 IEEE international conference on communications (ICC), pp 1–6 Cherradi G, Bouziri AE, Boulmakoul A, Zeitouni K (2017) Real-time hazmat environmental information system: a micro-service based architecture. Procedia Comput Sci 109:982–987. In: 8th international conference on ambient systems, networks and technologies, ANT-2017 and the 7th international conference on sustainable energy information technology, SEIT 2017, 16–19 May 2017, Madeira, Portugal Zhou A, Wang S, Cheng B, Zheng Z, Yang F, Chang RN, Lyu MR, Buyya R. Cloud service reliability enhancement via virtual machine placement optimization. IEEE Trans Serv Comput. 2017; 10: 902-913. 10.1109/TSC.2016.2519898 Beloglazov A, Abawajy J, Buyya R. Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing. Future Gener Comput Syst. 2012; 28; 5: 755-768. 10.1016/j.future.2011.04.017 Zhang K, Mao Y, Leng S, Zhao Q, Li L, Peng X, Pan L, Maharjan S, Zhang Y. Energy-efficient offloading for mobile edge computing in 5G heterogeneous networks. IEEE Access. 2016; 4: 5896-5907. 10.1109/ACCESS.2016.2597169 You C, Huang K, Chae H, Kim B. Energy-efficient resource allocation for mobile-edge computation offloading. IEEE Trans Wirel Commun. 2017; 16: 1397-1411. 10.1109/TWC.2016.2633522 Liu C, Cao Y, Luo Y, Chen G, Vokkarane V, Yunsheng M, Chen S, Hou P. A new deep learning-based food recognition system for dietary assessment on an edge computing service infrastructure. IEEE Trans Serv Comput. 2018; 11: 249-261. 10.1109/TSC.2017.2662008 Higashino T, Yamaguchi H, Hiromori A, Uchiyama A, Yasumoto K (2017) Edge computing and iot based research for building safe smart cities resistant to disasters. In: 2017 IEEE 37th international conference on distributed computing systems (ICDCS), pp 1729–1737 Cao B, Liu J, Tang M, Zheng Z, Wang G (2013) Mashup service recommendation based on user interest and social network. In: 2013 IEEE 20th international conference on web services, pp 99–106 Im J, Kim S, Kim D (2013) Iot mashup as a service: cloud-based mashup service for the internet of things. In: 2013 IEEE international conference on services computing, pp 462–469 Wang P, Ding Z, Jiang C, Zhou M, Zheng Y. Automatic web service composition based on uncertainty execution effects. IEEE Trans Serv Comput. 2016; 9: 551-565. 10.1109/TSC.2015.2412943 Jin H, Yao X, Chen Y. Correlation-aware QoS modeling and manufacturing cloud service composition. J Intell Manuf. 2017; 28: 1947-1960. 10.1007/s10845-015-1080-2 Rimal BP, Maier M. Workflow scheduling in multi-tenant cloud computing environments. IEEE Trans Parallel Distrib Syst. 2017; 28: 290-304. 10.1109/TPDS.2016.2556668 Zhang F, Cao J, Hwang K, Li K, Khan SU. Adaptive workflow scheduling on cloud computing platforms with iterativeordinal optimization. IEEE Trans Cloud Comput. 2015; 3: 156-168. 10.1109/TCC.2014.2350490 Deldari A, Naghibzadeh M, Abrishami S. CCA: a deadline-constrained workflow scheduling algorithm for multicore resources on the cloud. J Supercomput. 2017; 73: 756-781. 10.1007/s11227-016-1789-5 Verma A, Kaushal S. A hybrid multi-objective particle swarm optimization for scientific workflow scheduling. Parallel Comput. 2017; 62: 1-193612600. 10.1016/j.parco.2017.01.002 Verbelen T, Simoens P, De Turck F, Dhoedt B (2012) Cloudlets: bringing the cloud to the mobile user. In: Proceedings of the third ACM workshop on mobile cloud computing and services, MCS '12, New York, NY, USA. ACM, New York, pp 29–36 Xu Z, Liang W, Xu W, Jia M, Guo S. Efficient algorithms for capacitated cloudlet placements. IEEE Trans Parallel Distrib Syst. 2016; 27: 2866-2880. 10.1109/TPDS.2015.2510638 Chen X, Jiao L, Li W, Fu X. Efficient multi-user computation offloading for mobile-edge cloud computing. IEEE/ACM Trans Netw. 2016; 24: 2795-2808. 10.1109/TNET.2015.2487344 Hoang DT, Niyato D, Wang P (2012) Optimal admission control policy for mobile cloud computing hotspot with cloudlet. In: 2012 IEEE wireless communications and networking conference (WCNC), pp 3145–3149 Cardellini V, De Nitto Personé V, Di Valerio V, Facchinei F, Grassi V, Lo Presti F, Piccialli V. A game-theoretic approach to computation offloading in mobile cloud computing. Math Program. 2016; 157: 421-4493505343. 10.1007/s10107-015-0881-6 Gelenbe E, Lent R, Douratsos M (2012) Choosing a local or remote cloud. In: 2012 second symposium on network cloud computing and applications, pp 25–30 Jia M, Cao J, Liang W. Optimal cloudlet placement and user to cloudlet allocation in wireless metropolitan area networks. IEEE Trans Cloud Comput. 2017; 5: 725-737. 10.1109/TCC.2015.2449834 Malawski M, Juve G, Deelman E, Nabrzyski J. Algorithms for cost- and deadline-constrained provisioning for scientific workflow ensembles in IaaS clouds. Future Gener Comput Syst. 2015; 48: 1-18. 10.1016/j.future.2015.01.004 Zhu Z, Zhang G, Li M, Liu X. Evolutionary multi-objective workflow scheduling in cloud. IEEE Trans Parallel Distrib Syst. 2016; 27: 1344-1357. 10.1109/TPDS.2015.2446459 Arabnejad H, Barbosa JG, Prodan R. Low-time complexity budget-deadline constrained workflow scheduling on heterogeneous resources. Future Gener Comput Syst. 2016; 55: 29-40. 10.1016/j.future.2015.07.021 Lee YC, Han H, Zomaya AY, Yousif M. Resource-efficient workflow scheduling in clouds. Knowl-Based Syst. 2015; 80: 153-162. 10.1016/j.knosys.2015.02.012 Wang H, Chen X, Wu Q, Yu Q, Hu X, Zheng Z, Bouguettaya A. Integrating reinforcement learning with multi-agent techniques for adaptive service composition. ACM Trans Auton Adapt Syst. 2017; 12: 8:1-8:42 Deng S, Wu H, Hu D, Zhao JL. Service selection for composition with QoS correlations. IEEE Trans Serv Comput. 2016; 9: 291-303. 10.1109/TSC.2014.2361138 Chen F, Dou R, Li M, Wu H. A flexible QoS-aware web service composition method by multi-objective optimization in cloud manufacturing. Comput Ind Eng. 2016; 99: 423-431. 10.1016/j.cie.2015.12.018 Deng S, Wu H, Taheri J, Zomaya AY, Wu Z. Cost performance driven service mashup: a developer perspective. IEEE Trans Parallel Distrib Syst. 2016; 27: 2234-2247. 10.1109/TPDS.2015.2482980 Sun Y, Zhou S, Xu J. EMM: energy-aware mobility management for mobile edge computing in ultra dense networks. IEEE J Sel Areas Commun. 2017; 35: 2637-2646. 10.1109/JSAC.2017.2760160 Hassin R. Approximation schemes for the restricted shortest path problem. Math Oper Res. 1992; 17; 1: 36-421148776. 10.1287/moor.17.1.36 Duran MA, Grossmann IE. An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Math Program. 1986; 36: 307-339866413. 10.1007/BF02592064 Niu C, Li Y, Hu RQ, Ye F. Fast and efficient radio resource allocation in dynamic ultra-dense heterogeneous networks. IEEE Access. 2017; 5: 1911-1924

    By Ao Zhou; Shangguang Wang; Shaohua Wan and Lianyong Qi

    Reported by Author; Author; Author; Author

    Titel:
    LMM: latency-aware micro-service mashup in mobile edge computing environment
    Autor/in / Beteiligte Person: Zhou, Ao ; Qi, Lianyong ; Wang, Shangguang ; Wan, Shaohua
    Link:
    Zeitschrift: Neural Computing and Applications, Jg. 32 (2020-01-02), S. 15411-15425
    Veröffentlichung: Springer Science and Business Media LLC, 2020
    Medientyp: unknown
    ISSN: 1433-3058 (print) ; 0941-0643 (print)
    DOI: 10.1007/s00521-019-04693-w
    Schlagwort:
    • 0209 industrial biotechnology
    • Radio access network
    • Mobile edge computing
    • business.industry
    • Computer science
    • Distributed computing
    • Cloud computing
    • 02 engineering and technology
    • computer.software_genre
    • 020901 industrial engineering & automation
    • User experience design
    • Artificial Intelligence
    • 0202 electrical engineering, electronic engineering, information engineering
    • 020201 artificial intelligence & image processing
    • Mashup
    • Enhanced Data Rates for GSM Evolution
    • Latency (engineering)
    • business
    • computer
    • Software
    • 5G
    Sonstiges:
    • Nachgewiesen in: OpenAIRE
    • Rights: CLOSED

    Klicken Sie ein Format an und speichern Sie dann die Daten oder geben Sie eine Empfänger-Adresse ein und lassen Sie sich per Email zusenden.

    oder
    oder

    Wählen Sie das für Sie passende Zitationsformat und kopieren Sie es dann in die Zwischenablage, lassen es sich per Mail zusenden oder speichern es als PDF-Datei.

    oder
    oder

    Bitte prüfen Sie, ob die Zitation formal korrekt ist, bevor Sie sie in einer Arbeit verwenden. Benutzen Sie gegebenenfalls den "Exportieren"-Dialog, wenn Sie ein Literaturverwaltungsprogramm verwenden und die Zitat-Angaben selbst formatieren wollen.

    xs 0 - 576
    sm 576 - 768
    md 768 - 992
    lg 992 - 1200
    xl 1200 - 1366
    xxl 1366 -