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.
Can you post some screenshots?

3074 is the port cod uses on ps4. Works amazing, played with parties and chromecast was casting, no lag.
 

Attachments

  • 78679BB5-9201-47F1-9556-2C6E3267FFD6.png
    78679BB5-9201-47F1-9556-2C6E3267FFD6.png
    226.4 KB · Views: 527
  • CB71AAED-7C48-4618-A06E-6638153A4324.png
    CB71AAED-7C48-4618-A06E-6638153A4324.png
    201.2 KB · Views: 521
Last edited:
Been using this mod for a while now, but, recently, on my new Asus 5300, it's been classifying IOS software updates as Video and Audio streaming. I would assume they ought to be file downloads. Is this the way it works for IOs software updates? Perhaps something has changed.

EDIT - looks like I am another one with the AppDB problem, will await a fix.
 
Last edited:
hello

I know in the info it says that i should keep all devices at default, but my handy .. is taking sometimes a lot of internet speed.

Can you explain me why i should not put my gaming pc on high priority, I do streaming and play cs go.
 
Struggling in the last yard here. Installed FreshJR's Adaptive QOS enhancements and x3mRouting with latest Merlin build. Have ovpncli1 selectively routing certain clients through VPN. Added Netflix, Hulu and Amazon IPSET routes to WAN, since I don't want those going through VPN for those select VPN clients.

Initially, all traffic (both final VPN tunneled and IPSEC routed to WAN) from those devices showed up/down inverted on QOS Bandwidth Metrics. Added FreshJR's recommended VPN fix to correct the inverted QOS Bandwidth Metrics for VPN traffic:
iptables -D POSTROUTING -t mangle -o br0 -d [VPN_CLIENT_IP_HERE] -j MARK --set-xmark 0x80000000/0xC0000000 &> /dev/null
iptables -A POSTROUTING -t mangle -o br0 -d [VPN_CLIENT_IP_HERE] -j MARK --set-xmark 0x80000000/0xC0000000

This yields QOS Bandwidth Monitor up/down correction for the IPSEC routed traffic (e.g. Netflix, Hulu, Amazon), but not for traffic which remained tunneled through VPN. Am I missing something?

Here are some routing logs:
*******************************************************************
iptables --line -t nat -nvL
Chain PREROUTING (policy ACCEPT 9665 packets, 1134K bytes)
num pkts bytes target prot opt in out source destination
1 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:1194
2 976 866K VSERVER all -- * * 0.0.0.0/0 192.168.100.254
3 74077 5186K DNSFILTER udp -- * * 192.168.1.0/24 0.0.0.0/0 udp dpt:53
4 660 40080 DNSFILTER tcp -- * * 192.168.1.0/24 0.0.0.0/0 tcp dpt:53
5 215 16340 DNAT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:123 to:192.168.1.1
6 0 0 DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:123 to:192.168.1.1
Chain INPUT (policy ACCEPT 10069 packets, 735K bytes)
num pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 7209 packets, 575K bytes)
num pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 7182 packets, 569K bytes)
num pkts bytes target prot opt in out source destination
1 4789 335K MASQUERADE all -- * tun11 192.168.1.0/24 0.0.0.0/0
2 0 0 ACCEPT all -- * * 192.168.1.0/24 0.0.0.0/0 policy match dir out pol ipsec
3 71533 6068K PUPNP all -- * eth0 0.0.0.0/0 0.0.0.0/0
4 69352 5934K MASQUERADE all -- * eth0 !192.168.100.254 0.0.0.0/0
5 173 57244 MASQUERADE all -- * br0 192.168.1.0/24 192.168.1.0/24
Chain DNSFILTER (2 references)
num pkts bytes target prot opt in out source destination
1 74737 5226K DNAT all -- * * 0.0.0.0/0 0.0.0.0/0 to:192.168.1.1
Chain LOCALSRV (0 references)
num pkts bytes target prot opt in out source destination
Chain PCREDIRECT (0 references)
num pkts bytes target prot opt in out source destination
Chain PUPNP (1 references)
num pkts bytes target prot opt in out source destination
Chain VSERVER (1 references)
num pkts bytes target prot opt in out source destination
1 976 866K VUPNP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain VUPNP (1 references)
num pkts bytes target prot opt in out source destination
*******************************************************************
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.100.1 * 255.255.255.255 UH 0 0 0 eth0
209.99.62.18 192.168.100.1 255.255.255.255 UGH 0 0 0 eth0
192.168.100.0 * 255.255.255.0 U 0 0 0 eth0
10.2.2.0 * 255.255.255.0 U 0 0 0 tun11
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
192.168.0.0 * 255.255.255.0 U 0 0 0 tun21
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default 192.168.100.1 0.0.0.0 UG 0 0 0 eth0
*******************************************************************
iptables -nvL PREROUTING -t nat --line
Chain PREROUTING (policy ACCEPT 9665 packets, 1134K bytes)
num pkts bytes target prot opt in out source destination
1 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:1194
2 976 866K VSERVER all -- * * 0.0.0.0/0 192.168.100.254
3 74077 5186K DNSFILTER udp -- * * 192.168.1.0/24 0.0.0.0/0 udp dpt:53
4 660 40080 DNSFILTER tcp -- * * 192.168.1.0/24 0.0.0.0/0 tcp dpt:53
5 215 16340 DNAT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:123 to:192.168.1.1
6 0 0 DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:123 to:192.168.1.1
*******************************************************************
iptables -nvL PREROUTING -t mangle --line
Chain PREROUTING (policy ACCEPT 185K packets, 180M bytes)
num pkts bytes target prot opt in out source destination
1 1245K 1460M MARK all -- tun11 * 0.0.0.0/0 0.0.0.0/0 MARK xset 0x1/0x7
2 0 0 MARK all -- tun21 * 0.0.0.0/0 0.0.0.0/0 MARK xset 0x1/0x7
3 1294K 1547M BWDPI_FILTER udp -- eth0 * 0.0.0.0/0 0.0.0.0/0
4 37685 16M MARK all -- br0 * 0.0.0.0/0 0.0.0.0/0 match-set AMAZON-US dst MARK or 0x8000
5 52485 3158K MARK all -- br0 * 0.0.0.0/0 0.0.0.0/0 match-set HULU_WEB dst MARK or 0x8000
6 191K 19M MARK all -- br0 * 0.0.0.0/0 0.0.0.0/0 match-set NETFLIX dst MARK or 0x8000
 
Last edited:
Ok- I have what may be a stupid question. How do I add more lines in the section to port forward? As you can see, I am out of lines to add more ports and since we have several gamers in the house playing multiple games, we need more.

Screen-Shot-2019-09-08-at-8-20-59-PM.png
 
Ok- I have what may be a stupid question. How do I add more lines in the section to port forward? As you can see, I am out of lines to add more ports and since we have several gamers in the house playing multiple games, we need more.

Screen-Shot-2019-09-08-at-8-20-59-PM.png
If you can’t consolidate your existing rules, you’ll have to go old-school and add them in the FreshJR_QOS script directly. It’s a limitation of the available nvram variables that FreshJR borrowed to implement his WebUI.
 
Ok- I have what may be a stupid question. How do I add more lines in the section to port forward? As you can see, I am out of lines to add more ports and since we have several gamers in the house playing multiple games, we need more.

Screen-Shot-2019-09-08-at-8-20-59-PM.png
It should auto detect the traffic for the most part one redirect rule should get all the clients using that port range, I remember before there was a way to look up the app db to see if a game was in there not sure if it still works.
 
If you can’t consolidate your existing rules, you’ll have to go old-school and add them in the FreshJR_QOS script directly. It’s a limitation of the available nvram variables that FreshJR borrowed to implement his WebUI.
So I suppose I can combine the ports for the first PC as "49670:49679, 58434:58559"

If I run out of lines in the end as I add them for the second PC, how would I hard code them into the script? Is there a guide in this thread showing how modify the script?
 
Sorry for the delay in getting back to you. I made a post earier in this thread that gives the basic format, which still works under the current version:
#1944

You have to edit the /jffs/scripts/FreshJR_QOS script yourself. After you ssh into the router, you can use the built-in nano text editor as such:
Code:
nano -wt /jffs/scripts/FreshJR_QOS

Put the download rules in this section:
Code:
        ##DOWNLOAD (INCOMMING TRAFFIC) CUSTOM RULES START HERE  -- legacy method

Put any upload rules in this section:

Code:
        ##UPLOAD (OUTGOING TRAFFIC) CUSTOM RULES START HERE  -- legacy method

As you look at the FreshJR_QOS script, you will get an idea of what the basic layout is. As long as you only need to make rules for specific IP addresses or ports, you will find examples already in the script that you can mimic. If you need a solution a little more custom than that, you may need to hit your favorite search engine for help with ip6tables, but there are also other members of the community that may be able to provide some guidance with specific rules.
@Tekneek , thanks for the info. Dumb question so I have enabled IPV6 on the router...when I go to my Xbox , I can see the the Xbox now sees both the IPV4 and IPV6. I'm assuming the IPV6 that I see here it's the info I'll have to manually add to the script correct? Also will this IPV6 ever change when I turn on/off the Xbox ? Again sorry for the noob questions.
 
@Tekneek , thanks for the info. Dumb question so I have enabled IPV6 on the router...when I go to my Xbox , I can see the the Xbox now sees both the IPV4 and IPV6. I'm assuming the IPV6 that I see here it's the info I'll have to manually add to the script correct? Also will this IPV6 ever change when I turn on/off the Xbox ? Again sorry for the noob questions.
IPv6 fresh jr was working on implementing into the script he stated in a prior post.
 
IPv6 fresh jr was working on implementing into the script he stated in a prior post.

Actually Vexira, IPv6 APPDB-related stuff works. Just not the IP adddress related stuff (I believe)
 
Who knows at this point he could possibly change his mind.

No what i'm saying is in the current version of the script (which I am using) - IPv6 APPDB rules work fine, it's just things related to IP address which don't yet work (unless FreshJr fixes it).
 
No what i'm saying is in the current version of the script (which I am using) - IPv6 APPDB rules work fine, it's just things related to IP address which don't yet work (unless FreshJr fixes it).
I know what you said what I'm implying is that the IP address might be implemented in the next release.
 
@Tekneek , thanks for the info. Dumb question so I have enabled IPV6 on the router...when I go to my Xbox , I can see the the Xbox now sees both the IPV4 and IPV6. I'm assuming the IPV6 that I see here it's the info I'll have to manually add to the script correct? Also will this IPV6 ever change when I turn on/off the Xbox ? Again sorry for the noob questions.

The default configuration of in Asuswrt-Merlin will probably have every Ipv6 device deriving their own address through SLAAC (https://howdoesinternetwork.com/2013/slaac can explain it a bit). This means it may not be the same everytime. I have a configuration on mine that makes assignments stateful and static, because I need that kind of management on my network. It's outside the scope of this thread, though, so message me directly if you'd like some help going down that road.
 
My QOS category priority settings under Custom Settings revert to factory default on the main QOS webgui page after every reboot on my RT-AC86U running on Merlin 384.13.0 with FreshJR Adaptive QOS ?

After going back into Custom button and resetting my personal category preferences - Save - Apply - the settings stick until the next reboot.
Interestingly - RAM usage also drops just after resetting Custom priorities?

Any ideas on how to fix so settings remain through reboots as they always do on my other routers? [see signature].
 
My QOS category priority settings under Custom Settings revert to factory default on the main QOS webgui page after every reboot on my RT-AC86U running on Merlin 384.13.0 with FreshJR Adaptive QOS ?

After going back into Custom button and resetting my personal category preferences - Save - Apply - the settings stick until the next reboot.
Interestingly - RAM usage also drops just after resetting Custom priorities?

Any ideas on how to fix so settings remain through reboots as they always do on my other routers? [see signature].
Known issue......suppose to be fixed in next Asus Firmware update.
 
Known issue......suppose to be fixed in next Asus Firmware update.

Asus has just released Version 3.0.0.4.384.81049 a few days ago - and it makes no claim to have fixed Adaptive QOS bugs.
Version 3.0.0.4.384.45149 released on 2018/12/05 was the most recent time that Asus claims to have - Fixed “Adaptive QoS” bugs?

I am running MerlinWare 384.13.0 on my AC86U which, as I recall, is based on Stock Version 3.0.0.4.384.45717.

Has anyone found that Asus Stock Version 3.0.0.4.384.81049 has in fact fixed the QOS category settings retention problem on reboots?
 
Asus has just released Version 3.0.0.4.384.81049 a few days ago - and it makes no claim to have fixed Adaptive QOS bugs.
Version 3.0.0.4.384.45149 released on 2018/12/05 was the most recent time that Asus claims to have - Fixed “Adaptive QoS” bugs?

I am running MerlinWare 384.13.0 on my AC86U which, as I recall, is based on Stock Version 3.0.0.4.384.45717.

Has anyone found that Asus Stock Version 3.0.0.4.384.81049 has in fact fixed the QOS category settings retention problem on reboots?
Yes, I've tried the latest firmware. This QOS reboot issue is fixed.
 
Status
Not open for further replies.

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

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