Typically RTP will be sent on an even-numbered UDP port, with RTCP messages being sent over the next higher odd-numbered port.1
RTCP itself does not provide any flow encryption or authentication methods. Such mechanisms may be implemented, for example, with the Secure Real-time Transport Protocol (SRTP)2
RTCP provides basic functions expected to be implemented in all RTP sessions:
RTCP reports are expected to be sent by all participants, even in a multicast session which may involve thousands of recipients. Such traffic will increase proportionally with the number of participants. Thus, to avoid network congestion, the protocol must include session bandwidth management. This is achieved by dynamically controlling the frequency of report transmissions. RTCP bandwidth usage should generally not exceed 5% of the total session bandwidth. Furthermore, 25% of the RTCP bandwidth should be reserved to media sources at all times, so that in large conferences new participants can receive the CNAME identifiers of the senders without excessive delay.
The RTCP reporting interval is randomized to prevent unintended synchronization of reporting. The recommended minimum RTCP report interval per station is 5 seconds. Stations should not transmit RTCP reports more often than once every 5 seconds.
Note that multiple reports can be concatenated into a single compound RTCP packet, each with its own packet header.
RTCP distinguishes several types of packets: sender report, receiver report, source description, and goodbye. In addition, the protocol is extensible and allows application-specific RTCP packets. A standards-based extension of RTCP is the extended report packet type.4
In large-scale applications, such as in Internet Protocol television (IPTV), very long delays (minutes to hours) between RTCP reports may occur, because of the RTCP bandwidth control mechanism required to control congestion (see Protocol functions). Acceptable frequencies are usually less than one per minute. This affords the potential of inappropriate reporting of the relevant statistics by the receiver or causes evaluation by the media sender to be inaccurate relative to the current state of the session. Methods have been introduced to alleviate the problems:6 RTCP filtering, RTCP biasing and hierarchical aggregation.7
The Hierarchical Aggregation (or also known as RTCP feedback hierarchy) is an optimization of the RTCP feedback model and its aim is to shift the maximum number of users limit further together with quality of service (QoS) measurement.89 The RTCP bandwidth is constant and takes just 5% of session bandwidth. Therefore, the reporting interval about QoS depends, among others, on a number of session members and for very large sessions it can become very high (minutes or even hours).10 However, the acceptable interval is about 10 seconds of reporting. Bigger values would cause time-shifted and very inaccurate reported status about the current session status and any optimization made by the sender could even have a negative effect on network or QoS conditions.
The Hierarchical Aggregation is used with Source-Specific Multicast where only a single source is allowed, i.e. IPTV. Another type of multicast could be Any-Source Multicast but it is not so suitable for large-scale applications with huge number of users.
As of June 2007[update], only the most modern IPTV systems use Hierarchical aggregation.
Feedback Target is a new type of member that has been firstly introduced by the Internet Draft draft-ietf-avt-rtcpssm-13.11 The Hierarchical Aggregation method has extended its functionality. The function of this member is to receive Receiver Reports (RR) (see RTCP) and retransmit summarized RR packets, so-called Receiver Summary Information (RSI)12 to a sender (in case of single-level hierarchy).
C. Huitema (October 2003). Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP). Network Working Group. doi:10.17487/RFC3605. RFC 3605. Proposed Standard. /wiki/Christian_Huitema ↩
M. Baugher; D. McGrew; M. Naslund; E. Carrara; K. Norrman (March 2004). The Secure Real-time Transport Protocol (SRTP). Network Working Group. doi:10.17487/RFC3711. RFC 3711. Informational. Updated by RFC 9335, 5506 and 6904. https://datatracker.ietf.org/doc/html/rfc3711 ↩
H. Schulzrinne; S. Casner; R. Frederick; V. Jacobson (July 2003). RTP: A Transport Protocol for Real-Time Applications. Network Working Group. doi:10.17487/RFC3550. STD 64. RFC 3550. Internet Standard 64. Updated by RFC 8860, 7160, 5761, 5506, 6051, 6222, 7022, 7164 and 8083. Obsoletes RFC 1889. /wiki/Van_Jacobson ↩
T. Friedman; R. Caceres; A. Clark, eds. (November 2003). RTP Control Protocol Extended Reports (RTCP XR). Network Working Group. doi:10.17487/RFC3611. RFC 3611. Proposed Standard. https://datatracker.ietf.org/doc/html/rfc3611 ↩
Vít Novotný, Dan Komosný, Large-Scale RTCP Feedback Optimization, Journal of Networks, Vol.3 (3), March 2008 ↩
Realtime control protocol and its improvements for Internet Protocol Television http://www.academypublisher.com/jnw/vol03/no03/jnw03030110.pdf ↩
KOMOSNY D., NOVOTNY V. Tree Structure for Specific-Source Multicast with feedback Aggregation, in ICN07 - The Sixth International Conference on Networking . Martinique, 2007 ISBN 0-7695-2805-8 https://web.archive.org/web/20070509035431/http://adela.utko.feec.vutbr.cz/projects/publications/#2 ↩
NOVOTNY, V., KOMOSNY, D. Optimization of Large-Scale RTCP Feedback Reporting in ICWMC 2007. ICWMC 2007 - The Third International Conference on Wireless and Mobile Communications. Guadeloupe, 2007 ISBN 0-7695-2796-5 https://web.archive.org/web/20070509035431/http://adela.utko.feec.vutbr.cz/projects/publications/#2 ↩
J. Ott; J. Chesterfield; E. Schooler (February 2010). RTCP Extensions for Single-Source Multicast Sessions with Unicast Feedback. Internet Engineering Task Force. doi:10.17487/RFC5760. RFC 5760. Proposed Standard. Updated by RFC 6128. https://datatracker.ietf.org/doc/html/rfc5760 ↩