Cisco Systems社認定資格であるCCNA(Cisco Certified Network Associate)出題範囲における技術について、定期的にご紹介します。
CCNA資格は【ICND1】【ICND2】の2つの試験に合格することで取得できます。
今回の記事ではICND2の出題範囲であるEIGRPが最適経路を選出するまでの流れについてご紹介します。
EIGRPは、Cisco独自のルーティングプロトコルであるIGRPの後継として開発されたものです。
EIGRPの概要
EIGRPは、ディスタンスベクタ型のIGRPをベースとして、OSPFなどのリンクステート型の利点を組み合わせたハイブリッド型のルーティングプロトコルです。(拡張ディスタンスベクタ型ともよばれます)
ディスタンスベクタ型をベースとしているため、経路情報はRIPやIGRPと同様に、自身が持つ最適経路のみを隣接ルータに通知します。
また、送信してきたルータをネクストホップとしますが、通知されてきた経路情報のうち最適経路のみを保持するのではなく、すべての経路情報を保持するところが、ディスタンスベクタ型とは異なります。
このすべての経路情報のことを「トポロジーテーブル(Topology Table)」といいます。
EIGRPのテーブル
EIGRPでは、トポロジーテーブルから最適経路を選択し、ルーティングテーブルにエントリするとともに、最適経路の代わりとなる代替経路を選びます。
代替経路は最適経路が使えなくなった場合に、直ちに新たな最適経路としてルーティングテーブルにエントリされます。
これにより、EIGRPは高速なコンバージェンスが行えるようになっています。
図のRT-Cでは、RT-Eからのアップデート(経路情報)を受け、ネットワークXの経路情報をトポロジーテーブルに記録します。 そこからルーティングテーブルにネクストホップをRT-Eとしてエントリします。
RT-Aは、RT-B、RT-Cからのアップデートを受け、トポロジーテーブルにネットワークX宛の2つの経路情報を記録しています。
その2つのうち、メトリックのよいRT-Cをネクストホップとした経路をルーティングテーブルにエントリします。
最適経路と代替経路の判別には、DUAL(Diffuse Update ALgolism:拡散アップデートアルゴリズム)と呼ばれる処理が行われます。
これにより、ディスタンスベクタ型の欠点であった、ルーティングループを防いでいます。
複合メトリック
EIGRPのメトリックは複合メトリックと呼ばれるメトリックです。 帯域幅、遅延、信頼性、負荷、MTUの5つの値から計算しますが、デフォルトでは帯域幅と遅延しか使用しません。
帯域幅は宛先ネットワークまでの経路上で最も小さい帯域幅が使われます。
遅延は経路上の遅延の累計値となります。
また、EIGRPではOSPF同様にメトリックが同じ経路を複数持つ場合に、等コストロードバランシングが可能です。
さらにメトリックが異なる経路での、不等コストロードバランシングも行えます。
不等コストロードバランシングは、最適経路のメトリックのn倍までのメトリックの経路を使い、負荷分散を行います。
ネイバー関係の確立
EIGRPではOSPFと同様に、経路情報を交換する相手を決定してから、情報の交換を行います。
ネイバーになるために、マルチキャスト(224.0.0.10:全EIGRPルータ宛)でHelloパケットのやり取りを行い、自動検出したEIGRPルータを自身のネイバーテーブルに保存します。
ネイバーになった後は、Helloパケットを定期的にやり取りすることで、キープアライブを行います。
Helloパケットは5秒間隔で送信され、EthernetにおいてはネイバールータからのHelloパケットが3倍の15秒(5秒×3)間確認できない場合は、ネイバールータはダウンしたと判断され、ネイバーテーブルから削除されます。
また、ネットワークに変更があった場合は変更分のみをアップデートで通知します。
ネイバーから入手した経路情報はトポロジーテーブルに記載されます。
トポロジーテーブルから最適経路、代替経路を選出するには、DUALアルゴリズムが使用されます。
DUALアルゴリズムの仕組み
DUALでは、トポロジーテーブルの経路を3つに分類しています。
◆サクセサ(Successor)
宛先までの最少メトリック、すなわち最少のフィージブルディスタンスを持つ経路となり、これが最適経路になります。
◆フィージブルサクセサ(Feasible Successor)
代替経路となる経路。 サクセサが使用不可となるとすぐにサクセサとなります。
◆それ以外の経路
サクセサでもフィージカルサクセサでもない経路。
図の構成では、RT-Aが受け取るRT-BからのネットワークXの経路情報は、RT-BからネットワークXまでのコストの合計値である20(RT-BとRT-E間が10、RT-EとネットワークX間が10)を受け取ります。 これがADになります。
これに、RT-AとRT-B間のコスト10を足したものがFDとなります。
この計算をRT-Cからの経路情報、RT-Dからの経路情報についても行い、最少のFDを持つRT-Bをネクストホップとした経路がサクセサとなり、ルーティングテーブルにエントリされることになります。
次にフィージブルサクセサを決定しますが、単純にサクセサの次にFDが小さい経路ではありません。
フィージブルサクセサとなるためには、次の条件を満たしている必要があります。
サクセサのFD > 経路のAD
この条件はフィージビリティコンディション(FC:Feasibility Condition)とよばれ、経路のループを判断するためのものであり、条件を満たす経路が存在すればそれがフィージブルサクセサとなります。
図の構成では、RT-Cをネクストホップとした経路がフィージブルサクセサに選択されています。
サクセサのFDは30、RT-Cの経路のADは25ですから、「30 > 25」となり条件を満たしています。
一方、同じFDを持つRT-Dをネクストホップとした経路はADが35ですので、「30 < 35」となり、条件を満たしません。
したがって、FDが同じであってもフィージブルサクセサには選ばれないのです。
いかがでしたでしょうか。
ぜひお勉強の際にお役立て下さい。