• ベストアンサー

TCPスリーウェイハンドシェイク時の転送データについて

タイトルにもありますように、TCPを使用した通信ではスリーウェイハンドシェイクを行って通信路を確認した後にデータ転送を行うと思うのですが、スリーウェイハンドシェイク時に送りあうデータとはTCPヘッダだけなのでしょうか? TCPヘッダだけを送るのであればTCPヘッダは約20バイトで、イーサネットで送るのであれば46バイト以下は破棄されて送れないのではないでしょうか? またTCPヘッダ+データを送るのであればデータの部分は何を送るのでしょう? 当方ネットワークを勉強中の初心者です。説明が分かりづらく申し訳ありませんが、ご教授ねがいます。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

wiresharkで実際のパケット見た方が早いと思われますが… Ethernetのヘッダで14バイト、IPヘッダで20バイト、TCPヘッダで28バイト(オプションデータ付き)…でしょうか。 合計62バイトです。

muramasa34
質問者

お礼

ご回答ありがとうございます。 イーサネットのヘッダとIPのヘッダですか・・・すっかり下位層の事が頭から抜けていました。まだまだ勉強不足です・・・「何でだろう?」と思うと勉強を先に進める事が出来ない性格ですので大変助かりました!!ありがとうございました。

関連するQ&A

  • TCPとEthernetのデータの分割の役割

    TCPのウィンドウ/フロー制御とethernetのフレームの分割についてご質問です。 書籍を読んでいると TCPはウィンドウ/フロー制御で、一度に送るセグメントサイズを調整しているとあります。 しかしEthernetもフレーム分割を行うとあります。 そうなると、どちらのプロコトルが主体的にデータを分割するのか本を読んでもいまいちわかりません。 例えば、TCPがウィンドウサイズを4500byteにして一度にデータを送信すると データリンク層のEthernetで、4500byteを1500byteずつに三分割するんでしょうか? だとすると、4500byteのデータを送った場合、TCP上では1つのセグメントを送信したことになり Ethernet上だと3つのフレームを送信したことになります。 それとも、TCPが4500byteのデータを送る場合 TCPがデータリンク層で一度に送信できるフレーム長を判断して TCP上で4500byteを一度に送信せずに、1500byteに分割してEthernetに送り Ethernetはその1500byteのデータを三回送信することになるんでしょうか? わかりにくい質問で申し訳ありません。

  • イーサネットとTCP/IPについて。

    イーサネットとTCP/IPについて。 どうして、TCP/IPの他にイーサネットが必要なのですか?? ローカルエリアネットワーク内の通信も含めて全てTCP/IPで行おうとすると、どのような問題が生じるのですか?? 初心者なので、分かりやすく説明していただけると嬉しいです。

  • ネットワーク転送量について

    5MBのデータをethernet上にTCPパケットにて転送する場合、転送に必要なethernetフレームの総数はいくつになるか。 なお、TCPヘッダサイズはオプションなしで20バイト、ethernetフレームは、IEEE802.3フォーマットとし、パケットやフレームの断片化はないものとする。 という問題なのですがどのようにして解けばいいかわかりません。 よろしければ誰か教えていただけないでしょうか???

  • ブロードキャストとTCP/IP通信

    TCP/IP通信すなわちパケット通信するためにはMACアドレスが必要で、そのためにはARPを行い、ブロードキャストを送信すると考えています。 そこで、最初の段階であるブロードキャストはTCP/IPモデルでどの層でどのような働きをしているのでしょうか? 最初の段階(ブロードキャスト)ではMACアドレスは分からないはずなので下位層のネットワークインターフェイス層ではイーサネットヘッダやイーサネットトレーラは付かず、中途半端なカプセル化になるのでしょうか? 通信に精通している方は、この質問の意図も分かりにくいと思います。。すみません。 ご教授お願いしますm(__)m

  • TCPについて

    TCP/IPで100バイトのデータを送信するとき,物理層からネットワーク上に出力されるTCPパケットは最小何ビットになるか、という問題に悩んでいます。 付加情報として160ビットがヘッダに加わるのはわかりますが、オプションの部分がよくわかりません(32の倍数で増えていくようですが)。この問題の答えや、ヒントなどを教えていただけないでしょうか。

  • TCP/IPにおけるデータリンク層の役割について

    はじめまして。 現在TCP/IPについて学習している者ですが、わからないことが あり、混乱しています。質問させてください。 参考書には、データリンク層の役割とは、 「機器どうしをつなぐにはいくつかの方法があり、同一の方法でつなげたひとかたまりをデータリンクといいます。データリンクどうしの違いを吸収し、ネットワーク層より上の層が違いを意識せずに働けるようにすること。」であると、解説されているのですが、なにかあたかも データリンク層のプロトコルが異なっていてもデータのやり取りが 出来るかのように解釈できてしまいます。例えば、Ethernetを採用しているデータリンクのノードが、FDDIを採用しているデータリンクの ノードと、データのやりとりができてしまうということを言っている ように解釈できてしまいます。プロトコルとは、通信元と、通信先 の同一層でのデータのやり取りを規定したものですよね。それなのに プロトコルが異なるものどうしが、データのやりとりができてしまう とは、いったいどういうことなのでしょうか?どうかご教授 お願いします。なにぶんネットワークの知識がまだ浅いので 初心者でもわかるようにご教授していただけませんでしょうか。 よろしくお願いします。

  • TCPとTCP/IPの違いについて

    グローバルIPをもつサーバ同士のネットワークプロトコルの選択 を迫られております。 そこで質問があります。 TCP/IPでデータ転送を行う場合と TCPだけでデータ転送を行う場合の違いを教えてください。 よろしくお願い致します。

  • TCPヘッダのヘッダ長について

    誰か知っていましたら御教示ください。 TCPヘッダのヘッダ長は,通常5または6を使用するものだと考えてました 7を使用するのは,どのような場合でしょうか? なぜこのような質問するかは,以下のことをおこなって専用制御装置とPCでTCP/IPの通信が出来なくなっためです。 (1)PC側のOSを winNT→2Kへ変えたところ専用制御装置との通信断となりました。 (2)イーサアナライザで解析したらPCからのSYN送信にてTCPヘッダにおけるヘッダ長がNTの時は,6(24バイト)なのにwin2Kでは,7(28バイト)になった (3)専用制御装置側はTCPヘッダのヘッダ長7は,エラーと判定し通信しない設計になってました (4)PCのアプリはwinsockの単なるソケット通信 そのため,TCPヘッダを書き換えることはできません (5)おそらくOSがwin2Kになったことが原因だと思います。 win2KでwinNTの時のように SYN送信でTCPヘッダのヘッダ長を6にする方法は,あるのでしょうか? 大変恐縮ですが誰か御回答ください。

  • イーサネットヘッダは特別なのでしょうか

    ネットワークの勉強をはじめたばかりです。 ある本を讀んでいたら、TCP/IPに関して次のようなことが書かれていました。(多少表現は変えています。) 「アプリケーションで作られたデータは、アプリケーション層からトランスポート層のTCPに渡される。 ここでパケットに小分けされ、エラーチェックなどに使うTCPヘッダを付けられてTCPパケットになる。 TCPパケットはインターネット層のIPに渡され、宛て先のIPアドレスなどを含むIPヘッダを付けてIPパケットになる。 續いてIPパケットはイーサネットに渡ってイーサネットヘッダが付くと自然だが、実はそうではない。 イーサネットのためのヘッダもIPが付ける。 つまりIPでは、IPヘッダとイーサネットヘッダの2つを付けるのである。」 この本によると、イーサネットヘッダはIPが付けることになっているようですが、 他の本(とは言っても、そんなに何冊も讀んでいるわけではありませんが。)でこのような記述は見たことがありません。 「イーサネットヘッダはIPが付ける」というのは本当なのでしょうか。 そうだとすると、なぜこのような、「自然でない」仕組みになっているのでしょうか。

  • TCPのコネクションについて。

    TCPのコネクションがよくわかりません。 3ウェイハンドシェークでお互いに通信するのを了承しあう、という説明がよくあると思うのですが、それをしたのがなぜコネクションになるのでしょうか?それをしないでデータを送っても破棄されるということでしょうか? よろしくお願いします。

専門家に質問してみよう