[プログラミング用語]プロトコルはなにか

プロトコルとはなにかプログラミング

どうも、ケニー(tsujikenzo)です。今日は単発で、「プロトコルとはなにか」をお届けします。

プログラミングの用語解説を書くのも久しぶりです。自分用の学習の記録として、誤りはご容赦ください。

はじめに

まず、「プロトコル」について、辞書で調べてみましょう。

英英辞書では、protocol noun (RULES)としての意味が載っています。

the system of rules and acceptable behaviour used at official ceremonies and occasions

社会・外交的な場、たとえば公式行事や儀式、公式の場で守るべき「ルールと適切な振る舞いの体系」です。

protocolには、protocol noun (IN COMPUTING)もあります。

computer language allowing computers that are connected to each other to communicate

相互に接続されたコンピュータ同士が通信するためのコンピュータ言語、です。

「言語」というより「お作法」

辞書には「言語」とありますが、ここで少し注意が必要です。プロトコルは、PythonやJavaScriptのような「プログラムを書くための言語」とは少し違います。

むしろ、最初に調べた「公式行事での振る舞い(お作法)」という定義の方が、IT用語におけるプロトコルの本質に近いのです。

ITのなかでも、とくに「通信」におけるお作法を定めたものを、「プロトコル」と呼ぶことが多いです。

通信におけるプロトコル

以前、「ノンプログラマーによるWeb周り基礎学習」という記事で、「ネットワークとHTTP」という学習を行いました。

記事のなかで、「ネットワークは、階層構造を使って定義しよう」という国際標準(OSI参照モデル)に触れました。実は、この各階層のなかで動いている「お作法」こそがプロトコルです。

代表的なものを、振り返ってみましょう。

IP(Internet Protocol)

階層構造の第3層である「ネットワーク層」では、「インターネット上の住所(IPアドレス)を特定し、データを目的地まで届けるためのお作法」を定めています。パケットという単位でデータを運びますが、これだけでは「送りっぱなし」の状態です。

TCP(Transmission Control Protocol)

階層構造の第4層である「トランスポート層」では、「データの抜け漏れがないかを確認し、通信の信頼性を保証するためのお作法」を定めています。もしデータが壊れていたら再送をお願いするなど、確実なやり取りを支える司令塔です。

HTTP/FTP/POPなど

階層構造の第7層である「アプリケーション層」では、、「具体的なサービス(Web閲覧、ファイル転送、メール受信など)を実現するためのお作法」を定めています。私たちがURLの先頭でよく見かける「http」という記述は、「今からHTTPというお作法(プロトコル)を使いますよ」という宣言(スキーム)です。これがあるおかげで、ブラウザは迷わずWebサイトを表示するための準備ができるのです。

  • WEBサイトを閲覧するための決まりごと・・・HTTP(Hyper Text Transfer Protocol)
  • ファイル転送を行う決まりごと・・・FTP(File Transfer Protocol)
  • メール送信を行う決まりごと・・・SMTP(Simple Mail Transfer Protocol)
  • メール受信を行う決まりごと・・・POP(Post Office Protocol)
  • 離れた場所にあるコンピュータを、安全に遠隔操作するためのお作法・・・SSH(Secure Shell Protocol)🆕

サーバー上でプログラミングを行う「ssh://~」もまた、スキーム名は「ssh」で、プロトコルが「SSH」という仕組みです。

AI時代におけるプロトコル

これまでのプロトコルは、主に「コンピュータとコンピュータ」が繋がるためのものでした。しかし最近では、「MCP (Model Context Protocol)」という言葉も耳にするようになりました。

これは、「AI(モデル)が、外部のデータやツールをスムーズに使いこなすためのお作法」です。

AIが私たちのスケジュール(GoogleカレンダーやOutlookなど)を知ったり、代わりに外部ツールを操作したりするとき、サービスごとに接続のルール(API)がバラバラだと、それらを一つずつ繋ぎ込むのは非常に大変です。

これまでは、エンジニアが右側の『個別のルール』を一つずつ解読してAIに繋いでいました。MCPはこの間に立ち、AIが理解できる『世界共通のお作法』へと自動で変換してくれる、いわば『AI専用の通訳機』なのです。

通信の歴史がプロトコルによって作られてきたように、これからのAIエージェント時代も、新しいプロトコルが支えていくことになるでしょう。

まとめ

以上で、「プロトコルとはなにか」をお届けしました。

「ルール(点)」というよりも、お互いがスムーズにやり取りするための「お作法(一連の手順)」として捉えると、ITのニュースが少し身近に感じられるのではないでしょうか。

「新しい技術の裏には、必ず新しいお作法(プロトコル)がある」

そう考えると、これからの変化を追いかけるのが少し楽しくなるといいですね。

最後までお読みいただき、ありがとうございました。

タイトルとURLをコピーしました