What's new

FlexQoS FlexQoS 1.0 - Flexible QoS Enhancement Script for Adaptive QoS

  • 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!

It’s all stored in /jffs/addons/custom_settings.txt. So something like this would generate a restore script you could save in a safe place.
Code:
. /usr/sbin/helper.sh
{
echo ". /usr/sbin/helper.sh"
echo "am_settings_set flexqos_iptables \"$(am_settings_get flexqos_iptables)\""
echo "am_settings_set flexqos_appdb \"$(am_settings_get flexqos_appdb)\""
echo "am_settings_set flexqos_bandwidth \"$(am_settings_get flexqos_bandwidth)\""
} > restore_flexqos_settings.sh

Thanks. I’ll merge it for the next release. I’m trying to keep the master branch “stable” now that I’ve created a develop branch.
Thanks

Just pulled two requests to dev
 
Another one...
I defined speedtest to go to net control.
On the list, it shows it as red category.
However, on the pie, it is being shown as web traffic. As you can notice, only a couple of Kbs on net control.
Note that I am currently doing a speedtest when I took the screenshot.

https://i.ibb.co/p414t47/Screenshot-20200626-004325502.png

Code:
adminRT-AC86U/tmp/home/root flexqos -debug                                                                                                          
FlexQoS v0.6 released 06/25/2020

Debug:

Undf Prio: 2
Undf FlowID: 1:15
Classes Present: 8
Down Band: 40550
Up Band  : 9728
***********
Net Control = 1:10
Work-From-Home = 1:12
Gaming = 1:11
Others = 1:15
Web Surfing = 1:14
Streaming = 1:13
Downloads = 1:17
Defaults = 1:16
***********
Downrates -- 2027, 6082, 8110, 12165, 4055, 4055, 2027, 2027
Downceils -- 40550, 40550, 40550, 40550, 40550, 40550, 40550, 40550
Downbursts -- 3198b, 9597b, 4797b, 3196b, 3198b, 3198b, 3198b, 3199b
DownCbursts -- 49582b, 49582b, 49582b, 49582b, 49582b, 49582b, 49582b, 49582b
***********
Uprates -- 486, 1459, 1945, 972, 972, 2918, 486, 486
Upceils -- 9728, 9728, 9728, 9728, 9728, 9728, 9728, 9728
Upbursts -- 3198b, 3198b, 3198b, 3198b, 3198b, 3198b, 3198b, 3198b
UpCbursts -- 11196b, 11196b, 11196b, 11196b, 11196b, 11196b, 11196b, 11196b
iptables settings: <>>udp>>500,4500>>3<>>udp>16384:16415>>>3<>>tcp>>119,563>>5<>>tcp>>80,443>08****>7<10.0.0.228>>both>29750>>>5<10.0.0.65/29>>both>>>>2
iptables -D POSTROUTING -t mangle -o br0   -p udp  -m multiport  --sports 500,4500  -j MARK --set-mark 0x80060001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0   -p udp  -m multiport  --sports 500,4500  -j MARK --set-mark 0x80060001
iptables -D POSTROUTING -t mangle -o eth0   -p udp  -m multiport  --dports 500,4500  -j MARK --set-mark 0x40060001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0   -p udp  -m multiport  --dports 500,4500  -j MARK --set-mark 0x40060001
iptables -D POSTROUTING -t mangle -o br0   -p udp  --dport 16384:16415   -j MARK --set-mark 0x80060001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0   -p udp  --dport 16384:16415   -j MARK --set-mark 0x80060001
iptables -D POSTROUTING -t mangle -o eth0   -p udp  --sport 16384:16415   -j MARK --set-mark 0x40060001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0   -p udp  --sport 16384:16415   -j MARK --set-mark 0x40060001
iptables -D POSTROUTING -t mangle -o br0   -p tcp  -m multiport  --sports 119,563  -j MARK --set-mark 0x80030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0   -p tcp  -m multiport  --sports 119,563  -j MARK --set-mark 0x80030001
iptables -D POSTROUTING -t mangle -o eth0   -p tcp  -m multiport  --dports 119,563  -j MARK --set-mark 0x40030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0   -p tcp  -m multiport  --dports 119,563  -j MARK --set-mark 0x40030001
iptables -D POSTROUTING -t mangle -o br0   -p tcp  -m multiport  --sports 80,443 -m mark --mark 0x80080000/0xc03f0000 -j MARK --set-mark 0x803f0001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0   -p tcp  -m multiport  --sports 80,443 -m mark --mark 0x80080000/0xc03f0000 -j MARK --set-mark 0x803f0001
iptables -D POSTROUTING -t mangle -o eth0   -p tcp  -m multiport  --dports 80,443 -m mark --mark 0x40080000/0xc03f0000 -j MARK --set-mark 0x403f0001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0   -p tcp  -m multiport  --dports 80,443 -m mark --mark 0x40080000/0xc03f0000 -j MARK --set-mark 0x403f0001
iptables -D POSTROUTING -t mangle -o br0  -d 10.0.0.228  -p tcp  --dport 29750   -j MARK --set-mark 0x80030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0  -d 10.0.0.228  -p tcp  --dport 29750   -j MARK --set-mark 0x80030001
iptables -D POSTROUTING -t mangle -o br0  -d 10.0.0.228  -p udp  --dport 29750   -j MARK --set-mark 0x80030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0  -d 10.0.0.228  -p udp  --dport 29750   -j MARK --set-mark 0x80030001
iptables -D POSTROUTING -t mangle -o eth0  -s 10.0.0.228  -p tcp  --sport 29750   -j MARK --set-mark 0x40030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0  -s 10.0.0.228  -p tcp  --sport 29750   -j MARK --set-mark 0x40030001
iptables -D POSTROUTING -t mangle -o eth0  -s 10.0.0.228  -p udp  --sport 29750   -j MARK --set-mark 0x40030001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0  -s 10.0.0.228  -p udp  --sport 29750   -j MARK --set-mark 0x40030001
iptables -D POSTROUTING -t mangle -o br0  -d 10.0.0.65/29      -j MARK --set-mark 0x80040001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o br0  -d 10.0.0.65/29      -j MARK --set-mark 0x80040001
iptables -D POSTROUTING -t mangle -o eth0  -s 10.0.0.65/29      -j MARK --set-mark 0x40040001 >/dev/null 2>&1
iptables -A POSTROUTING -t mangle -o eth0  -s 10.0.0.65/29      -j MARK --set-mark 0x40040001
appdb rules: <000000>6<0D0086>5<0D00A0>5<12003F>4<1A****>5<1400C5>0<00006B>4<0D0007>0<13****>4<14****>4
realtc filter del dev br0 parent 1: prio 2 > /dev/null 2>&1
realtc filter del dev eth0 parent 1: prio 2 > /dev/null 2>&1
realtc filter add dev br0 protocol all prio 2 u32 match mark 0x80000000 0xc000ffff flowid 1:15
realtc filter add dev eth0 protocol all prio 2 u32 match mark 0x40000000 0xc000ffff flowid 1:15
realtc filter add dev br0 protocol all prio 15 u32 match mark 0x800D0086 0xc03fffff flowid 1:17
realtc filter add dev eth0 protocol all prio 15 u32 match mark 0x400D0086 0xc03fffff flowid 1:17
realtc filter add dev br0 protocol all prio 15 u32 match mark 0x800D00A0 0xc03fffff flowid 1:17
realtc filter add dev eth0 protocol all prio 15 u32 match mark 0x400D00A0 0xc03fffff flowid 1:17
realtc filter add dev br0 protocol all prio 20 u32 match mark 0x8012003F 0xc03fffff flowid 1:14
realtc filter add dev eth0 protocol all prio 20 u32 match mark 0x4012003F 0xc03fffff flowid 1:14
realtc filter del dev br0 parent 1: prio 2 > /dev/null 2>&1
realtc filter del dev eth0 parent 1: prio 2 > /dev/null 2>&1
realtc filter add dev br0 protocol all prio 2 u32 match mark 0x801A0000 0xc03f0000 flowid 1:17
realtc filter add dev eth0 protocol all prio 2 u32 match mark 0x401A0000 0xc03f0000 flowid 1:17
realtc filter add dev br0 protocol all prio 22 u32 match mark 0x801400C5 0xc03fffff flowid 1:10
realtc filter add dev eth0 protocol all prio 22 u32 match mark 0x401400C5 0xc03fffff flowid 1:10
realtc filter add dev br0 protocol all prio 2 u32 match mark 0x8000006B 0xc03fffff flowid 1:14
realtc filter add dev eth0 protocol all prio 2 u32 match mark 0x4000006B 0xc03fffff flowid 1:14
realtc filter add dev br0 protocol all prio 15 u32 match mark 0x800D0007 0xc03fffff flowid 1:10
realtc filter add dev eth0 protocol all prio 15 u32 match mark 0x400D0007 0xc03fffff flowid 1:10
realtc filter del dev br0 parent 1: prio 22 > /dev/null 2>&1
realtc filter del dev eth0 parent 1: prio 22 > /dev/null 2>&1
realtc filter add dev br0 protocol all prio 22 u32 match mark 0x80130000 0xc03f0000 flowid 1:14
realtc filter add dev eth0 protocol all prio 22 u32 match mark 0x40130000 0xc03f0000 flowid 1:14
realtc filter del dev br0 parent 1: prio 23 > /dev/null 2>&1
realtc filter del dev eth0 parent 1: prio 23 > /dev/null 2>&1
realtc filter add dev br0 protocol all prio 23 u32 match mark 0x80140000 0xc03f0000 flowid 1:14
realtc filter add dev eth0 protocol all prio 23 u32 match mark 0x40140000 0xc03f0000 flowid 1:14

I wouldnt have done that.. Speedtest can be in any category infact the lower priority it is the better you know how well your qos is working. It also allows you to speedtest all day/night without interfering with other users.. in netcontrol you could potentially load up the network.

Mainly because if your running speedtest with QOS enabled your not looking for top speed.. your interested in your ping loaded up.
 
I wouldnt have done that.. Speedtest can be in any category infact the lower priority it is the better you know how well your qos is working. It also allows you to speedtest all day/night without interfering with other users.. in netcontrol you could potentially load up the network.

Mainly because if your running speedtest with QOS enabled your not looking for top speed.. your interested in your ping loaded up.

What do you mean by "ping loaded up"? I'm trying to see how i can impact my stability as ive had quite a bit of issue with online FPS latencies. Im looking at bufferbloats under multiple scenarios: PC -> Ethernet plugged into: ISP's gateway (modem + router), Bridged gateway straight into PC, Bridged gateway into AC68u router without QoS, then finally AC68u running FlexQoS with different settings (SFQ, default codel, fq_codel) and varying degrees of cap on my 100/10mbit connection. No other devices are connected, but the results feel inconsistent and random. Are these kind of results to be expected?


upload_2020-6-27_17-34-19.png

upload_2020-6-27_17-34-55.png

upload_2020-6-27_17-36-0.png

upload_2020-6-27_17-39-51.png
 
So is Asus the one to blame for this still? I am a bit confused on this post by you. I just posted more on me testing this, this morning. I didn't see this post of yours before I posted it. Overall I hope this can be corrected in the near future. As this to me.. is a deal breaker, as Adaptive QoS is broken in this state imho. Especially when someone like me who has a lower upstream limit, that can easily be hit, via a wifi device. Causing some higher than expected latency spikes.

Anyways no more of this talk from me, for a bit now. I think I posted enough info about it, in your thread. Which overall isn't a problem with your script at all. So hopefully you don't mind me discussing what I did here. I just want this to be fixed, with Adaptive QoS able to run at the best of its ability.

EDIT: Let me be clear.. when I say Adaptive QoS is broken in its current state. Overall I don't blame the feature itself. It's just current upstream wifi data is bypassing it, and so overall, it isn't able to do its job correctly.
I’d be curious to see the output of this command set:
Code:
echo 2 > /proc/bw_qos_debug
service restart_qos
tail -F /tmp/syslog.log | grep DBG
It’ll write a lot to syslog. Once it settles down, turn off with:
Code:
echo 1 > /proc/bw_qos_debug
The point would be just to confirm what rules the Trend stuff is creating. Won’t help a driver issue, but I suppose it would help identify if it’s using a different WAN interface (like AX58U). I don’t think it’s happening in this case, but I also would like to see output from a router different from my own.
 
@dave14305

I'm relaxing a bit right now, but I don't mind trying this a bit later. I'm guessing you would like me to run this, and try running a speedtest on my phone, and seeing what gets logged? Just curious what you would like me to do.

EDIT: I just did this, as I figured it would be simple, and what the hell. This is what was logged while I ran a test on my phone. The stuff at the bottom, is when the upload part of the test ran. I dunno if any of it will be helpful, or not. Btw this is without your script running. I haven't re-added it yet, since I factory reset this morning.

Code:
Jun 27 12:58:07 kernel: DBG[update_udb_qos:3506] qos_update=0x7
Jun 27 12:58:07 kernel: DBG[update_udb_qos:3507] qos_flag=0x4
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 10:1 classid 10:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 10:1 classid 10:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 11:1 classid 11:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 11:1 classid 11:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 12:1 classid 12:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:07 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 12:1 classid 12:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 13:1 classid 13:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 13:1 classid 13:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 14:1 classid 14:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 14:1 classid 14:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 15:1 classid 15:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 15:1 classid 15:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 16:1 classid 16:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 16:1 classid 16:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev eth0 parent 17:1 classid 17:13 htb prio 2 rate 16000bit ceil 24576000bit burst 3200 cburst 30400 quantum 200
Jun 27 12:58:08 kernel: DBG[cha_htb_class:1581] class cha dev br0 parent 17:1 classid 17:13 htb prio 2 rate 16000bit ceil 512000000bit burst 3200 cburst 640000 quantum 200
Jun 27 12:58:23 kernel: DBG[prep_app_ses_class:2908] cls->req_bw = 0
Jun 27 12:58:23 kernel: DBG[prep_app_ses_class:2913] This app session does not request any bandwidth!
Jun 27 12:58:23 kernel: DBG[prep_app_ses_class:2930] App 1-4-206 qos_flag = 0xc0002
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2908] cls->req_bw = 0
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2913] This app session does not request any bandwidth!
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2930] App 12-20-189 qos_flag = 0xa000d
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2908] cls->req_bw = 0
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2913] This app session does not request any bandwidth!
Jun 27 12:58:27 kernel: DBG[prep_app_ses_class:2930] App 3-13-15 qos_flag = 0xb0004
Jun 27 12:58:29 kernel: DBG[prep_app_ses_class:2908] cls->req_bw = 0
Jun 27 12:58:29 kernel: DBG[prep_app_ses_class:2913] This app session does not request any bandwidth!
Jun 27 12:58:29 kernel: DBG[prep_app_ses_class:2930] App 1-13-234 qos_flag = 0xb0002
Jun 27 12:58:36 kernel: DBG[prep_app_ses_class:2884] This app entry is an unknown app!
Jun 27 12:58:36 kernel: DBG[prep_app_ses_class:2930] App 11-0-0 qos_flag = 0x11000c
 
Last edited:
@dave14305

I'm relaxing a bit right now, but I don't mind trying this a bit later. I'm guessing you would like me to run this, and try running a speedtest on my phone, and seeing what gets logged? Just curious what you would like me to do.

EDIT: I just did this, as I figured it would be simple, and what the hell. This is what was logged while I ran a test on my phone. The stuff at the bottom, is when the upload part of the test ran. I dunno if any of it will be helpful, or not. Btw this is without your script running. I haven't re-added it yet, since I factory reset this morning.
Yes, better to run it without the script active to see how normal A.QoS sets up. There's probably a lot more data in the log that already went by when you started the tail.

When you're thinking about it, try to get the beginning of it (at your leisure, since this is more informational than diagnostic for me):
Code:
grep DBG /tmp/syslog.log-1 /tmp/syslog.log
 
@dave14305

Well the system log had a lot of stuff in it. I'm pretty sure it's only from QoS or whatever. As I wiped the log a little bit ago, and ran the commands you asked. I attached a text document of it on this post. I hope this is what you were looking for. I did see another log entry at the end of running another test on my phone a little bit ago. Dunno if it's helpful at all.

Code:
Jun 27 13:19:31 kernel: DBG[prep_app_ses_class:2892] Failed to find app group for this app cat!
Jun 27 13:19:31 kernel: DBG[prep_app_ses_class:2930] App 12-26-1 qos_flag = 0x11000d
 

Attachments

  • syslog.txt
    115.9 KB · Views: 100
Version 0.7.1 posted
  • Create appdb category array in fail-safe manner to avoid breaking webpage HTML (thanks @danielk)
Code:
flexqos -update
 
@dave14305

Well the system log had a lot of stuff in it. I'm pretty sure it's only from QoS or whatever. As I wiped the log a little bit ago, and ran the commands you asked. I attached a text document of it on this post. I hope this is what you were looking for. I did see another log entry at the end of running another test on my phone a little bit ago. Dunno if it's helpful at all.

Code:
Jun 27 13:19:31 kernel: DBG[prep_app_ses_class:2892] Failed to find app group for this app cat!
Jun 27 13:19:31 kernel: DBG[prep_app_ses_class:2930] App 12-26-1 qos_flag = 0x11000d
Thanks. Nothing too eye-opening, but it's useful for me to see a different setup. Enjoy the weekend!
 
@dave14305
I'm using Transmission , well for years now and it never followed any QOS rule so sucks system especially with clients doing gaming which is highest priority set, any way to tuck in qos this naughty child?? Same problem persists from always o_O
 
@dave14305
I'm using Transmission , well for years now and it never followed any QOS rule so sucks system especially with clients doing gaming which is highest priority set, any way to tuck in qos this naughty child?? Same problem persists from always o_O
Could try finding which ports transmission uses or in my case I have my secondary PC IP set to the file downloads category since it is most used for usenet and torrents.
 
Does Individual device priority in the bandwith Monitor tap still dont work?
 
@Phil Outram

I first just want to thank you for trying to help. However I had already did what you suggested yesterday, before I posted about this problem. Overall I am one of the ones who often factory reset their routers after most firmware updates, and such.

I want to mention again, I am running RMerlin's latest beta build on my AX88U. Which is 384.18_beta1. I hope you are running this build as well. Being that I woke up early this morning, and no one in my house is really awake yet. I decided to once again do another factory reset. I did the initial router setup, which includes setting up the wifi. After that was done. I simply went, and enabled Adaptive QoS, used FQ_Codel, I did not set any overhead value. I set my download at 500mbps, and my upload at 24mbps. After that I hit apply to start QoS. I gave that a few moments, and pulled up my web browser. Loaded up fast.com, and it gave me near 500mbps down, and a little under 24mbps up. I also loaded up speedtest.net, pick a local server, ran another test, I got 480+ down, and 23 up.

Overall both tests on my wired pc, gave me results right under the limits I set. So after that, I pulled my phone up, reconnected to the wifi. I made sure to forget the network during the factory reset as well. I opened up the speedtest app on my phone. Ran a test to the same server, that I ran on my wired pc. I ended up running two test on my phone. Both in the 34-35mbps range. Which is my max upload from my provider. I also made sure to have the pie chart tab up on the router, while I tested. During the download, data showed on the download pie chart, with active data being passed. When the upload started.. nothing showed up once again.

Finally.. as I write this, I thought about my wired pc, which I do have wifi on. So I disconnected ethernet, and connected via wifi to the AX88U. Ran another test on speedtest.net, to the same server. On the upload, once again upload was maxed out at around 35mbps. Also the pie chart page once again showed no active data while the upload part of the test ran. Overall all this testing on my end, proves something isn't right when it comes to the wifi/wifi driver on this AX88U. As wifi upstream data bypasses Adaptive QoS.

Very strange as my AX88U behaves as expected, Wi-Fi traffic on the upstream is limited by Qos. I have a Plex server that external users regularly access and I can see my bittorrent uploads getting throttled the second anyone starts streaming from my server. Everything is kept within the upper limit I have set.

One thing I notice that is different in your config is not setting a WAN packet overhead. It might not make any difference but mine is set to ppoe vdsl.
 
Does Individual device priority in the bandwith Monitor tap still dont work?
I think it still works with poor minimum bandwidth per device. I don’t think a anyone is brave enough to test it anymore.
 
@dave14305
I'm using Transmission , well for years now and it never followed any QOS rule so sucks system especially with clients doing gaming which is highest priority set, any way to tuck in qos this naughty child?? Same problem persists from always o_O
FreshJR had some posts about Transmission. It sounded like upload could be limited through the OUTPUT chain, but download could not be limited since it never reaches the br0 interface when it runs on the router.

How would you identify transmission traffic on the router by source and destination ports? Any source ephemeral port to any destination ephemeral port? I don’t use transmission, so not sure what it looks like.
 
Very strange as my AX88U behaves as expected, Wi-Fi traffic on the upstream is limited by Qos. I have a Plex server that external users regularly access and I can see my bittorrent uploads getting throttled the second anyone starts streaming from my server. Everything is kept within the upper limit I have set.

One thing I notice that is different in your config is not setting a WAN packet overhead. It might not make any difference but mine is set to ppoe vdsl.

Well I have used the docsis overhead many of times, it didn't matter. The only thing I can think of, is possibility of a hardware related issue, and maybe you have a newer hardware version of the AX88U.
 
@Phil Outram

I just looked at the bottom of my AX88U, and I have Hardware V A1. Which is the older of the two. There's a "A1.1" version. I would be interested in what the bottom of your AX88U shows. I have had my AX88U for a while now.
 

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