SQM configuration wiki page missing information

[OpenWrt Wiki] SQM (Smart Queue Management)

Looking at this line specifically:

  • For Cable - Choose Ethernet, and set per packet overhead 18 mpu 64 noatm

This is not clear. It is confusing that "mpu 64 noatm" is separate from per packet overhead. I was able to find an explanation of "mpu 64" here, along with some other suggested settings:

It should be something like:

Additionally, I haven't been able to find an explanation of the "noatm" part, where it should go, or why it is a suggested setting.

This is a technically superfluous keyword to tell cake not to account for ATM/AAL5 cell framing, since atm is not the default behaviour it is not strictly required. Cakes man page has more information.

I respectfully think that giving instructions what to add is better than referencing yet another document. But I also think that at least the VDSL recommendation should also include a mpu stanza.

Copying the instructions into the wiki is probably a better option, but I also don't have write access to do that, and I don't know enough about the underlying system to know if anything I write is correct

I wrote that some time ago and it was taken from the man page:
https://man7.org/linux/man-pages/man8/tc-cake.8.html

After discussions with experts, for docsis cable modems while overhead 18 is sometimes optimal, it's best simply use overhead 22 to allow for the possibility of VLAN tagging, and ignore those other superfluous details which won't help much anymore. I'll use my wiki account to update that page (EDIT: wiki updated), but also refer to this more detailed page for further info:

So the mpu stanza actually should be recommended, not specifying this can be noticeable if a user has loads of small packets, like TCP ACKs. It is fine trying to streamline things, but let's keep the relevant information in one place.

2 Likes

I think with docsis cable like OP has setting SQM / cake / upload-download values / overhead 22 is enough.

I get 500Mbits on my WRT32X and my Rpi4 doen't break a sweat with those settings, both A+/A+ bufferbloat/quality on dslreports too. Best thing to do will be to capture this awesome post you did into the SQM Details wiki at some point for advanced optimization.

I think the OP would do well to also set mpu 64 cake originally lacked an mpu setting which got added after repiets drom a docsis link where that lack of configurable mpu lead to measurably wrong shaping and bufferbloat.

Looks like I better add that too then. To be honest been using SQM cake for a couple years and never set the mpu.

Sure, and the failure mode of doing that is often relative benign, a bit more latency sneaking in than desired, but on DOCSIS links the uplink often close to 1/40 of the downlink, which is close to the throughput ratio between data and ACKs in TCP flows, so when saturating the download side of such a docsis link there will be a lot of small pure ACK packets that appear smaller to sqm than they effectively are, with the result of noticeable bufferbloat. If your link is less asymmetric and/or ypu never actualy saturate the uplink you will not notice. But following the principle of least surprise I think we should instruct users to pro-actively solve this issue.