PPPoE Packet Format

Table 1 PPPoE packet fields

Field

Description

Destination_address

Indicates either a unicast Ethernet destination address or the Ethernet broadcast address (0xffffffffffff). For Discovery packets, the value is either a unicast or broadcast address. A PPPoE client uses a broadcast address to search for a PPPoE server and uses a unicast address after choosing a PPPoE server. For PPP session traffic, this field must contain the peer's unicast address as determined from the Discovery stage.

Source_address

Indicates the Ethernet MAC address of a source device.

Ether_type

Set to either 0x8863 (Discovery stage) or 0x8864 (Session stage).

Ver

Indicates a PPPoE version number. The Ver field is four bits and must be set to 0x1.

Type

Indicates a PPPoE type. The Type field is four bits and must be set to 0x1.

Code

Indicates a PPPoE packet type. The Code field is eight bits and has different values:
  • 0x00: session data
  • 0x09: PADI packet
  • 0x07: PADO or PADT packet
  • 0x19: PADR packet
  • 0x65: PADS packet

Session_ID

The SESSION_ID field is sixteen bits. The value is fixed for a given PPP session and defines a PPP session along with Ethernet source and destination addresses. A value of 0xffff is reserved for future use and must not be used.

Length

Indicates the length of the PPPoE payload. The Length field is 16 bits, excluding the length of the Ethernet or PPPoE header.

Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic