ネットワーク通信の仕組みを学ぶうえで欠かせない「OSI参照モデル」は、通信機能を7つの層(レイヤー)に分けて整理したモデルです。
その中でも「プレゼンテーション層」は第6層に位置し、データの表現形式の変換や暗号化・圧縮などを担う重要な層です。
しかし、「プレゼンテーション層が具体的に何をしているのかよくわからない」という方も多いでしょう。
本記事では、OSI参照モデルの7層の構造を踏まえつつ、プレゼンテーション層の意味と役割、データ変換・暗号化の機能、セッション層との違いについてわかりやすく解説していきます。
プレゼンテーション層とは?結論として「データの表現形式を統一する変換レイヤー」
それではまず、プレゼンテーション層とは何かについて、結論から解説していきます。
プレゼンテーション層とは、OSI参照モデルの第6層に位置し、異なるシステム間でデータの表現形式を統一するための変換処理を担う層です。
送信側と受信側でデータの表現形式が異なる場合(文字コードの違い、データ構造の違いなど)に、相互理解できる形式に変換する「通訳」のような役割を果たします。
プレゼンテーション層の主な機能は以下の3つです。
データ変換:文字コード(ASCIIとEBCDICなど)やデータ形式(XMLとJSONなど)の変換を行います。
暗号化・復号:データを暗号化して安全に送信し、受信側で復号する処理を担います。
圧縮・展開:データを圧縮して転送効率を高め、受信側で元のデータに展開します。
プレゼンテーション層は、アプリケーション層が扱うデータの「意味」はわからないものの、そのデータの「形式」を正しく変換することに特化した層といえます。
現代のインターネット通信では、TLS/SSLによる暗号化がプレゼンテーション層の機能の代表例として挙げられます。
OSI参照モデルの7層の構造を確認しよう
プレゼンテーション層を正確に理解するために、まずOSI参照モデル全体の構造を確認しましょう。
OSI参照モデルの7層は以下のとおりです(下から上の順)。
第1層:物理層(Physical Layer)電気信号・光信号などの物理的な伝送を担います。
第2層:データリンク層(Data Link Layer)隣接ノード間のデータ転送とエラー検出を担います。
第3層:ネットワーク層(Network Layer)エンドツーエンドの経路制御(IPアドレスなど)を担います。
第4層:トランスポート層(Transport Layer)信頼性のある通信とフロー制御(TCP/UDPなど)を担います。
第5層:セッション層(Session Layer)通信セッションの確立・維持・終了を担います。
第6層:プレゼンテーション層(Presentation Layer)データの変換・暗号化・圧縮を担います。
第7層:アプリケーション層(Application Layer)ユーザーが直接使うアプリケーションのプロトコル(HTTPなど)を担います。
このようにプレゼンテーション層は、セッション層とアプリケーション層の間に位置しています。
データ変換の具体的な役割
プレゼンテーション層のデータ変換機能は、異なるシステム間の相互運用性を確保するために不可欠です。
たとえば、異なる文字コード体系(ASCIIとEBCDICなど)を使うシステム間でデータをやり取りする際に、プレゼンテーション層が変換処理を行うでしょう。
また、ビッグエンディアンとリトルエンディアンのバイトオーダーの違いを吸収する役割もプレゼンテーション層が担います。
XMLやJSON、ASN.1などのデータ表現形式の変換もプレゼンテーション層の機能に含まれます。
現代のWebサービスでは、JSONのシリアライズ・デシリアライズもプレゼンテーション層の概念に相当するといえるでしょう。
暗号化機能とTLS/SSLの関係
プレゼンテーション層の暗号化機能として最も代表的なのが、TLS(Transport Layer Security)とその前身であるSSL(Secure Sockets Layer)です。
HTTPSによる安全な通信は、TLSによる暗号化がプレゼンテーション層レベルで行われることで実現されています。
ただし、厳密にはTLSはトランスポート層とプレゼンテーション層の境界領域に位置するとも言われており、OSI参照モデルへの対応は必ずしも厳密ではありません。
暗号化の仕組みは送信側でデータを暗号化し、受信側で復号するという対称的なプロセスをとります。
現代のWebでは、ほぼすべての通信でTLSが使われており、プレゼンテーション層の暗号化機能は非常に重要な役割を果たしているでしょう。
セッション層との違いと連携の仕組み
続いては、プレゼンテーション層とセッション層の違い、および両者の連携の仕組みを確認していきます。
セッション層の役割とは
セッション層(第5層)は、通信セッションの確立・維持・終了を管理する層であり、プレゼンテーション層の1つ下に位置します。
「セッション」とは、2つの通信エンドポイント間の論理的な接続のことを指します。
セッション層は、複数のデータ送受信を1つの会話として管理したり、通信が途切れた場合に再開する仕組みを提供したりします。
チェックポイント機能(通信が途中で切れた場合に再開できる仕組み)もセッション層の機能のひとつです。
RPCやNetBIOSなどのプロトコルがセッション層に対応する代表例として挙げられるでしょう。
プレゼンテーション層とセッション層の違い
プレゼンテーション層とセッション層は隣接しており、混同されやすい層です。
最も重要な違いは、セッション層が「通信の接続・管理」を担うのに対し、プレゼンテーション層は「データの形式・表現」を担う点です。
セッション層は「いつ・どのように通信するか」を管理し、プレゼンテーション層は「何をどの形式で送るか」を管理するものとして区別できます。
現代の実際のプロトコル実装では、この2層の機能が明確に分離されていない場合も多く見られます。
TCP/IPプロトコルスタックでは、OSI参照モデルの第5・6層に相当する機能がアプリケーション層にまとめて実装されることが一般的です。
アプリケーション層との連携
プレゼンテーション層はセッション層から受け取ったデータをアプリケーション層に渡す前に、変換・復号・展開などの処理を行います。
アプリケーション層はデータの「意味」を処理し、プレゼンテーション層はデータの「形式」を処理するという役割分担が基本です。
HTTPの場合、HTMLやJSONなどのコンテンツ形式の解釈はアプリケーション層が行い、TLSによる暗号化・復号はプレゼンテーション層が担当します。
この役割分担によって、アプリケーションはデータの表現形式を気にすることなく、ビジネスロジックの処理に専念できます。
現代のプロトコルにおけるプレゼンテーション層の位置づけ
続いては、現代の実際のプロトコル実装においてプレゼンテーション層がどのように位置づけられているかを確認していきます。
TCP/IPモデルとの対応関係
インターネットで実際に使われているのはOSI参照モデルではなく、TCP/IPモデル(インターネットモデル)です。
TCP/IPモデルは4層構造であり、OSI参照モデルの第5・6・7層(セッション層・プレゼンテーション層・アプリケーション層)がTCP/IPモデルではアプリケーション層ひとつにまとめられているでしょう。
このため、TCP/IPベースの現代のプロトコル設計では、プレゼンテーション層の機能はアプリケーション層のプロトコル(HTTPSなど)やミドルウェアの中に組み込まれています。
OSI参照モデルはあくまでも概念的な参照モデルであり、実装の詳細を規定するものではありません。
HTTPSとTLSがプレゼンテーション層を担う仕組み
HTTPSは、HTTPの上にTLSによる暗号化を追加したプロトコルです。
TLSは通信の暗号化・認証・完全性保証を提供し、OSI参照モデルのプレゼンテーション層に対応する機能を実現しています。
TLSハンドシェイクによって暗号化方式と鍵の交換が行われ、その後の通信データが暗号化されます。
HTTPSによってWebブラウザとサーバー間の通信が保護され、パスワードやクレジットカード情報などの機密データを安全に送受信できるようになりました。
現代のWebではHTTPSが標準となっており、プレゼンテーション層の暗号化機能は私たちの日常的なインターネット利用を支えているといえるでしょう。
データ圧縮と転送効率の向上
プレゼンテーション層のもうひとつの重要な機能が、データの圧縮による転送効率の向上です。
HTTP通信ではgzipやBrotliなどの圧縮アルゴリズムが使われ、テキストデータを大幅に圧縮して転送量を削減しているでしょう。
クライアントが対応している圧縮方式をAccept-Encodingヘッダーで送信し、サーバーが対応する方式で圧縮してContent-Encodingヘッダーとともに返す仕組みが採用されています。
圧縮によってWebページの読み込み速度が向上し、ユーザー体験と帯域幅コストの両面で大きなメリットがあります。
| 層 | 名称 | 主な役割 | 代表的なプロトコル |
|---|---|---|---|
| 第7層 | アプリケーション層 | ユーザーアプリのプロトコル | HTTP・SMTP・DNS |
| 第6層 | プレゼンテーション層 | データ変換・暗号化・圧縮 | TLS/SSL・MIME |
| 第5層 | セッション層 | セッションの確立・管理・終了 | RPC・NetBIOS |
| 第4層 | トランスポート層 | 信頼性のある通信・フロー制御 | TCP・UDP |
| 第3層 | ネットワーク層 | エンドツーエンドの経路制御 | IP・ICMP |
まとめ
本記事では、プレゼンテーション層の意味と役割について、OSI参照モデルの7層の構造を踏まえながら、データ変換・暗号化・圧縮の機能、セッション層との違い、現代のプロトコルにおける位置づけを解説しました。
プレゼンテーション層は「データの表現形式を統一する変換レイヤー」として、異なるシステム間の相互運用性を支える重要な役割を担っています。
現代のWebにおいてはHTTPSとTLSによる暗号化という形で、プレゼンテーション層の機能が日常的に活用されているでしょう。
OSI参照モデルの各層の役割を理解することは、ネットワーク通信の仕組みを体系的に把握するための重要な第一歩となります。