Re: [tae] [tsv-area] Transport negotiation

Stuart Cheshire <cheshire@apple.com> Wed, 10 December 2008 17:47 UTC

Return-Path: <tae-bounces@ietf.org>
X-Original-To: tae-archive@ietf.org
Delivered-To: ietfarch-tae-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 5A9463A68EB; Wed, 10 Dec 2008 09:47:08 -0800 (PST)
X-Original-To: tae@core3.amsl.com
Delivered-To: tae@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 232533A6868; Wed, 10 Dec 2008 09:47:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.138
X-Spam-Level:
X-Spam-Status: No, score=-106.138 tagged_above=-999 required=5 tests=[AWL=0.461, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UWdS4KFA+Rw4; Wed, 10 Dec 2008 09:47:06 -0800 (PST)
Received: from mail-out4.apple.com (mail-out4.apple.com [17.254.13.23]) by core3.amsl.com (Postfix) with ESMTP id 2C79E3A63EC; Wed, 10 Dec 2008 09:47:06 -0800 (PST)
Received: from relay12.apple.com (relay12.apple.com [17.128.113.53]) by mail-out4.apple.com (Postfix) with ESMTP id C08BC4A119C9; Wed, 10 Dec 2008 09:47:00 -0800 (PST)
Received: from relay12.apple.com (unknown [127.0.0.1]) by relay12.apple.com (Symantec Brightmail Gateway) with ESMTP id AB91F464004; Wed, 10 Dec 2008 09:47:00 -0800 (PST)
X-AuditID: 11807135-ab861bb000000e1f-22-494000948d27
Received: from [17.206.42.11] (chesh1.apple.com [17.206.42.11]) by relay12.apple.com (Apple SCV relay) with ESMTP id 8F21C420004; Wed, 10 Dec 2008 09:47:00 -0800 (PST)
In-Reply-To: <0191F3F9-CC3D-4925-90BC-15BC966FE012@apple.com>
References: <3BB334D8-B00C-48C1-ACBF-4D09576DEADF@mpi-sws.org> <492C7F97.3030000@isi.edu> <EDCC4CF2-DC3C-409F-8F99-3BE51BAE4111@surrey.ac.uk> <492DE8AD.1090300@isi.edu> <7DA33930-1767-492B-807E-7A7DA661AFE9@apple.com> <5AE49824-74B1-4ABE-BBD4-7DEAFA348245@apple.com> <3F1AB633-7E17-47C4-B126-D8D872B552C5@apple.com> <0191F3F9-CC3D-4925-90BC-15BC966FE012@apple.com>
Mime-Version: 1.0 (Apple Message framework v753.1)
Message-Id: <78ACC2CD-C6E6-46A3-B198-0C0284917E94@apple.com>
From: Stuart Cheshire <cheshire@apple.com>
Date: Wed, 10 Dec 2008 09:46:08 -0800
To: james woodyatt <jhw@apple.com>
X-Mailer: Apple Mail (2.753.1)
X-Brightmail-Tracker: AAAAAA==
Cc: tae@ietf.org, tsv-area@ietf.org
Subject: Re: [tae] [tsv-area] Transport negotiation
X-BeenThere: tae@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Transport Architecture Evolution <tae.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tae>, <mailto:tae-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/tae>
List-Post: <mailto:tae@ietf.org>
List-Help: <mailto:tae-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tae>, <mailto:tae-request@ietf.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"; DelSp="yes"
Sender: tae-bounces@ietf.org
Errors-To: tae-bounces@ietf.org

On 9 Dec, 2008, at 19:01, james woodyatt wrote:

> From where I stand, i.e. smack in the middle of your transport- 
> aware packet-forwarding plane

Why do we want a transport-aware packet-forwarding plane?

The primary reason NAT gateways need to peek into the transport  
header is to get at the ports for receiver demultiplexing. It's  
purely a historical mistake that we forgot to put the demultiplexing  
identifiers into the IP-layer header like other protocols do, which  
is why every IP-based transport layer has to duplicate that  
functionality, which is why NAT gateways need to peek into those  
transport headers.

It's too late to fix the IPv6 header format, but if we regard UDP/ 
IPv6 as our new combined datagram header, the way Bryan Ford  
proposes, then a whole bunch of problems go away. It's not a  
deficiency of NAT gateways that they need to understand every  
transport header (and thereby impede adoption of transports they  
don't understand); it's a deficiency of our transport headers that  
they include demultiplexing identifiers that they should not.

It's a testament to the IETF's extreme antipathy to NAT that we  
refused to layer new transport protocols like SCTP and DCCP over UDP,  
as if we imagined that creating new protocols that didn't work with  
NAT would be the thing to convince the rest of the world that NAT was  
evil. It was as if we imagined that in the resulting battle for  
consumer mindshare our new transports would win and NAT would lose.  
We sacrificed SCTP and DCCP on the altar of anti-NAT fanaticism.

If SCTP and DCCP were just user-level library code that any  
application writer could use freely, without waiting for support from  
the OS vendor, NAT gateways, or network, they'd be much more widely  
used today. This strange notion that layering transport protocols  
over UDP is a gross hack has got to go.

Layering new transport protocols over UDP is not a hack. It's  
actually the right architecture AND (because of that) it also happens  
to work though NAT gateways too.

Stuart Cheshire <cheshire@apple.com>
* Wizard Without Portfolio, Apple Inc.
* Internet Architecture Board
* www.stuartcheshire.org

_______________________________________________
tae mailing list
tae@ietf.org
https://www.ietf.org/mailman/listinfo/tae