Congestion Control for High Bandwidth-Delay Product Networks


Theory and experiments show that as the per-flow product of bandwidth and latency increases, TCP becomes inefficient and prone to instability, regardless of the queuing scheme. This failing becomes increasingly important as the Internet evolves to incorporate very high-bandwidth optical links and more large-delay satellite links.

To address this problem, we develop a novel approach to Internet congestion control that outperforms TCP in conventional environments, and remains efficient, fair, scalable, and stable as the bandwidth-delay product increases. This new eXplicit Control Protocol, XCP, generalizes the Explicit Congestion Notification proposal (ECN). In addition, XCP introduces the new concept of decoupling utilization control from fairness control. This allows a more flexible and analytically tractable protocol design and opens new avenues for service differentiation.

Using a control theory framework, we model XCP and demonstrate it is stable and efficient regardless of the link capacity, the round trip delay, and the number of sources. Extensive packet-level simulations show that XCP outperforms TCP in both conventional and high bandwidth-delay environments. Further, XCP achieves fair bandwidth allocation, high utilization, small standing queue size, and near-zero packet drops, with both steady and highly varying traffic. Additionally, the new protocol does not maintain any per-flow state in routers and requires few CPU cycles per packet, which makes it implementable in high-speed routers.
 


Status

TeXCP Traffic Engineering using an XCP-Like Protocol. (02/26/04)

A prototype implementation of XCP by ISI. (11/28/03)

Current version of code is not compatible with the Queue Monitor. So to check the queues you need to use the trace file directly (12/22/02).

A new version of the ns implementation is available. The old ns implementation that was online had a bug. In particular, it didn't adjust the allocation in the case of multiple bottlenecks. Please report any problems or bugs that you find to dk@mit.edu. The script for running the parking lot simulation is available online (check implementation below). However, to run this script you need to replace queue.cc and queue.h (9/29/2002).


Papers

Congestion Control for High Bandwidth-Delay Product Networks.
Dina Katabi, Mark Handley, and Chalrie Rohrs.
In the proceedings on ACM Sigcomm 2002.

A Note on the Stability Requirement of Adaptive Virtual Queue.
Dina Katabi and Charles Blake.
MIT Memo, 2002.
 
Enhancing Internet Congestion Control Using Explicit and Precise Feedback.
Dina Katabi and Mark Handley.
A 2-page paper published in Oxygen 2001 Workshop, July 2001.

Using Precise Feedback for Controlling Congestion in the Internet.
Dina Katabi and Mark Handley
MIT-LCS Technical Report 820.
 


Talks

Congestion Control for High Bandwidth-Delay Product Networks (ppt).

Software

You can download the ns implementation. Also, you can download the scripts that generate the mutli-bottleneck topology described in the paper. Note that to run these scripts, you need to replace your queue.cc and queue.h files with the files provided with our code.

People

Dina Katabi
John Wroclawski
Mark Handley
Charlie Rohrs
ISI Network Group

Links

The XCP project at ISI
High-Speed TCP
Sacalable TCP
FAST

ANA - LCS