Modular QoS Configuration Guide for Cisco 8000 Series Routers, Cisco IOS XR Release

PDF

Modular QoS Configuration Guide for Cisco 8000 Series Routers, Cisco IOS XR Release

Priority Flow Control

Want to summarize with AI?

Log in

A link-layer congestion management mechanism that pauses only the affected CoS instead of the entire link.


A priority flow control (PFC) is a link layer congestion management mechanism that

  • prevents frame loss due to congestion

  • pauses only the affected classes of service (CoS) instead of the entire link, and

  • uses pause frames with timers per CoS to temporarily stop traffic until congestion clears.

Additional information about PFC

  • PFC is standardized as IEEE 802.1Qbb.

  • This mechanism is also called Priority-Based Flow Control (PFC), Class-Based Flow Control (CBFC), or Per-Priority Pause (PPP).

  • Unlike IEEE 802.3x Flow Control (pause frames), which stops all traffic, PFC provides granularity at the CoS level.

  • PFC pause frame includes a two-octet timer per CoS, expressed in quanta (transmission time of 512 bits).

  • The timer range is 0 to 65,535 quanta. The maximum pause time depends on the interface speed.

  • Pause frames are not forwarded by the peer; they operate on a hop-by-hop basis only.

Table 1. Feature History Table

Feature Name

Release Information

Feature Description

Shortlink Priority Flow Control

Release 25.4.1

Introduced in this release on: Fixed Systems (8010 [ASIC: A100])(select variants only*)

*This feature is supported on:

  • 8011-32Y8L2H2FH

  • 8011-12G12X4Y-A/D

Shortlink Priority Flow Control

Release 25.1.1

Introduced in this release on: Fixed Systems (8700 [ASIC: K100], 8010 [ASIC: A100])(select variants only*)

This feature is supported on:

  • 8712-MOD-M

  • 8011-4G24Y4H-I

Shortlink Priority Flow Control

Release 24.4.1

Introduced in this release on: Fixed Systems (8200 [ASIC: P100], 8700 [ASIC: P100])(select variants only*); Modular Systems (8800 [LC ASIC: P100])(select variants only*)

*This feature is now supported on:

  • 8212-48FH-M

  • 8711-32FH-M

  • 88-LC1-36EH

  • 88-LC1-12TH24FH-E

  • 88-LC1-52Y8H-EM

Priority Flow Control

Release 25.4.1

Introduced in this release on: Fixed Systems (8010 [ASIC: A100])(select variants only*)

*This feature is supported on:

  • 8011-32Y8L2H2FH

  • 8011-12G12X4Y-A/D

Priority Flow Control

Release 25.3.1

Introduced in this release on: Fixed Systems (8100 [ASIC: Q200], 8200 [ASIC: Q200]) (select variants only*)

You can now enable Priority Flow Control (PFC) to pause specific classes of traffic without impacting others during network congestion. This feature allows the device to apply flow control on a per-priority basis, preventing packet loss for critical traffic while maintaining overall network performance.

*This feature is supported on:

  • 8101-32FH

  • 8201-32FH

Priority Flow Control

Release 25.1.1

Introduced in this release on: Fixed Systems (8700 [ASIC: K100], 8010 [ASIC: A100])(select variants only*)

This feature is supported on:

  • 8712-MOD-M

  • 8011-4G24Y4H-I

Priority Flow Control

Release 24.4.1

Introduced in this release on: Fixed Systems (8200 [ASIC: P100], 8700 [ASIC: P100])(select variants only*); Modular Systems (8800 [LC ASIC: P100])(select variants only*)

*This feature is supported on:

  • 8212-48FH-M

  • 8711-32FH-M

  • 88-LC1-36EH

  • 88-LC1-12TH24FH-E

  • 88-LC1-52Y8H-EM

Priority Flow Control on Cisco 8808 and Cisco 8812 Modular Chassis Line Cards

Release 7.5.3

Priority Flow Control is now supported on the following line card in the buffer-internal mode:

  • 88-LC0-34H14FH

The feature is supported in the buffer-internal and buffer-extended modes on:

  • 88-LC0-36FH

Apart from the buffer-external mode, support for this feature now extends to the buffer-internal mode on the following line cards:

  • 88-LC0-36FH-M

  • 8800-LC-48H

Shortlink Priority Flow Control

Release 7.3.3

This feature and the hw-module profile priority-flow-control command are supported on 88-LC0-36FH line card.

Priority Flow Control Support on Cisco 8800 36x400 GbE QSFP56-DD Line Cards (88-LC0-36FH-M)

Release 7.3.15

This feature and the hw-module profile priority-flow-control command are supported on 88-LC0-36FH-M and 8800-LC-48H line cards.

All previous functionalities and benefits of this feature are available on these line cards. However, the buffer-internal mode is not supported.

In addition, to use the buffer-extended mode on these line cards, you are required to configure the performance capacity or headroom values. This configuration requirement ensures that you can better provision and balance workloads to achieve lossless behavior, which in turn ensures efficient use of bandwidth and resources.

Priority Flow Control

Release 7.3.1

This feature and the hw-module profile priority-flow-control command are not supported.

PFC analogy

The PFC mechanism is like a multi-lane highway where only the congested lane is closed temporarily while others keep moving.


Benefits of Priority Flow Control

These benefits make Priority Flow Control (PFC) critical in converged networks carrying both lossy and lossless traffic.

  • Provides lossless transport for traffic classes that require it, for example, storage or Remote Direct Memory Access (RDMA) traffic.

  • Prevents head-of-line blocking by pausing only specific traffic classes.

  • Enhances coexistence of loss-sensitive and best-effort applications on the same link.

  • Reduces packet drops, retransmissions, and latency spikes for critical traffic.


How Priority Flow Control works

Summary

This process describes how Priority Flow Control (PFC) operates when congestion occurs on a link.

When a traffic class queue exceeds a configured threshold, the switch generates a PFC pause frame to upstream devices, temporarily stopping transmission for that specific class.

The process ensures that lossless traffic continues without packet drops while non-congested traffic flows normally.

Workflow

These stages describe how PFC manages congestion events on a link.

  1. Congestion detected: The switch/line card detects that a queue for a specific CoS is approaching a configured threshold.
  2. Pause frame generated: A PFC frame is sent upstream to the peer, with the CoS bit set and pause quanta specified.
  3. Traffic paused: The upstream device stops transmitting for that CoS, while all other traffic classes continue.
  4. Congestion clears: Once the downstream buffer drains, the switch stops sending pause frames or sends a pause frame with a timer value of zero.
  5. Traffic resumes: Normal transmission continues without packet loss for the protected class.

Priority Flow Control modes

A Priority Flow Control (PFC) operating mode is a configuration profile that

  • determines whether buffer thresholds and pause behaviors are set at the line-card or interface level

  • manages how Explicit Congestion Notification (ECN) and queue limits are applied and,

  • controls how memory resources are shared across lossless and lossy traffic.

Details about Priority Flow Control modes

  • Before you begin, verify whether each PFC operating mode is supported on your specific hardware and line card. Mode support varies across platforms. (See Hardware Support for Priority Flow Control.)

  • Only one mode can be active per line card at any time.

  • A selected mode applies to all ports on a line card.

  • Choose the appropriate mode based on network requirements such as link distance, latency sensitivity, and traffic isolation needs.

Table 2. Priority Flow Control modes and their details

buffer-internal

buffer-extended

buffer-extended hybrid

Configures pause-threshold, headroom, and ECN thresholds entirely inside the line-card profile.

Configures pause-threshold in the line-card profile, but moves ECN and queue limits into interface-level queuing policies.

Splits High-Bandwidth Memory (HBM) into two separate pools—one for lossless traffic and another for lossy traffic.

Effective queue limit = pause-threshold + headroom.

Enables flexible per-interface tuning.

Each pool can be individually sized (such as up to 8 GB each on high-capacity line cards).

Recommended for short-haul (less than 1 km), low-latency environments

Recommended for long-haul networks or networks with mixed traffic.

Recommended for deployments at high scale that require isolation between traffic types.


Hardware support for Priority Flow Control modes

The table lists hardware that supports Priority Flow Control (PFC) by release, and indicates the PFC mode available for each.
Table 3. PFC hardware support matrix

Release

Supported Hardware

PFC Mode

Release 25.3.1

  • 8101-32FH

  • 8201-32FH

buffer-extended, buffer-internal, and buffer-extended hybrid

Release 24.1.1
  • 8212-48FH-M

  • 8711-32FH-M

  • 88-LC1-36EH

buffer-extended and buffer-internal

Release 7.5.3

88-LC0-36FH

buffer-extended and buffer-internal

88-LC0-36FH-M

buffer-extended and buffer-internal

8800-LC-48H

buffer-extended and buffer-internal

88-LC0-34H14FH

buffer-internal

Release 7.3.15

  • 88-LC0-36FH-M

  • 88-LC0-36FH

buffer-extended

Release 7.0.11

8800-LC-48H

buffer-internal


Best practices for Priority Flow Control

Restrictions for Priority Flow Control

These restrictions are hardware or configuration conditions that can prevent Priority Flow Control (PFC) from functioning as intended.
  • Unsupported hardware: PFC is not supported on fixed chassis systems.

  • Unsupported interface types: Not supported on bundle interfaces, sub-interfaces, or when breakout is configured.

  • Unsupported modes: Not supported in 4XVOQ mode or when VOQ counter sharing is enabled.

  • Scope limitations: Applies only to 40 GbE, 100 GbE, and 400 GbE physical ports.

  • Consistency requirement: On modular chassis (such as 8808 and 8812), configure PFC consistently on all line cards.

Guidelines for configuring Priority Flow Control

Follow these guidelines to achieve efficient, interoperable PFC behavior.
  • Always configure PFC on both ends of a link for the same traffic classes (CoS symmetry).

  • Before enabling PFC, determine whether buffer-internal, buffer-extended, or buffer-extended hybrid mode is required for your deployment.

  • Validate hardware capacity and firmware prerequisites.

  • For multiline card systems, maintain consistent threshold and Explicit Congestion Notification (ECN) configurations across cards.

  • Use telemetry (pause-duration, ECN marks, and queue-occupancy counters) to tune thresholds over time.

  • Periodically verify show controllers npu priority-flow-control after configuration changes.

Accessing Priority Flow Control operational state programmatically

You can retrieve and monitor Priority Flow Control (PFC) configuration and statistics programmatically using a Cisco IOS XR data model.

  • Data model: Cisco-IOS-XR-ofa-npu-pfc-oper.yang

  • Access: via NETCONF or RESTCONF interfaces

  • Information available: PFC configuration state, pause statistics, and ECN counters

  • Reference guide: Programmability Configuration Guide for Cisco 8000 Series Routers