Ein Verbindungsverlust in einem Router tritt auf, wenn der Router keine Datenpakete an andere benachbarte Router übertragen kann, obwohl sich die Schnittstellen auf diesem Router weiterhin im aktiven Zustand befinden. Infolgedessen leiten die anderen benachbarten Router den Datenverkehr weiterhin an den betroffenen Router weiter, der die ankommenden Pakete verwirft, ohne eine Benachrichtigung an die anderen Router zu senden.
Wenn eine Packet Forwarding Engine in einem Router keinen Datenverkehr an andere Packet Forwarding Engines über die Datenebene innerhalb desselben Routers senden kann, kann der Router keine Pakete an einen benachbarten Router übertragen, obwohl die Schnittstellen auf der Steuerungsebene als aktiv angekündigt werden. Ein Fabric-Ausfall kann einer der Gründe für den Verlust der Konnektivität sein.
Die folgenden Fabric-Fehlerszenarien können auftreten:
-
Entfernen der Steuerplatine
-
Trainingsfehler bei High-Speed Link 2 (HSL2)
-
Single-Link-Ausfall auf einer Linecard
-
Mehrere Verbindungsausfälle auf derselben Linecard oder derselben Fabric Plane
-
Mehrere Verbindungsausfälle nach dem Zufallsprinzip auf einer Linecard oder einer Fabric-Ebene
-
Intermittierende CRC-Fehler (Cyclic Redundanz Check)
-
Ein vollständiger Verlust der Konnektivität für nur ein Ziel und nicht für andere Ziele
Wenn eine Linecard aus einem bestimmten Grund keinen Datenverkehr an andere Linecards innerhalb des Geräts weiterleitet, kann das Steuerungsprotokoll der Routing-Engine diesen Zustand nicht erkennen. Die Übertragung des Datenverkehrs wird nicht zu den funktionsfähigen, aktiven Linecards umgeleitet, sondern die Pakete werden weiterhin an die betroffene Linecard gesendet und an diesem Punkt verworfen. Die folgenden Ursachen können dafür vorliegen, dass eine Linecard keinen Datenverkehr weiterleiten kann:
Wenn alle Switch Control Boards (SCBs) die Verbindung zu den Linecards verlieren, werden alle Schnittstellen heruntergefahren. Wenn eine Packet Forwarding Engine einer Linecard die vollständige Verbindung zur oder von der Fabric verliert, wird diese Linecard heruntergefahren.
Systemhardwarefehler können von folgender Art sein:
-
Ein einmaliges Auftreten oder ein seltener Ausfall für kurze Zeit (z. B. Umweltspitzen). Dieser Fehler wird ohne manuelle Eingriffe effektiv behoben, indem die Fabric Plane neu gestartet wird und die Linecards und die Fabric Plane neu gestartet werden, falls erforderlich.
-
Wiederholte Fehler, die häufig auftreten.
-
Ein dauerhafter Misserfolg.
Eine Wiederherstellung nach einem reduzierten Durchsatz, z. B. Zeitüberschreitungen bei mehreren Packet Forwarding Engine-Zielen auf mehreren Ebenen, wird nicht versucht. Die Wiederherstellung der Konnektivität wird nur versucht, wenn sich alle Ebenen im Offline ODER-Zustand Fault befinden oder wenn die Ziele auf allen aktiven Ebenen nicht erreichbar sind.
Wenn ein Verbindungsverlust aufgrund einer bestimmten Linecard auftritt, die entweder eine gemeinsame Quelle oder ein gemeinsames Ziel des Zieltimeouts ist, und wenn Sie die action-fpc-restart-disable Anweisung auf Hierarchieebene [edit chassis fabric degraded] konfiguriert haben, wird keine Wiederherstellungsaktion durchgeführt. Mithilfe show chassis fabric reachability der Befehlsausgabe kann der Status der Fabric und der Linecard überprüft werden. Ein Alarm wird ausgelöst, um anzuzeigen, dass die bestimmte Linecard den Verbindungsverlust verursacht.
Methoden zur Erkennung von Fabric-Fehlern auf Routern der MX-Serie
Der Chassis-Daemon-Prozess (chassisd) erkennt das Entfernen einer Steuerplatine. Das Entfernen der Steuerplatine bewirkt, dass alle aktiven Ebenen, die sich auf dieser Platine befinden, deaktiviert werden und ein Switchover durchgeführt wird. Wenn die aktive Routing-Engine zusammen mit der Steuerplatine ebenfalls vom Stromnetz getrennt wird, verzögert sich die Erkennung der Entfernung der Steuerplatine, bis die Umschaltung der Routing-Engine erfolgt und die Wiederverbindung im primären Backup-Routing-Engine-Paar erfolgt. Wenn die Steuerplatine offline geschaltet wird, indem Sie die request chassis cb slot slot-number offline oder eine gedrückte physische Taste angeben, um ein ordnungsgemäßes Herunterfahren zu verursachen, tritt kein Fabric-Fehler auf, selbst wenn die Steuerplatine in den Offline-Zustand versetzt wird.
Wenn Sie die Steuerplatine der primären Routing-Engine entfernen, wodurch aktive Fabric-Ebenen entfernt werden, deaktiviert die Linecard die entfernten Ebenen lokal. Wenn Ersatzflugzeuge verfügbar sind, leitet die Linecard den Wechsel zu Ersatzflugzeugen ein. Wenn eine aktive Steuerplatine auf einer Backup-Routing-Engine entfernt wird, deaktiviert die primäre Routing-Engine die entfernten Ebenen und führt den Switchover zu Ersatzebenen durch, sofern verfügbar. Die Software versucht, die Dauer des Verbindungsverlusts zu optimieren, indem sie alle entfernten Ebenen deaktiviert. Die Ersatzflugzeuge werden nach und nach in den Online-Zustand überführt.
Fabric-Self-Ping ist ein Mechanismus zur Erkennung von Problemen im Fabric-Datenpfad. Jede Packet Forwarding Engine leitet Fabric-Datenzellen, die für sich selbst bestimmt sind, über alle aktiven Fabric-Ebenen weiter. Um die Datenzelle zu übertragen, sendet die Packet Forwarding Engine Fabric die Anforderungszellen über eine aktive Ebene und wartet auf ein Grant-Paket. Die Ziel-Packet Forwarding Engine sendet ein Grant-Paket über dieselbe Ebene, auf der die Anforderungszelle empfangen wird. Wenn die Grant-Zelle empfangen wird, sendet die Quell-Packet Forwarding Engine die Datenzelle.
Die Fabric der Packet Forwarding Engine enthält die Fähigkeit, Verzögerungen bei der Erteilung zu erkennen. Wenn Zuschüsse nicht innerhalb eines bestimmten Zeitraums eingehen, wird ein Ziel-Timeout deklariert. Ein Ziel-Timeout auf einer bestimmten Ebene durch eine Packet Forwarding Engine auf zwei oder mehr Linecards gilt als Hinweis auf Ebenenfehler. Selbst wenn eine Packet Forwarding Engine auf einer Linecard einen Fehler ausgibt, gilt die Linecard als fehlerhaft. Zielzeitüberschreitungen werden bemerkt, wenn die Packet Forwarding Engine Datenverkehr aktiv sendet, da Anforderungen nur für gültige Datenzellen gesendet werden. Die Software führt eine geeignete Aktion basierend auf dem Ziel-Timeout durch. Beim Self-Ping ist eine Datenzelle nur für die Quell-Packet Forwarding Engine bestimmt.
Fabric-Ping-Fehlermeldungen werden an den Fabric-Manager auf der Routing-Engine gesendet, der alle von allen Linecards gemeldeten Fehler sammelt und Korrekturmaßnahmen ergreift. Beispielsweise kann ein Pingfehler für alle Verbindungen derselben Linecard auf ein Problem auf der Linecard hinweisen. Ein Pingfehler für mehrere Linecards für dieselbe Fabric Plane kann auf ein Problem mit der Fabric hinweisen.
Wenn die Routing-Engine anhand der Informationen über Fehler, die sie von den Linecards oder den Packet Forwarding Engines über einen Zeitraum von 5 Sekunden erhält, feststellt, dass eine Fabric-Ebene ausgefallen ist, deutet dies auf einen Fabric-Fehler hin. Die Dauer von 5 Sekunden ist der Zeitraum, für den die Routing-Engine die Fehler von allen Linecards sammelt.
Fabric-Self-Ping-Pakete werden regelmäßig gesendet, um die Integrität der Fabric-Verbindungen zu überprüfen. Selbst-Pings werden im Intervall von 500 ms gesendet. Das Ziel-Timeout wird ebenfalls in Intervallen von 500 ms überprüft. Wenn zwei Timeouts nacheinander auftreten, wird ein Self-Ping-Fehler erkannt. Wenn eine Zielzeitüberschreitung empfangen wird, stoppt die Packet Forwarding Engine Fabric das Senden von Paketen an die Fabric. Um die Verbindungsbedingung erneut zu überprüfen, setzt die Software die Credits zurück, um sicherzustellen, dass erneut neue Anfragen gesendet werden. Wenn ein Self-Ping-Fehler auftritt, entfernt die Linecard die betroffene Ebene, um Daten an alle Ziele zu senden. Diese Methode stellt sicher, dass nicht versucht wird, den Selbst-Ping auf der defekten Ebene erneut zu senden.
Die folgenden Richtlinien gelten für die Self-Ping-Funktion:
-
Standardmäßig werden Self-Pings nicht auf Ersatz-Fabric-Flugzeugen gesendet, da Ersatzflugzeuge keinen Datenverkehr übertragen.
-
Die Größe der Self-Ping-Pakete ist groß genug, um die Zellen über alle aktiven Fabric-Ebenen zu laden (MX2020 unterstützt 24 Fabric-Ebenen und MX10008 unterstützt 12 Fabric-Ebenen).
-
Eine Erkennung von empfangenen Self-Ping-Paketen wird nicht durchgeführt.
-
Die Warteschlange mit hoher Priorität wird verwendet, um das Senden von Self-Ping für Überbelegungsfälle zu ermöglichen.