Inhalt

Einführung

Hintergrundinformationen

Herausforderungen der ELAM

ELAM-Grundlagen

ELAM-Workflow

Zentralisierte und verteilte Weiterleitung

Data Bus (DBUS) und Result Bus (RBUS)

Lokale Ziellogik (LTL)

Flut-Bit

ELAM-Beispiele

Interne ASIC-Namen

Zusätzliche Einsatzmöglichkeiten von ELAM

Zugehörige Informationen

Einführung

Dieses Dokument beschreibt, was das Embedded Logic Analyzer Module (ELAM) ist, welche Nachteile es hat und wie es am besten genutzt werden kann.

Hintergrundinformationen

Angesichts der zunehmenden Komplexität von Netzwerkgeräten und -protokollen kann es äußerst schwierig sein, die Ursache eines Netzwerkproblems zu ermitteln. Oft müssen Sie feststellen, ob ein Frame auf einem bestimmten Gerät korrekt empfangen und weitergeleitet wird. Zur Beantwortung dieser Frage stehen verschiedene Erfassungstools, Debugger und Tricks zur Verfügung. Allerdings sind nicht alle in einem Produktionsnetzwerk möglich oder verfügbar.

ELAM ist ein Engineering-Tool, mit dem Sie Cisco ASICs einsehen und die Weiterleitung eines Pakets nachvollziehen können. Sie ist in die Weiterleitungspipeline eingebettet und kann ein Paket in Echtzeit ohne Beeinträchtigung der Leistung oder Kontrollebenen-Ressourcen erfassen. Sie hilft bei der Beantwortung von Fragen wie:

- Hat das Paket die Forwarding Engine (FE) erreicht?

- Auf welchem Port und welchem VLAN wird das Paket empfangen?

- Wie wird das Paket angezeigt (Layer 2- (L2) - Layer 4- (L4))?

- Wie wird das Paket geändert, und wo wird es gesendet?

ELAM ist extrem leistungsstark, granular und ohne Eindringversuche. Es ist ein nützliches Tool zur Fehlerbehebung für Techniker des Cisco Technical Assistance Center (TAC), die an Hardware-Switching-Plattformen arbeiten.

Herausforderungen der ELAM

ELAM wurde als Diagnosetool für den internen Gebrauch entwickelt. Die CLI-Syntax verwendet interne Codenamen für Cisco ASICs. Die Interpretation der ELAM-Daten erfordert hardwarespezifische Architektur- und Weiterleitungsinformationen. Viele dieser Details lassen sich nicht erklären, da sie die internen proprietären Funktionen von Cisco aufdecken, die Cisco Geräte zu einem erstklassigen Gerät machen.

Aus diesen Gründen ist ELAM keine kundengestützte Funktion und blieb ein Diagnosetool für den internen Gebrauch. Es gibt keine externen Konfigurationsanleitungen, und Syntax und Funktionsweise können ohne Vorankündigung von Version zu Version geändert werden.

Angesichts dieser Herausforderungen und des Haftungsausschlusses gibt es die Gründe, warum ELAM jetzt beschrieben wird:

- Zunächst ist es sehr üblich, dass ein TAC-Techniker ELAM verwendet, um ein Problem zu isolieren. Das TAC fordert Sie möglicherweise auf, ELAM auszuführen, wenn das Problem nur gelegentlich auftritt. Es ist wichtig zu verstehen, dass diese Schritte nicht störend sind und dass sie dazu beitragen können, eine Ursachenanalyse durchzuführen.

- Manchmal gibt es auch keine anderen verfügbaren Tools, die helfen können, ein Problem zu isolieren. Wenn z. B. während der Produktionszeiten keine Konfigurationsänderungen für SPAN, ACL-Treffer oder intrusive Debugging zulässig sind. Es ist vielleicht nicht an der Zeit, das TAC zu erreichen, und ELAM kann als letztes Mittel sehr hilfreich sein.

ELAM-Grundlagen

ELAM kann ohne umfassende Architekturkenntnisse jeder Plattform durchgeführt werden. In diesem Abschnitt werden die Grundlagen beschrieben, die für die Durchführung eines ELAM auf den Cisco Catalyst Switches der Serien 6500 und 7600 (bzw. 6500 bzw. 7600) erforderlich sind.

ELAM-Workflow

Wie bereits erwähnt, ist ELAM von der zugrunde liegenden Hardware abhängig. Daher ist die CLI-Syntax von der verwendeten Hardware abhängig. Jede Plattform folgt jedoch einem ähnlichen Workflow, wie in diesem Bild gezeigt:

Hinweis: Im Abschnitt ELAM Examples können Sie nachlesen, wie dieser Workflow auf verschiedenen Plattformen angewendet wird.

In diesen vier Schritten, die weiter unten in diesem Abschnitt erläutert werden, wird der Workflow beschrieben:

1. Ermitteln Sie den erwarteten Eingangs-FE. Wenn Plattformen über mehr als einen FE verfügen, ist es wichtig, den FE zu identifizieren, der die Weiterleitungsentscheidung für das zu erfassende Paket trifft. Konfigurieren Sie das ELAM auf dem richtigen FE.

2. Konfigurieren Sie den ELAM-Trigger. Sie müssen einen Trigger konfigurieren, der spezifische Details für das zu erfassende Paket enthält. Häufige Auslöser sind eine Quell- und Ziel-IP-Adresse oder L4-Portnummern. Mit ELAM können mehrere Felder angegeben werden, und es wird ein logisches UND für alle konfigurierten Felder ausgeführt.

3. Starten Sie ELAM.

4. Warten Sie, bis das ELAM das Ergebnis auslöst und anzeigt.

Zentralisierte und verteilte Weiterleitung

Der erste Schritt, den Sie zum Durchführen eines ELAM durchführen müssen, ist die Identifizierung des richtigen FE. Ein 6500 mit klassischen oder zentralen Weiterleitungskarten (CFC) verwendet eine zentralisierte Weiterleitung, bei der der aktive Supervisor die Weiterleitungsentscheidung trifft. Bei Paketen, die auf klassischen oder CFC-Linecards eingehen, müssen Sie ELAM auf dem aktiven Supervisor durchführen.

Bei DFC-fähigen Linecards wird die Weiterleitungsentscheidung lokal von einem FE auf der Linecard ohne Supervisor getroffen. Bei Paketen, die DFC-Linecards empfangen, müssen Sie das ELAM auf der Linecard selbst durchführen.

Bei der Nexus Switch-Plattform der Serie 7000 sind alle Linecards vollständig verteilt. Darüber hinaus verfügen die meisten Linecards über mehrere FEs. Wenn Sie das ELAM einrichten, müssen Sie den Port kennen, an dem das Paket empfangen wird, und die FE bestimmen, die diesem Port zugeordnet ist.

Weitere Informationen zur Hardware- und Weiterleitungsarchitektur finden Sie in folgenden Artikeln der Cisco Live 365:

- BRKARC-3465 Cisco Catalyst 6500 Switch-Architektur

- BRKARC-3470 - Cisco Nexus 7000-Switch-Architektur

Data Bus (DBUS) und Result Bus (RBUS)

Das DBUS enthält Informationen, die von der FE verwendet werden, um eine Weiterleitungsentscheidung zu treffen. Es enthält mehrere plattformspezifische interne Felder sowie die Headerinformationen für einen Frame. Zeigen Sie das DBUS an, um herauszufinden, wo das Paket empfangen wird, und die L2-L4-Paketinformationen.

Das RBUS enthält die Weiterleitungsentscheidung des FE. Zeigen Sie das RBUS an, um festzustellen, ob der Frame geändert wird und wo er gesendet wird.

Lokale Ziellogik (LTL)

Das LTL ist ein Index, der verwendet wird, um einen Port oder eine Gruppe von Ports darzustellen. Der Quell-LTL-Index und der Ziel-LTL-Index zeigen an, wo der Frame empfangen wird und wo er gesendet wird.

Hinweis: Verschiedene Plattformen und Supervisoren verwenden verschiedene Befehle, um die LTL-Werte zu decodieren.

Flut-Bit

LTL-Werte werden als fünf oder weniger Hexadezimalzahlen angezeigt (z. B. 0xa2c). Das Flood-Bit ist das 16. Bit im LTL-Ergebnis. Häufig zeigt der RBUS ein Feld mit dem Ziel-LTL-Index und ein separates Feld für das Flut-Bit an. Es ist wichtig, diese Ergebnisse für die richtige LTL zusammenzuführen. Beispiel:

RBUS:

FLOOD ........................... [1] = 1

DEST_INDEX ...................... [19] = 0x48

In diesem Beispiel ist der LTL-Zielindex 0x48. Da das Flood-Bit 1 ist, müssen Sie das 16. Bit in der LTL auf 1 festlegen:

0x00048 = 0000 0000 0000 0100 1000

|

+---- Flood bit, set to 1 = 0x08048

Nachdem Sie das Flut-Bit berücksichtigt haben, ist der Zielindex zu 0x8048 geworden.

ELAM-Beispiele

Diese Beispiele sollen veranschaulichen, wie ELAM zur Validierung grundlegender IPv4- oder IPV6-Unicast-Datenflüsse verwendet wird. Wie im Abschnitt ELAM Challenges dieses Dokuments beschrieben, ist es nicht praktisch, alle internen Felder oder Pakettypen zu erläutern, z. B. die Umleitung für Multicast, Tunnel und MPLS.

Folgen Sie diesen Links, um Beispiele für die Verwendung von ELAM mit verschiedenen Geräten anzuzeigen:

- ELAM-Verfahren für Catalyst Switches der Serie 6500 mit Supervisor Engine 720

- ELAM-Verfahren für Catalyst Switches der Serie 6500 mit Supervisor Engine 2T

- ELAM-Verfahren für Nexus 7000-Module der M-Serie

- ELAM-Verfahren für das Nexus 7000 M3-Modul

- ELAM-Verfahren für das Nexus 7000 F1-Modul

- ELAM-Verfahren für das Nexus 7000 F2-Modul

- ELAM-Übersicht für Nexus 6000-Switches

Interne ASIC-Namen

In der folgenden Tabelle ist der interne ASIC-Name angegeben, der ELAM für jeden Modultyp zugewiesen wurde:

Plattform

Modultyp

Interner ASIC-Name

Catalyst 6500/Cisco 7600

Sup720 (PFC3, DFC3)

Supermann

Catalyst 6500

Sup2T (PFC4, DFC4)

Eureka

Nexus 7000

M-Serie (M1 und M2)

Eureka

Nexus 7000

M3-Modul

F4

Nexus 7000

F1

Orion

Nexus 7000

F2

Clipper

Nexus 7000

F3

Flanker

Nexus 6000

K/A

Bigsur

Zusätzliche Einsatzmöglichkeiten von ELAM

ELAM ist benutzerfreundlicher zu verwenden. Mit den Cisco IOS® Releases 12.2(50)SY und höher hat Cisco den Befehl show platform datapath für die 6500er hinzugefügt, die die Supervisor Engine 2T (Sup2T) ausführen. Dieser Befehl verwendet ELAM, um das Weiterleitungsergebnis eines bestimmten Pakets zu erfassen und anzuzeigen.

Für Switch-Plattformen der Nexus 7000-Serie wurde in Cisco IOS 6.2(2) ein benutzerfreundliches Skript mit dem Namen elame hinzugefügt, um ELAM zu nutzen:

N7KA# source sys/elame

elam helper, version 1.015

Usage:

elame [<src>] <dest> [vlan <vlan#>] [vrf <vrf_name>] [int <interface> | vdc] [trace]

In der Ausgabe:

- Bei den <src> und <dest> handelt es sich um IPV4-Adressen im Format 1.2.3.4.

- Die <vlan> und <interface> geben das Eingangs-VLAN/die Eingangs-Schnittstelle an.

- Der VDC gibt an, dass alle ELAMs im aktuellen Virtual Device Contexts (VDCs) verwendet werden.

- Der [trace] gibt an, dass das System alle Ausgaben im volatile (elame.log) aufzeichnet.

Beachten Sie, dass das elame Skript derzeit nicht von F3-Modulen und anderen N77xx-Linecards unterstützt wird. Einige Verbesserungsfehler wurden zur Verbesserung des Elame-Skripts eingereicht und werden noch von der Business Unit untersucht.

- Cisco Bug-ID CSCuy42559

- Cisco Bug-ID CSCuw60869

Hinweis: Elam ist ein internes Tool und darf nur unter TAC/BU Aufsicht eingesetzt werden.

Zugehörige Informationen

- BRKARC-2011 - Überblick über die Fehlerbehebungstools bei Cisco Switches und Routern - Cisco Live 365

- Technischer Support und Dokumentation - Cisco Systems