6月23日(木)1コマ目

今日、やったこと

  • 確認テスト「ルーティングテーブル作成その4」の解説
  • TCP、UDPについて
  • TCPのコネクション確立
  • TCPのシーケンス番号、確認応答番号

今日のホワイトボード

確認テスト「ルーティングテーブル作成その4」の解説

ネットワーク図からネットワークアドレスで分割すると以下のとおり。

図 確認テスト「ルーティングテーブル作成その4」ネットワーク図

ホストA~Dのルーティングテーブルはいつもどおり。

ルーター1、ルーター2のルーティングテーブルは以下のとおり。

ルーター1<=>ルーター2の経路が2パターンあるが、経路が指定されているため、それに従うこと。

図 確認テスト「ルーティングテーブル作成その4」ルーティングテーブル

TCP、UDPについて

TCP、UDPはプロトコル階層の3層目に位置します。
3層目のプロトコルはTCPとUDPの両方を使うわけではなく、どちらかを使います。
どっちを使うかは4層目のプロトコルで決まります。
図 プロトコル階層でのTCP・UDP

TCP、UDPに共通する機能は、4層目のプロトコルの特定です。
UDPはこれしかやっていません。
TCPはさらに、
  • 通信の効率アップ
  • 通信の信頼性アップ
をしています。
図 TCP・UDPの違い

TCP・UDPのポート番号

TCP、UDPはともにポート番号を使って4層目のプロトコルの特定をしています。
4層目の各プロトコルはそれぞれ利用するポート番号が決められています。(ウェルノウンポートと呼ぶ)
図 TCP・UDPのポート番号

[TCP]コネクション確立

TCPはいきなりデータを送らず、相手が受信可能かチェックするためにコネクション確立を行っています。
TCPではコネクション確立に3回パケットのやり取りをしています。
図 コネクション確立
3回のやりとり(3ウェイ)でコネクション確立(ハンドシェイク)するため、3ウェイハンドシェイクと呼びます。

シーケンス番号、確認応答番号

TCPは大きいサイズのデータを分割して送信します。
TCPは送信中にデータ誤りが発生したら、受信側から再送を依頼します。
大きいサイズのデータを送信する際、1,2ビット程度のデータ誤りが発生しても、また大きいデータを再送します。これでは非常に効率が悪いです。
もし、受信側で元の順番に組み立てなおすことができれば、分割して送ることも可能です。
TCPではTCPヘッダ中のシーケンス番号で何バイトのデータか分かるようにしているため、分割して送信できます。

TCPは相手が受信できたことを確認しています。
TCPヘッダの確認応答番号で相手に送信していほしいデータを指定します。
たとえば、確認応答番号が2001なら、「2001バイト目から送信してほしい!」です。これは「2000バイト目までは受信した」「次は2001バイト目から送信してほしい」という意味です。

シーケンス番号、確認応答番号の演習をしました。
図 問1

次回は

今日配った「TCP シーケンス番号、確認応答番号 演習 その1」の続きをやります。
シーケンス番号、確認応答番号はテストネタにしやすい内容です。きっとテストを何回かやります。












 

このブログの人気の投稿

7月27日(水)1コマ目

9月14日(水)1コマ目

9月12日(月)2コマ目