Re: [multipathtcp] High-level design decisions /architecture
Scott Brim <scott.brim@gmail.com> Tue, 03 November 2009 18:41 UTC
Return-Path: <scott.brim@gmail.com>
X-Original-To: multipathtcp@core3.amsl.com
Delivered-To: multipathtcp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 36F1828C195 for <multipathtcp@core3.amsl.com>; Tue, 3 Nov 2009 10:41:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.253
X-Spam-Level:
X-Spam-Status: No, score=-2.253 tagged_above=-999 required=5 tests=[AWL=-0.254, BAYES_00=-2.599, J_CHICKENPOX_21=0.6]
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 NDa6zYvfFgqv for <multipathtcp@core3.amsl.com>; Tue, 3 Nov 2009 10:41:39 -0800 (PST)
Received: from qw-out-2122.google.com (qw-out-2122.google.com [74.125.92.25]) by core3.amsl.com (Postfix) with ESMTP id 23D5C28C194 for <multipathtcp@ietf.org>; Tue, 3 Nov 2009 10:41:39 -0800 (PST)
Received: by qw-out-2122.google.com with SMTP id 9so1605167qwb.31 for <multipathtcp@ietf.org>; Tue, 03 Nov 2009 10:42:00 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=mO2wXGCXJGewOjipoxkeqLIFh1e4tBRzwDjG6dYShMM=; b=jP2CnUvm9IyxFm/pEFj8ldecwiI82NafsqE1hg8lCXQ5k7ttQc2ZbZ3mI+cfrk6TW8 Sbsd7tqR4AlstWxLXJiFt9u5jURaDsxbKTIqvqaVy3iAf2SoIWRXy4GT2uKoB2dzQt8n cqMYLfRBHGPwQQtm5PKsGjMkIyrnvTHUObwwg=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=TBilFIaZgQBhddLcahQ030QS3krwJjs06oeSGJQWVh99t+a9BDROAUSzFyd/BSGQgp /KzUXMGqU9/XwLzKELKFUdqYIilomD+UYjl0jAhDLfRRjWJ+aTDhm7xd/sYAZvNZ+XaY G5I+4Sd7KmRGbDGsEEL7LpomKMJvqC4p0x3XQ=
Received: by 10.224.69.164 with SMTP id z36mr174916qai.377.1257273720020; Tue, 03 Nov 2009 10:42:00 -0800 (PST)
Received: from sbrim-mbp.local (198-135-0-233.cisco.com [198.135.0.233]) by mx.google.com with ESMTPS id 23sm199370qyk.3.2009.11.03.10.41.58 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 03 Nov 2009 10:41:59 -0800 (PST)
Message-ID: <4AF07974.9030704@gmail.com>
Date: Tue, 03 Nov 2009 13:41:56 -0500
From: Scott Brim <scott.brim@gmail.com>
User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812)
MIME-Version: 1.0
To: Joe Touch <touch@ISI.EDU>
References: <4A916DBC72536E419A0BD955EDECEDEC06363A62@E03MVB1-UKBR.domain1.systemhost.net> <4AEF781E.4070009@isi.edu> <4AF04C00.10504@gmail.com> <4AF05270.1050501@isi.edu>
In-Reply-To: <4AF05270.1050501@isi.edu>
X-Enigmail-Version: 0.96.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Cc: multipathtcp@ietf.org
Subject: Re: [multipathtcp] High-level design decisions /architecture
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/multipathtcp>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 03 Nov 2009 18:41:40 -0000
Joe Touch allegedly wrote on 11/03/2009 10:55 AM: >> Joe, that's just not necessary except for legacy endpoint stacks. See >> the iPhone and "connectByName". If the API revolves around a connection >> ID, regardless of underlying addresses, then IP addresses can come and >> go as they with as long as the transport layer has some mechanism of >> maintaining session authenticity and continuity. The scenario where a >> new node gets an IP address that an old node was just using is only >> relevant if the connection is maintained using IP addresses ... which it >> isn't. > > This is fine if you're defining a new transport protocol. TCP *defines* > a connection by the socket pair. If that socket pair disappears and you > keep the connection up, I would argue you need to use a different > protocol number because you've seriously changed the semantics. MPTCP "looks like TCP on the wire" for each src/dst pair. That means it uses the same protocol number, but it doesn't mean it must behave exactly like TCP. We already change the response to packet loss. I suspect that you could do the whole TCP state machine for each src/dst pair, but in the new API > NATs may be ubiquitous, but they are NOT part of the 'architecture'. > They violate what little of the architecture is specified (RFCs 1122, > 1123, 1812). Too late, it's the new millennium. Dave Clark said "architect the inevitable" (one of my favorite sayings). >>>> * There is an optional, extended API >>>> o [Question: would both ends need the extended API, with a >>>> fall-back if not?] >>> Seems like one end could want the extended API for explicit control of >>> flows, but the other end doesn't need to care. >> Agree. The API is to access controls for the endpoint's implementation >> of the protocol. How an endpoint implements its APIs is independent of >> the protocol. > > Whoa on two counts. > > First, *IF*, as you say, "NAT is now architecture", then the API affects > nodes inside the network, not just at the endpoints. I don't understand this. Please help. I see no linkage between a transport API in an endpoint and a NAT box in the path. > Second, the API is two things - an abstract specification and an > implementation. Consider TCP, which has OPEN, CLOSE, STATUS, READ, > WRITE. Those are part of the *specification*. There's also the Un*x > "open()" call, which implements part of what OPEN specifies (arguably, > in Un*x, this also includes listen(), connect(), and bind()). > > My claim here is that the API can be asymmetric, i.e., extended on one > side and not the other. That's just claiming that all extensions are > optional on both sides, and not coordinated. Yes, I was trying to agree :-). Scott
- [multipathtcp] High-level design decisions /archi… philip.eardley
- Re: [multipathtcp] High-level design decisions /a… marcelo bagnulo braun
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… marcelo bagnulo braun
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Mark Handley
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Lars Eggert
- Re: [multipathtcp] High-level design decisions /a… Yoshifumi Nishida
- [multipathtcp] This shim6 part of the answer (was… marcelo bagnulo braun
- [multipathtcp] The MPTCP part (was Re: High-level… marcelo bagnulo braun
- Re: [multipathtcp] High-level design decisions /a… marcelo bagnulo braun
- Re: [multipathtcp] High-level design decisions /a… Scott Brim
- Re: [multipathtcp] High-level design decisions /a… Scott Brim
- Re: [multipathtcp] High-level design decisions /a… Scott Brim
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Costin Raiciu
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Mark Handley
- Re: [multipathtcp] High-level design decisions /a… Costin Raiciu
- Re: [multipathtcp] High-level design decisions /a… Costin Raiciu
- Re: [multipathtcp] High-level design decisions /a… Ford, Alan
- Re: [multipathtcp] High-level design decisions /a… Ford, Alan
- Re: [multipathtcp] High-level design decisions /a… Ford, Alan
- Re: [multipathtcp] High-level design decisions /a… Scott Brim
- Re: [multipathtcp] High-level design decisions /a… marcelo bagnulo braun
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Yoshifumi Nishida
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… Mark Handley
- Re: [multipathtcp] High-level design decisions /a… Ford, Alan
- Re: [multipathtcp] High-level design decisions /a… Ford, Alan
- Re: [multipathtcp] High-level design decisions /a… Yoshifumi Nishida
- Re: [multipathtcp] High-level design decisions /a… Costin Raiciu
- Re: [multipathtcp] High-level design decisions /a… philip.eardley
- Re: [multipathtcp] High-level design decisions /a… Lars Eggert
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Yoshifumi Nishida
- Re: [multipathtcp] High-level design decisions /a… Scott Brim
- Re: [multipathtcp] High-level design decisions /a… Costin Raiciu
- Re: [multipathtcp] High-level design decisions /a… Yoshifumi Nishida
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Joe Touch
- Re: [multipathtcp] High-level design decisions /a… William Herrin
- Re: [multipathtcp] High-level design decisions /a… Joe Touch