Re: [multipathtcp] MP_CAP Final ack drop and fallback behavior

Christoph Paasch <christoph.paasch@uclouvain.be> Thu, 25 July 2013 08:30 UTC

Return-Path: <christoph.paasch@uclouvain.be>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2D34A21F9CE7 for <multipathtcp@ietfa.amsl.com>; Thu, 25 Jul 2013 01:30:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9j6CLQfoTQyc for <multipathtcp@ietfa.amsl.com>; Thu, 25 Jul 2013 01:30:19 -0700 (PDT)
Received: from smtp6.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by ietfa.amsl.com (Postfix) with ESMTP id 68D4221F9B4C for <multipathtcp@ietf.org>; Thu, 25 Jul 2013 01:30:10 -0700 (PDT)
Received: from localhost (haproxy2.sipr.ucl.ac.be [130.104.5.120]) by smtp6.sgsi.ucl.ac.be (Postfix) with ESMTP id 68DD618348B; Thu, 25 Jul 2013 10:29:57 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.3 smtp6.sgsi.ucl.ac.be 68DD618348B
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1374740997; bh=RTFmtPnCKPgdgnHI3R+xgRgFkGRf4m7ilNcO8KjKWD8=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:In-Reply-To; b=vGXDiq1xPUxqsBnujmf75/N7mrEg3RqlqeBaqIefjbXvTpjZYKtyFTJj4cDAI/Peb CSzBbaG2cEl7PcPcK8Dt2tUwgp2T1khxQDUCDQTuvDTrR6g/yjDmzP8LrkUL4n90Yk a8Ymn3LYCGywJC+QG/uY5eHGLYqt9KSG/vJcEiNA=
Date: Thu, 25 Jul 2013 10:29:57 +0200
From: Christoph Paasch <christoph.paasch@uclouvain.be>
To: Krishna Khanal <krishna.khanal2@citrix.com>
Message-ID: <20130725082957.GD3897@cpaasch-mac>
References: <CAO249yfyFmbfVBK_ZqyJvNm4JfCbXJLH-XMSo5iF1Ms-A5-F7w@mail.gmail.com> <5E21A2ABD63A394988AE055C785C29C4063C9AF9@SINPEX01CL02.citrite.net> <20130724090855.GA11135@cpaasch-mac> <5E21A2ABD63A394988AE055C785C29C4063CA2CB@SINPEX01CL02.citrite.net> <20130725074624.GA3897@cpaasch-mac> <5E21A2ABD63A394988AE055C785C29C4063CA539@SINPEX01CL02.citrite.net>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <5E21A2ABD63A394988AE055C785C29C4063CA539@SINPEX01CL02.citrite.net>
User-Agent: Mutt/1.5.21 (2010-09-15)
X-Virus-Scanned: clamav-milter 0.97.7-exp at smtp-6.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-SGSI-MailScanner-ID: 68DD618348B.AC8BC
X-SGSI-MailScanner: Found to be clean
X-SGSI-SpamCheck: n'est pas un polluriel, SpamAssassin (not cached, score=0.729, requis 5, ALL_TRUSTED -2.00, DKIM_SIGNED 0.10, DKIM_VALID -0.10, DKIM_VALID_AU -0.10, DKIM_VERIFIED -1.00, FSL_HELO_NON_FQDN_1 0.00, HELO_LOCALHOST 3.83)
X-SGSI-From: christoph.paasch@uclouvain.be
X-SGSI-Spam-Status: No
Cc: multipathtcp <multipathtcp@ietf.org>
Subject: Re: [multipathtcp] MP_CAP Final ack drop and fallback behavior
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.12
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: <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, 25 Jul 2013 08:30:38 -0000

Hello,

On 25/07/13 - 08:26:24, Krishna Khanal wrote:
> Hi Christoph, Yes server sending its willingness but letting client decide
> on the reliability of final ack looks better. 
> 
> In my experience, there is significant fallback due to receiving data
> packet before final ack, though I don't have exact data to share here.
> Anyone having any experience with this?

are you using the Linux implementation as a client?

I would be surprised if you have so many fallbacks, because you would need
a drop of the third ACK.
Thus you maybe have a high loss-rate on the path (?).


Cheers,
Christoph

> 
> Regards, Krishna
> 
> 
> -----Original Message----- From: Christoph Paasch
> [mailto:christoph.paasch@uclouvain.be] Sent: Thursday, July 25, 2013 1:18
> PM To: Krishna Khanal Cc: multipathtcp Subject: Re: [multipathtcp] MP_CAP
> Final ack drop and fallback behavior
> 
> Hello Krishna,
> 
> On 25/07/13 - 04:51:13, Krishna Khanal wrote:
> > What about setting a flag in the SYNACK packet to tell the peer about
> > the reliability of the final ack? If the administrator thinks it is ok
> > to put a client on hold for an RTT, then they can set the flag in the
> > synack packet and force client to do reliable transmission of final ack.
> 
> I'm not against this flag.  But, it should just be a signal of the server
> for the client, saying "I'm doing stateless connection establishment". In
> the end, it's the client who will decide if he wants to trade this
> additional RTT for assured MPTCP-connectivity or not.
> 
> 
> Cheers, Christoph
> 
> 
> > -----Original Message----- From: Christoph Paasch
> > [mailto:christoph.paasch@uclouvain.be] Sent: Wednesday, July 24, 2013
> > 2:39 PM To: Krishna Khanal Cc: multipathtcp Subject: Re: [multipathtcp]
> > MP_CAP Final ack drop and fallback behavior
> > 
> > Hello Krishna,
> > 
> > On 24/07/13 - 08:05:40, Krishna Khanal wrote:
> > > Hi, For stateless implementation of MP_CAPABLE flow, there is no way
> > > to continue with MPTCP if the final ack of 3-way MP_CAP handshake is
> > > dropped or the data packet is received before the MP_CAP ack due to
> > > out of ordering of the packet in the network. Only way to continue
> > > with the transaction is to fallback to regular TCP and there is a
> > > pretty much chance of happening this in the real network. So, there is
> > > always a requirement of fallback even if the middle devices supports
> > > and understands MPTCP.
> > > 
> > > Is there any thought on making MP_CAP final ack reliable like MP_JOIN
> > > final ack or including MP_CAP final ack options with the data packet
> > > along with DSS packet until the ack is received? Second, option may
> > > not be suitable because it consumes all the option space and first
> > > option also tend to increase the handshake duration and block the
> > > request by atleast an RTT.
> > > 
> > > Any thought?
> > 
> > In the beginning of MPTCP, the third ACK with the MP_CAPABLE was sent in
> > a reliable way, as it is done today for the third ACK with the MP_JOIN.
> > But this got removed due to the additional RTT:
> > 
> > http://www.ietf.org/mail-archive/web/multipathtcp/current/msg01529.html
> > 
> > 
> > Then, the status of the draft was for some time that MPTCP was doing
> > reliable transmission of the third ACK+MP_CAPABLE, but allowed sending
> > data before the arrival of this third ACK. However, this did not help,
> > as early arrival of data (prior to the third ACK) will still trigger a
> > fallback. So, the MPTCP-draft changed to a non-retransmitting third-ack
> > as it is for today:
> > 
> > http://www.ietf.org/mail-archive/web/multipathtcp/current/msg01699.html
> > 
> > 
> > It would not be possible to combine MP_CAPABLE with the DSS-option and
> > still use stateless connection establishment:
> > 
> > MP_CAPABLE: 20 bytes DSS-option: 4 bytes (header) + 4 bytes (DSN) + 4
> > bytes (Subflow-seq) + 4 bytes (Data-length + csum) = 16 bytes
> > 
> > So, there are 4 more bytes left. This would mean that we cannot put the
> > Timestamp-option, which is required for stateless connection
> > establishment.
> > 
> > 
> > 
> > Cheers, Christoph