Re: [tsvwg] Review comments on a careful read of the L4S ID

Sebastian Moeller <moeller0@gmx.de> Fri, 07 May 2021 22:26 UTC

Return-Path: <moeller0@gmx.de>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28A3C3A3627 for <tsvwg@ietfa.amsl.com>; Fri, 7 May 2021 15:26:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.349
X-Spam-Level:
X-Spam-Status: No, score=-2.349 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=gmx.net
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 jMTc3c9oqHxB for <tsvwg@ietfa.amsl.com>; Fri, 7 May 2021 15:26:48 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B21BD3A3625 for <tsvwg@ietf.org>; Fri, 7 May 2021 15:26:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1620426361; bh=1yQW8E2t1tnpR2SOOk6OLmkDl371yizKCYv8eE4jAh8=; h=X-UI-Sender-Class:Subject:From:In-Reply-To:Date:Cc:References:To; b=TdbwXGuoVeYM7E5Jte6x+H5Pp5b9LSfUMI/tCG1YajW6j6V9QwnrOuCk10bPsYd5B i5SRtcKi3AsR70QPeUkq4e1fEqtRgDHSjrRBbh/nZmGOuWqo5Qf4LDB185pORZtyqj YMqYHD4xpT7z5qC4MVC5PUcBp4LywUhC5SfKL2Sw=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Received: from [192.168.42.229] ([95.116.124.26]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MeU0q-1l4hht0CcW-00aZLY; Sat, 08 May 2021 00:26:01 +0200
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.20\))
From: Sebastian Moeller <moeller0@gmx.de>
In-Reply-To: <fc763f1d-3abf-0bce-a81a-29c8cd635117@bobbriscoe.net>
Date: Sat, 08 May 2021 00:25:59 +0200
Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>, TSVWG <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <F0DD84D3-CF84-437F-AD3C-B4162A623B08@gmx.de>
References: <634676ca-272d-d616-c352-b38446cf7aab@erg.abdn.ac.uk> <a97fa9fd-3721-af32-a486-7c966d7d108c@tomh.org> <MN2PR19MB40458998C271D5227886866183589@MN2PR19MB4045.namprd19.prod.outlook.com> <1323d4b6-326e-f35d-b481-4921d5f52b8e@erg.abdn.ac.uk> <5F9FF409-67B8-4F47-8587-260C2130AD99@gmx.de> <8a4129f5-e449-7237-e664-3a04b4177f1b@erg.abdn.ac.uk> <491B6198-346D-4F16-B5D5-3D475B2E09FA@gmx.de> <fc763f1d-3abf-0bce-a81a-29c8cd635117@bobbriscoe.net>
To: Bob Briscoe <ietf@bobbriscoe.net>
X-Mailer: Apple Mail (2.3445.104.20)
X-Provags-ID: V03:K1:k1zKYlve9nqZkmCzMLawxYoWctIi4Ou+tWAbefaKBtP/3k+79o8 nPsE1a0EB7QFY8/KihVR22VNKanY8/sDeo2Rz/Sod/U+aeaCN8VxzwfYoGJk42ZJ8nWDI02 GAxnPi/0ELOahHKnI5szjJO280d4uv4yh2Q8Z3OcwTNVUdZQfQrCERej4WeaYpVamtDzeLe H+hrolGfrofnX4C25gz5A==
X-UI-Out-Filterresults: notjunk:1;V03:K0:v+phIv1WsMg=:rWwRKbOK4P/mqDyG+6p76Q LhLWghsgGipsaVkJ0FGsDwR2MCwJp23b+3wFVNn2v+DbdryB6I1gasI1wcoenXauuI37Gl7lF s5lYfvF8uuPTfkmkvMFRfTNdjQa3v97rvvDKJWKW4ElwPGqnUCihkWVhis4cSM1QUlZmG5DAj j7LAQuIgoYr4Y4C+gajQvMXNtOVs03hbEJkpvK1eXpoouZeoNLhs+bSqP85/hFRTnZUZidveP E9FmO0jlmETL4uoZ6nxYSlG5hOYF1WssubPYuRY0VVGo7WefUm50VknYwhL0+7p18gyV+3dzh 84sx6mTwqf/1UcN/XH2EyXnDZEv+/K9AAxtNpUqyPLP/f5PNHSRGNy4dpnBin6O8yD2ozxXo7 MZduL2jJREnCJefv3TeBtHsrTZU2w+nY0o9kNzFZ7hOlxZB7MLxyEvsvjdawVGtMYeDCQ3ebn VYQbK52qS9o78oFVsL/m+IBu5QxPfRg+srCyScASKNHSkMxx42K7zaalzdN7AnxG49p+MmuoZ 7VeTogvgE9ofrE8rS5J93O5RxK/JWFwKjl9Nl6jRCc4LABKPVi3z+x0pmPCFUM4k8b7EP+Pyc rUI1EKIv9B2o6FSwNerFa6attKxbFaJv5yzcaiy4OzA+i1JuN6Zolv1qSC3D1t2miW/paeDuh Zbf1OPJlfrPvojioml9qlfvn5b7bg75v6OABRqmHpZfIIxSpDEiCkGB3KFBh1757Kayf3iGFs w+T0+pC1dtONfb2947B0rJ4KvF7teccusLxtdfqplEU2S5kd0xK2T13emnDTfCKyu045CEUVa IitHtKDZosigELdSRgxL0NjkWPnuT9rG5gMwN88CQAFeNHwoapDi8a0s9FCZK9VzUy5C8wBml I7CADDcgdaTyd3rR0fn7fOcj4aDwAC5v0BQK7dFKTyIqNab7CM/Te28AvhgJ428DYhKJ4DByU h+H8s/QG6x10RprLwZ9ddOascLXbe8XBV4m8vfhSVX+5CeUV/XgaUIzYssOq3BVictS22pPr6 t6Iag4DxTrbvdcqdek5L1jTqP0P+9V78AElGitQzXPres+q42FkVnEMjml+lO1FiN9yDMRRDd ucDhk4BKQzxypd/MgHNrCaEbQtXY6TTviiOt31AzX0zgD9KDVw1QF872YtT4JrRhg1u85H8xA 4qNPaQ+8h9R/iU0hJRcdxoBiViLc/r27jHNvKiFiXQHQ1rkOwE2CsQ7+cWE1aU9DEPC1Q=
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/zUJcFAYUhokZbxftkX4uRqFdKbo>
Subject: Re: [tsvwg] Review comments on a careful read of the L4S ID
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 07 May 2021 22:26:53 -0000

Hi Bob,



> On May 7, 2021, at 23:35, Bob Briscoe <ietf@bobbriscoe.net> wrote:
> 
> Sebastien,
> 
> On 07/05/2021 15:45, Sebastian Moeller wrote:
>> 	[SM2] But QUICK is missing quite a number of the other requirements for a L4S-compatible protocol, so can clearly not be used for open-internet testing at the current time, no?
> 
> [BB] What exactly do you believe is missing?

	Since so far all that QUIC has implemented is a back-channel for the received ECN code points at the receiver, I naively? assume the following laundry list is not confirmed to be operational:

   o  A scalable congestion control MUST be capable of being replaced by
      a Classic congestion control (by application and/or by
      administrative control).  If a Classic congestion control is
      activated, it will not tag its packets with the ECT(1) codepoint
      (see Appendix A.1.3 for rationale).

   o  As well as responding to ECN markings, a scalable congestion
      control MUST react to packet loss in a way that will coexist
      safely with Classic congestion controls such as standard Reno
      [RFC5681], as required by [RFC5033] (see Appendix A.1.4 for
      rationale).

   o  In uncontrolled environments, monitoring MUST be implemented to
      support detection of problems with an ECN-capable AQM at the path
      bottleneck that appears not to support L4S and might be in a
      shared queue.  Such monitoring SHOULD be applied to live traffic
      that is using Scalable congestion control.  Alternatively,
      monitoring need not be applied to live traffic, if monitoring has
      been arranged to cover the paths that live traffic takes through
      uncontrolled environments.

      The detection function SHOULD be capable of making the congestion
      control adapt its ECN-marking response to coexist safely with
      Classic congestion controls such as standard Reno [RFC5681], as
      required by [RFC5033].  Alternatively, if adaptation is not
      implemented and problems with such an AQM are detected, the
      scalable congestion control MUST be replaced by a Classic
      congestion control.

      Note that a scalable congestion control is not expected to change
      to setting ECT(0) while it transiently adapts to coexist with
      Reno.

      See Appendix A.1.5 and [I-D.ietf-tsvwg-l4sops] for rationale.

   o  A scalable congestion control MUST reduce RTT bias as much as
      possible in the range between the minimum likely RTT and typical
      RTTs expected in the intended deployment scenario (see Appendix A.1.6
      for rationale).

   o  A scalable congestion control SHOULD remain responsive to
      congestion when typical RTTs over the public Internet are
      significantly smaller because they are no longer inflated by
      queuing delay.  It would be preferable for the minimum window of a
      scalable congestion control to be lower than 1 segment rather than
      use the timeout approach described for TCP in S.6.1.2 of [RFC3168]
      (or an equivalent for other transports).  However, a lower minimum
      is not set as a formal requirement for L4S experiments (see Appendix A.1.7
      for rationale).

   o  A scalable congestion control's loss detection SHOULD be resilient
      to reordering over an adaptive time interval that scales with
      throughput and adapts to reordering (as in [RFC8985]), as opposed
      to counting only in fixed units of packets (as in the 3 DupACK
      rule of [RFC5681] and [RFC6675], which is not scalable).  As
      packet rates increase (e.g., due to new and/or improved
      technology), congestion controls that detect loss by counting in
      units of packets become more likely to incorrectly treat
      reordering events as congestion-caused loss events (see Appendix A.1.8
      for further rationale).  This requirement does not
      apply to congestion controls that are solely used in controlled
      environments where the network introduces hardly any reordering.

   o  A scalable congestion control is expected to limit the queue
      caused by bursts of packets.  It would not seem necessary to set
      the limit any lower than 10% of the minimum RTT expected in a
      typical deployment (e.g. additional queuing of roughly 250 us for
      the public Internet).  This would be converted to a number of
      packets under the worst-case assumption that the bottleneck link
      capacity equals the current flow rate.  No normative requirement
      to limit bursts is given here and, until there is more industry
      experience from the L4S experiment, it is not even known whether
      one is needed - it seems to be in an L4S sender's self-interest to
      limit bursts.


https://datatracker.ietf.org/doc/html/draft-ietf-quic-recovery-34#section-7 seems to confirm that QUIC currently implements rfc3168 style CE response, with the possibility of exchanging the sender CC algorithm. But I see no L4S "module" for quic. If you know where I can find the implementation of the above laundry list for QUIC,  point to the right UL, please.


> 
> If you add a scalable congestion control at the sender, by default from v1 of the IETF QUIC protocol, it provides the necessary accurate ECN feedback (and of course loss feedback) with no alterations required to the protocol.

	[SM] Potentially a nomenclature mismatch, when I say protocol, I do not speak only about the on-the-wire headers, but also the specification what to do with the received information so I include the CC algorithm as part of the protocol. If protocol is the wrong word, I apologize. But yeah we seem to agree, to fulfill the L4S protocol requirements QUIC needs to grow a compliant L4S-CC, in other words currently that part is missing in QUIC.


> See for instance https://github.com/qdeconinck/picoquic/tree/quic-prague where Quenten De Coninck added the Prague CC as it was at the time to QUIC in a couple of days at a hackathon (not maintained since, but it at least proved that QUIC had all the necessary facilities).

	Well, see, IMHO current TCP Prague does not fully fulfill the L4S protocol-requirements, so I am not convinced, that an abandoned port of an older version of TCP Prague without either the the WIP RTT-debias ot rfc3168 detection/fall-back components, will count as proof that QUIC is an L4S-compatible protocol today. I do not claim that making n L4S-aware QUIC version is impossible, but simply that current QUIC is not that version (yet?).

Best Regards
	Sebastian

P.S.: I must be missing something here...


> 
> 
> 
> Bob
> 
> -- 
> ________________________________________________________________
> Bob Briscoe                               http://bobbriscoe.net/
>