Re: [tsv-area] [tae] Transport negotiation
Joe Touch <touch@ISI.EDU> Mon, 08 December 2008 15:14 UTC
Return-Path: <tsv-area-bounces@ietf.org>
X-Original-To: tsv-area-archive@optimus.ietf.org
Delivered-To: ietfarch-tsv-area-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9B2693A684C; Mon, 8 Dec 2008 07:14:59 -0800 (PST)
X-Original-To: tsv-area@core3.amsl.com
Delivered-To: tsv-area@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id A059E3A684C; Mon, 8 Dec 2008 07:14:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.282
X-Spam-Level:
X-Spam-Status: No, score=-1.282 tagged_above=-999 required=5 tests=[AWL=-1.284, BAYES_00=-2.599, J_CHICKENPOX_74=0.6, NORMAL_HTTP_TO_IP=0.001, SARE_HEXOCTDWORD=2]
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 xkTUgURqslPT; Mon, 8 Dec 2008 07:14:57 -0800 (PST)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by core3.amsl.com (Postfix) with ESMTP id A563E3A6805; Mon, 8 Dec 2008 07:14:57 -0800 (PST)
Received: from [192.168.1.46] (pool-71-106-119-240.lsanca.dsl-w.verizon.net [71.106.119.240]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id mB8FEjDN014183 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 8 Dec 2008 07:14:48 -0800 (PST)
Message-ID: <493D39E4.7030006@isi.edu>
Date: Mon, 08 Dec 2008 07:14:44 -0800
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.18 (Windows/20081105)
MIME-Version: 1.0
To: Lloyd Wood <L.Wood@surrey.ac.uk>
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> <EAB5CBF0-4C7A-44F1-BF57-641915CBE6AB@surrey.ac.uk> <493CB9D3.2080308@isi.edu> <4B36B0DC-54CC-4ADE-9688-074312E70E0D@surrey.ac.uk>
In-Reply-To: <4B36B0DC-54CC-4ADE-9688-074312E70E0D@surrey.ac.uk>
X-Enigmail-Version: 0.95.7
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tae@ietf.org, tsv-area@ietf.org
Subject: Re: [tsv-area] [tae] Transport negotiation
X-BeenThere: tsv-area@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: IETF Transport Area Mailing List <tsv-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tsv-area>, <mailto:tsv-area-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/tsv-area>
List-Post: <mailto:tsv-area@ietf.org>
List-Help: <mailto:tsv-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsv-area>, <mailto:tsv-area-request@ietf.org?subject=subscribe>
Sender: tsv-area-bounces@ietf.org
Errors-To: tsv-area-bounces@ietf.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Lloyd Wood wrote: > Joe, > > I'm interested in a parseable way to pass that information down from a > URI and the program handling the URI. OK... > Right now, we can explicitly state 'http' or 'https'. These are presumed > to live over TCP, and IP - whether to use v4 or v6 is usually determined > directly by giving an address or by DNS. But, oddly enough, we can also > explicitly specify the port number, which defaults to 80. So, even > though http lives on port 80 (and https on 443), that can be overridden > in the URI. Right. The port number is determined by the service name (which doubles as the application protocol name) by default, but since that number is solely determined by the endpoints anyway, there's an override. ou w > Similarly, though http is expected to live over TCP, being able to > explicitly override it in the URI if desired has merit in some cases. > That is, 'http' would be the same as writing 'http-tcp'. 'http-sctp', > for the work outlined in: > http://tools.ietf.org/html/draft-natarajan-http-over-sctp > means use a different transport - SCTP instead of TCP. > > Doesn't it strike you as odd that we can, at a high uri level, specify > the low-level port number, but not the details of the layering to be > used for that port? By adding explicit detail in the URI, we are > removing ambiguity. The port number isn't low level; it's the highest level, at the same level as the protocol name/service name (http, https). The address is also application-layer (consider that http://www.a.com/ returns a different result than http://www.b.com/ even if they resolve to the same IP address, at least since HTTP 2.x AFAIR). The fact that addresses have different formats (DNS name, IPv4 dotted, IPv6 coloned) is the part you're trying to mimic, IMO, and the implication that using an IPv4 dotted implies a particular network layer (IPv4 packets). Right now, we can specify that only for numeric IP addresses, not even for DNS names. Note that we don't let that float, though - it isn't: http or https://www.a.com/ It's the floating part that doesn't make a lot of sense from a protocol handshake viewpoint - regardless of the fact that it also doesn't map well to existing protocol handshakes. As to specifying the lower layers, that builds on the artifact of numeric IP addresses implying network layer. I don't know if I think this should be visible to the app layer (as the address necessarily is); it seems to break a lot of the isolation that layering is intended to provide. - ---- If you're going to do this, though, I wonder if the syntax of that shouldn't lie syntactically where it exists in layering: i.e.: http://www.example.com/ would become, explicitly: http:80//tcp:nagle//www.example.com:v4/ I.e., tcp doesn't modify the http part; it modifies the service:port *pair*, and isn't tied any more to that pair than it is to the DNS name. The DNS name, further, requires a version as well. We could add explicit options to TCP as shown above too. The general form might thus be: protocol_ID[:defaut_override]* And the general form of a URI would include: app proto_ID//[transport_proto_ID//]?net_proto_ID Joe -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkk9OeQACgkQE5f5cImnZrs6CwCg6cEhPjZ4BxkztAdEMHYucGys OuAAniS1alup1A0U1MV9eQ/BTvqupRR5 =VBwp -----END PGP SIGNATURE-----
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- [tsv-area] Transport negotiation Bryan Ford
- Re: [tsv-area] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Janardhan Iyengar
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] Transport negotiation Lloyd Wood
- Re: [tsv-area] Transport negotiation Joe Touch
- Re: [tsv-area] Transport negotiation Lloyd Wood
- Re: [tsv-area] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Stuart Cheshire
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Lloyd Wood
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Lloyd Wood
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Stuart Cheshire
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Stuart Cheshire
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Stuart Cheshire
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Gorry Fairhurst
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Gorry Fairhurst
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Lloyd Wood
- Re: [tsv-area] [tae] Transport negotiation Lloyd Wood
- Re: [tsv-area] [tae] Transport checksum Gorry Fairhurst
- Re: [tsv-area] [tae] Transport negotiation Phelan, Tom
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Marshall Eubanks
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Phelan, Tom
- Re: [tsv-area] [tae] Transport negotiation james woodyatt
- Re: [tsv-area] [tae] Transport negotiation Stuart Cheshire
- Re: [tsv-area] [tae] Transport negotiation Joe Touch
- Re: [tsv-area] [tae] Transport negotiation Iljitsch van Beijnum
- Re: [tsv-area] [tae] Transport negotiation Bryan Ford
- Re: [tsv-area] [tae] Transport negotiation Bryan Ford
- [tsv-area] Host versus Endpoint Granularity (was … Bryan Ford
- Re: [tsv-area] [tae] Transport negotiation L.Wood
- Re: [tsv-area] [tae] Transport negotiation Joe Touch