Einleitung
In diesem Dokument werden die Schritte zur Ausführung des CRC-Skripts (Cyclic Redundancy Check, zyklische Redundanzprüfung) für Nexus 9000 beschrieben, das Ports mit CRC-Fehlern identifiziert und Schritte zur Behebung dieser Fehler enthält.
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 genug vom Frame-Header 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.
Zur Behebung von CRC-Schnittstellenfehlern müssen die CRC- und FCS-Zählerinkrementalwerte (Frame Check Sequence) überprüft werden, um Schnittstellenzählerfehler in diesen Switches zu beheben.
Dieses Skript automatisiert die Identifizierung von CRC-/FCS-Fehlern in den Cloud-basierten ASIC-Switches (Application Specific Integrated Circuit) der Serien 9200 und 9300. Das Tool erfasst in regelmäßigen Abständen CRC- und FCS-Zählerwerte der Schnittstellen, um zu überprüfen, ob Fehler aufgetreten sind oder aktiv sind, und führt entsprechende Korrekturschritte durch.
Die Skriptausführung ist in zwei Abschnitte unterteilt, wobei
- Poller Script (Script-1) sammelt alle 10-30 Schnittstellenfehlerdaten in Dateien für eine Dauer von maximal sieben Tagen.
- Parser-Skript (Skript-2) analysiert diese Ausgaben und liefert tabellarische Ausgabe mit Schnittstellen, die Fehlerquelle sind, sowie Schnittstellen, die nur die gestampften Pakete weiterleiten.
Führen Sie script-2 mindestens nach 30 Minuten der Skript-1-Ausführung aus, d. h. mindestens dann, wenn zwei oder mehr Dateien als Teil der Skript-1-Ausführung gesammelt wurden.
Skript sammelt die Ausgabe dieser Befehlssätze und analysiert sie, um die Quelle von CRC zu identifizieren. Weitere Informationen finden Sie unter dem Link im Abschnitt "Related Information" (Verwandte Informationen).
switch# show interface
switch# show interface counters errors non-zero
switch# show interface hardware-mappings
Switch# Steckplatz {x} zeigt die interne Hardware der Tah-Zähler an, grundlegend {y}
Voraussetzungen
Das Skript ist auf Git verfügbar.
Es muss vom Client-Computer (Jump-Server) mit Netzwerkzugriff auf die Nexus Switches heruntergeladen und ausgeführt werden, wobei eine CRC-Fehleranalyse erforderlich ist.
Klicken Sie hier, um das Skript herunterzuladen.
Anforderungen
Stellen Sie sicher, dass diese Voraussetzungen auf dem Client-Computer (Jump-Server) installiert sind:
- Python 3
- Client-Computer (Jump-Server) mit Netzwerkzugriff auf Nexus-Switches
- Nexus_CRC_requirements.txt steht in Git zur Installation auf dem Client-Computer zur Verfügung.
(Dies ist ein einmaliges Setup im Client-Jump-Host. Mit diesem Schritt werden erforderliche Python-Bibliotheken installiert, um zu springen.)
Schritte zur Installation von requirements.txt
Schritt 1: Laden Sie NEXUS_CRC_requirements.txt herunter.
Schritt 2: Öffnen des Terminalfensters/der Eingabeaufforderung
Schritt 3: Navigieren Sie zu dem Ordner, in dem sich NEXUS_CRC_requirements.txt befindet, und führen Sie den folgenden Befehl aus:
#pip Installation -r Nexus_CRC_requirements.txt
Bei erfolgreicher Installation wird die folgende Meldung angezeigt:
Erfolgreich installiert DateTime-4.3 numpy-1.21.2 pandas-1.3.2 paramiko-2.7.2 python-dateutil-2.8.2 stdiomask-0.0.5 tabulate-0.8.9 termcolor-1.1.0
Verwendete Komponenten
Das Skript wird auf folgenden Jump-Servern getestet:
- Windows-10 64-Bit
- MAC Monterey
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Verwandte Produkte
Dieses Skript dient zum Analysieren von CRC-Fehlern für Nexus 9200 und 9300 Cloud Scale ASIC-Switches:
Anwendbare Plattformen: 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
Hintergrundinformationen
Cisco Nexus Switches der Serie 9000 verwenden standardmäßig Cut-Through-Switching.
Die inkrementellen Werte der CRC- und FCS-Zähler müssen überprüft werden, um die Fehler der Schnittstellenzähler in diesen Switches zu beheben.
Dieses Skript automatisiert die Erkennung von CRC-/FCS-Fehlern in Cloud-basierten ASIC-Switches der Serien 9200 und 9300. Das Tool erfasst in regelmäßigen Abständen CRC- und FCS-Zählerwerte der Schnittstellen, um zu überprüfen, ob Fehler aufgetreten sind oder aktiv sind, und führt entsprechende Korrekturschritte durch.
Die Skriptausführung ist in zwei Abschnitte unterteilt, wobei
- Poller Script (Script-1) sammelt alle 10-30 Schnittstellenfehlerdaten in Dateien für eine Dauer von maximal sieben Tagen.
- Parser-Skript (Skript-2) analysiert diese Ausgaben und liefert tabellarische Ausgabe mit Schnittstellen, die Fehlerquelle sind, sowie Schnittstellen, die nur die gestampften Pakete weiterleiten.
Führen Sie script-2 mindestens nach 30 Minuten der Skript-1-Ausführung aus, d. h. mindestens dann, wenn zwei oder mehr Dateien als Teil der Skript-1-Ausführung gesammelt wurden.
Schritte zur Skriptausführung
Ausführung des Abfrageskripts (Skript-1)
Mit diesen Schritten wird ein Abfrageskript ausgeführt, das in regelmäßigen Abständen CRC-/FCS-Fehlerindikatoren in Dateien sammelt.
Schritt-1: Öffnen Sie das Terminal /command prompt, und führen Sie "NEXUS_CRC_POLLER.py" aus:
#python3 NEXUS_CRC_POLLER.py
Eingaben:
Geben Sie die IP-/FQDN-Adresse, den Benutzernamen und das Kennwort des Nexus-Switches ein:
Schritt-2: Geben Sie den Pfad zum Ordner (Speicherort auf Ihrem Jump-Host) ein, in dem Sie die Dateien speichern möchten:
GÜLTIGES Ordnerformat:
BEISPIEL:
Windows-> C:\Users\Admin\Desktop\Nexus\
MAC -> /Users/admin/Desktop/Nexus/
**BITTE BEACHTEN SIE, dass die Datenerfassung und Skriptausführung beeinträchtigt werden, wenn das Ordnerformat nicht wie oben beschrieben ist. Stellen Sie außerdem sicher, dass der Ordner, in dem Sie die Dateien speichern möchten, bereits vorhanden ist**
Schritt-3: Geben Sie die Dauer ein, für die das Skript ausgeführt werden soll:
Maximal - sieben Tage
Minimum - Mindestens 30 Minuten laufen lassen, um CRC-Zähler mehrmals zu erfassen und Inkremente zu identifizieren
**Script sammelt alle 10 bis 30 Minuten Schnittstellenfehler und speichert Daten in Dateien unter dem Pfad, der in der vorherigen Eingabe angegeben wurde. Endzeit des Datenerfassungsskripts, basierend auf der in input angegebenen Endzeit**
Schritt-4: Wenn keine Fehler in der Domäne vorhanden sind, wird der Benutzer gefragt, ob er fortfahren und erneut Daten sammeln möchte:
Ausführung des Parser-Skripts (Skript-2)
Diese Schritte dienen zum Ausführen des Parser-Skripts, das die CRC-/FCS-Fehlerdateien analysiert, die vom Poller-Skript erfasst wurden, und das Korrekturschritte bereitstellt.
Starten Sie die Ausführung des Parser-Skripts (Skript-2), sobald mindestens zwei Dateien als Teil der Ausführung des Poller-Skripts (Skript-1) generiert wurden, um Daten zu vergleichen (d. h. nach ca. 30 Minuten der Ausführung des Poller-Skripts).
Halten Sie die Schriftauflösung für Terminalsitzungen auf 100 %, um eine korrekte tabellarische Ausgabeansicht zu erhalten.
Schritt 1: Öffnen Sie die Terminal-/Eingabeaufforderung, und führen Sie "NEXUS_CRC_PARSER.py" aus:
Geben Sie denselben Dateispeicherort ein, an dem Sie Daten aus Skript-1 gesammelt haben.
Beispiel:
Geben Sie den absoluten Pfad des Ordners ein, in dem die Dateien gespeichert sind: /Users/rgajjar/Desktop/CRC_NEXUS/
Analyseskript (Skript-2) - Ausgabeprüfung
Beispielausführung und Ausgabetabelle für Switch-Version >=10.2:
Beispiel-Ausführungs- und Ausgabetabelle für Switch-Version < 10.2:
Zugehörige Informationen
Weitere Informationen zur Identifizierung von N9K CRC-Fehlern finden Sie unter: https://www.cisco.com/c/en/us/support/docs/switches/nexus-9000-series-switches/216239-nexus-9000-cloud-scale-asic-crc-identifi.html#anc12