2012年12月9日日曜日

TCP Zerowindow による通信断 その②

前回の記事にもアップしたように、TSMアプリケーション側のタイムアウト値を延ばすことで回避しました。

タイムアウト値が60秒だったところを、600秒にしています。

その結果、以下に示すように通信断が発生しそうにはなりますが、なんとか持ちこたえることができるようになっています。


受信サーバ側からTCP ZeroWindowが192.168.1.55から出ます。

これは、受信側のバッファがいっぱいで受けられないという状況になっていることを示唆しています。


その後、192.168.1.10からTCP ZeroWindow Probeが出ています。

これは、送信側が受信側へバッファに余裕ができたかチェックをしています。


このチェックに対して、192.168.1.55からはTCP ZeroWindowAckを返答しています。

これは、受信側がまだ無理であると回答しているということです。


このやりとりが続き、

192.168.1.55から、TCP ZeroWindow Update を出して受信側のバッファがOKにになりましたよ、と通知しています。

待った甲斐がありましたということです。その後受信開始。



NO Time Source Dest TCP備考
3201 20:19:05 192.168.1.10 192.168.1.55 TCP 1460 byte
3202 20:19:05 192.168.1.55 192.168.1.10 TCP Zerowindow
3203 20:19:06 192.168.1.10 192.168.1.55 TCP ZerowindowProbe
3204 20:19:06 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3205 20:19:07 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 1秒後に確認
3206 20:19:07 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3207 20:19:09 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 2.5秒後に確認
3208 20:19:09 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3209 20:19:14 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 5秒後に確認
3210 20:19:14 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3211 20:19:24 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 10秒後に確認
3212 20:19:24 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3232 20:19:43 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 20秒後に確認
3233 20:19:43 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3269 20:20:21 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 40秒後に確認
3270 20:20:21 192.168.1.55 192.168.1.10 TCP ZerowindowAck
3282 20:21:38 192.168.1.10 192.168.1.55 TCP ZerowindowProbe 80秒後に確認
3283 20:21:38 192.168.1.55 192.168.1.10 TCP Zerowindow Update ※受信OKになった!!








このエントリーをはてなブックマークに追加