Beyond the Stars: Revisiting Virtual Cluster Embeddings

Size: px
Start display at page:

Download "Beyond the Stars: Revisiting Virtual Cluster Embeddings"

Transcription

1 Beyond the Stars: Revisiting Virtual Cluster Embeddings Matthias Rost Technische Universität Berlin September 7th, 2015, Télécom-ParisTech Joint work with Carlo Fuerst, Stefan Schmid Published in ACM SIGCOMM CCR Volume 45 Issue 3, July 2015 Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

2 Introduction 1 Introduction Problem Space: Running Applications in the Cloud Application Abstractions: The VC Abstraction 2 The classical VC Embedding Problem Overview Definition: VC Embedding Problem VC-ACE Algorithm 3 Hose-Based Virtual Cluster Embeddings Motivation Definition: Hose-Based VC Embedding Problem Computational Complexity of HVC Embeddings Computing (Fractional) HVC Embeddings 4 Computational Evaluation Experimental Setup Results Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

3 Introduction Problem Space: Running Applications in the Cloud Data Center Applications Virtualization has changed our view on complex computations Virtual machines (VMs) can be spawned within minutes and anywhere on the world (Microsoft Azure, Amazon EC2,... ) Complex tasks can quite easily be distributed to tens or hundreds of servers using frameworks like MapReduce Insight: Application performance does depend on bandwidth availability Facebook traces show that network transfers account for 33% of the execution time [4] Data centers exhibit oversubscription factors of upto 1:240 [6] Customer s application execution time can hardly be estimated! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

4 Introduction Problem Space: Running Applications in the Cloud Data Center Applications Insight Performance does depend on bandwidth availability How to achieve resource isolation? New topologies limiting the oversubscription factor: Fat trees, MDCubes,... Figure: Fat tree topology [1] Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

5 Introduction Problem Space: Running Applications in the Cloud Data Center Applications Insight Performance does depend on bandwidth availability How to achieve resource isolation? New topologies limiting the oversubscription factor: Fat trees, MDCubes,... Figure: Fat tree topology [1] Novel descriptions of applications embedding algorithms Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

6 Introduction Problem Space: Running Applications in the Cloud Application Specification : Case Study Amazon AWS Customers can select from a huge number of instances Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

7 Introduction Problem Space: Running Applications in the Cloud Application Specification : Case Study Amazon AWS Customers can select from a huge number of instances Customers can select enhanced networking or cluster networking : Instances launched into a common cluster placement group are placed into a logical cluster that provides high-bandwidth, low-latency networking between all instances in the cluster. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

8 Introduction Problem Space: Running Applications in the Cloud Application Specification : Case Study Amazon AWS Customers can select from a huge number of instances Customers can select enhanced networking or cluster networking : Instances launched into a common cluster placement group are placed into a logical cluster that provides high-bandwidth, low-latency networking between all instances in the cluster. Resource Isolation? Best-effort! Level of Specification? Grouping of instances! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

9 Application Abstractions: The VC Abstraction

10 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction Early 2000s: Virtual Network Embedding Problem Requests are specified as graphs Nodes represent VMs Edges represent inter-vm links - CPU - RAM - Disk - latency - bandwidth Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

11 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction Early 2000s: Virtual Network Embedding Problem Requests are specified as graphs Nodes represent VMs Edges represent inter-vm links - CPU - RAM - Disk - latency - bandwidth Pro Concise specification Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

12 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction Early 2000s: Virtual Network Embedding Problem Requests are specified as graphs Nodes represent VMs Edges represent inter-vm links - CPU - RAM - Disk - latency - bandwidth Pro Concise specification Contra Do customers know their requirements? Generally: Challenging NP-hard problem! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

13 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction 2011: Virtual Cluster (VC) Abstraction [3] Allows only for star -shaped graphs VMs are connected to logical switch logical switch VMs Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

14 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction 2011: Virtual Cluster (VC) Abstraction [3] Allows only for star -shaped graphs VMs are connected to logical switch logical switch VMs Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

15 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction 2011: Virtual Cluster (VC) Abstraction [3] Allows only for star -shaped graphs VMs are connected to logical switch Requests are specified by three parameters: N N number of virtual machines C N size of virtual machines B R + bandwidth towards logical switch C 1 B B 2 B N C C... C Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

16 Introduction Application Abstractions: The VC Abstraction The Right Level of Abstraction 2011: Virtual Cluster (VC) Abstraction [3] Allows only for star -shaped graphs VMs are connected to logical switch Requests are specified by three parameters: N N number of virtual machines C N size of virtual machines B R + bandwidth towards logical switch C 1 B B 2 B N C C... C Pro Simple specification! Well-performing heuristics for data-center topologies [3, 8] Contra The VM size and the amount of bandwidth are dictated by the maximum wasteful Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

17 Introduction Application Abstractions: The VC Abstraction On Traffic Matrices Graph Abstraction VC Abstraction B {1,2} 1 B {1,3} 2 3 B {2,3} 1 B B 2 B 3 Allows for any traffic matrix M, where the bandwidth for edge {i, j} is less than B {i,j}. Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

18 The classical VC Embedding Problem Overview Outlook Previous works... only considered (fat) trees only considered heuristics Ballani et al.: Oktopus [3] allocating virtual cluster requests on graphs with bandwidthconstrained edges is NP-hard Xie et al.: Proteus [8] [Our algorithm] picks the first fitting lowest-level subtree out of all such lowest-level subtrees. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

19 The classical VC Embedding Problem Overview Outlook Previous works... only considered (fat) trees only considered heuristics Ballani et al.: Oktopus [3] allocating virtual cluster requests on graphs with bandwidthconstrained edges is NP-hard Xie et al.: Proteus [8] [Our algorithm] picks the first fitting lowest-level subtree out of all such lowest-level subtrees. Main Questions Is the VC embedding problem really NP-hard to solve? Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

20 Formal Definition of the VC Embedding Problem

21 The classical VC Embedding Problem Definition: VC Embedding Problem VC Embedding Problem Defintion VC request: N, B, C VC = (V VC, E VC ), V VC = {1, 2,..., N, center} E VC = {{i, center} 1 i N } Physical Network (Substrate) S = (V S, E S, cap, cost), cap : V S E S N cost : V S E S R 0 Task: Find a mapping of... VMs onto substrate nodes map V : V VC V S, and VC edges onto paths in the substrate map E : E VC P(E S ) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

22 The classical VC Embedding Problem Definition: VC Embedding Problem VC Embedding Problem Defintion VC request: N, B, C VC = (V VC, E VC ), V VC = {1, 2,..., N, center} E VC = {{i, center} 1 i N } Physical Network (Substrate) S = (V S, E S, cap, cost), cap : V S E S N cost : V S E S R 0 Task: Find a mapping of... VMs onto substrate nodes map V : V VC V S, and VC edges onto paths in the substrate map E : E VC P(E S ), such that 1 map E ({u, v}) connects map V (u) and map V (v) for {u, v} E VC Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

23 The classical VC Embedding Problem Definition: VC Embedding Problem VC Embedding Problem Defintion VC request: N, B, C VC = (V VC, E VC ), V VC = {1, 2,..., N, center} E VC = {{i, center} 1 i N } Physical Network (Substrate) S = (V S, E S, cap, cost), cap : V S E S N cost : V S E S R 0 Task: Find a mapping of... VMs onto substrate nodes map V : V VC V S, and VC edges onto paths in the substrate map E : E VC P(E S ), such that 1 map E ({i, j}) connects map V (i) and map V (j) for {i.j} E VC 2 v V VC \ {center} v = map V (v ) C cap(v) and e E VC e map E (e ) B cap(e) for v V S, e E S Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

24 The classical VC Embedding Problem Definition: VC Embedding Problem VC Embedding Problem Defintion Task: Find a mapping of... VMs onto substrate nodes map V : V VC V S, and VC edges onto paths in the substrate map E : E VC P(E S ), such that 1 map E ({u, v}) connects map V (u) and map V (v) for {u, v} E VC 2 v V VC \ {center} v = map V (v ) C cap(v) and 3 minimizing the cost C e E VC e map E (e ) v V VC \{center} B cap(e) for v V S, e E S cost(map V (v)) + B e E VC e map E (e ) cost(e). Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

25 VC-ACE Algorithm

26 The classical VC Embedding Problem VC-ACE Algorithm Key Insights Lemma We can assume B = C = 1. Proof idea. If B 1, C 1, we transform the substrate by scaling capacities and costs: cap S (u) = cap(u)/c for u V S cap S (e) = cap(e)/b for e E S cost S (u) = cost(u) C for u V S cost S (e) = cost(e) B for e E S Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

27 The classical VC Embedding Problem VC-ACE Algorithm Key Insights Lemma We can solve the edge embedding problem if all nodes are placed. Proof. 1 Construct extended graph with additional node s + and (parallel) edges: {(s +, map V (i)) i {1,..., N }} of capacity 1 and cost 0 2 Compute a minimum cost flow of value N from s + to map V (center). 3 Perform a path-decomposition to obtain mapping for edges. 2 a b a b 1 source s + 3 d c d target c Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

28 The classical VC Embedding Problem VC-ACE Algorithm Key Insights Lemma We can solve the embedding problem if the logical switch is placed. Proof. 1 Construct extended graph with additional edges {(s +, u) u V S }, cap(s +, u) = cap(u) and cost(s +, u) = cost(u) for u V S 2 Compute a minimum cost flow of value N from s + to map V (center). 3 Perform path-decomposition to obtain mapping for nodes and edges. 2? cap(a) = 3 cap(b) = 2 a b a b 1? source s + 3? d c cap(d) = 1 cap(c) = 1 d target c Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

29 The classical VC Embedding Problem VC-ACE Algorithm Key Insights Lemma We can solve the embedding problem if the logical switch is placed. Proof. 1 Construct extended graph with additional edges {(s +, u) u V S }, cap(s +, u) = cap(u) and cost(s +, u) = cost(u) for u V S 2 Compute a minimum cost flow of value N from s + to map V (center). 3 Perform path-decomposition to obtain mapping for nodes and edges. flow = 2 a b 2 a b source s + flow = 2 1 flow = 1 d target c 3 d c Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

30 The classical VC Embedding Problem VC-ACE Algorithm VC-ACE Algorithm Idea Simply iterate over possible locations for the center. Algorithm 1: The VC-ACE Algorithm Input: Substrate S = (V S, E S ), request (N, B, C) Output: Optimal VC mapping map V, map E if feasible (ˆf, ˆv) (null, null) for v V S do V S = V S {s + } and E S = E S {(s +, u) u V S } cap { S (e) = cap(e)/b, if e E S cap(u)/c, if e = (s +, u) E { S cost(e) B, if e E S cost S (e) = cost(u) C, if e = (s +, u) E S f MinCostFlow(s +, v, N, V S, E S, cap S, cost S ) if f is feasible and cost(f ) < cost(ˆf ) then (ˆf, ˆv) (f, v) if ˆf = null then return null return DecomposeFlowIntoMapping(ˆf, ˆv) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

31 The classical VC Embedding Problem VC-ACE Algorithm VC-ACE Algorithm Idea Simply iterate over possible locations for the center. Theorem Correctness follows from the lemma on the previous slide. Algorithm 2: The VC-ACE Algorithm Input: Substrate S = (V S, E S ), request (N, B, C) Output: Optimal VC mapping map V, map E if feasible (ˆf, ˆv) (null, null) for v V S do V S = V S {s + } and E S = E S {(s +, u) u V S } cap { S (e) = cap(e)/b, if e E S cap(u)/c, if e = (s +, u) E { S cost(e) B, if e E S cost S (e) = cost(u) C, if e = (s +, u) E S f MinCostFlow(s +, v, N, V S, E S, cap S, cost S ) if f is feasible and cost(f ) < cost(ˆf ) then (ˆf, ˆv) (f, v) if ˆf = null then return null return DecomposeFlowIntoMapping(ˆf, ˆv) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

32 The classical VC Embedding Problem VC-ACE Algorithm VC-ACE Algorithm Theorem The runtime is O ( N (n 2 log n + n m) ) with n = V S and m = E S, when using the successive-shortest path for the flow computation. Corollary. The VC Embedding Problem is not NP-hard. Algorithm 3: The VC-ACE Algorithm Input: Substrate S = (V S, E S ), request (N, B, C) Output: Optimal VC mapping map V, map E if feasible (ˆf, ˆv) (null, null) for v V S do V S = V S {s + } and E S = E S {(s +, u) u V S } cap { S (e) = cap(e)/b, if e E S cap(u)/c, if e = (s +, u) E { S cost(e) B, if e E S cost S (e) = cost(u) C, if e = (s +, u) E S f MinCostFlow(s +, v, N, V S, E S, cap S, cost S ) if f is feasible and cost(f ) < cost(ˆf ) then (ˆf, ˆv) (f, v) if ˆf = null then return null return DecomposeFlowIntoMapping(ˆf, ˆv) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

33 We can compute optimal solutions in polynomial-time.

34 We can compute optimal solutions in polynomial-time. Can we do even better?

35 Can we do even better? Yes,...

36 Hose-Based Virtual Cluster Embeddings

37 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction 1 B B 2 B 3 Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

38 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction 1 B B 2 B 3 Question: What is the purpose of the switch? Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

39 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction 1 B B 2 B Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B 3 Question: What is the purpose of the switch? Ballani et al. Oktopus [3] Oktopus allocation algorithms assume that the traffic between a tenant s VMs is routed along a tree. Answer: To route the traffic along a tree. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

40 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction 1 B B 2 B 3 Question: Can we do without the switch? Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

41 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction Question: Can we do without the switch? 1 B B 2 B 3 Ballani et al. Oktopus [3] Alternatively, the NM [Network Manager] can control datacenter routing to actively build routes between tenant VMs [..] Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B We defer a detailed study of the relative merits of these approaches to future work. Answer: Yes! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

42 Hose-Based Virtual Cluster Embeddings Motivation Starting from Scratch VC Abstraction Hose-Based VC Abstraction 1 B 2 B B 1 2 B B 3 B 3 Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Allows for any traffic matrix M, where for any VM the sum of outgoing and incoming traffic is less than B Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

43 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example cap = 1 cap = N = 6, B = C = 1 ring substrate Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

44 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example cap = 1 cap = N = 6, B = C = 1 ring substrate There exists no solution in the classic VC embedding model. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

45 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example allocation = N = 6, B = C = 1 6 Embedding on the same substrate 5 Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

46 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example allocation = N = 6, B = C = 1 Embedding on the same substrate There exists a solution in the hose-based VC model! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

47 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example allocation = 2 5 Embedding on the same substrate 4 Why allocations of 2 are sufficient: Consider edge e between VMs 6 and 5. The edge is used by routes R(e) = {(1, 5), (2, 5), (3, 6), (4, 6), (5, 6)}. Any valid traffic matrix M will respect: M 1,5 + M 2,5 1 M 3,6 + M 4,6 + M 5,6 1 Hence (i,j) R(e) M i,j 2 holds. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

48 Hose-Based Virtual Cluster Embeddings Motivation Motivating Example II cap = 0 cap = 1 cap = 2 cap = cost = 6 5 N = 6, B = C = 1 extended ring topology Solution costs can be arbitrarily higher under the classic star-interpretation! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

49 Hose-Based Virtual Cluster Embedding Problem

50 Hose-Based Virtual Cluster Embeddings Definition: Hose-Based VC Embedding Problem Hose-Based VC Embedding Problem (HVCEP) Definition (Clique Graph) V C = {1,..., N }, E C = {(i, j) i, j V C, i < j} Task: Find a mapping of... VC nodes onto substrate nodes map V : V C V S, and VC routes onto paths in the substrate map E : E C P(E S ), such that 1 route (i, j) E C connects map V (i) and map V (j), 2 the mapping of VMs must not violate node capacities (cf. slide 12), Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

51 Hose-Based Virtual Cluster Embeddings Definition: Hose-Based VC Embedding Problem Hose-Based VC Embedding Problem (HVCEP) Definition (Clique Graph) V C = {1,..., N }, E C = {(i, j) i, j V C, i < j} Task: Find a mapping of... VC nodes onto substrate nodes map V : V C V S, and VC routes onto paths in the substrate map E : E C P(E S ), and integral bandwidth reservations l u,v cap(u, v) for {u, v} E S, s.t. 1 route (i, j) E C connects map V (i) and map V (j), 2 the mapping of VMs must not violate node capacities (cf. slide 12), 3 for all valid traffic matrices M ij i.e. (j,i) E C M ji + M ij B holds the bandwidth reservation is not exceeded on any edge {u, v} E S : {i,j} E C :{u,v} map E ({i,j}) M ij l u,v, Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

52 Hose-Based Virtual Cluster Embeddings Definition: Hose-Based VC Embedding Problem Hose-Based VC Embedding Problem (HVCEP) Definition (Clique Graph) V C = {1,..., N }, E C = {(i, j) i, j V C, i < j} Task: Find a mapping of... VC nodes onto substrate nodes map V : V C V S, and VC routes onto paths in the substrate map E : E C P(E S ), and integral bandwidth reservations l u,v cap(u, v) for {u, v} E S, such that 1 route (i, j) E C connects map V (i) and map V (j), 2 the mapping of VMs must not violate node capacities (cf. slide 12), 3 for all valid traffic matrices M i.e. (j,i) E C M ji + M ij B holds the bandwidth reservation is not exceeded on any edge {u, v} E S : {i,j} E C :{u,v} map E ({i,j}) M ij l u,v, 4 minimizing C cost(map V (i)) + B l u,v cost(e). i V C e E S Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

53 Computational Complexity of HVC Embeddings

54 Hose-Based Virtual Cluster Embeddings Computational Complexity of HVC Embeddings Excursion: VPN Embeddings and the VPN Conjecture Definition (VPN Embedding Problem (VPNEP) [7]) Given: Substrate network G = (V, E) with edge costs cost : E R + 0 Set of terminals W V with demands b(i) R + for i W Task: Find paths P {i,j} for all pairs i, j W, i j, and bandwidth allocations x e R + 0 on edges e E, s.t. i,j W :i j,p {i,j} M {i,j} x e holds for traffic matrices M, minimizing the cost e E cost(e) x e. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

55 Hose-Based Virtual Cluster Embeddings Computational Complexity of HVC Embeddings Excursion: VPN Embeddings and the VPN Conjecture Definition (VPN Embedding Problem (VPNEP) [7]) Given: Substrate network G = (V, E) with edge costs cost : E R + 0 Set of terminals W V with demands b(i) R + for i W Task: Find paths P {i,j} for all pairs i, j W, i j, and Theorem bandwidth allocations x e R + 0 on edges e E, s.t. i,j W :i j,p {i,j} M {i,j} x e holds for traffic matrices M, minimizing the cost e E cost(e) x e. Finding a feasible solution for the capacitated VPNEP is NP-hard [7]. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

56 Hose-Based Virtual Cluster Embeddings Computational Complexity of HVC Embeddings Excursion: VPN Embeddings and the VPN Conjecture Definition (VPN Embedding Problem (VPNEP) [7]) Given: Substrate network G = (V, E) with edge costs cost : E R + 0 Set of terminals W V with demands b(i) R + for i W Task: Find paths P {i,j} for all pairs i, j W, i j, and Theorem bandwidth allocations x e R + 0 on edges e E, s.t. i,j W :i j,p {i,j} M {i,j} x e holds for traffic matrices M, minimizing the cost e E cost(e) x e. Finding a feasible solution for the capacitated VPNEP is NP-hard [7]. Theorem (By reduction from the VPNEP) Finding a feasible solution for the HVCEP is NP-hard. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

57 Hose-Based Virtual Cluster Embeddings Computational Complexity of HVC Embeddings Excursion: VPN Embeddings and the VPN Conjecture Definition (VPN Embedding Problem (VPNEP) [7]) Given: Substrate network G = (V, E) with edge costs cost : E R + 0 Set of terminals W V with demands b(i) R + for i W Task: Find paths P {i,j} for all pairs i, j W, i j, and bandwidth allocations x e R + 0 on edges e E, s.t. i,j W :i j,p {i,j} M {i,j} x e holds for traffic matrices M, minimizing the cost e E cost(e) x e. Theorem (VPN Conjecture) Tree routing and arbitrary routing solutions coincide for the VPNEP on uncapacitated graphs. [5]. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

58 Hose-Based Virtual Cluster Embeddings Computational Complexity of HVC Embeddings Excursion: VPN Embeddings and the VPN Conjecture Definition (VPN Embedding Problem (VPNEP) [7]) Given: Substrate network G = (V, E) with edge costs cost : E R + 0 Set of terminals W V with demands b(i) R + for i W Task: Find paths P {i,j} for all pairs i, j W, i j, and bandwidth allocations x e R + 0 on edges e E, s.t. i,j W :i j,p {i,j} M {i,j} x e holds for traffic matrices M, minimizing the cost e E cost(e) x e. Theorem (VPN Conjecture) Tree routing and arbitrary routing solutions coincide for the VPNEP on uncapacitated graphs. [5]. Theorem (Via the VPN Conjecture) Algorithm VC-ACE solves the HVCEP when capacities are sufficiently large! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

59 Computing (Fractional) HVC Embeddings

60 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings A Mixed-Integer Programming Formulation for the HVCEP Variables x i u y i,j u.v l u.v mapping of VM i onto node u mapping of link (i, j) V C onto (directed) substrate edge (u, v) load on substrate edge {u, v} ω i uv dual variable for allocation of communications of VM i on edge {u, v} Mixed-Integer Program 1: HVC-OSPE min cost u xu i + cost u,v l uv (1) i V C,u V S {u,v} E S xu= i 1 i V C. (2) u V S σ u (xu i xu i+1 ) 0 i V C \ {N }. (3) u V S C xu i cap u u V S. (4) i V C (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (5) y ij vu = x i u x j u (i, j) E C, (6) u V S. i V C B ω i uv l uv {u, v} E S. (7) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (8) {u, v} E S. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

61 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings A Mixed-Integer Programming Formulation for the HVCEP Explanation (2) - (4) control the VM embedding (5) - (8) is adapted from Altin et al. [2] for computing the optimal hose allocations on edges Mixed-Integer Program 2: HVC-OSPE min cost u xu i + cost u,v l uv (1) i V C,u V S {u,v} E S xu= i 1 i V C. (2) u V S σ u (xu i xu i+1 ) 0 i V C \ {N }. (3) u V S C xu i cap u u V S. (4) i V C (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (5) y ij vu = x i u x j u (i, j) E C, (6) u V S. i V C B ω i uv l uv {u, v} E S. (7) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (8) {u, v} E S. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

62 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings A Mixed-Integer Programming Formulation for the HVCEP Explanation (2) - (4) control the VM embedding (5) - (8) is adapted from Altin et al. [2] for computing the optimal hose allocations on edges Observation There are O(N 2 E S ) binary variables for computing paths. Mixed-Integer Program 3: HVC-OSPE min cost u xu i + cost u,v l uv (1) i V C,u V S {u,v} E S xu= i 1 i V C. (2) u V S σ u (xu i xu i+1 ) 0 i V C \ {N }. (3) u V S C xu i cap u u V S. (4) i V C (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (5) y ij vu = x i u x j u (i, j) E C, (6) u V S. i V C B ω i uv l uv {u, v} E S. (7) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (8) {u, v} E S. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

63 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings A Mixed-Integer Programming Formulation for the HVCEP Observation There are O(N 2 E S ) binary variables for computing paths. Initial Computational Results Solving this formulation may take up to 1800 seconds for embedding a 10-VM VC onto a 20 node substrate. Mixed-Integer Program 4: HVC-OSPE min cost u xu i + cost u,v l uv (1) i V C,u V S {u,v} E S xu= i 1 i V C. (2) u V S σ u (xu i xu i+1 ) 0 i V C \ {N }. (3) u V S C xu i cap u u V S. (4) i V C (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (5) y ij vu = x i u x j u (i, j) E C, (6) u V S. i V C B ω i uv l uv {u, v} E S. (7) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (8) {u, v} E S. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

64 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings A Mixed-Integer Programming Formulation for the HVCEP Further Observations The hardness result has shown that the problem is hard even if the VMs are fixed. The large number of variables necessary for computing each end-to-end path between VMs renders solving even the linear relaxation i.e. dropping integrality constraints computationally hard. Assumptions for obtaining a solvable formulation Assume that the VMs are already mapped. Assume that the hose-paths are splittable, i.e. each VMs are connected by a set of (weighted) paths. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

65 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings Assumptions Assume that the VMs are already mapped. Assume that the hose-paths are splittable. arbitrarily many paths. map V (i) map V (j) y ij e = 0.5 Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

66 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (5) y ij vu = x i u x j u (i, j) E C, (6) u V S. i V C B ω i uv l uv {u, v} E S. (7) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (8) {u, v} E S. map V (i) map V (j) W e δ + (W ) y ij e = 1 This type of constraint is equivalent to (6). Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

67 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings l uv cap uv {u, v} E S. (5) yuv ij yvu ij = x u i x j (i, j) E u C, (6) (u,v) δ u + (v,u) δu u V S. B ωuv i l uv {u, v} E S. (7) i VC y ij uv + y ij vu ωi uv + ω j uv (u,v) δ + (W ) y ij uv 1 Derivation of a new constraint (i, j) E C, (8) {u, v} E S. (i, j) E C. W V S : map V (i) W, (6 ) map V (j) / W Across a cut W, the amount of flow must be greater than 1 (6 ). By summing up Constraints (8) accordingly, we obtain for (i, j) E C and across any node set W V S with map V (i) W and map V (j) / W that (ωuv i + ωuv) j 1 holds. (u,v) δ + (W ) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

68 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings Remarks l uv cap uv {u, v} E S. (5) yuv ij yvu ij = x u i x j (i, j) E u C, (6) (u,v) δ u + (v,u) δu u V S. B ωuv i l uv {u, v} E S. (7) (u,v) δ + (W ) i VC y ij uv + y ij vu ωi uv + ω j uv (u,v) δ + (W ) y ij uv 1 (ω i uv + ω j uv) 1 (i, j) E C, (8) {u, v} E S. (i, j) E C. W V S : map V (i) W, (6 ) map V (j) / W (i, j) E C. W V S : map V (i) W, (9) map V (j) / W Given (9), we can always (re-)construct the flow variables y ij uv afterwards by breadth-first searches. Furthermore, this property does not depend on (6 ). Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

69 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings l uv cap uv {u, v} E S. (5) yuv ij yvu ij = x u i x j (i, j) E u C, (6) (u,v) δ u + (v,u) δu u V S. B ωuv i l uv {u, v} E S. (7) (u,v) δ + (W ) i VC y ij uv + y ij vu ωi uv + ω j uv (u,v) δ + (W ) y ij uv 1 (ω i uv + ω j uv) 1 (i, j) E C, (8) {u, v} E S. (i, j) E C. W V S : map V (i) W, (6 ) map V (j) / W (i, j) E C. W V S : map V (i) W, (9) map V (j) / W Remarks Therfore Constraints (6), (8), and (6 ) are not needed anymore! Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

70 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings (u,v) δ + u y ij uv (v,u) δ u l uv cap uv {u, v} E S. (6) y ij vu = x i u x j u (i, j) E C, (7) u V S. i V C B ω i uv l uv {u, v} E S. (8) y ij uv + y ij vu ωi uv + ω j uv (i, j) E C, (9) {u, v} E S. Algorithm 5: HMPR min cost u,v l uv (10) {u,v} E S l uv cap uv {u, v} E S. (11) B ωuv i l uv {u, v} E S. (12) i V C (ωuv i + ωuv) j (i, j) E C. W V S : 1 map V (i) W, (13) map V (j) / W (u,v) δ + (W ) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

71 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings Algorithm 6: HMPR min cost u,v l uv (10) {u,v} E S l uv cap uv {u, v} E S. (11) B ωuv i l uv {u, v} E S. (12) i V C (ωuv i + ωuv) j (i, j) E C. W V S : 1 map V (i) W, (13) map V (j) / W (u,v) δ + (W ) Exponential number of constraints, which can be separated in polynomial time. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

72 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings Algorithm 7: HMPR min cost u,v l uv (10) {u,v} E S l uv cap uv {u, v} E S. (11) B ωuv i l uv {u, v} E S. (12) i V C (ωuv i + ωuv) j (i, j) E C. W V S : 1 map V (i) W, (13) map V (j) / W (u,v) δ + (W ) Exponential number of constraints, which can be separated in polynomial time. Number of variables, in the order of O(N E S ) instead of O(N 2 E S ). Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

73 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings We can compute fractional edge embeddings, but how to find node locations? Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

74 Hose-Based Virtual Cluster Embeddings Computing (Fractional) HVC Embeddings Computing Splittable HVC Embeddings Heuristic Idea without capacities: VC = HVC reuse VC-ACE algorithm, but allow violation of capacities w.r.t. VC model violating capacities induces k times the cost of the original edge Algorithm 5: The HVC-ACE Embedding Heuristic Input: Substrate S = (V S, E S ), request VC(N, B, C), cost factor k 1 Output: Splittable HVC-Embedding map V, map E E S for e E S do E S = E S {e, e } cap S (e) = cap(e) and cap S (e ) = cost S (e) = cost(e) and cost S (e ) = cost(e) k map V, map E VC-ACE(V S, E S, VC(N, B, C)) if map V null then map E HMPR(VC(N, B, C), map V ) if map E null then return map V, map E return null Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

75 Computational Evaluation What do we get by using HVC-ACE?

76 Computational Evaluation Experimental Setup Setup Topologies Fat trees with 12 port switches and 432 server overall MDCubes consisting of 4 BCubes with 12 port switches and k = 1, such that the topology contains 576 server Figure: Fat tree (n=4) Figure: MDCube (n=2,k=1) Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

77 Computational Evaluation Experimental Setup Setup Generation of Requests N is chosen uniformly at random from the interval {10,..., 30}. B is uniformly distributed in the interval of {20%,..., 100%} w.r.t. to the available capacity of an unused link. C = 1 and the capacity of servers are 2. Generation of Scenarios Requests are embedded over time using the VC-ACE algorithm. After system stabilization, a single data point is generated by considering the performance of both algorithms on the same substrate state and the same request. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

78 Computational Evaluation Experimental Setup Metrics Acceptance Ratio How many requests can VC-ACE embed compared to HVC-ACE? Footprint Change Assuming that both algorithms have found a solution, how much resources do we save by using HVC-ACE (compared to VC-ACE using 100%). Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

79 Results

80 Computational Evaluation Results Results on Fat Tree Topology Acceptance Ratio [%] Request Size VC ACE HVC ACE HVC-ACE can improve acceptance ratio dramatically. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

81 Computational Evaluation Results Results on Fat Tree Topology ECDF(Requests) Footprint Change [%] HVC-ACE saves > 10% of resources for more than 20% of the requeusts. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

82 Computational Evaluation Results Results on MDCube Acceptance Ratio [%] Request Size VC ACE HVC ACE HVC-ACE can improve acceptance by around 20% on average. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

83 Computational Evaluation Results Results on MDCube ECDF(Requests) Footprint Change [%] HVC-ACE saves no resources. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

84 Computational Evaluation Results Conclusion Contributions Showed how to solve the classic VC embedding problem optimally. Defined formally the hose-based VC embedding problem and considered its computational complexity. Derived a compact formulation for the splittable hose edge embedding and the HVC-ACE heuristic for the respective embedding problem. Showed that by using HVC-ACE one may indeed save a substantial amount of resources and increase the acceptance ratio (on fat trees). Bottomline Complexity of specification can often be traded-off with the complexity of the respective embedding algorithms. We need to understand this trade-off better and explore the boundaries of specifications that we can efficiently embed. Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

85 Computational Evaluation Results References I [1] M. Al-Fares, A. Loukissas, and A. Vahdat. A scalable, commodity data center network architecture. In ACM SIGCOMM Computer Communication Review, volume 38, pages ACM, [2] A. Altin, E. Amaldi, P. Belotti, and M. c. Pinar. Provisioning virtual private networks under traffic uncertainty. Networks, 49(1): , Jan [3] H. Ballani, P. Costa, T. Karagiannis, and A. Rowstron. Towards predictable datacenter networks. In Proc. ACM SIGCOMM, [4] M. Chowdhury, M. Zaharia, J. Ma, M. I. Jordan, and I. Stoica. Managing Data Transfers in Computer Clusters with Orchestra. In ACM SIGCOMM, [5] N. Goyal, N. Olver, and F. B. Shepherd. The VPN conjecture is true. Proc. ACM STOC, Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

86 Computational Evaluation Results References II [6] A. Greenberg, J. R. Hamilton, N. Jain, S. Kandula, C. Kim, P. Lahiri, D. A. Maltz, P. Patel, and S. Sengupta. VL2: a scalable and flexible data center network. In ACM SIGCOMM Computer Communication Review, volume 39 of SIGCOMM 09, pages ACM, Acm, [7] A. Gupta, J. Kleinberg, A. Kumar, R. Rastogi, and B. Yener. Provisioning a virtual private network. In Proc. ACM STOC, [8] D. Xie, N. Ding, Y. C. Hu, and R. Kompella. The only constant is change: Incorporating time-varying network reservations in data centers. In Proc. ACM SIGCOMM, pages , Matthias Rost (TU Berlin) Revisiting Virtual Cluster Embeddings Paris, September

Towards Predictable Datacenter Networks

Towards Predictable Datacenter Networks Towards Predictable Datacenter Networks Hitesh Ballani, Paolo Costa, Thomas Karagiannis and Ant Rowstron Microsoft Research, Cambridge This talk is about Guaranteeing network performance for tenants in

More information

Xiaoqiao Meng, Vasileios Pappas, Li Zhang IBM T.J. Watson Research Center Presented by: Payman Khani

Xiaoqiao Meng, Vasileios Pappas, Li Zhang IBM T.J. Watson Research Center Presented by: Payman Khani Improving the Scalability of Data Center Networks with Traffic-aware Virtual Machine Placement Xiaoqiao Meng, Vasileios Pappas, Li Zhang IBM T.J. Watson Research Center Presented by: Payman Khani Overview:

More information

Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers

Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers Ho Trong Viet, Yves Deville, Olivier Bonaventure, Pierre François ICTEAM, Université catholique de Louvain (UCL), Belgium.

More information

On Tackling Virtual Data Center Embedding Problem

On Tackling Virtual Data Center Embedding Problem On Tackling Virtual Data Center Embedding Problem Md Golam Rabbani, Rafael Esteves, Maxim Podlesny, Gwendal Simon Lisandro Zambenedetti Granville, Raouf Boutaba D.R. Cheriton School of Computer Science,

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Predictable Data Centers

Predictable Data Centers Predictable Data Centers Thomas Karagiannis Hitesh Ballani, Paolo Costa, Fahad Dogar, Keon Jang, Greg O Shea, Eno Thereska, and Ant Rowstron Systems & Networking Microsoft Research, Cambridge http://research.microsoft.com/datacenters/

More information

Algorithm Design for Performance Aware VM Consolidation

Algorithm Design for Performance Aware VM Consolidation Algorithm Design for Performance Aware VM Consolidation Alan Roytman University of California, Los Angeles Sriram Govindan Microsoft Corporation Jie Liu Microsoft Research Aman Kansal Microsoft Research

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

CURTAIL THE EXPENDITURE OF BIG DATA PROCESSING USING MIXED INTEGER NON-LINEAR PROGRAMMING

CURTAIL THE EXPENDITURE OF BIG DATA PROCESSING USING MIXED INTEGER NON-LINEAR PROGRAMMING Journal homepage: http://www.journalijar.com INTERNATIONAL JOURNAL OF ADVANCED RESEARCH RESEARCH ARTICLE CURTAIL THE EXPENDITURE OF BIG DATA PROCESSING USING MIXED INTEGER NON-LINEAR PROGRAMMING R.Kohila

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints Olivier Beaumont,, Paul Renaud-Goud Inria & University of Bordeaux Bordeaux, France 9th Scheduling for Large Scale Systems

More information

Virtual Data Center Allocation with Dynamic Clustering in Clouds

Virtual Data Center Allocation with Dynamic Clustering in Clouds BNL-106312-2014-CP Virtual Data Center Allocation with Dynamic Clustering in Clouds Li Shi 33rd IEEE International Performance Computing and Communications Conference (IPCCC 2014) Austin, TX December 5-7,

More information

Advanced Computer Networks. Scheduling

Advanced Computer Networks. Scheduling Oriana Riva, Department of Computer Science ETH Zürich Advanced Computer Networks 263-3501-00 Scheduling Patrick Stuedi, Qin Yin and Timothy Roscoe Spring Semester 2015 Outline Last time Load balancing

More information

Improving MapReduce Performance in Heterogeneous Environments

Improving MapReduce Performance in Heterogeneous Environments UC Berkeley Improving MapReduce Performance in Heterogeneous Environments Matei Zaharia, Andy Konwinski, Anthony Joseph, Randy Katz, Ion Stoica University of California at Berkeley Motivation 1. MapReduce

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

Benchmarking Amazon s EC2 Cloud Platform

Benchmarking Amazon s EC2 Cloud Platform Benchmarking Amazon s EC2 Cloud Platform Goal of the project: The goal of this project is to analyze the performance of an 8-node cluster in Amazon s Elastic Compute Cloud (EC2). The cluster will be benchmarked

More information

MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research

MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With

More information

Chatty Tenants and the Cloud Network Sharing Problem

Chatty Tenants and the Cloud Network Sharing Problem Chatty Tenants and the Cloud Network Sharing Problem Hitesh Ballani, Keon Jang, Thomas Karagiannis Changhoon Kim, Dinan Gunawardena, Greg O Shea MSR Cambridge, Windows Azure This talk is about... How to

More information

Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

More information

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004 Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February

More information

Bandwidth Allocation in a Network Virtualization Environment

Bandwidth Allocation in a Network Virtualization Environment Bandwidth Allocation in a Network Virtualization Environment Juan Felipe Botero [email protected] Xavier Hesselbach [email protected] Department of Telematics Technical University of Catalonia

More information

Distributed Computing over Communication Networks: Maximal Independent Set

Distributed Computing over Communication Networks: Maximal Independent Set Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Cost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation:

Cost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation: CSE341T 08/31/2015 Lecture 3 Cost Model: Work, Span and Parallelism In this lecture, we will look at how one analyze a parallel program written using Cilk Plus. When we analyze the cost of an algorithm

More information

Big Data: Big N. V.C. 14.387 Note. December 2, 2014

Big Data: Big N. V.C. 14.387 Note. December 2, 2014 Big Data: Big N V.C. 14.387 Note December 2, 2014 Examples of Very Big Data Congressional record text, in 100 GBs Nielsen s scanner data, 5TBs Medicare claims data are in 100 TBs Facebook 200,000 TBs See

More information

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

More information

Locality-Sensitive Operators for Parallel Main-Memory Database Clusters

Locality-Sensitive Operators for Parallel Main-Memory Database Clusters Locality-Sensitive Operators for Parallel Main-Memory Database Clusters Wolf Rödiger, Tobias Mühlbauer, Philipp Unterbrunner*, Angelika Reiser, Alfons Kemper, Thomas Neumann Technische Universität München,

More information

CLOUD NETWORKING THE NEXT CHAPTER FLORIN BALUS

CLOUD NETWORKING THE NEXT CHAPTER FLORIN BALUS CLOUD NETWORKING THE NEXT CHAPTER FLORIN BALUS COMMON APPLICATION VIEW OF THE NETWORK Fallacies of Distributed Computing 1. The network is reliable. 2. Latency is zero. 3. Bandwidth is infinite. 4. The

More information

Full and Complete Binary Trees

Full and Complete Binary Trees Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full

More information

On Orchestrating Virtual Network Functions

On Orchestrating Virtual Network Functions On Orchestrating Virtual Network Functions Presented @ CNSM 2015 Md. Faizul Bari, Shihabur Rahman Chowdhury, and Reaz Ahmed, and Raouf Boutaba David R. Cheriton School of Computer science University of

More information

ACANO SOLUTION VIRTUALIZED DEPLOYMENTS. White Paper. Simon Evans, Acano Chief Scientist

ACANO SOLUTION VIRTUALIZED DEPLOYMENTS. White Paper. Simon Evans, Acano Chief Scientist ACANO SOLUTION VIRTUALIZED DEPLOYMENTS White Paper Simon Evans, Acano Chief Scientist Updated April 2015 CONTENTS Introduction... 3 Host Requirements... 5 Sizing a VM... 6 Call Bridge VM... 7 Acano Edge

More information

Steiner Tree Approximation via IRR. Randomized Rounding

Steiner Tree Approximation via IRR. Randomized Rounding Steiner Tree Approximation via Iterative Randomized Rounding Graduate Program in Logic, Algorithms and Computation μπλ Network Algorithms and Complexity June 18, 2013 Overview 1 Introduction Scope Related

More information

MyCloudLab: An Interactive Web-based Management System for Cloud Computing Administration

MyCloudLab: An Interactive Web-based Management System for Cloud Computing Administration MyCloudLab: An Interactive Web-based Management System for Cloud Computing Administration Hoi-Wan Chan 1, Min Xu 2, Chung-Pan Tang 1, Patrick P. C. Lee 1 & Tsz-Yeung Wong 1, 1 Department of Computer Science

More information

Power-efficient Virtual Machine Placement and Migration in Data Centers

Power-efficient Virtual Machine Placement and Migration in Data Centers 2013 IEEE International Conference on Green Computing and Communications and IEEE Internet of Things and IEEE Cyber, Physical and Social Computing Power-efficient Virtual Machine Placement and Migration

More information

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Satyajeet S. Ahuja, Srinivasan Ramasubramanian, and Marwan Krunz Department of ECE, University of Arizona, Tucson,

More information

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

Guessing Game: NP-Complete?

Guessing Game: NP-Complete? Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

More information

Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 [email protected],

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

A Network Flow Approach in Cloud Computing

A Network Flow Approach in Cloud Computing 1 A Network Flow Approach in Cloud Computing Soheil Feizi, Amy Zhang, Muriel Médard RLE at MIT Abstract In this paper, by using network flow principles, we propose algorithms to address various challenges

More information

Towards Predictable Datacenter Networks

Towards Predictable Datacenter Networks Towards Predictable Datacenter Networks Hitesh Ballani Paolo Costa Thomas Karagiannis Ant Rowstron [email protected] [email protected] [email protected] [email protected] Microsoft Research

More information

Stability of QOS. Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu

Stability of QOS. Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu Stability of QOS Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu Abstract Given a choice between two services, rest of the things being equal, it is natural to prefer the one with more

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees in The Vehicle Routing Problem: Latest Advances and New Challenges Modeling and Solving the Capacitated Vehicle Routing Problem on Trees Bala Chandran 1 and S. Raghavan 2 1 Department of Industrial Engineering

More information

Load balancing in a heterogeneous computer system by self-organizing Kohonen network

Load balancing in a heterogeneous computer system by self-organizing Kohonen network Bull. Nov. Comp. Center, Comp. Science, 25 (2006), 69 74 c 2006 NCC Publisher Load balancing in a heterogeneous computer system by self-organizing Kohonen network Mikhail S. Tarkov, Yakov S. Bezrukov Abstract.

More information

A Game Theoretic Formulation of the Service Provisioning Problem in Cloud Systems

A Game Theoretic Formulation of the Service Provisioning Problem in Cloud Systems A Game Theoretic Formulation of the Service Provisioning Problem in Cloud Systems Danilo Ardagna 1, Barbara Panicucci 1, Mauro Passacantando 2 1 Politecnico di Milano,, Italy 2 Università di Pisa, Dipartimento

More information

Cost Effective Automated Scaling of Web Applications for Multi Cloud Services

Cost Effective Automated Scaling of Web Applications for Multi Cloud Services Cost Effective Automated Scaling of Web Applications for Multi Cloud Services SANTHOSH.A 1, D.VINOTHA 2, BOOPATHY.P 3 1,2,3 Computer Science and Engineering PRIST University India Abstract - Resource allocation

More information

Towards an understanding of oversubscription in cloud

Towards an understanding of oversubscription in cloud IBM Research Towards an understanding of oversubscription in cloud Salman A. Baset, Long Wang, Chunqiang Tang [email protected] IBM T. J. Watson Research Center Hawthorne, NY Outline Oversubscription

More information

Load Balancing Mechanisms in Data Center Networks

Load Balancing Mechanisms in Data Center Networks Load Balancing Mechanisms in Data Center Networks Santosh Mahapatra Xin Yuan Department of Computer Science, Florida State University, Tallahassee, FL 33 {mahapatr,xyuan}@cs.fsu.edu Abstract We consider

More information

Cloud Monitoring Framework

Cloud Monitoring Framework Cloud Monitoring Framework Hitesh Khandelwal, Ramana Rao Kompella, Rama Ramasubramanian Email: {hitesh, kompella}@cs.purdue.edu, [email protected] December 8, 2010 1 Introduction With the increasing popularity

More information

each college c i C has a capacity q i - the maximum number of students it will admit

each college c i C has a capacity q i - the maximum number of students it will admit n colleges in a set C, m applicants in a set A, where m is much larger than n. each college c i C has a capacity q i - the maximum number of students it will admit each college c i has a strict order i

More information

Managing Network Reservation for Tenants in Oversubscribed Clouds

Managing Network Reservation for Tenants in Oversubscribed Clouds 213 IEEE 21st International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems Managing Network Reservation for Tenants in Oversubscribed Clouds Mayank Mishra IIT Bombay,

More information

Strategic planning in LTL logistics increasing the capacity utilization of trucks

Strategic planning in LTL logistics increasing the capacity utilization of trucks Strategic planning in LTL logistics increasing the capacity utilization of trucks J. Fabian Meier 1,2 Institute of Transport Logistics TU Dortmund, Germany Uwe Clausen 3 Fraunhofer Institute for Material

More information

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM 1 THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM Prof. Tiziana Calamoneri Network Algorithms A.y. 2014/15 2 THE PROBLEM WORMS (1)! A computer worm is a standalone malware

More information

Data Caching in Networks with Reading, Writing and Storage Costs

Data Caching in Networks with Reading, Writing and Storage Costs Data Caching in Networks with Reading, 1 Writing and Storage Costs Himanshu Gupta Computer Science Department Stony Brook University Stony Brook, NY 11790 Email: [email protected] Bin Tang Computer

More information

School Timetabling in Theory and Practice

School Timetabling in Theory and Practice School Timetabling in Theory and Practice Irving van Heuven van Staereling VU University, Amsterdam Faculty of Sciences December 24, 2012 Preface At almost every secondary school and university, some

More information

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach MASTER S THESIS Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach PAULINE ALDENVIK MIRJAM SCHIERSCHER Department of Mathematical

More information

Virtualization and SDN Applications

Virtualization and SDN Applications Virtualization and SDN lications 2 Virtualization Sharing physical hardware or software resources by multiple users and/or use cases Examples system shares physical hardware resources Virtual machine shares

More information

COST MINIMIZATION OF RUNNING MAPREDUCE ACROSS GEOGRAPHICALLY DISTRIBUTED DATA CENTERS

COST MINIMIZATION OF RUNNING MAPREDUCE ACROSS GEOGRAPHICALLY DISTRIBUTED DATA CENTERS COST MINIMIZATION OF RUNNING MAPREDUCE ACROSS GEOGRAPHICALLY DISTRIBUTED DATA CENTERS Ms. T. Cowsalya PG Scholar, SVS College of Engineering, Coimbatore, Tamilnadu, India Dr. S. Senthamarai Kannan Assistant

More information

System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1

System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1 System Interconnect Architectures CSCI 8150 Advanced Computer Architecture Hwang, Chapter 2 Program and Network Properties 2.4 System Interconnect Architectures Direct networks for static connections Indirect

More information

Amazon EC2 XenApp Scalability Analysis

Amazon EC2 XenApp Scalability Analysis WHITE PAPER Citrix XenApp Amazon EC2 XenApp Scalability Analysis www.citrix.com Table of Contents Introduction...3 Results Summary...3 Detailed Results...4 Methods of Determining Results...4 Amazon EC2

More information

IPOP-TinCan: User-defined IP-over-P2P Virtual Private Networks

IPOP-TinCan: User-defined IP-over-P2P Virtual Private Networks IPOP-TinCan: User-defined IP-over-P2P Virtual Private Networks Renato Figueiredo Advanced Computing and Information Systems Lab University of Florida ipop-project.org Unit 3: Intra-cloud Virtual Networks

More information

Surviving Failures in Bandwidth-Constrained Datacenters

Surviving Failures in Bandwidth-Constrained Datacenters Surviving Failures in Bandwidth-Constrained Datacenters Peter Bodík Microsoft Research [email protected] Pradeepkumar Mani Microsoft [email protected] Ishai Menache Microsoft Research [email protected]

More information

Network Aware Resource Allocation in Distributed Clouds

Network Aware Resource Allocation in Distributed Clouds 2012 Proceedings IEEE INFOCOM Network Aware Resource Allocation in Distributed Clouds Mansoor Alicherry Bell Labs India, Alcatel-Lucent Bangalore, India T.V. Lakshman Bell Labs, Alcatel-Lucent New Jersey,

More information

Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure

Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure August 2015 Table of Contents 1 Introduction... 3 Purpose... 3 Products... 3

More information

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS Matt Eclavea ([email protected]) Senior Solutions Architect, Brocade Communications Inc. Jim Allen ([email protected]) Senior Architect, Limelight

More information

Cloud Management: Knowing is Half The Battle

Cloud Management: Knowing is Half The Battle Cloud Management: Knowing is Half The Battle Raouf BOUTABA David R. Cheriton School of Computer Science University of Waterloo Joint work with Qi Zhang, Faten Zhani (University of Waterloo) and Joseph

More information

Falloc: Fair Network Bandwidth Allocation in IaaS Datacenters via a Bargaining Game Approach

Falloc: Fair Network Bandwidth Allocation in IaaS Datacenters via a Bargaining Game Approach Falloc: Fair Network Bandwidth Allocation in IaaS Datacenters via a Bargaining Game Approach Fangming Liu 1,2 In collaboration with Jian Guo 1,2, Haowen Tang 1,2, Yingnan Lian 1,2, Hai Jin 2 and John C.S.

More information

Monitis Project Proposals for AUA. September 2014, Yerevan, Armenia

Monitis Project Proposals for AUA. September 2014, Yerevan, Armenia Monitis Project Proposals for AUA September 2014, Yerevan, Armenia Distributed Log Collecting and Analysing Platform Project Specifications Category: Big Data and NoSQL Software Requirements: Apache Hadoop

More information

2004 Networks UK Publishers. Reprinted with permission.

2004 Networks UK Publishers. Reprinted with permission. Riikka Susitaival and Samuli Aalto. Adaptive load balancing with OSPF. In Proceedings of the Second International Working Conference on Performance Modelling and Evaluation of Heterogeneous Networks (HET

More information

WORKFLOW ENGINE FOR CLOUDS

WORKFLOW ENGINE FOR CLOUDS WORKFLOW ENGINE FOR CLOUDS By SURAJ PANDEY, DILEBAN KARUNAMOORTHY, and RAJKUMAR BUYYA Prepared by: Dr. Faramarz Safi Islamic Azad University, Najafabad Branch, Esfahan, Iran. Workflow Engine for clouds

More information

Cloud Computing project Report

Cloud Computing project Report Name: Trasily Krishnan Shanmugham Cloud Computing project Report An online business can use load balancing and auto-scaling to support unexpected usage peaks and save money when usage is lower. Amazon

More information

OpenFlow/SDN for IaaS Providers

OpenFlow/SDN for IaaS Providers OpenFlow/SDN for IaaS Providers Open Networking Summit 2011 Stanford University Paul Lappas & Ivan Batanov The Public Cloud Our Definition Shared infrastructure operated by a service provider where no

More information

Assignment # 1 (Cloud Computing Security)

Assignment # 1 (Cloud Computing Security) Assignment # 1 (Cloud Computing Security) Group Members: Abdullah Abid Zeeshan Qaiser M. Umar Hayat Table of Contents Windows Azure Introduction... 4 Windows Azure Services... 4 1. Compute... 4 a) Virtual

More information

Building a SQL Server Test Lab. Ted Krueger SQL Server MVP Data Architect

Building a SQL Server Test Lab. Ted Krueger SQL Server MVP Data Architect Building a SQL Server Test Lab Ted Krueger SQL Server MVP Data Architect What makes a full SQL Server Lab Useful An installation nightmare on one system Error prone shared features and files Multiple versions,

More information

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION Sérgio Pequito, Stephen Kruzick, Soummya Kar, José M. F. Moura, A. Pedro Aguiar Department of Electrical and Computer Engineering

More information