- 締切済み
snifferデータ(TCP)について
教えてください。 snifferデータで 『TCP:Retransmitted in frame 』と表示されますが、 この意味は何なのでしょうか? シーケンス番号で確認すると、その後同じフレームが 送信されてます。 2回目のフレームは『TCP:Retransmitted in frame 』が 表示されてませんでした。 TCPでの再送されていると思うのですが。。。 『TCP:Retransmitted in frame 』の後に 172 Byte of dataとも表示されておりますが、 実際のデータは206Byteです。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- donbay312
- ベストアンサー率45% (92/203)
>私の記憶では、ICMPは優先度が低いのでTCPが再送しているのであれば、ICMPもこぼしていいはず? 確かにIPの教科書等にはそのように書かれていたりしますが、「どういうときに何をこぼすか」 はネットワーク機器の設定によって変わってきます。(余談ですが、Ciscoのルーターでもイン ターフェースの種類によって、デフォルトのパケット処理順序は異なっています) ですのでTCPパケットがこぼされるのなら先にICMPがこぼされているはず、とは言い切れません。 また、これは輻輳時処理の話ですので、パケットがこぼれた原因がネットワークの混雑でない 可能性もあり得ます。(FireWallやスイッチに設定されたパケットフィルタ処理とか) 相手サーバーとの間にどのようなネットワーク機器がどのくらいあるのかはわかりませんが、 通信する2台の装置間に2台のSnifferを設置して同時にキャプチャし、どのネットワーク機器を 越えたときにパケットがこぼされたのかを突き詰めていく方法が(地道な作業ですが)あります。
- donbay312
- ベストアンサー率45% (92/203)
こんにちは。 Retransmittedは再送ということですね。 『TCP:Retransmitted in frame 』と表示されているフレームは、質問者さんが 見つけたとおり、この後に同じシーケンス番号のフレームが見つかったために そのように表示されているものと思います。 2回目のフレームに『TCP:Retransmitted in frame 』が表示されていないのは 質問者様がキャプチャした範囲内では3度目の再送が見つからなかったからだと 思います。 「一つ目のフレームと同一のフレームがこの後にもあるよ」と言うことを示して いるのが『TCP:Retransmitted in frame 』という表示であり、二つ目のフレームが 更に(3度目)再送されていることを検知できなかった場合には二つ目のフレームに 『TCP:Retransmitted in frame 』の表示は現れなかったはずです。 (マニュアルを確認していないのでちょっとうろ覚えですが) 実際の可能性としては、 ・2度目の再送の後、相手先からのackがありTCPのシーケンスが進んだ。 ・2度目の再送の後、TCPアプリケーションの中断、停止、バグなどでその先の TCP処理が停まった。 ・2度目の再送の後も実は再送が繰り返されていたが、キャプチャを停めた ためキャプチャデータ内にたまたま3度目の再送をSnifferが検知できなかった。 などが挙げられると思います。 また、実際のデータとおっしゃっているのがキャプチャデータのどこの表示をおっし ゃっているのか不明ですが、下記を混同されている可能性はないですか? ・IPパケット長 ・Etherパケット(データグラム)長 (Ethernetの場合)
補足
ありがとうございます。 図々しいですが、もう一点だけ確認させて頂きたく。 確かに再送後に相手先からのackがあり、TCPのシーケンスが進んでおります。 しかし、どうしても腑に落ちないのが、そのTCP再送の前後で apriの関係により、Pingによる死活監視(約1秒間隔)を行っているのですが、その前後でICMPを取りこぼしておりません。 その症状が多発しております。 私の記憶では、ICMPは優先度が低いのでTCPが再送しているのであれば、ICMPもこぼしていいはず? 相手側のサーバ付近で採取したキャプチャデータを確認すると、最初のTCPパケットが届いてないので、どこかのスイッチでドロップしているのでしょうか? 全て確認できておりませんが、PortのInterfaceを確認しても、特に目立ったエラーが無かったので。。。 他に考えられる要因ってあるのでしょうか?
お礼
ありがとうございました。 大変助かりました。 現地で確認してきたいと思っております。 本当にありがとうございましたm(_ _)m