全1627文字
PR

 通信プロトコルとはネットワークにつながる機器同士がデータをやりとりするための約束事である。送信側と受信側でどのような形式でデータを表現し、どのような意味を持たせるのか、どんな順番で送るのかなどを定めている。

 通信プロトコルの役割は人間同士の情報のやりとりで考えると分かりやすい。例えば誰かとチャットで情報を交換するとしよう。スマートフォンのスリープを解除し、チャットツールを起動してメッセージを送る手順になる(図1-1)。このとき共通のチャットツールを利用していなければメッセージは伝えられない。伝える内容もお互いに理解できる言語で記述する必要がある。このように情報の送り手と受け手が共通の約束事を守ることにより、情報交換が可能になる。

図1-1●通信プロトコルはデータの構造やデータをやりとりする手順を定めたもの
図1-1●通信プロトコルはデータの構造やデータをやりとりする手順を定めたもの
正しい手順を踏み、共通の表現を用いて初めて情報を伝達できる。通信プロトコルは機器同士がデータをやりとりするために定められた約束事と考えればよい。
[画像のクリックで拡大表示]

 コンピューターネットワークの世界も同じだ。パソコンでWebサイトを閲覧する、メールを送受信するといった通信を実行するには、データを正しくやりとりするための約束事がいくつもある。この約束事が通信プロトコルである。

変更の影響範囲を限定

 通信プロトコルは機能ごとに階層(レイヤー)に分けられ、各レイヤーに属するプロトコルは他のレイヤーから独立している。例えばインターネット通信で使われるプロトコルは、4つのレイヤーから成る(図1-2)。これはIETFのRFC 1122で規定されている

図1-2●通話プロトコルの階層構造と役割
図1-2●通話プロトコルの階層構造と役割
階層化されたプロトコルがそれぞれの役割でつながっている。各層が独立していて、プロトコルの変更による影響範囲を限定できる。インターネット技術の標準化団体であるIETF(Internet Engineering Task Force)のRFC 1122で規定されている。
[画像のクリックで拡大表示]

 プロトコルをレイヤーに分けるメリットは、あるレイヤーのプロトコルに変更があっても、他のレイヤーに影響が及ばないことだ。

 例えばインターネット層のプロトコルであるIPには、IPv4とIPv6がある。両者に相互運用性はないので、それぞれ別々に使われている。しかしアプリケーション層からは利用するIPの種類を意識せずに済む。インターネット層のプロトコルを変更してもアプリケーション層のプロトコルには影響しないからだ。