In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
In diesem Dokument werden die Schritte zum Durchführen eines ELAM (Embedded Logic Analyzer Module) auf einem Cisco Nexus 7000/7700 F3-Modul beschrieben.
Cisco empfiehlt, sich mit dem Cisco Nexus-Betriebssystem (NX-OS) und der grundlegenden Nexus-Architektur vertraut zu machen, bevor Sie mit den in diesem Dokument beschriebenen Informationen fortfahren.
ELAM kann nur von der Rolle "network-admin" durchgeführt werden. Stellen Sie sicher, dass Sie sich als Benutzer mit Netzwerk-Admin-Berechtigung anmelden.
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
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.
Die ELAM hilft bei der Behebung von Weiterleitungsproblemen im Netzwerk, indem sie Pakete in Echtzeit ohne Unterbrechungen erfasst. Dies hat keine Auswirkungen auf die Leistung oder die Ressourcen der Kontrollebene. ELAM ist ein leistungsstarkes, präzises und unterbrechungsfreies Tool, das von den Technikern des Cisco Technical Assistance Center (TAC) am häufigsten verwendet wird. Es ist jedoch wichtig zu wissen, dass das ELAM-Tool jeweils nur ein Paket erfasst - das erste Paket, das nach dem Start von ELAM empfangen wird. Wenn Sie alle Pakete eines Datenflusses erfassen müssen, verwenden Sie SPAN oder ERSPAN.
Die ELAM kann unter anderem folgende Fragen beantworten:
In diesem Artikel sendet Host1, der mit dem N77-F3-Port E5/23 verbunden ist, Datenverkehr an Host2. ELAM wird verwendet, um den einzelnen Frame von Host1 zu Host2 zu erfassen.
Um ein ELAM auf dem Nexus 7000 auszuführen, müssen Sie sich zunächst als Benutzer mit dem Namen network-admin anmelden und dann eine Verbindung mit dem Modul herstellen.
N77-F3# attach module 5
Attaching to module 5 ...
To exit type 'exit', to abort type '$.'
Last login: Thu Jan 18 05:31:04 pst 2024 from 127.1.1.3 on pts/0
Der Nexus 7000 funktioniert als vollständig verteilter Switch, wobei Weiterleitungsentscheidungen von der Weiterleitungs-Engine der Eingangs-Linecard getroffen werden.
In diesem Artikel wird erwartet, dass der relevante Datenverkehr über Port 5/23 in den Switch eingeht. Im Beispiel des Nexus 7000 wurde der mModul 5 ist ein F3-Modul.
N77-F3# show module 5
Mod Ports Module-Type Model Status
--- ----- ----------------------------------- ------------------ ----------
5 24 10/40 Gbps Ethernet Module N77-F324FQ-25 ok
Mod Sw Hw
--- --------------- ------
5 8.4(9) 1.3
Führen Sie bei F3-Modulen die ELAM auf der Layer 2 (L2) Forwarding Engine (FE) mit dem internen Codenamen Flanker durch.
module-5# show hardware internal dev-port-map
--------------------------------------------------------------
CARD_TYPE: 24 port 40G
>Front Panel ports:24
--------------------------------------------------------------
Device name Dev role Abbr num_inst:
--------------------------------------------------------------
> Flanker Fwd Driver DEV_LAYER_2_LOOKUP L2LKP 12
FP port | PHYS | MAC_0 | L2LKP | L3LKP | QUEUE |SWICHF
22 10 10 10 10 0,1
23 11 11 11 11 0,1 >>>Port 23 belongs to FE instance 11
24 11 11 11 11 0,1
+-----------------------------------------------------------------------+
In dieser Ausgabe ist ersichtlich, dass Port E5/23 zu FE-Instanz 11 gehört.
Der Layer 2 FE-Datenbus (DBUS) überträgt die ursprünglichen Header-Informationen vor den Layer 2- (L2) und Layer 3- (L3)-Suchvorgängen, während der Result Bus (RBUS) die Ergebnisse der L3- und L2-Suchvorgänge enthält. Für die meisten Fehlerbehebungsszenarien ist eine Layer-2-ELAM-Erfassung ausreichend.
N77-F3# attach module 5
Attaching to module 5 ...
To exit type 'exit', to abort type '$.'
Last login: Thu Jan 18 05:31:04 pst 2024 from 127.1.1.3 on pts/0
module-5# elam asic flanker instance 11
module-5(fln-elam)# ?
layer2 ELAMs for layer 2
layer3 ELAMs for layer 3
module-5(fln-elam)# layer2
In diesem Beispiel sendet Host1 im VLAN 100 (mit der IP-Adresse 192.168.1.1 und der MAC-Adresse 8c60.4fc7.c5bc), verbunden mit dem Port E5/23, eine ARP-Anforderung (Address Resolution Protocol). Mit dieser Anforderung soll die MAC-Adresse für einen anderen Host im gleichen VLAN 100 aufgelöst werden, dessen IP-Adresse 192.168.1.2 lautet.
Der Flanker ASIC unterstützt ELAM-Trigger für verschiedene Frame-Typen. Der ELAM-Trigger muss dem Frame-Typ entsprechen. Wenn es sich bei dem Frame um einen ARP-Frame handelt, muss der Trigger ebenfalls auf die ARP-Option gesetzt werden. Ein ARP-Frame kann nicht vom Trigger "Other L2" (Andere L2) erfasst werden. Wenn Sie ELAM zur Erfassung eines MPLS-Frames verwenden, wählen Sie IPv4 oder IPv6 anstelle von MPLS aus. Weitere Informationen finden Sie im Abschnitt zu Bugs.
module-5(fln-l2-elam)# trigger dbus ?
arp ARP Frame Format >>>capture ARP packet. Other L2 does not work for ARP
fc Fc hdr Frame Format
ipv4 IPV4 Frame Format >>>capture IPv4 frame
ipv6 IPV6 Frame Format >>>capture IPv6 frame
mpls MPLS
other L2 hdr Frame Format >>>capture non-ip l2 frame
rarp RARP Frame Format
In diesem Beispiel wird der Frame basierend auf dem Ziel-IP-Adressfeld des ARP-Frames erfasst, sodass nur dieser Wert angegeben wird.
Flanker erfordert, dass sowohl für den DBUS als auch für den RBUS Trigger gesetzt werden. Der RBUS-Trigger ist vereinfachttrig
und erfüllt die gleichen Kriterien wie der DBUS-Trigger.
module-5(fln-l2-elam)# trigger dbus arp ingress if target-ip-address 192.168.1.2
module-5(fln-l2-elam)# trigger rbus ingress if trig
Nachdem Sie den Trigger konfiguriert haben, können Sie die Erfassung starten.
module-5(fln-l2-elam)# start
Führen Sie den Befehl aus, um zu überprüfen, ob ELAM Pakete erfasst hatstatus
. Der Begriff "Bewaffnet" gibt an, dass noch keine übereinstimmenden Pakete erfasst wurden.
module-5(fln-l2-elam)# status
ELAM Slot 5 instance 11: L2 DBUS Configuration: trigger dbus arp ingress if target-ip-address 192.168.1.2
L2 DBUS: Armed >>>no matched packet
ELAM Slot 5 instance 11: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS: Armed >>>no matched packet
Pingen Sie von Host1 (192.168.1.1) an 192.168.1.2. Da auf Host1 kein ARP-Eintrag vorhanden ist, sendet Host1 die ARP-Anforderung in einem Broadcast-Paket. Sobald die FE den ARP-Frame empfängt, überprüft sie den Trigger. Wenn eine Übereinstimmung besteht, erfasst ELAM die Weiterleitungsentscheidung dieses Frames, und der ELAM-Status wird dann als Triggered angezeigt.
module-5(fln-l2-elam)# status
ELAM Slot 5 instance 11: L2 DBUS Configuration: trigger dbus arp ingress if target-ip-address 192.168.1.2
L2 DBUS: Triggered >>Packet hit
ELAM Slot 5 instance 11: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS: Triggered >>Packet hit
Das Ergebnis ist nur gültig, wenn der DBUS und der RBUS dasselbe Paket erfasst haben. Daher ist es notwendig, die Sequenznummer sowohl in den DBUS- als auch in den RBUS-Ergebnissen zu überprüfen. Wenn sie nicht übereinstimmen, können Sie sie neu starten und erneut erfassen, bis sie ausgerichtet sind.
module-5(fln-l2-elam)# show dbus | in seq
sequence-number : 0x7 vl : 0x0
module-5(fln-l2-elam)# show rbus | in seq
l2-rbus-trigger : 0x1 sequence-number : 0x7
Es ist ratsam, zuerst die DBUS-Ausgabe zu überprüfen, da sie Daten enthält, bevor sie neu geschrieben werden. Nachfolgend finden Sie ein Beispiel für eine ARP-ELAM-Erfassung. Beachten Sie, dass einige Ausgaben weggelassen wurden.
module-5(fln-l2-elam)# show dbus
cp = 0x20c6ad1c, buf = 0x20c6ad1c, end = 0x20c7706c
--------------------------------------------------------------------
Flanker Instance 11 - Capture Buffer On L2 DBUS:
<snip>
--------------------------------------------------------------------
L2 DBUS PRS MLH ARP/RARP
--------------------------------------------------------------------
valid : 0x1 requst-response : 0x1 >>>ARP request
(1:for ARP request,2: for ARP reply, 3:for RARP request, 4:for RARP reply)
port-id : 0x0 last-ethertype : 0x806 >>>Ethernet type, 0x0806 means ARP
packet-type : 0x0 l2-length-check : 0x0 >>>0 for ingress, 1 for egress
vqi : 0x0 packet-length : 0x40 >>>L2 ethernet frame totally length 64 byte
vlan : 0x64 destination-index : 0x0 >>>VLAN100
source-index : 0xb79 bundle-port : 0x0 >>>source port ltl index
status-is-1q : 0x0 trill-encap : 0x0 >>>0 means frame without vlan tag
sender-ip-address: 192.168.1.1 >>>sender-ip-address in ARP header
target-ip-address: 192.168.1.2 >>>target-ip-address in ARP header
sender-mac-address : 8c60.4fc7.c5bc >>>sender-mac-address in ARP header
target-mac-address : ffff.ffff.ffff >>>target-mac-address in ARP header
destination-mac-address : ffff.ffff.ffff >>>sestination mac in ethernet header
source-mac-address : 8c60.4fc7.c5bc >>>source mac in ethernet header
Mit den DBUS-Daten können Sie bestätigen, dass der Frame auf VLAN100 (vlan:0x64) mit einer Quell-MAC-Adresse von 8c60.4fc7.c5bc und einer Ziel-MAC-Adresse von ffff.ffff.ffff empfangen wird. Sie können auch erkennen, dass es sich um einen ARP-Anforderungsframe handelt, der von IP 192.168.1.1 stammt.
Um den Port zu überprüfen, an dem der Frame empfangen wird, verwenden Sie denPIXM
Befehl (Port Index Manager). Dieser Befehl zeigt die Zuordnung einer lokalen Ziellogik (LTL) zu einem Front-Port oder einer Gruppe von Front-Ports an.
N77-F3# show system internal pixm info ltl 0xb79
------------------
Type LTL
---------------------------------
PHY_PORT Eth5/23
FLOOD_W_FPOE 0xc031
Die Ausgabe zeigt, dass der Quellindex 0xb79 dem Port E5/23 zugeordnet ist. Dadurch wird überprüft, ob der Frame an Port E5/23 empfangen wird.
Nachdem Sie bestätigt haben, dass ELAM den relevanten Frame erfasst hat, können Sie das Ergebnis der Weiterleitungsentscheidung anhand der RBUS-Daten überprüfen (beachten Sie, dass einige Ausgaben weggelassen wurden).
module-5(fln-l2-elam)# show rbus
--------------------------------------------------------------------
L2 RBUS INGRESS CONTENT
--------------------------------------------------------------------
di-ltl-index : 0xc031 l3-multicast-di : 0xc00 >>> destination ltl index
source-index : 0xb79 vlan : 0x64 >>> vlan id after rewritten
vqi : 0x0 di2-valid : 0x0 >>> use l3-multicast-di as di if this is 1
routed-frame : 0x0 copy-cause : 0x0 >>> 0x0 means N7K performs layer 2 switching
Mit den RBUS-Daten können Sie bestätigen, dass der Frame auf VLAN 100 (0x64) geschaltet ist. Um den/die Ausgangsport(e) aus dem di-ltl-index zu ermitteln, verwenden Sie erneut den Befehl pixm.
N77-F3# show system internal pixm info ltl 0xc031
Member info
------------------
IFIDX LTL
---------------------------------
Eth5/24 0x0b78
Eth5/23 0x0b79
Die Ausgabe zeigt, dass die Ports E5/23 und E5/24 beide zu LTL 0xc031 gehören. Das ARP-Paket schaltet auf beide Ports um. Da es von E5/23 empfangen wird, wird es nur von E5/24 gesendet.
In diesem Beispiel wird Host1 im VLAN 100 (mit einer IP-Adresse von 192.168.1.1/24 und einer MAC-Adresse von 8c60.4fc7.c5bc) mit Port E5/23 verbunden und sendet eine ICMP-Anforderung (Internet Control Message Protocol) an Host2. Host 2 hat die IP-Adresse 192.168.2.2/24 und befindet sich in einem anderen VLAN, VLAN200.
Da sich in diesem Beispiel Host 1 und Host 2 in unterschiedlichen VLANs befinden, wird das ICMP-Paket von Host 1 zu Host 2 über Layer 3 auf N77-F3 geroutet. Ein Layer-2-ELAM wird zum Erfassen des ICMP-Anforderungspakets verwendet.
Sowohl die Quell-IP-Adresse (192.168.1.2) als auch die Ziel-IP-Adresse (192.168.2.2) werden als DBUS-Trigger kombiniert. ELAM erfasst nur Pakete, die mit allen Triggern übereinstimmen.
N77-F3# attach module 5
Attaching to module 5 ...
To exit type 'exit', to abort type '$.'
Last login: Thu Jan 18 11:19:46 pst 2024 from 127.1.1.3 on pts/0
module-5# elam asic flanker instance 11
module-5(fln-elam)# layer2
module-5(fln-l2-elam)# trigger dbus ipv4 ingress if destination-ipv4-address 192.168.2.2 source-ipv4-address 192.168.1.2
module-5(fln-l2-elam)# trigger rbus ingress if trig
module-5(fln-l2-elam)# start
module-5(fln-l2-elam)# status
ELAM Slot 5 instance 11: L2 DBUS Configuration: trigger dbus ipv4 ingress if destination-ipv4-address 192.168.2.2 source-ipv4-address 192.168.1.2
L2 DBUS: Armed
ELAM Slot 5 instance 11: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS: Armed
Starten Sie einen Ping von Host1 (192.168.1.2) an Host2 (192.168.2.2). Sobald das Paket, das mit den Triggern übereinstimmt, von der FE-Instanz 11 empfangen wurde, wird der ELAM-Status als Triggered (Getriggert) angezeigt.
module-5(fln-l2-elam)# status
ELAM Slot 5 instance 11: L2 DBUS Configuration: trigger dbus ipv4 ingress if destination-ipv4-address 192.168.2.2 source-ipv4-address 192.168.1.2
L2 DBUS: Triggered
ELAM Slot 5 instance 11: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS: Triggered
Stellen Sie sicher, dass RBUS und DBUS die gleiche Sequenznummer haben. Dieser Schritt ist für jede Erfassung notwendig.
module-5(fln-l2-elam)# show dbus | in seq
sequence-number : 0x74 vl : 0x0
module-5(fln-l2-elam)# show rbus | in seq
l2-rbus-trigger : 0x1 sequence-number : 0x74 >>same sequence number, valid elam result
Das folgende Beispiel zeigt eine IPv4-ICMP-ELAM-Erfassung. Beachten Sie, dass einige Ausgaben weggelassen wurden.
module-5(fln-l2-elam)# show dbus
--------------------------------------------------------------------
L2 DBUS PRS MLH IPV4
--------------------------------------------------------------------
l4-protocol : 0x1 df : 0x0 >>>L4 protocol id, 1 means icmp packet
ttl : 0xff l3-packet-length : 0x54 >>>ip total length is 84 in this packet, ttl is 255
port-id : 0x0 last-ethertype : 0x800 >>>Ethernet type, 0x0800 means IPv4
vqi : 0x0 packet-length : 0x66 >>>L2 frame length field
vlan : 0x64 destination-index : 0x0 >>>vlan id 100
source-index : 0xb79 bundle-port : 0x0 >>>source port ltl index
status-is-1q : 0x1 trill-encap : 0x0 >>>1 means frame with vlan tag
source-ipv4-address: 192.168.1.2 >>>Packet source IP
destination-ipv4-address: 192.168.2.2 >>>Packet destination IP
destination-mac-address : 003a.9c40.8ac3 >>>Packet destination mac
source-mac-address : 8c60.4fc7.c5bc >>>Packet source mac
Mithilfe der DBUS-Daten können Sie bestätigen, dass das Paket über VLAN100 (vlan:0x64) mit der Quell-IP 192.168.1.2 und der Ziel-IP-Adresse 192.168.2.2 empfangen wird. Sie können auch erkennen, dass es sich um ein IPv4-ICMP-Paket handelt.
Führen Sie den Befehl (Port Index Manager) aus, um den Port zu überprüfen, an dem der Frame empfangen wirdPIXM
. Dieser Befehl zeigt die Zuordnung einer lokalen Ziellogik (LTL) zu einem Front-Port oder einer Gruppe von Front-Ports an.
N77-F3# show system internal pixm info ltl 0xb79
------------------
Type LTL
---------------------------------
PHY_PORT Eth5/23
FLOOD_W_FPOE 0xc032
FLOOD_W_FPOE 0xc031
FLOOD_W_FPOE 0xc029
Die Ausgabe zeigt, dass der Quellindex von 0xb79 dem Port E5/23 zugeordnet ist. Dadurch wird bestätigt, dass der Frame an Port E5/23 empfangen wird.
Nachdem Sie bestätigt haben, dass das relevante ICMP-Paket von ELAM erfasst wurde, können Sie das Ergebnis der Weiterleitungsentscheidung anhand der RBUS-Daten überprüfen (beachten Sie, dass einige Ausgaben ausgelassen wurden). Aus den RBUS-Daten geht hervor, dass der Frame von VLAN 100 (0x64) zu VLAN200 geroutet wird.
module-5(fln-l2-elam)# show rbus
--------------------------------------------------------------------
L2 RBUS INGRESS CONTENT
--------------------------------------------------------------------
segment-id-valid : 0x0 ttl-out : 0xfe >>>TTL is 254
di-ltl-index : 0xb78 l3-multicast-di : 0x0 >>>destination port ltl
source-index : 0xb79 vlan : 0xc8 >>>vlan id is 200
routed-frame : 0x1 copy-cause : 0x0 >>>routed on N7K
Führen Sie den Befehl aus, um den/die Ausgangsport(e) aus dem di-ltl-index zu ermittelnPIXM
. Die Ausgabe zeigt, dass der Ausgangsport E5/24 ist.
N77-F3# show system internal pixm info ltl 0xb78
Member info
------------------
Type LTL
---------------------------------
PHY_PORT Eth5/24
FLOOD_W_FPOE 0xc032
FLOOD_W_FPOE 0xc031
FLOOD_W_FPOE 0xc029
Die Ausgabe dieses Befehls ist hilfreich, um den Zweck eines LTL zu verstehen, wenn es nicht mit einem physischen Port übereinstimmt. Beispiele: Drop LTL und Inband LTL:
N77-F3# show system internal pixm info ltl-region
===========================================================
PIXM VDC 1 LTL MAP Version: 3
Description: LTL Map for Crossbow
===========================================================
LTL_TYPE SIZE START END
========================================================================
LIBLTLMAP_LTL_TYPE_SUP_ETH_INBAND 64 0xc00 0xc3f
-------------------------------------------------------------------
LIBLTLMAP_LTL_TYPE_DROP_DI_WO_HW_BITSET 0xcae
LIBLTLMAP_LTL_TYPE_DROP_DI 0xcad
Cisco Bug-ID | Bug-Titel | Version reparieren |
Cisco Bug-ID CSCux73273 | MPLS-Trigger für ELAM auf F3 funktioniert nicht | Keine feste Version; Workaround verwenden |
Cisco Bug-ID CSCvm65736 | N7k: ELAM-Freigabetrigger clp_elam crash/LC reload | 7.3(3)D1(1) oder 8.2(3) oder 8.3(2) |
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
30-Jan-2024 |
Erstveröffentlichung |