コンピューターサイエンス:アルゴリズム / OS / ネットワーク / DB
TCP/IP 4階層モデル
7 つ覚えたのに、実物は 4 つしかない
実際に動いているインターネットの中身をのぞくと、段は 4 つしかありません。下から順に、リンク層、インターネット層、トランスポート層、アプリケーション層です。7 段階を丁寧に覚えた直後にこれを見ると、何か覚え違いをしたのかと不安になります。
7 段階の整理表は「こう分けると議論しやすい」という設計図として作られました。一方 TCP/IP は、動くものを先に作った結果として固まった構成です。設計図と実物なので、数が合わなくて当たり前だと思ってください。
どちらが正しいかを気にする必要もありません。会話で番号を使うときは 7 段階の目盛り、実際に何が動いているかを追うときは 4 段階の実物、と用途で使い分けます。
上の 3 つは、アプリが自分で面倒を見ることになった
7 段階のうち上の 3 つ、つまり会話の維持と、文字コードや暗号化の変換と、アプリ独自のやりとりは、TCP/IP ではまとめて 1 つのアプリケーション層になっています。
独立させても得がなかったからです。暗号化をどこでかけるか、ログイン状態をどう持つかは、アプリごとに事情が違います。共通の段として切り出すより、アプリが自分で決めたほうが素直でした。下の 2 つも同じで、電気信号をどう乗せるかと、隣の機器へどう渡すかは、実装上いつも同じ機器の中に同居します。だからリンク層 1 つにまとめられています。
結果として、統合されなかったのは真ん中の 2 つだけです。宛先まで経路を選ぶ役と、端から端まで届ける役。この 2 つだけが、独立した段として残る価値があったということです。
統合の位置を 1 つだけ覚えるなら、暗号化の置き場所です。7 段階の整理では独立した段の仕事とされていますが、TCP/IP ではアプリケーション層の中に入っています。通信を暗号化するかどうかがアプリ側の設定で決まり、回線を変えても暗号化の設定を引き継げるのは、この配置のおかげです。
真ん中がくびれた砂時計になっている
TCP/IP の形を絵にすると砂時計になります。上には Web やメールなど数えきれないほどのやりとりの形が乗り、下にも Ethernet、Wi-Fi、携帯回線、光回線と多様な方式が並びます。ところが真ん中は IP ただ 1 つです。
このくびれが効きます。新しい無線方式を作る人は「IP を運べる」ことだけ満たせばよく、上で何が動くかを気にする必要がありません。新しいアプリを作る人も「IP の上に乗る」だけでよく、下の回線が何かを気にしません。上と下は自由に増やせて、真ん中だけが共通。この形が、つなぐ相手を選ばないネットワークを世界規模まで広げました。
裏を返せば、IP そのものを取り替えるのは極端に難しいということでもあります。全員が同じ 1 点に依存しているからです。IPv6 への移行が何十年もかかっているのは、まさにこのくびれを差し替える作業だからです。
この形は日々の判断にも現れます。新しい通信方式やクラウドのサービスを見るとき、「これはくびれの上か、下か」を先に決めると理解が速くなります。上ならアプリの都合で自由に選び替えられるもの、下なら回線やインフラの都合で決まるもの。真ん中に触れるものは、たいてい大がかりな移行を伴います。
復習ミニクイズ
TCP/IP モデルの 4 階層に含まれない層はどれですか