Dell OS10 Priority Flow Control and DCB Configuration - 夜莺博客

Dell OS10 Priority Flow Control and DCB Configuration

Lossless Ethernet is not a switch-wide setting. It is a per-priority behaviour negotiated between neighbours over LLDP, and it only works if every device on the path agrees on which priorities are no-drop and how much buffer to reserve. On Dell OS10 the pieces are the DCB map, per-interface PFC, and DCBX, and the most common failure is a partially-applied configuration that looks correct on one switch and different on the next.

What each component does

  • PFC (priority flow control) — per-priority pause frames. Priority 3 marked no-drop means the switch sends a pause frame instead of dropping when its buffer for that priority fills. This is what makes RoCEv2 reliable.
  • ETS (enhanced transmission selection) — bandwidth allocation between traffic classes, so lossless traffic cannot be starved by best-effort traffic.
  • DCBX — the negotiation protocol (carried in LLDP TLVs) that exchanges PFC and ETS settings with the peer and tells each end whether the other is willing.

Configuration

configure terminal
!
! enable DCBX globally and pin the version
dcbx enable
dcbx version ieee
!
! a DCB map carries PFC and ETS intent for a group of ports
dcb-map DCB-PFC
 priority-flow-control priority 3 no-drop
 priority-flow-control priority 4 no-drop
 priority-pgid 0 0 0 1 1 1 1 1
!
interface range ethernet 1/1/1-1/1/32
 no shutdown
 dcb-map DCB-PFC
 priority-flow-control mode on
!
end
copy running-configuration startup-configuration

The priority-pgid line maps each 802.1p priority to a priority group; priorities 3 and 4 are placed in group 1, which is the group PFC protects. The mapping must be identical on both ends of every link, or DCBX negotiation will report a mismatch and the lossless behaviour will not be established.

Buffer sizing

interface ethernet 1/1/1
 pfc-shared-buffer-size 2048
 pfc-shared-headroom-buffer-size 1024
 queue-limit 512

Headroom is the piece people forget. PFC pause frames take time to arrive, and during that flight time the switch must be able to absorb the in-flight packets for the no-drop priority. On a long-haul or highly-utilised link, a headroom that is too small produces drops even though PFC is nominally working — the symptom is RoCE retransmits and application-level timeouts with no link errors.

Verification

show interface priority-flow-control
!  Interface        PFC Admin  PFC Oper  PFC Priorities
!  ethernet1/1/1    on         on        3,4

show dcbx interface ethernet 1/1/1
show ets interface ethernet 1/1/1
show dcb-map DCB-PFC
show running-configuration interface ethernet 1/1/1
show qos statistics interface ethernet 1/1/1 | include pause

PFC Admin on with PFC Oper off means local intent without a negotiated agreement: either the peer is not configured, DCBX is disabled on one side, or the priority groups do not match. That single pair of columns answers most "why is PFC not working" questions.

Failure patterns

  • PFC enabled on one end only — the peer never sends pause frames, so the configured end still drops. Both ends, every hop.
  • DCBX version mismatch (CIN vs IEEE) — negotiation produces garbage or nothing. Pin dcbx version ieee consistently.
  • PFC on a port without a DCB map — the interface-level command alone does not establish priorities; the map is what defines them.
  • Pause storms — a congested or misbehaving endpoint generating continuous pause frames that stall an entire traffic class. Watch the pause counters; a PFC watchdog on larger fabrics is the usual mitigation.
  • Lossless works in the lab, not in production — the extra hop in production is missing the DCB map. PFC is strictly hop by hop.

Related Dell material on this site: OS10 QoS trust and queue configuration for the non-lossless side of the same queue structure, and OS10 port channel configuration because PFC and ETS must be consistent across every member of a LAG. For the protocol background, RoCEv2 PFC, ECN and DCQCN tuning covers the end-to-end picture.

原文链接:https://www.dell.com/support/manuals/en-us/dell-emc-smartfabric-os10/smartfabric-os-user-guide-10-5-3/flow-based-monitoring?guid=guid-64fb5721-d7f5-47cb-8efc-0d1ae07b7bd4&lang=en-us