通信の階層モデル — 役割ごとの層に分ける

概要 — まず全体をつかむ

インターネットの通信は、実はたくさんの役割が重なって成り立っています。それをすっきり捉える発想が、役割ごとの「層」に分けて考えることです。

詳細 — 1段階ずつ追う

これは何をする係?

通信を、役割ごとの層に分けて整理する——これが階層モデルです。

郵便にたとえると分かりやすいでしょう。

  • 手紙の中身 — 相手に伝えたい本文(=アプリのデータ)
  • 封筒の宛先 — どこの誰に届けるかの情報(=あて先の情報)
  • 配送トラック — 実際に運ぶ手段(=回線や電波)

この3つはそれぞれ別の担当です。中身を書く人は、トラックが軽自動車か大型かを気にしません。トラックの運転手は、中身が何であれ「宛先へ運ぶ」だけです。

登場人物メモ:

  • ※1 層(レイヤ) — 通信の役割を分けた1段。上の層ほど「中身」寄り、下の層ほど「運ぶ」寄り
  • ※2 プロトコル — 各層での「約束ごと(手順)」。同じ層同士が同じ約束で会話する
この部分をもっと深く(中級

階層モデルには、教科書的なOSI参照モデル(7層)と、実際のインターネットに沿ったTCP/IPモデル(4層)があります。層の数は違いますが、指しているものは対応します。

アニメーション『OSI 7層とTCP/IP 4層の対応』を開く
通信を「役割ごとの層」に分ける上位の層は、下位が有線か無線かを気にしない。下を差し替えても上はそのまま。OSI 参照モデル(7層)TCP/IP モデル(4層)アプリケーションプレゼンテーションセッショントランスポートネットワークデータリンク物理アプリケーションHTTP・DNS などトランスポートTCP・UDPインターネットIPリンクEthernet・Wi-Fi上位下位OSIの上位3層(アプリ・プレゼン・セッション)は、TCP/IPでは1つの「アプリ層」にまとまる

代表的なプロトコルを層ごとに押さえると、地図が一気に読めます。

  • アプリ層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 ヘッダ — 各層が付け足す「宛先や制御の情報」の見出し部分

なぜ層に分けるのか

分ける利点は、はっきりしています。

  1. 各層が自分の仕事に集中できる — 中身担当・宛先担当・運搬担当が分かれる
  2. 下を差し替えても上は無事 — 運ぶ手段を有線から無線に変えても、中身や宛先はそのまま
  3. 組み合わせが自由 — 「この中身を、この運び方で」と部品のように差し替えられる

だから、家のWi-Fiでも、外のモバイル回線でも、上のアプリは同じまま使えるのです。運ぶ下の層が違うだけ。

この部分をもっと深く(中級

層をまたぐとき、データはどう変わるのか。鍵はカプセル化です。送信側では、下の層へ渡すたびに、その層のヘッダで包んでいきます。

アニメーション『カプセル化(層ごとに包む)』を開く
下の層へ行くほど、ヘッダで包まれる(入れ子)内側=上の層(アプリ)/外側=下の層(イーサ)。同じデータが層ごとに包み直される。④ イーサ層 / フレーム③ IP層 / パケット② TCP層 / セグメント① アプリ層 / データイーサヘッダIPヘッダTCPヘッダFCS送信:アプリ → TCP → IP → イーサ と下るほど、各層がヘッダで包む(カプセル化)受信:イーサ → IP → TCP → アプリ と上るほど、各層がヘッダをはがす(非カプセル化)
  1. アプリがデータを作る(例:HTTPの中身)
  2. トランスポート層がTCPヘッダを付け、セグメントにする
  3. ネットワーク層がIPヘッダを付け、パケットにする
  4. リンク層がヘッダを付け、フレームにして送り出す

受信側は、これを逆順にはがしていきます(非カプセル化)。各層は、相手側の同じ層が付けたヘッダだけを読みます。だから下の層がどう運んだかを、上の層は気にしなくてよいのです。

上と下は気にしない

この分業のいちばんの気持ちよさは、上位の層が下位の詳しい事情を知らなくていいことです。

  • Webサイトを見るアプリは、電波の周波数を知りません
  • 電波を飛ばす部品は、中身がメールか動画かを知りません

お互いが「自分の層の約束」だけ守れば、通信は成り立ちます。この独立性のおかげで、片方だけを新しくしても全体が壊れない——通信技術が少しずつ進歩できてきた理由です。

この部分をもっと深く(中級

層に分ける最大の恩恵は、独立して差し替えられることです。

  • リンク層を有線からWi-Fiに変えても、上のIPやHTTPはそのまま
  • 同じIPの上で、TCP(確実)とUDP(速い)を用途で選べる
  • アプリを新しくしても、下の運搬層はいじらなくてよい

この独立性のおかげで、通信は部品ごとに進化できます。実際の機器では、NICがリンク層と物理の橋渡しを担い、ネットワーク全体図の各機器がそれぞれ担当の層で仕事をしています。

⚠️ つまずきやすいところ

  • 層をまたいで考えすぎる — 「アプリが遅い」原因が下の回線にある、など切り分けが必要
  • どの層の話か迷子になる — 用語が出てきたら「これは中身・宛先・運搬のどれ?」と当てはめる
  • 層は便利な整理 — 現実の通信がきっちり層に分かれて動くわけではなく、理解のための地図だと捉える
この部分をもっと深く(中級
  • 層の取り違え — 「届かない」原因がIP(住所)かリンク(配線)か、層で切り分ける
  • MTU超過 — 1フレームに載る上限を超えると分割が要る。リンク層の制約が上に効く例
  • モデルは地図 — OSIとTCP/IPは分け方が違うだけ。現実がどちらかにきっちり従うわけではない
  • ヘッダの分だけ増える — カプセル化で毎回ヘッダが付くので、運ぶ総量は中身より少し大きくなる

関連する知識

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. 郵便のたとえで「配送トラック」に当たるのは、通信のどの部分?

2. 通信を「層」に分けて考える いちばんの理由は?

3. 郵便のたとえで「手紙の中身」に当たるのは、通信のどれ?

4. 郵便のたとえで「封筒の宛先」に当たるのは、通信のどれ?

5. 上の層(Webサイトを見るアプリ)が知らなくてよいことの例として正しいのは?

6. 「Webサイトを見るアプリの動作が遅い」とき、原因が必ずしもアプリとは限らないのはなぜ?

7. 各層での「約束ごと(手順)」を指すカタカナ語を答えてください。

8. 通信の役割を分けた1段(英語 layer のカタカナ)を何と呼ぶ?