[Cake test] Cake experiments for 386.2 Beta

  • ATTENTION! As of November 1, 2020, you are not able to reply to threads 6 months after the thread is opened if there are more than 500 posts in the thread.
    Threads will not be locked, so posts may still be edited by their authors.
    Just start a new thread on the topic to post if you get an error message when trying to reply to a thread.
Status
Not open for further replies.

RMerlin

Asuswrt-Merlin dev
Hi folks,

If you are currently testing Cake on 386.2 Beta, could you guys test the following customization, and see if there is any measurable improvement or issues?

Make sure you have custom JFFS scripts enabled (Administration -> System). Then, create /jffs/configs/cake-qos.conf.add with the following content:

Code:
DLIF=$(nvram get lan_ifname)
DLOPTIONS='wash dual-dsthost ingress'

Also create /jffs/scripts/qos-start with the following content:

Code:
#!/bin/sh

(
cat <<'ADDTEXT'
#!/bin/sh
source /etc/cake-qos.conf

case "$1" in
start)
# Upload
        tc qdisc add dev $ULIF root cake $ULPRIOQUEUE $ULOPTIONS $ULBW $OVERHEAD $FRAMING 2>/dev/null

# Download
        #tc qdisc add dev $DLIF handle ffff: ingress 2>/dev/null
        tc qdisc add dev $DLIF root cake $DLPRIOQUEUE $DLOPTIONS $DLBW $OVERHEAD $FRAMING 2>/dev/null

        ;;
stop)
        tc qdisc del dev $ULIF root 2>/dev/null
#        tc qdisc del dev $DLIF ingress 2>/dev/null
        tc qdisc del dev $DLIF root 2>/dev/null
        ;;
*)
esac
ADDTEXT
) > /tmp/qos

Make it executable:

Code:
chmod a+rx /jffs/scripts/qos-start

Then, restart QoS to apply the changes:

Code:
service restart_qos

This will use the LAN interface to process downloads rather than the eth0 interface, and will also directly do so without copying the traffic through an IFB interface. I'm curious if this would work properly (as it may improve overall performance by skipping the intermediary interface).
 
Last edited:

Odkrys

Senior Member
Using br0 limits the USB transfer speed to the cake bandwidth.

p.s
Can you check the USB transfer speed of rt-ac86u?
There seems to be a problem with cpu affinity.
I only see 40Mbps on a wireless connection and 70Mbps on a wired connection.

386.2_alpha2-g0b90696715
 

MvW

Senior Member
I'm curious if this would work properly (as it may improve overall performance by skipping the intermediary interface).

Performance is great, results are even better compared to 'default' built-in Cake. Everything feels smooth as butter. No issues to report. Docsis 3.0 Cable 250/25Mbit, ISP Modem in bridged mode, ack-filter enabled on uploads.

67739212.png
 

joe scian

Very Senior Member
working great here too Eric - RT-AC86U - Triple A+ on dslreports FTTN 50/20 PPPoE VDSL2 PTM
MPU=64 BW Limits - 55 Down 19.25 Up. Download Speed -52 Upload Speed 17
Fast.com - between 4-6ms latency loaded/unloaded
 
Last edited:

askan7

Regular Contributor
Using br0 limits the USB transfer speed to the cake bandwidth.

p.s
Can you check the USB transfer speed of rt-ac86u?
There seems to be a problem with cpu affinity.
I only see 40Mbps on a wireless connection and 70Mbps on a wired connection.

386.2_alpha2-g0b90696715
I remember testings usb speeds and it was much slower on 386.1 compared to 384.19, 386.2 improved it but it was still a bit slower.

Edit:
DLIF=$(nvram get lan_ifname)

Cake doesn't limit downlink and I get bufferbloat. Tried changing download limit to 6mb still getting full speed + bufferbloat.

Removed both of these files, restarted qos again and it's back to normal
 
Last edited:

Sicario

Regular Contributor
Cake doesn't limit downlink and I get bufferbloat. Tried changing download limit to 6mb still getting full speed + bufferbloat.
Can confirm this, downlink didn't get limited.
 

dave14305

Part of the Furniture
Won’t the ingress on br0 only catch LAN traffic heading toward the internet (i.e. Upload)?

EDIT: The first post was updated after I originally read it last night. Merlin thinks of everything. :)
 
Last edited:

ptr1337

New Around Here
Peformance feels better than with default.
1Gbit/50mbit. Bridge Mode on ISP Modem, ASUS 86u.
Before i got only 350Mbits, now around 80 mbits more.

Need to test more with downloading/uploading from several devices. Also running a "mediaserver" on it. Working also nice and smoothly.

Regards
 

DanNuke86

Regular Contributor
Had a go at this and the verdict is there is a notable improvement. Download buffer bloat seems to have improved and also download speed is now getting approx 40-60mbps more than on standard.

I'm on ASUS AX86U, 500/35 with ISP modem router in bridge mode. Tests carried out using AX client over WIFI.

Getting Triple A+ for nearly every test on DSL reports. Also tried the buffer bloat test whilst saturating the dl/ul and this is the best I've seen.

Just a quick question, has the change made here, resulted in the WAN being unaffected? I run spdmerlin to monitor my ISP connection (as I have speed issues at times) and I've just realised the tests are now unaffected by CAKE, whereas previously I couldn't see what the actual incoming speeds were on default, due to CAKE effectively throttling the speeds. This gets a big thumbs up from me on both counts!

EDIT. Whilst finishing writing this, I've done some more tests on dslreports following spdmerlin tests and it now seems download is now not being limited.

EDIT 2. Rebooted the router and it's limiting the speeds again. Tried another spdmerlin manual test and speeds not limited again at the WAN interface, but speeds now limited again as should be on the LAN.
 
Last edited:

rlj2

Regular Contributor
Does this look like the expected outcome. I just notice the ingress line, and the ifb4eth0 lines

qdisc cake 8003: dev eth0 root refcnt 2 bandwidth 1894Kbit diffserv3 dual-srchost nat nowash ack-filter split-gso rtt 100ms noatm overhead 27
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth2 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth3 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth4 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev spu_us_dummy root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev spu_ds_dummy root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth5 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth6 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc ingress ffff: dev br0 parent ffff:fff1 ----------------
qdisc pfifo_fast 0: dev wds0.0.1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc cake 8002: dev ifb4eth0 root refcnt 2 bandwidth 27648Kbit besteffort dual-dsthost nat wash ingress ack-filter split-gso rtt 100ms noatm overhead 27
qdisc pfifo_fast 0: dev wds1.0.10 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wds1.0.1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wds0.0.4 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 

RMerlin

Asuswrt-Merlin dev
In LAN interface don't add the nat option and need add ingress or downlink didn't get limited.
Isn't the ingress handled by this queue?

Code:
tc qdisc add dev $DLIF handle ffff: ingress 2>/dev/null

I'm on ASUS AX86U, 500/35 with ISP modem router in bridge mode. Tests carried out using AX client over WIFI.

Getting Triple A+ for nearly every test on DSL reports. Also tried the buffer bloat test whilst saturating the dl/ul and this is the best I've seen.

You are probably getting good bufferbloat scores because you cannot saturate 500 Mbps without hardware acceleration. This makes the test somewhat invalid, Cake shouldn't be used on such a fast connection.
 

RMerlin

Asuswrt-Merlin dev
Does this look like the expected outcome. I just notice the ingress line, and the ifb4eth0 lines
No, you are still using IFB, these are the built-in settings.
 

dave14305

Part of the Furniture
Isn't the ingress handled by this queue?
Everything incoming from WAN is already de-NATted by the time it gets to br0, right?

I don’t believe you need or want the separate ingress qdisc on br0. The Cake ingress option on br0 is open for discussion.
 

RMerlin

Asuswrt-Merlin dev
I don’t believe you need or want the separate ingress qdisc on br0. The Cake ingress option on br0 is open for discussion.
Ok, let's try it this way then.

I updated the first post with new configs. I also removed nat from the LAN interface, let's see how it works out.

ALL: please test again with these latest changes made to both files.
 

MvW

Senior Member
No, you are still using IFB, these are the built-in settings.

Reading your last comment, I just checked and on the second line I also see IFB. I followed your instructions to the letter. Twice, actually, because I wasn't sure whether the modification would survive a reboot.

Code:
[email protected]:/tmp/home/root#  tc qdisc | grep cake
qdisc cake 8013: dev eth0 root refcnt 2 bandwidth 23930Kbit diffserv3 dual-srchost nat nowash no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64
qdisc cake 8014: dev ifb4eth0 root refcnt 2 bandwidth 244807Kbit besteffort dual-dsthost nat wash ingress no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64

Edit: You just posted before me. Will try again with the changes you've made.
 
Last edited:

askan7

Regular Contributor
Ok, let's try it this way then.

I updated the first post with new configs. I also removed nat from the LAN interface, let's see how it works out.

ALL: please test again with these latest changes made to both files.

Same issue, download not limited.
 

MvW

Senior Member
Results are all over the place now, bufferbloat is B on DSLReports but peak hours are beginning here, so probably not representative.

Second line is still showing ifb4eth0 btw:

Code:
[email protected]:/tmp/home/root#  tc qdisc | grep cake
qdisc cake 8015: dev eth0 root refcnt 2 bandwidth 23930Kbit diffserv3 dual-srchost nat nowash no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64
qdisc cake 8014: dev ifb4eth0 root refcnt 2 bandwidth 244807Kbit besteffort dual-dsthost nat wash ingress no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64
 

rlj2

Regular Contributor
No, you are still using IFB, these are the built-in settings.
I kind of thought so. Im using built-in cake. double checked I copied everything exactly correct. Not sure, rebooted it also.

[email protected]:/tmp# cat /jffs/configs/cake-qos.conf.add
ULOPTIONS="$ULOPTIONS ack-filter"
DLOPTIONS="$DLOPTIONS ack-filter"
DLIF=$(nvram get lan_ifname)

[email protected]:/tmp# ls -l /jffs/scripts/qos-start
-rwxrwxrwx 1 admin root 652 Mar 19 10:57 /jffs/scripts/qos-start

[email protected]:/jffs/scripts# cat /jffs/scripts/qos-start
#!/bin/sh

(
cat <<'ADDTEXT'
#!/bin/sh
source /etc/cake-qos.conf

case "$1" in
start)
# Upload
tc qdisc add dev $ULIF root cake $ULPRIOQUEUE $ULOPTIONS $ULBW $OVERHEAD $FRAMING 2>/dev/null
# Download
tc qdisc add dev $DLIF handle ffff: ingress 2>/dev/null
tc qdisc add dev $DLIF root cake $DLPRIOQUEUE $DLOPTIONS $DLBW $OVERHEAD $FRAMING 2>/dev/null
;;
stop)
tc qdisc del dev $ULIF root 2>/dev/null
tc qdisc del dev $DLIF ingress 2>/dev/null
tc qdisc del dev $DLIF root 2>/dev/null
;;
*)
esac
ADDTEXT
) > /tmp/qos
 
Last edited:
Status
Not open for further replies.

Similar threads

Sign Up For SNBForums Daily Digest

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