El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
En este documento se describe el uso de la herramienta Embedded Logic Analyzer Module (ELAM) en Unified Computing System (UCS) 4.ª generación Fabric Interconnect (FI) 6454 y cómo utilizarlo de la mejor manera posible.
No hay requisitos previos para este documento.
Cisco recomienda que tenga conocimiento sobre estos temas:
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
UCS 4th Gen FI tiene la capacidad de ejecutar capturas de ELAM. Una captura ELAM viene incorporada en el ASIC.
La herramienta ELAM permite ver en tiempo real los paquetes que se reenvían en el nivel ASIC. Puede ver los detalles de un paquete como:
ELAM proporciona detalles del reenvío de paquetes. No interrumpe el plano de datos.
Inicie sesión en UCS mediante la interfaz de línea de comandos (CLI).
Ejecute estos comandos:
#connect nxos a|b
#attach module 1
#debug platform internal tah elam asic 0
#trigger init asic 0 slice 0 lu-a2d 1 in-select 6 out-select 1
#set outer ...
#start
#report
Nota: La 4ª generación FI es una unidad en rack única con un solo módulo (módulo 1) con un ASIC (ASIC 0) y una porción (porción 0). Consulte el siguiente resultado.
RCH-SV-FFAIII-A(nx-os)# show hardware internal tah interface ethernet 1/30
#########################################
IfIndex: 436222464
DstIndex: 6028
IfType: 26
Interface name Ethernet1/30
Asic: 0
Asic: 0 <<<<<
AsicPort: 49
SrcId: 98
Slice: 0 <<<<<
PortOnSlice: 49
Table entries for interface Ethernet1/30
Para ELAMs donde el disparador se basa en los atributos de paquete "lu-a2d 1" se utiliza. Los valores 6 y 1 se utilizarán para "seleccionar" y "seleccionar" respectivamente para intereses de salida
El comando "set outer" es nuestro filtro, aquí es donde definimos y le decimos al FI qué paquete queremos capturar, hay un montón de opciones y podemos ser tan granulares como sea necesario:
module-1(TAH-elam-insel6)# set outer ?
arp ARP Fields
fcoe FCoE Fields
ipv4 IPv4 Fields
ipv6 IPv6 Fields
l2 All Layer 2 Fields
l4 L4 Fields
module-1(TAH-elam-insel6)# set outer l2 ?
cfi CFI Setting
cntag_vld CNTag Information Valid
cos Class of Service
dst_mac Destination MAC Address
qtag_vld VLAN Tag Information Valid
snap_vld SNAP Header Information Valid
src_mac Source MAC Address
vlan VLAN Id (Present only in case of FEX)
vntag_dvif VNTAG Destination vif
vntag_looped VNTAG Header Looped Valid
vntag_pointer VNTAG Header Pointer Valid
vntag_svif VNTAG Source vif
vntag_vld VNTAG Information Valid
module-1(TAH-elam-insel6)# set outer ipv4 ?
checksum Checksum
dscp Diff. Serv. Code Point
dst_ip Destination IP Address
ecn Explicit Congestion Ntfn
fragment-off Fragments Offset
header-len Header Length
more-frags More Fragments Available
next-protocol Next Protocol
packet-len Packet Total Length
pyld-len Payload Length
src_ip Source IP Address
ttl Time to Live
version Version
Una vez definidos los filtros, ejecute el comando start para ejecutar la herramienta ELAM. Si no se ha capturado nada que completa la condición de filtro, se verá lo siguiente:
module-1(TAH-elam-insel6)# report
ELAM not triggered yet on slot - 1, asic - 0, slice - 0
Nota: El comando "set" sobrevivirá en los ELAM, una buena práctica es ejecutar un comando "reset" cada vez que pretendamos capturar tráfico con diferentes IP, MAC, etc.
1. Ping de VM 172.16.35.31 a gateway 172.16.35.126:
RCH-SV-FFAIII-A(nx-os)# attach module 1
module-1# debug platform internal tah elam asic 0
module-1(TAH-elam)# trigger init asic 0 slice 0 lu-a2d 1 in-select 6 out-select 1
param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 1
module-1(TAH-elam-insel6)# set outer ipv4 src_ip 172.16.35.31 dst_ip 172.16.35.126
module-1(TAH-elam-insel6)# start
GBL_C++: [MSG] rocky_elam_wrapper_init:54:asic type 8 inst 0 slice 0 a_to_d 1 insel 6 outsel 1
GBL_C++: [MSG] rocky_elam_wrapper_enable:149:asic type 8 inst 0 slice 0 a_to_d 1
GBL_C++: [MSG] - writing data=0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000005608118F800000
000000000000000000560811BF00000000000000000000001000000000000000000000000000000000000000000000000000000000001
GBL_C++: [MSG] - writing mask=0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000007FFFFFFF800000
0000000000000000007FFFFFFF80000000000000000000003800000000000000000000000000000000000000000000000000000000001
module-1(TAH-elam-insel6)# report
HOMEWOOD ELAM REPORT SUMMARY
slot - 1, asic - 0, slice - 0
============================
Incoming Interface: Eth1/33
Src Idx : 0x1002, Src BD : 35
Outgoing Interface Info: dmod 1, dpid 4
Dst Idx : 0x604, Dst BD : 35
Packet Type: IPv4
Dst MAC address: 8C:60:4F:CD:FD:7C
Src MAC address: 00:25:C5:00:00:1E
.1q Tag0 VLAN: 35, cos = 0x1
Dst IPv4 address: 172.16.35.126
Src IPv4 address: 172.16.35.31
Ver = 4, DSCP = 0, Don't Fragment = 0
Proto = 1, TTL = 64, More Fragments = 0
Hdr len = 20, Pkt len = 84, Checksum = 0x5f19
L4 Protocol : 1
ICMP type : 8
ICMP code : 0
Drop Info:
----------
LUA:
LUB:
LUC:
LUD:
Final Drops:
El paquete con src_ip 172.16.35.31 y dst_ip 172.16.35.126 está en la VLAN 35 y llegó al puerto 1/33 (interfaz entrante) y se destinó (interfaz saliente) a la interfaz "dpid4" ...¿qué? "dpid" es el identificador interno del puerto ASIC y el mapping se puede encontrar con "show interface hardware-mappings":
Incoming Interface: Eth1/33
Src Idx : 0x1002, Src BD : 35
interface Ethernet1/33
description S: Server, Port-channel 1025
no pinning server sticky
switchport mode fex-fabric
priority-flow-control mode on
fex associate 1
channel-group 1025
no shutdown
Outgoing Interface Info: dmod 1, dpid 4
Dst Idx : 0x604, Dst BD : 35
RCH-SV-FFAIII-A(nx-os)# show interface hardware-mappings
Legends:
SMod - Source Mod. 0 is N/A
Unit - Unit on which port resides. N/A for port channels
HPort - Hardware Port Number or Hardware Trunk Id:
HName - Hardware port name. None means N/A
FPort - Fabric facing port number. 255 means N/A
NPort - Front panel port number
VPort - Virtual Port Number. -1 means N/A
Slice - Slice Number. N/A for BCM systems
SPort - Port Number wrt Slice. N/A for BCM systems
SrcId - Source Id Number. N/A for BCM systems
------------------------------------------------------------------------
Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId
------------------------------------------------------------------------
.
Eth1/13 1a001800 1 0 4 255 48 -1 0 4 8
Este "dpid 4" también corresponde a lo que sugiere el "show hardware internal tah interface ethernet 1/13":
RCH-SV-FFAIII-A(nx-os)# show hardware internal tah interface ethernet 1/13
#########################################
IfIndex: 436213760
DstIndex: 6096
IfType: 26
Interface name Ethernet1/13
Asic: 0
Asic: 0
AsicPort: 4 <<<<<
SrcId: 8
Slice: 0
PortOnSlice: 4 <<<<<
El paquete fue identificado como protocolo de mensajes de control de Internet (ICMP) por el protocolo de capa 4 (L4) de ELAM. Consulte la lista de números de protocolo IANA. También puede filtrar con un tamaño de MTU específico. ELAM sólo se activa cuando se activa la MTU exacta.
module-1(TAH-elam-insel6)# set outer ipv4 src_ip 172.16.35.31 dst_ip 172.16.35.126 packet-len 1500
Dst IPv4 address: 172.16.35.126
Src IPv4 address: 172.16.35.31
Ver = 4, DSCP = 0, Don't Fragment = 1
Proto = 1, TTL = 64, More Fragments = 0
Hdr len = 20, Pkt len = 1500, Checksum = 0x1758
L4 Protocol : 1
ICMP type : 8
ICMP code : 0
Solicitud ARP de la máquina virtual (VM) a la red ascendente, con las direcciones MAC establecidas como filtro:
RCH-SV-FFAIII-B(nx-os)# attach module 1
module-1# debug platform internal tah elam asic 0
module-1(TAH-elam)# trigger init asic 0 slice 0 lu-a2d 1 in-select 6 out-select 1
param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 1
module-1(TAH-elam-insel6)# set outer l2 src_mac 00:25:c5:00:00:1e dst_mac ff:ff:ff:ff:ff:ff
module-1(TAH-elam-insel6)# start
GBL_C++: [MSG] rocky_elam_wrapper_init:36:asic type 8 inst 0 slice 0 a_to_d 1 insel 6 outsel 1
GBL_C++: [MSG] rocky_elam_wrapper_enable:95:asic type 8 inst 0 slice 0 a_to_d 1
GBL_C++: [MSG] - writing data=0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000015820463E004B8A00003C0000000000000000000002000000000000000000000000000000000000000000000000000000000001
GBL_C++: [MSG] - writing mask=0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000001FFFFFFFFFFFFFFFFFFFE0000000000000000000003800000000000000000000000000000000000000000000000000000000001
module-1(TAH-elam-insel6)# report
HOMEWOOD ELAM REPORT SUMMARY
slot - 1, asic - 0, slice - 0
============================
Incoming Interface: Eth1/33
Src Idx : 0x1002, Src BD : 35
Outgoing Interface Info: dmod 1, dpid 4
Dst Idx : 0x604, Dst BD : 35
Packet Type: ARP
Dst MAC address: FF:FF:FF:FF:FF:FF
Src MAC address: 00:25:C5:00:00:1E
.1q Tag0 VLAN: 35, cos = 0x1
Target Hardware address: 00:00:00:00:00:00
Sender Hardware address: 00:25:C5:00:00:1E
Target Protocol address: 172.16.35.110
Sender Protocol address: 172.16.35.31
ARP opcode: 1
Drop Info:
----------
LUA:
LUB:
LUC:
LUD:
Final Drops:
El sistema identifica el paquete como un ARP; esto es especialmente útil cuando hay una entrada ARP incompleta en el nivel de VM o gateway.
Si procede, los puertos TCP/UDP también se enumerarán, SSH se prueba aquí:
RCH-SV-FFAIII-B(nx-os)# attach module 1
module-1# debug platform internal tah elam asic 0
module-1(TAH-elam)# trigger init asic 0 slice 0 lu-a2d 1 in-select 6 out-select 1
param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 1
module-1(TAH-elam-insel6)# set outer ipv4 src_ip 172.16.35.126 dst_ip 172.16.35.31
module-1(TAH-elam-insel6)# start
GBL_C++: [MSG] rocky_elam_wrapper_init:36:asic type 8 inst 0 slice 0 a_to_d 1 insel 6 outsel 1
GBL_C++: [MSG] rocky_elam_wrapper_enable:95:asic type 8 inst 0 slice 0 a_to_d 1
GBL_C++: [MSG] - writing data=0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000560811BF0000
000000000000000000005608118F80000000000000000000001000000000000000000000000000000000000000000000000000000000001
GBL_C++: [MSG] - writing mask=0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000007FFFFFFF8000
000000000000000000007FFFFFFF80000000000000000000003800000000000000000000000000000000000000000000000000000000001
module-1(TAH-elam-insel6)# report
HOMEWOOD ELAM REPORT SUMMARY
slot - 1, asic - 0, slice - 0
============================
Incoming Interface: Eth1/14
Src Idx : 0x604, Src BD : 35
Outgoing Interface Info: dmod 1, dpid 44
Dst Idx : 0x1002, Dst BD : 35
Packet Type: IPv4
Dst MAC address: 00:25:C5:00:00:1E
Src MAC address: 8C:60:4F:CD:FD:7C
.1q Tag0 VLAN: 35, cos = 0x0
Dst IPv4 address: 172.16.35.31
Src IPv4 address: 172.16.35.126
Ver = 4, DSCP = 0, Don't Fragment = 0
Proto = 6, TTL = 64, More Fragments = 0
Hdr len = 20, Pkt len = 60, Checksum = 0x27f5
L4 Protocol : 6
TCP Dst Port : 22
TCP Src Port : 15067
Drop Info:
----------
LUA:
LUB:
LUC:
LUD:
Final Drops:
Las caídas también se registran. La FI descarta una solicitud ARP:
RCH-SV-FFAIII-B(nx-os)# attach module 1
module-1# debug platform internal tah elam asic 0
module-1(TAH-elam)# trigger init asic 0 slice 0 lu-a2d 1 in-select 6 out-select 1
param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 1
module-1(TAH-elam-insel6)# set outer l2 src_mac 00:25:c5:00:00:1e dst_mac ff:ff:ff:ff:ff:ff
module-1(TAH-elam-insel6)# start
GBL_C++: [MSG] rocky_elam_wrapper_init:54:asic type 8 inst 0 slice 0 a_to_d 1 insel 6 outsel 1
GBL_C++: [MSG] rocky_elam_wrapper_enable:149:asic type 8 inst 0 slice 0 a_to_d 1
GBL_C++: [MSG] - writing data=0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000971400007BFFFFFFFFFFFC00001
GBL_C++: [MSG] - writing mask=0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000003FFFFFFFFFFFFFFFFFFFFFFFC00001
module-1(TAH-elam-insel6)# report
HOMEWOOD ELAM REPORT SUMMARY
slot - 1, asic - 0, slice - 0
============================
Incoming Interface: Eth1/18
Src Idx : 0x603, Src BD : 35
Outgoing Interface Info: dmod 0, dpid 0
Dst Idx : 0x0, Dst BD : 35
Packet Type: ARP
Dst MAC address: FF:FF:FF:FF:FF:FF
Src MAC address: 00:25:C5:00:00:1E
.1q Tag0 VLAN: 35, cos = 0x1
Target Hardware address: 00:00:00:00:00:00
Sender Hardware address: 00:25:C5:00:00:1E
Target Protocol address: 172.16.35.99
Sender Protocol address: 172.16.35.31
ARP opcode: 1
Drop Info:
----------
LUA:
LUB:
LUC:
LUD:
MC_RPF_FAIILURE
SRC_VLAN_MBR
Final Drops:
MC_RPF_FAIILURE
SRC_VLAN_MBR
La FI recibe una solicitud ARP en el puerto 1/18 (este es un puerto de enlace ascendente) con una MAC de origen de 00:25:c5:00:00:1e que se aprende localmente en puertos Ethernet virtuales (vEth). Esta condición provoca una caída de Reverse Path Forward (RPF). Observe que la información de interfaz saliente informa dpid 0 que es una caída.
No se permite la VLAN 35 en el puerto 1/18 y esto también desencadenó drop SRC_VLAN_MBR.
RCH-SV-FFAIII-A(nx-os)# show run interface ethernet 1/18
interface Ethernet1/18
description U: Uplink
pinning border
switchport mode trunk
switchport trunk allowed vlan 1
channel-group 105 mode active