This section describes the Point-to-Point Protocol over Ethernet (PPPoE) mechanism.
PPPoE works in the client/server mode. PPPoE provides point-to-point connectivity over Ethernet networks by encapsulating PPP packets in Ethernet frames.
Figure 1 shows the process for establishing an IPv4 PPPoE connection.
After the Discovery phase is complete, both ends of a connection obtain the PPPoE Session_ID and peer Ethernet address. The PPPoE Session_ID and peer Ethernet address together define a unique PPPoE session.
The Discovery phase consists of the following steps:
A host broadcasts a PPPoE Active Discovery Initial (PADI) packet within a local Ethernet. This packet contains service information required by the host.
A PPPoE server checks service names as follows:
If a PPPoE server is configured with a service name, a PPPoE client sends a PADI packet at the Discovery phase to the server to request for a connection.
If this PADI packet contains a non-null service name, the server examines whether the configured service name matches the service name in this packet. If the service names match, the server provides follow-up services. If the service names do not match, the server does not provide services.
The preceding situation applies when two service names are not null. If either of the service names is null, the server does not check the service names and proceeds with the packet processing.
After receiving this PADI packet, the servers on the Ethernet compare the requested services with the services the servers can provide. Then, the server that can provide the requested services send back a PPPoE Active Discovery Offer (PADO) packet.
Upon receipt, the host obtains information from the PADO packet and sends a PPPoE Active Discovery Request (PADR) packet to the server.
The server generates a unique session identifier to identify a PPPoE session. Then, the server sends this session identifier in a PPPoE Active Discovery Session-confirmation (PADS) packet to the host. If there is no error, both the ends enter the PPPoE session phase.
If the server successfully sends and the host received the PADS packet, both the server and host enter the PPPoE Session phase.
The host encapsulates a PPP packet as the payload of a PPPoE frame into an Ethernet frame before sending the Ethernet frame to its peer. The Ethernet frame carries a Session_ID determined at the Discovery phase and a peer MAC address. The PPP packet section in the frame begins at the Protocol ID. An Ethernet packet is a unicast packet.
In the Session phase, either the host or server may send PPPoE Active Discovery Terminate (PADT) packets to instruct the other to end this session.