ルーティングプロトコル

ルーティングプロトコル（英: routing protocol）は、ルーター同士がネットワーク上の任意の2ノード間の経路を選択するための情報をやり取りする通信プロトコルである。 各ルーターは自身に隣接するノードの知識を有している。 ルーティングプロトコルはその情報を共有可能とし、各ルーターがより広範囲のネットワーク構成に関する知識を持てるようにする。 基本概念についてはルーティングを参照のこと。 ルーティングプロトコルという用語は、より具体的にはOSI参照モデルの第三層（ネットワーク層）にある通信プロトコルを指し、これも同様にルーター間でのネットワーク構成情報のやりとりを行う。 インターネットで使われているルーティングプロトコルの多くはRFC文書で定義されている。 ルーティングプロトコルは大まかに以下の3種類に分類される。 リンクステート型ルーティングプロトコル（英語版）（リンク状態型ルーティング） リンクステート型（LSA）のルーティングを行う。Open Shortest Path First（OSPF）、IS-ISが該当する。 距離ベクトル型ルーティングプロトコル（英語版）（ディスタンスベクタルーティング） 距離ベクトル型（DVA）のルーティングを行う。Routing Information Protocol（RIP）、Interior Gateway Routing Protocol（IGRP）が該当する。 パスベクトル型ルーティングプロトコル（英語版） Border Gateway Protocol（BGP）が該当する。 個々のルーティングプロトコルの特徴として、ループ状の経路を形成することを防止するか否か、防止しない場合はループを壊す方法、何を元に経路を決定するかといった点が挙げられる。 混同されやすいが、ルーティングプロトコルとルーティング対象 (routed) プロトコルは異なる。 ルーティングプロトコルはルーターが経路決定に使うのに対し、ルーティング対象プロトコルは L3（ネットワーク層） デバイス間の実際のデータ転送を受け持つ。 ルーティング対象プロトコルとは、通信プロトコルのうち、パケットをホストからホストへアドレス形式に従って転送する際にネットワーク層アドレスに関する十分な情報を提供するもので、それ自体は発信元から送信先までの経路全体を把握していない。 ルーティング対象プロトコルはパケットの形式と各フィールドの用途を定義している。 パケットは一般にネットワークのエンドシステムからエンドシステムへ伝送される。 ほぼ全てのネットワーク層プロトコルとその上の層はルーティング可能であり、例えばIPがある。 イーサネットなどのデータリンク層プロトコルはルーティングに必要な情報を持たないため、必然的にルーティング不可能なプロトコルである。 ネットワーク層アドレスを持たずにデータリンク層に直接乗ったプロトコルとして NetBIOS があるが、これもルーティング不可能である。 場合によっては、ルーティング対象プロトコル上でルーティングプロトコルを使うこともある。 例えばBGPはTCP上で動作する。 このようなシステムの実装にあたっては、ルーティングプロトコルとルーティング対象プロトコルの相互依存が生じないように注意が必要である。 ルーティングプロトコルがトランスポート層（OSI参照モデルの第4層）の上にあったとしても、1つ上の階層に位置するわけではない。 ルーティングプロトコルはOSIのルーティングフレームワークによれば、ネットワーク層の管理プロトコルであって、その転送機構は関係ない。 IS-IS はデータリンク層の上で動作する。 OSPF、IGRP、EIGRP は直接、IPの上で動作する。OSPF と EIGRP は独自の信頼できる転送機構を持っており、IGRPは転送機構を信頼しない。 RIPはUDPの上で動作する。 BGPはTCPの上で動作する。 アドホックネットワーク（アドホックモード）のルーティングプロトコルは、ネットワーク自体にほとんど基盤が存在しない。無線アクセスや携帯電話の無線ネットワーク部分が相当する。 OLSR (Optimized Link State Routing) - 能動的リンクステート型。RFC 3626 AODV (Ad hoc On-Demand Distance Vector) - オンデマンド距離ベクトル型。RFC 3561 DSR (Dynamic Source Routing) - オンデマンド距離ベクトル型。RFC 4728 B.A.T.M.A.N. (Better Approach To Mobile Adhoc Networking) ルーティングプロトコルには、内部ルータプロトコル（IRP）と外部ルータプロトコル（ERP）の2種類がある： Interior Gateway Protocol (IGP) は、1つの自律システム（AS）内でルーティング情報を交換する通信プロトコル。 IGRP (Interior Gateway Routing Protocol) EIGRP (Enhanced Interior Gateway Routing Protocol) OSPF (Open Shortest Path First) RIP (Routing Information Protocol) IS-IS (Intermediate System to Intermediate System) なお、IGRPとEIGRPはシスコシステムズ独自のルーティングプロトコルであり、IGRPは既にサポートされていない。EIGRPはIGRPのコマンドを受け付けるが、その内部は全く異なる。 Exterior Gateway Protocol (EGP) は自律システム（AS）間のルーティングを行う通信プロトコル。 EGP (Exterior Gateway Protocol) - かつてインターネットバックボーンへの接続に使われていた。現在は使われていない。 BGP (Border Gateway Protocol) - 最新版の BGP-4 は1995年ごろ策定された。 [脚注の使い方] ^ RFC 791 INTERNET PROTOCOL, J Postel, September 1981. ^ RFC 922 BROADCASTING INTERNET DATAGRAMS IN THE PRESENCE OF SUBNETS, Jeffrey Mogul, October 1984 ^ RFC 1716 Towards Requirements for IP Routers, P. Almquist, November 1994 ^ RFC 1812 Requirements for IP Version 4 Routers F. Baker, June 1995 ^ Routing and Routed Protocols ^ Stallings, William (2016). Foundations of modern networking : SDN, NFV, QoE, IoT, and Cloud. Florence Agboma, Sofiene Jelassi. Indianapolis, Indiana. ISBN 978-0-13-417547-8. OCLC 927715441. https://www.worldcat.org/oclc/927715441  ^ Guidelines for creation, selection, and registration of an Autonomous System (AS), RFC 1930, J. Hawkison & T. Bates,March1996 プロトコル 通信プロトコル