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.
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).
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.