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