Providing Throughput Differentiation for TCP Flows Using Adaptive Two-Color Marking and Two-Level AQM Presented by Vishal Misra Columbia University in the city of New York Joint work with Y. Chait, C.V. Hollot, Don Towsley, H. Zhang (UMass-Amherst) and John Lui (Chinese University of Hong Kong) •Infocom 2002 Overview • Background and motivation • Fluid-flow model – Two level PI – Adaptive Rate Marker • Simulations • Conclusions •Infocom 2002 Diffserv Architecture: Background End-host: - negotiates a profile with edgerouter Edge router: - per-flow traffic management - marks packets as in-profile and outprofile Core router: - per class traffic management - buffering and scheduling based on marking at edge •Infocom 2002 A,B scheduling marking Leaky-bucket Marking at Edge profile: pre-negotiated rate A, bucket size B packet marking at edge based on per-flow profile Rate A B User packets •Infocom 2002 Assured Forwarding at Core • active queue management – computes average queue length, x – p1: drop prob. of green packet – p2: drop prob. of red packet Drop prob 1 •Infocom 2002 Avg. Queue length TCP over AF Service Profile:A,B marker bottleneck core TCP Other flows • Question: is it possible to provide a TCP flow a fixed (minimum) rate through proper choice of parameters (A,B) • Studied in “Achievable Service Differentiation with Token Bucket marking for TCP” [Sahu et al. Sigmetrics 2000] •Infocom 2002 Ideal Differentiation Not Possible • consider two identical TCP flows (f1, f2) • conventional service – same achieved rate for both flows • assured forwarding – ideally want to have achieved rate, r, proportional to assured rate A, i.e, r1/r2 = A1/A2 • not possible with token parameter setting Profile-based marking favors flows with lower token-bucket rate A •Infocom 2002 Proposed Solution • Make bucket rate adaptive – A -> A(t) • Design controller to set A(t) at the edge • Implement two-level PI at core •Infocom 2002 TCP - Fluid Flow Model [MGT Sigcomm 2000] • Window size dWi 1 Wi Wi (t Ri ) p (t Ri ) dt Ri 2 Ri (t Ri ) add increase • Queue length Wi dq Ni C , dt i Ri incoming traffic • Round trip •Infocom 2002 mult decrease outgoing traffic q Ri Ti C propagation queuing delay delay loss arrival rate q [0, qmax ] Fluid Flow Model: Adding DiffServ Ai , bi • Token bucket per aggregate: 1 Fraction of fluid marked green • Two-color marking • Loss probability •Infocom 2002 f i min {1, Ai } g ri i i f 1 f r g pi f pg (1 - f ) pr i g i g 2-level PI Controller at Core green packets q g ref •Use single controller •Define two desired queue g r lengths qref and qref •PI regulates buffer queue to qref •For over-provisioned, queue r converges to qref, for underprovisioned queue converges g to qref differenti ating controller pg AQMg queue ri p g pr q 1 f s q q r ref AQM r pr red packets controller •Infocom 2002 Adaptive Rate Marker at Edge •ARM: Another PI controller •Input signal: (estimate of) Aggregation TCP Window achieved throughput 1 s •Output signal: Bucket rate A Wi g W r N R F(s) g A A ARM Bucket Rate Controller •Infocom 2002 Sending Rate Estimation ~ r Linearized Fluid Model e sR1 ~ r1 ARM 1 A1 g1 A1 F(s) g1 p g g 1 p r g s W1 1 W1 g m p g g m pr N1 R1 r1 congested Wm 1 g s Wm m s rm Nm Rm Am ARM m e sRm q qrefr ~ rm p g pr f q F(s) AQMg queue 1 g m Am •Infocom 2002 p g qrefg 1 AQM r pr ns-2Simulation topology marking edges sources N1 flows T p1 msec s1 receivers 1 15 msec differenti ating queue N 2 flows s 2 N 3 flows s3 •Infocom 2002 T p2 msec 15 msec 25 msec 2 T p3 msec 3 15 msec 3750 packet /sec ns Simulations 2500 r~1 2000 pkt/sec r~2 500 pkt/sec r~ 1250 pkt/sec 3 1500 ARM 2000 1000 token bucket token bucket 1500 500 ARM 1000 edge 1 500 0 100 200 edge 2 300 0 0 100 200 300 Smooth curve : fluid model 2000 800 differentiating queue 600 token bucket 1500 400 token bucket ARM 1000 200 edge 3 500 •Infocom 2002 0 100 200 300 0 0 100 200 300 400 ns Simulations 2500 • Added transient FTP flows • Added HTTP flows 2000 edge 1 1500 edge 3 1000 edge 2 500 0 •Infocom 2002 0 50 100 150 200 250 300 350 400 ns Simulations 2500 • Added transient FTP flows • Added HTTP flows 2000 •• Increase capacity by 20% edge 1 edge 3 1500 1000 edge 2 500 0 •Infocom 2002 0 50 100 150 200 250 300 350 400 ns Simulations • Added another edge w/o SLA 2500 1000 2000 800 1500 600 1000 400 500 200 edge 1 0 0 200 400 edge 2 600 800 2000 0 0 200 400 600 800 600 800 1500 edge 4 1500 1000 1000 500 500 edge 3 0 •Infocom 2002 0 200 400 600 800 0 0 200 400 ns Simulations 2500 2000 • Added another edge w/o 2000 1500 SLA •Increase capacity by 20% 1000 1500 1000 500 500 edge 2 egde 1 0 0 100 200 300 400 2500 0 0 100 200 300 400 300 400 2000 edge 4 2000 1500 1500 1000 1000 500 500 edge 3 0 •Infocom 2002 0 100 200 300 400 0 0 100 200 ns Simulations 2500 • Decrease capacity by 20% 2000 edge 1 1500 edge 3 1000 edge 2 500 0 •Infocom 2002 0 50 100 150 200 250 300 350 400 Conclusions and Future Work • A modification to the DiffServ architecture proposed • Control theoretic design and stability analysis of system performed • SLA-consistent throughput differentiation simulations • Investigate proportional (or fair) allocation of excess bandwidth • Improve model to account for small bucket size •Infocom 2002