Este documento describe las causas del uso excesivo de la CPU en los switches Cisco Catalyst 3750 Series. De forma similar a los routers Cisco, los switches utilizan el comando show processes cpu para mostrar la utilización de la CPU a fin de identificar las causas del uso excesivo de la CPU. Sin embargo, debido a las diferencias en arquitectura y mecanismos de reenvío entre los routers Cisco y los switches, la salida típica del comando show processes cpu difiere significativamente. Este documento también enumera algunos síntomas comunes que causan un uso excesivo de la CPU en el switch Catalyst 3750 Series.
No hay requisitos específicos para este documento.
La información de este documento se basa en los switches Catalyst 3750.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). If your network is live, make sure that you understand the potential impact of any command.
Antes de analizar la arquitectura de manejo de paquetes de la CPU y resolver problemas de uso elevado de la CPU, debe comprender las diferentes maneras en que los switches de reenvío basados en hardware y los routers basados en el software Cisco IOS® utilizan la CPU. El error común es creer que el alto uso de la CPU indica el agotamiento de recursos en un dispositivo y la amenaza de un fallo. Un problema de capacidad es uno de los síntomas de alto uso de la CPU en los routers de Cisco IOS. Sin embargo, un problema de capacidad casi nunca es un síntoma de uso alto de la CPU con los switches de reenvío basados en hardware.
El primer paso para solucionar el alto uso de la CPU es leer las notas de la versión de Cisco IOS de su switch de Catalyst 3750 para conocer el posible error de IOS. De esta forma, puede eliminar el error IOS de los pasos de resolución de problemas. Consulte Notas de la Versión de Cisco Catalyst 3750 Series Switches para obtener la lista de notas de la versión de Catalyst 3750 Switches.
Esta sección trata algunos de los problemas comunes de uso elevado de la CPU en el Catalyst 3750 Switch.
Una de las razones comunes para el uso elevado de la CPU es que la CPU Catalyst 3750 está ocupada con la tormenta de procesamiento de mensajes de ausencia del protocolo de administración de grupos de Internet (IGMP). Si una pila de switches Catalyst 3750 que ejecutan Cisco IOS Software Release 12.1(14)EA1a se conecta a otro switch, como un Cat6500 que ejecuta CatOS, que genera consultas IGMP basadas en MAC con opciones IP, el 3750 experimenta una alta utilización de la CPU en el proceso IGMPSN (snooping). Esto es el resultado del loop de paquetes de consulta basados en MAC dentro de la pila. También puede ver una CPU alta con el proceso de solicitud HRPC hl2mm. Si tiene EtherChannel configurado en la pila de Catalyst 3750 con Cisco IOS Software Release 12.1(14)EA1a, se puede crear una tormenta de mensajes de ausencia de IGMP.
El Catalyst 3750 recibe muchas consultas IGMP. Esto hace que el contador de consultas IGMP comience a incrementarse en cientos por segundo. Esto lleva a un uso excesivo de la CPU en el switch Catalyst 3750. Consulte el ID de bug Cisco CSCeg5298 (sólo para clientes registrados) . El error se identificó en Cisco IOS Software Release 12.1(14)EA1a y se corrige en Cisco IOS Software Releases 12.2(25)SEA y posteriores. La solución permanente es actualizar a la última versión de Cisco IOS. La solución temporal es inhabilitar la indagación IGMP en la pila Catalyst 3750, o inhabilitar la consulta basada en MAC en el switch conectado a la pila 3750.
Este es un ejemplo de salida del comando show ip traffic que muestra los paquetes IP con opciones y alertas incorrectas que aumentan rápidamente:
Switch#show ip traffic Rcvd: 48195018 total, 25628739 local destination 0 format errors, 0 checksum errors, 10231692 bad hop count 0 unknown protocol, 9310320 not a gateway 0 security failures, 10231 bad options, 2640539 with options Opts: 2640493 end, 206 nop, 0 basic security, 2640523 loose source route 0 timestamp, 0 extended security, 16 record route 0 stream ID, 0 strict source route, 10231 alert, 0 cipso, 0 ump 0 other Frags: 16 reassembled, 0 timeouts, 0 couldn't reassemble 32 fragmented, 0 couldn't fragment Bcast: 308 received, 0 sent Mcast: 4221007 received, 4048770 sent Sent: 25342014 generated, 20710669 forwarded Drop: 617267 encapsulation failed, 0 unresolved, 0 no adjacency 0 no route, 0 unicast RPF, 0 forced drop 0 options denied, 0 source IP address zero !--- Output suppressed.
El comando show processes cpu muestra información sobre los procesos activos en el switch y sus estadísticas de uso de CPU correspondientes. Este es un ejemplo de resultado del comando show processes cpu cuando el uso de la CPU es normal:
switch#show processes cpu CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5% PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process 1 384 32789 11 0.00% 0.00% 0.00% 0 Load Meter 2 2752 1179 2334 0.73% 1.06% 0.29% 0 Exec 3 318592 5273 60419 0.00% 0.15% 0.17% 0 Check heaps 4 4 1 4000 0.00% 0.00% 0.00% 0 Pool Manager 5 6472 6568 985 0.00% 0.00% 0.00% 0 ARP Input 6 10892 9461 1151 0.00% 0.00% 0.00% 0 IGMPSN !--- CPU utilization at normal condition. 7 67388 53244 1265 0.16% 0.04% 0.02% 0 CDP Protocol 8 145520 166455 874 0.40% 0.29% 0.29% 0 IP Background 9 3356 1568 2140 0.08% 0.00% 0.00% 0 BOOTP Server 10 32 5469 5 0.00% 0.00% 0.00% 0 Net Background 11 42256 163623 258 0.16% 0.02% 0.00% 0 Per-Second Jobs 12 189936 163623 1160 0.00% 0.04% 0.05% 0 Net Periodic 13 3248 6351 511 0.00% 0.00% 0.00% 0 Net Input 14 168 32790 5 0.00% 0.00% 0.00% 0 Compute load avgs 15 152408 2731 55806 0.98% 0.12% 0.07% 0 Per-minute Jobs 16 0 1 0 0.00% 0.00% 0.00% 0 HRPC hI2mm reque !--- Output suppressed.
Este es un ejemplo de resultado del comando show processes cpu cuando el uso de la CPU es alto debido al proceso de indagación IGMP:
switch#show processes cpu CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5% PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process 1 384 32789 11 0.00% 0.00% 0.00% 0 Load Meter 2 2752 1179 2334 0.73% 1.06% 0.29% 0 Exec 3 318592 5273 60419 0.00% 0.15% 0.17% 0 Check heaps 4 4 1 4000 0.00% 0.00% 0.00% 0 Pool Manager 5 6472 6568 985 0.00% 0.00% 0.00% 0 ARP Input 6 10892 9461 1151 100 100 100 0 IGMPSN !--- Due to high CPU utilization. 7 67388 53244 1265 0.16% 0.04% 0.02% 0 CDP Protocol 8 145520 166455 874 0.40% 0.29% 0.29% 0 IP Background 9 3356 1568 2140 0.08% 0.00% 0.00% 0 BOOTP Server 10 32 5469 5 0.00% 0.00% 0.00% 0 Net Background 11 42256 163623 258 0.16% 0.02% 0.00% 0 Per-Second Jobs 12 189936 163623 1160 0.00% 0.04% 0.05% 0 Net Periodic 13 3248 6351 511 0.00% 0.00% 0.00% 0 Net Input 14 168 32790 5 0.00% 0.00% 0.00% 0 Compute load avgs 15 152408 2731 55806 0.98% 0.12% 0.07% 0 Per-minute Jobs 16 0 2874 0 100 100 100 0 HRPC hI2mm reque !--- Output suppressed.
Los switches Catalyst de Cisco serie 3750 no admiten el túnel General Routing Encapsulation (GRE). Aunque esta función se puede configurar con CLI, los paquetes no se pueden conmutar por hardware ni por software, lo que aumenta la utilización de la CPU.
Nota: Solo las interfaces de túnel del Protocolo de routing multidifusión por vector de distancia (DVMRP) son compatibles con el routing multidifusión en el Catalyst 3750. Incluso para esto, los paquetes no se pueden conmutar con hardware. Los paquetes enrutados a través de este túnel deben conmutarse a través del software. El mayor número de paquetes reenviados a través de este túnel aumenta la utilización de la CPU.
No existe ninguna solución alternativa para este problema. Esta es una limitación de hardware en los Catalyst 3750 Series Switches.
Si los switches Catalyst 3750 están conectados en una pila y se realizan cambios de configuración en un switch, el proceso de configuración hulc running se activa y genera una nueva copia de la configuración en ejecución. A continuación, se envía a todos los switches de la pila. La nueva configuración en ejecución requiere mucho uso de la CPU. Por lo tanto, el uso de la CPU es alto cuando se genera un nuevo proceso de configuración en ejecución y cuando se reenvían las nuevas configuraciones a otros switches. Sin embargo, este uso elevado de la CPU sólo debe existir durante la misma cantidad de tiempo que se tarda en realizar el paso de configuración de generación del comando show running-configuration.
No hay necesidad de una solución alternativa para este problema. El uso de la CPU es normalmente alto en estas situaciones.
Este es un ejemplo de resultado del comando show processes cpu cuando el uso de la CPU es alto debido al proceso hulc running:
switch#show processes cpu CPU utilization for five seconds: 63%/0%; one minute: 27%; five minutes: 23% PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process 1 384 32789 11 0.00% 0.00% 0.00% 0 Load Meter 2 2752 1179 2334 0.73% 1.06% 0.29% 0 Exec 3 318592 5273 60419 0.00% 0.15% 0.17% 0 Check heaps 4 4 1 4000 0.00% 0.00% 0.00% 0 Pool Manager 5 6472 6568 985 0.00% 0.00% 0.00% 0 ARP Input 6 10892 9461 1151 0.00% 0.00% 0.00% 0 IGMPSN 7 67388 53244 1265 0.16% 0.04% 0.02% 0 CDP Protocol 8 145520 166455 874 0.40% 0.29% 0.29% 0 IP Background 9 3356 1568 2140 0.08% 0.00% 0.00% 0 BOOTP Server 10 32 5469 5 0.00% 0.00% 0.00% 0 Net Background 11 42256 163623 258 0.16% 0.02% 0.00% 0 Per-Second Jobs 12 189936 163623 1160 0.00% 0.04% 0.05% 0 Net Periodic 13 3248 6351 511 0.00% 0.00% 0.00% 0 Net Input 14 168 32790 5 0.00% 0.00% 0.00% 0 Compute load avgs 15 152408 2731 55806 0.98% 0.12% 0.07% 0 Per-minute Jobs 16 0 1 0 0.00% 0.00% 0.00% 0 HRPC h12mm reque 17 85964 426 201793 55.72% 12.05% 5.36% 0 hulc running !--- Output suppressed.
La alta utilización de la CPU del proceso de entrada del Protocolo de resolución de direcciones (ARP) ocurre si el router tiene que originar un número excesivo de solicitudes ARP. Las solicitudes ARP para la misma dirección IP se limitan a una solicitud cada dos segundos. Por lo tanto, se debe originar un número excesivo de solicitudes ARP para diferentes direcciones IP. Esto puede ocurrir si se ha configurado una ruta IP y apunta a una interfaz de difusión. Un ejemplo obvio es una ruta predeterminada, como:
ip route 0.0.0.0 0.0.0.0 Fastethernet0/0
En este caso, el router genera una solicitud ARP para cada dirección IP que no es accesible a través de rutas más específicas, lo que significa que el router genera una solicitud ARP para casi todas las direcciones en Internet. Consulte Especificación de una Dirección IP de Siguiente Salto para Rutas Estáticas para obtener más información sobre cómo configurar la dirección IP de próximo salto para el ruteo estático.
Alternativamente, una cantidad excesiva de solicitudes ARP puede ser causada por un flujo de tráfico malicioso que explora a través de subredes conectadas localmente. Una indicación de tal flujo es la presencia de un número muy alto de entradas ARP incompletas en la tabla ARP. Debido a que los paquetes IP entrantes que disparan las solicitudes ARP tienen que ser procesados, la resolución de este problema es esencialmente la misma que la resolución de problemas de uso elevado de la CPU en el proceso de entrada IP.
En las últimas versiones de Cisco IOS para Catalyst 3750, las solicitudes SNMP (Simple Network Management Protocol) son manejadas por el SNMP ENGINE. Es normal que la CPU se agote debido a este proceso de SNMP ENGINE. El proceso SNMP tiene una prioridad baja y no debe afectar ninguna funcionalidad en el switch.
Consulte IP Simple Network Management Protocol (SNMP) Causes High CPU Utilization para obtener más información sobre el uso elevado de la CPU causado por el proceso SNMP ENGINE.
La gestión de bases de datos de switches (SDM) en los switches Catalyst serie 3750 gestiona la información de switching de las capas 2 y 3 que se mantiene en la memoria de contenido ternario direccionable (TCAM). Las plantillas de SDM se utilizan para configurar los recursos del sistema en el switch para optimizar la compatibilidad con funciones específicas, lo que depende de cómo se utilice el switch en la red. Las plantillas de SDM se pueden seleccionar para proporcionar el máximo uso del sistema para algunas funciones o para utilizar la plantilla por defecto para equilibrar los recursos. Las plantillas dan prioridad a los recursos del sistema para optimizar la compatibilidad con estos tipos de funciones:
Enrutamiento: la plantilla de enrutamiento maximiza los recursos del sistema para el enrutamiento de unidifusión, normalmente necesario para un router o agregador en el centro de una red.
VLAN: la plantilla de VLAN deshabilita el enrutamiento y admite el número máximo de direcciones MAC de unidifusión. Esto se selecciona generalmente para un switch de Capa 2.
Acceso: la plantilla de acceso maximiza los recursos del sistema para las listas de control de acceso (ACL) para dar cabida a un gran número de ACL.
Predeterminado: la plantilla por defecto proporciona equilibrio a todas las funciones.
Existen dos versiones de cada plantilla: una plantilla de escritorio y una plantilla de agregador.
Nota: La plantilla predeterminada para los switches de escritorio es la plantilla de escritorio predeterminada. La plantilla predeterminada para Catalyst 3750-12S es la plantilla de agregador predeterminada.
Seleccione una plantilla de SDM adecuada que proporcione el uso máximo del sistema para la función utilizada. Una plantilla de SDM inadecuada puede sobrecargar la CPU y degradar gravemente el rendimiento del switch.
Ejecute el comando show platform tcam utilization para ver cuánto TCAM se ha utilizado ahora y cuánto está disponible.
Switch#show platform tcam utilization CAM Utilization for ASIC# 0 Max Used Masks/Values Masks/values Unicast mac addresses: 784/6272 12/26 IPv4 IGMP groups + multicast routes: 144/1152 6/26 IPv4 unicast directly-connected routes: 784/6272 12/26 IPv4 unicast indirectly-connected routes: 272/2176 8/44 IPv4 policy based routing aces: 0/0 0/0 IPv4 qos aces: 528/528 18/18 IPv4 security aces: 1024/1024 27/27 Note: Allocation of TCAM entries per feature uses a complex algorithm. The above information is meant to provide an abstract view of the current TCAM utilization
Si el uso de TCAM está cerca del máximo para cualquiera de los parámetros, verifique si alguna de las otras funciones de la plantilla puede optimizar para ese parámetro.
show sdm prefer access | default | dual-ipv4-and-ipv6 | routing | vlan
Switch# show sdm prefer routing "desktop routing" template: The selected template optimizes the resources in the switch to support this level of features for 8 routed interfaces and 1024 VLANs. number of unicast mac addresses: 3K number of igmp groups + multicast routes: 1K number of unicast routes: 11K number of directly connected hosts: 3K number of indirect routes: 8K number of policy based routing aces: 512 number of qos aces: 512 number of security aces: 1K
Para especificar la plantilla SDM que se utilizará en el switch, ejecute el comando de configuración global sdm prefer.
Nota: La recarga del switch es necesaria para utilizar la nueva plantilla de SDM.
La implementación del routing basado en políticas (PBR) en los switches Cisco Catalyst 3750 tiene algunas limitaciones. Si no se siguen estas restricciones, puede provocar un uso elevado de la CPU.
Puede habilitar PBR en un puerto ruteado o una SVI.
El switch no admite sentencias de negación de route-map para PBR.
El tráfico de multidifusión no está ruteado por políticas. PBR se aplica sólo al tráfico de unidifusión.
No coincida con las ACL que permiten paquetes destinados a una dirección local. PBR reenvía estos paquetes, que pueden causar ping o falla Telnet o inestabilidad del protocolo de ruta.
No haga coincidir las ACL con las ACE de negación. Los paquetes que coinciden con una ACE denegada se envían a la CPU, lo que puede provocar un uso elevado de la CPU.
Para utilizar PBR, primero debe habilitar la plantilla de ruteo con el comando de configuración global sdm prefer routing. PBR no es compatible con la VLAN o la plantilla predeterminada.
Para obtener una lista completa, consulte las Pautas de Configuración de PBR.
Puede obtener redirecciones descartadas de ICMP cuando una VLAN (o cualquier puerto de Capa 3) recibe un paquete donde la IP de origen está en una subred, la IP de destino está en otra subred y el siguiente salto está en la misma VLAN o segmento de capa 3.
Aquí tiene un ejemplo:
Puede ver este mensaje en show log:
51w2d: ICMP-Q:Dropped redirect disabled on L3 IF: Local Port Fwding L3If:Vlan7 L2If:GigabitEthernet2/0/13 DI:0xB4, LT:7, Vlan:7 SrcGPN:65, SrcGID:65, ACLLogIdx:0x0, MacDA:001a.a279.61c1, MacSA: 0002.5547.3bf0 IP_SA:64.253.128.3 IP_DA:208.118.132.9 IP_Proto:47 TPFFD:EDC10041_02C602C6_00B0056A-000000B4_EBF6001B_0D8A3746
Esto ocurre cuando el paquete se recibe en la VLAN 7 con IP de origen 64.253.128.3 e intenta alcanzar 208.118.132.9, la IP de destino. Puede ver que el salto siguiente configurado en el switch (64.253.128.41, en este caso) también está en la misma VLAN 7.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
20-Dec-2005 |
Versión inicial |