I would. I have noticed earlier that cake is CPU intensive, so I highlight the CPU issue. High CPU load from qdisc might slow down the other functions of the router.
But in the end it depends on your use case, the download practices and the other load for the router. Just try both for some time and pick the one that feels best...
Personally I use simple/fq_codel, but I have something like 190/19 Mbit, so my SQM needs are rather modest (with normal browsing & office apps).
In your last result, I'm pretty sure the bufferbloat test component of the dslreports test has been failing for a lot of people, lately, and I'm not sure why. It could be the link getting slammed so hard when you are not also inbound shaping. I'd be pretty interested in cakes' behavior with ack-filter on on the uplink and no download shaping....
Analysis: Middle of the afternoon download speed is a little below normal due to usual increased network load. Cake is grouchy about software offloading and/or 0 for download.
if someone would toss at least $4k/month into https://www.patreon.com/dtaht I'd get back more F/T in fixing bloat issues. Living in yurt got old multiple years back. Terribly chilly in the winters.
Another useful feature all these offload engines could would be a programmable completion interrupt for tx. You'd set that to what you would shape to, and completely eliminate the cpu cost of outbound shaping by treating it (with backpressure) as, (for example) a 35Mbit/sec interface.
There are a few ethernet devices that can do this, including one from intel, but I don't rmeember which one.
The use case for a symmetrical line is to work with the cloud (storage in particular): I have to upload/download a lot of data often. With fq_codel/simplest_tbf this router cannot reliably shape more than 200Mbps on the uplink on a good day (download is not shaped), so I am loosing a lot of bulk upload bandwidth in order to be able to have several video calls going through the router at the same time.
Having said that, this router might be the wrong tool for the job to begin with.
What does dsl speedtest look like with 250000 / 250000 with aggressive CPU settings (or performance governor) with zero overhead and no advanced SQM settings?
Not bad. Agreed- Going to need a little more CPU power to get both upload and download consistently at that level.
I have one r7800 acting purely as a wired router and two r7800s as pure APs. Nicely distributes the load it seems. Wired router is running hnyman master build- all features turned off (the default), just CPU tweaks. Even with everything as optimized as I can make it - I can shape a max of 500mbps total (thus why I wanted to see what 250 / 250 did for ya).
Looks like tbf +fq_codel gives you the best result. Ack I think is just a cake feature so you can turn it off. Much better bufferbloat compared to your baseline. Enjoy!
SQM settings look good. You can use these commands to check if your CPU settings are working and that irqbalance is enabled (usually have to restart after putting it in the rc.local file)
I run packet steering too to balance the network load:
uci set network.globals.packet_steering=1; uci commit network
You can check the global settings here after you enable it:
cat /etc/config/network
Those are the best tweaks I’ve found for the r7800. I’ve been able to shape up to 450-500mbps total. The next major breakthrough is waking up the NSS CPU cores to get hardware acceleration working, more work needed there but quarky has done great work:
Thanks again. It all seems fine. However, I think irqbalance in not enabled. I put the following into the rc.local section in luci: /usr/sbin/irqbalance
Rebooted and checked the results as follows:
root@OpenWrt:~# cat /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
35
root@OpenWrt:~# cat /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor
10
root@OpenWrt:~# cat /etc/config/irqbalance
config irqbalance 'irqbalance'
option enabled '0'
# The default value is 10 seconds
#option interval '10'
# List of IRQ's to ignore
#list banirq '36'
#list banirq '69'
root@OpenWrt:~# cat /etc/config/network
[...]
config globals 'globals'
option ula_prefix 'abcd:efgh...:/48'
option packet_steering '1'
[...]