IT初心者にとって、分かりにくいだろうと思われる用語の一つである「プロトコル」。
中でも、TCP/IPプロトコルは有名でよく聞く言葉ではないでしょうか。
そこで今回は、通信プロトコルとは何なのか、そしてTCP/IPについてわかりやすく説明していきたいと思います!
プロトコルとは?
プロトコルの意味
そもそも、プロトコルとはどういう意味でしょうか?Wikipediaにはこのように書いてあります。
プロトコルとは、複数の者が対象となる事項を実行するための手順について定めたもの。
出典: フリー百科事典『ウィキペディア(Wikipedia)』
つまり簡単に言うと、何かをするときの「ルールや手順」ですね。
これが、いつの日かITの世界でも用いられるようになりました。では、ITにおけるプロトコルとはなんでしょうか。
今の世の中、ITといえばネットワークを使いますよね。インターネットを使ったり、メールを送ったり、Webアプリケーションを使ったり・・・。
ITでは、このようなネットワークを使った通信のためのルールをプロトコルをいいます。
プロトコルの必要性
では、なぜプロトコルが必要でしょうか。それは、通信において、機器の製品や種類による違いを考慮しなくて済むようにするためです。
よく例えられるのが、人々のコミュニケーションによる例えです。私たちは、言語によってコミュニケーション(ITで言う通信)を図ります。日本人ならば日本語、アメリカ人ならば英語を使います。このように、「日本人同士は日本語」といった暗黙のルールが決められているので、やりとりできるわけです。
IT機器も同じです。世の中のITは、たくさんの通信機器で成り立っています。それを、製品ごとやメーカーごとに通信方式を決めていては非常にややこしくなると思いませんか。
そこで、通信の決まり事としてプロトコルを定めています。そうすることで、統一したルールで簡単に通信できるというわけです。
TCP/IPとは?
IPはOSI基本参照モデルのネットワーク層に位置するプロトコルで、TCPはトランスポート層に位置するプロトコルです。
OSI基本参照モデルについては、以下の記事で詳しく説明しています。
また、TCP/IPはインターネットや多くのイントラネットで用いられているプロトコルです。そのため、ほとんどの通信機器でTCP/IPを実装しています。
それだけよく利用されているプロトコルなので、TCP/IPを用いたシステム構造は、「TCP/IPプロトコル階層」として体系化されています。
TCP/IPプロトコル階層とは?
先ほどもありましたが、TCP/IPプロトコル階層とは、TCP/IPを用いたシステムを役割やそれに対応するプロトコルごとに階層で分けたものです。
ここでややこしいのが、OSI基本参照モデルとの違いですよね。OSI基本参照モデルもシステムを役割ごとに第1層~第7層に分けたものでした。
OSI基本参照モデルとTCP/IPプロトコル階層は何が違うのでしょうか。
OSI基本参照モデルとの対応
OSI基本参照モデルとTCP/IPプロトコル階層との違いはというと、ほぼ同じです。OSI基本参照モデルに対して、ネットワーク層にはIPを、トランスポート層にはTCPを当てはめて、少し階層をいじったのがTCP/IPプロトコル階層です。
TCP/IPプロトコル階層とOSI基本参照モデルとは、下図のように対応しています。
アプリケーション層
HTTP、SMTP、POP3、Telnetなどのプロトコルが属します。アプリケーション層では、通信アプリケーションごとのデータの取り扱い方法や通信の流れを定義します。
このほかにも、アプリケーション層には数多くのプロトコルが存在します。
HTTP(Hypertext Transfer Protocol) | WWW(World Wide Web)を実現するプロトコル。 |
SMTP(Simple Mail Transfer Protocol) | 電子メールを送信するためのプロトコル。 |
POP3() | 電子メールを受信するためのプロトコル。 |
Telnet | コンピュータを遠隔操作するためのプロトコル。 |
トランスポート層
TCP、UDPが属します。トランスポート層では、コンピュータ内のアプリケーション通信を識別したり、データの送信チェックや再送を行います。
TCP(Transmission Control Protocol) | コンピュータ間で信頼性の高い通信を実現するため、データの送信順序やデータ到達確認などを行うプロトコル。 |
UDP(User Datagram Protocol) | データ到達確認を行わないことで、コンピュータ間の高速な通信を実現するためのプロトコル。 |
インターネット層
IPが属します。インターネット層では、ネットワーク内のコンピュータを識別し、データを配送します。
IP(Internet Protocol) | IPアドレスの制御や経路制御などを行うプロトコル。 |
ネットワークインタフェース層
Ethernetなどが属します。ネットワークインタフェース層では、通信用ハードウェア間でデータを受け渡します。
Ethernet | 主にLAN内で使用される通信ハードウェア規格の一つ。 |
まとめ
今回の記事では、プロトコルの意味から始め、TCP/IPやTCP/IPプロトコル階層においてその意味やOSI基本参照モデルとの対応について説明しました。
TCP/IPは、現在のほとんどの通信に用いられるプロトコルであるため、その意味を理解することは非常に重要です。
私たちの周りのシステムは、さまざまなプロトコルで成り立っているので、他にも調べてみると面白いかもしれません。