RFC 3605 (rfc3605) - Page 2 of 8
Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP)
Alternative Format: Original Text Document
RFC 3605 RTCP attribute in SDP October 2003
states that "other ports used by the media application (such as the
RTCP port) should be derived algorithmically from the base media
port." RTCP port numbers were necessarily derived from the base
media port in older versions of RTP (such as [RFC 1889]), but now that
this restriction has been lifted, there is a need to specify RTCP
ports explicitly in SDP. Note, however, that implementations of RTP
adhering to the earlier [RFC 1889] specification may not be able to
make use of the SDP attributes specified in this document.
When the NAT device performs port mapping, there is no guarantee that
the mappings of two separate ports reflects the sequencing and the
parity of the original port numbers; in fact, when the NAT manages a
pool of IP addresses, it is even possible that the RTP and the RTCP
ports may be mapped to different addresses. In order to successfully
establish connections despite the misordering of the port numbers and
the possible parity switches caused by the NAT, we propose to use a
specific SDP attribute to document the RTCP port and optionally the
RTCP address.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC 2119].
2. Description of the Solution
The main part of our solution is the declaration of an SDP attribute
for documenting the port used by RTCP.
2.1. The RTCP Attribute
The RTCP attribute is used to document the RTCP port used for media
stream, when that port is not the next higher (odd) port number
following the RTP port described in the media line. The RTCP
attribute is a "value" attribute, and follows the general syntax
specified page 18 of [RFC 2327]: "a=:". For the
RTCP attribute:
* the name is the ascii string "rtcp" (lower case),
* the value is the RTCP port number and optional address.
The formal description of the attribute is defined by the following
ABNF [RFC 2234] syntax:
rtcp-attribute = "a=rtcp:" port [nettype space addrtype space
connection-address] CRLF
Huitema Standards Track