Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Antecedentes

Pasos de mitigación

Opción 1. Prune Vlans

Opción 2. Separación L3

Opción 3. Arquitectura de diseño alternativa como Fabricpath

Opción 4. Usar tarjetas de línea de alta capacidad como tarjetas M2/F3

Introducción

Este documento describe la condición completa de la tabla F2/F2e MAC y los métodos para mitigarla.

El módulo F2 con un límite de MAC de 16 000 por Switch on Chip (SoC) informa que la tabla MAC aleatoria tiene mensajes de error completos con una utilización del 60%. ¿Por qué la tarjeta de línea no es capaz de utilizar todo el espacio de la tabla MAC de 16 000 que está disponible?

%L2MCAST-SLOT2-2-L2MCAST_MAC_FULL_LC: Failed to insert entry in MAC table for FE 1 swidx 271 (0x10f) with err (mac table full). To avoid possible multicast traffic loss, disable OMF. Use the con figuration CLI: "no ip igmp snooping optimise-multicast-flood"

Prerequisites

Requirements

Cisco recomienda que conozca la arquitectura de Nexus 7000.

Componentes Utilizados

La información que contiene este documento se basa en las siguientes versiones de software y hardware.

- Nexus 7000 con versión 6.2.10 y posteriores.

- Tarjeta de línea de la serie F2e.

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. If your network is live, make sure that you understand the potential impact of any command.

Antecedentes

El módulo F2 tiene 16k de espacio de tabla MAC por SoC del motor de reenvío.

Hay 12 de tales SoC en cada módulo y cada servicio 4 puertos cada uno.

module-1# show hardware internal forwarding f2 l2 table utilization instance all

L2 Forwarding Resources

-------------------------

L2 entries: Module inst   total    used   mcast   ucast   lines   lines_full

------------------------------------------------------------------------------

1         0   16384    9647     265    9382     512            0

1         1   16384    7430       1    7429     512            0

1         2   16384    9654     264    9390     512            0

1         3   16384    7430       7    7423     512            0

1         4   16384    7564       8    7556     512            0

1         5   16384    7432       1    7431     512            0

1         6   16384    7418       0    7418     512            0

1         7   16384     558       0     558     512            0

1         8   16384     558       0     558     512            0

1         9   16384     558       0     558     512            0

1        10   16384     558       0     558     512            0

1        11   16384    7416       0    7416     512            0

La salida aquí resalta el uso de la tabla de direcciones MAC de hardware por SoC.

Para entender por qué recibe el mensaje completo de la tabla MAC, debe entender cómo se divide la tabla MAC. Este diagrama le ayuda con una claridad visual.

- La tabla MAC de 16k para la tarjeta de línea F2 se distribuye en páginas. Cada página puede contener 512 entradas. Así que tienes un total de 32 páginas. Puede utilizar un hash de dos vías para colocar un nuevo MAC en una de las páginas.

- Ahora, tomemos un escenario donde la línea 4 se utiliza en cada página. Esto significa que 32 MAC únicas han terminado con un resultado de hashing que lo coloca en la misma línea de cada página.

- Si se genera un 33 rd MAC con el mismo resultado de hash, no puede instalarlo y es probable que vea el mensaje de error que se muestra anteriormente.

- La columna líneas completas realiza un seguimiento del número de líneas que han alcanzado este estado.

El resultado aquí también muestra las líneas por página y también si se ha alcanzado la condición de líneas completas.

Sólo la dirección MAC que termina introduciendo un troceo de una manera determinada encuentra esta condición, mientras que no verá ningún problema para otra dirección MAC.

Normalmente, la dirección MAC de multidifusión puede ver esto más a menudo, ya que no se aleatorizan tanto como las MAC de unidifusión. Las tarjetas de línea generalmente se prueban con pruebas RFC estándar del sector para validar la eficiencia de utilización. Sin embargo, siempre hay una probabilidad de que ciertas combinaciones de MAC en entornos de clientes específicos no estén muy bien optimizadas, lo que lleva a este error.

Pasos de mitigación

Estos pasos pueden ayudar a reducir el uso de la tabla MAC.

- Prune vlans

- separación L3

- Otra opción de diseño (fabricpath)

- Módulo M2 o F3 para el crecimiento futuro

Opción 1. Prune Vlans

Nota: No hay SVI para vlan 100 y 200. Esta es una suposición importante y se aclarará cuando lea la opción 2.

En esta configuración simplificada, hay dos hosts en diferentes SoC.

N7KA-VDC-1(config-vlan)# sh mac address-table

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False ,  ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN     MAC Address      Type      age     Secure NTFY Ports/SWID.SSID.LID

---------+-----------------+--------+---------+------+----+------------------

* 100      8478.ac0e.4742    dynamic     ~~~      F    F  Eth6/4

* 200      8478.ac5b.2b42    dynamic     ~~~      F    F  Eth6/5

N7KA-VDC-1# sh vlan internal bd-info vlan-to-bd 100

VDC Id  Vlan Id  BD Id

------  -------  -------

1        100      38

N7KA-VDC-1# sh vlan internal bd-info vlan-to-bd 200

VDC Id  Vlan Id  BD Id

------  -------  -------

1        200      39

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

0    1     0   39    8478.ac5b.2b42  0x00054   0   0x091   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

Cada FE (motor de reenvío = SoC) muestra 2 direcciones MAC en uso.

Ahora, usted borra las vlan y la configuración es como se muestra en esta imagen.

Después de eliminar las vlan, tiene una entrada menos por FE (SoC). El recorte de la vlan impidió una sincronización entre el FE para la dirección MAC.

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

Opción 2. Separación L3

Aquí, tiene las vlan recortadas pero asume que tiene la interfaz virtual del switch (SVI) configurada en este VDC para vlan 100 y 200.

La tabla MAC se verá así, donde la dirección MAC se sincroniza entre FE aunque la vlan esté recortada. Esto se debe a que la interfaz virtual del switch (SVI) está habilitada, lo que requiere que el FE sepa también las direcciones MAC de otras VLAN.

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

0    1     0   39    8478.ac5b.2b42  0x00054   0   0x091   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

Si quita vlan 200 SVI, la tabla MAC no ve una sincronización para vlan 200 mac en FE0.

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

La conclusión del paso no es eliminar las SVI, sino analizar si mover las SVI a un VDC diferente creando un VDC de capa 3 independiente es una opción. Este no es un paso de diseño fácil y requeriría una planificación detallada.

Opción 3. Arquitectura de diseño alternativa como Fabricpath

Estas son alternativas más complejas que están fuera del alcance de este documento para detallar, pero que pueden proporcionar eficiencia en el uso de MAC.

Opción 4. Usar tarjetas de línea de alta capacidad como tarjetas M2/F3

La tarjeta de línea M2 y F3 tiene una capacidad de tabla MAC mucho mayor.

Hoja de datos M2 ==> tabla MAC (128 000 por SoC)

Hoja de datos F3 ==> Tabla MAC (64k por SoC)