Re: [tcpm] MPTCP vs Rehash (was TCPM WG status update)
Bruno Mongazon-Cazavet <bruno.mongazon-cazavet@alcatel-lucent.com> Tue, 16 November 2010 11:25 UTC
Return-Path: <bruno.mongazon-cazavet@alcatel-lucent.com>
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E7A3A3A6DD8; Tue, 16 Nov 2010 03:25:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.249
X-Spam-Level:
X-Spam-Status: No, score=-6.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_FR=0.35, RCVD_IN_DNSWL_MED=-4]
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 zP3pAhxjVX1E; Tue, 16 Nov 2010 03:25:53 -0800 (PST)
Received: from smail3.alcatel.fr (smail3.alcatel.fr [62.23.212.56]) by core3.amsl.com (Postfix) with ESMTP id 5F3C03A6DDA; Tue, 16 Nov 2010 03:25:53 -0800 (PST)
Received: from FRMRSSXCHHUB01.dc-m.alcatel-lucent.com (FRMRSSXCHHUB01.dc-m.alcatel-lucent.com [135.120.45.61]) by smail3.alcatel.fr (8.14.3/8.14.3/ICT) with ESMTP id oAGBQUWp027892 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT); Tue, 16 Nov 2010 12:26:30 +0100
Received: from [172.27.205.223] (135.120.57.7) by FRMRSSXCHHUB01.dc-m.alcatel-lucent.com (135.120.45.61) with Microsoft SMTP Server (TLS) id 8.3.106.1; Tue, 16 Nov 2010 12:26:30 +0100
Message-ID: <4CE26A65.5090702@alcatel-lucent.com>
Date: Tue, 16 Nov 2010 12:26:29 +0100
From: Bruno Mongazon-Cazavet <bruno.mongazon-cazavet@alcatel-lucent.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2.9) Gecko/20100915 Lightning/1.0b2 Thunderbird/3.1.4
MIME-Version: 1.0
To: Costin Raiciu <c.raiciu@cs.ucl.ac.uk>
References: <C304DB494AC0C04C87C6A6E2FF5603DB4821F155C3@NDJSSCC01.ndc.nasa.gov> <4CDA4FA9.4050006@alcatel-lucent.com> <5FDC413D5FA246468C200652D63E627A0B54DF91@LDCMVEXC1-PRD.hq.netapp.com> <4CE10B0C.1040705@alcatel-lucent.com> <A02B474D-BD70-443E-8BCE-D4DD8AA88363@cs.ucl.ac.uk>
In-Reply-To: <A02B474D-BD70-443E-8BCE-D4DD8AA88363@cs.ucl.ac.uk>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 2.64 on 155.132.188.83
Cc: Multipath TCP Mailing List <multipathtcp@ietf.org>, "tcpm@ietf.org" <tcpm@ietf.org>
Subject: Re: [tcpm] MPTCP vs Rehash (was TCPM WG status update)
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 16 Nov 2010 11:25:55 -0000
Costin, Thanks for having read the draft. I did not want to go into MPTCP vs Rehash considerations (and that's the reason i posted in TCPM wg) but it seems ineluctable. So let's go deeper and please see inline. I would also be interested to have additional opinions from wg members. Regards, Bruno Le 16/11/2010 10:21, Costin Raiciu a écrit : > Bruno, > > I've read your draft too and I agree with Richard, it seems to support a subset of what MPTCP does, only focusing on connection mobility. [bm] Yes. But connection mobility in the wide sense, including mobility and load-balancing. > > On top of that MPTCP allows connections to use multiple paths in parallel (providing reordering, congestion control, etc). [bm] Yes. MPTCP relies on the "path" and "parallelism" concepts. TCP-Rehash excludes these concepts from the beginning of design. In particular, TCP-Rehash has not been designed according to a rule which states that a TCP connection can get benefits in using multiple paths in parallel. Moreover i would say that TCP-Rehash has been designed with exactly the reverse opinion in mind (philosophy): We don't know if and how we can take advantage using parallelism, so just provide a simple and lightweight mechanism to allow each TCP connection to be migrated on both ends agreement. > > > Re-hash's aim seems to be increasing robustness for mobile client applications. I personally think multipath TCP is a better solution than re-hash because it can probe multiple paths in parallel and literally get the best service at any time. In contrast, re-hash allows connections to use a single address (e.g. 3g/wifi) at any time; this will give significantly worse performance when devices are truly mobile and link properties change quickly e.g. people driving or walking (this is a handwaving argument, we have not run any tests to prove this). [bm] Right, MPTCP provide more functionnalities. However there is a cost (probing, TCP options overhead on all data). TCP-Rehash only aims to provide the minimal capability at the minimal cost. I personally think that providing alternatives is always a good option. As far as performance are concerned we probably need a closed look. I would not bet TCP-Rehash is not suited fro "truly mobile", since connection rehash involves only sending a TCP option in a outgoing packet. > More importantly, I'd like to point out that this type of connection mobility is already implemented in mobile devices as far as I understand: the stack forcibly terminates all connections when their interface goes down and a new one is available, and the applications reopen connections which will use the new interface. The apps have already been changed to support this. [bm] TCP-Rehash is exactly done to avoid this by bringing the capability at transport level to the benefit of all applications. There are still a bunch of applications that do not implement such behavior, why should they ? > The apps that haven't been changed already probably don't care about this type of robustness that much. With this in mind, I reluctantly admit that MPTCP itself will bring little improvement to apps robustness; re-hash will bring none. [bm] I disagree. Applications do care about robustness. Most of them need to handle socket() errors and in most case they fall into unavailability or interruption. With either MPTCP or TCP-Rehash they could keep the same code but just do not execute it because the transport has been improved. So MPTCP could bring minimal to high improvement and TCP-Rehash only minimal (but essential?) improvement. > As a clarifying note to richard's comment earlier: MPTCP does support break-before-make mobility, as long as the new subflow is opened while both endpoints have state about the connection (i.e. the original subflow has not reach max timeouts). In practice, this means that if a client is mobile, loses its address and gains a new one in a reasonable amount of time, it will be able to add a subflow to the existing connection, hence supporting break-before-make mobilty. As rehash, MPTCP does not support simultaneous mobility. [bm] TCP-Rehash can be synced with address management in different and open manners. What could trigger an individual connection rehash is outside the scope of my draft. Trigger can be the address change of a single interface or additional interface(s) addition. There is no restriction although there might be strategies of common sense. For example i tried rehash in the following situations: -pure handoff -offloading some connections when multiple interfaces are available Both rely on the same TCP enhancements (rehash) but the music is played in a different way. Just a matter of the director. In all cases, you cannot say Rehash does not support simultaneous mobility. Regards, Bruno. > Cheers, > Costin > > On 15 Nov 2010, at 12:27, Bruno Mongazon-Cazavet wrote: > >> Dear Richard; >> >> Thank you for looking at TCP-Rehash. >> Please see my comments inline. >> >> Regards, >> Bruno Mongazon >> >> Le 10/11/2010 13:51, Scheffenegger, Richard a écrit : >>> Hi Bruno, >>> >>> After a casual look, it appears to me that a lightweight implementation of MP-TCP can have the same benefits, but does not require the opaque exchange of IPv4 addresses... >> Yes an idea would be to have TCP-Rehash == lightweigth MPTCP >> There are a few design diffferences that need to be looked at. >> >>> Your use case - that the old L3 address is already no longer available at the time of the rehash - may need to be looked at in MPTCP though (iirc, they do a graceful session setup first (thus can work with NAT mostly), and move data transport only after the successful establishment of the 2nd L3 connectivity, and only then tear down the original L3 connectivity). >> Right but... there is no real constraint on old address availability, thus the old address might still be available. >> A key difference between TCP-Rehash and MPTCP is the session setup. With TCP-Rehash there is no setup, it is a straight move. If it fails, the connection is broken, this would happen anyway if L3 address changes and there is no "move" mechanism. Doing so is just opportunistic but deterministic. MPTCP is more complex since a new connection is setup before the old connection is being "moved". >> From design perspective, would it be that complex for MPTCP to handle rehash design ? >> >> NAT is a different story (orthogonal i would say) and issue. >> >>> Perhaps the effort would be better placed on making sure that such light-weight MPTCP implementations remain feasible, instead of defining an alternate method that is addressing only this one aspect, but incompatible with MPTCP otherwise? >> To be honest i have both TCP-Rehash and MPTCP linux kernel source code... my intention is not to define an alternate method ! Rather i posted the TCP-Rehash draft with the intention to provide some additional work on the topic. Convergence and collaboration is of course to be considered. I think my work, although it was not disclosed, started sometimes ago, almost at early MPTCP. >> >> Please let me know, if from the design point of view, the WG would consider the opportunity to have a lightweight MPTCP that would look like TCP-Rehash. >> >>> Richard Scheffenegger >>> >>> >>> >>>> -----Original Message----- >>>> From: Bruno Mongazon-Cazavet >>>> [mailto:bruno.mongazon-cazavet@alcatel-lucent.com] >>>> Sent: Mittwoch, 10. November 2010 08:54 >>>> To: Eddy, Wesley M. (GRC-MS00)[ASRC AEROSPACE CORP] >>>> Cc: tcpm@ietf.org >>>> Subject: Re: [tcpm] WG status update >>>> >>>> >>>> Le 10/11/2010 01:54, Eddy, Wesley M. (GRC-MS00)[ASRC >>>> AEROSPACE CORP] a écrit : >>>>> Hi, for those of you who aren't in Beijing, here's a >>>> snapshot of the TCPM WG status. >>>> >>>> Hi, >>>> >>>> I have posted a 00 draft that might be of interest for your working >>>> group. I don't see any mention in your snapshot. >>>> http://www.ietf.org/id/draft-mongazon-tcpm-tcp-rehash-00.txt >>>> >>>> I will not be in Beijing to present it but i hope to be in >>>> Prague to do so. >>>> I would appreciate the working group can look at it and let >>>> me know if >>>> it could be of any interest and how i shall pursue my contribution. >>>> >>>> I have done a Linux kernel implementation of the draft and be >>>> ready for >>>> a demo in Prague. >>>> >>>> Best Regards, >>>> Bruno. >>>> _______________________________________________ >>>> tcpm mailing list >>>> tcpm@ietf.org >>>> https://www.ietf.org/mailman/listinfo/tcpm >>>> >> _______________________________________________ >> tcpm mailing list >> tcpm@ietf.org >> https://www.ietf.org/mailman/listinfo/tcpm >
- [tcpm] WG status update Eddy, Wesley M. (GRC-MS00)[ASRC AEROSPACE CORP]
- Re: [tcpm] WG status update Mark Allman
- Re: [tcpm] WG status update Fernando Gont
- [tcpm] WG status update Eddy, Wesley M. (GRC-MS00)[Verizon]
- Re: [tcpm] WG status update Alexander Zimmermann
- [tcpm] WG status update Eddy, Wesley M. (GRC-MS00)[ASRC AEROSPACE CORP]
- Re: [tcpm] WG status update Bruno Mongazon-Cazavet
- Re: [tcpm] WG status update Scheffenegger, Richard
- Re: [tcpm] WG status update Scheffenegger, Richard
- Re: [tcpm] WG status update Lars Eggert
- Re: [tcpm] WG status update Murari Sridharan
- Re: [tcpm] WG status update Bruno Mongazon-Cazavet
- Re: [tcpm] WG status update Lars Eggert
- Re: [tcpm] WG status update Bruno Mongazon-Cazavet
- Re: [tcpm] WG status update Lars Eggert
- Re: [tcpm] WG status update L.Wood
- [tcpm] MPTCP vs Rehash (was TCPM WG status update) Costin Raiciu
- Re: [tcpm] MPTCP vs Rehash (was TCPM WG status up… Bruno Mongazon-Cazavet
- Re: [tcpm] WG status update Lars Eggert
- Re: [tcpm] WG status update Joe Touch
- Re: [tcpm] WG status update Bruno Mongazon-Cazavet