Re: [multipathtcp] Regarding the release of sending buffer

Vincent Stone <shihang7422166@gmail.com> Sat, 12 August 2017 08:50 UTC

Return-Path: <shihang7422166@gmail.com>
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 E31DA13274D for <multipathtcp@ietfa.amsl.com>; Sat, 12 Aug 2017 01:50:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.75
X-Spam-Level:
X-Spam-Status: No, score=-1.75 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 6wz7HV50_RJP for <multipathtcp@ietfa.amsl.com>; Sat, 12 Aug 2017 01:50:18 -0700 (PDT)
Received: from mail-pg0-x236.google.com (mail-pg0-x236.google.com [IPv6:2607:f8b0:400e:c05::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CD3F313274A for <multipathtcp@ietf.org>; Sat, 12 Aug 2017 01:50:18 -0700 (PDT)
Received: by mail-pg0-x236.google.com with SMTP id v189so23987875pgd.2 for <multipathtcp@ietf.org>; Sat, 12 Aug 2017 01:50:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=lsle5QjMjUJbmSTUGTO5e1mT1j3nPXyRqjG/UutHRQ4=; b=TCbu6gXNVMSLMgkyA0676wPEgdoErzDJTmaI7d7KAs1EUXVCP9rdBv8RbCRb7kjTXg 7hzImg2Ej/pJrzKW0WT0y8NdpKOOIq9eaTnR1SNox0BtCgehGHtuV3tnLhhDe8I++9Rp piNCTgeQKzI1kTlOMeIM2xPVkF4UhejhS3fRnjP5LRsKORogA7mz3rDuwb4ZbNlyNr6F nu3k3Atv5TCeGWjEPUQ2Gg6wP0VWIMln5N3HZaS2VUwiJVBXEPHqBfeexGLb9zibyQRy OKhrVNHFkPdXB2rvCiJ0y5QRpH8WBXO3rC8NftBjjPy9TXkuI6kh1JBYNNwe8+j2ku4Z QtRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=lsle5QjMjUJbmSTUGTO5e1mT1j3nPXyRqjG/UutHRQ4=; b=sY9P396EKcNuoKkDEg+RY52TJ/MML2vT/5xEPDfRnkSNkLPUm0RZdnSWbn2DVtWEyi 3w9TqStvBz/omqtsGqcmB2PKolEjiLAee3nXpWtAfs91g6nAhU457OUfKv7tdLs98D2x 0nuh2APGJ6Df0aB3CtV4uT2Sm8iLpzhTQp6t6D7pxwcoW7K6ZyxGSdw35DtN912/4Nix NseeBI80X+1SzNoY6uFZg1c55c4OgHxBB37T+oywXL3ZrgymxRUyIOeWHsKBULbVWGLw KL+p2vDXlhC8Q8eq1Qwshr0dDyyqUhJcSSHcOENgtaWfTd5zwLZWck6Gd7macdjIVtqc pS/A==
X-Gm-Message-State: AHYfb5iUbNuLa+/oYwr5z+L3PTImC3jRnhMhbx3FFOi9P7p7qj33RbiB y7Wryh7Usot/lg==
X-Received: by 10.84.128.108 with SMTP id 99mr20469474pla.167.1502527818312; Sat, 12 Aug 2017 01:50:18 -0700 (PDT)
Received: from [127.0.0.1] (107.182.176.120.16clouds.com. [107.182.176.120]) by smtp.gmail.com with ESMTPSA id v134sm4994660pgb.58.2017.08.12.01.50.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 12 Aug 2017 01:50:17 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Vincent Stone <shihang7422166@gmail.com>
In-Reply-To: <20170810162126.GJ3755@Chimay.local>
Date: Sat, 12 Aug 2017 16:50:14 +0800
Cc: multipathtcp@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <6583CF4F-66C5-4121-97A4-B634D05CF8C5@gmail.com>
References: <0940F5BC-7405-4AB0-9C73-E125B56F66B2@gmail.com> <20170809034815.GX3648@Chimay.local> <DEE60ED0-9BBA-4713-B5BF-6E48D73ECC71@gmail.com> <20170810162126.GJ3755@Chimay.local>
To: Christoph Paasch <cpaasch@apple.com>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/CL5GBpjbc2-DXYE1-g5HQfkBNx8>
Subject: Re: [multipathtcp] Regarding the release of sending buffer
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: Sat, 12 Aug 2017 08:50:20 -0000

> If we don't retransmit, the hole will never be filled up and the middlebox
> might stall the flow.
The hole in sequence-number space can be filled either by retransmitted packet or subsequent accumulative ACK. Even if we don't retransmit the packet, the hole will be filled up by accumulative ACK sooner or later. If not, that means all following ACKs have been lost. In that case the flow should be terminated anyway. 
And middlebox can not distinguish between no-retransmition of the packet and the lost retransmitted packet. 

Best regards,
Vincent.

> On Aug 11, 2017, at 00:21, Christoph Paasch <cpaasch@apple.com> wrote:
> 
> Hello,
> 
> On 10/08/17 - 16:47:41, Vincent Stone wrote:
>> Thanks for your response. Let us say we take the preventing retransmission approach. Can the middlebox/firewall notice that? 
> 
> yes, because the firewall will see a hole in the sequence-number space.
> 
>> There is only 1 scenario in which the middlebox will deem the data should be retransmitted( keep in mind that the data has already been delivered correctly to the receiver because it has already been acknowleged by Data ACK): 
>> all following ACKs after the data has been lost/dropped(Just dropped single ACK for the data is not enough because of accumulative ACK). In that case the flow should be terminated anyway. 
>> In fact, there is no way in which a middlebox can distinguish between sender don't retransmit the packet and the retransmitted packet has been lost. So I think it is safe to prevent the retransmission, thus we can free the data upon receiving Data ACK safely.
> 
> What the middlebox will see with regular TCP is that first there is a hole in the
> sequence-number space and then the sender will retransmit it, thus filling
> the hole.
> 
> If we don't retransmit, the hole will never be filled up and the middlebox
> might stall the flow.
> 
> 
> Christoph
> 
>> 
>> Best regards,
>> Vincent
>> 
>>> On Aug 9, 2017, at 11:48, Christoph Paasch <cpaasch@apple.com <mailto:cpaasch@apple.com>> wrote:
>>> 
>>> 't look like "regular" TCP anymore.
>>> 
>>> Middleboxes and firewalls will start blocking this traffic and the receiver
>>> must also be able to gracefully handle this.
>>> 
>>> That's the reason why MPTCP tries hard to make every subflow look like it is
>>> regular TCP, besides a few TCP-options.
>>