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 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 Running Multiple Virtual Networks Substrate network Virtual Network 1 Virtual Network 2 3 Multiple virtual networks share substrate node/link resources ISP’s Problem How to allocate resources to maximize the aggregate performance of multiple applications with diverse requirements? 4 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 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 DaVinci: a resource allocation scheme derived using optimization theory 6 Optimization Decomposition Many network problems can be formulated as utility maximization problems E.g., TCP: maximize U(x) = ∑i ui(xi) subject to Rx ≤ C Optimization decomposition: technique for derivingrouting a distributed happiness of user i, a matrix protocol Links calculate prices s (penalty for violating function of flow rate bandwidth constraint): packet loss or delay link bandwidths Sources update rates x given prices: AIMD 7 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., yl1 + yl2 · Cl , for all l 3 1 2 8 Primal Decomposition maximize w1U1(x1,y1) + w2U2(x2,y2) subject to y1 + y2 · C variables x, y ¸ 0 maximize U1(x1,y1) subject to R1x1 · y1 variables x1 ¸ 0 maximize U2(x2,y2) subject to R2x2 · y2 variables x2 ¸ 0 Bandwidth C reallocated between y1 and y2 periodically based on congestion prices of VNs 9 DaVinci Framework Each virtual network runs customized traffic management to optimize convex objective Each substrate link enforces isolation with traffic shapers Each virtual link calculates congestion price Periodically reallocates bandwidth Sources update rates 10 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 Performance Evaluation 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 12 Delay-Sensitive Traffic on Long Link 5ms, 100 Mbps 1 2 Allocated bandwidth Optimal allocation Traffic rate 10ms, 1000 Mbps Demand = 110 Mbps DST does not use all the allocated bandwidth 13 Changing Demand Bandwidth allocated to DST Abilene topology DST traffic rate DST: 100 Mbps ! 200 Mbps ! 50 Mbps 14 DaVinci reacts quickly to changing demand and topology 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 Conclusion and Future Work 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? 16 The End Thank you! 17 Motivation for Separate Queues and Routing Two traffic classes: Delay-sensitive traffic (DST): fixed demand Throughput-sensitive traffic (TST): elastic 5ms, 100 Mbps 1 2 Single queue TST can fill up both links DST may not be satisfied Shared routing 10ms, 1000 Mbps DST chooses shorter path Bandwidth wasted 18 Motivation for Resource Isolation Flow A given extra bandwidth Network A congested Flow B Flow A Bandwidth taken from Network B 19 DaVinci: Substrate Link (1) Congestion price sl computation Bandwidth shares computation link load Performance objective yl(1) yl(2) yl(N) Use optimization to determine the computations 20 Delay-sensitive Traffic Minimizes Delay Links are indexed by l Cost f(ul) ul =1 Link Utilization ul Propagation delay min.∑lijHljizji(pl+f(ul)) s.t. ul =(Hz)l/cl ∑i zji ≥ xiD var. z Traffic demand Cost function represents penalty for long queues 21 Throughput-sensitive Traffic Path rate z captures source rate and routing max. ∑i Ui(∑j zji) – q∑l h(ul) s.t. link load ≤ cl var. path rates z i source-destination pair, j path number z11 z21 z31 22 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 v Feasible allocations 23 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 vl(k)(t+1) = [yl(k)(t) + ®y w(k) λl(k)]+ Projection onto feasible region: v ∑k yl(k) ≤ cl 24 Sensitivity to Stepsize Abilene topology Constant stepsize should be chosen carefully 25
© Copyright 2026 Paperzz