From: Greg White <g.white@cablelabs.com>
To: Dave Taht <dave.taht@gmail.com>,
"Ruediger.Geib@telekom.de" <Ruediger.Geib@telekom.de>
Cc: tsvwg IETF list <tsvwg@ietf.org>, Cake List <cake@lists.bufferbloat.net>
Subject: Re: [Cake] draft-ietf-tsvwg-nqb-15.txt vs the cake AQM
Date: Tue, 14 Mar 2023 16:25:12 +0000 [thread overview]
Message-ID: <407A497F-1546-43E3-BE4C-A052CBE8CD4A@cablelabs.com> (raw)
In-Reply-To: <CAA93jw4_MAX1DULpvU_Uo7BuyvvRpqZ-_gZP+HbhC251osCT3g@mail.gmail.com>
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.
You mentioned a Part II to discuss the various wash modes. I only see two modes (wash/nowash) am I missing something?
-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.
next prev parent reply other threads:[~2023-03-14 16:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <167348364734.15098.9183646444272144529@ietfa.amsl.com>
[not found] ` <FR2P281MB1527B1114EA0718F8BB19DBF9CD79@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
[not found] ` <659CE6DE-2B9D-4210-BAF8-BCC99E2ED875@cablelabs.com>
[not found] ` <FR2P281MB1527003371292BDB9F08764A9CDE9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
[not found] ` <DEB97936-375A-41C8-8ECB-E33F94D30056@cablelabs.com>
[not found] ` <FR2P281MB15273966161929E8BAB937869CA29@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
[not found] ` <7434C6A7-4CED-4D39-A852-2714AB9DA1DC@cablelabs.com>
[not found] ` <FR2P281MB1527C89A1654A77FAD6A24AF9CBE9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
2023-03-14 14:01 ` Dave Taht
2023-03-14 15:09 ` Ruediger.Geib
2023-03-14 16:51 ` [Cake] [tsvwg] " Sebastian Moeller
2023-03-14 17:07 ` Greg White
2023-03-14 16:25 ` Greg White [this message]
2023-03-14 16:58 ` Sebastian Moeller
2023-03-14 20:59 ` Greg White
2023-03-14 16:38 ` Sebastian Moeller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=407A497F-1546-43E3-BE4C-A052CBE8CD4A@cablelabs.com \
--to=g.white@cablelabs.com \
--cc=Ruediger.Geib@telekom.de \
--cc=cake@lists.bufferbloat.net \
--cc=dave.taht@gmail.com \
--cc=tsvwg@ietf.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox