SQM and R7800 router

I haven’t played much with the statistics modifier. At a minimum you should see good dsl reports results. Here is the write up on the tc command -s feature:

1 Like

last thing, the configuration you gave me as start up script, I see : ''eth0'' it is ok even if on my router '' overview Gui'' I see '' Device:** Software VLAN: "eth0.2" ??

still problem to control bufferbloat on upload....idea?

I tried 9,8 and 7 mbps as upload, maybe some tweaks?
Sans titre

Try a lower burst rate on the upload side. Your ISP probably doesn’t like sudden bursts of 1Mbit and is giving you some lag.


# Shape egress traffic to 7 Mbit with chained NSSFQ_CODEL
tc qdisc add dev eth0 root handle 1: nsstbl rate 7Mbit burst 100k
tc qdisc add dev eth0 parent 1: handle 10: nssfq_codel limit 10240 flows 1024 quantum 1514 target 5ms interval 100ms set_default

If 7 works you could try 8 or 9. :sunglasses:

Weird, i made the changing and lost wifi after reboot.
I removed your code and wifi is back, weird cause with the other script earlier, the wifi was ok

I made a typo - the last line say nssfq_codel - I’ve edited it above.

1 Like

still not easy, maybe worse
:wink:
thanks for your time btw..

Sans titre

Yikes. I’m out of tricks. The tc script is using all the fq_codel defaults - not sure if adjusting the quantum or those subtle tweaks are going to help much.

I’d try the combo of burst and rate that gives you the best results or I’d consider not running SQM. Maybe someone else has some ideas for special combos that work well.

1 Like

Someone in another post said that, maybe it could help my case... I have 10 mbps upload?

if your upstream bandwidth is 10Mbps, cap it with NSS Qdisc as well, or your buffer float will also be affected.

The rate is your cap. I’d experiment with higher and lower rates (even 10mbps).

Make sure when you change settings that you are deleting the settings or restarting your router (you can’t add devices on added devices)


tc qdisc del dev eth0 root

Use this to check your current settings:


tc qdisc show dev eth0

I’d set your burst to 500kbit or 1mbit.

9 was your best, maybe 8.5 with a smaller burst will be a happy spot.


# Shape egress traffic to 8.5 Mbit with chained NSSFQ_CODEL
tc qdisc add dev eth0 root handle 1: nsstbl rate 8500kbit burst 500kbit
tc qdisc add dev eth0 parent 1: handle 10: nssfq_codel limit 10240 flows 1024 quantum 1514 target 5ms interval 100ms set_default

How about you size the burst such that it can be cleared in, say 1millisecond (as starting value), so at 10 Mbps, that would be 10Mbps/1000 -> 10 Kbps, or 100Kbps to allow for 10ms?
The point is that after admitting a burst to the device driver, the next packet will have to wait for the full burst to have been transmitted, and if burst is set too high that might already allow for nasty latency spikes....

That makes sense. I agree his burst should be lower. 1mbit had a nasty spike.

so burst at 500kbit, would be better than 1mbit?
I will in few minutes.
btw, with that : tc qdisc del dev eth0 root I thought it would wipe my rc.local script, but it is not. in ssh, yes, but in rc.local the script was still there...

1 Like

It just wipes the current settings. It does not change what is in rc.local (when you wipe the settings - what is in rc.local won’t be loaded until next time you restart).

500kbit means that if you “empty out the bucket” you’ll lose ~50ms (a little more than that) at your speed limit as per @moeller0 calculations above. Hope it gets you good results!

it is not supposed to be in ''mbps'' here: nsstbl rate 8kbit burst 500kbit ??

# Shape egress traffic to 8 Mbit with chained NSSFQ_CODEL
tc qdisc add dev eth0 root handle 1: nsstbl rate 8kbit burst 500kbit
tc qdisc add dev eth0 parent 1: handle 10: nssfq_codel limit 10240 flows 1024 quantum 1514 target 5ms interval 100ms set_default

Independent of the unit, 8k is too low :wink:

it is better when I remove the sqm script for upload..

1 Like

hi, can we use the same script for the tp-link C2600?

and the gouvernor script in rc.local?

thanks

1 Like

Yes. Same script as long as you have a NSS build :sunglasses:

1 Like

I hope there is no problem in posting here about my settings or other subjects about SQM and my R7800.
I use Firefox 78.7.0esr (64-bit) as default browser and I use some addons such as adblock plus, noscript, Facebook container, HTTPS everywhere, ublock and DDG Privacy Essentials. These addons might be interfering with the tests. I got many errors on debug console.
Here are 2 screenshots


My setting for SQM are:

config queue 'wan'
        option debug_logging '1'
        option verbosity '5'
        option squash_dscp '1'
        option squash_ingress '1'
        option ingress_ecn 'ECN'
        option egress_ecn 'NOECN'
        option interface 'eth0.12'
        option download '180000'
        option upload '90000'
        option qdisc 'cake'
        option script 'piece_of_cake.qos'
        option qdisc_advanced '1'
        option qdisc_really_really_advanced '0'
        option itarget 'auto'
        option etarget 'auto'
        option enabled '1'
        option linklayer 'ethernet'
        option overhead '44'

But dslreports report tells me some things gonne wrong:

0.00s setting 24 as maximum streams for firefox under linux (sorry)
0.00s Start testing Fiber
00.43s Servers available: 3
00.48s pinging 3 locations
05.49s 104ms Amsterdam, Netherlands, EU
05.49s could not reach Zurich, Switzerland, EU https://t78.dslreports.com
05.49s could not reach Los Angeles 2, CA, USA https://t49.dslreports.com
05.52s cap to 8 stream maximum due to 100ms plus latency
05.52s WARNING could not assemble 8 streams with available or selected servers
05.52s 5 seconds measuring idle buffer bloat
05.65s Internet connection interrupted? - websocket error 
11.31s Trial download normal
11.34s Using GET for upload testing
11.34s preference https set to 1
19.92s  stream0 22.48 megabit Amsterdam, Netherlands, EU
19.92s  stream1 22.75 megabit Amsterdam, Netherlands, EU
19.92s  stream2 21.86 megabit Amsterdam, Netherlands, EU
19.92s  stream3 19.22 megabit Amsterdam, Netherlands, EU
19.92s  stream4 17.35 megabit Amsterdam, Netherlands, EU
19.92s  stream5 16.32 megabit Amsterdam, Netherlands, EU
23.06s End of download testing. Starting upload in 2 seconds
25.06s Web socket to https://t56.dslreports.com are not working reading count =0
25.06s Using POST for upload testing
39.08s Upload report:
39.08s  stream0 13.46 megabit Amsterdam, Netherlands, EU
39.08s  stream1 15.32 megabit Amsterdam, Netherlands, EU
39.08s  stream2 14.39 megabit Amsterdam, Netherlands, EU
39.08s  stream3 15.68 megabit Amsterdam, Netherlands, EU
39.08s  stream4 12.7 megabit Amsterdam, Netherlands, EU
39.08s  stream5 11.1 megabit Amsterdam, Netherlands, EU
45.23s End of upload testing
45.23s Recording upload  83.9
45.23s Timer drops: frames=0 total ms=0 slip=0
45.24s END TEST
47.25s Total megabytes consumed: 355.5 (down:167.4 up:188.1)

I can't get a bufferbloat score. Not sure if this is due to addons but I have already tried to deactivate them all and results are the same. I also tried in a private window which I haven't any addon installed.