draft-ietf-avtcore-cc-feedback-message-02.txt   draft-ietf-avtcore-cc-feedback-message-03.txt 
IETF RMCAT Working Group Z. Sarker IETF RMCAT Working Group Z. Sarker
Internet-Draft Ericsson AB Internet-Draft Ericsson AB
Intended status: Standards Track C. Perkins Intended status: Standards Track C. Perkins
Expires: January 16, 2019 University of Glasgow Expires: June 26, 2019 University of Glasgow
V. Singh V. Singh
callstats.io callstats.io
M. Ramalho M. Ramalho
Cisco Systems Cisco Systems
July 15, 2018 December 23, 2018
RTP Control Protocol (RTCP) Feedback for Congestion Control RTP Control Protocol (RTCP) Feedback for Congestion Control
draft-ietf-avtcore-cc-feedback-message-02 draft-ietf-avtcore-cc-feedback-message-03
Abstract Abstract
This document describes an RTCP feedback message intended to enable This document describes an RTCP feedback message intended to enable
congestion control for interactive real-time traffic using RTP. The congestion control for interactive real-time traffic using RTP. The
feedback message is designed for use with a sender-based congestion feedback message is designed for use with a sender-based congestion
control algorithm, in which the receiver of an RTP flow sends RTCP control algorithm, in which the receiver of an RTP flow sends RTCP
feedback packets to the sender containing the information the sender feedback packets to the sender containing the information the sender
needs to perform congestion control. needs to perform congestion control.
skipping to change at page 1, line 40 skipping to change at page 1, line 40
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 16, 2019. This Internet-Draft will expire on June 26, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 19 skipping to change at page 2, line 19
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. RTCP Feedback for Congestion Control . . . . . . . . . . . . 3 3. RTCP Feedback for Congestion Control . . . . . . . . . . . . 3
3.1. RTCP Congestion Control Feedback Report . . . . . . . . . 4 3.1. RTCP Congestion Control Feedback Report . . . . . . . . . 4
4. Feedback Frequency and Overhead . . . . . . . . . . . . . . . 6 4. Feedback Frequency and Overhead . . . . . . . . . . . . . . . 6
5. SDP Signalling . . . . . . . . . . . . . . . . . . . . . . . 7 5. SDP Signalling . . . . . . . . . . . . . . . . . . . . . . . 7
6. Design Rationale . . . . . . . . . . . . . . . . . . . . . . 7 6. Relation to RFC 6679 . . . . . . . . . . . . . . . . . . . . 7
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 7. Design Rationale . . . . . . . . . . . . . . . . . . . . . . 8
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
9. Security Considerations . . . . . . . . . . . . . . . . . . . 9 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 10. Security Considerations . . . . . . . . . . . . . . . . . . . 9
10.1. Normative References . . . . . . . . . . . . . . . . . . 9 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 10
10.2. Informative References . . . . . . . . . . . . . . . . . 11 11.1. Normative References . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 11.2. Informative References . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12
1. Introduction 1. Introduction
For interactive real-time traffic, such as video conferencing flows, For interactive real-time traffic, such as video conferencing flows,
the typical protocol choice is the Real-time Transport Protocol (RTP) the typical protocol choice is the Real-time Transport Protocol (RTP)
running over the User Datagram Protocol (UDP). RTP does not provide running over the User Datagram Protocol (UDP). RTP does not provide
any guarantee of Quality of Service (QoS), reliability, or timely any guarantee of Quality of Service (QoS), reliability, or timely
delivery, and expects the underlying transport protocol to do so. delivery, and expects the underlying transport protocol to do so.
UDP alone certainly does not meet that expectation. However, the RTP UDP alone certainly does not meet that expectation. However, the RTP
Control Protocol (RTCP) provides a mechanism by which the receiver of Control Protocol (RTCP) provides a mechanism by which the receiver of
skipping to change at page 4, line 31 skipping to change at page 4, line 32
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P| FMT=CCFB | PT = 205 | length | |V=2|P| FMT=CCFB | PT = 205 | length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of RTCP packet sender | | SSRC of RTCP packet sender |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of 1st RTP Stream | | SSRC of 1st RTP Stream |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| begin_seq | end_seq+1 | | begin_seq | num_reports |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|L|ECN| Arrival time offset | ... . |L|ECN| Arrival time offset | ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . .
. . . .
. . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of nth RTP Stream | | SSRC of nth RTP Stream |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| begin_seq | end_seq+1 | | begin_seq | num_reports |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|L|ECN| Arrival time offset | ... | |L|ECN| Arrival time offset | ... |
. . . .
. . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Report Timestamp (32bits) | | Report Timestamp (32bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: RTCP Congestion Control Feedback Packet Format Figure 1: RTCP Congestion Control Feedback Packet Format
skipping to change at page 5, line 19 skipping to change at page 5, line 19
above diagram with the IANA assigned RTCP feedback packet type, and above diagram with the IANA assigned RTCP feedback packet type, and
remove this note) remove this note)
Section 6.1 of [RFC4585] requires the RTCP header to be followed by Section 6.1 of [RFC4585] requires the RTCP header to be followed by
the SSRC of the RTP flow being reported upon. Accordingly, the RTCP the SSRC of the RTP flow being reported upon. Accordingly, the RTCP
header is followed by a report block for each SSRC from which RTP header is followed by a report block for each SSRC from which RTP
packets have been received, followed by a Report Timestamp. packets have been received, followed by a Report Timestamp.
Each report block begins with the SSRC of the received RTP Stream on Each report block begins with the SSRC of the received RTP Stream on
which it is reporting. Following this, the report block contains a which it is reporting. Following this, the report block contains a
16-bit packet metric block for each RTP packet with sequence number, 16-bit packet metric block for each RTP packet with sequence number
seq, in the range begin_seq <= seq < end_seq+1 (calculated using in the range begin_seq to begin_seq+num_reports inclusive (calculated
arithmetic modulo 65535 to account for possible sequence number wrap- using arithmetic modulo 65536 to account for possible sequence number
around). If the number of 16-bit packet metric blocks included in wrap-around). If the number of 16-bit packet metric blocks included
the report block is not a multiple of two, then 16 bits of zero in the report block is not a multiple of two, then 16 bits of zero
padding MUST be added after the last packet metric block, to align padding MUST be added after the last packet metric block, to align
the end of the packet metric blocks with the next 32 bit boundary. the end of the packet metric blocks with the next 32 bit boundary.
Each report block MUST NOT include more than 16384 packet metric The value of num_reports MAY be zero, indicating that there are no
blocks (i.e., it MUST NOT report on more than one quarter of the packet metric blocks included for that SSRC. Each report block MUST
sequence number space in a single report). NOT include more than 16384 packet metric blocks (i.e., it MUST NOT
report on more than one quarter of the sequence number space in a
single report).
The contents of each 16-bit packet metric block comprises the L, ECN, The contents of each 16-bit packet metric block comprises the L, ECN,
and ATO fields are as follows: and ATO fields are as follows:
o L (1 bit): is a boolean to indicate if the packet was received. 0 o L (1 bit): is a boolean to indicate if the packet was received. 0
represents that the packet was not yet received and all the represents that the packet was not yet received and all the
subsequent bits (ECN and ATO) are also set to 0. 1 represent the subsequent bits (ECN and ATO) are also set to 0. 1 represent the
packet was received and the subsequent bits in the block need to packet was received and the subsequent bits in the block need to
be parsed. be parsed.
o ECN (2 bits): is the echoed ECN mark of the packet. These are set o ECN (2 bits): is the echoed ECN mark of the packet. These are set
to 00 if not received, or if ECN is not used. to 00 if not received, or if ECN is not used.
o Arrival time offset (ATO, 13 bits): is the arrival time of the RTP o Arrival time offset (ATO, 13 bits): is the arrival time of the RTP
packet at the receiver. It is measured as an offset from the time packet at the receiver, as an offset before the time represented
at which the RTCP congestion control feedback report packet is by the RTS field of this RTCP congestion control feedback report.
sent. The arrival time offset is calculated by subtracting the The ATO field is in units of 1/1024 seconds (this unit is chosen
reception time of the RTP packet denoted by this 16 bit packet to give exact offsets from the RTS field) so, for example, an ATO
metric block from the Report Timestamp (RTS) field of the RTCP value of 512 indicates that the corresponding RTP packet arrived
congestion control feedback report packet in which the packet exactly half a second before the time instant represented by the
metric report block is contained. The arrival time offset is RTS field. If the measured value is greater than 8189/1024
measured in units of 1/1024 seconds (this unit is chosen to give seconds (the value that would be coded as 0x1FFD), the value
exact offsets from the RTS field). If the measured value is 0x1FFE MUST be reported to indicate an over-range measurement. If
greater than 8189/1024 seconds (the value that would be coded as the measurement is unavailable, or if the arrival time of the RTP
0x1FFD), the value 0x1FFE MUST be reported to indicate an over- packet is after the time represented by the RTS field, then an ATO
range positive measurement. If the measurement is unavailable, value of 0x1FFF MUST be reported for the packet.
the value 0x1FFF MUST be reported.
The RTCP congestion control feedback report packet concludes with the The RTCP congestion control feedback report packet concludes with the
Report Timestamp field (RTS, 32 bits). This represents the time Report Timestamp field (RTS, 32 bits). This denotes the time instant
instant when the report packet was generated. The value of RTS field on which this packet is reporting, and is the instant from which the
is derived from the same wallclock used to generate the NTP timestamp arrival time offset values are calculated. The value of RTS field is
field in RTCP Sender Report (SR) packets. It is formatted as the derived from the same clock used to generate the NTP timestamp field
middle 32 bits of an NTP format timestamp, as described in Section 4 in RTCP Sender Report (SR) packets. It is formatted as the middle 32
of [RFC3550]. bits of an NTP format timestamp, as described in Section 4 of
[RFC3550].
RTCP congestion control feedback packets SHOULD include a report RTCP congestion control feedback packets SHOULD include a report
block for each SSRC that is being congestion controlled. The block for every active SSRC. The sequence number ranges reported on
sequence number ranges reported on in consecutive reports for an SSRC in consecutive reports for a given SSRC will generally be contiguous,
SHOULD be consecutive and SHOULD NOT overlap (i.e., begin_seq for a but overlapping reports MAY be sent (and need to be sent in cases
report is expected to be one greater, modulo 65535, than end_seq of where RTP packet reordering occurs across the boundary between
the previous report for that SSRC). If overlapping reports are sent, consecutive reports). If reports covering overlapping sequence
the information in the later report updates that in any previous number ranges are sent, information in later reports updates that in
reports for packets included in both reports (although note that such sent previous reports for RTP packets included in both reports. If
updated information will likely arrive too late to affect congestion an RTP packet was reported as received in one report, that packet
control decisions at the sender). Reports that cover RTP sequence MUST also be reported as received in any overlapping reports sent
number ranges that are more than 16384 (i.e., one quarter of the later that cover its sequence number range.
sequence number space) ahead of the last end_seq received from an
SSRC, or behind the last begin_seq received from an SSRC, modulo If duplicate copies of a particular RTP packet are received, then the
65535 to account for wrap-around, SHOULD be ignored. An exception to arrival time of the first copy to arrive MUST be reported. If any of
this occurs if sender has sent RTP packets using more than one the copies of the duplicated packet are ECN-CE marked, then an ECN-CE
quarter of the sequence number space since it last received an RTCP mark MUST be reported that for packet; otherwise the ECN mark of the
congestion control feedback packet, then a report on recently sent first copy to arrive is reported.
RTP packets ought to be accepted, to allow recovery from report
packet loss.
If no packets are received from an SSRC in a reporting interval, a If no packets are received from an SSRC in a reporting interval, a
report block MAY be sent with begin_seq and end_seq+1 both set to the report block MAY be sent with begin_seq set to the highest sequence
highest sequence number previously received from that SSRC (or, the number previously received from that SSRC and num_reports set to zero
report can simply to omitted). The corresponding SR/RR packet will (or, the report can simply to omitted). The corresponding SR/RR
have a non-increased extended highest sequence number received field packet will have a non-increased extended highest sequence number
that will inform the sender that no packets have been received, but received field that will inform the sender that no packets have been
it can ease processing to have that information available in the received, but it can ease processing to have that information
congestion control feedback reports too. available in the congestion control feedback reports too.
4. Feedback Frequency and Overhead 4. Feedback Frequency and Overhead
There is a trade-off between speed and accuracy of reporting, and the There is a trade-off between speed and accuracy of reporting, and the
overhead of the reports. [I-D.ietf-rmcat-rtp-cc-feedback] discusses overhead of the reports. [I-D.ietf-rmcat-rtp-cc-feedback] discusses
this trade-off, suggests desirable RTCP feedback rates, and provides this trade-off, suggests desirable RTCP feedback rates, and provides
guidance on how to configure the RTCP bandwidth fraction, etc., to guidance on how to configure the RTCP bandwidth fraction, etc., to
make appropriate use of the reporting block described in this memo. make appropriate use of the reporting block described in this memo.
Specifications for RTP congestion control algorithms can also provide Specifications for RTP congestion control algorithms can also provide
skipping to change at page 7, line 26 skipping to change at page 7, line 26
higher frequency of feedback is desired it is not viable if the higher frequency of feedback is desired it is not viable if the
feedback messages starts to compete against the RTP traffic on the feedback messages starts to compete against the RTP traffic on the
feedback path during congestion period. Analyzing the feedback feedback path during congestion period. Analyzing the feedback
interval requirement [feedback-requirements] it can be seen that the interval requirement [feedback-requirements] it can be seen that the
candidate algorithms can perform with a feedback interval range of candidate algorithms can perform with a feedback interval range of
50-200ms. A value within this range need to be negotiated at session 50-200ms. A value within this range need to be negotiated at session
setup. setup.
5. SDP Signalling 5. SDP Signalling
A new "ack" feedback parameter, "ccfb", is defined to indicate the A new "ack" feedback parameter, "ccfb", is defined for use with the
use of the RTP Congestion Control feedback packet format defined in "a=rtcp-fb:" SDP extension to indicate the use of the RTP Congestion
Section 3. The ABNF definition of this SDP parameter extension is: Control feedback packet format defined in Section 3. The ABNF
definition of this SDP parameter extension is:
rtcp-fb-ack-param = <See Section 4.2 of [RFC4584]> rtcp-fb-ack-param = <See Section 4.2 of [RFC4585]>
rtcp-fb-ack-param =/ ccfb-par rtcp-fb-ack-param =/ ccfb-par
ccfb-par = SP "ccfb" ccfb-par = SP "ccfb"
The offer/answer rules for these SDP feedback parameters are The offer/answer rules for these SDP feedback parameters are
specified in the RTP/AVPF profile [RFC4585]. specified in Section 4.2 of the RTP/AVPF profile [RFC4585]. When
used with "ccfb" feedback, the wildcard payload type ("*") MUST be
used.
6. Design Rationale 6. Relation to RFC 6679
Use of Explicit Congestion Notification (ECN) with RTP is described
in [RFC6679]. That specifies how to negotiate the use of ECN with
RTP, and defines an RTCP ECN Feedback Packet to carry ECN feedback
reports. It uses an SDP "a=ecn-capaable-rtp:" attribute to negotiate
use of ECN, and the "a=rtcp-fb:" attributes with the "nack" parameter
"ecn" to negotiate the use of RTCP ECN Feedback Packets.
The RTCP ECN Feedback Packet is not useful when ECN is used with the
RTP Congestion Control Feedback Packet defined in this memo since it
provides duplicate information. Accordingly, when congestion control
feedback is to be used with RTP and ECN, the SDP offer generated MUST
include an "a=ecn-capable-rtp:" attribute to negotiate ECN support,
along with an "a=rtcp-fb:" attribute with the "ack" parameter "ccfb"
to indicate that the RTP Congestion Control Feedback Packet is to be
used for feedback. The "a=rtcp-fb:" attribute MUST NOT include the
"nack" parameter "ecn", so the RTCP ECN Feedback Packet will not be
used.
7. Design Rationale
The primary function of RTCP SR/RR packets is to report statistics on The primary function of RTCP SR/RR packets is to report statistics on
the reception of RTP packets. The reception report blocks sent in the reception of RTP packets. The reception report blocks sent in
these packets contain information about observed jitter, fractional these packets contain information about observed jitter, fractional
packet loss, and cumulative packet loss. It was intended that this packet loss, and cumulative packet loss. It was intended that this
information could be used to support congestion control algorithms, information could be used to support congestion control algorithms,
but experience has shown that it is not sufficient for that purpose. but experience has shown that it is not sufficient for that purpose.
An efficient congestion control algorithm requires more fine grained An efficient congestion control algorithm requires more fine grained
information on per packet reception quality than is provided by SR/RR information on per packet reception quality than is provided by SR/RR
packets to react effectively. packets to react effectively.
skipping to change at page 8, line 32 skipping to change at page 9, line 7
time, and ECN marking marking information needed for effective time, and ECN marking marking information needed for effective
sender-based congestion control. However, the result has high sender-based congestion control. However, the result has high
overhead both in terms of bandwidth and complexity, due to the need overhead both in terms of bandwidth and complexity, due to the need
to stack multiple reports. to stack multiple reports.
Considering these issues, we believe it appropriate to design a new Considering these issues, we believe it appropriate to design a new
RTCP feedback mechanism to convey information for sender based RTCP feedback mechanism to convey information for sender based
congestion control algorithms. The new congestion control feedback congestion control algorithms. The new congestion control feedback
RTCP packet described in Section 3 provides such a mechanism. RTCP packet described in Section 3 provides such a mechanism.
7. Acknowledgements 8. Acknowledgements
This document is an outcome of RMCAT design team discussion. We This document is based on the outcome of a design team discussion in
would like to thank all participants specially Sergio Mena, Xiaoquing the RTP Media Congestion Avoidance Techniques (RMCAT) working group.
Zhu, Stefan Holmer, David, Ingemar Johansson, Randell Jesup, Ingemar The authors would like to thank David Hayes, Stefan Holmer, Randell
Johansson, and Magnus Westerlund for their valuable contribution to Jesup, Ingemar Johansson, Jonathan Lennox, Sergio Mena, Nils
the discussions and to the document. Ohlmeier, Magnus Westerlund, and Xiaoqing Zhu for their valuable
feedback.
8. IANA Considerations 9. IANA Considerations
The IANA is requested to register one new RTP/AVPF Transport-Layer The IANA is requested to register one new RTP/AVPF Transport-Layer
Feedback Message in the table for FMT values for RTPFB Payload Types Feedback Message in the table for FMT values for RTPFB Payload Types
[RFC4585] as defined in Section 3.1: [RFC4585] as defined in Section 3.1:
Name: CCFB Name: CCFB
Long name: RTP Congestion Control Feedback Long name: RTP Congestion Control Feedback
Value: (to be assigned by IANA) Value: (to be assigned by IANA)
Reference: (RFC number of this document, when published) Reference: (RFC number of this document, when published)
The IANA is also requested to register one new SDP "rtcp-fb" The IANA is also requested to register one new SDP "rtcp-fb"
attribute "ack" parameter, "ccfb", in the SDP ("ack" and "nack" attribute "ack" parameter, "ccfb", in the SDP ("ack" and "nack"
Attribute Values) registry: Attribute Values) registry:
Value name: ccfb Value name: ccfb
Long name: Congestion Control Feedback Long name: Congestion Control Feedback
Usable with: ack Usable with: ack
Reference: (RFC number of this document, when published) Reference: (RFC number of this document, when published)
9. Security Considerations 10. Security Considerations
The security considerations of the RTP specification [RFC3550], the The security considerations of the RTP specification [RFC3550], the
applicable RTP profile (e.g., [RFC3551], [RFC3711], or [RFC4585]), applicable RTP profile (e.g., [RFC3551], [RFC3711], or [RFC4585]),
and the RTP congestion control algorithm that is in use (e.g., and the RTP congestion control algorithm that is in use (e.g.,
[I-D.ietf-rmcat-nada], [RFC8298], [I-D.ietf-rmcat-gcc], or [RFC8382]) [I-D.ietf-rmcat-nada], [RFC8298], [I-D.ietf-rmcat-gcc], or [RFC8382])
apply. apply.
A receiver that intentionally generates inaccurate RTCP congestion A receiver that intentionally generates inaccurate RTCP congestion
control feedback reports might be able trick the sender into sending control feedback reports might be able trick the sender into sending
at a greater rate than the path can support, thereby congesting the at a greater rate than the path can support, thereby congesting the
skipping to change at page 9, line 37 skipping to change at page 10, line 11
intentionally leave a gap in the RTP sequence number space without intentionally leave a gap in the RTP sequence number space without
causing harm, to check that the receiver is correctly reporting causing harm, to check that the receiver is correctly reporting
losses. losses.
An on-path attacker that can modify RTCP congestion control feedback An on-path attacker that can modify RTCP congestion control feedback
packets can change the reports to trick the sender into sending at packets can change the reports to trick the sender into sending at
either an excessively high or excessively low rate, leading to denial either an excessively high or excessively low rate, leading to denial
of service. The secure RTCP profile [RFC3711] can be used to of service. The secure RTCP profile [RFC3711] can be used to
authenticate RTCP packets to protect against this attack. authenticate RTCP packets to protect against this attack.
10. References 11. References
10.1. Normative References 11.1. Normative References
[I-D.ietf-rmcat-rtp-cc-feedback] [I-D.ietf-rmcat-rtp-cc-feedback]
Perkins, C., "RTP Control Protocol (RTCP) Feedback for Perkins, C., "RTP Control Protocol (RTCP) Feedback for
Congestion Control in Interactive Multimedia Conferences", Congestion Control in Interactive Multimedia Conferences",
draft-ietf-rmcat-rtp-cc-feedback-03 (work in progress), draft-ietf-rmcat-rtp-cc-feedback-04 (work in progress),
November 2016. July 2018.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, <https://www.rfc- DOI 10.17487/RFC2119, March 1997, <https://www.rfc-
editor.org/info/rfc2119>. editor.org/info/rfc2119>.
[RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition [RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
of Explicit Congestion Notification (ECN) to IP", of Explicit Congestion Notification (ECN) to IP",
RFC 3168, DOI 10.17487/RFC3168, September 2001, RFC 3168, DOI 10.17487/RFC3168, September 2001,
<https://www.rfc-editor.org/info/rfc3168>. <https://www.rfc-editor.org/info/rfc3168>.
skipping to change at page 11, line 5 skipping to change at page 11, line 26
[RFC5506] Johansson, I. and M. Westerlund, "Support for Reduced-Size [RFC5506] Johansson, I. and M. Westerlund, "Support for Reduced-Size
Real-Time Transport Control Protocol (RTCP): Opportunities Real-Time Transport Control Protocol (RTCP): Opportunities
and Consequences", RFC 5506, DOI 10.17487/RFC5506, April and Consequences", RFC 5506, DOI 10.17487/RFC5506, April
2009, <https://www.rfc-editor.org/info/rfc5506>. 2009, <https://www.rfc-editor.org/info/rfc5506>.
[RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P., [RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P.,
and K. Carlberg, "Explicit Congestion Notification (ECN) and K. Carlberg, "Explicit Congestion Notification (ECN)
for RTP over UDP", RFC 6679, DOI 10.17487/RFC6679, August for RTP over UDP", RFC 6679, DOI 10.17487/RFC6679, August
2012, <https://www.rfc-editor.org/info/rfc6679>. 2012, <https://www.rfc-editor.org/info/rfc6679>.
10.2. Informative References 11.2. Informative References
[feedback-requirements] [feedback-requirements]
"RMCAT Feedback Requirements", "RMCAT Feedback Requirements",
<://www.ietf.org/proceedings/95/slides/slides-95-rmcat- <://www.ietf.org/proceedings/95/slides/slides-95-rmcat-
1.pdf>. 1.pdf>.
[I-D.ietf-rmcat-gcc] [I-D.ietf-rmcat-gcc]
Holmer, S., Lundin, H., Carlucci, G., Cicco, L., and S. Holmer, S., Lundin, H., Carlucci, G., Cicco, L., and S.
Mascolo, "A Google Congestion Control Algorithm for Real- Mascolo, "A Google Congestion Control Algorithm for Real-
Time Communication", draft-ietf-rmcat-gcc-02 (work in Time Communication", draft-ietf-rmcat-gcc-02 (work in
progress), July 2016. progress), July 2016.
[I-D.ietf-rmcat-nada] [I-D.ietf-rmcat-nada]
Zhu, X., Pan, R., Ramalho, M., Cruz, S., Jones, P., Fu, Zhu, X., *, R., Ramalho, M., Cruz, S., Jones, P., Fu, J.,
J., and S. D'Aronco, "NADA: A Unified Congestion Control and S. D'Aronco, "NADA: A Unified Congestion Control
Scheme for Real-Time Media", draft-ietf-rmcat-nada-04 Scheme for Real-Time Media", draft-ietf-rmcat-nada-09
(work in progress), March 2017. (work in progress), August 2018.
[RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman, [RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman,
"Codec Control Messages in the RTP Audio-Visual Profile "Codec Control Messages in the RTP Audio-Visual Profile
with Feedback (AVPF)", RFC 5104, DOI 10.17487/RFC5104, with Feedback (AVPF)", RFC 5104, DOI 10.17487/RFC5104,
February 2008, <https://www.rfc-editor.org/info/rfc5104>. February 2008, <https://www.rfc-editor.org/info/rfc5104>.
[RFC6843] Clark, A., Gross, K., and Q. Wu, "RTP Control Protocol [RFC6843] Clark, A., Gross, K., and Q. Wu, "RTP Control Protocol
(RTCP) Extended Report (XR) Block for Delay Metric (RTCP) Extended Report (XR) Block for Delay Metric
Reporting", RFC 6843, DOI 10.17487/RFC6843, January 2013, Reporting", RFC 6843, DOI 10.17487/RFC6843, January 2013,
<https://www.rfc-editor.org/info/rfc6843>. <https://www.rfc-editor.org/info/rfc6843>.
 End of changes. 26 change blocks. 
89 lines changed or deleted 114 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/