Re: [tcpm] question regarding draft-gomez-tcpm-delack-suppr-reqs
Carles Gomez Montenegro <carlesgo@entel.upc.edu> Fri, 01 May 2020 08:56 UTC
Return-Path: <carlesgo@entel.upc.edu>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1A2FA3A0CBB for <tcpm@ietfa.amsl.com>; Fri, 1 May 2020 01:56:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.895
X-Spam-Level:
X-Spam-Status: No, score=-1.895 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=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 7qa7x4zC1L5o for <tcpm@ietfa.amsl.com>; Fri, 1 May 2020 01:56:42 -0700 (PDT)
Received: from dash.upc.es (dash.upc.es [147.83.2.50]) (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 223E83A0CB9 for <tcpm@ietf.org>; Fri, 1 May 2020 01:56:41 -0700 (PDT)
Received: from entelserver.upc.edu (entelserver.upc.es [147.83.39.4]) by dash.upc.es (8.14.4/8.14.4/Debian-4.1ubuntu1) with ESMTP id 0418uVWT057668; Fri, 1 May 2020 10:56:32 +0200
Received: from webmail.entel.upc.edu (webmail.entel.upc.edu [147.83.39.6]) by entelserver.upc.edu (Postfix) with ESMTP id A64241D53C1; Fri, 1 May 2020 10:56:30 +0200 (CEST)
Received: from 83.53.208.128 by webmail.entel.upc.edu with HTTP; Fri, 1 May 2020 10:56:31 +0200
Message-ID: <23157b5e4063646449099e97eccde0f3.squirrel@webmail.entel.upc.edu>
In-Reply-To: <CAK6E8=dpmjf9MDQQVSkURcxnFrB3ZK_zqUDyoKs=MJgeLCeqvQ@mail.gmail.com>
References: <CAK6E8=dpmjf9MDQQVSkURcxnFrB3ZK_zqUDyoKs=MJgeLCeqvQ@mail.gmail.com>
Date: Fri, 01 May 2020 10:56:31 +0200
From: Carles Gomez Montenegro <carlesgo@entel.upc.edu>
To: Yuchung Cheng <ycheng=40google.com@dmarc.ietf.org>
Cc: jon.crowcroft@cl.cam.ac.uk, "tcpm@ietf.org Extensions" <tcpm@ietf.org>, Neal Cardwell <ncardwell@google.com>
User-Agent: SquirrelMail/1.4.21-1.fc14
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-Priority: 3 (Normal)
Importance: Normal
X-Virus-Scanned: clamav-milter 0.100.3 at dash
X-Virus-Status: Clean
X-Greylist: Delayed for 72:04:10 by milter-greylist-4.3.9 (dash.upc.es [147.83.2.50]); Fri, 01 May 2020 10:56:32 +0200 (CEST)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/nLh_sUfPslJUxPDWxIbwgsz6qKM>
Subject: Re: [tcpm] question regarding draft-gomez-tcpm-delack-suppr-reqs
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 01 May 2020 08:56:44 -0000
Dear Yuchung, Thanks for your questions and comments. Please find below my inline responses: > thanks for the talk! > > https://tools.ietf.org/html/draft-gomez-tcpm-delack-suppr-reqs-01#section-3.1 > "Note that, while Appropriate Byte Counting (ABC) [RFC3465] might be used > to address this problem, it remains as an experimental mechanism, not > fully included in RFC 5681, which specifies standard TCP congestion > control. " > > It's not clear what "fully included" means here. AFAICT, RFC5681 > includes the essence of ABC explicitly. > > https://tools.ietf.org/html/rfc5681#section-3.1 > > " During slow start, a TCP increments cwnd by at most SMSS bytes for > each ACK received that cumulatively acknowledges new data. Slow > start ends when cwnd exceeds ssthresh (or, optionally, when it > reaches it, as noted above) or when congestion is observed. While > traditionally TCP implementations have increased cwnd by precisely > SMSS bytes upon receipt of an ACK covering new data, we RECOMMEND > that TCP implementations increase cwnd, per: > > cwnd += min (N, SMSS) (2) > > where N is the number of previously unacknowledged bytes acknowledged > in the incoming ACK. This adjustment is part of Appropriate Byte > Counting [RFC3465] and provides robustness against misbehaving > receivers that may attempt to induce a sender to artificially inflate > cwnd using a mechanism known as "ACK Division" [SCWA99]. ACK > Division consists of a receiver sending multiple ACKs for a single > TCP data segment, each acknowledging only a portion of its data. A > TCP that increments cwnd by SMSS for each such ACK will > inappropriately inflate the amount of data injected into the network." Note that the problem pointed out is that, as stated in the RFC 5681 text above: "During slow start, a TCP increments cwnd by at most SMSS bytes for each ACK received that cumulatively acknowledges new data" It may be desirable to support, during slow start, a cwnd increase by more than SMSS per each ACK acknowledging new data. In fact, couple of paragraphs later, RFC 5681 explicitly indicates the following: "We note that [RFC3465] allows for cwnd increases of more than SMSS bytes for incoming acknowledgments during slow start on an experimental basis; however, such behavior is not allowed as part of the standard." That is what we meant by "not fully included in RFC 5681" in our document. > As a side note, Linux stack has implemented the principle of abc in > its congestion control (including slow start) Thanks for the information. Yes, in fact, I second the WG members who stated on the chat, during the interim, that it is surprising that ABC remains as an experimental document. I realize that, at an implementation level, the problem pointed out above is being addressed in many platforms. > regarding delayed ACK harming slow-start or latency, I am not too sure > either: > > 1) The ACK is delayed but not the data > > 2) The delay of the ACK can indeed delay cwnd growth during slowstart. > > But the ACK is delayed because the packet is likely a sub-MSS data, > which is again likely caused by application limit (i.e. the > application has sent all its data like a HTTP response). In this case > the delay of the cwnd growth does not hurt the performance since the > application has no data left to send. > > The only penalty occurs when the application has more data to send > but cwnd is still gated by the arrival of the delayed ACK. However, in > many request - response protocol, either the (non-delayed) ACKs > triggered by prior full-MSS data inflight or the delayed ACKs would > have returned to grow the cwnd to sending immediately. > > I can construct scenarios where delayed ACK significantly hurts > application. But I don't think the scenario is too common. I will > suggest more tests to quantify the effect of delayed ACK effect on > slow-start. Yes, I tend to agree. In fact, the two main problems due to Delayed ACKs that we identified so far in the area of slow start are: - The fact that ABC might not always be supported (due to its "Experimental" status). - Precluding sender behaviors such as chirping. Once again, thanks for your valuable feedback! Cheers, Carles > _______________________________________________ > tcpm mailing list > tcpm@ietf.org > https://www.ietf.org/mailman/listinfo/tcpm >
- [tcpm] question regarding draft-gomez-tcpm-delack… Yuchung Cheng
- [tcpm] A longer follow-up on my comment on draft-… Gorry Fairhurst
- Re: [tcpm] A longer follow-up on my comment on dr… Bob Briscoe
- Re: [tcpm] A longer follow-up on my comment on dr… Gorry Fairhurst
- Re: [tcpm] question regarding draft-gomez-tcpm-de… Carles Gomez Montenegro
- Re: [tcpm] A longer follow-up on my comment on dr… Bob Briscoe
- Re: [tcpm] question regarding draft-gomez-tcpm-de… Yuchung Cheng
- Re: [tcpm] question regarding draft-gomez-tcpm-de… Carles Gomez Montenegro
- Re: [tcpm] question regarding draft-gomez-tcpm-de… Vidhi Goel
- Re: [tcpm] question regarding draft-gomez-tcpm-de… Yuchung Cheng