Modeling TCP Congestion Control Don Towsley UMass Amherst collaborators: T. Bu, W. Gong, C. Hollot, V. Misra.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

CSIT560 Internet Infrastructure: Switches and Routers Active Queue Management Presented By: Gary Po, Henry Hui and Kenny Chong.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
Restricted Slow-Start for TCP William Allcock 1,2, Sanjay Hegde 3 and Rajkumar Kettimuthu 1,2 1 Argonne National Laboratory 2 The University of Chicago.
Active Queue Management: Theory, Experiment and Implementation Vishal Misra Dept. of Computer Science Columbia University in the City of New York.
Router-assisted congestion control Lecture 8 CS 653, Fall 2010.
Simulating Large Networks using Fluid Flow Model Yong Liu Joint work with Francesco LoPresti, Vishal Misra Don Towsley, Yu Gu.
Advanced Computer Networking Congestion Control for High Bandwidth-Delay Product Environments (XCP Algorithm) 1.
Congestion Control An Overview -Jyothi Guntaka. Congestion  What is congestion ?  The aggregate demand for network resources exceeds the available capacity.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
One More Bit Is Enough Yong Xia, RPI Lakshminarayanan Subramanian, UCB Ion Stoica, UCB Shivkumar Kalyanaraman, RPI SIGCOMM’05, August 22-26, 2005, Philadelphia,
“On Designing Improved Controllers for AQM Routers Supporting TCP Flows” The PI Controller Presented by Bob Kinicki.
Control Theory in TCP Congestion Control and new “FAST” designs. Fernando Paganini and Zhikui Wang UCLA Electrical Engineering July Collaborators:
1 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
AQM for Congestion Control1 A Study of Active Queue Management for Congestion Control Victor Firoiu Marty Borden.
Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99.
TCP Stability and Resource Allocation: Part I. References The Mathematics of Internet Congestion Control, Birkhauser, The web pages of –Kelly, Vinnicombe,
6/16/20151 On Designing Improved Controllers for AQM Routers Supporting TCP flows By C.V Hollot, Vishal Mishra, Don Towsley and Wei-Bo Gong Presented by.
Improving Adaptability and Fairness in Internet Congestion Control May 30, 2001 Seungwan Ryu PhD Student of IE Department University at Buffalo.
RAP: An End-to-End Rate-Based Congestion Control Mechanism for Realtime Streams in the Internet Reza Rejai, Mark Handley, Deborah Estrin U of Southern.
1 Minseok Kwon and Sonia Fahmy Department of Computer Sciences Purdue University {kwonm, TCP Increase/Decrease.
1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug 1993), pp
Fluid-based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED Vishal Misra Wei-Bo Gong Don Towsley University of Massachusetts,
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
ACN: AVQ1 Analysis and Design of an Adaptive Virtual Queue (AVQ) Algorithm for Active Queue Managment Srisankar Kunniyur and R. Srikant SIGCOMM’01 San.
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
Estimating Congestion in TCP Traffic Stephan Bohacek and Boris Rozovskii University of Southern California Objective: Develop stochastic model of TCP Necessary.
Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs.
Congestion Control for High Bandwidth-Delay Product Environments Dina Katabi Mark Handley Charlie Rohrs.
Ns Simulation Final presentation Stella Pantofel Igor Berman Michael Halperin
1 A State Feedback Control Approach to Stabilizing Queues for ECN- Enabled TCP Connections Yuan Gao and Jennifer Hou IEEE INFOCOM 2003, San Francisco,
Analysis of Active Queue Management Jae Chung and Mark Claypool Computer Science Department Worcester Polytechnic Institute Worcester, Massachusetts, USA.
Advanced Computer Networks : RED 1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking,
Transport Layer 4 2: Transport Layer 4.
Modeling TCP Throughput: A Simple Model and its Empirical Validation Ross Rosemark Penn State University.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
Fluid-based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED Vishal Misra Wei-Bo Gong Don Towsley University of Massachusetts,
ACN: RED paper1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
Acknowledgments S. Athuraliya, D. Lapsley, V. Li, Q. Yin (UMelb) S. Adlakha (UCLA), J. Doyle (Caltech), K. Kim (SNU/Caltech), F. Paganini (UCLA), J. Wang.
15744 Course Project1 Evaluation of Queue Management Algorithms Ningning Hu, Liu Ren, Jichuan Chang 30 April 2001.
Stochastic Differential Equation Modeling and Analysis of TCP - Windowsize Behavior Presented by Sri Hari Krishna Narayanan (Some slides taken from or.
Hybrid Modeling of TCP Congestion Control João P. Hespanha, Stephan Bohacek, Katia Obraczka, Junsoo Lee University of Southern California.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Principles of Congestion Control Some slides.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks TCP.
1 Analysis of a window-based flow control mechanism based on TCP Vegas in heterogeneous network environment Hiroyuki Ohsaki Cybermedia Center, Osaka University,
TCP Westwood: Efficient Transport for High-speed wired/wireless Networks 2008.
H. OhsakiITCom A control theoretical analysis of a window-based flow control mechanism for TCP connections with different propagation delays Hiroyuki.
XCP: eXplicit Control Protocol Dina Katabi MIT Lab for Computer Science
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
ECEN 619, Internet Protocols and Modeling Prof. Xi Zhang Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions.
Achievable Service Differentiation with Token Bucket Marking for TCP S. Sahu, D.Towsley University of Massachusetts P. Nain INRIA C. Diot Sprint Labs V.
1 Network Transport Layer: TCP Analysis and BW Allocation Framework Y. Richard Yang 3/30/2016.
Congestion Control and AQM
Router-Assisted Congestion Control
TCP Congestion Control
TCP Congestion Control
Queue Dynamics with Window Flow Control
Columbia University in the city of New York
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
FAST TCP : From Theory to Experiments
RAP: Rate Adaptation Protocol
TCP Congestion Control
TCP Congestion Control
Understanding Congestion Control Mohammad Alizadeh Fall 2018
Transport Layer: Congestion Control
Presentation transcript:

Modeling TCP Congestion Control Don Towsley UMass Amherst collaborators: T. Bu, W. Gong, C. Hollot, V. Misra

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

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 20Mbs B 1 =5Mbs B 2 =5Mbs B 3 =5Mbs B 4 =5Mbs TCP 20Mbs B 1 = 2Mbs B 2 = 2Mbs B 3 = 2Mbs B 4 = 2Mbs UDP-12Mbs TCP { 12Mbs  TCP can be pushed around

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

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

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

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 per ACK  W  W +1 per RTT seeks available network bandwidth

sender receiver W

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

sender receiver TD

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

sender receiver TO

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

Early Models 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 + T 0 3(3p/4) 1/2 p (1+32p 2 )] -1 –T 0 - timeout length

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

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

Bottleneck invariance principle bottleneck router –loss, high load, util.  1 bottleneck invariance principle (BIP)  i B i (R i,p) = C C - router bandwidth B i - throughput of flow i

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, …

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

RED (Random Early Detect) RED: marking/dropping based on average queue length x (t ) t min t max p max 1 2t max marking prob p avg queue length x t - q (t ) - x (t ) x (t) : smoothed, time averaged q (t) x (t i +1) =  q (t i +  ) + (1-  ) x (t i )

RED discard function RED queue N N 1 < N 2 N2N2 N identical TCP sources B(R,p) = C/N C p increases with N p max t max N1N1 N1N1 N3N3 N 2 < N 3 ? N4N4 N 3 < N 4

RED discard function RED queue N N identical TCP sources B(R,p) = C/N C p increases with N p max t max N4N4 queue length

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

Improved RED t min t max p max 1 discontinuity removed in gentle_ variant 2t max Marking prob. p Avg queue length x

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

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

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

Network Setting N TCP flows –throughputs {B i } V congested RED routers –capacities {C v } –avg. queue lengths x = {x v } –discard prob. p = {p v (x v )} TCP model: B i (R, p) congested router model  i B i (x ) = C v, v =1,…,V V equations, V unknowns TCP flow B i AQM router C v, p v (x v )

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

Transient Analysis: single router one congested router –capacity {C (packets/sec) } –queue length q (t ) –discard prob. p(t ) N TCP flows –window sizes W i (t ) –round trip time R i (t ) = A i +q (t )/C –throughputs B i (t ) = W i (t )/R i (t ) 1 N

System of Stochastic Differential Equations Window Size: dW i Timeouts ignored = Additive increase dt R i (q (t)) - Mult. decrease WiWi dN i (t-  ) 2 {N i (t)}: time varying, rate W i (t ) p (x (t )) / R i (q (t))  : feedback delay (round trip time) Assumption: Poisson loss process {N i (t)}:

System of SDEs Queue length: = Outgoing traffic - 1{q (t) > 0}C dtdq Window Size: dW i = dt R i (q (t)) - WiWi dN i (t-  ) 2 Incoming traffic +  R i (q (t )) W i (t ) dt

System of Differential Equations Window Size: dEW i dt  1 R i (Eq(t)) EW i 2 - EW i (t-  ) R i (Eq(t-  )) Ep(t-  ) -1 {Eq(t) > 0} C +  R i (Eq(t)) EW i (t) Queue length: dEq dt  Conjecture: exact as no. flows -> 

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

Result: N +2 coupled equations Numerical solution using MATLAB dEW i dt =f 1 (Ep,R i, EW i ) i = 1..N dEq dt = f 2 (EW i ) dEp dt = f 3 (Eq)

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 loss probability - cumulative loss probability p(t) = 1-  V (1-p V (t )) Queuing delay - aggregate delay q(t ) =  V q V (t )

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

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 Fluid model ns simulation Inst. Queue length Time

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  –feedback delay –queue fill delay Further Work Detailed Control Theoretic Analysis of TCP/RED available at

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

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