- Index
- Preface
- Troubleshooting Overview
- Troubleshooting FCoE Issues
- Troubleshooting Layer 2 Switching Issues
- Troubleshooting QoS Issues
- Troubleshooting SAN Switching Issues
- Troubleshooting Security Issues
- Troubleshooting System Management Issues
- Troubleshooting Virtual Port Channel Issues
- Troubleshooting Config-Sync Issues
- Policy Maps
- Improper Configurations
- PFC
- Link pause (flow control) not enabled on back to back Nexus 5000 switch links
- Cannot enable “pause no-drop” on more than one ethernet class
- Changing no-drop configuration causes VPC peer-link to go down and FEX to go offline
- Pause enabled on all cos values when no-drop enabled on class-ip-multicast
- No drop class not created on N2K-C2148T/N2K-C2248TP-1GE based FEX with default QoS configuration
- How to enable link pause (flow control) on Nexus 5000 interface
- Registers and Counters
- Nexus 5000 10G PFC
- Nexus 5000 1G storm control
- Nexus 5000 10G storm control
- Nexus 5000 storm control counter
- afm-related CLI commands and tools
- FEX qosctrl debug commands
- N2K-C2148T FEX counters
- Nexus 5000 multicast-optimization
- Nexus 5000 FCoE classification
- Nexus 5000 MTU programming
- Nexus 5000 interrupt
- Untagged COS
- Buffer usage and packet drop debugging on N2K-C2232P FEX
Troubleshooting QoS Issues
The Cisco Nexus 5000 Series NX-OS quality of service (QoS) provides the most desirable flow of traffic through a network. QoS uses policies and flow control to classify the network traffic, police and prioritize the traffic flow, and provide congestion avoidance.
This chapter describes how to identify and resolve problems that can occur with QoS in the Cisco Nexus 5000 Series switch.
Policy Maps
The Nexus 5000 QoS implementation follows the Cisco Modular QoS CLI model. It takes three steps to configure the QoS:
- Define the class map.
- Create a policy map to define the action taken for each class map.
- Apply the policy-map.
The Nexus 5000 implements three different types of policy maps:
Additionally, the Nexus 5000 introduces a new configuration context for QoS called the System QoS. The policy-map applied under the System QoS context is applied to the entire switch.
The following table summarizes the function and attach points for these three types of policy maps.
|
|
|
---|---|---|
With the basic process, the incoming packets are compared to the QoS classification rules that are defined by policy-map type qos. The packets are classified into 1 of 8 qos-groups.
Next, the Network-QoS and Queuing policies are applied to the packets. The Queuing policy and the Network-QoS policy define actual QoS parameters for packets belonging to each qos-group.

Note ● The Queuing and Network-QoS policies match the qos-group (identified by policy-map type qos) instead of the actual packet headers.
- When the same type of service policy is applied under the System QoS context and the interface level, the interface level service policy is preferred.
- The queuing policy that is applied under the ingress interface is not applied locally. The queueing policy is the bandwidth allocation for a different class of service that is exchanged with its peer using the DCBX protocol.
Improper Configurations
Cannot pass frame size larger than 2300 bytes through switch
Although the jumbo MTU has been configured for class-default, you cannot pass a frame size larger than 2300 bytes through the Nexus 5000 switch and the Nexus 2000 FEX.
The CoS value may conflict with the existing MTU value.
CoS 7 is used internally for controlling traffic between the Nexus 5000 switch and the Nexus 2000 FEX. The MTU value for the traffic with CoS 7 is set to a fixed value. You must check that the incoming traffic is marked with CoS 7. Use any CoS value other than 7 to avoid this limitation.
MTU for “class-default” value is 1500 when jumbo MTU configured
When the configuration for the network-qos policy-map sets the class-default to jumbo MTU, the show queuing interface command indicates that the MTU for class-default is 1500.
An incorrect startup configuration may exist after an upgrade.
If the switch has been upgraded to the 4.2(1)N1(1) release, make sure that you have used the write erase command to delete the startup configuration. You can save the configuration first to another file name.
After the Nexus 5000 switch boots up with an empty configuration, reapply the original configuration. You might lose your connectivity to the Nexus 5000 if you are using Telnet or SSH. It is recommended that you use the console for this procedure.
Traffic not queued or prioritized correctly on Nexus 2000 FEXs
After configuring all three types of policy maps (QoS, Network-QoS, and Queuing), the traffic is not queued or prioritized correctly on Nexus 2148, Nexus 2232, and Nexus 2248 switches.
The Nexus 2148, Nexus 2232, and Nexus 2248 FEX can only support CoS-based traffic classification. The QoS service policy type configured under System QoS is populated from the Nexus 5000 to FEX only when all the matching criteria are match cos. In a policy map that has match cos and match dscp statements, the FEX programs the cos part of the policy even if the match dscp is configured.

Note Use the show queuing interface command to ensure that the queues have been created properly.
For the ingress traffic (from server to network) that is not marked with a CoS value, the traffic is placed into the default queue on FEX. Once the traffic is received on the Nexus 5000, it is classified based on a configured rule and are placed in the proper queue.
For the egress traffic (from Nexus 5000 to FEX, and then FEX to server), it is recommended that you mark mark the traffic with a CoS value on the Nexus 5000 so that the FEX can classify and queue the traffic properly.
The following example is a complete Nexus 5000 and Nexus 2232/Nexus 2248 configuration that classifies the traffic and configures the proper bandwidth for each type of traffic. This example applies only to the Nexus 5000 and Nexus 2248. The configuration for the Nexus 2148 is slightly different due to the fact that Nexus 2148 has only two queues for user data. The Nexus 2232/Nexus 2248 has six hardware queues for user data, which is the same as Nexus 5000.
The show queuing interface command can be used to ensure that the CoS-to-queue mapping is properly configured under the FEX interfaces. It can also be used to check the bandwidth and MTU configuration.
This same command can be used to check the QoS configuration for the Nexus 5000 interfaces.
The following is the output from the show queuing interface command for the Nexus 2248 interfaces when the above configrations are applied:
The Nexus 2148 has two queues in both the ingress and egress directions. One queue is mapped to the no-drop system class and another queue is mapped to the drop system class. For the ingress direction, the two queues are scheduled using WRR (Weight Round Robin). For the egress direction, the queue for the no-drop system class is the priority queue.
In order to separate traffic for the two queues, the user has to create a no-drop system class. All no-drop system classes created on the Nexus 5000 are mapped to the no-drop queue on the Nexus 2148.
The pause no-drop command is added to the Network-QoS in order for the Nexus 2148 to place voice in the priority queue at the FEX egress direction.
The configuration classifies the incoming voice traffic based on DSCP and marks the voice traffic to CoS 5. At the Nexus 2148 egress direction, the FEX assigns voice traffic to the priority queue.
The following is example output from the show queuing interface command for the Nexus 2148 with the above configuration.
TX Pause counter increments on Nexus 2000 HIF port
The TX Pause counter increments on the Nexus 2000 HIF port.
The TX Pause counter increments might be sent out on FEX Host Interfaces (HIF) only for "no-drops" class traffic when FEX fabric uplinks are congested.
PFC
Link pause (flow control) not enabled on back to back Nexus 5000 switch links
When link pause (flow control) is not enabled on back-to-back Nexus 5000 switch links, packets are dropped while sending traffic on a no-drop class.
If the peer Nexus 5000 switch supports PFC TLV with DCBX, then configuring flowcontrol send on and flowcontrol receive on will not enable the link pause. You have to disable the PFC TLV sent by DCBX on that interface.
Use one of the following commands to verify:
- Use the show interface ethx/y flowcontrol command and check to see if the operating state is off.
- Use the show interface ethx/y priority-flow-control command and check to see if the operating state is on.
Configure the following commands under interface ethx/y to enable link pause instead of PFC on back- to-back switch links.
Cannot enable “pause no-drop” on more than one ethernet class
Cannot enable pause no-drop on more than one Ethernet class.
CLI commands fail with the following error when trying to enable pause no-drop.
Nexus 5000 supports a maximum of three no drop classes (including FCoE). If five Ethernet classes are created, then there will be insufficient buffers to enable twoof the five Ethernet no-drop classes.
You will get an error if not enough buffers exist to enable the no-drop.
If you create five ethernet classes, then there will be an insufficient number of buffers to configure two of the five Ethernet no-drop classes. If you delete two Ethernet classes and configure the remaining three Ethernet classes (including class-default), then no-drop can be enabled on two of the Ethernet classes.
Changing no-drop configuration causes VPC peer-link to go down and FEX to go offline
Changing the QoS no-drop configuration causes the VPC MCT peer-link to go down and FEX to go offline.
The network QoS policy parameters, such as MTU and pause, are treated as type1 parameters and should match between the VPC primary and secondary nodes. If a mismatch exists between the VPC primary and secondary nodes, then the VPC peer-link does not come up and FEX goes offline. Only CoS based class no-drop/MTU parameters are considered as type 1 consistency checked for VPC. If you configure an ACL based class, then it is not treated as a vtype 1 parameter for VPC.
Use one of the following commands to verify:
Configure the similar no-drop class configuration between the VPC primary and secondary nodes. Any mismatch of no-drop policy on nqos CoS-based class parameters causes a type1 inconsistency.
Pause enabled on all cos values when no-drop enabled on class-ip-multicast
Priority flow control enables pause on all CoS values when no-drop is enabled on the class-ip-multicast class.
When you create a class-ip-multicast class and no-drop is enabled, then pause is enabled on all of the CoS values.
Use the show interface ethx/y priority-flow-control command and check that the VL bitmap is enabled for all CoS values (ff).
Use the following commands to enable PFC on CoS 4 only, instead of on all CoS values under the class-ip-multicast class.
No drop class not created on N2K-C2148T/N2K-C2248TP-1GE based FEX with default QoS configuration
The no-drop class is not created on the N2K-C2148T/N2K-C2248TP-1GE based FEX with the default QoS configuration.
The show queuing interface is different for the switchport and HIF port on N2K-C2248TP and N2K-C2148T.
FCoE is not supported on the N2K-C2148T and N2K-C2248TP-1GE based FEX and the no drop class is not created with the default QoS configuration.
Use the following command to verify (check for no-drop class):
show queuing interface eth100/1/1
If you want an ethernet no-drop class on a N2K-C2148T/N2K-C2248TP-1GE FEX, then you have to create an ethernet no-drop class with the following:
How to enable link pause (flow control) on Nexus 5000 interface
Configuring “flowcontrol send on and flowcontrol receive on does not enable flowcontrol on Nexus 5000 switch port links when connected to another Nexus 5000 interface.
By default, the DCBX runs on the Nexus 5000 interface. If the peer does not run DCBX, then the interface is configured for tail-drop.
Use one of the following commands to verify:
- Use the show interface ethx/y flowcontrol command and check to see if the operating state is off.
- Use the show interface ethx/y priority-flow-control command and check to see the if operating state is off.
Use the following commands under interface ethx/y to enable link pause:
Registers and Counters
The following are the commands to access various registers and counters:
Nexus 5000 10G PFC
Nexus 5000 1G storm control
Nexus 5000 10G storm control
Nexus 5000 storm control counter
afm-related CLI commands and tools
FEX qosctrl debug commands
N2K-C2148T FEX counters

Note Use the following commands (in the FEX shell) in preparation to display the statistics of MAC level traffic and pause statistics:
- show plat soft fex info satport <fex-interface-id> (for mapping except in the case of NIF in RW6)
- show plat soft redwood sts
- show plat soft redwood ss
Nexus 5000 multicast-optimization
Nexus 5000 FCoE classification
- For the FC interface, use the following commands.
(The first command is used to get the gatos number and the fc number.)