Routers : Routers Cisco de la serie 10000

Resolución de problemas por uso excesivo de las CPU de los routers de Cisco

16 Enero 2016 - Traducción Automática
Otras Versiones: PDFpdf | Traducción Manual (19 Mayo 2008) | Inglés (31 Diciembre 2015) | Comentarios


Interactivo: Este documento ofrece un análisis personalizado de su dispositivo Cisco.


Contenido


Introducción

Este documento describe los síntomas comunes y las causas del elevado uso de CPU de los routers Cisco, y proporciona algunos lineamientos e instrucciones para la solución de problemas.

prerrequisitos

Requisitos

Resolver problemas CPU elevada la utilización en los routeres Cisco requiere la comprensión de los trayectos de Switching del software del � del Cisco IOS. Para la información sobre los trayectos de Switching del Cisco IOS Software, vea los fundamentos del ajuste de rendimiento.

Componentes Utilizados

Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.

Convenciones

Para obtener más información sobre las convenciones del documento, consulte Convenciones de Consejos Técnicos de Cisco.

Síntomas de la alta utilización de la CPU

Esta lista describe algunos síntomas comunes derivados del extensivo uso de la CPU. Si nota cualquiera de estos síntomas, siga los pasos de resolución de problemas en este documento para aliviarlo.

  • Altos porcentajes en la salida del comando show processes cpu

    Si usted tiene la salida de un comando show processes cpu de su dispositivo de Cisco, usted puede utilizar para visualizar los problemas potenciales y los arreglos. Para utilizar , usted debe ser un cliente registrado, se abra una sesión, y hace el Javascript habilitar.

  • Bajo rendimiento

  • Por ejemplo, los servicios del router fallan al responder.

    • Respuesta lenta en Telnet o no se puede hacer Telnet hacia el router.

    • Respuesta lenta en la consola

    • Respuesta baja o ausencia de respuesta en el ping

    • El router no envía las actualizaciones de ruteo al otro Routers

  • Altas fallas del almacén intermedio

Resolución de problemas inicial

Una vez que usted nota los síntomas uces de los de los síntomas de una alta utilización de la CPU:

Cómo determinar causas y solucionar problemas

Utilice el comando show processes cpu de marcar si la utilización de la CPU es elevado debido a las interrupciones o a los procesos.

Gran utilización de la CPU debido a interrupciones

Para más información, refiera a resolver problemas CPU elevada la utilización causada por las interrupciones. Si el nivel de las subidas CPU debido a las interrupciones que son probablemente a causa a los paquetes del CEF Switching, el nivel de CPU no afecta al rendimiento del router.

CPU elevada al habilitar el Netflow NDE en el Cisco 7600 Series Router

Si el Netflow se configura para la versión 7, el flujo es realizado por el procesador de ruteo, que podría causar CPU elevada la utilización.

Para resolver problemas CPU elevada el utilización debido a la versión 7 del Netflow, la versión 5 del remitente del nde de los mls de la configuración, como la exportación de NetFlow es realizada por el SP, que es el valor por defecto para la versión 5 o la versión 9.

Alta utilización del CPU a causa de los procesos

Control que el proceso está cargando el CPU. La actividad inusual relacionada con un proceso genera un mensaje de error en el registro. Por consiguiente, primero se debe verificar si la salida del comando show logging exec presenta errores relacionados con el proceso que consume muchos ciclos de la CPU.

El debugging puede también estar de gran ayuda en resolver problemas CPU elevada la utilización en los procesos. Sin embargo, el hacer el debug de se debe realizar con la precaución extrema porque puede aumentar la utilización de la CPU aún más. Estos requisitos previos se deben resolver para hacer hacer el debug de seguro y útil:

  • Todos los destinos de registro excepto el registro del buffer deben o ser inhabilitados o su nivel de gravedad del registro se debe bajar a partir del 7 (debugging) a 6 (informativo) o menos, usando el comando configuration apropiado del [severity-level] del destino de registro. Para ver qué destinos de registro y nivela la correspondencia se habilita, leyó las líneas del encabezado del comando show logging exec.

  • El tamaño de memoria intermedia de registro se debe aumentar para capturar la información suficiente. Para más detalles, refiera a la descripción del comando global configuration mitigado registro.

  • Para ser más instruida capaz y entender los debugs, la fecha y hora y las indicaciones de fecha y hora en milisegundos deben ser habilitadas. Para más detalles, refiera a la descripción del comando global configuration de las indicaciones de fecha y hora de servicio.

Proporcionan una sesión de debugging de la muestra de los paquetes del IP en resolver problemas CPU elevada la utilización en el proceso de entrada IP.

Para resolver problemas CPU elevada la utilización en los procesos específicos, refiera al link apropiado:

  • Entrada de información ARP — Sección de entrada de ART del documento que resuelve problemas CPU elevada el utilización debido a los procesos

  • Router BGP — CPU elevada debido a la sección del proceso del router BGP del documento que resuelve problemas CPU elevada causada por el escáner BGP o el proceso del router BGP

  • Escáner BGP — CPU elevada debido a la sección del escáner BGP del documento que resuelve problemas CPU elevada causada por el escáner BGP o el proceso del router BGP

  • EXEC — CPU elevada utilización en el EXEC y los procesos de EXEC virtuales

  • Entrada de Hybridge — Resolviendo problemas CPU elevada la utilización causada por el proceso de entrada de Hybridge en el Routers con las interfaces ATM

  • IP entrado — Resolver problemas CPU elevada el utilización debido a al proceso de entrada IP

  • Simple Network Management Protocol (SNMP) IP — Utilización de las causas del Simple Network Management Protocol (SNMP) IP CPU elevada

  • Actualizador adj LC — ¿Qué causa CPU elevada la utilización en el proceso del Updater de la adyacencia LC en un Cisco 12000 Series Internet Router?

  • Temporizador TCP — Sección del temporizador TCP del documento que resuelve problemas CPU elevada el utilización debido a los procesos

  • Fondo TTY — Sección del fondo TTY del documento que resuelve problemas CPU elevada el utilización debido a los procesos

  • EXEC virtual — CPU elevada utilización en el ejecutivo y los procesos de EXEC virtuales

  • Vtemplate Backgr — Sección del fondo de la plantilla virtual del documento que resuelve problemas CPU elevada el utilización debido a los procesos

  • Proceso de SSH — Pudo pasar a ALTO si se habilita la captura de una tecnología de la demostración o de algún debug.

  • Otros procesos — La otra sección de los procesos del documento que resuelve problemas CPU elevada el utilización debido a los procesos

El PCI y los pools de Memoria rápida muestran mismo la utilización intensa

Es normal ver poca memoria libre con el PCI y los pools de Memoria rápida. Memoria PCI. se utiliza para el acceso a memoria al regulador GT64260 en el mainboard PRP para los busses PCI conectados con ella. Esta memoria se utiliza para la comunicación interna entre el controlador del sistema y otras piezas, así que aparece ser alta todo el tiempo.

Si más memoria es necesaria, recurre a la memoria del agrupamiento de procesador. Memoria rápida es un muy poco de la memoria que se ha puesto a un lado para uso de las estructuras de datos del bloque del descriptor de la interfaz de hardware (IDB). Esta memoria también se reserva totalmente en el bootup, así que es siempre demostraciones como alto puesto que la memoria se utiliza totalmente. Debido a esto, es normal ver poca memoria libre con el pool de Memoria rápida.

%SNMP-4-HIGHCPU: El proceso excede [dec] el umbral del ms ([dec] quántum del ms IOS) para el [chars] de [chars]--resultado [chars]

El mensaje de la CPU HOG parece esto:

SNMP-4-HIGHCPU: Process exceeds 200ms threshold (200ms IOS quantum)
for GET of rmon.19.16.0--result rmon.19.16.0

Un nuevo mensaje de Syslog (HIGHCPU) fue agregado al IOS en 12.4(13). Si un proceso se aferra al CPU para más el ms de 200, señala un mensaje HIGHCPU. El mensaje HIGHCPU no tiene ningún impacto en el router. Apenas le deja conocer lo que de proceso ha causado a CPU elevada. El mensaje HIGHCPU es similar al mensaje Cpuhog Messages, pero el mensaje HIGHCPU tiene un umbral de una tolerancia mucho más baja, en 1/10 de la cantidad de tiempo comparada a un mensaje Cpuhog Messages, es decir, medido en los milisegundos). En las versiones antes de 12.4(13) en los 2600, los procesos se ejecutaron por épocas más largas pero no generaron los mensajes porque las versiones de IOS no tenían esta mejora.

El SNMP PDU que procesa (las interrogaciones del objeto de MIB) se supone para ser realizado en un solo hora de la CPU quántum para asegurarse de que cada objeto en el PDU está extraído como si simultáneamente. Esto es un requisito impuesto por el estándar de protocolo SNMP. Algunos objetos son agregados de muchos datos en el sistema, aunque son solos objetos, allí son así pues, mucho implicado de proceso debido a la manera que se equipan. Si no abandonan el CPU, de acuerdo con de instrumentación MIB gobierna, hay una posibilidad de este mensaje de error. , Si usted sondea varios diversos objetos en el mismo grupo de objetos/tabla y consigue el mensaje de error, no es además inusual debido a esta misma razón.

Este mensaje se utiliza para identificar los objetos que utilizan más hora de la CPU que esperado (pero aún no CPUHOG). Las herramientas algún NMS/instrumentation no se comportan bien al sondear. Este problema se documenta en el Id. de bug Cisco CSCsl18139 (clientes registrados solamente).

CPU elevada debido a la encripción del software

Cuando no hay módulo de encripción por hardware instalado en el dispositivo, después todo el tráfico encriptado que viene a través del dispositivo tendrá que ser cifrado por el software. Éste es mismo uso intensivo de la CPU. No es recomendar utilizar la encripción del software para ningún despliegue del cifrado con un requerimiento del rendimiento razonable. Una opción para resolver este problema es reducir el volumen de tráfico encriptado (reencamine el tráfico o limite los flujos se cifran que). Sin embargo, la mejor manera de abordar este problema es conseguir un módulo de encripción por hardware instalado para este dispositivo que elimine la necesidad del cifrado de ocurrir a través del software.

Nota: El habilitar de las correspondencias de criptografía en el túnel/las interfaces físicas es un proceso de la consumición de la memoria y puede causar un aumento en el CPU.

CPU elevada utilización debido a la fragmentación

Los nuevos ensambles pueden conducir encima del CPU muy arriba si el CPU tiene que volver a montar un gran número de paquetes.

Para resolver problemas CPU elevada el utilización debido a la fragmentación, publique el tcp mss-ajustan el comando 1400 en la interfaz que fija el valor del Maximum Segment Size (MSS) del TCP sincroniza/de los paquetes del comienzo (SYN) que pasan a través de un router.

Comandos para obtener más información

Estos comandos brindan más información acerca del problema:

Si el router es totalmente inaccesible, primer ciclo de la potencia él. Entonces, recoja periódicamente la salida de los comandos en esta sección, a excepción del comando show log, cuyos mensajes se deben abrir una sesión un servidor de Syslog. El intervalo para recoger la salida debe ser cinco minutos. Usted puede recoger los datos manualmente o automáticamente, usando esta secuencia de comandos shell UNIX. También puede recolectar información con HTTP o SNMP. Para más información sobre configurar el HTTP y el SNMP en un router Cisco, refiera al documento sobre configuración del Cisco IOS Software.

Comando show processes cpu

Este es un ejemplo del encabezado del comando show processes cpu:

 CPU utilization for five seconds: X%/Y%; one minute: Z%; five minutes: W% 
  PID  Runtime(ms)  Invoked  uSecs    5Sec   1Min   5Min TTY Process 

Esta tabla describe los campos en la encabezado:

Campo Descripción
X Uso promedio total durante los últimos cinco segundos (interrupciones + procesos)
S Utilización media debido a interrupciones, durante los últimos cinco segundos1
Z Utilización total promedio durante el último minuto 2
W Utilización total media durante los últimos cinco minutos2
PID ID de Proceso
Tiempo de ejecución Tiempo de la CPU que usó el proceso (en milisegundos)
Llamado Se ha llamado la cantidad de veces un proceso
uSecs Microsegundos del tiempo de la CPU para cada invocación
5Seg Utilización de la CPU por tarea en los últimos cinco segundos
1Min Utilización de la CPU por tarea en los últimos 2 minutos
5 min Utilización de la CPU por la tarea en los cinco minutos más pasados2
TTY Terminal que controla el proceso
Proceso Nombre del proceso

1 utilización de la CPU en el nivel de procesamiento = X – Y.

2Los valores no representan un promedio aritmético, pero sí un promedio exponencialmente decaído. Por lo tanto, los valores más recientes tienen más influencia en el promedio calculado.

Utilice este link para obtener una explicación detallada del comando show processes cpu.

Nota: El uso total de la CPU no se debe utilizar pues una medida de la capacidad del router de conmutar más paquetes. En los Cisco 7500 Router, el Versatile Interface Processors (VIP) y la ruta/los Procesadores del switch (RSP) no señalan la utilización de la CPU Lineal. Cerca de la mitad de la energía de conmutación de paquetes por segundo viene después del 90 a 95 por ciento del uso de la CPU.

Comando show interfaces

La referencia de comandos contiene una explicación detallada del comando show interfaces.

Comando show interfaces switching

Este comando se utiliza para determinar trayectos de switching activos en interfaces. Para obtener más información sobre rutas de conmutación en el software del IOS de Cisco, consulte el documento Configuring Switching Paths (Configuración de rutas de conmutación).

Este es un ejemplo del resultado del comando show interfaces switching para una interfaz:

RouterA#show interfaces switching
 Ethernet0 
           Throttle count          0 
         Drops         RP          0         SP          0 
   SPD Flushes       Fast          0        SSE          0 
   SPD Aggress       Fast          0 
  SPD Priority     Inputs          0      Drops          0 

      Protocol       Path    Pkts In   Chars In   Pkts Out  Chars Out 
         Other    Process          0          0        595      35700 
             Cache misses          0 
                     Fast          0          0          0          0 
                Auton/SSE          0          0          0          0 
            IP    Process          4        456          4        456 
             Cache misses          0 
                     Fast          0          0          0          0 
                Auton/SSE          0          0          0          0 
           IPX    Process          0          0          2        120 
             Cache misses          0 
                     Fast          0          0          0          0 
                Auton/SSE          0          0          0          0 
 Trans. Bridge    Process          0          0          0          0 
             Cache misses          0 
                     Fast         11        660          0          0 
                Auton/SSE          0          0          0          0 
       DEC MOP    Process          0          0         10        770 
             Cache misses          0 
                     Fast          0          0          0          0 
                Auton/SSE          0          0          0          0 
           ARP    Process          1         60          2        120 
             Cache misses          0 
                     Fast          0          0          0          0 
                Auton/SSE          0          0          0          0 
           CDP    Process        200      63700        100      31183 
             Cache misses          0 
                     Fast          0          0          0         0 
                Auton/SSE          0          0          0          0 

El resultado enumera los trayectos de conmutación para todos los protocolos configurados en la interfaz de manera que Usted pueda ver qué tipo y qué cantidad de tráfico pasa a través del router. Esta tabla explica los campos de salida.

Campo Definición
Proceso Paquetes procesados. Pueden ser paquetes destinados al router, o paquetes para los cuales no había entrada en la memoria caché de fast switching.
No se encuentra la memoria caché Paquetes sin entrada en memoria caché de fast switching. El primer paquete para este destino (o flujo - dependiendo del tipo de fast switching configurado) será procesado. Todos los paquetes subsecuentes serán procesados por fast switching, a menos que éste último esté explícitamente inhabilitado en la interfaz saliente.
Rápido Paquetes de conmutación rápida. Fast Switching está habilitado de forma predeterminada.
Auton/SSE Paquetes de conmutación autónoma, conmutación de silicio o de conmutación distribuida. Disponible solamente en los Cisco 7000 Series Router con un Procesador del switch o un procesador del switch de silicio (para el Autonomous Switching o el Silicon Switching, respectivamente), o en los Cisco 7500 Series Router con un VIP (para el Distributed Switching).

Commando show interfaces stat

Este comando es una versión resumida del comando show interfaces switching. Éste es un ejemplo de resultado de una interfaz:

 RouterA#show interfaces stat
 Ethernet0 
           Switching path    Pkts In   Chars In   Pkts Out  Chars Out 
                Processor      52077   12245489      24646    3170041 
              Route cache          0          0          0          0 
        Distributed cache          0          0          0          0 
                    Total      52077   12245489      24646    3170041 

La salida del comando show interfaces stat varía para las distintas plataformas, según los trayectos de conmutación configurados y disponibles.

show ip nat translations

El comando show ip nat translations visualiza las traducciones del Network Address Translation (NAT) activas en el router. Cada traducción activa genera las interrupciones CPU y tiene un impacto en el uso total de la CPU del router. Un gran número de traducciones pueden tener un impacto del rendimiento en el router.

Esta es una salida de muestra del comando show ip nat translations:

     router#show ip nat translations
     Pro Inside global    Inside local    Outside local    Outside global
     --- 172.16.131.1     10.10.10.1      ---              ---

Comando show align

Este comando está disponible sólo en las plataformas basadas en procesadores de computadoras con conjunto de instrucciones reducido (RISC). En estas plataformas, la CPU puede corregir las escrituras o lecturas de memoria alineadas incorrectamente. Ésta es una cierta salida de muestra:

 Alignment data for: 
 4500 Software (C4500-DS40-M), Version mis-aligned RELEASE SOFTWARE (fc1) 
 Compiled Tue 31-Mar-98 15:05 by jdoe

 Total Corrections 33911, Recorded 2, Reads 33911, Writes 0 

 Initial Initial 
 Address Count Access Type Traceback 
 40025F4D 15561 16bit read 0x606F4A7C 0x601C78F8 0x6012FE94 0x600102C0 
 40025F72 18350 32bit read 0x606FB260 0x6013113C 0x600102C0 0x60010988 

Comando show version

A fin de rastrear problemas de alta utilización de la CPU, la parte importante del resultado de este comando es la versión de software del IOS de Cisco, la plataforma, el tipo de CPU y el tiempo de actividad del router. La referencia de comandos brinda una explicación detallada del comando show versión.

Comando show log

Este comando muestra el contendido de los mensajes de registro almacenados en la memoria intermedia. Para más información sobre los mensajes del sistema de registro, consulte la sección Mensajes de error del sistema de registro en la guía de configuración Resolución de problemas del Router.

Secuencia de comandos shell UNIX para recolección periódica de datos

Este apéndice describe una secuencia de comandos simple para la captura periódica de datos desde el router. La línea más importante de la secuencia de comandos es ésta:

  (echo "show version") | telnet 192.168.1.1

El comando entre paréntesis se ejecuta en el sub-shell y la salida se envía a una sesión telnet. SRC_invalid

     #!/opt/local/bin/bash

     ########################################### 
     # Router's IP address 
     # 
     IP_ADDRESS='10.200.40.53' 
       

     # Directory where the log files will be stored 
     # 
     DIR=/var/log/router 

     ######################################## 

     if [ ! -e $DIR ] 
     then 
       mkdir $DIR 
     fi 

     # Tag specification: mmddhhmm 
     DATE=`date +'%m%d'` 
     TIME=`date +'%H%M'` 
     TAG=$DATE$TIME 

     # Collect data from the router 
     (echo "foo";\ 
     echo "bar";\ 
     echo "term len 0";\ 
     echo "show version";\ 
     echo "show processes cpu";\ 
     echo "term len 15";\ 
     echo "show memory summary";\ 
     echo "q";\ 
     sleep 30)|telnet $IP_ADDRESS > $DIR/info.$TAG 2>$DIR/info.$TAG.msg 

Nota: En este script todos los datos, incluyendo la contraseña, se envían en un formato de texto claro.

En la primera sección, debe especificar la dirección IP y el directorio de destino para los archivos de registro. La segunda sección incluye los comandos reales que se envían al router. El primer es el nombre de usuario, entonces la contraseña, y así sucesivamente. Se incluye un truco para capturar sólo las primeras líneas del resultado de ciertos comandos. Terminal length está configurado en un valor corto (15 en este caso) y el caracter "q" sólo es enviado por solicitud.

Si la información se recolecta periódicamente, el resultado de show version muestra si el problema es periódico, por ejemplo, si siempre aparece a la misma hora o en el mismo día de la semana. Si usted necesita recoger la salida de los comandos more, pueden ser agregados al script de la misma manera que ésos mostrados en el ejemplo. Si necesita truncar el resultado enviado al archivo, primero incremente el periodo de inactividad (el comando sleep entre paréntesis).

Ejecute este script cada cinco minutos si CPU elevada el problema de utilización aparece a menudo y no dura de largo. Si no, usted puede ejecutarlo cada 15 o 30 minutos. Para la facilidad de empleo, salve el script en un archivo tal como /usr/bin/router-script. Entonces, ejecutarlo cada cinco minutos, agregue la siguiente línea al archivo de /etc/crontab:

     */5       *       *       *       *       /usr/bin/router-script

Recomience al servidor cron. Si no tiene la autoridad para cambiar el archivo /etc/crontab, ejecute la secuencia de comandos en un proceso separado de la siguiente manera:

     while [ 1 ]; do ./router-script ; sleep 300; done &

Discusiones relacionadas de la comunidad de soporte de Cisco

La Comunidad de Soporte de Cisco es un foro donde usted puede preguntar y responder, ofrecer sugerencias y colaborar con colegas.


Información Relacionada


Document ID: 15095