連載:アニメーションで見るパケット君が住む町(8)
インターネット世界の地図
綱野衛二
Roads to Node
2010/2/23
前回は、TCP/IPネットワークでのあて先と送信元の特定を行う識別子である「IPアドレス」について説明しました。今回はこの識別子であるIPアドレスに基づいてあて先までの「経路」を決定する「経路選択」の仕組みを説明します。
地図を使ってあて先まで届ける
前回は、パケット君が使う住所である「ビル所在地」の役割と意味を説明しました。インターネット世界のルールでは、このビル所在地が荷物の届け先を決めています。今回は、届け先が確定したことを踏まえ、「あて先までどの道を通って届けるのか」という点について、ルート君の役割をメインに説明します。
8-1 インターネット世界の住所と地図
さて、前回はパケット君が使う「ビル所在地」について説明しました。ここで復習です。ビル所在地は「市区名」と「ビルの番地」から成り立っている住所でしたね。
パケット君「市区名で『ビルのある市区』を、番地で『市区内の場所』をそれぞれ特定できるんだ。これによって、荷物を届ける先が分かるということだよ」
そうですね。「どこにある」「どのビルか」が、ビル所在地の情報によって明確になるわけです。そして、この「ビル所在地」を使うことで、「違う市区にあるビル」へも荷物を運ぶことができるようになりました。「ビル所在地」という住所の書き方は、インターネット世界に共通するもので、しかもインターネット世界に重複するビル所在地はありません。
これによって、「インターネット世界のどこか」が特定できるようになったわけですが……。
パケット君「わけですが?」
ルート君「ん? 僕の出番ですね?」
そうです、ルート君の出番となります。つまり「あて先へ届けるのはいいけれど、どうやってそこまで届けるか?」が、今回の話のポイントです。
思い出してほしいのですが、パケット君は別に荷物の運送そのものを行うわけじゃありません。パケット君の仕事は「違う市区への運輸のための手続き」です。実際に運ぶのはイーサ配送君やPPP駅員君たちと、トラック・列車の仕事です。イーサ配送君やPPP駅員君は「同じ市区」でのトラック・列車の運行、荷物の運び方などを指示しています。
つまり、実際に荷物を運ぶイーサ配送君やPPP駅員君たちの運輸手段を「つないで」目的のビルまで届ける、輸送計画を考えなければいけません。視点を変えて荷物を主人公とするならば、「移動手段を乗り換えて」あて先まで移動する必要があるわけです。
パケット君「そのための情報を提供するのが僕の役割で」
ルート君「実際に指示をするのが僕の仕事です」
第6回で説明しましたね。思い出しましたか?
図6-1 パケット君とイーサ配送君・PPP駅員君 |
「運輸手段をつなぐ」ことによって初めて、「都市間での荷物の運輸」が可能になるということです。「つなぐ」と表現しましたが、これは具体的には2つの処理を行うことを指します。
- 次は、どの輸送手段を使って運ぶか
- 次に、どこへ届けるか
この2つの指示を行うのが「ルート君」の仕事の中心となります。そのために、ルート君は……。
ルート君「これです、『地図』。これを持っています」
どれどれ、地図を見せてもらいましょう。ふむふむ、ずいぶんシンプルな地図ですね。地図というよりも「あて先の市の一覧表」ですね。書かれているのは……。
- あて先
- そこへ行くための出口(と運送手段)
- 出口から出た後、次に行くステーション(中継地)
- あて先までの距離
だけですね。簡単にいえば、「次の中継地を指定する」地図ってことですか。
ルート君「そうなるね。僕は『あて先までの次の中継地を決定する』ために地図を見るんだ」
図8-1 ルート君と地図 |
前回、前々回と続けて、IPについて説明してきました。IPの役割の中でも重要なのが「アドレスの決定」と「経路選択」です。今回は「経路選択」について説明します。第6回でも基本的なところは説明しましたが、もう一度おさらいしましょう。
第5回でも説明しましたが、ネットワークは「小さなネットワーク(コンピュータのグループ)」をつないで「大きなネットワーク」を作っています。そして第6回の説明にあったとおり、このネットワークは「網の目のように」つながっています。つまり「あて先に届ける道筋は複数存在している」ことになります。
これは、もし1カ所の道筋がダメでも、迂回(うかい)して届けることができるという点で非常に優れた仕組みです。ですが、逆にいえば「あらかじめどの道筋を通るか決定しておかなければならない」ことになります。それが分からないと、荷物の行き先がなくなってしまいますね。
この道筋、実際は「経路(Path:パス)」と呼びますが、これを決定することが「経路選択(Routing:ルーティング)」の役割です。
経路選択では「送信インターフェイス」と「次ルータ(ネクストホップ:Next Hopと呼ぶ)」を決定します。インターフェイスとは「あるもの」と「あるもの」をつなぐ機器などのことを指します。この場合は、コンピュータとネットワーク(ケーブル)をつなぐもの、つまり基本的にはLANカードのことです。
次ルータとは、次に中継してもらうルータです。ネットワークはルータによってつながっています。つまり「ルータからルータへ運ばれていく」ことにより、最終的なあて先へ届くことになります。これを「ホップバイホップ方式」と呼びます。
これを実現するために、ネットワーク間でデータを通信する機器は、経路選択を行うための地図、すなわちルーティングテーブル(Routing Table)を持っています。このルーティングテーブルには、次の情報が記載されています。
- あて先IPアドレスとサブネットマスク
- 送信インターフェイス
- あて先へのメトリック
- 次ルータ
この4つの要素が、ルーティングテーブルという「表」の「1行」を構成し、「そのネットワーク(あて先IPアドレスで示されたネットワーク)への経路」になります。これにより「あて先IPアドレス」にたどり着くための「次ルータ」と「送信するインターフェイス」が決定されることになります。
メトリック(Metric)とは、あて先までの経路が複数ある場合に、「どの経路が一番良い経路か」を決定するための評価値です。中継時には、この評価値が最も小さい値の経路を使用することになります。このメトリックが最も小さい経路のことを「最適経路(ベストパス:Best Path)」と呼びます。
図8-2 ルーティングとルーティングテーブル |
また、ルーティングテーブルにより「経路が決定」されます。もし「あて先がルーティングテーブルにない」ならば、それは「経路が分からない」ということになり、その場合パケットは破棄されてしまいます。
まず基本として、次のことを覚えてください。
- 通信を行う際には、あて先までの経路を決定しなければいけない
- 経路とは「次に届けるルータ」と「送信するインターフェイス」の組み合わせで考える
- 経路はルーティングテーブルという表形式を取っている
- 経路がルーティングテーブルに存在しない場合、そのパケットは破棄される
8 インターネット世界の地図 | |
![]() |
地図を使ってあて先まで届ける 8-1 インターネット世界の住所と地図 |
8-2 前回のおさらい「ビル所在地から考える荷物の動き」 | |
8-3 ステーションとルート君を助けるRIP君の仕事 8-4 「ビル所在地」のおさらい |
関連記事 | |
ネットワーク・コマンド/ツール群の活用法を大紹介 連載 ネット・コマンドでトラブル解決 あなたのLANは健康ですか? 現状改善から一歩進んだ構築術まで 特集:基礎から学ぶネットワーク構築 レスポンスの悪いネットワークシステム どう検証し、解決していくか? 特集:ネットワークトラブルを解決する 運用管理に必須のツール/コマンド群 連載:24×365の運用管理 |
![]() |
「Master of IP Network総合インデックス」 |
- 完全HTTPS化のメリットと極意を大規模Webサービス――ピクシブ、クックパッド、ヤフーの事例から探る (2017/7/13)
2017年6月21日、ピクシブのオフィスで、同社主催の「大規模HTTPS導入Night」が開催された。大規模Webサービスで完全HTTPS化を行うに当たっての技術的、および非技術的な悩みや成果をテーマに、ヤフー、クックパッド、ピクシブの3社が、それぞれの事例について語り合った - ソラコムは、あなたの気が付かないうちに、少しずつ「次」へ進んでいる (2017/7/6)
ソラコムは、「トランスポート技術への非依存」度を高めている。当初はIoT用格安SIMというイメージもあったが、徐々に脱皮しようとしている。パブリッククラウドと同様、付加サービスでユーザーをつかんでいるからだ - Cisco SystemsのIntent-based Networkingは、どうネットワークエンジニアの仕事を変えるか (2017/7/4)
Cisco Systemsは2017年6月、同社イベントCisco Live 2017で、「THE NETWORK. INTUITIVE.」あるいは「Intent-based Networking」といった言葉を使い、ネットワークの構築・運用、そしてネットワークエンジニアの仕事を変えていくと説明した。これはどういうことなのだろうか - ifconfig 〜(IP)ネットワーク環境の確認/設定を行う (2017/7/3)
ifconfigは、LinuxやmacOSなど、主にUNIX系OSで用いるネットワーク環境の状態確認、設定のためのコマンドだ。IPアドレスやサブネットマスク、ブロードキャストアドレスなどの基本的な設定ができる他、イーサネットフレームの最大転送サイズ(MTU)の変更や、VLAN疑似デバイスの作成も可能だ。
![]() |
|
|
|
![]() |