目次:


インターネットは何ですか?
あなたは自宅で自分の "ローカルエリアネットワーク"を持っているかもしれません。インターネットに接続するルータに接続されているすべてのデバイスで構成されています。 「インターネット」という言葉は、「相互接続されたコンピュータネットワーク」という世界的なシステムを指します。
それはインターネットが本当にすべてであるということです。一緒に接続された世界中の多数のコンピュータネットワークです。もちろん、街のケーブルの下のケーブルから、海底の巨大なケーブルから惑星の周回軌道にある衛星まで、物理的なハードウェアがたくさんあり、それによってこの通信が可能になります。また、バックグラウンドでは多くのソフトウェアがあり、 "google.com"のようなウェブサイトアドレスを入力して、コンピュータがそのウェブサイトが存在する物理的な場所にできるだけ速く情報を送信できるようにします。
あなたがただ一つのウェブサイトに接続しているときでさえ、ボンネットの下ではさらに多くのことが起こっています。お使いのコンピュータは、Webサイトをホストしているコンピュータに情報の一部またはデータの「パケット」を直接送信することはできません。代わりに、ホームルータにパケットを渡します。パケットは、どこに行くのか、Webサーバが応答する必要がある場所に関する情報とともに渡されます。あなたのルータはそれをあなたのインターネットサービスプロバイダ(Comcast、Time Warner、またはあなたが使っている人)のルータに送ります。そこでは別のインターネットサービスプロバイダの別のルータに送られます。リモートサーバーからシステムに送り返されたパケットは、逆の移動を行います。

物理メールとは異なり、データパケットの送信は依然として 非常に 高速ですが、それは何度も何度も起こります。それぞれのパケットは非常に小さく、コンピュータが通信するときに、たとえ1つのWebサイトが別のWebサイトからWebサイトを読み込んでいても、多数のパケットが前後に送信されます。パケットの移動時間はミリ秒単位で測定されます。
データは多くの経路を取ることができる
このネットワークネットワークは、見た目よりも少し面白くて複雑です。これらのネットワークがすべて接続されていると、単一のパスのデータだけではありません。ネットワークは複数の他のネットワークに接続されているため、世界中に広がっているネットワークがあります。つまり、これらのパケット(デバイス間で送信される小さなデータ)は、どこに行くのかを得るために複数の経路をとることができます。
言い換えれば、あなたとウェブサイトの間のネットワークがダウンしたとしても、通常、データには別の経路があります。パスに沿ったルータは、Border Gateway Protocol(BGP;ボーダーゲートウェイプロトコル)と呼ばれるものを使用して、ネットワークがダウンしているかどうか、最適なデータパスを確認します。
この相互接続されたネットワーク(またはインターネット)を作成することは、各ネットワークを近くのネットワークに1つずつ接続するだけでは簡単ではありません。ネットワークはさまざまな方法でさまざまな方法で接続されています。これらのルータ上で動作するソフトウェア(ネットワークに沿ってトラフィックをルーティングするため名前が付けられています)は、常に最適なデータ経路を見つけるために動作します。
tracerouteコマンドを使用すると、パケットが宛先アドレスに送信される経路を実際に見ることができます。
たとえば、下のスクリーンショットでは、オレゴン州ユージーンのコムキャストインターネット接続からhowtogeek.comへのルートを追跡しました。パケットはシカゴ、ニューヨーク、ニューアークを経由してTata Communications(as6453.net)バックボーンネットワークにルーティングされる前に、コムキャストの北にあるシアトルのネットワークを経由してルータに移動してから、ニュージャージー州ニューアークのLinodeデータセンターに向かいましたウェブサイトがホストされている場所。

IPアドレス、DNS、TCP / IP、HTTPなど詳細
これは、インターネットがどのように機能するかについての高レベルの概要です。私たちは皆さんが使い慣れているインターネットにとって重要な小さな話題がたくさんあります。詳細についてはこれを読むことができます。
たとえば、ネットワーク上のすべてのデバイスは、そのネットワーク上で一意の数値IPアドレスを持っています。これらのアドレスにデータが送信されます。古いIPv4アドレスと新しいIPv6アドレスの両方があります。 IPは "インターネットプロトコル"の略語なので、IPアドレスは "インターネットプロトコルアドレス"です。これらはネットワーク上のデバイスが使用しているアドレスです。
人々はhowtogeek.comやgoogle.comのような人間が判読可能なドメイン名を使用します。これらのドメイン名は、一連の数字よりも記憶に残って理解できるものです。ただし、これらのようなドメイン名を使用すると、コンピュータはドメインネームシステム(DNS)サーバーに接続し、そのドメインの数値IPアドレスを要求します。電話番号のための大規模な公開アドレス帳のようなものと考えてください。ドメイン名を登録したい企業や個人は、登録するために料金を支払う必要があります。おそらくインターネットサービスプロバイダのDNSサービスを使用しますが、Google Public DNSやOpenDNSなどの別のDNSサーバーを使用することもできます。
このすべての根底には、インターネットプロトコルを使用している場合でも、デバイスが通信するために使用するさまざまな「プロトコル」のレイヤーがあります。最も一般的なトランスポートプロトコルはTCP / IPで、インターネットプロトコルを介した伝送制御プロトコルの略です。 TCPはすべて信頼性に関するものであり、デバイスは前後にチャットし、データのパケットを追跡して途中で何も失われないようにします。もしそうなら、それは気付き、再送されます。 UDPのような他のプロトコルもあり、生の速度の信頼性を捨て去る。
上記のTCPやUDPなどのトランスポートプロトコルは、HTTPやHTTPSなどのアプリケーションプロトコルです。これは、Webブラウザのユーザーが使用するハイパーテキスト転送プロトコルです。 HTTPプロトコルは、IPプロトコルの上で動作するTCPプロトコルの上で動作します。他のアプリケーションは、異なるプロトコルを使用するか、それにもかかわらずTCPやIPのようなプロトコルの上で動作する独自のプロトコルを作成する可能性があります。私たちが使用するテクノロジーの多くは、他のレイヤー上に構築されたテクノロジーのレイヤーを含んでおり、インターネットでも同様です。ここでは本を一冊書くことができますが、今のところもっと読んでみたいと思うならば、上記のリンクから始めましょう。
基本を理解したら、なぜこのIT Crowdのシーンが面白いのかを理解することができます。