A Constrained Shortest Path Scheme for Virtual Network Service Management
Dmitrii Chemodanov, Flavio Esposito, Prasad Calyam, Andrei Sukhov
11 A Constrained Shortest Path Scheme forVirtual Network Service Management
Dmitrii Chemodanov * , Flavio Esposito † * , Prasad Calyam * , Andrei Sukhov ‡ * University of Missouri-Columbia, USA; † Saint Louis University, USA; ‡ Samara University, Russia;Email: [email protected], [email protected], [email protected], [email protected]
Extended Technical Report
Abstract —Virtual network services that span multiple datacenters are important to support emerging data-intensive applica-tions in fields such as bioinformatics and retail analytics. Success-ful virtual network service composition and maintenance requiresflexible and scalable ‘constrained shortest path management’both in the management plane for virtual network embedding(VNE) or network function virtualization service chaining (NFV-SC), as well as in the data plane for traffic engineering (TE). Inthis paper, we show analytically and empirically that leveragingconstrained shortest paths within recent VNE, NFV-SC and TEalgorithms can lead to network utilization gains (of up to 50%)and higher energy efficiency. The management of complex VNE,NFV-SC and TE algorithms can be, however, intractable forlarge scale substrate networks due to the NP-hardness of theconstrained shortest path problem. To address such scalabilitychallenges, we propose a novel, exact constrained shortest pathalgorithm viz., ‘Neighborhoods Method’ (NM). Our NM usesnovel search space reduction techniques and has a theoreticalquadratic speed-up making it practically faster (by an orderof magnitude) than recent branch-and-bound exhaustive searchsolutions. Finally, we detail our NM-based SDN controller im-plementation in a real-world testbed to further validate practicalNM benefits for virtual network services.
Index Terms —Constrained Shortest Path, Virtual NetworkEmbedding, NFV Service Chaining, Traffic Engineering.
I. I
NTRODUCTION T HE advent of network virtualization has enabled newbusiness models allowing infrastructure providers toshare or lease their physical networks that span multiple datacenters. Network virtualization is being increasingly adoptedto support data-intensive applications within enterprises ( e.g. ,retail analytics) and academia ( e.g. , bioinformatics and highenergy physics) over wide-area federated infrastructures suchas the VMware Cloud [1] and the Global Environment forNetwork Innovations (GENI) [2]. A major challenge for in-frastructure providers is to offer virtual network services thatmeet the application Service Level Objective (SLO) demandson shared (constrained) physical networks. Examples of SLOdemands can refer to technical constraints such as bandwidth,high reliability, or low latency.In order to compose and maintain virtual network services,infrastructure providers need to run management protocols(within the ‘management plane’) such as e.g. , Virtual NetworkEmbedding (VNE) to satisfy users’ virtual network requests.VNE is the NP-hard graph matching problem of mappinga constrained virtual network on top of a shared physicalinfrastructure [3], [4]. Another management protocol examplepertains to Network Function Virtualization service chaining(NFV-SC) [5], [6], in which a network manager is required to place Virtual Network Functions ( e.g. , firewalls, load bal-ancers, etc) and setup a path across corresponding software-defined middleboxes to guarantee different high-level trafficconstraints i.e. , policies. While virtual network services areoperating, network managers need to also deploy, within the‘data plane’, traffic engineering (TE) techniques to maintainprofiles or improve network utilization [7].Successful virtual network service composition and mainte-nance in both management plane and data plane mechanismsrequires scalable and flexible ‘constrained shortest path man-agement’ for the following reasons. The constrained shortestpath problem is the NP-hard problem of finding the shortestpath that satisfies an arbitrary number of end-to-end (or path)constraints [8], and its existing exact solutions are commonlybased on branch-and-bound exhaustive search algorithms [8],[9], [10] or integer programming. These techniques haveexponential complexity, and hence, limit scalability of theconstrained shortest path management. Such scalability lim-itations are exacerbated by the complexity of VNE, NFV-SCand TE algorithms as well as the potentially large scale of sub-strate networks. Although some heuristics or approximationalgorithms can find constrained shortest paths in polynomialtime (at expense of optimality [11]), these algorithms supportonly a specific number of constraints, or a specific cost tooptimize [12], [13], [14]. Thereby, they limit the flexibility ofthe constrained shortest path management.By leveraging constrained shortest paths, we show how wecan enhance network utilization and energy efficiency of VNE,NFV-SC and TE services by both analytical and empiricalmeans. Reasons for the observed benefits are as follows:Firstly, by using a constrained shortest path, we can minimizea provider’s cost associated with flows allocation subject tothe application SLO constraints in TE [15], [16]. Such costspotentially hinder long-term infrastructure providers’ revenuemaximization; this can be understood using a simple example:a path comprising of two physical links to maintain a singleflow has a higher allocation cost than an alternative solutionthat uses only one physical link. For example, if the flow SLOdemand is 10 Mbps, a path composed by a single physicallink would need to provision only 10 Mbps, while a pathcomposed by two links would require 20 Mbps. Secondly, amore scalable and flexible constrained shortest path approachcan be also beneficial for VNE and NFV-SC [17], [18], [19]when virtual links are subject to an arbitrary number ofconstraints such as bandwidth, latency and loss rate. Othertypes of constraints can also be imposed by optimizationmethods, such as the column generation approach, typicallyused to speed-up integer programming [8], [17], [18]. This a r X i v : . [ c s . PF ] A ug is because in the aforementioned cases, constrained shortestpaths can be part of the optimal solution, i.e. , such paths canbest improve the objective value under arbitrary constraints. Our Contributions.
To achieve the constrained shortest pathbenefits and address their management flexibility and scalabil-ity challenges in virtual network services, we propose a noveland exact constrained shortest path algorithm viz. , ‘Neighbor-hoods Method’ (NM). Our NM is based on a novel double-pass search space reduction technique that synergizes dynamicprogramming with a branch-and-bound exhaustive-search. Inaddition, we propose a novel infeasibility pruning technique viz. , “Look Back” , which benefits from NM’s double passdesign to further ease the constrained shortest paths findingin practice. Our NM is solving an NP-hard problem, so it isexponential in its general form. However, our computationalcomplexity analysis shows that NM has a quadratically lowercomplexity upper-bound (halved exponent) than alternativemethods. Moreover, when synergistically used with existingsearch space reduction techniques [8], [9], [10], our scalabilityevaluation results indicate how NM is faster by an order ofmagnitude than recent branch-and-bound exhaustive searchmethods, and hence, scales better.Furthermore, NM is flexible due to its adaptable perfor-mance and applicability to different constrained shortest pathscenarios with an arbitrary set of (SLO) constraints and anarbitrary cost function. For example, when we allocate trafficflow requests with a single path and multiple link constraints,NM can find some constrained shortest path variants inpolynomial time. Thus, it can substitute diverse existing pathfinder algorithms such as the extended version of Dijkstra [20]and the iterative version of Bellman-Ford [12]. In its generalform, NM can be also used to speed-up finding of all loop-free, k -constrained shortest or Pareto-optimal paths [9] fromthe source to the destination. Thus, NM is also applicable todiverse virtual network services including those with splittableand unsplitable flows. We demonstrate such flexibility withan extensive numerical simulation campaign, testing NM overdiverse network topologies for both online VNE/NFV-SCwith unsplittable flows and for TE with splittable flows. Wefound that the number of embedded VN requests and energyefficiency (and thereby the providers’ revenue) can increasewhen the constrained shortest path management is used fortested VNE/NFV-SC solutions: either one-shot centralized( i.e. , with joined node and link embedding) [17], [18], [19]or two-stages distributed ( i.e. , with separate node and linkembedding) [21]. When using the constrained shortest pathmanagement within either linear programming [22] or greedy-based TE solutions [15], [16], our simulation results indicategains of up to in network utilization and lower energyconsumption in some cases.Finally, we implement an open-source Software-DefinedNetworking (SDN) based NM controller that is availableat [23]. Our GENI [2] evaluation experiments with our imple-mentation prototype confirm our analytical and empirical find-ings in real-world settings and show no constrained shortestpath overhead (sought by NM) on the virtual network servicemanagement and data plane mechanisms at large scale. Paper organization.
In Section II, we formally state theconstrained shortest path problem using optimization theory.Section III shows importance of the constrained shortest path management in VNE/NFV-SC and TE. In Section IV, wepresent details of our NM approach. The complexity improve-ments of our NM w.r.t. recent branch-and-bound exhaustivesearch algorithms are presented in Section V. Section VIdescribes our NM prototype implementation. Section VIIdescribes our evaluation methodology, performance metricsand results. Section VIII concludes the paper.II. T HE C ONSTRAINED S HORTEST P ATH P ROBLEM
The constrained shortest path problem is the NP-hardproblem of finding the shortest path subject to an arbitraryset of hop-to-hop and end-to-end constraints. In this section,we define this problem using optimization theory. In thesubsequent section, we motivate the importance of its flexible and scalable management in diverse virtual network services.
A. Problem Overview
The problem of providing a (shortest) path with multiple(SLO) constraints is NP-hard [8], and its complete survey canbe found in [11]. Herein, we mention a few representativesolutions that help us present our novel contributions. Mostheuristics group multiple metrics into a single function reduc-ing the problem to a single constrained routing problem [24],and then solve the routing optimization separately, e.g. , us-ing Lagrangian relaxation [25]. The exact pseudo-polynomialalgorithm proposed by Jaffe et al. [14] offers a distributedpath finder solution limited to a two-path constraints problem.Wang et al. [20] use extended version of Dijkstra algo-rithm (EDijkstra), where all links with infeasible hop-to-hopconstraints are excluded. EDijkstra runs in polynomial timebut may omit any (path hop count) minimization, desirablein network virtualization to optimize the physical networkutilization. To minimize the path hop count under a single pathconstraint ( e.g. , delay) an iterative modification of Bellman-Ford (IBF) algorithm was proposed in [12]. Our approach isnot limited to a single path constraint and can be adapted tosubsume both EDijkstra and IBF as we discuss in Section V.The authors in [10] propose an exact algorithm for theconstrained shortest path problem, and apply several searchspace reduction techniques such as dominated paths (pruningby dominance and bound) and the look-ahead (pruning byinfeasibility) notion for the exponential complexity exhaustivesearch, utilizing the k -shortest path algorithm. We also apply asimilar technique to reduce the constrained path search space,though without any look-ahead, since it is computationallyexpensive. Instead, our design uses a more efficient “Look-Back” pruning technique (see Section IV-B). In [26], theauthors propose an Exhaustive Breath-First Search (EBFS)based approach to solve the constrained path finder problem,focussing on delay. Another more recent work [9] also usesEBFS with a dominant path space reduction technique to findmulti-criteria Pareto-optimal paths. Alternatively, an exhaus-tive Depth-First Search (EDFS) can be used as a branch-and-bound algorithm. For example, the authors in [8] proposedthe “pulse” algorithm that uses EDFS with dominated pathsand look-ahead search space reduction techniques. Both ofEBFS and EDFS algorithms have exponential worst case timecomplexity. Our solution however quadratically reduces theworst case complexity of these algorithms (see Section V). B. Constrained Shortest Path Problem
Let l be the number of hop-to-hop or link constraints formin/max network metrics, e.g. , bandwidth, and p be the num-ber of end-to-end path constraints for additive/multiplicativenetwork metrics, e.g. , delay or loss. Moreover, we denote with l ⊕ paths with multiple links and a single path constraints,and with and l ⊕ p paths with multiple links and multiplepath constraints. Given the above notation, we define theconstrained shortest path problem as follows: Problem 1 (constrained shortest path) . Given a physicalnetwork G = ( V, E ) , let us denote with D the vector of flowdemands to be transferred and let u ij denote a capacity ofthe directed edge e ij ; let f ij be a variable f ij ∈ { , D } denoting an amount of flow on the edge e ij , and let c ij denote a cost of transferring a unit of flow through such edge;finally, let ¯ l and ¯ p denote vectors of link (hop-to-hop) andpath (end-to-end) constraints, excluding capacity constraints,where ¯ l corresponds to min/max edge e ij weights w ¯ lij ( i.e. , ≥ or ≤ , respectively), and ¯ p corresponds to additive edge e ij weights w ¯ pij ; the problem of finding constrained shortestpath between source v s and destination v t vertices can beformulated as follows:minimize (cid:88) e ij ∈ E c ij f ij (1) subject to Flow Conservation Constraints (cid:88) v j ∈ V f ij − (cid:88) v k ∈ V f ki = D, i = s , i (cid:54) = s or t − D, i = t , ∀ v i ∈ V (2) Capacity Constraints f ij ≤ u ij , ∀ e ij ∈ E (3) Other Link Constraints D w lij f ij ≤ l, ∀ e ij ∈ E, l ∈ ¯ l (4) Path Constraints D (cid:88) e ij ∈ E w pij f ij ≤ p, ∀ p ∈ ¯ p (5) Existential Constraints f ij ∈ { , D } , ∀ e ij ∈ E, D > . (6)Finding a shortest path (without constraints) has a poly-nomial time complexity: consider Equations 4 and 5: inabsence of any link or path constraints, the constraint matrixof the above optimization problem is unimodular [27]. Thiscondition allows us to solve the optimization problem usinglinear programming. Such time complexity bound does notnecessarily hold in presence of at least a single link or pathconstraint ( ¯ l (cid:54) = 0 or ¯ p (cid:54) = 0 ). In that case, we have to solve theabove optimization problem using integer programming [27]. Note that multiplicative constraints (e.g., packet loss) can be converted toadditive by composing them with a logarithmic function to avoid nonlinearity.
In the next section we show how finding a flexible andscalable solution to Problem 1 benefits a wide range of pathfinder subproblems to manage several virtual network services.III. C
ONSTRAINED S HORTEST P ATH FOR V IRTUAL N ETWORK S ERVICE M ANAGEMENT
Using optimization theory, in this section we motivate theneed for a flexible and scalable constrained shortest path tomanage virtual network services such as Traffic Engineering(TE), Virtual Network Embedding (VNE) and NFV ServiceChaining (NFV-SC). We also show how such a constrainedshortest path scheme does not introduce any additional inter-operability issues for aforementioned virtual network serviceswith respect to traditional shortest path schemes.
A. Finding Virtual Paths in Resource Constrained Scenarios
We begin by considering a variant of the constrained short-est path that operates on a resource constrained scenario, e.g. ,a natural or man made disaster scenario where connectivityis scarce. In those cases, one aim is to minimize the overallphysical resource consumption of virtual paths. To this end,we define the resource optimal constrained path by modifyingthe objective of Problem 1 as follows:
Problem 2 (resource optimal constrained path) . The resourceoptimal constrained path is a path that satisfies an arbitraryset of link/path constraints using minimal amount of physicalbandwidth: minimize (cid:88) e ij ∈ E f ij (7) where f ij , e ij and E are as defined in Problem . Note how by defining an equal weight c to all edges weseek the minimum hop path that satisfies an arbitrary set oflink/path constraints ( e.g. , imposed by SLO). B. Traffic Engineering
Traffic engineering (TE) techniques today can be roughlydivided into two groups: oblivious i.e. , no a-priori knowledgeof the SLO demands [28], and demands-aware, when suchknowledge is available [15], [16]. Moreover, the later has asuperior performance ( e.g. , can better utilize substrate networkresources) than the former [28] at the expense of having acentralized forwarding (or routing) control [15], [16], [29].We broadly classify demands-aware traffic engineering so-lutions (see e.g. [15], [16]) with the following network utilitymaximization problem: maximize [min f i ∈ F f airness i ( f i )] (8)where F denotes a set of all demands (or commodities);in [16], for example, such commodities are { src , dst , SLO } tuples; f i ∈ [0 , D i ] is continuous variable that denotes the totalamount of flow for commodity i with bandwidth demand D i ;and f airness i ( f ) is a linear piecewise-defined function whosedefinition is based on path service’s demands SLO constraints.For a complete problem formulation we refer to [22], [30]. Constrained shortest path relevance.
There are two standardways of formulating the TE optimization problem shownin Equation 8 — the arc-based [30] and path-based [22]
Flow1 [A-B], SLOs:
10 Gbps,
20 ms
Flow2 [A-C], SLOs:
10 Gbps,
20 ms A CBA C B10G A C B Flow1, Flow2 Flow1, Flow2
Shortest Path
Constrained
Shortest Path
Allocated Flows: Fig. 1:
Applying constrained shortest paths to allocate traffic flows improvesnetwork utilization: the widely applied shortest paths, e.g. , to allocate trafficflows, in this case
F low , can hinder allocation of other flows; allocating F low on a constrained shortest path as in Problem 2 instead permits theallocation of F low as well. formulations. In practice, due hardware granularity limitations,the arc-based linear programming solution can be infeasible toimplement, or require use of NP-hard integer programmingwhich can be intractable even for moderate size networks.The shortest path algorithms such as Dijkstra ( e.g. , withink-shortest path algorithms [31]) are currently used to find aset of paths as an input for the path-based linear programmingformulations or for their simplified greedy solutions [15], [16].The hope is also to map the highest priority flows to theminimum latency paths first. However, if we are aware of theservices’ SLO demands ( e.g. , bandwidth, latency, loss rate,etc.), we can use them as constraints to optimize physicalnetwork utilization (and hence the flow fairness) as describedin Problem 2. Motivating example.
Consider Figure 1: two flows
F low and F low with bandwidth and latency constraints are to beallocated on a physical network of Figure 1-left. Attemptingan allocation of F low by merely considering a shortest pathalgorithm Figure 1-center — as current TE solutions do, — thehosting physical path would have to use up to two physicallinks ( A → C → B ), thus preventing the allocation of thesubsequent requested flow F low . If instead a constrainedshortest path is used to allocate F low and F low as shownin Figure 1-right, then path A → B could be found, leavingcapacity for the allocation of F low (resulting in its higherfairness) as well.On the contrary, when shortest path algorithms are used tofind min-hop paths, such algorithms can lead to an infeasiblesolution even when a feasible one exists, leading to TEperformance degradation. For example, consider the mappingof F low with a latency constraint of 10 ms (tighter than 20in Figure 1). The min hop (shortest) path A → B violates the ms latency constraint, preventing the allocation of F low ,whereas the constrained shortest path algorithms would findthe feasible and optimal A → C → B path even thoughmore hops are needed to satisfy such tighter SLO demand.We dissect such network utilization gains when constrainedshortest paths are applied for TE in Section VII. C. Embedding Virtual Networks and Service Chains
Embedding a virtual network (service chain) requires a con-strained virtual service request to be mapped on top of a physi-cal network hosted by a single infrastructure provider, or by a federation of providers. To solve this (NP-hard [32]) graphmatching problem, earlier work proposed centralized (see e.g. [17], [18], [19], [33], [34], [35], [36]) and distributed [21],[37], [38] algorithms. Such solutions either separate the nodeembedding from the link embedding phase [21], [33], [37],[38], or simultaneously apply the two phases [17], [18], [19],[36]. When link embedding is considered separately, pathscan be found dynamically or precomputed for each virtuallink using Dijkstra or k -shortest path algorithms [21], [33],[38]. When instead node and link embedding are consideredjointly, recent work has shown how embedding problems canbe formulated as known multi-commodity flow problems [17],[19], [18]. On the one hand, all these problems show howthere is a need to minimize providers’ management costs whenallocating the virtual network or the service chain [18] asshown in the following objective: minimize (cid:88) e st ∈ E V (cid:88) e ij ∈ E S c ij f stij + (cid:88) v s ∈ V V (cid:88) v i ∈ V S c i x si (9)where V S and E S ( V V and E V ) denote sets of physical(virtual) vertices and edges, respectively; c ij and c i denotesunitary bandwidth and CPU cost on physical edge e ij , re-spectively; f stij ∈ [0 , D st ] is continuous variable that modelsthe amount of flow from v s to v t virtual vertices transferredthrough the physical edge e ij when a flow with demand D st is splittable, or, in its binary form, f stij ∈ { , D st } forunsplittable flows. Finally, x si ∈ { , D s } is the binary variablethat denotes whether the virtual vertex v s with computationdemand D s is assigned to the physical vertex v i or not. For acomplete problem formulation we refer readers to [17], [18],[19]. On the other hand, when virtual network (or servicechain) requests are unknown in advance, the cost minimizationstrategy presented in Equation 9 can cause physical networkpartitioning, that in turn can lead to lower physical networkutilization [17], [19]. To maximize the long term provider’srevenue i.e. to allocate more virtual network requests, often aload balancing objective is sought [17], [19]: minimize (cid:88) e st ∈ E V (cid:88) e ij ∈ E S c ij u ij f stij + (cid:88) v s ∈ V V (cid:88) v i ∈ V S c i u i x si (10)where u ij and u i denote available capacities of physical edge e ij and vertex v i , respectively. Constrained shortest path relevance.
To cope with integerprogramming intractabilities for solving path-based multi-commodity flow problems, the well-known column genera-tion approach can be applied as in [17], [18]. The columngeneration approach iteratively adds only those paths ( i.e. ,flow variables or columns) to the problem formulation thatimprove objective. In [17], [18] the Dijkstra shortest pathalgorithm is used to find the best shadow price paths (columns)for each virtual link to include them in the formulation.Although such approach best improve the objective value of e.g. , Equation 10, it can be suboptimal when virtual linkshave additional constraints such as latency or loss rate. Inthis scenario, a path between any two physical nodes (foundby solving Problem 1) can be a part of the optimal solution,even if it has a worse objective value than the shortest path,but satisfies all virtual link constraints. Generally, for anytwo stage or one-shot VNE algorithm, constrained shortestpaths can be used to best improve the objective value while
Build Neighborhoods
Perform Backward PassValidate Constraints O u t pu t: O p t i m a l P a t h Neighborhoods Method
Input-2: Constrained
Shortest Path Request -
Input-1:
Physical Graph -Vertices V -Edges E + Look Back + Look Back + Dominated Paths
Fig. 2:
Neighborhood Method Workflow in l ⊕ p case: The k th -hopNeighborhood Build (forward pass) first (using label-correcting), and theBackward Pass later find all simple paths of k length (with any instance ofbranch-and-bound exhaustive search); in the third step, we check candidatesfeasibility; we then repeat recursively the backward pass with the k + 1 neighborhoods, until the optimal (constrained shortest) path is found or allcandidates have been eliminated. To improve the time to solution, we coupleNM with a dominated path and a look-back search space reduction technique. satisfying an arbitrary number of virtual link constraints. InSection VII, we confirm such intuition empirically, by studyingthe allocation ratio improvements (a proxy for provider’srevenue) when our method is used to find paths for embeddingservices. IV. N EIGHBORHOODS M ETHOD
To solve the NP-hard constrained shortest path problem withan arbitrary set of ( e.g. , SLO) constraints in practical time, wepropose the novel Neighborhoods Method (NM).
Why the name “Neighborhoods Method”?
Most path seek-ing algorithms require at least two inputs for each node: ( i ) knowledge of neighbors, and ( ii ) awareness of all adjacentlink costs, often dictated by policies, or SLO constraints.Such constraints are then used by the path seeking algorithmto compute the lowest-cost paths. The Dijkstra algorithm e.g. , recursively finds the shortest path traversing the sourceneighbors and the neighbors of their neighbors. This recursivenotion leads to our definition of “neighborhoods” in NM, i.e , aset of nodes that can be reached from the source node with thesame number of hops, where each “neighborhood” (being aset) contains unique elements. Based on Bellman’s “Principleof Optimality” [39], such node repetitive structures can beused for label-correcting dynamic programming that we applyto reduce a number of exhaustive search path candidates. A. The NM General Case ( l ⊕ p case) As the exact constrained shortest path algorithm, the worstcase time complexity of NM when accepting an arbitrary set ofhop-to-hop and end-to-end constraints ( l ⊕ p ) is exponential.Our NM complexity analysis shows that the time complex-ity exponent is, however, halved with respect to commonbranch-and-bound path finders methods based on exhaustivesearch [8], [9], [10] (see Section V). Note also that in additionto the constrained shortest path, NM can simplify the processof finding all simple, k -constrained shortest or Pareto-optimalpaths [9] from the source to the destination.The general workflow of our NM algorithm is shown inFigure : NM is executed in three phases: ( i ) a forwardpass or neighborhoods building (by using label-correcting), ( ii ) a backward pass (with any instance of branch-and-boundexhaustive search), and a final ( iii ) constraints validation phase. During the forward pass, NM builds the neighborhoodsto estimate the path length. The backward pass is used to (a) (b) (c)(d) (e) Fig. 3:
Running example of NM in l ⊕ p case: (a) An example networkconfiguration with [bandwidth, delay, cost] link metrics; (b) NM forward passphase estimates the min hop count distance to Y during the first iteration,and (c) backward pass identifies all the shortest path candidates, which inthis case do not contain the optimal path; (d) the forward pass adds moreneighborhoods to find a path with longer distance to Y. (e) The Backwardpass identifies all paths of a given new length; in this case the path containsthe optimal X → B → A → Y solution. find end-to-end paths with a given length (hop count). Thefinal constraints validation phase is used to keep the best pathcandidate and decide whether or not the path search should beextended to longer path candidates involving more neighbors. Example 1.
Consider a network consisting of 4 nodes X , Y , A and B , as shown in Figure a . On the link ( X, A ) ,we denote with the first value the link constraint (in thiscase bandwidth), and with the second we refer to the firstpath constraint (in this case end-to-end delay); with the thirdvalue we refer to the second path constraint (in this casean arbitrary cost). In its general case, NM finds a path from X to Y satisfying the three constraints bw ≥ , delay ≤ and cost ≤ as follows: in the first phase, NM buildsall neighborhoods starting from the source node X until thedestination node Y is reached (Figure 3b). Upon reaching Y , NM begins the backward pass to find the full set of minhop paths (Figure 3c). If the set contains the optimal path (inthis case for Problem 2), NM terminates with a solution. Ifno such path is found, NM builds an additional neighborhoodas shown in Figure 3d and performs another backward passto check for optimality among paths that are one hop longerthan at the previous iteration (Figure 3e). NM iterates untileither the solution is found, or the maximum path length isviolated. In this example, NM returns the constrained shortestpath X → B → A → Y . Forward pass for l ⊕ p . Given an arbitrary graph G ( V, E ) ,where | V | and | E | represent the number of vertices andedges, respectively, in this phase NM successively buildsneighborhoods < N H > from the source X to the destination Y . Algorithm 1 describes the forward pass of NM. To builda new neighborhood N H , we add therein neighbors (adjacentvertices) of each vertex u in the current neighborhood cN H (line 6). For example, the first N H includes nearest neighborsof the source X (which is in the zero N H ), and the second
N H contains nearest neighbors of vertices in the first
N H ,and so on. The first phase ends as soon as the destination Y appears in cN H (line 4), or < N H > size is more or equalto | V | (line 13). Backward pass for l ⊕ p . The best exhaustive search strategymay depend on the network topology, constraint and costfunctions, and we leave it as a policy for NM. In this
Algorithm 1:
Build Neighborhoods ( l ⊕ p case) Input: X := src, Y := dest Output:
The list of neighborhoods < NH > from X to Y begin cNH ←− X < NH > ←− < NH > ∪ cNH while Y / ∈ cNH do NH ←− ∅ foreach Vertex u ∈ cNH do NH ←− NH ∪ adjacent ( u ) end if < NH > .size < | V | then < NH > ← < NH > ∪ NH cNH ← NH else Return Y is unreachable. end end end paper, we use EBFS for the backward pass of NM detailedin Algorithm 2. Note however, that this phase can use anyexhaustive search ( e.g. , EBFS [9], EDFS [8] or exhaustive k -shortest path [10]) with the only difference being that we donot process all neighbors (adjacent vertices) of each vertex u but only those which are within previous N H (line 10). Thefirst step is to find the intersection between neighbors of thedestination Y with its previous N H (line 5). This intersectionis not an empty set, it contains at least one vertex v . Forall obtained vertices we again build the intersection of theirneighbors with the penultimate N H (line 16). The secondphase ends as soon as we hit the zero
N H (line 6), and asa result we obtain the collection of all paths with a length of < N H > size between the source X and the destination Y . Algorithm 2:
Perform Backward Pass ( l ⊕ p case) Input:
The list of neighborhoods < NH > from X to Y Output:
All paths < path > from X to Y of < NH > .size length begin path ←− Y < path > ←− < path > ∪ path k ←− NH ←− < NH > [ size − k ] /* EBFS: */ while NH (cid:54) = < NH > [0] do < tempP ath > ←− ∅ foreach path ∈ < path > do Vertex u ←− path [1] foreach Neighbor v ∈ adjacent ( u ) ∩ NH do < tempP ath > ←− v ∪ path end end < path > ←− < tempP ath > k ←− k + 1 NH ←− NH [ size − k ] end end Constraints validation for l ⊕ p . In this last phase, we checkfor candidates optimality, i.e. , we check whether or not acandidate path satisfies all l ⊕ p constraints, and keep thebest candidate. At each consequent iteration, we first buildan additional ( N + 1 ) neighborhood, repeat the backward passand subsequently obtain all paths of length N + 1 , and thenwe check their feasibility and update the best known pathcandidate, if needed. Similarly to IBF [12], we keep iteratingwhile the candidate path length is less than the number ofvertices | V | and then return the optimal solution.We close this subsection with three important remarks: (1)NM can be used to find k -constrained shortest paths : the backward path at each iteration returns all possible pathcandidates of the same hop count. To find k -constrainedshortest paths we need to keep not a single best (shortest)path candidate, but a set of k best path candidates at eachiteration and update this set if needed. Clearly, as in the worstcase NM traverses all possible path candidates, its upper boundcomplexity does not change (see Section V). (2) NM can beapplied to both directed and undirected graphs making itan interesting solution even for NFV chain instantiations .When traversing directed graphs, NM simply uses vertices’outgoing neighbors during the forward pass and incomingneighbors during the backward pass. (3) A distinctive featureof our NM is the construction of the intersection of twoneighborhoods . This leads to a quadratic reduction of pathcandidates for exhaustive search algorithms (see Section V). B. NM Search Space Optimizations
In this subsection we show how NM can be coupled withexisting search space reduction techniques, i.e. , dominantpaths or look ahead [8], [9], [10], to speed up its time tosolution. By leveraging the NM’s double pass, we also proposea variant of the look ahead technique, viz. , “Look Back”without complexity overhead. We first describe the dominatedpaths method. Observe that the dominant paths technique isnot applicable in case we wish to use NM as k -constrainedshortest paths, as it removes suboptimal candidates which canbe among k paths. Dominated paths (pruning by dominance or bound).
Thebasic idea behind dominated paths states that an algorithmcan avoid evaluating candidate paths when their (multidimen-sional) distance is longer than other candidates distance, sincethey cannot be a part of the shortest solution [9], [10]. Considerfor example Figure a : note how path X → A → Y withdistance vector (6 , is dominated by X → B → Y path withdistance vector (2 , and hence it can be excluded to avoidunnecessary time-consuming processing. Path dominance isformally defined as follows: Definition 1 (dominant path) . We say that path P dominatespath P if and only if: ∃ i ∈ , . . . , p, c : d i ( P ) < d i ( P ) ∧ d j ( P ) ≤ d j ( P ) , ∀ j (cid:54) = i ∈ , . . . , p, c where d i is a distance corresponding to p i path constraint orto c path cost. In its general form, we can reduce NM’s search space by re-moving the dominated paths. This is accomplished by keepingtrack of only non-dominated paths during its backward pass(Algorithm 2, line ). In particular, a path is added to a vertex v if it is not dominated by any other path to v , or if it is notdominated by other paths from the source to the destination. Look ahead (pruning by infeasibility).
We can further reduceNM’s search space by omitting path candidates with endpoint v , if the sum of their current path distances and the residualbest distances from v to the destination violates any of the pathconstraints. This technique is known as “look ahead” [10] andrequires a run of Dijkstra or Bellman-Ford algorithm p times to Note how, if only the cost distance d c ( P ) is used in Equation 1, pruningby path dominance is the well-known pruning by bound technique [8]. (a) (b) Fig. 4:
NM running in its in l ⊕ p general case reduce its search space witha Look Back . (a) Forward pass: excludes vertices violating at least a pathconstraint; (b) Backward pass: NM looks back and removes a path candidatewhich sum of its current delay and the best (estimated during the forwardpass) residual delay violates the delay constraint ( i.e. , > ). pre-compute best distances (corresponding to path constraints p ) from all vertices to the destination. Looking backwards (pruning by infeasibility).
A further op-timization can be obtained applying the look back technique:the best distance could be estimated from the intermediatevertex v to the source (instead of the destination) for eachneighborhood containing v during the NM forward pass. Wethen use such information during the backward pass to excludepaths from v at neighborhood N that violate correspondingpath constraints. Note that, as we coupled it with forward pass,the look back space reduction does not introduce additionaloverhead with respect to the look ahead optimization ( i.e. ,running Dijkstra p + 1 times). Example 2.
In this example we revisit Example 1, to describehow NM in its the general case coupled with a Look Backsearch may reduce the search space when finding a path from X to Y . We assume that two path constraints delay ≤ and cost ≤ need to be satisfied. During the forward pass(Figure a ) NM estimates the path length to Y, keeping trackof all constraint-satisfying distances for each vertex and ateach neighborhood. Vertices whose estimated distance violateat least one path constraint are instead removed. During thebackward pass, NM removes A → Y path candidate whosesum of the current delay (which equals to 1) and the bestestimated delay from the source to A (which equals to 5)violates delay constraint > (Figure b ).C. NM with links and a single path constraint ( l/l ⊕ cases) The worst case running time of NM becomes polyno-mial (by avoiding an exhaustive search) if either a generalconstrained shortest path (see Problem 1) with only l linkconstraints or the resource optimal constrained path (seeProblem 2) with l links and a single path constraint ( l ⊕ ) aresought (see Section V). This is because unnecessary iterationsand phases (including the exhaustive search) are avoided. Notehowever that the constrained shortest path in l ⊕ case is stillNP-hard [8]. Thus, the general NM version should be used. (a) (b) (c) Fig. 5:
Running example of NM in l ⊕ case: (a) In the pre-routing phase NM prunes B → Y due a bw violation; (b) In the forward phase NM finds thebest length to Y saving vertices’ predecessors from previous neighborhoods;(c) back track phase identifies the resource optimal constrained path X → B → A → Y by recursive predecessor visits. Example 3.
Revisiting our example 1, NM finds a path from X to Y satisfying the two constraints bw ≥ and delay ≤ as follows: In the pre-routing phase (see Figure a ) NMprunes B → Y due a bw violation. In the forward phase (seeFigure b ) NM finds the best length to Y saving informationabout vertices’ predecessors from previous neighborhoods,discarding candidates that violate the path constraint. Duringthe back track phase NM recursively constructs the resourceoptimal constrained path by recursive predecessor visits (seeFigure c ). NM pseudocode for l ⊕ . Algorithm 3 describes the NMprocedure with only l ⊕ constraints. The neighborhoods datastructure < N H > identifies each vertex with its predecessorsin previous neighborhoods; each vertex u also contains a pathdistance D ( u ) . During the pre-routing phase, D ( u ) (line ),the weights of each edge not satisfying all l constraints (line ) are set to ∞ .During the forward phase of NM, we successively buildthe neighborhoods < N H > ; for each current neighborhood cN H of u we exclude all neighbors that do not satisfy the pathconstraint or that have previous distance lower than dist (line ). Note that to compute dist (line ) we assume D ( u ) tobe a distance of u after its inclusion in current neighborhood( cN H ). The forward phase ends when the destination Y appears in cN H (line ). If the number of neighborhoods < N H > is equal to the number of vertices | V | , the algorithmterminates concluding that a negative weight cycle is detected(line ), or that a path does not exist (line ). Duringthe back-track phase, NM then recursively finds the resourceoptimal constrained path between X and Y . D. NM with only link constraints ( l case) In presence of only l link constraints and when the resourceoptimal constrained path is sought, NM can be further sim-plified to run in linear time by omitting the path constraintchecking and by using hop count as a vertex distance metric(Algorithm 3, line ). As a result, NM traverses each vertexexactly once, and hence all neighborhoods contain uniqueand distinct vertices, i.e. , a common vertex for two or moreneighborhoods cannot exist. E. NM Optimal Solution
Theorem 1. (Theorem of the Optimal Solution)
NM always finds the optimal path if it exists.Proof.
See Appendix A.V. A
SYMPTOTIC C OMPLEXITY A NALYSIS
In this section, we provide a complexity analysis compari-son among our NM and related algorithms such as: IBF [12],EDijkstra [20], EDFS [8] and EBFS [9], [26] — commonbranch-and-bound exhaustive search approaches. Table I sum-marizes the main results of this comparison, where | V | is thetotal number of vertices, and | E | is the total number of edges. Theoretical results summary.
The major benefits of NM arisewhen we are seeking the NP-hard [8], [9] constrained shortestpaths in l ⊕ and l ⊕ p cases. We show how, under l constraints,EDijkstra finds constrained (shortest) paths faster than IBFand NM. We also show how NM is an alternative for IBFto find the resource optimal constrained path when accepting Algorithm 3:
NM in l ⊕ case Input: X := src, Y := dest, l link constraints, p single path constraint. Output:
The optimal path between X and Y (which satisfies l ⊕ ). begin /* pre-routing phase: */ foreach Vertex u ∈ | V | do D ( u ) ← ∞ end foreach Edge u → v ∈ | E | do if u → v does not satisfy l then w ( u → v ) ← ∞ end end /* forwarding phase: */ D ( X ) ← cNH ←− ( X, NIL ) < NH > ←− < NH > ∪ cNH while Y / ∈ cNH do NH ←− ∅ foreach Vertex u ∈ cNH do foreach Neighbor v ∈ adjacent ( u ) do dist ← D ( u ) + w ( u → v ) if dist < D ( v ) and dist ≤ p then D ( v ) ← dist NH ←− NH ∪ ( v, u ) end end end if NH / ∈ ∅ and | < NH > | < | V | then < NH > ← < NH > ∪ NH cNH ← NH else if | < NH > | == | V | then Return Negative Weight Cycle is detected. else Return Y is unreachable. end end /* back track phase: */ path ← Y k ← | < NH > | while k > do predecessor ← < NH > [ k, path (1)] path ← predecessor ∪ path k ← k − end end l ⊕ constraints (and thus flexible ), and how EDijkstra losesany path optimality guarantees in that case. Finally, whenaccepting l ⊕ and l ⊕ p constraints, we show how time andspace EBFS and EDFS complexities are quadratically higherwith respect to our NM. A. Complexity Analysis for the l and l ⊕ Cases
EDijkstra complexity ( l and l ⊕ cases). Given the presenceof merely link constraints in the l case, EDijkstra can findthe constrained shortest path by minimizing an arbitrary costfunction and its variant the resource optimal constrained pathby minimizing path hop count. The original Dijkstra algo-rithm can run in O ( | V | log | V | + | E | ) time utilizing FibonacciHeap [40]. Its min hop count variant can be reduced to O ( | V | + | E | ) with Thorup’s algorithm [41]. The corresponding spacecomplexity for both Dijkstra variants is O ( | V | + | E | ) . Beforeapplying Dijkstra, we also need to verify the l constraintssatisfaction by pruning all edges which violate l in O( | E | · l ).Thus, the total time complexity of finding the constrainedshortest path by EDijkstra is O ( | V | log | V | + | E | · l ) with aspace complexity of O ( | V | + | E | ) . For the resource optimalconstrained path, the total time complexity of EDijkstra isreduced to O ( | V | + | E | · l ) with the same space complexity.Given the presence of link and a singe path constraints inthe l ⊕ case, EDijkstra has to minimize distance which is ametric for the required path constraint to guarantee feasibility of the solution, i.e. , to find a feasible solution if it exists. Thus,EDijkstra loses its ability to any path length optimization.The total time complexity of finding a constrained path byEDijkstra in l ⊕ case is again O ( | V | log | V | + | E | · l ) with aspace complexity of O ( | V | + | E | ) . Note that the constrainedshortest path in l ⊕ case is NP-hard [8], and thus requiresan exhaustive search for the solution. As a result, EDijkstracannot find any variant of the constrained shortest path with l ⊕ constraints. IBF complexity ( l and l ⊕ cases). The original Bellman-Ford shortest path algorithm [39] runs in O ( | V || E | ) time andsimilarly to EDijkstra can be extended to meet l constraintsin O ( | E | · l ) additional time. Thus, in l case we can findthe constrained shortest path by minimizing an arbitrary costfunction with Bellman-Ford algorithm with O ( | V || E | + | E |· l ) time and O ( | V || E | ) space complexities. In contrast to EDi-jkstra, Bellman-Ford can also iteratively find shortest pathsin ascending hop count order. Hence, the iterative version ofBellman-Ford (IBF) algorithm can minimize path hop countby visiting each vertex and “relax” its adjacent edges onlyonce, starting from the source while advancing towards thedestination. This steps takes O ( | V | + | E | ) allowing IBF tofind the resource optimal constrained path in l case with O ( | V | + | E | · l ) time and O ( | V | + | E | ) space complexities.The same iterative property of IBF can be used to find theresource optimal constrained path in l ⊕ case. To this aim, ateach iteration when the next best hop count candidate is found,we check its path constraint feasibility. Once, the feasiblepath is found, IBF returns the resource optimal constrainedpath, i.e. , the min hop count path which satisfy a single pathconstraint. Thus, IBF finds the resource optimal constrainedpath in l ⊕ case with the same O ( | V || E | + | E | · l ) time and O ( | V || E | ) space complexities as for the constrained shortestpath in l case. Due to NP-hardness of the constrained shortestpath in l ⊕ case, IBF is also not applicable to find it. EDFS and EBFS complexities ( l and l ⊕ cases). In caseof only l link constraints both EDFS and EBFS can findthe resource optimal constrained path (by minimizing hopcount) without an exhaustive search. To this end, we canrun the original DFS and BFS algorithms which have lineartime complexity O ( | V | + | E | ) . The only difference lays againin the adjacent link checking that ensures the l constraintssatisfaction resulting in a time complexity of O ( | V | + | E | · l ) ,and a space complexity of O ( | V | + | E | ) .However, to find the constrained shortest path with l con-straints, or both the constrained shortest and the resourceoptimal constrained paths with l ⊕ constraints, EDFS andEBFS algorithms would have to build and check all possiblepaths from the source node (exhaustive search). For eachpotential path, algorithms can compute cost and path metricsand check for a path constraint satisfaction in O (2) . Allconstraint violating edges could be pruned prior to runningEDFS or EBFS. Note how, as EDFS and EBFS algorithmsuse a branch-and-bound approach, they may visit each vertexmore than once. The total number of path candidates can bebound as O ( b d ) [42], where b is the number of neighbors,and d is the maximum loop-free path hop count. The averagenumber of neighbors per vertex b can be obtained from the TABLE I: Virtual path embedding algorithms complexity
Case: EDijkstra [20] IBF [12] EDFS [8], EBFS [9], [26] NM l Time: O ( | V | + | E | · l ) Time: O ( | V | + | E | · l ) Time: O ( | V | + | E | · l ) Time: O ( | V | + | E | · l ) Space: O ( | V | + | E | ) Space: O ( | V | + | E | ) Space: O ( | V | + | E | ) Space: O ( | V | + | E | ) resource optimal constrained path resource optimal constrained path resource optimal constrained path resource optimal constrained path l/l ⊕ Time: O ( | V | log | V | + | E | · l ) Time: O ( | V || E | + | E | · l ) Time: O (cid:0)(cid:0) | E || V | (cid:1) | V | + | E | · l (cid:1) Time: O ( | V || E | + | E | · l ) Space: O ( | V | + | E | ) Space: O ( | V || E | ) Space: O (cid:0)(cid:0) | E || V | (cid:1) | V | (cid:1) Space: O ( | V || E | ) constrained shortest path / constrained shortest path / constrained shortest path constrained shortest path /constrained path only resource optimal constrained path resource optimal constrained path l ⊕ p N/A N/A Time: O (cid:0)(cid:0) | E || V | (cid:1) | V | p + | E | · l (cid:1) Time: O (cid:0)(cid:0) | E || V | (cid:1) | V | p + | E | · l (cid:1) Space: O (cid:0)(cid:0) | E || V | (cid:1) | V | p (cid:1) Space: O (cid:0)(cid:0) | E || V | (cid:1) | V | p (cid:1) constrained shortest path constrained shortest path hand-shaking lemma : b = (cid:80) Vi = v ( neighbors of vertex v ) | V | = 2 | E || V | . (11)Using Equation 11 and based on the fact that the maximumloop-free path hop count equals to | V − | , the EBFS timecomplexity O l ⊕ is: O l ⊕ = O (2 b d + | E | · l ) = O (cid:16)(cid:16) | E || V | (cid:17) | V | + | E | · l (cid:17) . (12)Based on Equation 12, the EBFS space complexity is O (cid:16)(cid:16) | E || V | (cid:17) | V | (cid:17) . NM complexity ( l and l ⊕ cases). To estimate the timecomplexity of NM of finding the constrained shortest pathwith l constraints or the resource optimal constrained pathwith l ⊕ constraints, we first obtain the average number ofneighbors per vertex b from the hand-shaking lemma shownin Equation 11. During the pre-routing phase , NM visits eachvertex and edge to either set initial values or prune an edgedue to a constraint violation in O ( | V | + | E | · l ) . During the back track phase , which runs in linear time, NM recursivelyvisits each predecessor starting from the destination in O ( | V | ) .During the forward phase we have quadratic complexity asto construct a neighborhood with best path distances, we loopover all b neighbors of each node of the previous neighborhoodin O ( | V | b ) . The total number of neighborhoods is at most themaximum loop-free path hop count which equals to | V − | .Here we assume that a vertex look up and placement takes O (1) time. The overall NM complexity is hence: O l ⊕ = O ( | V | b + 2 | V | + | E | l ) = O ( | V || E | + | E | · l ) . (13)Based on Equation 13, the NM space complexity is O ( | V || E | ) .As for related algorithms, the process of finding the re-source optimal constrained path with l constraints can befurther simplified to linear complexity. To minimize path hopcount, all neighborhoods need to contain only unique anddistinct vertices, i.e. , a common vertex for two or moreneighborhoods cannot exist; this means that the maximumsize of all neighborhoods is | V | . For each vertex in theneighborhoods set, the complexity of retrieving its neighborsis O ( b ) , assuming that a vertex look up and placement takes O (1) time. Therefore, the time complexity of NM in this caseis O ( | V | b + 2 | V | + | E | · l ) = O ( | V | + | E | · l ) and its spacecomplexity is O ( | V | + | E | ) . Without loss of generality, we can assume undirected network graphs asin a directed graph, b equals to the average outdegree: b = | E || V | . X Y
EBFS:
X->Y
EBFS:
Y->X Y X NM:
X->Y and Y->X YX b d b d b d/2 ... b b b d/2 ... b b b d/2 ... b b 1 ... b b 1 ...... Hop distance: d Fig. 6:
Differently than the branch-and-bound exhaustive search of EBFS, inwhich traversed paths grow between X and Y, NM’s, reduces the search spacesignificantly reducing the path candidates (from O ( b d ) to O ( b d ) paths) dueto its forward and backward passes. B. Complexity Analysis for the l ⊕ p Case
EDijkstra and IBF complexities ( l ⊕ p case). For complete-ness, we mention that neither EDijkstra nor IBF are applicableto any variant of the constrained shortest path in the l ⊕ p case. EDFS and EBFS complexities ( l ⊕ p case). In this case,both EDFS and EBFS can find any variant of the constrainedshortest path or k such paths in exponential time throughexhaustive search. As in the previous case, edge pruning phasecan be done prior to EDFS of EBFS runs, which build allpossible paths from the source node, but now for each newpath they check p constraints satisfaction by calculating p + 1 new path and cost metrics O (2 p ) . Hence, both EDFS andEBFS have the following time complexity O l ⊕ p : O l ⊕ p = O (2 p · b d + | E | l ) = O (cid:16)(cid:16) | E || V | (cid:17) | V | p + | E | · l (cid:17) (14)The space complexity equals to O (cid:16)(cid:16) | E || V | (cid:17) | V | p (cid:17) due to the factthat we have to store p metrics for each path. NM complexity ( l ⊕ p case). Similar to EDFS and EBFS,NM can find any variant of the constrained shortest path or k such paths with l ⊕ p constraints in exponential time usingexhaustive search. As in the previous case, neighborhoodscontains non-unique nodes, and the total number of theirnodes can be up to | V | . For each neighbor, NM checks if italready appears in the neighborhood O ( b ) . Taking into accountthe edge pruning phase, to ensure the constraints satisfactionand to reduce a search space, the time complexity of theneighborhoods building step O l ⊕ p is: O l ⊕ p = O ( | V | b + | E | l ) = O ( | V || E | + | E | · l ) (15)During the backward pass, NM builds all possible paths fromthe destination node using any exhaustive search methods such Web Interface
Output:
Virtual Link Status, Physical Network State
Input:
Virtual Link Requests with Constraints
External Module
Physical GraphDiscovery Service Path Mapping Service Path Allocation Service
Floodlight Controller
Physical LinkDiscovery Service Circuit Pusher Service
Floodlight APIRESTful APIOpenFlow Protocol
Physical Network
ControllerEngineOpenFlow Switches HostsHosts
Neighborhood Method Prototype
Fig. 7:
System architecture of our NM prototype (which is a module of theFloodlight OpenFlow controller [43]) includes four main logical components:a physical graph discovery service, a path mapping service, a path allocation service and a user web interface that interacts with the controller. Theprototype source code is publicly available under a GNU license at [23]. as EDFS or EBFS.
However, there is a difference in that,we process only those vertex neighbors which appear in itsprevious neighborhood . This allows us to significantly reducethe total number of the processing paths: instead of processing b + b + ... + b d or O ( b d ) paths, due to double pass ( i.e. ,forward and backward passes) we process only: ∩ b d + b ∩ b d − + b ∩ b d − + ... + b d ∩ b d + ... + b d − ∩ b + b d − ∩ b + b d ∩ ≤ b + b + ... + b d + ... + b + b + 1 or O ( b d ) paths.Hence, the time complexity of the backward pass step O l ⊕ p isquadratically lower than for EDFS or EBFS (see Equation 14): O l ⊕ p = O (2 p · b d ) = O (cid:16)(cid:16) | E || V | (cid:17) | V | p (cid:17) (16)The total time complexity of the NM is O (cid:16)(cid:16) | E || V | (cid:17) | V | p + | V || E | + | E | · l (cid:17) or just O (cid:16)(cid:16) | E || V | (cid:17) | V | p + | E | · l (cid:17) . Simi-larly as for EDFS and EBFS, the total space complexity is O (cid:16)(cid:16) | E || V | (cid:17) | V | p (cid:17) .VI. NM P ROTOTYPE I MPLEMENTATION
In this section, we establish the practicality of our approachfor network virtualization with a prototype implementationover a Software Defined Networking infrastructure. Our sourcecode is publicly available at [23]. In particular, our proto-type implementation extends the Floodlight OpenFlow con-troller [43]. Our system architecture is shown in Figure 7. Ourprototype includes four main logical components: a physicalgraph discovery service, a path mapping service, a pathallocation service and a user web interface that interacts withthe controller. In the rest of the section we describe with somemore details each of the four components of our prototype.
Physical graph discovery.
Upon bootstrapping an SDN setup,all configured OpenFlow switches connect to the controllerallowing a dynamic switch-to-switch link discovery. After thisphase, the NM module tracks all unknown incoming packets to detect hosts and their corresponding host-to-switch links.We specify the main physical link properties, such as capacityand cost ( e.g. , delay) through an XML configuration file. TheXML configuration file indirection allows our NM prototype toeasily interact with foreign measurement services, for examplefor real-time awareness of its link properties. The informationcollected by the path discovery service is then used in the pathmapping and the path allocation steps.
Path mapping.
To map constrained virtual link requests,the path mapping module of our prototype uses informationfrom the physical path discovery service and runs one of thefollowing routing algorithm policies: NM for l and l ⊕ cases(default policy), NM for l ⊕ p cases, EDijkstra, IBF or EBFS.In the current version of our prototype the routing policy isstatic and has to be set via our XML configuration file beforestarting the Floodlight controller. Path allocation.
In this last phase of the path embedding, theNM module sets all appropriate flow rules in all switches viathe OpenFlow [44] protocol, along with the computed pathobtained during the path mapping phase. Specifically, usingOpenFlow protocol messages the module assigns active flowsto corresponding queues, i.e. , applies an
ENQUEUE action,for guaranteed bandwidth provisioning. In our XML config-uration file, users may specify also the type of timeout foreach flow i.e. , the flow duration time can start from either thepreviously matched packet or from the first flow instantiation.To estimate the available bandwidth on each physical link,the NM module uses both the capacity information derivedfrom the XML configuration file, and its allocated bandwidthqueried from the flow stored in the OpenFlow switch.
Web interface.
To request virtual links and/or to monitorphysical network states, we have implemented a web userinterface, which uses a RESTful API to communicate with ourNM prototype module. The user interface uses technologiessuch as HTML, PHP, AJAX, JavaScript, and CSS.VII. P
ERFORMANCE E VALUATION
In this section, we evaluate NM’s scalability and flexibilityperformance through simulations and our prototype imple-mentation in the context of its applicability to several com-plementary virtual network services. To assess the flexibilityof NM, we compare, with and without it: ( i ) the embeddingperformance of several online VNE and real-time NFV-SCmechanisms within the management plane; ( ii ) several trafficengineering solutions within the data plane. Our goal is toshow how our NM can be used to improve the overallnetwork utilization (allocation ratio or total flow throughput),optimality (load balancing or fairness of flows), as well asenergy consumption within both planes; ( iii ) To assess NMscalability, we then compare it with related solutions underdifferent network scales and service requests/topology scenar-ios when accepting multiple link and multiple path constraints; ( iv ) Finally, we confirm our main simulation results with ourNM prototype running over the GENI testbed [2].
Evaluation settings.
In our simulations, we used a machinewith an
Intel Core i5 processor with dual core CPU of . GHzand GB RAM. We use the BRITE [45] topology generatorto create our physical and virtual networks. Our results areconsistent across physical networks that follow Waxman andBarabasi-Albert models [47], that are known to approximate well subsets of Internet topologies [48]. For lack of space weonly show results relative to Waxman connectivities. In ourNM prototype evaluation instead, we use a physical networkobtained with the GENI testbed [2]. All our results show confidence interval, and our randomness lays in boththe service request ( i.e. , in its type and constraints to accept)and in the physical network topology. In most of our physicaltopologies, the average node degree equals to , a knowncommon value within Internet topologies [48]. Results summary.
Efficiency and Provider’s revenue:
Duringthe virtual network formation (management plane), we foundthat using NM within recent VNE or NFV-SC algorithmsincreases their allocation ratio while improving the networkutilization by better load balancing (close to the optimal),which in turn decreases energy consumption.
Network Uti-lization:
Our results evaluating NM within the data planeinstead show how utilizing a set of paths found with NM isbeneficial for TE in terms of minimum path hop count, net-work utilization and in some cases even energy consumption.
Time to Solution (Convergence Time):
When we attempted toallocate flows (virtual links) with multiple link and multiplepath constraints over large scale physical networks using NMwith the proposed search space reduction techniques, we founda path computation speed-up of almost an order of magni-tude w.r.t. common exhaustive search algorithms. Moreover,we also found almost 3 orders of magnitude running timeimprovement w.r.t. the same integer programming problemsolved with CPLEX [51].
Prototype Evaluation:
Finally, usingour NM prototype over GENI, we were able to reproduceour main results. Moreover, our measurements show how theconstrained shortest path computation (virtual link or flowmapping phase in NM) is up to an order of magnitude fasterthan the path allocation phase ( i.e. , setting up appropriate flowrules within all switches along the found path) on small scalenetworks. This along with our scalability results confirm howat large scale the time needed for a path computation with NMwill have the same order of magnitude as the time needed forthe path allocation introducing no significant bottleneck forthe end-to-end virtual link embedding.
A. Management Plane Evaluation
Simulation settings.
To assess the impact of NM on thevirtual network embedding, we include results obtained withsimulated physical networks of nodes (as in similar earlierstudies [17]), following Waxman connectivity model, whereeach physical node and each physical link have uniformlydistributed CPU and bandwidth from 0 to 100 units, respec-tively. Note that we use fairly small scale physical networksdue to complexity of the integer programming. We attemptto embed a pool of VN (service chain) requests with virtual nodes and random (linear) virtual topologies. Eachvirtual node and each virtual edge have uniformly distributedCPU and bandwidth demand from 1 to 10 units, respectively.In the virtual network embedding case, we vary the virtualnode degree from (the VN has linear topology) to (VN isa fully connected topology). Moreover, we also assume thateach virtual edge has uniformly distributed latency constraintfrom 1 to 4 of a propagation delay stretch, defined as thepropagation delay encountered traversing the diameter of the physical network area. In the real-time service chaining case,we vary latency constraint of virtual links (service-to-servicecommunication) from ∞ ( i.e. , SC is not real-time sensitive) to1/4 ( i.e. , SC is highly real-time sensitive) of the propagationdelay stretch. Evaluation metrics.
TTo demonstrate the advantages of usingNM within the virtual network embedding (VNE) and real-time service chaining (SC) mechanisms, we compared fourrepresentative VNE algorithms. To compare them, we replacetheir (original) Dijkstra-based shortest path with our NM. Wehave chosen to compare against [17], [19] as the optimal VNEscheme formulated as integer programming multi-commodityflow is the best to our knowledge solution for online VNE (yetintractable for large scale networks). We refer to this solutionas Optimal and we denote it as
Opt . Note however, that
Opt solution can be still suboptimal with respect to the optimalsolution of the offline VNE problem, where all requests areknown in advance. Opt in fact attempts to minimize the ratiobetween the provider’s costs of embedding a VN request andthe available substrate resources provided for this request,with the aim of balancing the network load. We also compareOpt against its version where a path (or column) generationapproach is used to make Opt more scalable [17]. We referto this scheme as PathGen and, even in this case, substituteits original shortest path algorithm (used to find new pathswithin the multi-commodity flow) with our path managementsolution (see details in Section III-C). Note that we usedthe one-shot VNE approximation algorithm proposed in [36]as an initial solution for the column generation approachto avoid two stage VNE limitations when physical networkis initially unbalanced [17]. Finally, we compare against aConsensus-based Auction mechanism (CAD) [5], [21], the firstpolicy-based distributed VNE approximation algorithm withconvergence and optimality guarantees. Note that a versionof CAD can be also used to solve the NFV-SC problem [5].The link embedding of CAD is a policy that runs a shortestpath algorithm to either pre-compute the k-shortest paths or tofind these paths dynamically. For fairness of comparison, weassume that the latter holds and as in the PathGen case, wesubstitute the currently used shortest path algorithm, Dijkstra,with our NM constrained shortest path finder solution.In this simulation scenario we have tested the potentialrevenue loss by specifying the fraction of VN request acceptedover the VN requested (allocation ratio), to what extent physi-cal links were utilized (link utilization) and how many paths ofthe particular length in total were used per VN pool. Finally,we used the idle energy model proposed previously [50] toaccess the energy consumption of the network:Energy Consumption = (cid:88) e ∈ E ( M − E ) U e + E (17)where E is a set of physical edges, U e is an edge e utilization,and M and E are numerical values taken from [50] thatcorrespond to the maximum and idle energy consumptionof the switch interface, respectively. We use M = 2 and E = 1 . maximum and idle energy consumptions (measuredin Watts) assuming gigabit channel communications. In ourresults, we show an energy consumption increase relative tothe idle network state (in %). Opt PGen PGen+NM CAD CAD+NM
Avg node degree of VN A ll o ca ti on R a ti o (a) Avg node degree of VN E n e r gy D e lt a [ % ] (b) O p ti m a lit y G a p [ % ] Avg node degree of VN (c)
Path Hop Count P a t h s p e r VN P oo l OptPGenPGen,NMCADCAD,NM (d)
Inf 2 1 0.5 0.250.720.70.60.30 A ll o ca ti on R a ti o Prop. Delay Stretch (e)
Inf 2 1 0.5 0.2502468 E n e r gy D e lt a [ % ] Prop. Delay Stretch (f)
Inf 2 1 0.5 0.250110100300 O p ti m a lit y G a p [ % ] Prop. Delay Stretch (g)
Path Hop Count P a t h s p e r VN P oo l OptPGenPGen,NMCADCAD,NM (h)
Fig. 8:
Virtual network (VN) embedding and real-time NFV service chaining (SC) results obtained with physical networks of nodes following Waxmanconnectivity model: by addressing the constrained shortest path problem with NM versus using commonly adopted shortest path algorithms ( e.g. , Disjktra),the allocation ratio of VNE (a) and real-time NFV-SC (e) can be improved when the virtual node degree increase or when requests are not highly sensitive todelays. Optimality gap of VNE (c) and NFV-SC (g) can be also improved (resulting in our case into a better load balancing) which leads to a lower energyconsumption (b) and (f) relative to the network idle state [50], respectively. NM’s benefits are due to its ability of finding more paths with a lower hop countthat can satisfy latency demands and simultaneously improve objective value for full-mesh VNs (d) and moderate real-time sensitive SC (h) pools. NM improves VNE/NFV-SC allocation ratio and energyefficiency.
Figures a and e show how including constrainedshortest paths ( e.g. , found with NM) during column generationof the PathGen approach can improve overall VNE and NFV-SC acceptance ratio. Particularly, the highest acceptance ( i.e. ,allocation) ratio gains arise in the case ofdense (e.g., full-mesh) VNs or under moderate real-time sensitivity of NFV-SCs. Moreover, we can see how in some cases, utilizing NMwithin PathGen leads to a lower energy consumption (seeFigures b and f ). This is due to an improved networkutilization because of a better (closer to the optimal) loadbalancing (see Figures c and g ).These optimality gains in turn arise due to NM’s abilityto find more paths that can satisfy all virtual link constraints( e.g. , bandiwdth and latency) and simultaneously improve theobjective value (see Figures d and h ). These results confirmour expectations in Section III-C. At the same time, optimalityimprovements with NM demonstrate no significant benefits (interms of allocation ratio or energy efficiency) for the CAD overstandard shortest path management. This is due to the fact thatin our settings, separate node and link embedding approachdemonstrates the worst performance caused by significantlylimited feasible space for the virtual link mapping. Suchlimitations are due to randomized capacities of physical nodesand edges ( i.e. , due to initially unbalanced physical network)further exacerbated by randomized virtual link capacity andlatency constraints. B. Data Plane Evaluation
In the next set of results we analyze the benefits of using oursolution within the data plane by evaluating NM performancewithin standard Traffic Engineering schemes [15], [16], un- der different physical network topologies and under differentseverity of service level objectives.
Simulation settings.
To evaluate the impact of NM (used tocompute constrained shortest paths) within Traffic Engineer-ing [15], [16], we use a physical network topology of , nodes, where each physical link has bandwidth uniformlydistributed between and Gbps. We attempt to allocateflows for random source destination pairs by solvingmax-min fairness problem shown in Equation 8 with the fixedlatency SLO demands. To evaluate the maximum possiblegains, we assume infinite bandwidth demands of the flowsand we omit any constraints imposed by hardware granularitydue to rule count limits or flow quantization limitations [15],[16]. For clarity, we also assume that all flows have the samepriority. Thus, the fairness of the flow is its total allocatedthroughput. We denote with low, medium and high delay SLOconstraints, , . , and times of a propagation delay stretchdefined in Section VII-A, respectively.In the first simulation scenario, we use LP-based solution(that is costly to address in practice [15], [16]) with fixedaverage physical node degree equal to 4 (common for theInternet [48]), where we vary the maximum number of pathsavailable for each flow allocation. In the second scenario, weuse instead scalable greedy solution proposed in [16] withunrestricted number of paths per flow. To this end, once thebest currently available path (or tunnel) gets fully saturated,we find the next best path dynamically. In this scenario, wevary average physical node degree from to . Evaluation metrics.
To evaluate the performance of NM fordata plane TE solutions, we compare NM with (extended)Dijkstra algorithm within the greedy-based TE ( i.e. , in thesecond scenario), and their corresponding k -shortest path [31]and k -constrained shortest path (that uses general version of TE,low SLO TE+NM,low SLO TE,mid SLO TE+NM,mid SLO TE,high SLO TE+NM,high SLO T o t a l F l o w T P u t [ T bp s ] Max (a)
TPut Fairness [Gbps] F r ac ti on o f F l o w s (b) E n e r gy D e lt a [ % ] Max (c) P a t h H op C oun t Max (d) T o t a l F l o w T P u t [ T bp s ] Avg node degree of PN (e)
TPut Fairness [Gbps] F r ac ti on o f F l o w s (f) E n e r gy D e lt a [ % ] Avg node degree of PN (g) P a t h H op C oun t Avg node degree of PN (h)
Fig. 9:
Performance analyses of LP-based (
Top ) and greedy (
Bottom ) max-min fairness Traffic Engineering (TE) algorithms [15], [16] utilizing the constrainedshortest path management with NM versus their original shortest path management with Dijkstra on Waxman topologies in terms of: (a) and (e) total gainedflow throughput; (b) and (f) cumulative distribution of flow throughput for 25 paths per flow and for average node degree 4 (common for Internet [48]),respectively; (c) and (g) energy consumption increase relative to the network idle state [50]; and (d) and (h) number of average path hops per flow.
NM coupled with
Look Back technique) algorithms withinLP-based TE ( i.e. , in the first scenario). We remark thatNM’s superior performance w.r.t. Dijkstra-based TE is ex-pected due to its ability of minimizing provider’s associatedcost for flow allocation e.g. , minimizing provisioned physicalbandwidth (see Problem 2) under an arbitrary set of ( e.g. ,SLO) constraints. This difference is expected to degrade inthe first scenario (where LP-based formulation is used) witheither number of maximum paths per flow or SLO severityincrease, as in this case the k -shortest path set convergeto the k -constrained shortest path set resulting in the equalLP formulation. However, in the second scenario, as weallocate bandwidth for flows on their most preferable tunnels(best paths) first, that superior performance is expected to bepreserved and can vary with different node degree or SLOseverity. For comparison we use the following four metrics:total gained throughput of all flows, cumulative distributionof flows’ throughput which corresponds to their fairness,energy consumption relative to the network idle state (seeEquation 17) and path hop count. Path hop savings lead to network utilization and flowfairness gains.
In Figure a , we show how the correlationbetween the total gained throughput across all flows and themaximum number of paths available per each flow is a loga-rithmic function — increasing number of paths linearly bringsa logarithmic growth to the total gained throughput. Figure e shows how the total gained throughput of all allocated flowschanges when multiple physical links become available (theaverage physical node degree increases). This dependence is anaffine function: the maximum possible total gained throughputincreases linearly with the available physical links.In both scenarios, we can see how the total flow through-put and the resulting flow fairness ( e.g. , the particular flowthroughput) are higher for NM than for Dijkstra-based TE(see Figures a , b , e and f ). These results demonstratehow minimizing the total physical bandwidth provisioned for a single flow with NM can significantly benefit even trafficengineering solutions. In particular, due to the path hop countoptimization under SLO constraints within the data plane,NM gains up to 50% of total flow throughput under lowSLO in the first (LP-based) scenario, and up to 20% of totalflow throughput under mid SLO in the second (greedy-based)scenario w.r.t. Dijkstra-based TE (see Figures a and e ).Such gains allow, in turn also to improve flow fairness (seeFigures b and f ). Note that such large throughput gains inthe first scenario ( i.e. , up to 50%) are partly due to the k -shortest path [31] and the general version of NM (that finds k -constrained shortest paths) algorithms difference, i.e. , theformer has a higher probability of finding paths with moreshared edges then the later. As expected, NM gains decreasewith the node connectivity, as less physical path choices areavailable to map virtual links. Also, for LP-based scenariothese gains decrease with increase of the maximum numberof paths or SLO severity, as both shortest and constrainedshortest path sets converge to each other resulting in equal LPformulations. Average path length and energy consumption tradeoff.
Wefurther investigate the reasons why we observed such gainsin total throughput of all flows w.r.t. Dijksra-based TE. Inparticular, observing Figures d and h we note that there are ≈ − hops difference in the average path length betweenNM and Dijkstra-based TE when allocating low SLO flows. Atthe same time, for the medium SLO constraints this differenceis reduced to circa one hop. Finally, when the SLO constraintsare high, there is no significant physical path length difference.To understand why the average path length changes withthe constraint severity, note how the longer is an end-to-endphysical path, the lower is the probability that the entire pathsatisfies the SLO constraints. On the other hand, the higherthe number of hops, the higher is the number of candidatespaths, and so the higher is the probability of finding onewhich satisfies these constraints. This explains the trade-offs in average path length behavior observed in Figure h .The hop count savings minimize the physical bandwidthprovisioned for a single path, allowing the provider to acceptmore flows or allocate more bandwidth for a single flow. As aresult, the overall link utilization increases leading to a higherenergy consumption (see Figures c and g ). We observeone exception when throughput gains are low and path hopcount savings are high (as observed in the management planescenario in Section VII-A). An example of such situation canbe also observed in the second scenario for dense physicalnetworks (with average node degree ≥ ) when allocatingflows with low SLO demands. In that case, we can see a smallreduction (of ≈ ≈ C. Scalability Results
In the next set of results we test the scalability perfor-mance of NM when accepting multiple link and multiple pathconstraints ( l ⊕ p case). We remark that in this case onlyexponential exact solutions exist for the constrained shortestpath problem due to its NP-hardness [8]. Scalability simulation settings.
To assess NM scalability,we simulate on-line requests for allocating constrained virtuallinks (or traffic flows). In particular, we generate physical net-work topologies of , , K and K nodes, where eachphysical link has bandwidth uniformly distributed between and Gbps. In addition, we set each physical link with a costuniformly distributed between and . We attempt to findthe constrained shortest path variant — the resource optimalconstrained path for of physical network nodes randomsource-destination pairs, where for each pair we allocate asmany virtual links as possible with the fixed demands. Wedenote with low and medium bandwidth constraints, and Gbps, respectively; these values represent approximately and of the maximum physical link capacity. Similarly,we denote with low and medium (propagation) delay SLOconstraints, and . times of a propagation delay stretchdefined in Section VII-A, respectively. In addition, we denotewith low and medium cost constraints, and thatrepresent and times of the maximum physical link cost. Scalability evaluation metrics.
To evaluate the NM scalabil-ity, we compare the general version of NM with the EBFS(common branch-and-bound exhaustive search) algorithm andwith the CPLEX [51] performance (that uses 4 parallelthreads) of solving the common arc-based constrained shortestpath formulation. Both NM and EBFS are coupled withdominant paths search space reduction techniques. Moreover,we couple EBFS with a Look Ahead (EBFS+LA) search spacereduction technique [10] and NM with a Look Back (NM+LB)search space reduction technique - a variant of Look Aheadwithout complexity overhead (see Section IV-B).We compare NM with EBFS and CPLEX across two metrics:the number of traversed paths required to find the constrainedshortest path and the average path computation time. Note thatin case of CPLEX, the number of traversed paths correspondsto the total number of iterations.
Dominant paths prevent intractabilities.
Figures a and c show that dominant paths technique reduces thenumber of traversed paths per virtual link to a linear function NM NM+LB EBFS EBFS+LA CPLEX Nodes number of PN T r a v e r s e d P a t h s p e r V L (a) Nodes number of PN P a t h C o m p . T i m e [ m s ] (b) Nodes number of PN T r a v e r s e d P a t h s p e r V L (c) −1 Nodes number of PN P a t h C o m p . T i m e [ m s ] (d) Fig. 10:
Performance analyses of general NM versus EBFS with dominantpaths, look-back for NM (NM+LB) and look-ahead for EBFS (EBFS+LA)search space reduction techniques, and versus IBM CPLEX solver for theconstrained shortest path formulation in Problem 2 for low (top row) andmedium (bottom row) SLO constraints in terms of: (a,c) number of traversedpaths to find the optimal virtual path; (b,d) the virtual path computation time. of a physical network size for both EBFS and NM. Moreover,due to its “double pass” technique, NM traverses up to twoorders of magnitude paths less then EBFS. However, we cansee how EBFS works slightly faster than NM for large scalephysical networks with medium link and path constraints (seeFigure d ). That can be explained with the more expensiveforward pass of NM for larger physical networks ( ≥ Knodes). The NM’s unnecessary iterations can be howeverreduced by the proposed Look Back technique.
NM scalability with backward pass and look back.
Ourexperiments show that when NM backward phase is coupledwith a Look Back technique, the number of traversed paths byNM further reduces. This reduction is almost independent fromthe size of the physical network (see Figures a and c ).Using the Look Back search space optimization does notintroduce any significant path computation overhead, whilethe same cannot be said for the Look Ahead search spacereduction technique (see Figures b and d ).Even though CPLEX uses 4 parallel threads (instead ofa single thread for NM and EBFS) and traverses moderatenumber of path (similar to NM without Look Back technique),it shows the worst performance in all cases. That is due to thefact, that finding constrained shortest paths with the commonlyutilized arc-based integer programming formulation is NP-hard and no existing techniques can reduce that complexityto pseudo-polynomial. On the contrary, NM and EBFS com-plexities can be reduced to pseudo-polynomial by applyingthe dominant paths search space reduction technique [10].Proposed novel double pass and Look Back search spacereduction techniques further reduce the practical complexityof finding constrained shortest paths. Thus, NM is almost anorder of magnitude faster in comparison with EBFS and isalmost 3 orders of magnitude faster than CPLEX for large-scale physical networks, and hence scales better. We remarkthat such scalability improvements over existing constrained shortest path algorithms are essential for the virtual networkservice management at large scale. For example, the columngeneration approach can generate tens of thousands pathsper a single VN request at large scale. Thus, it will take100 ms x K ≈ minutes when EBFS is used. On thecontrary, we need only 10 ms x K ≈ seconds with NMwhich significantly reduces VN request blocking probability.Note that additional scalability results comparison of our NMwith respect to the EDijkstra shortest path scheme can befound in our prior work [46]. D. Prototype Evaluation
In this final set of results, we use our NM prototype toestimate the impact of the on-demand constrained shortestpath computation on the end-to-end virtual link embeddingperformance. We also confirm our main simulation results.
Experiment settings.
Our setup for the performance exper-iments includes virtual machines (VMs) from the GENItestbed [2]: Ten of these VMs are OpenFlow Virtual Switches(OVS) [52], and others are hosts. Each host-to-switch physicallink has Mbps bandwidth and a arbitrary cost, and each switch-to-switch physical link has both bandwidth (measuredin Mbps) and an arbitrary cost uniformly distributed between1 and 10. Note, that our arbitrary cost is an additive metricand therefore can represent any path metric, e.g. , delay, losses,jitter, etc. We request virtual links with low SLO constraints, i.e. , ≥ Mbps bandwidth and ≤ arbitrary cost ( timesgreater than the maximum physical link cost), between random < src, dst > pairs of hosts, where for each pair ofendpoints we allocate as many virtual links as possible. Experiment metrics.
For each virtual link request we againmeasure the total gained throughput and the virtual link pathhop count. In addition, we measure the time required tocompute a path (virtual link mapping), and the time to allocatethe computed path ( i.e. , set appropriate flow rules withinOpenFlow switches along the computed path). Note that theoverall time for end-to-end virtual link embedding includesboth virtual link mapping and its allocation. Our experimentgoals are twofold: first, we want confirm our simulation resultsin real settings; secondly, we want to estimate an overhead ofaddressing constrained shortest path problem in real settings.
NM gains are confirmed experimentally.
Using real-worldsettings, we were able to confirm constrained shortest pathalgorithms ( i.e. , IBF, NM and EBFS) for the online TE pro-duce superior performance even on a small physical networkscale. This is similar to superior results of the offline TEwhich utilizes the constrained shortest path algorithms (seeSection VII-B). Specifically, IBF, NM and EBFS show gainsof up to in total VL throughput (network utilization) andfind almost 1 hop shorter VL path in average, w.r.t. extendedDijkstra (ED) shortest path scheme as shown in Figures 11aand 11b. Note however that IBF is applicable only for in l and l ⊕ cases (see Table I). NM running time scales well with physical network size.
Figure 11c shows how VL mapping is an order of magnitudefaster for small scale physical networks (of ≈ nodes)than its allocation for all routing schemes that have beenimplemented. This is because the path computation is a local(in-memory) operation but the virtual link allocation requires ED IBF NM l+1 NM l+p EBFS T o t a l V L T P u t [ M bp s ] (a) V L P a t h H op C oun t (b) Mapping Allocation10 V L E m b e d . T i m e [ m s ] (c) Fig. 11:
Performance analysis of the shortest path algorithm such as theextended version of Dijkstra (ED) versus constrained shortest path algorithmssuch as NM (in both l ⊕ and l ⊕ p cases), EBFS and IBF on a reserved inGENI small SDN testbed in terms of: (a) total gained throughput; (b) numberof path hops per VL; and (c) average time per VL embedding, i.e., VL pathcomputation (mapping) and its consequent allocation. setting up of flow rules within all switches along the loop-free underlying physical path found. Hence, its speed dependson the Round Trip Time between switches and the OpenFlowcontroller. In reference to Figures 10b and 10d, we can seehow for large scale networks ( ≥ K nodes), the runningtime of classical constrained shortest path algorithms such asEBFS can become prohibitive (up to two orders of magnitudeslarger than in a case of a single path computation for smallscale networks). As a result, the VL mapping time becomes abottleneck. On the contrary, NM is just an order of magnitudeslower at large-scale than at small scale. Thus, NM does notbottleneck the end-to-end VL embedding at large scale.VIII. C ONCLUSION
In this paper, we motivated the problem of achieving a flexible and scalable constrained shortest path managementapproach for virtual network services deployed across multipledata centers. To cope with constrained shortest paths NP-hardness (that limits both its scalability and flexibility), we firstintroduced a novel algorithm viz., ‘Neighborhoods Method’(NM), which utilizes a double pass (a synergy of dynamicprogramming and a branch-and-bound exhaustive search) and“Look Back” search space reduction techniques. Our computa-tional complexity analysis indicates NM’s quadratically lowercomplexity upper-bound than for recent branch-and-bound ex-haustive search methods, and our scalability evaluation resultsshow how NM is faster by an order of magnitude than thesemethods. Thus, NM scales better for large scale networks of ≥ , nodes. Via numerical simulations of diverse networktopology scenarios, we were able to show how the constrainedshortest path management improves the network utilization(gains were seen up to 50%) and in some cases even in the en-ergy efficiency of the recent management plane algorithms forvirtual network embedding or network function virtualizationservice chaining. Additionally, we found improvements in therecent data plane algorithms for traffic engineering. Thus, wedemonstrated that our proposed NM is also flexible and can beapplied to diverse virtual network service scenarios. Finally,we were able to reproduce our main simulation results in areal-world GENI testbed with an NM implementation, whosesource code is publicly available under a GNU license at [23].As part of future work, we aim to develop new VNE/NFV-SC algorithms that can better utilize our proposed constrainedshortest path scheme at larger network scales. To obtain a goodlower bound solution within large network scale simulations,we can relax integrality constraints of the optimal VNE/NFV-SC integer programs to e.g. , use efficient linear programming. A CKNOWLEDGEMENTS
This work has been partially supported by the NationalScience Foundation awards CNS-1647084, CNS-1647182, theCoulter Foundation Translational Partnership Program and byRFBR according to the research project 16-07-00218a andthe public tasks of the Ministry of Education and Scienceof the Russian Federation (2.974.2017/4.6). Any opinions,findings or conclusions expressed in this publication are thoseof the author(s) and do not necessarily reflect the views of thefunding agencies. R
Elsevier Computer Networks , 2014.[3] F. Esposito, I. Matta, et al., “Slice Embedding Solutions for DistributedService Architectures”,
ACM Comput. Surv. , Vol. 46, pp. 1-29, 2013.[4] A. Fischer, et. al, “Virtual Network Embedding: A Survey”,
IEEE Comms.Surveys & Tutorials , Vol.15, No.4, pp.1888-1906, 2013.[5] F. Esposito, “CATENA: A Distributed Architecture for Robust ServiceFunction Chain Instantiation with Guarantees”; IEEE 3rd Conference onNetwork Softwarization (NetSoft) July 2017, Bologna, Italy.[6] J. G. Herrera, J. F. Botero, “Resource allocation in NFV: A comprehensivesurvey”,
IEEE Transactions on Network and Service Management , Vol.13, No. 3, pp. 518-532, 2016.[7] A. Mendiola, J. Astorga, E. Jacob, M. Higuero, “A survey on thecontributions of Software-Defined Networking to Traffic Engineering”,
IEEE Communications Surveys & Tutorials , 2016.[8] L. Lozano, A. L. Medaglia, “On an exact method for the constrainedshortest path problem”,
Computers & Operations Research , Vol. 40, No.1, pp. 378-384, 2013.[9] X. Chen, H. Cai, T. Wolf, “Multi-criteria Routing in Networks with PathChoices”,
Proc. of IEEE ICNP , 2015.[10] P. Van Mieghem, F. Kuipers, “Concepts of exact QoS routing algo-rithms”,
IEEE/ACM Transactions on Networking , 2004.[11] R. G. Garroppo, S. Giordano, L. Tavanti, “A survey on multi-constrainedoptimal path computation: Exact and approximate algorithms”,
ElsevierComputer Networks , Vol. 54, No. 17, pp. 3081-107, 2010.[12] K. Nahrstedt, S. Chen, “Coexistence of QoS and best-effort flows-routing and scheduling”,
Proc. of IEEE TIW , 1998.[13] X. Yuan, X. Liu, “Heuristic Algorithms for Multi-constrained Qualityof Service Routing”,
Proc. of IEEE INFOCOM , 2001.[14] J. M. Jaffe, “Algorithms for Finding paths with Multiple Constraints”,
IEEE Network , Vol.14, No. 1, pp. 95-116, 1984.[15] C. Y. Hong, S. Kandula, R. Mahajan, et al., “Achieving high utiliza-tion with software-driven WAN”,
Proc. of ACM SIGCOMM ComputerCommunication Review , Vol. 43, No. 4, pp. 15-26, 2013.[16] S. Jain, A. Kumar, S. Mandal, et al., “B4: Experience with a globally-deployed software defined WAN”,
Proc. of ACM SIGCOMM ComputerCommunication Review , Vol. 43, No. 4, pp. 3-14, 2013.[17] R. Mijumbi, J. Serrat, J. L. Gorricho, R. Boutaba, “A path generationapproach to embedding of virtual networks”,
IEEE Transactions onNetwork and Service Management , Vol. 12, No. 3, pp. 334-348, 2015.[18] Y. Wang, et al., “A branch-and-price framework for optimal virtualnetwork embedding”,
Computer Networks , Vol. 94, pp. 318-326, 2016.[19] M. Chowdhury, M. Rahman, R. Boutaba, “Vineyard: Virtual net-work embedding algorithms with coordinated node and link mapping”,
IEEE/ACM Trans. Netw. , Vol. 20, No. 1, pp. 206-219, 2012.[20] Z. Wang, J. Crowcroft, “QoS Routing for Supporting Resource Reser-vation”,
IEEE JSAC , 1996.[21] F. Esposito, D. Paola, I. Matta, “On Distributed Virtual Network Em-bedding with Guarantees”,
ACM/IEEE Trans. of Networking , 2014.[22] E. Danna, S. Mandal, A. Singh, “A practical algorithm for balancing themax-min fairness and throughput objectives in traffic engineering”,
Proc.of IEEE INFOCOM , 2012.[23] Neighborhood Method Prototype - https://bitbucket.org/naas cloudcomputing project/nm-of-controller/overview; Last accessed May 2018.[24] P. Khadivi, S. Samavi, T. D. Todd, “Multi-constraint QoS routing usinga new single mixed metrics”,
Elsevier Journal of Network and ComputerApplications , Vol. 31, No. 4, pp. 656-676, 2008.[25] A. Juttner, et. al., “Lagrange Relaxation based Method for the QoSRouting Problem”,
Proc. of IEEE INFOCOM , 2001.[26] R. Widyono, “The Design and Evaluation of Routing Algorithms forReal-time Channels”,
TR94024, ICSI, UC Berkeley , 1994. [27] M. S. Bazaraa, J.J. Jarvis, H. D. Sherali, “Linear programming andnetwork flows”,
John Wiley & Sons , 2011.[28] M. Chiesa, G. Rtvri, M. Schapira, “Lying Your Way to Better TrafficEngineering”,
Proc. of ACM CONEXT , 2016.[29] S. Vissicchio, O. Tilmans, L. Vanbever, J. Rexford, “Central control overdistributed routing”,
Proc. of ACM SIGCOMM CCR , 2015.[30] D. Nace, L. N. Doan, et al., “Max-min fairness in multi-commodityflows”,
Computers & Operations Research , Vol. 35, pp. 557-573, 2008.[31] D. Eppstein, “Finding the k shortest paths”,
SIAM Journal on Comput-ing , Vol. 28, No. 2, pp. 652-673, 1998.[32] E. Amaldi, S. Coniglio, A. M., Koster, M. Tieves, “On the computationalcomplexity of the virtual network embedding problem”,
Electronic Notesin Discrete Mathematics , Vol. 52, pp. 213-220, 2016.[33] M. Yu, Y. Yi, J. Rexford, M. Chiang, “Rethinking Virtual NetworkEmbedding: Substrate Support for Path Splitting and Migration”,
ACMSIGCOMM CCR , 2008.[34] Y. Zhu, M. H. Ammar, “Algorithms for Assigning Substrate NetworkResources to Virtual Network Components”,
IEEE INFOCOM , 2006.[35] J. Londono, A. Bestavros, “Netembed: A Network Resource MappingService for Distributed Applications”,
Proc. of IPDPS , 2008.[36] J. Lischka, H. Karl, “A Virtual Network Mapping Algorithm basedon Subgraph Isomorphism Detection”,
Proc. of ACM Workshop onVirtualized Infrastructure Systems and Architectures , 2009.[37] F. Samuel, M. Chowdhury, R. Boutaba, “PolyViNE: Policy-based VirtualNetwork Embedding across Multiple Domains”,
Journal of InternetServices and Applications , Vol. 4, No. 1, pp. 1-23, 2013.[38] M. T. Beck, et al., “Distributed and scalable embedding of virtualnetworks”,
Journal of Network and Computer Applications , Vol. 56, pp.124-136, 2015.[39] R. Bellman, “On a Routing Problem”,
Quarterly of Applied Methemat-ics , Vol. 16, No. 1, pp. 87-90, 1958.[40] M. Fredman, R. Tarjan, “Fibonacci Heaps and their uses in ImprovedNetwork Optimization Algorithms”,
Journal of the ACM , Vol. 34, No. 3,pp. 596-615, 1987.[41] M. Thorup, “Undirected single-source shortest paths with positive inte-ger weights in linear time”,
Journal of the ACM (JACM) , Vol. 46, No. 3,pp. 362-394, 1999.[42] R. Korf, “Depth-first Iterative-deepening: An Optimal Admissible TreeSearch”,
Artificial intelligence
ACM SIGCOMM CCR , Vol. 38, pp. 69-74, 2008.[45] A. Medina, A. Lakhina, I. Matta, J. Byers, “BRITE: An Approach toUniversal Topology Generation”,
Proc. of IEEE MASCOTS , 2001.[46] D. Chemodanov, et. al., “A General Constrained Shortest Path Approachfor Virtual Path Embedding”,
Proc. of IEEE LANMAN , 2016.[47] B. Waxman, “Routing of Multipoint Connections”,
IEEE JSAC , Vol. 6,No. 9, pp.1617-1622, 1988.[48] M. Faloutsos, P. Faloutsos, C. Faloutsos, “On Power-Law Relationshipsof the Internet Topology”,
In ACM SIGCOMM , 1999.[49] B. White, J. Lepreau, L. Stoller, et. al., “An Integrated ExperimentalEnvironment for Distributed Systems and Networks”,
OSDI , 2002.[50] A. P. Bianzino, C. Chaudet, F. Larroca, et al., “Energy-aware routing: areality check”,
Proc. of IEEE GLOBECOM Workshops A PPENDIX
A. Proof of NM Optimality TheoremProof.
To prove the NM optimality we need to prove: firstly,that the forward pass of the general NM estimates all possiblehop count distances of simple (loop-free) paths between thesource and the destination vertices in ascending order; sec-ondly, that the backward pass of NM can return any path of agiven length N ; and finally that NM returns the constrainedshortest path .The first thesis can be proved by contradiction: assume thatthere is the optimal path with ( i ) the minimum or ( ii ) themaximum hop count distance to destination, and this distancehas not been estimated by NM. Firstly, the forward pass stepstarts building neighborhoods from the first neighborhood, meaning that NM estimates all possible 1 hop paths first. Ifthere is a path with length lower than , we have the specialcase in which the source node is also the destination assumedto be satisfied, which in turn contradicts with assumption ( i ).Further, the forward pass step continues to build neighbor-hoods (estimate possible path hop count distances in ascendingorder) until their number is equal to the number of vertices, orthe destination vertex appears in the last neighborhood. In thefirst case, the forward pass ends by estimating the maximumpossible distance of a simple (loop-free) solution, and therewill never be a case in which a complex path (with loops)can be provided due to a contradiction with the constrainedshortest path definition (see Definition 1). In the second case,the forward pass ends by finding the hop count distance to thedestination. In both cases we contradict assumption ( ii ).The second thesis can be also proved by contradiction:assume that NM has not found a path with the N hops lengthbetween the source and the destination nodes. This is possibleonly if at least one of the path’s nodes has not appeared inthe neighborhoods < N H > . In this case, it suggests that thisnode is not accessible from the source node within N hops,i.e., if it is unreachable, or path does not have the N hopslength, which contradicts our assumption.The third thesis is easy to prove: NM successively checkspaths for constraints satisfaction in ascending hop count order,where NM continues to iterate until either one of the path willsatisfy all constraint or the solution length will be equal to thenumber of vertices. In the first case, NM finds the min hopcount path which satisfies all constraints and by definition isthe resource optimal constrained path (see Definition 2). Inthe second case, this length is the maximum possible lengthof a simple path, and there will never be a case in which acomplex path can be provided due to a contradiction with the constrained shortest path definition (see Definition 1).In summary, we proved that the forward pass of NMestimates all possible hop count distances of simple pathsbetween the source and the destination vertices in ascendingorder. At the same time, the backward pass can return any pathof a given hop count length which provided by the forwardpass to check for constraints satisfaction. Consequently, weconclude that - if the constrained shortest path exists, thenNM will find it. Dmitrii Chemodanov received his MS degree fromthe Department of Computer Science at SamaraState Aerospace University, Russia in 2014. He iscurrently a PhD student in the Department of Com-puter Science at University of Missouri-Columbia.His current research interests include distributed andcloud computing, network and service management,and peer-to-peer networks.
Flavio Esposito is an Assistant Professor in theComputer Science Department at SLU and a VisitingResearch Assistant Professor in the CS Dept. atUniversity of Missouri, Columbia. He received hisPh.D. in CS at Boston University in 2013, andhis MS in Telecommunication Engineering fromUniversity of Florence, Italy. His research interestsinclude network management, network virtualizationand distributed systems. Prior to joining SLU, Flavioworked at Exegy, St.Louis, MO, at Alcatel-Lucent,Italy, at Bell Laboratories, NJ, at Raytheon BBNTechnologies, MA, and at EURECOM, France. He was also a visitingresearcher at the Center for Wireless Communications, Finland.
Prasad Calyam received his MS and PhD degreesfrom the Department of Electrical and ComputerEngineering at The Ohio State University in 2002and 2007, respectively. He is currently an AssociateProfessor in the Department of Computer Scienceat University of Missouri-Columbia. His currentresearch interests include distributed and cloud com-puting, computer networking, and cyber security. Heis a Senior Member of IEEE.