A Closed-loop Scheme for Expected Minimum Rate (QoS) Service I E Logical FIFO B I E E I David Harrison, Yong Xia, Shiv Kalyanaraman, Arvind Venkatesan Rensselaer Polytechnic Institute [email protected] http://www.ecse.rpi.edu/Homepages/shivkuma Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Acknowledgement: Students David Harrison (PhD: graduated) Yong Xia (PhD) Arvind Venkatesh (MS) Rahul Sachdev (MS) Kishore Ramachandran (MS) Sthanunathan Ramakrishnan (MS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 2 Overview of Talk QoS can be viewed as a congestion control problem and therefore, QoS can be posed in Kelly’s optimization framework Challenges: 1. What about the non-concavity of QoS utility functions? 2. Can we do away with admission control ? Ans: 1. Define & Solve an Auxiliary Optimization Problem 2. Alternative Convex Constraints in Lagrange Domain can avoid need for admission control, allowing graceful service degradation Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3 Big Picture: Overlay Network Services Lightweight network svcs (eg: QoS, multi-paths) can dramatically enhance application-perceived performance Overlay => such services in a multi-provider environment, or Reduced complexity of network services in a single provider (eg: edge-based distributed parameter provisioning, no admission control) Network (core) (core) ISP 2 edge (edge) ISP 3 ISP 1 Rensselaer Polytechnic Institute End-to-end Apps 4 Shivkumar Kalyanaraman Traditional QoS Model: Control/Data Planes Control Plane: Signaling + Admission Control or SLA (Contracting) + Provisioning/Traffic Engineering Router Workstation Router Internetwork or WAN Router Workstation Data Plane: Traffic conditioning (shaping, policing, marking etc) + Traffic Classification + Scheduling, Buffer management Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5 What is Closed-loop QoS? (Qualitatively) FIFO Priority/WFQ B B Scheduler: differentiates service on a packet-by-packet basis Loops: differentiate service on an RTT-by-RTT basis using edge-based policy configuration. Differentiation/Isolation meaningful in steady state only… Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6 Expected Min Rate (EMR) Service: Sample Steady State Behavior Flow 1 with 4 Mbps assured + 3 Mbps best effort Flow 2 with 3 Mbps best effort Note: Old simulation: newer work has much shorter transients Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7 Architectural Advantages of Closed Loops Traffic management consolidated at edges (placement of functions in line with E2E principle) Bottleneck queue Edge system End system Architectural Potential: Edge-based (distributed) QoS services, Edge plays in application-level QoS Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8 Diff-Serv vs Closed-loop QoS E T E C C E T … T Drop Preference C E E vs Closed Loop Control E C T U … … T E C E C E E Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9 Outline… QoS can be viewed as a congestion control problem and therefore, QoS can be posed in Kelly’s optimization framework Challenges: 1. What about the non-concavity of QoS utility functions? 2. Can we do away with admission control ? Our goal: expected minimum rate service that gracefully degrades into a weighted proportional fair service Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 10 Kelly’s Optimization Formulation weight Network N optimizes Maximize w log( x ) s User s’s send rate s subject to capacity constraints User s’s utility function Each user s optimizes Maximize U ( xs ) ws ws can be interpreted Resulting System optimizes as price per unit time or as congestion in Maximize U ( xs ) subject to capacity constraints the network. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 11 Concave User Utility Functions U(xs) = log(xs) utility must be increasing, strictly concave, and continuously differentiable. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 12 Two User Utility Functions Maximize U ( x) U ( y ) log( x) log( y ) optimum Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 13 Issue: QoS => Non-concave User Utility Functions A single user with a minimum rate QoS expectation (gracefully degrading into a weighted service) can be modeled with a non-concave utility function. But this kind of U-function cannot be plugged directly into Kelly’s nonlinear optimization formulation! log(xs) log(xs-0.4) 10log(xs) expected minimum =0.4 Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 14 Luckily, the Sum of Non-Concave U-fns is not what we want to Optimize! U(z) = log(z-0.6) if z > 0.6 (expected minimum rate) 10logz if z <= 0.6 (graceful degradation to weighted svc) Two maxima Desired Allocation (oversubscribed) not any of the 2 maxima! • Can use strictly concave functions and define multiple optimization problems for the same QoS problem & • Dynamically choose a different optimization problem when oversubscribed Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 15 No Over-Subscription Case: Auxiliary Problem Let xip xi xie i.e. flow i: two virtual sub-flows on same path Think of a modified network ~ Cl Cl xie ~ with modified link capacities N Provide proportional fairness on residual network capacity xie N ~ N Rensselaer Polytechnic Institute Capacity, C1 ~ Capacity, Cl 16 Shivkumar Kalyanaraman Handling both under- and over-subscription… • For ai, xi: (primary problem) Weighted fairness Effective when: ai = Ai ql Ql , • For aip, xip: (auxiliary problem) l Exp. Min Rate: Effective when: x iI l ie cl , ql Ql , l l If under-subscribed, solve the aux-problem; and the ai < Ai primary problem is automatically solved (note: aip = constant) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 17 Accumulation-Based Congestion Control Key idea: develop a notion of “accumulation” (ai or aip) as a steering parameter for QoS Why accumulation? Why not just use weighted AIMD? - Loss-based CC fails to provide large range of QoS capabilities - Couples transient dynamics of CC with equilibrium specification - Interacts with TCP reliability mechanisms (eg: timeout) Why not ECN or AQM schemes? - Want to keep AQM support as optional, not mandatory Why not use just Vegas? - Accumulation is an abstract dynamical concept. - Vegas and Monaco attempt to provide estimators for accumulation. - Vegas’ accumulation estimator is not robust Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 18 Why not packet-loss based closed-loops? (Ans: dynamic range of services) Eg: simple weighted fairness QoS service Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 19 Why not TCP Vegas ? (Ans: estimation robustness) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 20 20 Accumulation: Per-flow Backlog in a Series of Routers ingress 1 j j+1 J egress dj fi Λi μi Λi,j+1 j Assuming: ij (t d j ) i , j 1 (t ) Define accumulation: μi i, 1 j J 1 J J 1 j 1 k j ai (t ) qij (t d k ) which is a time-shifted, distributed sum of buffered bits of flow i at all routers 1 through J Note: accumulation is an abstract dynamical concept. Vegas and Monaco attempt to provide estimators for accumulation. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 21 Accumulation: Definition & Physical Meaning 1 j j+1 J dj fi μi Λ Λi,j+ j i … qi1 (t d i f ) μi 1 … J 1 qij (t d k ) k j di I i (t d i f , t ) dj f d J 1 qiJ (t ) ai (t ) t 1 time j Oi (t , t ) ai (t t ) j+1 J J 1 j 1 k j J 22 ai (t ) qij (t d k ) Rensselaer Polytechnic Institute 22 Shivkumar Kalyanaraman Accumulation vs Queuing queue qij(t) -- num of bits of flow i queued in a fifo router j qij (t ) qij (t , t ) I ij (t , t ) Oij (t , t ) accumulation ai(t) -- num of bits of flow i queued in a set of fifo routers 1~J J J 1 j 1 k j ai (t ) qij (t d k ) ai (t , t ) I i (t d i f , t ) Oi (t , t ) d i f is the forward direction propagation delay. the collective queuing behavior of a series of fifo routers looks similar to that of one single fifo router (note the time shift: dif ) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 23 Accumulation-based Control Policy 1 j j+1 J dj fi μi Λi Λi,j+1 j μi control objective : keep ai (t ) a*i 0 if goal ai (t ) 0 , no way to probe increase of available b/w; control algorithm : if ai (t ) a *i then i if ai (t ) a *i then i recall : ai (t , t ) [i (t d i f , t ) i (t , t )] t Example control algorithm : wi (t ) k f (ai (t ) ai* ) where f , only f (0) 0, k 0 Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 24 Monaco: Robust Accumulation Estimation 1 j j+1 J dj fi μi Λi Λi,j+1 j … qi1 (t d i ) f μi … J 1 qij (t d k ) k j dj qiJ (t ) J 1 tq (i, j, t d k ) out-of-band qm ai (t ) k j time 1 d J 1 j j+1 inband J ctrl pkt Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 25 Monaco Accumulation Estimator 1 jf fi djf μi Λi Jb jb+1 jf+1 Λi,j+1 j Interior routers provide two priority fifo queues : 1) high priority queue for out-ofband control packet 2) low priority queue for in-band control packet and data packet Can be done w/ IP precedence on existing routers in Internet!! Jf djb μi jb 1 data ctrl ctrl out-of-bd ctrl classifier fifo in-band ctrl, data pkt Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 26 ACC: Fairness & Linux Implementation Results Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 27 Accumulation as a Steering Parameter for QoS Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 28 Compare to Non-Linear Optimization 1.ACC schemes solve nonlinear optim. problem with Ui(xi) = ai lnxi 2. ai = pl (the lagrange multiplier!) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 29 Summary: Key Notion = “Accumulation” Accumulation-based congestion control (ACC) is a nonlinear optimization, where user i maximizes: Ui(xi) = ai lnxi Accumulation (ai) is the weight (wi) of the weighted prop. fair allocation Accumulation is hence a “steering” parameter: Equilibrium accumulation allocation => Equilibrium rate allocation! Dynamics of CC scheme decoupled from equilibrium spec (unlike AIMD) Accumulation has a physical meaning: sum of buffered bits of the flow in the path Accumulation is related to the lagrange multiplier, I.e., ai = pl For two flows i,k sharing the same path, ai / ak = xi / xk FIFO queues => arrival order decides departure order => buffer occupancy decides rate allocation q1 q2 x1 x2 Rensselaer Polytechnic Institute 30 Shivkumar Kalyanaraman Handling Over-subscription & Admission Control EITHER • (S) No over-subscription: x iI l ie cl , l AND/OR: ql Ql , • (B) Finite Buffer: l • (A) Graceful degradation: Weighted Proportional Fair Accumulation Target: ai Ai , i • (B) & (A) can limit the range of services provided => No need for explicit admission controlShivkumar !! Kalyanaraman Rensselaer Polytechnic Institute 31 Recall: Handling both under- and over-subscription… • For ai, xi: (primary problem) Weighted fairness Effective when: ai = Ai ql Ql , • For aip, xip: (auxiliary problem) l Exp. Min Rate: Effective when: x iI l ie cl , ql Ql , l l If under-subscribed, solve the aux-problem; and the ai < Ai primary problem is automatically solved (note: aip = constant) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 32 Over-subscription: Key Idea • The virtual sub-flows xi, xie, xip are on the same path (same real flow!): xie xip xi , i aie aip ai , i • And, aie aip ai , xie xip xi xie aip const ai aie ai (1 ), xi • ai, xi are measurable, xie = • During over-subscription, ~ x ie i … (I) i … (II) (contracted rate), if under-subscribed ~ xie cl , l iI l • Since aip = constant, eqn (II) implies that ↑xi, ↑ai unboundedly • But ai <= Ai • The auxiliary problem drops out for some flows (eg: bronze flows) and • Their rate is determined by the primary problem (I.e. gracefully degraded to a weighted proportional fair allocation) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 33 EMR Building Block Accumulation ai xi di xi aie xiedi aip ( xi xie )d i xip di xie Accumulation limit Target Control Law wi - max (aip - a , ai - Ai ) * ip Estimated accumulation in virtual network Rensselaer Polytechnic Institute 34 Shivkumar Kalyanaraman Virtual Accumulation (optional AQM) C physical queue vc virtual queue Use virtual queueing delay, vd. vd=vq/vc. (eg: by modifying AVQ) Communicate vd in probe packets (add vds on path). Accumulation = physical + virtual accumulation ai xi (di vdl ) Both AQM and non-AQM nodes in same network. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 35 Single Bottleneck Topology S0 D0 S0-D0 offered an expected minimum rate Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 36 Range of Expected Minimum Rates Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 37 Range of Expected Minimum Rates A=Accumulation Limit A0=3000KB A0=30KB A1..9=3KB weight=10 =30/3 RIO Target(expected+fair) Expected Minimum Rate Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 38 Mean Queue Length for EMR No AQM RIO A=30KB A=3000KB AVQ+VD Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 39 Compared to Diffserv AF (TCP+RIO)… Size of TCP oscillations increases with send rate. Achieving high assurances requires re-parameterizing bottleneck to permit large queues. Marker at ingress marks “out” above this rate. 4/3 target rate TCP’s average rate Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 40 Service Multiplexing Topology 30M 60K 35M 75K 50M 60K 1,0 ~ 1,3 2,0 ~ 2,3 3,0 ~ 3,3 … … … 0,0 web A … 1ms 0,0 … 0,1 0,1 34ms R0 100M R1 100M R2 100M R3 67ms 1-100ms 0,2 1-100ms 0,3 1-100ms … 100ms 10M 15K web B … 500 web A users … … 1,0 ~ 1,3 2,0 ~ 2,3 0,2 … 500 web B users 0,3 3,0 ~ 3,3 2,0 has weight 3 - Bandwidth for all unlabelled links are 1Gbps; Delay 1ms; - AQM+VD at router R1, no AQM at other routers Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 41 Service Multiplexing: Expected Min Rate No oversubscription Loop 02,03 Web Moderate Gross oversubscription <m00=30,Aoversubscription stop sending 00=60KB> Shivkumar Kalyanaraman <m02=50,A02=60KB> Rensselaer Polytechnic Institute <m03=10,A<m 03=15KB> 01=35,A01=75KB> 42 Service Multiplexing: Weighted shares Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 43 Non-AQM Router Queue Length Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 44 AQM+VD Router Queue Length Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 45 In General: Closed-Loop => Better-thanBest-Effort Services A weaker/broader view of QoS: QoS: “Better performance (given fixed routes)”: Described a priori by a set of parameters AND/OR Measured a posteriori by a set of metrics. (extra slides on results if you are interested) QoS spectrum Best Effort Overlay QoS w/ Closed Loop Control, UCB’s OverQoS … Leased Line DPS/CSFQ, Diff-Serv Int-Serv Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 46 Summary: Closed-Loop QoS QoS can be viewed as a congestion control problem and posed in Kelly’s optimization framework Allows distributed admission control, or even services without admission control (distributed parameter choices). Tradeoff: objectives achieved only in steady state Accumulation-based schemes (eg: Monaco) provide a physically meaningful steering parameter (accumulation) relating to queue length Which is also the lagrange multiplier, and Is the weight parameter in weighted proportional fairness allocation Requires an extra priority queue for control pkts (IP precedence) AQM support => virtual accumulation => ~0 queues Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 47 Summary (Contd…) Convex constraints on accumulation, queue length (I.e. in lagrange multiplier domain): assures unique optimum; and leads to graceful degradation of service assurances Current & Future work: Schemes implemented on Linux and tested in Utah Emulab – to be deployed in worldwide PlanetLab… Developing multimedia applications to leverage these lightweight QoS capabilities along with multi-path capabilities in an overlay network Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 48 EXTRA SLIDES Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 49 EMR Algorithm (for reference) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 50 No AQM and EMR Near Full Capacity A=Accumulation Limit A0=3000KB A1..9=3KB Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 51 AVQ+VD+ EMR Near Full Capacity A=Accumulation Limit A0=3000KB A1..9=3KB Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 52 Scalable Best-effort TCP Service Without Overlay Scheme With Overlay Scheme Queue distribution to the edges => can manage more efficiently CoV vs. No of Flows FRED at the core vs. FRED at the edges with overlay control between edges Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 53 Weighted Sharing Proposed many times (MulTCP, TCP-SD, TCP-LASD, IPTrunking, Nonlinear Optimization-based Congestion Control). MulTCP and TCP-SD use loss-based differentiation. MulTCP,TCP-SD loss Wi 2 TCP-LASD loss Wi weights more aggressive in response to loss heavy loss Heavy Timeouts limit range of weights achievable (10-to-1 MulTCP, 100-to-1 TCP-LASD). Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 54 Range of Weighted Services Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 55 (Flow’s Queue Contribution) at One FIFO Router flow i at router j arrival curve Aij(t) & service curve Sij(t) cumulative continuous non-decreasing if no loss, then bit Aij(t) delay Sij(t) b2 b1 queue t1 t2 time qij (t ) Aij (t ) S ij (t ) qij (t t ) Aij (t t ) S ij (t t ) qij (t , t ) qij (t t ) qij (t ) [ Aij (t t ) Aij (t )] [ S ij (t t ) S ij (t )] [ij (t , t ) ij (t , t )] t Rensselaer Polytechnic Institute I ij (t , t ) Oij (t , t ) 56 Shivkumar Kalyanaraman (Accumulation): Series of FIFO Routers ingress 1 j j+1 J egress dj fi μi Λi then Λi,j+1 j μi ai (t , t ) ai (t t ) ai (t ) J J 1 J J 1 j 1 k j j 1 k j qij (t t d k ) qij (t d k ) J J 1 j 1 k j qij (t d k , t ) J J 1 J 1 j 1 k j k j [ij (t d k , t ) ij (t d k , t )] t [i (t d i f , t ) i (t , t )] t I i (t d i f , t ) Oi (t , t ) J 1 where Rensselaer Polytechnic Institute di d j f 57 Shivkumar Kalyanaraman j 1 57
© Copyright 2026 Paperzz