Intel® Ethernet 800 Series Linux Flow Control
Configuration Guide for RDMA Use Cases
Determining PFC Priority Mode: PCP vs. DSCP
An Ethernet frame's priority can be determined by one of two distinct values: PCP (VLAN) or DSCP.
Priority Code Point (PCP) is used to classify and manage network traffic, and providing QoS in Layer 2 Ethernet networks. It uses the 3-bit PCP field in the VLAN header for packet classification.
Differentiated Services or DiffServ uses a 6-bit DSCP in the 8-bit DS field in the IP header for packet classification. The DS field replaces the outdated IPv4 TOS field. Of the 6 DSCP bits, 3 most significant bits represent priority value and the next 3 bits represent the drop precedence within each traffic class.
Intel's ice driver supports two PFC modes: Layer 3 DSCP-based Quality of Service (L3 QoS) and L2 VLAN based QoS in the PF driver. For RoCEv2 traffic, VLAN priority tags or DSCP values must be configured on the network. PFC mode is configured per port.
Value | Reference | Layer | Field Description |
---|---|---|---|
PCP | IEEE 802.1Qbb | 2 | Priority determined by the 3-bit 802.1p Priority Code Point (PCP) field in a frame's VLAN tag. Also sometimes called Class of Service (CoS). |
DSCP | RFC 4594 | 3 | Priority determined by the 6-bit Differentiated Services Code Point (DSCP) value in the IPv4 or IPv6 header. DSCP is the upper 6 bits of the Type of Service (ToS) field. |
Ethernet devices might choose to use either value when making QoS priority decisions. This setting is usually referred to as trust mode, with options like CoS Trust, DSCP Trust, or Untrusted.