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

james woodyatt <jhw@apple.com> Wed, 03 December 2008 21:57 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 DF40F28C1BD; Wed, 3 Dec 2008 13:57:30 -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 0805D28C1BD; Wed, 3 Dec 2008 13:57:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.539
X-Spam-Level:
X-Spam-Status: No, score=-106.539 tagged_above=-999 required=5 tests=[AWL=0.060, 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 7KuGobv0394e; Wed, 3 Dec 2008 13:57:29 -0800 (PST)
Received: from mail-out3.apple.com (mail-out3.apple.com [17.254.13.22]) by core3.amsl.com (Postfix) with ESMTP id 2DF5928C1B8; Wed, 3 Dec 2008 13:57:29 -0800 (PST)
Received: from relay13.apple.com (relay13.apple.com [17.128.113.29]) by mail-out3.apple.com (Postfix) with ESMTP id 53CAA474196F; Wed, 3 Dec 2008 13:57:25 -0800 (PST)
Received: from relay13.apple.com (unknown [127.0.0.1]) by relay13.apple.com (Symantec Brightmail Gateway) with ESMTP id 379EE28086; Wed, 3 Dec 2008 13:57:25 -0800 (PST)
X-AuditID: 1180711d-ad29dbb000000ef0-29-493700c533c7
Received: from il0602b-dhcp84.apple.com (il0602b-dhcp84.apple.com [17.206.24.84]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by relay13.apple.com (Apple SCV relay) with ESMTP id 091FC2807D; Wed, 3 Dec 2008 13:57:25 -0800 (PST)
Message-Id: <5AE49824-74B1-4ABE-BBD4-7DEAFA348245@apple.com>
From: james woodyatt <jhw@apple.com>
To: tsv-area@ietf.org, tae@ietf.org
In-Reply-To: <7DA33930-1767-492B-807E-7A7DA661AFE9@apple.com>
Mime-Version: 1.0 (Apple Message framework v929.2)
Date: Wed, 3 Dec 2008 13:57:24 -0800
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>
X-Mailer: Apple Mail (2.929.2)
X-Brightmail-Tracker: AAAAAA==
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 Dec 3, 2008, at 13:07, Stuart Cheshire wrote:
>
> The problem is that what constitutes a "transport layer" is a bit  
> slippery.

I don't think it should be.  The "transport layer" is identified by  
the upper layer protocol header at the end of the extension header  
chain of the inner-most encapsulated IP packet.  I think it would be a  
lot simpler if we didn't succumb to the temptation to overload that  
concept with a lot of other ones that really belong in the layers  
above the transport layer.  For example...

> In a text-based protocol that can use either UTF-8 or Latin-1, is  
> the UTF-8/Latin-1 choice a transport negotiation?  In a protocol  
> that can run over TCP or over TLS, is that a transport negotiation?   
> If a web server can optionally gzip content to save bandwidth, is  
> that a transport negotiation? What about gzip'd UTF-8 vs. gzip'd  
> Latin-1? What about gzip'd UTF-8 over TLS? What about ASN.1 vs. XDR  
> vs. XML?

Speaking as a participant in the now-defunct BEEP working group, which  
wrangled these issues to the ground a long time ago, the answer I  
would give to all these questions is, "No."  They are all application  
profile negotiations.  Some of them happen to be profile negotiations  
designed to tune the application protocol for certain transport layer  
extensions, e.g. security, compression, etc., and others are purely  
application layer negotiations, but none of them are negotiations of  
which transport layer to use.

> The combinatorial explosion gets out of control. The correct answer  
> IMHO, is to not even try.

And to say, "No, these are not transport layer negotiations; they're  
application profile negotiations."

> The Application Protocol Name in the SRV record needs to be an  
> opaque identifier that denotes the entire top-to-bottom slice  
> through the protocol stack -- semantics, packet formats, encoding  
> rules, transport protocol. (Once the client has got a connection to  
> the server, negotiating things like optional compression at that  
> layer is then feasible and sensible.)
>
> Even having the _udp or _tcp is, IMO, a historical mistake. This is  
> what I say about it in draft-cheshire-dnsext-dns-sd-05.txt: [...]

I certainly agree with that, but I think SRV makes a number of  
mistakes and this is only one of them.  I would prefer a different  
definition where the record type is a union of different structure  
types discriminated by transport protocol identifier.

While I'm dreaming, I think I'd ask for two record types to be  
defined: one for IPv4 and the other for IPv6.  That way, the DNS-SD  
usage of PTR records could allow registrants to advertise things like  
"this service is available for IPv6 at TCP port A and for IPv4 at TCP  
port B (which I've got mapped at my NAT gateway to port A)."


--
james woodyatt <jhw@apple.com>
member of technical staff, communications engineering


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