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

Sebastian Moeller moeller0 at gmx.de
Tue Mar 14 12:58:52 EDT 2023


Hi Greg,


> On Mar 14, 2023, at 17:25, Greg White <g.white at 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 at gmail.com <mailto:dave.taht at 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.
> 
> 
> 



More information about the Cake mailing list