Re: [tcpm] draft-ietf-tcpm-hystartplusplus and QUIC

Michael Tuexen <michael.tuexen@lurchi.franken.de> Mon, 19 September 2022 22:08 UTC

Return-Path: <michael.tuexen@lurchi.franken.de>
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 C70F2C14CF0E for <tcpm@ietfa.amsl.com>; Mon, 19 Sep 2022 15:08:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.508
X-Spam-Level:
X-Spam-Status: No, score=-1.508 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, KHOP_HELO_FCRDNS=0.398, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2ldnspn_5YZp for <tcpm@ietfa.amsl.com>; Mon, 19 Sep 2022 15:08:32 -0700 (PDT)
Received: from drew.franken.de (drew.ipv6.franken.de [IPv6:2001:638:a02:a001:20e:cff:fe4a:feaa]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2E91AC14F744 for <tcpm@ietf.org>; Mon, 19 Sep 2022 15:08:30 -0700 (PDT)
Received: from smtpclient.apple (unknown [IPv6:2a02:8109:1140:c3d:cda2:ff25:c167:c23]) (Authenticated sender: lurchi) by drew.franken.de (Postfix) with ESMTPSA id AA38871702167; Tue, 20 Sep 2022 00:08:24 +0200 (CEST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\))
From: Michael Tuexen <michael.tuexen@lurchi.franken.de>
In-Reply-To: <e0f16f9e-e16c-2194-bb1c-2afebde2aacc@huitema.net>
Date: Tue, 20 Sep 2022 00:08:24 +0200
Cc: Martin Duke <martin.h.duke@gmail.com>, Zaheduzzaman Sarker <zaheduzzaman.sarker@ericsson.com>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <D364F578-5172-48A2-A8CD-BDC24CF2F983@lurchi.franken.de>
References: <e0f16f9e-e16c-2194-bb1c-2afebde2aacc@huitema.net>
To: Christian Huitema <huitema@huitema.net>
X-Mailer: Apple Mail (2.3696.120.41.1.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/kGvoWjkNLkJtfYL4jvram_wwZtE>
Subject: Re: [tcpm] draft-ietf-tcpm-hystartplusplus and QUIC
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
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: Mon, 19 Sep 2022 22:08:36 -0000

> On 19. Sep 2022, at 20:49, Christian Huitema <huitema@huitema.net> wrote:
> 
> I have followed the progress of the Hystart++ draft in TCPM, and I have a process question.
> 
> Algorithms like Hystart++ are not just used by TCP, but also by other protocols like QUIC. They are developed in the "TCP maintenance" WG, which is indeed about TCP, and thus the spec is quite TCP centric. For example, in the definition section of draft-ietf-tcpm-hystartplusplus, we read that "if the MSS option is not used, [the receiver maximum segment size] is 536 bytes" -- but "QUIC assumes a  minimum IP packet size of at least 1280 bytes" per RFC9000. Which leads to the process question.
Hi Christian,

several of the specification done in TCPM are not limited to TCP, and this is covered
by the charter. Using RACK, for example, makes a lot of sense for SCTP. However, most
of the specs use a language specific to one transport protocol but you can easily
translate them to the other. So there is some transfer to be made by the reader. The
only alternative I see would be to use a very generic, protocol-agnostic, language,
or deal with a set of protocols (including DCCP, QUIC, SCTP, TCP).

In your particular example of HyStart++, the introduction contains:

While this document describes Hystart++ for TCP, it can also be used for other
transport protocols which use slow start such as QUIC [RFC9002] or SCTP [RFC9260].

And as far as I know, there are implementations of HyStart++ for QUIC. I think
the specification is also clear enough to implement it in SCTP.
> 
> Should congestion control algorithm be specified in a transport protocol specific way, as for example "HyStart++ for QUIC", or should the specification be kept as generic as possible?
Do you think QUIC specific text is needed in the document to know how to implement it
for QUIC? If yes, you can still suggest it.

Best regards
Michael
> 
> I can absolutely see valid reasons for doing either way. Having generic specification means doing the work just once, also help achieving somewhat compatible behavior by multiple transport protocols. Having transport specific specifications leads to more precise specification -- HyStart++ for QUIC can reference the correct minimum packet size, the negotiation of "max_udp_payload_size", or the interaction with draft-ietf-quic-ack-frequency.
> 
> The QUIC WG recently had an adoption call of a draft specifying "Careful resumption of congestion control from retained state with QUIC". The adoption was refused. To quote, "The chairs' sense of the feedback is that while this is useful work that people support at the IETF, it is work in a problem space is more broadly to do with congestion control and not entirely QUIC specific." The authors were instructed to work with tsvwg, or with a to-be-formed congestion control WG. So we see two discussions with opposite conclusions: HyStart++ adopted in TCPM, careful resumption redirected to a generic WG.
> 
> I wish there was a consistent approach...
> 
> -- Christian Huitema
> 
> 
> 
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpm