27
DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li, Cheng-Yen Lee, and Mung Chiang

DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Embed Size (px)

Citation preview

Page 1: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

DaVinci:

Dynamically Adaptive Virtual Networks for a Customized Internet

Jennifer RexfordPrinceton University

With Jiayue He, Rui Zhang-Shen, Ying Li, Cheng-Yen Lee, and Mung Chiang

Page 2: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Serving Diverse Applications

One network does not fit all Throughput-sensitive applications

Prefer high-bandwidth paths Keep queues occupied

Delay-sensitive applications Prefer low-propagation delay paths Keep queues small

An ISP can run multiple virtual networks Customized routing and congestion control Each VN maximizes its own notion of utility

2

Page 3: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Motivation for Separate Queues and Routing

Two traffic classes: Delay-sensitive traffic (DST): fixed demand Throughput-sensitive traffic (TST): elastic

3

21

Single queue TST can fill up both

links DST may not be

satisfied

Shared routing DST chooses shorter

path Bandwidth wasted

5ms, 100 Mbps

10ms, 1000 Mbps

Page 4: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

4

Running Multiple Virtual Networks

Multiple virtual networks share substrate node/link resources

Substrate network

Virtual Network 1

Virtual Network 2

Page 5: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

ISP’s Problem

How to allocate resources to maximize the aggregate performance of multiple applications with diverse requirements?

5

Page 6: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

How to Allocate Bandwidth?

Static partitioning Simple, but can be inefficient One virtual network could be congested

while another is idle

Dynamic partitioning based on demand

Can be unstable

Customization may result in worse performance

6

Page 7: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Desired Properties of the Solution

System is stable Aggregate utility of all VNs is maximized Each VN independently runs distributed

protocols to maximize its utility The substrate links use simple local rules

to adapt bandwidth allocation

7

DaVinci: a resource allocation scheme derived using optimization theory

Page 8: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Optimization Decomposition

Many network problems can be formulated as utility maximization problems E.g., TCP:

Optimization decomposition: technique for deriving a distributed protocol Links calculate prices s (penalty for violating

bandwidth constraint): packet loss or delay Sources update rates x given prices: AIMD

8

maximize U(x) = ∑i

ui(xi)subject to Rx ≤ C

happiness of user i, a function of flow rate

routing matrix

link bandwidths

Page 9: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

The Master Optimization Problem: Maximizing aggregate utility

Objective: maximize weighted sum of utilities E.g., w1U1(x1,y1) + w2U2(x2,y2) The weights reflect tradeoff between the

VNs

Constraint: allocated bandwidth to the VNs cannot exceed link bandwidth E.g., yl

1 + yl2 · Cl , for all l

9

1

3

2

Page 10: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Primal Decomposition

10

maximize w1U1(x1,y1) + w2U2(x2,y2) subject to y1 + y2 · Cvariables x, y ¸ 0

maximizeU1(x1,y1)subject toR1x1 · y1

variables x1 ¸ 0

maximizeU2(x2,y2)subject toR2x2 · y2

variables x2 ¸ 0Bandwidth C reallocated between y1 and y2

periodically based on congestion prices of VNs

Page 11: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

DaVinci Framework

11

Each virtual network runs customized traffic management to optimize convex objectiveEach virtual link calculates congestion price

Each substrate linkenforces isolationwith traffic shapers

Sources update rates

Periodically reallocates bandwidth

Page 12: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Theorem (Stability and Optimality)

Bandwidth allocation algorithm together with per virtual network problem maximizes aggregate performance if

The master problem is convex Bandwidth adjustment stepsize

diminishes The bandwidth shares are updated when

each VN has converge

Proof technique: primal decomposition and gradient update

Page 13: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Per Class: Distributed Multipath Protocol

Edge node: Update path rates zSplit traffic over paths

Routers: Set up multiple pathsMeasure link loadUpdate link prices

Equations for link prices and path rates derived using optimization decomposition.

Derived for delay-sensitive and throughput-sensitive traffic

Page 14: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

14

i source-destination pair, j path number

Example: Throughput-sensitive Traffic

max.∑i Ui(∑j zji)

s.t. link load ≤ yl

var. path rates zz1

1

z21

z31

Path rate z captures source rate and routing

Page 15: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Per Link: Adaptive Traffic Shaping

15

Bandwidth shares

computationlink load

yl(1)

yl(2)

yl(N)

Congestion price

computation

sl(1)

Use optimization to determine the computations

Performance

objective

Page 16: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Performance Evaluation

16

Two traffic classes: Delay-sensitive traffic (DST):

Fixed demand Minimize average delay

Throughput-sensitive traffic (TST): Elastic Maximize user aggregate utility without

causing congestion

Bandwidth allocation update After both VNs converge

Page 17: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

17

Delay-Sensitive Traffic on Long Link

DST does not use all the allocated bandwidth

21

5ms, 100 Mbps

10ms, 1000 Mbps

Demand = 110 Mbps

Allocated bandwidth

Traffic rate

Optimal allocation

Page 18: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

18

Changing Demand

Abilene topology

DST: 100 Mbps ! 200 Mbps ! 50 Mbps

DaVinci reacts quickly to changing demand and topology

Bandwidth allocated to DST

DST traffic rate

Page 19: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Related Work

QoS (Intserv, DiffServ, etc.) Provides separate resources for each traffic class DaVinci provides separate protocols and dynamic

resource allocation

Overlays Provide customized protocols for each traffic class Lack visibility and control of network conditions DaVinci provides dedicated resources

Network virtualization (VPN, VINI, etc.) Uses static resource allocation, adjusted manually DaVinci adjusts resource allocation according to

demand

19

Page 20: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

20

Adaptive network virtualization is key for supporting multiple traffic classes

The DaVinci architecture Derived from optimization theory—stable, efficient Each VN runs customized protocols Resource allocation based on local link information

Future directions What if a VN’s utility function is not convex? Economic incentives for selfish VNs to cooperate?

Conclusion and Future Work

Page 21: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

For More Information

Throughput-sensitive protocol http://www.cs.princeton.edu/~jrex/paper

s/conext07.pdf

Delay-sensitive protocol http://www.cs.princeton.edu/~jrex/paper

s/comsnets09.pdf

DaVinci http://

www.cs.princeton.edu/~jrex/papers/davinci.pdf

Page 22: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

The End

Thank you!

22

Page 23: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Delay-sensitive Traffic Minimizes Delay

23

min.∑lijHljizj

i(pl+f(ul))s.t. ul =(Hz)l/cl

∑i zji ≥ xi

D

var. zLink Utilization ul

Costf(ul)

Propagation delayLinks are indexed by l

ul =1

Cost function represents penalty for long queues

Traffic demand

Page 24: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

24

i source-destination pair, j path number

Throughput-sensitive Traffic

max.∑i Ui(∑j zji)

s.t. link load ≤ yl

var. path rates zz1

1

z21

z31

Path rate z captures source rate and routing

Page 25: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

Substrate link updates bandwidth allocation

Calculates the marginal utility of each VN Based on congestion price and utility

function

Increase bandwidth allocation to each VN proportional to weight, marginal utility, and stepsize

Project onto feasible region

25

Feasible allocations

v

Page 26: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

The Master Problem:Updating bandwidth allocation for link l

Calculates λl(k), the marginal utility

gain for more bandwidth Based on sl

(k) and utility function U(k)()

Increase bandwidth allocation

Projection onto feasible region:

26

vl(k)(t+1) = [yl

(k)(t) + ®y w(k)

λl(k)]+

∑k yl(k)

≤ cl

v

Page 27: DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,

27

Sensitivity to Stepsize

Abilene topology

Constant stepsize should be chosen carefully