Re: [multipathtcp] MPTCP Architecture Draft available

Costin Raiciu <c.raiciu@cs.ucl.ac.uk> Wed, 21 October 2009 09:42 UTC

Return-Path: <c.raiciu@cs.ucl.ac.uk>
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 E84ED3A695C for <multipathtcp@core3.amsl.com>; Wed, 21 Oct 2009 02:42:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.299
X-Spam-Level:
X-Spam-Status: No, score=-2.299 tagged_above=-999 required=5 tests=[AWL=0.300, BAYES_00=-2.599]
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 3WpasWTnOgTQ for <multipathtcp@core3.amsl.com>; Wed, 21 Oct 2009 02:42:18 -0700 (PDT)
Received: from bells2.cs.ucl.ac.uk (bells2.cs.ucl.ac.uk [128.16.5.33]) by core3.amsl.com (Postfix) with ESMTP id 59B0F3A6936 for <multipathtcp@ietf.org>; Wed, 21 Oct 2009 02:42:18 -0700 (PDT)
Received: from blackie2.cs.ucl.ac.uk ([128.16.68.58]) by bells2.cs.ucl.ac.uk with esmtpsa (TLSv1:AES128-SHA:128) (C.Raiciu authenticated) (Exim 4.54) id 1N0XJz-0009jg-AB; Wed, 21 Oct 2009 10:17:31 +0100
In-Reply-To: <2a3692de0910210136s6a11bb7fy57a12540a44c6c41@mail.gmail.com>
References: <2181C5F19DD0254692452BFF3EAF1D6808A4526B@rsys005a.comm.ad.roke.co.uk> <2a3692de0910200956h1fd58d9g32f131668321489@mail.gmail.com> <2181C5F19DD0254692452BFF3EAF1D6808A45480@rsys005a.comm.ad.roke.co.uk> <2a3692de0910210136s6a11bb7fy57a12540a44c6c41@mail.gmail.com>
Mime-Version: 1.0 (Apple Message framework v753.1)
Content-Type: text/plain; charset="US-ASCII"; delsp="yes"; format="flowed"
Message-Id: <2E371E24-1401-45F0-86F0-D0A555F7CCEE@cs.ucl.ac.uk>
Content-Transfer-Encoding: 7bit
From: Costin Raiciu <c.raiciu@cs.ucl.ac.uk>
Date: Wed, 21 Oct 2009 10:42:22 +0100
To: Dominik Kaspar <dokaspar.ietf@gmail.com>
X-Mailer: Apple Mail (2.753.1)
Cc: multipathtcp@ietf.org
Subject: Re: [multipathtcp] MPTCP Architecture Draft available
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: Wed, 21 Oct 2009 09:42:20 -0000

Hi Dominik,

Please have a look at our proposed congestion control draft for  
multipath, it answers some of your questions for the case when there  
is always data to send, i.e. mptcp is not application limited.

Deciding which path to choose when mptcp is application limited is  
unclear yet.

Let me briefly summarize your questions and answer them:
1. How much traffic should a multipath flow get in aggregate?
We answer this by saying it should do no worse than a single tcp on  
its best path, and it shouldn't take more path on any of its paths  
than a single TCP would. With this in mind, we compute the overall  
aggressiveness of the multipath flow (parameter alfa) dynamically,  
based on the instantaneous congestion windows and rtts of the  
individual paths.

2. How much traffic should go on individual paths, out of this  
aggregate? It is desirable to put more traffic on less congested  
paths, because this helps spread congestion better in the network  
(this is resource pooling). Our algorithm, in the long run, will  
allocate proportionally more window to paths with lower drop  
probabilities. For instance, if a path has loss rate 1% and another  
0.1% percent, our algorithm will put 10 times more window on the  
second path than on the first path. All this, while conforming to the  
stuff detailed in question 1.

Cheers,
Costin




On 21 Oct 2009, at 09:36, Dominik Kaspar wrote:

> Hi Alan,
>
> True, the question of "when" to use MPTCP may largely be an
> implementation-specific issue. However, in the case of resource
> pooling of multiple interfaces (bandwidth aggregation), I do not yet
> see how MPTCP will be able to decide how much data to send over which
> interface. Of course, each subflow will naturally adapt to the
> available bandwidth, but how can it be decided for a given data
> segment over which path it is to be sent?
>
> Is there a general requirement for MPTCP to monitor each path's
> "absolute" bandwidth/latency/loss characteristics in order to
> proportionally and optimally distribute data? I don't think such
> scheduling decisions can be left to developers who might have no
> knowledge about the heterogeneity of the environment their
> applications will run in. The main challenge of MPTCP is not the
> number of network interfaces or the type of traffic, but mostly on the
> heterogeneity of the paths' characteristics.
>
> Best regards,
> Dominik
>
>
> On Tue, Oct 20, 2009 at 7:34 PM, Ford, Alan <alan.ford@roke.co.uk>  
> wrote:
>> Dominik,
>>
>> Many thanks for your comments. The question of "when" to use MPTCP is
>> indeed an important one, which we will be discussing further in later
>> versions of this draft. The Path Manager has the task of choosing  
>> when
>> to use additional paths, and so I would suggest that it is the
>> appropriate place to take into account the needs of different  
>> types of
>> traffic. This could be signalled to it from the application layer,  
>> or it
>> could infer needs from session length, type of traffic, etc. It is at
>> least partially an implementation-specific issue, however. We shall
>> definitely take this into account in the next version of this  
>> document.
>>
>> You may find some of the discussion in the Application Considerations
>> draft is more relevant to this topic, and we would of course be very
>> interested in hearing your thoughts these topics, such as the
>> "application requirements".
>>
>> http://www.ietf.org/id/draft-scharf-mptcp-api-00.txt
>>
>> Regards,
>> Alan
>>
>>> -----Original Message-----
>>> From: Dominik Kaspar [mailto:dokaspar.ietf@gmail.com]
>>> Sent: 20 October 2009 17:57
>>> To: Ford, Alan
>>> Cc: multipathtcp@ietf.org
>>> Subject: Re: [multipathtcp] MPTCP Architecture Draft available
>>>
>>> Dear authors,
>>>
>>> In my opinion, MPTCP has a great potential benefits for resource
>>> pooling when a single, long-lasting, high-bitrate transport  
>>> stream is
>>> present. On the other hand, MPTCP's use of multiple paths might risk
>>> performance degradation, which seems not to be addressed in this
>>> draft.
>>>
>>> For example, in our testbed, we have a host with two wireless
>>> interfaces, a WLAN (IEEE 802.11b) interface and an HSDPA interface
>>> with roughly the following access network characteristics:
>>>
>>> WLAN: 600 KB/s, 10 ms RTT
>>> HSDPA: 300 KB/s, 100 ms RTT
>>>
>>> MPTCP would be perfect for aggregating both links, achieving 900  
>>> KB/s
>>> and providing a better user experience for "bulk" data transfers,  
>>> such
>>> as video streaming and large file downloads.
>>>
>>> However, if the goal is to download a large number of small-sized
>>> files (for instance downloading and displaying a thumbnail image
>>> gallery), a new problem arises. Due to the large difference in  
>>> access
>>> latency, the WLAN interface might be able to finish the entire
>>> download of a single file even before a connection can be  
>>> established
>>> of the HSDPA interface. In this case, opening an MPTCP connection  
>>> for
>>> each file may result in performance degradation and it may be much
>>> more efficient to let the WLAN interface download 67% of the  
>>> files and
>>> the HSDPA the remaining 33%...
>>>
>>> Except from a short paragraph on "support for small transactions",
>>> this draft seems to lack a motivation for when MPTCP should be used,
>>> when it should not be used, and how such a decision can be made. Are
>>> such decisions made by the Path Managers or left to the application
>>> developer?
>>>
>>> Best regards,
>>> Dominik
>>>
>>>
>>> On Mon, Oct 19, 2009 at 8:32 PM, Ford, Alan <alan.ford@roke.co.uk>
>> wrote:
>>>> Hi all,
>>>>
>>>> We have started work on the beginnings of an Multipath TCP
>> architecture
>>>> draft, combining some of the implementation separation that  
>>>> featured
>> in
>>>> the -01 of the mptcp/multiaddressed draft with some architectural
>>>> considerations from Tng.
>>>>
>>>> http://www.ietf.org/id/draft-ford-mptcp-architecture-00.txt
>>>>
>>>> Comments welcome - but please remember this is very early days!
>>>>
>>>> Cheers,
>>>> Alan
>>>>
>>>>
>>>> _______________________________________________
>>>> multipathtcp mailing list
>>>> multipathtcp@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/multipathtcp
>>>>
>>
> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp