OSI参照モデル — 7階建てビルで封筒を重ねる
ネットワークの話をしていると「L3スイッチ」「L7ロードバランサ」のように、数字つきのLがよく出てきます。この数字の出どころが OSI参照モデルです。通信の仕事を7つの階に分けて、「どの階が何を受け持つか」を決めた地図のようなものです。
たとえるなら7階建てのビルです。送る側は用件を7階で書き、エレベーターで1階まで降りながら各階で封筒を1枚ずつ重ねます。受け取る側は1階から上りながら1枚ずつ剥がします。この「重ねて、剥がす」をカプセル化と呼びます。図1で1階ずつ進めてみてください。
同じ階どうしだけが、話を通じ合える
図1の受信側で封筒を剥がすとき、送信側の同じ階が光るのに気づいたでしょうか。受信側の4階が読むのは、送信側の4階が書いた封筒だけです。4階は中の5〜7階の封筒を開けませんし、外側の2〜3階の封筒のことも知りません。
この決まりのおかげで、各階は自分の仕事だけに集中できます。たとえば2階の配線がEthernetからWi-Fiに変わっても、3階より上は何も変えずに済みます。Webブラウザを作る人が、ケーブルの電圧を気にしなくてよいのはこのためです。
TCP/IPの4層とは「数え方の違い」
実際のインターネットは、TCP/IPの4層で説明されることが多いです。これはOSIの5〜7階をまとめて「アプリケーション層」、1〜2階をまとめて「リンク層」と数えたものです。ルールそのものが違うわけではなく、同じビルを何フロアで区切るかの違いと考えてください。
OSIの7階建てが今も使われるのは、「何階の話か」を指さすのに便利だからです。「L2で止まっている」「L7で振り分ける」と言えば、どの封筒を見ている話かが一言で伝わります。図2で、機器ごとに何階まで封筒を開けるかを比べてみましょう。
- OSI参照モデル
- 通信の仕事を7つの層に分けて整理した共通の地図。「L3」「L7」の数字はここから来ている。
- カプセル化
- 送る側が層ごとに情報(ヘッダ)を付けて包んでいくこと。受け取る側で逆に剥がすのを非カプセル化と呼ぶ。
- ヘッダ
- 各層が付ける封筒の宛名書き。宛先やポート番号など、その層が必要な情報だけを書く。
- MACアドレス
- 2階の宛名。隣の機器を指すので、ルーターを通るたびに付け替えられる。
- IPアドレス
- 3階の宛名。最終目的地を指すので、途中で基本的に変わらない。
- ポート番号
- 4階の宛名。届いたコンピュータの中で、どのアプリに渡すかを指す。
まとめ
OSI参照モデルは、通信を7階建てのビルに見立てた地図です。送る側は降りながら封筒を重ね、受け取る側は上りながら剥がします。各階が読むのは相手の同じ階が書いた封筒だけなので、ほかの階が入れ替わっても影響を受けません。「L2」「L7」と聞いたら、何階の封筒を見ている話かを思い出してください。