Queueing theory and Internet congestion control Damon Wischik, UCL Mark Handley, UCL Gaurav Raina, Cambridge / IIT Madras.

Slides:



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

Restless bandits and congestion control Mark Handley, Costin Raiciu, Damon Wischik UCL.
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.
Resource Pooling A system exhibits complete resource pooling if it behaves as if there was a single pooled resource. The Internet has many mechanisms for.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
TCP Stability and Resource Allocation: Part II. Issues with TCP Round-trip bias Instability under large bandwidth-delay product Transient performance.
Sizing Router Buffers Guido Appenzeller Isaac Keslassy Nick McKeown Stanford University.
Designing Networks with Little or No Buffers or Can Gulliver Survive in Lilliput? Yashar Ganjali High Performance Networking Group Stanford University.
High Performance All-Optical Networks with Small Buffers Yashar Ganjali High Performance Networking Group Stanford University
AQM for Congestion Control1 A Study of Active Queue Management for Congestion Control Victor Firoiu Marty Borden.
High Performance Networking with Little or No Buffers Yashar Ganjali High Performance Networking Group Stanford University
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.
High speed TCP’s. Why high-speed TCP? Suppose that the bottleneck bandwidth is 10Gbps and RTT = 200ms. Bandwidth delay product is packets (1500.
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.
High Performance Networking with Little or No Buffers Yashar Ganjali on behalf of Prof. Nick McKeown High Performance Networking Group Stanford University.
Sizing Router Buffers (Summary)
Sizing Router Buffers Nick McKeown Guido Appenzeller & Isaac Keslassy SNRC Review May 27 th, 2004.
Modeling TCP in Small-Buffer Networks
Self-Similarity in Network Traffic Kevin Henkener 5/29/2002.
ACN: AVQ1 Analysis and Design of an Adaptive Virtual Queue (AVQ) Algorithm for Active Queue Managment Srisankar Kunniyur and R. Srikant SIGCOMM’01 San.
Reducing the Buffer Size in Backbone Routers Yashar Ganjali High Performance Networking Group Stanford University February 23, 2005
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
Isaac Keslassy (Technion) Guido Appenzeller & Nick McKeown (Stanford)
Routers with Small Buffers Yashar Ganjali High Performance Networking Group Stanford University
Congestion Control for High Bandwidth-Delay Product Environments Dina Katabi Mark Handley Charlie Rohrs.
UCB Improvements in Core-Stateless Fair Queueing (CSFQ) Ling Huang U.C. Berkeley cml.me.berkeley.edu/~hlion.
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.
On Horrible TCP Performance over Underwater Links Balaji Prabhakar Abdul Kabbani, Balaji Prabhakar Stanford University.
Second year review Resource Pooling Damon Wischik, UCL.
Buffer requirements for TCP: queueing theory & synchronization analysis Gaurav RainaDamon Wischik CambridgeUCL.
1 Chapters 9 Self-SimilarTraffic. Chapter 9 – Self-Similar Traffic 2 Introduction- Motivation Validity of the queuing models we have studied depends on.
Buffer requirements for TCP Damon Wischik DARPA grant W911NF
CS144 An Introduction to Computer Networks
Congestion models for bursty TCP traffic Damon Wischik + Mark Handley University College London DARPA grant W911NF
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
Understanding the Performance of TCP Pacing Amit Aggarwal, Stefan Savage, Thomas Anderson Department of Computer Science and Engineering University of.
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.
Queueing theory for TCP Damon Wischik University College London TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
1 On Class-based Isolation of UDP, Short-lived and Long-lived TCP Flows by Selma Yilmaz Ibrahim Matta Computer Science Department Boston University.
Congestion control for Multipath TCP (MPTCP) Damon Wischik Costin Raiciu Adam Greenhalgh Mark Handley THE ROYAL SOCIETY.
1 IEEE Meeting July 19, 2006 Raj Jain Modeling of BCN V2.0 Jinjing Jiang and Raj Jain Washington University in Saint Louis Saint Louis, MO
Queueing theory for TCP Damon Wischik, UCL Gaurav Raina, Cambridge.
15744 Course Project1 Evaluation of Queue Management Algorithms Ningning Hu, Liu Ren, Jichuan Chang 30 April 2001.
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
Some questions about multipath Damon Wischik, UCL Trilogy UCL.
1 Time-scale Decomposition and Equivalent Rate Based Marking Yung Yi, Sanjay Shakkottai ECE Dept., UT Austin Supratim Deb.
Winter 2008CS244a Handout 81 CS244a: An Introduction to Computer Networks Handout 8: Congestion Avoidance and Active Queue Management Nick McKeown Professor.
Chapter 11.4 END-TO-END ISSUES. Optical Internet Optical technology Protocol translates availability of gigabit bandwidth in user-perceived QoS.
1 Sheer volume and dynamic nature of video stresses network resources PIE: A lightweight latency control to address the buffer problem issue Rong Pan,
Queueing theory for TCP Damon Wischik, UCL Gaurav Raina, Cambridge.
Dynamic Behavior of Slowly Responsive Congestion Control Algorithms (Bansal, Balakrishnan, Floyd & Shenker, 2001)
Queueing theory, control theory, & buffer sizing Damon Wischik DARPA grant W911NF
Congestion Control for High Bandwidth-Delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Yufei Chen.
Buffers: How we fell in love with them, and why we need a divorce Hot Interconnects, Stanford 2004 Nick McKeown High Performance Networking Group Stanford.
Topics discussed in this section:
Router-Assisted Congestion Control
Open Issues in Router Buffer Sizing
Lecture 19 – TCP Performance
Amogh Dhamdhere, Hao Jiang and Constantinos Dovrolis
FAST TCP : From Theory to Experiments
Internet congestion control
TCP Congestion Control
Understanding Congestion Control Mohammad Alizadeh Fall 2018
Gaurav Raina Damon Wischik Mark Handley Cambridge UCL UCL
Presentation transcript:

Queueing theory and Internet congestion control Damon Wischik, UCL Mark Handley, UCL Gaurav Raina, Cambridge / IIT Madras

A little bit about me I did a PhD in mathematics at Cambridge and I continued there afterwards as a research fellow except for a year at Stanford, in the Electrical Engineering department. I decided to change to a computer science department, because this is where all the exciting problems come from, and where theory can have an impact. I still like equations.

A debate about buffer-sizing led me to ask: how does queueing theory relate to congestion control? The conventional wisdom was that, for TCP to work well, routers should provide a buffer equal to bandwidth × delay This was challenged in 2004 by Appenzeller, Keslassy and McKeown, who argued that much smaller buffers are sufficient in core routers

A debate about buffer-sizing led me to ask: how does queueing theory relate to congestion control? The conventional wisdom was that, for TCP to work well, routers should provide a buffer equal to bandwidth × delay This was challenged in 2004 by Appenzeller, Keslassy and McKeown, who argued that much smaller buffers are sufficient in core routers They now propose buffers should be even smaller, on over-provisioned links

A debate about buffer-sizing led me to ask: how does queueing theory relate to congestion control? Small buffers are attractive because – small buffers are cheaper than large buffers – they allow new faster architectures for switches – delay and jitter are kept low Both of these proposals for small buffers used novel mathematical models. They ignored many years of research, on queueing theory and congestion control. Why?

What previous work might be relevant? What questions might we hope to answer? congestion control theory queueing theory

Fluid model for TCP [Kelly+Maulloo+Tan (1998), Misra+Gong+Towsley (2000), Baccelli+McDonald+Reynier (2002), and many others]

Fluid model for CUBIC-like congestion control [based on Prabhakar et al. (2009)]

Stochastic models of queues, applied to communications networks Erlang (1909) M/M/1 queues Poisson models Long-range dependence and much much more

What previous work might be relevant? What questions might we hope to answer? Is this fluid & stochastic theory consistent with the result of Appenzeller et al.? Does it suggest alternatives? Can we make the buffer even smaller? What about other types of congestion control? We need buffers to absorb bursts in traffic. How can a router tell the difference between short bursts and long-term overload? What causes synchronization between TCP flows?

We simulated a simple dumbbell topology with different buffer sizes, and saw very different types of behaviour queue size [0–100%] drop probability [0–30%] link utilization [0–100%] time [0–5s] buff = 25 pktbuff = pkt (conventional wisdom) buff = 619 pkt (as Appenzeller et al. suggest) 5000 TCP flows RTT 150—200ms link speed 3Gb/s = 250k pkt/s

I shall develop a theoretical model for queueing behaviour at a queue fed by TCP flows. I will only model a simple topology, with long-lived flows. The model only applies to a queue serving many flows. It is based on the statistical regularities that are seen in any large aggregate population. The model proposes that buffers should be no more than 150 packets or so, no matter what the link speed. It also gives useful insight into the interpretation of fluid models of congestion control, and the controllability of queues in the Internet. Siméon- Denis Poisson 1781–1840

We will start by modeling a simple topology with one bottleneck link. What is the limiting behaviour of this system as the number of flows → ∞? (And why is this an appropriate limit?) N TCP flows common round trip time RTT link speed NC buffer size B√N

To gain intuition, it is useful to look first at an open-loop version of the system Let us remove the control loop and assume that the N traffic sources each generate Poisson traffic at rate x (We’ll bring back the control loop later!) Then this is a classic M Nx /D NC /1/B√N queue N TCP flows link speed NC buffer size B√N N Poisson sources, each with rate x link speed NC buffer size B√N

Simulation shows that when there are many flows, the queue has two different modes of operation: near-empty and near-full. N Poisson sources, each with rate x, x=0.95 then 1.05 pkt/s link speed NC, C = 1 pkt/s buffer size B√N, B = 3 pkt N=50N=100N=500N=1000 queue size Nx / NC time [0—80] M Nx /D NC /1/B√N queue

Busy periods at the queue last for time O(1/N). The queue is very sensitive to traffic intensity Nx / NC, and the loss rate is max(0, ( x - C )/ x ) N Poisson sources, average rate x, x=0.95 then 1.05 pkt/s link speed NC, C = 1 pkt/s buffer size B√N, B = 3 pkt N=1000 queue size Nx / NC time [0—80] 0 95 M Nx /D NC /1/B√N queue

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? We know that the aggregate traffic rate x(t) varies smoothly, according to a differential equation. Suppose it goes just above C.

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? Over short intervals of time, the aggregate traffic can be approximated by a Poisson process [Cao and Ramanan 2002]

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? The queue will quickly flip from empty to full.

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? There will be no drops at first, then all of a sudden the packet loss rate will be high.

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? The congestion signal goes back to the TCP sources.

In the closed-loop system, does TCP have any chance of preventing overflow at the queue? One round trip time later, the sources will react. (They will probably over-react.)

The queue fluctuates very quickly, and TCP reacts too slowly to be able to stabilize it. One round trip time later, the sources will react. (They will probably over-react.)

We have derived the formula for packet drop probability, to put into the differential equation for TCP. The formula relies on the fact that the queue changes much faster than TCP. Let x(t) be the average transmission rate of the N flows at time t. x(t) evolves according to the standard differential equation for TCP The loss rate is N TCP flows link speed NC buffer size B√N

A simulation of the closed-loop dumbbell topology confirms our theoretical prediction about how the queue size fluctuates queue size [0–619pkt] drop probability [0–30%] traffic intensity [0–100%] queue size [594–619pkt] time [0–5s] time [50ms] N=5000 TCP flows RTT 150—200ms link speed 3Gb/s = 250k pkt/s buffer size 619pkt = 250k x 0.175/√5000

For buffers of this size, there are periods of no loss followed by periods of concentrated loss, hence the flows become synchronized N=5000 TCP flows RTT 150—200ms link speed 3Gb/s = 250k pkt/s buffer size 619pkt = 250k x 0.175/√5000 queue size [0–619pkt] TCP window sizes [0-25pkt] time [0–5s]

Similar reasoning tells us what happens for other buffer sizing rules queue size [0–100%] drop probability [0–30%] link utilization [0–100%] time [0–5s] buff = constantbuff ~ N buff ~ √N zoomed-in queue size, over a range of 25pkts time range of 50ms

Similar reasoning tells us what happens for other buffer sizing rules queue size [0–100%] drop probability [0–30%] link utilization [0–100%] time [0–5s] buff = constantbuff ~ N buff ~ √N zoomed-in queue size, over a range of 25pkts time range of 50ms

Similar reasoning tells us what happens for other buffer sizing rules queue size [0–100%] drop probability [0–30%] link utilization [0–100%] time [0–5s] buff = constantbuff ~ N buff ~ √N zoomed-in queue size, over a range of 25pkts time range of 50ms

We have analyzed how the queue behaves. We have only modeled a simple dumbbell topology with persistent flows, but simulations suggest that the qualitative answers apply more widely. The description only applies to queues with many flows, e.g. queues at core routers. The model is based on statistical regularities of large aggregates, and it only applies to large aggregates. We can use the model to give guidance on the design of active queue management schemes recommend the buffer size

Mathematical summary: we have derived differential equations for the loss rate, to complement the standard differential equation for TCP Let x t = average traffic rate and p t = packet loss probability at time t C = available bandwidth per flow RTT = round trip time N =# flows TCP traffic model buffer = B buffer ~ √N buffer = NB (the conventional buffer-sizing rule)

Differential equations can be used to help design congestion control schemes. But there are pitfalls! For some parameter values the differential equations have a stable solution – we can calculate the steady-state link utilization, loss probability etc. For others it is unstable and there are oscillations – this corresponds to synchronization between the flows – we can calculate the size of the oscillations, either by algebra or by numerical computation We’d like to choose parameters to make the equations stable traffic intensity time

We used the differential equations to predict the effect of different buffer sizes, and confirmed our predictions by simulation On the basis of this analysis, we claimed – a buffer of 30–50 packets should be sufficient – any smaller, and utilization is too low – any larger, and there is too much synchronization Other people ran simulations and found –small buffers lead to terribly low utilization –intermediate buffers are much better queue size distribution [ 0 – 100% ] B=10pkt B=20pkt B=30pkt B=40pkt B=50pkt B=100pkt traffic intensity distribution [ 85 – 110% ] Plot by Darrell Newman, Cambridge ρ=1

Burstiness affects the answer. It is straightforward to incorporate burstiness into our model. The conclusion is that buffers should be sized to hold 30—50 bursts, not packets It turned out that the simulations were being affected by access link speeds. – With a fast access link, packets are sent back-to-back in bursts – With a slow access link, packets are spaced out Burstiness has the interesting effect of ‘softening’ the congestion response, which enables the TCP flows to react to avert congestion. Small buffers have the same effect. slow access links fast access links

We are currently developing a multipath version of TCP. Here also one needs careful analysis of how fluid models and stochastic effects fit together. If TCP could send its traffic over multiple paths simultaneously, and adaptively choose the least loaded, then the Internet would be more resilient and flexible. (W.+Handley+Bagnulo 2009) The control theory differential equations have all been worked out (Kelly+Voice 2006, Towsley+Srikant+al. 2006) But they lead to bad algorithms which send all their traffic one way then the other, and flip randomly. To solve this problem, we are working on how to link stochastic packet-level behaviour with the differential equations.

Similar issues arise when designing high- speed congestion control for data centres QCN is a proposed congestion control algorithm for Ethernet It is intended for networks with latencies up to 500μs, with 10 Gb/s links, and a small number of active flows It is being standardized in IEEE 802.1Qau What are the right differential equations to write down, when there are a small number of very big flows?

Conclusion Internet congestion control can be analyzed using a mixture of control theory and stochastic analysis – Control theory = how do aggregates react to each other? It is fairly well understood. – Stochastic analysis = how does the behaviour of an aggregate arise out of its individual parts? It is poorly understood. We have developed the stochastic analysis for queues fed by TCP traffic The analysis told us that core Internet routers can get by with tiny buffers, small enough to be integrated into the switching fabric. This will permit new designs for high-speed routers.