プロトコル復習問題

■以下のプロトコルについての説明の文章中の空欄を下のKey Wordsから選択して埋めてください。なお、Key Wordsは複数回使われるものもありますし、1度も使われないものもあります。

(「プロトコル」)とはコンピュータ同士が通信を行うための決まりごとのことです。決まりごととはたとえば、通信を開始、終了するための手順ややり取りを行うデータの形(フォーマット)などのことです。ちなみに、プロトコルという言葉の語源は(「外交儀礼」)です。

プロトコルを実際にコンピュータ上で動くようにプログラムすることを「実装する」といっています。そして、通信を行うためにはまざまな決まり事が必要となってきます。それをひとつの(「プロトコル」)で行おうとするとプロトコルがあまりにも大きくなりすぎてしまいます。つまり、(「実装」)するのがとてもむずかしくなってきてしまいます。プログラムが大きくなるので(「バグ」)が入ってくる可能性が大きくなります。何らかの変更を行うと、その影響が広範囲になります。
たとえば、新しい機能を追加するたびにいままでの機能が(「正常」)に動作するかということを確認しなければなりません。ですから、ひとつのプロトコルですべての通信を行うのは現実的ではありません。
この機能はこのプロトコル、あの機能はまた別のプロトコル・・・というように機能ごとにプロトコルを分割すると、(「実装」)するのも比較的簡単になります。また機能を(「拡張」)してもその影響が他のプロトコルに及ぶこともありません。つまり通信は(「複数」)のプロトコルで行うほうが効率がいいのです。

通信を行うための複数のプロトコルの組み合わせのことを(「通信アーキテクチャ」)といいます。通信アーキテクチャは、他にも(「ネットワークアーキテクチャ」)、(「プロトコルスイート」)、(「プロトコルスタック」)と呼ばれることもあります。これら4つはすべて同じ意味をあらわしています。
通信アーキテクチャに含まれるプロトコルは、通常は階層構造になっています。(「階層構造」)になっていることによって、より機能拡張に柔軟性が出てきます。コンピュータ同士が通信を行うときには、この通信アーキテクチャに従っています。わたしたちが使っている(「日本語」)や(「英語」)といった言語と同じです。日本語にはそれぞれたくさんの決まりがあります。ひらがなの決まりや、かたかなの決まり、漢字のきまりなどなど。
それらひとつひとつが(「プロトコル」)に当てはまります。つまりプロトコルを組み合わせているということです。また、日本語しかしゃべれない人と英語しかしゃべれない人がコミュニケーションできないように、(「通信アーキテクチャ」)が異なれば通信を行うことができません。逆にいうと、通信アーキテクチャが同じであれば、(「Windows」)でも(「UNIX」)でも(「MAC」)でもコンピュータが搭載しているOSに関係なく通信を行うことができます。

通信アーキテクチャにはさまざまな種類があります。その中でもとくに重要なのが、(「OSI参照モデル」)、(「TCP/IP」)です。
OSI参照モデルは厳密には通信アーキテクチャではなく、「モデル」です。これは(「ISO」)が定めています。通信の機能を7つの階層に分類しモデル化したものがOSI参照モデルです。実際にOSI参照モデルに従った通信アーキテクチャはほとんどありませんが、通信の機能を説明するための「ものさし」として使われることが多く、ネットワーク関連の書籍には必ずといっていいほど出てきます。

(「TCP/IP」)は言うまでもなく、インターネットで利用されている通信アーキテクチャです。インターネットで通信をしているときには、このTCP/IPを利用しています。もともと(「UNIX」)で採用されていましたが、インターネットの普及につれてさまざまなOSで実装されるようになっています。TCP/IPはOSI参照モデルのように(「7階層」)ではありませんが、やはり階層構造になっています。TCP/IPの場合は、(「4階層」)で階層構造をとることによって、あるプロトコルの機能拡張や新しいプロトコルの追加を柔軟に行うことができるようになっています。たとえば、現在IP(Internet Protocol)はバージョン(「4」)ですが、しばらくすると、機能拡張したバージョン(「6」)にとって変わられます。その場合でも、他のプロトコルにはほとんど影響しません。

通信アーキテクチャに含まれるプロトコルのうち、特に(「転送」)にかかわるプロトコルは2つの種類に分類されます。ひとつが(「コネクション型プロトコル」)、そして(「コネクションレス型プロトコル」)です。
コネクション型プロトコルは、通信を開始するときに(「コネクション」)を確立します。そして、データ転送を行うときも届いたという確認を送ります。データ転送が終わると最初に確立した(「コネクション」)を開放します。コネクションを確立し、転送の確認を行うことによってコネクション型のプロトコルは信頼性の(「高い」)通信を行うことができます。しかし、コネクションの確立、確認応答などを行うために通信の(「効率」)はあまりよくありません。具体的なプロトコルとしては、(「TCP」)があげられます。

それに対して、(「コネクションレス型プロトコル」)はコネクションの確立など行いません。相手先を指定してデータを送るだけです。このときに(「確認応答」)も行いません。ということから、(「信頼性」)は低いのですが、通信の効率はよくなっています。(「IP」)や(「UDP」)がコネクションレス型プロトコルの例です。

Key Words

「コネクション型プロトコル」「高い」「低い」「信頼性」「IP」「コネクションレス型プロトコル」「TCP」「効率」「転送」「UDP」「確認応答」「コネクション」「エラーチェック」「4」「5」「6」「7階層」「5階層」「4階層」「ISO」「ANSI」「IEEE」「TCP/IP」「外交儀礼」「実装」「塗装」「日本語」「プロトコルスタック」「バグ」「正常」「異常」「ひとつ」「OSI参照モデル」「Windows」「UNIX」「MAC」「英語」「HTTP」「プロトコルスイート」「拡張」「複数」「階層構造」「階段構造」「通信アーキテクチャ」「ネットワークアーキテクチャ」「プロトコル」