Equation-Based Congestion Control for Unicast Applications

This webpage documents my presentation of "Equation-Based Congestion Control for Unicast Applications" by Sally Floyd, Mark Handley, Jitendra Padhye, and Joerg Widmer in SIGCOMM 2000 for CPSC 538A: Topics in Time-sensitive Distributed Systems, taught by Charles 'Buck' Krasic.

Presented on: January 24, 2005

Quick Links


Summary

TFRC is introduced based on the motivations that TCP congestion control itself may not appropriate for real-time applications (e.g. streaming multimedia). Real-time applications require a smooth transmission rate over relatively long period of time. For those applications, reliable data delivery is not necessary and reducing the sending rate by half in response to a single packet drop is undesirable. Where there are research efforts to combine UDP and Congestion Control for real time application, TCP is still a preferable choice if its congestion control mechanism can be improved. The goals of TCP-Friendly Rate Control (TFRC) are to be compatible with TCP congestion control for the sake of “fairness” and to sustain a smooth transmission rate by slowly adapting the congestion window.

 

In equation-based congestion control (ECC), the sender adheres to a control equation that models the steady state sending rate of TCP. In general, the maximum acceptable sending rate is inversely proportional to the TCP retransmit timeout value (tRTO) and the steady loss event rate (p). Over longer time periods, maintaining a sending rate that is a function of R and p. The receiver periodically reports the loss event rate back to the sender and the sender adjusts its sending rate up or down accordingly. The ECC helps to construct a TCP-compatible flow that, in steady state, uses no more bandwidth than a conformant TCP running under comparable conditions.

 

TFRC distinguishes data packets and feedback packets. Feedback packets should normally be sent at least once per roundtrip time or whenever a new loss event is detected. Retransmit timeout value tRTO­ is calculated based on a function of roundtrip time. The receiver calculates the loss event rate based on the Average Loss Interval Method (ALIM). The sending rate will be adjusted accordingly based on the value calculated from the control equation when sender receives the feedback packet.

 

TFRC slow-start procedure performs roughly as aggressive as TCP when the initial sending rate is set to 1 packet/sec. It is approximately doubled the sending rate each round-trip time until a loss event occurs. When the first loss event is detected, reduce the sending rate by half and on exiting slow-start, smoothly transition to ECC. 

Presentation Slides

The slides for my presentation (in .ppt format) can be found here.

Group Discussion points

Questions about the paper:

  • The approach to calculate the TCP sending rate based on the feedback from the receiver side (the loss event rate) at first seems to be controversial in networking research. Some argues that it is difficult to achieve smoothness in a very short interval of time (in ms), where there are some kinds of applications need smoothness at that granularity. It would worth to evaluate the TFRC in this case (which is not mentioned in the paper).
  • It would be a good idea to combine TFRC with some active queuing management using ECN since they seem complementary with each other.
  • How about comparing TFRC with non-TCP approach such as UDP+CC (Congestion Control) in term of smoothness.
  • The concern was raised that the complexity of the computational requirements placed on the sender and receiver in an equation-based congestion control scheme may be too heavy was raised.  In response to this, it was noted that the protocol presented in the paper was intended for use in such computationally intensive applications as streaming multimedia.  Clearly, the computation of equation-based congestion control parameters is not too much to expect from communication end-points capable of encoding and decoding video frames, for instance.
  • It was suggested that rather than replacing TCP with TFRC, an alternative approach may be to appropriately modify TCP’s AIMD mechanism so as to achieve a smoother sending rate.  It was pointed out that this alternative has been explored extensively.  Generalized AIMD was introduced as a framework for such modifications to TCP.

 

Discussion of future work:

  • Researching how the choice of control equation and parameters can be placed on a more rigorous foundation.  Some contend that control theory may be relevant in this regard (e.g. XCP).
  • Application of equation-based technique to multicast congestion control.
  • Explore performance of equation-based techniques in an environment with Explicit Congestion Notification (ECN).

 

Additional References

  • TCP Friendly Rate Control Protocol Specification”, IETF RFC 3448.
  • J. Padhye, Victor Firoiu, D. Towsley, and J. Kurose, “Modeling TCP Reno Performance: A Simple Model and Its Empirical Validation,” IEEE/ACM Trans on Networking, April 2000.
  • TCP Related Research (including TCP-friendly Rate Control): http://www.icir.org/floyd