Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Playing with fq_codel in 2.4

    Scheduled Pinned Locked Moved Traffic Shaping
    1.1k Posts 123 Posters 1.6m Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • w0wW
      w0w
      last edited by

      Just for testing purpose, try to change bw limiting to delay limiting :

      pipe 1 config delay 0ms
      

      for both pipes

      1 Reply Last reply Reply Quote 0
      • H
        HeatmiserNYC
        last edited by

        Sorry gone for a few days, vacation.

        I gave that a shot by changing the /tmp file, it doesn't seem to have an affect. I am only changing the /tmp file, maybe it needs to be rebooted and hardcoded into the file? The only reason I haven't done this is because I haven't seen the results everybody is reporting…

        1 Reply Last reply Reply Quote 0
        • w0wW
          w0w
          last edited by

          Yes it's need to be rebooted or reloaded with```
          /etc/rc.reload_all

          After you did that run the following command```
          ipfw sched show
          ```and you should see something like```
          00001: unlimited         0 ms burst 0
          ```for the both pipes you have.
          1 Reply Last reply Reply Quote 0
          • H
            HeatmiserNYC
            last edited by

            @w0w:

            Yes it's need to be rebooted or reloaded with```
            /etc/rc.reload_all

            After you did that run the following command```
            ipfw sched show
            ```and you should see something like```
            00001: unlimited         0 ms burst 0
            ```for the both pipes you have.
            

            Yes, all relatively simple and you've been great at walking through the steps you put in place.

            I'm getting this for both pipes.

            00003: unlimited        0 ms burst 0

            00004: unlimited        0 ms burst 0

            Yet I can't get better than a B rating for bufferbloat, which is the same if I literally do nothing at all….

            1 Reply Last reply Reply Quote 0
            • w0wW
              w0w
              last edited by

              But what about VPN bandwidth? Are you still getting 120Mbps?

              1 Reply Last reply Reply Quote 0
              • H
                HeatmiserNYC
                last edited by

                That part HAS improved, looks like it does get about 145-ish or so which is about right. It just does nothing for bufferbloat.

                1 Reply Last reply Reply Quote 0
                • w0wW
                  w0w
                  last edited by

                  Can you post the full output of```
                  ipfw sched show

                  1 Reply Last reply Reply Quote 0
                  • M
                    moscato359
                    last edited by

                    I'd like to look at implementing this, but I was wondering

                    Anyone know the status of pfsync + limiters?

                    1 Reply Last reply Reply Quote 0
                    • w0wW
                      w0w
                      last edited by

                      @moscato359:

                      I'd like to look at implementing this, but I was wondering

                      Anyone know the status of pfsync + limiters?

                      What was the last status you know?  :D

                      1 Reply Last reply Reply Quote 0
                      • M
                        moscato359
                        last edited by

                        The last status I know is that the pfsense book says not to use pfsync and limiters together, but doesn't explain why

                        1 Reply Last reply Reply Quote 0
                        • w0wW
                          w0w
                          last edited by

                          @moscato359:

                          The last status I know is that the pfsense book says not to use pfsync and limiters together, but doesn't explain why

                          This is actual. https://redmine.pfsense.org/issues/4310 have 0% progress.

                          1 Reply Last reply Reply Quote 0
                          • M
                            moscato359
                            last edited by

                            @w0w:

                            @moscato359:

                            The last status I know is that the pfsense book says not to use pfsync and limiters together, but doesn't explain why

                            This is actual. https://redmine.pfsense.org/issues/4310 have 0% progress.

                            D=

                            1 Reply Last reply Reply Quote 0
                            • M
                              moscato359
                              last edited by

                              Is there any chance fq_codel will make it into the 2.4 GUI in limiters?

                              1 Reply Last reply Reply Quote 0
                              • w0wW
                                w0w
                                last edited by

                                Definitely not!
                                They are keeping eyes on it, but currently no plans, no moves, AFAIK.

                                1 Reply Last reply Reply Quote 0
                                • S
                                  sofakng
                                  last edited by

                                  Darn.  I'm thinking about switching back to pfSense but I really want fq_codel.

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Harvy66
                                    last edited by

                                    fq_codel, the ZFS of AQMs, or nearly. Cake aims to be the "ZFS", but close enough.

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      superbree
                                      last edited by

                                      Is the command of "ipfw sched 1 config pipe 1 type fq_codel && ipfw sched 2 config pipe 2 type fq_codel" the same if I only have 2 root limiters?  Both of them are root limiters one has a mask of source and the other has a mask of destination.

                                      I would like to try this out but wondering if the command is different for just root limiters without "child" queues.  Obviously I am highly dependent on the gui I am a bit confused with the ipfw command since it references both sched and pipe.

                                      Thanks for any reply!

                                      1 Reply Last reply Reply Quote 0
                                      • w0wW
                                        w0w
                                        last edited by

                                        TS sample is for the root limiters also, if you have  some troubles understanding, post the content of your /tmp/rules.limiter

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          superbree
                                          last edited by

                                          here is the content of my /tmp/rules.limiter

                                          pipe 1 config  bw 100Mb mask dst-ip6 /128 dst-ip 0xffffffff

                                          pipe 2 config  bw 10Mb mask src-ip6 /128 src-ip 0xffffffff

                                          I need help with the ipfw command to enable fq_codel on pipes 1 and 2 because i don't have any child queues.

                                          thanks in advance

                                          1 Reply Last reply Reply Quote 0
                                          • w0wW
                                            w0w
                                            last edited by

                                            According to documentation posted in this thread you need to configure sheduler at least to make things work.

                                            
                                            pipe 1 config bw 100Mb mask dst-ip6 /128 dst-ip 0xffffffff
                                            sched 1 config pipe 1 type fq_codel 
                                            
                                            pipe 2 config bw 10Mb mask src-ip6 /128 src-ip 0xffffffff
                                            sched 2 config pipe 2 type fq_codel
                                            
                                            

                                            EDIT:
                                            Tested, it will not work. You need to configure child queues and use them in ruleset, exactly as described by TS. Default automatically created pipe queue always uses FIFO sheduler and I am not sure it is possible to change this.

                                            So after changes made in GUI also, you must edit and create your own rules.limiter that should look like this.

                                            
                                            pipe 1 config bw 100Mb 
                                            sched 1 config pipe 1 type fq_codel
                                            queue 1 config pipe 1 mask dst-ip6 /128 dst-ip 0xffffffff
                                            
                                            pipe 2 config bw 10Mb mask 
                                            sched 2 config pipe 2 type fq_codel
                                            queue 2 config pipe 2 mask src-ip6 /128 src-ip 0xffffffff
                                            
                                            

                                            So the right answer is no you can not shape with fq_codel using only root limiters.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.