What's new

CakeQOS CakeQOS-Merlin

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Anyone? Should I have to use docsis or similar?

Post your speedtests/bufferbloat results. You may not need it (as you aren't on a Docsis - cable modem connection).
 
is cake throughput bounded by router CPU only or are there other factors?

thanks
 
Installed CakeQOS on my AC86U with Merlin 384.18 beta1.
When I run tc -s qdisc show dev ifb9eth0, I get Cannot find device "ifb9eth0". The other two commands in the CLI section of the README work.

Edit: Further investigation, I found that CakeQOS was not starting up on reboot.
 
Last edited:
alrighty, here's my update:
uninstalled FreshJR, turned off QoS, withdrew from reporting and (literally JUST) installed cake on my 86u (384.17) with a 50/10 vDSL connection. RAM usage is down 20-23%. BAM!
Before I did that I checked my connmon and spdMerlin graphs - it seems those scripts stopped working after the entware update I did thurs/fri (?)...but then again, I didn't reboot. regardless, after a nudge in terminal, their graphs are repopulating data again.
I'm just going to let things settle in and do their thing on the network as people return from the soup outside and get back on their devices before I look again, but early indications are that cake is yummy ;-p
screenshots to follow...stay tuned!
 
Installed CakeQOS on my AC86U with Merlin 384.18 beta1.
When I run tc -s qdisc show dev ifb9eth0, I get Cannot find device "ifb9eth0". The other two commands in the CLI section of the README work.

Seems like you are missing/didn't run step 3 at a minimum from: https://github.com/ttgapers/cakeqos-merlin#cakeqos-merlin

That enables and starts cake based on your up/down and any other additional parameters you require.
 
Pleased to announce v0.0.3 has been released (I had time to hammer through most of the roadmap):

- update and uninstall options added
Thank you, just to confirm - will the update option check all components so simply running that will update everything in future or is it only cake binaries as implied by the ReadMe?
 
Copy the firewall-start line item and run it in a SSH session and replace "enable" with "start". What do you get?
 
Copy the firewall-start line item and run it in a SSH session and replace "enable" with "start". What do you get?
Yes, it works if I start it manually. It just does not start upon reboot. I have scribe, connmon, ntpmerlin, scmerlin, and uiscribe all working fine upon reboot.

> /jffs/scripts/cake-qos start 200Mbit 10Mbit "besteffort docsis ack-filter" # cake-qos
Broadcom Packet Flow Cache learning via BLOG disabled.
Broadcom Packet Flow Cache flushing the flows

>tc -s qdisc show dev ifb9eth0
qdisc cake 8002: root refcnt 2 bandwidth 200Mbit besteffort triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce
 
Here you go in-between footie

  • I don't use Traffic Analyser, but if it has any dependency on Stock Traditional/Adaptive/FreshJr/Daves QoS then I don't expect it to work as this should be switched off
  • I do not believe it can, as you must specify up/down or it just uses line speed. I referenced that in an earlier post. I would say give it whirl, the script is seemless now from a install, stop, disable, uninstall perspective.
  • This is where the detailed reading about Cake in the first post, it's a shift in thinking on how it queues/prioritizes traffic. I've been running besteffort over a week on a pretty saturated connection - internal web server hosting media center, 2x VPN servers, Teams/Skype, Zoom, WebEx web conferencing etc. and I've seen a remarkable change in stability and quality overall. My stats back it, without having to "tweak" based on app, port, protocol etc....as mentioned I've never had consistent "meaning anytime I feel like running tests" buffer bloat straight A+s as I have seen with Cake.
Hope that helps!

Thanks. Since Cake seems to limit the throughput of high throughput connections, it would be really nice if it could work on just the slow outbound connection. Some of the wording on the BufferBloat site (https://www.bufferbloat.net/projects/codel/wiki/Cake/) seems to suggest that inbound and outbound are independently configurable. Makes me wonder if there is an on/off switch for each direction.

I did try to consider the ideas presented on how it works, but it didn't really make sense with such little context. I searched a bit for explanations of how CAKE is different, and the best I've found so far is this:

https://lwn.net/Articles/758353/
 
Yes, it works if I start it manually. It just does not start upon reboot. I have scribe, connmon, ntpmerlin, scmerlin, and uiscribe all working fine upon reboot.

> /jffs/scripts/cake-qos start 200Mbit 10Mbit "besteffort docsis ack-filter" # cake-qos
Broadcom Packet Flow Cache learning via BLOG disabled.
Broadcom Packet Flow Cache flushing the flows

>tc -s qdisc show dev ifb9eth0
qdisc cake 8002: root refcnt 2 bandwidth 200Mbit besteffort triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce
Maybe run dos2unix against the script with the startup line in it. Example dos2unix /jffs/scripts/firewall-start
 
Im guessing my ac68u isnt powerful enough to run this and is why its not 'supported'.
your kernel is too old. If you install OpenWRT you can use CAKE. It does use max. 1% of your routers CPU.
BUT Wifi 5GHz will not work and 2.4GHz not really well
 
Maybe run dos2unix against the script with the startup line in it. Example dos2unix /jffs/scripts/firewall-start
No, firewall-start still does not execute upon reboot. It will execute if I manually restart firewalld.

I tried reformatting /jffs and the USB sticks and reinstalling everything. Still does not start upon reboot.

Looks like I'll have to factory reset next and see. Perhaps it is a bug in 384.18_beta1.
 
Last edited:
What I get

admin@RT-AX88U-E960:/tmp/home/root# /jffs/scripts/cake-qos start 100Mbit 10Mbit
"besteffort docsis ack-filter" # cake-qos
Broadcom Packet Flow Cache HW acceleration <DISABLED>
CPU Speed (*) ==> Disable
Changing power settings. Forcing cpu to max frequency.
Set cpuspeed to on(pwr config --cpuspeed on) to make it adaptive again
Broadcom Packet Flow Cache learning via BLOG disabled.
Broadcom Packet Flow Cache flushing the flows
RTNETLINK answers: File exists
admin@RT-AX88U-E960:/tmp/home/root#
 
No, firewall-start still does not execute upon reboot. It will execute if I manually restart firewalld.

I tried reformatting /jffs and the USB sticks and reinstalling everything. Still does not start upon reboot.

Looks like I'll have to factory reset next and see. Perhaps it is a bug in 384.18_beta1.

I was experiencing a similar issue. AX88u running 384.18_beta1.

What I believe is happening is that /opt is not mounted quick enough. In my case, I have disk check enabled on amtm. As a result, a boot/reboot takes longer to mount /opt (entware).
So, I created a quick shell script to wait for opt to get mounted then run cake-qos start. Works fine now. Hopefully the cake-qos guys can add something similar.

Code:
#!/bin/sh
for i in 1 2 3 4 5 6  # wait about 1 min
do
        if [ -f /opt/bin/sh ]; then
                /jffs/scripts/cake-qos start 115Mbit 11Mbit "docsis ack-filter"
                exit
        else
                sleep 10
        fi
logger -t "CakeWait" "/opt never come up, no cake for you..."
done
 
Thank you, just to confirm - will the update option check all components so simply running that will update everything in future or is it only cake binaries as implied by the ReadMe?

Great question: currently only cake binaries but will be updated to grab the latest script as well. We were just wary of people manually editing the "cake-qos" script before we added support for other prioritization queues (e.g. diffserv4) - we didn't want to overwrite their customizations - now a non-issue with v0.0.3.

So, I created a quick shell script to wait for opt to get mounted then run cake-qos start. Works fine now. Hopefully the cake-qos guys can add something similar.

Code:
#!/bin/sh
for i in 1 2 3 4 5 6  # wait about 1 min
do
        if [ -f /opt/bin/sh ]; then
                /jffs/scripts/cake-qos start 115Mbit 11Mbit "docsis ack-filter"
                exit
        else
                sleep 10
        fi
logger -t "CakeWait" "/opt never come up, no cake for you..."
done

Many thanks for debugging + your bonus fix, will look into this.
 
I was experiencing a similar issue. AX88u running 384.18_beta1.

What I believe is happening is that /opt is not mounted quick enough. In my case, I have disk check enabled on amtm. As a result, a boot/reboot takes longer to mount /opt (entware).
So, I created a quick shell script to wait for opt to get mounted then run cake-qos start. Works fine now. Hopefully the cake-qos guys can add something similar.

Code:
#!/bin/sh
for i in 1 2 3 4 5 6  # wait about 1 min
do
        if [ -f /opt/bin/sh ]; then
                /jffs/scripts/cake-qos start 115Mbit 11Mbit "docsis ack-filter"
                exit
        else
                sleep 10
        fi
logger -t "CakeWait" "/opt never come up, no cake for you..."
done
maybe post-mount should be used?
 
I was experiencing a similar issue. AX88u running 384.18_beta1.
What I believe is happening is that /opt is not mounted quick enough. In my case, I have disk check enabled on amtm. As a result, a boot/reboot takes longer to mount /opt (entware).
So, I created a quick shell script to wait for opt to get mounted then run cake-qos start. Works fine now. Hopefully the cake-qos guys can add something similar.

Thanks! This did the trick.
 

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top