プロトコルとは何か?| ネットワークプロトコルの定義

ネットワークにおけるプロトコルとは、データのフォーマットや処理に関する標準化されたルールのことです。プロトコルを使用することで、コンピュータ同士の通信が可能にります。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • ネットワークコンテキストにおける「プロトコル」の定義
  • プロトコルとOSI 参照モデルのレイヤーの関係
  • インターネットで最もよく使われるプロトコルを知る

関連コンテンツ


さらに詳しく知りたいとお考えですか?

是非、Cloudflareが毎月お届けする「theNET」を購読して、インターネットで最も人気のある洞察をまとめた情報を入手してください!

当社がお客様の個人データをどのように収集し処理するかについては、Cloudflareのプライバシーポリシーをご確認ください。

記事のリンクをコピーする

ネットワークプロトコルとは?

ネットワークにおけるプロトコルとは、データのフォーマットと処理の一連のルールのことです。ネットワークプロトコルは、コンピュータの共通言語のようなものです。ネットワーク内のコンピュータは、ソフトウェアやハードウェアが大きく異なっていても、プロトコルを使用することで、相互に通信することができます。

標準化されたプロトコルは、コンピュータが使用できる共通言語のようなもので、世界の異なる地域から来た2人がお互いの母国語を理解できなくても、共通の第3の言語を使ってコミュニケーションをとることができるようなものです。1台のコンピュータがインターネットプロトコル(IP)を使用し、2台目のコンピュータも同様にそれを使用すれば、2台のコンピュータは通信することができます。これは、国連が6か国の公用語を使って世界中の代表者間のコミュニケーションを図っているのと同じです。しかし、一方のコンピュータがIPを使用し、もう一方のコンピュータがこのプロトコルを知らない場合、両者は通信することができません。

インターネットでは、処理の種類に応じてさまざまなプロトコルが存在します。プロトコルは多くの場合、OSI 参照モデルのどのレイヤーに属しているかという観点から議論されます。

電子書籍
統合プラットフォームでセキュリティを強化
ホワイトペーパー
ネットワーク最新化の戦略策定

OSI 参照モデルのレイヤーとは?

Open Systems Interconnection(OSI)参照モデルは、インターネットの仕組みを抽象的に表現したものです。7つのレイヤーがあり、各レイヤーはネットワーク機能の異なるカテゴリーを表しています。

OSI参照モデル

これらのネットワーク機能を実現するのがプロトコルです。例えば、インターネットプロトコル(IP)は、データをルーティングする役割を担っており、データパケット*がどこから来て、何の目的であるかを示します。IPはネットワーク間の通信を可能にします。そのため、IPはネットワーク層(レイヤー3)のプロトコルと考えられます。

別の例として、Transmission Control Protocol(TCP)は、ネットワーク上でデータパケット転送がスムーズに行われるようにします。そのため、TCPはトランスポート層(レイヤー4)のプロトコルと考えられます。

*パケットはデータの小片で、ネットワーク上で転送されるデータはすべてパケットに分けられます。

サインアップ
あらゆるCloudflareプランで実現するセキュリティとスピード

ネットワーク層で動作するプロトコルは?

前述の通り、IPはルーティングの役割を担うネットワーク層のプロトコルです。しかし、ネットワーク層のプロトコルはIPだけではありません。

IPsec: インターネットプロトコルセキュリティ(IPsec)は、仮想プライベートネットワーク(VPN)上で、暗号化、認証されたIP接続を確立します。技術的には、IPsecはプロトコルではなく、暗号ペイロード(ESP)、認証ヘッダ(AH)、セキュリティアソシエーション(SA)を含むプロトコルの集合体です。

ICMP: インターネット制御メッセージプロトコル(ICMP)は、エラーを報告し、ステータスの更新を行います。例えば、ルーターがパケットを配信できない場合、ルーターはパケットの送信元にICMPメッセージを送り返します。

IGMP: インターネットグループ管理プロトコル(IGMP)は、1対多のネットワーク接続を確立します。IGMPは、マルチキャスト通信の確立役立ちます。これは、1つのIPアドレスから発信されたデータパケットを複数のコンピュータが受信できるようするものです。

インターネット使われる他のプロトコルは?

知っておきたい重要なプロトコルをいくつかご紹介します。

TCP: 前述の通り、TCPは信頼性の高いデータ転送を実現するトランスポート層のプロトコルです。TCPはIPと併用することを前提としており、多くの場合この2つのプロトコルをまとめてTCP/IPとして参照されます。

HTTP: Hypertext Transfer Protocol(HTTP) は、ほとんどのユーザーが利用しているインターネットであるWorld Wide Webの基盤となっています。デバイス間のデータ転送に使用されています。HTTPは、アプリケーション層(レイヤー7)に属しています。これは、データをアプリケーション(ブラウザなど)が解釈を加えずに直接使用できる形式にするためです。OSI 参照モデルの下位層は、アプリケーションではなく、コンピュータのオペレーティングシステムによって処理されます。

HTTPS: HTTPの問題点は、暗号化されていないことです。HTTPメッセージを傍受した攻撃者は誰でもその内容を読むことができます。HTTPS(HTTP Secure)は、HTTPメッセージを暗号化することでこの問題を修正します。

TLS/SSL: Transport Layer Security(TLS)は、HTTPS が暗号化に使用するプロトコルです。TLSはかつてSecure Sockets Layer(SSL) と呼ばれていました。

UDP:User Datagram Protocol (UDP) は、TCPよりも高速ではあるが信頼性が低いトランスポート層のプロトコルです。ビデオストリーミングやゲームなど、高速なデータ配信が求められるサービスでよく使用されています。

ルーターが使用するプロトコルは?

ネットワークルーターは、特定のプロトコルを使用して、他のルーターへの最も効率的なネットワーク パスを見つけ出します。これらのプロトコルはユーザーデータの転送には使用されません。ネットワークルーティングで重要なプロトコルには以下のものがあります。

BGP: Border Gateway Protocol(BGP) は、ネットワークが管理するIPアドレスをブロードキャストするために使用するアプリケーション層のプロトコルです。この情報をもとに、ルーターはデータパケットが目的地に到達するまでにどのネットワークを経由すべきかを決定します。

EIGRP: Enhanced Interior Gateway Routing Protocol(EIGRP)は、ルーター間の距離を特定します。EIGRPは、各ルーターの最適なルートのレコード(ルーティングテーブルと呼ばれる)を自動的に更新し、その更新をネットワーク内の他のルーターにブロードキャストします。

OSPF: Open Shortest Path First(OSPF)プロトコルは、距離や帯域幅などのさまざまな要素に基づいて、最も効率的なネットワークルートを算出します。

RIP: Routing Information Protocol(RIP)は、ルーター間の距離を特定する古いルーティングプロトコルです。RIPはアプリケーション層のプロトコルです。

サイバー攻撃でプロトコルはどのように使われるのか?

コンピュータのあらゆる側面と同様に、攻撃者はネットワークプロトコルの機能を悪用して、システムを危険にさらしたり、過負荷状態にすることができます。このようなプロトコルの多くは、分散サービス妨害(DDoS)の攻撃に使用されます。例えば、SYNフラッド攻撃では、攻撃者はTCPプロトコルの仕組みを利用します。攻撃者はサーバーとのTCPハンドシェイク開始しするSYNパケットを繰り返し送信して、偽のTCP接続によってすべてのサーバーリソースが拘束され、正当なユーザーにサービスを提供できなくなるまで攻撃します。

Cloudflareでは、このようなサイバー攻撃やその他のサイバー攻撃を阻止するために、さまざまなソリューションを提供しています。 Cloudflare Magic Transitは、OSI 参照モデルのレイヤー3、4、7に対する攻撃を軽減することができます。SYNフラッド攻撃の例では、Cloudflareがサーバに代わってTCPハンドシェイクプロセスを処理することで、サーバのリソースがオープンなTCPコネクションで過負荷状態になることはありません。