(11)ルーティングプロトコルの役割と種類
ルーティング
インターネットは数多くのネットワークによって構成されています。
このネットワークを介して送信された情報は、複数のルータという中継機器によって行き先を振り分けられ、目的とするコンピュータまで届けられることになります。
このルータによる中継動作をルーティング (通信経路の選択) といいます。
これを城まで旅をする旅人を例に考えると非常にわかりやすくなります。
旅人は遠くにある城まで行く必要がありますが、彼自身は城のある場所を知りません。
道は複雑に分岐していて迷うところですが、道の分岐点には必ず道案内人がいて、
「城に行くにはどちらの道を行けばよいか」 と尋ねれば、城へと続く道を指差してくれます。
それぞれの道案内人は城までの道筋をあれこれと細かく教えてくれるわけではありませんが、
道が分岐している地点に到達したときに同じ質問を繰り返すことで、結果的に旅人は城へとたどり着くことができます。
この例における旅人をパケットだとすると、道案内人がルータであり、城へと続く道を指差す行為をルーティング ということができます。
それでは、ルータが実際にネットワーク上でルーティングを行うプロセスを簡単に説明することにしましょう。
図では、A が異なるネットワークに存在する B に対してパケットを送信しています。
そして、このパケットを受け取ったルータ1 は、自己の持つルーティングテーブルを、パケットの IPヘッダにある送信先の IPアドレスと比較します。
するとこの B へは、ルータ2である 192.1.1.1 にパケットを中継すればよいことがわかります。
そこで、ルータ1 はルータ2 へとパケットを中継するわけです。
またルータ2 は、自己のネットワーク内に B が存在することがわかり、B へとパケットを中継します。
この一連のルーティングにより、A の送信したパケットは無事 B へと届くことになるのです。
ルータは自己の持つルーティングテーブルを参照してパケットを中継します。
それではこのルーティングテーブルはどのようにして作成されるものなのでしょうか。
これについては2種類の方式が存在します。
1つは、スタティックルーティング と呼ばれる方式で、ルータの持つルーティングテーブルが ルータの管理者など人の手によって設定されるものです。
ルータ は設定された ルーティングテーブルに忠実に従って固定的なルーティングを行います。
このためにルーティング情報の交換をルータ間で行う必要がなく、情報交換によってネットワークに負荷をかけることがありません。
また、ルーティングテーブルは管理者が自由に設定できることから通過させるパケットの制限をすることができるため、ネットワークセキュリテイの手段として活用することができます。
ただし、ネットワークの変更などの際には人手によって新たなルーティングテーブルを作成する必要があります。
スタティックルーティングのスタティックとは 「静的」 つまり 「動かない」 という意味です。
これに対してダイナミックルーティングは、ルータ間でルーティング情報をつねに交換し合うことで互いに最新のルーティングテーブルを維持する方式です。
人手による設定などを必要とせず、ネットワークに変更などが生じた場合でも、これをすぐに検知して変更後の最適なルーティングを実現します。
ただし、ルータ同士が情報交換をつねに行うためにネットワークに負荷をかけることになります。
ダイナミックルーティングのダイナミックとは、「動的」 つまり可変であるという意味です。
ルーティングプロトコルの分類
ダイナミックルーティングでは、ルータ間で情報を共有・交換するために 「ルーティングプロトコル」 と呼ばれるプロトコルが使用されます。
ルーティングプロトコルは、大きく2種類に分かれます。
自律システム (AS:Autonomous System) 間ルーティング用と、自律システム内ルーティング用です。
自律システムとは、1つの管理ポリシーで制御されるネットワークの集合体のことで、企業やプロバイダなどが当てはまります。
自律システムにはインターネットでICANNから一意な番号 (自律システム番号) が割り振られます (日本の場合はJPNICから割り振られます)。
この自律システムの集合体がインターネットという形になっています
自律システム間ルーティングプロトコルは、工クステリアゲートウェイブロトコル群 EGPs (Exterior Gateway Protocols)
と呼ばれ、
一方の自律システム内ルーティングプロトコルは、インテリアゲートウェイブロトコル群 IGPs (Interior Gateway Protocols)
と呼ばれます。
インテリアゲートウェイブロトコル群 IGPsは、さらにその動作の違いにより、「ディスタンスベクタ型」 と 「リンクステート型」 に分けられます。
ディスタンスベクタ型 は、距離 (Distance) と方向 (Vector) によりベストパスを決定して、 別のルータにネットワーク情報を渡す方式です。
これに対して、リンクステート型は、ルータどうしが、LSAを交換します。
LSA (Link State Advertisement) とは、 ルータの直接繋がっているネットワークに関する情報です。 このLSAを膨大な量のルータが共有します。
その共有した情報は、各々のルータのデータベースに蓄えられ、 そのデータベースからの情報を計算して、ルーティングテーブルが出来上がります。
この特徴から、新たにルータが接続されて、ネットワークが追加されたとしても、 そのLSAを拡散すれば、勝手に各々のルータがデータベースに取り込み、
計算して、ルーティングテーブルを書き替えます。
ディスタンスベクタ型では、計算してから、となりのルータに渡していました。
このため、ネットワークの変化に対して、ルーティングできる状態になるまでに、 時間がかかってしまうということになります。
このように、すべてのルータがルーティングできる状態になるまでの時間のことを「コンバージェンス時間」といいます。
リンクステート型のルーティングプロトコルは、 コンバージェンス時間が短い プロトコルと言えます。
基本的に小規模で低スペックルータに向いているのは ディスタンスベクタ型、中~大規模に向いているのは リンクステート型 という形になります。
Home Page