What's new

[Release] FreshJR Adaptive QOS (Improvements / Custom Rules / and Inner workings)

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

Status
Not open for further replies.
I still see the FreshJR QOS script with the suggested settings having an advantage. :)
 
It does seem to better assign minimum bandwidth to each category, had some stutter without. It would seem the script lets you set and forget instead of manually prioritizing whatever it is you're currently doing. So yeah, reinstalled it :).
 
Apologies if I'm breaking "old news" here, I was following this thread but have missed the last few weeks of posts..

For those running AiMesh: seems upgrading a node to firmware including Asus' updated QoS, when connected to a base router that doesn't yet include the Asus QoS update (eg. Merlin firmware as of today), and with QoS enabled = things break for clients connecting via the node.

No great surprise if you think about it, in general I've found it always a good idea to try and align node and base firmware versions to the same code base where possible. No idea if the issue is either the mismatch alone and/or the potentially incompatible FreshJR script being in the mix.

My experience: after firmware upgrade, intermittent connectivity problems - turned this was due to clients intermittently connecting to the node (=problems) and the main router (=fine).

Symptoms: certain services that should be prioritised are now significantly delayed or unable to connect at all.

To prove fault / 'fix': either a) force client to connect to router instead of node b) disable QoS or c) revert the node back to the previous firmware (and reenable QoS) = everything fine again.
 
Last edited:
Apologies if I'm breaking "old news" here, I was following this thread but have missed the last few weeks of posts..

For those running AiMesh: seems upgrading a node to firmware including Asus' updated QoS, when connected to a base router that doesn't yet include the Asus QoS update (eg. Merlin firmware as of today), and with QoS enabled = things break for clients connecting via the node.

No great surprise if you think about it, in general I've found it always a good idea to try and align node and base firmware versions to the same code base where possible. No idea if the issue is either the mismatch alone and/or the potentially incompatible FreshJR script being in the mix.

My experience: after firmware upgrade, intermittent connectivity problems - turned this was due to clients intermittently connecting to the node (=problems) and the main router (=fine).

Symptoms: certain services that should be prioritised are now significantly delayed or unable to connect at all.

To prove fault / 'fix': either a) force client to connect to router instead of node b) disable QoS or c) revert the node back to the previous firmware (and reenable QoS) = everything fine again.

I tried the same thing yesterday. I installed latest Asus firmware on my AC1900P AiMesh node and after about 20 minutes, I did a hard reset, reinstalled Merlin 384.17 and things are back to normal.
 
I guess I am alone in this :)
If freahjr was still here he might be able to help, I think you want to look I to VPN and the script or the threads about it, since it sounds similar.
 
If freahjr was still here he might be able to help, I think you want to look I to VPN and the script or the threads about it, since it sounds similar.

There were many discussions about VPNs and using a different interface than br0 or eth0, but I don't recall any about using multiple interfaces for running QoS on. I'm don't know much about networking, but I don't see how you'd run QoS over multiple interfaces, it seems like you'd have to specify one interface for outgoing traffic and one for incoming traffic that you're applying the rules to. So @Michel if you think about your network configuration from that perspective maybe it will be more clear where to apply the rules.
 
If someone decides to update this script to handle the recent Adaptive QoS changes, here is the summary of what Asus changed:

- VoIP and Instant Messaging priority has been renamed to Work-From-Home (with the same categories as before - the only change is the description itself)
- The fourth priority is now Learn-From-Home, and handles categories 4 and 13 (meaning these two categories now exist in two separate priority lists)
- Previous priorities 4 through 6 have been shifted down to 5 through 7 (due to the insertion of Learn-From-Home)
- The former priority 7 (Default) no longer exists, it's now Others.
- The Default priority (for untracked traffic) is priority 4.
I think the first bullet is straightforward enough.

Having 4 and 13 present in multiple classes means having to rework the flowid determination since it uses 4 to determine the assigned priority for Streaming, and 13 to determine the priority for Web traffic. We can use category 12 for Web, but I don’t know yet what else would uniquely identify Streaming.

The elimination of the Default priority might mean the end of the Game Transferring custom class. Still wrapping my head around the implications.

But I think the default of untracked traffic going to priority 4 (1:14) is a belated win for FreshJR, but still thinking this through as well.

If anyone on 384.18 alpha wants to post/PM the output of these commands while FreshJR is disabled, it might be helpful:
Code:
tc filter show dev br0
cat /tmp/bwdpi/qosd.conf
 
Hi i have a question does fq_codel still works on 2020 well i have a poor adsl2 connection but i still have the doubt my router is a ac66u b1 with merlin and the freshjr script i have a 10/0.5 connection
 
Hi i have a question does fq_codel still works on 2020 well i have a poor adsl2 connection but i still have the doubt my router is a ac66u b1 with merlin and the freshjr script i have a 10/0.5 connection

Yes, it still works and fq_codel is still the recommended setting. Remember to set your bandwidth speed manually and at 85-90% of your maximum measured speed to give QoS room to work. Measure your speed with DSLreports speed test or another tool that measures buffer bloat. IIRC the script takes the entered value and converts to kbps so you can use decimals, and in your case with only 0.5Mbps up, you'll want to go to hundredths, e.g 0.45 not just 0.4.

Test the settings via a speed test with buffer bloat and you'll see that QoS is working.
 
I think the first bullet is straightforward enough.

Having 4 and 13 present in multiple classes means having to rework the flowid determination since it uses 4 to determine the assigned priority for Streaming, and 13 to determine the priority for Web traffic. We can use category 12 for Web, but I don’t know yet what else would uniquely identify Streaming.

The elimination of the Default priority might mean the end of the Game Transferring custom class. Still wrapping my head around the implications.

But I think the default of untracked traffic going to priority 4 (1:14) is a belated win for FreshJR, but still thinking this through as well.

If anyone on 384.18 alpha wants to post/PM the output of these commands while FreshJR is disabled, it might be helpful:
Code:
tc filter show dev br0
cat /tmp/bwdpi/qosd.conf

Here it goes!

Sorry being a screenshot, but on mobile, copy paste is crappy and it goes all screwed. Hope it helps.
https://gofile.io/d/vSg9gp


Edit: off topic - does anyone knows how to change ssh timezone? As you can see, on my phone is 09h42 and on router ssh is 05h42 :)
 
Hey guys, just did a hard reset on my AC86U (latest Merlin), since it's been a while. I previously had FreshJr's script installed (minimal tweaks in the ui, I'm not that tech savvy), but Asus' own QoS seems to have evolved, too. It does categorize traffic better than before, but does the script still have the advantages it provided a year ago?

Thanks!

Edit: 50/50 mbps, one-to-two users, max 6 devices, hd streaming and game downloads are the heaviest saturators.
the burst and ceil rates etc were also a major factor freshJR was amazing.. the factory setting used to be garbage. im not certain how they are now with stock qos but might be good to take a alook so we have a better idea what parts of FreshJR are actually still needed
 
If someone decides to update this script to handle the recent Adaptive QoS changes, here is the summary of what Asus changed:

- VoIP and Instant Messaging priority has been renamed to Work-From-Home (with the same categories as before - the only change is the description itself)
- The fourth priority is now Learn-From-Home, and handles categories 4 and 13 (meaning these two categories now exist in two separate priority lists)
- Previous priorities 4 through 6 have been shifted down to 5 through 7 (due to the insertion of Learn-From-Home)
- The former priority 7 (Default) no longer exists, it's now Others.
- The Default priority (for untracked traffic) is priority 4.

Are these changes active in any of your FW version? Id like to play around a bit and get a feel for what might actually still be needed in freshjr and clean out the rest.
 
Here it goes!

Sorry being a screenshot, but on mobile, copy paste is crappy and it goes all screwed. Hope it helps.
Thanks. Is this with FreshJR disabled? I don’t see any filter rule for what used to be the undefined priority like below:
Code:
filter parent 1: protocol all pref 2 u32 fh 827::800 order 2048 key ht 827 bkt 0 flowid 1:17
  mark 0x80000000 0xc000ffff (success 8143)
 
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