プロトコルと階層
このノートの問いがそのまま復習カードになり、忘れかけたころに出題されます。
0. どういうまとまりか
メーカーや機種が違うコンピュータどうしが通信できるのは、やり取りの決まりごと(プロトコル)を共通にしているからです。
インターネットのプロトコルは、役割ごとに 4 つの層に分けて組み合わせます(TCP/IP)。
| 層 | 役割 | 主なプロトコル |
|---|---|---|
| アプリケーション層 | アプリごとのやり取りの決まり | HTTP・HTTPS・SMTP・POP・IMAP |
| トランスポート層 | 相手のアプリへ確実に(または速く)届ける | TCP・UDP |
| インターネット層 | 宛先のコンピュータまでの経路を選んで届ける | IP |
| ネットワークインタフェース層 | 直接つながった機器の間で信号を送る | イーサネット・Wi-Fi |
分かれ目は次の 3 つ。
- メールは送るのが SMTP、受け取るのが POP か IMAP。 POP は手元に取り込み、IMAP はサーバに置いたまま読む。
- TCP は確実さ、UDP は速さ。 TCP は届いたかを確かめて再送し、UDP は確かめない。
- 経路制御は IP(インターネット層)、伝送制御は TCP(トランスポート層)の仕事。
1. プロトコルと TCP/IP の階層
根拠: 学習指導要領 情報Ⅰ-(4)-ア-(ア)
層に分けておくと、ある層のやり方を取りかえても、ほかの層はそのまま使えます。
たとえば有線を無線に変えても、Web を見る決まり(HTTP)は変わりません。
ネットワークで通信するための、データの形式や手順についての決まりごとを何というか?
プロトコル(通信規約)
送る側と受け取る側が同じプロトコルに従うので、機種が違っても通信できる。
TCP/IP の 4 つの階層を、アプリに近い上の層から順に答えよ。
アプリケーション層・トランスポート層・インターネット層・ネットワークインタフェース層
送る側は上から下へ順に処理し、受け取る側は下から上へ順に処理する。
プロトコルを階層に分けておくと、どんな利点があるか?
ある層のプロトコルを取りかえても、ほかの層を変えずに済む
各層は、すぐ上とすぐ下の層との受け渡しだけを決めておけばよい。
2. 主なプロトコル
根拠: 学習指導要領 情報Ⅰ-(4)-ア-(ア)
アプリケーション層のプロトコルは、何をするかで名前を覚えます。
Web ブラウザと Web サーバの間で、Web ページをやり取りするプロトコルは?
HTTP
通信内容を暗号化したものが HTTPS。URL の先頭に付いている。
電子メールを送信するとき(メールソフトからサーバへ、サーバからサーバへ)に使うプロトコルは?
SMTP
受信には使わない。受信は POP か IMAP。
電子メールを受信するプロトコルのうち、POP と IMAP の違いは?
POP はメールを手元の端末に取り込んで読み、IMAP はサーバに置いたまま読む
IMAP なら、スマートフォンとパソコンの両方から同じ受信箱を見られる。
トランスポート層のプロトコルで、TCP と UDP の違いは?
TCP は届いたかを確かめて確実に届け、UDP は確かめずに速く送る
UDP は、多少欠けても遅れないことが大事な通話や動画の配信などに使う。
3. パケット交換と経路制御
根拠: 学習指導要領 情報Ⅰ-(4)-ア-(ア)
インターネットでは、データを小さく分けたパケットに宛先などを書いたヘッダを付けて送ります。
ルータはヘッダの宛先を見て、次にどのルータへ渡すかを選びます。これが経路制御です。
データを一定の大きさに分割し、宛先などの情報を付けたものを何というか?
パケット
先頭に付く、宛先や送信元・順番などの情報をヘッダという。
パケット交換方式と回線交換方式の違いは?
パケット交換方式はデータをパケットに分けて 1 本の回線を多数で共有し、回線交換方式は通信の間ずっと回線を 1 対 1 で占有する
回線交換方式はかつての固定電話。パケット交換方式は回線を効率よく使え、障害のときは別の経路に回せる。
ルータが、パケットの宛先を見て、どの経路へ転送するかを選ぶことを何というか?
経路制御(ルーティング)
ルータは経路の情報を表(ルーティングテーブル)として持っている。
4. 伝送制御と誤り検出
根拠: 学習指導要領 情報Ⅰ-(4)-ア-(ア)
パケットは別々の経路を通るので、届く順番が入れかわったり、途中で失われたりします。
受け取る側でそれを直し、データを正しく元どおりにするのが伝送制御です。
パケットが欠けたら再送を求め、届いた順番を並べ直し、誤りがないかを確かめて、データを正しく届けるしくみを何というか?
伝送制御
TCP が受け持つ。経路を選ぶ経路制御(IP)とは別の仕事。
パリティ(パリティビット)とは、どのような誤り検出の方法か?
データの 1 の個数が偶数(または奇数)になるように 1 ビットを付け足し、受け取った側で個数を数えて誤りを見つける方法
1 の個数を偶数にそろえるのが偶数パリティ。2 ビット同時に反転すると見つけられない。
練習問題
問 1 偶数パリティを使う。7 ビットのデータ 1011001 の末尾にパリティビットを 1 つ付けて 8 ビットにする。付けるパリティビットは 0 と 1 のどちらか。
0
1011001 の中の 1 は 4 個で、すでに偶数。偶数のままにするので 0 を付けて 10110010 にする。
問 2 偶数パリティで送られた 8 ビット 11010110 を受け取った。誤りがあると判断できるか。
誤りがあると判断できる
1 の個数を数えると 5 個で、奇数になっている。偶数パリティなら偶数のはずなので、どこかのビットが反転している(どのビットかまでは分からない)。