RE: [AVT] RE: [Ietf-behave] RTP in draft-ietf-behave-nat-00

"Dan Wing" <dwing@cisco.com> Thu, 11 November 2004 15:40 UTC

Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA23884 for <avt-archive@ietf.org>; Thu, 11 Nov 2004 10:40:33 -0500 (EST)
Received: from megatron.ietf.org ([132.151.6.71]) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CSH52-00055x-Nq for avt-archive@ietf.org; Thu, 11 Nov 2004 10:41:49 -0500
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CSH2C-0001GU-7Q; Thu, 11 Nov 2004 10:38:52 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CSGvk-0008Bg-TR for avt@megatron.ietf.org; Thu, 11 Nov 2004 10:32:13 -0500
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA22822 for <avt@ietf.org>; Thu, 11 Nov 2004 10:32:11 -0500 (EST)
Received: from sj-iport-2-in.cisco.com ([171.71.176.71] helo=sj-iport-2.cisco.com) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CSGwu-0004rc-H1 for avt@ietf.org; Thu, 11 Nov 2004 10:33:26 -0500
Received: from sj-core-1.cisco.com (171.71.177.237) by sj-iport-2.cisco.com with ESMTP; 11 Nov 2004 07:43:40 -0800
Received: from edison.cisco.com (edison.cisco.com [171.71.180.109]) by sj-core-1.cisco.com (8.12.10/8.12.6) with ESMTP id iABFVaom027157; Thu, 11 Nov 2004 07:31:36 -0800 (PST)
Received: from DWINGW2K4 (sjc-vpn1-807.cisco.com [10.21.99.39]) by edison.cisco.com (8.8.6 (PHNE_14041)/CISCO.SERVER.1.2) with SMTP id HAA11306; Thu, 11 Nov 2004 07:31:35 -0800 (PST)
From: Dan Wing <dwing@cisco.com>
To: Randell Jesup <rjesup@wgate.com>
Subject: RE: [AVT] RE: [Ietf-behave] RTP in draft-ietf-behave-nat-00
Date: Thu, 11 Nov 2004 07:31:34 -0800
Keywords: dwing_to_me
Message-ID: <LIECKHBKICJFBLOMPHNMEEOFNLAA.dwing@cisco.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0)
In-Reply-To: <ybu654ds5mj.fsf@jesup.eng.tvol.net.jesup.eng.tvol.net>
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1441
Importance: Normal
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 00e94c813bef7832af255170dca19e36
Content-Transfer-Encoding: 7bit
Cc: fluffy@cisco.com, ietf-behave@list.sipfoundry.org, Stephen Casner <casner@acm.org>, AVT WG <avt@ietf.org>, Francois Audet <audet@nortelnetworks.com>
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Audio/Video Transport Working Group <avt.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
Sender: avt-bounces@ietf.org
Errors-To: avt-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d185fa790257f526fedfd5d01ed9c976
Content-Transfer-Encoding: 7bit

Randell Jesup:

> "Dan Wing" <dwing@cisco.com> writes:
> >To your first point, I believe we resolved this, in a positive
> way, on the
> >list; -00 doesn't yet reflect those changes.  We decided to require NATs
> >to preserve even and odd port numbers when they create their UDP
> bindings,
> >as this provides the best interoperability for RTP applications that
> >don't/can't provide explicit signaling of their RTCP port.
>
>         Ummm...
>
>         And how will you "require" NATs to do this?  This would mean that
> all NATs would need to map all UDP traffic to the same oddness
> (even->even,
> odd->odd).  While sure, the NAT vendors _could_ write code this
> way (though
> it may well break some current NAT-traversal code that tries to do
> predictive mapping), there are millions of NATs out there that will never
> implement this, and nothing to force new releases to do so.
>
>         The even/odd port thing was (IMHO) a Bad Idea (in hindsight), I
> assume meant to avoid having to figure out how to signal the
> number for the
> second port - and even for that even/odd wasn't really needed, all you
> needed was contiguous.  Other TCP/UDP protocols don't do these sorts of
> things with port numbers (even/odd, or implied relationships between port
> numbers) - it's much better to actually signal the ports to be used.
>
>         We shouldn't compound it by "requiring" NATs maintain oddness
> (after the horse is not only out of the barn, but 12 miles down the road).
> We're apparently trying to avoid breaking "RTP applications that
> don't/can't provide explicit signaling of their RTCP port" by putting a
> requirement on NATs that will at best be phased in over years,
> and at worst
> totally ignored, instead of requiring RTP applications to specify both RTP
> and RTCP ports.  The effect will be that RTP applications that attempt to
> rely on this NAT requirement will end up breaking in many situations, and
> quite probably in unpredictable ways.  (For example, many NATs try to
> maintain port numbers inside->outside, but if the port is in use will then
> allocate other non-contiguous port numbers of different oddness.)
>
>         The original idea (even/odd pairs) wasn't a good one, and was
> somewhat at odds with normal techniques in TCP/UDP, and certainly at odds
> with any sort of NAT concept.  (Note: just my opinion, of course)
>
>         Of course, having a NAT preserve oddness (and contiguity!) will
> improve the odds of an older RTP application working from behind it, so it
> might be a *nice* thing to do in the NAT - but no one should be
> counting on
> it, and it's yet another complication in NAT design and limitation that
> could cause it to run out of ports (in a large corporate-style NAT).

I'll leave the draft-ietf-behave-nat authors to comment on the specific
text they're considering; it's my understanding they are adding text which
hits on your points above.

> >To your second, a reference to RFC3605 will be added to the 'application
> >behavior' document, which will describe how applications should behave.
> >The current BEHAVE document just describes how NATs should behave.
>
>         If BEHAVE is how they "should" behave, then my objections are
> lessened - though we need to make sure that people don't use this document
> as an excuse not to specify the RTCP port.

Application behavior will be in the application document (not in
draft-ietf-behave-nat); Francois and I are going to take a first cut at
the application document in the next month or two.  The application
document is described as "Produce a BCP that discusses protocol design
techniques for using the existing set of NAT traversal approaches" in
the BEHAVE charter
<http://www.ietf.org/html.charters/behave-charter.html>.

-d


_______________________________________________
Audio/Video Transport Working Group
avt@ietf.org
https://www1.ietf.org/mailman/listinfo/avt