第1章 ネットワークの全体像|1-2|コース全体 19回中2本目
OSI参照モデル ― 7階層それぞれの役割
OSI参照モデルの7階層が、それぞれ何をしているのかを1層ずつ確認する記事です。TCP/IPモデルとの対応は扱いません(それは次の回です)。
7階層は「下ほど物理に近く、上ほど人に近い」順に並んでいます
OSI参照モデルは、通信を7つの役割に分けて積み上げたものです。並び方には意味があります。下の層(第1層)ほど電気信号やケーブルといった「モノ」に近く、上の層(第7層)ほど人が読める文章や画面に近づきます。各層は自分のすぐ上下の層とだけやりとりし、自分の役割だけに集中します。
押せる7階層
各層のボタンを押すと、その層の役割・PDU(データの呼び名)・宛先・関連する用語が下に表示されます。 まずは知っている言葉(HTTPやWi-Fiなど)を含む層から押してみてください。
0と1を、電気・光・電波といった物理的な信号に変換して送り出す層。
ケーブルの形やピンの並び、電圧、周波数といった「モノとしての決まりごと」を担当します。ここで扱うのは意味のないビットの列で、宛先という概念すらありません。LANケーブルが抜けている、断線している、という障害はすべてこの層の話です。
- PDU
- ビット
- 宛先
- なし
直接つながっている機器同士で、誤りなくデータを渡す層。
ビットの列を「フレーム」という単位にまとめ、MACアドレスで同じネットワーク内の相手を指定します。末尾のFCSで壊れていないかを検査し、壊れていれば捨てます。この層が見ているのは隣の機器までで、インターネットの向こう側は見えていません。
- PDU
- フレーム
- 宛先
- MACアドレス(48ビット)
ネットワークをまたいで、最終的な宛先まで届ける道を選ぶ層。
IPアドレスで世界中のホストを識別し、ルータがルーティングテーブルを見て次の転送先を決めます。ただしIPは「届けるよう努力する」だけで、到達も順序も保証しません(ベストエフォート)。大きすぎるデータの分割(フラグメンテーション)もこの層の仕事です。
- PDU
- パケット
- 宛先
- IPアドレス(IPv4は32ビット)
アプリケーション同士の通信を成立させ、必要なら確実性を担保する層。
ポート番号で「どのアプリ宛か」を指定します。TCPは3ウェイハンドシェイクで接続を確立し、順序の整理・再送・フロー制御まで面倒を見ます。UDPはそれらを省き、速さと軽さを取ります。第3層までは「機械に届ける」、第4層で初めて「アプリに届ける」になります。
- PDU
- セグメント(UDPはデータグラム)
- 宛先
- ポート番号(0〜65535)
通信の開始から終了までの「ひと続きのやりとり」を管理する層。
会話をいつ始めていつ終えるか、どちらが話す番か、途中で切れたらどこから再開するかを扱います。TCP/IPモデルではアプリケーション層に吸収されており、独立した層としては意識されることが少なめです。
- PDU
- データ
- 宛先
- セッションID など
データの表現形式をそろえ、送り手と受け手が同じ意味に解釈できるようにする層。
文字コード(UTF-8とShift_JISなど)、画像や音声の形式、圧縮、暗号化を担当します。送る側と受け取る側で「同じデータを同じ意味に解釈できる」状態を作るのが役目です。
- PDU
- データ
- 宛先
- なし
人やアプリが直接使うサービスそのものを提供する層。
Webの閲覧、メールの送受信、ファイル転送、名前解決など、目的ごとのプロトコルが並びます。ブラウザやメールソフトそのものではなく、それらが話す言葉の決まりがこの層です。
- PDU
- メッセージ
- 宛先
- URL / ドメイン名
層ごとの役割(第1層〜第7層)
表を上から下(第1層 → 第7層)へ読むと、物理的な信号が少しずつ「意味のあるデータ」に組み立てられていく流れが見えます。
| 層 | 役割 | 宛先 | 代表的な規格・プロトコル |
|---|---|---|---|
| 第1層 物理層 | 0と1を、電気・光・電波といった物理的な信号に変えて送り出す | なし | LANケーブルの規格、光ファイバ、Wi-Fiの電波、RJ-45コネクタ |
| 第2層 データリンク層 | 直接つながっている機器同士で、誤りなくデータを渡す | MACアドレス | Ethernet, Wi-Fi (802.11), ARP |
| 第3層 ネットワーク層 | ネットワークをまたいで、最終的な宛先までの道を選ぶ | IPアドレス | IP, ICMP |
| 第4層 トランスポート層 | アプリ同士の通信を成立させ、必要なら確実性を担保する | ポート番号 | TCP, UDP |
| 第5層 セッション層 | 通信の開始から終了までの、ひと続きのやりとりを管理する | セッションIDなど | RPC, NetBIOS |
| 第6層 プレゼンテーション層 | データの表現形式をそろえ、送り手と受け手が同じ意味に解釈できるようにする | なし | UTF-8, JPEG, TLS(暗号化) |
| 第7層 アプリケーション層 | 人やアプリが直接使うサービスそのものを提供する | URL / ドメイン名 | HTTP, DNS, SMTP |
第1層には「宛先」という考え方がない
物理層が扱うのは意味のないビットの列(電気信号や光の点滅)そのものです。 「どこ宛か」を指定するという考え方自体が、まだ存在しません。宛先という概念は、次の第2層(MACアドレス)から登場します。
トランスポート層は、確実性を「選べる」層
第4層には性格の異なる2つの代表プロトコルがあります。TCPは3ウェイハンドシェイクで接続を確立し、 再送や順序の整理まで行う代わりに、その分だけ手間(オーバーヘッド)が増えます。UDPはそれらを省略し、速さと軽さを優先します。 どちらを使うかはアプリ側が選びます。
セッション層・プレゼンテーション層は独立して意識されにくい
第5層(セッション層)と第6層(プレゼンテーション層)は、実際に広く使われているTCP/IPモデルでは アプリケーション層の中に吸収されており、独立した層としては意識されにくいところです。詳しくは次の回1-3 OSI参照モデルとTCP/IPモデルの違い・対応関係で扱います。
PDU(各層でのデータの呼び名)
同じひとかたまりのデータでも、どの層を通っているかによって呼び方が変わります。 この呼び名をPDU(Protocol Data Unit)と呼びます。
| 層 | 各層でのデータの呼び名(PDU) |
|---|---|
| 第1層 物理層 | ビット |
| 第2層 データリンク層 | フレーム |
| 第3層 ネットワーク層 | パケット |
| 第4層 トランスポート層 | セグメント(UDPはデータグラム) |
| 第5層 セッション層 | データ |
| 第6層 プレゼンテーション層 | データ |
| 第7層 アプリケーション層 | メッセージ |
OSI7階層の語呂合わせ
7階層を上(第7層)から下(第1層)へ暗記するための語呂合わせがあります。 公式な由来があるものではありませんが、順番を覚える助けになります。
| 層 | 名前 | 語呂 |
|---|---|---|
| 第7層 | アプリケーション層 | ア |
| 第6層 | プレゼンテーション層 | プ |
| 第5層 | セッション層 | セ |
| 第4層 | トランスポート層 | ト |
| 第3層 | ネットワーク層 | ネ |
| 第2層 | データリンク層 | デ |
| 第1層 | 物理層 | ブ |
練習問題(全5問)
選んでから「採点する」を押すと、解説つきで答え合わせができます。
正解:データリンク層
データリンク層(第2層)は、MACアドレスで隣接する機器を指定し、ビットの列を「フレーム」という単位にまとめて渡す層です。
正解:パケット
ネットワーク層(第3層)はIPアドレスを使って宛先までの経路を選ぶ層で、このときのデータ単位を「パケット」と呼びます。
正解:トランスポート層
ポート番号によるアプリの区別と、TCPによる再送・順序制御は、トランスポート層(第4層)の役割です。
正解:プ
「ア(アプリケーション)プ(プレゼンテーション)セ(セッション)…」の通り、プレゼンテーション層は「プ」の1文字だけに対応します。
正解:0と1を電気・光・電波などの信号に変えて送り出すだけで、宛先という概念を持たない
物理層はビットを物理的な信号に変換して送り出すだけの層です。宛先(アドレス)という考え方自体を持たず、それはデータリンク層より上で登場します。