Mehrere Prozessoren, die sich auf einem dedizierten Systemprozessormodul befinden, sowie lokale Schnittstellen-Hardware arbeiten zusammen, um eine erfolgreiche Übertragung und den Empfang von Paketen über virtuelle ATM-Schaltungen (VCs) zu gewährleisten. Diese Prozessoren kommunizieren untereinander, indem sie Meldungen zur Ausführung von Funktionen wie VC-Einrichtung und -Entfernung, Statistikauflistung auf der physischen Ebene und Alarmgenerierung bereitstellen. Diese Botschaften, so genannte Liebesbriefe oder Liebesnachrichten, werden von einem Prozessor in einen Speicherblock geschrieben. Ein Empfangsprozessor liest die Nachricht dann. Die Ausgabe des Befehls debug atm events stellt ein Fenster für diesen Nachrichtenmechanismus bereit, z. B. die folgende Ausgabe von einem PA-A3.
Jun 17 12:48:50.631 BST: atmdx_mailbox_proc(ATM5/0/0): received report type 2 Jun 17 12:48:50.631 BST: atmdx_process_love_letter(ATM5/0/0): 2 VCs core statistics Jun 17 12:48:55.631 BST: atmdx_mailbox_proc(ATM5/0/0): received report type 3 Jun 17 12:48:55.631 BST: atmdx_process_love_letter(ATM5/0/0): 1 VCs aux statistics
Dieses Dokument dient der Veranschaulichung der Ausgabe von Debugging-ATM-Ereignissen, um zwischen Informationsmeldungen und Meldungen zu unterscheiden, die auf ein operationelles Problem hinweisen. In diesem Dokument wird auch die standardmäßige ATM-Schnittstellensoftware-Architektur vorgestellt.
Vorsicht: Bevor Sie Debugbefehle ausgeben, lesen Sie bitte die Hinweise Wichtiger Informationen über Debug-Befehle. Der Befehl debug atm events gibt abhängig von der Anzahl der VCs, für die Statistiken gemeldet werden müssen, sowie von der Anzahl der VC-bezogenen Ereignisse eine große Menge an Fehlerbehebungsausgaben auf einem Produktions-Router aus.
Für dieses Dokument bestehen keine speziellen Anforderungen.
Dieses Dokument ist nicht auf bestimmte Software- und Hardwareversionen beschränkt.
Weitere Informationen zu Dokumentkonventionen finden Sie in den Cisco Technical Tips Conventions.
Alle ATM-Schnittstellen verwenden eine Softwarearchitektur, die aus mehreren Bausteinen besteht. Bevor wir diese Softwareblöcke durchgehen, müssen wir zunächst die Cisco IOS® Software-Treiber und die PCI-Bus-Architektur in Ihrem Router kennen.
Ein Treiber ermöglicht es Software-Ingenieuren, eine Hardware-Abstraktion zu implementieren. Sie ermöglicht es Technikern, grundlegende Software-Blöcke zu erstellen, die auf jeder Plattform ausgeführt werden, und diesen plattformunabhängigen Code dann mithilfe von Treibern an eine bestimmte Plattform anzupassen, z. B. die 7200er- oder die 3600er-Serie.
Der PA-A3 unterstützt einen PCI-Host-Treiber, der es dem SAR-Prozessor (Segmentation and Reassembly) ermöglicht, mit PCI-Bussen (Periphery Component Interconnect) zu kommunizieren, die die Länge der 7200-/7400-Serie aufweisen, sowie mit dem VIP (vIP) auf RSP-Plattformen. PCI-Busse dienen als Datenpfad zwischen Port-Adaptern und Hostspeicher im VIP oder auf der Network Processing Engine (NPE)/Network Services Engine (NSE). Das folgende Diagramm zeigt die Architektur des VIP2 und die Position der PCI-Busse:
In dieser Tabelle sind die Softwareblöcke auf dem PA-A3 aufgeführt:
Softwareblock | Funktion |
ATM-Core | Plattform- oder PA-unabhängige Softwarefunktionen, die alle ATM-Schnittstellen verwenden. Beispielsweise übernimmt der ATM-Core die OAM- und ILMI-Verwaltung. |
Plattformtreiber | Plattformabhängige Softwarefunktionen, die die allgemeine ATM-Kernsoftware mit der PCI-Host-Treibersoftware "überbrücken". ATM-Core und die PCI-Host-Treiber tauschen Befehle, Statusaktualisierungen und Statistiken über die Bridge aus. Der Plattform-ATM-Treiber verarbeitet auch Empfangs-Paket-Weiterleitung, plattformspezifische Initialisierungsfunktionen und Statistiken auf physischer Ebene, wie im Display des show-Controllers gezeigt. |
PCI-Host-Treiber | Stellt die PCI-Host-Schnittstelle für den SAR-Chip auf dem PA-A3 bereit. Führt mehrere Schlüsselfunktionen aus:
|
Host-Schnittstelle | Teil des Hardware-Funktionssatzes jedes SAR. Führt mehrere wichtige Aktionen durch:
|
Firmware | Start- oder Bootcode sowie optimierte Runtime-Images für die ATM-Prozessoreinheit (APU) auf den SARs für Empfang und Übertragung. Vom PCI-Host-Treiber heruntergeladen. |
Auf der RSP/VIP-Plattform befindet sich der Plattformtreiber im RSP-System-Image und VIP-System-Image, während der PCI-Host-Treiber Teil des VIP-System-Image ist. Auf der 7200-Plattform sind beide Treiber Teil des Systemabbilds.
Die PA-A3-spezifische Software ist mit der VIP-Software oder mit der Systemsoftware für andere unterstützende Plattformen gebündelt.
Wie oben erwähnt, ist eine Mailbox Teil eines Messaging-Modells, das Cisco IOS zum Übertragen von Nachrichten zwischen zwei CPUs verwendet. So funktioniert dieser Prozess im Allgemeinen:
Ein Treiber weist einen Nachrichtenpuffer zu.
Ein Liebesbrief oder ein Brief füllt den Nachrichtenpuffer.
Der empfangende Prozessor liest den Nachrichtenpuffer.
Wenn Sie den Befehlspuffer gelesen haben, generiert der Prozessor einen "Message-done"-Interrupt.
Der Nachrichtenpuffer wird an den freien Pufferpool zurückgegeben.
In diesem Dokument werden nun zwei Nachrichtensätze erläutert, die zwischen Prozessoren mit den in der Tabelle oben beschriebenen Komponenten der Cisco IOS-Software ausgetauscht werden.
Der PCI-Host-Treiber sammelt Statistiken pro VC für jedes Paket. Der VIP-Plattformtreiber leitet diese Statistiken autonom jede Sekunde per Love Note an den RSP-Plattformtreiber weiter. Der Befehl show atm vc zeigt die aktuellen VC-Daten an. Der VIP-Plattformtreiber leitet Framerstatistiken alle 10 Sekunden an den RSP weiter. Wenn das System initialisiert wird, wird ein spezieller Hintergrundprozess erstellt, der die autonomen Statistiken vom VIP als geplanten Prozess behandelt und nicht auf Unterbrechungsebene, um die Systemunterbrechung zu minimieren.
Der Befehl debug atm events gibt Ausgaben für VC-bezogene Ereignisse wie Setup und Beendigung aus.
Funktion | Beschreibung |
Einrichtung | Richten Sie eine VC ein. Der plattformabhängige Treiber übergibt die Anforderung an den PCI-Host-Treiber. |
Teardownvc | Entferne eine vorhandene VC. Der plattformabhängige Treiber leitet die Anforderung an den PCI-Hosttreiber weiter. |
getvc_stats | Abrufen von VC-Statistiken nach Bedarf; unterstützt nur eine VC-Anforderung. |
qos_params_verifizieren | Überprüft QoS-Parameter, bevor ein VC eingerichtet wird. |
Die SAR besteht intern aus Hardware-funktionalen Blöcken. Ein solcher Block ist die ATM Processing Unit (APU), ein MiniRISC mit benutzerdefinierter Logik für ATM-spezifische Erweiterungen. Der PCI-Host-Treiber und die APU, die die ATM-Firmware ausführt, kommunizieren über eine Messaging-Mailbox. Zu jedem Zeitpunkt wird ein ausstehender Befehl für jede APU verwendet, um die PA-Firmware anzuweisen, eine bestimmte Aufgabe auszuführen, z. B. eine VC-Konfiguration. Die Firmware leitet alle 10 Sekunden Statistiken per VC und per PA an den PCI-Host-Treiber weiter, wenn sich die Daten ändern.
Die folgende Ausgabe, die vom Debug ATM-Ereignis generiert wurde, zeigt die Befehle, die der PCI-Host-Treiber an die Firmware gesendet hat. Die Firmware gibt nur Bestätigungen zurück, die auf den Erfolg des Befehls hinweisen. Diese Bestätigungen werden nicht in der Debugausgabe angezeigt.
7200-1.3(config)# int atm 6/0 7200-1.3(config-if)# pvc 1/100 7200-1.3(config-if-atm-vc)# vbr-nrt 45000 45000 7200-1.3# 17:07:43: atmdx_setup_vc(ATM6/0): vc:14 vpi:1 vci:100 state:2 config_status:0 17:07:43: atmdx_pas_vc_setup(ATM6/0): vcd 14, atm hdr 0x00100640, mtu 4482 17:07:43: VBR: pcr 96000, scr 96000, mbs 94 17:07:43: vc tx_limit=1600, rx_limit=480 17:07:43: Created 64-bit VC counterss 7200-1.3(config)# int atm 6/0 7200-1.3(config-if)# no pvc 1/100 7200-1.3(config-if)# 17:08:48: atmdx_teardown_vc(ATM6/0): idb state 4 vcd 14 state 4 17:08:48: atmdx_pas_teardown_vc(ATM6/0): vcd 14
In diesem Dokument werden die oben genannten Informationen übernommen, indem Sie die Softwarearchitektur des IMA-Netzwerkmoduls (Inverse Multiplexing over ATM) für die Router der Serien 2600 und 3600 durchlaufen.
Das IMA NM verfügt über eine "Host"-Seite zur Anzeige von Funktionen oder Speicher auf dem Prozessormodul und eine "lokale" Seite zur Anzeige von Funktionen oder Speicher auf dem Netzwerkmodul selbst. Auf der Hostseite werden plattformunabhängige und plattformabhängige Treiber ausgeführt. Auf der lokalen Seite wird Firmware ausgeführt, die von den Host-Treibern auf die integrierte CPU des NM heruntergeladen wurde. Dieses Bild behandelt die Funktionen der physischen Ebene, darunter die Steuerung des Framer-ASIC, die Erfassung von Statistiken auf physischer Ebene und die Generierung von Loopbacks und Alarmen. Die Cisco IOS-Treiber und die NM-Firmware kommunizieren per E-Mail.
Auf der lokalen Seite führt das NM IMA auch einen IMA-Treiber aus, der ähnlich eine Meldungsmailbox für die Kommunikation mit der lokalen CPU verwendet.
Nachrichten in Richtung Host auf die lokale Seite sind hauptsächlich für die Konfiguration vorgesehen. Diese Meldungen umfassen:
Konfigurationsdaten für physische Layer E1/T1
IMA-Gruppenkonfiguration
Loopback-Konfiguration
Debugkonfiguration
Abfrage des IMA-Gruppen-/Verbindungsstatus
Abfrage von MIB-Daten (Management Information Base) für RFC 1406
Abfrage von IMA MIB-Daten
Nachrichten, die an die Hostseite gesendet werden, werden für die Kommunikation von Leitungsstatusänderungen und Leistungsstatistiken verwendet. Dazu gehören:
Statusänderungen für E1/T1 auf physischer Ebene
IMA-Gruppenstatusänderungen
IMA-Link-Statusänderungen
Änderung des Loopback-Status
Nachrichten debuggen
Antwort von RFC 1406 MIB-Daten
Antwort der IMA MIB-Daten
Die folgende Beispielausgabe veranschaulicht die Liebesnotizen, die zum Einrichten und Beenden eines VCs verwendet werden. Wir haben die physische Schnittstelle geschlossen und nicht abgeschaltet, um die Entfernung zu erzwingen. "rs8234" bezieht sich auf den SAR auf dem NM.
3640-1.1(config)# int atm2/ima2 3640-1.1(config-if)# pvc 1/1 3640-1.1(config-if-atm-vc)# shut 3640-1.1(config-if)# *Mar 1 00:17:20.323: Reserved bw for 1/1 Available bw = 6000 *Mar 1 00:17:20.323: rs8234_setup_vc(ATM2/IMA2): vc:4 vpi:1 vci:1 *Mar 1 00:17:20.323: rs8234_setup_vc_common() VCD=260 vp/vc=17/1 etype=0 *Mar 1 00:17:20.323: rs8234_setup_cos(ATM2/IMA2): vc:4 wred_name:- max_q:0 *Mar 1 00:17:20.327: Created 64-bit VC counters *Mar 1 00:17:20.327: rs8234_teardown_vc(ATM2/IMA2): vc:260 vpi:1 vci:1 *Mar 1 00:17:20.327: rs8234_teardown_vc proceeds (ATM2/IMA2): vc:260 vpi:1 vci:1 *Mar 1 00:17:20.327: Status and ptr is 400 Status Q is 1 *Mar 1 00:17:20.331: Resetting ATM2/IMA2 *Mar 1 00:17:20.331: rs8234_teardown_vc(ATM2/IMA2): vc:260 vpi:1 vci:1 *Mar 1 00:17:20.331: rs8234_teardown_vc proceeds (ATM2/IMA2): vc:260 vpi:1 vci:1 *Mar 1 00:17:20.331: Remove link with ports 8,links 4,channel 1 *Mar 1 00:17:22.327: %LINK-5-CHANGED: Interface ATM2/IMA2, changed state to administratively down 3640-1.1(config-if)# no shut 3640-1.1(config-if)# *Mar 1 00:17:31.287: Resetting ATM2/IMA2 *Mar 1 00:17:31.287: IMA config_interface ATM2/IMA2 *Mar 1 00:17:31.287: IMA config_restart ATM2/IMA2 *Mar 1 00:17:31.287: IMA restarting 0 VCs *Mar 1 00:17:31.287: rs8234_setup_vc(ATM2/IMA2): vc:4 vpi:1 vci:1 *Mar 1 00:17:31.287: rs8234_setup_vc_common() VCD=260 vp/vc=17/1 etype=0 *Mar 1 00:17:31.287: rs8234_setup_cos(ATM2/IMA2): vc:4 wred_name:- max_q:0
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
15-Nov-2007 |
Erstveröffentlichung |