解説書 Vol.1

[目次][用語][索引][前へ][次へ]


11.3.2 経路選択アルゴリズム

本装置は,各プロトコルで学習した同じ宛先への経路情報をそれぞれ独立した経路選択手順に従って一つの最適の経路を選択します。同じ宛先への経路情報が各プロトコルでの生成によって複数存在する場合,それぞれの経路情報のプリファレンス値が比較され優先度の最も高い経路情報が有効になります。

BGP4では,自プロトコルを使用し学習した同じ宛先への複数の経路情報から次の表に示す優先順位で一つの最適の経路を選択します。そのあと,同じ宛先への経路情報が各プロトコル(RIP,OSPF,スタティック)での経路選択によって複数存在する場合は,それぞれの経路情報のプリファレンス値が比較されて,優先度の最も高い経路情報をルーティングテーブルに設定します。

表11-6 経路選択の優先順位

優先順位 内容


 
 
 
 

LOCAL_PREF属性の値が最も大きい経路を選択します。
AS_PATH属性のAS数が最も短い経路を選択します。
ORIGIN属性の値でIGP,EGP,Incompleteの順で選択します。
MED属性の値が最も小さい経路を選択します。
外部ピアで学習した経路,内部ピアで学習した経路の順で選択します。
ネクストホップが最も近い(ネクストホップ解決時に使用したIGP経路のメトリック値が最も小さい)経路を選択します。
相手BGP識別子(ルータID)が最も小さい経路を選択します。

経路選択に関連する経路情報に含まれるBGP属性(LOCAL_PREF属性,AS_PATH属性,ORIGIN属性,MED属性,NextHop属性)の概念を次に説明します。

経路選択上の注意事項
  • AS_PATH属性上のパスタイプAS_SETは全体で一つのASとしてカウントします。
  • compare-aspath noオプションを指定して,ASパス長による経路選択を無効化できます。
  • MED属性値による経路選択は,同一隣接ASから学習した重複経路に対してだけ有効です。なお,bgpコマンドのcompare-med all-asオプションを指定することによって,異なる隣接ASから学習した重複経路に対しても有効となります。
<この項の構成>
(1) LOCAL_PREF属性
(2) AS_PATH属性
(3) ORIGIN属性
(4) MED属性
(5) NextHop属性

(1) LOCAL_PREF属性

LOCAL_PREF属性は,同じAS内のルータ間で通知される属性です。同じ宛先ネットワークに対して複数の経路がある場合,LOCAL_PREF属性は該当する宛先ネットワークに対する優先経路を示します。より大きいLOCAL_PREF属性値を持つ経路が優先されます。

本装置で使用できるLOCAL_PREF属性値は0〜65535の範囲で指定します。デフォルト値は100です。

(a) LOCAL_PREF属性のデフォルト値の変更

本装置ではbgpコマンドのdefault-localprefパラメータを指定して,外部ピアから自装置内に取り込む経路情報のLOCAL_PREF属性値を変更できます。

(b) LOCAL_PREF属性のフィルタ単位での変更

本装置ではインポート・フィルタやエキスポート・フィルタとattribute-listroute filterコマンドのlocalprefパラメータを組み合わせることによって,自装置内に取り込む経路情報や通知する経路情報のLOCAL_PREF属性を変更できます。

(c) LOCAL_PREF属性による経路選択の例

LOCAL_PREF属性による経路選択を次の図に示します。

図11-3 LOCAL_PREF属性による経路選択

[図データ]

この図で,AS400はAS200とAS300からネットワークAに対する経路情報を受け取ります。本装置Dのdefault-localpref値を150に,本装置Eのdefault-localpref値を50に設定するとします。それによって,本装置DはAS200からの経路情報を本装置Fに通知するときLOCAL_PREF値を150に設定し,本装置EはAS300からの経路情報を本装置Fに通知するとき,LOCAL_PREF値を50に設定します。本装置FでのネットワークAへの経路情報は,本装置Dからの経路情報が本装置Eからの経路情報より大きいLOCAL_PREF属性値を持つため,本装置Dからの経路情報(AS200経由の経路情報)を選択します。

(2) AS_PATH属性

AS_PATH属性は,経路情報の宛先ネットワークに到達するまでに通過するAS番号のリストです。経路情報がほかのASに通知されるとき,その経路情報のAS_PATH属性に自AS番号を追加します。また,構成定義情報の指定(attribute-list/route-filterコマンドのascountパラメータとimport,exportコマンドとの組み合わせ)によって複数の自AS番号をAS_PATH属性に追加することもできます。これはある宛先ネットワークへの複数の経路がある場合に特定の経路を選択するのに有効です。

(a) AS_PATH属性による経路選択の例

AS_PATH属性による経路選択を次の図に示します。

図11-4 AS_PATH属性による経路選択

[図データ]

ルータAが自ASに存在するネットワークAをAS200経由で通知するとき,AS500に到達する経路情報のAS_PATH属性は「200 100」を持ちます。ルータAが自AS内のネットワークA)をAS300,AS400経由で通知するとき,AS500に到達する経路情報のAS_PATH属性は「400 300 100」を持ちます。したがって,AS500の本装置Eは最も短いAS_PATH属性を持つAS200経由で到達した経路を選択します。

(b) AS_PATH属性のascountパラメータ使用時の経路選択

ascountパラメータの例を次の図に示します。

図11-5 ascountパラメータの使用例

[図データ]

この図で,本装置Aが本装置Eに対しAS300 AS400経由の経路を選択させたい場合,AS200に通知する経路情報のAS_PATH属性に複数の自AS番号を追加します。例えば,自AS番号を三つ追加(ascount=3)した場合,AS200経由でAS500に到達する経路情報のAS_PATH属性は「200 100 100 100」を持ち,本装置Eは最も短いAS_PATH属性を持つAS300 AS400経由で到達した経路を選択します。

(3) ORIGIN属性

ORIGIN属性は,経路情報の生成元を示します。ORIGIN属性を次の表に示します。

表11-7 ORIGIN属性

ORIGIN属性 内容
IGP 該当する経路がAS内部で生成されたことを示します。
EGP 該当する経路がEGP経由で学習されたことを示します。
Incomplete 該当する経路が上記以外の方法で学習されたことを示します。

経路選択では,同一宛先への複数の経路が存在する場合,IGP,EGP,Incompleteの順で選択します。

(a) ORIGIN属性の変更

本装置ではインポート・フィルタやエキスポート・フィルタとattribute-list/route-filterコマンドのoriginパラメータを組み合わせることによって,自装置内に取り込む経路情報や通知する経路情報のORIGIN属性を変更できます。

(4) MED属性

MED属性は,同一の隣接ASから学習した,ある宛先への複数のBGP4経路の優先度を決定する属性です。より小さいMED属性値を持つ経路情報が優先されます。bgpコマンドのcompare-med all-asオプションを指定して,異なる隣接ASから学習したBGP4経路間の優先度選択に使用できます。

(a) MED属性による経路選択の例

MED属性による経路選択を次の図に示します。

図11-6 MED属性による経路選択

[図データ]

ある宛先ネットワークに対する経路情報をルータCはMED属性値10で,ルータDはMED属性値20で本装置Aに通知しているものとします。この場合,本装置AはルータCから通知された経路情報を該当する宛先ネットワークへの経路として選択します。

MED属性による経路選択は構成定義情報でmedパラメータ(bgpコマンドのパラメータ)を設定する必要があります。medパラメータが設定されていない場合,MED属性による経路選択は行いません。

(b) MED属性値の変更

本装置ではインポート・フィルタやエキスポート・フィルタとattribute-listまたはroute-filterコマンドのmedパラメータを組み合わせることによって,自装置内に取り込む経路情報や通知する経路情報のMED属性値を変更できます。

また,medパラメータにinternal-metricを指定した場合,NextHop解決に使用しているIGP経路のメトリック値を,通知するBGP4経路のMED属性値にすることができます。internal-metricの使用例を次の図に示します。

図11-7  internal-metricの使用例

[図データ]

この図では本装置A,本装置Bの間でルーティングピアを形成しています。MED属性値=100で本装置Aから通知されたBGP4の経路情報を本装置BがルータCに通知するとき,本装置Bから本装置AまでのIGP経路のメトリック値=2をMED属性値に設定したい場合,本装置Bのエキスポート・フィルタでmedパラメータにinternal-metricを指定します。

(c) MED属性値の範囲

MED属性値の範囲は0〜4294967296です。

(5) NextHop属性

NextHop属性は,ある宛先ネットワークに到達するために使用されるネクストホップのIPアドレスです。本装置では相手BGPスピーカに経路情報を通知する場合,NextHop属性にピアリングに使用した自側のIPアドレスを設定します。

(a) NextHop属性の設定例

通知する経路情報のNextHop属性の設定例を次の図に示します。

図11-8 通知する経路情報のNextHop属性の設定例

[図データ]

(b) NextHop属性を書き換えない場合

ブロードキャスト型インタフェースで接続されたピア間で経路情報を通知する場合,通知する経路情報のNextHop属性を書き換えません。ブロードキャスト型インタフェース接続でのNextHop属性の設定例を次の図に示します。

図11-9 ブロードキャスト型インタフェース接続でのNextHop属性の設定例

[図データ]

本装置Aと外部ピアを形成するルータBから通知された経路情報を,内部ピアを形成するルータCに通知する場合,通知するNextHop属性はルータBから通知されたネクストホップ(Ib)のままになります。また,ルータCから通知された経路情報をルータBに通知する場合,通知する経路情報のNextHop属性はルータCから通知されたネクストホップ(Ic)のままになります。つまり,通知する経路情報のネクストホップが通知するインタフェースと同一のネットワーク上に存在する場合,NextHop属性は書き換えません。

(c) パーシャルメッシュ構成のネットワークでの注意事項

パーシャルメッシュ構成のネットワークが一つのIPサブネットに収容されていて,これにブロードキャスト型で接続するピア間で経路情報を通知する場合,通信できない経路情報(直接到達できないネクストホップ)を通知することになるので注意してください。これは,「(b) NextHop属性を書き換えない場合」に示すように,通知する経路情報のネクストホップが通知するインタフェースと同一のIPサブネット内に存在する場合はNextHop属性を書き換えないためです。パーシャルメッシュ接続でのNextHop属性を次の図に示します。

図11-10 パーシャルメッシュ接続でのNextHop属性

[図データ]

注意する必要がある構成
  • パーシャルメッシュ構成のネットワークが一つのIPサブネットに収容されている。
  • パーシャルメッシュ構成のネットワークへの接続形態がブロードキャスト型である。

対策
本装置ではこの問題を解決するために次の三つの方法を取ることができます。
  • ネットワークを複数のIPサブネットに分割する。
  • ネットワークへの接続形態をポイント−ポイント型にする。
  • nexthopselfパラメータを指定する。

(d) ネットワークを複数のIPサブネットに分割する

PVCごとにインタフェースアドレスを付与する例を次の図に示します。

図11-11 PVCごとにインタフェースアドレスを付与する例

[図データ]

本装置Aでは各PVCを異なるIPサブネット下に収容します。インタフェースアドレスIaとIbを,また,IdとIcを同じIPサブネットになるようにしてください。これによって,本装置AからルータBに通知する経路情報のNextHop属性はIaに,本装置AからルータCに通知する経路情報のNextHop属性はIdになります。

(e) ネットワークへの接続形態をポイント−ポイントにする

図11-11 PVCごとにインタフェースアドレスを付与する例」を使用して説明します。本装置Aでは各PVCに異なるインタフェースアドレスIaとIdを設定し,ネットワークへの接続形態をポイント−ポイント型にします。これによって,本装置AからルータBに通知する経路情報のNextHop属性はIaに,本装置AからルータCに通知する経路情報のNextHop属性はIdになります。

(f) nexthopselfパラメータを指定する

nexthopselfパラメータ指定の例を次の図に示します。

図11-12 nexthopselfパラメータ指定の例

[図データ]

本装置Aでは本装置A−ルータB間の外部ピアにnexthopself(構成定義情報のbgpコマンドのパラメータ)を設定してください。nexthopselfの設定によって,本装置AからルータBに通知する経路情報のNextHop属性は本装置A−ルータB間のインタフェースの本装置A側のインタフェースアドレスIaになります。

また,「 図11-12 nexthopselfパラメータ指定の例」に示すルータCに本装置を適用する場合,ルータCでは本装置A−ルータC間の内部ピアに対し,setnexthoppeerパラメータ(構成定義情報のbgpコマンドのパラメータ)を設定する必要があります。これは,本装置Aにnexthopselfパラメータを設定しても,ルータBから本装置Aに通知された経路情報をルータCに通知する場合,NextHop属性は,本装置A−ルータB間のインタフェース(PVC)のルータB側のインタフェースアドレスIbのままのためです。ルータCにこのパラメータを設定すると,本装置Aから通知された経路情報のNextHop属性を強制的にピアリングに使用した相手のインタフェースアドレスIaに変更します。setnexthoppeerパラメータ指定の例を次の図に示します。

図11-13 setnexthoppeerパラメータ指定の例

[図データ]

[目次][前へ][次へ]


[他社商品名称に関する表示]

Copyright (c)2005 ALAXALA Networks Corporation. All rights reserved.