next up previous
Next: 受信側の処理 Up: Network輪講:IP(Internet Protocol Previous: ルータを介したホストとの通信

ルータの処理

通常、ルータは二つ以上の異なったネットワークに接続されている。この、それ ぞれに対して、別個のネットワークインタフェース(NIC)を有している。それぞ れは、別個にIPアドレスを保持している(接続されているネットワークのネット ワークアドレスが異なるため)。

ルータでは、受け取ったIPデータグラムの宛先に応じて、どちらにデータグラムを転送す ればよいか、というテーブル(表)を保持している。このテーブルに応じて、転送 されてきたデータグラムを処理する。例えば、松下研のルータは131.113.51.1と 131.113.50.3というIPアドレスを持っており、131.113.51.*という宛先を持った パケットを受け取ると、松下研の方へ(131.113.51.1側のNICから)データを送出 し、そうでない宛て先の場合には、131.113.50.3側のNICからデータを送出する。

131.113.50.3側では、131.113.50.*という宛先へのパケットであれば、直接送信 することができるが、そうでない場合には、また131.113.50側のネットワークに つながっている他のルータへデータグラムを転送し、そのルータがその先の処理を行 なう。(概念的には、木構造のようになっていると考えるとわかりやすい。もち ろん、現実にはもっと複雑である。)

転送を行なう場合には,双方のネットワークの特性に合わせて,IPデータグラム の構成を変更する必要がある場合がある.例えば,Network Aでは,許されるIP データグラムの最大長が1500 octetであり,Network Bでは,最大長が1000 octetであれば,このA,Bをつなぐルータでは,1000octetを越えるデータグラム をAからBへ転送する場合には,一つのデータグラムを二つに分割しなければなら ない.この制御を細分化(フラグメント)と呼ぶ.

また,ルーティング情報が混乱している場合などに,経路がループ状になってし まうことがあり得る.そこで,TTLフィールドを使用する.TTLは単位として時間 となっているが,異なるネットワークで時間があっているとは限らないため,実 際には,ルータを一回通過する(1hopする)たびに1ずつ減らしていく処理を行な う.TTLの値が0になった時点で,ルータはそのデータグラムを中継する処理を行なわ ない.すなわち,TTLの最初の値は,何hopするまでデータグラムを中継するか,とい う値をあらわす.




2000年03月31日 (金) 16時11分38秒 JST