Network Slicing: Predictable Performance in Unpredictable Environment? Stefan Schmid (University of Vienna, Austria)
The Promise: Network Slicing • Flexible resource allocation : where and when most useful … • … while providing isolation ! • Often: leveraging virtualization . 1
Workload 2 Workload 1 Computational Quality-of-Service & Storage & Resource Requirements Requirements Realization and Embedding Virtualization and Isolation 2
This Talk: 3 Challenges • Embedding slices resource-efficiently is an open challenge • But perhaps our model is wrong anyway? Practical challenges • Performance isolation is one thing, security another 3
Challenge 1: Embedding • Embedding problems are often NP-hard Hard in many ways: Slice/VNet/Guest – Minimum Linear Arrangement (min sum embedding on a line) – Subgraph isomorphism (cost=1 per virtual link: subgraph) – Endpoints fixed: disjoint paths • Possible solutions: – Exact exponential algorithms, e.g., formulate Mixed Integer Program (MIP) – Polynomial-time approximation algorithms, e.g., randomized rounding 4
Formulating a Fast MIP ? 5
Formulating a Fast MIP • Recall: Mixed Integer Program (MIP) – Linear objective function (e.g., minimize embedding footprint) – Linear constraints (e.g., do not violate capacity constraints) • Solved, e.g., with branch-and-bound search tree Initially: no variables set Usual procedure: subset of variables set all variables set: infeasible, feasible, optimal ? 5
Formulating a Fast MIP • Recall: Mixed Integer Program (MIP) – Linear objective function (e.g., minimize embedding footprint) – Linear constraints (e.g., do not violate capacity constraints) • Solved, e.g., with branch-and-bound search tree Usual procedure: Assume: already explored, subset of variables set Assume: best (still unknown) Assume: best feasible so far! 5
Formulating a Fast MIP • Recall: Mixed Integer Program (MIP) – Linear objective function (e.g., minimize embedding footprint) – Linear constraints (e.g., do not violate capacity constraints) • Solved, e.g., with branch-and-bound search tree Decide: Is it worth Usual procedure: exploring subtree?! 5
Formulating a Fast MIP • Recall: Mixed Integer Program (MIP) – Linear objective function (e.g., minimize embedding footprint) – Linear constraints (e.g., do not violate capacity constraints) • Solved, e.g., with branch-and-bound search tree Usual trick: Relax! Solve LP (fast!), and if relaxed solution (more general!) not better then best Usual procedure: solution so far: skip it! 5
Formulating a Fast MIP • Recall: Mixed Integer Program (MIP) – Linear objective function (e.g., minimize embedding footprint) – Linear constraints (e.g., do not violate capacity constraints) • Solved, e.g., with branch-and-bound search tree Usual trick: Relax! Solve LP (fast!), and if relaxed solution (more general!) not better then best Usual procedure: solution so far: skip it! Bottomline: If MIP provides «good relaxations», large parts of the search space can be pruned. 5
MIP: A Formulation • „ Usual MIP“ v – Binary variables map(v,s) to map virtual node v to s substrate node s – Introduce flow variables for paths – Ensure flow conservation : all flow entering a node must leave the node, unless source or destination Σ u->v f uv = Σ v->w f vw 6 In Out
What will happen in this case? s 1 v 1 embedding? v 2 s 2 7
What will happen in this case? map(v 1 , s 1 )=.5 s 1 v 1 v 2 s 2 map(v 2 , s 2 )=.5 7
What will happen in this case? flow = 0 map(v 1 , s 1 )=.5 v 1 v 1 v 2 flow = 0 v 1 v 2 v 2 map(v 2 , s 2 )=.5 Minimal flow = 0: fulfills flow conservation but relaxation useless! 7 Does not provide any lower bound or indication of good mapping!
What will happen in this case? flow = 0 map(v 1 , s 1 )=.5 v 1 v 1 v 2 The MIP formulation matters! flow = 0 v 1 v 2 v 2 map(v 2 , s 2 )=.5 Minimal flow = 0: fulfills flow conservation but relaxation useless! 7 Does not provide any lower bound or indication of good mapping!
Another Approach: Approximation • MIPs take super-polynomial time in worst case • Alternative: polynomial-time approximation • E.g., randomized rounding: – Formulate MIP resp. ILP – Compute relaxation: relaxed solutions are linear combinations of elementary solutions – Probabilistically choose any of the elementary solutions based on their weights 8
Idea: Approx Using MCF Formulation For example, VNEP based on standard Multi- Commodity Flow (MCF) formulation 9
Randomized Rounding Can Fail • Good news: works on line and tree requests – E.g., approximate service chain embeddings – Apply Raghavan and Thompson • Bad news: for requests which are not acyclic, the integrality gap can be infinite and the problem not decomposable – LP solutions to classic MCF formulation can no longer be decomposed into convex combinations of valid mappings 10
Randomized Rounding Can Fail Host u 1 VNet/Slice u 6 u 2 i embedding? k j u 5 u 3 u 4 11
Randomized Rounding Can Fail Valid LP solution: virtual node mappings sum to 1 and each virtual node connects to its neighboring node with half a unit of flow … u 1 u 1 .5i LP Solution u 6 u 2 u 6 u 2 .5k .5j i k j u 5 u 3 u 5 u 3 .5j .5k u 4 u 4 .5i Relaxations of classic MCF formulation cannot be decomposed into convex combinations of valid mappings (so we need different formulations !) 12
Randomized Rounding Can Fail Impossible to decompose and extract any single valid mapping . Intuition: Node i is mapped to u 1 and the only neighboring node that hosts j is u 2 , so i must be fully mapped on u 1 and j on u 2 . Similarly, k must be mapped on u 3 . But flow of virtual edge (k,i) leaving u 3 only leads to u 4 , so i must be mapped on both u 1 and u 4 . This is impossible . Partial u 1 u 1 .5i u 1 .5i Decomposition LP Solution u 6 u 2 u 6 u 2 .5k .5j u 2 .5j i k j u 5 u 3 u 5 u 3 .5j .5k u 3 .5k u 4 u 4 .5i u 4 .5i Relaxations of classic MCF formulation cannot be decomposed into convex combinations of valid mappings (so we need different formulations !) 12
Randomized Rounding Can Fail Challenge: How to devise a Linear Programming formulations, such Partial u 1 u 1 .5i u 1 .5i that convex combinations of valid mappings can be recovered? Decomposition LP Solution u 6 u 2 u 6 u 2 .5k .5j u 2 Solution for cactus graphs: first compute acyclic orientations such .5j i that per cycle at most one node has more than one incoming edge („ anchor “). Then make multiple MIPs (based on MCF formulation), k j u 5 u 3 u 5 u 3 .5j .5k u 3 one for each cycle component. .5k u 4 u 4 .5i u 4 .5i Relaxations of classic MCF formulation cannot be decomposed into convex combinations of valid mappings (so we need different formulations !) 12
Challenge 2: Model How good are your models anyway?! • Predictable performance is about more than just bandwidth reservation vSDN-1 vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 An Experiment: 2 vSDNs with bw guarantee! 13
Models Must Be More Complex vSDN-1 vSDN-2 To enable multi-tenancy, controller controller need network hypervisor: provides network abstraction and control plane translation! SDN Network Hypervisor vSDN-1 vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 An Experiment: 2 vSDNs with bw guarantee! 13
Models Must Be More Complex vSDN-1 vSDN-2 controller controller 4 flow-mod 3 packet-in Intercepts control 5 packet-out plane messages. 2 translate SDN Network Hypervisor 6 translate packet-in 7 flow-mod 7 flow-mod 7 flow-mod 1 packet-in vSDN-1 8 packet-out vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 An Experiment: 2 vSDNs with bw guarantee! 13
Models Must Be More Complex Translation Translation vSDN-1 vSDN-2 could include, could include, controller controller e.g., switch e.g., switch DPID, port DPID, port 4 flow-mod 3 packet-in numbers , … numbers , … 5 packet-out 2 translate SDN Network Hypervisor 6 translate packet-in 7 flow-mod 7 flow-mod 7 flow-mod 1 packet-in vSDN-1 8 packet-out vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 An Experiment: 2 vSDNs with bw guarantee! 13
Models Must Be More Complex vSDN-1 vSDN-2 controller controller 4 flow-mod 3 packet-in 5 packet-out The network hypervisor can be source 2 translate SDN Network Hypervisor of unpredictable performance! 6 translate packet-in 7 flow-mod 7 flow-mod 7 flow-mod 1 packet-in vSDN-1 8 packet-out vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 An Experiment: 2 vSDNs with bw guarantee! 13
Models Must Be More Complex vSDN-1 vSDN-2 controller controller 4 flow-mod 3 packet-in 5 packet-out Experiment: web latency depends 2 translate SDN Network Hypervisor 6 translate on hypervisor CPU load ! packet-in 7 flow-mod 7 flow-mod 7 flow-mod 1 packet-in vSDN-1 8 packet-out vSDN-1 vSDN-1 vSDN-2 vSDN-2 vSDN-2 13
Need to Know Your Network Hypervisor … number of tenants … Performance also depends on hypervisor type… (multithreaded or not, which version of Nagle’s algorithm, etc.) 14
Challenge 3: Security • Performance isolation between slices is essential for providing a predictable performance • Can be achieved using virtualization • However, isolation between slices is also crucial for security 15
Recommend
More recommend