本篇文章主要介绍了"显式拥塞控制（eXplicit Control Protocol，XCP）"，主要涉及到显式拥塞控制（eXplicit Control Protocol，XCP）方面的内容，对于显式拥塞控制（eXplicit Control Protocol，XCP）感兴趣的同学可以参考一下。
The eXplicit Control Protocol is a transport protocol that uses the assistance of specialized routers to accurately determine the available bandwidth along the path from the source to the destination. In this way, XCP efficiently
controls the sender's congestion window size thus avoiding the traditional slow-start and congestion avoidance phase. However, XCP requires the collaboration of all the routers on the data path which is almost impossible to achieve in an incremental deployment
scenario of XCP. It has been shown that XCP behaves worse than TCP, in the presence of non-XCP routers thus limiting the benefit of having XCP running in some parts of the network.
RESO researchers and their partners have improved the robustness of XCP on high speed networks (XCP-r architecture) and the interoperability of XCP with heterogeneous network equipments (XCP-i module). The fairness issues between
XCP and other existing protocols (TCP) are curently explored.
关键想法：XCP is built upon a new principle: carrying per-flow congestion state in packets. XCP packets carry a congestion header through which the sender requests a desired throughput. Routers make a fair per-flow bandwidth allocation
without maintaining any per-flow state. Thus, the sender learns of the bottleneck router’s allocation in a single round trip.
Most congestion control research emphasizes incremental changes to TCP. There are several notable efforts addressing TCP’s shortcomings.
Sally Floyd has several small changes to TCP to improve performance for high speed networking. High-Speed TCP [Floyd] makes a small change to the congestion avoidance response function to allow high bandwidth delay product flows
to capture available bandwidth more quickly.
Amit Jain and Sally Floyd have proposed QuickStart [Jain] as a mechanism which allows an end-system to request a higher initial sending rate from routers along the path.
Tom Kelly has developed a TCP modification called Scalable TCP [Kelly] that is similar in nature to HS-TCP in that the cwnd response function for large windows has been modified to recover more quickly from loss events and hence
reduce the penalty for probing for the available bandwidth.
Stephen Low has developed the FAST algorithm, for Fast AQM Scalable TCP, [Low03] based on a modification of TCP Vegas that has been demonstrated to be stable for high speeds and large BDP flows.
XCP is significantly different from the proposals described above. By introducing explicit, non-binary feedback from the network to the endpoints, XCP achieves several important functional and performance advantages.
First, XCP offers superior performance. While all the proposals allow large BDP flows to ramp up to broadband rates more rapidly than current TCP, XCP is the most responsive in both start-up and "steady-state" operation, and
is able to obtain the maximum performance supported by the infrastructure, under the widest range of challenging conditions.
Second, XCP, rather than being a modification or tuning of TCP, introduces a novel and general framework for resource management. XCP's basic building blocks can be used by a range of protocols with different semantics, meeting
the high-performance communication needs of the vast majority of scientific and commercial applications.
Third, XCP, by making bandwidth allocation explicit, provides fairness to "equal" flows when TCP would not, and implements a nearly cost-free service differentiation mechanism when that is what is required. [Katabi03] suggests
ways in which this simple and powerful unified bandwidth allocation strategy can support traditional QoS concepts such as tiered service levels and bandwidth guarantees.
Of course, these advantages do not come without cost. XCP's tradeoff is some additional complexity in the network routers and switches. It is the core thesis of this proposal, and the goal of our work, to rigorously demonstrate
that this additional complexity is minor and manageable, and that the resulting advantages are profound.
[Floyd] Sally Floyd. “HighSpeed TCP for Large Congestion Windows,” Internet draft draft-floyd-tcp-highspeed-02.txt, work in progress, February 2003.
[Jain] Amit Jain and Sally Floyd. “Quick-Start for TCP and IP,” Internet draft draft-amit-quick-start-02.txt, work in progress, October 2002.
[Kelly] Tom Kelly. “Scalable TCP: Improving Performance in Highspeed Wide Area Networks,” Submitted for publication, December 2002,
[Low03] C. Jin, D. Wei, S. H. Low, G. Buhrmaster, J. Bunn, D. H. Choe, R. L. A. Cottrell, J. C. Doyle, W. Feng, O. Martin, H. Newman, F. Paganini, S. Ravot, S. Singh. “Fast TCP: From Theory to Experiments,” submitted to IEEE
Communications Magazine, April 1, 2003,