ssecutils
Network / Browser-native guide

OSI参照モデルとTCP/IPモデル

L1からL7までの役割、カプセル化、代表プロトコル、障害切り分けへの使い方を説明します。

6Zero tracking reading surface

「L4」「L7 ロードバランサ」って何の話?

ネットワーク機器の話で「L2 スイッチ」「L4 ロードバランサ」「L7 でルーティング」のような表現が出てきます。この「L◯」の正体が OSI 参照モデル(OSI Reference Model)の階層です。

この記事では OSI 7 層モデルと、実装上は支配的な TCP/IP モデルの両方を整理し、「どの層で何が起きているのか」を初学者向けに俯瞰します。

なぜ階層に分けるのか

ネットワーク通信は「電気信号で 0/1 を送る」から「メールアドレスで相手にメッセージを届ける」まで、抽象度が大きく違う処理を組み合わせて実現されています。これを 1 つのプログラムで全部書くと、変更が困難で保守できないコードになります。

そこで 「各層は隣接する層の機能だけ使い、上下の中身は気にしない」 という設計原則で分割します。たとえば HTTP は「TCP がデータを確実に届けてくれる」前提で動き、TCP は「IP がパケットを宛先に運んでくれる」前提で動きます。下の層が変わっても上の層は影響を受けません(HTTP はそのままで Ethernet → Wi-Fi に変えても動く)。

OSI 参照モデル(7 層)

ISO が標準化した「理論上の理想モデル」で、教科書や試験問題で頻出です。下から順に:

名称役割代表プロトコル / 機器
L7Applicationアプリ向けの通信HTTP / HTTPS / SMTP / DNS / SSH
L6Presentationデータの表現・変換TLS の暗号化、文字エンコード
L5Session会話の確立・維持・終了TLS のセッション、NetBIOS
L4TransportEnd-to-End の通信TCP / UDP
L3Network論理アドレッシング・ルーティングIP(IPv4 / IPv6)/ ICMP / ルーター
L2Data Link同一ネットワーク内の伝送Ethernet / Wi-Fi / MAC アドレス / スイッチ
L1Physical物理的な信号の伝送ケーブル / コネクタ / 電波 / ハブ

記憶の小ネタとして、英語の各層の頭文字を「Please Do Not Throw Sausage Pizza Away」(L1→L7)と覚える定番フレーズがあります。

TCP/IP モデル(4 層)

実装上は「OSI の L5・L6 はあまり明確に分かれていない」「L1・L2 もまとめて1つで考えることが多い」という実態があり、業界で広く使われるのは TCP/IP 4 層モデルです。

OSI で言うと代表プロトコル
ApplicationL5-L7HTTP / SMTP / DNS / SSH / TLS
TransportL4TCP / UDP
InternetL3IP / ICMP / ARP*
Link / Network AccessL1-L2Ethernet / Wi-Fi / PPP

* ARP は厳密には L2/L3 の境界に位置する補助プロトコル。

カプセル化のイメージ

実際の通信では、上の層のデータを下の層が「自分のヘッダーを付けて包む」処理を行います。これをカプセル化(encapsulation)と呼びます。

L7  [ HTTP リクエスト        ]
L4  [ TCP ヘッダ | HTTP      ]
L3  [ IP ヘッダ | TCP | HTTP ]
L2  [ Eth ヘッダ | IP | TCP | HTTP | Eth トレーラ ]
L1  電気信号として送信

受信側は逆順にヘッダーを剥がして上の層に渡していきます(脱カプセル化)。

「L4 / L7」が指すもの

ロードバランサや WAF の文脈で「L4」「L7」と言うとき、それぞれ次のようなニュアンスです:

  • L4 ロードバランサ: TCP/UDP のヘッダー(IP / ポート)だけ見て振り分ける。中身(HTTP の URL 等)は見ない / 見られない。高速・軽量。AWS NLB
  • L7 ロードバランサ: TLS を終端し HTTP の中身まで見て振り分ける。URL / ヘッダー / Cookie でルーティング可能。AWS ALB / Nginx / Envoy

各層の代表的な攻撃

セキュリティの視点でも「攻撃が成立する層」を意識すると整理しやすくなります:

  • L1-L2: ARP スプーフィング、MAC アドレスフラッディング、Wi-Fi 盗聴
  • L3: IP スプーフィング、ICMP Flood
  • L4: SYN Flood、UDP amplification 攻撃
  • L7: XSS / SQLi / CSRF / HTTP Flood

ファイアウォールも層ごとに役割分担があります(L3/L4 のパケットフィルタリング、L7 の WAF)。

おわりに

実装上は TCP/IP モデルで考えれば十分ですが、OSI 7 層モデルは共通言語として現役です。L◯ という言い回しに出会ったら、即座にどの層の話か思い出せるようにしておくと、ネットワーク機器のスペック表や障害切り分けの会話が一気に楽になります。

当サイトの他の解説記事も、TCP / UDP は L4、IP / CIDR は L3、HTTPS / TLS は L4 〜 L7 にまたがる、という位置関係で読み返してみると理解が深まります。