Acronym for the PPP over Ethernet protocol.
Defined by RFC 2516.
A simple protocol, designed to allow discovery of AccessConcentrators and end-point services they provide.
The five packet types used by PPPoE are:
Their definitions and use can be found in the RFC.
Once the discovery protocol has done the setup, the session protocol actually passes the PPP data between the AccessConcentrator and the client.
Roaring Penguin Software have a free Linux / NetBSD / Solaris implementation at
http://www.roaringpenguin.com/products/rp-pppoe/index.php. The debian package is "pppoe".
As of 2.4.something, the Linux kernel also had kernel-mode PPPoE support.
See LinuxPPPoENotes for more details.
7 pages link to PPPoE: