OSI参照モデルとは
1984年にISO(国際標準化機構)が制定したOSI(Open Systems Interconnection)モデルは、異なるメーカーの機器やソフトウェアが問題なく通信できるように、ネットワークの機能を7つの階層に分けて定義した参照モデルです。実際にそのまま実装されるプロトコルスタックというより、通信の仕組みを理解し障害を切り分けるための概念的な地図に近いもので、送信側ではデータが1階層に向かって下りながら各階層のヘッダーが付加され(カプセル化)、受信側では逆に7階層に向かって上りながらヘッダーが1つずつ取り除かれます(非カプセル化)。
第1層: 物理層
電気信号、光信号、電波のように、データを実際の媒体で伝送する最も下位の層で、ケーブル・コネクタ・電圧規格などを扱います。ハブやリピータ、LANケーブル、コネクタがこの層に該当し、この層は信号を伝えるだけで、アドレスや意味はまったく理解しません。
第2層: データリンク層
同じネットワーク内でMACアドレスを使い、隣接する機器までデータ(フレーム)をエラーなく届ける層です。イーサネットやWi-Fiの規格がこの層で動作し、スイッチがMACアドレステーブルを見てフレームを適切なポートに転送するのもこの層の役割です。フレーム単位の誤り検出は行いますが、遠くのネットワークまでの経路を見つける機能はありません。
第3層: ネットワーク層
IPアドレスを使って異なるネットワークにある機器まで最適な経路を見つけ、データ(パケット)を届ける層です。IP(Internet Protocol)とルーターが代表的な要素で、ルーターは宛先IPアドレスを見てルーティングテーブルを参照し、次に転送する経路を決定します。この仕組みがあるからこそ、パケットはインターネット上を複数のホップを経て宛先まで届きます。pingで使われるICMPもこの層に属します。
第4層: トランスポート層
TCPとUDPが動作する層で、ポート番号を使って同じ機器内の複数のアプリケーションを区別し、データ伝送の信頼性を担います。TCPは順序保証と再送によって信頼性のある伝送を提供し、UDPは信頼性を多少犠牲にする代わりに速度を優先します。
第5層: セッション層
通信する2つの機器の間で対話(セッション)を開始し、維持し、終了する役割を担う層です。現代のインターネットプロトコルでは、この機能はTLSやアプリケーション自体のセッション管理(クッキー、セッショントークン)に吸収されていることが多く、独立した実装層として明確に分かれていないケースがほとんどです。
第6層: プレゼンテーション層
データの形式を変換・暗号化・圧縮して、アプリケーション層が理解できる形に変える層です。文字コードの変換、JPEGやMP4のような形式の圧縮・解凍、SSL/TLSの暗号化が概念的にはこの層の役割にあたりますが、実際のインターネットプロトコルスタックではTLSがトランスポート層のすぐ上で動作するなど、OSIモデルほどきれいに分離された形では実装されていません。
第7層: アプリケーション層
ユーザーが実際に使うウェブブラウザ、メール、メッセンジャーなどのアプリケーションが通信する最上位の層です。HTTP/HTTPS(Web)、SMTP/IMAP(メール)、FTP(ファイル転送)、DNS(ドメイン解決)などのプロトコルがこの層で動作します。ユーザーに最も近い層であるため、「遅い」「開けない」といった体感上の問題の原因が、実際にはもっと下位の層(第3層のルーティングや第1層の信号品質など)にあることも少なくありません。
OSIモデルとTCP/IPモデルの違い
実際のインターネットはOSIの7階層ではなく、それより単純な4階層のTCP/IPモデルを基盤に動作しています。TCP/IPモデルはネットワークアクセス(OSIの第1〜2層に相当)、インターネット(第3層)、トランスポート(第4層)、アプリケーション(第5〜7層を統合)の4階層に単純化されています。実務では機器や標準文書はTCP/IPモデルを基準に説明されることが多いものの、階層ごとの役割を細かく分けて説明・診断する際には今でもOSI7階層モデルが教育現場や技術文書で広く引用されています。