目錄

簡介

必要條件

需求

採用元件

問題

指令碼如何工作？

NPU計數器

資料鏈路計數器

輸出範例

如何理解輸出？

簡介

本文描述檢測每個埠的Datalink或NPU計數器錯誤增加的指令碼。

必要條件

需求

思科建議您瞭解以下主題：

- StarOs

採用元件

本文件所述內容不限於特定軟體和硬體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

問題

埠級別的錯誤計數器可以是一個很好的資訊來源，用於診斷StarOS節點的各種問題。

在這種情況下，最有價值的資訊就是這些計數器在一定時間段內的變化。

單個「show」命令輸出中可用的靜態值沒有提供足夠的資訊來做出有意義的結論。

典型的方法是收集show命令的多個輸出，然後手動執行不同操作。

這是一項困難的工作，尤其是當不知道哪個埠會受到真正的影響時。

此指令碼通過提供錯誤計數器在每埠一段特定時間內的變化來簡化此過程。

可以檢測到的問題示例：

- MTU不匹配

- VLAN組態錯誤

- DataLink級別錯誤

指令碼如何工作？

在SSD檔案中，show port npu counters和show port datalink counters以幾分鐘間隔的兩次輸出。

這樣便可以在特定時間檢視埠級別計數器，還可以檢視其動態。

此指令碼正在從命令輸出中檢查錯誤計數器，並在觀察到計數器增加時生成警報。

通常，這表示物理或網路級別有問題。根據情況繼續執行故障排除步驟。

NPU計數器

正在觀察以下NPU計數器：

計數器

說明

備註

硬體錯誤

由於先進先出(FIFO)溢位或不足而丟棄的資料包數。

連線埠無法使用

由於埠無法運行而丟棄的資料包數。

SRC MAC為組播

由於源MAC地址為組播而丟棄的資料包數。

未知VLAN標籤

由於無法識別的虛擬區域網(VLAN)標籤而丟棄的資料包數。

檢查下一跳交換機上的VLAN配置

IPv4標頭錯誤

由於IPv4標頭無效而丟棄的資料包數

已超出IPv4 MRU

由於資料包長度太長而丟棄的資料包數。

TCP微小片段

由於TCP小片段而丟棄的資料包數

TTL已過期

由於超出其生存時間引數而被丟棄的資料包數。

太短：IP

由於IP資料包過短而丟棄的資料包數

太短：ICMP

由於ICMP資料包對於查詢金鑰來說太短而丟棄的資料包數

太短：IGMP

由於IGMP資料包對於查詢金鑰太短而丟棄的資料包數

太短：TCP

由於TCP資料包太短（查詢金鑰不足）而丟棄的資料包數

太短：UDP

由於UDP資料包對於查詢鍵來說太短而丟棄的資料包數

太短：IPIP

由於UDP資料包對於查詢鍵來說太短而丟棄的資料包數

顯然是檔案上的打字錯誤。可能是查詢金鑰要短的IPIP資料包。

太短：GRE

由於GRE報頭大小< 8位元組而丟棄的資料包數

太短：GRE金鑰

由於GRE報頭表示存在金鑰但報頭大小小於13位元組而丟棄的資料包數

不損壞丟棄項

由於IP報頭未設定分段位而被NPU丟棄的需要分段的資料包。

IPv4VlanMap dropped

丟棄的IPv4 VLAN對映資料包的總數。

找不到MPLS流

未找到MPLS流時丟棄的資料包總數。

資料鏈路計數器

分析以下資料鏈計數器：

計數器

說明

備註

RX位元組錯誤

接收的位元組數。

TX位元組錯誤

傳輸時出錯的位元組數。

RX OVF

接收的溢位的數量。

TX延遲

由於線路繁忙而在第一次嘗試傳輸時延遲的幀數。

TX COL

傳輸過程中發生的定期衝突事件的數量。

RX短CRC

通過循環冗餘檢查(CRC)錯誤接收的幀數，長度小於64位元組。

TX SCOL

在單個衝突之後無任何錯誤地傳輸的幀數。

RX NO SFD

未檢測到起始幀分隔符(SFD)但帶有載波斷言的接收幀數。

TX MCOL

在發生多次衝突後無任何錯誤地傳輸的幀數。

TX XCOL

發生16次或以上連續衝突的幀數。

TX LCOL

在傳輸長度為64位元的資料包後由於衝突而導致的傳輸中斷數。

TX暫停

正確傳輸的流量控制幀的數量。

RX長CRC

收到大於CRC錯誤的最大幀大小的幀數。

TX ERR

由於傳輸FIFO下溢或TXERR訊號斷言而傳送出錯的幀數

RX暫停

正確接收的流量控制幀數。

RX故障CRS

檢測到錯誤的載波事件數。

RX SYM錯誤

檢測到物理(PHY)符號錯誤的接收幀數。

RX壞幀

收到出錯的幀數。

RX殘餘幀

小於預期大小的接收幀數。

RX超大幀

接收的超大幀數。

可能是文檔中的錯誤。應與「RX OverSize幀」相同

RX OverSize幀

接收的超大幀數。

RX規範CRC

長度介於64位元組和最大幀大小之間的幀數，以整數位元組和循環冗餘檢查(CRC)錯誤接收。

RX NORM ALI

長度介於64位元組和最大幀大小之間的幀數，接收時帶有非整數位元組數和循環冗餘校驗(CRC)錯誤。

RX GPCS ERR

檢測到物理(PHY)符號錯誤的接收幀數。

只有在STM介面可以看到一系列資料連結計數器：

計數器

說明

備註

rx幀FECN集

訊框中繼相關

rx幀BECN集

訊框中繼相關

rx CRC錯誤

rx對齊錯誤

rx長度違規

rx FBP為空

rx主機隊列已滿

rx非法標頭

rx abort

rx奇偶校驗錯誤

rx unsupported DLCI

訊框中繼相關

rx SOP/EOP錯誤

rx total error bytes

tx幀FECN設定

訊框中繼相關

tx幀BECN設定

訊框中繼相關

tx underrun

tx中止的幀

輸出範例

在提供的SSD中觀察到來自show port npu countersorshow port datalink 計數器輸出的某些錯誤或丟棄計數器增加。

該指令碼突出顯示所有要檢查的計數器，但只必須分析增加後的計數器，也就是包含「Following increment observed for port」語句的計數器

請注意，此類增加並不一定表示節點有問題。通常情況下，這是電纜、SFP、配置錯誤或網路級別的問題。

檢查受影響計數器的定義，然後按照此步驟進行故障排除。

########################## NPU COUNTERS ######################################

No errors increase found during monitoring period

######################## DATALINK COUNTERS ###################################

Errors observed in the output of 'show port datalink counters' between  Monday October 01 12:29:49 CDT 2018 and Monday October 01 13:03:24 CDT 2018 on the ports 6/10,6/16,5/15

- Following increase in errors is seen on port 6/10:

RX OverSize frames:Frames: 404

- Following increase in errors is seen on port 6/16:

RX OverSize frames:Frames: 402

- Following increase in errors is seen on port 5/15:

RX OverSize frames:Frames: 3

如何理解輸出？

如果我們在任何埠上感興趣的任何計數器中沒有發現任何變化，則指令碼將返回任何內容。

如果存在與至少一個我們感興趣計數器相關的變體（至少在一個埠上），指令碼將不會生成警報。

警報先按型別（NPU或資料鏈路）分組，然後按埠分組。

首先，將發表一份宣告，概述所有的調查結果和監測週期。

Errors observed in the output of 'show port datalink counters' between  Monday October 01 12:29:49 CDT 2018 and Monday October 01 13:03:24 CDT 2018 on the ports 6/10,6/16,5/15

在2018年10月1日12:29:49 CDT和2018年10月1日13:03:24 CDT之間，也就是大約半個小時。

時間戳從show port datalink counters或（分別為）show port npu計數器的輸出中獲取

然後，會提供每個埠識別的問題計數器的摘要。

- Following increase in errors is seen on port 6/16:

RX OverSize frames:Frames: 402

在上述示例中，監控期間（大約半小時）在6/16埠上接收了402個超大幀。