全4186文字
PR

ネット君 今さらながらですけど、ルーティングって不思議ですよね。

インター博士 ふむ、どこがだね?

ネット君 パケットの通る道が自動的に決まるんですよね。なんか不思議です。

 TCP/IPネットワークでは、ネットワーク同士がルーターによって網のようにつながっている。

 あるコンピューターから別のネットワークのコンピューターにデータを送る場合、通常はいくつものネットワークを越える必要がある。その際に必要なのがルーティングである。

 ルーティングでは、ルーターがパケットのIPヘッダーに収められた宛先IPアドレスを見て、そのパケットを次に送るべきルーターを決定する図1)。

図1●ルーターがバケツリレーでパケットを運ぶ
図1●ルーターがバケツリレーでパケットを運ぶ
TCP/IPネットワークでは、パケットのIPヘッダーに収められた宛先IPアドレスをルーターが見て、そのパケットを次に送るべきルーターを決定する。これを繰り返すことで宛先までパケットが送られる。
[画像のクリックで拡大表示]

ネット君 つまり、ルーターはパケットが進むべき方向を示す「方向指示器」みたいなものですか?

インター博士 そう考えてよいだろうな。方向を決めることがルーティングで、その方向にパケットを送り出すことはフォワーディングと呼ぶ。

バケツリレーでパケットを転送

 ルーターは送信元から宛先までの最適な経路を知っているわけではない。「最適な経路で宛先に行くための次の行き先」だけを知っている(図2)。パケットを受け取ったルーターは次の行き先へ転送。そのルーターはまた次の宛先に転送する。これを繰り返すことで宛先にパケットを送り届ける。そしてパケットを送るべきルーターを決めるのに使う情報が「ルーティングテーブル」だ。

図2●ルーターは「次に送るべきルーター」だけを知っている
図2●ルーターは「次に送るべきルーター」だけを知っている
ルーターは「最適な経路で宛先に送るための次の行き先」だけを知っている。行き先は「ルーティングテーブル」と呼ばれる情報を使って決定する。
[画像のクリックで拡大表示]

 図2では簡略化したが、実際のルーティングテーブルには「宛先IPアドレス」「情報の入手ソース」「パケットを送るべき次のルーター」「送信インターフェース」「メトリック」といった情報が書かれている図3)。

図3●必要な情報はルーティングテーブルに書かれている
図3●必要な情報はルーティングテーブルに書かれている
ルーターはそれぞれルーティングテーブルを持ち、その情報に従ってパケットを転送する。
[画像のクリックで拡大表示]