Re: [multipathtcp] rfc6824bis - RST after MP_FASTCLOSE retransmission

Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be> Wed, 24 May 2017 08:28 UTC

Return-Path: <olivier.bonaventure@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 6566C12896F for <multipathtcp@ietfa.amsl.com>; Wed, 24 May 2017 01:28:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.601
X-Spam-Level:
X-Spam-Status: No, score=-1.601 tagged_above=-999 required=5 tests=[BAYES_50=0.8, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=uclouvain.be
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 LRcFoAXA9Iy8 for <multipathtcp@ietfa.amsl.com>; Wed, 24 May 2017 01:28:35 -0700 (PDT)
Received: from smtp2.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0032A12714F for <multipathtcp@ietf.org>; Wed, 24 May 2017 01:28:34 -0700 (PDT)
Received: from mbpobo.local (unknown [130.104.228.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: obonaventure@smtp2.sgsi.ucl.ac.be) by smtp2.sgsi.ucl.ac.be (Postfix) with ESMTPSA id BDB7F67DDE3; Wed, 24 May 2017 10:28:26 +0200 (CEST)
DKIM-Filter: OpenDKIM Filter v2.9.2 smtp2.sgsi.ucl.ac.be BDB7F67DDE3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1495614506; bh=jCIqUHDksxutYP/6Y+cLY50Aa7MXW6fKz91vOOAykBM=; h=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To; b=HTcY1ctQlwqxWFLQIQruxMDzGOEw6L3lioLl3zV/0CqjVO0ldNd9XjH0LduscJDdB 9pvtFEh0iC89FyZg3y2gXhcpn9Wkwe49gE7iI5s9/o3NrCr5S6337cnvL0Pby5XZSA 2UkX4+N5k9TxGr+lkAsyUg8K7bD1kkmerxJfrRSE=
X-Virus-Status: Clean
X-Virus-Scanned: clamav-milter 0.99.2 at smtp-2
Reply-To: Olivier.Bonaventure@uclouvain.be
To: Christoph Paasch <cpaasch@apple.com>, =?UTF-8?Q?Fran=c3=a7ois_Finfe?= <francois.finfe@tessares.net>
Cc: multipathtcp@ietf.org
References: <3e6f4b31-15d3-0619-084a-2f264c93d9e5@tessares.net> <20170524050527.GH5506@da0602a-dhcp165.apple.com>
From: Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>
Message-ID: <0ff2085b-b355-dd2e-8f79-18fb6e6d2e4c@uclouvain.be>
Date: Wed, 24 May 2017 10:28:30 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:52.0) Gecko/20100101 Thunderbird/52.1.1
MIME-Version: 1.0
In-Reply-To: <20170524050527.GH5506@da0602a-dhcp165.apple.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: fr-classic
Content-Transfer-Encoding: 8bit
X-Sgsi-Spamcheck: SASL authenticated,
X-SGSI-Information:
X-SGSI-MailScanner-ID: BDB7F67DDE3.A5CBF
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: olivier.bonaventure@uclouvain.be
X-SGSI-Spam-Status: No
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/SRgRuaECUWdKd2RWTwXUcMClRKc>
Subject: Re: [multipathtcp] rfc6824bis - RST after MP_FASTCLOSE retransmission
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
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: Wed, 24 May 2017 08:28:37 -0000

Christoph, Fran├žois,

>>
>>
>> To mitigate this issue, here is a proposal for rfc6824bis:
>> - When the limit of MP_FASTCLOSE retransmission is reached, a TCP RST
>>    could be sent by host A.
>> - In this scenario, firewall M forwards the TCP RST packet and removes
>>    the connection state.
>>
>> This TCP RST packet could contain the MP_FASTCLOSE option.
> 
> wouldn't this exact same scenario happen with regular TCP as well?

Yes, indeed. The difference in MPTCP is that we have sent a RST on all 
subflows except the one where we sent the MP_FASTCLOSE. In fact, the 
MP_FASTCLOSE that we send indicates that we want to remove state for 
this MPTCP connection and the corresponding subflow.

> 
> For example, host A is sending data while host B at one point decides to
> drop the connection with a TCP RST. This TCP RST gets lost between firewall
> N and M. A will keep on retransmitting its data until it gives up and
> signals an ETIMEDOUT to the application upon which the socket gets silently
> closed.

Agreed, but here we are in a situation where the application has already 
accepted to close the connection.

> If we deem the problem severe enough in MPTCP to address it for the
> MP_FASTCLOSE scenario, then I think it should in general be considered for
> TCP that when a connection times out it must be closed with a TCP RST.

In general, I think that it would be wise for a TCP stack to send a RST 
when the stack decides to remove state for a connection.

For MPTCP, a possible modification to rfc6824bis could be

    o  If Host A does not receive a TCP RST in reply to its MP_FASTCLOSE
       after one retransmission timeout (RTO) (the RTO of the subflow
       where the MPTCP_RST has been sent), it SHOULD retransmit the
       MP_FASTCLOSE.  The number of retransmissions SHOULD be limited to
       avoid this connection from being retained for a long time, but
       this limit is implementation specific.  A RECOMMENDED number is 3.

We could add. a sentence like : After 3 retransmission of the 
MP_FASTCLOSE without any TCP RST in response, Host A MAY send a TCP RST 
when it releases the state for this MPTCP connection.


Olivier