3.2. Routing Information Base (ルーティング情報ベース)
3.2. Routing Information Base (ルーティング情報ベース)
BGP スピーカー内のルーティング情報ベース (RIB) は、次の 3 つの異なる部分で構成されています。
a) Adj-RIBs-In: Adj-RIBs-In には、他の BGP スピーカーから受信したインバウンド UPDATE メッセージから学習したルーティング情報が保存されます。その内容は、決定プロセス (Decision Process) への入力として利用可能なルートを表します。
b) Loc-RIB: Loc-RIB には、BGP スピーカーが Adj-RIBs-In に含まれるルーティング情報にローカルポリシーを適用して選択したローカルルーティング情報が含まれます。これらは、ローカル BGP スピーカーによって使用されるルートです。これらの各ルートのネクストホップは、ローカル BGP スピーカーのルーティングテーブルを介して解決可能でなければなりません (MUST)。
c) Adj-RIBs-Out: Adj-RIBs-Out には、ローカル BGP スピーカーがピアへのアドバタイズメント用に選択した情報が保存されます。Adj-RIBs-Out に保存されたルーティング情報は、ローカル BGP スピーカーの UPDATE メッセージで運ばれ、ピアにアドバタイズされます。
要約すると、Adj-RIBs-In には、ピアによってローカル BGP スピーカーにアドバタイズされた未処理のルーティング情報が含まれています。Loc-RIB には、ローカル BGP スピーカーの決定プロセスによって選択されたルートが含まれています。そして、Adj-RIBs-Out は、特定のピアへのアドバタイズメント用のルートを整理します (ローカルスピーカーの UPDATE メッセージによって)。
概念モデルでは Adj-RIBs-In、Loc-RIB、および Adj-RIBs-Out を区別していますが、これは実装がルーティング情報の 3 つの個別のコピーを維持しなければならないことを意味するものでも、要求するものでもありません。実装の選択 (たとえば、情報の 3 つのコピー対ポインタを使用した 1 つのコピー) は、プロトコルによって制約されません。
BGP スピーカーがパケットの転送 (またはパケット転送に使用される転送テーブルの構築) に使用するルーティング情報は、ルーティングテーブル (Routing Table) で維持されます。ルーティングテーブルには、直接接続されたネットワークへのルート、静的ルート、IGP プロトコルから学習したルート、および BGP から学習したルートが蓄積されます。特定の BGP ルートをルーティングテーブルにインストールする必要があるかどうか、および BGP ルートが別のソースによってインストールされた同じ宛先へのルートを上書きする必要があるかどうかは、ローカルポリシーの決定であり、このドキュメントでは指定されていません。実際のパケット転送に加えて、ルーティングテーブルは、BGP アップデートで指定されたネクストホップアドレスの解決に使用されます (セクション 5.1.3 を参照)。