DCBX and Flow Control
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.
- 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.
- 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.
- 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
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
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.
- 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
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.
Example
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
- 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
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.
Example
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.
- 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.
- 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
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
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
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
Configuration Commands
Show 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 ]
- 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.
- 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 ]
- 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.
- 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
- ieee IEEE version.
- cee Converged Enhanced Ethernet version.
- none DCBX is disabled.
- 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
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
- 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
- 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.
- 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
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
- 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
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
- 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
- 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 WarningsWhen 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)
- 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
- 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
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
- drop Packets are dropped. Default setting.
- no drop Packets are not dropped.
- 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
- no parameter all configured DCBX interfaces.
- ethernet e-num Ethernet interface specified by e-num.
- 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
- 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
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
- no parameter all configured DCBX interfaces.
- ethernet e-num Ethernet interface specified by e-num.
Example
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
- no parameter all configured DCBX interfaces.
- ethernet e-num Ethernet interface specified by e-num.
Example
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 ]
- 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
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
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 ]
- 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.
- 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 - - ..