[multipathtcp] Regarding the release of sending buffer

Vincent Stone <shihang7422166@gmail.com> Wed, 09 August 2017 03:35 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 7CF5D12702E for <multipathtcp@ietfa.amsl.com>; Tue, 8 Aug 2017 20:35:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.749
X-Spam-Level:
X-Spam-Status: No, score=-1.749 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, HTML_MESSAGE=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 Th6PbL5rArAX for <multipathtcp@ietfa.amsl.com>; Tue, 8 Aug 2017 20:34:59 -0700 (PDT)
Received: from mail-pg0-x22f.google.com (mail-pg0-x22f.google.com [IPv6:2607:f8b0:400e:c05::22f]) (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 9190B124B09 for <multipathtcp@ietf.org>; Tue, 8 Aug 2017 20:34:59 -0700 (PDT)
Received: by mail-pg0-x22f.google.com with SMTP id v189so22695440pgd.2 for <multipathtcp@ietf.org>; Tue, 08 Aug 2017 20:34:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:mime-version:subject:message-id:date:to; bh=VRrWomT3ionb2HJxejG+c38LHd/ZS3L7Hhc+aDa69ZY=; b=tHXY5YQRhi7OoXGcLTo29/2Tgipj8/ZaczyIpkciAVNPboI2TAYhAe4LZ75gjn6Ja5 2+YcgexjLiV0Bvrt+3CUTxPD/VWHM4dkl0eMWNgI4EOY+QtDcQ4fSlK2Ao9hvhKhh7WZ YnXWr487CAOCnYRrOUZ2Sxb2K7rRHoEYAJr8O6YhhqKaFxij69gNgpwSri3RQSLzF2jw WbfhmDQz0lfeO8lCITG0MEL8jfD04zYvkShxrNKXDYR3xXRo2nPz0dRdxYz7Nuuf6fLJ dXHfkcWy/QYS+v0EseMIEQ1j2h1TMZU4JB83a3wHL6gtHVfrnQ3OkI6zDIsUMCluHQLp CnUA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:message-id:date:to; bh=VRrWomT3ionb2HJxejG+c38LHd/ZS3L7Hhc+aDa69ZY=; b=Z3nglURX8riv7ZcEjgDax6LOf2CzX8k6+V+T8ZwKvmAINxuDFy1aMOd4relWXURQTq HrQbf+C12puyAvrLrVI+yZ48/IXZCpEw+ZKPDtq150uO73E0z0FgviL+37/XTeopm9QL E4ZpIQsSYlvFJWYqVVETifDxbLmIkRldRUhY6kBhA2rJyeSzEMx2wgpAeCsKRrjRQ4s/ md/yDSwpm1Xct6vPH//bOjGlFv6ipARcZnaLfhWsBxLgKf5HeM3GoMP8W1dYrcAWtYMs GREqwEK5fn2HThcu+2EPMdrIzubx+BScNYOiuPSFjfyVBbLqIEyMTM+y16s+6A34aCWt 8aMg==
X-Gm-Message-State: AHYfb5i0HJhSGlVjiztpdDmy9FCzJYWnCP/SUvS/OfbTU/wKsZNN5NcN XcpnYE6a31RVbUyXL7Y=
X-Received: by 10.101.70.137 with SMTP id h9mr6185725pgr.50.1502249698800; Tue, 08 Aug 2017 20:34:58 -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 q3sm4685615pgf.69.2017.08.08.20.34.56 for <multipathtcp@ietf.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 08 Aug 2017 20:34:57 -0700 (PDT)
From: Vincent Stone <shihang7422166@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_FD667CF6-D66F-4589-ABB2-E0278516DC45"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Message-Id: <0940F5BC-7405-4AB0-9C73-E125B56F66B2@gmail.com>
Date: Wed, 09 Aug 2017 11:34:58 +0800
To: multipathtcp@ietf.org
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/Csr66A9gxB58vFUZvbnyL2ZzPIU>
Subject: [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: Wed, 09 Aug 2017 03:35:00 -0000

Hi all,
I have a question about when the packet can be freed from the send buffer.
In section 3.3.2 of RFC 6824:
   An MPTCP sender MUST NOT free data from the send buffer until it has
   been acknowledged by both a Data ACK received on any subflow and at
   the subflow level by all subflows on which the data was sent.  The
   former condition ensures liveness of the connection and the latter
   condition ensures liveness and self-consistence of a subflow when
   data needs to be retransmitted.  Note, however, that if some data
   needs to be retransmitted multiple times over a subflow, there is a
   risk of blocking the sending window.  In this case, the MPTCP sender
   can decide to terminate the subflow that is behaving badly by sending
   a RST.

If data is acknowledged by Data ACK, that means it has been already received by receiver. There is no need to wait for the subflow level ACK. Even if the subflow decides to retransmit the data, we can just retransmit a fake/dumb packet, because that packet will be ignored by the receiver (out of receive window) anyway. Or we can advance the send window of the subflow upon the receiving of data ack to prevent the subflow level retransmission. So my question is: can the data be freed from the send buffer once it has been acknowledged by the Data ACK?

Best regards,

Vincent