Re: [Ietf-behave] Two suggestions for BEHAVE document
On 14 Sep 2004, at 21:10, Dan Wing wrote:
On Thu, Sep 02, 2004 at 12:22:38PM -0400, Francois Audet wrote:
- I'd like to mandate that the port parity (even/odd) be respected
by the NAT when assigning UDP bindings. This is to respect
the RTP=even
and RTCP=odd rule. There is some very unfortunate wording in RFC
3550
section 11, second paragraph, which have caused some problematic
behavior in client. The wording can be interpreted as saying that
if a client receives an odd port for sending RTP, it SHOULD
change it to
next lower even number. This would obviously break
peer-to-peer media.
Isn't there also the requirement that RTP/RTCP are on two consecutive
port numbers?
Yes, the RTP specification requires this, but RFC3605 shows how the
actual RTCP port can be signaled. This is something we need to mention
in the RTP client specification (which, to my knowledge, nobody has
yet started, but I'm getting an itch here to start it).
The RTP specification says [RFC 3550, section 11]:
RTP relies on the underlying protocol(s) to provide demultiplexing of
RTP data and RTCP control streams. For UDP and similar protocols,
RTP SHOULD use an even destination port number and the corresponding
RTCP stream SHOULD use the next higher (odd) destination port number.
For applications that take a single port number as a parameter and
derive the RTP and RTCP port pair from that number, if an odd number
is supplied then the application SHOULD replace that number with the
next lower (even) number to use as the base of the port pair. For
applications in which the RTP and RTCP destination port numbers are
specified via explicit, separate parameters (using a signaling
protocol or other means), the application MAY disregard the
restrictions that the port numbers be even/odd and consecutive
although the use of an even/odd port pair is still encouraged. The
RTP and RTCP port numbers MUST NOT be the same since RTP relies on
the port numbers to demultiplex the RTP data and RTCP control
streams.
The relaxation on the port numbers when explicit signalling is used was
put in place to ease NAT traversal.
Colin