広告
広告
https://www.7key.jp/nw/technology/hard/osi.html#osi
たいていの本の最初の方に登場し、なにやら難しい言葉で書かれた縦長の表。今回はそのOSI参照モデルについて話をすすめたいと思います。まずは、細かい内容より先に、いったいOSI参照モデルとは何なのか?から始めます。
最初に体系化されたネットワークアーキテクチャは、1974年にIBMが発表したSNA【Systemes Network Architecture】というものでした。その後、各企業が次々に独自のネットワークアーキテクチャを発表したのですが、ここで問題が出てきました。それぞれが独自のネットワーク構造をとっていたために、異機種間同士の接続が非常に困難だったのです。そこで、通信ネットワークのための標準的な概念の規定が要求されるようになり、OSI参照モデルというものが登場したのです。
国際的には、1977年にISO【International Organization for Standardization】によりOSI【Open Systems Interconnection】(開放型システム間相互接続)が提唱されて、1983年にOSI参照モデルが制定されました。このような経緯で、OSI参照モデルはWAN【Wide Area Network】環境における国際標準のネットワークアーキテクチャとしてスタートしたのです。
まとめますと、OSI参照モデルは7階層のモデルそのものをいうわけではありません。TCP/IPのようなネットワークアーキテクチャも含めた、「規定集」のことを指すのです。そして、各層はその規定の集まりを用途、目的別にグループ分けをする目安となるものです。
https://www.7key.jp/nw/technology/hard/osi.html#structure
難しい題名を付けてしまいましたが・・・ネットワークの解説書ならどの本にものっていますあの表のことです。あの表、覚えにくいですよね。セション層とトランスポート層、どちらが上だったかすぐに出てきますか?階層構造のことをうろ覚えな方、これから初めて覚える方、いい覚え方があります。「オプセトネデブ」この呪文を毎晩寝る前に5回唱えましょう。1週間で階層構造を覚えることができます。ただ頭文字をそのまま上から並べただけなんですけどね。。。
階層 | OSI参照モデル | TCP/IPモデル | |
---|---|---|---|
7 | 応用層 | 応用層 | |
6 | プレゼンテーション層 | ||
5 | セッション層 | ||
4 | トランスポート層 | トランスポート層 | |
3 | ネットワーク層 | インターネット層 | |
2 | データリンク層 | LLC副層 | データリンク層 |
MAC副層 | |||
1 | 物理層 |
よく比較されていますので右側にTCP/IPとの対比表を並べています。ここで、応用層、プレゼンテーション層、セッション層の3つの層をあわせて上位層と呼ぶことがあります。上位層は、アプリケーション間の情報のやり取りをスムーズに行うことを目的としています。一方、残りの4層をまとめて下位層といいます。下位層は、効率のよいデータ転送を行うことを目的としています。
ここで重要なのは階層化されているということです。なぜ、用途、目的別に階層化(グループ化)する必要があったのでしょうか?答えは簡単です。階層化することによって、ネットワーク上の通信という複雑な作業を単純化することができるからなのです。そして一番のメリットは、各階層が他の階層に依存しない、独立したものとして扱われることです。つまり、ある階層の変更点が他の階層に影響を及ぼさないため、機能の拡張が簡単にできるようになるということです。
https://www.7key.jp/nw/technology/hard/osi.html#communi
まず上の表を見てください。送信元の端末から送信先の端末までデータの流れる様子を表しています。まず、送信元では、アプリケーションプログラムで作られたデータが応用層のプロトコルに渡されます。応用層では、渡されたデータに制御用の情報(一般的にヘッダと呼ばれます)を付加し、下位のプレゼンテーション層のプロトコルにデータを渡します。そしてプレゼンテーション層でもヘッダをつけ下位の層のプロトコルにデータを渡して・・・とネットワーク層まで同じこと(もちろんヘッダの内容は違います)を行います。データリンク層ではヘッダの他にトレーラと呼ばれるデータ送信中に起きたエラーをチェックするための情報もあわせて付加します。そして、最下層になる物理層では、「0」と「1」で構成されている機械語を電気信号等のデータに変換してケーブルに流す役割を行います。一方、データを受け取る側では、下の層から順番に送信とは逆の処理を行っていき、最後にアプリケーションプログラムに送信元が作成したのと同じデータを届ける仕組みとなっています。
また、各層で付加されますヘッダの中で、特に重要な役割を果たすのがSAP【Service Access Point】と呼ばれているものです。これは、データを受信した際に、次に上の層の中のどのプロトコルに渡せばいいのかを識別するための番号となっています。各階層に存在するプロトコルは、当然一つではありません。SAP の情報を見て次に渡すべきプロトコルを認識しているのです。
また、各層でデータにヘッダをつけることは既述ですが、このヘッダ付のデータのことをPDU【Protocol Data Unit】と呼びます。 PDUはプロトコルデータ単位とも訳されるパケットの正式名称となっています。アーキテクチャ内のどの層もPDUを作り、それを下位層に渡して転送を行います。また、どの層も下位層からPDUを受け取って処理を行います。
ここで注意点と言いますかポイントと言いますか。このPDUなんですが、各階層によって呼ばれ方が違います。応用層、プレゼンテーション層、セッション層ではメッセージ、トランスポート層ではセグメントまたは、データグラム、ネットワーク層ではパケット、データリンク層ではフレーム(ヘッダとトレイラを付加されたデータ)とそれぞれ呼ばれています。
また、PDUはヘッダ部のPCI【Protocol Control Information】(プロトコル制御情報)とユーザ情報であるSDU【Service Data Unit】(サービスデータ単位)とで構成されています。つまり、ある層のPDUは、その下の層のSDUとなるわけです。
広告