Configuring Priority Flow Control

This chapter describes how to configure priority flow control (PFC) on the Cisco NX-OS device.

Finding Feature Information

Your software release might not support all the features documented in this module. For the latest caveats and feature information, see the Bug Search Tool at https://tools.cisco.com/bugsearch/ and the release notes for your software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the "New and Changed Information"chapter or the Feature History table in this chapter.

Information About Priority Flow Control

Priority flow control (PFC; IEEE 802.1bb), which is also referred to as Class-based Flow Control (CBFC) or Per Priority Pause (PPP), is a mechanism that prevents frame loss that is due to congestion. PFC is similar to 802.3x Flow Control (pause frames) or link-level flow control (LFC). However, PFC functions on a per class-of-service (CoS) basis.

When a buffer threshold is exceeded due to congestion, LFC sends a pause frame to its peer to pause all data transmission on the link for a specified period of time. When the congestion is mitigated (traffic comes under the configured threshold), a resume frame is generated to restart data transmission on the link.

In contrast, during congestion, PFC sends a pause frame that indicates which CoS value needs to be paused. A PFC pause frame contains a 2-octet timer value for each CoS that indicates the length of time that the traffic needs to be paused. The unit of time for the timer is specified in pause quanta. A quanta is the time that is required for transmitting 512 bits at the speed of the port. The range is from 0 to 65535. A pause frame with a pause quanta of 0 indicates a resume frame to restart the paused traffic.


Note

Only certain classes of service of traffic can be flow controlled while other classes are allowed to operate normally.


PFC asks the peer to stop sending frames of a particular CoS value by sending a pause frame to a well-known multicast address. This pause frame is a one-hop frame that is not forwarded when received by the peer. When the congestion is mitigated, PFC can request the peer to restart transmitting frames.

Prerequisites for Priority Flow Control

PFC has the following prerequisites:

  • You must be familiar with “Using Modular QoS CLI.”

  • You are logged on to the switch.

  • You are in the VDC. A VDC is a logical representation of a set of system resources. You can use the switchto vdc command with a VDC number.

Guidelines and Limitations

PFC has the following configuration guidelines and limitations:

  • If PFC is enabled on a port or a port channel, it does not cause a port flap.

  • A flap occurs when both the PFC and LFC are enabled and PFC is disabled before LFC is configured.

  • PFC configuration enables PFC in both the send (Tx) and receive (Rx) direction.

  • PFC on mode is used to support the hosts that support PFC but do not support the Data Center Bridging Capability Exchange Protocol (DCBXP).

  • Only an exact match of the no-drop CoS is considered as a successful negotiation of PFC by the DCBXP.

  • M3 modules do not support Priority Flow Control.

PFC and F1 Series Module Ports

  • When PFC is enabled on a port, precision time protocol (PTP) is not supported on the port.

  • The pong utility is not supported on a VDC when PFC is enabled on any of the ports in the same VDC.

  • PFC is not supported when PTP is enabled on the same port or when the pong utility is enabled in the same VDC.

Default Settings for Priority Flow Control

Table 1. Default PFC Settings

Parameter

Default

PFC

Auto

Configuring Priority Flow Control

You can configure PFC on a per-port basis to enable the no-drop behavior for the CoS as defined by the active network qos policy. PFC can be configured in one of these three modes:

  • auto—Enables the no-drop CoS values to be advertised by the DCBXP and negotiated with the peer. A successful negotiation enables PFC on the no-drop CoS. Any failures because of a mismatch in the capability of peers causes the PFC not to be enabled.

  • on—Enables PFC on the local port regardless of the capability of the peers.

  • off—Disables PFC on the local port.


Note

You can also enable Link-level Flow Control (LFC) on the same port in which PFC is enabled. However, PFC, if enabled, always gets the priority.


SUMMARY STEPS

  1. switch# configure terminal
  2. switch(config)# interface ethernet [slot/port-number]
  3. switch(config-if)# priority-flow-control mode {auto | off | on}
  4. (Optional) switch(config-if)# show interface priority-flow-control

DETAILED STEPS

  Command or Action Purpose
Step 1

switch# configure terminal

Enters global configuration mode.

Step 2

switch(config)# interface ethernet [slot/port-number]

Enters interface mode on the interface specified.

Step 3

switch(config-if)# priority-flow-control mode {auto | off | on}

Sets the PFC to the auto, off, or on mode. By default, PFC mode is set to auto on all ports.

Step 4

(Optional) switch(config-if)# show interface priority-flow-control

(Optional)

Displays the status of PFC on all interfaces.

Verifying the Priority Flow Control Configuration

Command

Purpose

show interface priority-flow-control

Displays the status of PFC on all interfaces.

For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series NX-OS Quality of Service Command Reference.

Configuration Examples for Priority Flow Control

The following example shows how to configure PFC:


configure terminal
 interface ethernet 5/5
 priority-flow-control mode on

Feature History for Priority Flow Control

The table below summarizes the new and changed features for this document and shows the releases in which each feature is supported. Your software release might not support all the features in this document. For the latest caveats and feature information, see the Bug Search Tool at https://tools.cisco.com/bugsearch/ and the release notes for your software release.

Table 2. Feature History for PFC

Feature Name

Release

Feature Information

PFC

5.1(1)

This feature was introduced.