sqm-scripts icon indicating copy to clipboard operation
sqm-scripts copied to clipboard

*cake.qos: support `unlimited` bandwidth

Open intelfx opened this issue 10 months ago • 4 comments

intelfx avatar Jan 27 '25 03:01 intelfx

Quick note, did anyone test what this does with with fq_codel as selected qdisc?

moeller0 avatar Jan 27 '25 06:01 moeller0

Erm, what's the point of supporting "unlimited" bandwidth? The whole point of sqm-scripts is to setup traffic shaping, without that you could just install a root qdisc, why do you need the complexity of sqm-scripts for this use case?

tohojo avatar Jan 27 '25 11:01 tohojo

The whole point of sqm-scripts is to setup traffic shaping, without that you could just install a root qdisc, why do you need the complexity of sqm-scripts for this use case?

@tohojo Because this tool is a common abstraction that simplifies management of the tc subsystem for both cases. As I understand, at least CAKE is explicitly designed with support for running it without the shaping part:

IF you want to run at line rate for your device, relying instead on backpressure from the ethernet driver (and hopefully BQL) don’t specify the bandwidth.

intelfx avatar Jan 27 '25 21:01 intelfx

Sure, cake can run in unlimited mode just fine, but I'm not sure how much of a 'simplification' it is? I mean, there's literally a single sysctl you can set to select default qdisc for the system, which has the added benefit of also correctly installing an mq qdisc on multi-queue devices, with the selected qdisc as the sub-qdisc for each HW queue.

What's the full config you are using with 'unlimited' bandwidth? Are you setting any other cake parameters?

In any case, if we support this, we should also support this for non-cake qdiscs. Meaning that for fq_codel et al, we should skip the HTB/TBF setup and just install the qdisc on the root interface.

tohojo avatar Feb 10 '25 10:02 tohojo