Review of XCP

From: Andrew Putnam (aputnam@cs.washington.edu)
Date: Mon Oct 18 2004 - 00:01:27 PDT

  • Next message: Michael J Cafarella: "Congestion Control for High-Bandwidth...."

    Congestion Control for High Bandwidth-Delay Product Networks
    Dina Katabi, Mark Handley, and Charlie Rohrs

    Summary: The XCP protocol is introduced as a substitute for TCP that
    allows for better congestion control through dynamic congestion status
    monitoring and adjustment. The paper separates efficiency control from
    fairness control, making the implementation more flexible.

    One key contribution of this paper is the separation of the congestion
    control mechanism (also called the Efficiency Controller (EC)) from the
    fairness control mechanism (FC). In TCP and many other network
    protocols, these two mechanisms are inseparably blended together. XCP
    separates the mechanisms, making their tasks clearer and easier to
    implement. It also allows changes in one mechanism without requiring
    changes in the other. For example, fairness control can be implemented
    as using either even or biased fairness.

    XCP improves the congestion control of TCP by using dynamic information
    about the RTT of packet flows, the number of messages in the input
    queues, and the available bandwidth to determine whether the link is
    over or under-utilized. The congestion measurement is a variable
    (rather than a boolean), so the different amounts of congestion can be
    dealt with appropriately before the link becomes excessively congested.

    The primary advantage that XCP seems to provide is a more rapid ramp-up
    to take advantage of available bandwidth. Whether initiating a
    connection or resuming a connection after it was slowed by congestion,
    XCP allows clients to gain bandwidth much more quickly than TCP. This
    is particularly important when dealing with short, bursty traffic that
    is characteristic of much of Internet traffic. XCP achieves this by
    allowing the congestion control mechanism to rapidly allocate
    bandwidth, and rely on the fairness control mechanism to ensure fair
    bandwidth allocation.

    The authors do not do a particularly good job explaining the advantages
    of XCP over Adaptive Virtual Queue (AVQ). The results do not seem to
    indicate that XCP has a strong advantage over AVQ in any metric other
    than bottleneck utilization, and actually does substantially worse in
    average queue size and packet loss in heavy, bursty traffic. The
    authors also state that XCP does not require dynamic status updates in
    order to work, but there is no reason to believe that the status
    updates required by AVQ are difficult to obtain, and thus there may not
    be much advantage in using static values. In the introduction, the
    authors claim that AVQ becomes unstable at high speeds, but they never
    substantiate the claim.

    The additional security of XCP touted by the authors is also
    significant, though incomplete. The explicit feedback of congestion
    parameters ensures that any router connected to a network node can test
    the compliance of that node to the congestion control mechanism.
    However, compliance with the congestion control mechanism does not
    exactly equate to increased security. XCP does not seem to solve
    network behavior associated with denial-of-service attacks.

    The authors also do not mention how the congestion control feedback
    would work for multicast or broadcast situations. It seems that XCP
    would have to revert to similar congestion control mechanisms as TCP
    for those situations.


  • Next message: Michael J Cafarella: "Congestion Control for High-Bandwidth...."

    This archive was generated by hypermail 2.1.6 : Mon Oct 18 2004 - 00:01:30 PDT