converged network–cloud service composition with end-to...

15
2168-7161 (c) 2015 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/TCC.2015.2491939, IEEE Transactions on Cloud Computing 1 Converged Network–Cloud Service Composition with End-to-End Performance Guarantee Jun Huang, Member, IEEE, Qiang Duan, Member, IEEE, Song Guo, Senior Member, IEEE, Yuhong Yan, Member, IEEE, and Shui Yu, Senior Member, IEEE Abstract—The crucial role of networking in Cloud computing calls for federated management of both computing and networking resources for end-to-end service provisioning. Application of the Service-Oriented Architecture (SOA) in both Cloud computing and networking enables a convergence of network and Cloud service provisioning. One of the key challenges to high performance converged network–Cloud service provisioning lies in composition of network and Cloud services with end-to-end performance guarantee. In this paper, we propose a QoS-aware service composition approach to tackling this challenging issue. We first present a system model for network–Cloud service composition and formulate the service composition problem as a variant of Multi-Constrained Optimal Path (MCOP) problem. We then propose an approximation algorithm to solve the problem and give theoretical analysis on properties of the algorithm to show its effectiveness and efficiency for QoS-aware network-Cloud service composition. Performance of the proposed algorithm is evaluated through extensive experiments and the obtained results indicate that the proposed method achieves better performance in service composition than the best current MCOP approaches. Keywords—Cloud computing; Service-Oriented Architecture (SOA); Network-as-a-Service (NaaS); service composition; Quality-of- Service (QoS) 1 I NTRODUCTION Cloud computing has emerged as a novel distributed computing paradigm in which a pool of abstracted, virtualized, dynamically scalable computing functions and services are delivered on demand to external cus- tomers over the Internet [1]. In the Cloud environment, Cloud services normally represent remote delivery of computing resources and users obtain services from a This work is supported by NSFC under grant 61309031, Postdoctoral Science Foundation of China under grant 2014M551740, NSF of Chongqing under grant cstc2013jcyjA40026, S&T Research Program of Chongqing Municipal Education Commission under grant KJ130523, and CQUPT Research Fund for Young Scholars under grant A2012-79. This work is also partially supported by Strategic International Collaborative Research Program (SICORP) Japanese (JST) - US (NSF) Joint Research ”Big Data and Disaster Research (BDD). J. Huang is with Institute of Electronic Information and Networking, Chongqing University of Posts and Telecommunications, Chongqing, Chi- na, 400065. E-mail: [email protected] Q. Duan is with the Information Science and Technology Department, The Pennsylvania State University, Abington, Pennsylvania 19001. E-mail: [email protected] S. Guo is with the School of Computer Science and Engineering, The U- niversity of Aizu, Tsuruga, Ikki-machi Aizu-Wakamatsu City, Fukushima 965-8580, Japan. E-mail: [email protected] Y. Yan is with the Department of Computer Science and Software Engi- neering, Concordia University, Montreal, Quebec H3G 1M8 Canada. E-mail: [email protected] S. Yu is with the School of Information Technology, Deakin University, 221 Burwood HWY, Burwood, VIC, Australia 3125. E-mail: [email protected] Cloud provider via networks (most often the Internet). Services received by end users consist of not only com- puting functions provided by Cloud infrastructure but also communication functions offered by networks [2]. Recent research results have indicated that networking performance has a significant impact on Cloud service quality [3], [4], [5]. The end-to-end performance evalua- tion between network and Cloud systems conducted in [6] showed that networks may form a bottleneck that limits Cloud service performance. In addition research reported in [7] found that networking system is an im- portant element for improving Cloud service reliability. With increased differentiation in Cloud providers’ of- ferings, allocation of application components on multiple public Clouds become an attractive option. Research reported in [8] shows that such allocation provides significant cost savings in various Cloud use scenarios and also indicates that the delay and cost introduced by inter-Cloud communications have a strong impact on application performance. Recent development in Cloud federation requires high-performance inter-Cloud com- munications [9]. Hybrid Clouds that compose resources in both private and public Cloud infrastructures are also widely adopted for Cloud service provisioning. In such a scenario, communication demands and available band- width on the network links between private and public Cloud infrastructures must be considered for scheduling components of workflows onto available resources [10]. Therefore, networking plays a crucial role in Cloud computing and becomes an indispensable ingredient for single, hybrid, and inter-Cloud service provisioning [11], [12], [13], [14]. The important role that networking plays in Cloud computing calls for federated control and man-

Upload: letuyen

Post on 04-Dec-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

1

Converged Network–Cloud Service Compositionwith End-to-End Performance Guarantee

Jun Huang, Member, IEEE, Qiang Duan, Member, IEEE, Song Guo, Senior Member, IEEE,Yuhong Yan, Member, IEEE, and Shui Yu, Senior Member, IEEE

Abstract—The crucial role of networking in Cloud computing calls for federated management of both computing and networkingresources for end-to-end service provisioning. Application of the Service-Oriented Architecture (SOA) in both Cloud computing andnetworking enables a convergence of network and Cloud service provisioning. One of the key challenges to high performanceconverged network–Cloud service provisioning lies in composition of network and Cloud services with end-to-end performanceguarantee. In this paper, we propose a QoS-aware service composition approach to tackling this challenging issue. We first present asystem model for network–Cloud service composition and formulate the service composition problem as a variant of Multi-ConstrainedOptimal Path (MCOP) problem. We then propose an approximation algorithm to solve the problem and give theoretical analysis onproperties of the algorithm to show its effectiveness and efficiency for QoS-aware network-Cloud service composition. Performanceof the proposed algorithm is evaluated through extensive experiments and the obtained results indicate that the proposed methodachieves better performance in service composition than the best current MCOP approaches.

Keywords—Cloud computing; Service-Oriented Architecture (SOA); Network-as-a-Service (NaaS); service composition; Quality-of-Service (QoS)

F

1 INTRODUCTIONCloud computing has emerged as a novel distributedcomputing paradigm in which a pool of abstracted,virtualized, dynamically scalable computing functionsand services are delivered on demand to external cus-tomers over the Internet [1]. In the Cloud environment,Cloud services normally represent remote delivery ofcomputing resources and users obtain services from a

• This work is supported by NSFC under grant 61309031, PostdoctoralScience Foundation of China under grant 2014M551740, NSF ofChongqing under grant cstc2013jcyjA40026, S&T Research Program ofChongqing Municipal Education Commission under grant KJ130523, andCQUPT Research Fund for Young Scholars under grant A2012-79. Thiswork is also partially supported by Strategic International CollaborativeResearch Program (SICORP) Japanese (JST) - US (NSF) Joint Research”Big Data and Disaster Research (BDD).

• J. Huang is with Institute of Electronic Information and Networking,Chongqing University of Posts and Telecommunications, Chongqing, Chi-na, 400065.E-mail: [email protected]

• Q. Duan is with the Information Science and Technology Department, ThePennsylvania State University, Abington, Pennsylvania 19001.E-mail: [email protected]

• S. Guo is with the School of Computer Science and Engineering, The U-niversity of Aizu, Tsuruga, Ikki-machi Aizu-Wakamatsu City, Fukushima965-8580, Japan.E-mail: [email protected]

• Y. Yan is with the Department of Computer Science and Software Engi-neering, Concordia University, Montreal, Quebec H3G 1M8 Canada.E-mail: [email protected]

• S. Yu is with the School of Information Technology, Deakin University,221 Burwood HWY, Burwood, VIC, Australia 3125.E-mail: [email protected]

Cloud provider via networks (most often the Internet).Services received by end users consist of not only com-puting functions provided by Cloud infrastructure butalso communication functions offered by networks [2].Recent research results have indicated that networkingperformance has a significant impact on Cloud servicequality [3], [4], [5]. The end-to-end performance evalua-tion between network and Cloud systems conducted in[6] showed that networks may form a bottleneck thatlimits Cloud service performance. In addition researchreported in [7] found that networking system is an im-portant element for improving Cloud service reliability.

With increased differentiation in Cloud providers’ of-ferings, allocation of application components on multiplepublic Clouds become an attractive option. Researchreported in [8] shows that such allocation providessignificant cost savings in various Cloud use scenariosand also indicates that the delay and cost introducedby inter-Cloud communications have a strong impact onapplication performance. Recent development in Cloudfederation requires high-performance inter-Cloud com-munications [9]. Hybrid Clouds that compose resourcesin both private and public Cloud infrastructures are alsowidely adopted for Cloud service provisioning. In sucha scenario, communication demands and available band-width on the network links between private and publicCloud infrastructures must be considered for schedulingcomponents of workflows onto available resources [10].

Therefore, networking plays a crucial role in Cloudcomputing and becomes an indispensable ingredient forsingle, hybrid, and inter-Cloud service provisioning [11],[12], [13], [14]. The important role that networking playsin Cloud computing calls for federated control and man-

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

2

agement of both computing and networking resourcesin order to achieve high performance end-to-end serviceprovisioning. To illustrate the impact of networking onCloud service performance, let us consider an examplescenario in which a research lab creates 100 GB of rawdata that will be processed in Amazon EC2 Cloud [15].Suppose that the lab obtains 10 EC2 virtual machineinstances and each instance can process 20 GB dataper hour. Then the total processing time of the Cloudservice is only 30 minutes. However, if the lab uses anetwork service that offers 200 Mb/s throughput fordata transmission to the EC2 server, then just the single-trip delay for data transmission from the lab to EC2servers will be more than an hour. In this case net-work delay for round-trip data transmission contributesmore than 80% of the total service delay. This exampleshows that end-to-end services provided to Cloud usersare typically combination of both network services andCloud services; therefore network QoS often contributesa significant fraction of Cloud service performance.

Until recent there exists a gap between the demandsof Cloud computing for data communications and theservices that can be offered by traditional network-ing systems. High-performance Cloud computing re-quires predictability in networking performance, coor-dination of both computing and networking resources,and application-driven network control and manage-ment [16], [17]. However, traditional networks are de-signed specifically to support a narrow range of preciselydefined communication services, which are implementedon fairly rigid infrastructure with minimal capabilitiesfor ad hoc reconfiguration. Recent advances in net-working technologies, especially network virtualization,Software Defined Network (SDN), and application of theService-Oriented Architecture (SOA) in networking, hassignificantly enhanced network control and managementfor supporting Cloud service provisioning [18].

Network virtualization, which decouples network ser-vice provisioning from data transport infrastructure, isexpected to be a key attribute of future networking [19].The emerging Network Function Virtualization (NFV)technology allows network functions to be virtualizedand implemented on general purpose data center hard-ware [20]. In the NFV architectural framework recentlypublished by ETSI ISG (Industry Specification Group)[21] infrastructure resources of computing, storage, andnetwork are all abstracted through a uniform virtualiza-tion layer. The virtual computing, storage, and networkresources then are managed by a common orchestra-tor for end-to-end service provisioning. As a potentialenabler of profound changes in both computing andnetworking, virtualization may bridge the gap betweenthese two fields; thus supporting federated managementof computing and networking resources for compositeservice provisioning.

The SOA, which provides an effective architecturalprinciple for heterogeneous system integration, hasbeen widely adopted in Cloud service provisioning

Fig. 1. An example of composite network–Cloud serviceprovisioning.

via the paradigms of Infrastructure-as-a-Service (IaaS),Platform-as-a-Service (PaaS), and Software-as-a-Service(SaaS). Applying the SOA principle in network virtual-ization enables a Network-as-a-Service (NaaS) paradigmin which network resources are exposed and utilizedas SOA-compliant services. The NaaS paradigm enablesnetworking functionalities to be utilized on-demand byend users through standard service interfaces; muchlike computing capacities in Clouds being accessed asservices by users. Therefore, virtualization combinedwith service-orientation, is making transforming tradi-tion network service provisioning toward a Cloud IaaSservice model. Such transform enables network servicesto be composed with computing services in a Cloudenvironment; thus allowing a convergence of network–Cloud service provisioning [22].

A key challenge to realizing notion of convergednetwork–Cloud service provisioning lies in QoS-awareservice composition across the networking and comput-ing domains. The objective of network–Cloud servicecomposition is to select an appropriate sequence ofnetwork and Cloud services to meet end-to-end serviceperformance requirements while optimizing networkingand computing resource utilization. For example in theabove lab data processing case, if the user requiresa maximum service delay (waiting time from sendingdata out to receiving results back), then the servicesfor storage, computing, and networking must be select-ed with a holistic vision to guarantee the end-to-endservice delay. A composite service for this example isillustrated in Fig. 1. In this figure Cloud services 1 and2 are respectively Amazon S3 for storage and EC2 forcomputing. Network services 1, 2, and 3 respectivelyprovide data communications from the user to Cloudservice 1, between Cloud services 1 and 2, and fromCloud service 2 back to the user. Selection of theseCloud and network services must consider their delayperformance in order to guarantee that the end-to-enddata transmission, storage, and processing delay meetsuser’s requirement.

In a general sense, service composition can be formu-lated as the Multi-Constrained Optimal Path (MCOP)problem, which is known to be NP-hard. Although ser-

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

3

vice composition has been extensively studied, most ofcurrent approaches were mainly focused on Web servicesor Cloud services instead of composite network–Cloudservices; therefore may not achieve end-to-end QoS guar-antee across networking and computing domains. Due tothe real-time requirements of various network protocols,network–Cloud services typically need much faster com-position algorithms to achieve shorter response time. Incontrast, Web/Cloud service composition, though mighthave QoS requirements on composite services, typicallyallows best-effort response time of composition algo-rithms. Therefore, service composition across networkand Cloud domains particularly requires more efficientand effective MCOP algorithms that can not only meetdiverse QoS constraints but also achieve much shorterresponse time.

Toward addressing this challenging issue, we inves-tigate QoS-aware service composition in the convergednetwork–Cloud context from a general service provision-ing perspective. The main contributions made in thispaper are summarized as follows.

• We present a model for QoS-aware service compo-sition for converged network–Cloud service provi-sioning. This model allows multiple QoS metricsto be considered in network–Cloud services com-position with guaranteed end-to-end service perfor-mance.

• We formulate the problem of QoS-aware network–Cloud service composition as a variant of MCOPproblem and develop an approximation algorithmto solve the problem.

• We analyze the theoretical properties of the pro-posed algorithm. Analytical results show that ouralgorithm is effective and resilient in selecting ser-vices for network–Cloud service composition andguarantees end-to-end performance for compositeservice provisioning.

• We conduct thorough experiments to evaluate per-formance of the proposed algorithm and comparethe algorithm against variations of current best-known MCOP algorithms. Obtained numerical re-sults indicate that the proposed algorithm is efficientand accurate for service composition.

The rest of this paper is organized as follows. InSection 2 we first introduce a service-oriented frame-work for network–Cloud service convergence, and thenpresent a model for network–Cloud service composition.We also formulate the QoS-aware service compositionproblem in this section. Section 3 presents an approxima-tion algorithm to solve the service composition problemand gives theoretical analysis on the proposed algorithm.In Section 4 we evaluate performance of the proposedalgorithm and compare it with currently available algo-rithms through numerical experiments. Section 5 brieflyreviews the related research progress on service com-position and compares our research with related work.Section 6 draws conclusions.

networkingresource

networkingresource

computingresource

computingresource

Infrastructure Layer

networkservice

networkservice

Cloudservice

Cloudservice

Virtualization Layer

compositenetwork-Cloud

service

compositenetwork-Cloud

service

Service Provisioning Layer

end user end user

service-orientednetwork

virtualization

Network-as-a-Service

Fig. 2. The layered structure of a service-oriented frame-work for network–Cloud service convergence.

2 MODELING QOS-AWARE NETWORK-CLOUD SERVICE COMPOSITION

2.1 A Framework for Network–Cloud Service Con-vergence

Network Function virtualization leverages some keytechnologies developed for Cloud computing to deliv-er network services upon data transportation infras-tructure. Such key technologies include virtualization,which abstracts and partitions computing as well asnetworking infrastructure by means of hypervisors, andorchestration mechanism that coordinates virtualizedresources for service provisioning to meet applicationrequirements. SOA has been widely adopted as themain model for Cloud service provisioning, in whichvarious virtualized computing resources and softwareapplications can be delivered as services to users. Ap-plying the SOA principle in networking allows virtual-ization of network resources and functionalities in theform of SOA-compliant services that can be composedwith computing services in a Cloud environment.

A service-oriented framework for network–Cloud ser-vice convergence is illustrated in Fig. 2. At the bottomof this framework is a resource layer consisting of physi-cal infrastructure for both networking and computing.Above the resource layer is the virtualization layer inwhich both networking and computing resources arevirtualized and abstracted as SOA-complaint services.The virtualization layer offers an abstraction of the un-derlying networking and computing resources througha standard service interface, which allows Cloud ser-vice provisioning to be realized across heterogeneousinfrastructure domains including both networking andcomputing systems. Such an abstraction also decouplesunderlying infrastructure from upper layer service pro-visioning functions; thus enabling more flexible servicedevelopment and provisioning. The service provisioninglayer above the virtualization layer discovers and selectsboth network and Cloud services and orchestrates theminto composite network–Cloud services that meet the

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

4

requirements of end users. In this framework the SOA-based NaaS paradigm enables networking resourcesto be virtualized and exposed as services and com-posed with Cloud computing resources into compositenetwork–Cloud services. This framework offers a unifor-m mechanism to access both networking and computingresources; thus significantly facilitating federated man-agement across network and Cloud domains for end-to-end service provisioning.

Again take the lab data processing scenario as an ex-ample, this convergence framework enables networkingsystems of various providers, such as Verizon, AT&T,and Comcast, to be virtualized and offered as SOA-compliant network services through the NaaS paradigm,just like computing and storage resources in Cloud tobe offered through the IaaS paradigm (e.g. AmazonEC2 and S3 services). Then appropriate network servicesas well as Cloud services are selected and composedfor meeting the performance requirement for lab dataprocessing.

The above SOA-based framework of network–Cloudservice composition enables a much wider range ofcommunication services with more attributes than whatcan be offered by traditional networking technologies.Networking resources, virtualized and encapsulated inSOA-compliant services, may be combined in almostlimitless ways with other service components that ab-stract both computational and networking resources;thus greatly expanding the services that can be offeredby composite network–Cloud systems. NaaS also offersthe ability to match Cloud requirements to communi-cation functions through discovering and selecting theappropriate network services and composing them withCloud services.

2.2 System Model

A typical end-to-end provisioning system for compos-ite network–Cloud services consists of both computinginfrastructure that offers Cloud services and network in-frastructure that provides services for Cloud access andinter-Cloud communications. In order to achieve serviceperformance guarantee to an end user, the end-to-endservice system must expect a certain level QoS from eachCloud service and network service involved in serviceprovisioning. In general, such QoS expectation can bespecified in form of Service Level Agreements (SLAs)between the end-to-end service provisioning system andthe providers of Cloud and network services.

When a user submits a service request to the serviceprovisioning system, it will specify information of thefollowing two aspects: a) functional requirements includ-ing required functionalities and the inter-relationship be-tween the functionalities; b) performance requirementsfor example the minimum service capacity and themaximum service delay. Functional requirement can bespecified in form of a workflow that gives a set of ser-vice component (each has certain functionality) and the

11S

12S

.

.

.

11lS

21S

22S

.

.

.

22lS

.

.

.

1HS

2HS

HHlS

0S ...lS

1S 2S HS

end user

serviceprovisioning

userrequest

serviceentranceportal

serviceexitportal

composite network-Cloud service

Fig. 3. Modeling for network–Cloud service composition.

interconnections between the service components. In aconverged networking and Cloud computing environ-ment, the functionality of each service component maybe realized by multiple available services, referred toas candidate services for the service component in thispaper, which may offer different level of performance(e.g. latency and capacity). Therefore, for each servicerequest, a service broker will invoke a composition pro-cess to select a series of available service candidates toform an end-to-end composite service that can meet theperformance requirements specified by the user.

Fig. 3 shows a model for network–Cloud service com-position. The end-to-end service has H service compo-nents, Si, i = 1, 2, · · · , H , where the number and se-quence of service components are decided by the user’srequest. Each service component Si has li candidateservices Sij , j = 1, 2, · · · , li; that is, the functions ofcomponent Si may be realized by any candidate serviceSij . Available candidate services for a service componentare pre-selected based on the functional requirements forthe component specified in the user request and servicedescriptions published by available network and Cloudservices. A service component in the model could eitherperform computing functions for data process and/orstorage or networking functions for data communica-tions. As illustrated in Fig. 3, the candidate servicesof a service component are connected to the candidateservices for the next-stage service component throughlinks, which represent data transmissions provided bynetwork services. Then all the candidate services togeth-er with the data transmissions between them form agraph. Each path traversing through this graph from S0

to Sl represents one possible composition of candidateservices. In this paper, we refer such a path a servicepath, which represents a particular way for realizing theworkflow specified by the end user.

This model allows network–Cloud service composi-tion to take QoS requirements into account naturally.Performance metrics can be assigned to each servicecandidate and to the links connecting service candidatesas well. Then the metric of a path traversing a setof candidate services represents the QoS attributes of

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

5

a composite service comprising the set of candidateservices. For example in the model shown in Fig. 3multiple paths exist from S0 to Sl, which representsdifferent realization of the composite end-to-end serviceconsisting components S1, S2, · · · , SH . If we assign delayas the metric to each candidate service, then the pathwith the minimum total metric value, say the pathS0 → S11 → S22 → · · · → SHlH → Sl, will give acomposite service that achieves the optimal delay per-formance. Therefore, selecting an optimal service pathfrom a pool of network and Cloud candidate serviceswhile satisfying various QoS requirements is the mainoptimization focus for converged network–Cloud serviceprovisioning.

In this model we assume that service providers alwayscollaborate with each other; that is, there is no contentionamong all network and Cloud services. We also assumea standard interface between the service broker and theavailable atomic services for service orchestration. Suchan interface offers service abstraction that makes imple-mentation details of these services transparent to theservice broker and service consumers; thus overcoming”lock-in” issue of Cloud computing.

As an illustrative example we still consider the labdata processing case. Suppose the end-to-end servicerequested by the user include Cloud data storage, Clouddata process, as well as data transmission from user tostorage, from storage to the process server, and fromthe server back to the user. The path of the end-to-end composite service is shown in the upper part ofFig. 4. This path consists of five service components. TwoCloud service CS1 and CS2 for data storage and dataprocessing respectively. Network service NS1 transmitsraw data to Cloud storage, NS2 transports data fromstorage to Cloud server for processing, then NS3 trans-mits process results back to the user.

There are multiple candidate services that may beused to realize each service component in the path, asillustrated in the lower part of Fig. 4. For example in thiscase Amazon S3, Google Drive, and Microsoft Skydriveare all available for Cloud storage service. Similarly A-mazon EC2, GoGrid Server, and Google Compute Engineare candidate services for Cloud data process. Availableservice candidates for realizing network service compo-nents (NSi, i = 1, 2, 3) are represented by the connectionlinks in the lower part of Fig. 4. In this example networkservices provided by AT&T network, Verizon network,and Comcast network are available candidate servicesthat can be selected to realize NSi, i = 1, 2, 3.

Each path from S0 to Sl in the graph shown in thelower part of Fig. 4 gives one possible realization; i.e. aworkflow, for the composite service. In order to achieveend-to-end QoS provisioning, a service path that meetsthe QoS requirements specified by the user must bechosen. If we assign metrics to each node (e.g. capacityand latency for Cloud storage and process) and eachlink (e.g., bandwidth and delay for data transmission) inthe graph, then a composition algorithm may select an

CS_2

data

process

end

user

CS_1

data

storage

NS_1 NS_2

data

transmission

data

transmission

end

user

NS_3

data

transmission

S0 S1

Amazon

S3

G-Drive

SKyDrive

Amazon

EC2

Google

CE

GoGrid

Server

network

AT&T

network

Verizon

network

AT&T

network

Comcast

network

AT&T network

Comcast

network

Verizon

Fig. 4. An example of service composition for network-Cloud service provisioning

optimal path for meeting the requirements. For examplethe user requires a maximum service delay for gettingdata process results back and then the highlighted pathis selected for meeting such a delay requirement. Theselected service path uses Comcast network for trans-mitting data to Amazon S3, using AT&T network forcommunications between Amazon S3 and Amazon EC2,then using Verizon network for transmitting process re-sults back to the user. The total delay on the service path,including latency introduced by Amazon S3 and EC2and transmission delay in Comcast, AT&T, and Verizonnetworks, is less than the required end-to-end servicedelay. Therefore, the QoS-aware composition mechanismshould support federated service composition acrossnetwork and Cloud domains in order to achieve optimalend-to-end service performance.

2.3 Problem Formulation

Given the converged service provisioning model, wecan formulate the problem of QoS-aware network–Cloudservice composition as follows

A service graph formed by interconnecting candidateservices of a series of service components can be mod-eled as a directed graph G(V,E) with n vertices and medges. Each vertex represents a Cloud service that is as-sociated with two QoS metrics: capacity c and processinglatency d. Each edge represent a network link for datatransmission, which is associated with K QoS parame-ters w = (w1, w2, · · · , wK). Note that QoS parameters canbe either positive (quality increases as parameter valueincreases, e.g., reliability) or negative (quality decreasesas parameter value increases, e.g., delay), the latter typeare considered in the model because positive ones canbe transformed to be negative by taking reciprocal. Inaddition, QoS parameters on each link are supposedto be additive since any concave metric (e.g. bandwidth)can be pre-processed via eliminating the correspondingvertices and edges that do not satisfy the QoS constraints[23]. That is, we focus on the negative and additive QoSparameters in the model.

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

6

TABLE 1Notations and Symbols

n number of nodes in G(V,E)m number of links in G(V,E)c capacity of noded processing latency of nodeK number of QoS constraints on

each linkH number of servicesε approximation ratio of the algo-

rithmw = (w1, w2, · · · , wK) QoS parameters on each linkR = (C,D,W1,W2, · · · ,WK) user’s requestC capacity constraintD processing latency constraintW1,W2, · · · ,WK K QoS constraints

Let R = (C,D,W1,W2, · · · ,WK) denote the perfor-mance requirement specified in a user’s request, whereC is the service capacity constraint, D is the processinglatency constraint, and (W1, · · · ,WK) are K end-to-endQoS constraints. A series of selected services can berepresented as a path p in the service graph.

Definition 1: Feasible Service Composition. A com-posed service, i.e., a path p from service entrance portalto service exit portal in the service graph, is said to befeasible if ∀v ∈ p, 1

c(v) ≥1C ,∑v∈p d(v) ≤ D,wk(p) ≤ Wk

for all 1 ≤ k ≤ K.Denote {pf} as all feasible service compositions in

G(V,E). For each pfi ∈ {pf}, there exists a smallest valueηi ∈ (0, 1] such that wk(pfi ) ≤ ηi ·Wk, 1 ≤ k ≤ K.

By the above definition, we now formulate the QoS-aware service composition problem.

Problem 1: QoS-aware Service Composition (QSC).QSC is to find an optimal path popt among feasibleservice compositions in G(V,E) and the correspondingsmallest value ηopt among all ηi such that wk(popt) ≤ηopt ·Wk, k ∈ [1,K] where K ≥ 2.

It has been proved that problem QSC is NP-hard [24]as the solution of QSC in the absence of vertex con-straints, namely, capacity and processing latency, mapsdirectly that of MCOP, which is a well-known NP-hardproblem. To attack it, approximation algorithm has beenrealized as a powerful tool. Formally, an algorithm is aβ-approximation algorithm (or simply, an approximationalgorithm) for QSC if the algorithm generates a servicepath p such that wk(p) ≤ β · ηopt ·Wk, and the runningtime of the algorithm is bounded by a polynomial in theinput size of the instance as well as in 1/β.

Table 1 lists the frequently used notations in the restof this paper.

Please note that although the concept of a servicepath p used in Definition 1 and Problem 1 can representnot only a series of candidate services invoked in asequential order, but also atomic services executed withother flow structures including parallel, case, condition,and loop as shown in Fig. 5. From a perspective of QoS-aware service composition, a service path with theseflow structures may be converted to a sequential path

Si

Si+1

Si+2

SlS0

(a)

Si

Si+1

Si+2

SlS0

(b)

Si

Si+1

Si+2

SlS0 Prob i

Probi+1Prob

i+2

(c)

Si SlS0

T

(d)

Fig. 5. Parallel, case, condition, loop execution structuresof atomic candidate services. S0 and Sl are service en-trance portal and service exit portal, respectively.

based on the following lemma.Lemma 1: Computation of the service capacity, pro-

cessing latency, and end-to-end QoS constraints for ser-vice paths in parallel, case, condition, and loop flowstructures can be transformed to computation of thecorresponding constraint parameters for a service pathin the sequential structure.

Proof: Assume {S1, S2, · · · , Sh} is a set of candidateservices, they are executed in parallel, case, condition,and loop flow structures, which are shown in Fig. 5(a),(b), (c), and (d), respectively. Without loss of generality,consider each node is associated with a capacity (denot-ed by c) and a processing latency (denoted by d), eachedge is associated with two weights (more weights couldbe added), i.e., cost (denoted by w1) and delay (denotedby w2).

If the services execute in the parallel structure, allpaths between S0 and Sl would be executed simultane-ously. The capacity, processing latency, cost, and delayfrom S0 to Sl (denoted by c′, d′, w′1, and w′2 respectively)can be expressed as

c′ =

h∑i=1

c(Si),

d′ =h

maxi=1{d(Si)} ,

w′1 =

h∑i=1

w1(pi),

w′2 =h

maxi=1{w2(pi)} ,

(1)

where pi represents the path S0 → Si → Sl.

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

7

If the services execute in the case structure, the processwould be terminated when one of the paths is executed,and thus we have

c′ = c(Si∗),

d′ = d(Si∗),

w′1 = w1(pi∗),

w′2 = w2(pi∗)

(2)

where i∗ =h

arg mini=1

{d(Si) + w2(pi)}.For condition structure, we have

c′ =

h∑i=1

{Probi · c(Si)} ,

d′ =

h∑i=1

{Probi · d(Si)} ,

w′1 =

h∑i=1

{Probi · w1(pi)} ,

w′2 =

h∑i=1

{Probi · w2(pi)} ,

(3)

where Probi is the execution probability of Si such thath∑i=1

Probi = 1.

For loop structure,

c′ = T · c(Si),d′ = T · d(Si),

w′1 = T · w1(pi),

w′2 = T · w2(pi),

(4)

where T is the loop count.Lemma 1 indicates that service selection in a service

graph with general flow structures can be convertedto selection of a service path with a sequential order.Therefore, for a service graph with general flow struc-tures in it, we can first apply Lemma 1 to transformpaths in parallel, case, condition, and loop structures tothe sequential structure, then focus on selecting tandemcandidate services to form a sequential service path thatmeets end-to-end QoS requirements.

For example in the illustrative case for lab data pro-cessing (shown in Fig. 4), if parallel network paths existbetween Amazon S3 storage and Amazon EC2 serv-er and the network management policy of the serviceprovider (e.g. AT&T) allows parallel data transmission,then we can transform the set of parallel network linksfrom S3 storage to EC2 server to one atomic networkservice, whose bandwidth is the total bandwidth of alllinks and delay is the maximum delay among all links.

We assume that the path specified by a user requestis in a sequential structure. In this work we mainlyfocus on addressing the challenges brought in by high-level service composition across the networking andCloud computing domains instead of low-level servicecomposition within Cloud systems. (The latter has been

Algorithm 1: PreProInput: Service Graph G(V,E, c, d, w), R.Output: G′(V ′, E′, w′).

1 Construct a graph G′(V,E, c, d, w) by duplicatingG(V,E, c, d, w);

2 Apply Lemma 1 to transform parallel, case,condition, loop structures to the sequential ones;

3 while to each u ∈ V ′ do4 if 1

c(u) >1C then

5 Update V ′ and E′ by removing u from Vand its connected edges from E;

6 Continue;7 end8 To each u’s outgoing edges (u, v1), (u, v2), · · · ,

w′1(u, vi)← w1(u, vi), · · · ,9 w′κ(u, vi)← wκ(u, vi) + d(u),

10 w′κ+1(u, vi)← wκ+1(u, vi), · · · ,11 w′K(u, vi)← wK(u, vi), where wκ is assumed to

be the delay over the link.12 end13 return G′(V ′, E′, w′);

studied in various papers as discussed in Related Worksection.) Sequential paths are typical, although not theonly case, for network-Cloud service composition. Forexample user data are first transmitted via a networkservice to a Cloud server, then processed by the Cloudservice, and then results are delivered by a networkservice back to the user, as illustrated in the lab dataprocessing case. Please note that non-sequential pathsare possible within either a Cloud (or network) servicecomponent, for example parallel or loop data processinside the Amazon EC2 service, but are encapsulated bya single Cloud (or network) service component.

3 AN APPROXIMATION ALGORITHM FOR NET-WORK AND CLOUD SERVICE COMPOSITION

3.1 AlgorithmTo resolve the QSC problem, we in this section proposean approximation algorithm for network-Cloud servicecomposition. The algorithm addresses both node andedge constraints in a service graph to achieve compo-sition across network and Cloud services with end-to-end performance guarantee. Specifically, this algorithmis developed based upon a preprocessing procedure,named PrePro, shown in Algorithm 1. The PrePro firstconstructs a new graph by simply duplicating the orig-inal service graph, and then applies Lemma 1 to convertparallel, case, condition, loop structures to the sequentialones in this new graph. Next, PrePro removes the nodecapacity constraint and migrates the processing latencyconstraints onto the edge constraints. As a consequence,QSC problem is formulated as an MCOP.

As shown in Algorithm 1, PrePro trims the servicegraph topology according to the capacity constraints. If

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

8

capacity of a node in the service graph is smaller than therequired constraint, the node and its associated links willbe eliminated from the graph (lines 4 to 7 in Algorithm1). Therefore, the remaining service graph satisfies allthe capacity constraints. While for the latency constraint,PrePro migrates the processing latency from each nodeto its outgoing links (lines 8 to 11 in Algorithm 1). Forexample, consider a service path from the entrance portalS0 to a service node u and then to the exit portal Sl thatthe delay of link S0 → u is 50ms, u has a processinglatency 100ms, and the delay of link u → Sl is 20ms.PrePro migrates the 100ms latency from node u onto thelink u→ Sl; thus getting the following equivalent metricassignment on this path: delay of link S0 → u is 50ms,processing latency of u is zero, and delay of link u→ Slis 120ms. Such transform performed by PrePro enablethe QSC problem to be formulated as a MCOP.

It is straightforward to derive that the time complexityof PrePro is O(m+n). But one should be noticed that inthe PrePro, transferring processing latency to link delaywill not violate the QoS of parallel tasks because this stepis executed in the new graph obtained by the structureconversion process (lines 1 and 2 in Algorithm 1). Basedon PrePro algorithm, we propose an approximation algo-rithm named SCA (shown in Algorithm 2) for network-Cloud service composition.

SCA comprises four key steps. The first step (line1) applies PrePro to transform the QSC into a MCOP.As a result, the capacity and processing latency oneach node are removed. In the second step (line 2),the service graph is simplified via a ceiling operationon both weights and constraints. This ceiling operationfollows the rounding method in [25] that dramaticallyreduces the search space, thus facilitating the problemto be solved.

In the third step (lines 3 to 15) we assume that nodess and t denote the service entrance portal and the ser-vice exit portal, respectively. The notation dv[δ2, · · · , δK ]represents the least first weight, namely, w1 among pathp from s to v such that wk(p) ≤ δk, 2 ≤ k ≤ K.Notation pv[δ2, · · · , δK ] is used to record the predecessorof v on the path p such that w1(p) = dv[δ2, · · · , δK ]and wk(p) ≤ δk, 2 ≤ k ≤ K. Note that this step isa dynamic programming process for tackling three ormore constraints, which follows the same philosophy ofrelaxing operation in Dijkstra.

The fourth step examines the feasibility of the pathgenerated by the second step. If the path satisfieswk(p) ≤ Wk, 2 ≤ k ≤ K, the algorithm completeswith this path as an output; otherwise the algorithmterminates with no feasible path.

We want to point out that the proposed model andalgorithm for network-Cloud service composition areapplicable to multi-tenant service provisioning environ-ments, where resource contention may exist in the under-lying network and Cloud infrastructures. In our model,the QoS metrics associated with the service graph reflectthe currently available amount of resources. We as-

Algorithm 2: SCAInput: Graph G(V,E, c, d, w), R, H , ε.Output: Path p.

1 Call PrePro to obtain G′(V ′, E′, w′), set W ′k ←Wk,2 ≤ k ≤ K, and W ′κ ←Wκ +D;

2 To each e ∈ E′ in G′(V ′, E′), compute the newweights wNk (e) =

⌊w′k(e)W ′k· H−1ε

⌋, 2 ≤ k ≤ K, and set

WN1 = · · · = WN

K = ∆ =⌊H+1ε

⌋;

3 for δk = 0 to ∆, 2 ≤ k ≤ K do4 dv[δ2, · · · , δK ]←∞, ∀v ∈ V ;

pv[δ2, · · · , δK ]← NULL; ds[δ2, · · · , δK ]← 0;5 end6 for all (δ2, · · · , δK) ∈ {0, 1, · · · ,∆}K−1 in increasing

lexicographic order do7 for each (u, v) ∈ E s.t. δk = λk + wk(u, v) ≥ 0 do8 if dv[δ2, · · · , δK ] > du[λ2, · · · , λK ] + w1(u, v)

then9 dv[δ2, · · · , δK ]← du[λ2, · · · , λK ] + w1(u, v);

pv[δ2, · · · , δK ]← u;10 end11 if dv[δ2, · · · , δK ] > dv[δ2, · · · , δj − 1, · · · , δK ]

then12 dv[δ2, · · · , δK ]← dv[δ2, · · · , δj − 1, · · · , δK ];

pv[δ2, · · · , δK ]← pv[δ2, · · · , δj − 1, · · · , δK ],2 ≤ j ≤ K;

13 end14 end15 end16 if dt[δ2, · · · , δK ] ≤ ∆ then17 Find a source-destination path p in G(V,E) s.t.

w1(p) ≤ ∆ and wk(p) ≤ δk, 2 ≤ k ≤ K;18 end19 if wk(p) ≤Wk, 2 ≤ k ≤ K then20 return path p;21 else22 return No feasible path, EXIT;23 end

sume that the infrastructure controller regularly collectssuch information and make it available to the servicecomposition module, where the proposed algorithm isperformed. Whenever a newly created composite serviceis deployed, the required amount of resources will beallocated in network and Cloud infrastructures. Then theinfrastructure controller will update the resource avail-ability information, based on which the service composi-tion module will update the QoS metrics on the servicegraph. When searching a service path for a new service,the PrePro step of the proposed algorithm removesnodes and links that have insufficient capacities fromthe service graph; thus avoiding using such links/nodesfor the new service. Some available network and Cloudmanagement technologies may be applied to supportcollecting and updating the availability information ofinfrastructure resources, for example OpenDaylight plat-form for network control and OpenStack API for Cloud

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

9

management.Now we analyze theoretical properties for SCA.

3.2 AnalysisTheorem 1: The worst-case time complexity of Algo-

rithm SCA is O(m(Hε

)K−1)time.

Proof: The first and second steps of SCA for pro-cessing the topology spends O(n + m) time. The thirdstep takes O

(m(H+1ε

)K−1)time in the worst-case

to calculate the path. Checking the feasibility of theobtained path in the fourth step costs O(K) time.Therefore the worst-case time complexity of SCA isO(m+ n+m

(H+1ε

)K−1+K

)= O

(m(Hε

)K−1).

Theorem 1 indicates that the proposed SCA is fasterthan the best currently avaiable MCOP algorithm, i.e.,FPTAS [26]. This is due to the fact that the number ofhops of the final path is known a priori in the contextof service composition, which guides the SCA to findthe path in a smaller searching space. In addition, thespace overhead of SCA is also much smaller than thatof FPTAS. Since the FPTAS would extend the originalgraph and the scale of the extended graph increasesexponentially with the number of constraints, FPTASneeds more space to store the extended graph. Lever-aging algebraical form of graph extending, SCA doesnot need much storage space for the extended graph.Hence, SCA is more efficient than FPTAS to address theQSC problem.

Next, we show approximation property of service pathp obtained by SCA.

Theorem 2: The path p obtained by SCA satisfieswk(p) ≤ (1 + ρ) · ηopt ·Wk, 2 ≤ k ≤ K, where ρ = ε

ηopt isan approximation ratio of SCA.

Proof: For the optimal path popt, wk(popt) ≤ ηopt ·Wk,2 ≤ k ≤ K, that is∑

e∈poptwk(e) ≤ ηopt ·Wk (5)

Since wNk (e) =⌊wk(e)Wk· H−1ε

⌋, and

⌊wk(e)Wk· H−1ε

⌋≤ wk(e)

Wk·

H−1ε then∑

e∈popt

⌊wk(e)

Wk· H − 1

ε

⌋≤ ηopt · H − 1

ε(6)

According to the definition of dv[δ2, · · · , δK ] as well asthe dynamic programming process, we have

max2≤k≤K

{wNk (p)

}≤ max

2≤k≤K{wNk (popt)} (7)

It implies

wNk (p) ≤ ηopt · H − 1

ε(8)

Since wNk (e) + 1 =⌊wk(e)Wk· H−1ε

⌋+ 1 ≥ wk(e)

Wk· H−1ε , then

∑e∈p

wk(e)

Wk· H − 1

ε≤ ηopt · H − 1

ε+∑

e∈p1 (9)

1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 00

2 04 06 08 0

1 0 01 2 01 4 01 6 01 8 0

AET(m

s)

N e t w o r k S i z e

ε= 0 . 1 ε= 0 . 2 ε= 0 . 3

(a) SCA

1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 00

2 0 0

4 0 0

6 0 0

8 0 0

1 0 0 0

AET(m

s)

N e t w o r k S i z e

ε= 0 . 1 ε= 0 . 2 ε= 0 . 3

(b) ADAPT

Fig. 6. AET comparisons for SCA and ADAPT withdifferent network sizes and ε values.

Path p has H − 1 hops, therefore∑e∈p

wk(e) ≤ (ηopt + ε) ·Wk (10)

i.e.

wk(p) ≤ (1 + ρ) · η ·Wk (11)

where ρ = εηopt . This completes the proof.

Theorem 2 implies that the later (K − 1) weights of pis able to asymptotically approximate the optimal withapproximation ratio ρ = ε

ηopt while the first weight ofp achieves the smallest. This shows that the proposedSCA algorithm provides a provably performance guar-antee; thus is effective and efficient for solving the QSCproblem.

4 PERFORMANCE EVALUATION

4.1 Evaluation SettingsWe implemented a simulator to evaluate the perfor-mance of the proposed algorithm. The simulator is pub-licly available at [27]. we compared the performance ofSCA against that of a variant of ADAPT [28] as wellas FPTAS [26] through numerical experiments. To thebest of our knowledge, ADAPT and FPTAS [26] aretwo currently best-known algorithms for MCOP whenK = 2 and K > 2, respectively. Moreover, QSC mapsto a special case of MCOP directly when the topologyis pruned in advance to satisfy the nodes’ constraints.Therefore, ADAPT and FPTAS with minor modificationcan be applied for resolving QSC.

We are aware of some available data sets ofWeb service QoS parameters, for example QWS(http://www.uoguelph.ca/ qmahmoud/qws/) and WS-Dream (http://www.wsdream.net/dataset.html), whichcould be used for performance evaluation of servicecomposition schemes. However, these data sets current-ly contain QoS metrics mainly for computing type ofservices (Web services for data process and storage)and lack sufficient QoS data for networking services.Though adding networking QoS data into the existingweb service dataset may work for the simulation pur-pose, the simulation results generated by such artificiallysynthesized dataset are not convincible as the simulation

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

10

0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 00

2 0 04 0 06 0 08 0 0

1 0 0 01 2 0 0

AE

T(ms)

N e t w o r k S i z e

S C A A D A P T

(a) ε = 0.1

0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 00

2 0 04 0 06 0 08 0 0

1 0 0 01 2 0 0

AET(m

s)

N e t w o r k S i z e

S C A A D A P T

(b) ε = 0.2

0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 00

2 0 04 0 06 0 08 0 0

1 0 0 01 2 0 0

AET(m

s)

N e t w o r k S i z e

S C A A D A P T

(c) ε = 0.3

Fig. 7. AET values of SCA and ADAPT for various network scales with different ε.

0 . 1 0 0 . 1 5 0 . 2 0 0 . 2 5 0 . 3 002

46

81 0

AET(m

s)

ε

S C A A D A P T

(a) Network size = 100

0 . 1 0 0 . 1 5 0 . 2 0 0 . 2 5 0 . 3 00

5 01 0 01 5 02 0 02 5 03 0 0

AET(m

s)

ε

S C A A D A P T

(b) Network size = 500

0 . 1 0 0 . 1 5 0 . 2 0 0 . 2 5 0 . 3 00

2 0 04 0 06 0 08 0 0

1 0 0 01 2 0 0

AET(m

s)

ε

S C A A D A P T

(c) Network size = 1000

Fig. 8. AETs of SCA and ADAPT for various ε values in different network sizes.

2 . 5 3 . 0 3 . 5 4 . 0 4 . 5 5 . 002468

1 0

AET(m

s)

W 2 ( 1 0 - 5 )

S C A A D A P T

(a) Network size = 100

2 . 5 3 . 0 3 . 5 4 . 0 4 . 5 5 . 00

5 01 0 01 5 02 0 02 5 03 0 03 5 0

AES(m

s)

W 2 ( 1 0 - 5 )

S C A A D A P T

(b) Network size = 500

2 . 5 3 . 0 3 . 5 4 . 0 4 . 5 5 . 00

2 0 04 0 06 0 08 0 0

1 0 0 01 2 0 01 4 0 0

AET(m

s)

W 2 ( 1 0 - 5 )

S C A A D A P T

(c) Network size = 1000

Fig. 9. AETs of SCA and ADAPT for various constraint values in different network sizes.

input is controlled. Therefore, in this paper we con-duct simulation experiments using randomly generatednetwork/Cloud services and QoS parameters in orderto evaluate performance of the proposed algorithm forservice composition across network and Cloud domains.

In the first set of evaluations, we generated a set ofrandom service graphs with node numbers ranged from100 to 1000. Each link in the generated networks has twoQoS parameters and they are uniformly distributed. Asfor the second set of evaluations, we generated three net-works with 60, 80, 100 nodes respectively since a largernetwork scale will be overflowed in FPTAS. Each linkin these three networks has three QoS parameters andthey are also uniformly distributed. Note that the uni-form distribution used here is only for illustration, otherdistributions also work in a similar way. We assumethat the service components are spread in five servicecategories, i.e., H = 5, which we believe is reasonable fortypical Cloud service scenarios. In order to evaluate theperformance under different parameter configurations,

we set ε ∈ [0.1, 0.3] for both SCA and ADAPT. Also,we assume that the requests are always feasible; thatis, W1 = 50, W2 ∈

[2.5× 10−5, 5× 10−5

]. The reported

results were obtained by running both algorithms 100times independently, and all of the experiments wereconducted on IBM P4 2.6GHz with 2G memory spaceand Linux system.

4.2 Performance Metric

The performance metrics that we use in this section forevaluating algorithms are defined as follows.

Definition 2: Average Execution Time (AET ). AET isthe average execution time of an algorithm calculatedfrom 100 independent runs. This metric is used forevaluating the time cost performance of an algorithm,i.e., the time that a user has to wait for getting a servicecomposition result.

Definition 3: Path Weights Distance (PWD). For a path

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

11

p returned by an algorithm,

PWD(p) =

√√√√ K∑k=1

(1− wk(p)

Wk

)2

.

PWD denotes the distance between the weights of afound service path and the QoS constraints specified inthe service request. This metric reflects the level of QoSguarantee that can be achieved by a service compositionalgorithm to end users.

4.3 Evaluation Results

Our experimental results quantify performance of eval-uated algorithms in two ways. First, we test the impactof parameter ε variation on algorithms’ performance bysetting constant W2 = 3.0 × 10−5. Second, we examinethe performance of algorithms with constant ε = 0.1 fordifferent W2 settings.

Fig. 6 gives AET for SCA (shown in Fig. 6(a)) andADAPT (shown in Fig. 6(b)) with different ε settings. Thegraphs in this figure show that AET increases with thenetwork size, which is intuitive because both algorithmsconsume more time for larger scale networks. In addi-tion, we observed that the AET values of both algorithmsincrease when the parameter ε decreases. This is becausea smaller ε gives a larger path searching space that slowsdown both algorithms.

Fig. 7 compares the AET of SCA against that of ADAP-T with different ε values, where Fig. 7(a), Fig. 7(b), andFig. 7(c) plot the case when ε = 0.1, ε = 0.2, and ε = 0.3,respectively. The curves show that for a certain ε value,SCA has smaller AET than ADAPT does, especially inlarge scale networks; that is, SCA runs much faster thanADAPT. This is because the search space of SCA relieson the number of hops in path, which is very smalland can be known in advance. ADAPT employs anapproximation test procedure to generate a set of upperand lower bounds for searching the optimal. The searchspace for ADAPT is determined by the distance betweenthe upper and lower bounds, which is larger comparedto SCA. Therefore, SCA has better AET performance thanADAPT.

The AETs (in millisecond) of SCA and ADAPT withdifferent ε values for three network sizes, namely, 100,500, 1000, are shown in Fig. 8. From this figure we cansee that regardless of network scale, SCA runs faster thanADAPT, which confirms our observation from Fig. 8.We also observed that SCA has stable AET values fordifferent ε while the AET values of ADAPT drop whenε increases. That means that SCA is insensitive to εvariation but ADAPT is not. Essentially the parameterε plays a vital role in ADAPT for narrowing down thegap between upper and lower bounds, which makes thealgorithm sensitive to ε variation.

Fig. 9 shows the AET of SCA and ADAPT undervarious W2 for three specific network sizes. The resultsshow that the AET of ADAPT is impacted by not only ε

2 . 5 3 . 0 3 . 5 4 . 0 4 . 5 5 . 01 . 2 4

1 . 2 8

1 . 3 2

1 . 3 6

1 . 4 0

1 . 4 4

1 . 4 8

PWD

W 2 ( 1 0 - 5 )

N S = 1 0 0 N S = 5 0 0 N S = 1 0 0 0

(a)

1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 1 0 0 01 . 2 61 . 2 81 . 3 01 . 3 21 . 3 41 . 3 61 . 3 81 . 4 01 . 4 2

PWD

N e t w o r k S i z e(b)

Fig. 10. PWDs for SCA with different constraint valuesand network sizes.

TABLE 2AET comparisons for three networks with different ε.

Nodesε = 0.1 ε = 0.2

SCA FPTAS SCA FPTAS

60 38 1216 17 91980 58 3300 25 2488100 82 6727 49 5295

but also the constraint. It can be seen from Fig. 9(a) thatthe AET of ADAPT becomes low when W2 is loose. Thisis due to the fact that a looser W2 makes the search spaceof ADAPT small; thus reducing its AET. On the otherhand, we observe that AET of SCA stays in a relativelyconstant level, which matches our theoretical analysisresult that indicates the running time is not affected byany constraint.

One should be noticed that in the above AET compar-isons the paths found by SCA and ADAPT are the samefor each specific settings of parameters; therefore thePWD of both algorithms are identical. In other words,we compare the AET under the condition that both ofalgorithms find the same path. Next, we examine the P-WD of our proposed algorithm with different constraintsand network sizes.

Fig. 10 presents PWD comparisons for SCA with d-ifferent constraint values and network sizes. Fig. 10(a)gives the PWD results for different W2 for three networksizes (NS=100, 500, 1000). Fig. 10(b) shows the PWDfor different network scales. These two figures indicatethat SCA would find a path with possibly greater PWDfor large scale networks. Moreover, it can be seen thatthe PWD of SCA changes little in the condition ofloosing W2. The reason for this is that SCA searchesthe path primarily based on the path hops. If the pathin the right hops that satisfies the constraints, the SCAterminates immediately. Therefore, variations in W2 havelittle impact on SCA performance.

Similar to the first set of evaluations, in the secondevaluation we compare the performance between SCAand FPTAS in the case of three constraints on eachgenerated topology. Table 2 and 3 show the AET com-parisons for SCA and FPTAS in three networks withdifferent ε and constraint. Likewise, the same insight can

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

12

TABLE 3AET comparisons for three networks with different W2.

W2(×10−5)ε = 0.1 ε = 0.2

SCA FPTAS SCA FPTAS

2 82 6727 40 52953 75 6365 33 49624 74 6032 33 4643

be obtained; that is, for the same ε and network size,SCA executes faster than FPTAS while finding the samepath. The loosing of constraints and variation in ε almostmakes no significant contribution to the AET of SCA.In contrast, variation of constraint and ε would affectthe performance of FPTAS. Therefore, SCA outperformsFPTAS in terms of AET in the condition of obtaining thesame PWD.

5 RELATED WORK

Service composition has been extensively studied in thefields of Web services and Cloud computing. Varioustechnologies have been developed to achieve servicecomposition that meets functional and/or performancerequirements. Most of these technologies are based oneither workflow management or AI-planning approach.Surveys of recent research on Web service compositioncan be found in [29] and [30]. Optimization of multipleQoS criteria in service composition has been modeledas a multi-dimension multi-choice 0-1 knapsack problemand solved by integer programming [31] or by heuristicsearch methods [32]. Genetic algorithms offer anotherapproach to addressing this problem with the advantageof being able to handle nonlinear QoS constraints [33]. In[34] Cloud services are modeled as finite state machinesand a simple additive weighting technique is used toselect an optimal service composition. More recently,Dastjerdi and Buyya presented an ontology-based ap-proach to describing services and their QoS propertiesand developed a technique to optimize service compo-sition based on user preferences [35]. In [36] the authorsstudied strategy-proof pricing of Cloud service com-position and proposed a dynamic programming basedapproach for service selection with quasi-polynomialcomputational complexity. More research on QoS-awareWeb service composition can be found in the surveypresented in [37].

The aforementioned research results focus on We-b/Cloud service composition instead of compositionbetween network and Cloud services. The modeling andoptimization approaches proposed in this paper over-come this limit by employing QoS metrics of both net-work and Cloud services through NaaS paradigm in thecomposition algorithm; thus finding a path that achievesoptimal end-to-end QoS performance. Network-awareservice composition is studied in [38], [39]. In [38] theauthors first build a network model for estimating thenetwork latency between arbitrary services and potential

users, and then develop a selection algorithm leveragingthis model to find service compositions that will resultin a low latency. Geolocation information is employedin [39] to predict the network delay between candidateservices, which is then used in a proposed geolocation-aware service selection algorithm for service composi-tion. The aforementioned work handles network per-formance and Cloud service QoS constraints separatelyand only considers a single network QoS metric, i.e. theestimated network delay between candidates services,in composition of computing services. In contrast, weaddress the service composition problem with a holisticvision that abstracts both computing and networkingresources as services. The proposed algorithm in thispaper integrates multiple network performance metricsand Cloud QoS constraints to achieve optimal end-to-end performance for composite network–Cloud serviceprovisioning.

The problem of combined service composition andnetwork routing is studied in [40] with a goal to findthe optimal service composition in a network that leadsto the minimum routing cost. A decision making sys-tem is developed in the paper to solve this problemwith AI-planning techniques. This work is similar toour research in that service composition and networkrouting are combined into one problem and solved witha unified mechanism. However, only a single QoS metric(delay) for communications and service processing isconsidered in [40]. In our work, by formulating network–Cloud service composition as a multi-constraint optimalpath problem we develop an algorithm that can handlemultiple QoS constraints.

Some recent research efforts try to apply techniquesfor QoS routing, which is typically formulated as Multi-Constraint Optimal Path (MCOP) problem, to tackle theservice composition problem. Up to date, much progresshas been made toward designing efficient MCOP al-gorithms for QoS routing. Ergun et al. [28] give analgorithm that adopts an approximation test procedureto generate a set of upper and lower bounds for search-ing the optimal. This algorithm is known to be oneof the fastest algorithms for Delay Constrained LeastCost (DCLC). Xue et al. [41] define variations of MCOPand present a set of approximation algorithms for eachproblem. Other progress toward QoS routing algorithmscan be found from the surveys given in [42], [43], [44].

The aforementioned MCOP techniques were initiallyproposed for network QoS routing. Further develop-ment of these algorithms to enable their applications innetwork–Cloud service composition forms an interestingresearch topic. The Fully Polynomial Time Approxima-tion Scheme (FPTAS) proposed in [26] has been provedto be currently one of the fastest algorithms for MCOP.However, FPTAS cannot be used directly in the network–Cloud service composition context because the vertex inthe service graph has QoS metrics and topology of ser-vice graph is usually a Directed Acyclic Graph (DAG). Inour previous work [45] we proposed an approximation

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

13

algorithm to tackle the problem of QoS-aware servicecomposition by following the design principle of FPTAS.However, the model proposed in [45] only considers QoSmetrics on the edges in a service graph, which limits theflexibility of the model for reflecting different types ofservices in network and Cloud domains. In this paper,we model a service graph with QoS metrics for bothnodes and edges entering the nodes, which can be usedto respectively represent the service capacities of Cloudcomputing services and QoS parameters of networkingservices.

6 CONCLUSIONS

QoS-aware composition across network and Cloud ser-vices is a key technology for realizing convergednetwork–Cloud service provisioning. In this paper, wehave addressed this challenging and important topic byformulating QoS-aware network–Cloud service compo-sition as a variant of Multi-Constrained Optimal Path(MCOP) problem and developed an approximation al-gorithm, termed SCA, for solving the problem. We havegiven theoretical analysis on properties of SCA andalso conducted thorough numerical experiments for per-formance evaluation. Both analytical and experimentalresults show that SCA is effective for meeting multipleQoS constraints and efficient to achieve much shorterresponse time for network–Cloud service composition.

As SCA is designed for sequential task, we plan toextend it to deal with more general tasks such as parallelones in the future work.

REFERENCES

[1] I. Foster, Y. Zhao, I. Raicu, and S. Lu, “Cloud computing and Gridcomputing 360-degree compared,” in Proc. of GCE’08, Nov. 2008,pp. 1–10.

[2] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Kon-winski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia,“A view of cloud computing,” Communications of the ACM, vol. 53,no. 4, pp. 50–58, 2010.

[3] K.-T. Chen, Y.-C. Chang, H.-J. Hsu, D.-Y. Chen, C.-Y. Huang, andC.-H. Hsu, “On the quality of service of cloud gaming systems,”IEEE Transactions on Multimedia, vol. 16, no. 2, pp. 480–495, Feb2014.

[4] W.-H. Hsu and C.-H. Lo, “Qos/qoe mapping and adjustmentmodel in the cloud-based multimedia infrastructure,” IEEE Sys-tems Journal, vol. 8, no. 1, pp. 247–255, March 2014.

[5] K. R. Jackson, K. Muriki, S. Canon, S. Cholia, and J. Shalf, “Per-formance analysis of high performance computing applicationson the Amazon Web services Cloud,” in Proc. of the 2010 IEEEInternational Conference on Cloud Computing Technology and Science,Nov. 2010, pp. 159–168.

[6] Q. Duan, “Modeling and delay analysis for converged network-cloud service provisioning systems,” in The 2013 International Con-ference on Computing, Networking and Communications (ICNC2013),2013, pp. 66–70.

[7] Y.-S. Dai, B. Yang, J. Dongarra, and G. Zhang, “Cloud servicereliability: Modeling and analysis,” in The 15th IEEE Pacific RimInternational Symposium on Dependable Computing, 2009.

[8] S. S. Woo and J. Mirkovic, “Optimal application allocation onmultiple public Clouds,” Computer Networks Journal, vol. 68, pp.138–148, 2014.

[9] T. Kurze, M. Klems, D. Bermbach, A. Lenk, S. Tai, and M. Kunze,“Cloud Federation,” in Proc. of the 2nd International Conference onCloud Computing, Grids, and Virtualization, Sep. 2011, pp. 32–38.

[10] L. F. Bittencourt, E. R. Madeira, and N. L. da Fonseca, “Impact ofcommunication uncertainties on workflow scheduling in hybridclouds,” in The 2012 IEEE Global Communications Conference, 2012,pp. 1623–1628.

[11] M. Fiorani, S. Aleksic, P. Monti, J. Chen, M. Casoni, and L. Wosin-ska, “Energy efficiency of an integrated intra-data-center andcore network with edge caching,” IEEE/OSA Journal of OpticalCommunications and Networking, vol. 6, no. 4, pp. 421–432, April2014.

[12] C. Assi, S. Ayoubi, S. Sebbah, and K. Shaban, “Towards scalabletraffic management in cloud data centers,” IEEE Transactions onCommunications, vol. 62, no. 3, pp. 1033–1045, March 2014.

[13] C. Shan, C. Heng, and Z. Xianjun, “Inter-Cloud operations viaNGSON,” IEEE Communications Magazine, vol. 50, no. 1, pp. 82–89, 2012.

[14] Y. Xia, M. Zhou, X. Luo, Q. Zhu, J. Li, and Y. Huang,“Stochastic modeling and quality evaluation of infrastructure-as-a-service clouds,” IEEE T. Automation Science and Engineering,vol. 12, no. 1, pp. 162–170, 2015. [Online]. Available:http://dx.doi.org/10.1109/TASE.2013.2276477

[15] http://aws.amazon.com/ec2/.[16] E. Zohar, I. Cidon, and O. Mokryn, “Pack: Prediction-based cloud

bandwidth and cost reduction system,” IEEE/ACM Transactions onNetworking, vol. 22, no. 1, pp. 39–51, Feb 2014.

[17] S. Baset, L. Wang, B. Tak, C. Pham, and C. Tang, “Toward achiev-ing operational excellence in a cloud,” IBM Journal of Research andDevelopment, vol. 58, no. 2/3, pp. 4:1–4:11, March 2014.

[18] Q. Duan, Y. Yan, and A. V. Vasilakos, “A survey on service-oriented network virtualization toward convergence of network-ing and Cloud computing,” IEEE Transactions on Network andService Management, vol. 9, no. 4, 2012.

[19] N. M. M. K. Chowdhury and R. Boutaba, “A survey of networkvirtualization,” Computer Networks, vol. 54, no. 5, pp. 862–876,2010.

[20] ETSI-NFV-ISG, “Network Function Virtualization (NFV) - net-work operator perspectives on industry progress,” Oct. 2014.

[21] ——, “NFV Specification NFV 002: Network Function Virtualiza-tion (NFV) - architectural framework,” Dec. 2014.

[22] Q. Duan, “Modeling and performance analysis on network vir-tualization for composite network-cloud service provisioning,” inProc. of 2011 IEEE World Congress on Services, Aug. 2011, pp. 548–555.

[23] P. Van Mieghem and F. Kuipers, “Concepts of exact qos routingalgorithms,” IEEE/ACM Transactions on Networking, vol. 12, no. 5,pp. 851–864, Oct 2004.

[24] J. Huang, Y. Liu, and Q. Duan, “Service provisioning invirtualization-based Cloud computing: Modeling and optimiza-tion,” in Proc. of IEEE Global Communication Conference 2012, Dec.2012, pp. 1728–1733.

[25] S. Sahni, “General techniques for combinatorial approximation,”Operations Research, vol. 25, no. 6, pp. 920–936, 1977.

[26] J. Huang and Y. Tanaka, “QoS routing algorithms using fullypolynomial time approximation scheme,” in Proc. ACM/IEEEInternation Workshop on Quality of Service 2011, Jun. 2011, pp. 1–3.

[27] J. Huang. (2013) Service selection simulator. [Online]. Available:https://code.google.com/p/simulator2013/downloads/list

[28] F. Ergun, R. K. Sinha, and L. Zhang, “An improved FPTAS forRestricted Shortest Path,” Information Processing Letters, vol. 83,no. 5, pp. 287–291, 2002.

[29] J. Rao and X. Su, “A survey of automated Web service composi-tion methods,” in Proc. of the 1st International Workshop on SemanticWeb Services and Web Process Composition, Jul. 2004.

[30] S. Dustdar and W. Schreiner, “A survey on Web services compo-sition,” International Journal of Web and Grid Services, vol. 1, no. 1,pp. 1–30, 2005.

[31] L. Zeng, B. Benatallah, A. H. H. Ngu, M. Dumas, J. Kalagnanam,and H. Chang, “QoS-aware middleware for Web services com-position,” IEEE Transaction on Software Engineering, vol. 30, no. 5,2004.

[32] T. Yu, Y. Zhang, and K. Lin, “Efficient algorithms for Web servicesselection with end-to-end QoS constraints,” ACM Transaction onWeb, vol. 1, no. 1, 2007.

[33] A. Klein, I. Fuyuki, and S. Honiden, “Sanga: A self-adaptivenetwork-aware approach to service composition,” IEEE Transac-tions on Services Computing, vol. PP, no. 99, pp. 1–1, 2013.

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

14

[34] H. Bao and W. Dou, “A QoS-aware service selection method forcloud service composition,” in Proc. of the IEEE 26th InternationalParallel and Distributed Processing Symposium, May 2012, pp. 2254–2261.

[35] A. V. Dastjerdi and R. Buyya, “Compatibility-aware Cloud servicecomposition under fuzzy preferences of users,” IEEE Transactionson Cloud Computing, vol. 2, no. 1, pp. 1–13, 2014.

[36] M. Tanaka and Y. Murakami, “Strategy-proof pricing for cloudservice composition,” IEEE Transactions on Cloud Computing inpress.

[37] A. Strunk, “QoS-aware service composition: A survey,” in Proc.of the 8th IEEE European Conference on Web Services, Dec. 2010, pp.67–74.

[38] A. Klein, F. Ishikawa, and S. Honiden, “SanGA: A self-adaptivenetwork-aware approach to service composition,” IEEE Transac-tions on Services Computing, vol. 6, no. 1, 2013.

[39] X. Wang, Y. Shen, and J. Zhu, “Network-aware QoS predictionfor service composition using geolocation,” IEEE Transactions onServices Computing, vol. 7, no. 3, 2014.

[40] X. Huang, S. Shanbhag, and T. Wolf, “Automated service compo-sition and routing in networks with data-path services,” in Proc. ofthe 19th IEEE International Conference on Computer CommunicationNetwork, Aug. 2010, pp. 1–8.

[41] G. Xue, W. Zhang, J. Tang, and K. Thulasiraman, “Polynomialtime approximation algorithms for multi-constrained QoS rout-ing,” IEEE/ACM Transactions on Networking, vol. 16, no. 3, pp.656–669, 2008.

[42] T. K. F. A. Kuipers, P.V. Mieghem and M. Krunz, “An overviewof constraint-based path selection algorithms for QoS routing,”IEEE Com. Mag., vol. 40, no. 12, pp. 50–55, 2002.

[43] Z. Tarapata, “Selected multicriteria shortest path problems: ananalysis of complexity, models and adaptation of standard algo-rithms,” Int. J. Applied Math. and Comp. Sci., vol. 17, no. 2, pp.269–287, 2007.

[44] S. G. R. G. Garroppo and L. Tavanti, “A survey on multi-constrained optimal path computation: Exact and approximatealgorithms,” Compt. Netw., vol. 54, no. 17, pp. 3081–3107, 2010.

[45] J. Huang, G. Liu, Q. Duan, and Y. Yan, “Qos-aware servicecomposition for converged network–cloud service provisioning,”in Proc. of SCC’14, Jun. 2014, pp. 1–8.

Jun Huang (M’12) received the M.S. de-gree (with honor) in computer science fromChongqing University of Posts and Telecommu-nications, China, in 2009, and the Ph.D. degree(with honor) from Institute of Network Technolo-gy, Beijing University of Posts and Telecommu-nications, China, in 2012. Now he is a postdoc-toral research fellow at Electrical and ComputerEngineering, South Dakota School of Mines andTechnology, USA. Dr. Huang was a visiting re-searcher at Global Information and Telecommu-

nication Institute, Waseda University, Tokyo, from Sept. 2010 to Sept.2011. He received a runner-up of best paper award from ACM SAC 2014and a best paper award from AsiaFI 2011. He has published more than50 refereed journal/conference papers. His current research interestsinclude network optimization and control, Quality-of-Service etc. He is amember of ACM and IEEE.

Qiang Duan is an Associate Professor at thePennsylvania State University Abington College.His general research interest is about data com-munications and computer networking. Currentlyhis active research areas include future Internetarchitecture, network virtualization, Network-as-a-Service, Software Defined Network, and Cloudcomputing. He has published over 70 journalarticles and conference papers and authored5 book chapters. Dr. Duan is on the editorialboards for more than 10 international research

journals and has served on the technical program committees for nu-merous international conferences including GLOBECOM, ICC, ICCCN,AINA, WCNC, etc. Dr. Duan received his Ph.D. degree in electricalengineering from the University of Mississippi. He holds a B.S. degreein electrical and computer engineering and a M.S. degree in telecom-munications and electronic systems.

Song Guo Song Guo (M02-SM11) received thePhD degree in computer science from the U-niversity of Ottawa. He is currently a full pro-fessor at the School of Computer Science andEngineering, the University of Aizu, Japan. Hisresearch interests are mainly in the areas ofwireless communication and mobile computing,cloud computing, big data, and cyber-physicalsystems. He has published more than 250 pa-pers in refereed journals and conferences inthese areas and received three IEEE/ACM best

paper awards. He currently serves as Associate Editor of IEEE Trans-actions on Parallel and Distributed Systems, IEEE Transactions onEmerging Topics in Computing, and many other major journals. Hehas also been in organizing and technical committees of numerousinternational conferences. He is a senior member of the IEEE and theACM.

Yuhong Yan Dr. Yuhong Yan is an AssociateProfessor at the Department of Computer Sci-ence and Software Engineering at ConcordiaUniversity, Montreal, Canada since June 2008.Before joining Concordia, she was a ResearcherOfficer in the Institute for Information Technol-ogy (IIT) in the Canadian National ResearchCouncil’s (NRC) since Feb. 2003. Her currentresearch is in service computing. Service com-puting brings flexibility, interoperability, and com-poseability to software systems. Service com-

puting combining with mobile computing and cloud computing is going topave the new landscape of software engineering, pervasive computingand high performance computing.She has authored over 40 articles andpapers. She is one of the organizers of IEEE ICWS and SCC in recentyears. Her research is funded by NSERC Discovery Grant, NSERCEngage Grant, MITACS, Carnari, and multiple industrial companies.

2168-7161 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://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: DOI10.1109/TCC.2015.2491939, IEEE Transactions on Cloud Computing

15

Shui Yu (M’05-SM’12) received the B.Eng. andM.Eng. degrees from University of ElectronicScience and Technology of China, Chengdu, P.R. China, in 1993 and 1999, respectively, andthe Ph.D. degree from Deakin University, Victo-ria, Australia, in 2004. He is currently a SeniorLecturer with the School of Information Tech-nology, Deakin University, Victoria, Australia. Hehas published nearly 100 peer review papers,including top journals and top conferences, suchas IEEE TPDS, IEEE TIFS, IEEE TFS, IEEE

TMC, and IEEE INFOCOM. His research interests include networkingtheory, network security, and mathematical modeling.Dr. Yu actively servers his research communities in various roles,which include the editorial boards of IEEE Transactions on Parallel andDistributed Systems, IEEE Communications Surveys and Tutorials, andIEEE Access, IEEE INFOCOM TPC members 2012-2015, symposiumco-chairs of IEEE ICC 2014, IEEE ICNC 2013-2015, and many differentroles of international conference organizing committees. He is a seniormember of IEEE, and a member of AAAS.