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

Traffic shaper changes [90% completed, please send money to complete bounty]

Completed Bounties
72
375
462.1k
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.
  • B
    billm
    last edited by Feb 2, 2008, 12:58 AM Nov 9, 2006, 3:55 AM

    This is a continuation of http://forum.pfsense.org/index.php/topic,2686.0.html

    The following are proposed changes to the existing pfSense traffic shaper based on community interest, feasibility, and pledged dollars.  The list is somewhat out of order of proposals due to references made in the list to other items.

    • Multi-interface: Allow the shaper to work with multiple LAN (LAN, OPT1, OPTx) interfaces and a single WAN connection.

    • Bridges:  Make the shaper code work with bridging - I'm sure I can do this for two interfaces, I'm not sure I can make this work in combination with multi-interface shaping or with more than two bridge interfaces.

    • Multi-WAN shaping: under consideration - I need to give this more thought, I'm not sure if it's feasible w/in the scope of our UI (or with how we have to get traffic into queues).

    • Wizard updates to make the above changes easy to configure.

    • UI updates to make the shaper settings easier (easier, not necessarily easy) to modify

    I fully expect that we'll be able to get these changes in the next feature release, however there is no chance that they'll get into anything with a 1.0.x version and I think we're targetting 1.1 for a FreeBSD OS update.  This caveat is just to help set expectations so when we release a 1.0.2 or 1.1 nobody asks whether these changes made it in.

    I'd like to ask that those that pledged in the other thread (that I'll merge into this one) please reply with an update on whether the proposal meets their expectations and an updated pledge which I'll add to the above list.

    There is no "price tag" for this feature enhancement, nor is there a time frame other than what I mentioned above (it'd still have to be debugged and thoroughly tested even if I wrote the code in a day).  The $10k pledge drive that was initiated was to drive interest, not as a price tag.  All I ask is for those that are interested to put their $$$ where their mouths are and help get this going.  I've put up with a lot of crap over the existing code and am kind of tired of people bitching about it; if people want it to work better, I need to see it.  Some people have certainly showed interest, with the amount of people that have downloaded and are using pfSense, I'm hoping others will help the cause here and won't leave this up to the half dozen that have already showed their interest.

    Bounties pledged to date:

    • $50 - pfSense

    • $100 - sai

    • $200 - wcoolnet

    • $500 - mrt_ok (received in paypal account)

    • $100 - Delphinus

    Total pledged: $950

    Remember, pledging is only part of the equation, we don't want to be told we're going to get X amount of dollars and not get it after all the work is done.  I request that at least 50% of each pledge be escrowed in the pfSense account (you'll have to trust that I don't have access to it and that Scott isn't going to go and get really really drunk with it).  Thanks

    Update - 11/22/2006 - I've been working on the pf.conf side of this change a bit and think I've made some progress.  I should begin coding these changes shortly as it's getting quite painful to make any further progress by hand.  As soon as I have something that can be tested, I'll contact those that have made pledges on this bounty to allow them to test.

    –Bill

    pfSense core developer
    blog - http://www.ucsecurity.com/
    twitter - billmarquette

    1 Reply Last reply Reply Quote 0
    • S
      sai
      last edited by Nov 9, 2006, 12:36 PM

      $100.

      Multi-wan is interesting, but what do you mean by that? If you mean 1 shaper with multiple WANs then I dont remember seeing it in any of the HFSC docs (not that I studied too hard). It would probably be very difficult to visualise and use  - most unlikely anyone would want it.
      If you mean a separate shaper for each WAN then that makes more sense. Should be possible to fit it into the gui without complications.

      Time line: are we talking 6 months, 1 year (+/- x months)?  I know that this is open source so no release dates set in advance, but some sort of ETA ?

      1 Reply Last reply Reply Quote 0
      • B
        billm
        last edited by Nov 9, 2006, 2:10 PM

        @sai:

        $100.

        Multi-wan is interesting, but what do you mean by that? If you mean 1 shaper with multiple WANs then I dont remember seeing it in any of the HFSC docs (not that I studied too hard). It would probably be very difficult to visualise and use  - most unlikely anyone would want it.
        If you mean a separate shaper for each WAN then that makes more sense. Should be possible to fit it into the gui without complications.

        Yep, multiple WANs.  It's all about queue definition and how traffic get's assigned to the queue.  I'm not 100% sure I can make it work in our case.  Policy based multi-wan routing would likely be possible, but based on how we assign traffic to queues (which won't be changing…it's the only way we can do it without major pf hacks) it's likely that load balanced WANs won't be able to shape.  There are some other items I have in the works as I get to them (kernel side is done...I think) that will allow for layer7 requeueing of traffic (ie. traffic starts off in the default queue or something and get's moved to HTTP once it recognizes HTTP in the packet payload).  I'm not including that as part of this bounty/feature enhancement.

        @sai:

        Time line: are we talking 6 months, 1 year (+/- x months)?  I know that this is open source so no release dates set in advance, but some sort of ETA ?

        We're planning on starting work on RELENG_2 shortly and I'm (personally) hopeful that we'll be able to push a 6 month release cycle out (but depending on bugs in new features, that might stretch).  With that said, you'll be able to see the new code in the alpha releases as soon as it's commited.  I don't expect that it'll take me more than a week or two to get the new shaper code to a point where I can commit it and get people pounding on it.

        –Bill

        pfSense core developer
        blog - http://www.ucsecurity.com/
        twitter - billmarquette

        1 Reply Last reply Reply Quote 0
        • W
          wcoolnet
          last edited by Nov 9, 2006, 5:18 PM

          $200

          1 Reply Last reply Reply Quote 0
          • M
            mrt_ok
            last edited by Nov 9, 2006, 7:42 PM

            $500

            1 Reply Last reply Reply Quote 0
            • A
              aldo
              last edited by Nov 9, 2006, 9:42 PM

              bill the changes you are proposing sound very interesting. if interfaces could be extended to support all the ng interfaces loaded on the pppoe server we have another 200 for your bounty.

              it can nearly do it now. with a bit of a hack to it but gets it's white spacings wrong.

              would you think this is supportable in the multiple interfaces area of your plan

              1 Reply Last reply Reply Quote 0
              • B
                billm
                last edited by Nov 9, 2006, 11:02 PM

                @aldo:

                bill the changes you are proposing sound very interesting. if interfaces could be extended to support all the ng interfaces loaded on the pppoe server we have another 200 for your bounty.

                it can nearly do it now. with a bit of a hack to it but gets it's white spacings wrong.

                would you think this is supportable in the multiple interfaces area of your plan

                I think so - do PPPOE server interfaces show up as individual interfaces in the Rules (or even interfaces) screen?  I'm thinking it doesn't, but I haven't really seen how the PPPoE server works either.  I'll try and spend some time tonight, I agree, it's likely possible, but I don't know enough about how that section of code works to be able to say for sure.  If it comes up as individual interfaces that rules can be created on, then I'm reasonably confident that it'll "just work".

                –Bill

                pfSense core developer
                blog - http://www.ucsecurity.com/
                twitter - billmarquette

                1 Reply Last reply Reply Quote 0
                • S
                  sullrich
                  last edited by Nov 9, 2006, 11:06 PM

                  Only major problem is ngX is dynamic.  The ordering may shift.

                  1 Reply Last reply Reply Quote 0
                  • B
                    billm
                    last edited by Nov 9, 2006, 11:41 PM

                    @sullrich:

                    Only major problem is ngX is dynamic.  The ordering may shift.

                    Good point.  Although I don't think ngX necessarily has to be dynamic.  But making major interface changes, while on my own personal list of things to do, aren't necessarily compatible within the scope of this change.  If these are truly dynamic and not tied to the standard rules editor, then I don't think we'll be able to make it part of this change.  Although this change should set the stage for this feature in the future.

                    –Bill

                    pfSense core developer
                    blog - http://www.ucsecurity.com/
                    twitter - billmarquette

                    1 Reply Last reply Reply Quote 0
                    • S
                      sullrich
                      last edited by Nov 10, 2006, 2:20 AM

                      Nope, its not associated unfortunately.

                      1 Reply Last reply Reply Quote 0
                      • A
                        aldo
                        last edited by Nov 10, 2006, 8:35 AM

                        ok that was confusing could you clarify these points.
                        is it possible?
                        would you include it?
                        all i am trying to do is hfsc with them no other gaurentees all have equal preferance.

                        well look forward to the clarification

                        1 Reply Last reply Reply Quote 0
                        • B
                          billm
                          last edited by Nov 10, 2006, 2:49 PM

                          @aldo:

                          ok that was confusing could you clarify these points.
                          is it possible?

                          Possible, yes.  With the current way interfaces are configured, no.  The shaper changes I'm working on won't directly help here, but would be considered a prereq to being able to do this.

                          @aldo:

                          would you include it?

                          One thing at a time :)  If PPPoE server 'nics' (all the ng interfaces) were already individually assignable for rule management in pfSense, you'd get the shaper changes "for free" so to speak.  The changes I'm looking at would just come along for the ride.  As it sits, I'd consider this a different project, but one that relies on this change before it can be seriously thought of.  Depending on how the code ends up getting written, it may be possible to hack up a config.xml that'll create the correct rules - not sure, I'm still researching the proper way to do the queues as it is (it's looking like we'll have a number of nasty recursive loops).

                          @aldo:

                          all i am trying to do is hfsc with them no other gaurentees all have equal preferance.

                          well look forward to the clarification

                          Hope that helps.

                          –Bill

                          pfSense core developer
                          blog - http://www.ucsecurity.com/
                          twitter - billmarquette

                          1 Reply Last reply Reply Quote 0
                          • S
                            sullrich
                            last edited by Nov 14, 2006, 5:24 PM

                            Not sure that we can accept Pakistan funds without Big Bubba getting down and angry with us.

                            1 Reply Last reply Reply Quote 0
                            • E
                              eric
                              last edited by Nov 15, 2006, 7:14 AM

                              i too would be willing to throw some money your way for this, however seeing as I'm pretty close to broke it wouldn't be much.

                              1 Reply Last reply Reply Quote 0
                              • D
                                Delphinus
                                last edited by Nov 17, 2006, 11:25 PM

                                I'll donate $100. Let me know when you need it.

                                1 Reply Last reply Reply Quote 0
                                • M
                                  msamblanet
                                  last edited by Nov 20, 2006, 12:48 PM

                                  Just sent in $100 to Paypal…while I would like you to consider it part of this bounty, please use it as/when the project needs...you've earned it with or without a multi-interface traffic shaper!

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    Perry
                                    last edited by Dec 2, 2006, 6:32 PM

                                    Bill what paypal account do i send my donation to?

                                    /Perry
                                    doc.pfsense.org

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      aldo
                                      last edited by Dec 2, 2006, 6:56 PM

                                      @billm:

                                      @aldo:

                                      ok that was confusing could you clarify these points.
                                      is it possible?

                                      Possible, yes.  With the current way interfaces are configured, no.  The shaper changes I'm working on won't directly help here, but would be considered a prereq to being able to do this.

                                      @aldo:

                                      would you include it?

                                      OK i think i understand what are the overall thoughts on this. should i start up a bounty on it.
                                      we use pppoe server for all our wireless concentration. if this change looks achievable outside of the shaper scope i will make a bounty for it.

                                      maybe you or scott can clarify the scope of the change a little more clearly and i can brief it

                                      One thing at a time :)  If PPPoE server 'nics' (all the ng interfaces) were already individually assignable for rule management in pfSense, you'd get the shaper changes "for free" so to speak.  The changes I'm looking at would just come along for the ride.  As it sits, I'd consider this a different project, but one that relies on this change before it can be seriously thought of.  Depending on how the code ends up getting written, it may be possible to hack up a config.xml that'll create the correct rules - not sure, I'm still researching the proper way to do the queues as it is (it's looking like we'll have a number of nasty recursive loops).

                                      @aldo:

                                      all i am trying to do is hfsc with them no other gaurentees all have equal preferance.

                                      well look forward to the clarification

                                      Hope that helps.

                                      –Bill

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        billm
                                        last edited by Dec 4, 2006, 1:07 AM

                                        @Perry:

                                        Bill what paypal account do i send my donation to?

                                        paypal at chrisbuechler.com if you want pfSense to hold onto it until I'm done, or billm at pfsense.org if you wish to send it direct to me sooner.

                                        –Bill

                                        pfSense core developer
                                        blog - http://www.ucsecurity.com/
                                        twitter - billmarquette

                                        1 Reply Last reply Reply Quote 0
                                        • B
                                          billm
                                          last edited by Dec 4, 2006, 1:09 AM

                                          Aldo, didn't see any content in that post…did I miss something?

                                          --Bill

                                          @aldo:

                                          @billm:

                                          @aldo:

                                          ok that was confusing could you clarify these points.
                                          is it possible?

                                          Possible, yes.  With the current way interfaces are configured, no.  The shaper changes I'm working on won't directly help here, but would be considered a prereq to being able to do this.

                                          @aldo:

                                          would you include it?

                                          OK i think i understand what are the overall thoughts on this. should i start up a bounty on it.
                                          we use pppoe server for all our wireless concentration. if this change looks achievable outside of the shaper scope i will make a bounty for it.

                                          maybe you or scott can clarify the scope of the change a little more clearly and i can brief it

                                          One thing at a time :)  If PPPoE server 'nics' (all the ng interfaces) were already individually assignable for rule management in pfSense, you'd get the shaper changes "for free" so to speak.  The changes I'm looking at would just come along for the ride.  As it sits, I'd consider this a different project, but one that relies on this change before it can be seriously thought of.  Depending on how the code ends up getting written, it may be possible to hack up a config.xml that'll create the correct rules - not sure, I'm still researching the proper way to do the queues as it is (it's looking like we'll have a number of nasty recursive loops).

                                          @aldo:

                                          all i am trying to do is hfsc with them no other gaurentees all have equal preferance.

                                          well look forward to the clarification

                                          Hope that helps.

                                          –Bill

                                          pfSense core developer
                                          blog - http://www.ucsecurity.com/
                                          twitter - billmarquette

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