人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

TCP擬似ヘッダの質問です。
データが送信される時、TCPヘッダがデータに付いた後に、IPヘッダが付くというのが私の理解なのですが、@ITによると、TCP擬似ヘッダに用いるIPアドレス情報はIPヘッダから抜き出す、とありました。
@ITの説明に従うと、TCPヘッダより、IPヘッダが先に、生成されていないと駄目な気がします。
私の理解の何処が間違っているか、ご指摘ください。
参照URL
http://www.atmarkit.co.jp/fwin2k/network/baswinlan015/baswinlan015_02.html

●質問者: takoma
●カテゴリ:コンピュータ インターネット
✍キーワード:@IT IP IPアドレス TCP URL
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tadashi0805
●20ポイント

おそらく釈然としないのは、TCP層ではまだIP層の処理に行っていく、IPヘッダもわからないはずなのに、どうしてTCP層でIPヘッダの内容が参照できるのかってところだと思います。

が、少なくともIPアドレス(自分、相手とも)の情報は、IP層ではじめてわかる情報ではなくて、TCP層に入ってきた時点で、すでに確定している情報です。それがIP層へも引き続き渡っているイメージです。

相手先IPアドレスは、アプリケーション層で接続先を指定する時点で既に決まっています。

自IPアドレスも、自身のルーティング情報によって、相手先IPアドレスと通信するためにはどのNIC(複数ある場合)から発信されるのかが確定して、IPアドレスが決まります。これがTCP層へ渡されるのです。

http://www.f4.dion.ne.jp/~adem/rfc/rfc793.euc.txt

◎質問者からの返答

返信遅れてすいません。

ご説明ですと、擬似ヘッダはIPヘッダの情報を使っていないとういことになると思うのですが、そうすると@ITの情報が違うのでしょうか…?もう少し考えて見ます。


2 ● JULY
●50ポイント ベストアンサー

おそらく、パケットの組み立て方で、送るべきデータを内側から順に「くるむ」ようにヘッダが作られるイメージを持たれているからではないでしょうか。

送るべきデータが最初にあって、そのデータを TCP でくるみ、さらに IP でくるみ...。

でも実際は、先に通信条件、例えば IP アドレスなり、プロトコル種別(TCP なのか、UDP なのか)なり、ポート番号なりが先に決まっていて、そこに送りたいデータの塊がやってくる、という形になると思います。

例えると、先に段ボール箱が用意されて、送り状のあて先も書いてあって、後から送る中身がやってきて、それを仕分けしてダンボールに詰めていく、といった感じになると思います。

...という説明でどうかな(^^?

下記の URL の 1.4.3 に IP パケットの例がありますので参考まで。

Nagano Solution

◎質問者からの返答

回答ありがとうございます。

ご説明のように、先にすべてのヘッダが準備されていてそこにデータが来るという考えですと@ITの情報にも説明が付くと思います!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ