以下のシナリオで、TIME_WAIT のソケットがセグメントを受信するとどうなるか
- a) 紛失 ACK を受信した場合
- b) 送信ノードが、サーバー上の同じ src_ip:src_port を使用して、サーバーが既に TIME_WAIT ソケットを持っている同じ dst_ip:dst_port に別の新しい接続を確立したい場合。
無視/ドロップするか、リセットを送信するか、TIME_WAIT ソケットを再利用しますか?
ありがとう
M
[OK] もう少し掘り下げて本 [43 ページ] 'Unix Network Programming' を読んだ後、ようやく自分の質問の何が問題なのかを突き止めました (自分の質問に答えて)。
a) 'Active-Closer' は、TIME_WAIT 状態にある間、失われた/さまよっている FIN に ACK を再送信します (この状態では ACK を期待していません [リンク] http://upload.wikimedia.org/wikipedia/ commons/5/55/TCP_CLOSE.svg )
b) TCP は、TIME_WAIT 状態にある接続の新しい具体化を開始しません。(どのようにそれを防ぐのか、つまり、その接続をリセットするのか、どうすればtcpdumpを読んでこれを理解できるのか、まだわかりません)
a) 紛失 ACK を受信した場合
何もない。
b) 送信ノードが、サーバー上の同じ src_ip:src_port を使用して、サーバーが既に TIME_WAIT ソケットを持っている同じ dst_ip:dst_port に別の新しい接続を確立したい場合。
何もない。
これらのケースはどちらもあなたの肩書に対応していません。