Re: [tsvwg] draft-ietf-tsvwg-nqb-15.txt vs the cake AQM

Sebastian Moeller <moeller0@gmx.de> Tue, 14 March 2023 16:59 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 E1B22C14CE5E for <tsvwg@ietfa.amsl.com>; Tue, 14 Mar 2023 09:59:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.547
X-Spam-Level:
X-Spam-Status: No, score=-1.547 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmx.de
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 J9rh-0-s8KeR for <tsvwg@ietfa.amsl.com>; Tue, 14 Mar 2023 09:59:01 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 40FBEC14CE38 for <tsvwg@ietf.org>; Tue, 14 Mar 2023 09:59:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1678813133; i=moeller0@gmx.de; bh=aaZf4ZpZmkBn+QNUTt07q078SUw2Urbu3PkReAQqBT8=; h=X-UI-Sender-Class:Subject:From:In-Reply-To:Date:Cc:References:To; b=UJOR0aAQefFz8AuR5iSpUpw/DByV4olKSUihJmtivxb6+SeK9RWQMpK8h6ccBfxB2 24eLQ/bdlBlERRBGuoGhI+mcoYrXKCVIdOodc94r//kofUeRMKnXGS7ugPWr2l73Z3 uKIunWL/jyIWGxnvuxnFEbxaF7BhcbTrlH01touaxxrGpZOtyTLuqZaPHThd5mYLFp FbbDPVn9uuWDqdaf6bERRl61eUqf/YoiCqW7lc5I2OhVTf6WTJZx7IiYKKDz/CkAvv kwyaHo8EWdpP6V/OOb8ckUFNGOHl1CEbTZSvgijkGpb1nan4Y71ZLjhb/JbEjo3Ahj yhu1IaewpS1YQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from smtpclient.apple ([134.76.241.253]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MUowV-1q2pmm0y1p-00Qmto; Tue, 14 Mar 2023 17:58:53 +0100
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.2\))
From: Sebastian Moeller <moeller0@gmx.de>
In-Reply-To: <407A497F-1546-43E3-BE4C-A052CBE8CD4A@cablelabs.com>
Date: Tue, 14 Mar 2023 17:58:52 +0100
Cc: Dave Täht <dave.taht@gmail.com>, "Ruediger.Geib@telekom.de" <Ruediger.Geib@telekom.de>, tsvwg IETF list <tsvwg@ietf.org>, Cake List <cake@lists.bufferbloat.net>
Content-Transfer-Encoding: quoted-printable
Message-Id: <0D20823D-9231-4221-B945-123E210DCD53@gmx.de>
References: <167348364734.15098.9183646444272144529@ietfa.amsl.com> <FR2P281MB1527B1114EA0718F8BB19DBF9CD79@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <659CE6DE-2B9D-4210-BAF8-BCC99E2ED875@cablelabs.com> <FR2P281MB1527003371292BDB9F08764A9CDE9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <DEB97936-375A-41C8-8ECB-E33F94D30056@cablelabs.com> <FR2P281MB15273966161929E8BAB937869CA29@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <7434C6A7-4CED-4D39-A852-2714AB9DA1DC@cablelabs.com> <FR2P281MB1527C89A1654A77FAD6A24AF9CBE9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <CAA93jw4_MAX1DULpvU_Uo7BuyvvRpqZ-_gZP+HbhC251osCT3g@mail.gmail.com> <407A497F-1546-43E3-BE4C-A052CBE8CD4A@cablelabs.com>
To: Greg White <g.white@cablelabs.com>
X-Mailer: Apple Mail (2.3696.120.41.1.2)
X-Provags-ID: V03:K1:VpXFSGHLqgorN2c+9V9OwvU0PDdrvxTrffITyMOQfakPk5QD5Wt 8jFU4iKWcWynJavclhXUOX9kGWnFyl7wno9CC6HEAou/jUo8I5W/jrphKKgqkJ++tQDu2yW jj13De26ZVOm3WXFgfM6qO7K8Jfv5elEoahOligdcNwmToFE9vtYD5Utu9kxGC5M3QvV0Ht /ebyeR5ffHxzMg5YdNunQ==
UI-OutboundReport: notjunk:1;M01:P0:2P4ZLWA55Kk=;lGGBZAUyvpfZ+lrXjrxr530w1zZ H0u+Gm7CbP3uGgRdP451jpQxRMHnoJ6qWvtg+9sxdDr2YT0+EHWd9iBjhg/ta8WP2cNEHhC96 1kVFjRbOdn8ks4dfvfT3QitcVx2mHZrF2qWq7JxplwbpK6EwCBvCVF5ztPndiE3s4LamFazBF aKFqXxbtPra4qk7R+ZQ1dmIXDJ+r1tmwX9J4gMcE/qmhRPFUOjfLAFAkU+HVwpy6RZu0b4VH2 3r99pz4Is1anP950qnQc8Hgk/yF+kIPvisijzLG7U0ClDHIMRAMZH3vBN0oQptUXYVppEcZ9M MrN/Tmu1xlmIA86s+pRnLSiwzam6m7lUitsUHPKvVtEAguGTrgEUmo19duwOEvemmGIpqzRg0 fTdO3QNYFDYw1CMeVowKNWyPNDIgxDaUoc6e6JA4ZCWNQSCY6Pj52kK37Vdbnv1XVd9SDkaXa 4PGAQ2PoN/dM+Tm3FopY3JCZK8k3xG0giH5yXn3tM99VhziMNxfNAlvTfpzJnPEdwcdl1w1m/ wN6gvdXZD1cWOgfcKSnTDEgISyD7u1vQHo4DbPt5nnoPQ5obNFcKaGqnyJfbXlpIpOVyw6JC3 5CM0Mc8VANsytGfv0FqyHsEjsfQJOnjGWRS7KqSrEi3c/NmcIO5/CQgYfSpHW1La2mtkUIkeh 4iuEhDMk2DQzxTH+jwRqhJeaRfODYg1yEKWAlX/lJCOr/Yfc2QgQXfbIx9t+Lj99QEPTXZo3i VfkhGVpXsPT/Pk+NeFgtOoQjcp4oTk3arA3wfL7LcTXtCq4iX5Cd0djl/+C+LRiqnrkumv3GF 0aN2O8lMU6fK63E/U/p2G7n7sLluZXc3AVyIllkeN2ahUjCFM4kIC06Fs1EtYxo08cU6MqV7Y Pen2S0eHQUA+8Xn6xNkLNpZJii0p3MRuCWMzOMEgreib1/v1xT3WfaIcHJrImJcyfjEaPGFLf umIK95z7ezOYjIL3qlP4vf2PGI0=
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/uwAtSWWt1Yr_HL7cbkz8d70y1VA>
Subject: Re: [tsvwg] draft-ietf-tsvwg-nqb-15.txt vs the cake AQM
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.39
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: Tue, 14 Mar 2023 16:59:06 -0000

Hi Greg,


> On Mar 14, 2023, at 17:25, Greg White <g.white@cablelabs.com> wrote:
> 
> Hi Dave, 
> 
> The NQB requirement is that it shares capacity with and is at the same priority as Default (CS0).  So, for all priority queue options in CAKE (aside from precedence, perhaps), I would recommend that you align with that requirement. So, I think I agree with what you wrote below for besteffort, diffserv3 and precedence, but for diffserv4 CAKE would be non-compliant if it put NQB into the video class. I don't understand diffserv8, since the man page doesn't appear to describe it.  But, the same logic should hold there too. 
> 
> In most cases, I think the flow isolation in CAKE already provides the benefit that the NQB PHB is aiming to achieve.  But, in the flowblind, srchost, dsthost, & hosts modes, it doesn't.
>  Here is where you could consider doing a full implementation of the NQB PHB (a separate queue in the Best Effort tin). If you choose to take that on, the recommendation is to implement a traffic protection mechanism.  This would be a really interesting test case to see whether you think the draft is sufficiently detailed for you to come up with a design for linux. 

	But this additional queue would violate the promises made by flowblind, srchost, dsthost, & hosts, so you would need to add this as additional key word documented to add an additional queue for NQB, but what to do then, do this e.g. individually for each of the host queues or just a single one.

If you ask me don't do it at all or as specific modifier keyword for the isolation modes, not that you asked ;)


> You mentioned a Part II to discuss the various wash modes.  I only see two modes (wash/nowash) am I missing something?

	Same here, and again, if you want a special mode that still propagates NQB please give this a new descriptive name retain_e2e_DSCPs or similar, or an explicit way to enumerate which DSCPs to wash.

Regards
	Sebastian


> 
> -Greg
> 
> 
> On 3/14/23, 8:02 AM, "Dave Taht" <dave.taht@gmail.com <mailto:dave.taht@gmail.com>> wrote:
> 
> 
> I have been sitting on the cake related patches for this for years
> now, and it is my hope to get support for NQB into the next linux
> release, regardless of whether it gets through last call at this time,
> unless the selected codepoint number changes. (?)
> 
> 
> Cake (please see the man page here:
> https://man7.org/linux/man-pages/man8/tc-cake.8.html <https://man7.org/linux/man-pages/man8/tc-cake.8.html> ) supports
> multiple diffserv models.
> 
> 
> besteffort is exactly that, besteffort, and will not gain NQB support.
> 
> 
> The diffserv3 interpretation is the default, and given that flow
> queuing handles most of the NQB-like problems naturally, and Voice
> (CS7, CS6, EF, VA, TOS4) is all that is handled there today, I am
> thinking of *not* elevating NQB into that class is the right thing.
> 
> 
> NQB fits nicely into the diffserv4 model in the video class, so I will
> put it there. since covid we tend to use the diffserv4 model a lot to
> manage videoconferencing better.
> 
> 
> As for the CS0-CS7 precedence model inc cake, we have declared that
> obsolete in the code, and wherever NQB falls into it, great. And the
> diffserv8, I don´t know.
> 
> 
> Anyway, does that work for everyone?
> 
> 
> Part II of this would be a discussion of the various wash modes, but
> merely getting the right byte into the right lookup tables after all
> this discussion, would be nice.
> 
> 
>