Optical Communication Products · Shenzhen, China
Tel: +86 0755 23766314  ·  marketing@fotfiberoptic.com
Request a Quote

Priority Flow Control (PFC)

Data Centre & AI Networking

A link-level pause mechanism that stops traffic on one priority class instead of dropping it — and the source of most RoCE pain.

Standard
IEEE 802.1Qbb
Granularity
per priority class, not per port
Purpose
prevent packet loss on RDMA traffic
Danger
head-of-line blocking, congestion spreading, deadlock
How One Full Buffer Reaches the Whole Fabric
Every step below is the mechanism working exactly as designed

What PFC Actually Sends

Ordinary Ethernet flow control halts a whole link. PFC halts one of eight priority classes: a single frame carries a pause duration for each class, so RDMA traffic can be stopped while management and storage keep moving. Durations are expressed in quanta, one quantum being the time to put 512 bits on the wire — so the same numeric value means a shorter pause at a higher port speed.

A duration of zero is the resume signal. The point of the whole mechanism is to convert loss into delay, because RDMA survives delay and does not survive loss.

The Side Effects Are the Point

Pausing an upstream port stops every flow in that class on that port, including flows destined somewhere entirely uncongested. That is head-of-line blocking, and it is not a bug — the mechanism has no way to distinguish them.

Worse, the pause propagates. The upstream switch now fills its own buffer, pauses its upstream, and one hot link can throttle a large region of the fabric within milliseconds. In a topology with a cycle, PFC can deadlock outright, each switch waiting on the next, which is why every serious deployment runs a PFC watchdog that force-drains a queue paused for too long.

Why Headroom Depends on Cable Length

The pause frame takes time to reach the sender, and the sender keeps transmitting until it arrives. Every one of those frames must fit in reserved buffer at the receiver, or the pause achieves nothing.

That reserve scales with link rate and with distance, since light covers about 200 metres per microsecond in fibre and a long cross-hall run holds correspondingly more data at the instant of the pause. Vendor defaults assume short links. Extending a fabric across a hall without revisiting headroom is a well-worn way to lose losslessness on precisely the longest, most important links.

What Goes Wrong

The reliable indicator of an unhealthy fabric is a PFC pause counter that climbs. Not a high one — any nonzero rate that persists means ECN is not doing its job and the emergency brake is being used as a throttle.

The other common cause is not congestion at all. A marginal optical link burning FEC correction budget reduces effective throughput on one lane, which fills a buffer upstream and fires PFC exactly as real congestion would. Check optical receive power and error counters before touching thresholds; the RoCE PFC and ECN tuning guide and the link-down diagnostic guide both cover the sequence.

PFC reference

StandardIEEE 802.1Qbb
Granularityeight priority classes, paused independently
Pause quantumthe time to transmit 512 bits at the port rate
Frame contenta pause duration per class, in quanta
Resumea quantum value of zero
Predecessor802.3x PAUSE, which stopped the entire link
Required reserveheadroom buffer for in-flight frames
Usual safeguardPFC watchdog — a vendor feature, not part of 802.1Qbb
Health metricpause counters should stay flat, not merely low

Related Terms

ECN, lossless Ethernet, RoCE, UEC, FEC.

Questions about your project?

Send the specification and an engineer answers it — no obligation, and no sales sequence. If the answer is that you do not need what we sell, that is the answer you get.

Usually answered within one working day.