Cloud Networking: An Overview of Virtual Network Embedding Strategies Ilhem Fajjari∗ , Nadjib Aitsaadi‡ and Guy Pujolle†
‡ LiSSi
∗ VIRTUOR:
4 Residence de Galande, 92320 Chatillon, France - University of Paris EST Creteil (UPEC): 122, rue Paul Armangot, 94400 Vitry Sur Seine, France † LIP6 – UPMC, Sorbonne Universities: 4, Place Jussieu, 75005 Paris, France
[email protected],
[email protected],
[email protected]
Abstract—This paper is an overview of virtual network embedding strategies within cloud infrastructure backbone networks. We will first of all summarise and define the main principles of cloud computing and its different supplied services. Then, we will describe the cloud infrastructure architecture, named the Totally Virtualized Cloud Infrastructure (TVCI), which makes use of virtualization in all the cloud’s equipment (i.e., backbone and data centers). Afterwards, we will describe, analyse, and compare the main virtual network mapping algorithms for cloud infrastructure networks found in existing literature. We will evaluate the above strategies in terms of: i) virtual network request reject rate, ii) embedding cost of virtual network request, iii) embedding revenue of virtual network request and iv) average usage rate of physical resources. Index Terms—Cloud networking, IaaS, Network virtualization, Embedding problem.
where an application is installed in the provider’s infrastructure (i.e., data centers). The second group, Platform as a Service (PaaS), supplies the developers with a software platform (e.g., programming-language-level, APIs, etc.). Finally, the third group, Infrastructure as a Service (IaaS), provides computational physical resources to cloud users, such as processing capacity, storage and routers. In this respect, customers are free to install and manage their own software stack (operating system, application, routing protocol, etc.) as super-users. It is worth noting that IaaS can be supplied thanks to virtualization technologies (OS virtualization, para-virtualization and hardware-assisted virtualization), which guarantee isolation between virtual instances sharing the same physical resources.
I. I NTRODUCTION Cloud computing is new paradigm that provides an enduser with utility computing via the Internet using a Web browser. In existing literature, we have found more than twenty definitions of cloud computing [1]. We believe that the definition proposed by the National Institute of Standards and Technology (NIST) in [2] is the most pertinent: “Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction”. Cloud computing consists of combination of three concepts: i) cluster computing, ii) grid computing and iii) virtualization. Cluster computing is defined in [3] as: “a type of parallel and distributed system, which consists of a collection of interconnected stand-alone computers working together as a single integrated computing resource”. Moreover, grid computing is defined in [4] as: “a type of parallel and distributed system that enables the sharing, selection, and aggregation of geographically distributed autonomous resources dynamically at runtime depending on their availability, capability, performance, cost, and users’ quality of service requirements”. Cloud computing looks like a grid computing in which each geographical node is a data center (i.e., home computer system) [5]. All the geographically distributed data centers are interconnected via the provider’s substrate backbone network [6]. It is worth noting that virtualization is available within data centers and the backbone network. Therefore, thanks to virtualization, many simultaneous and independent services can be delivered. In fact, all the resources (physical and software) can be virtualized. As described in [7], a cloud can deliver many services that can be classified in three main groups. The first group, Software as a Service (SaaS), is a model of software deployment
In this paper, we will describe the cloud infrastructure architecture called the Totally Virtualized Cloud Infrastructure (TVCI) [8]. It is based on a VICTOR architecture [9] that does not use a virtualization technology in the backbone network. Then, we will give an overview of the related virtual network embedding strategies within a cloud offering IaaS. In fact, the customer formulates a virtual network backbone request which interconnects all its geographically distributed data centers. Moreover, the customer also determines the quality of service of a virtual network in terms of i) the routers’ processing power, ii) the routers’ memory and iii) the links’ bandwidth. In this regard, the cloud provider’s main objective is to lease the maximum number of virtual networks while ensuring QoS, in order to maximise revenue. Note that an embedding strategy has to map i) each virtual router in a substrate router and ii) each virtual link between two virtual routers in a substrate path between the substrate nodes hosting the virtual link’s extremity nodes. The problem we are investigating is NP-hard and, to the best of our knowledge, few mapping strategies have been proposed in existing literature [10]–[14]. In this research paper, we will describe and compare the virtual network strategies already found in literature. To do so, we implemented the strategies and used extensive simulations to gauge and evaluate each one’s performance in terms of request reject rate, request revenue and request cost. This paper is organised as follows. In the next Section we will explain the architecture, TVCI. In Section III, we will formulate the virtual network embedding problem within a cloud supplying IaaS. Then, in Section IV, we will describe the main related mapping strategies. In Section V, we will analyse the performance of related mapping algorithms based on extensive simulations. Finally, in Section VI, we will conclude the paper and outline the main challenges for future research.
978-1-4799-2969-6/13/$31.00 ©2013 IEEE
Fig. 1.
Totally Virtualized Cloud Infrastructure (TVCI) Architecture
II. T OTALLY V IRTUALIZED C LOUD I NFRASTRUCTURE (TVCI) A RCHITECTURE As illustrated in Fig. 1, the TVCI [8] consists of a set of geographically distributed data centers interconnected with a Substrate backbone Network SN . The latter is formed by a set of geographically distributed routers, interconnected with wired connections (e.g., fibre optic). In fact, the SN contains two types of routers: i) access and ii) core. It is worth noting that each data center is attached to only one access router, through which it can communicate with core routers. Thanks to virtualization technology, many independent applications can be hosted in data centers (i.e., SaaS). Moreover, an application can be deployed in many geographical sites and makes use of a Virtual Network VN , mapped in the SN , to link all the geographical sites (i.e., IaaS). In this respect, an end-user can install any routing protocol within the allocated VN and be responsible for network administration. In other words, since virtualization technology offers isolation, an end-user can only manage their VN (i.e., instance) and cannot deteriorate the rest of the VN s hosted in the SN . The TVCI contains one or more Centralised Controllers (CC), as depicted in Fig. 1, in the aim of managing the cloud by i) monitoring the cloud infrastructure, ii) embedding applications in data centers, iii) mapping a virtual network in the substrate backbone network, etc. The architecture, TVCI, is an improved version of the VICTOR architecture proposed in [9]. Indeed, in VICTOR, the backbone network consists of a set of Forwarding Elements (FE). Their role is limited to the simple forwarding of data according to the forwarding tables established and downloaded
from Centralised Controllers (CC). It is worth noting that FEs do not implement any control plane or routing functions. VICTOR is confronted with a scalability problem since centralised controllers manage all the flows in the backbone network. In addition, VICTOR does not take advantage of virtualization technology within the Substrate Network. For this reason, and in order to get around the VICTOR’s disadvantages, we proposed TVCI. As it uses virtualization, many independent VN instances can be deployed at the same time in the SN . III. F ORMULATION OF THE V IRTUAL N ETWORK E MBEDDING P ROBLEM In this section, we will formulate the Virtual Network (VN ) embedding problem within the cloud’s Substrate backbone Network (SN ). Indeed, the SN is modelled as an undirected graph denoted by G s (N s , E s ), where N s and E s are the sets of physical nodes and their connected links respectively. Each physical router, nsi ∈ N s , is characterised by its i) residual processing power, ii) residual memory, iii) type: access or core, and iv) geographic location. Likewise, each physical link, esx ∈ E s , is typified by its available residual bandwidth. Similarly, the VN request is modelled as an undirected graph, denoted by G v (N v , E v ), where N v and E v are the sets of virtual nodes and their virtual links respectively. Within the VN request, each virtual node, nvi ∈ N v , is associated with the required processing power, memory, type, and geographic location if it is an access router. Moreover, each virtual link, evx ∈ E v , requests a quota of bandwidth. It is worth noting that all the physical resources (i.e., bandwidth, processing power, memory) in G s are limited. In fact, G s is not able to host an infinite number of VN requests.
Consequently, an intelligent and judicious mapping of the VN in G s is necessary in order to maximise the acceptance rate and the substrate provider’s profits. Node mapping is constrained so that for each VN request, G v , two virtual nodes cannot be assigned to the same substrate node. In addition, each virtual node must be assigned to only one physical node. The virtual node, nvi , can be mapped in the substrate node, nsj , if the available residual resources (i.e., power processing and memory) are at least equal to those required. Besides, if nvi is an access router then it can only be embedded in substrate access routers located within a predefined geographic area. Each virtual link, evx between nvi and nvj , is assigned to an unsplittable substrate path, denoted by Pevx , between nsi and nsj . Note that Pevx is a set of substrate links. Moreover, the available residual bandwidth of all the physical links in Pevx must be at least equal to the request bandwidth. In fact, SN s mainly make use of shortest-path-based routing protocols such as Open Shortest Path First (OSPF). Indeed, to employ sophisticated splittable routing algorithms, IP routers that are already deployed must be upgraded. However, this would significantly increase capital expenditure. The objective is to generate, for each VN request, the best possible mapping while also minimising the embedding cost in terms of allocated resources in the SN . Note that for a specific VN request, no matter what the mapping, the resources allocated by the virtual nodes are identical. However, assigned resources for the virtual links depend on the substrate path length. As described above, the embedding problem can be formulated as a binary combinatorial optimisation problem. It has been proved to be NP-hard [15], [16].In the next section, we will outline the related VN embedding algorithms found in existing literature. IV. R ELATED V IRTUAL N ETWORK E MBEDDING S TRATEGIES Few research papers have studied the VN embedding problem. It is worth noting that the problem studied in this paper is partially similar to resources provisioning problem in overlay networks [17] and MPLS [18]. However, the latter networks do not consider the mapping of nodes (i.e., sources and destinations are fixed). Indeed, only bandwidth allocation problem is tackled. In the following, we will outline the main proposals found in existing literature of VN embedding problem. In [10], the authors propose three virtual network assignment algorithms: VNE-Least, VNE-Cluster and VNE-Subdividing. The notion of stress is defined to evaluate the load of substrate resources. The stress of substrate node quantifies the number of virtual nodes mapped upon it and similarly the stress of substrate link quantifies the number of virtual links whose substrate path passes through the substrate link. The first method, VNE-Least, treats virtual routers and links mapping separately. Thus, substrate and virtual routers are sorted respectively according to their stress and degree of connectivity. Then, VNE-Least assigns the virtual router with the highest degree of connectivity to the least stressed substrate router recursively until all the virtual routers are embedded. Thereafter, VNE-Least makes use of the shortest distance algorithm to connect the mapped virtual routers. On the other hand, VNE-Cluster and VNE-Subdividing algorithms take into account the substrate link load when selecting substrate routers. To do so, the authors associate a new metric N R, for each substrate router, capturing both its stress and the ones of its
directly connected links. Afterwards, the substrate and virtual routers are respectively sorted according to the new defined metric and the connectivity degree. Besides, a new path distance is defined based on the substrate link stress. VNE-Cluster consists in three steps: i) cluster center localisation, ii) substrate node selection, and iii) substrate path selection. During the first step, the algorithm selects, based on N R, the center of the cluster. Afterward, substrate nodes of the cluster are selected according to their potential which quantifies both their distance to the center and their load. Finally, selected substrate nodes are connected based on the predefined path metric. The final proposal, VNE-Subdividing, splits the virtual network request into star topologies so as not to deal with the request as one whole unit. Next, the stars are mapped sequentially using VNE-Cluster. Unfortunately, the authors assume that physical resources are unlimited in the substrate network which is not realistic. Thus, the virtual network request reject rate is not evaluated. In [11], the authors proposed VNE-Greedy virtual network embedding algorithm. To do so, first the substrate and virtual routers are sorted according to the available and requested resources respectively. Then, the virtual router with the highest resource request is assigned to the substrate router containing the largest available resource metric value recursively until all the virtual routers are mapped. Next, the routers are connected using the K-shortest paths algorithm. VNE-Greedy’s main limitation is the approach to embedding virtual links. Indeed, the shortest path algorithm does not consider the congested SN links, which implies an increase of hot-spots in the SN and an increase in request reject rate. Moreover, the mapping of virtual routers and links is not coordinated. The authors of [12] model the VN as a directed graph with two types of routers: edge and core. The required VN resources are defined in terms of the expected traffic, which is expressed as an upper limit on allowed traffic between all edge router pairs. The authors’ objective is to calculate the minimum request bandwidth for the VN according to the edge routers’ upper limit of traffic. Nonetheless, the weakness in the proposal lies in the lack of consideration of SN capacities (i.e., unlimited) and the use of static routing tables in the network. In addition, the proposal requires the star VN topology, which is strongly binding. In [13], [19], the authors propound two VN embedding algorithms, named Deterministic-ViNE and Randomized-ViNE. In this approach the substrate graph is augmented with meta-routers and meta-edges to form a meta-graph. Each meta-router corresponds to one virtual router and each metaedge corresponds to a link between a meta-router and the substrate routers located in its required geographic area. Note that each virtual router is associated with a specified region where it could be hosted. Nevertheless, it is not realistic to expect end-users to specify the locations of all virtual routers. In fact, only the locations of edge routers can be fixed. The main limitations here is the routers’ location constraints of core routers and the convergence time needed. Indeed, when the locations are not defined, D-ViNE and R-ViNE connect each meta-node to all physical routers within the substrate network. Hence, the runtime would increase exponentially with respect to the size of the substrate network. Note that D-ViNE and R-ViNE need to solve linear programming problems for each VN request with a standard solver. In [1], the authors propose a backtracking embedding algo-
rithm based on sub-graph isomorphism detection, where virtual routers and links are mapped during the same stage. This algorithm uses backtracking in order to optimise resources utilisation. When a bad mapping decision is detected it can be revised by simply backtracking to the last valid mapping. Indeed, the idea behind the proposal is to reduce the NPcomplete subgraph isomorphism detection problem to virtual network embedding problem by assigning a single delay constraints to 1 for each physical and virtual link. Note that in graph theory, two graphs G and H are isomorphic when two nodes u and v of G are adjacent if and only if f (u) and f (v) are adjacent in H. Having two graphs G and H as input, subgraph isomorphism detection problem determines whether G contains a subgraph that is isomorphic to H. The main limit of the proposal is the mapping delay (i.e., convergence time) as also detailed in [4]. Indeed, in large scale mapping the proposal needs a large duration to embed the virtual network. This deeply deteriorates the response time for end-users. In [20], the authors propose a distributed algorithm for VN mapping and SN load balancing. This algorithm relies on the multi-agent approach. A communication protocol is proposed to enable communication between agent-based substrate routers. Obtained results show some limitations in terms of scalability due to the high number of exchanged messages. In [21], [22], the authors establish Mixed Integer Problem and Integer Linear Programming formulations for unsplittable and splittable path problems. Then, an approach based on particle swarm optimisation (PSO) has been proposed to solve the virtual network embedding problem. It is worth noting that PSO is a population-based stochastic global optimiser that can generate better optimal solution in lesser computing time with stable convergence. The main idea of the algorithm is to define potential virtual networks embedding solutions as particles. Then, the position of each particle is improved thanks to a predefined fitness metric. Finally, the optimal virtual network embedding solution is obtained by iterating the evolution process of particles. Unfortunately, we notice that the proposal does not coordinate the mapping of virtual routers and virtual links. In [23], VN embedding problem is extended to the multiple domains case. The problem is formulated and solved as a mixedinteger programming techniques. Moreover, exact and heuristic algorithms are proposed to expand VN embedding problem to multiple cloud provider. In [4], a new Virtual Data Center (VDC) embedding strategy is proposed. The authors develop a centralised allocation algorithm for bandwidth guaranteed virtual to physical mapping. The services offered are divided to three types according to the bandwidth allocation constraints. The proposed Virtual Data Center strategy is based on i) min-cost flow for virtual server embedding and ii) shortest path algorithm for virtual link allocation. Unfortunately, the server mapping phase does not perform optimisation during resource (i.e., cpu, memory and disk) allocation. That means, the placement of servers do not judiciously select the physical servers with respect to the residual resources. In doing so, load equilibrium in the substrate network is not achieved. Moreover, server and link mapping stages are not coordinated. Hence, the mapping of servers may imply the worst embedding of links. Finally, we notice that the efficiency of the algorithm in terms of acceptance rate is not evaluated. In [24], a topology-awarness algorithm is proposed to improve the acceptance ratio of virtual network requests and to
reduce resource bottleneck in substrate network. To do so, three metrics are proposed to characterise each substrate resource. A Critical Index (CI) is put forward to quantify the likelihood of a resource of becoming a bottleneck. Moreover, a Popularity Index (PI) is proposed to evaluate the saturation of substrate resource (i.e., the number of virtual instances mapped upon the physical network). Finally, a weighted linear combination of CI and PI is proposed as a Scaling Factor (SF). Then, the objective function of the embedding problem is scaled by SF so that the obtained results will be improved in terms of acceptance rate and load balancing. It is worth noting that the authors address the reconfiguration problem of virtual network in aim to minimise the congestion within the substrate network. In [14], the authors proposed a new VN embedding algorithm based on the ant colony metaheuristic, named VNE-AC, which operates as follows. First, the VN request is divided into a set of solution components that are sorted and then solved sequentially. Note that solving a solution component is only equivalent to building a small part of the overall solution. Next, a set of parallel artificial ants are launched to iteratively explore the search space until a predetermined number of iterations is reached. During each iteration, each ant incrementally constructs the solution by moving from one solution component to another. To do so, the ant localises potential candidates in the SN for each solution component in the search space then selects just one by applying a stochastic local decision. It is worth noting that the decision is based on heuristic information and artificial pheromone trails, which respectively quantify the desirability of the transition a priori and a posteriori. Once each ant builds its full solution, the best one (i.e., the one that most enhances the objective function) among all solutions generated by all ants is selected. Furthermore, the artificial pheromone is slightly evaporated into the surrounding environment. This helps the ants to discover new trajectories in the environment and not to be trapped in local optimums. Nevertheless, the artificial pheromone trail of each solution component is reinforced at visited points in the environment in relation to the best trajectory travelled by ants to build the whole solution. This helps the ants to improve and continually refine the best solution obtained. The process is repeated until the upper bound of iterations is reached. The overall best solution generated by all ants is considered to be the output solution. Unlike to [10] and [12], the available substrate resources (processing power, memory and bandwidth) are considered during the mapping process with [14],. On the other hand, contrary to [11] and [12], VNE-AC coordinates the virtual node and virtual link assignment in order to enhance the mapping efficiency. We notice that [11] [25] [26] [19] address the batch virtual network embedding problem. We implemented some related approaches. In the next section, we will evaluate the performance obtained. V. C OMPARISON OF V IRTUAL N ETWORK E MBEDDING S TRATEGIES In this section, we will study the efficiency of some related embedding strategies described in the previous section: i) VNE-Least [10], ii) VNE-Cluster [10], iii) VNE-Subdividing [10], iv) VNE-Greedy [11], v) VNE-AC [14], vi) D-ViNE and vii) R-ViNE [13] [19]. To achieve this, we will first of all describe our discrete event VN embedding simulator. Then, we will define several metrics aimed at evaluating the performance of the prominent existing
TABLE I P ERFORMANCE OF VN REQUESTS
schemes mentioned above. Finally, building on the outputs of the above simulations, we will assess and comment the results obtained. Note that we cannot compare the above methods with [12] since they assume a constrained hypothesis, which cannot be considered in the above strategies. Indeed, in [12], mapping is based on the upper bounds of network flows.
B. Performance metrics In this section, we will define the performance metrics used to assess the above related strategies. 1) Q(t): is the reject rate of VN requests during the time period [0, t]. 2) C(t): is the average provisional cost of accepted VN requests in the SN during the time period [0, t]. Note that C(t) quantifies the mapping cost in terms of resources (bandwidth, cpu, memory) as defined in [14]. 3) R(t): measures the average revenue of accepted VN requests in the SN during the time period [0, t]. Note that when R(t) is high, the embedding strategy maps requests generating a larger revenue as defined in [10] [11] [13]. 4) U(t): measures average usage rate of substrate links at time t. In the following section, we will present the results of our simulations and summarise the key observations. C. Evaluation results Table I compares the reject rate and total revenue of the whole (i.e., 2000) VN requests. It shows that VNE-AC, significantly outperforms the related strategies. We can see that VNE-AC denies only 5.1 ± 0.4% of requests. It is worth noting that VNE-Cluster, VNE-Least, and VNE-Subdividing decline the most requests (69%, 73.90%, and 67.45% respectively). This is mainly because the latter strategies do not
Reject rate (%) 5.1 ± 0.40 12.95 69 73.90 67.45 0.002 0.002
Provider’s revenue (×104 ) 47.42 ± 0.28 42.51 13.47 10.05 10.85 17.26 17.27
1
Q(t) (logarithmic scale)
A. Simulation environment We implemented a discrete event VN embedding simulator, using the GT-ITM tool to generate random SN and VN topologies. Note that we modelled the arrival of VN requests by a Poisson Process, with rate λA . We also modelled VN lifetime by an exponential distribution with a mean μL . As stated in [11], we set the SN size to 100. In this case, the ratio of access and core nodes was fixed at 20% and 80% respectively. Furthermore, we set the VN size according to a discrete uniform distribution, using the values given in [2, 10]. Since virtual access nodes are defined by customers, we assumed that each virtual node could be access or core with a probability of 0.5. In both cases (VN and SN ), each pair of nodes is randomly connected with a probability of 0.5. The arrival rate, λA , and the average lifetime, μL , of VN s are fixed to 4 requests per 100 time units and 1000 time units respectively. We calibrated the capacity of substrate nodes and links (i.e., processing power, memory and bandwidth) according to a continuous uniform distribution, taking the values in [50, 100]. We also set the required virtual resources according to a continuous uniform distribution, using the values given in [10, 20]. In our simulator, we then implemented the following strategies: i) VNE-Least, ii) VNE-Cluster, iii) VNE-Subdividing, vi) VNE-Greedy, v) VNE-AC, vi) D-ViNE and vii) R-ViNE. We set the number of VN requests to 2000. All simulation results of pseudo-random strategies were calculated with a confidence level equal to 99.70%. Note that tiny confidence intervals are not shown in the following figures.
Strategy VNE-AC VNE-Greedy VNE-Cluster VNE-Least VNE-Subdividing D-ViNE R-ViNE
0.1
VNE-AC VNE-Greedy VNE-Least VNE-Cluster VNE-Subdividing
0.01 100
1000
10000
Time unit (logarithmic scale)
Fig. 2.
Reject rate - Q
consider the residual resources in the SN . In addition, VNE-AC performs at least twice as well as VNE-Greedy (5.1%±0.4 → 12.95%). Furthermore, we can see that VNE-AC maximises the substrate provider’s revenue. Note that the revenue of requests is proportional to the amount of allocated resources. This can be explained due to the fact that a larger number of accepted requests leads to the increase in allocated resources. We notice that D-ViNE and R-ViNE outperforms VNE-AC. However, both methods are based on multi-commodity flow. Hence, each virtual link is mapped among a set of substrate paths which is not the case for VNE-AC. In fact, the latter embeds each virtual link with an unsplittable physical path. Moreover we notice that the complexity of the both methods strongly depends on the size of the substrate network, which is not the case for VNE-AC. We recall that for each virtual router, D-ViNE and R-ViNE create a meta-node. Besides, each meta-node is connected with all the substrate routers in which the number depends on the physical network size. Indeed, we need to connect the metanode with all the physical routers in the network because we do not assume any geographical constrains for routers. In doing so, the time convergence and complexity increase in large-scale physical network. Finally, we remark that the revenue obtained by D-ViNE and R-ViNE is less than the related strategies. The main reason that the comparison is not faire. The revenue of memory is not considered. Fig. 2 illustrates the reject rate of requests Q(t) during the simulation. It shows that VNE-AC notably minimises the reject rate compared with the related strategies, and that it does so throughout all simulations. This can be explained by the fact that the VNE-AC algorithm aims to maximise the residual
0.3
0.2
VNE-AC VNE-Greedy VNE-Least VNE-Cluster VNE-Subdividing
1000
0.1
0 0
10000
20000
30000
40000
50000
0
10000
20000
Time unit
Fig. 3.
Average usage rate of links - U
resources in the SN . Thus, it avoids more critical resources and consequently prevents congestion in the SN . As illustrated in Fig. 2, it is worth noting that the request reject process starts late with VNE-AC (at 1420 time unit) compared with the related strategies in which the best one starts at 703 time unit. Moreover, the VNE-AC reject rate peak is the lowest in Fig. 2 and then decreases during the simulation. This proves that the resources are allocated efficiently. In fact, unlike other algorithms, VNE-AC is based on pseudo-randomised node selection. As proved in algorithm design randomisation, this approach leads to effective performance in computationally intractable problems. As shown in Fig. 3, thanks to VNE-AC’s path-distance metric, the algorithm succeeds in making a trade-off between minimising the length of substrate paths and maximising residual bandwidth in the SN . We can see that VNE-AC allocates approximately the same bandwidth in the SN but that it assigns more requests. Note that VNE-Least and VNE-Subdividing consume lower levels of resources than VNE-AC. This can be explained by the fact that VNE-Least is based on the shortest path algorithm and that VNE-Subdividing favours the mapping of small VN requests in terms of required resources (as illustrated in Fig. 5), which rationally decreases the provisional cost. However, both strategies have the highest reject rates since they do not take into account the bottleneck effect in the SN . Moreover, the figure shows that VNE-Cluster consumes high level of resources due to its path metric that does not take into account bandwidth usage. It is clear in Fig. 4 that VNE-AC produces the best average provisional cost thanks to its path metric and the large number of accepted requests. We can also see that the average provisional cost of requests obtained by VNE-AC is constant throughout the simulations, even though more VN requests are embedded in the SN . It is worth noting that VNE-Cluster leads to an expensive mapping cost caused by the long substrate paths allocated to virtual links. Fig. 5 shows that VNE-AC performs better than the other approaches tested since it provides a higher overall revenue to the SN provider. We can see that the average revenue of VNE-AC is roughly constant, in spite of incoming requests. The rest of strategies provide lower revenue due to their higher level of rejects which degrade their efficiency. We can conclude that
30000
40000
50000
Time unit
Fig. 4.
Comparison of average provisional cost of request - C
300
VNE-AC VNE-Greedy VNE-Least VNE-Cluster VNE-Subdividing
280 260 240 R(t)
U(t)
0.4
C(t) (logarithmic scale)
VNE-AC VNE-Greedy VNE-Least VNE-Cluster VNE-Subdividing
0.5
220 200 180 160 0
10000
20000
30000
40000
50000
Time unit
Fig. 5.
Comparison of average revenue - R
coordinated virtual node and virtual link mapping stages lead to efficient mapping and thus generate a higher income. The last step is to compare the final reject rate of VN requests, Q, with respect to the embedding strategy and the arrival rate of requests, λ. As depicted in Figure 6, we can see that VNE-Cluster, VNE-Least, and VNE-Dividing reject the most of requests (i.e., Q ≥ 73%). On the other hand, VNE-AC and VNE-Greedy achieve the least reject rates for different λ values. Indeed, VNE-AC, outperforms VNE-Greedy when λ is equal to 4 and 8. Besides, both strategies (i.e., VNE-AC and VNE-Greedy) have the same performance with heavy loads of requests (i.e., λ ≥ 16). In fact, VNE-Greedy makes use of the k-shortest algorithm, which favours the embedding strategy to find paths in the SN for virtual links. The computation complexity of VNE-Greedy is high and an arrival rate greater than or equal to 16 VN requests per time unit is an upperboud of realistic scenarios. In addition, we can see that for both VNE-AC and VNE-Greedy strategies, the reject rate increase is logarithmic when λ grows exponentially. As mentioned above, whatever the arrival rate of requests, VNE-AC optimises the
TABLE II I MPACT OF λ ON THE REJECT RATE OF VNE-AC, D-V I NE, AND R-V I N E Strategy VNE-AC - Q D-ViNE - Q R-Vine - Q
λ=4 0.051 0.002 0.002
λ=8 0.212 0.03 0.01
λ = 16 0.407 0.25 0.25
λ = 64 0.693 0.694 0.70
resource usage of the SN and consequently maximises the revenue of the cloud provider. 1
Q
VNE-AC VNE-Greedy VNE-Least VNE-Basic VNE-Subdividing
0.1
10
Fig. 6.
20
30
λ
40
50
60
Impact of λ on the reject rate of related VN embedding strategies
In Table II, we observe that D-ViNE and R-ViNE outperform VNE-AC thanks to the multi-commodity flow approach. However, we notice that when the arrival rate λ increases, VNE-AC reaches the performance of both methods. VI. C ONCLUSIONS Cloud computing is new paradigm that is built on three basic principles: i) grid computing, ii) cluster computing and iii) virtualization. In this paper, we addressed the challenging and complex virtual network embedding problem within a cloud infrastructure network. Indeed, we briefly outlined the definitions of cloud computing and its supplied services and the cloud computing architecture called the Totally Virtualized Cloud Infrastructure (TVCI). We saw that virtual network embedding strategies for cloud infrastructure networks have already been proposed in existing literature, namely: i) VNE-Least, ii) VNE-Cluster, iii) VNE-Subdividing, iv) VNE-Greedy, v) VNE-AC, vi) D-ViNE and vii) R-ViNE. We compared these approaches using extensive simulations measuring¡ i) virtual network request reject rate, ii) embedding cost of the virtual network request, iii) embedding revenue of the virtual network request and iv) average usage rate of physical resources. As the virtual network embedding issue is a recent problem, we believe that other methods will be proposed in the near future as the research community increasingly focuses on issues relating to cloud computing. In addition, the migration of virtual routers in a substrate network, made possible thanks to virtualization technology, is an interesting solution for tackling bottlenecking problems. We believe that migration can be used a complementary solution in minimising the reject rate of virtual network requests in order to maximise the provider’s revenue.
R EFERENCES [1] L. M. Vaquero, L. Rodero-Merino, J. Caceres, and M. Lindner, “A break in the clouds: towards a cloud definition,” ACM SIGCOMM Computer Communication Review, vol. 39, pp. 50–55, 2009. [2] NIST, “Definition of cloud computing v15,” csrc.nist.gov/groups/SNS/cloud-computing/cloud-def-v15.doc. [3] R. Buyya, “High performance cluster computing: Architectures and systems,” vol. 1, Prentice Hall, Upper Saddle River, USA, 1999. [4] R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic, “Cloud computing and emerging it platforms: Vision, hype, and reality for delivering computing as the 5th utility,” Future Generation Computer Systems journal, vol. 25, pp. 599–616, 2009. [5] C. Guo, G. Lu, H. Wang, S. Yang, C. Kong, P. Sun, W. Wu, and Y. Zhang, “Secondnet: A data center network virtualization architecture with bandwidth guarantees,” ACM CONEXT, 2010. [6] Z. Zhang, M. Zhang, A. Greenberg, Y. C. Hu, R. Mahajan, and B. Christian, “Optimizing cost and performance in online service provider networks,” Proceedings of the 7th USENIX conference on Networked systems design and implementation, 2010. [7] L. Youseff, M. Butrico, and D. Da-Silva, “Toward a unified ontology of cloud computing,” Grid Computing Environments Workshop, pp. 1–10, 2008. [8] I. Fajjari, N. Aitsaadi, G. Pujolle, and H. Zimmermann, “An optimised dynamic resource allocation algorithm for cloud’s backbone network,” IEEE LCN, 2012. [9] F. Hao, T. V. Lakshman, S. Mukherjee, and H. Song, “Enhancing dynamic cloud-based services using network virtualization,” SIGCOMM Comput. Commun. Rev., vol. 40, pp. 67–74, 2010. [10] Y. Zhu and M. Ammar, “Algorithms for assigning substrate network resources to virtual network components,” IEEE INFOCOM, pp. 1–12, 2006. [11] M. Yu, Y. Yi, J. Rexford, and M. Chiang, “Rethinking virtual network embedding: substrate support for path splitting and migration,” SIGCOMM Comput. Commun. Rev., vol. 38, pp. 17–29, 2008. [12] J. Lu and J. Turner, “Efficient mapping of virtual networks onto a shared substrate,” Washington University in St. Louis, Tech. Rep., 2006. [Online]. Available: http://www.arl.wustl.edu/˜jl1/research/tech report 2006.pdf [13] N. Chowdhury, M. Rahman, and R. Boutaba, “Virtual network embedding with coordinated node and link mapping,” IEEE INFOCOM, pp. 783–791, 2009. [14] I. Fajjari, N. Aitsaadi, G. Pujolle, and H. Zimmermann, “VNE-AC: Virtual Network Embedding Algorithm based on Ant Colony Metaheuristic,” IEEE ICC, 2011. [15] D. G. Andersen, “Theoretical approaches to node assignment,” 2002, http://www.cs.cmu.edu/?dga/papers/andersen-assign. [16] J. Kleinberg, “Approximation algorithms for disjoint paths problems,” PhD thesis - MIT, 1996. [17] C. Tran and Z. Dziong, “Service overlay network capacity adaptation for profit maximization,” IEEE Transactions on Network and Service Management, pp. 72–82, 2010. [18] M. Brunner, G. Nunzi, T. Dietz, and I. Kazuhiko, “Customer-oriented gmpls service management and resilience differentiation,” IEEE Transactions on Network and Service Management, pp. 92–102, 2004. [19] M. Chowdhury, M. Rahman, and R. Boutaba, “ViNEYard: Virtual Network Embedding Algorithms With Coordinated Node and Link Mapping,” IEEE/ACM Transactions on Networking, pp. 206 –219, 2012. [20] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. H. Katz, A. Konwinski, G. Lee, D. A. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, “Above the clouds: A berkeley view of cloud computing,” Technical Report Identifier: EECS-2009-28, 2009. [21] Z. Zhang, X. Cheng, S. Su, Y. Wang, K. Shuang, and Y. Luo, “A unified enhanced particle swarm optimization-based virtual network embedding algorithm,” International Journal of Communication Systems, pp. 1–20, 2012. [22] X. Cheng, S. Su, Z. Zhang, K. Shuang, F. Yang, Y. Luo, and J. Wang, “Virtual network embedding through topology awareness and optimization,” Computer Networks, vol. 56, no. 6, pp. 1797–1813, 2012. [23] I. Houidi, W. Louati, W. B. Ameur, and D. Zeghlache, “Virtual network provisioning across multiple substrate networks,” Comput. Netw., pp. 1011–1023, 2011. [24] N. F. Butt, M. Chowdhury, and R. Boutaba, “Topology-Awareness and Reoptimization Mechanism for Virtual Network Embedding,” IFIP NETWORKING Conference, pp. 27–39, 2010. [25] G. Even, M. Medina, G. Schaffrath, and S. Schmid, “Competitive and deterministic embeddings of virtual networks,” Proceedings of the 13th international conference on Distributed Computing and Networking, pp. 106–121, 2012. [26] N. Bansal, K.-W. Lee, V. Nagarajan, and M. Zafer, “Minimum congestion mapping in a cloud,” Proceedings of the 30th annual ACM SIGACTSIGOPS symposium on Principles of distributed computing, pp. 267–276, 2011.