OSI 参照モデルと TCP/IP の違い

OSI 参照モデルと TCP/IP の違い

初めに

こんにちは、ひらたつです。

ネットワーク初学者にとって、最初の関門は OSI 参照モデルと TCP/IP プロトコルの理解だと思います。

そして、私は OSI 参照モデルと TCP/IP プロトコルを理解したところで以下の疑問が浮かんできました。

TCP/IP がデファクトスタンダードとして世の中で使用されているなら OSI 参照モデルの必要性はあるのか?

今回はこの疑問について自分なりに調べた内容をまとめます。

同様の疑問を抱いている方々の参考になれば幸いです。

歴史

OSI 参照モデルと TCP/IP が開発された歴史を知ることでそれぞれの特徴や違いが分かります。

OSI 参照モデルの歴史

Wikipedia (開放型システム間相互接続) からの引用です。

開放型システム間相互接続(かいほうがたシステムかんそうごせつぞく、英: Open Systems Interconnection, OSI)は、国際標準化機構 (ISO) と ITU-T により 1982 年に策定が開始されたコンピュータネットワーク標準。
OSI以前、コンピュータネットワークの通信プロトコルは、ベンダー毎に独自の規格が乱立していた(SNA、AppleTalk、NetWare、DECnet など)。このため、業界共通のネットワーク標準によるマルチベンダーの相互運用性を確立しようとOSIの策定が開始された。当時、大規模ネットワークでは複数のネットワークプロトコルスイートをサポートするのが一般的だったが、多くの機器は共通のプロトコルが無いために相互に通信することができなかった。

OSI 参照モデルは、もともと OSI (Open Systems Interconnection) として1977年から開発が開始されます。

ISO (国際標準化機構) が策定団体で、ベンダーに依存せず世界中で通信ができるしくみを作ることが目的でした。

このように、世界をより良くするために進められた OSI 開発ですが、標準化のためにさまざまなベンダーの意見を聞き入れたみたいです。

その結果、オプション機能が非常に多く実装が困難になりました。
実装に1年かかるほど複雑だったみたいです。

そして、シンプルな考えの TCP/IP が徐々に実用化され始めます。

実装が困難 & TCP/IP の急速な普及により、OSI が標準使用されることはありませんでした。

しかし、OSI の階層構造の考え方はネットワークを考える上で分かりやすいため、OSI 参照モデル としてネットワークプロトコルの階層構造の説明に使われるようになります。

TCP/IP の歴史

TCP/IP (Transmission Control Protocol/Internet Protocol) は IETF (Internet Engineering Task Force) が、RFC (Request for Comments) という技術文書を発行することで、プロトコルなどの仕様を公開しています。

この RFC の内容は、公開されているメーリングリストやカンファレンスなどを通して一般の方々が議論して決まっているみたいです。

そんな TCP/IP ですが、開発開始は 1973 年で、完成したのは 1983 年です。

もともと ARPANET 向けに作られはじめ、その後 UNIX 系 OS に搭載され教育機関で使われ始めます。

この段階ではそんなに普及していませんでしたが、1995 年発売の Windows 95 に TCP/IP が標準搭載されたことで一気に世界に広がったみたいです。

TCP/IP は最低限の機能のみを実装するシンプルな考えが普及につながりました。

また、調べる中で特に驚いたことがありました。
それは、TCP/IP は OSI 参照モデルをベースにしていない ことです。

TCP/IP を説明するときは必ずと言っていいほど、OSI 参照モデルの階層構造が用いられます。

しかし、TCP/IP の開発開始は 1973 年で、OSI は 1977 年です。
TCP/IP が先に開発されており、OSI 参照モデルをベースにしていないことが分かります。

また、「TCP/IP と OSI 参照モデルに対応関係はなく、当てはめるならこの階層の対応関係だろう」という記述も多く見かけました。

まとめ

OSI 参照モデルと TCP/IP の違いを表にすると以下となります。

OSI 参照モデル TCP/IP
策定団体 ISO IETF
(RFCで規定)
策定方法 トップダウン式に ISO が規定 世界中の IT エンジニアで話し合い
特徴 あくまでモデルとして参照される 事実上のスタンダード
開発開始 1977年 1973年

シンプルな TCP/IP がデファクトスタンダードになり、実装が複雑な OSI は参照モデルとしてのみ残ることとなりました。

OSI の階層構造の考え方は分かりやすいため、ネットワークプロトコルの階層モデルとして OSI 参照モデルが使われるようになったようです。

最後に

今回は OSI 参照モデルと TCP/IP の違いについて簡単に整理しました。

この違いについて疑問を持っている方の参考になれば幸いです。

では、次回の記事でお会いしましょう。

参照

Linuxで動かしながら学ぶTCP/IPネットワーク入門

第2回インターネットを支えるTCP/IPの誕生から普及まで

hiratatsu04