タイトル: プロトコル
本稿は プロトコルに関する記事です。プロトコルとは、コンピュータ間で通信を行う際の「お約束 (取り決め)」のことです。何バイト目に何を入れるか、応答の手順、エラーの示し方などを双方が同じルールで扱うことで、異なるメーカー・OS の機器同士でも通信できるようになります。
子ページからプロトコルを選択してください。
本ページの子ページ
- TCP/IP — インターネットの基盤となるプロトコルスイート
- IPX/SPX — Novell NetWare で使われた旧プロトコル
- AppleTalk — 初期 Mac で使われた Apple 独自プロトコル
プロトコルとは何か
身近な例で言えば、電話で「もしもし」と名乗ってから本題に入るのも一種のプロトコルです。コンピュータ通信では、これを機械が誤解しない厳密な仕様として、RFC / IEEE / IETF / ISO 等の標準化団体が文書化しています。
| プロトコルが定めること | 例 |
|---|---|
| パケットの構造 | ヘッダの各フィールド、長さ、順番 |
| 順序・状態遷移 | 接続開始・データ送信・切断 (TCP の 3-way / 4-way) |
| エラー処理 | 再送、タイムアウト、エラーコード |
| セキュリティ | 暗号化方式、鍵交換 (TLS、IPsec) |
| 意味付け | アプリ層のメソッド・ステータス (HTTP の GET、200 OK) |
主なプロトコル一覧 (層別)
| 層 | 代表プロトコル |
|---|---|
| アプリケーション | HTTP、HTTPS、DNS、SMTP、POP3、IMAP、FTP、SSH、Telnet、SNMP、NTP、LDAP、SIP |
| トランスポート | TCP、UDP、QUIC、SCTP |
| ネットワーク | IPv4、IPv6、ICMP、ARP、IPsec、IGMP |
| データリンク / 物理 | Ethernet、Wi-Fi (802.11)、Bluetooth、PPP、MAC、フレームリレー |
| セキュリティ | TLS、SSL (旧)、IPsec、Kerberos |
| ルーティング | OSPF、BGP、RIP、EIGRP |
| クラウド・コンテナ | gRPC、MQTT、AMQP、Kafka プロトコル |
主要プロトコルファミリーの比較
| プロトコル体系 | 位置づけ | 現状 |
|---|---|---|
| TCP/IP | インターネット標準 | 事実上唯一のスタンダード |
| IPX/SPX | Novell NetWare | レガシー (Windows サーバ普及で衰退) |
| AppleTalk | 初期 Mac ネットワーク | EOL (Mac は TCP/IP へ移行) |
| SNA | IBM メインフレーム | 限定領域で残存 |
| NetBEUI | Windows 旧 NetBIOS | 旧式 (現在は SMB over TCP) |
プロトコルが進化するパターン
- 暗号化版への置換: HTTP → HTTPS、FTP → SFTP/FTPS、Telnet → SSH
- 新世代の登場: HTTP/1.1 → HTTP/2 → HTTP/3 (QUIC)
- 用途特化: IoT 向けの MQTT、ストリーミング向けの WebRTC、RPC 向けの gRPC
- セキュリティ強化: SSL 3.0 / TLS 1.0/1.1 廃止、TLS 1.2/1.3 への統一
プロトコルを学ぶ上での視点
- 「どの層」で動いているかを意識する (OSI 参照モデル)
- 「TCP か UDP か」「どのポートを使うか」を把握 (ファイアウォール設定で必須)
- 「平文か暗号化か」を確認 (本番運用では暗号化版を使う)
- 「RFC を読む」習慣 (HTTP は RFC 9110、TLS 1.3 は RFC 8446 等)
- tcpdump / Wireshark で実物のパケットを観察すると理解が深まる
注意点
- 「プロトコル」という言葉は文脈で意味が変わる。通信に限らずAPI の呼び出し規約を指すこともある (gRPC、JSON-RPC 等)
- 古い平文プロトコル (HTTP、FTP、Telnet、POP3、SMTP) を本番に残さない。暗号化版へ置換
- 独自プロトコルは便利だが、相互運用性とメンテナンスコストが高い
- クラウド時代はマネージドサービスがプロトコル選定をある程度肩代わりする (API Gateway、ALB 等)