全1652文字
PR
 インターネットを経由して遠隔地にいる相手とやりとりできるのは「ルーティング」という仕組みがあるためだ。動的に経路を決めるダイナミックルーティングでは主にOSPFというプロトコルが使われている。その巧みな仕組みを理解しよう。

 企業ネットワークでは、ルーティングプロトコルとして主にOSPF(Open Shortest Path First)を利用する。その特徴は回線の帯域や信頼性を考慮したルーティングテーブルを作成できることだ。メトリックの計算にホップ数ではなくネットワークアドレスや接続しているネットワークの種類(イーサネットや専用線など)や帯域を考慮したコストを用いる。

 OSPFでいうコストは、ネットワーク管理者が各ルーターのインターフェースに設定する値で、帯域や信頼性などを基に決められる。経路上のコストを足し合わせた値がメトリックとして使われる。そしてメトリックの小さい経路を選ぶ。

帯域を考慮したルーティングが可能なOSPF
帯域を考慮したルーティングが可能なOSPF
[画像のクリックで拡大表示]

 上図の例では100Mビット/秒の回線で接続しているインターフェースのコストを「10」、1Gビット/秒の回線で接続しているインターフェースのコストを「1」に設定している。

 OSPFでは基本的に、宛先に到達するまでのコストの合計値が最も小さい経路を選択する。RIPなら単純にホップ数が少ないルーターCの経路を選んでしまう。一方、OSPFでは、10倍高速なルーターBの経路を選択するわけだ。

リンクステートを交換する

 OSPFでルーティングテーブルを作る処理の流れを見ていこう。OSPFを有効にしたルーター同士はルーティングテーブルを作成するために「リンクステート」と呼ばれる情報を交換する。このリンクステートにはネットワークアドレスやコストなどの情報が含まれている。

OSPFの処理の流れ
OSPFの処理の流れ
[画像のクリックで拡大表示]

 ルーターは隣接ルーターから集めたリンクステートの情報を基に「リンクステートデータベース」を作成する。リンクステートデータベースには、「ネットワーク上でどのリンクにどのルーターがつながっているのか」「ルーター間の帯域はどのくらいか」という情報が登録されている。

 次にデータベースの情報を参照して自身のルーターを親とする最短パスツリーを作成する。その際、親となるルーターから把握しているすべてのルーターまでのコストを求める。コストの算出にはダイクストラのアルゴリズムを使う。こうしてツリーをたどることで宛先に到達するまでの最短経路が分かるようになる。

 最後に、ツリーの情報から求めた経路を基にルーティングテーブルを作成する。