)はインターネット用ルーティングプロトコルとして知られています。BGPは異なるAS間でルーティング情報を共有するために使われています。BGPは信頼性のある転送プロトコルが利用されます。具体的にはTCP/179を使用します。BGPについて注意すべき点はAS内ルーティングについては一切気にしないということです。IGP)にAS内ルーティングは一任しています。BGPが扱うのはあくまでAS間ルーティングです。System)AS内ルーティングを管理する1つまたは複数のIGPとAS間ルーティングのためのBGPを使った同一の運営管理下にあるデバイスの集合体。BGPスピーカーBGPが稼働しているルーターのこと。BGPピア2つのBGPスピーカーが相互に形成しているTCPコネクションのこと。eBGP異なるASのBGPピア間でルーティング情報を交換するためのプロトコル。iBGP同一のAS内にあるBGPピア間でルーティング情報を交換するためのプロトコル。AS間ルーティング異なる自律システム間で行われるルーティング。AS内ルーティング同一自律システム内で行われるルーティング。■BGPの動作BGPにより世界中に広がったAS間におけるルーティング情報のやりとりが可能になります。同一AS内でBGPを使うデバイスは全てiBGPを使って相互に通信します。iBGPを使うデバイスが多くある場合について注意すべき点はデバイスの全てが相互にピアをはる必要があることです。iBGPが適切に動作するには安全メッシュを構成する必要があります。BGPを使うデバイスは全てにレイヤ3到達可能性が必要であるからです。オプションを使うことによりフルメッシュ構成は必須ではありません。eBGPは異なるASのBGPを使うデバイス同士で利用されます。iBGPと同様にeBGPピアリングセッションでもBGPを使う参加デバイスが相互にレイヤ3接続性を持つ必要があります。ピアの形成後にBGPを使うデバイスはピアリング情報を使って関係のあるASのループなしのグラフは作成します。これをBGPツリーと言います。BGPデバイスはピアを形成して自分のBGPツリーを作成すると経路情報を交換します。それ以降、ピアは自分たちのBGPルーティングテーブルの増分更新を交換しコネクションを維持させておくためにkeepaliveメッセージの交換を行います。■BGPのネゴシエーションピア形成の第一歩はTCP179ポートを使ってBGPスピーカーが相互にTCPセッションをはることです。これが行われないとBGPスピーカーはお互いにピアになることができません。TCPセッションの確立後、BGPスピーカーは相互にOPENメッセージを送信します。それ以降、BGPスピーカーは増分のUPDATEメッセージ、NOTIFICATIONメッセージ、KEEPALIVEメッセージを送信します。Attributesなどから構成されるKEEPALIVEBGPセッションの継続のため定期的に交換。デフォルトで60秒ごとに送信、holdtimeは180秒NOTIFICATIONエラー時に送信。その後、BGPセッションを切断する。BGPピアがEstablished状態に達するとルーティング情報の交換を始めます。上記のUPDATEメッセージのところでBGPではルート情報を管理するためのBGPアトリビュートを付与してメッセージを送付します。アトリビュートには以下のものがあげられ、厳密には以下だけではありませんが簡単に紹介致します。1)BGPがどうやって経路を学習したのか。incompleteのいずれか。5)他ASへの出口ポイントを設定する際に使用。共通の特性を共有するルートをグループ化ルートにコミュニティタグを付与BGPスピーカ同士が隣接関係を形成する際には以下のステップを踏みます。IDLE状態BGPセッションをはじめる際の最初の状態。Connection状態BGPスピーカーがTCPコネクション形成を待っている状態。Active状態BGPスピーカーがピアを張りたいと希望するルータとTCPセッションを開始しようとしている状態。OpenSent状態リモートのBGPスピーカーからOpenメッセージの受信を待っている状態。OpenConfirm状態リモートのBGPスピーカーからKEEPALIVEメッセージ受信を待っている状態。Established状態ネゴシエーションの全てが完了した状態。)を通る必要があります。BGPを使うデバイスは全てRIBを持っています。RIBは次の3つの部分で構成されています。・Adj-RIB-InBGPスピーカーが持つピア1つに対して1つのAdj-RIB-Inがあります。このRIBは受信したBGP経路が格納されるところです。BGP経路は中に入れられると入力ポリシーエンジンにかけられます。入力ポリシーエンジンとはルータのアドミニストレータが設定した事前定義ポリシーに基づいて経路のフィルタリングやその属性の処理が行われるところです。・Loc-RIBLoc-RIBはルータが自分自身のBGPルーティング決定を行うために使うものです。次にルータはLoc-RIBに入ったすべてのBGP経路を出力ポリシーエンジンにおくります。出力ポリシーエンジンとはBGP経路をAdj-RIB-Outに入れる前にフィルタリングと処理を行うためにルータのアドミニストレータが設定した事前定義ポリシーです。・Adj-RIB-OutBGP経路が出力ポリシーエンジンを通過できるとその経路はAdj-RIB-Outに入ります。Adj-RIB-OutはBGPスピーカーのピアごとにあります。Adj-RIB-Outに入った経路はBGPスピーカーごとにピアにアドバタイズされます。BGP経路はそのアドバタイズ先であるBGPスピーカーごとにこのルーチンを繰り返します。1BGPスピーカーがBGP経路を受信します。2受信したBGP経路がAdj-RIB-Inに入れられます。3BGP経路が入力ポリシーエンジンに送られます。4入力ポリシーエンジンは管理者が設定したポリシーに基づいてフィルタリングと処理を行います。入力ポリシーエンジンによって振るい落とされたBGP経路はここで破棄されます。5残りのBGP経路がLoc-RIBに転送されます。6BGPスピーカーはLoc-RIBに経路を格納します。これらの経路を使って経路を決定します。7BGP経路は出力ポリシーエンジンに転送されます。8出力ポリシーエンジンは管理者が設定したポリシーに基づいてフィルタリングと処理を行います。出力ポリシーエンジンによって振るい落とされたBGP経路はここで破棄されます。9出力ポリシーエンジンを通過できたBGP経路はAdj-RIB-Outに転送されます。10受信した経路はAdj-RIB-Outに格納されます。11Adj-RIB-Outに格納されたすべての経路がBGPスピーカーのすべてのピアにアドバタイズされます。BGPスピーカーがどの経路を受け入れるのか、ローカルで使用する経路、ピアにアドバタイズする経路を決定するプロセスのことを決定プロセスと言います。決定プロセスは次の3つのフェーズで成り立っています。Phase-1フェーズ1では近隣するASから学習した経路の優先度を計算します。優先度の最も高い経路のローカルASのBGPスピーカーへのアドバタイズも行います。Phase-2指定した宛先までどの経路が最適か決定します。次にこの経路をLoc-RIBに格納します。BGPスピーカーはこのフェーズの間にインストールされた経路を使ってBGPルーティングの決定を行います。Phase-3出力ポリシーエンジンに設定されたポリシーに基づいて近隣するASのピアにどの経路をアドバタイズするか決定するフェーズです。このフェーズの間に経路集約を行うこともできます。CiscoのBGP実装では経路選択のために以下の10個のステップを取り入れています。■経路フィルタリングBGP経路フィルタリングは様々な理由で使われます。BGPの属性の処理に使われると経路に対する見方に影響を及ぼすことになります。経路フィルタリングを使って特定の経路に関しBGPスピーカでの受け入れやスピーカーによる経路広報を許可または拒絶することもできます。BGP経路フィルタリングは入力または出力ののどちらかとして行われ、以下の複数の方法があります。)実際の設定方法については後述します。