8月16日(月)2コマ目

今日、やったこと

パケット解析(TCPヘッダ)

今日のホワイトボード

コネクション確立からデータのやり取りまでの16個のパケットを解析しました。


パケット①、②

ともにコントロールフラグのSYNビットが1のため、コネクション確立要求です。

コネクション確立要求ではシーケンス番号の初期値(0相当の値)を通知します。

ということで、シーケンス番号は実は0から始まるわけではないです。

また、TCPヘッダのオプションで最大受信セグメント長を通知します。

TCPはこのサイズ以上のデータを送信する際は、データを分割して、複数のパケットで送信します。

図 パケット①、②

パケット②、③

ともにコントロールフラグのACKビットが1です。(このあとのパケットもACK=1)

ACK=1は確認応答番号が有効であることを表します。

図 パケット②、③

ちなみに、パケット①から③まででコネクション確立を行っています。


パケット④、⑤

172.16.4.253から172.16.8.11へ連続してデータを送信しています。

パケット④のデータサイズは1460バイトですが、これは最大受信セグメント長と同じです。

送信データサイズが最大受信セグメント長より大きいため、一旦1460バイトで区切って送信しています。

図 パケット④、⑤

パケット⑥、⑦

パケット④、⑤に対する受信応答です。

図 パケット⑥、⑦(④、⑤も)

パケット⑧、⑨

パケット⑧でデータを受信したため、パケット⑨は受信応答です。が、データも一緒に送信しています。

図 パケット⑧、⑨

受信応答をしつつ、データを送信することをピギーバックと呼びます。

ピギーバックとは、ピギー(piggy:豚)を売りに行く際、背中(バック:back)に一緒に売る野菜等を載せていくことから、ついでに一緒になにかすることをピギーバックと呼びます。


このあとのパケットも同じようにデータを送信する、受信応答を返信するの繰り返しです。

次回はこれを使って新ネタをやります。

 

コメント

このブログの人気の投稿

8月18日(水)1コマ目

6月7日(月)2コマ目

5月31日(月)2コマ目