Quais são os estados CLOSE_WAIT e TIME_WAIT?

150

Quando faço netstat -a na minha máquina Windows, obtenho uma listagem das portas com um dos quatro estados:

- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED

O que CLOSE_WAIT e TIME_WAIT significam / indicam?

    
por Lazer 08.08.2010 / 21:23

3 respostas

161

Devido à maneira como o TCP / IP funciona, as conexões não podem ser fechadas imediatamente. Os pacotes podem chegar fora de ordem ou ser retransmitidos após a conexão ter sido fechada. CLOSE_WAIT indica que o terminal remoto (outro lado da conexão) fechou a conexão. TIME_WAIT indica que o terminal local (este lado) fechou a conexão. A conexão está sendo mantida de forma que qualquer pacote atrasado possa ser correspondido à conexão e manipulado apropriadamente. As conexões serão removidas quando terminarem dentro de quatro minutos. Consulte o link para obter mais detalhes.

    
por 08.08.2010 / 21:42
27

Basicamente, os estados "WAIT" significam que um lado fechou a conexão, mas a confirmação final do fechamento está pendente.

Ver, por exemplo, este diagrama de estados TCP para detalhes:

link

    
por 08.08.2010 / 21:44
0

TIME_WAIT representa aguardar tempo suficiente para garantir que o TCP remoto recebeu o ACK de sua solicitação FIN. Vejo en.wikipedia.org/wiki/Transmission_Control_Protocol (e também o RFC 793)

    
por 20.05.2016 / 13:39