EIGRP は従来のディスタンスベクタやリンクステートのルーティングプロトコルと違い、拡張ディスタンスベクタ(hybrid)と呼ばれ、以下のような特徴がある。
1,他のルータへのルート情報の更新
2,デフォルトではリンクの帯域幅の50%以上は使用しない。ip bandwidth-percent コマンドで変更可。
3,クラスレスのプロトコルなので、アップデートにサブネットマスク情報を含むことが可能
4,MD5認証が利用可能
5,IP/IPX/Apple Talk といったマルチルーテッドプロトコルに対応
Successor:送信ルータから宛先ネットワークへの最適経路にある、送信ルータの隣接ルータ
Feasible Successor:最適経路の次にコストが低い経路にある、送信ルータの隣接ルータ
*640−503の青本には、それぞれの経路自体をサクセサ・フィジブルサクセサと呼んでいたような。。。
Active State:送信ルータが宛先ネットワークへのサクセサを失った時、フィジブルサクセサがない場合はこの状態に入る。全ての隣接ルータへQueryを送り、隣接ルータが戻すRepliesにより宛先への新しい経路を再計算しサクセサを決定する。
Passive State:送信ルータが宛先ネットワークへのサクセサを失った時、フィジブルサクセサがあればフィジブルサクセサがサクセサになる。その時の送信ルータの状態。
Hello Packet:隣接ルータのみにマルチキャストアドレス 224.0.0.10 で送信。基本は5秒ごと、低帯域のNBMA(マルチアクセスネットワーク全般?)では60秒ごと。
bandwidth/delay/reliability/loading/MTU を複合メトリック使う。ホップカウント数千まで可能。
EIGRPがデフォルトで使うメトリックは、bandwidth/delay
本来のメトリック算出方法はK1〜K5までの値を使い2段階の計算を行うが、K1〜K5の値がデフォルトの場合は以下の計算式で要約される。
Metric = [ (10,000,000/minimum bandwidth) + (SUM ( interface delay )/10) ] * 256
シリアルリンクでは、bandwidth/delay の値はそれぞれデフォルトで決まっている。
実際のリンクのbandwidth/delayの値を設定するには、各インタフェースで bandwidth コマンドや delay コマンドを使って手動設定する必要がある。
ルータA(s0)------------(s0)ルータB(e0)------------ネットワークC
例えばルータAからルータBに直接接続されているネットワークCまでの経路のメトリックの算出方法は、
[ (10,000,000/通る経路の中で一番低帯域幅の数値) + (通るインタフェースの遅延の合計 )/10) ] *256
「通る経路の中で一番低帯域幅の数値」と「通るインタフェースの遅延」を参照するには各ルータでshow interface を実行
ここで、ルータAのインタフェースs0の帯域:1554Kbit、遅延:20000microseconds
ルータBのインタフェースe0の帯域:10000Kbit、遅延:1000microseconds と仮定すると、
[ (10,000,000/1554) + (20000 + 1000)/10)
] *256
= [6476+ 2100] * 256 = 2195456 = Metric
(10,000,000/1554)=6476.683937824 だが端数は切り捨て
メトリックの値はルーティングテーブル show ip route で参照可能
参照:Cisco CCIE Lab Practice Kit (Mc Graw Hill)