Contenido

Introducción

Errores comunes de TCAM

Utilización de recursos de ACL de hardware

Opciones

Actualización atómica

Estadísticas por entrada

Gestión de fragmentos

Umbral de expansión ACE

Grupo de recursos

Información Relacionada

Introducción

Este documento describe las soluciones temporales para problemas de recursos TCAM.

Errores comunes de TCAM

%ACLQOS-SLOT3-4-ACLQOS_OVER_THRESHOLD Tcam 0 El uso del banco 0 ha alcanzado su umbral

%ACLMGR-3-ACLMGR_VERIFY_FAIL Error al verificar: cliente 8200016E, no hay suficientes entradas libres disponibles en el banco TCAM

"ERROR: Error en la inserción de la entrada TCAM debido a restricciones TCAM de Spanslogic" — sólo en los módulos XL

Para obtener más restricciones de TCAM spanslogic, consulte .

Utilización de recursos de ACL de hardware

Comando:

show hardware access-list resource usage module <mod>

SITE1-AGG1# show hardware access-list resource utilization mod 3

INSTANCE 0x0

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

ACL Hardware Resource Utilization (Mod 3)

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

Used    Free    Percent

Utilization

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

Tcam 0, Bank 0           9       16375   0.05

Tcam 0, Bank 1           2       16382   0.01

Tcam 1, Bank 0           7       16377   0.04

Tcam 1, Bank 1           246     16138   1.50

LOU                       3       101     2.88

Both LOU Operands         2

Single LOU Operands       1

LOU L4 src port:          0

LOU L4 dst port:          1

LOU L3 packet len:        0

LOU IP tos:               0

LOU IP dscp:              0

LOU ip precedence:        0

LOU ip TTL:               0

TCP Flags                 0       16      0.00

Protocol CAM              4       3       57.14

Mac Etype/Proto CAM       9       5       64.28

Non L4op labels, Tcam 0   2       6141    0.03

Non L4op labels, Tcam 1   3       6140    0.04

L4 op labels, Tcam 0      0       2047    0.00

L4 op labels, Tcam 1      1       2046    0.04

Ingress Dest info table   131072  510     0.39

Egress Dest info table    65536   511     0.19

SITE1-AGG1#

Opciones

Las siguientes son las pocas opciones cuando el uso de TCAM es alto.

- Actualización atómica

Comando: no hardware access-list update atomic

- Deshabilitar estadísticas por entrada en todas las ACL

Comando: no hay estadísticas por entrada

- Gestión de fragmentos

Comando: fragments deny-all/permit-all

- umbral de expansión ACE

Comando: umbral de recursos de la lista de acceso de hardware

- Agrupación de recursos (no afecta al servicio porque las entradas existentes no se mueven)

Comando: modo de agrupación de recursos de lista de acceso de hardware <x>

Actualización atómica

De forma predeterminada, N7K realiza una actualización de la lista de control de acceso (ACL) atómica en un módulo cuando hay un cambio de ACL.  Una actualización atómica no interrumpe el tráfico al que se aplica la ACL actualizada. Sin embargo, una actualización atómica requiere que un módulo de E/S que recibe una actualización de ACL tenga suficientes recursos disponibles para almacenar cada entrada de ACL actualizada además de todas las entradas preexistentes en la ACL afectada. Después de que se realice la actualización, se liberarán los recursos adicionales utilizados para la actualización. Si el módulo de E/S carece de los recursos requeridos, el dispositivo genera un mensaje de error y la actualización de ACL al módulo de E/S falla.

Si un módulo de E/S carece de los recursos necesarios para una actualización atómica, puede desactivar las actualizaciones atómicas mediante el uso de

no hardware access-list update atomic

Sin embargo, durante el breve tiempo necesario para que el dispositivo elimine la ACL anterior e implemente la ACL actualizada, el tráfico al que se aplica la ACL se descarta de forma predeterminada.  Si desea permitir todo el tráfico al que se aplica una ACL mientras recibe una actualización no atómica. Utilice el comando hardware access-list update default-output-output permit.

Nota: Si las actualizaciones atómicas y no atómicas son posibles (digamos que el TCAM tiene suficiente espacio libre), es preferible el atómico. Si no hay suficiente espacio libre para hacer la actualización atómica, entonces se intenta el no atómico. Por lo tanto, la implementación actual siempre intenta primero el atómico, incluso cuando la actualización atómica está inhabilitada. Sin embargo, actualmente en el momento del fracaso debido a las restricciones de la lógica de expansión, no se conmuta por no atómica y CSCud36802 se archiva para abordar esto (se corregirá en Freetown a partir de hoy).

Nota: Cuando se intenta eliminar la ACE mientras el uso de TCAM es alto, ya que la actualización atómica siempre se prueba primero como se mencionó anteriormente, los contraños de spanslogic aún podrían ser alcanzados y CSCua24513 se archivó para abordar este problema (fijo en 5.2.7).

Estadísticas por entrada

De forma predeterminada, N7K intentaría fusionar funciones al programar el TCAM, lo que ayuda a guardar el recurso TCAM. Cuando se configuran estadísticas por entrada, las entradas no se combinan para mantener estadísticas de entradas de control por acceso (ACE), en cuyo caso podría requerir más recursos.

Este comando no tiene ningún impacto en el rendimiento, ya que el procesamiento de ACL siempre está en el hardware.

Hay dos opciones para mostrar las estadísticas:

show ip access-list <acl>

Nota: Muestra los contadores sólo para aquellas entradas de hardware que se han alcanzado y que están programadas del tipo de política PACL/RACL (por ejemplo, acl aplicado en interfaces)

show hardware internal access-list input entries detail module <x>

Nota: La ACL utilizada dentro de la política copp se utiliza para la clasificación de paquetes. La decisión de si permitir/denegar/limitar la velocidad del paquete es realizada por la configuración de policy/class-map del plano de control qos. Las acciones Permit/deny especificadas en acl no son efectivas cuando se utilizan dentro de la política de copia.

Si habilita las estadísticas en la acl copp e incluso si usa la misma acl dentro del mapa de clase copp, show ip access <acl> no reflejaría esto debido al motivo anterior. Esencialmente, una acl utilizada dentro de una política de QoS de copp se programa como tipo de política - QoS. Si desea ver los paquetes que golpean la política de QoS del plano de control de copp, se puede utilizar este comando:

show system internal access-list input entries detail module <x> | b CoPP

Gestión de fragmentos

El modelo de programación predeterminado crea una entrada paralela de fragmentos no iniciales en el hardware para cada ACE. Esta entrada coincide con las mismas direcciones IP de origen/destino y protocolo que la ACE original, pero sin información de puerto L4 y coincidiendo en fragmentos no iniciales.

Nota: Entradas de fragmentación para ACE L3 no programadas en motores de reenvío no XL.

El manejo de fragmentos predeterminado da como resultado una utilización 2 veces superior de TCAM de CL. Botón de configuración proporcionado para permitir o denegar TODOS los fragmentos no iniciales:

fragments {permit-all | deny-all}

Optimiza la utilización de TCAM de CL: consume una única entrada TCAM de CL para ACL completa (frente a una entrada por ACE de L4)

Umbral de expansión ACE

ACE que utilizan operadores L4: rango, gt, lt, neq. Hay dos maneras de que el software maneje los operadores L4:

- Asigne L4op (recurso de hardware) y el registro de LOU del programa (otro recurso de hardware)

- Expanda el ACE en varias entradas de eq (es decir, entradas TCAM de CL)

El comando global hardware access-list lou resource threshold controla cuando ocurre la opción 1 vs la opción 2 para una ACE. El umbral de expansión controla cuando se produce la expansión, el umbral predeterminado es 5. Si se puede expandir un ACE a <=5 entradas TCAM de CL, no se asigna ningún L4op.

Ventajas:

- La expansión da como resultado un mayor consumo de entradas de TCAM

- Uso de L4op/LOU limitado por L4ops por etiqueta (10) y registros de LOU (208)

Grupo de recursos

A.K.A. Cadena bancaria. Explicado en detalle en

Información Relacionada

ID DE BUG de Cisco CSCtd24377 AD-XL: Restricciones del algoritmo Spanslogic

El ID de BUG de Cisco CSCuc98853 ACLQOS no honra fragment deny-all/permit-all para route-map para XL

Diapositivas de clasificación de Tim Stevens