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).
Este documento describe los pasos utilizados para realizar un ELAM en los módulos M3 Cisco Nexus 7700 (N7700), explica los resultados más relevantes y describe cómo interpretar los resultados.
Consejo: Refiérase al documento Descripción General de ELAM para ver una descripción general de ELAM.
En este ejemplo, un host en VLAN 2500 (10.0.5.101), el puerto Eth4/1 envía una solicitud de protocolo de mensajes de control de Internet (ICMP) a un host en VLAN 55 (10.0.3.101), puerto Eth3/5. ELAM se utiliza para capturar este paquete único de 10.0.5.101 a 10.0.3.101. Es importante recordar que ELAM le permite capturar una única trama.
Para realizar un ELAM en el N7K, primero debe conectarse al módulo apropiado (esto requiere el privilegio de administrador de red):
N7700# attach module 4 Attaching to module 4 ... module-4#
Se espera que el tráfico ingrese el switch en el puerto Eth4/1. Cuando verifica los módulos en el sistema, ve que el Módulo 4 es un módulo M3. Es importante recordar que el N7K está totalmente distribuido y que los módulos, no el supervisor, toman las decisiones de reenvío para el tráfico del plano de datos.
N7700# show module Mod Ports Module-Type Model Status --- ----- ----------------------------------- ------------------ ---------- 1 12 100 Gbps Ethernet Module N77-F312CK-26 ok
3 48 1/10 Gbps Ethernet Module N77-M348XP-23L ok 4 24 10/40 Gbps Ethernet Module N77-M324FQ-25L ok 5 0 Supervisor Module-2 N77-SUP2E active * 6 0 Supervisor Module-2 N77-SUP2E ha-standby 7 24 10/40 Gbps Ethernet Module N77-F324FQ-25 ok Mod Sw Hw --- --------------- ------ 1 7.3(0)DX(1) 1.1
3 7.3(0)DX(1) 1.1 4 7.3(0)DX(1) 1.0 5 7.3(0)DX(1) 1.2 6 7.3(0)DX(1) 1.2 7 7.3(0)DX(1) 1.0
Para los módulos de la serie M, ejecute el ELAM en el motor de reenvío de capa 2 (L2) (FE) con el nombre de código interno F4. Tenga en cuenta que el bus de datos L2 FE (DBUS) contiene la información de encabezado original antes de las búsquedas de capa 2 y capa 3 (L3), y el bus de resultados (RBUS) contiene los resultados después de las búsquedas de capa 3 y capa 2.
Los módulos M3 N7K pueden utilizar varios FE para cada módulo, por lo que debe determinar el ASIC F4 que se utiliza para el FE en el puerto Eth4/1. Ingrese este comando para verificar esto:
module-4# show hardware internal dev-port-map (some output omitted)
-------------------------------------------------------------- CARD_TYPE: 24 port 40G >Front Panel ports:24 -------------------------------------------------------------- Device name Dev role Abbr num_inst: -------------------------------------------------------------- > SLF L3 Driver DEV_LAYER_3_LOOKUP L3LKP 4 > SLF L2FWD driver DEV_LAYER_2_LOOKUP L2LKP 4 +-----------------------------------------------------------------------+ +----------------+++FRONT PANEL PORT TO ASIC INSTANCE MAP+++------------+ +-----------------------------------------------------------------------+ FP port | PHYS | MAC_0 | RWR_0 | L2LKP | L3LKP | QUEUE |SWICHF 1 0 0 0 0 0 0,1 2 0 0 0 0 0 0,1 3 0 0 0 0 0 0,1
En la salida, puede ver que el puerto Eth4/1 está en la instancia F4 (L2LKP) 0. En el módulo N77-M312CQ-26L, hay 6 ASIC F4 con 2 puertos en cada grupo de puertos. En el módulo N77-M324FQ-25L, hay 4 ASIC F4 con 6 puertos en cada grupo de puertos. El módulo N77-M348XP-23L tiene 2 ASIC F4 con 12 puertos en cada grupo de puertos.
Nota: Al igual que los módulos de la serie F, la sintaxis de ELAM del módulo M3 utiliza valores basados en 0. Este no es el caso de los módulos M1 y M2, que utilizan valores basados en 1.
module-4# elam asic f4 instance 0 module-4(f4-elam)# layer2
module-4(f4-l2-elam)#
El F4 ASIC admite disparadores ELAM para IPv4, IPv6 y otros. El disparador ELAM debe alinearse con el tipo de trama. Si la trama es una trama IPv4, el disparador también debe ser IPv4. Una trama IPv4 no se captura con otro disparador. La misma lógica se aplica a IPv6.
Con Nexus Operating Systems (NX-OS), puede utilizar el carácter de signo de interrogación para separar el disparador ELAM:
module-4(f4-l2-elam)# trigger dbus ipv4 ingress if ?
(some output omitted)
destination-index Destination-index
destination-ipv4-address Destination ipv4 address
destination-ipv4-mask Destination ipv4 mask
destination-mac-address Destination mac address
l4-protocol L4 protocol
source-index Source-index
source-ipv4-address Source ipv4 address
source-ipv4-mask Source ipv4 mask
source-mac-address Source mac address
Para este ejemplo, la trama se captura de acuerdo con las direcciones IPv4 de origen y destino, por lo que sólo se especifican esos valores.
F4 requiere activadores separados para el DBUS y el RBUS.
Este es el disparador DBUS:
module-4(f4-l2-elam)# trigger dbus ipv4 ingress if source-ipv4-address
10.0.5.101 destination-ipv4-address 10.0.3.101
Aquí está el disparador de RBUS:
module-4(f4-l2-elam)# trigger rbus ingress result if tr 1
Ahora que se ha seleccionado el FE de ingreso y ha configurado el disparador, puede iniciar la captura:
module-4(f4-l2-elam)# start
Para verificar el estado del ELAM, ingrese el comando status:
module-4(f4-l2-elam)# status
ELAM Slot 4 instance 0: L2 DBUS/LBD Configuration: trigger dbus ipv4 ingress if
source-ipv4-address 10.0.5.101 destination-ipv4-address 10.0.3.101
L2 DBUS/LBD: Configured
ELAM Slot 4 instance 0: L2 RBUS Configuration: trigger rbus ingress result if tr 1
L2 RBUS: Configured
L2 BIS: Unconfigured
L2 BPL: Unconfigured
L2 EGR: Unconfigured
L2 PLI: Unconfigured
L2 PLE: Unconfigured
Una vez que la FE recibe la trama que coincide con el disparador, el estado de ELAM se muestra como Desencadenado:
module-4(f4-l2-elam)# status
ELAM Slot 4 instance 1: L2 DBUS/LBD Configuration: trigger dbus ipv4 ingress if
source-ipv4-address 10.0.5.101 destination-ipv4-address 10.0.3.101
L2 DBUS/LBD: Triggered
ELAM Slot 4 instance 1: L2 RBUS Configuration: trigger rbus ingress result if tr 1
L2 RBUS: Triggered
L2 BIS: Unconfigured
L2 BPL: Unconfigured
L2 EGR: Unconfigured
L2 PLI: Unconfigured
L2 PLE: Unconfigured 7
Para mostrar los resultados de ELAM, ingrese los comandos show dbus y show rbus. Si hay un gran volumen de tráfico que coincide con los mismos disparadores, el DBUS y el RBUS podrían activarse en tramas diferentes. Por lo tanto, es importante verificar los números de secuencia internos en los datos DBUS y RBUS para asegurarse de que coincidan:
module-4(f4-l2-elam)# show dbus | i seq
port-id : 0x0 sequence-number : 0x868
module-4(f4-l2-elam)# show rbus | i seq
de-bri-rslt-valid : 0x1 sequence-number : 0x868
A continuación se muestra el extracto de los datos de ELAM que es más relevante para este ejemplo (se omite algún resultado):
module-4(f4-l2-elam)# show dbus -------------------------------------------------------------------- LBD IPV4 -------------------------------------------------------------------- ttl : 0xff l3-packet-length : 0x54 destination-address: 10.0.3.101 source-address: 10.0.5.101 -------------------------------------------------------------------- packet-length : 0x66 vlan : 0x9c4 segid-lsb : 0x0 source-index : 0xe05 destination-mac-address : 8c60.4f07.ac65 source-mac-address : 8c60.4fb7.3dc2 port-id : 0x0 sequence-number : 0x868 module-4(f4-l2-elam)# show rbus -------------------------------------------------------------------- L2 RBUS RSLT CAP DATA -------------------------------------------------------------------- de-bri-rslt-valid : 0x1 sequence-number : 0x868 vlan : 0x37 rbh : 0x65 cos : 0x0 destination-index : 0x9ed
Con los datos DBUS, puede verificar que la trama se recibe en la VLAN 2500 con una dirección MAC de origen de 8c60.4fb6.3dc2 y una dirección MAC de destino de 8c60.4f07.ac65. También puede ver que esta es una trama IPv4 que se origina desde 10.0.5.101, y está destinada a 10.0.3.101.
Consejo: Existen otros campos útiles que no se incluyen en esta salida, como el valor de Tipo de servicio (TOS), indicadores IP, longitud de IP y longitud de trama L2.
Para verificar en qué puerto se recibe la trama, ingrese el comando SRC_INDEX (la LTL de destino local de origen). Ingrese este comando para asignar un LTL a un puerto o grupo de puertos para el N7K:
N7700# show system internal pixm info ltl 0xe05 Member info
------------------
Type LTL
---------------------------------
PHY_PORT Eth4/1
FLOOD_W_FPOE 0xc031
El resultado muestra que el SRC_INDEX de 0xe05 se mapea al puerto Eth4/1. Esto confirma que la trama se recibe en el puerto Eth4/1.
Con los datos RBUS, puede verificar que la trama se rutea a VLAN 55. Observe que el TTL comienza como 0xff en los datos DBUS. Además, puede confirmar el puerto de salida desde el DEST_INDEX (LTL de destino):
N7K# show system internal pixm info ltl 0x9ed
Member info
------------------
Type LTL
---------------------------------
PHY_PORT Eth3/5
FLOOD_W_FPOE 0x8017
FLOOD_W_FPOE 0x8016
El resultado muestra que el DEST_INDEX de 0x9ed se mapea al puerto Eth3/5. Esto confirma que la trama se envía desde el puerto Eth3/5.
Para verificar cómo el switch asigna el conjunto LTL, ingrese el comando show system internal pixm info ltl-region. El resultado de este comando es útil para entender el propósito de un LTL si no coincide con un puerto físico. Un buen ejemplo de esto es una LTL de caída:
N7700# show system internal pixm info ltl 0xcad 0x0cad is Drop DI LTL N7700# show system internal pixm info ltl-region
(some output omitted) =========================================================== PIXM VDC 1 LTL MAP Version: 3 Description: LTL Map for Crossbow =========================================================== LTL_TYPE SIZE START END ======================================================================== LIBLTLMAP_LTL_TYPE_PHY_PORT 3072 0x0 0xbff LIBLTLMAP_LTL_TYPE_SUP_ETH_INBAND 64 0xc00 0xc3f LIBLTLMAP_LTL_TYPE_UCAST_VPC_VDC_SI 32 0xc40 0xc5f LIBLTLMAP_LTL_TYPE_EXCEPTION_SPAN 32 0xc60 0xc7f LIBLTLMAP_LTL_TYPE_UCAST_GENERIC 48 0xc80 0xcaf ------------------------------------------------------------------- SUB-TYPE LTL ------------------------------------------------------------------- LIBLTLMAP_LTL_TYPE_UCAST_GENERIC_NOT_USED 0xcaf LIBLTLMAP_LTL_TYPE_DROP_DI_WO_HW_BITSET 0xcae LIBLTLMAP_LTL_TYPE_DROP_DI 0xcad LIBLTLMAP_LTL_TYPE_SUP_DIAG_SI_V5 0xcac LIBLTLMAP_LTL_TYPE_RESERVED_ERSPAN_LTL 0xcab ------------------------------------------------------------------- LIBLTLMAP_LTL_TYPE_LC_CPU 192 0xcb0 0xd6f LIBLTLMAP_LTL_TYPE_UCAST_RESERVED 144 0xd70 0xdff LIBLTLMAP_LTL_TYPE_PC 1536 0xe00 0x13ff LIBLTLMAP_LTL_TYPE_DYNAMIC_UCAST 5120 0x1400 0x27ff LIBLTLMAP_LTL_TYPE_MCAST_RESERVED 48 0x2800 0x282f LIBLTLMAP_LTL_TYPE_DYNAMIC_MCAST 38848 0x2830 0xbfef LIBLTLMAP_LTL_TYPE_SAC_FLOOD 16 0xbff0 0xbfff LIBLTLMAP_LTL_TYPE_FLOOD_WITH_FPOE 16384 0xc000 0xffff