OSI参照モデル②
今回は前回に引き続きOSI参照モデルです。
カプセル化
OSI参照モデルは通信に必要な機能を7つの階層に分けたものです。階層の一番上がアプリケーション層で最下層が物理層となります。各層のことをレイヤと呼び、アプリケーション層はレイヤ7(L7)、物理層はL1となります。
そしてそれぞれの階層に対応する通信プロトコルが存在しています。つまりどこかに通信する際には1つのプロトコルだけを使用しているのではなく、L7~L1の階層に対応したプロトコルを組み合わせています。プロトコルにはそのプロトコルで必要なデータがあります。例えば宛先までの通信に関して規定しているネットワーク層のプロトコルでは、住所のような宛先を識別するための情報が必要です。通信の際にはプロトコルで必要となる情報をデータに付与していき、その出来上がったものを相手に送信します。
このようにデータを付与していくことをカプセル化といいます。
カプセル化の流れ
次にカプセル化の流れを見ていきましょう。各層のプロトコルの情報を適当に付与していっても受け取った側が復元できないため、決まった順番に付与していく必要があります。
通信の際にはアプリケーション層→プレゼンテーション層→セッション層→トランスポート層→ネットワーク層→データリンク層→物理層の順番でプロトコルの情報を付与していくことになっています。
まずユーザが利用するアプリケーションで必要な情報が付与され、そのデータの表現形式に関する情報、接続の確立などを制御するために必要な情報、通信の信頼性などに関する情報、宛先を識別するための情報、宛先までに経由する最寄りの情報と順番に付与していき
最終的に電気信号や光に変換されて送信される形となります。それらの各層固有のデータはヘッダと呼ばれる部分に格納されています。ネットワーク層のヘッダにはネットワーク層のプロトコルで必要な情報となります。そうしたヘッダをアプリケーション層から順番に先頭につけていきます。つまりアプリケーション層のヘッダの前にはプレゼンテーション層のヘッダが付いていて、さらにその前にはセッション層のヘッダが付くといった具合です。データリンク層ではトレーラという送られてきたデータの整合性をチェックするためのデータも付与されます。
ちなみにその層の情報を除いた部分をペイロードといいます。例えばデータリンク層の場合、L2ヘッダとFCSを除いた部分がデータリンク層のペイロードとなります。
図で表すと以下のような順番になります。
このデータを受け取った宛先の端末が送信側とアプリケーション間でやり取りするためにはデータを取り出す必要があります。各層で付与されたデータをチェックしながら取り出していきます。電気信号を0と1のデータの戻し、データリンク層で付与されている情報を確認し問題がなければ、データリンク層のヘッダを外して次はネットワーク層のデータを確認する。こうした操作を繰り返していくことで最終的にアプリケーション層のヘッダが取り外されてデータが取り出せます。
このように各層のヘッダを外して中身を取り出していくことを非カプセル化といいます。
PDU
それぞれの層で扱うデータをPDU(Protocol Data Unit)といいます。
トランスポート層で扱うデータをセグメントといいます。
セグメントはL4ヘッダと上位層のデータを合わせたものということになります。そしてセグメントにL3ヘッダを付与したものをパケットといいます。
パケットにL2ヘッダを付与したものをフレームといいます。
このようにある層のヘッダを上位層のPDUに付与することでその層のPDUとなります。