異なるメーカーの機器やソフトウェア間でも正しくデータをやり取りできるように、データの形式や信号の送受信方法、エラー処理などを定めた標準的なルールである。インターネットで使われるHTTPやTCP/IPなどが代表的であり、これらが連携することで複雑なネットワーク通信が実現する。
日本語訳は文脈によって異なり、コンピューター通信では「通信規約」や「手順」、外交や儀礼の場では「儀礼」や「国際儀礼」、医療分野などでは「手順書」や「計画書」と訳されることがある。
プロトコルの役割
相互運用性の確保:
異なるデバイスやソフトウェアが共通のルールに従うことで、互換性を保ち、データをスムーズにやり取りできる。
通信の標準化:
世界中で共通のプロトコルを使用することで、インターネットなどのグローバルなネットワークを構築できる。
エラー制御と効率的な通信:
データの伝送中に発生するエラーの検出や再送制御、データの転送速度の調整などを行うことで、信頼性と効率性を高めることができる。
プロトコルの例
- TCP/IP: インターネットの基盤となるプロトコル群であり、信頼性の高いデータ伝送(TCP)と経路選択(IP)を担う。
- HTTP (HyperText Transfer Protocol): WebブラウザとWebサーバー間でWebページなどのデータをやり取りするためのプロトコルである。
- SMTP (Simple Mail Transfer Protocol): 電子メールの送信用プロトコルである。
プロトコルスタック
通信の際には、役割の異なる複数のプロトコルが階層構造で連携する。この階層構造になったプロトコル群をプロトコルスタックと呼び、一つのプロトコルが単独で機能するのではなく、各層のプロトコルが連携して動作することで効率的な通信が実現される。