OSI参照モデル(続き)
第5層(レイヤ5):セッション層
OSI参照モデルの第5層「セッション層」の役割は、アプリケーションへのデータの振り分けです。1台のコンピュータ上で、複数のアプリケーションを同時に起動してデータを送受信することがあります。あるコンピュータに届いたデータを正しくアプリケーションへ振り分けなければいけません。セッション層のプロトコルによって、正しくアプリケーションへのデータの振り分けを行います。
第6層(レイヤ6):プレゼンテーション層
OSI参照モデルの第6層 プレゼンテーション層では、データの表現形式を一致させる役割を担っています。コンピュータがやり取りするデータは「0」と「1」のデジタルデータです。最終的にデータを扱うのは、基本的に人間です[2]。
そこで、「0」と「1」のデジタルデータを人間が理解できるように表現しなければいけません。たとえば、文字です。文字を表現するために文字コードを決めて、「a」というアルファベットの文字は「01100001」に対応付けています。アルファベットなどの1バイト文字を決めている文字コードはASCIIコードと呼ばれます。また、「0」と「1」で音声や動画を表現するMP3やH.264といったコーデックもプレゼンテーション層のプロトコルに相当します。
プレゼンテーション層のプロトコルは、文字コードのようなデータの表現形式を決めています。データの表現形式を一致させることで、通信相手との間で正しくデータを取り扱うことが可能です。
注
[2]: IoT(Internet of Things : モノのインターネット)では、人間が介在せずにセンサーなどが直接データを扱うような場合もあります。
第7層(レイヤ7):アプリケーション層
OSI参照モデルの第7層 アプリケーション層は、ユーザが利用するアプリケーション固有のルールを決めています。アプリケーションがデータをやりとするときには、何らかのリクエスト(要求)を送信して、そのリプライ(応答)を受信します。リクエスト/リプレイの種類(フォーマット)や手順を決めているのがアプリケーション層のプロトコルです。
たとえば、Webサイトを見る場合を考えると、WebブラウザからWebサーバアプリケーションにWebページの内容を送ってくれるようにリクエストします。Webブラウザからのリクエストに対するリプライとして、Webページの内容を転送します。Webブラウザ側で転送されてきたWebページの内容を表示することで、「Webサイトを見る」ことができます。
OSI参照モデルの利用
OSI参照モデルは、ネットワークを介したコンピュータ間の通信を考えている「モデル」です。実際の通信を行うためには、各階層の機能を実現するためのプロトコルを開発して、それらをまとめてネットワークアーキテクチャとしてコンピュータ上で利用できるようにします。ただ、現在のネットワーク環境ではOSI参照モデルの7階層に基づいたネットワークアーキテクチャを利用しているわけではありません。もっと階層構造がシンプルなTCP/IP[3]を利用しています。
だからといって、OSI参照モデルが重要ではないというわけではありません。OSI参照モデルは、ネットワークの通信を考えるときのモノサシの役割があります。たとえば、ネットワークを構成するネットワーク機器がどんな役割を担っているかをOSI参照モデルの階層で説明します。
「レイヤ2スイッチ」の「レイヤ2」とは、OSI参照モデルのデータリンク層です。つまり、レイヤ2スイッチは、同一ネットワーク内でデータを転送する役割を担っているネットワーク機器です。また、「ルータはレイヤ3のネットワーク機器」と表現されることがよくあります。これは、ルータはOSI参照モデルのネットワーク層、すなわちエンドツーエンド通信を実現する役割のネットワーク機器だからです。
さらに、障害が発生して切り分けを行うときに、OSI参照モデルに基づいて考えます。「この障害は物理層レベルの障害だ」というと、物理的な信号がやり取りできていない状態です。具体的にはケーブルが断線していたり、ケーブルが抜けていたり、ポート自体が故障しているなどを意味します。
注
[3]: TCP/IPは次回取り上げます。
OSI参照モデル 各階層のまとめ
OSI参照モデルは、ネットワークを介した通信を考えるモデルに過ぎませんが、通信の仕組みを理解するうえでとても重要です。CCENT試験でもよく出題されます。以下にまとめる、OSI参照モデルの各階層についてしっかりと把握しておきましょう。
階層 | 概要 |
---|---|
物理層 | 物理的な信号を伝えられるようにする |
データリンク層 | 同一ネットワーク内のデータの転送を行う |
ネットワーク層 | エンドツーエンド通信を行う |
トランスポート層 | エンドツーエンド通信の信頼性を確保する |
セッション層 | アプリケーションへデータを振り分ける |
プレゼンテーション層 | データの表現形式を一致させる |
アプリケーション層 | アプリケーション固有の機能を実現する |