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!

IMHO instead of services-start, it should go to nat-start.
Otherwise, I think cake won't survive a firewall restart.
And nat-start is called also after a firewall restart.

@Xentrk can you share your expertise regarding this? You had the same problem with vpnrouting from your x3mRouting.
A firewall reset would wipe out the iptables mangle table PREROUTING rules. nat-start runs after a firewall restart. Placing the scripts in nat-start would reestablish the routing rules. It would also run the script at system boot.
 
There’s a previous thread (10+ pages) as well that goes back a year or 2...once an “official build” happened, it was decided a dedicated thread was most appropriate.


Sent from my iPhone using Tapatalk

And that thread is still referenced in Post 1 in this thread - so definitely still in the mix, but this thread has one standard installer/process, where the original thread had about 3 manual methods to get going :)

For your further reading @Chris0815 here!
 
Managed a reboot. After running stable for 10 mins, as previously, I get bad bufferbloat results and no speed capping on a test
64599625.png


Running the status check gives
Code:
hodgetts@RT-AX88U-AA80:/jffs/scripts# /jffs/scripts/cake-qos status
> CakeQOS-Merlin v0.0.4 is running
> Download Status:
qdisc cake 8002: dev ifb9eth0 root refcnt 2 bandwidth 15Mbit besteffort triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms ptm overhead 22 no-sce
> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

After copying and running the command from my services-start
Code:
/jffs/scripts/cake-qos start 15Mbit 4Mbit "besteffort bridged-ptm ack-filter"
I get
64599660.png


Code:
hodgetts@RT-AX88U-AA80:/jffs/scripts# /jffs/scripts/cake-qos status
> CakeQOS-Merlin v0.0.4 is running
> Download Status:
qdisc cake 8004: dev ifb9eth0 root refcnt 2 bandwidth 15Mbit besteffort triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms ptm overhead 22 no-sce
> Upload Status:
qdisc cake 8003: dev eth0 root refcnt 2 bandwidth 4Mbit besteffort triple-isolate nat nowash ack-filter split-gso rtt 100.0ms ptm overhead 22 no-sce

Notice the difference in the Upload results from the status

I'm getting the same output for cake_qos status for the upload status. Is this a bug or OK as is and the numbers translate to variables of sorts?
 
I'm getting the same output for cake_qos status for the upload status. Is this a bug or OK as is and the numbers translate to variables of sorts?
The entry?

> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

I believe it shows that Upload isn't using cake, but instead is using the standard queue mechanisms
 
A firewall reset would wipe out the iptables mangle table PREROUTING rules. nat-start runs after a firewall restart. Placing the scripts in nat-start would reestablish the routing rules. It would also run the script at system boot.
Manually moving from services-start to nat-start has certainly fixed the issue at reboot. I'm not knowledgeable enough to know if that's the correct and only place it needs to be.

The stop is still in services-stop.
 
Last edited:
Awesome, try taking it up to 95% and see if you still get As :)
Note, I am just curious...
Sorry, took me a while to get to this, family just gone to bed ;).

But...well blow me down.
So I had tested 95% before with besteffort, and was getting some nasty bloat, so needed to drop to those sub-85% values.

Tonight's testing is a bit different with diffserv3, I can run 95% very happily!

No QoS test:
D/L Speed = 33.3Mbps (as measured by the Asus Traffic Monitor)
U/L Speed = 9.4Mbps (again measured by Asus Traffic Monitor)

Idle Ping 57ms, D/L 94ms, U/L 94ms. (DSL-Reports B Result)

95% Cake QoS:
diffserv3
bridged-ptm (Australian NBN Fibre to the Node VDSL2)
31600Kbit
8900Kbit

Idle Ping 56ms, D/L 60ms, U/L 61ms (DSL-Reports A+ across the board)


Now that's damn impressive. And RAM usage is still under 60%. Impressed.

Though I may need to build in a little extra slack, because my sync rates do tend to drift a little.

During the course working from home for the day, I did have three odd anomolies.
1) Lost sync on my VDSL modem. Unlikely to have been anything to do with the router. Came good on its own.
2) Lost the Router's web interface, but could still access the net. Just prior to this, RAM usage was under 60%. Rebooted to restore web interface. This isn't a common occurrence, so I will keep an eye on this.
3) Lost Internet from my LAN and WiFi. Router thought it was still online though. Had to manually disconnect and then reconnect to Internet via the web interface and all came good.
 
something happened with my cake's upload?

cromo@RT-AX88U-8158:/tmp/home/root# /jffs/scripts/cake-qos status
> CakeQOS-Merlin v0.0.4 is running
> Download Status:
qdisc cake 8002: dev ifb9eth0 root refcnt 2 bandwidth 300Mbit diffserv4 triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce
> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

after a cake restart it is back to:

> Upload Status:
qdisc cake 8003: dev eth0 root refcnt 2 bandwidth 10Mbit diffserv4 triple-isolate nat nowash ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce

and after a few minutes goes back to:
> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

is it normal?
 
Last edited:
something happened with my cake's upload?

cromo@RT-AX88U-8158:/tmp/home/root# /jffs/scripts/cake-qos status
> CakeQOS-Merlin v0.0.4 is running
> Download Status:
qdisc cake 8002: dev ifb9eth0 root refcnt 2 bandwidth 300Mbit diffserv4 triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce
> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

after a cake restart it is back to:

> Upload Status:
qdisc cake 8003: dev eth0 root refcnt 2 bandwidth 10Mbit diffserv4 triple-isolate nat nowash ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce

and after a few minutes goes back to:
> Upload Status:
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

is it normal?

If you run the "enable" command does it correct itself? This might be related to the open issue around router restart that's being reviewed.
 
Not just router restart. Anything that drops the connection will cause the upload qdisc to revert to qdisc pfifo_fast.
 
If you run the "enable" command does it correct itself? This might be related to the open issue around router restart that's being reviewed.
it corrects itself if i run "enable" but then it goes back to same state after a few minutes
 
it corrects itself if i run "enable" but then it goes back to same state after a few minutes

Let's see what happens with your experience once 0.0.5 gets out the door. It appears your issue is a bit different where Cake might be abending for some reason....
 
it corrects itself if i run "enable" but then it goes back to same state after a few minutes

I've sent you a PM with v0.0.5 testing instructions if you are able to help :)
 
I've sent you a PM with v0.0.5 testing instructions if you are able to help :)
downloading now. will report.

0.0.5 install was flawless and cake is now loaded from "nat-start"
firewall-start and services-star entries removed.


cromo@RT-AX88U-8158:/tmp/home/root# /jffs/scripts/cake-qos status
CakeQOS-Merlin: Running...

CakeQOS-Merlin: > Download Status:

CakeQOS-Merlin: qdisc cake 8004: dev ifb9eth0 root refcnt 2 bandwidth 500Mbit diffserv4 triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce

CakeQOS-Merlin: > Upload Status:

CakeQOS-Merlin: qdisc cake 8003: dev eth0 root refcnt 2 bandwidth 15Mbit diffserv4 triple-isolate nat nowash ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce

cromo@RT-AX88U-8158:/tmp/home/root#


i'll keep an eye to see if i get the abort problem again.

when cake aborts, the only indication will be a message(?) on the system log?


also "Status" no longer reports the version of the script :-/
ah. re downloaded and now it does. that was fast!
 
Last edited:
Houston, we have a problem: update didn't work, status returns usage instructions.
do I have to STOP cake to update it, really? What have I done wrong that status doesn't return what the README on github, or the post above this, suggests?

EDIT: ohhh, there's something funky with v0.0.4. Slow down, gents.
 
Houston, we have a problem: update didn't work, status returns usage instructions.
do I have to STOP cake to update it, really? What have I done wrong that status doesn't return what the README on github, or the post above this, suggests?

EDIT: ohhh, there's something funky with v0.0.4. Slow down, gents.

Yup...

IF you want to, see my steps on the develop branch (trending to 0.0.5)....

Clean upgrade and as you see the script does Stops of the service on enable command. Also it cleaned up services-start and moved to nat-start. Gonna restart now.

Code:
/usr/sbin/curl --retry 3 "https://raw.githubusercontent.com/ttgapers/cakeqos-merlin/develop/cake-qos.sh" -o "/jffs/scripts/cake-qos" && chmod 0755 /jffs/scripts/cake-qos
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 12217  100 12217    0     0  19673      0 --:--:-- --:--:-- --:--:-- 20671
admin@router:/tmp/home/root# /jffs/scripts/cake-qos enable 145Mbit 14Mbit "besteffort docsis ack-filter"
CakeQOS-Merlin: Stopping

Broadcom Packet Flow Cache learning via BLOG enabled.
CakeQOS-Merlin: Enabled

CakeQOS-Merlin: Starting - settings: 145Mbit | 14Mbit | besteffort docsis ack-filter

Broadcom Packet Flow Cache learning via BLOG disabled.
Broadcom Packet Flow Cache flushing the flows
admin@router:/tmp/home/root# tc -s qdisc show dev ifb9eth0
qdisc cake 8017: root refcnt 2 bandwidth 145Mbit besteffort triple-isolate nat wash ingress ack-filter split-gso rtt 100.0ms noatm overhead 18 mpu 64 no-sce
 Sent 4462946 bytes 9099 pkt (dropped 4, overlimits 1806 requeues 0)
 backlog 0b 0p requeues 0
 memory used: 24256b of 7250000b
 capacity estimate: 145Mbit
 min/max network layer size:           46 /    1500
 min/max overhead-adjusted size:       64 /    1518
 average network hdr offset:           14

                  Tin 0
  thresh        145Mbit
  target          5.0ms
  interval      100.0ms
  pk_delay        2.0ms
  av_delay        214us
  sp_delay          0us
  backlog            0b
  pkts             9103
  bytes         4469002
  way_inds            0
  way_miss          121
  way_cols            0
  marks               0
  drops               4
  ack_drop            0
  sp_flows            1
  bk_flows            1
  un_flows            0
  max_len          1514
  quantum          1514

Rebooted with no issue with startup in nat-start now! Excellent work @jackiechun and @maghuro
 
Last edited:
Yup...

IF you want to, see my steps on the develop branch (trending to 0.0.5)....

Clean upgrade and as you see the script does Stops of the service on enable command. Also it cleaned up services-start and moved to nat-start. Gonna restart now.
i'll wait for a new push
 
does it make sense for "status" to also display the metrics of:
tc -s qdisc show dev eth0 # for upload
tc -s qdisc show dev ifb9eth0 # for download
 

Latest threads

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