DCBX and Flow Control

This section describes Data Center Bridging Capability Exchange (DCBX) configuration tasks. Topics in this section include:

Introduction

EOS implements Link Layer Discovery Protocol (LLDP) and the Data Center Bridging Capability Exchange (DCBX) protocol to help automate the configuration of Data Center Bridging (DCB) parameters, including the Priority-Based Flow Control (PFC) standard, which allows an end-to-end flow-control feature.

This feature enables a switch to recognize when it is connected to an iSCSI device and automatically configure the switch link parameters (such as priority flow control) to provide optimal support for that device. DCBX can be used to prioritize the handling of iSCSI traffic to help ensure that packets are not dropped or delayed. DCBX is off by default.

Overview

Data Center Bridging Capability Exchange (DCBX)

DCBX works with LLDP to allow switches to exchange information about their Data Center Bridging (DCB) capabilities and configuration and automatically negotiate common Priority-Based Flow Control (PFC) parameters.

Data is exchanged in Type-Length-Value (TLV) format. For DCBX to function on an interface LLDP must be enabled on that interface as well.

Priority-Based Flow Control (PFC)

Priority-Based Flow Control (PFC) uses a new control packet defined in IEEE 802.1Qbb and is not compatible with 802.3x Flow Control (FC). An interface that is configured for PFC will be disabled for FC. When PFC is disabled on an interface, the FC configuration for the interface becomes active. Any FC frames received on a PFC configured interface are ignored.

Each priority is configured as either drop or no-drop. If a priority that is designated as no-drop is congested, the priority is paused. Drop priorities do not participate in pause.

When PFC is disabled, the interface defaults to the IEEE 802.3x flow control setting for the interface. PFC is disabled by default.

PFC Watchdog

The PFC watchdog identifies the egress queues that are unable to transmit packets for a long time due to receiving continuous PFC pause frames. On identifying such stuck tx-queue PFC watchdog error-disables the respective port with a error-disable reason of stuck-queue. When there is an error reported on a port the traffic is re-routed through a different port to the destination.

The PFC watchdog supports the following PFC watchdog configurations:
  • PFC watchdog forced recovery of queues
  • PFC watchdog polling interval configuration
  • PFC Watchdog non-disruptive priorities configuration
  • Displaying stuck queue and recovery counters

DCBX Configuration and Verification

Set the Priority Rank to the Traffic Class

The dcbx application priority command assigns a priority rank to the specified traffic class in the application priority table. This table is transmitted on each DCBX-enabled interface.

Examples
  • These commands tell the DCBX peer that iSCSI frames (TCP ports 860 and 3260) should be assigned the given priority of 5.
    switch(config)# dcbx application tcp-sctp 860 priority 5
    switch(config)# dcbx application tcp-sctp 3260 priority 5

  • These commands specify a different priority for the two iSCSI traffic ports.
    switch(config)# dcbx application tcp-sctp 860 priority 3
    switch(config)# dcbx application tcp-sctp 3260 priority 4

  • This command is equivalent to the dcbx application tcp-sctp command. The DCBX peer that iSCSI frames are assigned are the given the priority 5.
    switch(config)# dcbx application iscsi priority 5
    switch(config)#

  • These commands prevent the peers from sending anything about the iSCSI frames.
    switch(config)# no dcbx application tcp-sctp 860 priority 5
    switch(config)# no dcbx application tcp-sctp 3260 priority 5

Configuring CEE DCBX Priority Group

The priority-flow-control priority command configures the Enhanced Transmission Selection (ETS) to the specified QoS group, and sets the traffic class priority and the bandwidth percentage for the packets in the traffic class.

Examples
  • This command configures the ETS to the QoS group map and assigns the CoS map value as 7 and sets traffic class priority to 5.
    switch(config)# dcbx ets qos map cos 7 traffic-class 5

  • This command configures the ETS to the traffic class and sets the traffic class priority as 7 and bandwidth value to 70 percent.
    switch(config)# dcbx ets traffic-class 7 bandwidth 70

DCBX Verification

To display the DCBX status and the interfaces on which DCBX is enabled, use the show dcbx command.

Example

This command displays the DCBX status for Ethernet 50.
switch# show dcbx Ethernet 50
Ethernet50:
 IEEE DCBX is enabled and active
 Last LLDPDU received on Thu Feb 14 12:06:01 2013
 No priority flow control configuration TLV received
 No application priority configuration TLV received
switch#

Configuring Priority-Flow-Control (PFC)

Enable Priority-Flow-Control (PFC)

The priority-flow-control command enables Priority-Flow-Control (PFC) on an individual port.

Example

The priority-flow-control command in DCBX mode enables PFC on an interface.
switch(config)# interface ethernet 2
switch(config-if-Et2)# priority-flow-control on

Set the Priority Flow Control Priority

The priority-flow-control priority command in DCBX mode creates a priority group that pauses priority. Each priority is configured as either drop or no-drop. If a priority that is designated as no-drop is congested, the priority is paused. Drop priorities do not participate in pause.

Examples
  • The priority-flow-control priority command in DCBX mode creates a priority group that pauses priority 5 on interface ethernet 2.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# priority-flow-control on
    switch(config-if-Et2)# priority-flow-control priority 5 no-drop

  • To enable lossy behavior, use the drop option of the priority-flow-control priority command.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# priority-flow-control on
    switch(config-if-Et2)# priority-flow-control priority 5 drop

Disable Priority-Flow-Control (PFC)

To disable Priority Flow Control (PFC) on the configuration mode interface and restore the default packet drop setting on the interface, use the priority-flow-control priority command.

Example

To disable PFC, use the no priority-flow-control command.
switch (config)# interface ethernet 2
switch(config-if-Et2)# no priority-flow-control

Configuring PFC Watchdog

Enabling PFC Watchdog

The priority-flow-control pause watchdog default timeout command starts monitoring all the egress queues which have guaranteed bandwidth enabled and for the priorities on which PFC is enabled.

Note: To enable PFC watchdog, user is required to configure guaranteed bandwidth on the tx-queue to be monitored. Also, PFC must be enabled on the port for the traffic flowing into the queue that is being monitored.

Example

These commands enable the PFC watchdog monitoring on tx-queue 3 of Ethernet 1/1, and configures a PFC congestion timeout of 10 seconds which error-disables the port if the queue is stuck.
switch# config
switch(config)# interface Ethernet1/1
switch(config-if-Et1/1)# priority-flow-control on
switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
switch(config-if-Et1/1)# tx-queue 3
switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
switch(config-if-Et1/1-txq-3)# exit
switch(config-if-Et1/1)# exit
switch(config)# priority-flow-control pause watchdog default timeout 10

Enabling PFC Watchdog Queue Recovery

The priority-flow-control pause watchdog default recovery-time forced command recovers a stuck queue after the PFC storm ceases. PFC watchdog supports the following two recovery methods.
  • Auto Recovery – recover queue(s) after the PFC storm ceases.
  • Forced Recovery – recover queue(s) after a fixed duration, irrespective of PFC storm being received.

    Note: The default recovery mode is “auto”.

Example

This command recovers a stuck queue after a fixed duration of 10 seconds.
switch(config)# priority-flow-control pause watchdog default recovery-time 10 forced

Configuring PFC Watchdog Polling Interval

The priority-flow-control pause watchdog default polling-interval command configures the frequency at which queues should be checked for stuck or recovery detection. By default, polling interval is calculated internally or it considers the value configured through the CLI.

Note: Configuring a very low polling interval may increase load on the CPU.

Example

This command configures a polling interval of 10 seconds on the switch.
switch(config)# priority-flow-control pause watchdog default polling-interval 10

Displaying Stuck Queue and Recovery Counters

The show priority-flow-control counters watchdog command displays the value of number of times a queue is identified as stuck and recovered. These counters are maintained only for those queues that have PFC watchdog functionality enabled. These counters are cleared when either PFC or PFC watchdog configuration is disabled. Alternatively, show interfaces priority-flow-control counters watchdog command can be used to display the counters.

Examples
  • This command displays the value of number of times the queue was stuck and recovered for all the interfaces.
    switch# show priority-flow-control counters watchdog
    Port       TxQ   Total times   Total times
                     stuck         recovered
    -------   ----   -----------   -----------
    Et1/1      UC2             2             2
    Et1/1      UC3             3             3
    Et2/1      UC2            12            12
    Et2/1      UC3            31            30

  • This command displays the value of number of times the queue was stuck and recovered for a specific interface. In this case it is Et1/1.
    switch# show priority-flow-control interfaces Ethernet 1/1 counters watchdog
    Port       TxQ   Total times   Total times
                     stuck         recovered
    -------   ----   -----------   -----------
    Et1/1      UC2             2             2
    Et1/1      UC3             3             3

PFC Watchdog Non-disruptive Priorities

The PFC Watchdog acts to drop the traffic entering or leaving the port at the stuck PFC priority. Later when the queue recovers, this action is reversed. While applying these actions, some traffic (for all priorities) is dropped on that port. In such case, the priority-flow-control pause watchdog hardware non-disruptive priority command can be used to avoid the traffic drop on ports at stuck queues.

This traffic drop can be avoided by configuring specific PFC priorities as non-disruptive. When queues corresponding to these priorities are stuck/recovered, the traffic for other priorities are not impacted.

Examples
  • This command configures the specific PFC priorities as non-disruptive, and the priority is set to 3.
    switch(config)# priority-flow-control pause watchdog hardware non-disruptive priority 3

  • This command configures all the ports, having a subset of non-disruptive priorities as a part of their no-drop priorities, start in non-disruptive mode.
    switch(config)# priority-flow-control pause watchdog hardware port non-disruptive-only

Displaying PFC Watchdog Information

The show priority-flow-control command displays the PFC watchdog status information. Note, if the PFC watchdog default timeout value is non-zero then PFC watchdog is active on the switch.

Example

This command displays the PFC watchdog default timeout value, in this show example the timeout value is 3.0 which means the PFC watchdog is active.
switch# show priority-flow-control
The hardware supports PFC on priorities 0 1 2 3 4 5 6 7
The PFC watchdog default timeout is 3.0

Port   Enabled Priorities Active Note 
Et1/1   Yes       34      Yes    DCBX disabled 
Et1/2   Yes       34      Yes    DCBX disabled 
Et1/3   Yes       34      Yes    DCBX disabled 
Et1/4   Yes       34      Yes    DCBX disabled

The show interface status errdisabled command displays the port which is error-disabled due to stuck- queue condition.

Example

This command displays the interface Ethernet Eth1/1 status as errdisabled and the reason.
switch# show interface Eth1/1 status errdisabled

Port            Name          Status         Reason 
---------- ---------------- ----------------- ---------
Et1/1                        errdisabled    stuck-queue

The show priority-flow-control status command displays the current PFC watchdog details.

Example

This command displays the PFC watchdog configuration details at global and interface level.
switch# show priority-flow-control status
The hardware supports PFC on priorities 0 1 2 3 4 5 6 7
The PFC watchdog timeout is 1.0 second(s)
The PFC watchdog recovery-time is 2.0 second(s) (auto)
The PFC watchdog polling-interval is 0.1 second(s)
The PFC watchdog non-disruptive priorities are 3 4
The PFC watchdog port non-disruptive-only is False

E: PFC Enabled, D: PFC Disabled, A: PFC Active, W: PFC Watchdog Enabled
Port     Status  Priorities Note
Et1/1    E A W    1     7   DCBX disabled
Et1/2    E A -              DCBX disabled
Et1/3    D - -
Et1/4    D - -
Et2/1    D - -
.. 
..

DCBX and Flow Control Commands

dcbx application priority

The dcbx application priority command assigns a priority rank to the specified traffic class in the application priority table. This table is transmitted on each DCBX-enabled interface.

The no dcbx application priority and default dcbx application priority commands remove the specified DCBX traffic class priority assignment by deleting the corresponding dcbx application priority command from running-config. When the command does not specify a traffic class, all DCBX traffic class priority assignments are removed.

Command Mode

Global Configuration

Command Syntax

dcbx application [ APPLICATION_TYPE priority ] rank

no dcbx application [ APPLICATION_TYPE priority ]

default dcbx application [ APPLICATION_TYPE priority ]

Parameters
  • APPLICATION_TYPE traffic class receiving the priority assignment. Options include:
    • ether ethertype_number Ethernet traffic. ethertype_number varies from 1536 to 65535.
    • iscsci iSCSCI traffic. Maps to TCP/SCTP ports 860 and 3260.
    • tcp-sctp port_number TCP/SCTP traffic. Port number varies from 1 to 65535.
    • tcp-sctp-udp port_number TCP/SCTP/UDP traffic. Port number varies from 1 to 65535.
    • udp port_number UDP traffic. Port number varies from 1 to 65535.

  • rank priority assigned to traffic class. Values range from 0 to 7.

Examples
  • These commands tell the DCBX peer that iSCSI frames (TCP ports 860 and 3260) should be assigned the given priority of 5.
    switch(config)# dcbx application tcp-sctp 860 priority 5
    switch(config)# dcbx application tcp-sctp 3260 priority 5

  • These commands specify a different priority for the two iSCSI traffic ports.
    switch(config)# dcbx application tcp-sctp 860 priority 3
    switch(config)# dcbx application tcp-sctp 3260 priority 4

  • This command is equivalent to the dcbx application tcp-sctp command. The DCBX peer that iSCSI frames are assigned to is given priority 5.
    switch(config)# dcbx application iscsi priority 5
    switch(config)#

  • These commands prevent the peers from sending anything about the iSCSI frames.
    switch(config)# no dcbx application tcp-sctp 860 priority
    switch(config)# no dcbx application tcp-sctp 3260 priority

dcbx ets

The dcbx ets command configures the enhanced transmission selection (ETS) to the specified QoS group, and sets the traffic class priority and the bandwidth percentage for the packets in the traffic class.

The no dcbx ets and default dcbx ets commands remove the specified DCBX traffic classs priority assignment by deleting the corresponding dcbx ets command from the running-config.

Command Mode

Global Configuration

Command Syntax

dcbx ets [ qos map cos value traffic-class value | traffic-class value bandwidth value ]

no dcbx ets [ qos map cos value traffic-class value | traffic-class value bandwidth value ]

default dcbx ets [ qos map cos value traffic-class value | traffic-class value bandwidth value ]

Parameters
  • qos QoS to configure.(The sub options include):
    • map QoS map to configure.
    • cos CoS value assigned to port. Value ranges from 0 to 7. Default value is 0.
    • traffic-class Assigns the traffic-class priority to the QoS map. The value ranges from 0 to 7.

  • traffic-class Assigns the traffic class priority. The value ranges from 0 to 7. (The sub options include):
    • bandwidth The percentage of bandwidth assigned to the packets received from traffic class. The value ranges from 0 to 100 in percentage. The default value is 0.

Examples
  • This command configures the ETS to the QoS group map and assigns the CoS map value as 7 and sets the traffic class priority to 5.
    switch(config)# dcbx ets qos map cos 7 traffic-class 5

  • This command configures the ETS to the traffic class and sets the traffic class priority value to 7 and sets the bandwidth value to 70 percent.
    switch(config)# dcbx ets traffic-class 7 bandwidth 70

dcbx mode

The dcbx mode command enables DCBX mode on the configuration mode interface. The switch supports IEEE P802.1Qaz. When DCBX is enabled, two TLVs are added to outgoing LLDPDUs, which instruct the peer on the interface to configure PFC (priority flow control) and the application priority table in the same way as the switch.

The no dcbx mode, default dcbx mode, and dcbx mode none commands disable DCBX on the configuration mode interface by removing the corresponding dcbx mode command from running-config.

Command Mode

Interface-Ethernet Configuration

Command Syntax

dcbx mode MODE_NAME

no dcbx mode

default dcbx mode

Parameters

MODE_NAME Specifies the DCBX version. Options include:
  • ieee IEEE version.
  • cee Converged Enhanced Ethernet version.
  • none DCBX is disabled.

Examples
  • These commands enable interface ethernet 2 to use IEEE DCBX.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# dcbx mode ieee
    switch(config-if-Et2)#

  • These commands disable DCBX on interface ethernet 2.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# dcbx mode none
    switch(config-if-Et2)

no priority-flow-control

The no priority-flow-control and default priority-flow-control commands disable the priority flow control (PFC) on the configuration mode interface and restore the default packet drop setting on the interface, which takes effect when PFC is re-enabled. The commands delete all corresponding priority-flow-control commands from running-config.

Command Mode

Interface-Ethernet Configuration

Command Syntax

no priority-flow-control

default priority-flow-control

Example

These commands disable Priority Flow Control (PFC) on interface ethernet 3.
switch(config)# interface ethernet 3
switch(config-if-Et3)# no priority-flow-control
switch(config-if-Et3)#

priority-flow-control

The priority-flow-control command enables Priority Flow Control (PFC) on the configuration mode interface to pause selected traffic classes.

The no priority-flow-control and default priority-flow-control commands disable PFC on the configuration mode interface by deleting the corresponding priority-flow-control command from running-config. The priority-flow-control priority command also disables PFC on the configuration mode interface.

Command Mode

Interface-Ethernet Configuration

Command Syntax

priority-flow-control on

no priority-flow-control on

default priority-flow-control on

Examples
  • These commands enable PFC on interface ethernet 3.
    switch(config)# interface ethernet 3
    switch(config-if-Et3)# priority-flow-control on
    switch(config-if-Et3)#

  • These commands disable PFC on interface ethernet 3.
    switch(config)# interface ethernet 3
    switch(config-if-Et3)# no priority-flow-control
    switch(config-if-Et3)#

platform fm6000 pfc-wm

The platform fm6000 pfc-wm command configures the hardware buffer space allocated to the Priority Flow Control (PFC) RX-Private buffer. The command provides options to configure the buffer size and specify when PFC frames are sent to request that a neighbor stop sending traffic. The default values are as follows:
  • RX-Private: 18400 bytes
  • on (watermark): 9280 bytes
  • off (watermark): 1600 bytes

Values that are entered in the command are rounded up to the closest multiple of 160. The RX-Private value must be greater than the off value, which must be larger than the on value.

The no platform fm6000 pfc-wm and default platform fm6000 pfc-wm commands restore the default settings by removing the platform fm6000 pfc-wm command from running-config.

Command Mode

Global Configuration

Command Syntax

platform fm6000 pfc-wm [ RX-PRIVATE_SIZE ][ PFC-ON_WM ][ PFC-OFF_WM ]

no platform fm6000 pfc-wm

default platform fm6000 pfc-wm

The platform fm6000 pfc-wm command must explicitly configure at least one parameter.

Parameters
  • RX-PRIVATE_SIZE Specifies size of rx-private buffer. Options include:
    • no parameter rx-private buffer retains previously configured size.
    • rx-private 18268 to 102400 Size of rx-private buffer (bytes).

  • PFC-ON_WM Buffer capacity that triggers the switch to send PFC frames. Options include:
    • no parameter Parameter retains previously configured value.
    • on 9134 to 102400 Buffer capacity that triggers PFC frames (bytes).

  • PFC-OFF_WM Buffer capacity that triggers the switch to stop PFC frame transmissions. Options include:
    • no parameter Parameter retains previously configured value.
    • off 1536 to 102400 Buffer capacity that turns off PFC frames.

Related Command

show platform fm6000 pfc-wm displays the PFC RX-Private buffer memory allocations.

Example

This command configures the rx-private hardware buffer.
switch(config)# platform fm6000 pfc-wm rx-private 24800 on 16000 off 3200
switch(config)#

priority-flow-control pause watchdog action

The priority-flow-control pause watchdog action command either drops the traffic on a stuck queue, or error disables the port which has a stuck queue, or notifies if there is no action on the stuck queue. The following actions are performed based on the queue status.

The no priority-flow-control pause watchdog action command removes the specified priority-flow-control pause watchdog action configuration by deleting the corresponding priority-flow-control pause watchdog action command from running-config.

Command Mode

Global Configuration

Command Syntax

priority-flow-control pause watchdog action

no priority-flow-control pause watchdog action

Parameters

action PFC watchdog action for stuck transmit queues. Options include.
  • drop Drop traffic on the stuck queue.
  • errdisable Error disable port which has the stuck transmit queue.
  • notify-only No action on the stuck queue.

Guidelines

Before enabling the PFC watchdog configuration, configure the guaranteed bandwidth on the tx-queue to be monitored. Also, enable the PFC on the port for the PFC priorities for the traffic flowing into the queue that is being monitored.

Example

These commands enables the pfc-watchdog monitoring on tx-queue 3 of Ethernet 1/1, and configures a PFC watchdog action drop and drops the traffic if the queue is a stuck queue.
switch# config
switch(config)# interface Ethernet1/1
switch(config-if-Et1/1)# priority-flow-control on
switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
switch(config-if-Et1/1)# tx-queue 3
switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
switch(config-if-Et1/1-txq-3)# exit
switch(config-if-Et1/1)# exit
switch(config)# priority-flow-control pause watchdog action drop

priority-flow-control pause watchdog default

The priority-flow-control pause watchdog default command monitors all the egress queues which have guaranteed bandwidth enabled and for the priorities on which PFC is enabled. Guaranteed bandwidth is needed to ensure starvation due to higher priority traffic is not wrongly flagged as a stuck-queue due to congestion. The stuck duration after which the port needs to be error disabled is also configurable.

The no priority-flow-control pause watchdog default command removes the specified priority-flow-control pause watchdog configuration by deleting the corresponding priority-flow-control pause watchdog command from running-config.

Command Mode

Global Configuration

Command Syntax

priority-flow-control pause watchdog default

no priority-flow-control pause watchdog default

Parameters

default Specifies the default value. Options include.
  • polling-interval Configures the interval at which the watchdog should poll the queues. The polling interval value ranges from 0.005 to 30 seconds.

  • recovery-time Configures recovery-time after which stuck queue should recover and start forwarding. The recovery-time value ranges from 0.01 to 60 seconds.
    • forced Force recover any stuck queue(s) after the recovery-time interval, irrespective of whether PFC frames are being received or not.

  • timeout Configures timeout after which port should be errdisabled or should start dropping on congested priorities. The timeout value ranges from 0.01 to 60 seconds.

Guidelines

Before enabling the PFC watchdog configuration, configure the guaranteed bandwidth on the tx-queue to be monitored. Also, enable the PFC on the port for the PFC priorities for the traffic flowing into the queue that is being monitored.
  • Polling Interval Discrepancy

    For user configured polling-interval to be valid, it must satisfy the following conditions

    When the recovery-mode is auto and timeout, recovery-time, and polling-interval are non-default, polling-interval <= min (timeout, recovery-time) / 2,

    When recovery-mode is forced or recovery-time is not configured, polling-interval <= (timeout / 2)

    For better functioning of PFC Watchdog, when user configured polling interval is too large compared to either timeout or recovery time values, Watchdog will use auto calculated value instead of user configured value until the discrepancy is resolved. Also, CLI warning and syslog messages are generated to inform user of the discrepancy.

  • CLI Warnings
    When there is discrepancy between timeout and polling-interval, the format of the message is as shown below:
    ! User configured polling interval <user-cfgd polling-interval> second(s) is 
    greater than half of timeout <user-cfgd timeout> second(s). Setting 
    polling-interval to <to-be-used polling-interval> second(s)

    When there is discrepancy between recovery-time and polling-interval, the format of the message is as shown below
    ! User configured polling interval <user-cfgd polling-interval> second(s) is 
    greater than half of recovery-time <user-cfgd recovery-time> second(s). Setting 
    polling-interval to <to-be-used polling-interval> second(s)

Examples
  • These commands enable the pfc-watchdog monitoring on tx-queue 3 of interface ethernet1/1, and configures a PFC congestion timeout of 10 seconds which error-disables the port if the queue is stuck.
    switch# config
    switch(config)# interface ethernet1/1
    switch(config-if-Et1/1)# priority-flow-control on
    switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
    switch(config-if-Et1/1)# tx-queue 3
    switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
    switch(config-if-Et1/1-txq-3)# exit
    switch(config-if-Et1/1)# exit
    switch(config)# priority-flow-control pause watchdog default timeout 10

  • These commands enable the pfc-watchdog monitoring on tx-queue 3 of interface ethernet1/1, and configures a PFC forced recovery-time interval of 30 seconds after which the stuck queue(s) are recovered, irrespective of whether PFC frames are being received or not.
    switch# config
    switch(config)# interface ethernet1/1
    switch(config-if-Et1/1)# priority-flow-control on
    switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
    switch(config-if-Et1/1)# tx-queue 3
    switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
    switch(config-if-Et1/1-txq-3)# exit
    switch(config-if-Et1/1)# exit
    switch(config)# priority-flow-control pause watchdog default recovery-time 30 forced

  • These commands enable the pfc-watchdog monitoring on tx-queue 3 of Ethernet 1/1, and configures a PFC polling-interval of 20 seconds after which queue is polled.
    switch# config
    switch(config)# interface Ethernet1/1
    switch(config-if-Et1/1)# priority-flow-control on
    switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
    switch(config-if-Et1/1)# tx-queue 3
    switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
    switch(config-if-Et1/1-txq-3)# exit
    switch(config-if-Et1/1)# exit
    switch(config)# priority-flow-control pause watchdog default polling-interval 20

priority-flow-control pause watchdog hardware

The priority-flow-control pause watchdog hardware command configures specific PFC priorities as non-disruptive. This will avoid traffic drop on queues corresponding to these priorities are stuck/recovered, the traffic for other priorities are not impacted.

The no priority-flow-control pause watchdog hardware command removes the specified priority-flow-control pause watchdog non-disruptive configuration by deleting the corresponding priority-flow-control pause watchdog hardware command from running-config.

Command Mode

Global Configuration

Command Syntax

priority-flow-control pause watchdog hardware

no priority-flow-control pause watchdog hardware

Parameters

hardware Configure PFC priority through hardware. Options include:
  • non-disruptive PFC watchdog non-disruptive configuration. The priority value ranges from 0 to 7.

Guidelines

Before enabling the PFC watchdog configuration, configure the guaranteed bandwidth on the tx-queue to be monitored. Also, enable the PFC on the port for the PFC priorities for the traffic flowing into the queue that is being monitored.

Example

These commands enable the pfc-watchdog monitoring on tx-queue 3 of interface ethernet 1/1, and configures PFC priorities as non-disruptive on PFC priorities 3 and 4.
switch# config
switch(config)# interface ethernet1/1
switch(config-if-Et1/1)# priority-flow-control on
switch(config-if-Et1/1)# priority-flow-control priority 3 no-drop
switch(config-if-Et1/1)# tx-queue 3
switch(config-if-Et1/1-txq-3)# bandwidth guaranteed 100
switch(config-if-Et1/1-txq-3)# exit
switch(config-if-Et1/1)# exit
switch(config)# priority-flow-control pause watchdog hardware non-disruptive priority 3 4

priority-flow-control priority

The priority-flow-control priority command configures the packet resolution setting on the configuration mode interface. This setting determines if packets are dropped when priority flow control (PFC) is enabled on the interface. Packets are dropped by default.

The no priority-flow-control priority and default priority-flow-control priority commands restore the default packet drop setting on the configuration mode interface by deleting the corresponding priority-flow-control priority command from running-config. The priority-flow-control priority command also restores the default setting on the configuration mode interface.

Command Mode

Interface-Ethernet Configuration

Command Syntax

priority-flow-control priority pack-drop

no priority-flow-control priority

default priority-flow-control priority

Parameters

pack-drop denotes the interfaces. Options include:
  • drop Packets are dropped. Default setting.
  • no drop Packets are not dropped.

Examples
  • These commands in DCBX mode create a priority group that pauses dot1p priority 5 on interface ethernet 2.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# priority-flow-control on
    switch(config-if-Et2)# priority-flow-control priority 5 no-drop

  • These commands enable lossy behavior.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# priority-flow-control on
    switch(config-if-Et2)# priority-flow-control priority 5 drop

  • These commands remove the priority group that pauses dot1p priority 5 on interface ethernet 2.
    switch(config)# interface ethernet 2
    switch(config-if-Et2)# priority-flow-control on
    switch(config-if-Et2)# no priority-flow-control priority

show dcbx

The show dcbx command list DCBX status and the interfaces on which DCBX is enabled.

Command Mode

EXEC

Command Syntax

show dcbx [INTERFACE]

Parameters

INTERFACE Interface type and number. Options include:
  • no parameter all configured DCBX interfaces.
  • ethernet e-num Ethernet interface specified by e-num.

Examples
  • This command displays the DCBX status for ethernet 50.
    switch# show dcbx ethernet 50
    Ethernet50:
      IEEE DCBX is enabled and active
      Last LLDPDU received on Thu Feb 14 12:06:01 2013
      No priority flow control configuration TLV received
      No application priority configuration TLV received
    switch#

  • This command displays the DCBX status for ethernet 50 when Priority Flow Control (PFC) is not enabled.
    switch# show dcbx ethernet 50
    Ethernet50:
      IEEE DCBX is enabled and active
      Last LLDPDU received on Thu Feb 14 12:08:29 2013
      - PFC configuration: willing
        not capable of bypassing MACsec
        supports PFC on up to 4 traffic classes
        PFC enabled on priorities: 5 7
        WARNING: peer PFC configuration does not match the local PFC configuration
      - Application priority configuration:
        2 application priorities configured:
          tcp-sctp 860 priority 5
          tcp-sctp 3260 priority 5
    switch#

show dcbx application-priority-configuration

The show dcbx application-priority-configuration command displays the DCBX peer application priority configuration.

Command Mode

EXEC

Command Syntax

show dcbx [INTERFACE] application-priority-configuration

Parameters

INTERFACE Interface type and number. Options include:
  • no parameter All configured DCBX interfaces.
  • ethernet e-num Ethernet interface specified by e-num.

Guidelines

This command and the show priority-flow-control command function identically.

Example

This command displays the DCBX peer application priority configuration for all DCBX-enabled interfaces.
switch# show dcbx application-priority-configuration
Ethernet1:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
  No application priority configuration TLV received
Ethernet2:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
  No application priority configuration TLV received
...
Ethernet50:
  Last LLDPDU received on Thu Feb 14 12:08:29 2013
  - Application priority configuration:
    2 application priorities configured:
      tcp-sctp 860 priority 5
      tcp-sctp 3260 priority 5
switch#

show dcbx priority-flow-control-configuration

The show dcbx priority-flow-control-configuration command displays the IEEE DCBX peer priority flow control configurations.

Command Mode

EXEC

Command Syntax

show dcbx [ INTERFACE ] priority-flow-control-configuration

Parameters

INTERFACE Interface type and number. Options include:
  • no parameter all configured DCBX interfaces.
  • ethernet e-num Ethernet interface specified by e-num.

Example

This command displays the DCBX peer priority flow control configuration for the DCBX-enabled interfaces on the device.
switch# show dcbx priority-flow-control-configuration 
Ethernet1:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
  No priority flow control configuration TLV received
Ethernet2:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
  No priority flow control configuration TLV received
...
Ethernet50:
  Last LLDPDU received on Thu Feb 14 12:11:29 2013
  - PFC configuration: willing
    not capable of bypassing MACsec
    supports PFC on up to 4 traffic classes
    PFC enabled on priorities: 5 7
    WARNING: peer PFC configuration does not match the local PFC configuration
switch# 

show dcbx status

The show dcbx status command displays the DCBX status on the interfaces on which DCBX is enabled.

Command Mode

EXEC

Command Syntax

show dcbx [INTERFACE] status

Parameters

INTERFACE Interface type and number. Options include:
  • no parameter all configured DCBX interfaces.
  • ethernet e-num Ethernet interface specified by e-num.

Example

This command displays the DCBX status for the DCBX-enabled interfaces.
switch# show dcbx status  
Ethernet1:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
Ethernet2:
  Last LLDPDU received on Thu Feb 14 10:52:20 2013
Ethernet50:
  IEEE DCBX is enabled and active
  Last LLDPDU received on Thu Feb 14 12:11:54 2013
switch#

show interfaces priority-flow-control

The show interfaces priority-flow-control command displays the status of PFC on all interfaces.

Command Mode

EXEC

Command Syntax

show interfaces [ INTERFACE ] priority-flow-control [ INFO_LEVEL ]

Parameters
  • INTERFACE Interface type and numbers. Options include:
    • no parameter Display information for all interfaces.
    • ethernet e_range Ethernet interface range specified by e_range.
    • loopback l_range Loopback interface specified by l_range.
    • management m_range Management interface range specified by m_range.
    • port-channel p_range Port-Channel Interface range specified by p_range.
    • vlan v_range VLAN interface range specified by v_range.
    • VXLAN vx_range VXLAN interface range specified by vx_range.

      Valid range formats include number, number range, or comma-delimited list of numbers and ranges.

  • INFO_LEVEL specifies the type of information displayed. Options include:
    • no parameter Displays information about all DCBX neighbor interfaces.
    • status Displays the DCBX status.
    • counters Displays the DCBX counters.

Guidelines

This command and the show priority-flow-control command function identically.

Example

This command displays the PFC for all interfaces.
switch# show interfaces priority-flow-control 
The hardware supports PFC on priorities 0 1 2 3 4 5 6 7

Port    Enabled Priorities Active Note
Et1     No                 No
Et2     No                 No
...
Et50    Yes          5     Yes
...
Port                 RxPfc           TxPfc
Et1                      0               0
Et2                      0               0
...
Et50                     0               0
...
switch#

show platform fm6000 pfc-wm

The show platform fm6000 pfc-wm command displays the buffer space allocated to the RX-Private buffer and buffer levels that trigger PFC frame transmission activities.

Command Mode

Privileged EXEC

Command Syntax

show platform fm6000 pfc-wm

Related Command

priority-flow-control priority specifies the PFC RX-Private buffer memory allocation.

Example

This command displays the rx-private hardware buffer memory allocation.
switch# show platform fm6000 pfc-wm
Pfc_Rx_Private_WM: 24800 Bytes
Pfc_On_WM: 16000 Bytes
Pfc_Off_WM: 3200 Bytes
switch#

show priority-flow-control

The show priority-flow-control command displays the status and other PFC and PFC watchdog information on all interfaces if no specific interface is specified.

Command Mode

EXEC

Command Syntax

show priority-flow-control [ status | counters | interfaces ]

Parameters
  • interfaces specifies the interface for which the information is displayed. Options include:
    • Ethernet Hardware Ethernet interface.
    • Loopback Loopback interface.
    • Management Management interface.
    • Port-Channel Lag interface.
    • Recirc-Channel Recirculation interface.
    • Tunnel Tunnel interface.
    • Vlan VLAN interface.
    • VXLAN VXLAN Tunnel Interface.

  • status displays the interface PFC status.

  • counters displays the interface PFC counters. Options include:
    • detail displays the DCBX counters for each priority class. This option is available only on Trident switches.
    • watchdog displays the PFC watchdog counters.

Examples
  • This command displays the PFC status on all interfaces.
    switch# show priority-flow-control
    The hardware supports PFC on priorities 0 1 2 3 4 5 6 7
    Port    Enabled Priorities Active Note                                          
    Et1     No                 No                                                   
    Et2     No                 No                                                   
    ...
    Et50    Yes          5     Yes                                                  
    ...
    Port                 RxPfc           TxPfc
    Et1                      0               0
    Et2                      0               0
    ...
    Et50                     0               0
    ...

  • This command displays the PFC watchdog status. If PFC watchdog default timeout is non-zero (in this case it is 3.0) then PFC watchdog is actively running on the switch.
    switch# show priority-flow-control
    The hardware supports PFC on priorities 0 1 2 3 4 5 6 7
    The PFC watchdog default timeout is 3.0
    
    Port   Enabled Priorities Active Note 
    Et1/1   Yes       34      Yes    DCBX disabled 
    Et1/2   Yes       34      Yes    DCBX disabled 
    Et1/3   Yes       34      Yes    DCBX disabled 
    Et1/4   Yes       34      Yes    DCBX disabled
    ...

  • This command displays the current value of these counters for all the interfaces being monitored by PFC watchdog. Alternatively, show interfaces priority-flow-control counters watchdog command can be used for the same.
    switch# show priority-flow-control counters watchdog
    Port       TxQ   Total times   Total times
                     stuck         recovered
    -------   ----   -----------   -----------
    Et1/1      UC2             2             2
    Et1/1      UC3             3             3
    Et2/1      UC2            12            12
    Et2/1      UC3            31            30

  • This command displays the current value of these counters for a specific subset of interfaces. Alternatively, show interfaces priority-flow-control counters watchdog command can be used for the same.
    switch# show priority-flow-control interfaces ethernet 1/1 counters watchdog
    Port       TxQ   Total times   Total times
                     stuck         recovered
    -------   ----   -----------   -----------
    Et1/1      UC2             2             2
    Et1/1      UC3             3             3

  • This command displays the configuration details of PFC watchdog at global and interface level.
    switch# show priority-flow-control status
    The hardware supports PFC on priorities 0 1 2 3 4 5 6 7
    The PFC watchdog timeout is 1.0 second(s)
    The PFC watchdog recovery-time is 2.0 second(s) (auto)
    The PFC watchdog polling-interval is 0.1 second(s)
    The PFC watchdog non-disruptive priorities are 3 4
    The PFC watchdog port non-disruptive-only is False
    
    E: PFC Enabled, D: PFC Disabled, A: PFC Active, W: PFC Watchdog Enabled
    Port     Status  Priorities Note
    Et1/1    E A W    1     7   DCBX disabled
    Et1/2    E A -              DCBX disabled
    Et1/3    D - -
    Et1/4    D - -
    Et2/1    D - -
    ..