GNU/Linux >> Tutoriales Linux >  >> Cent OS

¿Por qué la salida "netstat" muestra muchas conexiones en estado CLOSE_WAIT?

Esta publicación proporcionará detalles sobre las conexiones TCP que informan estados 'CLOSE_WAIT'. Los valores de estado posibles para los sockets TCP son los siguientes:

ENLACE         Encuadernado, listo para conectarse o escuchar.
CERRADO        Cerrado. El zócalo no se está utilizando.
CIERRE       Cerrado, luego apagado remoto; esperando reconocimiento.
CLOSE_WAIT    Apagado remoto; esperando a que se cierre el socket.
ESTABLECIDO   Se ha establecido la conexión.
FIN_WAIT_1    Socket cerrado; cerrando la conexión.
FIN_WAIT_2    Socket cerrado; esperando el apagado desde el control remoto.
INACTIVIDAD          Inactivo, abierto pero no encuadernado.
ÚLTIMO_ACK      Apagado remoto, luego cerrado; esperando reconocimiento.
ESCUCHA        Escuchando conexiones entrantes.
SYN_RECIBIDO  Activa/iniciar sincronización recibida y conexión en curso
SYN_SENT      Intentando activamente establecer conexión.
TIEMPO_ESPERA     Espere después del cierre para la retransmisión de apagado remoto.

'CLOSE_WAIT ‘ estado significa que el otro extremo de la conexión se ha cerrado mientras que el extremo local todavía está esperando que se cierre la aplicación.

Detalles

El estado 'CLOSE_WAIT' en las conexiones tcp ocurre si el sistema no ha recibido una llamada de cierre del sistema de la aplicación, después de haber recibido una notificación (paquete 'FIN') del otro sistema de que ha cerrado su punto final. En otras palabras, significa que el extremo local de la conexión ha recibido "FIN" del otro extremo, pero el sistema operativo está esperando que el programa en el extremo local realmente cierre su conexión.

El problema es que un programa que se ejecuta en la máquina local no cierra el socket. No es un problema de ajuste de TCP. Una conexión puede permanecer en 'CLOSE_WAIT' para siempre mientras el programa mantiene abierta la conexión. Entonces, principalmente este problema ocurre debido a un error de la aplicación. Sin embargo, si los parámetros TCP/IP no se configuran correctamente, las conexiones TCP/IP cerradas permanecerán durante mucho tiempo en varios estados 'CERRADOS' que toman los descriptores de archivo del proceso. Para solucionar este problema, a veces es necesario ajustar los parámetros TCP/IP en /etc/sysctl.conf (como los parámetros net.ipv4.tcp_xxx), para que las conexiones TCP/IP se cierren en un corto período de tiempo. .


Cent OS
  1. ¿Por qué sale esta canalización de shell?

  2. ¿Por qué git falla al empujar/buscar con demasiados archivos abiertos?

  3. ¿Por qué la salida de algunos programas de Linux no va ni a STDOUT ni a STDERR?

  4. ¿Por qué YaST ahora muestra líneas como lqqqqqqqqqqqqqqq?

  5. ¿Por qué clang genera texto ininteligible cuando se redirige?

¿Por qué la sustitución de comandos de Shell engulle un carácter de nueva línea final?

¿Por qué `less` no muestra la salida en negrita?

¿Por qué el medidor Htop muestra>90 % mientras que la tabla es 0,0 %?

¿Cómo verifico cuántas conexiones HTTP están abiertas actualmente?

¿Por qué netstat está en desuso?

¿Por qué top muestra una cantidad diferente de núcleos que cpuinfo?