Re: [multipathtcp] Preparing for Prague meeting - things to delete or add to MPTCP protocol bis

<mohamed.boucadair@orange.com> Thu, 16 July 2015 05:54 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E5F641B3161 for <multipathtcp@ietfa.amsl.com>; Wed, 15 Jul 2015 22:54:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.677
X-Spam-Level:
X-Spam-Status: No, score=-0.677 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, THIS_AD=1.922, UNPARSEABLE_RELAY=0.001] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id k-YB2Lgve2xb for <multipathtcp@ietfa.amsl.com>; Wed, 15 Jul 2015 22:54:56 -0700 (PDT)
Received: from relais-inet.francetelecom.com (relais-ias92.francetelecom.com [193.251.215.92]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6BBFC1B315D for <multipathtcp@ietf.org>; Wed, 15 Jul 2015 22:54:56 -0700 (PDT)
Received: from omfedm07.si.francetelecom.fr (unknown [xx.xx.xx.3]) by omfedm12.si.francetelecom.fr (ESMTP service) with ESMTP id 3499E18C9F2; Thu, 16 Jul 2015 07:54:55 +0200 (CEST)
Received: from localhost.localdomain (unknown [127.0.0.1]) by omfedm07.si.francetelecom.fr (ESMTP service) with ESMTP id 25E2F4C06D; Thu, 16 Jul 2015 07:54:55 +0200 (CEST)
Received: from omfedm07.si.francetelecom.fr by omfedm07.si.francetelecom.fr with queue id 409813-36; Thu, 16 Jul 2015 05:54:55 GMT
Received: from Exchangemail-eme2.itn.ftgroup (unknown [10.114.31.2]) by omfedm07.si.francetelecom.fr (ESMTP service) with ESMTP id 09F9C4C069; Thu, 16 Jul 2015 07:54:55 +0200 (CEST)
Received: from OPEXCLILMA3.corporate.adroot.infra.ftgroup ([fe80::60a9:abc3:86e6:2541]) by OPEXCLILM21.corporate.adroot.infra.ftgroup ([fe80::e92a:c932:907e:8f06%19]) with mapi id 14.03.0235.001; Thu, 16 Jul 2015 07:54:54 +0200
From: mohamed.boucadair@orange.com
To: Christoph Paasch <cpaasch@apple.com>, Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>
Thread-Topic: [multipathtcp] Preparing for Prague meeting - things to delete or add to MPTCP protocol bis
Thread-Index: AQHQvxUbk5HVGpZ3tkifzNAHjOY+Hp3ci/MAgAAFSACAAQaPoA==
Date: Thu, 16 Jul 2015 05:54:53 +0000
Message-ID: <787AE7BB302AE849A7480A190F8B93300535C5DF@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
References: <1436204168109.20146@bt.com> <1436205703501.53882@bt.com> <787AE7BB302AE849A7480A190F8B933005359DAA@OPEXCLILMA3.corporate.adroot.infra.ftgroup> <559FD6FF.3040003@uclouvain.be> <787AE7BB302AE849A7480A190F8B93300535BCE9@OPEXCLILMA3.corporate.adroot.infra.ftgroup> <55A672C8.7060901@uclouvain.be> <20150715154413.GF15860@Chimay.local> <55A68104.8070401@uclouvain.be> <20150715160818.GH15860@Chimay.local>
In-Reply-To: <20150715160818.GH15860@Chimay.local>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.168.234.1]
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-PMX-Version: 6.2.1.2478543, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2015.7.16.45415
Archived-At: <http://mailarchive.ietf.org/arch/msg/multipathtcp/sBSKYQiLUml510Xvpk4IwqwZxZ4>
Cc: "multipathtcp@ietf.org" <multipathtcp@ietf.org>
Subject: Re: [multipathtcp] Preparing for Prague meeting - things to delete or add to MPTCP protocol bis
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/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, 16 Jul 2015 05:54:58 -0000

Hi Christoph,

For this to work, ADD_ADDR should convey the external IP address/port not the internal ones.  

FWIW, the steps to be followed are listed in draft-boucadair-mptcp-symmetric:

===
   o  Each endpoint proceeds to the discovery of upstream flow-aware
      devices (e.g., NAT, Firewall).

      This can be achieved by various means, e.g., using UPnP IGD
      [IGD1][IGD2], PCP server discovery [RFC6887], PCP DHCP option
      [RFC7291], DS-Lite AFTR [RFC6334], etc.

      A NAT/firewall can be embedded in a CPE (Customer Premises
      Equipment) and/or hosted in the network provider's side.

   o  Appropriate mappings are instantiated in those discovered flow-
      aware devices.  In particular, external IP address(es) and port
      numbers are retrieved.

      This can be achieved using PCP [RFC6887].  Note, mappings created
      by PCP MAP requests are, by definition, endpoint-independent
      mappings (EIMs) with endpoint-independent filtering (EIF).
      Filters can be associated with the PCP MAP request to restrict a
      mapping to be bound to specific remote peer(s).

      PCP allows to dynamically control both NATs and firewalls.
      Furthermore, PCP allows to retrieve the lifetime associated with
      an external IP address and external port number.

      If the host is a UPnP IGD Control Point, [RFC6970] allows to relay
      UPnP IGD primitives into PCP messages.  PCP can also be used to
      control multi-layered NATs/firewall owing to the activation of
      [I-D.ietf-pcp-proxy] in intermediate NATs/firewalls.

   o  When initiating an MPTCP connection, external IP addresses and
      port numbers are communicated to the remote peer.
=====

Cheers,
Med

> -----Message d'origine-----
> De : Christoph Paasch [mailto:cpaasch@apple.com]
> Envoyé : mercredi 15 juillet 2015 18:08
> À : Olivier Bonaventure
> Cc : BOUCADAIR Mohamed IMT/OLN; philip.eardley@bt.com;
> multipathtcp@ietf.org
> Objet : Re: [multipathtcp] Preparing for Prague meeting - things to delete
> or add to MPTCP protocol bis
> 
> On 15/07/15 - 17:49:24, Olivier Bonaventure wrote:
> > Christoph,
> > >
> > >On 15/07/15 - 16:48:40, Olivier Bonaventure wrote:
> > >>>>>                                          +-+-+-+-+
> > >>>>>
> > >>>>>        Flags is a set of 4 flags:        |C|r|r|r|
> > >>>>>
> > >>>>>                                          +-+-+-+-+
> > >>>>>
> > >>>>>        C flag MUST be set to 1 when the address/port are checked.
> > >>>>>
> > >>>>>        "rrr" are for future assignment as additional flag bits.
> > >>>>>
> > >>>>>        r bits MUST each be sent as zero and MUST be ignored on
> receipt.
> > >>>>>
> > >>>>
> > >>>>However, I'm stil not convinced by the usefulness of using the C bit
> > >>>>that you propose. If a host knows that it cannot receive a SYN over
> a
> > >>>>given address, then the best solution is to not advertise this
> address.
> > >>>
> > >>>[Med] Agree. An implementation that supports the "C" flag is likely
> to advertise addresses/ports for which pinholes have been created in
> NATs/FWs and address/ports that can be used to receive incoming packets
> successfully.
> > >>
> > >>
> > >>>The issue with the implicit approach (i.e., no C-flag) is at the
> server side: should the server interpret the advertisement of an
> address/port as an indication that packets can be sent without
> experiencing reachability issues or not?
> > >>
> > >>This is what RFC6824 assumes today. ADD_ADDR is only a hint about the
> > >>possibility of trying to reach this address. Anyway it will be a SYN
> and the
> > >>host will wait for a SYN+ACK to confirm the reachability
> > >
> > >I think, concerning the reachability, what is rather interesting is to
> > >advertise the secondary address without wanting the peer to even try
> > >establishing a new subflow to this address. This advertisement is done
> in
> > >case the "primary" subflow becomes unreachable. If it becomes
> unreachable,
> > >then the peer can use the advertised address to create a new subflow.
> >
> > You would then propose a kind of "Backup" flag in the ADD_ADDR option
> > meaning that this address should only be used to create a subflow if the
> > primary subflow fails ?
> 
> Yes, something along those lines.
> When all other addresses are failing, then this "backup"-address can be
> used
> for a new subflow.
> 
> 
> Cheers,
> Christoph