当たり前の裏側を覗き見る
ChatGPTの大活躍により、大抵の質問が数秒でまとめとなって返ってくる時代になりました。2年前には想像もしていなかったような仕事の仕方になっています。AI固有の能力だけでなく、AIを動かすサーバーのキャパの問題もあり、向こう数年はエンジニアがA Iを使う構図が続くでしょう(その先の世界については、また別途記事にしますね)。
商社時代、システムに合わせて仕事の仕方を変える、という声をよく耳にしましたが、細部まで一般的なシステムに合わせるのは逆に非効率だったりしますので、私はソフトウェアは意外とGeneralizeしづらいものと解釈しています。
どちらかと言うと型にはめられるよりも、自分仕様にカスタマイズして使いやすくしたくなる、みんなと違うユニークなやり方を試したくなる等、そもそも人間心理が均一化に向いてないように思える、というのも理由の一つです。ということで、AIを使うことで従来よりも短時間でソフトウェアを作って、この右肩上がりの需要に応えていくことになるのかなと期待しています。
インターネットという宇宙空間
さて、ChatGPTはWebアプリ・Webサイトのサービスですが、これはどこかのサーバーにホストされていて、みなさんはブラウザーを通してそのサーバーにアクセスして、サービスを受けています。
検索ワードを入れてリンクをクリックすると、URLが勝手に入力され、ChatGPTが開きます。ChatGPTだけでなく、さまざまなWebアプリ・サイトは同じ方法でアクセスできていると思います。
でも、なぜURLの様な文字列をブラウザに入れるだけで、すんなりサイトが表示されるのでしょうか?
多くの方は漠然と下図近いイメージをお持ちではないでしょうか?
インターネットという宇宙空間の様な場所に、エンジニア達が作ったアプリがたくさん漂っていて、それをブラウザが捕まえている。
インターネット空間の現実
実際の仕組みは下図の様になっています。
我々が目にするURLは実は仮の姿で、本当のWebサイトの住所はサーバーのIPアドレスで管理されアクセスされています。例えばGoogle.comであれば8.8.8.8の様に、サービスのURLとIPアドレスが一対一で存在しています。ユーザーとしては、数字の羅列よりURLの方が覚えやすいのでありがたいですね。
そしてこのURLとIPアドレスの関係性が重複しないために、DNSサーバー(ドメイン・ネーム・サーバー)という仕組みが存在します。
DNSサーバー
DNSサーバーは大雑把に言えば3階層で昨日しています。
権威サーバー(Authoritative Server)という、いわゆるURLとIPアドレスを一対一で管理しているサーバーがあります。ここで管理される.com や.eduの種類(TLD)は多岐にわたります。この権威サーバーは世界中にたくさんあり、そのうちの一つにChatGPTのドメインも管理されているのでしょう。
これを束ねる中間管理職が、トップ・レベル・ドメインサーバー(TLDサーバー)です。こ層のサーバーはそれぞれ1種類のトップ・レベル・ドメインに特化しており、TLDサーバーAは.com系のアドレス、Bは.edu系のアドレス等分業制です。
そしてこの中間管理職を統括するのが、ルートDNSサーバーです。ルートサーバーは、.com系のことについて聞かれれば、.com系のTLDサーバーを紹介し仕事をさせる、会社でいう役員の様な存在です。
ルートサーバーは全世界に13機存在し、全てのサーバーが同一のデータを持っています。NASAやアメリカの大学などが所有し、インターネットの成長の歴史的にアメリカ偏重ですが、全世界からスムーズにアクセスできるよう、今では他国にもあるようです。
我々が、アプリを公開する際には、サーバーにそのアプリを実装し、ICANNという団体を通して、I PアドレスとURLの紐付けを登録します。登録すると先のDNSサーバーの縦社会を通して全世界からアクセスできる様になる訳です。
アクセスするのに時間がかかる時がある
サーバー側の仕組みがわかった上で、もう一度インターネットサーフィンに目を向けたいと思います。
みなさんがURLを打ち込んだ時(リンクをクリックした時)は、直接DNSサーバーにお伺いを立てているわけでなく、Recursive DNS Resolverという中間業者がいます。
この中間業者は独自のアクセス履歴(Cacheされている)を持っており、IPアドレスとURLの紐付けをすでに知っていれば、ブラウザーにそれを教えてくれるので素早くサイトが開かれます。
逆に、履歴を持っていない場合には、一から調べ直さなければいけないので、先の縦社会の序列を守って調査し、答えが返ってきてやっとサイトが開けるわけです。
これもあって、初回アクセスに時間がかかることがあるわけです。
まとめ
いかがでしたでしょうか。普段気にも留めない当たり前の裏側を覗き見て見ました。インターネットやクラウドという言葉を聞くと、どうもぼやっとした空間の中の話をされている気分になりがちですが、実際にはサーバーという実態のある巨大なコンピューターの中にアプリがあり、DNSサーバー達の力を借りながら、そのアプリにアクセスし、情報を得ているわけです。毎日使うインターネットがこれほどまでに壮大な旅を経てみなさんのブラウザに到達していることを感じ取っていただけたら嬉しいです。
この記事が気に入ったらサポートをしてみませんか?