Service Provisioning in Virtualization-based Cloud Computing ...

2 downloads 111300 Views 313KB Size Report
Cloud computing, and propose an exact algorithm for QoS- aware service ... compare the proposed algorithm against a variant of the best- known QoS routing ...
Globecom 2012 - Communications QoS, Reliability and Modelling Symposium

Service Provisioning in Virtualization-based Cloud Computing: Modeling and Optimization Jun Huang

Yanbing Liu

Qiang Duan

School of Commun. & Info. Eng. Chongqing Univ. of Posts and Telecom. Chongqing, China 400065 Email: [email protected]

School of Computer Science Chongqing Univ. of Posts and Telecom. Chongqing, China 400065 Email: [email protected]

Info. Sci. & Tech. Department The Pennsylvania State University Abington, Pennsylvania 19001 Email: [email protected]

Abstract—Cloud computing is an emerging computing paradigm that may change the way how information services are provisioned. Network virtualization plays a crucial role in a Cloud environment for abstracting and virtualizing various network infrastructures as services. Therefore virtual network services should be integrated with Cloud service to form the composite Cloud service. However, little research has focused on modeling and optimization of network virtualization in Cloud service provisioning to end users. In this paper, we model the Cloud service provisioning feature in virtualization-based Cloud computing, and propose an exact algorithm for QoSaware service composition to optimize user’s experiences for Cloud service access. Our theoretical analysis indicates that the proposed algorithm is light-weighted and cost-effective. We also compare the proposed algorithm against a variant of the bestknown QoS routing algorithm experimentally. The results show that the proposed algorithm has better performance both in execution time and finding solution. We believe that the modeling technique and the algorithm presented in this paper are general and effective, thus are applicable to practical Cloud computing systems.

I. I NTRODUCTION One of the most significant recent progress in the field of information technology is Cloud computing, which changes the way people do computing and manage information [1]. Cloud computing can be defined as a large scale distributed computing paradigm that is driven by economies of scale, in which a pool of abstracted, virtualized, dynamically-scalable computing functions and services are delivered on demand to external customers [2]. As a X-as-a-Service (XaaS) based computing model, the Cloud encapsulates all types of computing relevant resources as services. Users exploit these services allowing enterprises to save the expenses for purchasing computing/storage devices and hiring professionals to manage a computing center. In a Cloud computing environment, different types of network resources need to be virtualized as services that are integrated with Cloud service to form the composite Cloud service provided to end users. Network virtualization plays an important role to offer such a simple way. It separates network service provisioning functions from data transportation mechanisms; thus de-coupling network services from underlying network infrastructures [3]. In addition, network virtualization can significantly enhance the flexibility, diversity, and man-

ageability of network services so as to improve networking performance for meeting the requirements of Cloud computing. Thus, network virtualization is regarded as a dispensable ingredient for Cloud service provisioning. While network virtualization is vital to Cloud computing, the main challenges in Cloud computing lie in the modeling and optimization for Cloud service provisioning based on network virtualization. This is because users in Cloud computing always need composite Cloud services instead of standalone ones [4]. On the other hand, the network performance has a significant impact on Cloud service provisioning, and in many cases networks become a bottleneck that limits Clouds from supporting high-performance applications [5], [6]. Therefore, the modeling and optimization for service provisioning are the two significant problems to be resolved in Cloud computing, which are the main focuses of this paper. In order to provide Cloud service to end users, the Cloud computing infrastructure must be first abstracted through virtualization as a set of virtualized services, then the service components from these virtualized services need to be further composed as a Cloud service. However, existing researches do not really take the network performance in offering Cloud service into account, and few of them [4] employed network virtualization. On the other hand, composing appropriate service components into a Cloud service that meets multiple QoS requirements is a challenging optimization issue since such a problem can be basically addressed as Multi-Constraints Path problem (MCP), which is known to be NP-hard [7]. To handle this problem, much research progress has been made toward designing efficient algorithms recently. Xue et al. [8], [9] defined a different version of MCP and presented a set of approximation algorithms for each problem, which are known as the best among the aforementioned results. Huang and coauthors in [10] gave a heuristic for MultiConstrained Optimal Path (MCOP) selection, in which a nonlinear combination technique and a geographical version of a well-known process in solving Delay Constrained Least Cost (DCLC) were introduced. The results obtained in [10] show that the proposed heuristic can achieve a good trade-off between execution time and quality of the path, and it needs less time to compute a path compared with Xue’s algorithm in [8]. More recently, Huang and Tanaka [11] adopted a graph-

1728

extending technique and proposed a Fully Polynomial Time Approximation Scheme (FPTAS), which has been proved to be currently one of the fastest algorithms for MCOP. Other progress toward efficient QoS routing algorithm can be found from the surveys given in [12], [13], and [14]. The above mentioned works mainly address the problem from QoS routing perspective, which cannot be applied directly in virtualization-based Cloud computing for QoS guaranteed service composition. This is because network virtualization brings new challenges that a virtualized service network may actually span a great scale of heterogeneous networks with diverse network resources in different domains. In this paper, we investigate an optimization issue for Cloud service provisioning, that is, QoS-aware service composition upon network virtualization in Cloud computing. We make the following three major contributions. •





We present a system model to characterize Cloud service provisioning behavior with network virtualization technology. Through this model, we address the problem of QoS-aware service composition in Cloud computing as a variant form of MCOP. To the best of our knowledge, we are the first to model QoS-aware service composition on the basis of network virtualization in Cloud computing. We propose an exact algorithm to solve the QoS-aware service composition problem based on our presented model, and we analyze the theoretical properties of this proposed algorithm. The algorithm is shown to be lightweighted and cost-effective in composing services for optimizing Cloud service provisioning. We conduct thorough comparisons between our proposed algorithm and a modified version of the best-known QoS routing algorithm through numerical experiments. Our results show that the proposed modeling technique and presented algorithms are general and efficient; thus are applicable to practical Cloud computing systems.

The rest of this paper is organized as follows. Section II models the service provisioning behavior in virtualizationbased Cloud computing and formulates the QoS-aware service composition problem on the basis of the presented model. In Section III, we propose an exact algorithm to solve such problem and present theoretical analysis for the proposed algorithm. Section IV compares the performance of our algorithm against that of a variant best-known QoS routing algorithm experimentally. We conclude this paper in Section V. II. M ODELING FOR C LOUD S ERVICE P ROVISIONING In the virtualization-based Cloud computing environment, Cloud service provisioning consists of two key steps. First, the Cloud and network resources are abstracted as Cloud and network services that form a virtual service network. In this step, network virtualization provides an effective schema to enable resource abstraction. Second, the service provider composes service components from these abstracted services as Cloud services and provides such composed Cloud services to end users. In this section, we model above two steps systematically,

Service Provider

S1

S2

SH



Resource Provider 

I1

I2

Fig. 1.

IH

A virtualization-based Cloud computing paradigm.

and formulate the QoS-aware service composition problem based on this model. A. System Overview Since the network performance is usually neglected in Cloud service provisioning process, which cannot guarantee the experiences of Cloud end users. We argue that the Cloud services and network services should be integrated as a composite service for Cloud service provisioning. For this purpose, we present a virtualization-based Cloud service provisioning system. By following the same principle of network virtualization, our system constructs two planes, namely, the Cloud Resource Provider (RP) plane and the Cloud Service Provider (SP) plane from bottom to top, as shown in Fig. 1. An SP is able to access shares of Cloud resources from multiple RPs without knowing the implementation details of these resources. The SP leases or purchases resource from individual RPs via bilateral service contracts on the infrastructure services offered by the RPs. Likewise, network services are also created by network virtualization at the same time. Through such a Resource-as-aservice paradigm, networking capabilities offered by different RPs can be encapsulated into a set of virtualized services. Fig. 1 shows a virtualization-based Cloud computing system constructed on top of H network infrastructures, denoted as Ii , i = 1, 2, · · · , H. The infrastructure service provided by the i-th InP Ii is virtualized as the service Si . •‡”‡“—‡•–

(QG8VHU Ž‘—†‡”˜‹…‡ ”‘˜‹•‹‘‹‰

Fig. 2.

&RPSRVHG &ORXG6HUYLFH

A Cloud service provisioning system.

By abstracting the underlying resources as a set of services, the service components from these services can be synthesized to form the composite Cloud services. From an user’s perspective, when a request is posted to the Cloud, appropriate composed service should be delivered as fast as possible and meet specific QoS requirements. Within the Cloud, the provisioning system receives a request, provides the composed services and delivers it back to users. Fig. 2 shows a Cloud service provisioning system. In this system, when a user’s service request arrives at the service entrance

1729

Algorithm 1 EXACT Input: Graph: G(V, E, w, W, c, C); Output: Path set: Pareto minimum path set M P ; 1: To each vertex v ∈ Sh , prune v and its connected edges if cv < Ch , 1 ≤ h ≤ H; 2: for k = 1 to K do 3: Apply Dijkstra to calculate the shortest path pL k accordE); ing to weight wk (e) on each edge  in G(V,  wi (pL k) 4: if Wk < wk (pL > 1 then k ) or max 1≤i≤K Wi

End User User Request

S0

‡”˜‹…‡ –”ƒ…‡ ‘”–ƒŽ

Cloud Service Provisioning

S1

S2

SH

S11

S21

SH 1

S12

S22

  

  

S 1l1

S 2l2



SH 2

   S HlH

Sl

‡”˜‹…‡ š‹– ‘”–ƒŽ

i=k

Composed Cloud Service Fig. 3.

return Invalid request, Exit; end if end for K k (e) Compute a new weight wM (e) = k=1 wW for each k edge e ∈ E; 9: Apply κ-shortest paths algorithm in terms of wM (e) on each edge to find the first κ paths pM j , 1 ≤ j ≤ κ from source to destination, M P ← {pM |1 ≤ j ≤ κ}; j 10: To all paths in M P , remove the path which is dominated by any other; 11: return M P ; 5: 6: 7: 8:

Modeling for Cloud service provisioning.

portal, the service composition procedure is invoked: a series of service components, which come from the abstracted services, are combined appropriately to form a composed Cloud service (path). Through service composition, the Cloud service provisioning can be eventually realized for end users. Fig. 3 characterizes this service composition process, in which a path S0 → S11 → S22 → · · · → SHlH → Sl with red color is a composed Cloud service provided to end users. Note that a crucial concern in this process is the technique for service composition, which both influences the service experience of users and the system load of the Cloud. Therefore, the main optimization focus for Cloud service provisioning is how to compose a sequence of service components from virtualized services into the Cloud service and provide it to end users. Based on the above Cloud service provisioning system, we address the problem of QoS-aware service composition as follows. B. Problem Formulation A service network formed by interconnecting service components can be modeled as a directed graph G(V, E) with n vertices and m edges. Each vertex (for example v) is associated with a capacity weight c (cv for vertex v) denoting its serving capability in service Sh , 1 ≤ h ≤ H, and each edge e ∈ E is associated with K weights w = (w1 , w2 , · · · , wK ) representing QoS parameters. Let Req = {C, W } be a user request, where C = (C1 , C2 , · · · , CH ) denotes the requirements on computing capacities of H virtualized services, i.e., the constraints on the vertices, W = (W1 , W2 , · · · , WK ) denotes the K QoS end-to-end constraints on paths. Let p in the service network be a series of tandem services. Definition 1: Feasible Service Composition. A composed service, i.e., a path p in the service network, is said to be feasible if for ∀v ∈ p there is cv ≥ Ch where v ∈ Sh , 1 ≤ h ≤ H, and wk (p) ≤ Wk for all 1 ≤ k ≤ K. Denote {pf } as all feasible service compositions in G(V, E), to each pfi ∈ {pf }, there exists a smallest value

ηi ∈ (0, 1] such that wk (pfi ) ≤ ηi · Wk , 1 ≤ k ≤ K, and for ∀v ∈ pf such that cv ≥ Ch , 1 ≤ h ≤ H respectively. Problem 1: QoS-aware Service Composition (QSC). QSC is to find an optimal composition of services popt among feasible service compositions in G(V, E) and the corresponding smallest value η opt among all ηi such that wk (popt ) ≤ η opt ·Wk , k ∈ [1, K] where K ≥ 2. Theorem 1: QSC problem is NP-hard. Proof: Since the constraint on vertex can be satisfied beforehand by pruning the topology in advance, QSC maps directly to the special case of MultiConstrained Optimal Path (MCOP), thus QSC is NP-hard. III. A N E XACT A LGORITHM FOR QSC A. Algorithm Description In order to optimize the Cloud service provisioning, in this paper we present an exact algorithm to resolve QSC. The proposed algorithm named EXACT is shown in Algorithm 1, which involves five steps. The first step (line 1 in Algorithm 1) prunes the topology according to the constraints on the vertex. This is a required step because cv denotes the serving capability of a vertex cv ∈ Sh in the service network and cv < Ch means such a node cannot meet the service requirement; therefore should be eliminated in the initial stage. In addition to this, the notation G(V, E) is still used here to denote the pruned topology. In the second step (from line 2 to line 7), the invalid request is blocked according to the end-to-end constraints on the path. If the constraints imposed by an user are so rigid that the network resources cannot be satisfied, this set of constraints

1730

would be treated as an invalid request, and it should be blocked in advance. Though blocking the invalid requests in the first step, the weights on each edge can beaggregated by a linear K k (e) for each edge combination manner, i.e. wM (e) = k=1 wW k e ∈ E, in the third step (line 8) of Algorithm 1. In the fourth step (line 9), an existing κ-shortest paths algorithm is applied in terms of new weight wM (e) on each edge to find first κ shortest paths from source (service entrance portal) to destination (service exit portal). The obtained κ shortest paths form the M P initially. The fifth step examines M P generated from the fourth step, and eliminates the path which is dominated by any other. That is, if there is a path pM j in M P such that each weight of it (for example delay), is inferior (equal or greater) than that of any other path in M P , then pM j should be removed from M P . On the basis of above five steps, the Pareto minimum paths set can be eventually obtained. Particularly, it is worthwhile to notice that we exploit linear combination instead of nonlinear combination [15] to aggregate the weights on each edge for path calculation in the third step. This is because the invalid requests have been filtered in the first step, which makes the shortest path calculated by the new weight feasible. On the other hand, although the nonlinear combination of the edge weights would also not violate the constraints (see Fig. 2 in [15]), the linear form follows the principle of optimality while the nonlinear does not, that is, the linear combination shares the same feature with κ-shortest paths algorithm. Therefore, we prefer linear way to combine the weights for path calculation in the proposed algorithm. Now we are ready to analyze the theoretical properties of proposed algorithm. B. Analysis on EXACT Theorem 2: Algorithm EXACT produces the Pareto minimum paths set M P within O((K + κ) · (m + n log n)) time. Proof: The first step of EXACT from line 1 to line 6 takes O(K · (m + n log n)) time to block the invalid requests. The second step prunes the topology that spends O(n + m) time. Computing new weight for each in the third step takes O(K ·m) time, and in the fourth step, a best-known κ-shortest paths algorithm [16] spends O(κ · (m + n log n)) time. The fifth step of the algorithm takes O(K · κ) time. Therefore, the time complexity of EXACT is O((K + κ) · (m + n log n)). Theorem 2 indicates that our proposed algorithm is lightweighted and cost-effective for composing services to optimize the Cloud service provisioning. However, to the case of κ = 1, algorithm EXACT is essentially a K-approximation algorithm for QSC. The following theorem gives the detailed analysis for EXACT when κ = 1. Theorem 3: EXACT finds a K-approximation to QSC opt · Wk , 1 ≤ k ≤ K. when κ = 1, i.e. wk (pM 1 )≤K ·η Proof: See Proof of Theorem 2 in [17] Though EXACT finds a set of “coarse-resolution” paths, it can generate a Pareto set. Next we prove that M P generated by the proposed algorithm is a Pareto minimum paths set.

determined by EXACT is a Pareto Lemma 1: Path pM 1 minimum path. Proof: Let us suppose there exists a path p∗ that dominates pM 1 , then wk (p∗ ) ≤ wk (pM 1 ), 1 ≤ k ≤ K

(1)

This can be rewritten as K k=1

wk (p∗ ) K wk (pM 1 ) ≤ k=1 Wk Wk

(2)

i.e. wM (p∗ ) ≤ wM (pM 1 )

(3)

is a shortest path This contradicts with the fact that pM 1 is a Pareto minimum calculated by new weight. Therefore, pM 1 path. Theorem 4: The set M P generated by the proposed algorithm is the Pareto minimum paths set. / M P dominates a path pM Proof: Suppose p∗ ∈ j in M P , M ∗ we can prove that w (p ) ≤ wM (pM ) by following the same j reasoning with Lemma 1. This contradicts with the fact that / M P , therefore, Theorem 4 holds. p∗ ∈ Theorem 4 indicates that our proposed algorithm can generate a Pareto minimum paths set, which resolves QSC exactly. In addition, we notice that if κ is set to be a larger enough value, the complete Pareto set can be eventually obtained by algorithm EXACT. IV. N UMERICAL E XPERIMENTS To validate the efficiency of proposed algorithm, we compared the performance of EXACT against that of a variant form of FPTAS through numerical experiments. As we known, FPTAS [11] is the currently best-known algorithm for MultiConstrained Optimal Path (MCOP) problem, in addition to this, QSC maps to a special case of MCOP directly when the topology is pruned in advance to satisfy the nodes’ constraints. Therefore, FPTAS with minor modification can be applied for resolving QSC. The modification detail of FPTAS in solving QSC is skipped here since it is quite intuitive and simple. Still, we used its original name FPTAS to denote its variant form here for comparison. In the experiments, we generated a set of random networks with node numbers ranged from 20 to 200. Each link in the generated networks has three QoS parameters and they are uniformly distributed. Fig. 4 shows an example of the generated network, in which there are 14 nodes and the number of virtualized service H is equal to 4. In order to evaluate the performance under different parameter configurations, we set H ∈ {5, 10} for all randomly generated networks, κ ∈ {1, 2, 3} for EXACT, and  ∈ {0.1, 0.5, 1.0} for FPTAS. And we assume that the requests are always feasible. The reported results were obtained by running both algorithms twenty times independently, and all of the experiments were conducted on IBM P4 2.6GHz with 2G memory space and Linux system.

1731

S1

S2

S3

S4

270

0.40 H=5 H=10

0.35

210 180

0.25

AET (ms)

AET (ms)

9KX\OIK +O^Z 6UXZGR

9KX\OIK +TZXGTIK 6UXZGR

0.20 0.15 0.10

150 120 90 60

0.05 0.00

H=5 H=10

240

0.30

30 20

40

60

80 100 120 140 160 180 200

0

20

40

60

Fig. 4.

Fig. 5.

An example of generated network.

80 100 120 140 160 180 200

Network Size

Network Size

AET comparison with different H.

The performance metrics used in the rest of this section for evaluating EXACT and FPTAS are defined as follows. Definition 2: Average Execution Time (AET ). AET indicates the average running time of an algorithm by its twenty independent runs. This metric is used for evaluating time cost performance of an algorithm, which reflects the time that a user has to wait before receiving the response from Cloud. Definition 3: Path Weights Distance (P W D). P W D denotes the distance between the weights of a path returned by the algorithm and path constraints; that is, for a path p returned by an algorithm  K

2  Wk  P W D(p) = −1 wk (p) k=1

Table I gives the P W D comparison of both algorithms with different H settings. Since our proposed algorithm EXACT would generate two candidate solutions, we took a smaller value for comparison, i.e., P W D = M min{P W D(pM 1 ), P W D(p2 )} for EXACT. The results presented in the table show that both algorithms find smaller P W D with smaller H. This is because weights on each edge are uniformly distributed in the given intervals, and more importantly, the hop counts of obtained paths decrease when H becomes smaller. We can also see from this table that P W D of EXACT is better than that of FPTAS except for the cases of 20 nodes with H = 5 and 140 nodes with H = 5/H = 10. In other words, EXACT can find a better path than FPTAS in most cases. Based on the results shown in Fig. 5 and Table I, we say that the proposed EXACT outperforms FPTAS under the parameter configurations of κ = 2 and  = 0.5.

This metric reflects the QoS that can be guaranteed by the service composition to end users.

TABLE I P W D COMPARISON WITH DIFFERENT H .

A. Performance Metric

B. Experimental Results

EXACT

To compare the performance of both algorithms, our experiments were conducted in two ways. First, we tested the impact of parameter H variation on algorithms’ performance by setting constant κ and  for EXACT and FPTAS, respectively. Second, we examined the performance of both algorithms with different parameters settings. In the first set of experiments, we set κ = 2 for EXACT, and  = 0.5 for FPTAS, and compared AET and P W D of two algorithms when parameter H = 5 and H = 10 respectively. Fig. 5 shows the comparative results about AET (in millisecond) of both algorithms with different H, where the left subfigure is the AET of EXACT, the right one is the AET of FPTAS. From this figure we can see that the AET of two algorithms are almost unaffected by the parameter H, which follows our previous theoretical analysis that the time complexity of both algorithms are independent of H. In addition to this, we observed that EXACT runs much faster than FPTAS. As shown in the figure, the AET of EXACT is close to a linear function of network size, while AET of FPTAS is almost an exponential function of network size. Particularly, to the case of network with 200 nodes, the EXACT runs more than 600 times faster than FPTAS. Therefore, our proposed algorithm is better than FPTAS in terms of running time.

FPTAS

Nodes

H=5

H = 10

H=5

H = 10

20 40 60 80 100 120 140 160 180 200

0.304 0.281 0.199 0.149 0.153 0.179 0.372 0.263 0.151 0.226

0.338 0.402 0.253 0.289 0.289 0.319 0.487 0.318 0.286 0.331

0.299 0.344 0.294 0.328 0.377 0.279 0.293 0.303 0.415 0.411

0.401 0.473 0.346 0.396 0.428 0.322 0.305 0.366 0.417 0.462

In the second set of experiments, we set H = 10 and tested the impact of variation in κ and  on the performance of both algorithms, which are measured by AET and P W D. Fig. 6 gives the comparative results of AET with different κ and  values for EXACT and FPTAS respectively, in which the left subfigure is the AET of EXACT, the right one is the AET of FPTAS. It can be seen from this figure that AET of EXACT increases approximately in a linear manner when κ increases, which conforms to the theoretical analysis in Theorem 2. On the other hand AET of FPTAS tends to increase with  exponentially. This figure also shows that EXACT runs much faster than FPTAS even for the case of EXACT with κ = 3 and FPTAS with  = 1.0. This means that EXACT has better time performance than FPTAS.

1732

0.5 0.4

 =2

300

 =3

250

0.3

AET (ms)

AET (ms)

350

 =1

0.2 0.1 0.0

TABLE II P W D COMPARISON WITH DIFFERENT κ AND .

 =1.0  =0.5  =0.1

EXACT

200 150 100 50

0

20

40

60

80 100 120 140 160 180 200

0

0

20

40

Network Size

Fig. 6.

60

80 100 120 140 160 180 200

Network Size

AET comparison with different κ and .

The comparative results about P W D of both algorithms are shown in Table II. Again, we took the smallest P W D for EXACT’s results presentation, that is P W D = min1≤j≤κ {P W D(pM j )}. Observations on κ = 1 and  = 1.0 data show that EXACT can find a better path than FPTAS; that is, in this case EXACT is superior to FPTAS in both running time and finding path. In addition, we can see from this table that P W Ds of EXACT are smaller than those of FPTAS when κ = 3 and  = 0.5, but they are greater than those of FPTAS when κ = 3 and  = 0.1. It means that the P W D of EXACT tends to decrease with κ increasing. Although P W Ds of EXACT with κ = 3 setting are little worse than that of FPTAS with  = 0.1, EXACT takes much less time than FPTAS. One can expect that EXACT could find a better path than FPTAS with increasing of κ while taking less amount of running time. Therefore, our proposed algorithm has better performance than FPTAS both in AET and P W D. V. C ONCLUSION In this paper, we addressed the modeling and optimization issues for service provisioning in virtualization-based Cloud computing. A system model was first given to characterize the service provisioning behavior in Cloud computing, and then an exact algorithm for QoS-aware service composition was presented to optimize user’s experiences for accessing Cloud services. Theoretical analysis on the proposed algorithm showed that it is light-weighted and cost-effective. We compared the proposed algorithm with a variant form of the bestknown QoS routing algorithm by thorough experiments, the results showed that our algorithm has better performance both in running time and finding solution. The modeling technique and the algorithm are general and effective, thus are applicable to practical Cloud computing systems. ACKNOWLEDGEMENT This work was partially supported by program for NCET and the following grants: National Science Foundation of China (Grant No.60973160), National 973 Foundation (Grant No. 2010CB334710, 2012CB315803), Natural Science Foundation of Chongqing (Grant No. CSTC.2012JJB40008), R&D Foundation of Chongqing (Grant No. KJZH10206) and Open Project of Key Lab of Information Network Security of Administration of Public Security (Grant No. C11609).

FPTAS

Nodes

κ=1

κ=2

κ=3

 = 0.1

 = 0.5

 = 1.0

20 40 60 80 100 120 140 160 180 200

0.410 0.438 0.253 0.350 0.396 0.291 0.577 0.318 0.302 0.356

0.338 0.402 0.253 0.289 0.289 0.319 0.487 0.318 0.286 0.331

0.313 0.365 0.223 0.225 0.274 0.193 0.255 0.272 0.239 0.293

0.309 0.278 0.139 0.195 0.274 0.111 0.305 0.246 0.239 0.218

0.401 0.473 0.346 0.396 0.428 0.322 0.305 0.366 0.417 0.462

0.809 0.728 0.564 0.627 0.778 0.650 0.836 0.820 0.723 0.621

R EFERENCES [1] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, 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, Apr. 2010. [2] I. Foster, Y. Zhao, I. Raicu, and S. Lu, “Cloud Computing and Grid Computing 360-Degree Compared,” in Proc. of GCE’08, pp. 1–10, Nov. 2008. [3] N. M. Mosharaf Kabir Chowdhury and R. Boutaba, “A Survey of Network Virtualization,” Computer Networks, vol. 54, no. 5, pp. 862–876, Apr. 2010. [4] Q. Duan, “Modeling and Performance Analysis on Network Virtualization for Composite Network-Cloud Service Provisioning,” in Proc. of SERVICES 2011, pp. 548–555, July 2011. [5] K. R. Jackson, K. Muriki, S. Canon, S. Cholia, and J. Shalf, “Performance analysis of high performance computing applications on the Amazon web services Cloud,” in Proc. of CLOUDCOM 2010, pp. 159–168, Nov. 2010. [6] G. Wang and T. S. E. Ng, “The impact of virtualization on network performance of Amazon EC2 data center,” in Proc. of INFOCOM 2010, pp. 1–9, Mar. 2010. [7] Z. Wang and J. Crowcroft, “Quality-of-service routing for supporting multimedia applications,” IEEE J. Sel. Areas. Commun., vol. 14, no. 7, pp. 1228–1234, Sept. 1996. [8] G. Xue, A. Sen, W. Zhang, J. Tang and K. Thulasiraman, “Finding a path subject to many additive QoS constraints,” IEEE/ACM Trans. Netw., vol. 15, no. 1, pp. 201-211, Feb. 2007. [9] G. Xue, W. Zhang, J. Tang and K. Thulasiraman, “Polynomial time approximation algorithms for multi-constrained QoS routing,” IEEE/ACM Trans. Netw., vol. 16, no. 3, pp. 656-669, Jun. 2008. [10] J. Huang, X. Huang, and Y. Ma, “An Effective Approximation Scheme for Multiconstrained Quality-of-Service Routing,” in Proc. IEEE GLOBECOM 2010, Miami, Florida, pp. 1–6, Dec. 2010. [11] J. Huang and Y. Tanaka, “QoS Routing Algorithms Using Fully Polynomial Time Approximation Scheme,” in Proc. ACM/IEEE IWQoS 2011, San Jose, California, pp. 1–3, Jun. 2011. [12] F. A. Kuipers, P.V. Mieghem, T. Korkmaz and M. Krunz, “An Overview of Constraint-Based Path Selection Algorithms for QoS Routing,” IEEE Com. Mag., vol. 40, no. 12, pp. 50–55, Dec. 2002. [13] Z. Tarapata, “Selected multicriteria shortest path problems: an analysis of complexity, models and adaptation of standard algorithms,” Int. J. Applied Math. and Comp. Sci., vol. 17, no. 2, pp. 269–287, July 2007. [14] R. G. Garroppo, S. Giordano and L. Tavanti, “A survey on multiconstrained optimal path computation: Exact and approximate algorithms,” Compt. Netw., vol. 54, no. 17, pp. 3081–3107, Dec. 2010. [15] P. V. Mieghem and F. A. Kuipers, “Concepts of Exact QoS Routing Algorithms,” IEEE/ACM Trans. Netw., vol. 12, no. 5, pp. 851–864, Oct. 2004. [16] J. Hershberger, M. Maxel and S. Suri, “Finding the k Shortest Simple Paths: A New Algorithm and Its Implementation,” ACM Trans. Algorithms, vol. 3, no. 4, pp. 851–864, Nov. 2007. [17] J. Huang, C. Xu, Q. Duan, Y. Ma and G.-M. Muntean, “Novel End-toEnd Quality of Service Provisioning Algorithms for Multimedia Services in Virtualization-based Future Internet,” IEEE Trans. on Broadcasting, accepted 2012.

1733