FlexQoS FlexQoS 1.2.4 - Flexible QoS Enhancement Script for Adaptive QoS

DanNuke86

Regular Contributor
VM use DOCSIS 3 / 3.1 :)
(VM customer, modmon probably gave that away...)
Jack, sorry this isn't entirely relevant to this thread, but given you have the same ISP as me, do you have any recommendations to combat the awful latency issues with the Hub3 and Docsis 3.0? Do you use FlexQoS or CAKE?

After extensive testing, using both Ax86u and Ax88u with the various firmwares and scripts, I've found CAKE is giving me the best performance, albeit I have to sacrifice some DL bandwidth at non-peak times (get up to 560mbps d/l, 38mbps u/l).

Whilst I do prefer using FlexQoS, I find it lets me down at peak times where the bandwidth sometimes drops below 50%, I've had it as low as 140mbps at times on the d/l. u/l also can drop down to 12mbps. I find the autoBW doesn't react quick enough to the change in speeds at peak times and CAKE seems to handle this better.
 

Jack Yaz

Part of the Furniture
Jack, sorry this isn't entirely relevant to this thread, but given you have the same ISP as me, do you have any recommendations to combat the awful latency issues with the Hub3 and Docsis 3.0? Do you use FlexQoS or CAKE?

After extensive testing, using both Ax86u and Ax88u with the various firmwares and scripts, I've found CAKE is giving me the best performance, albeit I have to sacrifice some DL bandwidth at non-peak times (get up to 560mbps d/l, 38mbps u/l).

Whilst I do prefer using FlexQoS, I find it lets me down at peak times where the bandwidth sometimes drops below 50%, I've had it as low as 140mbps at times on the d/l. u/l also can drop down to 12mbps. I find the autoBW doesn't react quick enough to the change in speeds at peak times and CAKE seems to handle this better.
sounds like you have area contention to be honest where VM have heavily oversubscribed your area. no QoS can help that, the issue is upstream. my latency never goes above 15ms, +10ms give or take with flexqos
 

DanNuke86

Regular Contributor
sounds like you have area contention to be honest where VM have heavily oversubscribed your area. no QoS can help that, the issue is upstream. my latency never goes above 15ms, +10ms give or take with flexqos
I've still got them investigating as they insist there is nothing wrong. Had all the cable re-pulled from the cab in to my house and it's no better. I've come to the conclusion the area is oversubscribed. Just trying to make the best of a bad situation. Openreach network speeds are awful in my area in comparison so not really an option going with another ISP.

Latency to the Manchester server is always around 8-10ms for me, but bufferbloat has been a big scourge for me. Seriously hoping Docsis 3.1 will be the answer to my prayers!
 

Wallace_n_Gromit

Senior Member
After installing FlexQoS 1.2.3 via the GUI and rebooting the router AC86U, The FlexQoS Tab has indeed moved, though I am missing the version number (1.2.3) on the GUI and don't currently have the command button to check for update:

BIG EDIT:
Nevermind, I see that the feature to see version number and update has been moved to a sub-menu..... Sorry!

- Moved version number and update check under Options panel

Your GUI is getting fancier and fancier! Pretty soon it will be able to do all our Taxes too, without a doubt! :cool:
 

Attachments

  • Web capture_22-3-2021_114916_192.168.66.1.jpeg
    Web capture_22-3-2021_114916_192.168.66.1.jpeg
    54.1 KB · Views: 98
Last edited:

Wallace_n_Gromit

Senior Member
I come from a long line of CPAs. But I am not one. ;)
I'm not a CPA, nor has any member of my family ever been one. I use Tax preparation software for my simple needs currently.

I used to have my dog do it. He was getting me some good tax refunds!!! But after a few audits, come to find out he didn't know how to subtract and divide amounts. Stupid mutt! :D :p (Had to tell him to stop doing my taxes, so he's back to playing HALO.)
 
Last edited:

dave14305

Part of the Furniture
I encountered a long-standing bug in the webui going back to FreshJR days. If you have an iptables rule that specifies both local and remote ports separated by commas (ranges using colons don't count), the rule would not reflect correctly in the tracked connections table. This is the rule I added to my own rules tonight and noticed it wasn't picking up my iPhone's connection as WFH.

1616640291843.png


I think I have fixed it now on the develop branch, but would like others to test it, especially if you have rules that use both local and remote ports in the same rule.

Before:
1616640475793.png

After:
1616640444538.png
 

Vexira

Part of the Furniture
@dave14305 Tried CAKE earlier and switched it off due to getting a strict NAT type from it. Put FlexQoS back on and I've resulted in this when I do the tc qdisc command.

Does the router need rebooting once reverting back from CAKE to A.QoS?

Code:
qdisc cake 801b: dev eth0 root refcnt 2 bandwidth 28672Kbit diffserv3 dual-srchost nat nowash no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64
qdisc ingress ffff: dev eth0 parent ffff:fff1 ----------------
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 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 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 eth6 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 eth7 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc htb 1: dev br0 root refcnt 2 r2q 10 default 0 direct_packets_stat 9 direct_qlen 2
qdisc fq_codel 8009: dev br0 parent 1:2 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms
qdisc fq_codel 800b: dev br0 parent 1:10 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 800d: dev br0 parent 1:11 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 800f: dev br0 parent 1:12 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 8011: dev br0 parent 1:13 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 8013: dev br0 parent 1:14 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 8015: dev br0 parent 1:15 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 8017: dev br0 parent 1:16 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc fq_codel 8019: dev br0 parent 1:17 limit 1000p flows 1024 quantum 1514 target 5ms interval 100ms ecn
qdisc cake 801c: dev ifb4eth0 root refcnt 2 bandwidth 327680Kbit besteffort dual-dsthost nat wash ingress no-ack-filter split-gso rtt 100ms noatm overhead 18 mpu 64
Did you set Nat filter to full cone?
 

raion969

Senior Member
what are the changes on dev flex1.2.4 ? the bug that you descriped earlier on the post ?
 

maghuro

Very Senior Member
Is it possible to use QoS only for uplink?

The question is, I have 1gbps down and 220mbps up.
I'd only wanted to use the QoS to manage only the uplink
 

DocUmibozu

Regular Contributor
Hello,
I have to create a custom rule that affects only two devices with their ip not contiguous (one is 192.168.1.5., the other 192.168.1.53).
It's possible to achieve that? What's the sintax?
Thanks
 

dave14305

Part of the Furniture
what are the changes on dev flex1.2.4 ? the bug that you descriped earlier on the post ?
Yes, only that fix so far.
Hello,
I have to create a custom rule that affects only two devices with their ip not contiguous (one is 192.168.1.5., the other 192.168.1.53).
It's possible to achieve that? What's the sintax?
Thanks
Create 2 rules or change the IP on one device.
Is it possible to use QoS only for uplink?

The question is, I have 1gbps down and 220mbps up.
I'd only wanted to use the QoS to manage only the uplink
I don’t think so, but with 220 Mbit up, I wouldn’t worry about QoS.
 

DanNuke86

Regular Contributor
Did you set Nat filter to full cone?
I used to with the ax88u on previous firmware but then realised that full cone sends poses a slight security risk. Funnily enough, never had an issue with the AX86U with symmetrical NAT. I port forward for some games to avoid this. Anyway, first time I’ve seen the issue on newer firmware. Can’t be sure if it was related to beta firmware or not. Post was more about having CAKE and FlexQoS qdisc showing at the same time.
 

Vexira

Part of the Furniture
I used to with the ax88u on previous firmware but then realised that full cone sends poses a slight security risk. Funnily enough, never had an issue with the AX86U with symmetrical NAT. I port forward for some games to avoid this. Anyway, first time I’ve seen the issue on newer firmware. Can’t be sure if it was related to beta firmware or not. Post was more about having CAKE and FlexQoS qdisc showing at the same time.
Most of the security risk is mitigated with secure mode, my suggestion was to test it to see if it helps, since back in the day symetric cause too many issues with games.
 

maghuro

Very Senior Member
I don’t think so, but with 220 Mbit up, I wouldn’t worry about QoS.
So, in this case, would it be possible to, even with QoS disabled, keep the statistics page working? Omg it's beautiful and great for every purpose :D
 

jerrytouille

Regular Contributor
@dave14305 Is merlin traditional qos fq-codel the same implementation as flexqos? (in terms of htb buckets...)
 

dave14305

Part of the Furniture
@dave14305 Is merlin traditional qos fq-codel the same implementation as flexqos? (in terms of htb buckets...)
Similar but different. The number of htb classes and parameters are different, but probably not in a significant way. The big disadvantage is the lack of HW acceleration with Traditional.
 
Last edited:

jerrytouille

Regular Contributor
Similar but different. The number of htb classes and parameters are different, but probably not in a significant way. The big disadvantage is the lack of HhW acceleration with Traditional.
Wondering how does HW acceleration tie to Adaptive qos / TrendMicro components? Isn't it our own router/"hardware" why the restriction... or if not, anyway to allow hw acc. with traditional qos?
My guess is it's probably baked in the precompiled source, else it would have been enabled for traditional already... especially cake. It's also probably not true "hardware" acc. anyway just a software bypass implementation hence the restriction via software.

cc. @RMerlin
p.s. sorry dave14305 for hyjacking the thread
 
Last edited:

dave14305

Part of the Furniture
There is another update to the develop branch. Here are the updates currently in develop branch:
  • Fix webui interpretation of iptables rules with multiple ports specified in both local and remote fields. More improvements were pushed today. If you use multiple ports (comma-separated or a range specified by colon), please test that the output is how you would expect.
  • Improve locking mechanism when mounting the webui page to avoid conflicts and collisions with other addons during startup.
There are likely bugs in the first one still, but it only affects the Application display of a connection in the Tracked connections table.
 

RMerlin

Asuswrt-Merlin dev
Wondering how does HW acceleration tie to Adaptive qos / TrendMicro components? Isn't it our own router/"hardware" why the restriction... or if not, anyway to allow hw acc. with traditional qos?
My guess is it's probably baked in the precompiled source, else it would have been enabled for traditional already... especially cake. It's also probably not true "hardware" acc. anyway just a software bypass implementation hence the restriction via software.
The Trend Micro engine interfaces with private APIs from Broadcom to be able to work alongside it. Open source code like the Cake scheduler don't have access to these APIs.
 

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

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