De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document beschrijft de stappen die zijn gebruikt om een ELAM (Embedded Logic Analyzer Module) uit te voeren op een Cisco Nexus 7000/7700 F3 module.
Cisco raadt u aan bekend te zijn met het Cisco Nexus Operating System (NX-OS) en de basis Nexus-architectuur voordat u doorgaat met de informatie die in dit document wordt beschreven.
ELAM kan alleen worden uitgevoerd door de rol netwerk-admin. Zorg ervoor dat u inlogt als gebruiker met de netwerkbeheerdersrechten.
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
De ELAM helpt bij het oplossen van problemen met het doorsturen van netwerkproblemen door real-time pakketten zonder onderbrekingen vast te leggen, en het heeft geen invloed op prestaties of besturingsplane bronnen. ELAM is een krachtig, korrelig en niet-opdringerig hulpmiddel dat het meest wordt gebruikt door Cisco Technical Assistance Center (TAC)-engineers. Het is echter van cruciaal belang om te weten dat het ELAM-programma slechts één pakket tegelijk opneemt - het eerste pakket dat wordt ontvangen nadat ELAM is gestart. Als u alle pakketten van een stroom moet opnemen, gebruik dan SPAN of ERSPAN.
De ELAM kan vragen beantwoorden als:
In dit artikel verstuurt Host1, aangesloten op N77-F3 poort E5/23, verkeer naar Host2. ELAM wordt gebruikt om het individuele frame van Host1 naar Host2 op te nemen.
Om een ELAM op de N7K uit te voeren, moet u eerst inloggen als gebruiker met netwerk-admin, en dan moet u verbinding maken met de module.
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
De Nexus 7000 werkt als een volledig gedistribueerde switch, waarbij de verzendbeslissingen worden genomen door de verzendende motor van de toegangslijnkaart.
In dit artikel wordt verwacht dat het verkeer van belang de switch via port 5/23 zal binnendringen. In het voorbeeld van de N7K wordt de mModule 5 is een F3-module.
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
Voor F3 modules, voer ELAM op Layer 2 (L2) Forwarding Engine (FE) uit met de interne codenaam Flanker.
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 deze output is duidelijk dat haven E5/23 bij FE-instantie 11 hoort.
Layer 2 FE Data Bus (DBUS) draagt de oorspronkelijke headerinformatie voorafgaand aan Layer 2 (L2) en Layer 3 (L3) lookups, terwijl de Result Bus (RBUS) de resultaten van zowel L3 als L2 lookups bevat. Voor de meeste probleemoplossingsscenario's volstaat een Layer 2 ELAM-opname.
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 dit voorbeeld stuurt Host1 op VLAN 100 (met een IP-adres van 192.168.1.1 en een MAC-adres van 8c60.4fc7.c5bc), gekoppeld aan poort E5/23, een ARP-verzoek (Address Resolution Protocol). Dit verzoek is bedoeld om het MAC-adres voor een andere host op dezelfde VLAN 100 op te lossen, die een IP-adres heeft van 192.168.1.2.
De Flanker ASIC ondersteunt ELAM-triggers voor verschillende frametypen. De ELAM-trigger moet overeenkomen met het frametype. Als het frame een ARP-frame is, moet de trigger ook op de ARP-optie zijn ingesteld. Een ARP-frame kan niet worden opgenomen door de andere L2-trigger. Als u ELAM gebruikt om een MPLS-frame op te nemen, selecteert u IPv4 of IPv6 in plaats van MPLS. Raadpleeg voor meer informatie de sectie met 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 dit voorbeeld wordt het frame opgenomen op basis van het veld IP-adres van het ARP-frame, zodat alleen deze waarde wordt gespecificeerd.
Flanker vereist dat triggers zijn ingesteld voor zowel de DBUS als de RBUS. De RBUS-trigger is vereenvoudigd,trig
komt overeen met dezelfde criteria als de 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
Nu u de trigger hebt ingesteld, kunt u de opname starten.
module-5(fln-l2-elam)# start
Om te controleren of ELAM alle pakketten heeft opgenomen, kunt u de opdracht uitvoerenstatus
. De term Armed geeft aan dat er nog geen bijpassende pakketten zijn opgenomen.
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 van Host1 (192.168.1.1) tot 192.168.1.2. Aangezien er geen ARP ingang op Host1 is, stuurt Host1 het ARP verzoek in een uitzendingspakket. Zodra de FE het ARP frame ontvangt, controleert hij de trigger. Als er een overeenkomst is, vangt ELAM het door:sturen besluit van dit kader, en de status ELAM wordt dan getoond zoals Teweeggebracht.
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
Het resultaat is alleen geldig als de DBUS en de RBUS hetzelfde pakket hebben opgenomen. Daarom is het noodzakelijk om het volgnummer te controleren in zowel de DBUS- als de RBUS-resultaten. Als zij niet aanpassen, kunt u opnieuw beginnen en hen opnieuw vangen tot zij zich richten.
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
Het is aan te raden om eerst de DBUS uitvoer te controleren, omdat het gegevens bevat voorafgaand aan een herschrijven. Hier is een voorbeeld van een ARP ELAM-opname. Een deel van de output is weggelaten.
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
Met de DBUS-gegevens kunt u bevestigen dat het frame wordt ontvangen op VLAN100 (VLAN:0x64) met een MAC-adres van 8c60.4fc7.c5bc en een MAC-adres van de bestemming van ffff.ffff.ffff. U kunt ook identificeren dat dit een ARP verzoekkader uit IP 192.168.1.1 is.
Om de poort te verifiëren waarop het frame is ontvangen, gebruikt u de opdracht (Port Index Manager)PIXM
. Deze opdracht geeft de koppeling van een Local Target Logic (LTL) aan een voorpoort of een groep voorpoorten weer.
N77-F3# show system internal pixm info ltl 0xb79
------------------
Type LTL
---------------------------------
PHY_PORT Eth5/23
FLOOD_W_FPOE 0xc031
De output onthult dat een bron-index van 0xb79 aan haven E5/23 in kaart brengt. Dit verifieert dat het kader op haven E5/23 wordt ontvangen.
Na het bevestigen dat ELAM het kader van belang heeft gevangen, kunt u het resultaat van het het door:sturen besluit verifiëren met behulp van de RBUS-gegevens (merk op dat sommige output is weggelaten).
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
Met de RBUS-gegevens kunt u bevestigen dat het frame is ingeschakeld op VLAN 100 (0x64). Gebruik de opdracht pixm opnieuw om de uitgaande poort(en) vanaf de di-ltl-index te bepalen.
N77-F3# show system internal pixm info ltl 0xc031
Member info
------------------
IFIDX LTL
---------------------------------
Eth5/24 0x0b78
Eth5/23 0x0b79
De output laat zien dat de poorten E5/23 en E5/24 beide behoren tot LTL 0xc031. De ARP-pakketmodules switches naar beide poorten. Zoals het van E5/23 wordt ontvangen, wordt het slechts verzonden van E5/24.
In dit voorbeeld is Host1 op VLAN 100 (met een IP-adres van 192.168.1.1/24 en het MAC-adres van 8c60.4fc7.c5bc) verbonden met poort E5/23 en verstuurt een ICMP-verzoek (Internet Control Message Protocol) naar Host2. Host2 heeft een IP-adres van 192.168.2.2/24 en bevindt zich op een ander VLAN, VLAN200.
In dit voorbeeld, aangezien Host1 en Host2 in verschillende VLAN’s zijn, wordt het ICMP-pakket van Host1 naar Host2 via Layer 3 op N77-F3 gerouteerd. Layer 2 ELAM wordt gebruikt om het ICMP-verzoekpakket op te nemen.
Zowel de IP-bron (192.168.1.2) als de IP-bestemming (192.168.2.2) worden gecombineerd als DBUS-triggers. ELAM neemt alleen het pakket op dat aan alle triggers voldoet.
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
Start een ping van Host1 (192.168.1.2) naar Host2 (192.168.2.2). Zodra het pakket dat de triggers aanpast door FE-instantie 11 wordt ontvangen, wordt de ELAM-status weergegeven als geactiveerd.
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
Zorg ervoor dat de RBUS en DBUS hetzelfde volgnummer hebben. Deze stap is nodig voor elke opname.
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
Hier is een voorbeeld van een IPv4 ICMP ELAM-opname. Een deel van de output is weggelaten.
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
Met de DBUS-gegevens kunt u bevestigen dat het pakket wordt ontvangen op VLAN100 (VLAN:0x64) met een IP-bron van 192.168.1.2 en een IP-bestemming van 192.168.2.2. U kunt ook identificeren dat dit een IPv4 ICMP-pakket is.
Om de poort te verifiëren waarop het frame is ontvangen, voert u de opdracht (Port Index Manager) uitPIXM
. Deze opdracht geeft de koppeling van een Local Target Logic (LTL) aan een voorpoort of een groep voorpoorten weer.
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
De output toont aan dat een bron-index van 0xb79 aan haven E5/23 in kaart brengt. Dit bevestigt dat het frame wordt ontvangen op poort E5/23.
Nadat u hebt bevestigd dat ELAM het ICMP-pakketbelang heeft opgenomen, kunt u het resultaat van het doorsturen verifiëren met behulp van de RBUS-gegevens (let op dat een bepaalde uitvoer is weggelaten). Van de RBUS-gegevens kunt u zien dat het frame van VLAN 100 (0x64) naar VLAN 2000 wordt gerouteerd.
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
Om de uitgaande poort(en) vanaf de di-ltl-index te bepalen, voert u de opdrachtPIXM
uit. De output toont aan dat de uitgangspoort E5/24 is.
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
De output van deze opdracht is nuttig om het doel van een LTL te begrijpen als het niet overeenkomt met een fysieke poort. Voorbeelden zijn Drop LTL en 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 title | Versie herstellen |
Cisco fout-id CSCux73273 | Mpls-trigger voor ELAM op F3 werkt niet | Geen vaste versie, gebruik de tijdelijke oplossing |
Cisco bug-id CSCvm65736 | N7k: ELAM release trigger clp_elam crash/LC reload | 7.3(3)D1(1), 8.2(3) of 8.3(2) |
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
30-Jan-2024 |
Eerste vrijgave |