目录

简介

先决条件

要求

使用的组件

排除输入丢弃故障

确定超订用出口端口

其他VQI映射信息

简介

本文档介绍如何对Cisco Nexus 7000系列F1-Module上的输入丢弃进行故障排除。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档中的信息基于以下软件和硬件版本：

- 思科 Nexus 7000 系列交换机

- Cisco Nexus 7000 F1系列，32端口，1和10千兆以太网模块

- Cisco Nexus操作系统(NX-OS)5.X及更高版本

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

排除输入丢弃故障

当观察F1系列线卡上的输入丢弃时，通常意味着出口端口已超订用。在大多数线卡上，此场景导致出口接口上的输出丢弃；但是，当数据包的仲裁为F1到F1，并且流量已计入时，在入口端口上可以看到输入丢弃。

Switch#show interface eth 1/8

Ethernet1/8 is up

Hardware: 1000/10000 Ethernet, address: 503d.e5df.a785 (bia 503d.e5df.a785)

.

.

Load-Interval #2: 5 minute (300 seconds)

input rate 168 bps, 0 pps; output rate 3.78 Kbps, 3 pps

RX

15539560971 unicast packets  3466668 multicast packets  0 broadcast packets

15542893003 input packets  8720803713147 bytes

4384352384 jumbo packets  0 storm suppression packets

0 runts  0 giants  0 CRC  0 no buffer

0 input error  0 short frame  0 overrun   0 underrun  0 ignored

0 watchdog  0 bad etype drop  0 bad proto drop  0 if down drop

0 input with dribble  4029156 input discard

0 Rx pause

TX

7409231138 unicast packets  125221759 multicast packets  127954348 broadcast packets

7662272650 output packets  2001593436247 bytes

472864528 jumbo packets

0 output error  0 collision  0 deferred  0 late collision

0 lost carrier  0 no carrier  0 babble  0 output discard

0 Tx pause

1 interface resets

在F1系列线卡上，既有已计入的流量，也有未计入的流量。计费流量称为单播。所有其他流量（如组播、广播和未知单播）的特征都为未计入。

在通过交换矩阵将数据包发送到出口线卡之前，已计入的流量需要来自出口ASIC的积分。在M1系列线卡上，Octopus ASIC用于仲裁，因此数据包可以在出口端口ASIC状态已知之前通过交换矩阵移动到出口模块。如果出口端口ASIC负载过重，则数据包在已知之前到达，因此它会被丢弃并记录为输出丢弃。

F1系列线卡具有芯片上的交换机(SOC)，该交换机用作仲裁ASIC和端口ASIC。这意味着线路卡知道它是否没有处理数据包所需的带宽，并且它不为入口端口ASIC提供信用，这会导致数据包被丢弃并记录为输入丢弃。

确定超订用出口端口

一旦发现输入丢弃增加，您必须发现出口上超订用的端口。您可以使用以下命令来识别超订用出口端口：

Attach module X

Show hardware internal qengine asic Y memory vq-head-tail

Show hardware internal qengine sw vqi-map

您必须采取的初始操作是确定输入丢弃增加的接口。在本例中，接口为Eth1/8。

注意：输入丢弃数量增加，或者在vq-head-tail命令输出中看不到这些输入丢弃数量，这一点很重要。

然后，您必须确定端口所在的ASIC。在F132线卡上，每个ASIC有两个端口，以ASIC 0开头。例如，端口1和2在ASIC 0上，端口3和4在ASIC 1上，端口5和6在ASIC 2上。在本例中，Eth1/8接口位于ASIC 3上。

注意：在运行这些命令之前，请确保连接到您看到输入丢弃的模块。

以下为示例输出：

Switch# attach module 1

module-1# show hardware internal qengine asic 3 memory vq-head-tail

+------------------------------------------------------------------

| VQ head tail for Orion Xbar Driver

| Inst 3

|

INDEX     THRESHOLD      HEAD       TAIL      PACKET COUNT     Q-LENGTH

_____     _________     ______     ______     ____________     ________

23        1             5936       10086      1084             2168

136       0             6702       6702       0                0

4096      0             3607       3607       0                0

在本例中，索引23具有非常高的数据包计数和Q长度。这表示此虚拟队列索引(VQI)的索引接收的流量过多，并且它不发送信用，因此流量会在出口发送到它。因此，它会丢弃入口上的数据包。

为了确定VQI本身，请将索引除以4（常数），然后保留余数。以下是索引23的示例：

23/4 = 5（余数为3），因此指数23的VQI为5。

输入show hard int qengine sw vqi-map命令，以确定此VQI映射的接口：

module-1# show hard int qengine sw vqi-map

Supervisor VQI info:

--------------------

sup 0 slot          : 4

sup 1 slot          : 5

sup xbar mask       : 0x000003ff

| sup0 | sup1 |   sup0    |   sup1    |          |

vqi |  vqi |  vqi | fpoe base | fpoe base | num fpoe | lb_type

----+------+------+-----------+-----------+----------+-----------

32 |   32 |   32 |        36 |        44 |        1 | non-spread

33 |   33 |   33 |        37 |        45 |        1 | non-spread

34 |   34 |   34 |        32 |        40 |        4 | spread

35 |   35 |   35 |        32 |        40 |        4 | spread

VQI property map:

-----------------

vqi | asic | ldi | sl | sup | sprd | xbar | fpoe | #  | hdr  | xbar | vqi | lcl

| inst |     |    | vqi | type | mask | base | dl | type | asic | typ | pqi

-----+------+-----+----+-----+------+------|------+----+------+------+-----+----

0 |    0 |   0 |  0 |  no |  rr  | 0155 |    0 |  1 |  v5  |  scz |   0 |   0

1 |    0 |   1 |  0 |  no |  rr  | 0155 |    0 |  1 |  v5  |  scz |   0 |   1

2 |    1 |   2 |  0 |  no |  rr  | 0155 |    1 |  1 |  v5  |  scz |   0 |   2

3 |    1 |   3 |  0 |  no |  rr  | 0155 |    1 |  1 |  v5  |  scz |   0 |   3

4 |    2 |   4 |  0 |  no |  rr  | 0155 |    2 |  1 |  v5  |  scz |   0 |   4

5 |    2 |   5 |  0 |  no |  rr  | 0155 |    2 |  1 |  v5  |  scz |   0 |   5

在输出的VQI属性映射部分，标识您之前计算的VQI(vqi)、插槽(sl)和其映射到的本地端口队列索引(PQI)(lcl pqi)。以下是此输出的值：

- vqi = 5

- sl = 0（模块1）

- lcl pqi = 5（端口6）

注意：在本例中，vqi和lcl pqi 值相同，但通常情况并非如此。

如图所示，VQI 5位于插槽0，即从零计数时的模块1。LCL PQI为5，位于端口6。因此，Eth1/6接口在出口上超订用，这会导致入口接口上的输入丢弃，以发往出口上该端口的流量。

其他VQI映射信息

VQI和本地目标索引(LDI)分配在模块联机时确定。VQI（当前）固定为12 Gb/s，根据模块类型以不同方式分配。本示例中用于F1的映射不适用于所有模块。确保输入show system internal ethpm info interface ethernet命令以确认分配给端口的VQI和LDI。

例如，以下是来自多个模块的端口17的信息：

- M132（端口Eth3/17）

N7KA# show system internal ethpm info interface ethernet 3/17 | i VQI

LTL(0x90), VQI(0x64), LDI(0x6), IOD(0x50)

- M148（端口Eth5/17）

N7KA# show sys int ethpm info interface ethernet 5/17 | i VQI

LTL(0x30), VQI(0x7), LDI(0x3), IOD(0xe1)

- F132（端口Eth4/17）

N7KA# show sys int ethpm info interface ethernet 4/17 | i VQI

LTL(0x10), VQI(0x1c), LDI(0x10), IOD(0x26)

- F248（端口Eth6/17）

N7KA# show system internal ethpm info interface ethernet 6/17 | i VQI

LTL(0x60), VQI(0x3d), LDI(0x11), IOD(0x11d)

以下是这些接口的show hardware internal qengine vqi-map命令的输出：

N7KA# show hardware internal qengine vqi-map

VQI   SUP  SLOT  LDI  EQI  FPOE  NUM  XBAR   IN   ASIC  ASIC  SV  FEA_

NUM   VQI  NUM   NUM  NUM  BASE  DLS  MASK   ORD  TYPE  IDX   ID  TURE

----  ---  ----  ---  ---  ----  ---  -----  ---  ----  ----  --  ----

7     no   4     3    3    32    4    0x3ff  0    0     0     0   0x0  <--- port 5/17

28    no   3     16   0    168   1    0x155  0    ORI   8     0   0x81 <--- port 4/17

61    no   5     17   2    44    1    0x155  0    CLP   4     0   0x80 <--- port 6/17

100   no   2     6    2    20    4    0x3ff  0    0     1     0   0x0  <--- port 3/17

(shows only VQIs 0x64, 0x7, 0x1c, 0x3d)