PPPoE · Topic 1 of 4

PPPoE Theory and Comparison

Learn how PPPoE carries PPP over Ethernet, how the discovery stage finds a server, why the MTU is smaller, and how PPPoE compares with PPTP and L2TP.

  • 4 min
  • Includes a diagram
In a nutshell
  • PPPoE runs PPP over Ethernet and works at Layer 2.
  • The client and server must be on the same broadcast domain.
  • Discovery uses PADI, PADO, PADR and PADS, and PADT ends the session.

What it is

PPPoE carries PPP sessions directly over Ethernet, without an IP network underneath.

Internet providers use it to give each subscriber a login, an address and accounting on a shared Layer 2 network. The subscriber router is the client, and the provider router is the server, which is often called the access concentrator.

Because PPPoE works at Layer 2, the client and server must be on the same broadcast domain.

ClientPPPoE clientdiscovery broadcastSwitchsame Layer 2 networkforwardsServerPPPoE serverPPP sessionSubscriberaddress and login

How it works

A client first discovers a server, and then a normal PPP session runs on top of the Ethernet link.

Discovery stage

A subscriber router and a provider router on the same Layer 2 segment exchange PADI, PADO, PADR and PADS messages to set up a session, after which the PPP session starts and PADT ends it. The client finds a server with four steps, and a fifth step ends the session.

StepSent byPurpose
PADIClientBroadcast to find any server
PADOServerOffer from a server that can serve the client
PADRClientRequest to the chosen server
PADSServerConfirms and assigns a session ID
PADTEither endEnds the session

PADI is a broadcast, which is why the client and server must share a Layer 2 segment. After PADS, both ends know the session ID and the MAC addresses, and the PPP session starts.

Session stage

The session stage uses PPP. The link goes through authentication, and then addresses are assigned by the profile and secret on the server. These are the same objects used for PPTP and L2TP.

Discovery and session frames use different Ethernet types, so the two stages are separate on the wire.

Service name and access concentrator name

A server advertises a service name, and it also has an access concentrator name. A client can set either value to choose one server among several on the same segment.

If the client leaves them empty, it accepts any server that answers. On RouterOS the access concentrator name of a server is taken from the router identity.

MTU

PPPoE adds 8 bytes to every frame: 6 for the PPPoE header and 2 for the PPP protocol field. An Ethernet link carries 1500 bytes of payload, so the PPPoE interface MTU is at most 1492.

A host behind the link that sends full sized packets can hit a problem. The change-tcp-mss setting in the PPP profile lowers the TCP segment size to fit.

Comparison with PPTP and L2TP

FeaturePPPoEPPTP and L2TP
LayerLayer 2 over EthernetIP tunnel across a routed network
Server discoveryBroadcast discoveryClient is told the server address
Needs same segmentYesNo
Typical useSubscriber accessRemote access across the internet
Built in encryptionNone by itselfMPPE for PPTP, IPsec for L2TP
MTU overhead8 bytesMore, because of the IP wrapper

PPPoE gives per subscriber control and accounting, but it does not cross routers.

Where RouterOS uses it

/interface pppoe-client print
/interface pppoe-server server print
/ppp active print

The client and server have their own menus, shown in the next two pages. They share the PPP profile, secret and pool objects with the other services.

Why providers choose PPPoE

The provider gets a login for each subscriber, accounting records, and the freedom to hand out addresses from a pool. The subscriber gets a simple setup that needs only a name and a password.

What to remember for the exam

Seven facts cover most PPPoE theory questions.

  • PPPoE runs PPP over Ethernet and works at Layer 2.
  • The client and server must be on the same broadcast domain.
  • Discovery uses PADI, PADO, PADR and PADS, and PADT ends the session.
  • PADI is a broadcast sent by the client.
  • PPPoE adds 8 bytes, so the maximum MTU is 1492.
  • A service name or access concentrator name lets a client pick a server.
  • Authentication, addresses and rate limits come from the PPP profile and secret.
Exam tip

To remember the discovery order, think initiation, offer, request, session confirmation.

Common mistakes

These four errors appear again and again.

Trying to run PPPoE across a router. The discovery broadcast does not cross a routed hop, so the client never finds the server.

Forgetting the MTU. Large packets are dropped or fragmented because the link carries 1492 bytes at most.

Mixing up PADO and PADS. PADO is the offer, and PADS is the confirmation that assigns the session.

Expecting PPPoE to encrypt. It does not. Encryption needs MPPE through the profile or a separate protection layer.

Watch out

A client that sets a service name that no server advertises gets no answer, even when the cable and credentials are right.

Check yourself

Work through these three questions.

  • Why must a PPPoE client and server share a Layer 2 segment?

    Discovery starts with a PADI broadcast, which does not cross a router.

  • What is the maximum MTU of a PPPoE interface on Ethernet, and why?

    It is 1492, because PPPoE adds 8 bytes to a 1500 byte Ethernet payload.

  • Which discovery message confirms the session and assigns the session ID?

    PADS, sent by the server after the client sends PADR.

Topic 1 of 4 in PPPoE

Test yourself on PPPoE

The full MikroTik MTCUME question bank has 482 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by MikroTik. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.