CoDel - How to use
-
Nullify wrote:
"About your poor experience; CoDel or not, you should see latency improvement if you configured your pfSense gateway as the slowest hop in your route. Transferring egress queueing from your modem to pfSense and your ingress queueing from your ISP to pfSense, should always see some sort of improvement, unless you are lucky enough to have a great ISP."
Could you please describe how to do that "for the complete idiot?" Thanks.
I tested the changes with the new speed test over at DSL Reports (which has a buffer bloat meter–don't know exactly how it works).
-
Just make sure that your pfSense router is the slowest part of your upload and download traffic.
-
I love that new speed test. Should I have not been seeding 30Mb/s while running this test? lololol
-
Nullify wrote:
"Just make sure that your pfSense router is the slowest part of your upload and download traffic."
So, in order to do that, should I use the traffic shaping wizard (where CoDel is not an option) to set my bandwidth (and leave all other settings on default, since I don't need to prioritize traffic), or should I use the CODELQ option under "By Interface?"
Someone really should write the book, pfSense for Dummies.
-
You shouldn't even need to use the wizard. Just click on your WAN interface, set your bandwidth, and set it to codel.
Another thing you could try is to set your interface to fairq, create a child queue, set as the default, then configure that queue to be codel.
-
First run some download/upload tests to get a baseline. Subtract about 5-10%, and use thagt as your bandwidth for your manually setup WAN and LAN queues using CODELQ.
Run down/upload test to confirm that you are seeing queues registering some packets.
I was a pfSense/networking noob a few months ago. This forum, the official book, the official wiki, and the interweb in general has about a decade of pfSense knowledge just waiting to be read. :)
-
Thanks all, but as my upload speed seems to vary quite a bit, no changes I make to traffic shaping seem to have much of an effect. I'll likely have to wait for a faster internet connection before I am able to put these tools to good use–I might have to wait quite a long time, given my ISP's disinterest in improving its service.
-
Set your upload speed 80% of your "normal" max speed. It will help more than not doing anything.
-
Nullify wrote:
"Just make sure that your pfSense router is the slowest part of your upload and download traffic."
So, in order to do that, should I use the traffic shaping wizard (where CoDel is not an option) to set my bandwidth (and leave all other settings on default, since I don't need to prioritize traffic), or should I use the CODELQ option under "By Interface?"
Someone really should write the book, pfSense for Dummies.
+1 for pfSense for Dummies.
Sometimes you just want a clear and concise example and not to spend hours, days or even weeks combing the forum for that needle in a haystack answer.
-
Just wait 2-3 days. The same questions get asked over and over.
-
O.K., I set my WAN to use CODELQ with an upload speed of 800 kb/s. I, however, still get a "D" in relation to buffer bloat on the DSL Reports speed test. :P Do I need to reboot pfSense for the traffic shaping to take effect (it does not say so)?
-
Can you show us your config? I assume you have something simple. Maybe just a screenshot of your WAN interface under Traffic Shaping would be good.
I assume you have slightly more than 800Kb/s of upload bandwidth?
-
As per your request:
-
You need to check "Enable/Disable Discipline and its children".
-
Yes, of course, my oversight, thanks. Now I get a "C" in relation to buffer bloat on the DSL Reports speed test. It appears that download has the most effect on the score.
-
Do the same thing for your LAN interface, except your LAN bandwidth will be whatever your download speed is.
-
I was wondering if it could be possible for someone to create two new versions of codel in PFSense, one for low bandwidth connections and one for high bandwidth.
Codel has two parameters. something like a target latency and an interval, which for normal codel is something like 5ms and 100ms. They recommend 0.5ms and 50ms for 40Gb NICs. We may want a less aggressive one for low bandwidth connections, like 1Mb, so maybe 30ms and 150ms. I have no idea what number, just something less aggressive than 5ms on a 1Mb link trying to push a 1500byte packet.
-
In theory, the only thing that needs to get changes are those two numbers.
-
"Do the same thing for your LAN interface, except your LAN bandwidth will be whatever your download speed is."
Done, thanks, now my score is a "B."
-
You could try switching to fairq instead of codel and see how your milage goes.