Download presentation
Presentation is loading. Please wait.
Published byDorcas Patterson Modified over 9 years ago
1
DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jiayue He, Rui Zhang-Shen, Ying Li, Cheng-Yen Lee, Jennifer Rexford, and Mung Chiang Princeton University
2
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
3
3 Running Multiple Virtual Networks Multiple virtual networks share substrate node/link resources Substrate network Virtual Network 1 Virtual Network 2
4
ISP’s Problem How to allocate resources to maximize the aggregate performance of multiple applications with diverse requirements? 4
5
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 5
6
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 6 DaVinci: a resource allocation scheme derived using optimization theory
7
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 7 maximize U ( x ) = ∑ i u i ( x i ) subject to Rx ≤ C happiness of user i, a function of flow rate routing matrix link bandwidths
8
The Master Optimization Problem: Maximizing aggregate utility Objective: maximize weighted sum of utilities E.g., w 1 U 1 ( x 1,y 1 ) + w 2 U 2 ( x 2,y 2 ) The weights reflect tradeoff between the VNs Constraint: allocated bandwidth to the VNs cannot exceed link bandwidth E.g., y l 1 + y l 2 · C l, for all l 8 1 3 2
9
Primal Decomposition 9 maximize w 1 U 1 ( x 1,y 1 ) + w 2 U 2 ( x 2,y 2 ) subject to y 1 + y 2 · C variables x, y ¸ 0 maximize U 1 ( x 1,y 1 ) subject to R 1 x 1 · y 1 variables x 1 ¸ 0 maximize U 2 ( x 2,y 2 ) subject to R 2 x 2 · y 2 variables x 2 ¸ 0 Bandwidth C reallocated between y 1 and y 2 periodically based on congestion prices of VNs
10
DaVinci Framework 10 Each virtual network runs customized traffic management to optimize convex objective Each virtual link calculates congestion price Each substrate link enforces isolation with traffic shapers Sources update rates Periodically reallocates bandwidth
11
Theorem (Stability and Optimality) The 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 converged Proof technique: primal decomposition and gradient update
12
Performance Evaluation 12 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 updated after both VNs converge
13
13 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
14
14 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
15
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 15
16
16 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
17
The End Thank you! 17
18
Motivation for Separate Queues and Routing Two traffic classes: Delay-sensitive traffic (DST): fixed demand Throughput-sensitive traffic (TST): elastic 18 2 1 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
19
Motivation for Resource Isolation 19 Flow A Flow B Flow A given extra bandwidth Network A congested Bandwidth taken from Network B
20
DaVinci: Substrate Link 20 Bandwidth shares computation link load y l (1) y l (2) y l (N) Congestion price computation s l (1) Use optimization to determine the computations Performance objective
21
Delay-sensitive Traffic Minimizes Delay 21 min.∑ lij H lj i z j i ( p l + f ( u l )) s.t. u l =( Hz ) l /c l ∑ i z j i ≥ x i D var. z Link Utilization u l Cost f ( u l ) Propagation delay Links are indexed by l u l =1 Cost function represents penalty for long queues Traffic demand
22
22 i source-destination pair, j path number Throughput-sensitive Traffic max.∑ i U i (∑ j z j i ) – q ∑ l h ( u l ) s.t. link load ≤ c l var. path rates z z11z11 z21z21 z31z31 Path rate z captures source rate and routing
23
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 23 Feasible allocations v
24
The Master Problem: Updating bandwidth allocation for link l Calculates λ l ( k ), the marginal utility gain for more bandwidth Based on s l ( k ) and utility function U ( k ) () Increase bandwidth allocation Projection onto feasible region: 24 v l ( k ) ( t +1) = [ y l ( k ) ( t ) + ® y w ( k ) λ l ( k ) ] + ∑ k y l ( k ) ≤ c l v
25
25 Sensitivity to Stepsize Abilene topology Constant stepsize should be chosen carefully
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.