¡Te damos la bienvenida al nuevo sysarmy --help! Para recuperar tu usuario pedí un password reset.

Eliminar conexiones en estado CLOSE_WAIT Windows

Excesiva cantidad de conexiones con este estado... ¿como eliminarlas?

La máquina no logra recibir conexiones TCP.

Respuestas

  • TL;DR: no se pueden eliminar, salvo tuneando los timeouts a nivel TCP, que no tengo idea si en Windows se puede, pero seguramente alguien más sabe y va a contestar.

    Versión larga: CLOSE_WAIT es un estado válido de conexión TCP. Te está indicando que del otro lado se recibió un FIN, y el socket (de este lado) está a la espera que la aplicación (local) lo cierre como corresponde. Es responsabilidad de la aplicación que abrió/controla el socket cerrarlo como corresponde y liberar esa conexión.

    No recuerdo mucho las flags en Windows de netstat, pero si son las mismas que en un UNIX:

    # netstat -tulpan

    Te debería mostrar (entre otro montón de cosas) los CLOSE_WAIT, y darte un indicio de qué aplicación los tiene asociados. El punto final de todo esto es que la aplicación probablemente esté andando mal si estos CLOSE_WAIT no se reciclan por un tiempo considerable. Aplicaciones mal hechas pueden nunca reciclar las conexiones (o hacerlo sólo con alineación de al menos 5 planetas del sistema solar y 2 de la galaxia más cercana mediante) y te puede estar haciendo hitear este problema, en cuyo caso deberías tirarle el balurdo al desarrollador/proveedor.

    Más info sobre el cierre de conexiones TCP: https://en.wikipedia.org/wiki/Transmission_Control_Protocol#Connection_termination

    O ya que estamos con MS: https://blogs.technet.microsoft.com/janelewis/2010/03/09/explaining-close_wait/
Este hilo ha sido cerrado.