Version 1.0.1 released on this fine Labor Day (before I forget how to use git).
NEW: Added ability to set custom iptables rule names (27 char max)
NEW: Added ability to force update when switching branches (@maghuro)
NEW: WebUI appdb search will pre-fill Class with original Class value
NEW: Added bandwidth utilization meters per class
CHANGED: Reduced the number of slow tc calls
CHANGED: Improved appdb and iptables rule validation during start and check functions
CHANGED: Flush conntrack table by default (disable with flexqos noflushct)
CHANGED: Simplified Tracked Connections sorting code by adopting Merlin's approach
CHANGED: Increased webui Apply wait time from 15-30 seconds since QoS can be slow to initialize
FIXED: Renamed VoIP to Work-From-Home in appdb CLI output
Update via amtm or flexqos update. If you were testing the develop branch, it may be wiser to now switch back to stable with flexqos stable.
If you have made a backup of your rules, it would be a good idea to back them up again after you fix the new iptables rule names in the WebUI, so that the names become part of the backup file.
This was a long time coming from the 1.0.0 release, so there may have been bugs I forgot to fix, or didn't notice I added. Appreciate your feedback!
Suggestion: Auto Scale the graphs or make them a log bar graph.
Reason: The bar is nearly invisible when small amounts of bandwidth are involved and it's particularity noticeable when there is little activity for any class.
hello @dave14305
I have 2 custom iptables rules at the very end. They are called JM_VPN_1 and JM_VPN_2.
When looking at the tracked connections, i see JM_VPN_1 but with a different name: JM
hello @dave14305
I have 2 custom iptables rules at the very end. They are called JM_VPN_1 and JM_VPN_2.
When looking at the tracked connections, i see JM_VPN_1 but with a different name: JM
Yes, I see how that can be a problem, due to another trick I was using before implementing custom rule names. For now, just remove any underscores to avoid the bad parsing, until I can fix it. I think the same would happen for all your rules with underscores, where only the first fragment is displayed.
Suggestion: Auto Scale the graphs or make them a log bar graph.
Reason: The bar is nearly invisible when small amounts of bandwidth are involved and it's particularity noticeable when there is little activity for any class.
I'm surprised Plex is included but Emby isin't. Nontheless, the Plex rule doesn't seem to work. If someone has set up rules for Plex and Emby, please share!
CHANGED: Use QoS nvram priority list to differentiate Streaming from Learn-From-Home, eliminating the FlexQoS requirement that Learn-From-Home be a lower priority than Streaming. It's still not a good idea to have Learn-From-Home above Streaming or Web Surfing because it will still hijack any category 04 or 13 traffic since the first matching rule in the tc filter list will win. This change just fixes the script logic to differentiate which is which when reading the duplicate categories.
CHANGED: Changed internal class marks from 0001 to ffff to avoid collisions with AppDB marks and rules
FIXED: Fixed a long-standing issue where the device identification bits in the Adaptive QoS mask were zeroed out, resulting in all modified traffic hitting the default leaf class 1[0-7]:256. This would negatively impact anyone who is trying to use device priorities, even though it's usually been advised against.
FIXED: Properly handle situation where an existing user-script does not end with a newline and we append our command to the end of file.
I also added a hotfix (just now) to fix handling of iptables rule names with underscores. Since it only affected the asp page, you'll have to force an update since it won't be detected by a normal update check.
I also added a hotfix (just now) to fix handling of iptables rule names with underscores. Since it only affected the asp page, you'll have to force an update since it won't be detected by a normal update check.
I've been spending a lot of time reading about HTB and fq_codel ("the classics" in the age of CAKE). I was always happy to ignore the complexity of the device priority classes lurking beneath the more pleasant "Category" classes that we usually talk about (Net Control, Work-From-Home, Streaming, etc.). It's quite a fascinating subject, technically and one that can blow your mind especially when trying to unravel the Adaptive QoS classes, qdiscs and filters.
For anyone with more than 10 devices on their network, and who do not use any form of device priority on the Bandwidth Monitor tab of the QoS webUI, I'm interested to know the output of this command on your router:
Code:
tc class show dev br0 | grep -E "parent 10:1 .* prio "
I personally have no device priorities assigned (everything is Default) but I still see some devices assigned to classes that are at prio 3, when everything else is at prio 2.
I can't tell yet if this is an issue that requires a reboot (I had tested a device priority to see what happens underneath the covers, but reverted my change). So is this a flaw in Trend's kernel module that assigns some default priority devices a lower priority class (not all same-priority devices are created equally)?
Anyhow, my latest quest is to see if there's a way to understand and make better use of the device priority structure in Adaptive QoS, which has always been poo-poo'd by FreshJR.
Also, as I've been reading and studying more, I did become quite dismayed at just how old the Linux kernel is on my AC68U. I think I measured the sch_htb.c file from circa January 2010. The more you learn about the latest advances in traffic control, the more you want to play with the latest ideas (e.g. CAKE). OpenWRT is where it's at for CAKE, but I don't really like (or maybe understand?) the best HW options. It becomes rather frustrating to keep trying to crack the Adaptive QoS code (figuratively) when so many other QoS solutions are more "open".
Anyway, I'm not going anywhere anytime soon, but it gets rather lonely trying to unravel this in a vacuum. If anyone is seriously interested in how it all works, I've also started reading the archives of the Bufferbloat mailing list. Especially you CAKE users. You can pick the brains of the authors and other smart people, if you can formulate an intelligent enough question to catch their attention.
SNBForums is a community for anyone who wants to learn about or discuss the latest in wireless routers, network storage and the ins and outs of building and maintaining a small network.
If you'd like to post a question, simply register and have at it!
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.