目錄

簡介

必要條件

背景資訊

常見原因

輸入丟棄

LACP PDU丟失：

疑難排解

解決方案

已知錯誤

參考

簡介

本檔案介紹如何對nexus 7000上連線埠通道上的輸入捨棄進行疑難排解。

必要條件

思科建議瞭解以下主題：

Nexus 7000系列交換器

F系列線卡

鏈路聚合控制協定

背景資訊

F3線卡將封包排入入口而非出口，並在所有輸入介面上實作虛擬輸出佇列(VOQ)，如此一來，擁塞的出口連線埠就不會影響導向其他出口連線埠的流量。在系統中廣泛使用VOQ有助於確保每個出口的最大吞吐量。一個輸出連線埠上的擁塞不會影響目的地為其他輸出介面的流量，這可以避免原本會導致擁塞擴散的線路頭封鎖(HOLB)。

在突發最佳化模式下，如果IB耗盡，我們應會看到PL中的丟包。在網狀最佳化模式下，丟棄會由於超過閾值而移動到VQ。網格最佳化可避免HOLB丟棄。

VOQ還使用貸記和未貸記流量的概念。單播流量被分類為貸記流量；廣播、組播和未知的單點傳播流量被歸類為不可信流量。不可信流量不使用VOQ，流量在出口而非入口上排隊。如果輸入連線埠沒有將流量傳送到輸出連線埠的信用額，則輸入連線埠會緩衝直到獲得信用額。由於輸入連線埠緩衝區不深，可能會發生輸入捨棄情況。

常見原因

輸入丟棄

- 交換連線埠分析器(SPAN)在F2線路卡上具有目的地連線埠，且其SPAN流量超過線路速率時，會發生輸入捨棄的最常見原因。最後，輸入連線埠會緩衝封包，導致輸入捨棄。

附註：下一代I/O模組（如F2E、F3和M3）不易受導致SPAN目的地連線埠超訂用情況的影響，這些情況會在輸入連線埠上造成內嵌和HOLB。SPAN的准則與限制中也會註明這一點

- 設計不當（如10G的輸入頻寬和1G的輸出頻寬）會觸發F2硬體限制（HOL阻塞）。

- 如果來自多個埠的流量從同一介面（1G到1G或10G到10G介面）流出，則如果超過線路速率，可能會導致輸入埠上出現輸入丟棄情況。

- VLAN不匹配可能會導致輸入丟棄。使用show interface trunk命令以驗證兩台交換器是否轉送相同的VLAN。

LACP PDU丟失：

當埠通道未收到來自鄰居的任何LACP PDU時，該埠通道會被掛起。線卡在輸入（而不是輸出）上對資料包進行排隊，而輸入丟棄則表示由於擁塞而在輸入隊列中丟棄的資料包數。

- 埠邏輯(PL)是決策引擎之前和前面板埠之後的緩衝區。入口埠邏輯上的任何擁塞或流量控制都會阻止或延遲LACP PDU進一步進入導致介面暫停的狀態。VL是高優先順序虛擬通道。如果有高優先順序VL 5流量從擁塞埠進行線頭阻塞的情況，我們將在VL 5的PL中施加背壓，這會導致LACP PDU丟棄。

疑難排解

‘show module’

Mod  Ports  Module-Type                         Model              Status

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

5    0      Supervisor Module-2                 N7K-SUP2E          active *

6    0      Supervisor Module-2                 N7K-SUP2E          ha-standby

7    6      100 Gbps Ethernet Module            N7K-F306CK-25      ok

8    12     10/40 Gbps Ethernet Module          N7K-F312FQ-25      ok

在本示例中，埠通道10（7/1、7/2和7/5）和埠通道20（7/3、7/4和7,6）上的輸入丟棄是由出口介面8/6上的擁塞引起的。這些丟棄是由HOL阻塞引起的。

`show port-channel summary`

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

Group Port-       Type     Protocol  Member Ports

Channel

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

10    Po10(RU)    Eth      LACP      Eth7/1(P)    Eth7/2(P)    Eth7/5(P)

20    Po20(RU)    Eth      LACP      Eth7/3(P)    Eth7/4(P)    Eth7/6(P)

switch# show interface counter errors

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

Port         InDiscards

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

Eth7/1        253323164

Eth7/2        253682395

Eth7/3         66785160               >>>>> input discards on interfaces 7/1-6 are incrementing continuously. These interfaces belong to Po10 and Po20 which eventually goes into suspended state with reason “no LACP PDUs received”

Eth7/4         64770521

Eth7/5        258650104

Eth7/6         66533418

Eth8/6                0

Po10          765655663

Po20          198089099

要確定擁塞的埠：

在VQI上，非零計數器的操作一直都在進行。在擁塞的連線埠上，計數器的使用時間通常都處於高位

.

switch# attach mod 7

Attaching to module 7 ...

To exit type 'exit', to abort type '$.'

module-7# show hardware internal qengine voq-status | ex "0 0 0 0 0 0 0 0 0 0 0 0"

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

| VOQ Status for Queue Driver

| ports 1-48

VQI:CCOS INST0 INST1 INST2 INST3 INST4 INST5

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

0:0      0     0     0     0     0     0

0:1      0     0     0     0     0     0

145:6      0     0     0     0     0     0

145:7      0     0     0     0     0     0

146:0      0     0     0     0     0     0

146:1    14d   130   533   79b   258   447

146:2      5    44     7    12    1a     2

146:3   2325  2277  1ae8  1a39  27bc  1902

146:4      0     0     0     0     0     0

146:5      0     0     0     0     0     0

146:6      0     0     0     0     0     0

146:7      0     0     0     0     0     0

147:0      0     0     0     0     0     0

147:1      0     0     0     0     0     0

147:2      0     0     0     0     0     0

147:3      0     0     0     0     0     0

VQI是146

VQI === 146具有非零計數器，並且不斷增加

轉換為十六進位制：

switch# hex 146

0x92

switch#     show system internal ethpm info module | egrep -i vqi

LTL(0x36), VQI(0x42), LDI(0), IOD(0x14c)

LTL(0x37), VQI(0x43), LDI(0x1), IOD(0x14d)

LTL(0x38), VQI(0x44), LDI(0x2), IOD(0x14e)

LTL(0x39), VQI(0x45), LDI(0x3), IOD(0x14f)

LTL(0x72), VQI(0x8a), LDI(0xc), IOD(0x62)

LTL(0x76), VQI(0x8e), LDI(0x10), IOD(0x63)

LTL(0x7a), VQI(0x92), LDI(0x14), IOD(0xe6)    >>>>>>> VQI 0x92 maps to LTL 0x7a

LTL(0x7e), VQI(0x96), LDI(0x18), IOD(0xe7)

LTL(0x82), VQI(0x9a), LDI(0x1c), IOD(0xe8)

LTL(0x86), VQI(0x9e), LDI(0x20), IOD(0xe9)

使用pixm對映將LTL轉換為物理接口

PIXM管理LTL和FPOE對映以構建通過交換機的硬體轉發路徑

switch# show system internal pixm info ltl 0x7a

Member info

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

Type            LTL

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

PHY_PORT       Eth8/6         >>>> congested egress interface.

確定LACP PDU是否被丟棄

LACP PDU是高優先順序的流量，因此不應預期LACP PDU會因為輸入丟棄而丟棄且埠通道會關閉，除非有高優先級VL 5流量會從擁塞的埠進行線頭阻塞。

為了確認高優先順序VL 5流量是否被丟棄，請運行命令「show hardware queuing drops ingress」，該命令將顯示受影響介面上VL 5的PL丟棄

switch#  show hardware queuing drops ingress

slot  7

=======

Device: Flanker Queue

PL drops:

SOURCE INTERFACE        VL       COUNT

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

Eth7/1                 5        24437734

Eth7/2                 5        24289997

Eth7/3                 5        24449567

Eth7/4                 5        26084373

Eth7/5                 5        27840523

Eth7/6                 5        21043740

通過為受影響的模組運行命令「show hardware internal errors」來確認受影響介面上的VL 5丟棄

switch# show hardware internal errors

`show hardware internal errors`

|------------------------------------------------------------------------|

| Device:Flanker Eth Mac Driver   Role:MAC                     Mod: 7    |

| Device Statistics Category :: ERROR

|------------------------------------------------------------------------|

5236   igr rx pl: cbl drops                          0000000000069679 8 -

5282   egr in pl: total rcvd pkts with drop          0000000001951540 8 -

indication from eb

5321   egr out pl: total pkts dropped due to cbl     0000000000034829 8 -

5477   igr PL: bpdu drops(vl5)                       0000000000004986 2 -          <<<<<<<<<<<

5480   igr PL: nde drops(vl0)                        0000000000098993 2 -

5485   igr PL: nde drops(vl5)                        0000000002291236 2 -          <<<<<<<<<<<

5496   igr PL: Q threshold drop bytecount (vl0)      0000000000344607 2 -

13453  [intr] IPL intr: parser truncated mlh error   0000000000002946 2 -

請注意，丟棄計數器會針對以下內容遞增

igr PL:bpdu捨棄(vl5)

igr PL:nde drops(vl5)

解決方案

為了解決此問題，請確保沒有擁塞，這可以通過增加出口擁塞連線埠上的頻寬或限制到擁塞連線埠的流量來完成。

已知錯誤

CSCvn97534 此錯誤會導致輸出緩衝區鎖定，從而導致輸入丟棄和連線埠通道翻動。

參考

Nexus 7000故障排除：F2/F2e輸入丟棄