【OSI参照モデル】

ネットワークを学習する上で、また試験対策としても、「OSI参照モデル」の7階層の名称と順番を覚えることは重要です。

例えば、ルータやハブ、ブリッジなどのネットワーク機器の違いはどの階層で動くのかが分かれば理解しやすいです。

OSI参照モデルとは

ネットワークを流れる信号(ON/OFFや1/0で表現される)からコンピュータの中で稼働するアプリケーションが扱うデータまでを7階層に分けたモデルです。

7階層はそれぞれ役割(機能)があり、その役割を果たして上位の階層や下位の階層にデータを渡します。




データを送信するときは、7→6→5→4→3→2→1という順にコンピュータ(パソコン)内でデータが加工され、電気信号または光信号としてネットワークケーブルを流れます。
データを受信するときは、1→2→3→4→5→6→7という順にコンピュータ(パソコン)内でデータが加工され、ユーザがアプリケーションを通じて受け取ったデータを処理します。

【OSI参照モデルの覚え方】

あ、 プレ ゼン  ト  ね、 デ  ブ

プリケーション層 プレゼンテーション層 ッション層 ランスポート層 ットワーク層 ータリンク層 理層


(2) 通信プロトコルの標準化とOSI参照モデル

コンピュータ間で通信を行う場合、互いにあらかじめ取り決めた通信プロトコル ※1 に従う必要があります。
さらに、通信プロトコルにはとても多くの取決めが存在します。
たとえば、それぞれのコンピュータで稼動するアプリケーション同士が通信を行う場合、アプリケーション同士の通信の取決めが必要になります。

アプリケーションが情報を送信する場合には、これを効率よく転送できるように情報を変換するための別の取決めも必要です。
さらに、通信を開始したり終了したりする際の取決めも、通信異常などが起きたときの取決めも必要です。

ほかにも、送信する情報をパケット ※2 に分割するための取決めや、この情報を実際にケーブルや光ファイバによって
送受信するための電気信号や光信号レベルの取決めも必要不可欠となります。
このように、多くの取決めを1つ1ついろいろな事象を考慮してあらかじめ示し合わせておく必要があります。

しかし、実際には、メーカやコンピュータの種類によって取決めが異なる場合もあり、せっかくネットワーク環境が完成しても、
同じ機種でなければ接続できない、すなわち、汎用性に欠けるという問題が生じてしまいます。
また、複雑に絡み合うように存在する複数のプロトコルを無秩序に制御した場合、1つのプロトコルに変更が生じれば、
すべてのプロトコルに影響を与えかねない状況を生んでしまうため、とても不便です。

そこで、ISO(国際標準化機構:International Organization for Standardization)が中心となり、異なるコンピュータ間でも接続や通信を可能とする、
ネットワーク構築に必要な全体構成や各々のプロトコルなどの標準化が進められることになりました。
そして、この標準化の推進によってできたものが、OSI(open systems Interconnection)参照モデルです。

※1 プロトコル (ネットワーク上でデータを通信するための手順や規約。IPプロトコル (ネットワーク層)、TCP、UDP (トランスポート層)、
HTTP、FTP、SMTP、POP (アプリケーション層) など)
※2  パケット (データ通信において、ネットワーク層 (トランスポート層) を流れる分割されたデータの伝送単位)


OSI参照モデル OSI reference model

国際標準化機構(ISO)により制定された、異機種間のデータ通信を実現するためのネットワーク構造の
設計方針「OSI(Open Systems Interconnection)」に基づき、コンピュータの持つべき通信機能を階層構造に分割したモデル。

「OSI基本参照モデル」「OSI階層モデル」とも呼ばれています。
通信機能を7階層に分け、各層ごとに標準的な機能モジュール(交換可能な構成要素)を定義しています。




第7層:アプリケーション層
(送信側から届いたデータが、どのアプリケーションのものかを判断して、受信側で該当する正しいアプリケーションに引き渡します)
コンピュータを操作するユーザが使用するアプリケーション(サービス)と下の層の橋渡しをします。
たとえば、ユーザが通信すべきメッセージに「こんにちは」とキーボードから入力したとすると、これを下の層に引き渡したり、
電子メールのデータが他より送られてきた場合、正確に電子メールのアプリケーションにデータを引き渡したりといった働きをします。

データ通信用のアプリケーションには、ファイル転送(file transfer)やTelnetという遠隔操作、電子メールの送受信など様々あります。
アプリケーション層では、届いたデータがこれらのうちのどのアプリケーションのものかを判断して、受信側で該当する正しいアプリケーションに引き渡します。
また、送り出される情報では送信先のどのアプリケーションへ渡されるものかが明確になっています。

これらの交通整理を的確に行い、情報自体を認識し、制御する働きをするのがアプリケーション層です。
アプリケーション層の働きによって、ファイル転送の情報は相手のファイル転送アプリケーションに、Telnetの情報は相手のTelnetに間違いなく引き渡されます。
アプリケーション層は、ユーザが通信を目的として活用するアプリケーションの固有の機能を実現しています。

第6層:プレゼンテーション層
(上下の層から渡されたデータの圧縮方式や暗号化方式、文字コードを点検し、通信に適した形に変換して相手層に引き渡す役割を果たします)
プレゼンテーション層は、上の層から渡された情報を通信に適した形に変換して下の層に引き渡したり、下の層から渡された情報を
アプリケーション層に適した形に変換して上の層に引き渡す役割を果たします。
画像や文字、音声ではそのデジタル化の方法が異なっているため、扱っているデータがどの種類なのかを判断し、変換する役割を持っています。

第5層:セッション層
(コンピュータ間でのデータ通信の開始と終了を管理します)
1台のコンピュータは1つのプログラムだけを実行しているわけではありません。
いくつかのプログラムを実行しています。
ブラウザが受け取らなければいけないデータをメールソフトが受け取ってしまうと都合が悪いです。
通信相手の同じプログラム同士が通信できるようにするためにセッション層があります。
プレゼンテーション層で符号化されたデータを実際に送信するための論理的な経路 (コネクション) を確立したり、
どの送信方法で送信するかを決定し、通信の終了も管理します。

第4層:トランスポート層
(コンピュータ間のデータを点検、パケットに抜けがないかを監視し、データ転送の信頼性を確保ます)
送信する情報は、実際には複数のパケットに分割されて送信されますが、これら複数の情報の中には途中の通信の状態によって
届かないものが出てくる可能性もあります。
パケットが1つでも抜けてしまった場合、送信された情報は正しく相手に伝わらなくなってしまいます。

トランスポート層では、これらの細分化されたデータの1つ1つを点検し、データに抜けがないかを監視しています。
もし、抜けがあった場合には相手のトランスポート層に連絡をして、抜けていた情報を再度送信するように依頼します。
具体的には、ネットワーク層を通して送られてきたデータの整序(順序制御)や誤り訂正(エラー制御)、および再送要求(フロー制御)などをおこないます。
TCP、UDPなどがトランスポート層に属します。

第3層:ネットワーク層
(IPアドレスを点検し、どの相手に送るかを決定します)
相手のアドレスと自分のアドレスを明確にし、ネットワーク上のどの相手に送信するのかを決定し、送信時の経路を明確にします(エンドツーエンド通信)。
具体的には、ネットワーク上の全コンピュータに一意なアドレスを割り当て、データの伝送経路決定、パケットサイズの変換などをおこないます。
IP(インターネットプロトコル)などがネットワーク層に属し、ルータなどの製品がネットワーク層をカバーしています。

第2層:データリンク層
(コンピュータ間でのデータの伝送経路を管理し、宛先の点検や再送要求などを行います)
ネットワーク上で直結されている機器同士(隣接ノード間 ※3)での伝送経路を管理します。
ネットワーク層で明確にしたアドレスが相手まで到達するためには、途中いくつものコンピュータやルータを経由していかなければなりません。
データリンク層では、目的の相手に到達するために経由しなければならない、次の機器の宛先を管理します。
具体的には、電気信号の誤り訂正や再送要求などがこの層で行われます。
PPPなどの規格がデータリンク層に相当しており、ブリッジ ※4 や スイッチングハブ ※5 などの製品がデータリンク層をカバーしています。

※3 ノード (node)(PCやハブ、ルータ等のネットワーク機器)
※4 ブリッジ (bridge)(ネットワークにおいて、ケーブルを流れるデータを中継する機器。転送先の MAC アドレスを見て適切なポートにのみ信号を中継する。
Ethernet と FDDI など、媒体の異なるネットワーク間を中継する機能を持ったものもある)

※5 スイッチングハブ (switching hub)(ネットワークの中継機器であるハブの一種。ブリッジとして働き、端末から送られてきたデータを解析して
あて先を検出し、送り先の端末にのみデータを送信する。
このため、ネットワーク全体の負荷が軽減し、セキュリティが向上する)

 第1:物理層
(データリンク層から渡されたデジタル信号を実際に伝送するためのアナログ信号に変換したり、届いた電気信号をデジタル信号に変換したりします)
通常コンピュータは「0」と「1」の数字からなるビット列(デジタル信号)でデータを処理しています。
物理層のプロトコルは、これをケーブルなどのネットワーク媒体に流すために、アナログ電気信号に変換します。
(ケーブルが光ファイバーケーブルなら光信号、無線なら電磁波に変換します。)

逆に、ネットワーク媒体からのアナログ電気信号をデジタル信号に変換して受け取ったりという役割も受け持っています。
さらに、物理層では、ケーブルの長さや特性、コネクタの形状なども規定されています。
物理層で動作する機器としてハブ(スイッチングハブを除く)※6 や リピータ ※7 があります。

※6 ハブ (hub)(リピータとして働き、ある端末から送られてきたデータをすべての端末に対して送信する。そのため、データの取捨選択は各端末が行う)
※7 リピータ (repeater)(ネットワークを延長するための機器で、通信ケーブル同士を接続し、受信した信号を整形、増幅して中継・転送する。
物理的に1本のケーブルでは信号の減衰などの影響で最大ケーブル長が決まっているが、リピータを使用することにより最大ケーブル長以上の
距離まで到達させることが可能になる)



OSI参照モデルと実際のLANとの対比

LANを構成する要素は大きく分けて

・ハードウェア
・プロトコル
・サービス

の3つに分類できます。これはOSI参照モデルにもあてはまっており、ネットワークを考える際にはこれらを切り分けて考える必要があります。

OSI参照モデルの第1層-第2層はハードウェアと考えることができます。
ハードウェアとはHUBやLANケーブル、LANカードです。

同様に第3層-第4層はプロトコルと考えることができます。
プロトコルとはTCP/IPやNetBEUIです。

第5層-第7層はサービスと考えることができます。
サービスとはメール、グループウェアをさしています。

メールなどのサービスは送信したいデータをプロトコルに詰め込んでハードウェアを経由して他のコンピュータに送信します。
受け取ったコンピュータはハードウェアからプロトコルに包まれたデータを取り出し、サービスがそのデータを受け取る事により通信が実現しているのです。

ネットワークとはこの「ハードウェア」「プロトコル」「サービス」が積み上がって機能しています。
積み上がって機能しているがゆえにどれか一つに障害が発生しただけでネットワークは機能しなくなってしまいます。





【OSI参照モデル 練習問題

以下のOSI参照モデルについての説明の文章中の空欄を下の <Key Words> から選択して埋めてください。
なお、<Key Words> は複数回使われるものもありますし、1度も使われないものもあります。

<Key Words>

「物理的」   「データリンク層」  「エラー制御」 「ISO」 「論理的」  「ネットワーク層」 
 IEEE」  「隣接ノード間」 「FIFA」 「信頼性」 「ANSI」 「プレゼンテーション層」
「固有」  「エンドツーエンド」 「共通」 「物理層」 「4階層」 「プログラム間通信」
「表現形式」  「セッション層」 「暗号化方式」 「アドレス」 「7階層」 「アプリケーション層」
「圧縮方式」  「ケーブルの長さ」 「文字コード」 「フロー制御」 「順序制御」 「トランスポート層」
IPアドレス」  「MACアドレス」 「IPXアドレス」 「階層構造」 「電気信号」 「プログラム」


【1】
OSI参照モデルは (「 」) が定めています。
これは通信の機能を階層構造にわけてモデル化したものです。
OSI参照モデルでは (「 」) の階層構造になっています。

各階層の名前は下から、(「 」)、(「 」)、(「 」)、(「 」)、(「 」)、(「 」)、(「 」) です。
また一番下の層から数えて第何層という言い方もしています。
たとえば、OSI参照モデル第3層といえば、(「 」) をさしています。

【2】
各階層の機能を考えていきます。まず物理層です。
物理層ではネットワークの物理的な機能を提供するための取り決めを行っています。
具体的には、(「 」) やコネクタの形、コンピュータが取り扱う「1」「0」のビット列を (「 」) に変換する方法などが決められています。

【3】
その上の第2層 (「 」) では、隣接ノード間の通信を行うために決まりが考えられています。
この隣接ノードとは、同じケーブルにつながっているコンピュータ同士です。
(「 」) の通信を行うために、データの形 (フレームフォーマット) やどのコンピュータがいつどのようにデータを送信するか、
エラーチェックの方法などを決めています。

【4】
第3層のネットワーク層では、エンドツーエンドの通信を行います。
(「 」) の通信とは、あるコンピュータとあるコンピュータの間の通信です。
2つのコンピュータが存在するネットワークが異なっていてもかまいません。
エンドツーエンドの通信を行うために、ネットワーク上の全コンピュータに一意な(「」)を割り当てます。
TCP/IPでは (「 」) です。

【5】
第4層の (「 」) は、エンドツーエンドの通信の信頼性の確保を行っています。
(「 」) でエンドツーエンドの通信を行うための経路がわかったのですが、その経路上で信頼性の高い通信を行うために (「 」) があります。
そのために、(「 」)、(「 」)、(「 」) などを行います。

【6】
(「 」) では、プログラム間通信を規定しています。
またはプロセス間通信とも言っています。
1台のコンピュータは1つのプログラムだけを実行しているわけではありません。
いくつかのプログラムを実行しています。
ブラウザが受け取らなければいけないデータをメールソフトが受け取ってしまうと都合が悪いです。
通信相手の同じ (「 」) 同士が通信できるようにするためにセッション層があります。

【7】
(「 」) は、データの表現形式の統一を行います。
(「 」) にはたとえば (「 」)、(「 」)、(「 」) などがあります。
プレゼンテーション層の機能がおかしいといったときには、文字化けなどが起こってしまってただしくデータを判別できないということになってしまいます。

【8】
第7層 (「 」) は、アプリケーション固有の機能を実現しています。
その機能はアプリケーションによってさまざまです。
たとえば、ブラウザは、リンクをクリックしたらそのページを開きます。
メールソフトでは、送受信ボタンを押すと実際にメールの送受信を行っています。
このようなアプリケーション固有の機能を実現しているのが、アプリケーション層です。

OSI参照モデルの各階層の機能を簡単にまとめると次のようになります。

物理層:ネットワークの (「 」) なきまり
データリンク層:(「 」) の通信
ネットワーク層:(「 」) の通信
トランスポート層:エンドツーエンドの通信の (「 」) を確保
セッション層:(「 」)
プレゼンテーション層:データの (「 」) の統一
アプリケーション層:アプリケーション (「 」) の機能



【OSI参照モデル 練習問題解答

【1】
OSI参照モデルは (「ISO」) が定めています。
これは通信の機能を階層構造にわけてモデル化したものです。
OSI参照モデルでは (「7階層」) の階層構造になっています。

各階層の名前は下から、(「物理層」)、(「データリンク層」)、(「ネットワーク層」)、(「トランスポート層」)、(「セッション層」)、(「プレゼンテーション層」)、
(「アプリケーション層」) です。
また一番下の層から数えて第何層という言い方もしています。
たとえば、OSI参照モデル第3層といえば、(「ネットワーク層」) をさしています。

【2】
各階層の機能を考えていきます。まず物理層です。
物理層ではネットワークの物理的な機能を提供するための取り決めを行っています。
具体的には、(「ケーブルの長さ」) やコネクタの形、コンピュータが取り扱う「1」「0」のビット列を (「電気信号」) に変換する方法などが決められています。

【3】
その上の第2層 (「データリンク層」) では、隣接ノード間の通信を行うために決まりが考えられています。
この隣接ノードとは、同じケーブルにつながっているコンピュータ同士です。
(「隣接ノード間」) の通信を行うために、データの形 (フレームフォーマット) やどのコンピュータがいつどのようにデータを送信するか、
エラーチェックの方法などを決めています。

【4】
第3層のネットワーク層では、エンドツーエンドの通信を行います。
(「エンドツーエンド」) の通信とは、あるコンピュータとあるコンピュータの間の通信です。
2つのコンピュータが存在するネットワークが異なっていてもかまいません。
エンドツーエンドの通信を行うために、ネットワーク上の全コンピュータに一意な (「アドレス」) を割り当てます。
TCP/IPでは (「IPアドレス」)です。

【5】
第4層の (「トランスポート層」) は、エンドツーエンドの通信の信頼性の確保を行っています。
(「ネットワーク層」) でエンドツーエンドの通信を行うための経路がわかったのですが、その経路上で信頼性の高い通信を行うために
(「トランスポート層」) があります。
そのために、(「順序制御」)、(「エラー制御」)、(「フロー制御」) などを行います。

【6】
(「セッション層」) では、プログラム間通信を規定しています。
またはプロセス間通信とも言っています。
1台のコンピュータは1つのプログラムだけを実行しているわけではありません。
いくつかのプログラムを実行しています。
ブラウザが受け取らなければいけないデータをメールソフトが受け取ってしまうと都合が悪いです。
通信相手の同じ (「プログラム」) 同士が通信できるようにするためにセッション層があります。

【7】
(「プレゼンテーション層」) は、データの表現形式の統一を行います。
(「表現形式」) にはたとえば (「圧縮方式」)、(「暗号化方式」)、(「文字コード」) などがあります。
プレゼンテーション層の機能がおかしいといったときには、文字化けなどが起こってしまってただしくデータを判別できないということになってしまいます。

【8】
第7層 (「アプリケーション層」) は、アプリケーション固有の機能を実現しています。
その機能はアプリケーションによってさまざまです。
たとえば、ブラウザは、リンクをクリックしたらそのページを開きます。
メールソフトでは、送受信ボタンを押すと実際にメールの送受信を行っています。
このようなアプリケーション固有の機能を実現しているのが、アプリケーション層です。

OSI参照モデルの各階層の機能を簡単にまとめると次のようになります。

物理層:ネットワークの (「物理的」) なきまり
データリンク層:(「隣接ノード間」) の通信
ネットワーク層:(「エンドツーエンド」) の通信
トランスポート層:エンドツーエンドの通信の (「信頼性」) を確保
セッション層:(「プログラム間通信」)
プレゼンテーション層:データの (「表現形式」) の統一
アプリケーション層:アプリケーション (「固有」) の機能



Home Page