コンテンツにスキップ

プロトコル:通信の共通ルール

指導者向けの公開補足

学習本文に加えて、指導の視点・背景・授業での確かめ方を示します。どなたでも読めます。

指導の焦点

プロトコルを「約束」と説明した後に、形式・順序・異常時の対応まで具体化する。規則を揃えることで何が可能になるかを考える。

一歩踏み込んだ背景

階層化では上の層が下の層のサービスを利用する。モデルの層数は説明体系で異なるため、TCP/IPとOSIの用語を混在させた暗記を避ける。

授業での確かめ方

架空のカード受け渡しで、宛先の書式や受領確認を決める。規則を一つ変えたときに、他の処理がどこまで影響を受けるか議論させる。

制度・規格等は本文末尾の参考資料も確認してください。

この単元でできるようになること

Section titled “この単元でできるようになること”
  • プロトコルが必要な理由を説明できる。
  • TCP/IPの各層と代表的なプロトコルの役割を区別できる。
  • 同じ目的でも複数のプロトコルが関わることを説明できる。

プロトコルとは、データをどのような形式で表すか、誰がいつ送るか、受け取った側がどう応答するかなどを決める通信の規則だ。人同士が「次は相手が話す」といった順番を共有するように、機器も共通の手順を持たなければ、受け取ったビット列を意味のある情報として扱えない。

たとえば、ブラウザーがページを要求し、Webサーバが応答するには、要求と応答の内容を定める規則が必要だ。一方で、相手のIPアドレスまでデータを運ぶ仕事や、実際の無線信号に変換する仕事は別の仕組みが受け持つ。目的の異なる規則を分けることで、Webサービスの実装は通信回線の方式と独立して考えやすくなる。

TCP/IPの考え方では、通信に必要な仕事を層に分けて説明できる。アプリケーション層はWebやメールなど利用者のサービスに近いデータを扱う。トランスポート層はアプリケーション間の通信を扱い、インターネット層はIPアドレスを使ってネットワークを越える転送を担う。ネットワークインターフェース層は、そのネットワーク上のリンクでデータを送る方法を扱う。

層の例 主な役割 関連する規則の例
アプリケーション Webの要求、名前の問い合わせなど HTTP、DNS
トランスポート アプリケーション間のデータ転送 TCP、UDP
インターネット ネットワーク間の宛先と転送 IP
ネットワークインターフェース LANや無線区間での転送 Ethernet、Wi-Fi

この表は学習のために機能をまとめたものだ。プロトコルの配置には説明モデルによる違いがあり、全ての技術を一つの層に固定して分類できるわけではない。また、Web通信なら必ず一つの決まった手順だけが選ばれる、というわけでもない。

ブラウザーが https://www.example.com/guide を開く場面を考える。ブラウザーはWebの要求を組み立て、保護された通信を開始するためにTLSを使い、トランスポート層やIP層へデータを渡す。リンク上では、さらにその場所のネットワークに合った形式で送信される。受信側は逆向きに各機能を適用し、最終的にWebサーバのアプリケーションが要求を扱う。

ここで www.example.com は例示用のドメインであり、実在するサービスの設定を表さない。実際には名前解決、接続先の選択、暗号方式の合意なども関わる。層の説明は、こうした複雑な処理を分類するためのモデルであり、利用者の操作ごとに端末が一回ずつ単純な階段を上るという意味ではない。

共通の規則が公開され、複数の実装で利用されると、メーカーやOSが異なる機器同士でも相互運用しやすくなる。インターネットのプロトコルには、IETFのRFCという文書で仕様が公開されているものがある。RFCは文書シリーズの名前であり、全てのRFCが同じ種類の標準や必須ルールというわけではない。仕様を読むときは、その文書がどの状態で、何を定めるかを確認する。

用語 意味
プロトコル 通信の形式や手順を決めた規則
TCP/IP インターネット通信で使うプロトコル群と、その説明の枠組み
層 通信機能を役割ごとに整理した区分
RFC IETFなどが公開する技術文書シリーズ
相互運用性 異なる実装の機器やソフトが協力できる性質
  1. Webの要求内容を扱う規則と、ネットワークを越える宛先を扱う規則は、それぞれどの層に関係するか。
  2. 通信を層に分けて考えると、障害の切り分けにどのような利点があるか。
  3. 共通プロトコルを使っているだけでは通信内容の秘密が守られるとは限らない理由を説明しよう。
問1の解答例を見る

Webの要求内容を扱うHTTPなどはアプリケーション層、ネットワークを越える宛先を扱うIPはインターネット層に関係する。

問2の解答例を見る

接続、宛先への到達、名前解決、アプリの応答など役割ごとに確認できる。どこまで正常かを調べることで、障害の候補を絞り込める。

問3の解答例を見る

プロトコルは通信の約束であり、全てが暗号化を提供するわけではない。秘密を守るには、TLSなど適切な保護を使う必要がある。