Traffic Shaper w Codel not doing a thing in 2.5
-
So following some posts i wanted to fix my bufferbloat issues. I went in and created WANUp and WANDown limiters with WANupQ and WANDownQ's. I set my bandwidth appropriately and set to codel and fqcodel, tried q length of 1000-5000. Created my floating firewall rule: Pass, Quick checked, WAN Interface, direction out, ipv4, any, any, any, GW=wan_DHCP, , IN/Out=wanupq/wandownq. This used to work and now seems to do absolutely nothing. To test i set my bandwidth to 10mbit down and 1mbit up, i have a 1gbit down and 50mbit up on cable line. did a bufferbloat test on speedtest.net with a new browser window and nothing changed. I feel like its acting as if the rule wasn't even there or its disabled, but the firewall rule is the only floating rule ive got.
Anyone got any suggestions, or have seen this before?
-
I use a Flating Roul for Codel, works fine, try that.
You have to clear all States or Reboot the Sense, after creating the Rule.
After that, go to "Diagnostics / Limiter Info" and look if it works.
-
I've never gotten fq_codel working. I've followed both the Netgate and Lawrence Systems videos exactly multiple times but I always end up with a WAN upload of 1Mbit on a 15Mbit uplink. I've been using PRIQ for years without any weird issues like that
-
@nocling All ive got is the following in limiter info:
Limiters:
00001: 10.000 Mbit/s 0 ms burst 0
q131073 1000 sl. 0 flows (1 buckets) sched 65537 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECN
sched 65537 type FIFO flags 0x0 0 buckets 0 active
00002: 1.000 Mbit/s 0 ms burst 0
q131074 1000 sl. 0 flows (1 buckets) sched 65538 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECN
sched 65538 type FIFO flags 0x0 0 buckets 0 activeSchedulers:
00001: 10.000 Mbit/s 0 ms burst 0
q00001 50 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECN
sched 1 type FQ_CODEL flags 0x0 0 buckets 0 active
FQ_CODEL target 5ms interval 100ms quantum 1514 limit 10240 flows 1024 ECN
Children flowsets: 1
00002: 1.000 Mbit/s 0 ms burst 0
q00002 50 sl. 0 flows (1 buckets) sched 2 weight 1 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECN
sched 2 type FQ_CODEL flags 0x0 0 buckets 0 active
FQ_CODEL target 5ms interval 100ms quantum 1514 limit 10240 flows 1024 ECN
Children flowsets: 2Queues:
q00001 50 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECN
q00002 50 sl. 0 flows (1 buckets) sched 2 weight 1 lmax 0 pri 0 AQM CoDel target 5ms interval 100ms ECNIf by clearing states you mean to clear browser cache and or go into incognito mode to get a fresh session and try again, i have done that and to no affect. I have not tried rebooting PFSense but i wouldn't think that should be required each time you make a change to a floating firewall rule.
Ive also folowed netgate and Lawrence systems and its not like theres much to it but it just doesnt seemt to have any affect, be it i put my bandwidth at 1mbit or 100mbit
-
@ryk48 clearing states means
Diagnostics -> States -> Reset states
then you click on
π Log in to view
and Reset button to proceed. -
@tomashk just did that, no change to my bandwidth or bufferbloat
-
@ryk48 so I see 2 possible changes:
- if you set 1Mbps, 5ms target won't work - I wrote about it here. For 1Mbps target should be 15ms. You can google for text I quote there and maybe you would be able to find more about and how to calculate it. Basically 5ms target is OK from a few Mbps up. Below it should be bigger value.
- I have read it in multiple places that "Queue Management Algorithm" should be "Tail drop" (for both limiters and queues). CoDel won't give anything there - I believe person responsible for fq_codel implementation in FreeBSD mentioned it (somebody correct me if I'm wrong). Of course scheduler is fq_codel
-
@tomashk my actual bandwidth coming in is 1gbps down and 50mbps up cable modem docsis 3.1 but for testing i put the codel limiter at 10mbps down and 1mbps up to see if it would actually do anything and of course it did not, even after resetting the firewall state.
What Tail Drop settings should I be using?
-
Why you don't set up your real connection speed and look how well it will work?
-
@nocling i did that originally and it didnt seem to do anything so i thought well ill just put the speeds way off and for sure if its doing something ill notice, nope, didnt make any difference which tells me its not doing a darn thing.
-
I use 1000/50 Cabel to and Codel works very nice.
If i run a NAS VPN Backup with full Upload, i don't recognize this.
No Bufferbload here.To set the limiter speed, I use exactly the bandwidths from the provisioning file.
-
@nocling ive used a range of bandwidth settings and queue length settings and none of them made a lick of difference, sometimes i felt like one of the settings had made a difference but when i tested again later nope, still buffer bloat issues. Which is why i thought i would wildly play with the bandwidth parameters to see if anything would make any changes and so far none seem to so i am at a loss as to why it doesnt work, what all do i need to check?
-
I use this Settings and it just works.
<queue> <name>WAN-Down</name> <number>1</number> <qlimit>10000</qlimit> <plr></plr> <description><![CDATA[WAN-Down]]></description> <bandwidth> <item> <bw>1095680</bw> <burst></burst> <bwscale>Kb</bwscale> <bwsched>none</bwsched> </item> </bandwidth> <enabled>on</enabled> <buckets></buckets> <mask>none</mask> <maskbits></maskbits> <maskbitsv6></maskbitsv6> <delay>0</delay> <sched>fq_codel</sched> <param_fq_codel_target>5</param_fq_codel_target> <param_fq_codel_interval>100</param_fq_codel_interval> <param_fq_codel_quantum>1514</param_fq_codel_quantum> <param_fq_codel_limit>10240</param_fq_codel_limit> <param_fq_codel_flows>1024</param_fq_codel_flows> <aqm>codel</aqm> <param_codel_target>5</param_codel_target> <param_codel_interval>100</param_codel_interval> <ecn>on</ecn> <queue> <name>WAN-DownQ</name> <number>1</number> <qlimit></qlimit> <description><![CDATA[WAN-DownQ]]></description> <weight></weight> <enabled>on</enabled> <buckets></buckets> <mask>none</mask> <maskbits></maskbits> <maskbitsv6></maskbitsv6> <aqm>codel</aqm> <param_codel_target>5</param_codel_target> <param_codel_interval>100</param_codel_interval> <ecn>on</ecn> </queue> </queue> <queue> <name>WAN-Up</name> <number>2</number> <qlimit>500</qlimit> <plr></plr> <description></description> <bandwidth> <item> <bw>54784</bw> <burst></burst> <bwscale>Kb</bwscale> <bwsched>none</bwsched> </item> </bandwidth> <enabled>on</enabled> <buckets></buckets> <mask>none</mask> <maskbits></maskbits> <maskbitsv6></maskbitsv6> <delay>0</delay> <sched>fq_codel</sched> <param_fq_codel_target>5</param_fq_codel_target> <param_fq_codel_interval>100</param_fq_codel_interval> <param_fq_codel_quantum>1514</param_fq_codel_quantum> <param_fq_codel_limit>10240</param_fq_codel_limit> <param_fq_codel_flows>1024</param_fq_codel_flows> <aqm>codel</aqm> <param_codel_target>5</param_codel_target> <param_codel_interval>100</param_codel_interval> <ecn>on</ecn> <queue> <name>WAN-UpQ</name> <number>2</number> <qlimit></qlimit> <description><![CDATA[WAN-UpQ]]></description> <weight></weight> <enabled>on</enabled> <buckets></buckets> <mask>none</mask> <maskbits></maskbits> <maskbitsv6></maskbitsv6> <aqm>codel</aqm> <param_codel_target>5</param_codel_target> <param_codel_interval>100</param_codel_interval> <ecn>on</ecn> </queue> </queue> </dnshaper>
-
@nocling Looks like that is what i am using as well. Is there something i am missing in my screenshots?
π Log in to view
π Log in to view
π Log in to view
π Log in to view
π Log in to view
π Log in to view
π Log in to view
π Log in to view
π Log in to view -
Strange, i try the 10/1 MBit Settings and it works as expected.
Ping, Down, UP
π Log in to viewBut now i use 21.05. with so many fixed bugs. The CE will follow shortly. But try a Beta version in productiv is a risk, you have to balance.
If the limititer is important, you can give it a try. -
@nocling yeah thatβs why I found it strange no matter what setting i changed it didnβt seem to have any affect.
I wonder if it has anything to do or doesnβt work well with HA being setup because I have two pfsense boxes running in case one goes down the other picks up. They are vms on different PCs.
-
@ryk48 Iβm running 2.5.1
-
For Q management use "Tail Drop" instead, as "Codel" has some bugs on it. The result is pretty much the same.
For scheduler use "FQ-Codel"
-
@magikmark would i set this for both the limiter and its queue? When i set the queue to taildrop it doesn't like that ECN is enabled.
-
@ryk48 assuming what i said was correct, i made those changes and did a dslreports test and once again made zero difference, like it might as well have never been enabled. With my bandwidth set so low i would have expected to see a significant drop in bandwidth when i ran the test, that way id know its actually doing something and I can set the bandwidth back to something more appropriate but no change.