目錄

簡介

必要條件

需求

採用元件

排除輸入丟棄故障

識別超額訂閱的出口埠

其他VQI對映資訊

簡介

本文描述如何對Cisco Nexus 7000系列F1模組上的輸入丟棄進行故障排除。

必要條件

需求

本文件沒有特定需求。

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- Cisco Nexus 7000 系列交換器

- Cisco Nexus 7000 F1系列、32埠、1和10 Gigabit乙太網模組

- 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值是相同的，但通常不是這種情況。

如圖所示，5的VQI位於插槽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)