12
VHub: Single-stage virtual network mapping through hub location Shashank Shanbhag a , Arun Reddy Kandoor b , Cong Wang c , Ramgopal Mettu d , Tilman Wolf c,a Oracle Corp., Santa Clara, CA, USA b Google Inc., Mountain View, CA, USA c ECE Dept., University of Massachusetts, Amherst, MA, USA d CS Dept., Tulane University, New Orleans, LA, USA article info Article history: Received 25 June 2014 Received in revised form 6 November 2014 Accepted 21 December 2014 Available online 30 December 2014 Keywords: Network virtualization Network embedding Hub location Mixed integer programming Traffic matrix abstract Network virtualization allows multiple networks with different protocol stacks to share the same physical infrastructure. A key problem for virtual network providers is the need to efficiently allocate their customers’ virtual network requests to the underlying network infrastructure. This problem is known to be computationally intractable and heuristic solu- tions continue to be developed. Most existing heuristics use a two-stage approach in which virtual nodes are first placed on physical nodes and virtual links are subsequently mapped. In this paper, we present a novel approach to virtual network mapping that simultaneously maps virtual nodes and links onto the network infrastructure. Our VHub technique formu- lates the problem of mapping a virtual network request as a mixed integer program that is based on the p-hub median problem. Results from extensive simulations with synthetic and real virtual network requests show that our solution outperforms existing heuristics, including subgraph isomorphism backtracking search. Our approach requires fewer phys- ical resources to accommodate virtual networks and is able to balance load more evenly across the network infrastructure. Ó 2014 Elsevier B.V. All rights reserved. 1. Introduction With the growing size and diversity of use of the Inter- net, it has become apparent that the use of a single, com- mon network-layer protocol hampers the deployment of innovations in the network. The need to be compatible with the Internet Protocol (IP) has limited the deployment of new network protocols and new communication para- digms (e.g., content-based networking) to ‘‘islands’’ of deployments (e.g., IPv6) or end-system overlays (e.g., multicast). Network virtualization is based on the premise that, rather than supporting a single (network-layer) protocol, the network infrastructure allows multiple protocol stacks to coexist in parallel. The idea of coexisting network slices was initially explored in the context of overlay networks (e.g., Planetlab [1]), but more recently has been proposed for the entire Internet. By virtualizing physical links and routers (‘‘substrate’’), multiple parallel networks (‘‘slices’’) can be deployed inside the network and each slice can use its own set of protocols. One of the appealing aspects of a virtualized network infrastructure is that it enables dynamic deployment (and removal) of network slices. This process matches well with economic models where customers request new http://dx.doi.org/10.1016/j.comnet.2014.12.006 1389-1286/Ó 2014 Elsevier B.V. All rights reserved. Corresponding author at: 151 Holdsworth Way, Amherst, MA 01003, USA. Tel.: +1 413 545 0757. E-mail addresses: [email protected] (S. Shanbhag), [email protected] (A. Reddy Kandoor), [email protected] (C. Wang), [email protected] (R. Mettu), [email protected] (T. Wolf). Computer Networks 77 (2015) 169–180 Contents lists available at ScienceDirect Computer Networks journal homepage: www.elsevier.com/locate/comnet

VHub: Single-stage virtual network mapping through hub location

Embed Size (px)

Citation preview

Computer Networks 77 (2015) 169–180

Contents lists available at ScienceDirect

Computer Networks

journal homepage: www.elsevier .com/ locate/comnet

VHub: Single-stage virtual network mappingthrough hub location

http://dx.doi.org/10.1016/j.comnet.2014.12.0061389-1286/� 2014 Elsevier B.V. All rights reserved.

⇑ Corresponding author at: 151 Holdsworth Way, Amherst, MA 01003,USA. Tel.: +1 413 545 0757.

E-mail addresses: [email protected] (S. Shanbhag),[email protected] (A. Reddy Kandoor), [email protected](C. Wang), [email protected] (R. Mettu), [email protected] (T. Wolf).

Shashank Shanbhag a, Arun Reddy Kandoor b, Cong Wang c, Ramgopal Mettu d, Tilman Wolf c,⇑a Oracle Corp., Santa Clara, CA, USAb Google Inc., Mountain View, CA, USAc ECE Dept., University of Massachusetts, Amherst, MA, USAd CS Dept., Tulane University, New Orleans, LA, USA

a r t i c l e i n f o

Article history:Received 25 June 2014Received in revised form 6 November 2014Accepted 21 December 2014Available online 30 December 2014

Keywords:Network virtualizationNetwork embeddingHub locationMixed integer programmingTraffic matrix

a b s t r a c t

Network virtualization allows multiple networks with different protocol stacks to share thesame physical infrastructure. A key problem for virtual network providers is the need toefficiently allocate their customers’ virtual network requests to the underlying networkinfrastructure. This problem is known to be computationally intractable and heuristic solu-tions continue to be developed. Most existing heuristics use a two-stage approach in whichvirtual nodes are first placed on physical nodes and virtual links are subsequently mapped.In this paper, we present a novel approach to virtual network mapping that simultaneouslymaps virtual nodes and links onto the network infrastructure. Our VHub technique formu-lates the problem of mapping a virtual network request as a mixed integer program that isbased on the p-hub median problem. Results from extensive simulations with syntheticand real virtual network requests show that our solution outperforms existing heuristics,including subgraph isomorphism backtracking search. Our approach requires fewer phys-ical resources to accommodate virtual networks and is able to balance load more evenlyacross the network infrastructure.

� 2014 Elsevier B.V. All rights reserved.

1. Introduction

With the growing size and diversity of use of the Inter-net, it has become apparent that the use of a single, com-mon network-layer protocol hampers the deployment ofinnovations in the network. The need to be compatiblewith the Internet Protocol (IP) has limited the deploymentof new network protocols and new communication para-digms (e.g., content-based networking) to ‘‘islands’’ of

deployments (e.g., IPv6) or end-system overlays (e.g.,multicast).

Network virtualization is based on the premise that,rather than supporting a single (network-layer) protocol,the network infrastructure allows multiple protocol stacksto coexist in parallel. The idea of coexisting network sliceswas initially explored in the context of overlay networks(e.g., Planetlab [1]), but more recently has been proposedfor the entire Internet. By virtualizing physical links androuters (‘‘substrate’’), multiple parallel networks (‘‘slices’’)can be deployed inside the network and each slice canuse its own set of protocols.

One of the appealing aspects of a virtualized networkinfrastructure is that it enables dynamic deployment(and removal) of network slices. This process matches wellwith economic models where customers request new

170 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

virtual networks with specialized functionality from a vir-tual network service provider. These service providershave the ability to offer multiple, different virtual networkservices on their infrastructure (i.e., ‘‘network as a service’’(NaaS)).

A key challenge is the management of resources in a vir-tual network infrastructure: When new virtual networkslices are set up in a network, the virtual network providerneeds to determine which physical resources are allocatedto that slice. The resources that need to be consideredinclude transmission bandwidth on links and processingresources on routers (for data plane and control plane pro-tocol processing). This resource allocation problem is NP-hard since it can be reduced to the multi-way separatorproblem [2,3]. From the perspective of a virtual networkprovider, finding better solutions is critically important.The ability to determine resource allocations that meetcustomer needs and use less resources in the infrastructuredirectly translates into lower operational costs and/or theability to accommodate more customers. Our work focuseson this mapping problem.

The main contribution of our work is VHub, a novelsolution for determining mappings of virtual networkrequests to a given infrastructure. Our approach is to viewthe virtual network mapping problem as a p-hub medianproblem. Given a set of n nodes and a collection ofsource/destination flow requests, the p-hub median prob-lem asks us to identify a subset of p hubs so as to minimizethe cost of route each flow request through the chosenhubs. To map a given virtual network request on a physicalnetwork, we must select physical nodes and paths betweenthem. Our approach is to model the virtual nodes as hubsand solve the associated hub location problem to computethe optimal placement of each request. Using thisapproach, we can formulate the constraints for nodes(e.g., geographic location, availability of processingresources) and for links (e.g., available bandwidth) in a sin-gle linear program whose solution directly translates to amapping solution.

We extensively evaluate our approach and compare itto state-of-the-art virtual network mapping algorithms(DViNe [4] and vnmFlib [5]) using both synthetic virtualnetwork requests and real request traces from Emulab.The results show that our VHub solution not only can findbetter solutions (e.g., accommodate up to 23% more virtualnetworks in a given physical network) but can do so 26–96% faster.

The remainder of this paper is organized as follows. Sec-tion 2 reviews related work. Section 3 provides a formalproblem statement, Section 4 gives objectives and perfor-mance metrics, and Section 5 presents our VHub mappingmethod. Section 6 presents extensive evaluation results,where performance of different mapping methods arecompared. Section 7 concludes the paper.

2. Related work

Network virtualization technology has been demon-strated and used in experimental platforms, includingPlanetLab [1] and VINI [13], which provide a virtualization

overlay on the Internet and testbeds (e.g., Emulab [14]).There have been efforts to federate existing testbeds intoa larger experimental infrastructure that is based on virtu-alization (i.e., GENI [15] in the United States, OneLab [16]in Europe) as a precursor to the future Internet. The suc-cessful use of network virtualization in these testbeds sup-ports the growing opinion that this technology maybecome fundamental to the Internet [17,18]. For a detailedsurvey on network virtualization, see [3,19].

In the control plane of a virtualized network, there isthe need to support routing and other control functionsin parallel (e.g., [20]). Beyond that, the management of vir-tual network slices within the infrastructure requiresmechanisms for setup and tear-down of virtual networksat runtime, as well as monitoring of the operation of virtualnetwork slices. In this paper, we address the key problemof virtual network mapping, in which we must allocatenodes and links of a virtual network to a physical substrate.

Algorithms for virtual network mapping presented inliterature map virtual network requests to a physical net-work topology, but differ in the types of constraints thatare considered. Constraints that are necessary in practiceare: (1) limited bandwidth on links, (2) limited processingcapacity on nodes (where protocol processing is imple-mented), and (3) geographic placement of nodes (so thatusers can access a virtual network). Mapping solutions thatonly consider bandwidth constraints were developed inother contexts (e.g., bandwidth resource allocation in vir-tual private networks [11]).

Table 1 presents a comparison of various mappingapproaches. Emulab uses the assign algorithm [6] to maprequests to the infrastructure. This algorithm uses simu-lated annealing to solve the virtual network mapping prob-lem, but only considers bandwidth constraints on links.Constraints on node resources are limited to the conditionof exclusive access to a particular physical node, or throughresource sharing and isolation achieved through virtualmachines. Fan and Ammar [7] also use simulated anneal-ing for mapping traffic matrices to a physical network.The problem is restricted to allocating topologies to thephysical network assuming no constraints on link band-width or node processing. Zhu and Ammar [8] use shortestpath heuristics to solve the offline version of the mappingproblem (i.e., where all requests are known in advance),also assuming infinite physical resources. Lu and Turner[9] try to solve the problem of mapping a single back-bone-star virtual network topology onto a physical net-work with unlimited resources, also ignoring nodeprocessing constraints. Yu et al. [10] propose greedy heu-ristics for node mapping and multicommodity flow algo-rithms for splittable flows resulting in a two-stagemapping process that may possibly lead to sub-optimalsolutions. R-ViNE [4] is a linear programming formulationfor the two-stage virtual network mapping problem withbandwidth, processing, and node location constraints thatuses multicommodity flow formulations for solving theedge mapping problem in the second stage. Lischka andKarl [5] propose vnmFlib, a variant of the best known back-tracking algorithm to solve the subgraph isomorphismproblem in a single stage [21] and also considering all rel-evant constraints. Cheng et al. [12] propose a Markov

Table 1Related work on virtual network mapping algorithms.

Mapping algorithm Method Stages Constraints Path splitting Request specification Optimizationobjective

Emulab [6] Simulated annealing 2 Bandwidth No General topologies CostFan and Ammar [7] Simulated annealing 2 None No Traffic matrices CostZhu and Ammar [8] Greedy heurist.,

shortest-path2 Bandwidth,

processingNo General topologies Load balancing

Lu and Turner [9] Integer program 2 Bandwidth,processing

No Backbone-star topology Cost

Yu et al. [10] Greedy heuristics,MCF

2 Bandwidth,processing

Yes General Topologies Revenue

Szeto et al. [11] Integer program 2 Bandwidth Yes Traffic matrices No. of virtual netw.Cheng et al. [12] Markov random walk 2 Bandwidth,

processing, locationYes, using MCFfrom [4]

General topologies Revenue, cost, loadbalancing

Chowdhury et al. [4](DViNe)

MCF, integer program 2 Bandwidth,processing, location

Yes General topologies Revenue, cost, loadbalancing

Lischka and Karl [5](vnmFlib)

Backtracking 1 Bandwidth,processing

No General topologies Revenue, cost, loadbalancing

This paper (VHub) Integer program forhub location

1 Bandwidth,processing, location

When necessary General topologies,traffic matrices

Revenue, cost, loadbalancing

S. Shanbhag et al. / Computer Networks 77 (2015) 169–180 171

random walk based solution to compute topology-awareranking of nodes based on available physical resources.These rankings are used to map virtual network requeststo the physical network in either a single stage or two stageformulation.

Our approach to the virtual network mapping problemdiffers from prior work by mapping virtual nodes and linksin a single step (while considering bandwidth, processing,and location constraints). The main idea is to formulatethe virtual network mapping problem as a hub locationproblem from operations research: virtual nodes are cli-ents that need to be allocated to hubs (physical nodes) atlowest cost while ensuring balanced load across the phys-ical network. To solve this optimization problem, we use amixed integer programming formulation, VHub, that out-performs the state-of-the-art approaches to virtual net-work mapping in speed and quality of mapping. Someinitial ideas on this approach have appeared in our priorwork [22].

Table 2Summary of notation.

Symbol Interpretation

GP Physical networkNP Nodes in the physical networkEP Edges in the physical networkkðx; yÞ Length of a physical edge ðx; yÞDð�; �Þ Euclidean distance

GV Virtual network

3. Problem formulation

Before presenting our VHub approach to solving the vir-tual network mapping problem in Section 5, we define theproblem of mapping a single virtual network request. InSection 4, we discuss the mapping problem for multiplevirtual network requests and optimization criteria.

NV Nodes in the virtual networkEV Edges in the virtual networkdðv ;uÞ Bandwidth requested between virtual nodes v and uHv distance threshold for virtual node v

cðxÞ Proc. resources of a physical node xbðeÞ Bandwidth on a physical link eciðxÞ Residual proc. resources of a node x after assigning the ith

requestbiðeÞ Residual bandwidth resources of an edge e after assigning

the ith request

GA Augmented network used in the integer programmingformulation

NA Nodes in the augmented networkEA Edges in the augmented network

3.1. Network infrastructure and requests

The physical network is modeled as a weighted undi-rected graph denoted by GP ¼ ðNP ; EPÞ, where NP is the setof physical nodes and EP is the set of physical edges. Aphysical node x 2 NP has an associated processing capacitydenoted by cðxÞ. For any two nodes x and y, we let Dðx; yÞdenote the Euclidean distance between physical locations.For an edge in the physical network e ¼ ðx; yÞ 2 EP , we letbðx; yÞ denote the bandwidth supported by e and letkðx; yÞ denote the length of e. For convenience, we will also

use kðPÞ to denote the physical length of a path P (i.e., thesum of all edge lengths) in the physical network.

A virtual network request is defined by a weighted undi-rected graph GV ¼ ðNV ; EV Þ, where NV is the set of virtualnodes and EV is the set of virtual edges. We model thebandwidths requested along virtual edges as a symmetricdemand matrix, DV , where Dðu;vÞ ¼ dðu;vÞ;u;v 2 NV . Theprocessing resource requested by a virtual network nodev 2 NV is denoted by cðvÞ. Each virtual node v may alsohave an associated spatial constraint that dictates that vmust be placed in a particular geographic area. A summaryof the notation used in this paper is given in Table 2.

3.2. Mapping constraints

There are practical resource constraints on a physicalnode or the physical links connecting nodes that render

172 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

some mappings infeasible. There are three constraints thatare typically considered when mapping a virtual networkrequest.

Bandwidth constraints. When mapping links from thevirtual network request to the physical network, it is nec-essary to ensure that there is sufficient bandwidth alongthe selected physical path. The bandwidth constraintrequires that for mappings f NðvÞ ¼ x and f NðuÞ ¼ y, wemust also have an edge mapping f Eðx; yÞ that meetsresource requirements. In other words, we must map theassociated virtual edge ðv;uÞ to a path P 2 GP for whichwe have

bðeÞ 6 mine2P

bðeÞ: ð1Þ

Processing constraints. Since a virtual network typically alsohas processing associated with each virtual node, any validmapping f Nðv ; xÞ must satisfy the condition that:

cðvÞ 6 cðxÞ: ð2Þ

Note that this requirement states that processing resourcesare only necessary on nodes that are part of the virtual net-work request topology. It is assumed that physical nodesdo not require processing resources if they forward virtualnetwork traffic but are not part of the virtual topology. Wefollow this convention since it has been part of the existingliterature [3].

Location constraints. A virtual node v may also have anassociated physical location ðvx; vyÞ. This constraint is rep-resented by associating a physical location ðvx;vyÞ with valong with a distance threshold Hv that specifies how faraway from the specified location node v may be placed.In cases where all virtual network requests have a uniformdistance threshold, we will denote the distance thresholdby H. Such a constraint may be necessary to ensure thatcertain virtual nodes are placed in close proximity to phys-ical entities (e.g., users, compute or storage resources, etc.).If a particular virtual node v does not have location con-straints, we simply set Hv ¼ 1. The set LðvÞ of candidatephysical nodes at which a virtual node v 2 NV can beplaced can be defined as:

LðvÞ ¼ fx 2 NP : Dðv; xÞ 6 Hvg; ð3Þ

where Dðv; xÞ is the Euclidean distance between the pointsðvx;vyÞ and ðxx; xyÞ.

Other practical constraints could include limits on delaybetween nodes, jitter, packet loss, etc. These constraintsare beyond the scope of this work; therefore, we focus onbandwidth and processing constraints.

3.3. Mapping problem

The virtual network mapping problem can be dividedinto two subproblems:

Node mapping. Every virtual node in the virtual networkrequest is mapped to a physical node in the physical net-work. For a given virtual network request with u;v 2 NV

and x 2 NP , we require mapping f N : NV ! NP from virtualnodes to physical nodes, subject to the processing con-straint given in Eq. (2) and the location constraint givenin Eq. (3). Multiple virtual nodes in a request can either

be mapped to the same physical node or not dependingon the policies of the physical network provider and nodeconstraints. In our work, we assume unique physical nodesfor every virtual node in the request (i.e., f NðuÞ ¼ f NðvÞ iffu ¼ v).

Edge mapping. A virtual edge in a virtual networkrequest is mapped onto a loop-free path comprising multi-ple physical edges that connect the physical nodes thathost the virtual nodes. For a given virtual network requestin which we have node mappings f NðvÞ ¼ x and f NðuÞ ¼ y,we need to determine an edge mapping f Eðx; yÞ that meetsthe bandwidth constraints given in Eq. (1).

Many existing mapping algorithms consider the twosubproblems of node mapping and edge mapping in twoseparate steps. While the splitting of the virtual networkmapping problem into subproblems reduces the overallcomplexity, it does not produce satisfactory results aspointed out by Zhu and Ammar [8]. This is due to the factthat optimizing edge and node mappings independentlydoes not guarantee an overall optimal mapping. Our VHubapproach combines the optimization of edge and nodemapping into a single stage and thereby produces a signif-icantly better mapping for any given virtual networkrequest.

4. Multiple mappings

The main idea of network virtualization is that multiplevirtual networks share a single physical network. In thiscontext, it is important to focus on the metrics the map-ping process should aim to optimize. This section discussesmultiple mappings, objectives, and metrics.

4.1. Offline and online mapping

There are two fundamentally different approaches tohandling the mapping of multiple virtual networkrequests. In the offline variant of the mapping problem,all requests are available to the mapping algorithm at thesame time. Thus, the mapping can optimize across virtualnetwork requests. In the online variant of the problem, vir-tual network requests are processed iteratively. Thus, themapping of a request does not affect the placement of priorrequests.

Clearly, the offline variant of the problem is more likelyto lead to better overall mappings and fairness since moreinformation is available to the mapping algorithm. How-ever, it is unrealistic to assume that all virtual networkrequests are available. Customers can request new virtualnetworks at any given time (or decide to remove existingones). Therefore, the online variant of the problem is moreuseful in practice. The online mapping problem can be con-verted to the offline variant by collecting all requests thatarrive within a certain time window and processing allrequests in the offline manner at the end of it. However,this approach would require that the physical resourcesfor virtual networks that have already been placed intothe physical network may need to be moved. This processwould lead to service disruption every time a virtual net-work is added and thus is undesirable. We only consider

S. Shanbhag et al. / Computer Networks 77 (2015) 169–180 173

the ‘‘online’’ variant of the virtual network mapping, wheremultiple requests are mapped iteratively. It is convenientto introduce notation for the resources that remain avail-able in the physical network after all prior requests havebeen mapped (i.e., ‘‘residual capacity’’). After the ith virtualnetwork request has been processed, we denote the resid-ual processing capacity at a physical node x as ciðxÞ, and theresidual bandwidth on a physical edge e as biðeÞ. The initialstate of the physical network is given by c0ðxÞ ¼ cðxÞ andb0ðeÞ ¼ bðeÞ. We note that a particular virtual networkrequest may be to map a given virtual network, or toremove a previously mapped virtual network. In thispaper, we consider only addition of virtual networkrequests, and thus resources in the physical network aremonotonically decreasing. It is important to note, however,that our VHub approach also works in the more generalsetting.

4.2. Mapping metrics and objectives

The main goal of the virtual network provider is to useresources in the physical network economically. That is, weseek to maximize the number of virtual networks mapped,and therefore, the revenue generated, while minimizingthe cost of hosting the virtual networks. We note thatunderyling this objective is the implicit (and reasonable)assumption that maximizing the number of virtual net-works will lead to a maximized revenue. In fact our math-ematical programming framework can handle the moregeneral case where revenue may scale nonlinearly withresource use, by providing a balance between allocationof resources and a defined revenue per task. We state thefollowing three objectives that aim to achieve this overallgoal:

� Minimize internodal Euclidean distance: This objectiveattempts to minimize the distance between virtualnodes. The candidate physical nodes to which a partic-ular virtual node can be mapped are decided by thelocation constraint and the node processing constraint.� Minimize path length: The length of the physical path

to which a particular virtual edge is mapped isminimized.� Balance node and edge utilization: As each virtual request

is mapped, the difference between the nodes and edgeswith highest residual capacity and those with lowest isminimized.

While we state these at a high-level here, the minimiza-tion criterion in our mathematical programming frame-work give a linear objective that balances all three ofthese goals. We discuss this further in Section 5.4.2, wherewe define the minimization criterion.

To quantify the performance of a virtual mapping algo-rithm, we can use several metrics. Metrics for revenue andcost of virtual networks have been introduced in priorwork [4,5]. For the remainder of the section, we letGi

V ¼ ðNiV ; E

iV Þ denote the ith virtual network request, and

define the cost, revenue, and utilization associated withthis request:

� The actual cost (i.e., to the provider) of mapping the ith

virtual network request is the total cost of allocationof physical network resources to the ith virtual network.The mapping cost is variable and depends on the tun-able weight constants b (node mapping cost factor)and c (edge mapping cost factor) that are set based onphysical network provider policies. If ðyi; xiÞ ¼ Ei

P # EP

is the set of physical edges that host the edges of theith virtual network with demand diðu;vÞ, then the map-ping cost is defined as

CðGiV Þ ¼ b

X

v2NiV

ciðvÞ þ cX

ðu;vÞ2EiV

kðf Eðu;vÞÞ � diðu;vÞ;

where kðf Eðu;vÞ; Þ is the length of the path that the vir-tual edge ðu;vÞ is mapped to in Gi

P .� In our work, we define the revenue RðGi

V Þ generated bythe ith virtual network request as

X

v2NiV

ciðvÞ þX

ðu;vÞ2EiV

diðu;vÞ; ð4Þ

which is the sum of the processing resources and linkbandwidths that were requested (and thus can becharged for).� The revenue-to-cost (R/C) ratio is defined as the ratio of

revenue to cost of mapping. An optimal virtual networkmapping results in the revenue-to-cost ratio of 1.� We also define the average node and edge utilizations

after the ith virtual network request is mapped. Theaverage node utilization is given by

UiN ¼ 1�

P8xi2NP

ciðxiÞjNPj

:

We define the average edge utilization as

UiE ¼ 1�

P8ðyi ;xiÞ2EP

biðxiyiÞjEP j

:

5. Virtual network mapping as a p-hub median problem

Our solution to the virtual network mapping problemaims to optimize the metrics discussed in the previous sec-tion. To accomplish this goal, we treat the virtual networkmapping problem as a facility location problem. We firstpresent some background on facility location and the p-hub median problem and then show how this problemcan be used to solve the virtual network mapping problem.

To ensure that all constraints are considered, we intro-duce an augmented graph representation. The mappingwithin this augmented graph leads to VHub, our linear pro-gram formulation, whose output is the result of our virtualnetwork mapping process. The following presents thedetails of each aspect of VHub.

5.1. The p-hub location problem

Facility location problems are concerned with the effec-tive deployment of resources to client locations, and forman active area of study in operations research. In particular,these problems seek to place resources at client locationssuch that the desired objective, primarily defined by a

174 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

given distance function, is minimized. Hub location [23] is atype of facility location problem that seeks to optimallyplace hubs in hub-and-spoke networks, which are widelyobserved in the real world (airline networks, telecommuni-cation systems, truck delivery routes, etc.). Specifically, thep-hub median problem aims to locate p hubs among a givenset of demand nodes so as to minimize the demand-weighted transportation cost between the demand nodes.A typical approach to solve the p-hub location problem isto formulate an integer program whose objective is to min-imize the transportation cost, and whose constraints cap-ture the hub-and-spoke network model.

Hub location problems can be either capacitated oruncapacitated. Uncapacitated hub location problems donot have a limit on the amount of flow a hub can handle,whereas a capacitated hub can handle an finite amountof flow. Each non-hub node can be either assigned to a sin-gle hub (single hub location) or multiple hubs (multiplehub location). We instantiate the problem of virtual net-work mapping as a capacitated single allocation p-hubmedian problem. In the virtual network mapping problem,a task is represented as an undirected graph with CPU andlocation requirements on nodes, and flow requirements on

Table 3Relationship between virtual network mapping problem an capacitatedsingle allocation p-hub median problem.

Virtual network mapping Analogue in facilitylocation

Virtual nodes, NV Non-hub nodePhysical node, NP Hub nodesCandidate physical nodes, LðvÞ Candidate hub nodesSum of the residual bandwidths for edges

connected to a physical nodeMaximum flow thehub can handle

Number of virtual nodes, jNV j Number of hubs tolocate

Unique physical node for every virtual node Single allocation

Fig. 1. Example of an augmented graph for a virtual network. The location conscan be linked to using imaginary edges with bandwidth bð; Þ ¼ 1. The infinite banedges is not factored into the problem definition as a constraint.

edges. The physical network is an undirected graph withCPU and bandwidth capacities. To construct a p-hub loca-tion problem instance, we create an augmented graph inwhich we connect virtual nodes and physical nodes usinglocation constraints, and perform hub location in thisgraph in order to satisfy the given CPU and flow require-ments. Table 3 shows the analogs between the virtual net-work mapping problem and the capacitated singleallocation p-hub median problem. We describe the con-struction of the augmented graph in further detail next.

5.2. Augmented graph

In its basic form, the p-hub median problem serves thepurpose of locating exactly p hubs to optimize the cost oftransferring resources between nodes that are assignedto those hubs. However, it cannot be directly used for vir-tual network mapping because of the additional spatialand resource constraints in the virtual network mappingproblem. To model the nodes in the virtual network as cli-ents that have to be allocated to hubs in the physical net-work, we need to combine the physical network and thevirtual network into a single representation (that alsoincludes the necessary constraints). For this combined rep-resentation, we use an ‘‘augmented graph’’ that is based onthe physical network and also includes virtual nodes. Theidea of using an augmented graph was initially presentedby Chowdhury et al. in [4].

Let GA ¼ ðNA; EAÞ be the augmented graph resulting fromextending the physical network to include the virtualnodes constrained by their spatial coordinates, ðXv ;YvÞand the set of candidate physical nodes, LðvÞ for every vir-tual node, v 2 NV . Here, NA ¼ ðNP [ NV Þ and EA ¼ ðEP [ ELÞ,where

EL ¼ fðv ; xÞ : v 2 NV ^ x 2 LðvÞ ^ cðvÞ 6 cðxÞg:

EL are imaginary edges with a capacity of bðv ; xÞ ¼ 1.

traint H determines the subset of physical nodes a particular virtual nodedwidths assigned to the imaginary edges ensure that the capacity of these

S. Shanbhag et al. / Computer Networks 77 (2015) 169–180 175

Fig. 1 shows the augmented graph constructed for anexample virtual network request 1 comprising of three vir-tual nodes with resource and location requirementsspecified.

5.3. The virtual network mapping problem as a p-hub medianproblem

We model the augmented graph as a hub-and-spokenetwork with the physical nodes modeled as hubs, andthe virtual nodes modeled as non-hub nodes. The primarypurpose of the hub nodes is to transfer flow between theorigin hub node and destination hub nodes. The originhub nodes collect flows from the origin non-hub nodes towhich they are connected and the destination hub nodesdeliver the flows to their respective destinations. There-fore, the virtual mapping problem (for a single task) canbe formulated as follows: The physical nodes in the aug-mented graph GA ¼ ðNA; EAÞ correspond to origin/destina-tion pairs and possible hub locations.

Let the number of hubs to locate, p, be equal to thenumber of virtual nodes to map, jNV j. Then, each origin-to-destination path can be viewed to have threecomponents:

� origin-hub: Transfer of flow from origin node to a hubwith unit transfer cost, v.� hub-hub: Transfer from the first hub to the last hub con-

nected to the destination, possibly through multipletransit nodes in the path with unit transfer cost, a.� hub-destination: Transfer of flow from the last hub to

the destination node, with unit transfer cost, d.

Therefore, for a unit flow to be transferred from a non-hub origin u to a non-hub destination v through hubs x andy following the path u) x) y) v , the cost incurred isvDðu; xÞ þ aDðx; yÞ þ dDðy;vÞ. The overall objective of thevirtual network mapping problem modeled as an capaci-tated single allocation p-hub median problem is then tolocate p hub nodes to minimize the total cost of flow andthe interhub distances with the constraint that every vir-tual node can be mapped to a single hub and multiplenodes in a virtual network be mapped to unique hubs.

5.4. VHub: A mixed integer programming formulation forvirtual network mapping

The following discusses how the problem of mappingvirtual network requests can be solved by using a mixedinteger programming formulation. Once we have this for-mulation, we can use a standard linear programming sol-ver to obtain the actual mapping.

5.4.1. Definitions and variablesWe define origin and destination flows as follows: Let

Ou be the total flow originating at node u given by,

Ou ¼X

v2N

du;v ;8u 2 NA:

Similarly, if Du be the total flow destined towards node ugiven by the equation:

Du ¼X

v2N

dv ;u;8u 2 NA:

In our LP formulation, we will use a binary decision vari-able for locating hubs, and a variable that gives the amountof flow between hub nodes (hub-hub):

� Zu;x is 1 if node u is allocated to a hub x; 0 otherwise, and� Yu

x;y is the flow from hub x to hub y, originating at u.

The decision variables Zu;x will guide the assignment ofvirtual nodes to physical nodes. So, if a given variable Zu;x isset to 1, this means that virtual node u is assigned to phys-ical node x. We will use Zv ;v to denote whether physicalnode v has been selected as a hub. Note that in total, wehave a number of variables that is OððjNP j � jNAjÞ2Þ.

5.4.2. Objective functionFacility location problems try to minimize or maximize

a particular objective function. In the virtual network map-ping problem however, cost is not only the function of dis-tance between the hubs, but also the amount of flow beingtransported and the physical lengths of the edges connect-ing the hubs. Our minimization criterion is:

minimizeX

u2NV

X

x2NP

1cðxÞDðu; xÞZu;xðvOu þ dDuÞ

þX

u2NV

X

x2NP

X

y2NP

1bðx; yÞaDðx; yÞYu

x;y ð5Þ

As stated in the previous section, our three objectivesare to minimize internodal Euclidean distance, minimizepath length and balance edge and node utilization in thephysical network. The minimization of internodal Euclid-ean distance and path length is achieved through the useof Dðx; yÞ in the numerator in the second summation. Thatterm aids the selection of shortest available physical pathsto map a virtual edge. Our other objective, balancing nodeand edge utilization, dictates that we should select hubswith larger processing capacities and capable of handlinglarger flows (residual bandwidths) should be preferredover other hubs with lower residual capacities. This isachieved by the cðxÞ and bðx; yÞ terms in the objective func-tion. Therefore, the objective function ensures that a vir-tual network is allocated using the least possible amountof resources beyond its demanded resources and occupiesportions of the physical network that are least loaded.

5.4.3. ConstraintsThe objective function tries to minimize the cost subject

to constraints on virtual task mapping that respect theavailable resources in the physical network. We state theseconstraints below, and note that the total number of con-straints is dominated OðjNP j2 þ jNP j � jNAjÞ.

Selecting p Hubs The constraintX

x2NP

Zx;x ¼ p; ð6Þ

ensures that the number of hubs selected is strictly equalto the number of virtual nodes, i.e., only p physical nodes

Fig. 2. Constraint (10) prevents the mapping of multiple virtual nodes toone physical node (a). Constraint (11) prevents a single virtual node to bemapped to multiple physical nodes (b).

176 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

act as hubs while the other nodes act as transit nodes forflows.

Processing Capacity The constraints

cðuÞ � Zu;x 6 cðxÞ; 8u 2 NV ; x 2 NP ð7Þ

ensure that the processing capacity constraint by mappingvirtual nodes to a candidate node that has a residual pro-cessing capacity greater than the virtual node processingrequirement.

Bandwidth Capacity The constraintsX

u2NV

Yuy;x 6 bðy; xÞ; 8x; y 2 NP ; and ð8Þ

ensure that the summation of flows on a physical edge ineither directions is within the residual bandwidth of the edge.

Flow Conservation The constraintsX

v2NV

dðu; vÞZv;x þX

y2NP

Yux;y

¼X

y2NP

Yuy;x þ OuZu;x; 8u 2 NV ; x 2 NP; ð9Þ

Fig. 3. Mapping of nodes and edges for request from Fig. 1. VHub tries to milimitations specified by location, resource and bandwidth constraints. As a result8;1 and 9, respectively. The physical edges utilized by the virtual network aredashed lines).

enforce flow conservation at the hubs. That is, we ensurethat all the flow at a origin virtual node is sent to thehub, whereas a destination virtual node receives only theamount as directed by the demand between the originand destination. This, along with the bandwidth capacityconstraints of Eq. (8), ensures that a flow is split only whenthere are no physical edges that can support the entire flowbetween the origin and the destination.

Virtual Node Mapping The constraintsX

x2NP

Zu;x ¼ 1; 8u 2 NV ; ð10Þ

ensure that multiple virtual nodes from the same requestare never mapped to a single physical node. This conditionis shown in Fig. 2(a).

The constraintsX

u2NV

Zu;x 6 1; 8x 2 NP ; ð11Þ

ensure that a virtual node is strictly mapped to a singlephysical node and not split between multiple physicalnodes. This condition is shown in Fig. 2(b).

The constraints

Zu;x 6 Zx;x; 8u 2 NV ; x 2 NP ; ð12Þensure that only one hub is allocated to the origin–destina-tion flow at the origin and the destination respectively.

Domain Constraints The constraints

Yux;y P 0; 8u 2 NV ; x; y 2 NP; and ð13Þ

Zu;x 2 f0;1g; 8u 2 NV ; x 2 NP: ð14Þ

nimize internodal distance and internodal path lengths, but factoring in, virtual nodes a; b; c get mapped (depicted using arrows) to physical nodes(8,1) and (1,9). The Steiner tree formed is shown as well (depicted using

S. Shanbhag et al. / Computer Networks 77 (2015) 169–180 177

are the real and binary domain constraints for the vari-ables, Yu

x;y and Zu;x.The process of optimizing internodal distance and path

lengths is shown in Fig. 3. Although all virtual nodes have alot of potential physical nodes they can be mapped to, theyare mapped to nodes that minimize internodal distance,and to edges such that the path lengths are minimized,in essence, reducing the problem to the ‘‘geometric Steinertree problem’’ [24] whenever geographic constraints arepresent.

6. Performance evaluation

To demonstrate the effectiveness of VHub, we showevaluation results that compare of two other, state-of-the-art virtual network mapping algorithms, DViNe [4],and vnmFlib [5]. Both algorithm are described in moredetail in Section 2.

6.1. Methodology

We have implemented all three algorithms in the opensource virtual network embedding simulator [25] used in[10]. Both DViNe and vnmFlib used the best possibleparameters as specified by their authors.

For the first set of experiments, we use a syntheticphysical network and virtual requests generated usingGeorgiaTech’s GT-ITM [26]. Node placement is randomwithin a 100� 100 grid. The edge probability betweennodes in the generated topologies depends on the distancebetween the nodes as proposed in [27]. The physical net-work is configured to have 100 nodes with processingresources set to real numbers uniformly distributedbetween 50 and 100 units. Edge bandwidths are real num-bers uniformly distributed between 50 and 100 units aswell. The number of nodes in the virtual network is

0

20

40

60

80

100

120

0 200 400 600 800 1000

num

ber

of s

ucce

ssfu

l

map

ping

s

mapping iteration

path splitting:

0

10k

20k

30k

40k

50k

0 200 400 600 800 1000

map

ping

cos

t

mapping iteration

Fig. 4. Performance metric over an experime

uniformly distributed between 8 and 20 nodes with theprocessing resources uniformly distributed between 0and 20 units. Similarly, the virtual edge bandwidths aredistributed between 20 and 50 units. Some virtual networkrequests might allow path splitting (i.e., the virtual edgescan be mapped to multiple paths on the physical network).The percentage of virtual network requests that allow pathsplitting take values in f0%;50%;100%g. We vary the loca-tion constraint H to take values f10;50;1g. A value ofH ¼ 1 implies that there is no location constraint and avirtual node can be mapped to any physical node in thenetwork. All algorithms are presented with the samesequence of requests for that experiment. If a mapping fails(e.g., due to resource constraints), the mapping processcontinues with the next request. A total of 1000 requestsare processed by each algorithm.

For the second set of experiments, we use virtual net-work requests collected from Emulab. These traces donot vary as widely in their parameter configuration, butare more representative of current virtual network use.For the experiments, the actual Emulab testbed topologywas used as the physical network. Since the resources inEmulab are heterogeneous and our implementation ofalgorithms cannot be directly tested on them, we set thenode processing resources and edge bandwidth resourcesto 100 units each and randomly placed them on a100� 100 grid. The size of the topology was restricted to400 nodes and 600 edges. The virtual networks wererestricted to topologies of up to 15 nodes, with nodes hav-ing processing demands uniformly distributed between 0and 20 and the edges having bandwidth demands uni-formly distributed between 0 and 50. The algorithms weretested on this setup mapping 10,000 virtual networks at apath splitting of 0% and H ¼ 1.

For solving the VHub and DViNe formulations, we haveused IBM’s ILOG CPLEX Optimization Studio [28]. These

100%, Θ: ∞

0

10k

20k

30k

40k

50k

0 200 400 600 800 1000

reve

nue

gene

rate

d

mapping iteration

0.0

0.2

0.4

0.6

0.8

1.0

0 200 400 600 800 1000

reve

nue

to c

ost r

atio

mapping iteration

VHubvnmFlib

DViNe

nt with 1000 virtual network requests.

0.0

0.2

0.4

0.6

0.8

1.0

0.0 0.2 0.4 0.6 0.8 1.0C

DF

residual node resources

DViNevnmFlib

VHub

0.0

0.2

0.4

0.6

0.8

1.0

0.0 0.2 0.4 0.6 0.8 1.0

CD

F

residual edge resources

path splitting: 0%, Θ : ∞

Fig. 5. Cumulative distribution function of residual node and edge resources.

0

20

40

60

80

100

120

0 20 40 60 80 100 120 140

num

ber o

f suc

cess

ful m

appi

ngs

path splitting=0%, Θ=∞

0

20

40

60

80

100

120

0 20 40 60 80 100 120 140

path splitting=100%, Θ=∞

0

20

40

60

80

100

120

0 20 40 60 80 100 120 140num

ber o

f suc

cess

ful m

appi

ngs

time per mapping (sec)

path splitting=0%, Θ=50%

0

20

40

60

80

100

120

0 20 40 60 80 100 120 140time per mapping (sec)

path splitting=0%, Θ=10%

VHubvnmFlib

DViNe

Fig. 6. The number of successful mappings versus average running time per mapping.

178 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

experiments were run on an Intel Quad-core CPU runningat 2.83 GHz with 3 MB of level-2 cache and 2 GB of mainmemory. The linear programs being solved using our for-mulation has OðjNP j2 þ jNP j � jNAjÞ constraints andOðjNPj � jNAjÞ variables. Mixed-integer linear programmingsolves such as CPLEX typically use a combination of linearprogramming and branch-and-bound style methods toidentify an optimal solution. As we discuss in the followingsections, in our experiments the time taken per mappingcompared favorably to other approaches.

6.2. Results for synthetic requests

A complete run of an evaluation is shown in Fig. 4. Thefour graphs show the number of virtual requests thathave been mapped successfully, the revenue, the cost, aswell as the revenue-to-cost ratio. Since virtual networksare added (but never removed) during the experiment,the values for number of mapped networks, revenue,and cost increase monotonically. VHub performs better

than the other two algorithms on all metrics. In particu-lar, VHub can map a larger number of virtual networkrequests than the other two algorithms using the samephysical network. This implies that VHub is able to utilizelink and edge resources more effectively. To illustrate thispoint, Fig. 5 shows the cumulative distribution function ofthe residual resources on links and nodes at one iterationof the experiment (i ¼ 120). The figure shows that thenode resources are used roughly equally by all algorithms(since they all need to allocate the same number ofnodes). However, VHub is able to find better paths andthus uses less link resources. Thus, it can allocate morevirtual networks overall.

To put the increased performance of VHub in the con-text of running time, Fig. 6 shows the number of successfulmappings versus the average processing time for onevirtual network request. VHub can map more virtual net-works than DViNe and vnmFlib in less time – except forthe highly constrained case of H ¼ 10, where allalgorithms find the same number of mappings. The

Table 4Summary of results comparing VHub (V), vnmFlib (F) and DViNe (D).

Experiment No. of successfulmappings

R/C ratio Time per mapping(s)

Improvement of VHub over vnmFlib

Topologies Path splitting (%) H V F D V F D V F D Map. (%) R/C (%) Time (%)

Synthetic 0 10 35 35 35 0.52 0.47 0.45 5 142 6 0 10 960 50 97 79 70 0.76 0.47 0.39 16 70 113 23 61 760 1 106 89 77 0.76 0.47 0.39 18 51 108 19 62 65

100 1 95 77 77 0.74 0.45 0.46 21 107 137 23 63 80

Emulab 0 1 370 365 381 0.60 0.63 0.50 15 20 38 1.4 �4.3 26

0.0

0.2

0.4

0.6

0.8

1.0

0 100 200 300 400aver

age

node

util

izat

ion

successful mappings

path splitting: 0% Θ : ∞

0.0

0.2

0.4

0.6

0.8

1.0

0 100 200 300 400aver

age

edge

util

izat

ion

successful mappings

path splitting: 0%, Θ : ∞

0.0

0.2

0.4

0.6

0.8

1.0

0 100 200 300 400

reve

nue

to c

ost r

atio

successful mappings

path splitting: 0%, Θ : ∞

VHubvnmFlib

DViNe

Fig. 7. Results for Emulab topologies with path splitting of 100% and H ¼ 1.

S. Shanbhag et al. / Computer Networks 77 (2015) 169–180 179

performance results are summarized in Table 4, which alsocompares VHub to vnmFlib.

6.3. Results for Emulab requests

For the set of real virtual network requests from Emu-lab, Fig. 7 shows the number of successful mappings alongthe x-axes and the node and edge utilization and revenue-to-cost ratio on the y-axes. All three algorithms achieveroughly the same number of mappings. VHub performsparticularly well for the early iterations of the experiment.

The running times of the algorithms for the Emulabtraces are listed in Table 4. VHub requires 26% less timeto achieve the same quality mapping as other algorithms.This improvement is less than the improvement for syn-thetic topologies, which may be due to the Emulab physi-cal topology not matching as closely the hub-and-spokemodel used in VHub. Nevertheless, most Emulab topologyrequests are of hub-and-spoke type, leading to a slightmismatch.

7. Conclusion

Network virtualization is an important technology forthe future Internet. Allocating virtual networks dynami-cally requires effective mapping algorithms that determinewhich physical resources to assign to virtual networkrequests. Prior work has focused on solutions that separatethe allocation of links and nodes into two steps. In thispaper, we present a novel method, VHub, for virtual net-work mapping that is based on the p-hub facility locationproblem and performs mapping of links and nodes in a sin-gle step. Our results show that VHub outperforms state-of-the-art solutions for virtual network mapping by up to 23%in terms of the number of networks that can be allocated ina physical network and 26–96% in terms of run time. Webelieve that these results are an important step in enabling

the efficient operation of current and future virtualizednetworks.

References

[1] B. Chun, D. Culler, T. Roscoe, A. Bavier, L. Peterson, M. Wawrzoniak,M. Bowman, PlanetLab: an overlay testbed for broad-coverageservices, SIGCOMM Comput. Commun. Rev. 33 (2003) 3–12.

[2] D.G. Andersen, Theoretical approaches to node assignment, Tech.Rep. Paper 86, Department of Computer Science, Carnegie MellonUniversity, Pittsburgh, PA, December 2002. <http://repository.cmu.edu/compsci/86>.

[3] N.M.M.K. Chowdhury, R. Boutaba, A survey of network virtualization,Comput. Netw. 54 (5) (2010) 862–876.

[4] N.M.M.K. Chowdhury, M.R. Rahman, R. Boutaba, Virtual networkembedding with coordinated node and link mapping, in:Proceedings of the 28th Conference on InformationCommunications (INFOCOM), 2009, pp. 783–791.

[5] J. Lischka, H. Karl, A virtual network mapping algorithm based onsubgraph isomorphism detection, in: Proc. of the First ACMSIGCOMM Workshop on Virtualized Infrastructure Systems andArchitectures (VISA), Barcelona, Spain, 2009, pp. 81–88.

[6] R. Ricci, C. Alfeld, J. Lepreau, A solver for the network testbedmapping problem, SIGCOMM Comput. Commun. Rev. 33 (2003) 65–81.

[7] J. Fan, M.H. Ammar, Dynamic topology configuration in serviceoverlay networks: a study of reconfiguration policies, in: Proc. of theTwentyfifth Annual Joint Conference of the IEEE Computer andCommunications Societies (INFOCOM 2006), Barcelona, Spain, 2006.

[8] Y. Zhu, M.H. Ammar, Algorithms for assigning substrate networkresources to virtual network components, in: Proc. of theTwentyfifth Annual Joint Conference of the IEEE Computer andCommunications Societies (INFOCOM 2006), Barcelona, Spain, 2006.

[9] J. Lu, J. Turner, Efficient mapping of virtual networks onto a sharedsubstrate, Tech. Rep. WUCSE-2006-35, Department of ComputerScience and Engineering, Washington University in St. Louis, June2006.

[10] M. Yu, Y. Yi, J. Rexford, M. Chiang, Rethinking virtual networkembedding: substrate support for path splitting and migration,SIGCOMM Comput. Commun. Rev. 38 (2008) 17–29.

[11] W. Szeto, Y. Iraqi, R. Boutaba, A multi-commodity flow basedapproach to virtual network resource allocation, in: Proc. of IEEEGlobal Communications Conference (GLOBECOM), San Francisco, CA,2003.

[12] X. Cheng, S. Su, Z. Zhang, H. Wang, F. Yang, Y. Luo, J. Wang, Virtualnetwork embedding through topology-aware node ranking,SIGCOMM Comput. Commun. Rev. 41 (2) (2011) 38–47, http://dx.doi.org/10.1145/1971162.1971168. http://doi.acm.org/10.1145/1971162.1971168.

180 S. Shanbhag et al. / Computer Networks 77 (2015) 169–180

[13] A. Bavier, N. Feamster, M. Huang, L. Peterson, J. Rexford, In VINIveritas: realistic and controlled network experimentation, in:SIGCOMM ’06: Proceedings of the 2006 Conference onApplications, Technologies, Architectures, and Protocols forComputer Communications, Pisa, Italy, 2006, pp. 3–14.

[14] B. White, J. Lepreau, L. Stoller, R. Ricci, S. Guruprasad, M. Newbold,M. Hibler, C. Barb, A. Joglekar, An integrated experimentalenvironment for distributed systems and networks, in: Proc. of theFifth Symposium on Operating Systems Design and Implementation,USENIX Association, Boston, MA, 2002, pp. 255–270.

[15] National Science Foundation, Global Environment for NetworkInnovation, <http://www.geni.net/>.

[16] OneLab Consortium, OneLab – Future Internet Test Beds, <http://www.onelab.eu/>.

[17] T. Anderson, L. Peterson, S. Shenker, J. Turner, Overcoming theInternet impasse through virtualization, Computer 38 (4) (2005) 34–41.

[18] J.S. Turner, D.E. Taylor, Diversifying the Internet, in: Proc. of IEEEGlobal Communications Conference (GLOBECOM), vol. 2, Saint Louis,MO, 2005.

[19] A. Fischer, J.F. Botero, M.T. Beck, H. de Meer, X. Hesselbach, Virtualnetwork embedding: a survey, IEEE Commun. Surveys Tutorials 15(4) (2013) 1888–1906, http://dx.doi.org/10.1109/SURV.2013.013013.00155. http://dx.doi.org/10.1109/SURV.2013.013013.00155.

[20] Y. Liao, D. Yin, L. Gao, PdP: parallelizing data plane in virtual networksubstrate, in: Proc. of the First ACM SIGCOMM Workshop onVirtualized Infrastructure Systems and Architectures (VISA),Barcelona, Spain, 2009, pp. 9–18.

[21] L.P. Cordella, P. Foggia, C. Sansone, M. Vento, An improved algorithmfor matching large graphs, in: Proc. of 3rd IAPR-TC15 Workshop onGraph-based Representations in Pattern Recognition, Ischia, Italy,2001, pp. 149–159.

[22] C. Wang, S. Shanbhag, T. Wolf, Virtual network mapping with trafficmatrices, in: Proc. of IEEE International Conference onCommunications (ICC), Ottawa, Canada, 2012.

[23] Z. Drezner, H.W. Hamacher, Facility Location: Applications andTheory, Springer, 2001.

[24] P. Crescenzi, V. Kann, Approximation on the web: a compendium ofNP optimization problems, Proc. of International Workshop onRandomization and Approximation Techniques in Computer Science(RANDOM) (Lecture Notes in Computer Science), vol. 1269, SpringerVerlag, Karlsruhe, Germany, 1997, pp. 111–118.

[25] M. Yu, Virtual Network Embedding Simulator, 2008. <http://www.eecs.berkeley.edu/minlanyu/embed.tar.gz>.

[26] E. Zegura, K. Calvert, S. Bhattacharjee, How to model aninternetwork, in: Proc. of the Fifteenth IEEE Conference onComputer Communications (INFOCOM), San Francisco, CA, 1996,pp. 594–602.

[27] B.M. Waxman, Routing of multipoint connections, in: C. Chas, V.K.Konangi, M. Sreetharan (Eds.), Broadband Switching: Architectures,Protocols, Design, and Analysis, IEEE Computer Society Press, 1991,pp. 347–352 (Chapter 31).

[28] International Business Machines Corporation, IBM ILOG CPLEXOptimizer, <http://www.ibm.com/software/integration/optimization/cplex-optimizer/>.

Shashank Shanbhag graduated with a Ph.D.degree in Electrical and Computer Engineer-ing from the University of Massachusetts,Amherst in September 2011. He received hisB.S. degree in Electronics and Communica-tions from Visvesvaraya Technological Uni-versity, India and his M.S. degree in Electricaland Computer Engineering from the Univer-sity of Massachusetts, Amherst. His Ph.D.dissertation focused on data–path custom-ization and network virtualization in next–generation networks.

Currently, he is working as a R&D Software Engineer at Oracle Corp,where he works on solving some of the problems in cloud computing. Heis a former student member of ACM and IEEE. He has 14 publications in

IEEE and ACM conferences and 2 journal publications.

Arun Kumar Reddy Kandoor received anM.S. degree in computer systems engineeringfrom University of Massachusetts, Amherst,USA (September 2008–December 2010) andB.Tech. degree in electronics and communi-cations engineering from Indian Institute ofTechnology, Guwahati, India (July 2002–May2006).Starting December 2010, he has been anEngineer at Qualcomm, Inc. San Diego and hisprevious positions include, Senior SoftwareEngineer at Samsung India Software Opera-

tions, Bangalore, India (July 2006–July 2008), R&D Engineering Intern asSamsung Telecommunications America, Dallas, TX, USA (June 2009–August 2009). His current fields of interest are Computer Networks and

Embedded systems. His previous fields of interest include Signal Pro-cessing and Instrumentation.

Cong Wang is an IEEE student member, bornin Hebei, China. He is currently workingtoward the Ph.D. degree in ECE department,University of Massachusetts Amherst, US. Hereceived his B.S. degree in Automation fromYanshan University, Qinhuangdao, China, in2008 and the M.Sc. degree in ComputerEngineering from University of MassachusettsAmherst in 2011. His research focuses onInternet management and measurement,wireless network design and analysis, andsensor networks.

Ramgopal Mettu is an Associate Professor inthe Department of Computer Science atTulane University. He received his B.S. degreein Computer Science from the University ofTexas at Austin in 1997, and also completedhis Ph.D. there in 2002. He held a postdoctoralresearch associate position at DartmouthCollege from 2002 to 2005. He was previouslyan Assistant Professor in the Department ofElectrical and Computer Engineering at theUniversity of Massachusetts Amherst, from2005–2011. His primary area of interest is the

design and analysis of algorithms in the application areas of computa-tional biology, machine learning and networking.

Tilman Wolf is Professor of Electrical andComputer Engineering at the University ofMassachusetts Amherst. He received a Diplomin informatics from the University of Stutt-gart, Germany, in 1998. He also received aM.S. in computer science in 1998, a M.S. incomputer engineering in 2000, and a D.Sc. incomputer science in 2002, all from Washing-ton University in St. Louis.He is engaged in research and teaching in theareas of computer networks, computer archi-tecture, and embedded systems. His research

interests include Internet architecture, network routers, and embeddedsystem security. He is currently lead principle investigator on theChoiceNet project, one of five large NSF Future Internet Architecture (FIA)

projects.