web-dev-qa-db-ja.com

WireSharkがこのフレームをTCP再構成されたPDUのセグメントである)と考える理由

小さなpcapファイルを見つけてください ここ 私の問題を説明しています。

私は3方向TCPハンドシェイクと、それに続く2つのFIXログオンがあります。FIXは取引で使用されるプロトコルです。)最初のFIXログオン(フレーム4)はWireSharkによって正しく解釈および解析されます、ただし2回目のログオン(フレーム6)はTCP segment of a reassembled PDUとして解釈されます。

ただし、フレーム6はではありませんa TCP再構成されたPDUのセグメントです。これには完全なTCP FIXログオンとして解釈および解析する必要があるPDUシーケンス番号、ACK番号、IP合計長などがすべて適切であることを確認しました。

フレーム6がTCP再構成されたPDUのセグメントとして解釈されるのはなぜですか?

9
Randomblue

ホストの番号を.76と.67にすると、少し面倒です。

Wiresharkは、フレーム6を「再構成されたPDUのTCPセグメント」と呼んでいます。これは、10.10.10.67のTCP実装がペイロードなしのACK(「ネイキッド」ACK)の送信ではなく、フレーム6で送信されるペイロードとフレーム5でのACKを含めます(これはOS/IPスタック依存の動作です)。これは、TCP =ペイロードを複数のTCP=セグメントからFIXディスセクタに渡すためのディセクタ。何らかの理由で、FIXディセクタはフレーム6を解釈していません。

TCPディセクタのオプションで[サブディセクタにセグメント分割を許可するTCPストリーム]オプションをオフにすると、Wiresharkがこれを異なる方法で解釈することがわかります。

Wireshark screenshot

これが 同じことについて、wireshark-usersリストからの議論 です。

15
Evan Anderson