Die Cisco IOS®-Software unterstützt mehrere Mechanismen, um die Weiterleitung von Datenverkehr bei minimaler Verzögerung und hohem Durchsatz zu vereinfachen. In diesem Dokument wird erläutert, wie Sie bestimmen, welchen Cisco IOS Switching- oder Forwarding-Pfad Ihre Pakete einnehmen.
Hinweis: In diesem Dokument werden Prozesswechsel, schnelles Switching und nur Cisco Express Forwarding (CEF) behandelt.
Die Leser dieses Dokuments sollten über folgende Themen Bescheid wissen:
Cisco IOS-Software
Plattformen der Serien Cisco 1600, 2500 und 3600
Dieses Dokument ist nicht auf bestimmte Software- und Hardwareversionen beschränkt.
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps zu Konventionen von Cisco).
Cisco IOS-Switching definiert den Paketfluss durch den Router. Insbesondere wird festgelegt, wie schnell das Paket über den Router weitergeleitet werden kann und in welchen physischen Puffern die Pakete gespeichert werden.
In der Geschichte von Cisco IOS wurden mehrere Switching-Methoden entwickelt. Einige Methoden werden nur auf bestimmten Plattformen unterstützt. CEF ist die neueste Switching-Methode. Wenn CEF global aktiviert ist (Standardverhalten), ist auch der Befehl ip route-cache cef interface specific aktiviert. Dieser Befehl stellt sicher, dass CEF-Switching für Pakete ausgeführt wird, die diese Schnittstelle betreten. Gelegentlich wird der Befehl no ip route-cache cef hinzugefügt, wenn CEF nur für eine Schnittstelle deaktiviert werden soll. Dadurch wird das CEF-Switching für diese Schnittstelle deaktiviert. Cisco IOS fügt der ausgeführten Konfiguration den Befehl no ip route-cache nicht allein hinzu, wenn CEF deaktiviert werden muss. Sie wurde auf vielen Plattformen des Cisco IOS 12.0 Mainline eingeführt, insbesondere Low- und Midrange-Plattformen wie die Cisco Serien 1600, 2500 und 3600.
Wenn ein Router ein Paket an einer gerouteten Schnittstelle empfängt, entfernt er zunächst die Layer-2-Frame-Informationen (L2). Anschließend wird das Layer-3-Paket (L3) im E/A-Speicher (Input/Output) gespeichert. Was als Nächstes geschieht, hängt vom Switching-Pfad ab, dem das Paket folgt.
Diese Schritte können verwendet werden, um zu bestätigen, dass Pakete den CEF-Switching-Pfad befolgen:
Bestätigen Sie, dass CEF global und auf einer bestimmten Schnittstelle aktiviert ist.
router#show ip cef %CEF not running
Verwenden Sie den Befehl ip cef im globalen Konfigurationsmodus, um (zentrale) CEF zu aktivieren.
Hinweis: Bei der Cisco Serie 7200 ist CEF die standardmäßige Cisco IOS-Switching-Methode in einer kommenden Version von Cisco IOS.
Verwenden Sie den Befehl show ip cef prefix und überprüfen Sie, ob Präfixe aufgelistet sind.
router#show ip cef Prefix Next Hop Interface 0.0.0.0/32 receive 192.168.0.0/30 attached Serial2/0/0:1 192.168.0.0/32 receive
Bestätigen Sie, dass CEF auf einer bestimmten Schnittstelle aktiviert ist.
Verwenden Sie den Befehl show cef interface x/x, um nach "IP CEF-Switching aktiviert" oder "IP Distributed CEF (dCEF) Switching enabled" zu suchen.
router#show cef interface fastEthernet 0/0/0 FastEthernet0/0/0 is up (if_number 2) Internet address is 192.168.1.253/24 ICMP redirects are always sent Per packet loadbalancing is disabled Inbound access list is not set Hardware idb is FastEthernet0/0/0 Fast switching type 1, interface type 18 IP Distributed CEF switching enabled Fast flags 0x0. ifindex 1(1) Slot 0 Slot unit 0 VC -1 Hardware transmit queue ptr 0x48001A00 (0x48001A00) Transmit limit accumulator 0x48001A02 (0x48001A02) IP MTU 1500
Verwenden Sie den Befehl show ip interface, um die aktivierten Cisco IOS-Switching-Methoden anzuzeigen.
router#show ip interface fastethernet 1/0/0.1 FastEthernet1/0/0.1 is up, line protocol is up IP fast switching is enabled IP fast switching on the same interface is enabled IP Flow switching is disabled IP CEF switching is enabled IP Distributed switching is enabled IP Fast switching turbo vector IP Normal CEF switching turbo vector IP multicast fast switching is enabled IP multicast distributed fast switching is disabled IP route-cache flags are Fast, Distributed, No CEF
In dieser Ausgabe zeigt das Flag "No CEF" an, dass CEF aufgrund des Befehls no ip route-cache cef auf einer bestimmten Schnittstelle deaktiviert wurde. Die Markierung "CEF" zeigt an, dass CEF ausgeführt wird. Im Steady-State sollten beide Markierungen nicht angezeigt werden. Die Cisco Bug-ID CSCdr80269 (nur registrierte Kunden) löst seltene Probleme, die dazu führen können, dass beide Markierungen angezeigt werden. Weitere Informationen zu Bug-IDs finden Sie im Bug Toolkit (nur registrierte Kunden) .
Bestätigen Sie, dass die Mehrzahl der Pakete, die den Router durchlaufen, CEF-Switched ist.
Verwenden Sie den Befehl show interface x/x stat und bestimmen Sie die Anzahl der Pakete und Bytes, die der Router über "Prozessor" und nicht über "Route-Cache" weitergeleitet hat. Beachten Sie, dass der "Route-Cache" sowohl Fast-Switched- als auch CEF-Switched-Pakete umfasst.
router#show interface stats FastEthernet0/0 Switching path Pkts In Chars In Pkts Out Chars Out Processor 95084 26211621 33493 3386174 Route cache 24581 1132797 24542 13297583 Distributed cache 0 0 0 0 Total 119665 27344418 58035 16683757
Mit dem Befehl show ip cache können Sie feststellen, ob ein IP-Cache-Eintrag vorhanden ist, der anzeigt, dass das Paket dem Fast-Switching-Pfad folgt. Fast Switching basiert auf einem bedarfsgesteuerten Route-Cache, um die Paketweiterleitung über einen Router zu beschleunigen. Der Treibercode, der auf der Schnittstellenhardware ausgeführt wird, überträgt die Steuerung vorübergehend an den Fast-Switching-Code, der den Route-Cache nach einem Frame und anderen Informationen durchsucht, die aus einem zuvor übertragenen Paket erstellt wurden. Wenn der Route-Cache einen Eintrag enthält, versucht der Fast-Switching-Code, das Paket direkt an die Zielschnittstelle zu senden.
router#show ip cache IP routing cache 0 entries, 0 bytes 0 adds, 0 invalidates, 0 refcounts Minimum invalidation interval 2 seconds, maximum interval 5 seconds, quiet interval 3 seconds, threshold 0 requests Invalidation rate 0 in last second, 0 in last 3 seconds Prefix/Length Age Interface Next Hop
In diesen Schritten wird ein spezifischeres Verfahren zur Überprüfung der Weiterleitung von Paketen mit CEF beschrieben.
Aktivieren Sie CEF mit dem Befehl ip cef.
Geben Sie den Befehl clear ip cache aus, um die Einträge im schnellen Cache zu löschen.
Starten Sie den Datenstrom.
Geben Sie den Befehl show ip cache ein. Vergewissern Sie sich, dass keine Einträge im Fast-Switched-Cache angezeigt werden, da die Pakete CEF-Switched sind.
Geben Sie den Befehl show interface stats ein, und bestätigen Sie inkrementelle Treffer für eingehenden Route-Cache.
Hinweis: Der Route-Cache-Zähler umfasst sowohl Fast-Switched- als auch CEF-Switched-Pakete.
Deaktivieren Sie CEF mit dem Befehl no ip route-cache cef auf der eingehenden Schnittstelle.
Geben Sie den Befehl show interface stats ein, und bestätigen Sie inkrementelle Treffer für den Route-Cache.
Geben Sie den Befehl show ip cache ein, und bestätigen Sie, dass Einträge angezeigt werden, da Cisco IOS auf Fast Switching zurückgefallen ist.
Geben Sie den Befehl no ip route-cache auf der Ausgangsschnittstelle ein, um das schnelle Switching zu deaktivieren. Pakete an der übereinstimmenden eingehenden Schnittstelle werden prozessgesteuert.
Hinweis: Es wird nicht empfohlen, das Switching von Prozessen in einem Netzwerk mit hohem Datenverkehrsaufkommen zu konfigurieren.
Wenn Sie bestätigt haben, dass CEF auf einer Router-Schnittstelle aktiviert ist, und festgestellt haben, dass die meisten Pakete nicht über CEF geschaltet sind, erfassen Sie diese Befehle, wenn Sie ein Problem an das Cisco Technical Assistance Center (TAC) melden.
Hinweis: Bevor Sie Debugbefehle ausgeben, lesen Sie die wichtigen Informationen zu Debug-Befehlen.
show cef interface x/x: Zeigt Schnittstelleninformationen zu CEF an.
show ip cef prefix: Zeigt den Präfixeintrag in Forwarding Information Base (FIB) an.
show adjacency interface detail: Zeigt rekursive und direkte Präfixe an, die durch Adjacency aufgelöst werden.
show cef not-cef-switching: Zeigt an, welche Pakete nicht CEF-geswitcht sind.
debug ip cef drop: Zeigt Debuginformationen für CEF-verworfene Pakete an.
Die Eingabeschnittstelle bestimmt den Cisco IOS-Switching-Pfad, den ein Paket einnimmt. Berücksichtigen Sie diese Faustregeln, wenn Sie Switching-Methoden auf einer bestimmten Schnittstelle aktivieren oder deaktivieren.
Eingehende Schnittstelle | Ausgehende Schnittstelle | Switching-Methode |
---|---|---|
CEF | Prozess | CEF |
Prozess | CEF | Schnell |
Prozess | Fast Switching (IP-Route-Cache) | Schnelles Switching |
CEF | Schnelles Switching | CEF |
Mit anderen Worten: Sie müssen CEF auf der eingehenden Schnittstelle aktivieren, damit Pakete über CEF-Switching abgewickelt werden können. Da CEF die Weiterleitungsentscheidung für die Eingabe trifft, verwenden Sie den Befehl no ip route-cache cef an der Eingangsoberfläche, um CEF zu deaktivieren. Da Cisco IOS hingegen nach dem Switching eines Pakets einen Fast-Switching-Cache-Eintrag erstellt, wird ein Paket, das über eine prozessgesteuerte Schnittstelle eingeht und über eine Fast-Switched-Schnittstelle ausgeht, schnell geswitcht. Verwenden Sie den Befehl no ip route-cache auf der Egress-Schnittstelle, um Fast Switching zu deaktivieren. Diese Datenverkehrstypen sind nicht CEF-geschaltet:
Pakete, für die kein Eintrag im Switching-Cache vorhanden ist
Für den Router bestimmte Pakete
Broadcast-Datenverkehr
IP-Pakete mit Optionen
Pakete, die eine Protokollübersetzung erfordern
Verschlüsselter Datenverkehr
Der Begriff "Staffel" wird von Cisco definiert, um die Aktion des Gerätetreibers einer Schnittstelle zu beschreiben, ein Paket "nach unten" auf die nächstschnellste Switching-Ebene zu senden. Diese Liste definiert die Reihenfolge der bevorzugten Cisco IOS-Switching-Methoden (vom schnellsten zum langsamsten).
Verteilte CEF
CEF
Schnelles Switching
Prozess-Switching
Ein Stempel tritt unter folgenden Bedingungen auf:
Die nächste niedrigere Ebene hat keinen gültigen Pfad oder, im Fall von CEF, eine gültige Adjacency erzeugt. Mit anderen Worten: Wenn beim CEF-Suchvorgang kein gültiger Eintrag in der Datenbank für Weiterleitungsinformationen gefunden wurde, wird das Paket auf den nächsten verfügbaren Switching-Pfad geleitet oder verworfen.
Eine bestimmte Funktion oder Layer-2-Kapselung wird auf der niedrigsten Ebene nicht unterstützt. Wenn CEF eine bestimmte Funktion unterstützt, wird das Eigentum an einem Paket über eine Reihe von Software-Routinen im CEF "feature path" übertragen.
Eine Funktion erfordert eine besondere Handhabung.
Wenn einige Ausgabefunktionen in CEF nicht unterstützt werden, wird in CEF eine Falladjazenz installiert. CEF steuert alle Pakete, die an eine solche Adjacency gesendet werden, in den nächstbesten Switching-Modus, um alle Pakete zu verteilen.
center#show ip cef 45.0.0.0 45.0.0.0/8, version 184, 0 packets, 0 bytes via 1.1.1.1, Tunnel0, 0 dependencies next hop 1.1.1.1, Tunnel0 valid punt adjacency CEF Packets passed on to next switching layer Slot No_adj No_encap Unsupported Redirect Receive Bad_ttl Options RP 0 0 0 0 5700 0 0 2 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0
Bei einer unvollständigen Adjacency geht CEF davon aus, dass der Router als Ganzes (einschließlich aller anderen Switching-Pfade) nicht weiß, wie zum benachbarten Knoten gelangt. Wir verwenden Pakete, um Switching zu verarbeiten, um ein Abwicklungsprotokoll wie Address Resolution Protocol (ARP) abzubrechen, das zu einem späteren Zeitpunkt zur Beendigung der Adjacency führt. In diesem Fall sendet CEF alle zwei Sekunden ein Paket an den nächsten Switching-Pfad, um eine Paketflut zu vermeiden. In diesem Fall können Pings an die IP-Adresse zu etwa 50 Prozent fehlschlagen, und Sie sehen ein "!!!!.!!". Ping-Muster. Diese Bedingung tritt auch auf, wenn die CEF-Tabelle beschädigt ist, was durch einen Unterschied zwischen den Befehlsinformationen show ip route und der Befehlsinformation show ip cef für eine bestimmte IP-Adresse angegeben wird.
Hinweis: Auf dem Gigabit Switch Router (GSR) generiert die Linecard (LC) im CEF ICMP Echoantworten (Internet Control Message Protocol). Wenn das Paket nicht für eine der lokalen Adressen der globalen Zugriffskontrolllisten bestimmt ist, sind keine Prozesse beteiligt. Er wird entweder direkt in der Hardware oder in dCEF unterbrochen, je nachdem, welches LC Sie verwenden.
Auf der globalen SR-Plattform sind schnelles Switching und Prozess-Switching nicht verfügbar. Wenn ein Zielpräfix nicht in der Tabelle für eingehende LCs zu einem Weiterleitungseintrag aufgelöst werden kann, wird das Paket verworfen. Nur Pakete, die einer glean-Adjacency entsprechen, werden an den Gigabit Routing Processor (GRP) weitergeleitet. Darüber hinaus sendet die LC-CPU im GSR Pakete nicht auf Funktionen an das GRP, und der LC sendet einen ICMP Unreachable (nicht erreichbar), solange der Befehl no ip unreachables nicht konfiguriert ist. Auf der GSR sind die einzigen Pakete, die an die GRP geleitet werden, Pakete, die an eine Schnittstelle auf dem Router oder Pakete, die vom Router stammen, gerichtet.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
28-May-2007 |
Erstveröffentlichung |