此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍用于跟踪Cisco Nexus 9000云规模ASIC模块上观察到的CRC错误源的步骤。
Cisco建议您了解直通交换和存储转发交换的基础知识。思科还建议您了解Ethernet Frame Check Sequence (FCS)字段的基础知识以及FCS字段使用的循环冗余校验(CRC)算法。有关详细信息,请参阅以下文档:
本文档中的信息基于Cisco Nexus 9000系列交换机,这些交换机具有运行NX-OS软件版本7.0(3)I7(8)的云规模ASIC。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
本文档还介绍用于区分在模块化Nexus交换机的物理接口和内部交换矩阵链路上观察到的堆叠和非堆叠CRC错误的步骤。
默认情况下,Cisco Nexus 9000系列交换机使用直通交换。直通交换是指交换机对帧做出转发决定,并在处理了足够的帧报头做出有效转发决定后立即开始从出口接口转发帧。这不同于存储转发交换,存储转发交换是指交换机在将帧从出口接口转发出去之前缓冲整个帧。
以太网帧的FCS字段用于验证帧的完整性并确保帧在传输过程中未损坏。以太网帧的FCS字段位于该帧负载后面的以太网帧的末尾。在存储转发交换模式下运行的交换机能够使用FCS字段验证以太网帧的完整性,然后再将帧从出口接口转发出去(或者如果FCS字段包含无效内容,则丢弃该帧)。但是,在直通交换模式下运行的交换机在将帧从出口接口转发出去之前无法使用FCS字段验证以太网帧的完整性;换言之,当直通交换机能够验证以太网帧的完整性时,大多数以太网帧已经从出口接口转发出去。
如果以直通交换模式运行的交换机收到包含无效FCS字段的以太网帧,该交换机可以执行以下操作:
本文档介绍验证与入口接口关联的CRC计数器是正常CRC(通常表示连接到入口接口的链路上的物理层问题)还是堆叠CRC(表示连接到入口接口的设备也在直通交换模式下运行并且收到错误的以太网帧)的步骤。
本文档中介绍的过程仅适用于以下硬件:
本文档的此部分介绍用于确定Cisco Nexus 9200和9300系列交换机上特定物理接口Ethernet1/1上观察到的CRC错误源的分步说明。
从NX-OS软件版本10.2(1)开始,配备云规模ASIC的Nexus交换机在流经交换机的以太网帧的FCS字段中为具有堆叠CRC的数据包提供新的接口计数器。可以使用show interface命令通过增加非零CRC计数器和增加CRC计数器来识别物理接口。这里显示了一个示例,其中物理接口Ethernet1/1具有零CRC计数器和非零堆叠CRC计数器,这表明该接口上接收了具有无效和堆叠CRC的帧。
switch# show interface
<snip>
Ethernet1/1 is up
admin state is up, Dedicated Interface
Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2bbe)
MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, medium is broadcast
Port mode is trunk
full-duplex, 10 Gb/s, media type is 10G
Beacon is turned off
Auto-Negotiation is turned on FEC mode is Auto
Input flow-control is off, output flow-control is off
Auto-mdix is turned off
Rate mode is dedicated
Switchport monitor is off
EtherType is 0x8100
EEE (efficient-ethernet) : n/a
admin fec state is auto, oper fec state is off
Last link flapped 04:09:21
Last clearing of "show interface" counters 00:50:37
0 interface resets
RX
8 unicast packets 253 multicast packets 2 broadcast packets
1832838280 input packets 2199405650587 bytes
0 jumbo packets 0 storm suppression bytes
0 runts 0 giants 1832838019 CRC 0 no buffer
1832838019 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 0 input discard
0 Rx pause
1832838019 Stomped CRC
TX
908 unicast packets 323 multicast packets 3 broadcast packets
1234 output packets 113342 bytes
0 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
注意:递增的CRC计数器表示收到的帧带有堆叠的CRC或无效但非堆叠的CRC。增加的CRC计数表示收到具有增加CRC的帧。
或者,show interface counters errors non-zero命令可用于查看接口错误计数器。这里显示一个示例。
switch# show interface counters errors non-zero
--------------------------------------------------------------------------------
Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards
--------------------------------------------------------------------------------
Eth1/1 1790348828 1790348828 0 1790348828 0 0
--------------------------------------------------------------------------------
Port Single-Col Multi-Col Late-Col Exces-Col Carri-Sen Runts
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Port Giants SQETest-Err Deferred-Tx IntMacTx-Er IntMacRx-Er Symbol-Err
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Port InDiscards
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Port Stomped-CRC
--------------------------------------------------------------------------------
Eth1/1 1790348828
您可以通过show interface命令与json或json-pretty命令进行管道连接,以结构化格式获取CRC和增强的CRC计数器统计信息。这里显示一个示例。
switch# show interface Ethernet1/1 | json-pretty | include ignore-case crc
"eth_crc": "828640831",
"eth_stomped_crc": "828640831",
NX-API REST API可用于使用sys/intf/phys-[intf-id]/dbgEtherStats.json对象模型检索这些相同的统计信息。这里显示一个示例。
/api/node/mo/sys/intf/phys-[eth1/1]/dbgEtherStats.json
{
"totalCount": "1",
"imdata": [
{
"rmonEtherStats": {
"attributes": {
"cRCAlignErrors": "26874272810",
"dn": "sys/intf/phys-[eth1/1]/dbgEtherStats",
"dropEvents": "0",
"rXNoErrors": "26874276337",
"stompedCRCAlignErrors": "26874272810",
...
}
}
}
]
}
对于10.2(1)之前的NX-OS软件版本,堆叠的CRC计数器在接口上不可用。需要执行几个步骤来确定观察到无效CRC的入口接口,并验证CRC是否无效或堆叠。
使用show interface命令标识非零CRC计数器递增的物理接口。这里显示的示例,其中物理接口Ethernet1/1具有非零CRC计数器。
switch# show interface
<snip> Ethernet1/1 is up admin state is up, Dedicated Interface Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2bbe) MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 10 Gb/s, media type is 10G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 04:09:21 Last clearing of "show interface" counters 00:50:37 0 interface resets RX 3 unicast packets 3087 multicast packets 0 broadcast packets 3097 input packets 244636 bytes 7 jumbo packets 0 storm suppression bytes 0 runts 7 giants 7 CRC 0 no buffer 7 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 0 input discard 0 Rx pause
或者,您可以使用show interface counters errors non-zero命令显示具有非零错误计数器的所有接口(包括非零CRC计数器)。此处显示的示例,其中物理接口Ethernet1/1的CRC计数器通过FCS-Err列显示。
switch# show interface counters errors non-zero <snip> -------------------------------------------------------------------------------- Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards -------------------------------------------------------------------------------- Eth1/1 7 7 0 7 0 0
使用show interface hardware-mappings命令确定三个主要特征:
此处的示例说明了这一点,其中物理接口Ethernet1/1与Cloud Scale ASIC 0、MAC block 4和MAC block子端口0关联。
switch# show interface hardware-mappings
<snip>
-------------------------------------------------------------------------------------------------------
Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID
-------------------------------------------------------------------------------------------------------
Eth1/1 1a000000 1 0 16 255 0 -1 0 16 32 4 0 1 0 32
Eth1/2 1a000200 1 0 17 255 4 -1 0 17 34 4 2 5 0 34
Eth1/3 1a000400 1 0 18 255 8 -1 0 18 36 4 4 9 0 36
Eth1/4 1a000600 1 0 19 255 12 -1 0 19 38 4 6 13 0 38
Eth1/5 1a000800 1 0 12 255 16 -1 0 12 24 3 0 17 0 24
使用slot {x} show hardware internal tah counters asic {y}命令查看Cloud Scale ASIC的寄存器计数器。此命令包含两个变量:
此输出可以显示一个表。表的每一行都是不同的ASIC寄存器。该表的每一列都与交换机上的一个物理接口对应。每列使用的名称不是物理接口的名称,而是MAC块和MAC块子端口的组合。用于列标题的格式如下:
M{A},{B}-{InterfaceSpeed}
此格式有三个变量,分别是:
此处的示例演示了这一点。请回想一下,物理接口Ethernet1/1与板卡插槽编号1和Cloud Scale ASIC 0关联,这意味着您必须运行的命令是slot 1 show hardware internal tah counters asic 0。与物理接口Ethernet1/1关联的MAC块为4,与物理接口Ethernet1/1关联的MAC块子端口为0,物理接口Ethernet1/1为10G接口。因此,我们要查找的列报头是M4,0-10G。
注意:此命令的输出非常长且宽。在终端会话中可能难以读取此输出。Cisco建议使用terminal width 511命令最大化您的终端的宽度,并将此输出复制到外部文本阅读器/编辑器以进行审阅。
switch# slot 1 show hardware internal tah counters asic 0 <snip> *************** PER MAC/CH SRAM COUNTERS **************** REG_NAME M4,0-10G M4,2-10G M4,4-10G M4,6-10G M5,0-40Gx4 M6,0-40Gx4 M7,0-40Gx4 M8,0-10G ---------------------------------------------------------------------------------------------------------------------------- 02-RX Frm with FCS Err .... .... .... .... .... .... .... .... 16-RX Frm CRC Err(Stomp) c .... .... .... .... .... .... ....
此命令的输出包含几十个寄存器计数器。有两个关键寄存器计数器与区分自然CRC错误和堆积的CRC相关:
这些计数器的值以十六进制表示。dec NX-OS命令可将十六进制值转换为十进制值,如此处所示。
N9K-C93180YC-EX-2# dec 0xc
12
两个寄存器计数器的组合值等于通过show interface或show interface counters errors non-zero的输出在物理接口上观察到的CRC数。
本文档的此部分介绍用于确定Cisco Nexus 9500系列交换机上特定物理接口Ethernet1/1上观察到的CRC错误源的分步说明。
Nexus 9500系列交换机上的每个线卡都通过内部链路(iEth)连接到交换矩阵模块。每个线卡的每个ASIC与所有交换矩阵模块都使用全网状连接。此处的示例显示一个线卡具有四个Sugarbowl ASIC,内部链路连接到模块化Nexus 9500交换机中的四个交换矩阵模块。
当ASIC接收的流量需要出口另一个ASIC或线卡时,该流量需要通过交换矩阵模块发送到交换矩阵。入口ASIC根据数据包报头的散列值以及可用于ASIC的iEth链路数量来选择到交换矩阵模块的一个iEth链路。
请使用show system internal fabric connectivity module {x}命令(其中{x}是板卡或矩阵模块插槽编号)显示指定板卡与所有矩阵模块之间的内部链路。此输出显示一个表,其中每行显示线卡内部链路(在LC-iEthLink列下)与每个交换矩阵模块内部链路(在FM-iEthLink列下)之间的一对一映射。此处显示的示例来自插入了8个线卡和4个交换矩阵模块的Nexus 9508交换机。此处的输出显示,插入交换机插槽8中的线卡的每个ASIC实例通过2条内部链路连接到4个安装的交换矩阵模块(插入插槽22、23、24和26)中的每个。
Nexus9500# show system internal fabric connectivity module 8
Internal Link-info Linecard slot:8
------------------------------------------------------------------------
LC-Slot LC-Unit LC-iEthLink MUX FM-Slot FM-Unit FM-iEthLink
------------------------------------------------------------------------
8 0 iEth01 - 22 0 iEth18
8 0 iEth02 - 22 1 iEth50
8 0 iEth03 - 23 0 iEth18
8 0 iEth04 - 23 1 iEth50
8 0 iEth05 - 24 0 iEth18
8 0 iEth06 - 24 1 iEth50
8 0 iEth07 - 26 0 iEth18
8 0 iEth08 - 26 1 iEth50
8 1 iEth09 - 22 0 iEth03
8 1 iEth10 - 22 1 iEth35
8 1 iEth11 - 23 0 iEth03
8 1 iEth12 - 23 1 iEth35
8 1 iEth13 - 24 0 iEth03
8 1 iEth14 - 24 1 iEth35
8 1 iEth15 - 26 0 iEth03
8 1 iEth16 - 26 1 iEth35
8 2 iEth17 - 22 0 iEth32
8 2 iEth18 - 22 1 iEth53
8 2 iEth19 - 23 0 iEth32
8 2 iEth20 - 23 1 iEth53
8 2 iEth21 - 24 0 iEth32
8 2 iEth22 - 24 1 iEth53
8 2 iEth23 - 26 0 iEth32
8 2 iEth24 - 26 1 iEth53
8 3 iEth25 - 22 0 iEth31
8 3 iEth26 - 22 1 iEth54
8 3 iEth27 - 23 0 iEth31
8 3 iEth28 - 23 1 iEth54
8 3 iEth29 - 24 0 iEth31
8 3 iEth30 - 24 1 iEth54
8 3 iEth31 - 26 0 iEth31
8 3 iEth32 - 26 1 iEth54
同样,可以从交换矩阵模块的角度检查iEth链路映射。此处显示了这方面的一个示例,其中显示了插入插槽22中的交换矩阵模块与安装在Nexus 9508机箱中的8个线卡中的每一个之间的内部链路。
Nexus9500# show system internal fabric connectivity module 22
Internal Link-info Fabriccard slot:22
------------------------------------------------------------------------
FM-Slot FM-Unit FM-iEthLink LC-Slot LC-Unit LC-EthLink MUX
------------------------------------------------------------------------
22 0 iEth09 1 0 iEth01 -
22 0 iEth06 1 1 iEth11 -
22 0 iEth25 1 2 iEth21 -
22 0 iEth26 1 3 iEth31 -
22 0 iEth10 2 0 iEth01 -
22 0 iEth05 2 1 iEth11 -
22 0 iEth23 2 2 iEth21 -
22 0 iEth24 2 3 iEth31 -
22 0 iEth12 3 0 iEth01 -
22 0 iEth11 3 1 iEth11 -
22 0 iEth21 3 2 iEth21 -
22 0 iEth22 3 3 iEth31 -
22 0 iEth14 4 0 iEth01 -
22 0 iEth13 4 1 iEth11 -
22 0 iEth07 4 2 iEth21 -
22 0 iEth08 4 3 iEth31 -
22 0 iEth16 5 0 iEth01 -
22 0 iEth15 5 1 iEth11 -
22 0 iEth01 5 2 iEth21 -
22 0 iEth04 5 3 iEth31 -
22 0 iEth20 6 0 iEth01 -
22 0 iEth17 6 1 iEth11 -
22 0 iEth28 6 2 iEth21 -
22 0 iEth27 6 3 iEth31 -
22 0 iEth19 7 0 iEth01 -
22 0 iEth02 7 1 iEth09 -
22 0 iEth30 7 2 iEth17 -
22 0 iEth29 7 3 iEth25 -
22 0 iEth18 8 0 iEth01 -
22 0 iEth03 8 1 iEth09 -
22 0 iEth32 8 2 iEth17 -
22 0 iEth31 8 3 iEth25 -
22 1 iEth41 1 0 iEth02 -
22 1 iEth38 1 1 iEth12 -
22 1 iEth59 1 2 iEth22 -
22 1 iEth60 1 3 iEth32 -
22 1 iEth42 2 0 iEth02 -
22 1 iEth37 2 1 iEth12 -
22 1 iEth62 2 2 iEth22 -
22 1 iEth61 2 3 iEth32 -
22 1 iEth44 3 0 iEth02 -
22 1 iEth43 3 1 iEth12 -
22 1 iEth64 3 2 iEth22 -
22 1 iEth63 3 3 iEth32 -
22 1 iEth46 4 0 iEth02 -
22 1 iEth45 4 1 iEth12 -
22 1 iEth39 4 2 iEth22 -
22 1 iEth40 4 3 iEth32 -
22 1 iEth48 5 0 iEth02 -
22 1 iEth47 5 1 iEth12 -
22 1 iEth36 5 2 iEth22 -
22 1 iEth33 5 3 iEth32 -
22 1 iEth52 6 0 iEth02 -
22 1 iEth49 6 1 iEth12 -
22 1 iEth57 6 2 iEth22 -
22 1 iEth58 6 3 iEth32 -
22 1 iEth34 7 0 iEth02 -
22 1 iEth51 7 1 iEth10 -
22 1 iEth55 7 2 iEth18 -
22 1 iEth56 7 3 iEth26 -
22 1 iEth50 8 0 iEth02 -
22 1 iEth35 8 1 iEth10 -
22 1 iEth53 8 2 iEth18 -
22 1 iEth54 8 3 iEth26 -
使用show system internal fabric link-state module {x}命令检查内部端口是否为up状态(在ST列下),以及特定内部链路的相应ASIC片和MAC标识符(在MAC列下)是什么。这里显示一个示例。
Nexus9500# show system internal fabric link-state module 8
cli : mod = 8
module number = 8
========================================================================================================================
Module number = 8
========================================================================================================================
[LC] [ INST:SLI:MAC:GLSRC] [IETH] [ST] <========> [FM] [ INST:SLI:MAC:GLSRC] [IETH] [ST]
========================================================================================================================
[ 8] [ 0 : 0 : 7 : 0x38] [iEth01] [UP] <========> [22] [ 0 : 3 : 21 : 0x18] [iEth18] [UP]
[ 8] [ 0 : 1 : 9 : 0x0] [iEth02] [UP] <========> [22] [ 1 : 3 : 21 : 0x18] [iEth50] [UP]
[ 8] [ 0 : 0 : 6 : 0x30] [iEth03] [UP] <========> [23] [ 0 : 3 : 21 : 0x18] [iEth18] [UP]
[ 8] [ 0 : 1 : 16 : 0x38] [iEth04] [UP] <========> [23] [ 1 : 3 : 21 : 0x18] [iEth50] [UP]
[ 8] [ 0 : 0 : 8 : 0x40] [iEth05] [UP] <========> [24] [ 0 : 3 : 21 : 0x18] [iEth18] [UP]
[ 8] [ 0 : 1 : 15 : 0x30] [iEth06] [UP] <========> [24] [ 1 : 3 : 21 : 0x18] [iEth50] [UP]
[ 8] [ 0 : 0 : 5 : 0x28] [iEth07] [UP] <========> [26] [ 0 : 3 : 21 : 0x18] [iEth18] [UP]
[ 8] [ 0 : 1 : 17 : 0x40] [iEth08] [UP] <========> [26] [ 1 : 3 : 21 : 0x18] [iEth50] [UP]
[ 8] [ 1 : 0 : 7 : 0x38] [iEth09] [UP] <========> [22] [ 0 : 0 : 4 : 0x20] [iEth03] [UP]
[ 8] [ 1 : 1 : 9 : 0x0] [iEth10] [UP] <========> [22] [ 1 : 0 : 4 : 0x20] [iEth35] [UP]
[ 8] [ 1 : 0 : 6 : 0x30] [iEth11] [UP] <========> [23] [ 0 : 0 : 4 : 0x20] [iEth03] [UP]
[ 8] [ 1 : 1 : 16 : 0x38] [iEth12] [UP] <========> [23] [ 1 : 0 : 4 : 0x20] [iEth35] [UP]
[ 8] [ 1 : 0 : 8 : 0x40] [iEth13] [UP] <========> [24] [ 0 : 0 : 4 : 0x20] [iEth03] [UP]
[ 8] [ 1 : 1 : 15 : 0x30] [iEth14] [UP] <========> [24] [ 1 : 0 : 4 : 0x20] [iEth35] [UP]
[ 8] [ 1 : 0 : 5 : 0x28] [iEth15] [UP] <========> [26] [ 0 : 0 : 4 : 0x20] [iEth03] [UP]
[ 8] [ 1 : 1 : 17 : 0x40] [iEth16] [UP] <========> [26] [ 1 : 0 : 4 : 0x20] [iEth35] [UP]
[ 8] [ 2 : 0 : 7 : 0x38] [iEth17] [UP] <========> [22] [ 0 : 5 : 35 : 0x28] [iEth32] [UP]
[ 8] [ 2 : 1 : 9 : 0x0] [iEth18] [UP] <========> [22] [ 1 : 4 : 24 : 0x0] [iEth53] [UP]
[ 8] [ 2 : 0 : 6 : 0x30] [iEth19] [UP] <========> [23] [ 0 : 5 : 35 : 0x28] [iEth32] [UP]
[ 8] [ 2 : 1 : 16 : 0x38] [iEth20] [UP] <========> [23] [ 1 : 4 : 24 : 0x0] [iEth53] [UP]
[ 8] [ 2 : 0 : 8 : 0x40] [iEth21] [UP] <========> [24] [ 0 : 5 : 35 : 0x28] [iEth32] [UP]
[ 8] [ 2 : 1 : 15 : 0x30] [iEth22] [UP] <========> [24] [ 1 : 4 : 24 : 0x0] [iEth53] [UP]
[ 8] [ 2 : 0 : 5 : 0x28] [iEth23] [UP] <========> [26] [ 0 : 5 : 35 : 0x28] [iEth32] [UP]
[ 8] [ 2 : 1 : 17 : 0x40] [iEth24] [UP] <========> [26] [ 1 : 4 : 24 : 0x0] [iEth53] [UP]
[ 8] [ 3 : 0 : 7 : 0x38] [iEth25] [UP] <========> [22] [ 0 : 5 : 34 : 0x20] [iEth31] [UP]
[ 8] [ 3 : 1 : 9 : 0x0] [iEth26] [UP] <========> [22] [ 1 : 4 : 25 : 0x8] [iEth54] [UP]
[ 8] [ 3 : 0 : 6 : 0x30] [iEth27] [UP] <========> [23] [ 0 : 5 : 34 : 0x20] [iEth31] [UP]
[ 8] [ 3 : 1 : 16 : 0x38] [iEth28] [UP] <========> [23] [ 1 : 4 : 25 : 0x8] [iEth54] [UP]
[ 8] [ 3 : 0 : 8 : 0x40] [iEth29] [UP] <========> [24] [ 0 : 5 : 34 : 0x20] [iEth31] [UP]
[ 8] [ 3 : 1 : 15 : 0x30] [iEth30] [UP] <========> [24] [ 1 : 4 : 25 : 0x8] [iEth54] [UP]
[ 8] [ 3 : 0 : 5 : 0x28] [iEth31] [UP] <========> [26] [ 0 : 5 : 34 : 0x20] [iEth31] [UP]
[ 8] [ 3 : 1 : 17 : 0x40] [iEth32] [UP] <========> [26] [ 1 : 4 : 25 : 0x8] [iEth54] [UP]
在模块化Nexus 9500交换机上,在以下情况下您会看到一条或多条iEth链路上出现CRC错误:
请使用show system internal fabric connectivity stats module {x}命令检查相应内部链路的CRC计数器。此处显示一个示例,其中插入插槽22中的交换矩阵模块接收在与插入交换机插槽7中的线卡的iEth26连接的iEth56上具有无效CRC的数据包。这表示交换矩阵模块从插入交换机插槽7的线卡收到损坏的以太网帧。
Nexus9500# show system internal fabric connectivity stats module 22
Internal Link-info Stats Fabriccard slot:22
-------------------------------------------------------------------------------------
FM-Slot FM-Unit FM-iEthLink LC-Slot LC-Unit LC-EthLink MUX CRC
-------------------------------------------------------------------------------------
22 0 iEth09 1 0 iEth01 - 0
22 0 iEth06 1 1 iEth11 - 0
22 0 iEth25 1 2 iEth21 - 0
22 0 iEth26 1 3 iEth31 - 0
22 0 iEth10 2 0 iEth01 - 0
22 0 iEth05 2 1 iEth11 - 0
22 0 iEth23 2 2 iEth21 - 0
22 0 iEth24 2 3 iEth31 - 0
22 0 iEth12 3 0 iEth01 - 0
22 0 iEth11 3 1 iEth11 - 0
22 0 iEth21 3 2 iEth21 - 0
22 0 iEth22 3 3 iEth31 - 0
22 0 iEth14 4 0 iEth01 - 0
22 0 iEth13 4 1 iEth11 - 0
22 0 iEth07 4 2 iEth21 - 0
22 0 iEth08 4 3 iEth31 - 0
22 0 iEth16 5 0 iEth01 - 0
22 0 iEth15 5 1 iEth11 - 0
22 0 iEth01 5 2 iEth21 - 0
22 0 iEth04 5 3 iEth31 - 0
22 0 iEth20 6 0 iEth01 - 0
22 0 iEth17 6 1 iEth11 - 0
22 0 iEth28 6 2 iEth21 - 0
22 0 iEth27 6 3 iEth31 - 0
22 0 iEth19 7 0 iEth01 - 0
22 0 iEth02 7 1 iEth09 - 0
22 0 iEth30 7 2 iEth17 - 0
22 0 iEth29 7 3 iEth25 - 0
22 0 iEth18 8 0 iEth01 - 0
22 0 iEth03 8 1 iEth09 - 0
22 0 iEth32 8 2 iEth17 - 0
22 0 iEth31 8 3 iEth25 - 0
22 1 iEth41 1 0 iEth02 - 0
22 1 iEth38 1 1 iEth12 - 0
22 1 iEth59 1 2 iEth22 - 0
22 1 iEth60 1 3 iEth32 - 0
22 1 iEth42 2 0 iEth02 - 0
22 1 iEth37 2 1 iEth12 - 0
22 1 iEth62 2 2 iEth22 - 0
22 1 iEth61 2 3 iEth32 - 0
22 1 iEth44 3 0 iEth02 - 0
22 1 iEth43 3 1 iEth12 - 0
22 1 iEth64 3 2 iEth22 - 0
22 1 iEth63 3 3 iEth32 - 0
22 1 iEth46 4 0 iEth02 - 0
22 1 iEth45 4 1 iEth12 - 0
22 1 iEth39 4 2 iEth22 - 0
22 1 iEth40 4 3 iEth32 - 0
22 1 iEth48 5 0 iEth02 - 0
22 1 iEth47 5 1 iEth12 - 0
22 1 iEth36 5 2 iEth22 - 0
22 1 iEth33 5 3 iEth32 - 0
22 1 iEth52 6 0 iEth02 - 0
22 1 iEth49 6 1 iEth12 - 0
22 1 iEth57 6 2 iEth22 - 0
22 1 iEth58 6 3 iEth32 - 0
22 1 iEth34 7 0 iEth02 - 0
22 1 iEth51 7 1 iEth10 - 0
22 1 iEth55 7 2 iEth18 - 0
22 1 iEth56 7 3 iEth26 - 1665601166
22 1 iEth50 8 0 iEth02 - 0
22 1 iEth35 8 1 iEth10 - 0
22 1 iEth53 8 2 iEth18 - 0
22 1 iEth54 8 3 iEth26 - 0
在板卡或交换矩阵模块上使用slot {x} show hardware internal tah counters asic {y}命令确定CRC错误是否无效或是CRC是否存储过多。将无效CRC错误与存储的CRC错误区分开来的两个寄存器计数器如下:
此处显示了一个示例,其中通过内部链路iEth54在插入机箱插槽22中的交换矩阵模块上接收损坏的帧,连接到插入机箱插槽8中的线卡,并且接收的CRC过大:
Nexus9500# slot 22 show hardware internal tah counters asic 1
REG_NAME M24,0-100Gx4 M25,0-100Gx4
--------------------------------------------------------------------------------------------------------------------------
02-RX Frm with FCS Err .... ....
03-RX Frm with any Err .... 144912733e
16-RX Frm CRC Err(Stomp) .... 14491277d7
或者使用show hardware internal errors module {x}命令查看特定模块的ASIC错误计数器。这里显示一个示例。
注意:在此输出中,无效CRC和堆叠CRC的接口入站错误(CRC、len、Algn Err)计数器将会增加,而接口入站CRC错误堆叠(Interface Inbound CRC Error Stocked)计数器仅会为堆叠CRC增加。
Nexus9500# show hardware internal errors module 22
|------------------------------------------------------------------------|
| Device:Lacrosse Role:MAC Mod:22 |
| Last cleared @ Tue Jul 6 04:10:45 2021
| Device Statistics Category :: ERROR
|------------------------------------------------------------------------|
Instance:0
ID Name Value Ports
-- ---- ----- -----
Instance:1
ID Name Value Ports
-- ---- ----- -----
196635 Interface Inbound Errors (CRC,len,Algn Err) 0000053053264536 27:0
1048603 Interface Inbound CRC Error Stomped 0000053053264535 27:0
确定接收损坏帧的入口板卡后,使用slot {x} show hardware internal tah counters asic {y}或show hardware internal errors module {x}命令以类似方式识别接收错误的入口接口,以及识别接收的错误是无效的CRC还是堆积的CRC。
交换矩阵模块或出口板卡在iEth链路上显示CRC错误,但连接的板卡没有入口CRC迹象的情况极少。此问题的根本原因通常是交换矩阵模块的硬件故障。思科建议向思科TAC提交支持案例,以进一步解决此问题,并在必要时更换交换矩阵模块。
本文档的此部分将介绍前面介绍的步骤和一些示例。
本示例演示如何识别物理接口上的CRC错误是否为STOPPED CRC。
请思考以下拓扑:
在本例中,交换机N9K-1上通过从接口SVI 10(拥有IP地址192.0.2.1)到N9K-3接口SVI 10(拥有IP地址192.0.2.3)(拥有MTU 1500字节)的巨型8000字节ICMP数据包生成有意存储的CRC错误。N9K-1、N9K-2和N9K-3都是Nexus 93180YC-EX型号交换机。
N9K-1# ping 192.0.2.3 count 5 packet-size 8000 PING 192.0.2.3 (192.0.2.3): 8000 data bytes Request 0 timed out Request 1 timed out Request 2 timed out Request 3 timed out Request 4 timed out Request 5 timed out --- 192.0.2.3 ping statistics --- 5 packets transmitted, 0 packets received, 100.00% packet loss
在本示例中,在交换机N9K-3的物理接口Ethernet1/1上观察到递增的CRC错误。
N9K-3# show interface Ethernet1/1 <snip> Ethernet1/1 is up admin state is up, Dedicated Interface Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2bbe) MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 10 Gb/s, media type is 10G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 06:13:44 Last clearing of "show interface" counters 02:55:00 0 interface resets RX 9 unicast packets 10675 multicast packets 0 broadcast packets 10691 input packets 816924 bytes 7 jumbo packets 0 storm suppression bytes 0 runts 7 giants 7 CRC 0 no buffer 7 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 0 input discard 0 Rx pause
通过生成从N9K-1的接口SVI 10(拥有IP地址192.0.2.1)到N9K-3的接口SVI 10(拥有IP地址192.0.2.3)的巨型8000字节ICMP数据包,确认CRC在物理接口Ethernet1/1上增加。
N9K-1# ping 192.0.2.3 count 5 packet-size 8000 PING 192.0.2.3 (192.0.2.3): 8000 data bytes Request 0 timed out Request 1 timed out Request 2 timed out Request 3 timed out Request 4 timed out Request 5 timed out --- 192.0.2.3 ping statistics --- 5 packets transmitted, 0 packets received, 100.00% packet loss N9K-3# show interface Ethernet1/1 Ethernet1/1 is up admin state is up, Dedicated Interface Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2bbe) MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 10 Gb/s, media type is 10G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 06:52:57 Last clearing of "show interface" counters 03:34:13 0 interface resets RX 11 unicast packets 13066 multicast packets 0 broadcast packets 13089 input packets 1005576 bytes 12 jumbo packets 0 storm suppression bytes 0 runts 12 giants 12 CRC 0 no buffer 12 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 0 input discard 0 Rx pause
在N9K-3上使用show interface hardware-mappings命令将物理接口Ethernet1/1映射到ASIC编号0、MAC块4和MAC块子端口0。
N9K-3# show interface hardware-mappings
<snip>
-------------------------------------------------------------------------------------------------------
Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID
-------------------------------------------------------------------------------------------------------
Eth1/1 1a000000 1 0 16 255 0 -1 0 16 32 4 0 1 0 32
Eth1/2 1a000200 1 0 17 255 4 -1 0 17 34 4 2 5 0 34
Eth1/3 1a000400 1 0 18 255 8 -1 0 18 36 4 4 9 0 36
Eth1/4 1a000600 1 0 19 255 12 -1 0 19 38 4 6 13 0 38
Eth1/5 1a000800 1 0 12 255 16 -1 0 12 24 3 0 17 0 24
根据步骤2中的信息,您知道以下事实:
使用此信息,您可以使用slot 1 show hardware internal tah counters asic 0命令查看所有物理接口的ASIC寄存器计数器。具体而言,您正在查找与M4、0-10G关联的ASIC寄存器计数器。
N9K-3# slot 1 show hardware internal tah counters asic 0 <snip> *************** PER MAC/CH SRAM COUNTERS **************** REG_NAME M4,0-10G M4,2-10G M4,4-10G M4,6-10G M5,0-40Gx4 M6,0-40Gx4 M7,0-40Gx4 M8,0-10G ---------------------------------------------------------------------------------------------------------------------------------- 02-RX Frm with FCS Err .... .... .... .... .... .... .... .... 16-RX Frm CRC Err(Stomp) c .... .... .... .... .... .... ....
您可以看到寄存器16的非零十六进制值0xc,表示此物理接口上收到了具有堆叠CRC的帧。您可以使用dec 0xc命令将其转换为十进制值12,该值与物理接口Ethernet1/1上的CRC错误数匹配。
N9K-3# dec 0xc
12
您已确认N9K-3正在物理接口Ethernet1/1上接收带有堆叠CRC的帧。这意味着Ethernet1/1链路远程端的设备(在本例中为N9K-2)正在增加这些帧的CRC;格式错误的帧的根本原因不是直接连接到Ethernet1/1的链路,而是更下游的链路。可以在下游网络设备上执行其他故障排除以确定这些格式错误的帧的来源。
本示例演示如何识别由于直连链路上的物理层问题导致的错误帧导致物理接口上的CRC错误增加。
请思考以下拓扑:
在本示例中,连接到交换机N9K-1的物理接口Ethernet1/40的流量生成器故意生成具有错误CRC的帧。这将模拟连接到Ethernet1/40的链路上的物理层问题,例如收发器故障或电缆损坏。N9K-1接收这些帧,识别CRC无效,然后递增Ethernet1/40物理接口上的CRC错误计数器。 N9K-1是Nexus 93180YC-EX型号交换机。
N9K-1# show interface Ethernet1/40 Ethernet1/40 is up admin state is up, Dedicated Interface Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2c02) MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 10 Gb/s, media type is 10G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 06:13:44 Last clearing of "show interface" counters 02:55:00 0 interface resets RX 1710 unicast packets 9873 multicast packets 0 broadcast packets 11583 input packets 886321 bytes 0 jumbo packets 0 storm suppression bytes 0 runts 0 giants 1683 CRC 0 no buffer 1683 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 0 input discard 0 Rx pause
通过show interface或show interface counters non-zero命令确认N9K-1的物理接口Ethernet1/40上的CRC增加。
N9K-1# show interface Ethernet1/40 <snip> Ethernet1/40 is up admin state is up, Dedicated Interface Hardware: 100/1000/10000/25000 Ethernet, address: 00d7.8f86.2bbe (bia 00d7.8f86.2c02) MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 10 Gb/s, media type is 10G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 06:13:44 Last clearing of "show interface" counters 02:55:00 0 interface resets RX 14055 unicast packets 9873 multicast packets 0 broadcast packets 23928 input packets 1676401 bytes 0 jumbo packets 0 storm suppression bytes 0 runts 0 giants 14028 CRC 0 no buffer 14028 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 0 input discard 0 Rx pause N9K-1# show interface counters errors non-zero <snip> -------------------------------------------------------------------------------- Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards -------------------------------------------------------------------------------- Eth1/40 26373 26373 0 26373 0 0
在N9K-1上使用show interface hardware-mappings命令将物理接口Ethernet1/40映射到ASIC编号0、MAC块10、MAC块子端口6。
N9K-1# show interface hardware-mappings <snip> --------------------------------------------------------------------------------------------- Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID --------------------------------------------------------------------------------------------- Eth1/38 1a004a00 1 0 45 255 148 -1 1 5 10 10 2 149 0 10 Eth1/39 1a004c00 1 0 46 255 152 -1 1 6 12 10 4 153 0 12 Eth1/40 1a004e00 1 0 47 255 156 -1 1 7 14 10 6 157 0 14 Eth1/41 1a005000 1 0 76 255 160 -1 1 36 64 17 0 161 0 64 Eth1/42 1a005200 1 0 77 255 164 -1 1 37 66 17 2 165 0 66
根据步骤2中的信息,您知道以下事实:
使用此信息,您可以使用slot 1 show hardware internal tah counters asic 0命令查看所有物理接口的ASIC寄存器计数器。具体而言,您正在查找与M10、6-10G关联的ASIC寄存器计数器。
N9K-1# slot 1 show hardware internal tah counters asic 0 *************** PER MAC/CH SRAM COUNTERS **************** REG_NAME M8,2-10G M8,4-10G M8,6-10G M9,0-40Gx4 M10,0-10G M10,2-10G M10,4-10G M10,6-10G ------------------------------------------------------------------------------------------------------------------------------------- 02-RX Frm with FCS Err .... .... .... .... .... .... .... 973e 16-RX Frm CRC Err(Stomp) .... .... .... .... .... .... .... ....
您可以看到寄存器2的非零十六进制值0x973e,表示此物理接口上收到帧具有无效但非堆叠CRC。
您可以使用dec 0x973e命令将此值转换为十进制值38,718,该值匹配(或小于)物理接口Ethernet1/40上的CRC错误数,因为CRC不断递增。
N9K-1# dec 0x973e
38718
您已确认N9K-1正在物理接口Ethernet1/40上接收具有无效但非堆叠CRC的帧。这意味着直接连接到Ethernet1/40(或链路远程端的设备)的链路最有可能是格式错误的帧的来源。可以对此链路的物理层执行进一步的故障排除,以查明格式错误的帧的根本原因(例如检查电缆是否损坏、用已知正常的收发器更换当前收发器等)。
此示例演示当Nexus 9500系列交换机生成内部接口上的系统日志报告错误时,如何识别iEth内部链路上的CRC错误来源。此系统日志的示例如下所示。
Nexus9500# show logging logfile
<snip>
2021 Jul 9 05:51:19 Nexus9500 %DEVICE_TEST-SLOT22-3-INTERNAL_PORT_MONITOR_CRC_ERRORS_DETECTED: Module 22 received tx errors on internal interface ii22/1/56 since last run TXErr=36836897 TotalTXErr=50781987904
此系统日志指示在插入交换机插槽22中的交换矩阵模块的iEth56内部链路上检测到错误。
使用show system internal fabric connectivity stats module {x}命令确定受影响的Eth内部链路连接到的板卡。在本示例中,插入交换机插槽22中的交换矩阵模块的iEth56出现错误。此处显示一个示例,其中插入插槽22中的交换矩阵模块的iEth56与插入交换机插槽7中的线卡的iEth26连接。
Nexus9500# show system internal fabric connectivity stats module 22 | include Eth56|FM-Slot
FM-Slot FM-Unit FM-iEthLink LC-Slot LC-Unit LC-EthLink MUX CRC
22 1 iEth56 7 3 iEth26 - 603816174
使用show system internal fabric link-state module {x}命令可查找与交换矩阵模块的iEth56内部链路关联的ASIC实例和MAC标识符。这里显示一个示例,其中ASIC实例为1,MAC标识符为27。
Nexus9500# show system internal fabric link-state module 22 | include MAC|iEth56
[FM] [ INST:SLI:MAC:GLSRC] [IETH] [ST] <========> [LC] [ INST:SLI:MAC:GLSRC] [IETH] [ST]
[22] [ 1 : 4 : 27 : 0x18] [iEth56] [UP] <========> [ 7] [ 3 : 1 : 9 : 0x0] [iEth26] [UP]
上一步显示,连接到插入插槽22中的交换矩阵模块的iEth56的ASIC实例标识符为1,MAC标识符为27。使用slot {x} show hardware internal tah counters asic {y}命令确定syslog报告的CRC是无效CRC还是存储的CRC。此处显示一个示例,其中M27,0-100Gx4列与我们的MAC标识符27关联,并指示CRC堆叠。
Nexus9500# slot 22 show hardware internal tah counters asic 1
REG_NAME M27,0-100Gx4
-----------------------------------------
02-RX Frm with FCS Err ....
16-RX Frm CRC Err(Stomp) be9cb9bd6
或者,请使用show hardware internal errors module {x} 命令获取此相同信息。这里显示一个示例。
Nexus9500# show hardware internal errors module 22 | include CRC|Stomp|Inst
Instance:1
196635 Interface Inbound Errors (CRC,len,Algn Err) 0000051587084851 27:0
1048603 Interface Inbound CRC Error Stomped 0000051587084850 27:0
回想一下,在此输出中,无效CRC和过载CRC的接口入站错误(CRC、len、Algn Err)计数器的计数增加,而仅过载CRC的接口入站CRC错误过载计数器的计数增加。
现在您已经知道,插入交换机插槽22中的交换矩阵模块的CRC是从插入插槽7中的线卡进入交换机的。有了此信息,您可以使用show interface counters errors module {x} non-zero命令标识属于相关板卡的接口上的非零CRC计数器。这里显示一个示例。
Nexus9500# show interface counters errors module 7 non-zero
<snip>
--------------------------------------------------------------------------------
Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards
--------------------------------------------------------------------------------
Eth7/32 0 0 0 1195309745 0 0
您可以在相关板卡上重复此场景的步骤#2,以验证板卡是否收到无效CRC或堆积的CRC。
Nexus9500# show hardware internal errors module 7 | include ignore-case CRC|Stomp|Inst
Instance:3
196619 Interface Inbound Errors (CRC,len,Algn Err) 0000051801011139 11:0
1048587 Interface Inbound CRC Error Stomped 0000051801011140 11:0
使用show interface hardware-mappings命令标识前一个输出中MacId:MacSP值11:0映射到的前面板端口。此处显示一个示例,其中11:0映射到前面板端口Eth7/32。
Nexus9500# show interface hardware-mappings | include Name|Eth7
<snip>
Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID
Eth7/1 1a300000 25 0 16 255 0 -1 0 16 32 4 0 1 0 32
Eth7/2 1a300200 25 0 12 255 4 -1 0 12 24 3 0 5 0 24
Eth7/3 1a300400 25 0 8 255 8 -1 0 8 16 2 0 9 0 16
Eth7/4 1a300600 25 0 4 255 12 -1 0 4 8 1 0 13 0 8
Eth7/5 1a300800 25 0 60 255 16 -1 1 20 40 14 0 17 0 40
Eth7/6 1a300a00 25 0 56 255 20 -1 1 16 32 13 0 21 0 32
Eth7/7 1a300c00 25 0 52 255 24 -1 1 12 24 12 0 25 0 24
Eth7/8 1a300e00 25 0 48 255 28 -1 1 8 16 11 0 29 0 16
Eth7/9 1a301000 26 1 12 255 32 -1 0 12 24 3 0 33 0 24
Eth7/10 1a301200 26 1 8 255 36 -1 0 8 16 2 0 37 0 16
Eth7/11 1a301400 26 1 4 255 40 -1 0 4 8 1 0 41 0 8
Eth7/12 1a301600 26 1 0 255 44 -1 0 0 0 0 0 45 0 0
Eth7/13 1a301800 26 1 60 255 48 -1 1 20 40 14 0 49 0 40
Eth7/14 1a301a00 26 1 56 255 52 -1 1 16 32 13 0 53 0 32
Eth7/15 1a301c00 26 1 52 255 56 -1 1 12 24 12 0 57 0 24
Eth7/16 1a301e00 26 1 48 255 60 -1 1 8 16 11 0 61 0 16
Eth7/17 1a302000 27 2 16 255 64 -1 0 16 32 4 0 65 0 32
Eth7/18 1a302200 27 2 12 255 68 -1 0 12 24 3 0 69 0 24
Eth7/19 1a302400 27 2 8 255 72 -1 0 8 16 2 0 73 0 16
Eth7/20 1a302600 27 2 4 255 76 -1 0 4 8 1 0 77 0 8
Eth7/21 1a302800 27 2 60 255 80 -1 1 20 40 14 0 81 0 40
Eth7/22 1a302a00 27 2 56 255 84 -1 1 16 32 13 0 85 0 32
Eth7/23 1a302c00 27 2 52 255 88 -1 1 12 24 12 0 89 0 24
Eth7/24 1a302e00 27 2 48 255 92 -1 1 8 16 11 0 93 0 16
Eth7/25 1a303000 28 3 12 255 96 -1 0 12 24 3 0 97 0 24
Eth7/26 1a303200 28 3 8 255 100 -1 0 8 16 2 0 101 0 16
Eth7/27 1a303400 28 3 4 255 104 -1 0 4 8 1 0 105 0 8
Eth7/28 1a303600 28 3 0 255 108 -1 0 0 0 0 0 109 0 0
Eth7/29 1a303800 28 3 60 255 112 -1 1 20 40 14 0 113 0 40
Eth7/30 1a303a00 28 3 56 255 116 -1 1 16 32 13 0 117 0 32
Eth7/31 1a303c00 28 3 52 255 120 -1 1 12 24 12 0 121 0 24
Eth7/32 1a303e00 28 3 48 255 124 -1 1 8 16 11 0 125 0 16
您已确认,Nexus 9500在物理接口Ethernet7/32上接收带有堆叠CRC的帧。这意味着Ethernet7/32链路远程端的设备增加这些帧的CRC;格式错误的帧的根源不是直接连接到Ethernet7/32的链路,而是更下游的链路。可以在下游网络设备上执行其他故障排除以确定这些格式错误的帧的来源。
此示例演示了当上游交换机报告Nexus 9500生成具有堆叠CRC的帧时,如何跟踪Nexus 9500交换机上具有无效CRC的帧的来源。在此场景中,上游交换机通过前面板端口Ethernet8/9连接。
您知道,向上游交换机发送帧时,带有堆叠CRC的出口接口是Ethernet8/9。首先,您需要确定将带有堆叠CRC的帧发送到插入机箱插槽8中的线卡的交换矩阵模块。可使用show hardware internal errors module {x}命令开始此过程。这里显示一个示例。
Nexus9500# show hardware internal errors module 8 | i CRC|Inst
<snip>
Instance:1
196617 Interface Inbound Errors (CRC,len,Algn Err) 0000091499464650 9:0
1048585 Interface Inbound CRC Error Stomped 0000091499464651 9:0
使用show system internal fabric link-state module 8命令,可将先前输出中的MacID:MacSP 9:0映射到源交换矩阵模块。这里显示一个示例。
Nexus9500# show system internal fabric link-state module 8
cli : mod = 8
module number = 8
========================================================================================================================
Module number = 8
========================================================================================================================
[LC] [ INST:SLI:MAC:GLSRC] [IETH] [ST] <========> [FM] [ INST:SLI:MAC:GLSRC] [IETH] [ST]
========================================================================================================================
...
[ 8] [ 1 : 1 : 9 : 0x0] [iEth10] [UP] <========> [22] [ 1 : 0 : 4 : 0x20] [iEth35] [UP]
您会看到插在插槽8中的线卡上的MAC标识符9映射到插在机箱插槽22中的交换矩阵模块。您预计在内部链路iEth10上会看到CRC错误。您可以通过show system internal fabric connectivity stats module 8命令验证这一点。这里显示一个示例。
Nexus9500# show system internal fabric connectivity stats module 8
Internal Link-info Stats Linecard slot:8
-------------------------------------------------------------------------------------
LC-Slot LC-Unit LC-iEthLink MUX FM-Slot FM-Unit FM-iEthLink CRC
-------------------------------------------------------------------------------------
8 0 iEth01 - 22 0 iEth18 0
8 0 iEth02 - 22 1 iEth50 0
8 0 iEth03 - 23 0 iEth18 0
8 0 iEth04 - 23 1 iEth50 0
8 0 iEth05 - 24 0 iEth18 0
8 0 iEth06 - 24 1 iEth50 0
8 0 iEth07 - 26 0 iEth18 0
8 0 iEth08 - 26 1 iEth50 0
8 1 iEth09 - 22 0 iEth03 0
8 1 iEth10 - 22 1 iEth35 1784603561
接下来,您将使用与场景3中相同的流程,通过检查接收CRC的iEth内部链路、这些CRC是否根据交换矩阵模块的ASIC进行堆叠,以及哪个线卡连接到交换矩阵模块的iEth内部链路。这里分别使用show system internal fabric connectivity stats module {x}命令、show hardware internal errors module {x}命令和show system internal fabric link-state module {x}命令给出一个示例。
Nexus9500# show system internal fabric connectivity stats module 22
Internal Link-info Stats Fabriccard slot:22
-------------------------------------------------------------------------------------
FM-Slot FM-Unit FM-iEthLink LC-Slot LC-Unit LC-EthLink MUX CRC
22 1 iEth56 7 3 iEth26 - 1171851894
Nexus9500# show hardware internal errors module 22 | i CRC|Stomp|Inst
Instance:1
196635 Interface Inbound Errors (CRC,len,Algn Err) 0000054593935847 27:0
1048603 Interface Inbound CRC Error Stomped 0000054593935846 27:0
Nexus9500# show system internal fabric link-state module 22 | i MAC|iEth56
[FM] [ INST:SLI:MAC:GLSRC] [IETH] [ST] <========> [LC] [ INST:SLI:MAC:GLSRC] [IETH] [ST]
[22] [ 1 : 4 : 27 : 0x18] [iEth56] [UP] <========> [ 7] [ 3 : 1 : 9 : 0x0] [iEth26] [UP]
在确定入口线卡(在本场景中,插入插槽7中的线卡通过iEth26连接到插入插槽22中的交换矩阵模块的iEth56)后,您会确定损坏的帧进入交换机的哪个入口端口。使用show interface counters errors module {x} non-zero命令可完成此操作。show hardware internal errors module {x}命令和show interface hardware-mappings命令的输出可以验证收到的帧是无效还是增大的CRC。
此处显示了一个示例,损坏的帧通过前面板接口Ethernet7/32进入交换机。
Nexus9500# show interface counters errors module 7 non-zero
<snip>
--------------------------------------------------------------------------------
Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards
--------------------------------------------------------------------------------
Eth7/32 0 0 0 4128770335 0 0
--------------------------------------------------------------------------------
Port Stomped-CRC
--------------------------------------------------------------------------------
Eth7/32 4129998971
Nexus9500# show hardware internal errors module 7 | i i CRC|Stomp|Inst
<snip>
Instance:3
196619 Interface Inbound Errors (CRC,len,Algn Err) 0000054901402307 11:0
1048587 Interface Inbound CRC Error Stomped 0000054901402308 11:0
Nexus9500# show interface hardware-mappings | i Name|Eth7
<snip>
Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID
...
Eth7/32 1a303e00 28 3 48 255 124 -1 1 8 16 11 0 125 0 16
您已确认,Nexus 9500在物理接口Ethernet7/32上接收带有堆叠CRC的帧。这意味着Ethernet7/32链路远程端的设备增加这些帧的CRC;格式错误的帧的根源不是直接连接到Ethernet7/32的链路,而是更下游的链路。
可以在下游网络设备上执行其他故障排除以确定这些格式错误的帧的来源。
版本 | 发布日期 | 备注 |
---|---|---|
3.0 |
08-Nov-2023 |
更新了标题、简介、技术内容术语、SEO、风格要求、机器翻译和格式。 |
2.0 |
03-Oct-2021 |
更新适用硬件部分以包括新硬件。 |
1.0 |
13-Nov-2020 |
初始版本 |