Published: in Videos
Testing pfSense Plus new PPPoE Driver: if_pppoe vs MPD
With the release of pfSense Plus 25.07, Netgate introduced a new kernel-level PPPoE backend (if_pppoe) designed to modernise and eventually replace the long-standing MPD-based PPPoE implementation inherited from FreeBSD.
The goal of this change is to improve performance, reduce CPU overhead, and provide a cleaner, more maintainable code path for PPPoE connections, particularly on high-speed links where the existing user-space MPD process can become a bottleneck.
Curious to see how it performs in practice, I ran a few simple, real-world tests using pfSense Plus 25.07, comparing the legacy MPD PPPoE implementation with the new if_pppoe driver.
Test setup
These were simple, practical tests, not lab conditions, just everyday workloads, with identical hardware, configuration, and broadband line for both drivers.
It’s worth noting up front:
My PPPoE connection is limited to 1 GbE.
This is important context because any improvements designed for multi-gigabit PPPoE won’t necessarily show up on a 1 GbE line. The purpose here was to compare CPU load and general behaviour, not to stress-test extreme throughput.
The three scenarios tested were:
-
Fast.com speed test to gauge general browsing/download performance.
-
Large file download (FreeBSD ISO) to measure sustained transfer and CPU load over time.
-
VPN file transfer to see how PPPoE behaves when combined with encryption overhead.
Throughout each test, CPU usage and throughput were monitored directly (as shown in the video).
Results
The tests were deliberately simple, nothing synthetic or lab-grade; just a side-by-side look at how each implementation behaves under typical conditions.
The outcome? In these scenarios, there was no significant difference in throughput or CPU usage between the two drivers. Both handled the connection reliably, and any variance fell well within the normal margin for network testing.
That doesn’t mean the new driver offers no benefits, it’s an early implementation, and its main advantages may become clearer over time as Netgate and the FreeBSD community continue to optimise it. For now, administrators can expect comparable performance with the option to start evaluating if_pppoe in controlled environments.
Takeaway
This isn’t a criticism, if anything, it’s encouraging that a major change to a core networking component performs just as reliably as the established implementation. Stability is a win in itself.
For those running pfSense Plus 25.07, the new if_pppoe driver can be enabled manually under System > Advanced > Networking. It’s worth testing in your own environment, particularly if you’re running multi-gigabit PPPoE links, but there’s no urgent need to switch today.
As with any infrastructure change, measure first, deploy thoughtfully, and feed back real-world results.
pfSense and Netgate are registered trademarks of Rubicon Communications, LLC. This content is not affiliated with or endorsed by Netgate.