インターネットはどのように機能するのか?基礎から学べる無料ネットワーキングコース
私たちの日常生活に欠かせない存在となったインターネット。しかし、その実際の仕組みについて深く考えたことはありますか?
無料でプログラミングを学べることで知られるfreeCodeCamp.orgのYouTubeチャンネルでは、インターネットの動作原理と基本的なネットワークの概念を学べる約2時間のコースが公開されました。
講師を務めるのはIan Frost氏です。豊富な教育経験を持つ同氏は、複雑なトピックを分かりやすい図解で説明することに長けており、これまでUdemyでも数千人に講義を行ってきた実績があります。
このコースは前提知識を一切必要とせず、ゼロからすべてを丁寧に解説してくれるため、技術的なバックグラウンドがない方でも安心して受講できます。
このコースで学べること
- インターネットの仕組み
- スイッチやルーターなど、基本的なネットワーク機器
- 世界中の電子機器がどのように相互通信しているのか
- YouTubeで動画を見るとき、裏側で何が起きているのか
- ISP(インターネットサービスプロバイダ)とは何か
- その他の重要なネットワーキング概念
コースの主な内容
1. スイッチとローカルエリアネットワーク(LAN)
コースは「小さな会社のシステム管理者として、オフィス内の複数台のパソコンを相互通信できるようにする」というシナリオから始まります。同じ環境(オフィスや家庭など)にあるコンピュータ同士をつなぐために使われるのがスイッチです。
パソコンをスイッチに接続するには銅線ケーブル(Cat5やCat6など)を使います。Cat6はCat5より高速で、「cat」はカテゴリー(category)を意味します。また、光ファイバーケーブルに対応するスイッチもあり、光ファイバーは銅線よりもはるかに高速なデータ伝送が可能です。
重要なポイントとして、スイッチは無線接続に対応しておらず、ケーブルでの接続が必須です。無線でデバイスを接続したい場合は、代わりにアクセスポイントを使用します。
ケーブルでスイッチに接続されたコンピュータ群は、同一のネットワークを構成します。これがLAN(ローカルエリアネットワーク)です。LANは建物やオフィスなど、物理的に限定された範囲内でのみ構築できます。アメリカとロシアのような遠隔地の間でLANを作ることはできません。
パソコンが送信するメッセージは「パケット」と呼ばれ、スイッチはパケットの中身を確認して宛先を判別し、適切なポートへ転送します。あるコンピュータが別のコンピュータにパケットを送れるということは、両者が同じネットワーク上にあり、通信可能であることを意味します。
2. ルーターとインターネットへの接続
スイッチだけでは、LAN内の通信しか実現できません。インターネットに接続するにはルーターが必要です。ルーターこそがインターネットへの「扉」となる装置だからです。
LAN内のパソコンがインターネットにパケットを送りたい場合、まずパケットはスイッチに送られます。スイッチはそのパケットが外部ネットワーク宛であることを認識し、ルーターへ転送します。そしてルーターがパケットをインターネットへ送り出すのです。
3. インターネットの正体 ― 「ネットワークのネットワーク」
インターネットとは、世界中のあらゆるLANを相互につなぐ巨大な構造体です。教科書的な定義によれば、インターネットとは「ネットワークのネットワーク(the network of networks)」です。
では、なぜ世界中に何千ものルーターが分散配置されているのでしょうか?もし世界の中心にたった1つの巨大ルーターがあるだけだったら、次のような問題が発生します。
- 世界中の何百万ものデバイスが同じルーターに接続する必要があり、膨大なポート数が必要になって設計不可能
- すべての負荷が一点に集中し、いわゆる「単一障害点(single point of failure)」の問題が発生する
- 遠く離れたLANからのケーブルが非常に長くなり、配線が大混乱になる
分散型構造を採用することで、ケーブルの乱雑さを最小限に抑え、ルーターの過負荷を回避し、ロードバランシングも効率的に行えます。仮にいくつかのルーターが故障しても、インターネット全体は正常に稼働し続けられるのです。
4. 海底ケーブル ― インターネットの生命線
大陸間の通信を支えているのは、海中に敷設された海底ケーブルです。実に国際的なインターネット通信の99%は、水中に張り巡らされた468本のケーブルラインによって担われています。
ケーブルの長さは131キロ程度のものから約2万キロに及ぶものまで様々です。2018年には、フランスから西アフリカ沿岸まで約17,000キロを結ぶケーブルが船舶の事故で切断され、10カ国のインターネットが一瞬にしてダウンした事件も発生しました。
毎年およそ200件のケーブル障害が発生しており、その多くは船の錨や自然災害によるものです。2007年には、タイ、ベトナム、香港を結ぶ11キロ分の海底ケーブルが海賊に盗まれ、スクラップとして売却されたという驚きの事件もありました。
海底ケーブルにはすべて光ファイバーが使われています。光ファイバーは最速のデータ伝送を実現できるうえ、長距離でもほぼ誤りなくデータを伝送できるためです。
5. パケットはどうやってインターネット上を移動するのか
異なる国にある2台のコンピュータが通信する様子を追ってみましょう。パケットはまず送信元のLANからスイッチ経由でルーターへ送られ、そこからインターネットへ放出されます。
各ルーターは内部にルーティングテーブルと呼ばれる特別な表を持っています。ルーターはパケットを受信すると、このテーブルを参照してどの経路でパケットを転送すべきかを判断します。この操作は「フォワーディング(forwarding)」と呼ばれます。
ルーティングテーブルは、各ルーターが持つ専用プロセッサがさまざまなアルゴリズムを使って生成します。興味深いことに、ルーターは必ずしも通過点(ホップ数)が最も少ない経路を選ぶとは限りません。ある経路へのパケット密度が高すぎる場合、混雑を避けて別の経路を選択することがあります。これを輻輳制御(congestion control)と呼びます。
つまり、多少回り道になったとしても、結果的にパケットが宛先へより早く到着できるなら、それが最良の経路なのです。おかげで、地球の反対側にあるデバイスともミリ秒単位で通信できます。
6. サーバーとストリーミングの仕組み
自宅のパソコンからウェブサイトにアクセスするとき、何が起きているのでしょうか?例えばブラウザで動画サイトを開いて動画をクリックすると、あなたのパソコンはリクエストメッセージ(パケット)を作成し、ホームルーター経由でインターネット上のサーバーへ送信します。サーバーはそれを受け取り、動画データをレスポンスとして返します。
サーバーとは、通常のパソコンと根本的に変わらないものですが、何千ものクライアントと同時にパケットをやり取りするため、はるかに高性能なハードウェアを備えています。
動画視聴時には、動画が少しずつ分割されて送られてきます。このプロセスをストリーミングと呼びます。おかげで、動画全体がダウンロードされるのを待たずに視聴を開始できます。
大手企業は世界各地に多数のサーバーを分散配置しています。ユーザーは自分に最も近い(最適な)サーバーと通信するため、単一障害点の回避とロードバランシングが同時に実現されます。
7. WANとVPN ― 離れた拠点を安全につなぐ
WAN(広域ネットワーク)は、地理的に離れた複数のLANを組み合わせて構成されるネットワークです。例えば、世界中にオフィスを構える企業が、離れた拠点間であたかも同じ環境にいるかのように通信したい場合にWANが活用されます。
「すでにインターネットがあれば拠点間通信は可能ではないか?」と思うかもしれません。しかし、インターネットは誰の所有物でもない公共ネットワークであり、直接通信では情報漏洩や改ざんのリスクがあります。
そこで活躍するのがVPN(仮想プライベートネットワーク)です。VPNの中核技術であるトンネリングは、公共ネットワーク上に特別な安全な接続を確立します。
郵便配達員に手紙を渡すとき、封筒に入れなければ内容を読めてしまう――この「封筒に入れる」行為がトンネリングに相当します。さらに、封筒の中身を暗号化すれば、たとえ開けられても内容は解読されません。オリジナルのパケットを暗号化してから別のパケットに格納することで、セキュリティを最大化できるのです。
ちなみに、世界最大のWANは何だと思いますか?答えはインターネットそのものです。ただし、企業がVPNで構築するWANは企業専用ですが、インターネットは世界中の人々全員のものです。
8. ISP ― ローカル、地域、グローバルの3層構造
ISP(インターネットサービスプロバイダ)は、パケットをある場所から別の場所へ伝送する役割を担う事業者で、インターネットへの接続には不可欠です。
- ローカルISP: 同じ近隣地域内などの小規模エリアの通信を担当。接続の最初の入り口となる拠点は「PoP(Point of Presence)」と呼ばれます。
- 地域ISP(Regional ISP): 国内の異なる都市間の通信を担当。ローカルISP同士は地域ISPを介して通信します。
- グローバルISP: 国際間(例えばアメリカと中国など、海を挟んだ国々)の通信を担当します。
なぜローカルISP同士を直接つながないのか?それは階層構造を保つためです。すべてを直接接続すると複雑性が爆発的に増してしまいます。階層的なISP構造により、最小限の接続ですべてのISPが相互通信できるのです。
9. ピアリングとインターネットバックボーン
Googleのような巨大企業は、ピアリング(peering)という技術を使っています。これは、ISPとの直接接続を確立してサーバーへのアクセスを高速化する手法です。ピアリングによって、パケットが通過する公共インフラが減るため、速度向上とセキュリティ強化の両方が実現します。YouTubeが快適に視聴できるのも、Googleの分散サーバー構造とピアリングインフラのおかげです。
また、グローバルISP同士が互いに構築するネットワークはインターネットバックボーンと呼ばれます。バックボーンが同期して動作するために、IXP(Internet Exchange Point)と呼ばれる交換所的な構造も存在します。
まとめ
年齢や職業を問わず、インターネットを使うすべての人にとって、その基本原理を理解することは大きな価値があります。このコースを受講すれば、スイッチ、ルーター、LAN、WAN、VPN、ISPといった要素技術がどのように連携して、私たちが当たり前に使っているインターネットを形作っているのかが、視覚的かつ直感的に理解できるようになります。
コースの最後には理解度を確認する質問も用意されており、フルに活用すれば学習効果を最大化できます。詳細は、freeCodeCamp.orgのYouTubeチャンネルで公開されている動画(視聴時間約2時間)をご覧ください。
-
YouTubeアルゴリズムの仕組みを徹底解説!おすすめ欄と検索結果に表示される方法
YouTubeのおすすめ欄は、多くのユーザーが新しい動画を探すときに最初に目を向ける場所です。ここに表示される動画は、一人ひとりの視聴傾向に合わせてカスタマイズされており、ユーザーがクリックしたくなるような動画が並んでいます。では、これらの動画は一体どのように選ばれているのでしょうか。 この仕組みは一般的に「YouTubeアルゴリズム」と呼ばれています。これは、どの動画をユーザーのおすすめ欄に表示するかを計算するシステムであり、検索結果にも大きな影響を与えます。そのため、より多くのオーディエンスへリーチしたいクリエイターにとって、アルゴリズムの仕組みを理解することは非常に価値のあることだと言
-
インターネットはどのように話すか
コミュニケーションの物語 インターネットが実際にどのように話すのか疑問に思ったことはありませんか?あるコンピューターは、インターネットを介して別のコンピューターとどのように「会話」しますか? 人々が互いにコミュニケーションをとるとき、一見意味のある文章にまとめられた単語を使用します。これらの文の意味について合意したからこそ、これらの文は意味を成します。いわば、通信のプロトコルを定義しました。 結局のところ、コンピューターはインターネットを介して同様の方法で互いに通信します。しかし、私たちは先を行っています。人は口を使ってコミュニケーションをとります。まず、コンピューターの口が何であるかを