目录

简介

先决条件

要求

使用的组件

问题

脚本如何工作？

NPU计数器

数据链路计数器

输出示例

如何了解输出？

简介

本文档介绍检测每个端口错误Datalink或NPU计数器增加的脚本。

先决条件

要求

Cisco 建议您了解以下主题：

- StarOs

使用的组件

本文档不限于特定的软件和硬件版本。

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

问题

端口级错误计数器可能是StarOS节点的各种问题故障排除的重要信息来源。

在本例中，最有价值的信息是这些计数器在一定时间段内的变化。

单个“show”命令输出中可用的静态值不能提供足够的信息来得出有意义的结论。

典型的方法是收集show命令的多个输出，然后手动进行区别。

这可能是一项艰巨的任务，尤其是当不知道具体会影响哪个端口时。

此脚本通过提供每个端口在特定时间段内的错误计数器变化来简化此过程。

可检测到的问题示例：

- MTU不匹配

- VLAN配置错误

- 数据链路级错误

脚本如何工作？

在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已丢弃

已丢弃的IPv4 VLAN映射数据包总数。

找不到MPLS流

找不到MPLS流时丢弃的数据包总数。

数据链路计数器

分析以下数据链路计数器：

计数器

描述

备注

RX字节错误

接收的字节数。

TX字节错误

传输时出错的字节数。

RX OVF

收到的溢流数。

TX延迟

因线路繁忙而在首次尝试传输时延迟的帧数。

TX列

传输过程中发生的常规冲突事件数。

RX短CRC

接收的帧数（长度小于64字节），带有循环冗余校验(CRC)错误。

TX SCOL

单次冲突后传输的帧数，无任何错误。

RX无SFD

未检测帧首定界符(SFD)但带载波断言的接收帧数。

TX MCOL

在多次冲突后无错误传输的帧数。

TX XCOL

经历16次或更多次连续冲突的帧数。

TX LCOL

在传输长度为64by的数据包后发生的冲突导致传输中断的次数。

TX暂停

正确传输的流量控制帧数。

RX长CRC

接收的帧数（大于最大帧大小），并带有CRC错误。

TX错误

由于传输FIFO下流或TXERR信号断言而传输的帧数

RX暂停

正确接收的流控帧数。

RX FALS CRS

检测到的误载事件数。

RX SYM错误

检测到物理(PHY)符号错误的已接收帧数。

RX错误帧

收到的有错误的帧数。

RX残帧

接收的小于预期大小的帧数。

RX超大帧

收到的超大帧数。

可能是文档出错。应与“RX OverSize帧”相同

RX OverSize帧

接收的超大帧数。

RX范数CRC

接收的帧数（长度介于64字节和最大帧大小之间），包含整数字节数和循环冗余校验(CRC)错误。

RX范数ALI

接收的帧数（长度在64字节和最大帧大小之间），其中字节数非整数，并且存在循环冗余校验(CRC)错误。

RX GPCS错误

检测到物理(PHY)符号错误的已接收帧数。

仅对STM接口可见一系列数据链路计数器：

计数器

描述

备注

rx帧FECN集

帧中继相关

rx帧BECN集

帧中继相关

Rx CRC Errors

RX校准错误

RX长度违规

rx FBP为空

rx host queue full

RX非法报头

rx abort

RX奇偶校验错误

rx不支持的DLCI

帧中继相关

rx SOP/EOP错误

接收总错误字节

tx帧FECN集

帧中继相关

tx帧BECN集

帧中继相关

tx underrun

tx中止帧

输出示例

在提供的SSD中观察到show port npu countersorshow port datalink countersoutput中的某些错误或丢弃计数器的增加。

脚本突出显示所有要检查的计数器，但必须只分析增加的计数器，即包含“观察到端口的增加后”语句

请注意，此类增加不一定指向节点问题。通常，这是电缆、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或Datalink）分组，然后按端口分组。

首先，会有一份声明，总结所有调查结果和监控期。

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 2018年10月1日（星期一），即大约半小时。

时间戳取自show port datalink计数器或show port npu计数器的输出或输出。

之后，每个端口都会发现问题计数器的摘要。

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

RX OverSize frames:Frames: 402

在上述示例中，在监控期间（大约半小时），6/16端口上收到402个超大帧。