199 votes

Quels sont les états CLOSE_WAIT et TIME_WAIT ?

Lorsque je fais netstat -a sur ma machine Windows, j'obtiens une liste des ports avec l'un des quatre états suivants :

- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED

Que signifient/indiquent les états CLOSE_WAIT et TIME_WAIT ?

224voto

DisgruntledGoat Points 21368

En raison du fonctionnement du TCP/IP, les connexions ne peuvent pas être fermées immédiatement. Les paquets peuvent arriver dans le désordre ou être retransmis après que la connexion a été fermée.

  • CLOSE_WAIT indique que l'extrémité distante (l'autre côté de la connexion) a fermé la connexion.
  • TIME_WAIT indique que l'extrémité locale (ce côté-ci) a fermé la connexion.

La connexion est maintenue afin que les paquets retardés puissent être associés à la connexion et traités de manière appropriée. Les connexions seront supprimées lorsqu'elles expireront après quatre minutes. Voir http://en.wikipedia.org/wiki/Transmission_Control_Protocol pour plus de détails.

36voto

sherbang Points 2675

En gros, les états "WAIT" signifient qu'un côté a fermé la connexion mais la confirmation finale de la fermeture est en attente.

Voir par exemple ce diagramme des états TCP pour plus de détails :

https://en.wikipedia.org/wiki/File:Tcp_state_diagram_fixed.svg

2voto

Adam Bilinski Points 794

TIME_WAIT représente l'attente suffisante pour être sûr que le TCP distant a reçu l'ACK de sa demande de FIN. Voir fr.wikipedia.org/wiki/Transmission_Control_Protocol (et aussi RFC 793)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X