1 / 41

Modeling TCP Congestion Control

Modeling TCP Congestion Control. Don Towsley UMass Amherst towsley@cs.umass.edu. collaborators: T. Bu, W. Gong, C. Hollot, V. Misra. Outline. motivation TCP primer bottleneck invariance principle instability of RED active queue management

monita
Download Presentation

Modeling TCP Congestion Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modeling TCP Congestion Control Don Towsley UMass Amherst towsley@cs.umass.edu collaborators: T. Bu, W. Gong, C. Hollot, V. Misra

  2. Outline • motivation • TCP primer • bottleneck invariance principle • instability of RED active queue management • fixed point approximations of TCP networks • transient analysis of TCP networks • stochastic differential equations • summary

  3. UDP-12Mbs TCP 12Mbs 1 B1=5Mbs 20Mbs 20Mbs B1= 2Mbs 2 { 1 B2=5Mbs 2 B2= 2Mbs 3 TCP B3=5Mbs 3 B3= 2Mbs 4 4 B4=5Mbs B4= 2Mbs Properties of TCP • 90% of Internet traffic • conservative end-end congestion control (CC) • equal bandwidth share • additive increase multiplicative decrease CC • only end-end protocol with congestion control TCP can be pushed around

  4. Properties of TCP • 90% of Internet traffic • conservative end-end congestion control (CC) • equal bandwidth share • additive increase multiplicative decrease CC • only end-end protocol with congestion control Need to understand TCP in network setting

  5. Additive-Increase Multiplicative-Decrease (AIMD) Congestion Control ri - rate after i-th feedback ri+1 = ri + c if i-th feedback is no congestion ri+1 = axriif i-th feedback indicates congestion, a<1 • similar algorithms for window-based CC • basic building block of most congestion control algorithms (e.g., TCP)

  6. C . . . (r1,r2) ri2 C ri 1 AIMD and Fair Share • two sources, rates ri1,ri2 • bandwidth C • initial rates r1 and r2 • as time goes on, i increases, source rates converge to a fair share (Chiu,Jain 89)

  7. Generic TCP Behavior • window algorithm (window W ) • up to W packets can be in network • return of ACK allows sender to send another packet • ACKS cumulative • increase window by one per RTT W <- W +1/W perACK  W <- W +1 per RTT • seeks available network bandwidth

  8. receiver W sender

  9. Generic TCP Behavior • window algorithm (window W) • increase window by one per RTT W <- W +1/W per ACK • loss indication of congestion • decrease window by half on detection of loss (triple duplicate ACK), W <- W/2

  10. receiver TD sender

  11. Generic TCP Behavior • window algorithm (window W) • increase window by one per RTT W <- W +1/W per ACK • halve window on detection of loss, W <- W/2 • timeouts due to lack of ACKs -> window reduced to one, W <-1

  12. receiver sender TO

  13. Generic TCP Behavior • window algorithm (window W) • increase window by one per RTT (or one over window per ACK, W <- W +1/W) • halve window on detection of loss, W <- W/2 • timeouts due to lack of ACKs, W <-1 • successive timeout intervals grow exponentially long • slow start mechanism • provides fair share, full use of bandwidth

  14. B(p,R) - TCP session throughput p - loss probability R - avg round trip time equilibrium analysis of AIMD B (p,R )  1/R (1/p )1/2 • equilibrium analysis incl. timeouts (PFTK98) B (p,R )  [R (4p/3)1/2 + T0 3(3p/4)1/2p (1+32p 2)]-1 • T0 - timeout length Early Models

  15. Experiments: 38 traces from 18 hosts unidirectional bulk transfers 100sec measurements Packets/s Measured PFTK p1/2 model Packets/s Measured PFTK p1/2 model Validation Observations: • many timeout loss events Conclusions: • good validation • other studies support model • insensitive to TCP version

  16. Lessons • TCP exhibits well defined bandwidth curve • decreasing function of R and p • timeouts important • little difference between TCP versions • AIMD, timeouts • Vegas an exception

  17. iBi(Ri ,p) = C Bottleneck invariance principle • bottleneck router • loss, high load, util.  1 • bottleneck invariance principle (BIP) C -router bandwidth Bi - throughput of flow i

  18. Applications of BIP • provides simple checks of protocol design • active queue management, RED • new improved congestion control algorithms • accurate models of networks supporting infinite/finite duration TCP flows • thruput, loss rate, avg. queue length, …

  19. Active queue management • drop tail - drop pkt when buffer fills • active queue management (AQM) • proactively drop/mark packets before buffer overflow • example: drop pkt with probability p(x) x - avg. queue length

  20. - q (t ) -x (t ) x (t) : smoothed, time averaged q (t) x (ti +1) = aq (ti +d) + (1-a) x (ti) t RED (Random Early Detect) RED: marking/dropping based on average queue length x (t ) 1 marking prob p pmax tmin tmax 2tmax avg queue length x

  21. C N N2 < N3 N3 < N4 N1 < N2 N1 N4 ? pmax N3 N2 N1 tmax RED discard function • RED queue • N identical TCP sources B(R,p) = C/N • p increases with N

  22. C N pmax tmax RED discard function • RED queue • N identical TCP sources B(R,p) = C/N • p increases with N queue length N4 tmax

  23. C N pmax tmax RED discard function • RED queue • N identical TCP sources B(R,p) = C/N • p increases with N • once p > pmax, queue oscillates around tmax  RED unstable! (Firoiu, Borden, 00)

  24. Improved RED 1 discontinuity removed in gentle_ variant Marking prob. p pmax tmin tmax 2tmax Avg queue length x

  25. 1 N • N infinite sourceTCP sessions B (p(q ), R (q )) = C /N Stationary Behavior: single bottleneck • one bottleneck link • AQM; avg. queue length q, discard prob. p(q) • bandwidth C • R (q) = R0 + q /C (round trip time)

  26. Single bottleneck • solve a fixed point problem for q • unique solution provided B is monotonic and continuous • resulting q can be used to obtain Ri and p • preliminary evaluation results good

  27. PFKT Model p1/2 Model Simulation + RT Model p1/2 Model Results: single Bottleneck • N TCP flows • two-way prop. delay • 18+2i ms, i = 1,…,N • link bandwidth  N • RED: scaled by N similar results for short-lived flows

  28. N TCP flows throughputs {Bi} V congested RED routers capacities {Cv } avg. queue lengths x = {xv } discard prob. p = {pv (xv )} TCP model: Bi(R , p) congested router model iBi(x) = Cv , v =1,…,V V equations, V unknowns Network Setting TCP flow Bi AQM router Cv, pv(xv)

  29. RT Model p1/2 Model +  Estimated end to end loss Measured end2end loss Results: Tandem Networks • 8networks, 5 -10routers • 2-way propagation delay20-120ms • bandwidth, 2-6 Mbps • error • throughput < 10% • loss rate < 10% • avg. queue length < 15% • similar results for cyclic networks

  30. 1 N Transient Analysis: single router • one congested router • capacity {C (packets/sec)} • queue length q (t ) • discard prob. p(t ) • N TCP flows • window sizes Wi (t ) • round trip time Ri(t ) = Ai +q (t )/C • throughputs Bi(t ) = Wi (t )/Ri (t )

  31. = dt - Wi dNi (t-t) Ri (q (t)) 2 Additive increase Mult. decrease System of Stochastic Differential Equations Assumption: Poisson loss process{Ni (t)}: Window Size: dWi {Ni (t)}: time varying, rate Wi (t ) p (x (t )) / Ri (q (t)) t : feedback delay (round trip time) Timeouts ignored

  32. dt Wi dNi (t-t) Ri (q (t)) 2 = - 1{q (t) > 0}C dt dt Wi (t ) + S Outgoing traffic Incoming traffic Ri (q (t )) System of SDEs Window Size: dWi = - Queue length: dq

  33. EWi 2 dEWi dt - EWi(t-t) Queue length: dEq dt -1{Eq(t) > 0}C  + S Ri(Eq(t)) Ri (Eq(t-t)) EWi(t) System of Differential Equations 1 Ep(t-t) Window Size:  Ri(Eq(t)) Conjecture: exact as no. flows -> 

  34. ln (1-a) ln (1-a) d d dEp dt dp dx dEx dt = Loss probability: Eq(t) p x System of Differential Equations (cont.) Estimated average queue length: dEx dt Ex(t) = - a = averaging parameter of RED d = sampling interval ~ 1/C dp/dx is obtained from the marking profile

  35. dEp dt = f3(Eq) dEq dt = f2(EWi) Result: N +2 coupled equations dEWi dt = f1(Ep,Ri, EWi) i = 1..N Numerical solution using MATLAB

  36. Queuing delay- aggregate delay q(t )=SV qV(t ) loss probability- cumulative loss probability p(t)= 1-PV (1-pV(t )) Extension to Network Networked case:V congested AQM routers Other extensions to model Timeouts:leveraged work done in [PFTK Sigcomm98] to model timeouts Flow aggregation:represent flows sharing same route by single equation

  37. Flow set 4 Flow set 1 RED router 1 Flow set 2 Flow set 3 Flow set 5 Validation scenario Topology • two RED routers • one way ftp flows traffic sources • comparison to ns • transient queuing performance obtained RED router 2 5 sets of flows 2 RED routers Set 2 flows through both routers

  38. Fluid model ns simulation Performance of DE method • link rates 5 Mb/s • load variation at t=75 and t=150 seconds • 200 flows simulated • drops to 120 between t = 75, 120 • fluid model captures transient performance Inst. Queue length Time

  39. Observations on RED • “Tuning” of RED is difficult - sensitive to packet sizes, load levels, round trip time, etc. • oscillations due to • exponential smoothing of queue length • use of variable sampling interval d • feedback delay • queue fill delay Further Work Detailed Control Theoretic Analysis of TCP/REDavailable at http://gaia.cs.umass.edu/papers/papers.html

  40. Improving congestion control Working with linearized model • developed rules for setting RED parameters • compared Proportional Integral (PI) controller with properly adjusted RED • ns simulation with time varying http,ftp flows • PI controller: faster response, decouples queue size and load level Queue length vs. Time - PI Controller - RED Controller queue length time

  41. Conclusions • fixed point approach promising for stationary behavior of TCP • DE approach promising for more detailed transient behavior • computation cost of methods a fraction of the discrete event simulation cost • formal representation and analysis yields better understanding of RED/AQM

More Related