In Quality of Service for PPPoE Discovery in PTP 650/700 we looked at how PTP 650 and PTP 700 classify PPPoE Discovery frames as a Layer 2 Control Protocol to provide enhanced quality of service for the setup of PPPoE sessions. PPPoE sessions can carry a variety of different protocols but in most networks the payload is going to be IPv4.
An operator might also want to provide a certain QoS level for the IPv4 packets transmitted as part of a PPPoE Session.
PTP 650 and PTP 700 achieve this by locating the DSCP field in the IPv4 header of packets encapsulated in Ethernet/PPPoE and PPP. The frame looks like this:
We skipped the Ethernet DA and SA to make the rest relatively legible. Starting at byte 12, the Ethertype 0x8864 indicates the PPPoE Session stage. At byte 20 of the Ethernet frame, the PPP protocol field is set to 0x0021, which indcates that the payload is IPv4. Byte 23 (byte 1 of the IP header) contains the Differentiated Services Code Point (DSCP) field of the IP header. This is the field that determines the QoS classification and thus the transmission queue for the packet at the PTP wireless interface.
There is no separate configuration for QoS in the PPPoE Session stage; the standard PTP 650/700 QoS configuration for the IP/MPLS scheme drives the same classification whether or not the IP frame is in a PPPoE encapsulation.
We haven't shown it here, but the classifier can cope with one or two layers of VLAN tags.
Also, the classifier can handle DSCP in IPv6 packets. It would be very interesting to know if any Cambium customers are using PPPoE with IPv6.