Utilización alta de la CPU en los switches Catalyst de la

Anuncio
Utilización alta de la CPU en los switches Catalyst de la serie 4500
que se basan en el software Cisco IOS.
Contenidos
Introducción
Requisitos previos
Requisitos
Componentes utilizados
Convenciones
Antecedentes
Información sobre la arquitectura del manejo del paquete de la CPU de Catalyst 4500
Cómo identificar la causa de la alta utilización de la CPU en switches Catalyst 4500
Establecer la línea de base del uso de la CPU
Introducción al comando show processes cpu en los switches Catalyst de la serie 4500
Introducción al comando show platform health en los switches Catalyst de la serie 4500
Resolución de problemas comunes en la alta utilización de la CPU
Elevada utilización de la CPU debido los paquetes de conmutación por proceso
Otras causas del uso intensivo de la CPU
Herramientas para la resolución de problemas para analizar el tráfico que tiene como destino la CPU
Herramienta 1: Monitoreo del tráfico de la CPU con SPAN, versiones 12.1(19)EW y posteriores del software Cisco IOS
Herramienta 2: Rastreador de CPU integrado: versiones 12.2(20)EW y posteriores del software Cisco IOS
Herramienta 3: Identifica la interfaz que envía tráfico hacia la CPU: versión 12.2(20)EW y posteriores del software Cisco IOS.
Resumen
Información relacionada
Introducción
Los switches de la serie 4500 de Catalyst, que incluyen los switches de la serie 4948 poseen una sofisticada metodología para el manejo de
paquetes para el tráfico de datos vinculado a la CPU. Un problema que se percibe con frecuencia es la alta utilización de la CPU en los switches.
Este documento ofrece detalles de la arquitectura del manejo del paquete de la CPU y muestra como es posible identificar la causa de una alta
utilización de la CPU en estos switches. El documento también enumera algunos de los escenarios de redes y de configuración que normalmente
implican una alta utilización de la CPU los switches Catalyst de la serie 4500.
Nota: Si utiliza switches Catalyst de la serie 4500/4000 basados en el Catalyst OS (CatOS), consulte el documento Uso de la CPU en switches
Catalyst 4500/4000, 2948G, 2980G y 4912G que ejecutan el Software CatOS.
Requisitos previos
Requisitos
No hay requisitos específicos para este documento.
Componentes utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware:
Switches Catalyst serie 4500
Switches Catalyst serie 4948
Nota: Este documento se aplica sólo a los switches que se basan en el software Cisco IOS® pero no a los que se basan en CatOS.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos
utilizados para la redacción de este documento se pusieron en funcionamiento con una configuración despejada (predeterminada). Si la red está
funcionando, asegúrese de haber comprendido el impacto potencial de los comandos.
Convenciones
Consulte Convenciones de consejos técnicos de Cisco para obtener más información acerca de las convenciones de este documento.
Antecedentes
Antes de consultar la arquitectura del manejo de paquetes de la CPU y resolver el problema de la alta utilización de la CPU, es necesario que
conozca las distintas maneras en las que los switches de reenvío basados en hardware y los routers basados en el software Cisco IOS® utilizan la
CPU. Un error muy común es creer que la alta utilización de la CPU indica el agotamiento de los recursos en un dispositivo y representa una
amenaza de falla en el sistema. El problema de capacidad es uno de los síntomas que exhibe la alta utilización de la CPU en los routers Cisco
IOS. Sin embargo, un problema relacionado con la capacidad nunca implica un síntoma de alta utilización de la CPU en los switches de reenvío
basados en el hardware como el Catalyst 4500. El Catalyst 4500 está diseñado para reenviar paquetes en el circuito integrado de aplicación
específica de hardware (ASIC) y alcanzan una velocidad de reenvío de tráfico de hasta 102 millones de paquetes por segundo (Mpps).
La CPU Catalyst 4500 tiene las siguientes funciones:
Administra protocolos de software configurados, por ejemplo:
Spanning Tree Protocol (STP)
Protocolo de ruteo.
Protocolo de detección de Cisco (CDP, Cisco Discovery Protocol)
Protocolo de agrupamiento de puertos (PAgP, Port Aggregation Protocol)
Protocolo de troncal VLAN (VTP)
Protocolo de concentración de enlace troncal dinámico (DTP)
Configuración de los programas/entradas dinámicas del hardware ASIC, por ejemplo:
Listas de control de acceso (ACL)
Entradas CEF
Administra diferentes componentes a nivel interno, por ejemplo:
Tarjetas de línea de alimentación por Ethernet (PoE)
Fuentes de alimentación
Bandeja de ventilación
Administra el acceso al switch, por ejemplo:
Telnet
Consola
SNMP (Simple Network Management Protocol, protocolo de administración de red simple)
Reenvía paquetes a través del trayecto por software, por ejemplo:
Intercambio de paquetes entre redes (IPX)-paquetes enrutados que sólo son compatibles con el trayecto del software
Fragmentación de la unidad máxima de transmisión (MTU)
Según esta lista, la alta utilización de la CPU puede ser el resultado de los paquetes que recibe o procesa la CPU. Algunos de los paquetes que se
envían para ser procesados pueden ser básicos para el funcionamiento de la red. Un ejemplo de estos paquetes básicos son las unidades de datos
del protocolo de bridge (BPDU) para las configuraciones de la topología del árbol de conmutación. Sin embargo, otros paquetes pueden ser el
tráfico de datos de software remitido. Estos escenarios requieren el ASIC de conmutación para poder enviarle paquetes a la CPU para que los
procese.
Los paquetes se copian en la CPU, pero los paquetes originales se conmutan en el hardware
Un ejemplo es el reconocimiento de la dirección MAC del host.
Paquetes que se envían a la CPU para ser procesados
Algunos ejemplos incluyen:
Actualizaciones del protocolo de ruteo
BPDU
Inundación de tráfico voluntaria o involuntaria.
Paquetes que se envían a la CPU para ser reenviados
Un ejemplo es el paquete que necesita ruteo IPX o Apple Talk.
Información sobre la arquitectura del manejo del paquete de la CPU de Catalyst 4500
El Catalyst 4500 tiene un mecanismo de Calidad de Servicio (QoS) integrado que le permite establecer diferencias entre los tipos de tráfico que
están destinados a la CPU. El mecanismo establece una diferencia sobre la base de la información de capa 2 (L2)/capa 3 (L3) / capa 4 (L4). El
motor Supervisor Engine de paquetes tiene 16 colas que le permiten manejar distintos tipos de paquetes o eventos. La Figura 1 muestra esas
colas. La Tabla 1 enumera las colas y los tipos de paquetes que se ubican cada una de ellas. Las 16 colas le permiten a Catalyst 4500 poner los
paquetes en cola de acuerdo al tipo de paquete o a la prioridad.
Figura 1: Catalyst 4500 utiliza varias colas en la CPU
Número
de cola
Nombre de cola
Paquetes en cola
0
Esmp
Paquetes ESMP1 (paquetes de
administración interna) para las tarjetas de
línea ASIC u otros componentes de
administración
1
Control
Paquetes de planos de control L2, como STP,
CDP, PAgP, LACP2 o UDLD3
2
Reconocimiento del Tramas con direcciones MAC de origen
desconocidas que se copian a la CPU para
host
poder construir la tabla de reenvío L2
3, 4, 5
Los paquetes se deben reenviar por software
4
L3 reenvío alto, L3 como Túneles GRE
reenvío alto/medio,
Si no se resuelve el ARP 5 para la dirección
L3 reenvío bajo
IP de destino, los paquetes se envían a esta
cola.
Los paquetes que se reenvían como resultado
de un bridge
6, 7, 8
L2 reenvío más
alto, L2 reenvío
alto/medio, L2
reenvío bajo
Los protocolos que no se soportan en
el hardware, como IPX y los paquetes
enrutados Apple Talk, se conectan a
través de un bridge a la CPU.
Solicitud y respuesta ARP
Los paquetes con una dirección de
destino MAC en interfaz SVI6 /L3 del
switch se conectan por bridges si los
paquetes no se pueden enrutar por el
hardware debido a alguna de las
siguientes razones:
Las opciones de encabezado IP
TTL7 expirado
No existe una encapsulación
ARPA
9, 10
11
12
L3 Rx alto, L3 Rx
bajo
El tráfico de plano de control L3, protocolos
de ruteo, que está destinado a otras
direcciones de IP de CPU
Algunos ejemplos incluyen: Telnet, SNMP y
SSH8 .
Fallo de RPF:
verificar los paquetes de multidifusión que
fallaron el RPF9
ACL fwd(snooping)
Paquetes que están procesados por el DHCP
10 snooping, por una inspección ARP
dinámica o por las funciones de indagación
IGMP11
Paquetes que llegan a un ACE12 con la
palabra clave log o paquetes que fueron
13
Mensaje ACL fuera
de alcance
rechazados debido a una negación en una
ACL de salida o a la falta de una ruta al
destino
Estos paquetes requieren la generación de
mensajes de ICMP fuera de alcance.
14
Procesamiento ACL
sw
Paquetes que son impulsados a la CPU
debido a la falta de recursos de hardware
ACL adicionales, como TCAM13, por
razones de seguridad ACL
15
Fallo en MTU/MTU
inválida
Los paquetes que necesitan ser fragmentados
debido a que el tamaño de la interfaz de
salida MTU es más pequeño que el tamaño
del paquete
1
ESMP = protocolo de administración simple
2
LACP = Protocolo de control de agregación de enlaces.
3
UDLD = Detección de enlace unidireccional.
4
GRE = Encapsulación de ruteo genérica.
5
ARP = Protocolo de resolución de direcciones.
6
SVI = Interfaz virtual conmutada.
7
TTL = Tiempo de funcionamiento.
8
SSH = Protocolo de Secure Shell.
9
RPF = Trayecto inverso Unicast.
10
DHCP = Protocolo de configuración dinámica de hosts.
11
IGMP = Protocolo de administración de grupos de Internet.
12
ACE = Entrada de control de acceso.
13
TCAM = Memoria direccionable por contenido ternario.
Estas colas son colas separadas:
L2 reenvío más alto o L3 reenvío más alto
L2 reenvío alto/medio o L3 reenvío alto/medio
L2 reenvío bajo o L3 reenvío bajo
L3 Rx alto o L3 Rx bajo
Los paquetes se almacenan en cola en estas colas de acuerdo con la etiqueta QoS (Calidad de Servicio), que es el valor de los códigos de servicios
diferenciados (DSCP) del tipo de servicio de IP (ToS). Por ejemplo, los paquetes con un DSCP igual a 63 se almacenan en cola en la cola L3 de
reenvío más alto. Es posible ver los paquetes que se reciben y se eliminan en estas 16 colas en la salida del show platform cpu packet
statistics all comando. La salida de este comando es muy larga. Ejecute el comando show platform cpu packet statistics para ver sólo los
eventos distintos de cero. El comando show platform cpuport es un comando alternativo. Utilice el comando show platform cpuport sólo si
ejecuta la versión 12.1(11)EW del software Cisco IOS o versiones anteriores. Este comando ha sido desaprobado desde entonces. Sin embargo,
este antiguo comando fue parte del comando show tech-support en las versiones de software Cisco IOS anteriores a la versión 12.2(20)EWA.
Utilice el comando show platform cpu packet statistics para cualquier tipo de resolución de problemas.
Switch#show platform cpu packet statistics all
!--- Resultado suprimido.
Total packet queues 16
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
0
0
0
0
0
Control
48
0
0
0
0
Host Learning
0
0
0
0
0
L3 Fwd High
0
0
0
0
0
L3 Fwd Medium
0
0
0
0
0
L3 Fwd Low
0
0
0
0
0
L2 Fwd High
0
0
0
0
0
L2 Fwd Medium
0
0
0
0
0
L2 Fwd Low
0
0
0
0
0
L3 Rx High
0
0
0
0
0
L3 Rx Low
0
0
0
0
0
RPF Failure
0
0
0
0
0
ACL fwd(snooping)
0
0
0
0
0
ACL log, unreach
0
0
0
0
0
ACL sw processing
0
0
0
0
0
MTU Fail/Invalid
0
0
0
0
0
Packets Dropped by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
0
0
0
0
0
Control
0
0
0
0
0
Host Learning
0
0
0
0
0
L3 Fwd High
0
0
0
0
0
L3 Fwd Medium
0
0
0
0
0
L3 Fwd Low
0
0
0
0
0
L2 Fwd High
0
0
0
0
0
L2 Fwd Medium
0
0
0
0
0
L2 Fwd Low
0
0
0
0
0
L3 Rx High
0
0
0
0
0
L3 Rx Low
0
0
0
0
0
RPF Failure
0
0
0
0
0
ACL fwd(snooping)
0
0
0
0
0
ACL log, unreach
0
0
0
0
0
ACL sw processing
0
0
0
0
0
MTU Fail/Invalid
0
0
0
0
0
La CPU Catalyst 4500 le asigna pesos a las diferentes colas que se enumeran en las listas de la Tabla 1. La CPU asigna los pesos de acuerdo con
la importancia o con el tipo y sobre la base de la prioridad de tráfico o DSCP. La CPU atiende las colas de acuerdo con los pesos relativos de la
cola. Por ejemplo, si tanto un paquete de control, como BDPU, y una petición de eco ICMP figuran como pendientes, la CPU atenderá primero al
paquete de control. Una cantidad excesiva de tráfico de prioridad baja o menos importante no le quita a la CPU la capacidad de procesar o
administrar el sistema. Este mecanismo garantiza la estabilidad de la red aún cuando existe un alto nivel de utilización de la CPU. Esta capacidad
que tiene la red de permanecer estable representa un punto importante que debe comprender.
Existe otro detalle muy importante en cuanto a la implementación del manejo de paquetes de la CPU de Catalyst 4500. Si la CPU ya ha atendido
paquetes o procesos de alta prioridad pero cuenta con más ciclos de la CPU libres durante un periodo de tiempo determinado, La CPU atiende los
paquetes de baja prioridad que están en la cola o realiza procesos en segundo plano de prioridad baja. La utilización alta de la CPU como
resultado del procesamiento de paquetes de baja prioridad o procesos en segundo plano se considera normal porque la CPU constantemente trata
de utilizar todo el tiempo disponible. De este modo, la CPU se esfuerza por alcanzar el mayor desempeño del switch de la red sin poner en
peligro la estabilidad de este último. El Catalyst 4500 considera que la CPU se utiliza en niveles inferiores a lo normal a menos que se utilice al
100 por ciento para una sola franja de tiempo.
Las versiones 12.2(25)EWA2 y posteriores del software Cisco IOS han mejorado. el mecanismo de manejo de paquetes y de procesos y la
contabilidad de la CPU. Por lo tanto, utilice estas versiones en las implementaciones de Catalyst 4500.
Cómo identificar la causa de la alta utilización de la CPU en switches Catalyst 4500
Ahora que usted conoce sobre la arquitectura y el diseño del manejo de paquetes en la CPU de los switches Catalyst 4500 es probable que desee
averiguar por qué el uso de la CPU de su Catalyst 4500 es alto. El Catalyst 4500 cuenta con los comandos y con las herramientas necesarias para
identificar la raíz del problema de la alta utilización de la CPU. Después de identificar la causa, los administradores pueden llevar a cabo
cualquiera de las siguientes acciones:
Acción correctiva: esta incluye cambios de configuración o en la red, o la creación de un pedido de servicio de Soporte técnico para un
análisis más profundo.
Ninguna acción: Catalyst 4500 funciona de acuerdo a lo esperado. La CPU exhibe un nivel alto de utilización porque el motor Supervisor
Engine maximiza los ciclos de la CPU para que pueda realizar todos las tareas de reenvío de paquetes de software y de segundo plano.
Asegúrese de identificar la razón por la cual el uso de la CPU es alto aunque la acción correctiva no sea necesaria en todos los casos. La alta
utilización de la CPU puede ser un síntoma de un problema en la red. Es posible que sea necesario implementar una solución que elimine el
problema principal para poder disminuir el nivel de uso de la CPU.
La Figura 2 muestra la metodología de de solución de problemas que se debe utilizar para identificar la cause del problema relacionado a la alta
utilización de la CPU de Catalyst 4500.
Figura 2: metodología para la resolución del problema relacionado con la alta utilización de la CPU en switches Catalyst 4500
Los pasos generales para la resolución de problemas son:
1. Ejecute el comando show processes cpu para identificar los procesos de Cisco IOS que consumen ciclos de la CPU.
2. Ejecute el comando show platform health para identificar los procesos específicos a la plataforma.
3. Si el proceso que se encuentra activo es K2CpuMan Review, ejecute el comando show platform cpu packet statistics para identificar el
tipo de tráfico que llega a la CPU.
Si la actividad no se debe al proceso K2CpuMan Review omita el paso 4 y vaya al paso 5.
4. Identificación de los paquetes que llegan a la CPU a través de las Herramientas para la resolución de problemas para analizar el tráfico que
tiene como destino la CPU, si es necesario.
Un ejemplo de una herramienta de resolución de problemas que se puede utilizar es el Analizador de puerto conmutado (SPAN) de la CPU.
5. Consulte este documento y la sección Resolución de problemas comunes de alta utilización de la CPUpara causas comunes.
Si todavía no puede identificar la raíz del problema, comuníquese con el Soporte Técnico de Cisco.
Establecer la línea de base del uso de la CPU
El primer paso importante es conocer el uso de la CPU de su switch para su configuración y la de la red. Utilice el comando show processes cpu
para identificar el uso de la CPU en el switch Catalyst 4500. La actualización continua de la utilización de la CPU de línea de base puede ser
necesaria a medida que agrega más configuraciones a la configuración de la red o a medida que cambien los patrones de tráfico de la red. La
Figura 2 indica este requisito.
Este resultado pertenece a un Catalyst 1507R completamente cargado. La CPU en estado constante representa aproximadamente entre un 32 y un
38 por ciento, que es el porcentaje que necesita este switch para poder realizar las funciones de administración de energía:
Switch#show processes cpu
Utilización de la CPU durante cinco segundos: 38%/1%; un minuto: 32%, cinco minutos: 32%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
0
63
0 0.00% 0.00% 0.00%
0 Chunk Manager
2
60
50074
1 0.00% 0.00% 0.00%
0 Load Meter
3
0
1
0 0.00% 0.00% 0.00%
0 Deferred Events
!--- Resultado suprimido.
27
524
250268
2 0.00% 0.00% 0.00%
0 TTY Background
28
816
254843
3 0.00% 0.00% 0.00%
0 Per-Second Jobs
29
101100
5053
20007 0.00% 0.01% 0.00%
0 Per-minute Jobs
30
26057260 26720902
975 12.07% 11.41% 11.36%
0 Cat4k Mgmt HiPri
31
19482908 29413060
662 24.07% 19.32% 19.20%
0 Cat4k Mgmt LoPri
32
33
34
4468
0
0
162748
1
2
27
0
0
0.00%
0.00%
0.00%
0.00%
0.00%
0.00%
0.00%
0.00%
0.00%
0 Galios Reschedul
0 IOS ACL Helper
0 NAM Manager
La utilización de la CPU durante cinco segundos se expresa como:
x%/y%
El x% representa el total de utilización de la CPU, el y% representa la CPU que se utiliza al nivel de interrupción. Cuando lleve a cabo la
resolución de problemas para los switches Catalyst de las series 4500, concéntrese sólo en la utilización total de la CPU.
Introducción al comando show processes cpu en los switches Catalyst de la serie 4500
Este resultado show processes cpu muestra que existen dos procesos que utilizan la CPU—Cat4k Mgmt HiPri y Cat4k Mgmt LoPri
. Estos dos procesos agregan varios procesos específicos de la plataforma que realizan las funciones de administración esenciales en el switch
Catalyst 4500. Estos procesos procesan tanto paquetes de planos de control como paquetes de datos que necesitan ser procesados o recibir un
cambio de software.
Para poder ver qué procesos específicos a las plataformas utilizan la CPU dentro del contexto de Cat4k Mgmt HiPri y Cat4k Mgmt
LoPri, ejecute el comando show platform health.
Cada uno de los procesos específicos a las plataformas tienen una utilización de la CPU determinada o establecida. Cuando el proceso está dentro
de lo establecido, la CPU ejecuta el proceso dentro del contexto de alta prioridad. El resultado del comando show processes cpu cuenta esa
utilización bajo Cat4k Mgmt HiPri. Si un proceso excede la utilización predeterminada, ese proceso se ejecuta bajo el contexto de baja
prioridad. La aparición del comando show processes cpu cuenta esa utilización adicional bajo Cat4k Mgmt LoPri. Este Cat4k Mgmt
LoPri también se utiliza para ejecutar procesos en segundo plano y otros procesos de baja prioridad, como la verificación de consistencia y los
contadores de interfaz de lectura. Este mecanismo le permite a la CPU ejecutar procesos de alta prioridad cuando sea necesario, y que los ciclos
de la CPU inactivos restantes se utilicen para los procesos de baja prioridad. Si el porcentaje predeterminado para la utilización de la CPU
aumenta en una pequeña cantidad, o si existe un aumento momentáneo en la utilización de la CPU; esto no implica la existencia de un problema
que requiera ningún tipo de investigación.
Switch#show platform health
%CPU
%CPU
Target Actual
Lj-poll
1.00
0.02
GalChassisVp-review
3.00
0.29
S2w-JobEventSchedule 10.00
0.32
Stub-JobEventSchedul 10.00 12.09
StatValueMan Update
1.00
0.22
Pim-review
0.10
0.00
Ebm-host-review
1.00
0.00
Ebm-port-review
0.10
0.00
Protocol-aging-revie
0.20
0.00
Acl-Flattener e
1.00
0.00
KxAclPathMan create/
1.00
0.00
KxAclPathMan update
2.00
0.00
KxAclPathMan reprogr
1.00
0.00
TagMan-RecreateMtegR
1.00
0.00
K2CpuMan Review
30.00 10.19
K2AccelPacketMan: Tx 10.00
2.20
K2AccelPacketMan: Au
0.10
0.00
K2AclMan-taggedFlatA
1.00
0.00
K2AclCamMan stale en
1.00
0.00
K2AclCamMan hw stats
3.00
1.04
K2AclCamMan kx stats
1.00
0.00
K2AclCamMan Audit re
1.00
0.00
K2AclPolicerTableMan
1.00
0.00
K2L2 Address Table R
2.00
0.00
K2L2 New Static Addr
2.00
0.00
K2L2 New Multicast A
2.00
0.00
K2L2 Dynamic Address
2.00
0.00
K2L2 Vlan Table Revi
2.00
0.00
K2 L2 Destination Ca
2.00
0.00
K2PortMan Review
2.00
0.72
Gigaport65535 Review
0.40
0.07
Gigaport65535 Review
0.40
0.08
K2Fib cam usage revi
2.00
0.00
K2Fib IrmFib Review
2.00
0.00
K2Fib Vrf Default Ro
2.00
0.00
K2Fib AdjRepop Revie
2.00
0.00
K2Fib Vrf Unpunt Rev
2.00
0.01
K2Fib Consistency Ch
1.00
0.00
K2FibAdjMan Stats Re
2.00
0.30
K2FibAdjMan Host Mov
2.00
0.00
K2FibAdjMan Adj Chan
2.00
0.00
K2FibMulticast Signa
2.00
0.01
RunTimeMax
Priority Average %CPU Total
Target Actual
Fg
Bg 5Sec Min Hour CPU
2
1 100 500
0
0
0 1:09
10
3 100 500
0
0
0 11:15
10
7 100 500
0
0
0 10:14
10
6 100 500
14 13
9 396:35
1
0 100 500
0
0
0 6:28
1
0 100 500
0
0
0 0:22
8
0 100 500
0
0
0 0:05
1
0 100 500
0
0
0 0:01
2
0 100 500
0
0
0 0:00
10
0 100 500
0
0
0 0:00
10
5 100 500
0
0
0 0:39
10
0 100 500
0
0
0 0:00
2
0 100 500
0
0
0 0:00
10
0 100 500
0
0
0 0:00
30
28 100 500
14 13
9 397:11
20
0 100 500
2
2
1 82:06
0
0 100 500
0
0
0 0:00
10
0 100 500
0
0
0 0:00
10
0 100 500
0
0
0 0:00
10
5 100 500
1
1
0 39:36
10
5 100 500
0
0
0 13:40
10
5 100 500
0
0
0 13:10
10
1 100 500
0
0
0 0:38
12
5 100 500
0
0
0 0:00
10
1 100 500
0
0
0 0:00
10
5 100 500
0
0
0 0:01
10
0 100 500
0
0
0 0:00
12
9 100 500
0
0
0 0:01
10
0 100 500
0
0
0 0:00
15
11 100 500
1
1
0 37:22
4
2 100 500
0
0
0 3:38
4
2 100 500
0
0
0 3:39
15
0 100 500
0
0
0 0:00
15
0 100 500
0
0
0 0:00
15
0 100 500
0
0
0 0:00
15
0 100 500
0
0
0 0:00
15
0 100 500
0
0
0 0:23
5
2 100 500
0
0
0 29:25
10
4 100 500
0
0
0 6:21
10
4 100 500
0
0
0 0:00
10
0 100 500
0
0
0 0:00
10
2 100 500
0
0
0 2:04
K2FibMulticast Entry
K2FibMulticast Irm M
K2FibFastDropMan Rev
K2FibPbr route map r
K2FibPbr flat acl pr
K2FibPbr consolidati
K2FibPerVlanPuntMan
K2FibFlowCache flow
K2FibFlowCache flow
K2FibFlowCache adj r
K2FibFlowCache flow
K2MetStatsMan Review
K2FibMulticast MET S
K2QosDblMan Rate DBL
IrmFibThrottler Thro
K2 VlanStatsMan Revi
K2 Packet Memory Dia
K2 L2 Aging Table Re
RkiosPortMan Port Re
Rkios Module State R
Rkios Online Diag Re
RkiosIpPbr IrmPort R
RkiosAclMan Review
MatMan Review
Slot 3 ILC Manager R
Slot 3 ILC S2wMan Re
Slot 4 ILC Manager R
Slot 4 ILC S2wMan Re
Slot 5 ILC Manager R
Slot 5 ILC S2wMan Re
Slot 6 ILC Manager R
Slot 6 ILC S2wMan Re
Slot 7 ILC Manager R
Slot 7 ILC S2wMan Re
EthHoleLinecardMan(1
EthHoleLinecardMan(2
EthHoleLinecardMan(6
%CPU Totals
2.00
0.00
2.00
0.00
2.00
0.00
2.00
0.06
2.00
0.07
2.00
0.01
2.00
0.00
2.00
0.01
2.00
0.00
2.00
0.01
2.00
0.00
2.00
0.14
2.00
0.00
2.00
0.12
2.00
0.01
2.00
1.46
2.00
0.00
2.00
0.12
2.00
0.73
4.00
0.02
4.00
0.02
2.00
0.02
3.00
0.06
0.50
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
3.00
0.00
1.66
0.04
1.66
0.02
1.66
0.17
------------212.80 35.63
10
10
7
20
20
10
15
10
10
10
10
5
10
7
7
15
15
20
12
40
40
10
30
4
10
10
10
10
10
10
10
10
10
10
10
10
10
7
0
5
2
0
4
0
0
0
0
2
0
0
0
7
8
3
7
1
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
7
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
100 500
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0 0:00
0 0:00
0 0:00
0 16:42
0 3:24
0 0:24
0 0:00
0 0:23
0 0:00
0 0:20
0 0:06
0 23:40
0 0:00
0 4:52
0 0:21
1 64:44
1 45:46
0 7:22
1 52:36
0 1:28
0 1:15
0 2:44
0 2:35
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 0:00
0 1:18
0 1:18
0 6:38
Introducción al comando show platform health en los switches Catalyst de la serie 4500
El comando show platform health ofrece una gran cantidad de información de relevancia para los ingenieros de desarrollo. Para poder resolver
el problema de la alta utilización de la CPU, busque un número alto en la columna %CPU actual en la salida: También, asegúrese de consultar
el lado derecho de esa fila para verificar que la utilización de la CPU para ese proceso no dure más que entre 1 un minuto y 1 hora en promedio
Columnas %CPU. Algunas veces, los procesos alcanzan un punto elevado, pero sólo momentáneamente, no mantienen la CPU a ese nivel por
un largo periodo de tiempo. Parte de esta alta utilización momentánea de la CPU ocurre durante la programación del hardware o la optimización
de la programación. Por ejemplo, un pico de aumento en el uso de la CPU es normal durante la programación de hardware de un ACL de gran
tamaño en la TCAM.
En la salida de comando show platform health en la sección Introducción al comando show processes cpu en los switches Catalyst 4500,los
procesos Stub-JobEventSchedul y K2CpuMan Review utilizan un número elevado de ciclos de la CPU. La Tabla 2 ofrece información
básica sobre los procesos más comunes específicos de las plataformas que aparecen en el resultado del comando show platform health .
Nombre del proceso específico de
plataforma
Descripción
Pim-review
Administración del estado de la tarjeta de
línea/chassis
Ebm
Módulo Ethernet Bridge, como vencimiento y
control
Acl-Flattener/K2AclMan
Proceso de fusión de ACL
KxAclPathMan - Trayecto:
TagMan-Review
Mantenimiento y administración del estado de
ACL
El proceso que realiza el reenvío de paquetes
por software
K2CpuMan Revisión
K2AccelPacketMan
Si usted nota una elevada utilización de la CPU
debido a este proceso, estudie el paquete que
llega a la CPU con el comando show platform
cpu packet statistics.
Controlador que interactúa con el motor del
paquete para enviar los paquetes que están
destinados desde la CPU
K2AclCamMan
Administra el hardware TCAM de entrada y de
salida para las funciones QoS y de seguridad.
K2AclPolicerTableMan
Administra los reguladores de entrada y de
salida
K2L2
Representa el sistema de reenvío L2 del switch
Catalyst de la serie 4500 Software Cisco IOS
Estos procesos son responsables del
mantenimiento de las distintas tablas L2.
K2PortMan Revisión
Administra las diferentes funciones de
programación relacionadas con los puertos.
K2Fib
Administración FIB1
K2FibFlowCache
Administración de caché de PBR2
K2FibAdjMan
Administración la tabla de adyacencia FIB
K2FibMulticast
Administra entradas FIB de multidifusión
K2MetStatsMan Revisión
Administra estadísticas MET3
K2QosDblMan Revisión
Administra QoS DBL4
IrmFibThrottler Thro
Módulo de IP Routing
Tabla de vencimiento K2
L2 Re
Administra la función de vencimiento L2
GalChassisVp-review
Supervisión del estado del chasis
S2w-JobEventSchedule
Administra los protocolos S2W5 para controlar
el estado de las tarjetas de línea
Stub-JobEventSchedul
Control y mantenimiento de tarjeta de línea
basada en ASIC Stub
RkiosPortMan Port Re
Mantenimiento y control del estado del puerto
Estado del módulo Rkios
R
Mantenimiento y control de la tarjeta de línea
EthHoleLinecardMan
Administra los GBIC6 en cada una de las
tarjetas de línea
1
FIB = Base de información de reenvío.
2
PBR = ruteo basado en políticas.
3
MET = Tabla de expansión de multidifusión.
4
DBL = Limitador de búfer dinámico.
5
S2W = Serial-to-wire (cable serial 2).
6
GBIC = Conversor de interfaz Gigabit.
Resolución de problemas comunes en la alta utilización de la CPU
Esta sección cubre algunos de los problemas más comunes relacionados con la alta utilización de la CPU en los switches Catalyst 4500.
Elevada utilización de la CPU debido los paquetes de conmutación por proceso
Una de las razones más comunes de la elevada utilización de la CPU es que la CPU del switch Catalyst 4500 está ocupada con el procesamiento
del reenvío de paquetes por software o paquetes de control. Ejemplos de paquetes reenviados por software incluyen IPX o paquetes de control
como BPDU. Una pequeña cantidad de estos paquetes normalmente se envía a la CPU. Sin embargo, una mayor cantidad de paquetes podría
indicar un error en la configuración o un evento de red. Usted debe identificar las causa de los eventos que envían paquetes a la CPU para que
sean procesados. Esta identificación le permite depurar los problemas de una alta utilización de la CPU.
Algunas las razones más comunes de la alta utilización de la CPU debido a paquetes de conmutación por proceso son:
Un número elevado de instancias de puertos de árbol de expansión
Redireccionamientos ICMP, paquetes de ruteo en la misma interfaz
ruteo IPX o Apple talk
Reconocimiento del host
Recursos de hardware (TCAM) no disponibles para las ACL de seguridad
La palabra clave de registro en ACL
Otras razones de la conmutación de paquetes a la CPU son:
Fragmentación de MTU: asegúrese de que todas las interfaces a lo largo de la ruta del paquete tengan la misma MTU.
ACL con indicadores TCP diferentes a los establecidos
ruteo de IP versión 6 (IPv6): sólo se soporta a través del trayecto de conmutación por software.
GRE: sólo se soporta a través del trayecto de conmutación por software.
Tráfico denegado en la entrada o salida de la ACL del router (RACL)
Nota: Velocidad limitada en la versión de software Cisco IOS 12.1(13)EW1 y posteriores.
Ejecute el comando no ip unreachables bajo la interfaz de la ACL.
El tráfico de ARP y DHCP que llega a la CPU para su procesamiento es excesivo debido a una gran cantidad de hosts con conexión directa
Si sospecha de un ataque DHCP, utilice la función de indagación DCHP para limitar la velocidad del tráfico DHCP desde cualquier puerto
host.
Número excesivo de consultas SNMP realizadas por una estación de trabajo legítima o por una estación extrema que esté experimentando
un mal funcionamiento.
Un número elevado de instancias de puertos de árbol de expansión
El Catalyst 4500 soporta 3000 instancias de puertos de árbol de expansión o puertos activos en el modo Per VLAN Spanning Tree Plus (PVST+).
Esta compatibilidad está disponible en todos los motores de supervisión, excepto Supervisor Engine II+ y II+TS, y el switch Catalyst 4948. El
Supervisor Engine II+ y II+TS y el switch Catalyst 4948 soportan hasta 1500 instancias de puertos. Si usted excede el número instancias STP
recomendadas el switch exhibirá un uso elevado de la CPU.
La figura muestra un switch Catalyst 4500 con tres puertos troncales, donde cada uno transporta VLAN desde 1 hasta 100. Esto equivale a 300
instancias de puerto de árbol de expansión. En general, es posible calcular las instancias de puerto de árbol de expansión con la siguiente fórmula:
Total number of STP instances = Number of access ports + Sum of all VLANs
that are carried in each of the trunks
En el diagrama, no hay puertos de acceso, pero los tres puertos troncales transportan VLAN de1 a 100:
Total number of STP instances = 0 + 100 + 100 + 100 = 300
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Esta sección analiza los comandos que utiliza un administrador para limitar el problema relacionado con la alta utilización de la CPU. Si ejecuta
el comando show processes cpu, verá que existen dos procesos principales, Cat4k Mgmt LoPri y Spanning Tree, son los que
principalmente utilizan la CPU. Sólo con esta información, usted sabe que los procesos de árbol de expansión consumen una porción
considerable de los ciclos de la CPU.
Switch#show processes cpu
CPU utilization for five seconds: 74%/1%; one minute: 73%; five minutes: 50%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
4
198
20 0.00% 0.00% 0.00%
0 Chunk Manager
2
4
290
13 0.00% 0.00% 0.00%
0 Load Meter
!--- Resultado suprimido.
25
488
33
14787 0.00% 0.02% 0.00%
0 Per-minute Jobs
26
90656
223674
405 6.79% 6.90% 7.22%
0 Cat4k Mgmt HiPri
27
158796
59219
2681 32.55% 33.80% 21.43%
0 Cat4k Mgmt LoPri
28
20
1693
11 0.00% 0.00% 0.00%
0 Galios Reschedul
29
0
1
0 0.00% 0.00% 0.00%
0 IOS ACL Helper
30
0
2
0 0.00% 0.00% 0.00%
0 NAM Manager
!--- Resultado suprimido.
41
0
1
0 0.00% 0.00% 0.00%
0 SFF8472
42
0
2
0 0.00% 0.00% 0.00%
0 AAA Dictionary R
43
78564
20723
3791 32.63% 30.03% 17.35%
0 Spanning Tree
44
112
999
112 0.00% 0.00% 0.00%
0 DTP Protocol
45
0
147
0 0.00% 0.00% 0.00%
0 Ethchnl
Paso 2: Verifique los procesos específicos de Catalyst 4500 con el comando show platform health.
Para poder entender qué procesos específicos relacionados a las plataformas utilizan la CPU, ejecute el comando show platform health Desde
esta salida puede apreciar que el proceso K2CpuMan Review, un trabajo que maneja los paquetes vinculados a la CPU, utiliza la CPU:
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour
!--- Resultado suprimido.
TagMan-RecreateMtegR
1.00
0.00
10
0 100 500
0
0
0
K2CpuMan Review
30.00 37.62
30
53 100 500
41 33
1
K2AccelPacketMan: Tx 10.00
4.95
20
0 100 500
5
4
0
K2AccelPacketMan: Au
0.10
0.00
0
0 100 500
0
0
0
K2AclMan-taggedFlatA
1.00
0.00
10
0 100 500
0
0
0
CPU
0:00
2:12
0:36
0:00
0:00
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico dirigido hacia la CPU.
Ejecute el comando show platform cpu packet statistics para verificar qué cola de la CPU recibe el paquete. El resultado de esta sección
muestra que la cola de control recibe un alto número de paquetes. Utilice la información presente en la Tabla 1 y la conclusión a la que llegó en el
Paso 1. Usted puede determinar que los paquetes que procesa la CPU y la causa de la alta utilización de la CPU es el procesamiento BPDU.
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Total packet queues 16
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
202760
196
173
128
28
Control
388623
2121
1740
598
16
Packets Dropped by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Control
17918
0
19
24
3
Paso 4: Identifique la causa principal del problema.
Ejecute el comando show spanning-tree summary . Es posible verificar si la recepción de BPDU se debe a un alto número de instancias de
puertos de árbol de expansión. El resultado identifica claramente la raíz del problema:
Switch#show spanning-tree summary
Switch is in pvst mode
Root bridge for: none
Extended system ID
is enabled
Portfast Default
is disabled
PortFast BPDU Guard Default is disabled
Portfast BPDU Filter Default is disabled
Loopguard Default
is disabled
EtherChannel misconfig guard is enabled
UplinkFast
is disabled
BackboneFast
is disabled
Configured Pathcost method used is short
!--- Resultado suprimido.
Name
Blocking Listening Learning Forwarding STP Active
---------------------- -------- --------- -------- ---------- ---------2994 vlans
0
0
0
5999
5999
En el modo de configuración PVST+ existe un gran número de VLAN. Para resolver el problema, cambie el modo STP a MST (Multiple
Spanning Tree, árbol de expansión múltiple). En algunos casos, la cantidad de instancias STP es alta debido a que un gran número de VLAN se
reenvía a los puertos troncales. En este caso, separe las VLAN que no son necesarias del tronco, en forma manual, para disminuir la cantidad de
puertos STP activos a una cifra inferior al valor recomendado.
Recomendación: Asegúrese de no configurar los puertos los puertos de teléfono IP como puertos troncales. Este es un error de configuración
muy común. Configure los puertos de teléfono IP con una configuración de voz VLAN. Esta configuración crea un pseudotroncal, pero no
requiere que usted separe manualmente las VLAN innecesarias. Para obtener más información acerca de cómo configurar los puertos de voz,
consulte Guía de configuración de software para interfaz de voz. Los teléfonos IP de fabricantes ajenos a Cisco no soportan esta voz VLAN ni la
configuración auxiliar VLAN. Con estos teléfonos (fabricantes ajenos a Cisco), usted deberá realizar la separación de los puertos manualmente.
Redirecciones ICMP, paquetes de ruteo en la misma interfaz
Los paquetes de ruteo en la misma interfaz, o el tráfico entrante y saliente en la misma interfaz L3, puede hacer que el switch redireccione el
ICMP (Protocolo de control de mensajes de Internet). Si el switch sabe que el dispositivo de salto siguiente (next hop) del destino final se
encuentra en la misma subred que el dispositivo de envío, genera redirecciones ICMP hacia la fuente: Los mensajes redireccionados le indican a
la fuente que debe enviar el paquete directamente al dispositivo de salto siguiente (next hop). Estos mensajes indican que el dispositivo de salto
siguiente (next hop) posee una mejor ruta hacia el destino, una ruta con un salto menos que ese switch.
En el diagrama de esta sección, el PC A se comunica con el servidor Web. La gateway predeterminada del PC A apunta hacia la dirección de IP
de la interfaz VLAN 100. Sin embargo, el router de salto siguiente (next hop) que permite a Catalyst 4500 llegar a destino está en la misma
subred que el PC A. La mejor ruta en este caso consiste en enviar directamente al “router”. Catalyst 4500 le envía un mensaje de redirección de
ICMP al PC A. El mensaje le indica al OC A que debe enviar los paquetes destinados al servidor Web a través del router, en lugar de hacerlo a
través de Catalyst 4500. Sin embargo, en la mayoría de los casos, los dispositivos finales no responden a la redirección ICMP. La falta de
respuesta hace que Catalyst 4500 dedique una gran cantidad de ciclos de la CPU para la generación de estos redireccionamientos ICMP para
todos los paquetes que Catalyst reenvía a través de la misma interfaz de los paquetes de ingreso.
El redireccionamiento ICMP está habilitado de forma predeterminada. Para deshabilitarlo, utilice el comando no ip icmp redirects. Ejecute el
comando en la interfaz SVI o L3 pertinente.
Nota: Como ip icmp redirects es un comando predeterminado, no es visible en el resultado del comando show running-configuration.
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpu Usted podrá apreciar que son dos los procesos principales, Cat4k Mgmt LoPri e IP Input, que
fundamentalmente utilizan la CPU. Sólo con esta información, usted sabe que el proceso de paquetes IP consumen una porción considerable. de
la CPU.
Switch#show processes cpu
Utilización de la CPU durante cinco segundos:
PID Runtime(ms)
Invoked
uSecs
5Sec
1
0
63
0 0.00%
2
60
50074
1 0.00%
3
0
1
0 0.00%
!--- Resultado suprimido.
38%/1%; un minuto: 32%, cinco minutos: 32%
1Min
5Min TTY Process
0.00% 0.00%
0 Chunk Manager
0.00% 0.00%
0 Load Meter
0.00% 0.00%
0 Deferred Events
27
524
250268
28
816
254843
29
101100
5053
30
26057260 26720902
31
19482908 29413060
!--- Resultado suprimido.
35
60
902
36
504625304 645491491
2 0.00% 0.00% 0.00%
3 0.00% 0.00% 0.00%
20007 0.00% 0.01% 0.00%
975 5.81% 6.78% 5.76%
662 19.64% 18.20% 20.48%
0 0.00% 0.00% 0.00%
781 72.40% 72.63% 73.82%
0
0
0
0
0
TTY Background
Per-Second Jobs
Per-minute Jobs
Cat4k Mgmt HiPri
Cat4k Mgmt LoPri
0 DHCP Snooping
0 IP Input
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
El resultado del comando show platform health confirma el uso de la CPU para poder procesar los paquetes vinculados a esta.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
--- Resultado suprimido.
TagMan-RecreateMtegR
1.00
0.00
10
0 100 500
0
0
0 0:00
K2CpuMan Review
330.00 19.18
150
79
25 500
20 19
18 5794:08
K2AccelPacketMan: Tx 10.00
4.95
20
0 100 500
5
4
0 0:36
K2AccelPacketMan: Au
0.10
0.00
0
0 100 500
0
0
0 0:00
K2AclMan-taggedFlatA
1.00
0.00
10
0 100 500
0
0
0 0:00
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico que está dirigido hacia la CPU.
Ejecute el comando show platform cpu packet statistics para verificar qué cola de la CPU recibe el paquete. Usted verá que la cola del L3
reenvío bajo recibe una cantidad de tráfico considerable.
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
48613268
38
39
38
39
Control
142166648
74
74
73
73
Host Learning
1845568
2
2
2
2
L3 Fwd High
17
0
0
0
0
L3 Fwd Medium
2626
0
0
0
0
L3 Fwd Low
4717094264
3841
3879
3873
3547
L2 Fwd Medium
1
0
0
0
0
L3 Rx High
257147
0
0
0
0
L3 Rx Low
5325772
10
19
13
7
RPF Failure
155
0
0
0
0
ACL fwd(snooping)
65604591
53
54
54
53
ACL log, unreach
11013420
9
8
8
8
Paso 4: Identifique la causa principal del problema.
En este caso, utilice el SPAN (analizador del puerto conmutado) de la CPU para poder determinar el tráfico que llega a la CPU. Para obtener más
información sobre el SPAN de la CPU, consulte Herramienta 1: Monitoreo del tráfico de la CPU con SPAN—Software versión 12.1(19)EW y
posteriores del software Cisco IOS sección de este documento. Complete Realice un análisis de tráfico y una configuración a través del comando
show running-configuration. En este caso, se enruta un paquete a través de la misma interfaz. Esto, a su vez, genera el problema de una
redirección ICMP para cada paquete. Esta es una de las razones más comunes de la alta utilización de la CPU en Catalyst 4500.
Usted podría esperar que el dispositivo de origen actúe en la redirección ICMP que envía Catalyst 4500 y que cambie el siguiente salto (next hop)
en el destino. Sin embargo, no todos los dispositivos responden a un redireccionamiento de ICMP. Si el dispositivo no responde, Catalyst 4500
debe enviar redirecciones para cada paquete en el que el switch recibe archivos del dispositivo remitente. Estos redireccionamientos consumen
una porción importante de los recursos de la CPU. La solución es deshabilitar el redireccionamiento de ICMP. Ejecute el comando no ip
redirects bajo las interfaces.
Este escenario también se puede dar cuando haya configurado una dirección IP secundaria. Cuando se habilita la dirección IP secundaria, la
dirección de redireccionamiento IP se deshabilita automáticamente. Asegúrese de no habilitar los redireccionamientos IP de forma manual.
Como indica esta sección sobreredireccionamientos ICMP, paquetes de ruteo en la misma interfaz la mayoría de los dispositivos no responden a
las redirecciones ICMP. Por lo tanto, como regla general, deshabilite esta función.
ruteo de AppleTalk o IPX
El switch Catalyst 4500 soporta el ruteo de IPX y Apple Talk sólo a través de un trayecto por software de reenvío. Con la configuración de tales
protocolos, es normal que la CPU experimente una utilización más alta.
Nota: Esta conmutación de tráfico IPX y Apple Talk en la misma VLAN no requiere la conmutación de procesos. Sólo los aquellos paquetes que
necesitan ser enrutados requieren un software de reenvío por trayectos
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpu para verificar qué proceso de Cisco IOS consume la CPU. Note que en el resultado de este comando que
el proceso más importante es Cat4k Mgmt LoPri:
witch#show processes cpu
CPU utilization for five seconds: 87%/10%; one minute: 86%; five minutes: 87%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
4
53
75 0.00% 0.00% 0.00%
0 Chunk Manager
!--- Resultado suprimido.
25
8008
1329154
6 0.00% 0.00% 0.00%
0 Per-Second Jobs
26
413128
38493
10732 0.00% 0.02% 0.00%
0 Per-minute Jobs
27
148288424 354390017
418 2.60% 2.42% 2.77%
0 Cat4k Mgmt HiPri
28
285796820 720618753
396 50.15% 59.72% 61.31%
0 Cat4k Mgmt LoPri
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
El resultado del comando show platform health confirma el uso de la CPU para poder procesar los paquetes vinculados a esta.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
!--- Resultado suprimido.
TagMan-RecreateMtegR
1.00
0.00
10
4 100 500
0
0
0 0:00
K2CpuMan Review
30.00 27.39
30
53 100 500
42 47
42 4841:
K2AccelPacketMan: Tx 10.00
8.03
20
0 100 500
21 29
26 270:4
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico que está dirigido hacia la CPU.
Para poder determinar el tráfico que llega a la CPU, ejecute el comando show platform cpu packet statistics.
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
48613268
38
39
38
39
Control
142166648
74
74
73
73
Host Learning
1845568
2
2
2
2
L3 Fwd High
17
0
0
0
0
L3 Fwd Medium
2626
0
0
0
0
L3 Fwd Low
1582414
1
1
1
1
L2 Fwd Medium
1
0
0
0
0
L2 Fwd Low
576905398
1837
1697
1938
1515
L3 Rx High
257147
0
0
0
0
L3 Rx Low
5325772
10
19
13
7
RPF Failure
155
0
0
0
0
ACL fwd(snooping)
65604591
53
54
54
53
ACL log, unreach
11013420
9
8
8
8
Paso 4: Identifique la causa principal del problema.
Como el administrador ha configurado el ruteo IPX o Apple Talk, la identificación de la causa principal del problema se debe realizar en forma
directa. Pero para confirmarlo, analice el tráfico de la CPU con el SPAN y asegúrese que el tráfico que muestra sea el tráfico esperado. Para
obtener más información sobre el SPAN de la CPU, consulte la sección Herramienta 1: Monitoreo del tráfico de la CPU con SPAN—Software
versión 12.1(19)EW y posteriores del software Cisco IOS de este documento.
En este caso, el administrador debe actualizar la línea de base de la CPU con el valor actual. La CPU de Catalyst 4500 se funciona de la manera
esperada cuando los procesos de la CPU han cambiado los paquetes de software.
Reconocimiento del host
El switch Catalyst 4500 reconoce las direcciones MAC de distintos hosts si éstas no figuran en la tabla de direcciones MAC. El motor de
conmutación reenvía una copia del paquete con la nueva dirección MAC a la CPU. Si existiera una cantidad excesiva de nuevas direcciones
MAC que tendrá que reconocer el nuevo switch, esto podría resultar en una alta utilización de la CPU.
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpu para verificar qué proceso de Cisco IOS consume la CPU. Tenga en cuenta que en este comando el
proceso más importante es Cat4k Mgmt LoPri:
Switch#show processes cpu
CPU utilization for five seconds: 89%/1%; one minute: 74%; five minutes: 71%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
4
53
75 0.00% 0.00% 0.00%
0 Chunk Manager
!--- Resultado suprimido.
25
8008
1329154
6 0.00% 0.00% 0.00%
0 Per-Second Jobs
26
413128
38493
10732 0.00% 0.02% 0.00%
0 Per-minute Jobs
27
148288424 354390017
418 26.47% 10.28% 10.11% 0 Cat4k Mgmt HiPri
28
285796820 720618753
396 52.71% 56.79% 55.70%
0 Cat4k Mgmt LoPri
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
El resultado del comando show platform health confirma el nivel de utilización de la CPU para el proceso de los paquetes vinculados a ella.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
!--- Resultado suprimido.
TagMan-RecreateMtegR
1.00
0.00
10
4 100 500
0
0
0 0:00
K2CpuMan Review
30.00 46.88
30
47 100 500
30 29
21 265:01
K2AccelPacketMan: Tx 10.00
8.03
20
0 100 500
21 29
26 270:4
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico que está dirigido hacia la CPU.
Para poder determinar el tráfico que llega a la CPU, ejecute el comando show platform cpu packet statistics.
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Esmp
48613268
38
39
38
39
Control
142166648
74
74
73
73
Host Learning
1845568
1328
1808
1393
1309
L3 Fwd High
17
0
0
0
0
L3 Fwd Medium
2626
0
0
0
0
L3 Fwd Low
1582414
1
1
1
1
L2 Fwd Medium
1
0
0
0
0
L2 Fwd Low
576905398
37
7
8
5
L3 Rx High
257147
0
0
0
0
L3 Rx Low
5325772
10
19
13
7
RPF Failure
155
0
0
0
0
ACL fwd(snooping)
65604591
53
54
54
53
ACL log, unreach
11013420
9
8
8
8
Paso 4: Identifique la causa principal del problema.
El resultado del comando show platform health le indica que la CPU puede ver una gran cantidad de nuevas direcciones MAC. Esta situación es
normalmente el resultado de una inestabilidad en la topología de la red. Por ejemplo, cuando cambia la topología del árbol de expansión, el
switch genera Notificaciones de cambio de la topología (TCN). La emisión de TCN reduce el tiempo de vencimiento a 15 segundos en el modo
PVST+. Las entradas de las direcciones MAC se purgan si no se reconocen dentro del periodo de tiempo. En el caso de STP rápido (RSTP)
(IEEE 802.1w) o MST (IEEE 802.1s), las entradas se vencen automáticamente si el TCN proviene de otro switch. Este vencimiento hace que las
direcciones MAC se tengan que aprender o reconocer nuevamente. Esto no representa un aspecto importante cuando los cambios en la topología
son algo fuera de lo común. Pero es posible que exista una cantidad excesiva de cambios topológicos a causa de un enlace alternado, un switch
defectuoso, o puertos de host que no están activados por PortFast. Esto podría resultar en una gran cantidad de depuraciones en la tabla MAC y
su posterior reaprendizaje. El próximo paso en la identificación de la causa principal del problema es solucionar los problemas de la red. El
switch trabaja normalmente y envía los paquetes a la CPU para que aprenda las direcciones de host. Identifique y corrija el dispositivo defectuoso
que resulta en una gran cantidad de TCN.
Su red puede contar con muchos dispositivos que envían tráfico en forma de ráfagas, lo que causa el vencimiento de las direcciones MAC, que
demanda el posterior reaprendizaje por parte del switch. En este caso, aumente el tiempo de vencimiento de las direcciones MAC de la tabla para
liberar al switch. Un mayor tiempo de vencimiento le permitirá al switch retener las direcciones MAC de los dispositivos en la tabla durante un
mayor periodo tiempo antes de que venzan.
Precaución: Realice este cambio sólo después de haberlo estudiado cuidadosamente. El cambio puede generar un agujero negro de tráfico
si la red posee dispositivos movibles.
Recursos de hardware (TCAM) no disponibles para las ACL de seguridad
El Catalyst 4500 programa las ACL configuradas con el uso de los TCAM de Cisco. La TCAM permite las aplicaciones de ACL en trayecto de
reenvío por hardware. La existencia de ACL en el trayecto de reenvío por hardware no tiene ningún impacto en el desempeño del switch. El
desempeño es constante a pesar del tamaño de la ACL ya que el desempeño de las búsquedas ACL es a la velocidad de la línea. Sin embargo, la
TCAM es un recurso limitado. Entonces, si configura una cantidad excesiva de entradas ACL excederá la capacidad de la TCAM. La Tabla 3
muestra el número de recursos TCAM disponible en cada uno de los motores de supervisión (Supervisor Engine) y switches Catalyst 4500.
Producto
Función TCAM (por
Dirección)
TCAM de Calidad de
Servicio (QoS) (por
Dirección)
Supervisor Engine
II+/II+TS
8192 entradas con
1024 máscaras
8192 entradas con 1024
máscaras
Supervisor Engine III/IV/V
y Catalyst 4948
16.384 entradas con
2048 máscaras
16.384 entradas con 2048
máscaras
Supervisor Engine V-10GE 16.384 entradas con
y Catalyst 4948-10GE
16.384 máscaras
16.384 entradas con 16.384
máscaras
El switch utiliza la función TCAM para programar la ACL de seguridad, como RACL y VLAN ACL (VACL). El switch también utiliza la
función TCAM para funciones de seguridad como la Protección de origen IP (IPSG) para las ACL dinámicas. El switch utiliza la TCAM de QoS
para programar la clasificación y regular las ACL.
Cuando Catalyst 4500 se queda sin recursos TCAM durante la programación de una ACL de seguridad, una parte de la aplicación de la ACL se
lleva a cabo a través del trayecto por software. Los paquetes que llegan a esas ACE se procesan en el software, lo que causa una alta utilización
de la CPU. La ACL se programa verticalmente desde arriba. Es decir, si la ACL no cabe en la TCAM, es probable que la ACE que se encuentra
en la porción inferior de la ACL no se programe en la TCAM.
Este mensaje de advertencia aparece cuando se produce el desbordamiento de la TCAM:
%C4K_HWACLMAN-4-ACLHWPROGERRREASON: (Suppressed 1times) Input(null, 12/Normal)
Security: 140 - insufficient hardware TCAM masks.
%C4K_HWACLMAN-4-ACLHWPROGERR: (Suppressed 4 times) Input Security: 140 - hardware TCAM
limit, some packet processing will be software switched.
Este mensaje de error se puede ver en la salida del comando show logging. El mensaje indica que se llevará acabo el procesamiento de software y
que, como consecuencia, esto podría generar una alta utilización de la CPU.
Nota: Si cambia una ACL de gran tamaño, se mostrará el siguiente mensaje antes de programar que se programe el cambio de la ACL
nuevamente en la TCAM.
Paso 1: Verifique los procesos Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpu Podrá apreciar que la utilización de la CPU es alta debido a que el proceso Cat4k Mgmt LoPri
utiliza la mayoría de los ciclos de la CPU.
Switch#show processes cpu
CPU utilization for five seconds: 99%/0%; one minute: 99%; five minutes: 99%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
0
11
0 0.00% 0.00% 0.00%
0 Chunk Manager
2
9716
632814
15 0.00% 0.00% 0.00%
0 Load Meter
3
780
302
2582 0.00% 0.00% 0.00%
0 SpanTree Helper
!--- Resultado suprimido.
23
18208
3154201
5 0.00% 0.00% 0.00%
0 TTY Background
24
37208
3942818
9 0.00% 0.00% 0.00%
0 Per-Second Jobs
25
1046448
110711
9452 0.00% 0.03% 0.00%
0 Per-minute Jobs
26
175803612 339500656
517 4.12% 4.31% 4.48%
0 Cat4k Mgmt HiPri
27
835809548 339138782
2464 86.81% 89.20% 89.76%
0 Cat4k Mgmt LoPri
28
28668
2058810
13 0.00% 0.00% 0.00%
0 Galios Reschedul
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
Ejecute el comando show platform health Podrá apreciar que K2CpuMan Review un trabajo que permite manejar los paquetes vinculados a la
CPU, utiliza la CPU.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour
Lj-poll
1.00
0.01
2
0 100 500
0
0
0
GalChassisVp-review
3.00
0.20
10
16 100 500
0
0
0
S2w-JobEventSchedule 10.00
0.57
10
7 100 500
1
0
0
Stub-JobEventSchedul 10.00
0.00
10
0 100 500
0
0
0
StatValueMan Update
1.00
0.09
1
0 100 500
0
0
0
Pim-review
0.10
0.00
1
0 100 500
0
0
0
Ebm-host-review
1.00
0.00
8
4 100 500
0
0
0
CPU
13:45
88:44
404:22
0:00
91:33
4:46
14:01
Ebm-port-review
Protocol-aging-revie
Acl-Flattener
KxAclPathMan create/
KxAclPathMan update
KxAclPathMan reprogr
TagMan-InformMtegRev
TagMan-RecreateMtegR
K2CpuMan Review
K2AccelPacketMan: Tx
K2AccelPacketMan: Au
0.10
0.20
1.00
1.00
2.00
1.00
1.00
1.00
30.00
10.00
0.10
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
91.31
2.30
0.00
1
2
10
10
10
2
5
10
30
20
0
0
0
5
5
6
1
0
14
92
0
0
100
100
100
100
100
100
100
100
100
100
100
500
500
500
500
500
500
500
500
500
500
500
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128 119
2
2
0
0
0
0
0
0
0
0
0
0
84
2
0
0:20
0:01
0:04
0:21
0:05
0:00
0:00
0:18
13039:02
1345:30
0:00
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico que está dirigido hacia la CPU.
Debe saber a qué cola de CPU se refiere y qué tipo de tráfico llega a la cola de la CPU. Ejecute el comando show platform cpu packet statistics.
Usted verá que la cola del procesamiento sw de ACL recibe una gran cantidad de paquetes. Por lo tanto, el desbordamiento de
TCAM es la causa de esta alta utilización de la CPU
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Control
57902635
22
16
12
3
Host Learning
464678
0
0
0
0
L3 Fwd Low
623229
0
0
0
0
L2 Fwd Low
11267182
7
4
6
1
L3 Rx High
508
0
0
0
0
L3 Rx Low
1275695
10
1
0
0
ACL fwd(snooping)
2645752
0
0
0
0
ACL log, unreach
51443268
9
4
5
5
ACL sw processing
842889240
1453
1532
1267
1179
Packets Dropped by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------L2 Fwd Low
3270
0
0
0
0
ACL sw processing
12636
0
0
0
0
Paso 4: Solucione el problema:
En el Paso 3, usted determinó la causa principal de este escenario. Elimine la ACL que causó el desbordamiento o trate de minimizar la ACL a
fin de evitar el desbordamiento. Consulte también las pautas para la Configuración de la seguridad de la red con ACL para optimizar la
configuración y la programación de la ACL en el hardware.
La palabra clave de registro en ACL
El switch Catalyst 4500 soporta el registro de detalles de paquetas que llegan a cualquier entrada ACL específica, pero un registro excesivo puede
causar la alta utilización de la CPU. Evite el uso de palabras claves de registro excepto durante el la etapa de detección de tráfico. Durante la
etapa de detección de tráfico, usted identifica el tráfico que fluye a través de la red para el cual no ha configurado ningún ACE de forma explícita.
No utilice la palabra clave de registro para recopilar datos estadísticos. En las versiones 12.1(13)EW y posteriores del software Cisco IOS, los
mensajes de registro están limitados por tiempo. Si usted utiliza los mensajes de registro para contar el número de paquetes que coincide con la
ACL, el recuento no será preciso. Sin embargo, puede utilizar el comando show access-list para obtener datos estadísticos precisos. En este caso,
resulta más fácil identificar la causa principal del problema ya que una revisión de la configuración o los mensajes de registro pueden indicar el
uso de la función de registro de ACL.
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpupara verificar qué proceso de Cisco IOS consume la CPU. En esta salida de comando , usted notará que
el proceso más importante es Cat4k Mgmt LoPri:
Switch#show processes cpu
CPU utilization for five seconds: 99%/0%; one minute: 99%; five minutes: 99%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
0
11
0 0.00% 0.00% 0.00%
0 Chunk Manager
2
9716
632814
15 0.00% 0.00% 0.00%
0 Load Meter
!--- Resultado suprimido.
26
175803612 339500656
517 4.12% 4.31% 4.48%
0 Cat4k Mgmt HiPri
27
835809548 339138782
2464 86.81% 89.20% 89.76%
0 Cat4k Mgmt LoPri
28
28668
2058810
13 0.00% 0.00% 0.00%
0 Galios Reschedul
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
Verifique los procesos específicos a las plataformas que utiliza la CPU. Ejecute el comando show platform health. En la salida, note que el
proceso K2CpuMan Review utiliza la mayoría de los ciclos de la CPU. Esta actividad indica que la CPU está ocupada ya que está procesando
paquetes destinados a ella.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Target Actual Target Actual
Lj-poll
1.00
0.01
2
0
GalChassisVp-review
3.00
0.20
10
16
S2w-JobEventSchedule 10.00
0.57
10
7
Stub-JobEventSchedul 10.00
0.00
10
0
StatValueMan Update
1.00
0.09
1
0
Pim-review
0.10
0.00
1
0
Ebm-host-review
1.00
0.00
8
4
Ebm-port-review
0.10
0.00
1
0
Protocol-aging-revie
0.20
0.00
2
0
Acl-Flattener
1.00
0.00
10
5
KxAclPathMan create/
1.00
0.00
10
5
KxAclPathMan update
2.00
0.00
10
6
KxAclPathMan reprogr
1.00
0.00
2
1
TagMan-InformMtegRev
1.00
0.00
5
0
TagMan-RecreateMtegR
1.00
0.00
10
14
K2CpuMan Review
30.00 91.31
30
92
K2AccelPacketMan: Tx 10.00
2.30
20
0
K2AccelPacketMan: Au
0.10
0.00
0
0
Priority Average %CPU
Fg
Bg 5Sec Min Hour
100 500
0
0
0
100 500
0
0
0
100 500
1
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500
0
0
0
100 500 128 119
84
100 500
2
2
2
100 500
0
0
0
Total
CPU
13:45
88:44
404:22
0:00
91:33
4:46
14:01
0:20
0:01
0:04
0:21
0:05
0:00
0:00
0:18
13039:02
1345:30
0:00
Paso 3: Verifique la cola de la CPU que recibe el tráfico para identificar el tipo de tráfico que está dirigido hacia la CPU.
Para poder determinar el tráfico que llega a la CPU, ejecute el comando show platform cpu packet statistics. En esta salida de comando, usted
podrá ver que la recepción de paquetes es a causa de la palabra clave de registro de la ACL.
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Total packet queues 16
Packets Received by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
----------------- -------------------- --------- --------- --------- ---------Control
1198701435
35
35
34
35
Host Learning
874391
0
0
0
0
L3 Fwd High
428
0
0
0
0
L3 Fwd Medium
12745
0
0
0
0
L3 Fwd Low
2420401
0
0
0
0
L2 Fwd High
26855
0
0
0
0
L2 Fwd Medium
116587
0
0
0
0
L2 Fwd Low
317829151
53
41
31
31
L3 Rx High
2371
0
0
0
0
L3 Rx Low
32333361
7
1
2
0
RPF Failure
4127
0
0
0
0
ACL fwd (snooping)
107743299
4
4
4
4
ACL log, unreach
1209056404
1987
2125
2139
2089
Packets Dropped by Packet Queue
Queue
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
----------------- -------------------- --------- --------- --------- ---------ACL log, unreach
193094788
509
362
437
394
Paso 4: Solucione el problema:
En el Paso 3, usted determinó la causa principal de este escenario. Para poder prevenir este problema, retire la palabra clave de registro de las
ACL. En la versión 12.0.1(13)EW1 del software Cisco IOS y versiones posteriores, los paquetes tienen un límite de tiempo para que la
utilización de la PC no alcance niveles tan altos. Utilice los contadores de las listas de acceso para llevar un recuento de los elementos que llegan
a la ACL. Los contadores de las listas de acceso se pueden ver en el comando de salida show access-list acl_id.
Otras causas del uso intensivo de la CPU
Existen otras causas para el uso intensivo de la CPU:
Excesiva inestabilidad de enlaces
Picos elevados en la utilización de la CPU debido a la verificación de consistencia de FIB
Alta utilización de la CPU durante el proceso K2FibAdjMan Host Move
Alta utilización de la CPU durante el proceso RkiosPortMan Port Review
Alta utilización de la CPU cuando está conectada a un teléfono IP mediante el uso de puertos troncales
Picos elevados durante una programación de ACL importante
El pico en la utilización de la CPU ocurre durante la aplicación o la eliminación de una gran ACL de una interfaz.
Excesiva inestabilidad de enlaces
El switch Catalyst 4500 exhibe una alta utilización de la CPU cuando uno o más de los enlaces adjuntos comienzan a experimentar una
inestabilidad excesiva. Esta situación ocurre en las versiones de software Cisco IOS anteriores a la versión de software Cisco IOS 12.2(29)EWA.
Paso 1: Verifique los procesos de Cisco IOS con el comando show processes cpu.
Ejecute el comando show processes cpu para verificar qué proceso de Cisco IOS consume a la CPU. En este comando el proceso más importante
es Cat4k Mgmt LoPri:
Switch#show processes cpu
CPU utilization for five seconds: 96%/0%; one minute: 76%; five minutes: 68%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
0
4
0 0.00% 0.00% 0.00%
0 Chunk Manager
2
9840
463370
21 0.00% 0.00% 0.00%
0 Load Meter
3
0
2
0 0.00% 0.00% 0.00%
0 SNMP Timers
!--- Resultado suprimido.
27
232385144 530644966
437 13.98% 12.65% 12.16%
0 Cat4k Mgmt HiPri
28
564756724 156627753
3605 64.74% 60.71% 54.75%
0 Cat4k Mgmt LoPri
29
9716
1806301
5 0.00% 0.00% 0.00%
0 Galios Reschedul
Paso 2: Verifique los procesos específicos al Catalyst 4500 con el comando show platform health.
El resultado del comando show platform health indica que el proceso KxAclPathMan create agota a la CPU. Este proceso es para la
creación de trayectos internacionales.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
Lj-poll
1.00
0.03
2
0 100 500
0
0
0 9:49
GalChassisVp-review
3.00
1.11
10
62 100 500
0
0
0 37:39
S2w-JobEventSchedule 10.00
2.85
10
8 100 500
2
2
2 90:00
Stub-JobEventSchedul 10.00
5.27
10
9 100 500
4
4
4 186:2
Pim-review
0.10
0.00
1
0 100 500
0
0
0 2:51
Ebm-host-review
1.00
0.00
8
4 100 500
0
0
0 8:06
Ebm-port-review
0.10
0.00
1
0 100 500
0
0
0 0:14
Protocol-aging-revie
0.20
0.00
2
0 100 500
0
0
0 0:00
Acl-Flattener
1.00
0.00
10
5 100 500
0
0
0 0:00
KxAclPathMan create/
1.00 69.11
10
5 100 500
42 53
22 715:0
KxAclPathMan update
2.00
0.76
10
6 100 500
0
0
0 86:00
KxAclPathMan reprogr
1.00
0.00
2
1 100 500
0
0
0 0:00
TagMan-InformMtegRev
1.00
0.00
5
0 100 500
0
0
0 0:00
TagMan-RecreateMtegR
1.00
0.00
10
227 100 500
0
0
0 0:00
K2CpuMan Review
30.00
8.05
30
57 100 500
6
5
5 215:0
K2AccelPacketMan: Tx 10.00
6.86
20
0 100 500
5
5
4 78:42
Paso 3: Identifique la causa principal del problema.
Habilite un registro para los mensajes de enlace activo/inactivo. Este registro no está habilitado de forma predeterminada. La habilitación le
ayudará a descubrir cuáles son los enlaces agresores muy rápidamente. Ejecute el comando logging event link-status en todas las interfaces.
Puede utilizar el comando interface range para habilitar un rango de interfaces según su conveniencia, tal como se muestra en el ejemplo a
continuación:
Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface range gigabitethernet 5/1 - 48
Switch(config-if-range)#logging event link-status
Switch(config--if-range)#end
Switch#show logging
!--- Resultado suprimido.
3w5d: %LINK-3-UPDOWN: Interface
3w5d: %LINK-3-UPDOWN: Interface
3w5d: %LINK-3-UPDOWN: Interface
3w5d: %LINK-3-UPDOWN: Interface
3w5d: %LINK-3-UPDOWN: Interface
3w5d: %LINK-3-UPDOWN: Interface
GigabitEthernet5/24,
GigabitEthernet5/24,
GigabitEthernet5/24,
GigabitEthernet5/24,
GigabitEthernet5/24,
GigabitEthernet5/24,
changed
changed
changed
changed
changed
changed
state
state
state
state
state
state
to
to
to
to
to
to
down
up
down
up
down
up
Después de haber identificado la interfaz defectuosa o inestable, cierre la interfaz para poder resolver el problema de la alta utilización de la CPU.
Cisco IOS Las versiones 12.2(2o)EWA2 y posteriores del software Cisco IOS han mejorado el funcionamiento del Catalyst 4500 con respecto al
problema relacionado con los enlaces inestables. Por lo tanto, el impacto que tiene el problema en la CPU no es tan importante como. lo era antes
de la introducción de las mejoras. Recuerde que este proceso es un proceso en segundo plano. Por lo tanto, la alta utilización de la CPU a causa
de este problema no tiene ningún efecto adverso que afecte a los switches Catalyst 4500.
Picos elevados en la utilización de la CPU debido a la verificación de consistencia de FIB
El Catalyst 4500 puede exhibir picos elevados momentáneos en la utilización de la CPU durante una verificación de consistencia de una tabla de
FIB. La tabla de FIB es la tabla de reenvío L3 que crea el proceso CEF. La verificación de consistencia mantiene la consistencia que existe entre
la tabla de FIB del software Cisco IOS y las entradas de hardware. Esta consistencia asegura que los paquetes no se enviaran a través de otra ruta.
La verificación se realiza cada 2 segundos y se ejecuta como un proceso de baja prioridad en segundo plano. Este proceso representa un
comportamiento normal y no interfiere con ningún otro proceso o paquete de alta prioridad.
El resultado del comando show platform health muestra que K2Fib Consistency Ch consume la mayor parte de la CPU.
Nota: La utilización promedio de la CPU para este proceso está insignificantemente por encima de un minuto o una hora, lo que confirma que la
verificación representa una pequeña revisión periódica. Este proceso en segundo plano sólo utiliza los ciclos inactivos de la CPU.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
Lj-poll
1.00
0.02
2
1 100 500
0
0
0 1:09
GalChassisVp-review
3.00
0.29
10
3 100 500
0
0
0 11:15
!--- Resultado suprimido.
K2Fib cam usage revi
2.00
0.00
15
0 100 500
0
0
0 0:00
K2Fib IrmFib Review
2.00
0.00
15
0 100 500
0
0
0 0:00
K2Fib Vrf Default Ro
2.00
0.00
15
0 100 500
0
0
0 0:00
K2Fib AdjRepop Revie
2.00
0.00
15
0 100 500
0
0
0 0:00
K2Fib Vrf Unpunt Rev
2.00
0.01
15
0 100 500
0
0
0 0:23
K2Fib Consistency Ch
1.00 60.40
5
2 100 500
0
0
0 100:23
K2FibAdjMan Stats Re
2.00
0.30
10
4 100 500
0
0
0 6:21
K2FibAdjMan Host Mov
2.00
0.00
10
4 100 500
0
0
0 0:00
K2FibAdjMan Adj Chan
2.00
0.00
10
0 100 500
0
0
0 0:00
K2FibMulticast Signa
2.00
0.01
10
2 100 500
0
0
0 2:04
Alta utilización de la CPU durante el proceso del movimiento de host K2FibAdjMan
El Catalyst 4500 puede exhibir una alta utilización de la CPU durante el proceso K2FibAdjMan Host Move. Este aumento aparece en la salida
de comando show platform health Muchas direcciones MAC normalmente expiran o se aprenden en nuevos puertos. Esto causa la utilización
elevada del CPU. La solución para este problema es aumentar el tiempo de vencimiento de dirección MAC. De lo contrario, puede realizar un
trabajo de ingeniería en la red para evitar un número elevado de movimientos en las direcciones MAC. Las versiones 12.2(18)EW y posteriores
del software Cisco IOS han mejorado este proceso para que consuma menos CPU. Consulte el ID de error de funcionamiento de Cisco
CSCed15021 (solamente clientes registrados) .
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
Lj-poll
1.00
0.02
2
1 100 500
0
0
0 1:09
GalChassisVp-review
3.00
0.29
10
3 100 500
0
0
0 11:15
S2w-JobEventSchedule 10.00
0.32
10
7 100 500
0
0
0 10:14
!--- Resultado suprimido.
K2FibAdjMan Stats Re
2.00
0.30
10
4 100 500
0
0
0 6:21
K2FibAdjMan Host Mov
2.00 18.68
10
4 100 500
25 29
28 2134:39
K2FibAdjMan Adj Chan
2.00
0.00
10
0 100 500
0
0
0 0:00
K2FibMulticast Signa
2.00
0.01
10
2 100 500
0
0
0 2:04
K2FibMulticast Entry
2.00
0.00
10
7 100 500
0
0
0 0:00
Alta utilización de la CPU durante el proceso RkiosPortMan Port Review
El Catalyst 4500 puede exhibir una alta utilización de la CPU durante el proceso RkiosPortMan Port Review en el resultado del comando show
platform health de las versiones 12.2(25)EWA y 12.2(25)EWA1 del software Cisco IOS. El ID de falla de funcionamiento de Cisco
CSCeh08768 (solamente clientes registrados) es el causante de la elevada utilización, que resuelve la versión 12.2(25)EWA2 del software Cisco
IOS. Este proceso es un proceso en segundo plano y no afecta la estabilidad de los switches Catalyst 4500.
Switch#show platform health
%CPU
%CPU
RunTimeMax
Priority Average %CPU Total
Target Actual Target Actual
Fg
Bg 5Sec Min Hour CPU
Lj-poll
1.00
0.02
2
1 100 500
0
0
0 1:09
GalChassisVp-review
3.00
0.29
10
3 100 500
0
0
0 11:15
S2w-JobEventSchedule 10.00
0.32
10
7 100 500
0
0
0 10:14
!--- Resultado suprimido.
K2 Packet Memory Dia
2.00
0.00
15
8 100 500
0
1
1 45:46
K2 L2 Aging Table Re
2.00
0.12
20
3 100 500
0
0
0 7:22
RkiosPortMan Port Re
2.00 87.92
12
7 100 500
99 99
89 1052:36
Rkios Module State R
4.00
0.02
40
1 100 500
0
0
0 1:28
Rkios Online Diag Re
4.00
0.02
40
0 100 500
0
0
0 1:15
Alta utilización de la CPU cuando el switch está conectado a un teléfono IP a través de puertos troncales
Si se configura un puerto tanto para la opción de voz VLAN como para la opción de acceso VLAN el puerto actúa como un puerto de acceso de
VLAN múltiple. La ventaja consiste en que sólo se truncarán aquellos VLAN que están configurados para las opciones de voz y de acceso
VLAN.
Los VLAN que se truncan al teléfono generan un aumento en la cantidad de instancias STP. El switch administra las instancias STP. La
administración del aumento en las instancias STP también genera un aumento en la utilización de la CPU por parte del STP.
Las conexiones troncales de todas las VLAN también genera un tráfico desconocido e innecesario de transmisión, multidifusión y unidifusión
que llega al enlace del teléfono.
Switch#show processes cpu
Utilización de la CPU durante cinco segundos: 69%/0%; un minuto: 72%, cinco minutos: 73%
PID Runtime(ms)
Invoked
uSecs
5Sec
1Min
5Min TTY Process
1
4
165
24 0.00% 0.00% 0.00%
0 Chunk Manager
2
29012
739091
39 0.00% 0.00% 0.00%
0 Load Meter
3
67080
13762
4874 0.00% 0.00% 0.00%
0 SpanTree Helper
4
0
1
0 0.00% 0.00% 0.00%
0 Deferred Events
5
0
2
0 0.00% 0.00% 0.00%
0 IpSecMibTopN
6
4980144
570766
8725 0.00% 0.09% 0.11%
0 Check heaps
26
539173952 530982442
1015 13.09% 13.05% 13.20%
0 Cat4k Mgmt HiPri
27
716335120 180543127
3967 17.61% 18.19% 18.41%
0 Cat4k Mgmt LoPri
33
1073728
61623
17424 0.00% 0.03% 0.00%
0 Per-minute Jobs
34 1366717824 231584970
5901 38.99% 38.90% 38.92%
0 Spanning Tree
35
2218424 18349158
120 0.00% 0.03% 0.02%
0 DTP Protocol
36
5160
369525
13 0.00% 0.00% 0.00%
0 Ethchnl
37
271016
2308022
117 0.00% 0.00% 0.00%
0 VLAN Manager
38
958084
3965585
241 0.00% 0.01% 0.01%
0 UDLD
39
1436
51011
28 0.00% 0.00% 0.00%
0 DHCP Snooping
40
780
61658
12 0.00% 0.00% 0.00%
0 Port-Security
41
1355308 12210934
110 0.00% 0.01% 0.00%
0 IP Input
Herramientas para la resolución de problemas para analizar el tráfico que tiene como
destino la CPU
Como lo ha demostrado este documento, el tráfico que está destinado a la CPU es una de las causas principales de la alta utilización de la CPU en
el switch Catalyst 4500. El tráfico que tiene por destino la CPU puede ser intencional debido a la configuración o no intencional debido a un error
en la configuración o a un ataque de negación de servicio. La CPU tiene un mecanismo de Calidad de Servicio (QoS) integrado que previene
cualquier efecto adverso de la red a causa de este tráfico. Sin embargo, identifique la causa principal del tráfico dirigido a la CPU y elimine el
tráfico no deseado.
Herramienta 1: Monitoreo del tráfico de la CPU con SPAN, versiones 12.1(19)EW y posteriores del software Cisco
IOS
El switch Catalyst 4500 permite controlar el tráfico que está dirigido a la CPU, tanto entrante como saliente, mediante el uso de la función
estándar SPAN. La interfaz de destino se conecta a un monitor de paquetes o al equipo portátil del administrador que ejecuta un software que
rastrea paquetes (sniffer). Esta herramienta ayuda a analizar el tráfico que procesa la CPU de manera rápida y precisa. La herramienta ofrece la
posibilidad de controlar las colas individuales que se dirigen al motor de paquetes de la CPU.
Nota: El motor de conmutación tiene 32 colas para el tráfico de la CPU, y el motor de paquetes de la CPU tiene 16.
Switch(config)#monitor session 1 source cpu ?
both
Monitor received and transmitted traffic
queue SPAN source CPU queue
rx
Monitor received traffic only
tx
Monitor transmitted traffic only
<cr>
Switch(config)#monitor session 1 source cpu queue ?
<1-32>
SPAN source CPU queue numbers
acl
Input and output ACL [13-20]
adj-same-if
Packets routed to the incoming interface [7]
all
All queues [1-32]
bridged
L2/bridged packets [29-32]
control-packet Layer 2 Control Packets [5]
mtu-exceeded
Output interface MTU exceeded [9]
nfl
Packets sent to CPU by netflow (unused) [8]
routed
L3/routed packets [21-28]
rpf-failure
Multicast RPF Failures [6]
span
SPAN to CPU (unused) [11]
unknown-sa
Packets with missing source address [10]
Switch(config)#monitor session 1 source cpu queue all rx
Switch(config)#monitor session 1 destination interface gigabitethernet 1/3
Switch(config)#end
4w6d: %SYS-5-CONFIG_I: Configured from console by console
Switch#show monitor
Session 1
--------Type
:
Source Ports
:
RX Only
:
Destination Ports :
Encapsulation :
Ingress :
Learning :
session 1
Local Session
CPU
Gi1/3
Native
Disabled
Disabled
Si usted conecta un ordenador que ejecuta un programa rastreador (sniffer), podrá analizar el tráfico rápidamente. En esta sección aparecerá una
ventana donde podrá ver que la causa de la alta utilización de la CPU es una excesiva cantidad de BPDU de STP.
Nota: La cantidad de BPDU de STP que aparece en el rastreador (sniffer) es normal. Pero si observa más de los que normalmente esperaría, tal
vez haya excedido los limites recomendados para su motor de supervisión. Consulte la sección Un número elevado de instancias de puertos de
árbol de de expansión de este documento para obtener más información.
Herramienta 2: Rastreador de CPU integrado: versiones 12.2(20)EW y posteriores del software Cisco IOS
El switch Catalyst 4500 ofrece un rastreador y un decodificador incorporado en la CPU que permite identificar rápidamente el tráfico que llega a
la CPU. Puede habilitar esta función con el comando debug tal como se muestra en el ejemplo de esta sección. Esta función implementa un búfer
circular que puede retener hasta 1024 paquetes al mismo tiempo. A medida que llega un nuevo paquete, se sobreescriben los paquetes más
antiguos. Es seguro utilizar esta función cuando está solucionando los problemas relacionados con la alta utilización de la CPU.
Switch#debug platform packet all receive buffer
platform packet debugging is on
Switch#show platform cpu packet buffered
Total Received Packets Buffered: 36
------------------------------------Index 0:
7 days 23:6:32:37214 - RxVlan: 99, RxPort: Gi4/48
Priority: Crucial, Tag: Dot1Q Tag, Event: Control Packet,
Eth: Src 00-0F-F7-AC-EE-4F Dst 01-00-0C-CC-CC-CD Type/Len
Remaining data:
0: 0xAA 0xAA 0x3 0x0 0x0 0xC 0x1 0xB 0x0 0x0
10: 0x0 0x0 0x0 0x80 0x0 0x0 0x2 0x16 0x63 0x28
20: 0x62 0x0 0x0 0x0 0x0 0x80 0x0 0x0 0x2 0x16
30: 0x63 0x28 0x62 0x80 0xF0 0x0 0x0 0x14 0x0 0x2
40: 0x0 0xF 0x0 0x0 0x0 0x0 0x0 0x2 0x0 0x63
Index 1:
7 days 23:6:33:180863 - RxVlan: 1, RxPort: Gi4/48
Priority: Crucial, Tag: Dot1Q Tag, Event: Control Packet,
Eth: Src 00-0F-F7-AC-EE-4F Dst 01-00-0C-CC-CC-CD Type/Len
Remaining data:
0: 0xAA 0xAA 0x3 0x0 0x0 0xC 0x1 0xB 0x0 0x0
10: 0x0 0x0 0x0 0x80 0x0 0x0 0x2 0x16 0x63 0x28
20: 0x62 0x0 0x0 0x0 0x0 0x80 0x0 0x0 0x2 0x16
30: 0x63 0x28 0x62 0x80 0xF0 0x0 0x0 0x14 0x0 0x2
Flags: 0x40, Size: 68
0x0032
Flags: 0x40, Size: 68
0x0032
40: 0x0
0xF
0x0
0x0
0x0
0x0
0x0
0x2
0x0
0x63
Herramienta 3: Identifica la interfaz que envía tráfico hacia la CPU: versión 12.2(20)EW y posteriores del software
Cisco IOS.
Catalyst 4500 ofrece otra herramienta muy útil para identificar las principales interfaces que envían tráfico/paquetes para que sean procesados por
la CPU. Esta herramienta le ayuda a identificar rápidamente un dispositivo errante que envía una gran cantidad de transmisiones u otros ataques
de negación de servicio a la CPU. Es seguro utilizar esta función cuando está llevando a cabo la solución de problemas relacionados con la alta
utilización de la CPU.
Switch#debug platform packet all count
platform packet debugging is on
Switch#show platform cpu packet statistics
!--- Resultado suprimido.
Packets Transmitted from CPU per Output Interface
Interface
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Gi4/47
1150
1
5
10
0
Gi4/48
50
1
0
0
0
Paquetes recibidos en la CPU por interfaz de entrada
Interface
Total
5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ---------Gi4/47
23130
5
10
50
20
Gi4/48
50
1
0
0
0
Resumen
Los switches Catalyst 4500 manejan un alto porcentaje de reenvío de paquetes por hardware de la versión 4 de IP (IPv4). Algunas de las
funciones o excepciones pueden causar el reenvío de algunos paquetes a través del trayecto del proceso de la CPU. Los switches Catalyst 4500
utilizan un sofisticado mecanismo de Calidad de Servicio (QoS) que maneja los paquetes que están dirigidos a la CPU. Este mecanismo asegura
confiabilidad y estabilidad en los switches y, al mismo tiempo, maximiza el software de la CPU a cargo de realizar el reenvío de los paquetes.
Versión de software Cisco IOS 12.2(25)EWA2 y posteriores ofrecen mejoras adicionales para el manejo y para el registro de paquetes/procesos.
El switch Catalyst 4500 ofrece además, suficientes comandos y sólidas herramientas que le ayudan a identificar la causa principal de los
escenarios relacionados con la alta utilización de la CPU. Pero, en la mayoría de los casos, la alta utilización de la CPU en Catalyst 4500 no es a
causa de una estabilidad en la red ni ni tampoco un motivo de preocupación.
© 1992-2014 Cisco Systems Inc. Todos los Derechos Reservados.
Fecha de Generación del PDF: 23 Marzo 2008
http://www.cisco.com/cisco/web/support/LA/7/77/77440_cat4500_high_cpu.html
Descargar