[3] [DFN[[RUBYB[OSI 参照モデル]@en[[[OSI]] reference model]]]]は、
[[ネットワーク]]の[[プロトコル]]設計に関する[[モデル]]です。
OSI モデルでは[[ネットワーク・プロトコル・スタック]]を7階層に分け、
各[RUBY[[[層]]][レイヤー]@en[layer]]の[[プロトコル]]の役割分担と[[層]]間の[[界面]]について規定しています。

[4] OSI モデルはその名の通り [[OSI]] ネットワーク・プロトコル・スイートのためのモデルでしたが、
[[TCP/IP]] を含め現代的なネットワーク・プロトコル一般の基礎的な設計を定義するものと理解されています。
[WEAK[(実際には [[OSI]] 以外のネットワーク・プロトコル・スイートの階層化モデルは [[OSI]] モデルとは異なっており半ばこじつけと言えなくもありません。)]]

* 階層

[8] 階層は、下位から順に第1層-第7層と番号が割り振られています。またそれぞれに名称もあります。

[9] しばしば、 L1-L7 のように略記されます。

* OSI 参照モデルにおけるプロトコル階層

,*階層,*階層名,*プロトコルの例
,*[[第7層]],[RUBYB[[[アプリケーション層]]]@en[application layer]] ([[応用層]]),[[X.401]]
,*[[第6層]],[RUBYB[[[プレゼンテーション層]]]@en[presentation layer]] ([[表現層]]),
,*[[第5層]],[RUBYB[[[セッション層]]]@en[session layer]],
,*[[第4層]],[RUBYB[[[トランスポート層]]]@en[transport layer]] ([[輸送層]]),
,*[[第3層]],[RUBYB[[[ネットワーク層]]]@en[network layer]],[[X.25]]
,*[[第2層]],[RUBYB[[[データリンク層]]]@en[datalink layer]],[[IEEE 802]] [[データリンク層]]
,*[[第1層]],[[物理層]],[[IEEE 802]] [[物理層]]

* 現実

[10] 実際にはネットワークプロトコルの設計は難しい問題で、
純粋な [[OSI参照モデル]]の階層構造を用いたプロトコルスイートが用いられることはありません。

[6] [[MPLS]] は2.5層と言われることがあります。

[12] 複数階層にまたがった機能を提供する[[プロトコル]]や他の階層の[[プロトコル]]の動作に介入する仕様の[[プロトコル]]は[[階層化設計違反]]として非難の対象になりますが、
それでも実際には必要があるとして繰り返し提案され続けています。
([[マルチレイヤ設計]]などと呼びます。)

[5] [[インターネット]]の[[プロトコル]]も7層モデル上で説明されることがよくありますが、
実際に7つのプロトコル階層が使われているわけではありません。

[11] 下位層で [[OSI]] のモデルに従い規定されたプロトコルを使っていても、
上位層で[[インターネット]]のプロトコルなどを使っていて、
7層構造になっていないのは普通です。


[17] 
[[OSI参照モデル]]と現実の乖離って作ってみたら実際は理想ほどうまくできませんでした、っていうような簡単な話ではないのが難しい所なのですよね。

[18] 
[[ISO]] のお偉方が長年真面目に[[委員会による設計]]を続けて動くか動かないかわからない仕様案を練ってる間に、
どこの馬の骨ともわからん [[TCP/IP]] 陣営がそいつら完全スルーで実働するものを作ってしまっちゃった。それが普及しちゃった。
だから [[ISO]] サイドの世界中の通信業界の官学民のみなさんは [[TCP/IP]] 
が気に入らなかった。[[インターネット]]が普及しても、ずっと逆恨み続けてるような大学の先生が[[平成時代]]中期頃までずっと生き残ってたんですな。

[19] 
まあそれも大きく見れば、現実は理想ほど美しくないってことでまとめてしまえるのかな。

[20] 
それなら [[TCP/IP]] 大勝利じゃん、 [[OSI参照モデル]]は無用の長物か?っていうとそれもちょっと違うんですよね。
なんだかんだ [[ISO]] の権威はあるので、 [[OSI]] との整合性をちゃんとしましょう、
っていうのは [[IETF]] でもずっと幅を利かせていて、
[[TCP/IP]] の根幹の設計にまで影響はしていないけど、周辺仕様的なところはけっこう 
(中途半端に) [[OSI]] 色が出てたり。
それに下位層は案外 [[OSI]] ベースの設計になってたりするんですよね。
そっちの方は [[ISO]] や [[IEEE]] の影響力が強いので。
(もっともそっちはそっちで、 802.なんちゃらのプロトコル階層のどこが 
[[OSI参照モデル]]なんだよ、みたいなのはあるんですけど。)


* 関連

[SEE[ [[Internetの階層モデル]] ]]

* メモ

- [1] OSI model は [[OSI]] の中で一番成功したとか皮肉られてますw
- [2] ていうか OSI はどこへ行ったのやら。 [[ISO]] も必死だったのにねぇ。

[7] [[アプリケーション層プロトコル]]上を伝送されるデータの形式や、
ネットワークを使ったビジネスモデル等社会的プロトコルなど、
ネットワークより更に上位とみなせるものを第8層などと呼ぶことがあります。

[FIG(amazon)[
ネットワークプロトコル
]FIG]

[FIG(quote)[
[FIGCAPTION[
[13] [CITE@ja[インターネット・プロトコル・スイート - Wikipedia]]
([TIME[2018-04-07 20:37:44 +09:00]])
<https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E3%83%BB%E3%83%97%E3%83%AD%E3%83%88%E3%82%B3%E3%83%AB%E3%83%BB%E3%82%B9%E3%82%A4%E3%83%BC%E3%83%88>
]FIGCAPTION]

> いくつかの教科書ではTCP/IPモデルを7層のOSI参照モデルへ対応付ける事を試みた事がある。その対応付けは、インターネット・プロトコル・スイートのリンク層を物理層の上のデータリンク層へ、またインターネット層はOSI参照モデルのネットワーク層へ割り当てられる事が多い。それらの教科書は RFC 1122 やその他IETFの一次情報の意図と矛盾する二次情報である。IETFは再三にわたりインターネット・プロトコルと構造の開発はOSI参照モデルに準拠する事は意図しないという事を述べている。

]FIG]


[14] [CITE@ja[QUICとHTTP/3時代のインターネット解説書はどうあるべきだろう - golden-luckyの日記]]
([TIME[2019-01-31 15:58:13 +09:00]])
<http://golden-lucky.hatenablog.com/entry/2019/01/31/150740>


[15] 
[TIME[2022-12-14T13:38:42.600Z]]
<https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=6544&item_no=1&attribute_id=1&file_no=1>
#page=9 右中央

[[回線交換]]の[[交換]]は従来 L1 だったのが L3 と考えられるようになった、と書かれている!

[16] 
まだ現モデルの開発過程なので完成形と違いがあるのは当然としても、これは衝撃的では!?
今よりずっと物理層のカバー範囲が広かったってこと?





[21] 
[[OSI参照モデル]]は優れているから普及して今でも使われているって見かけたけどどうなんだろうなあ。
[[ISO]]の権威で普及しただけで優れているわけではないのでは。優れているなら説明に使われるだけではなく実際に使われているのでは...

[22] 
普及している、っていっても広く知られているのは7層の階層名と大まかな役割だけだよね。
階層間のインターフェイスがどうのこうのみたいな少し込み入った所に入るともう誰も知らないよねww



