Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Anwendbare Hardware

Cisco Nexus 9200 und 9300 Cloud Scale CRC-Identifizierungs- und -Nachverfolgungsverfahren

NX-OS Softwareversion 10.2(1) und höher

NX-OS Softwareversion 10.1(2) und frühere Version

Schritt 1: Identifizieren inkrementierender CRC-Zähler an physischen Schnittstellen

Schritt 2: Zuordnung der physischen Schnittstelle zum ASIC-, MAC- und Mac-Block-Subport

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Cisco Nexus 9500 Cloud-Skalierung - CRC-Identifizierungs- und Tracing-Verfahren für modulare Switches

Schritt 1: Zuordnen interner Links zwischen Linecards und Fabric-Modulen

Schritt 2: Überprüfen Sie die CRC-Zähler auf Eth-Verbindungen, und verfolgen Sie die Quelle beschädigter Frames.

Beispiele

Szenario 1. Physische Schnittstelle empfängt gestempelte CRCs

Schritt 1: Erhöhen der CRCs bestätigen

Schritt 2: Zuordnung einer physischen Schnittstelle zu einem ASIC-, MAC- und MAC-Block-Subport

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Szenario 1 - Zusammenfassung

Szenario 2. Physische Schnittstelle hat ungültige Frames mit ungültiger CRC empfangen

Schritt 1: Erhöhen der CRCs bestätigen

Schritt 2: Zuordnung einer physischen Schnittstelle zu einem ASIC-, MAC- und MAC-Block-Subport

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Szenario 2 - Zusammenfassung

Szenario 3. Nexus 9500-Eth-CRC-Fehler - Syslog

Schritt 1: Eth-Link auf Fabric-Modul der angeschlossenen Linecard zuordnen

Schritt 2: Überprüfen Sie, ob die über die Eth-Verbindung empfangenen CRCs ungültig oder als "Stomped" gekennzeichnet sind.

Schritt 3: Verfolgung der Quelle von Frames mit ungültigen CRCs auf der Eingangs-Linecard

Szenario 3 - Zusammenfassung

Szenario 4. Verfolgen der Quelle ungültiger CRC-Frames mit Ausgangsschnittstelle.

Schritt 1: Identifizieren des Fabric-Moduls Senden ungültiger CRC-Frames an die Ausgangs-Linecard

Schritt 2: Zuordnen des Eth-Links auf dem Fabric-Modul zur verbundenen Linecard und Überprüfen auf Stomped-CRCs

Schritt 3: Verfolgen der Quelle von Frames mit ungültigen CRCs auf dem Eingangsmodul

Szenario 4 - Zusammenfassung

Zugehörige Informationen

Einleitung

In diesem Dokument werden die Schritte beschrieben, mit denen die Quelle von CRC-Fehlern, die an physischen Schnittstellen in einer Reihe von Cisco Nexus 9000 Cloud Scale ASIC-Modulen festgestellt wurden, verfolgt wird. Dieses Dokument beschreibt auch das Verfahren zur Unterscheidung von CRC-Fehlern mit und ohne Stempel, die an physischen Schnittstellen und internen Fabric-Verbindungen modularer Nexus-Switches beobachtet werden.

Voraussetzungen

Anforderungen

Cisco empfiehlt, sich mit den Grundlagen von Cut-Through- und Store-and-Forward-Switching vertraut zu machen. Cisco empfiehlt außerdem, dass Sie mit den Grundfunktionen des Felds "Ethernet FCS (Frame Check Sequence)" und des vom Feld "FCS" verwendeten CRC-Algorithmus (Cyclic Redundancy Check) vertraut sind. Weitere Informationen finden Sie in den folgenden Dokumenten:

- Cut-Through- und Store-and-Forward-Ethernet-Switching für Umgebungen mit niedriger Latenz

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf Cisco Nexus Switches der Serie 9000 mit dem Cloud Scale ASIC, auf dem die NX-OS-Softwareversion 7.0(3)I7(8) ausgeführt wird.

Die Informationen in diesem Dokument stammen von Geräten in einer bestimmten Laborumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netz Live ist, überprüfen Sie, ob Sie die mögliche Auswirkung jedes möglichen Befehls verstehen.

Hintergrundinformationen

Cisco Nexus Switches der Serie 9000 verwenden standardmäßig Cut-Through-Switching. Cut-Through-Switching ist der Punkt, an dem ein Switch eine Weiterleitungsentscheidung für einen Frame trifft und mit der Weiterleitung des Frames aus einer Ausgangsschnittstelle beginnt, sobald der Switch eine ausreichende Menge des Frame-Headers verarbeitet hat, um eine gültige Weiterleitungsentscheidung zu treffen. Dies unterscheidet sich vom Store-and-Forward-Switching, bei dem ein Switch den gesamten Frame puffert, bevor der Frame über eine Ausgangsschnittstelle weitergeleitet wird.

Das FCS-Feld eines Ethernet-Frames validiert die Integrität des Frames und stellt sicher, dass der Frame bei der Übertragung nicht beschädigt wurde. Das FCS-Feld eines Ethernet-Frames befindet sich am Ende des Ethernet-Frames hinter der Nutzlast des Frames. Ein Switch, der in einem Store-and-Forward-Switching-Modus betrieben wird, kann die Integrität eines Ethernet-Frames mit dem FCS-Feld überprüfen, bevor der Frame aus einer Ausgangsschnittstelle weitergeleitet wird (oder den Frame löschen, wenn der Inhalt des FCS-Feldes ungültig ist). Ein Switch, der in einem Cut-Through-Switching-Modus betrieben wird, kann jedoch nicht die Integrität eines Ethernet-Frames mit dem FCS-Feld überprüfen, bevor der Frame aus einer Ausgangsschnittstelle weitergeleitet wird. Mit anderen Worten: Wenn ein Cut-Through-Switch die Integrität eines Ethernet-Frames überprüfen kann, ist der Großteil des Ethernet-Frames bereits von einer Ausgangsschnittstelle weitergeleitet worden.

Wenn ein Switch im Cut-Through-Switching-Modus einen Ethernet-Frame mit einem ungültigen FCS-Feld empfängt, ergreift der Switch die folgenden Maßnahmen:

1. Schreibt das FCS-Feld des Ethernet-Frames mit der bitweisen Umkehrung des aktuellen (falschen) FCS-Feldwerts um. Wenn der Frame geroutet werden muss, wird der Wert des aktuellen (falschen) FCS-Felds berechnet, nachdem der Ethernet-Header des Frames neu geschrieben wurde. Diese Aktion wird als "Stampfen" des CRC bezeichnet.

2. Den Rest des Ethernet-Frames (zusammen mit der gestempelten CRC) entsprechend der Weiterleitungsentscheidung für den Frame aus der Ausgangsschnittstelle weiterleiten.

3. Erhöhen Sie den Zähler für Eingabefehler und/oder den Zähler für CRC-Fehler an der Eingangsschnittstelle.

In diesem Dokument werden die Schritte beschrieben, mit denen überprüft wird, ob es sich bei den CRC-Zählern, die einer Eingangsschnittstelle zugeordnet sind, um normale CRCs (die in der Regel Probleme mit der physischen Schicht auf dem mit der Eingangsschnittstelle verbundenen Link anzeigen) oder um gestampfte CRCs (die angeben, dass das mit der Eingangsschnittstelle verbundene Gerät ebenfalls im Cut-Through-Switching-Modus arbeitet und einen fehlerhaften Ethernet-Frame empfangen hat) handelt.

Anwendbare Hardware

Das in diesem Dokument beschriebene Verfahren gilt nur für diese Hardware:

- Nexus Switches der Serien 9200 und 9300 mit fester Konfiguration

- N9K-C92160YC-X

- N9K-C92300YC

- N9K-C92304QC

- N9K-C92348GC-X

- N9K-C9236C

- N9K-C9272Q

- N9K-C9332C

- N9K-C9364C

- N9K-C93108TC-EX

- N9K-C93108TC-EX-24

- N9K-C93180LC-EX

- N9K-C93180YC-EX

- N9K-C93180YC-EX-24

- N9K-C93108TC-FX

- N9K-C93108TC-FX-24

- N9K-C93180YC-FX

- N9K-C93180YC-FX-24

- N9K-C9348GC-FXP

- N9K-C93240YC-FX2

- N9K-C93216TC-FX2

- N9K-C9336C-FX2

- N9K-C9336C-FX2-E

- N9K-C93360YC-FX2

- N9K-C93180YC-FX3

- N9K-C93108TC-FX3P

- N9K-C93180YC-FX3S

- N9K-C9316D-GX

- N9K-C93600CD-GX

- N9K-C9364C-GX

- N9K-C9364D-GX2A

- N9K-C9332D-GX2B

- Linecards für modulare Nexus Switches der Serie 9500

- N9K-X97160YC-EX

- N9K-X9732C-EX

- N9K-X9736C-EX

- N9K-X97284YC-FX

- N9K-X9732C-FX

- N9K-X9788TC-FX

- N9K-X9716D-GX

Cisco Nexus 9200 und 9300 Cloud Scale CRC-Identifizierungs- und -Nachverfolgungsverfahren

In diesem Abschnitt des Dokuments werden Schritt-für-Schritt-Anleitungen beschrieben, mit denen Sie die Quelle von CRC-Fehlern identifizieren können, die an einer bestimmten physischen Schnittstelle Ethernet1/1 auf Cisco Nexus Switches der Serien 9200 und 9300 beobachtet wurden.

NX-OS Softwareversion 10.2(1) und höher

Ab der NX-OS-Softwareversion 10.2(1) verfügen Nexus-Switches mit dem Cloud Scale ASIC über einen neuen Schnittstellenzähler für Pakete mit einem gestampften CRC im FCS-Bereich von Ethernet-Frames, die den Switch durchlaufen. Mit dem Befehl show interface können Sie physische Schnittstellen mit inkrementierenden CRC-Zählern (ungleich null) und gestempelten CRC-Zählern identifizieren. Ein Beispiel hierfür ist hier dargestellt, wobei die physikalische Schnittstelle Ethernet1/1 einen CRC-Zähler Null und einen CRC-Zähler ungleich null aufweist, was anzeigt, dass auf dieser Schnittstelle Frames mit einem ungültigen und gestempelten CRC empfangen wurden.

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

Beachten Sie, dass ein inkrementierender "CRC"-Zähler anzeigt, dass ein Frame entweder mit einem gestampften CRC oder mit einem ungültigen, jedoch nicht mit einem stampften CRC empfangen wurde. Ein inkrementierender Zähleranstieg "stomped CRC" zeigt an, dass ein Frame mit einem stomped CRC empfangen wurde.

Alternativ kann der Befehl show interface counters errors non-zero verwendet werden, um Zähler für Schnittstellenfehler anzuzeigen. Ein Beispiel hierfür ist hier dargestellt.

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

Sie können den Befehl show interface über die Pipeline an die Befehle json oder json-hübsch übergeben, um CRC- und gestempelte CRC-Zählerstatistiken in einem strukturierten Format zu erhalten. Ein Beispiel hierfür ist hier dargestellt.

switch# show interface Ethernet1/1 | json-pretty | include ignore-case crc

"eth_crc": "828640831",

"eth_stomped_crc": "828640831",

Die NX-API (REST-API) kann zum Abrufen derselben Statistiken mit dem Objektmodell sys/intf/phys-[intf-id]/dbgEtherStats.json verwendet werden. Ein Beispiel hierfür ist hier dargestellt.

/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",

...

}

}

}

]

}

NX-OS Softwareversion 10.1(2) und frühere Version

Für NX-OS-Softwareversionen vor 10.2(1) ist der CRC-Zähler mit Stempel auf Schnittstellen nicht verfügbar. Es sind mehrere Schritte erforderlich, um die Eingangsschnittstelle zu ermitteln, an der ungültige CRCs festgestellt werden, und zu überprüfen, ob die CRCs ungültig sind oder ein Stempel aufgedrückt wurde.

Schritt 1: Identifizieren inkrementierender CRC-Zähler an physischen Schnittstellen

Verwenden Sie den Befehl show interface, um physische Schnittstellen mit inkrementierenden CRC-Zählern zu identifizieren, die nicht 0 sind. Ein Beispiel hierfür ist hier dargestellt, wobei die physische Schnittstelle Ethernet1/1 einen CRC-Zähler ungleich null aufweist.

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

Alternativ können Sie den Befehl show interface counters errors non-zero verwenden, um alle Schnittstellen mit non-zero error counters (einschließlich non-zero CRC counters) anzuzeigen. Ein Beispiel hierfür ist hier dargestellt. Die physische Schnittstelle Ethernet1/1 zeigt einen CRC-Zähler ungleich null an, der in der Spalte FCS-Err angezeigt wird.

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

Schritt 2: Zuordnung der physischen Schnittstelle zum ASIC-, MAC- und Mac-Block-Subport

Verwenden Sie den Befehl show interface hardware-mappings, um drei Hauptmerkmale zu identifizieren:

1. Einheit - Der Bezeichner des Cloud Scale ASIC, mit dem die physische Schnittstelle verbunden ist. Dabei wird ein nullbasiertes Nummerierungssystem verwendet (der erste ASIC ist z. B. 0, der zweite ASIC ist 1 usw.)

2. MacId - Der Bezeichner des MAC-Blocks, mit dem die physische Schnittstelle eine Verbindung herstellt. Dabei wird ein nullbasiertes Nummerierungssystem verwendet (z. B. ist der erste MAC-Block 0, der zweite MAC-Block 1 usw.)

3. MacSP - Die Kennung des MAC-Block-Subports, mit dem die physische Schnittstelle verbunden ist. Jedem MAC-Block sind vier Subports zugeordnet, die einem nullbasierten Nummerierungssystem folgen und um den Wert 2 inkrementiert werden. Daher hat der erste Subport den Index 0, der zweite Subport den Index 2, der dritte Subport den Index 4 und der vierte Subport den Index 6.

Dies wird im Beispiel hier veranschaulicht, in dem die physische Schnittstelle Ethernet1/1 dem Cloud Scale ASIC 0, MAC-Block 4 und dem MAC-Block-Subport 0 zugeordnet ist.

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

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Verwenden Sie den Befehl {x} show hardware internal tah counters asic {y}, um Registerzähler für den Cloud Scale ASIC anzuzeigen. Dieser Befehl enthält zwei Variablen:

1. {x} - Ersetzen Sie diesen Wert durch die Nummer des Linecard-Steckplatzes. Bei Top-of-Rack-Switches ist dies immer der Wert 1. Bei modularen End-of-Row-Switches ist die Linecard-Steckplatznummer die erste Nummer im Namen der physischen Schnittstelle. Beispiel: Die physische Schnittstelle Ethernet1/1 hat die Nummer des Linecard-Steckplatzes 1, während die physische Schnittstelle Ethernet4/24 die Nummer des Linecard-Steckplatzes 4 hat.

2. {y} - Ersetzen Sie diesen Wert durch den Cloud Scale ASIC-Bezeichner, der in Schritt 2 identifiziert wurde. Wenn z. B. die Spalte "Unit" für die physische Schnittstelle Ethernet1/1 den Wert 0 hatte, wäre der Wert dieser Variablen 0. Wenn die Spalte "Unit" für die physische Schnittstelle Ethernet4/24 den Wert 3 hätte, wäre der Wert dieser Variablen 3.

Diese Ausgabe zeigt eine Tabelle an. Jede Zeile der Tabelle ist ein anderes ASIC-Register. Jede Spalte der Tabelle entspricht einer physischen Schnittstelle am Switch. Der für jede Spalte verwendete Name ist nicht der Name der physischen Schnittstelle, sondern eine Kombination aus dem MAC-Block und dem untergeordneten MAC-Block-Port. Für die Spaltenüberschrift wird folgendes Format verwendet:

M{A},{B}-{InterfaceSpeed}

Es gibt drei Variablen in diesem Format:

1. {A} - Ersetzen Sie diesen Wert durch die MAC-Blocknummer.

2. {B} - Ersetzen Sie diesen Wert durch die Nummer des MAC-Block-Subports.

3. {InterfaceSpeed} - Dieser Wert entspricht der physischen Geschwindigkeit der Schnittstelle (z. B. 10G, 25G, 40Gx4 usw.)

Dies wird im Beispiel hier gezeigt. Weisen Sie darauf hin, dass die physische Schnittstelle Ethernet1/1 mit Linecard-Steckplatz 1 und Cloud Scale ASIC 0 verknüpft ist, was bedeutet, dass der Befehl ausgeführt werden muss, wenn Steckplatz 1 die hardwareinternen Zielzähler 0 anzeigt. Der der physischen Schnittstelle Ethernet1/1 zugeordnete MAC-Block ist 4, der der physischen Schnittstelle Ethernet1/1 zugeordnete MAC-Block-Subport ist 0, und die physische Schnittstelle Ethernet1/1 ist eine 10G-Schnittstelle ... Daher wird die gesuchte Spaltenüberschrift M4,0-10G sein.

Anmerkung: Die Ausgabe des folgenden Befehls ist sehr lang und breit. Es kann schwierig sein, diese Ausgabe innerhalb einer Terminalsitzung zu lesen. Cisco empfiehlt, die Breite des Terminals mit dem Befehl terminal width 511 zu maximieren und diese Ausgabe zur Überprüfung in einen externen Textleser/Editor zu kopieren.

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            ....         ....         ....         ....         ....         ....         ....

Die Ausgabe dieses Befehls enthält mehrere Dutzend Registerzähler. Es gibt zwei Schlüsselregisterzähler, die sich auf die Unterscheidung natürlicher CRC-Fehler von gestampften CRCs beziehen:

1. 02-RX Form with FCS Err (02-RX-Formular mit FCS-Fehler): Zeigt an, dass ein Frame mit einer ungültigen, aber nicht gestempelten CRC empfangen wurde.

2. 16-RX Form CRC Err(Stomp) - Zeigt an, dass ein Frame mit einem gestempelten CRC empfangen wurde.

Der Wert dieser Zähler ist hexadezimal. Mit dem Befehl dec NX-OS kann ein Hexadezimalwert in einen Dezimalwert konvertiert werden, wie hier gezeigt.

N9K-C93180YC-EX-2# dec 0xc

12

Die kombinierten Werte beider Registerzähler entsprechen der Anzahl der CRCs, die an der physischen Schnittstelle durch die Ausgabe von show interface oder show interface counters errors ungleich null beobachtet werden.

Cisco Nexus 9500 Cloud-Skalierung - CRC-Identifizierungs- und Tracing-Verfahren für modulare Switches

In diesem Abschnitt des Dokuments werden Schritt-für-Schritt-Anleitungen beschrieben, um die Quelle von CRC-Fehlern zu identifizieren, die an einer bestimmten physischen Schnittstelle Ethernet1/1 auf Cisco Nexus Switches der Serie 9500 beobachtet wurden.

Jede Linecard eines Nexus Switches der Serie 9500 ist über einen internen Link (iEth) mit den Fabric-Modulen verbunden. Jeder ASIC jeder Linecard verfügt über Full-Mesh-Verbindungen zu allen Fabric-Modulen. Das Beispiel hier zeigt eine Linecard mit vier Sugarbowl ASICs mit internen Verbindungen, die mit vier Fabric-Modulen in einem modularen Nexus 9500-Switch verbunden sind.

Wenn der von einem ASIC empfangene Datenverkehr einen anderen ASIC oder eine andere Linecard verlässt, muss dieser Datenverkehr über ein Fabric-Modul an das Fabric gesendet werden. Der Eingangs-ASIC wählt einen der iEth-Links zu den Fabric-Modulen aus, basierend auf einem Hash der Header des Pakets und der Anzahl der iEth-Links, die für den ASIC verfügbar sind.

Schritt 1: Zuordnen interner Links zwischen Linecards und Fabric-Modulen

Verwenden Sie den Befehl show system internal fabric connectivity module {x} (wobei {x} die Linecard- oder Fabric-Modul-Steckplatznummer ist), um die internen Verbindungen zwischen der angegebenen Linecard und allen Fabric-Modulen anzuzeigen. Diese Ausgabe zeigt eine Tabelle an, in der jede Zeile eine Eins-zu-Eins-Zuordnung zwischen internen Linecard-Verbindungen (in der Spalte "LC-EthLink") und internen Links jedes Fabric-Moduls (in der Spalte "FM-EthLink") anzeigt. Ein Beispiel hierfür ist ein Nexus 9508-Switch mit acht Linecards und vier eingefügten Fabric-Modulen. Die Ausgabe hier zeigt, dass jede ASIC-Instanz der Linecard, die in Steckplatz 8 des Switches eingesetzt ist, über zwei interne Verbindungen mit jedem der vier installierten Fabric-Module (in die Steckplätze 22, 23, 24 und 26 eingesetzt) verbunden ist.

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

Ebenso kann die Zuordnung der einzelnen Links aus Sicht eines Fabric-Moduls überprüft werden. Ein Beispiel hierfür ist hier dargestellt. Hier werden interne Verbindungen zwischen dem in Steckplatz 22 eingesetzten Fabric-Modul und jeder der acht im Nexus 9508-Chassis installierten Linecards angezeigt.

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         -

Verwenden Sie den Befehl show system internal fabric link-state module {x}, um zu überprüfen, ob der interne Port aktiv ist oder nicht (unter den "ST"-Spalten), und wie der entsprechende ASIC-Abschnitt und die MAC-ID einer bestimmten internen Verbindung (unter der Spalte "MAC") aussehen. Ein Beispiel hierfür ist hier dargestellt.

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]

Schritt 2: Überprüfen Sie die CRC-Zähler auf Eth-Verbindungen, und verfolgen Sie die Quelle beschädigter Frames.

Auf einem modularen Nexus 9500-Switch werden CRC-Fehler auf einer oder mehreren iEth-Verbindungen in den folgenden Szenarien angezeigt:

1. Wenn der Switch in einem Cut-Through-Switching-Modus betrieben wird, lässt eine Linecard, die einen beschädigten Ethernet-Frame mit einem falschen CRC-Wert im FCS-Feld empfängt, die Linecard nicht lokal fallen. Stattdessen leitet die Linecard das Paket wie gewohnt weiter. Wenn die Ausgangsschnittstelle für das Paket zu einer anderen ASIC oder Linecard gehört, leitet die Eingangs-Linecard das Paket an ein Fabric-Modul weiter. Die Fabric-Module arbeiten auch im Cut-Through-Switching-Modus, sodass das Paket vom Fabric-Modul an die Ausgangs-Linecard weitergeleitet wird. Die Ausgangs-Linecard leitet das Paket zum nächsten Hop weiter und erhöht den Zähler für Ausgabefehler an der Ausgangs-Schnittstelle.

2. Wenn eine interne Verbindung aufgrund von fehlerhafter Hardware ausfällt, können Pakete, die die interne Verbindung durchlaufen, zwischen einer Linecard und dem Fabric-Modul beschädigt werden.

Verwenden Sie den Befehl show system internal fabric connectivity stats module {x}, um den CRC-Zähler der entsprechenden internen Verbindungen zu überprüfen. Ein Beispiel hierfür ist hier dargestellt, wobei das in Steckplatz 22 eingesetzte Fabric-Modul Pakete mit einem ungültigen CRC auf iEth56 empfängt, der mit iEth26 der in Steckplatz 7 des Switches eingelegten Linecard verbunden ist. Dies zeigt an, dass beschädigte Ethernet-Frames vom Fabric-Modul von der Linecard empfangen werden, die in Steckplatz 7 des Switches eingesetzt ist.

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

Verwenden Sie den {x}-Befehl show hardware internal tah counters asic {y} auf einer Linecard oder einem Fabric-Modul, um festzustellen, ob CRC-Fehler ungültig sind oder CRCs gestampft wurden. Die beiden Registerzähler, die ungültige CRC-Fehler von gestampften CRC-Fehlern unterscheiden, sind:

1. 02-RX Form with FCS Err (02-RX-Formular mit FCS-Fehler): Zeigt an, dass ein Frame mit einer ungültigen, aber nicht gestempelten CRC empfangen wurde.

2. 16-RX Form CRC Err(Stomp) - Zeigt an, dass ein Frame mit einem gestempelten CRC empfangen wurde.

Ein Beispiel hierfür ist hier dargestellt, wo beschädigte Frames auf dem Fabric-Modul empfangen werden, das in Steckplatz 22 des Chassis durch die interne Verbindung iEth54 eingefügt wird, um die Line Card zu verbinden, die in Steckplatz 8 des Chassis eingefügt wird, mit gestempeltem CRC empfangen werden:

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

Alternativ können Sie mit dem Befehl show hardware internal errors module {x} die ASIC-Fehlerindikatoren für ein bestimmtes Modul anzeigen. Ein Beispiel hierfür ist hier dargestellt. Beachten Sie, dass in dieser Ausgabe der Zähler "Interface Inbound Errors (CRC,len,Algn Err)" sowohl für ungültige CRCs als auch für gestempelte CRCs inkrementiert wird, während der Zähler "Interface Inbound CRC Error Stomped" nur für gestempelte CRCs inkrementiert wird.

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

Nachdem Sie die Eingangs-Linecard identifiziert haben, von der die beschädigten Frames empfangen werden, verwenden Sie den Steckplatz {x} show hardware internal tah counters asic {y} oder zeigen Sie hardwareinterne Fehler-Modul {x} Befehle auf ähnliche Weise an, um die Eingangsschnittstelle zu identifizieren, an der die Fehler empfangen werden, sowie wenn Fehler als ungültige CRCs oder gestempelte CRCs empfangen werden.

In seltenen Fällen kann es vorkommen, dass ein Fabric-Modul oder eine Ausgangs-Linecard CRC-Fehler auf einer Eth-Verbindung zeigt, die verbundene Linecard jedoch keine Anzeichen für Eingangs-CRCs aufweist. Die Hauptursache für dieses Problem ist in der Regel ein Hardwarefehler des Fabric-Moduls. Cisco empfiehlt, ein Support-Ticket beim Cisco TAC zu erstellen, um dieses Problem weiter zu beheben und das Fabric-Modul bei Bedarf auszutauschen.

Beispiele

In diesem Abschnitt des Dokuments werden einige Beispiele aus dem oben beschriebenen Verfahren erläutert.

Szenario 1. Physische Schnittstelle empfängt gestempelte CRCs

In diesem Beispiel wird veranschaulicht, wie CRC-Fehler auf einer physischen Schnittstelle als gestempelte CRCs erkannt werden.

Berücksichtigen Sie die folgende Topologie:

In diesem Beispiel werden auf Switch N9K-1 durch ICMP-Pakete mit 8000 Byte und Jumbo-Größe, die von der Schnittstelle SVI 10 (der die IP-Adresse 192.0.2.1 gehört) an die Schnittstelle SVI 10 von N9K-3 (der die IP-Adresse 192.0.2 gehört) gesendet werden, absichtlich gestempelt 3.3), die eine MTU von 1500 Byte hat. N9K-1, N9K-2 und N9K-3 sind alle Switches des Modells Nexus 93180YC-EX.

N9K-3# 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

In diesem Beispiel werden inkrementelle CRC-Fehler an der physischen Schnittstelle Ethernet1/1 von Switch N9K-3 beobachtet.

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

Schritt 1: Erhöhen der CRCs bestätigen

Vergewissern Sie sich, dass die CRCs auf der physischen Schnittstelle Ethernet1/1 inkrementiert werden, indem Sie ICMP-Pakete in Jumbo-Größe mit 8000 Byte generieren, die von der Schnittstelle SVI 10 von N9K-1 (mit der IP-Adresse 192.0.2.1) an die Schnittstelle SVI 10 von N9K-3 (mit der IP-Adresse 192.0) gesendet werden. 2.2.3).

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

Schritt 2: Zuordnung einer physischen Schnittstelle zu einem ASIC-, MAC- und MAC-Block-Subport

Verwenden Sie den Befehl show interface hardware-mappings auf N9K-3, um die physische Schnittstelle Ethernet1/1 der ASIC-Nummer 0, dem MAC-Block 4 und dem MAC-Block-Subport 0 zuzuordnen.

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

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Basierend auf den Informationen aus Schritt 2 kennen wir die folgenden Fakten:

1. Die physische Schnittstelle Ethernet1/1 wird der ASIC-Nummer 0 zugeordnet.

2. Die physische Schnittstelle "Ethernet1/1" ist dem MAC-Block-Subport 0 des MAC-Blocks 4 zugeordnet.

3. Da es sich bei N9K-3 um einen Top-of-Rack-Switch der Serie Nexus 93180YC-EX handelt, wissen wir, dass die einzige mögliche Linecard-Steckplatznummer 1 ist.

4. Aus der Ausgabe von show interface in Schritt 1 geht hervor, dass die Geschwindigkeit der physischen Schnittstelle Ethernet1/1 10G beträgt.

Mithilfe dieser Informationen können wir die Zähler für das ASIC-Register für alle physischen Schnittstellen mit dem Befehl 1 show hardware internal tah counters asic 0 anzeigen. Insbesondere suchen wir nach ASIC-Registerzählern für M4,0-10G.

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            ....         ....         ....         ....           ....           ....           ....

Wir sehen einen Hexadezimalwert ungleich null von 0xc für Register 16, der angibt, dass Frames mit einem gestempelten CRC auf dieser physischen Schnittstelle empfangen wurden. Wir können den Befehl dec 0xc verwenden, um dies in einen Dezimalwert von 12 zu übersetzen, der der Anzahl der CRC-Fehler auf der physischen Schnittstelle Ethernet1/1 entspricht.

N9K-3# dec 0xc

12

Szenario 1 - Zusammenfassung

Wir haben bestätigt, dass N9K-3 Frames mit einem gestempelten CRC an der physischen Schnittstelle Ethernet1/1 empfängt. Das bedeutet, dass das Gerät an der Remote-Seite der Ethernet1/1-Verbindung (in diesem Fall N9K-2) den CRC dieser Frames stampft. Die Ursache der fehlerhaften Frames liegt nicht in der Verbindung, die direkt mit Ethernet1/1 verbunden ist, sondern weiter unten. Zusätzliche Fehlerbehebungen sollten am Downstream-Netzwerkgerät durchgeführt werden, um die Quelle dieser fehlerhaften Frames zu ermitteln.

Szenario 2. Physische Schnittstelle hat ungültige Frames mit ungültiger CRC empfangen

In diesem Beispiel wird veranschaulicht, wie CRC-Fehler auf einer physischen Schnittstelle identifiziert werden, die aufgrund von fehlerhaften Frames inkrementiert werden, die durch ein physisches Layer-Problem auf einer direkt verbundenen Verbindung verursacht werden.

Berücksichtigen Sie die folgende Topologie:

In diesem Beispiel erzeugt ein Datenverkehrsgenerator, der mit der physischen Schnittstelle Ethernet1/40 von Switch N9K-1 verbunden ist, absichtlich Frames mit einer falschen CRC. Damit wird ein physisches Layer-Problem auf der Verbindung mit Ethernet1/40 simuliert, z. B. ein defekter Transceiver oder ein beschädigtes Kabel. N9K-1 empfängt diese Frames, erkennt, dass der CRC ungültig ist, und erhöht den CRC-Fehlerzähler auf der physischen Ethernet1/40-Schnittstelle. N9K-1 ist ein Nexus 93180YC-EX-Modell-Switch.

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

Schritt 1: Erhöhen der CRCs bestätigen

Vergewissern Sie sich, dass die CRCs über die physische Schnittstelle Ethernet1/40 von N9K-1 durch die Befehle show interface oder show interface counters non-zero inkrementiert werden.

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

Schritt 2: Zuordnung einer physischen Schnittstelle zu einem ASIC-, MAC- und MAC-Block-Subport

Verwenden Sie den Befehl show interface hardware-mappings auf N9K-1, um die physische Schnittstelle Ethernet1/40 der ASIC-Nummer 0, MAC-Block 10 und dem MAC-Block-Subport 6 zuzuordnen.

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

Schritt 3: Überprüfen der Cloud Scale ASIC-Register auf CRC-bezogene Zähler

Basierend auf den Informationen aus Schritt 2 kennen wir die folgenden Fakten:

1. Die physische Schnittstelle Ethernet1/40 wird der ASIC-Nummer 0 zugeordnet.

2. Die physische Schnittstelle Ethernet1/40 ist dem MAC-Block-Subport 6 von MAC-Block 10 zugeordnet.

3. Da es sich bei N9K-1 um einen Top-of-Rack-Switch der Serie Nexus 93180YC-EX handelt, wissen wir, dass die einzige mögliche Linecard-Steckplatznummer 1 ist.

4. Aus der Ausgabe von show interface in Schritt 1 geht hervor, dass die Geschwindigkeit der physischen Schnittstelle Ethernet1/40 10G beträgt.

Mithilfe dieser Informationen können wir den Befehl show hardware internal tah counters asic 0 (Steckplatz 1 anzeigen) verwenden, um die ASIC-Registerzähler für alle physischen Schnittstellen anzuzeigen. Insbesondere suchen wir nach ASIC-Registerzählern für M10,6-10G.

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) ....         ....         ....         ....           ....           ....           ....           ....

Wir sehen einen Hexadezimalwert ungleich null von 0x973e für Register 2, der angibt, dass Frames mit einem ungültigen, aber nicht gestempelten CRC an dieser physischen Schnittstelle empfangen wurden. Wir können den Befehl dec 0x973e verwenden, um dies in einen Dezimalwert von 38.718 zu übersetzen. Dieser entspricht (oder ist kleiner, da die CRCs ständig inkrementiert werden) der Anzahl der CRC-Fehler auf der physischen Schnittstelle Ethernet1/40.

N9K-1# dec 0x973e

38718

Szenario 2 - Zusammenfassung

Wir haben bestätigt, dass N9K-1 Frames mit einem ungültigen, aber nicht gestempelten CRC an der physischen Schnittstelle Ethernet1/40 empfängt. Das bedeutet, dass die direkt mit Ethernet1/40 verbundene Verbindung (oder das Gerät am Remote-Ende der Verbindung) die wahrscheinlichste Quelle für fehlerhafte Frames ist. Weitere Fehlerbehebungen sollten auf der physischen Schicht dieser Verbindung durchgeführt werden, um die Ursache der fehlerhaften Frames zu isolieren (z. B. Überprüfung auf beschädigte Verkabelung, Ersetzen der aktuellen Transceiver durch zweifelsfrei funktionierende Transceiver usw.).

Szenario 3. Nexus 9500-Eth-CRC-Fehler - Syslog

In diesem Beispiel wird veranschaulicht, wie die Quelle von CRC-Fehlern auf einem internen iEth-Link identifiziert wird, wenn ein Syslog-Bericht über Fehler auf einer internen Schnittstelle von einem Switch der Serie Nexus 9500 generiert wird. Ein Beispiel für dieses Syslog finden Sie hier.

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

Dieses Syslog gibt an, dass Fehler an der internen Verbindung mit dem Ethernet 56 des Fabric-Moduls erkannt wurden, das in Steckplatz 22 des Switches eingesetzt ist.

Schritt 1: Eth-Link auf Fabric-Modul der angeschlossenen Linecard zuordnen

Verwenden Sie den Befehl show system internal fabric connectivity stats module {x}, um zu ermitteln, mit welcher Linecard der betroffene interne iEth-Link verbunden ist. In diesem Beispiel weist Eth56 des Fabric-Moduls, das in Steckplatz 22 des Switches eingesetzt ist, Fehler auf. Ein Beispiel hierfür ist hier dargestellt, wobei Eth56 des in Steckplatz 22 eingesetzten Fabric-Moduls mit Eth26 der in Steckplatz 7 des Switches eingesetzten Linecard verbunden ist.

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

Suchen Sie mit dem Befehl show system internal fabric link-state module {x} nach der ASIC-Instanz und der MAC-ID, die der internen iEth56-Verbindung des Fabric-Moduls zugeordnet sind. Ein Beispiel hierfür ist hier dargestellt, wobei die ASIC-Instanz 1 und die MAC-Kennung 27 ist.

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]

Schritt 2: Überprüfen Sie, ob die über die Eth-Verbindung empfangenen CRCs ungültig oder als "Stomped" gekennzeichnet sind.

Im vorherigen Schritt wird angezeigt, dass die ASIC-Instanzkennung 1 lautet und die MAC-Kennung 27 für Ethernet 56, das mit dem in Steckplatz 22 eingesetzten Fabric-Modul verbunden ist. Verwenden Sie den Befehl Steckplatz {x} show hardware internal tah counters asic {y}, um festzustellen, ob die vom Syslog gemeldeten CRCs ungültige CRCs oder gestempelte CRCs sind. Ein Beispiel hierfür ist hier dargestellt. Die Spalte M27,0-100Gx4 ist mit unserer MAC-ID 27 verknüpft und zeigt an, dass die CRCs gestempelt sind.

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

Sie können auch den Befehl show hardware internal errors module {x} verwenden, um dieselben Informationen zu ermitteln. Ein Beispiel hierfür ist hier dargestellt.

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

Denken Sie daran, dass in dieser Ausgabe der Zähler "Interface Inbound Errors (CRC,len,Algn Err)" sowohl für ungültige CRCs als auch für gestempelte CRCs inkrementiert wird, während der Zähler "Interface Inbound CRC Error Stomped" nur für gestempelte CRCs inkrementiert wird.

Schritt 3: Verfolgung der Quelle von Frames mit ungültigen CRCs auf der Eingangs-Linecard

Wir wissen jetzt, dass die CRCs, die in das Fabric-Modul, das in Steckplatz 22 des Switches eingesetzt ist, eintreten, von der in Steckplatz 7 eingesetzten Linecard in den Switch eintreten. Mit dieser Information können wir den Befehl show interface counters errors module {x} non-zero verwenden, um CRC-Zähler zu identifizieren, die zu den entsprechenden Linecards gehören. Ein Beispiel hierfür ist hier dargestellt.

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

Wir können Schritt #2 dieses Szenarios auf der entsprechenden Linecard wiederholen, um zu überprüfen, ob die Linecard ungültige CRCs oder gestempelte CRCs empfängt.

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

Verwenden Sie den Befehl show interface hardware-mappings, um den Port an der Vorderseite zu identifizieren, dem der MacId:MacSP-Wert von 11:0 in der obigen Ausgabe zugeordnet ist. Ein Beispiel hierfür ist hier dargestellt, wobei 11:0 dem Frontblendenanschluss Eth7/32 zugeordnet ist.

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

Szenario 3 - Zusammenfassung

Wir haben bestätigt, dass der Nexus 9500 Frames mit einem gestempelten CRC an der physischen Schnittstelle Ethernet7/32 empfängt. Das bedeutet, dass das Gerät an der Remote-Seite der Ethernet7/32-Verbindung den CRC dieser Frames stempelt. Die Ursache der fehlerhaften Frames liegt nicht in der Verbindung, die direkt mit Ethernet7/32 verbunden ist, sondern weiter unten. Zusätzliche Fehlerbehebungen sollten am Downstream-Netzwerkgerät durchgeführt werden, um die Quelle dieser fehlerhaften Frames zu ermitteln.

Szenario 4. Verfolgen der Quelle ungültiger CRC-Frames mit Ausgangsschnittstelle.

In diesem Beispiel wird veranschaulicht, wie die Quelle von Frames mit ungültigen CRCs auf einem Nexus 9500-Switch nachverfolgt wird, wenn ein Upstream-Switch meldet, dass der Nexus 9500 Frames mit gestempelten CRCs generiert. In diesem Szenario wird der Upstream-Switch über den Port Ethernet8/9 an der Vorderseite verbunden.

Schritt 1: Identifizieren des Fabric-Moduls Senden ungültiger CRC-Frames an die Ausgangs-Linecard

Wir wissen, dass die Ausgangsschnittstelle, die Frames mit gestempelten CRCs an den Upstream-Switch sendet, Ethernet8/9 ist. Zunächst müssen wir das Fabric-Modul ermitteln, das Frames mit gestempelten CRCs an die Linecard sendet, die in Steckplatz 8 des Chassis eingesetzt ist. Wir starten diesen Prozess mit dem Befehl show hardware internal errors module {x}. Ein Beispiel hierfür ist hier dargestellt.

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

MacID:MacSP 9:0 in der Ausgabe oben kann mit dem Befehl show system internal fabric link-state module 8 dem Quell-Fabric-Modul zugeordnet werden. Ein Beispiel hierfür ist hier dargestellt.

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]

Die MAC-ID 9 der Linecard in Steckplatz 8 ist dem Fabric-Modul in Steckplatz 22 des Chassis zugeordnet. Es wird erwartet, dass CRC-Fehler auf der internen Verbindung "iEth10" auftreten. Dies können wir mit dem Befehl show system internal fabric connectivity stats module 8 validieren. Ein Beispiel hierfür ist hier dargestellt.

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

Schritt 2: Zuordnen des Eth-Links auf dem Fabric-Modul zur verbundenen Linecard und Überprüfen auf Stomped-CRCs

Als Nächstes folgen wir dem gleichen Prozess wie in Szenario 3, indem wir die internen iEth-Links prüfen, die CRCs empfangen, ob diese CRCs gemäß dem ASIC des Fabric-Moduls gestampft sind oder nicht, und welche Linecard mit dem internen iEth-Link des Fabric-Moduls verbunden ist. Ein Beispiel hierfür wird hier mit dem Befehl show system internal fabric connectivity stats module {x}, dem Befehl show hardware internal errors module {x} bzw. dem Befehl show system internal fabric link-state module {x} dargestellt.

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]

Schritt 3: Verfolgen der Quelle von Frames mit ungültigen CRCs auf dem Eingangsmodul

Nach der Bestimmung der Eingangs-Linecard (in diesem Szenario die Linecard, die in Steckplatz 7 eingesetzt und durch iEth26 mit iEth56 des in Steckplatz 22 eingesetzten Fabric-Moduls verbunden ist) ermitteln wir, welcher Eingangs-Port von den beschädigten Frames in den Switch gelangt. Dies erfolgt mit dem Befehl show interface counters errors module {x} non-zero. Die Ausgabe des Befehls "{x}" zum Anzeigen hardwareinterner Fehler und des Befehls "show interface hardware-mappings" kann überprüfen, ob die empfangenen Frames ungültig oder gestampfte CRCs sind. Ein Beispiel dafür ist hier dargestellt, wo beschädigte Frames über die Schnittstelle Ethernet7/32 auf der Vorderseite in den Switch gelangen.

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

Szenario 4 - Zusammenfassung

Wir haben bestätigt, dass der Nexus 9500 Frames mit einem gestempelten CRC an der physischen Schnittstelle Ethernet7/32 empfängt. Das bedeutet, dass das Gerät an der Remote-Seite der Ethernet7/32-Verbindung den CRC dieser Frames stempelt. Die Ursache der fehlerhaften Frames liegt nicht in der Verbindung, die direkt mit Ethernet7/32 verbunden ist, sondern weiter unten. Zusätzliche Fehlerbehebungen sollten am Downstream-Netzwerkgerät durchgeführt werden, um die Quelle dieser fehlerhaften Frames zu ermitteln.

Zugehörige Informationen

- Cut-Through- und Store-and-Forward-Ethernet-Switching für Umgebungen mit niedriger Latenz