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

New PPPoE backend, some feedback

Scheduled Pinned Locked Moved Development
181 Posts 15 Posters 13.0k 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.
  • S
    stephenw10 Netgate Administrator
    last edited by Apr 18, 2025, 4:34 PM

    Ah that's interesting!

    What did the per-core CPU usage look like when downloading at 3G over PPPoE? Though the speedtest itself will be using a lot.

    D 1 Reply Last reply Apr 18, 2025, 4:38 PM Reply Quote 0
    • D
      dsl.ottawa @stephenw10
      last edited by Apr 18, 2025, 4:38 PM

      @stephenw10 it's a pretty quick test so I'm not sure it's a good capture

      CPU 0: 11.8% user, 0.0% nice, 28.6% system, 0.0% interrupt, 59.6% idle
      CPU 1: 3.9% user, 0.0% nice, 6.3% system, 10.2% interrupt, 79.6% idle
      CPU 2: 12.2% user, 0.0% nice, 7.8% system, 7.1% interrupt, 72.9% idle
      CPU 3: 5.9% user, 0.0% nice, 6.3% system, 11.0% interrupt, 76.9% idle
      CPU 4: 10.6% user, 0.0% nice, 7.8% system, 8.2% interrupt, 73.3% idle
      CPU 5: 4.7% user, 0.0% nice, 8.6% system, 12.9% interrupt, 73.7% idle
      CPU 6: 5.1% user, 0.0% nice, 6.7% system, 17.3% interrupt, 71.0% idle
      CPU 7: 4.3% user, 0.0% nice, 7.1% system, 11.0% interrupt, 77.6% idle

      but it certainly looks clean

      1 Reply Last reply Reply Quote 1
      • W
        w0w @dsl.ottawa
        last edited by Apr 18, 2025, 4:44 PM

        @dsl-ottawa said in New PPPoE backend, some feedback:

        put PPPOE back, and ran the same tests.

        • download 3gig from pfsense using speedtest-cli
        • and normal 1.7-1.9 on my desktop

        Is there any chance that some old limiters, rules, traffic shaping, or other configurations are still active?
        If this is a clean install, I would suspect a bug in pfSense

        1 Reply Last reply Reply Quote 0
        • M
          mr_nets @w0w
          last edited by mr_nets Apr 19, 2025, 9:22 PM Apr 19, 2025, 9:20 PM

          I make a script to monitor the queues of the parent interface IX2 and all data goes through the queue 0 on the RX side.

          BTW my ISP use a VLAN (IX2 --> VLAN40 --> PPPoE) maybe it doesn't help to manage the queues correctly...

          In 24 Hours
          5a0e6b2d-e486-477e-a21d-885af26de75a-image.png

          W 1 Reply Last reply Apr 20, 2025, 5:46 AM Reply Quote 0
          • W
            w0w @mr_nets
            last edited by w0w Apr 20, 2025, 5:50 AM Apr 20, 2025, 5:46 AM

            @mr_nets
            There may be only one queue on the network card, but packets can be distributed across CPU cores. Previously, due to netgraph, everything was handled by a single core. The deferred option slightly improved this, but it was a limited improvement—overall, performance was bottlenecked by a single CPU core. At least that limitation no longer exists now.

            In theory, if the network queue never fills up, there shouldn't be any issues. I don't know what the theoretical maximum throughput of a PPPoE session is—maybe Netgate specialists have already tested this? I would expect something like 2.5–3.5 Gbps with multithreaded download.

            1 Reply Last reply Reply Quote 0
            • S
              stephenw10 Netgate Administrator
              last edited by Apr 20, 2025, 12:48 PM

              It still depends on the hardware but we were able to pass >8Gbps through a 6100 in raw testing: https://www.netgate.com/blog/optimizing-pppoe-performance-in-pfsense-software

              W 1 Reply Last reply Apr 20, 2025, 1:01 PM Reply Quote 1
              • W
                w0w @stephenw10
                last edited by Apr 20, 2025, 1:01 PM

                @stephenw10 said in New PPPoE backend, some feedback:

                It still depends on the hardware but we were able to pass >8Gbps through a 6100 in raw testing: https://www.netgate.com/blog/optimizing-pppoe-performance-in-pfsense-software

                Thanks, great read. Too bad I missed it, but I'm glad you brought it to me today. 🙂

                1 Reply Last reply Reply Quote 1
                • C
                  claudio69
                  last edited by Apr 21, 2025, 12:23 PM

                  I am testing pfSense 2.8 on my pppoe WAN setup that has been working for many years.
                  I noticed that the weekly periodic reset I set on the pppoe WAN is not automatically performed on the weekend.
                  If I try to change the setting manually the pppoe connection resets and reconnects but then it will no longer do so automatically

                  1 Reply Last reply Reply Quote 0
                  • S
                    stephenw10 Netgate Administrator
                    last edited by Apr 21, 2025, 12:58 PM

                    You're setting that in the PPP settings on the interface?

                    Interesting. That's an advanced setting that only applies to mpd5. It's hidden on the ppp interfaces page but looks like it's not hidden from the assigned interface and probably should be.

                    C 1 Reply Last reply Apr 21, 2025, 1:24 PM Reply Quote 0
                    • C
                      claudio69 @stephenw10
                      last edited by Apr 21, 2025, 1:24 PM

                      @stephenw10

                      I use this setting on a pppoe connection with variable ip.
                      I need it to avoid the connection being reset by the ISP since I do not have a fixed IP.
                      On pfSense from 2.5 to 2.7.2 it worked on all versions.Schermata del 2025-04-21 15-10-18.png

                      1 Reply Last reply Reply Quote 0
                      • S
                        stephenw10 Netgate Administrator
                        last edited by Apr 21, 2025, 1:42 PM

                        I assume you have enabled if_pppoe?

                        C 1 Reply Last reply Apr 21, 2025, 1:59 PM Reply Quote 0
                        • C
                          claudio69 @stephenw10
                          last edited by Apr 21, 2025, 1:59 PM

                          @stephenw10

                          Yes, I have enabled system/advanced /networking marked Use if_pppoe kernel module for PPPoE client.It seems like a bug in the new version 2.8

                          1 Reply Last reply Reply Quote 0
                          • S
                            stephenw10 Netgate Administrator
                            last edited by stephenw10 Apr 21, 2025, 2:49 PM Apr 21, 2025, 2:38 PM

                            Yes, there is a bug there. However currently the bug is that the mpd5 specific options are not hidden correctly. And that the cron-job is still set even thought the script it calls is not present when if_pppoe is enabled.

                            If you need this for now you should add your own cronjob. This should work: /etc/rc.interfaces_wan_configure opt2
                            Where opt2 is the pppoe interface internal name.

                            This should probably also be a feature request. Let me see here...

                            C 1 Reply Last reply Apr 21, 2025, 5:07 PM Reply Quote 0
                            • C
                              claudio69 @stephenw10
                              last edited by Apr 21, 2025, 5:07 PM

                              @stephenw10

                              The WAN interface is pppoe1 which is on igb1.
                              There is already a cron job with the script /var/etc/pppoe_restart_pppoe1.
                              If you can tell me if this is ok or if this script needs to be modified?

                              Schermata del 2025-04-21 19-03-04.png

                              1 Reply Last reply Reply Quote 0
                              • S
                                stephenw10 Netgate Administrator
                                last edited by Apr 21, 2025, 11:49 PM

                                That script is created to bring up mpd5 so it's not valid when using if_pppoe.

                                Here's a bug the covers the invalid options: https://redmine.pfsense.org/issues/16155

                                I'll open a feature request to add back the periodic reset for if_pppoe.

                                C 1 Reply Last reply Apr 23, 2025, 4:27 PM Reply Quote 1
                                • C
                                  claudio69 @stephenw10
                                  last edited by Apr 23, 2025, 4:27 PM

                                  @stephenw10

                                  Thanks for reporting.
                                  I hope this feature will be included in pfSense 2.8.

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    stephenw10 Netgate Administrator
                                    last edited by stephenw10 Apr 23, 2025, 4:41 PM Apr 23, 2025, 4:41 PM

                                    It probably won't be in 2.8 but it's a pretty simple feature. I'd expect it could be added via system patches after release.

                                    Or you can still just add the cronjob manually.

                                    https://redmine.pfsense.org/issues/16159

                                    C 1 Reply Last reply Apr 23, 2025, 4:53 PM Reply Quote 0
                                    • C
                                      claudio69 @stephenw10
                                      last edited by Apr 23, 2025, 4:53 PM

                                      @stephenw10

                                      The thing is I don't know how to manually make the script to put in cron.
                                      If you can kindly give me a working example that would be great and would solve the problem permanently.
                                      Thanks

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        stephenw10 Netgate Administrator
                                        last edited by Apr 23, 2025, 5:11 PM

                                        Edit the cronjob and change the command to: /etc/rc.interfaces_wan_configure opt2

                                        Where opt2 is the internal interface name for your pppoe interface. If that's actually WAN then use wan.

                                        W C 2 Replies Last reply Apr 23, 2025, 5:49 PM Reply Quote 1
                                        • W
                                          w0w @stephenw10
                                          last edited by Apr 23, 2025, 5:49 PM

                                          @stephenw10 said in New PPPoE backend, some feedback:

                                          /etc/rc.interfaces_wan_configure

                                          I'll ask something else while we're at it...

                                          Regarding manually starting and stopping the WAN interface, which is PPPoE — what's the proper way to do it? Especially with the new backend...

                                          /etc/rc.linkup stop wan
                                          /etc/rc.linkup start wan

                                          Or is there something newer now?

                                          1 Reply Last reply Reply Quote 0
                                          51 out of 181
                                          • First post
                                            51/181
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received