ルーティングプロトコルとは
ルーティングプロトコルは、コンピューターネットワーキングがルーターと呼ばれるデバイスを介して効率的にトラフィックを誘導できる手段です。 このようなプロトコルは、基本的に、ループを防止および修正し、ネットワークトポロジに関する情報を収集し、その情報を他のルーターに配布し、最終的にトラフィックがとるべき経路を選択するように設計されたアルゴリズムです。 これらのプロトコルの一部は、ネットワーク内のトラフィックを処理し、制御されたネットワーク内の他のルーターに転送します。 特定のネットワークに出入りする必要がある通信は、ネットワークのエッジまたは境界でトラフィックを監視する別のタイプのルーティングプロトコルによって指示されます。
ルーティングプロトコルがネットワークの内部で使用される場合、内部ゲートウェイプロトコル(IGP)と呼ばれます。 同じルーティングプロトコルを一緒に使用して、ルーティングドメインを形成します。 その後、任意の数のルーティングドメインが一緒になって自律システム(AS)を構成するネットワークを形成します。 ここで、ASの内部では、プロトコルは2つの主要なカテゴリ、リンク状態プロトコル、またはベクトルベースのプロトコルに分類されます。
リンク状態プロトコルを使用すると、ルーターは相互に通信してネットワーク全体をマップし、それらの間の接続状態を評価し、トラフィックが通過するのに可能な最良のパスを計算します。 この方法は、どのパスが別のパスよりも接続速度が速いかを判断し、最短パスを見つけるのに役立ちます。 これらのタイプのルーティングプロトコルは、新しいルーターが追加されたときやオフラインになったときに、ルーターを相互に収束させ、ネットワークに関する知識を更新するのに非常に高速です。
ベクトルベースのルーティングプロトコルには、距離ベクトルとパスベクトルの2つのフレーバーがあります。後者は前者のサブクラスです。 距離ベクトル法では、ホップカウントと呼ばれるものを使用して、あるルーターから次のルーターへの最短パスを決定します。 ここで、ルーターは、通信が横断しなければならない他のルーターの数をカウントし、それぞれが1ホップを表し、その後、可能な最良のルートのマップを作成します。 リンク状態プロトコルと比較して、距離ベクトルアルゴリズムは特定のホップが別のホップと比較される速度を知ることができず、最終的には必要なホップが少なくても遅いルートを選択する場合があります。 また、ネットワークのマップを再構築するためにホップを再度カウントする必要があるため、ネットワークにルーターを追加または削除するときに遅延が発生します。
パスベクタルーティングプロトコルは、しばしばボーダーゲートウェイプロトコル(BGP)と呼ばれるネットワークの境界で使用されます。 ホップのカウントに加えて、境界ルーターは、パスベクトルメッセージを送信することにより、可用性を通知します。 次に、他のネットワークの境界ルーターは、これらのメッセージを相互に監視することにより、AS外部のパスに関する知識を構築します。
場合によっては、ルーティングプロトコルが実際に既存の通信プロトコルを介してルーティングされることがあります。 ルーティングされるかどうかは、IS-IS、データリンクレイヤーなど、OSが動作するOpen Systems Interconnect(OSI)モデルのレイヤーに依存し、ルーティングされないプロトコルです。 インターネットプロトコル(IP)および伝送制御プロトコル(TCP)は、それぞれレイヤー3および4で動作し、ルーティングプロトコルをルーティングできる2つの手段です。 最も注目すべきは、TCP上で実行されるBGPです。