💬

プロトコルって何だ

に公開

Webはシンプルらしい。
世界中のサーバーにアクセスし、情報を公開できる、ということに興奮した筆者。

プロトコルって何?

いいね、その質問!


🌐「プロトコル」って何?

✅ 一言でいうと:

**コンピュータ同士が通信するための「ルールの決まりごと」**です。


📡 もっと身近な例でいうと:

  • 人間同士も「プロトコル」で会話してる。
  • 例えば「こんにちは」→「こんにちは」って返すのが日本語の会話プロトコル。
  • 無視されたり、英語で返されたらルールが破綻してる状態。

💻 コンピュータの世界では?

たとえば HTTP(HyperText Transfer Protocol)は:

「ブラウザがWebサーバーにこうやって情報リクエストしてね
サーバーはこうやって応答してね」という通信の手順を定めたもの。


🧱 他にもあるプロトコルの例:

プロトコル名 用途
HTTP/HTTPS Webページの通信
FTP ファイルの送受信
SMTP / IMAP メールの送信/受信
TCP / UDP データを信頼的に送る or 超高速に送る
WebSocket 常時接続の双方向通信(チャットなど)

📬 HTTP の例(実際のやりとり)

ブラウザが送る:

GET /index.html HTTP/1.1
Host: example.com

サーバーが返す:

HTTP/1.1 200 OK
Content-Type: text/html

<html>...</html>

↑これもぜーんぶ「HTTPプロトコル」に従ってやりとりされてます。


💬 まとめ:プロトコルとは?

コンピュータ同士の「会話のルール」
→ だから違うマシンでも、違う国でも、ちゃんと通じる!


もし「じゃあTCPとHTTPはどう違うの?」とか「HTTPSって何が安全なの?」みたいな派生質問あれば、そこもつないで解説できますよ~!

その2つも教えて

ナイス!じゃあ今度はその派生2ついきましょう👇


🧱① TCPとHTTPの違い

▶ TCP(Transmission Control Protocol)

  • データを正確に届けるための低レイヤーのプロトコル
  • 「荷物を順番通りに、安全に届ける宅配業者」みたいな存在

特徴:

  • データが 順番通りに届く(順序保証)
  • 届かなかったら再送(信頼性保証)
  • 接続を確立してから通信する(=コネクション型)

▶ HTTP(HyperText Transfer Protocol)

  • Webの世界の「やりとりルール」
  • ブラウザとサーバーが、「このページ見せて!」→「はいどうぞ」 というリクエスト&レスポンスを交わす仕組み

特徴:

  • HTTPは、TCPの上に乗っかって動いてる
  • 例えると、TCPが道路、HTTPがトラックで送る荷物の内容

🔗 関係まとめ

TCP HTTP
下層(トランスポート層) 上層(アプリケーション層)
目的 データを安全に運ぶ Webのリクエスト/レスポンス
使い方 HTTPはTCPの上で動作 つまり「HTTP通信=TCP通信の一部」

🔒② HTTPとHTTPSの違い

▶ HTTP(ノーマル)

  • 平文(暗号化されてない)
  • 通信の内容がネットワーク上で丸見えになる
    • 例:公共Wi-Fiでパスワードが盗まれるとか…

▶ HTTPS(HTTP Secure)

  • SSL/TLSで暗号化されたHTTP
  • ブラウザとサーバー間の通信が盗み見できなくなる
  • 例:🔒鍵マークがついてるサイト(Google、銀行、SNS)は全部HTTPS

📊 違いまとめ

HTTP HTTPS
暗号化 なし あり(TLS/SSL)
安全性 低い 高い(盗聴・改ざん対策)
ポート番号 80 443
主な用途 古いサイトや社内ツール すべてのWebサイト推奨

🎯 まとめ:TCP、HTTP、HTTPSの関係イメージ

[物理通信]
    ↓
[IP] ← 配送先住所
    ↓
[TCP] ← 荷物を順番通りに確実に届ける
    ↓
[HTTP] ← 中身は「Webページ見せて!」みたいな会話
    ↓
[HTTPS] ← HTTPを「安全な封筒」に入れたバージョン

興味があれば、さらに「TLSって何?どう暗号化してるの?」とか「UDPはなんで速いけど不安定なの?」も解説できますよ〜。どこまで掘ってみたいですか?


以上です。いったん満足。

Discussion