このページの本文へ

図で解剖!スイッチ&ルータ 第3回

スイッチとRIP、OSPFについて知ろう

ルーティングとレイヤ3スイッチの関係とは

2009年08月06日 09時00分更新

文● 伊藤玄蕃

  • この記事をはてなブックマークに追加
  • 本文印刷

ルータの経路決定の仕組み

 前パートの通り、宛先が同一のネットワークにある場合はARPを用いた直接送信になるが、異なるネットワークへのパケットの中継はルータを介した間接送信になる(図3)。では、ルータはどのようにパケットを宛先のネットワークまで送っているのだろうか?

図3 直接送信と間接送信の違い

 2つのネットワークが1台のルータで接続された構成を考えてみよう。この場合、ルータはパケットの配送経路を2つだけ知っていれば済む。次に、3つのネットワークが2台のルータで直列的に接続された構成を考えてみよう。2台のルータはそれぞれ端末からパケットを受け取ったら、宛先の端末に直接届けるのか、あるいは別のルータに再中継を依頼するのか、パケットの宛先IPアドレスを見て適切に判断しなければならない。

 このように、ネットワーク全体の構成が複雑になると、ルータの仕事が増える。ルータは自分自身が直接つながっているネットワークだけでなく、ネットワーク全体のトポロジ※3を知っていなければならないことになる。

※3:トポロジ ネットワーク内でルータや端末がどのように接続され、全体構成がどのようになっているのかを示す言葉。「位相幾何学」を意味したが、ネットワークでは機器の位置関係や接続関係を表わす概念として使われる

 それでは、複数のルータによってパケットが中継される場合、どのルータが最終目的地までの経路を決定するのだろう? この問題に対しては、2つの対策が考えられてきた。

1. ホップ・バイ・ホップ(hop-by-hop)ルーティング

 中継点に位置するすべてのルータが独立して経路を判断する。それぞれのルータは、パケットの宛先アドレスを見て、個別に最適な経路を判断して次のルータに送る。

ソース(source)ルーティング

 送信元の端末から最初にパケットを受け取ったルータ(エッジルータ)、あるいは送信元の端末が配送経路を決定し、その情報をパケットに付けて次のルータへ向けて送り出す。それ以降の中継ルータは、エッジルータまたは送信元の端末がパケットに付加した情報に従って、次の中継ルータに送る。

 この両者のそれぞれに長所・短所があるが、IPネットワークでは歴史的にホップ・バイ・ホップルーティングが使われてきた。ルーティング処理が複数のルータに分散されるため、個々のルータの負荷が軽くなり、ネットワーク全体のコストが下がるというのが最大の理由だ。また、ネットワークが部分的に変更されたとき、変更箇所の近隣のルータを再設定するだけで対応できるという点も大きい。中央集権的な管理者がいないインターネットにも適している。

 ただし、障害や設定ミスにより経路がループしたり、ネットワーク全体としては最適でない経路が選択される可能性もある。

ルーティングテーブル

 では、ルータはどのように経路を決めているのだろうか? ルータは「ルーティングテーブル(経路表)」と呼ばれるデータベースをメモリに保持している。このデータベースは「宛先ネットワーク」をキーとして、「次の中継ルータ」や「パケットを送出するネットワークインターフェイス※4」などの情報を関連して記録している。ホップ・バイ・ホップルーティング方式では、ルータは以下のように動作する(図4)。

図4 ルータごとに経路を決めるホップ・バイ・ホップルーティング

※4:ネットワークインターフェイス パケットやフレームが実際に送受信される出入口を指す用語で、Ethernetポートのほか、ISDN BRIポート、V.35ポートなどの物理インターフェイスがある
      端末やルータからパケットを受信
      パケットの宛先IPアドレスから宛先ネットワークアドレスを計算
      ルーティングテーブルを参照し「次の中継ルータ」等の情報を取得
      次の中継ルータへパケットを送信

 ここで、宛先ネットワークがルーティングテーブルにない場合は、あらかじめ「デフォルトゲートウェイ」として登録しておいたルータへ、パケットを送信する。この経路を「デフォルトルート」と呼ぶ。この動作は「自分が経路情報を持っていない宛先については、経路選択は別のルータに委ねる」という考え方に基づく。

(次ページ、「静的ルーティングと動的ルーティング」に続く)


 

カテゴリートップへ

この連載の記事