ネットワーク

netstatの状態

項目

説明

CLOSED

図の一番上(と一番下)にあるCLOSEDは、netstatでは表示されない。未使用もしくは使用済みのTCB(Transmission Control Block。TCPの各接続の内部状態を保存しているデータ構造)がこれに該当する。

LISTEN

パッシブ・オープンで、待ち受け状態(リッスン状態)になっていることを表す。アクティブ・オープンのSYNを受けて「SYN_RECEIVED」へ遷移する。

SYN_RECEIVED

アクティブ・オープンのSYNに対してACKとSYNで応答し、それに対するACKを待っている状態。ACKを受信すると「ESTABLISHED」へ遷移する。

SYN_SENT

アクティブ・オープンで、SYNを送信した状態。SYNとACKを受信すれば、ACKを送信して「ESTABLISHED」へ遷移する。

ESTABLISHED

TCP接続が確立した状態。データの送受信を行うことができる。FINを受けたり、上位アプリケーションからクローズが呼び出されたりすると、クローズ処理へ遷移する。

FIN_WAIT_1

アクティブ・クローズの最初の段階。FINを送信して、それに対する応答を待っている状態。

FIN_WAIT_2

送信したFINに対するACKを受け取った状態。送信側のクローズ処理が終了し、相手からのFINを受信するのを待っている状態。

CLOSING

アクティブ・クローズでFINを送信した後、ACKが戻ってくるよりも先に、相手からもFINを受けた状態。両方でほぼ同時にアクティブ・クローズ処理を開始するとこの状態になる。送信したFINのACKを待って、「TIME_WAIT」へ遷移する。

TIME_WAIT

「CLOSING」でACKを受けた状態。アクティブ・クローズ後のタイムアウト待ち状態。同じシーケンス番号やポート番号などを再利用しないように、しばらく待ってから(ネットワーク上で遅れていたパケットがこの時間内に到着する可能性があるので、それと衝突しないように待つ)、「CLOSED」へ遷移して終了する。

CLOSE_WAIT

パッシブ・クローズの状態。送信側にFINを送信して「LAST_ACK」へ遷移する。

LAST_ACK

「CLOSE_WAIT」で送信したFINに対するACKを待つ状態。ACKの受信後、「CLOSED」へ遷移する。

http://www.atmarkit.co.jp/ait/articles/0402/13/news096_2.html