Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

プロトコル番号(プロトコルバンゴウ)とは | 意味や読み方など丁寧でわかりやすい用語解説

プロトコル番号(プロトコルバンゴウ)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

プロトコルばんごう (プロトコルバンゴウ)

英語表記

protocol number (プロトコルナンバー)

用語解説

プロトコル番号とは、インターネット上で通信を行う際に、IP(インターネットプロトコル)のさらに上位の層で使用されるプロトコルを識別するために用いられる数値である。IPパケットのヘッダ部分に格納され、受信側のホストがIP層で受け取ったデータ(ペイロード)を、どのトランスポート層プロトコル(TCPやUDPなど)に渡すべきかを判断する際に利用される、非常に重要な識別子の一つである。インターネットにおける通信は複数のプロトコルが階層的に連携して成り立っており、プロトコル番号はこの階層構造におけるIP層とトランスポート層の橋渡し役を担っていると言える。

インターネットプロトコル(IP)は、ネットワーク上でデータパケットを宛先にルーティングする役割を果たす。しかし、IPは単にパケットを目的地まで届けるだけであり、そのパケットの中身が具体的にどのような種類のデータであるか、またそのデータをどのアプリケーションやサービスが処理すべきかまでは関知しない。そこで、IPの次の層であるトランスポート層のプロトコルが登場する。トランスポート層にはTCP(Transmission Control Protocol)やUDP(User Datagram Protocol)など、それぞれ異なる特性を持つプロトコルが存在し、データの信頼性や効率性などに関して異なるサービスを提供する。プロトコル番号は、まさにこのIPパケットがTCP用のデータなのか、UDP用のデータなのか、あるいは他の何かのプロトコル用のデータなのかを区別するために存在する。IPパケットのヘッダには「プロトコル」というフィールドがあり、そこにこのプロトコル番号が格納される。受信側のシステムは、IPヘッダを参照してこのプロトコル番号を読み取ることで、次にどのプロトコルハンドラにデータを引き渡すべきかを正確に判断できる。例えば、プロトコル番号が「6」であればTCPプロトコルに、プロトコル番号が「17」であればUDPプロトコルに、そしてプロトコル番号が「1」であればICMP(Internet Control Message Protocol)プロトコルに、といった具体的な対応付けが行われる。このように、プロトコル番号は一つの物理回線上で複数の異なる種類の通信が並行して行われることを可能にし、通信の多重化を実現する上で不可欠な要素である。

このプロトコル番号は、IANA(Internet Assigned Numbers Authority)という組織によって管理・割り当てられ、標準化されている。IANAが各プロトコルに対して一意の番号を付与し、そのリストを公開することで、世界中のどのネットワーク機器やソフトウェアも同じルールに基づいて通信を処理できる。これにより、異なるベンダーが製造した機器間でも相互運用性が確保され、グローバルなインターネット通信が円滑に行われる基盤となっている。もしこの番号が標準化されていなければ、異なるシステム間でどのデータがどのプロトコルに対応するのかが分からなくなり、通信が成立しなくなるだろう。

プロトコル番号と混同されやすい概念として「ポート番号」があるが、これらは全く異なる目的と役割を持つ。プロトコル番号はIP層で使われ、IPパケットのペイロードがどのトランスポート層プロトコル(TCPかUDPかなど)によって処理されるべきかを識別する。一方でポート番号は、TCPやUDPといったトランスポート層プロトコル内部で使われ、そのトランスポート層プロトコルが受け取ったデータが、さらに上位のどのアプリケーション(例えばWebサーバのHTTP、メールサーバのSMTP、ファイル転送のFTPなど)によって処理されるべきかを識別する。つまり、プロトコル番号は「このデータはTCPの箱に入れるべきか、UDPの箱に入れるべきか」を決定し、ポート番号は「このTCP(またはUDP)の箱に入っているデータは、Webサーバの入り口に渡すべきか、メールサーバの入り口に渡すべきか」を決定すると考えることができる。プロトコル番号はIPヘッダの一部であり、ポート番号はTCPヘッダやUDPヘッダの一部であるという構造的な違いも存在する。システムエンジニアを目指す上で、これら二つの識別子の違いとそれぞれの役割を明確に理解することは非常に重要である。

また、プロトコル番号はネットワークセキュリティの分野でも活用される。例えば、ファイアウォールなどのセキュリティデバイスは、IPヘッダのプロトコル番号フィールドを検査し、特定のプロトコル番号を持つパケットの通信を許可したり、ブロックしたりするルールを設定できる。これにより、不要なプロトコルの通信を制限してセキュリティリスクを低減したり、特定のサービスのみを外部に公開したりといった柔軟なネットワーク制御が可能となる。このように、プロトコル番号は単にプロトコルを識別するだけでなく、ネットワークの運用管理やセキュリティポリシーの適用においても基礎的な要素として機能する。

プロトコル番号は、インターネット通信の根幹を支える非常に基本的ながらも重要な概念である。IPアドレスが「どこへ送るか」を、プロトコル番号が「そのデータをどの種類の通信で扱うか」を、そしてポート番号が「その通信をどのアプリケーションへ届けるか」をそれぞれ指示することで、今日の複雑なインターネット通信が実現されている。これらの仕組みを正しく理解することは、ネットワークの動作原理を深く理解し、システムエンジニアとしてネットワーク関連の問題を解決したり、セキュアなシステムを設計したりするための第一歩となる。

関連コンテンツ

関連IT用語