RTP Media Congestion Avoidance Techniques
RTP Media Congestion Avoidance Techniques WG
||RTP Media Congestion Avoidance Techniques
||Charter Edit AD
||Send notices to
Today's Internet traffic includes interactive real-time media, which is
often carried via sets of flows using RTP over UDP. There is no generally
accepted congestion control mechanism for this kind of data flow. With the
deployment of applications using the RTCWEB protocol suite, the number of such
flows is likely to increase, especially non-fixed-rate flows such as video or
adaptive audio. There is therefore some urgency in specifying one or more
congestion control mechanisms that can find general acceptance.
Congestion control algorithms for interactive real time media may need to be
quite different from the congestion control of TCP: for example, some
applications can be more tolerant to loss than delay and jitter. The set of
requirements for such an algorithm includes, but is not limited to:
- Low delay and low jitter for the case where there is no competing traffic
- Reasonable share of bandwidth when competing with RMCAT traffic, other
real-time media protocols, and ideally also TCP and other protocols. A
'reasonable share' means that no flow has a significantly negative impact
[RFC5033] on other flows and at minimum that no flow starves.
- Effective use of signals like packet loss and ECN markings to adapt to
The working group will:
- Develop a clear understanding of the congestion control requirements for
flows, and document deficiencies of existing mechanisms such as TFRC with
regards to these requirements. This must be completed prior to finishing
any Experimental algorithm specifications.
- Identify interactions between applications and RTP flows to enable
helpful cross-layer information such as per-packet priorities, flow
elasticity, etc. This information might be used to populate an API, but
the WG will not define a specific API itself.
- Determine if extensions to RTP/RTCP are needed for carrying congestion
control feedback, using DCCP as a model. If so, provide the requirements
for such extensions to the AVTCORE working group for standardization
- Develop techniques to detect, instrument or diagnose failing to meet RT
schedules due to failures of components outside of the charter scope,
possibly in collaboration with IPPM.
- Develop a mechanism for identifying shared bottlenecks between groups of
flows, and means to flexibly allocate their rates within the aggregate
hitting the shared bottleneck.
- Define evaluation criteria for proposed congestion control mechanisms, and
publish these as an Informational RFC. This must be completed prior to
finishing any Proposed Standard algorithm specifications.
- Find or develop candidate congestion control algorithms, verify that
these can be
tested on the Internet without significant risk, and publish one or more
of these as Experimental RFCs.
- Publish evaluation criteria and the result of experimentation with these
Experimental algorithms on the Internet. This must be completed prior to
finishing any Proposed Standard algorithm specifications.
- Once an algorithm has been found or developed that meets the evaluation
criteria, and has a satisfactory amount of documented experience on the
Internet, publish this algorithm as a Standards Track RFC. There may be
more than one algorithm; in this case it will be one of the objects of the
experimentation to determine the applicabilities and relative merits of
- For each of the Experimental algorithms that have not been
selected for the Standards Track, the working group will review
the algorithm and determine whether there are significant flaws,
such as ones that turn out to be harmful to flows using or
competing with them. If so, the WG will write a document
describing the issues encountered and recommending to the IESG
to move the specification to Historic status.
The work will be guided by the advice laid out in RFC 5405 (UDP Usage
Guidelines), RFC 2914 (congestion control principles), and RFC5033 (Specifying
New Congestion Control Algorithms).
The following topics are out of scope of this working group, on the assumption
that work on them will proceed elsewhere:
- Circuit-breaker algorithms for stopping media flows when network
render them useless; this work is done in AVTCORE
- Media flows for non-interactive purposes like stored video playback;
those are not
as delay sensitive as interactive traffic
- Defining active queue management algorithms or modifications to TCP of any
- Multicast congestion control; common control of multiple unicast flows is
- Topologies other than point-to-point connections; implications on
connections will be considered at a later stage
The working group is expected to work closely with the RAI area, including the
underlying technologies being worked on in the AVTCORE and AVTEXT WGs, and
the applications/protocol suites being developed in the CLUE and RTCWEB working
groups. It will also coordinate closely with other Transport area groups
working on congestion control, and with the Internet Congestion Control
Research Group of the IRTF.
- Requirements for congestion control algorithms for interactive real time
an Informational RFC
- Evaluation criteria for congestion control algorithms for interactive
real time media
as an Informational RFC
- Requirements for RTCP extensions for use with congestion control
an input to the AVTCORE WG.
- Interactions between applications and RTP flows as an Informational RFC
- Identifying and controlling groups of flows as a Proposed Standard RFC
- Techniques to detect, instrument or diagnose failing to meet RT schedules
either an Informational RFC or on the Standards Track if needed for
interoperability or other aspects that would justify it.
- Candidate congestion control algorithm for interactive real time media as
Experimental RFCs (likely more than one)
- Experimentation and evaluation results for candidate congestion control
algorithms as an Informational RFC
- One or more recommended congestion control algorithms for interactive
media as Proposed Standard RFCs