多彩な内容のBlog、問題を原点から問い直すOpinion、社会について深く考えるConsideration、【Analog】と【Digital】がメインのPhotoGallery α

Consideration

インターネット上の各ノードは位置と役割を持っている

ニシ浜

社会全体が一つの方向に向かうのではなく、各人がそれぞれ自分なりの生き方をしていても、そこに対立が発生せず調和が取れているような社会とはどんな社会だろうか?そのヒントとなるような事例を取り上げながら、徐々に「自由で機能する社会」の姿を浮かび上がらせていきたいと思います。まず、リーダーがいなくても、相互に調和がとれてうまく機能している実例をひとつ紹介します。

従来私たちが思い描いていたコンピューターシステムのイメージは、システムの中央に置かれた大型(汎用)コンピューターがすべての演算処理を担い、それ以外のデバイスはその指示に従ってあらかじめ決められた単一の処理(たとえば演算結果の出力など)を行うというものでしたが、インターネットはその概念をひっくり返しました。

インターネットは、中央に司令塔のような機器がなくても、ネットワークに繋がったルーターやサーバーなどの機器(ノードと呼ぶ)が相互に協調しながら個々の役割を果たすことによって機能しています。膨大な数の人々が各端末からまったく異なる要求をしても、目的に適った応答が素早く整然と返信されているのです。

インターネット上で我々が普段よく利用するのは、ブラウザで何か特定のサイトを閲覧することでしょう。ブラウザのアドレスバーに「https://www.kantei.go.jp/」と入力してenterキーを押せば、日本の首相官邸のWebサイトが表示されます。これはどのような仕組みによって実現されているのでしょうか。

「kantei.go.jp」というアドレス(ドメイン名)には、「kantei」という文字があるので、これは首相官邸のサイトだと分かるし、「go」は「government」の略、「jp」は日本のことだと想像がつきます。このように、サイトのドメイン名には直感的に分かりやすい単語が使われていますが、実はこのドメイン名はインターネット上の正式なアドレスではありません。インターネット上で通信相手を識別する一意の(重複していない)アドレスはIPアドレスと呼ばれている。IPv4(※)の場合、IPアドレスは「123.456.789.123」といったように数字とピリオッドの組み合わせで表されます。しかし、このような意味のない数字を覚えるのは難しいので、各IPアドレスに対応したもっと分かりやすいドメイン名が使われているのです。

しかし、この場合、ブラウザのアドレスバーに入力したドメイン名に対応するIPアドレスを調べなければ、相手と交信することはできません。これを調べることを「名前解決(Name Resolution)」と呼んでいます。各端末からの要求に応えてIPアドレスを教えてくれるのは、インターネット上に無数に点在する「DNS(Domain Name System)サーバー」と呼ばれるサーバーです。DNSサーバーはドメイン名とIPアドレスの対応表を持っていて、問い合わせがあったドメイン名がこの対応表にあれば、対応するIPアドレスを問い合わせ先に返信します。

しかし、インターネット上には膨大な数のサーバーがあるので、世界中の全てのサーバーを載せた対応表を各DNSサーバーが持つのは不可能です。したがって、各DNSサーバーにはそれぞれが担当する範囲の対応表が保管されています。それでは、知りたいドメイン名の対応表を持っているDNSサーバーがどこにあるかは、どうやって探すのでしょうか。

ドメイン名はいくつかの「.」で区切られていますが、これによってドメインの階層が表現されています。「kantei.go.jp」の場合は、「jp」が最も上位の階層(トップ・レベル・ドメイン)で、その下位の階層が「go」、さらにその下の階層が「kantei」です。もう一つ、通常はドメイン名には書かないが、トップ・レベル・ドメインのさらに上位に「ルート・ドメイン」と呼ばれるドメインが存在します。

ルート・ドメインには全世界で13台のDNSサーバーがあり、そこにはトップ・レベル・ドメインにあるすべてのDNSサーバーが登録されています。そして、次の階層のDNSサーバーにはもう一つ下の階層のDNSサーバーが登録されており、このように下位のDNSサーバーを上位のDNSサーバーに登録することで、ルートドメインから順に下の方へ辿っていって、知りたいドメイン名が載った対応表を持っているDNSサーバーに辿り着くことができるのです。

見つかったDNSサーバーは、目的のドメイン名に対応するIPアドレスを問い合わせ先に返信し、これでようやく名前解決が完了します。とても面倒な作業のように感じるが、各DNSサーバーの協調によって、これはほとんど瞬時と言っていいスピードで行われます。

さて、名前解決によって相手サーバーのIPアドレスが分かったので、ここからようやく目的のWebサイトのHTMLデータの返信をリクエストする本来の交信が始まりますが、それを細かく説明すると長くなるので、そのイメージをごく簡単に説明します。

送信されるデータはパケットと呼ばれる小さな単位に分割されたうえで、ルーターなどの機器を中継して、目的のサーバーへと送られていきます。各ルーターは、インターネットの地図ともいうべき経路表(ルーティングテーブル)を持っていて、それに従って次のルーターへとパケットを転送します。この様子は、火事を消すためのバケツリレーをイメージするとよいです。

このルーティングテーブルは常に最新の状態でなければ役割を果たせませんが、テーブルを更新する方法には、手動で設定するスタティックルーティングと、ルーター間で情報を交換して自動的に更新するダイナミックルーティングがあります。ダイナミックルーティングは各ルーターの協調になって実現されています。これらの内容を詳しく知りたい人は、戸根勤著『ネットワークはなぜつながるのか 第2版』を読んでください。

これまで見てきたように、インターネットに繋がった各ノードはIPアドレスという「位置」を持ち、別のノードからのリクエストに応じて最適な処理(転送や返信など)を行うという「役割」を持っています。

(※)Internet Protocol version 4の略で、インターネットを利用してデータが正しい宛先に届けられるように、データが通るルートや住所を指定するための通信規約の4番目のバージョン。32ビット=約43億個のIPアドレスを指定できるが、IPアドレスの枯渇が問題となり、128ビット=約340澗のIPアドレスを指定できるIPv6が制定されている。

コメント

この記事へのコメントはありません。

CAPTCHA


サイト内検索
アーカイブ
人気記事
DAILY
WEEKLY
MONTHLY
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
SNS等へのリンク

関連記事

PAGE TOP