OSI基本参照モデル

読み:おーえすあいきほんさんしょうもでる / 英語表記:Open Systems Interconnection Basic Reference Model

通信の機能を7階層に分け、各層の役割と相互関係を整理する参照モデル。トランスポート層は、通信網の品質の違いを補い、端から端までのデータ転送を上位層に提供する。

イマシルちゃんの解説

荷物を届けるときは、品物を包む人、行き先を決める人、車を走らせる人がいるよね。
みんなが役割と受け渡し方を決めておけば、違う車に替わっても仕事を続けやすいんだ。

途中の道路の事情を、荷物を頼んだ人が全部知る必要はないよ。
それぞれの担当が引き受ける範囲を決めると、全体を考えやすくなるんだ。

より深い解説

階層に分ける目的

OSI基本参照モデルはISO/IEC 7498-1やITU-T X.200で定められた、通信機能を整理する枠組みである。一つの通信プロトコルの名前ではなく、異なるシステムの通信機能を共通の観点で説明するために使う。

各層は、下位層のサービスを利用し、上位層へサービスを提供する。下位層の内部を変えても、受け渡しの条件を保てば、上位層への影響を抑えやすい。

各層の役割

層名称主な役割
7アプリケーション層利用者の目的に応じた通信サービスを提供する
6プレゼンテーション層データの表現形式の違いを調整する
5セッション層対話の進行や同期を管理する
4トランスポート層通信網の違いを補い、端から端までの転送を提供する
3ネットワーク層宛先への経路選択と中継を行う
2データリンク層隣接する機器間でフレームを扱い、伝送誤りの検出などを行う
1物理層電気・光・電波などでビット列を伝送する

表現形式の変換や対話制御は、実際のTCP/IPの実装ではアプリケーション側のプロトコルに含まれることも多い。モデル上の層と、製品内の独立したプログラムが必ず一対一になるわけではない。

トランスポート層の位置付け

途中の通信網では、パケットの損失や順序の入替わりなどが起こり得る。上位層が通信網ごとに異なる処理を作り込まなくて済むよう、必要な品質を満たす転送サービスを提供するのが、この層の役割である。

TCPは、順序管理や再送によって信頼性のある転送を提供する。一方、UDPはデータグラム単位の簡素な転送を提供し、TCPと同じ信頼性の仕組みを備えない。「この層なら、すべてのプロトコルが必ず再送する」とは判断しない。

区別する機能主に対応する層
通信網をまたいで宛先へ中継するネットワーク層
一つのリンク上でフレームを区切るデータリンク層
通信の両端で順序や到着を管理するトランスポート層

データを包んで渡す

送信側では、上位層のデータに下位層の制御情報を付けて渡す。この操作をカプセル化という。受信側では、対応する制御情報を処理して上位へ渡す。

例として、HTTPのデータをTCPのセグメントに入れ、そのセグメントをIPパケットへ入れ、さらにイーサネットのフレームで運ぶ。途中のルータでは、リンク用の制御情報を付け替えて次のリンクへ転送する。

モデルを使って切り分ける

通信障害を調べる際は、信号が届くか、同じLAN内で転送できるか、宛先への経路があるか、目的のサービスが応答するかを順に確認できる。層を意識すると、同じ「つながらない」でも調べる対象を絞れる。

実際の試験ではここに出る!

この用語が出てくる記事

↑