El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe el contador de errores "desbordamiento" y cómo investigar problemas de rendimiento o de pérdida de paquetes en la red. Un administrador puede detectar errores notificados en el resultado del comando show interface en el Adaptive Security Appliance (ASA).
No hay requisitos específicos para este documento.
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
El contador de errores de la interfaz ASA "desbordamiento" hace un seguimiento del número de veces que se recibió un paquete en la interfaz de red, pero no había espacio disponible en la cola FIFO de la interfaz para almacenar el paquete. Por lo tanto, el paquete se descartó. El valor de este contador se puede ver con el comando show interface.
Ejemplo de salida que muestra el problema:
ASA# show interface GigabitEthernet0/1 Interface GigabitEthernet0/1 "inside", is up, line protocol is up Hardware is i82546GB rev03, BW 1000 Mbps, DLY 10 usec Full-Duplex(Full-duplex), 1000 Mbps(1000 Mbps) Input flow control is unsupported, output flow control is off MAC address 0026.0b31.0c59, MTU 1500 IP address 10.0.0.113, subnet mask 255.255.0.0 580757 packets input, 86470156 bytes, 0 no buffer Received 3713 broadcasts, 0 runts, 0 giants 2881 input errors, 0 CRC, 0 frame, 2881 overrun, 0 ignored, 0 abort 0 pause input, 0 resume input 0 L2 decode drops 905828 packets output, 1131702216 bytes, 0 underruns 0 pause output, 0 resume output 0 output errors, 0 collisions, 0 interface resets 0 late collisions, 0 deferred 0 input reset drops, 0 output reset drops, 0 tx hangs input queue (blocks free curr/low): hardware (255/230) output queue (blocks free curr/low): hardware (255/202)[an error occurred while processing this directive]
En el ejemplo anterior, se observaron 2881 desbordamientos en la interfaz desde que el ASA arrancó o desde que el comando clear interface se ingresó para borrar los contadores manualmente.
Los errores de desbordamiento de la interfaz generalmente son causados por una combinación de estos factores:
Los pasos para solucionar y solucionar este problema son:
La plataforma ASA procesa todos los paquetes en el software y utiliza los núcleos de CPU principales que manejan todas las funciones del sistema (como syslogs, conectividad Adaptive Security Device Manager e Inspección de aplicaciones) para procesar los paquetes entrantes. Si un proceso de software retiene la CPU durante más tiempo del que debería, el ASA registra esto como un evento de bloqueo de la CPU desde que el proceso "acaparó" la CPU. El umbral de bloqueo de CPU se establece en milisegundos y es diferente para cada modelo de dispositivo de hardware. El umbral se basa en el tiempo que podría tomar llenar la cola FIFO de la interfaz dada la potencia de la CPU de la plataforma de hardware y las tasas de tráfico potenciales que el dispositivo puede manejar.
Las fallas de la CPU a veces causan errores de desbordamiento de la interfaz en los ASA de un solo núcleo, como los 5505, 5510, 5520, 5540 y 5550. Los cerdos largos, que duran 100 milisegundos o más, pueden hacer que se produzcan desbordamientos para niveles de tráfico relativamente bajos y tasas de tráfico sin ráfagas. El problema no afecta tanto a los sistemas de varios núcleos, ya que otros núcleos pueden retirar paquetes de un anillo Rx si uno de los núcleos de CPU se acapara por un proceso.
Un atasco que dura más del umbral del dispositivo hace que se genere un syslog con el id 711004, como se muestra aquí:
6 de febrero de 2013 14:40:42: %ASA-4-711004: La tarea se ejecutó durante 60 ms, Proceso = ssh, PC = 90b0155, Pila de llamadas = 6 de febrero de 2013 14:40:42: %ASA-4-711004: La tarea se ejecutó durante 60 ms, Proceso = ssh, PC = 90b0155, Pila de llamadas = 0x090b0150x090bf3b6 0x090b3b84 0x090b3f6e 0x090b 4459 0x090b44d6 0x08c46fcc 0x09860ca0 0x080fad6d 0x080efa5a 0x080f0a1c 0x080692 2 quáter
El sistema también registra los eventos de bloqueo de CPU. La salida del comando show proc cpu-hog muestra estos campos:
Este ejemplo muestra la salida del comando show proc cpu-hog:
ASA#
show proc cpu-hog
Process: ssh, PROC_PC_TOTAL: 1, MAXHOG: 119, LASTHOG: 119 LASTHOG At: 12:25:33 EST Jun 6 2012 PC: 0x08e7b225 (suspend) Process: ssh, NUMHOG: 1, MAXHOG: 119, LASTHOG: 119 LASTHOG At: 12:25:33 EST Jun 6 2012 PC: 0x08e7b225 (suspend) Call stack: 0x08e7b225 0x08e8a106 0x08e7ebf4 0x08e7efde 0x08e7f4c9 0x08e7f546 0x08a7789c 0x095a3f60 0x080e7e3d 0x080dcfa2 0x080ddf5c 0x0806897c CPU hog threshold (msec): 10.240 Last cleared: 12:25:28 EST Jun 6 2012 ASA#[an error occurred while processing this directive]
El proceso ASA SSH mantuvo la CPU durante 119 ms el 6 de junio de 2012 a las 12:25:33 EST.
Si los errores de desbordamiento aumentan continuamente en una interfaz, verifique el resultado del comando show proc cpu-hog para ver si los eventos de agrupamiento de CPU se correlacionan con un aumento en el contador de desbordamiento de la interfaz. Si encuentra que los cerdos de la CPU contribuyen a que la interfaz sobrecargue errores, es mejor buscar errores con el Bug Toolkit, o plantear un caso con el Cisco TAC. El resultado del comando show tech-support también incluye el resultado del comando show proc cpu-hog.
En función del perfil de tráfico, el tráfico que fluye a través del ASA podría ser demasiado para que se maneje y podrían producirse desbordamientos.
El perfil de tráfico consta de (entre otros aspectos):
Estas funciones de ASA se pueden utilizar para identificar el perfil de tráfico en el ASA:
Una ráfaga de paquetes que llegan a la NIC podría hacer que la FIFO se llene antes de que la CPU pueda retirar los paquetes de ella. Por lo general, no se puede hacer mucho para resolver este problema, pero se puede mitigar mediante el uso de QoS en la red para suavizar las ráfagas de tráfico o el control de flujo en el ASA y los puertos de switch adyacentes.
El control de flujo es una función que permite a la interfaz de ASA enviar un mensaje al dispositivo adyacente (por ejemplo, un switchport) para indicarle que deje de enviar tráfico durante un breve período de tiempo. Lo hace cuando la FIFO alcanza una cierta marca de agua alta. Una vez que se ha liberado cierta cantidad de FIFO, el ASA NIC envía una trama de reanudación y el switchport continúa enviando tráfico. Este enfoque funciona bien porque los puertos de switch adyacentes normalmente tienen más espacio de búfer y pueden hacer un mejor trabajo de almacenamiento en búfer de paquetes en la transmisión que el ASA en la dirección de recepción.
Puede intentar habilitar capturas en el ASA para detectar microrráfagas de tráfico, pero normalmente esto no es útil, ya que los paquetes se descartan antes de que el ASA los pueda procesar y agregar a la captura en la memoria. Un sniffer externo se puede utilizar para capturar e identificar la ráfaga de tráfico, pero a veces el sniffer externo también puede ser abrumado por la ráfaga.
La función de control de flujo se agregó al ASA en la versión 8.2(2) y posteriores para las interfaces 10GE, y en la versión 8.2(5) y posteriores para las interfaces 1GE. La capacidad de habilitar el control de flujo en las interfaces ASA que experimentan desbordamientos demuestra ser una técnica eficaz para evitar que se produzcan caídas de paquetes.
Refiérase a la función de control de flujo en la Referencia de Comandos de Cisco ASA 5500 Series, 8.2 para obtener más información.
(Diagrama de la presentación en directo de Andrew Ossipov BRKSEC-3021)
Tenga en cuenta que "control de flujo de salida está activado" significa que el ASA envía tramas de pausa de control de flujo a la interfaz ASA hacia el dispositivo adyacente (el switch). "El control de flujo de entrada no es compatible" significa que el ASA no admite la recepción de tramas de control de flujo del dispositivo adyacente.
Configuración de Ejemplo de Control de Flujo:
interface GigabitEthernet0/2
flowcontrol send on
nameif DMZ interface security-level 50 ip address 10.1.3.2 255.255.255.0 ![an error occurred while processing this directive]