インターネットインフラストラクチャの仕組み

インターネットの最大の利点の 1 つは、実際には誰もインターネットを所有していないということです。これは、大小さまざまなネットワークのグローバルな集合体です。これらのネットワークはさまざまな方法で接続し、インターネットとして知られる単一のエンティティを形成します。

以来、インターネットは 4 台のホスト コンピュータ システムから数千万台にまで成長しました。ただし、誰もインターネットを所有していないからといって、インターネットがさまざまな方法で監視され、維持されていないという意味ではありません。は 1992 年に設立された非営利団体で、インターネットの使用方法とインターネットとの対話方法を定義するポリシーとプロトコルの形成を監督しています。

この記事では、インターネットの基本的な基礎構造について学びます。ドメインネームサーバー、ネットワークアクセスポイント、バックボーンについて学びます。ただし、最初に、コンピュータが他のコンピュータにどのように接続されるかを学びます。

インターネット: コンピュータ ネットワーク階層

インターネットインフラストラクチャの仕組み

インターネットに接続されているすべてのデバイスは、家庭内のデバイスも含めて、ネットワークの一部です。たとえば、コンピュータはケーブル モデムまたはファイバー モデムを使用してインターネット サービス プロバイダー(ISP) に接続する場合があります。職場では、デバイスがローカル エリア ネットワーク( LAN ) の一部である可能性がありますが、インターネット接続は雇用主の ISP によって提供されます。コンピュータを接続すると、それは雇用主のネットワークの一部になります。その後、ISP はより大きなネットワークに接続できるようになります。インターネットは単にネットワークのネットワークです。

大手通信会社は、多数の人が同時に接続を使用できる十分な帯域幅を備え独自のインターネットへの常時接続専用接続を持っています。企業は各地域に現地オフィスを置き、地元の家庭や企業を主要ネットワークに接続します。ここで驚くべきことは、集中化されたネットワークが存在しないことです。トラフィックはポイントからポイントに移動し、1 つのコンピューターがネットワークから切断されると、そのコンピューターは別のコンピューターにルーティングされます。ファイルは期待どおりに到着し、トラフィック パターンの変化に気づくことはありません。

インターネットネットワークの例

ここに例を示します。 A 社は、オフィス ネットワークにサーバーとネットワーク接続されたプリンターが設定されている小規模な会社であると想像してください。会社 B が企業 ISP であると想像してください。企業 B は、サーバーとルーティング機器を保管するために主要都市にオフィス スペースを建設または賃貸しています。 B 社は非常に規模が大きいため、自社の建物間に独自の光ファイバー回線を敷設し、すべての建物が相互接続されています。

この配置では、A 社のすべての顧客が相互に通信でき、B 社のすべての顧客が相互に通信できますが、2 つの会社のネットワークはリンクされていません。どちらの企業も内部で通信できますが、どちらの企業も相手方と通信することはできません。したがって、会社 A と会社 B は両方とも、さまざまな都市の 、つまり IXP に接続することに同意します。両社のネットワークは、インターネットを使用して相互に接続したり、他の組織に接続したりできるようになりました。

この例は、2 つの企業のネットワークがどのように相互に通信するかを示していますが、これら 2 つの企業は、2 つのネットワークがどのように広大なインターネットに参加するかを示すクローズアップ例にすぎません。これらの相互接続されたネットワークがどのようなものかを俯瞰するには、インターネット パイプラインの進化するマップの作成に努めている Barrett Lyon の を見てください。

インターネットルーターの機能

これらのネットワークはすべて、IXP、バックボーン、ルーターに依存して相互に通信します。このプロセスの驚くべき点は、メッセージが 1 台のコンピューターから出て、いくつかの異なるネットワークを経由して、ほんの数秒で別のコンピューターに到着する可能性があることです。

ルーターは、あるコンピューターから別のコンピューターに情報を送信する場所を決定します。ルーターは、あなたのメッセージや他のすべてのインターネット ユーザーのメッセージを、何千もの経路に沿って目的地まで高速で送信する特殊なデバイスです。ルーターには、次の 2 つの別々の関連するジョブがあります。

  • これにより、情報が不必要な場所に送信されないようになります。これは、大量のデータが「無実の傍観者」の接続を妨害しないようにするために非常に重要です。
  • 情報が意図した宛先に確実に届くようにします。

これら 2 つのジョブを実行する場合、ルーターは 2 つの別々のコンピューター ネットワークを処理するのに非常に役立ちます。 2 つのネットワークを結合し、一方からもう一方へ情報を渡します。また、ネットワークを相互に保護し、一方のトラフィックが他方に不必要に波及するのを防ぎます。接続されているネットワークの数に関係なく、状況は変わりません。インターネットは無数の小さなネットワークから構成される 1 つの巨大なネットワークであるため、ルーターの使用は必須です。

インターネットバックボーン

コンピューターサーバールーム

米国科学財団(NSF) は 1986 年に最初の高速バックボーンを作成しました。 NSFNETと呼ばれるそれは、1.5 Mbps (100 万ビット/秒) で動作するT1 回線でした。 IBM、MCI、Merit は NSF と協力してバックボーンを作成し、翌年には T3 (45 Mbps) バックボーンを開発しました。

バックボーンは、自宅からすぐ近くの中央オフィスへの接続よりもはるかに多くのトラフィックを許可するインターネット接続です。インターネットの初期の頃、そのような帯域幅を処理できる能力を持っていたのは最大手の通信会社だけでした。

現在、独自の大容量バックボーンを運用する企業が増えており、そのすべてが世界中のさまざまな IXP で相互接続しています。このようにして、インターネット上の誰もが、どこにいても、どのプロバイダーを使用していても、地球上の他のすべての人と話すことができます。インターネット全体は、人々が自由に相互通信するための巨大で広大な合意です。

インターネットプロトコル: IPアドレス

インターネット上のすべてのマシンには、 IP アドレスと呼ばれる固有の識別番号があります。 IP はInternet Protocolの略で、コンピュータがインターネット経由で通信するために使用します。もう 1 つは伝送制御プロトコルであり、この 2 つは TCP/IP というフレーズで 1 つとして参照されることがよくあります。プロトコルは、サービスを使用したい人がそのサービスに接続するための事前定義された方法です。 「誰か」とは人間の場合もありますが、多くの場合、Web ブラウザーなどのコンピューター プログラムです。

一般的な IP バージョン 4 (IPv4) アドレスは、216.27.61.137 のようになります。

私たち人間が覚えやすいように、IP アドレスは通常、上記のようなドット付き 10 進数として 10 進数形式で表現されます。しかし、コンピュータはバイナリ形式で通信します。同じ IPv4 アドレスをバイナリで見てみましょう: 11011000.00011011.00111101.10001001。

IPv4 アドレスの各数値シーケンス。バイナリ形式で表示すると、それぞれ 8 つの位置があるためです。 IPv4 アドレスは 32 ビットの数値と見なされるため、すべての位置を合計すると 32 になります。 8 つの位置のそれぞれが 2 つの異なる状態 (1 または 0) を持つことができるため、オクテットごとに可能な組み合わせの合計数は 2 8または 256 になります。したがって、各オクテットには 0 から 255 までの任意の値を含めることができます。4 つのオクテットを組み合わせると、次のようになります。 2 32 個、または 4,294,967,296 個の一意の値を取得できます。

IPv4 アドレスの約 43 億通りの組み合わせのうち、特定の値は一般的な IP アドレスとしての使用が制限されています。たとえば、IP アドレス 0.0.0.0 はローカル ネットワーク上のマシン用に予約されており、アドレス 255.255.255.255 はブロードキャストに使用されます。

43 億というアドレスは多すぎるように思えますが、インターネットの急速な成長により、IPv4 に代わる新しい 128 ビット アドレス システムが必要になりました。 Internet Engineering Task Force (IETF) の専門家は 1998 年末に活動を開始しました。IP バージョン 6 (IPv6) は 2012 年 6 月 6 日に正式に開始されたため、すべてのデバイスを収容できる十分なスペースがあるはずです。 (今のところ。) 記録のために言っておきますが、IPv5 は標準として正式に採用されたことはありません。

ご想像のとおり、IPv6 アドレスは、1970 年代に作成された IPv4 とは少し異なります。 IPv6 アドレスの各セグメントは 4 つの数字を使用し、コロンで区切られます。

例は次のようになります: ba5a:9a72:4aa5:522e:b893:78dd:a6c4:f033。

IPv6 は 16 進表記を使用するため、16 個の個別の数字を表現する必要があります。したがって、0 から 9 までの数字のほかに、2 桁の数字を代用します。

現時点では IPv4 に固執しますが、オクテットは単に数字を区切るだけではない目的を果たします。これらは、規模やニーズに基づいて特定の企業、政府、その他のエンティティに割り当てることができる IP アドレスのクラスを作成するために使用されます。オクテットはネットワークとホストです。最初のオクテットは、コンピュータが属するネットワークを識別するために使用されます。ホスト (ノードとも呼ばれる) は、ネットワーク上の実際のコンピュータを識別します。最後のオクテットはホスト セグメントを示します。 5 つの IP クラスと特定の特別なアドレスがあります。 IP クラスの詳細については、「IP アドレスとは?」を参照してください。

インターネットプロトコル: ドメインネームシステム

インターネットが黎明期にあったとき、インターネットはモデムと電話回線に接続された少数のコンピュータで構成されていました。接続を確立するには、リンクを確立したいコンピュータの IP アドレスを指定する必要があります。たとえば、一般的な IP アドレスは 216.27.22.162 です。ホストが少数しか存在しないときはこれで問題ありませんでしたが、オンラインになるシステムが増えるにつれて扱いにくくなりました。

1 つ目は、名前を IP アドレスにマッピングする、ネットワーク インフォメーション センター (NIC) によって管理されるホスト テーブルと呼ばれる単純なテキスト ファイルでした。すぐに、このテキスト ファイルは非常に大きくなり、管理が面倒になりました。 1983 年 11 月、ポール モカペトリスは、国際ネットワーク ワーキング グループに 2 件のコメント要求を提出しました。 RFC 882 は、テキスト名を IP アドレスに自動的にマッピングするドメイン ネーム システム(DNS) の概念を概説しています。 RFC 883 は、システムの実装方法を提案しています。彼や他の多くの人の努力のおかげで、この方法では、たとえば、「コンピューター入門」.com の IP アドレスである一連の数字や句読点の代わりに、www.computerbasic.click だけを覚えておくだけで済みます。

URL: ユニフォーム リソース ロケーター

Web を使用したり、電子メール メッセージを送信したりするときは、ドメイン名を使用します。たとえば、 Uniform Resource Locator (URL) 「https://www.computerbasic.click」には、ドメイン名 computerbasic.click が含まれています。この電子メール アドレスも同様です: example@computerbasic.click。ドメイン名を使用するたびに、インターネットの DNS サーバーは人間が読めるドメイン名を機械が読める IP アドレスに変換します。 DNS の詳細については、 「ドメイン ネーム サーバーの仕組み」を参照してください。

トップレベル ドメイン名 (ファーストレベル ドメイン名とも呼ばれます) には、.COM、.ORG、.NET、.EDU、および .GOV が含まれます。すべてのトップレベル ドメイン内には、セカンド レベル ドメインの膨大なリストがあります。たとえば、.COM 第一レベル ドメインには次のものがあります。

  • ハウスタッフワークス
  • ヤフー
  • マイクロソフト

.COM トップレベル ドメイン内のすべての名前は一意である必要があります。 「www」などの一番左のセクションはホスト名です。ドメイン内の特定のマシン (特定の IP アドレスを持つ) 上のディレクトリの名前を指定します。特定のドメインには、そのドメイン内ですべてが一意である限り、数百万のホスト名を含めることができる可能性があります。

DNS サーバーはプログラムや他のネーム サーバーからの要求を受け入れ、ドメイン名を IP アドレスに変換します。リクエストを受信すると、DNS サーバーはそれに対して次の 4 つのうちの 1 つを実行できます。

  1. 要求されたドメインの IP アドレスをすでに知っているため、IP アドレスで要求に応答できます。
  2. 別の DNS サーバーに接続して、要求された名前の IP アドレスの検索を試みることができます。これを複数回行う必要がある場合があります。
  3. 「要求したドメインの IP アドレスはわかりませんが、私より詳しい DNS サーバーの IP アドレスは次のとおりです。」と言うことができます。
  4. 要求されたドメイン名が無効であるか存在しないため、エラー メッセージが返される場合があります。

DNS の例

ブラウザに URL www.computerbasic.click を入力したとします。ブラウザは DNS サーバーに接続して IP アドレスを取得します。 DNS サーバーは、 DNS ルート サーバーの 1 つに接続することによって、IP アドレスの検索を開始します。トップレベル ドメイン (.COM、.NET、.ORG など) を処理するすべての DNS サーバー用。 DNS サーバーがルートに www.computerbasic.click を要求すると、ルートは「www.computerbasic.click の IP アドレスはわかりませんが、.COM DNS サーバーの IP アドレスはこれです。」と言うでしょう。

次に、ネーム サーバーは .COM DNS サーバーにクエリを送信し、www.computerbasic.click の IP アドレスを知っているかどうかを尋ねます。 .COM ドメインの DNS サーバーは、www.computerbasic.click ドメインを処理するネーム サーバーの IP アドレスを知っているため、それらを返します。

次に、ネーム サーバーは www.computerbasic.click の DNS サーバーに接続し、www.computerbasic.click の IP アドレスを知っているかどうかを尋ねます。実際にはそうなるので、DNS サーバーに IP アドレスが返され、DNS サーバーはそれをブラウザに返し、ブラウザは www.computerbasic.click のサーバーに接続して Web ページを取得します。

これを機能させるための鍵の 1 つは冗長性です。各レベルに複数の DNS サーバーがあるため、1 つのサーバーに障害が発生すると、もう 1 つの鍵はキャッシュです。 DNS サーバーはリクエストを解決すると、受信した IP アドレスをキャッシュします。 .COM ドメインのルート DNS サーバーに要求を送信すると、.COM ドメインを処理する DNS サーバーの IP アドレスがわかるため、ルート DNS サーバーにその情報を再度問い合わせる必要はありません。 DNS サーバーはすべてのリクエストに対してこれを行うことができ、このキャッシュは処理が行き詰まるのを防ぐのに役立ちます。

DNS サーバーはまったく目に見えませんが、毎日何十億ものリクエストを処理しており、インターネットがスムーズに機能するためには不可欠です。この分散データベースが毎日、目に見えないほどうまく機能しているという事実は、この設計の証拠です。

インターネットサーバーとクライアント

インターネット上のすべてのマシンは、サーバーまたはクライアントのいずれかです。他のマシンにサービスを提供するマシンはサーバーです。そして、それらのサービスへの接続に使用されるマシンがクライアントです。世界中のインターネット ユーザーのニーズに応える Web サーバー、電子メール サーバー、FTP サーバーなどが存在します。

www.computerbasic.click に接続してページを読むとき、あなたはクライアントのマシンの前にいるユーザーです。 「コンピューター入門」 Web サーバーにアクセスしています。サーバー マシンはリクエストしたページを見つけて送信します。サーバー マシンにアクセスするクライアントは特定の意図を持ってアクセスするため、クライアントはリクエストをサーバー マシン上で実行されている特定のソフトウェア サーバーに送信します。たとえば、マシン上で Web ブラウザを実行している場合、Web ブラウザは電子メールサーバーではなく、サーバー マシン上の Web サーバーと通信しようとします。

サーバーには、変更されない静的 IP アドレスがあります。一方、モデム経由でダイヤルアップしているホーム マシンには、通常、ログオンするたびに ISP によって IP アドレスが割り当てられます。その IP アドレスはセッションに対して一意であり、次回ダイヤルインするときには異なる可能性があります。これにより、ISP は顧客ごとに 1 つずつではなく、デバイスごとに 1 つの IP アドレスだけを必要とします。

ポートとHTTP

どのサーバーでも、サーバー上で利用可能なサービスごとに 1 つずつ、そのサービスが利用可能になります。たとえば、サーバー マシンが Web サーバーとファイル転送プロトコル (FTP) サーバーを実行している場合、通常、Web サーバーはポート 80 で使用でき、FTP サーバーはポート 21 で使用できます。クライアントは次の場所でサービスに接続します。特定の IP アドレスと特定のポート番号。

クライアントが特定のポートでサービスに接続すると、特定のプロトコルを使用してサービスにアクセスします。クライアントとサーバーが会話するプロトコル。インターネット上のすべての Web サーバーは、ハイパーテキスト転送プロトコル (HTTP)に準拠しています。インターネット サーバー、ポート、プロトコルについて詳しくは、 「Web サーバーの仕組み」を参照してください。

ネットワーク、ルーター、NAP、ISP、DNS、強力なサーバーはすべてインターネットを可能にします。このすべての情報が数ミリ秒以内に世界中に送信されると考えると、本当に驚くべきことです。コンポーネントは現代の生活において非常に重要です。コンポーネントがなければインターネットは存在しません。そして、インターネットがなければ、私たちの多くにとって生活はまったく違ったものになっていたでしょう。