初級では通信を「役割ごとの層に分ける」と捉えました。中級では、代表的な2つのモデル——OSI 7層とTCP/IP 4層——の対応と、層をまたぐときのカプセル化を見ます。
中級の解説は準備中のため、中級の内容を表示しています。
概要 — まず全体をつかむ
詳細 — 1段階ずつ追う
これは何をする係?
階層モデルには、教科書的なOSI参照モデル(7層)と、実際のインターネットに沿ったTCP/IPモデル(4層)があります。層の数は違いますが、指しているものは対応します。
アニメーション『OSI 7層とTCP/IP 4層の対応』を開く
代表的なプロトコルを層ごとに押さえると、地図が一気に読めます。
- アプリ層 — HTTP(Web)・DNS・SMTP など、アプリ同士の会話の約束
- トランスポート層 — TCP/UDP。相手まで確実に/速く届ける担当(3ウェイハンドシェイクはTCPの話)
- ネットワーク(インターネット)層 — IP。どこへ届けるかの住所と経路
- リンク層 — Ethernet/Wi-Fi。目の前の1区間を実際に運ぶ
対応の勘所は、OSIの上位3層がTCP/IPの1つのアプリ層にまとまること、下位2層がリンク層にまとまることです。
登場人物メモ:
- ※1 OSI参照モデル — 通信を7層に細かく分けた、理解・整理のための標準モデル
- ※2 TCP/IPモデル — 実際のインターネットが従う、4層の実務的なモデル
- ※3 ヘッダ — 各層が付け足す「宛先や制御の情報」の見出し部分
カプセル化
層をまたぐとき、データはどう変わるのか。鍵はカプセル化です。送信側では、下の層へ渡すたびに、その層のヘッダで包んでいきます。
アニメーション『カプセル化(層ごとに包む)』を開く
- アプリがデータを作る(例:HTTPの中身)
- トランスポート層がTCPヘッダを付け、セグメントにする
- ネットワーク層がIPヘッダを付け、パケットにする
- リンク層がヘッダを付け、フレームにして送り出す
受信側は、これを逆順にはがしていきます(非カプセル化)。各層は、相手側の同じ層が付けたヘッダだけを読みます。だから下の層がどう運んだかを、上の層は気にしなくてよいのです。
なぜこの分業が効くのか
層に分ける最大の恩恵は、独立して差し替えられることです。
- リンク層を有線からWi-Fiに変えても、上のIPやHTTPはそのまま
- 同じIPの上で、TCP(確実)とUDP(速い)を用途で選べる
- アプリを新しくしても、下の運搬層はいじらなくてよい
この独立性のおかげで、通信は部品ごとに進化できます。実際の機器では、NICがリンク層と物理の橋渡しを担い、ネットワーク全体図の各機器がそれぞれ担当の層で仕事をしています。
⚠️ うまくいかないとき
- 層の取り違え — 「届かない」原因がIP(住所)かリンク(配線)か、層で切り分ける
- MTU超過 — 1フレームに載る上限を超えると分割が要る。リンク層の制約が上に効く例
- モデルは地図 — OSIとTCP/IPは分け方が違うだけ。現実がどちらかにきっちり従うわけではない
- ヘッダの分だけ増える — カプセル化で毎回ヘッダが付くので、運ぶ総量は中身より少し大きくなる
関連する知識
理解度チェック
そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。
問1. カプセル化とは何を指す?
問2. OSIモデルとTCP/IPモデルの対応で正しいのは?
問3. トランスポート層でTCPヘッダを付けたデータの単位を何と呼ぶ?
問4. 受信側でヘッダを外していく「非カプセル化」の説明として正しいのは?
問5. 同じIPの上でTCPとUDPを用途で選び分けられるのは、階層モデルのどんな性質のおかげ?
問6. 次のうち「アプリ層」に属するプロトコルの組み合わせはどれ?
問7. リンク層がヘッダを付けて送り出す、最終的な送信単位を何と呼ぶ?(カタカナ)
問8. 確認を省いて速さを優先する、トランスポート層のプロトコルを英字3文字で答えてください。