Re: [multipathtcp] draft-ford-mptcp-multiaddressed-02: Need ports in ADD address

Costin Raiciu <c.raiciu@cs.ucl.ac.uk> Thu, 12 November 2009 07:00 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 0EF753A6B05 for <multipathtcp@core3.amsl.com>; Wed, 11 Nov 2009 23:00:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[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 aLWpY8O87F6j for <multipathtcp@core3.amsl.com>; Wed, 11 Nov 2009 23:00:05 -0800 (PST)
Received: from bells2.cs.ucl.ac.uk (bells2.cs.ucl.ac.uk [128.16.5.33]) by core3.amsl.com (Postfix) with ESMTP id 0BB823A6919 for <multipathtcp@ietf.org>; Wed, 11 Nov 2009 23:00:05 -0800 (PST)
Received: from host-32-98.meeting.ietf.org ([133.93.32.98]) by bells2.cs.ucl.ac.uk with esmtpsa (TLSv1:AES128-SHA:128) (C.Raiciu authenticated) (Exim 4.54) id 1N8TYR-000Der-AJ; Thu, 12 Nov 2009 06:53:15 +0000
In-Reply-To: <4AFB7024.8030503@ericsson.com>
References: <4AFB7024.8030503@ericsson.com>
Mime-Version: 1.0 (Apple Message framework v753.1)
Content-Type: text/plain; charset="ISO-8859-1"; delsp="yes"; format="flowed"
Message-Id: <385671C6-967F-4908-8928-E70ADED5AB75@cs.ucl.ac.uk>
Content-Transfer-Encoding: quoted-printable
From: Costin Raiciu <c.raiciu@cs.ucl.ac.uk>
Date: Thu, 12 Nov 2009 16:00:01 +0900
To: Magnus Westerlund <magnus.westerlund@ericsson.com>
X-Mailer: Apple Mail (2.753.1)
Cc: "multipathtcp@ietf.org" <multipathtcp@ietf.org>
Subject: Re: [multipathtcp] draft-ford-mptcp-multiaddressed-02: Need ports in ADD address
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: Thu, 12 Nov 2009 07:00:06 -0000

Hi,

There is plenty of discussion on the mailing list about this, but  
maybe it doesn't cover all the issues. Let me try to summarize again:

- for ADDITIONAL subflows (i.e. not the first one) the port number in  
the SYN packet does not matter for the host; demultiplexing is done  
using the connection token.  (this addresses point 1 - you don't need  
to reserve that port on all interfaces).
- let's first answer the question of WHEN add address option is used.  
It is only used when subflow establishment fails from A to B (which  
probably means B is behind NAT). At this point, the host with address  
A will send add address on another subflow, telling the host with  
address B please contact me here. B will send a SYN to A, with the  
proper token. If A is behind a NAT (both A and B are now natted) this  
will not work. People are arguing that if a port were signalled from  
A to B this might work. I have doubts, since this doesn't really work  
today either. However, I have nothing against putting the port in if  
people think it would help reachability.

Costin


On 12 Nov 2009, at 11:17, Magnus Westerlund wrote:

> Hi,
>
> I just looked at draft-ford-mptcp-multiaddressed-02 and saw that  
> the add
> address option lacks a port number. I think that will not work for two
> reasons.
>
> 1. First, there will a large amount of single flow TCP connections and
> you will run into a synchronization issue and resource constrain issue
> if you limit your interface port to be the same over all interfaces.
>
> 2. Your NAT traversal will fail as soon it encounters a NAT that is
> unable to do port preservation. That is likelier and likelier to  
> happen,
> espeically for ISP place NATs where the load level is higher. Port
> preservation will also fail as soon as two sub-flows goes over the  
> same
> NAT. Thus to enable MPTCP to work in cases where you use either an
> explicit signalling protocol (UPnP, etc) or implicit methods, like  
> STUN
> to find out your external subflow address they will not be able to
> preserver the port in the generic case. Thus there is need to be  
> able to
> indicate the listening port.
>
> Cheers
>
> Magnus Westerlund
>
> IETF Transport Area Director
> ----------------------------------------------------------------------
> Multimedia Technologies, Ericsson Research EAB/TVM
> ----------------------------------------------------------------------
> Ericsson AB                | Phone  +46 10 7148287
> Färögatan 6                | Mobile +46 73 0949079
> SE-164 80 Stockholm, Sweden| mailto: magnus.westerlund@ericsson.com
> ----------------------------------------------------------------------
> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp