単元解説
TCP/IPとカプセル化の基礎
ネットワーク基礎CCNAアプリケーションから送られたデータが、トランスポート層・インターネット層・ネットワークアクセス層でヘッダーを付けて送信され、受信側で元に戻る流れを学びます。
この単元で学ぶこと
Webページの閲覧、メールの送受信、ファイル転送など、アプリケーションが扱うデータは、そのままネットワークへ流れるわけではありません。通信を届けるために、各プロトコル層が必要な情報を付け加え、受信側で順に取り除きます。
この単元では、TCP/IPプロトコルスイート、アプリケーション層、トランスポート層、インターネット層、ネットワークアクセス層、デカプセル化、プロトコルデータユニット、ペイロード、ポート番号、プロトコルヘッダーの基本を学びます。
TCP/IPプロトコルスイート
TCP/IPプロトコルスイートは、インターネット上の通信で使われるプロトコルを、役割ごとの層として整理した考え方です。代表的には、アプリケーション層、トランスポート層、インターネット層、ネットワークアクセス層として説明します。
層に分けると、アプリケーションはデータの内容を扱い、トランスポート層はアプリケーション間の通信を扱い、インターネット層はIPアドレスを使った配送を扱い、ネットワークアクセス層は同じリンク上での送信を扱う、というように役割を整理できます。
アプリケーション層
アプリケーション層は、利用者やアプリケーションが直接利用するサービスに近い層です。HTTP、DNS、SMTP、SSHなどのプロトコルが、この層の代表例です。
アプリケーション層では、Webの要求、名前解決の問い合わせ、メール本文など、利用目的に応じたデータを作ります。そのデータを遠隔のアプリケーションへ届ける処理は、下位の層に任せます。
トランスポート層
トランスポート層は、端末上のアプリケーション同士の通信を扱います。TCPは信頼性、順序制御、再送、フロー制御などを提供し、UDPは比較的簡潔なデータグラム通信を提供します。
ポート番号を使うと、一台の端末上で複数のアプリケーションやサービスを区別できます。たとえば、同じIPアドレスの端末でも、Web、DNS、SSHなどを異なるポート番号で扱えます。
インターネット層
インターネット層は、IPアドレスを使って異なるネットワーク間でパケットを配送する層です。IPパケットには送信元IPアドレスと宛先IPアドレスが含まれ、ルータは宛先IPアドレスを参照して次の転送先を選びます。
端末から最終宛先までの経路には複数のルータが存在する場合があります。ルータは、各リンクで使うフレームを受信して取り除き、IPパケットを次のリンク用のフレームへ入れ直して転送します。
ネットワークアクセス層
ネットワークアクセス層は、端末が接続されている同じネットワーク上でデータを送るための層です。Ethernet、無線LAN、ARPなどが関係し、MACアドレスとフレームを使って隣接する機器へデータを届けます。
遠隔の宛先へ送る場合でも、端末はまずデフォルトゲートウェイなど次に渡す相手へフレームを送ります。IPアドレスの最終宛先と、そのリンク上で使うMACアドレスの宛先は異なることがあります。
カプセル化
送信側では、アプリケーションデータに対して下位の層が順に制御情報を加えます。この処理をカプセル化と呼びます。トランスポート層ではTCPまたはUDPの情報、インターネット層ではIPの情報、ネットワークアクセス層ではフレームの情報を加えます。
各層が付け加える情報はプロトコルヘッダーとして扱われます。ヘッダーには、宛先、送信元、ポート番号、プロトコル種別、エラー検出など、その層で必要な情報が含まれます。
デカプセル化
受信側では、受信したフレームからネットワークアクセス層の情報を確認して取り除き、IPパケットを上位へ渡します。さらにIPヘッダー、TCPまたはUDPヘッダーを順に処理し、最終的にアプリケーションデータを受信側のアプリケーションへ渡します。
この処理をデカプセル化と呼びます。送信側と受信側で同じプロトコルの規則を共有しているため、各層の情報を正しく解釈できます。
プロトコルデータユニットとペイロード
プロトコルデータユニットは、各層で扱うデータ単位を指す一般的な用語です。文脈により、セグメント、データグラム、パケット、フレームなどの呼び方が使われます。
ペイロードは、ある層から見て運びたい本体データです。たとえば、IPパケットから見るとTCPセグメント全体がペイロードであり、TCPセグメントから見るとアプリケーションデータがペイロードになります。
まず覚えたいポイント
アプリケーションデータは、送信時にTCPまたはUDP、IP、Ethernetや無線LANの情報で順に包まれます。受信時には逆の順で情報を取り除きます。層ごとの役割を意識すると、ポート、IPアドレス、MACアドレス、ルータ、スイッチの関係を整理しやすくなります。
関連用語
TCP/IPプロトコルスイート
インターネット上の通信で使われるプロトコルを役割ごとの層として整理した考え方です。
用語を見る →
アプリケーション層
利用者やアプリケーションに近いサービスのためのプロトコルを扱う層です。
用語を見る →
トランスポート層
端末上のアプリケーション同士の通信を扱い、TCPやUDPなどを利用する層です。
用語を見る →
インターネット層
IPアドレスを使って異なるネットワーク間でパケットを配送する層です。
用語を見る →
ネットワークアクセス層
同じリンク上でデータを送るためにEthernetや無線LANなどを扱う層です。
用語を見る →
デカプセル化
受信側で各層のヘッダーを順に処理して取り除き、上位のデータへ戻す処理です。
用語を見る →
プロトコルデータユニット
各プロトコル層で扱うデータ単位を表す一般的な用語です。
用語を見る →
ペイロード
ある層から見て運びたい本体データの部分です。
用語を見る →
ポート番号
同じIPアドレスを使う端末上で、通信先のアプリケーションやサービスを区別する番号です。
用語を見る →
プロトコルヘッダー
各層が通信を制御するためにデータの先頭などへ追加する情報です。
用語を見る →