OpenBSD Journal

PPPoE performance comparison

Contributed by jose on from the room-for-improvement dept.

empty writes:
"There is a nice little article at:

comparing performance and ease of setup of PPPoE on operating systems including OpenBSD, Linux, NetBSD, and FreeBSD.

Is is worth noting that NetBSD was a clear winner, and OpenBSD did rather badly (i.e. they couldn't even get it to work). Still we have to take the bad with the good, and it looks like this is a place for improvement -- since PPPoE seems to be plaguing more and more of us these days."

Well, the article isn't terribly flattering to OpenBSD, but it should point out that PPPoE needs some help. I've seen some older PPPoE tools and writeups for OpenBSD, but nothing recent. Anyone care to step up to the plate and make sure it continues to work?

(Comments are closed)

  1. By Anonymous Coward () on

    Ummm, Here's a link:

    I referred my friend who had never even seen an OpenBSD box and he got it running within a half hour. He set it up using 3.1

    I found this just doing a simple ppoe + OpenBSD,
    It also comes up searching dsl + OpenBSD.

  2. By Toojays () on

    Can someone clarify whether or not PPPoE works under OpenBSD 3.2? My firewall is currently running 3.0 just fine, but I was thinking of upgrading to 3.2.

    If 3.2 really doesn't work with PPPoE, I may need to install NetBSD 1.6 instead. My understanding is that the sshd in 3.0 can be remotely exploited due to a bug in the ssl. Is that correct?

  3. By Free Bird () on

    PPPoE sucks anyway, so why bother?

  4. By suspicious () on

    It's too bad they barely tried to get it to work, but still managed to mention that they think OpenBSD performance sucks.

    Who submitted this link, and why? I can't find this article anywhere else -- not on derbian, not through google -- except by direct link from obsdjournal. What a worthless piece of shite.

    I want to see corroborating benchmarks, too. Until then it's a waste of reading time (and maybe deliberately so).

  5. By Juuso Raitala () on

    I want to address the ones who criticized the test we performed and the article we wrote.

    First of all, we actually spent more time configuring OpenBSD than any other operating system. In addition to reading OpenBSD's own documentation and the HOWTOs found from Google, we searched for more information in the mailing list archives. We found out that other users had faced the same problem with the same error messages, but no real solution was offered. That leads me to think that problem might be incompabilities with OpenBSD PPPoE implementation and server software and settings we used and some ISPs use. However, on every other OS PPPoE worked well.

    As we stated, previously we have been able to get PPPoE on OpenBSD 3.1 to work, but the performance was inadequate for a high-speed PPPoE connection. Back then, due to PPPoE performance issues, we were forced to change the operating system of the router acting as PPPoE client. Configuring PPPoE itself on OpenBSD wasn't difficult at all and the logging and debugging possibilities were good.

    Because on OpenBSD PPP encapsulation is done in userspace, the performance must be similar to what it is under FreeBSD and Linux 2.2. No userspace implementation can match in-kernel implementation in terms of performance.

  6. By jose () on

    daemonnews also ran this story and some good links appeared in the commends:

  7. By Clint/Schwack () on

    Since i don't see it here yet, please see

    Its a bit outdated, but i followed it and have been using openbsd with pppoe since 3.0 with no problems. (using ddclient to update dyn dns and hosting several sites/mail even)

    With that doc as a guide, it was a breeze setting it up, not hard at all. Easier to me than linux even, as the client is installed by default.

    my 2 cents.

  8. By Dom De Vitto () on

    The document was obviously not a troll, just read it.
    As very it's admiral that Juuso hasn't shut the door on the comparison, and if you guys using PPPoE can get in touch with him, and sort his problem, he'll ammend the document.

    So, stop whining over an unfavourable write-up and do something to help Juuso get proper results.

  9. By Anonymous Coward () on

    * Juuso Raitala
    * Jenna Jameson
    * Asia Carrera
    * Hairy Trucker

    Another useless article, maybe we can submit his work to onlamp too. :)

  10. By Anonymous Coward () on

    #cat ppp.conf
    set log Phase Chat IPCP CCP tun command
    set redial 15 0
    set reconnect 15 10000

    set device "!/usr/sbin/pppoe -vv -i ne3"
    disable acfcomp protocomp ipv6cp
    set mtu max 1492
    set speed sync
    enable lqr
    set lqrperiod 5
    set cd 5
    set dial
    set login
    set timeout 0
    set authname USERNAME
    set authkey PASSWORD
    add! default HISADDR
    enable dns
    enable mssfixup

    # cat ppp.linkup
    ! sh -c "/sbin/pfctl -Fa -R /etc/pf.conf -N /etc/nat.conf"
    ! sh -c "/sbin/ifconfig pflog0 up"
    ! sh -c "echo UP `date` >> /var/log/pppoe.log"
    ! sh -c "/usr/local/sbin/ntpdate"

    # cat ppp.linkdown
    ! sh -c "/sbin/ifconfig pflog0 down"
    ! sh -c "/sbin/route flush"
    ! sh -c "echo DOWN `date` >> /var/log/pppoe.log"

    # tail -3 /etc/rc.local
    pfctl -e
    route flush
    ppp -ddial pppoe

    i set this up just using manpages on 2.9, as i had openbsd installed with no internet connection. the system is running 3.1-stable now.

    the pppoe.log thing is just a hack thing to journal how much my connection bounces. i seem to get full speed out of my 1.5/384 line. only problem is it can take a while to come up after rebooting - sometimes it works after several reboots. i haven't done any investigation on this, so i wouldn't really classify it as a bug.

  11. By Juuso Raitala () on

    I looked at the issue earlier today and got PPPoE up and running very easily on OpenBSD 3.2. The updated article with updated results is available. I hope this new information helps.

    I want to emphasise that PPPoE on OpenBSD 3.2 works - performance is not good, but it works. The reason why it didn't initially work is probably a configuration error of ours.


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]