OSI 参照モデルとは — 7 階層の役割と TCP/IP との対応 のサムネイル

OSI 参照モデルとは — 7 階層の役割と TCP/IP との対応

⏱ 約 14 分 view 70 like 0 LOG_DATE:2026-05-09
目次 / TOC

ISO 基本参照モデル (OSI 7 層モデル) #

ISO 基本参照モデル、別名 OSI 参照モデル (Open Systems Interconnection Reference Model) は、ネットワーク通信を 7 つの階層 に分けて整理した、ISO/IEC 7498 として 1984 年に標準化された概念モデルである。「異なるベンダーのコンピュータでも同じプロトコルで通信できるようにする」 という壮大な目標で設計され、ITU-T では同じ内容が X.200 として再公表された。

実際のインターネットを支える TCP/IP モデル (IP / TCP / HTTP) は OSI 完成と並行して既に使われており、最終的に OSI プロトコル群そのものはほとんど普及しなかった。それでも「どの層に問題があるのか」「この機能はどの層が担うべきか」を議論するための 共通言語 として、OSI 7 層モデルはネットワーク技術者・セキュリティエンジニア・障害対応者すべての基礎となっている。

1. OSI 参照モデルの歴史 #

1.1 1970 年代 — プロプライエタリ・プロトコル乱立期 #

1970 年代、メインフレームと端末の接続方式は 完全にベンダー独自 だった。IBM の SNA (Systems Network Architecture, 1974)、DEC の DECnet、Burroughs / Honeywell / Univac もそれぞれ独自方式を持ち、異なるベンダーのコンピュータ同士は事実上通信できない状態。マルチベンダー環境を組もうとすれば、すべての組合せで翻訳ゲートウェイを用意する必要があった。

並行して、米国の ARPANET は 1974 年に Vint Cerf と Bob Kahn が TCP の原型を発表 (RFC 675)、TCP/IP 二層分離の方向で進化していた。しかし当時は研究ネットワーク向けで、商用普及はまだ先。

1.2 1977 年 — ISO/TC97/SC16 設立 #

1977 年、ISO (国際標準化機構) が SC16 (Open Systems Interconnection) を設立。ベンダー中立な標準プロトコル一式 を作る決意である。同年、Charles Bachman (チャールズ・バックマン) を中心に 7 層構造の原案が提案された。「7 」という数は、通信機能をモジュール化する ために議論を重ねて落ち着いた区分けで、各層が「上層に対するサービス提供」「下層からのサービス利用」という整然とした関係を持つよう設計された。

1.3 1984 年 — ISO 7498 公開 #

7 年の議論を経て、1984 年に ISO 7498「Information processing systems — Open Systems Interconnection — Basic Reference Model」が公開。ITU-T (当時 CCITT) も同内容を X.200 として勧告した。OSI モデルは「通信のあるべき姿」を緻密に規定した、極めて完成度の高い理論モデルとなった。

しかし理論モデルの定義動くプロトコルの実装は別物。同時期に OSI スタックの具体プロトコル群 (X.400 メール、X.500 ディレクトリ、CLNP ネットワーク層、TP4 トランスポート層など) も標準化されたが、これらは「仕様書がぶ厚すぎ、実装が遅い」「多くのベンダーが実装を本気で作らない」という問題を抱えていた。

1.4 1980 年代後半 — 「OSI vs TCP/IP」戦争 #

1980 年代後半、米国政府は OSI 移行を国家戦略とし、GOSIP (Government OSI Profile) で連邦機関に OSI 採用を義務化しようとした。欧州各国の郵電省 (PTT) も OSI 推進。一方で:

  • TCP/IP は既に動いていた (BSD UNIX 4.2 で標準実装、1983 年に ARPANET が NCP から切替)
  • 無料で使えた (BSD ソース)
  • シンプルで実装が短い

加えて、Cisco などが TCP/IP ルータを商用化し、1990 年代の商用インターネット爆発 が決定的に流れを TCP/IP 優位に変えた。1995 年、米国政府は GOSIP を事実上撤回。

1.5 1990 年代以降 — 「OSI モデルだけが残った」 #

OSI プロトコル群 は使われなかったが、OSI の 7 層モデルそのもの はネットワークを語るための共通フレームとして広く採用されていった。「これは L7 の問題」「L2 で完結する処理」「L3 と L4 で分離」のような言い回しは、実装が TCP/IP でも OSI 用語で議論する のが今も標準となっている。

2. 7 層モデルの全体像 #

OSI 参照モデルでは、通信を担う機能を以下の 7 層に分ける。上位ほどアプリに近く、下位ほどハードウェアに近い。各層は すぐ下の層が提供するサービスを利用し、すぐ上の層にサービスを提供する

OSI 7 層モデル — 各層の役割と代表プロトコル 上位 = アプリ寄り (人間に近い) / 下位 = ハードウェア寄り (電気信号に近い) L7 Application アプリケーション層 / ユーザが直接触れる HTTP / SMTP / DNS / SSH / FTP / IMAP / POP3 / SNMP / Telnet PDU: Data / Message アプリ ↔ アプリ L6 Presentation プレゼン層 / 文字符号化・暗号化・圧縮 TLS / SSL / ASCII / Unicode / JPEG / MP3 / MIME / ASN.1 PDU: Data 表現形式の変換 L5 Session セッション層 / 接続の確立・維持・切断 NetBIOS / RPC / SOCKS / NFS (一部) / SIP の制御 PDU: Data 対話の同期・チェックポイント L4 Transport トランスポート層 / エンドツーエンド配送 TCP / UDP / QUIC / SCTP / DCCP PDU: Segment / Datagram port 番号で識別 L3 Network ネットワーク層 / アドレッシング・ルーティング IP (v4/v6) / ICMP / IPsec / OSPF / BGP / IS-IS PDU: Packet IP アドレスで識別 L2 Data Link データリンク層 / 隣接ノード間配送 Ethernet / Wi-Fi (802.11) / PPP / ARP / VLAN / MPLS PDU: Frame MAC アドレスで識別 L1 Physical 物理層 / 電気・光・電波信号 銅線 / 光ファイバ / 無線 / RJ-45 / RS-232 / 電圧規格 PDU: Bit / Symbol 物理メディア PDU = Protocol Data Unit。各層が扱う「データの単位」名称

3. 各層の役割 #

3.1 第 1 層 — 物理層 (Physical Layer) #

ビット (0/1) を物理的な信号 (電圧・光・電波) として送受信する層。「ケーブルとコネクタとビットの世界」

責務:

  • 電気・光・電波の エンコード (NRZ, Manchester, 4B/5B, PAM など)
  • コネクタ形状とピン配列 (RJ-45, SFP, USB-C)
  • 電圧レベル / 周波数 / 変調方式
  • 同期 (クロック)

代表規格:

  • Ethernet PHY (10BASE-T, 1000BASE-T, 10GBASE-SR)
  • 光ファイバ (シングルモード / マルチモード)
  • 無線 (802.11 PHY, Bluetooth PHY)
  • RS-232 / RS-485 / V.24 (シリアル)
  • DSL / DOCSIS (家庭用)

障害例: ケーブル断線、コネクタの嵌合不良、SFP モジュール故障、電源ノイズ。ping は通らないが LED も光らないような切り分けはここを疑う。

3.2 第 2 層 — データリンク層 (Data Link Layer) #

隣接した 2 ノード間 でフレームを正しく届ける層。同じ LAN セグメント内、または同じ点対点リンクの両端のやり取り。

責務:

  • フレーム化 (start/stop bit や preamble でビット列を意味のある単位に区切る)
  • アドレッシング (MAC アドレス: 6 バイト = 48 bit、世界一意)
  • 誤り検出 (FCS / CRC)
  • メディアアクセス制御 (CSMA/CD, CSMA/CA, トークンパッシング)
  • フロー制御 (PAUSE フレーム、Wi-Fi の RTS/CTS)
  • VLAN タグ付け (802.1Q)

L2 は内部的に 2 つのサブレイヤに分かれることが多い:

  • LLC (Logical Link Control, 802.2) — 上位層との接続
  • MAC (Media Access Control) — 媒体アクセス制御

代表プロトコル:

  • Ethernet (IEEE 802.3) — 圧倒的シェア
  • Wi-Fi (IEEE 802.11)
  • PPP (Point-to-Point Protocol)
  • ARP — IP→MAC 解決 (厳密には L2.5)
  • STP / RSTP — スイッチ間ループ防止
  • LACP — リンク集約

スイッチ は L2 機器の代表。MAC アドレステーブルでフレームを適切なポートへ転送する。

3.3 第 3 層 — ネットワーク層 (Network Layer) #

異なるネットワーク をまたいで宛先までパケットを運ぶ層。「世界規模のルーティング」の世界。

責務:

  • 論理アドレッシング (IP アドレス)
  • 経路選択 (ルーティングテーブル + ルーティングプロトコル)
  • フラグメント化 (MTU 超過時)
  • エラー通知 (ICMP)
  • アドレス変換 (NAT は厳密には L3+L4)

代表プロトコル:

  • IPv4 / IPv6 — 主役
  • ICMP / ICMPv6 — エラー / 制御
  • IPsec — IP レイヤ暗号化 (VPN)
  • OSPF / IS-IS — IGP (組織内ルーティング)
  • BGP — EGP (AS 間ルーティング、インターネットの背骨)

ルータ は L3 機器の代表。宛先 IP アドレスから経路を選んで転送する。

3.4 第 4 層 — トランスポート層 (Transport Layer) #

エンドホスト同士の論理接続 を担う層。L3 までは「IP アドレスで端末まで」、L4 で「どのアプリ (port) に届けるか」を識別する。信頼性 / 順序 / 多重化 を提供。

責務:

  • ポート番号 (16 bit, 0〜65535) でアプリを識別
  • コネクション管理 (TCP の 3-way ハンドシェイク)
  • 再送制御 / 順序制御 (TCP)
  • フロー制御 (TCP の Window)
  • 輻輳制御 (TCP の cwnd, BBR, CUBIC)
  • 多重化 / 分離 (1 ホスト上の多数接続)

代表プロトコル:

  • TCP (Transmission Control Protocol) — 信頼配送 (HTTP, SSH, SMTP)
  • UDP (User Datagram Protocol) — ベストエフォート (DNS, VoIP, ゲーム)
  • QUIC — UDP ベース、HTTP/3 の土台 (TLS 1.3 内蔵)
  • SCTP — マルチストリーム / マルチホーム
  • DCCP — UDP に輻輳制御を足したもの

ファイアウォール は L3+L4 で動作するのが基本 (IP / port のフィルタ)。L7 ファイアウォールは更に上位を見る。

3.5 第 5 層 — セッション層 (Session Layer) #

複数のメッセージをまたぐ「対話 (セッション)」 を管理する層。接続の確立・維持・切断・同期点 (チェックポイント) の挿入。

OSI が想定したオリジナルなセッション層は、長い対話の中で同期点を打ち、障害復旧後にそこから再開 できるような重厚な仕組み (X.225 など) だったが、TCP/IP の世界では L4 の TCP / L7 のアプリ自身がセッション管理を兼ねる ため、L5 の独立した存在感は薄い。

代表プロトコル (TCP/IP 文脈で「これが L5」と語られるもの):

  • NetBIOS Session Service
  • RPC (Remote Procedure Call) のセッション管理
  • SOCKS プロキシ
  • SIP (Session Initiation Protocol) — VoIP / IMS のシグナリング
  • PPTP / L2TP — VPN トンネル

実装上は L5/L6/L7 が渾然一体になっていることが多い。

3.6 第 6 層 — プレゼンテーション層 (Presentation Layer) #

データの「表現形式」変換 を担う層。文字コード、エンコード、圧縮、暗号化 がここに分類される。

責務:

  • 文字コード変換 (ASCII ↔ EBCDIC ↔ UTF-8)
  • データ符号化 (ASN.1 / BER / DER, JSON, XML, MessagePack)
  • 暗号化 (TLS / SSL — 厳密には L4/L5/L6 にまたがる)
  • 圧縮 (gzip, deflate)
  • メディア変換 (JPEG, MP3, MPEG)

OSI 文脈で TLS は L6 に分類されるが、TCP/IP 実装では「TCP の上、HTTP の下」の薄い層として L4-L7 のどこかに居る、と語られる。

3.7 第 7 層 — アプリケーション層 (Application Layer) #

ユーザのアプリと最も近い層。HTTP, SMTP, DNS, SSH, FTP, IMAP/POP3 など、アプリの目的に合わせた具体的なプロトコルが並ぶ。

ここはアプリ実装側が直接触る世界で、L1〜L6 を「下のスタックがよろしくやってくれる箱」として扱う。OSI モデルの理念は「上層は下層の詳細を知らなくてよい」 で、この理想がもっとも美しく実現しているのが L7。

代表プロトコル:

  • HTTP / HTTPS / HTTP/2 / HTTP/3 — Web
  • SMTP / IMAP / POP3 — メール
  • DNS — 名前解決
  • SSH — リモートシェル
  • FTP / SFTP — ファイル転送
  • NTP — 時刻同期
  • SNMP — ネットワーク管理
  • MQTT — IoT メッセージング

4. カプセル化 (Encapsulation) と非カプセル化 #

データが上位層から下位層に渡るたびに その層のヘッダ (および時に末尾) が付与 され、最終的に物理層からビット列として送出される。受信側はその逆順で剥がす。これを カプセル化 / 非カプセル化 と呼ぶ。

送信側カプセル化 — 上から下へヘッダが積み上がる 受信側はちょうど逆順で各層がヘッダを剥がしてアプリに届ける L7 Application: Data (例: HTTP リクエスト) L7 L5/L6 hdr enc / TLS L7 Data (ペイロードはそのまま流れていく) L5-L6 TCP hdr src/dst port Segment = TCP hdr + (上位データ) L4 IP hdr src/dst IP Packet = IP hdr + Segment L3 Eth hdr src/dst MAC Frame = Eth hdr + Packet + FCS FCS CRC L2 10101100 11001010 ... (ビット列として線へ送出) L1 受信側はちょうど逆順 — 各層が自分のヘッダを剥がして上位に渡す • L1 → L2: ビット列を解釈し、Frame として認識 / FCS で誤り検出 • L2 → L3: Eth ヘッダを剥がして Packet を取り出す • L3 → L4 → L7: 順次ヘッダを剥がし、最終的にアプリに L7 Data が届く

実際のヘッダサイズ感:

  • Ethernet: 14 byte (header) + 4 byte (FCS) = 18 byte
  • IP: 20 byte (IPv4) / 40 byte (IPv6)
  • TCP: 20 byte (option なし) / 最大 60 byte
  • TLS: ハンドシェイク後は 5 byte の record header + AEAD タグ

合計で 数十 byte のヘッダ が必ずペイロードに付くため、MTU 1500 byte の Ethernet で送れる アプリペイロードは ~1460 byte (TCP の場合) 程度になる。

5. OSI モデル と TCP/IP モデル の対応 #

実用される TCP/IP モデルは 4 層 または 5 層 で語られるのが一般的で、OSI 7 層との対応はおおむね以下:

OSI 層 TCP/IP 4 層 TCP/IP 5 層 (DoD) 代表プロトコル
L7 Application Application Application HTTP, SSH, DNS, SMTP
L6 Presentation (Application 内) Application TLS, MIME, JSON
L5 Session (Application 内) Application NetBIOS, SOCKS, SIP
L4 Transport Transport Transport TCP, UDP, QUIC
L3 Network Internet Network IPv4, IPv6, ICMP
L2 Data Link Link Data Link Ethernet, Wi-Fi, PPP
L1 Physical (Link 内) Physical 銅線, 光ファイバ, 電波

OSI L5/L6/L7 を TCP/IP では Application 層に統合、OSI L1/L2 を TCP/IP 4 層では Link 層にまとめる、というのが実装上の流儀。

6. なぜ TCP/IP が勝ったのか #

「ベンダー中立で美しく完成した OSI」が「研究ネットワーク発で雑然とした TCP/IP」に負けた。理由は大きく 4 つ:

1. 動くコードが先にあった TCP/IP は 1983 年に ARPANET で稼働中。OSI プロトコル群は 1980 年代後半でもまだ実装が揃っていなかった。「仕様より実装」が現場の論理だった。

2. シンプルだった TCP/IP は 「動くものを最小限で」 の設計、OSI は 「あらゆるユースケースを織り込む」 の設計。後者は仕様書が分厚く、実装コストが圧倒的に重かった (X.400 メールスタックは ASN.1 BER 含めて文字通り「数千ページ」)。

3. オープンで無料だった BSD の TCP/IP 実装が ソースコードレベルで自由に使えた。OSI スタックは多くがベンダーの商用品で、コストも互換性も問題があった。

4. 学術と商用の両輪 TCP/IP は 大学とベンダーが両側から拡張を持ち寄り、デファクト標準として成長。OSI は 委員会駆動で、現場の声が反映されるまでに何年もかかった。

皮肉な真実: OSI は「美しく完成した規格を定義してから実装する」というウォーターフォール、TCP/IP は「動くものを作って徐々に標準化する」というアジャイル。ソフトウェア開発の歴史と完全に重なる教訓となった。

7. それでも OSI モデルが現役な理由 #

実装は TCP/IP でも、問題切り分けと教育のフレームとしては今も OSI が使われている。

7.1 障害切り分けの共通言語 #

「Web サイトが見えない」というインシデントを切り分けるとき:

  • L1: ケーブルは刺さっているか、リンクランプは点いているか
  • L2: ARP は引けているか、MAC アドレステーブルに載っているか
  • L3: ping (ICMP) で IP まで届くか、ルーティングテーブル正しいか
  • L4: 該当 port は開いているか (telnet / nc でポートチェック)
  • L5-L7: TLS ハンドシェイク成功しているか、HTTP ステータスは 200 か

「下から順に切り分ける」 (bottom-up troubleshooting) という診断アプローチは、ネットワーク運用の基礎として今も第一線。

7.2 セキュリティ対策のレイヤ分け #

セキュリティ対策も「どの層で守るか」を意識するのが実務常識。

攻撃例 対策例
L1 ケーブル盗聴、電磁波傍受 物理セキュリティ、シールド
L2 MAC spoofing, ARP poisoning, VLAN hopping Port Security, DAI, 802.1X
L3 IP spoofing, DDoS, ルーティング詐欺 uRPF, BCP 38, RPKI
L4 SYN flood, port scan SYN cookies, ファイアウォール
L5-L7 TLS 中間者, XSS, SQL injection, CSRF TLS, WAF, 入力検証

防御の基本は 「複数層で重層防御」 (Defense in Depth)。

7.3 ベンダー製品の分類軸 #

ネットワーク機器・セキュリティ製品の分類はほぼ OSI 層基準:

  • L2 スイッチ (純粋な MAC スイッチ) / L3 スイッチ (ルータ機能内蔵)
  • L4 ロードバランサ (TCP/UDP) / L7 ロードバランサ (HTTP 内容を見る、e.g. nginx, F5)
  • L4 ファイアウォール / L7 ファイアウォール (WAF)
  • L7 プロキシ (HTTP プロキシ, SOCKS は L5)

製品選定でも「何層で動かすか」が議論の出発点になる。

8. まとめ #

ISO 基本参照モデルは「実プロトコルとしては敗れたが、思考の枠組みとしては今なおスタンダード」という稀有な存在である。実装の世界は TCP/IP が支配しているが、「どの層の問題か」どの層で守るか」「どの層に機能を置くか」を議論するときに、すべての人が共通して使える 7 段階のスケールを提供しているのが OSI モデルの最大の価値。

ネットワークを学ぶ際の入り口として、また実務での障害切り分け・セキュリティ設計・製品選定の言語として、OSI 7 層は最初に押さえ、最後まで使い続ける 概念である。下から積み上げて理解し、上から下まで行き来できるようになると、「なぜ HTTPS が遅い」「なぜ ping は通るのに HTTP が落ちる」のような複合的な問題も、迷わずに切り分けていける。