【CS03-01】ネットワークとはどういうものか?
さて、第3章からは「ネットワーク」の話になりますが、インターネットは1990年代の半ばから後半にかけて一般の間でも知られるようになりました。インターネットのはじまりは1980年代初頭からはじまっています。今では当たり前の通信網であるため、あまり深く考えたことが無いという人も多いのではないでしょうか。
しかしここまでのコンピュータサイエンスでもご紹介してきたとおり、”モノのインターネット”、IoT時代になり、自宅にある様々なものがインターネットに接続され、自分がいつも持ち歩いている携帯電話もネットに接続されているのです。
それなのに、その仕組みを理解していないととても便利なものもうまく活用できなくなってしまいます。この章ではネットワークの基礎をいろいろと話しをしながらソフトやハード面についても詳しく解説していきます。
そもそもネットワークとは?
コンピュータサイエンスというくくりで「ネットワーク」という言葉を考えると、これは複数のコンピュータやプリンタ、スマートフォン、HDDなどが繋がったものをいいます。なぜこれらを接続する必要があるかというと、データを共有したり、複数のコンピュータがある場合、プリンタなどを1台で共有するなどハードウェアのリソースも共有することを目的としています。
ネットワークには企業内のネットワークや家庭内ネットワークなど大小さまざまです。接続の仕方も有線のケーブル、無線電波での接続などがあります。これらネットワークでつながったコンピュータはそのネットワークの中でデータのやり取りを行っています。
ネットワークに接続するためには、有線の場合であればケーブルが必要で、コンピュータ側にはそのケーブルの差込口が無いといけません。またノートパソコンなど持ち運べる機器に関してはケーブルを刺したまま移動するというのは現実的ではないため、最近ではネットワーク用ケーブルを差し込む場所は無く、コンピュータの中に無線用のアダプタが内蔵されています。
スタンドアロンからネットワークへ
スタンドアロン(STAND ALONE)とは、直訳すると「一人でだっている」という意味になります。この言葉はネットワークに接続されていないコンピュータの事を指しています。
たとえば間もなくWindows7のサポートが終了しますが、こういったコンピュータをインターネットに接続しておくのはセキュリティ的に危険です。自分のコンピュータがダメになるだけならまだよいのですが、インターネットを通じてそのコンピュータ経由で他の人に迷惑をかける場合があるからです。
しかし、まだまだ動作するコンピュータを捨てるのはもったいないと思う人もいるかもしれません。その場合、スタンドアロンとして利用すれば、ネットワークを使わずに利用できます。
スタンドアロンのコンピュータはインターネットには接続されませんが、直接ハードディスクやプリンタなどの周辺機器を接続して、文書やハガキを作って印刷したりする専用機として利用することは可能です。
スタンドアロンで使うとはこのような事を言います。
ネットワークを組むというのは、コンピュータが2台以上になってきたときに有効です。家族がそれぞれコンピュータを持っていて自宅に数台パソコンがあるという場合も考えられます。その際にそれぞれがスタンドアロンになっていると、パソコンの台数プリンタが必要だったり、データのやり取りができなくて不便です。
その場合、ネットワークを組むという事になります。インターネットに接続するためにはもちろんですが、スタンドアロンの時にはパソコンにUSBなどで繋がれていたHDDやプリンタも「HUB」と呼ばれる分配器を使って接続し、すべてのコンピュータから利用できるようにします。(具体的な方法はこの章が進むにつれて解説していきます。)
自宅に2台のコンピュータがあった場合、2台同時にインターネットに接続する場合はRouter(ルーター)と呼ばれる機器を通じて複数台同時にインターネットに接続します。
ご存知の通り、近年スマートフォンなども増えてきていますから、4人家族のうち2人がパソコンを使っていても、スマートフォンも立派なコンピュータですから、家族4人がスマートフォンを使っていたら、合計で6台のコンピュータがインターネットに接続されていることになります。
ネットワーク上でサービスを提供する「サーバー」。クライアント・サーバー型ネットワーク
さて、今後ネットワークを学んでいくと「サーバー」という言葉が良く出てきます。ネットワーク上では「サーバー」と呼ばれる「ソフトウェア」が動作していて、ネットワークを組む上で必要なものを提供しています。サーバーはデカいコンピュータと思っている人も多いかもしれませんが、そうではなくてそのコンピュータの中で動いているサービスを提供しているソフトウェアです。ただし、そのサーバーというソフトを動かすためだけにコンピュータを用意している場合も多く、その場合はハードウェアの事を指す場合もあります。
ここでは一般的家庭でもよく利用されてる「サーバー」と呼ばれるものを紹介します。次の図では一般的な家庭でもよく利用されている形のネットワーク構成図です。細かい部分については今後触れていきますので、まずは大まかに仕組みを知っておきましょう。
ネットワークに接続されたコンピュータについては個別の番号を持っていなければなりません。インターネットに接続されるネットワークではこれを「IPアドレス」と呼んでいます。図の中では緑色の番号です。図の中で「Router(ルーター)」と呼ばれる機械がネットワークにコンピュータが接続されると番号を自動的にふっていきます。
この「番号を自動的にふってくれる」というサービスを提供しているのが「DHCPサーバー」と呼ばれるもので、Routerの中でそのプログラムが動いています。
HDDなどの中のデータを複数のコンピュータが同時にアクセスしてデータの出し入れをする場合には「ファイルサーバー」と呼ばれるファイルをネットワーク上で管理するサービスが動きますし、複数のコンピュータがプリンタを使う場合、プリントするという命令を受けて順番に印刷するなどのデータの交通整理をするサーバーとして「プリンタサーバー」と呼ばれるものもあります。
とにかく「サーバー」と呼ばれるものが今後沢山出てきますので、ここでは私たちがネットワークを利用するために様々なサービスを提供してくれるものだと理解しておきましょう。そして、そのサーバーから提供されたサービスを利用する側のコンピュータを「クライアント(お客という意味があります)」と呼びます。このような関係で構築されたネットワークを「クライアント・サーバー型ネットワーク」と言います。
ピア・ツー・ピア型ネットワーク(Peer to Peer)
クライアント・サーバー型ネットワークでは、サービスを提供する側と受ける側というそれぞれのコンピュータの役割がはっきりしていましたが、サーバーと呼ばれるサービスを提供するものを置かないでネットワークを構築するピア・ツー・ピアネットワークというものもあります。Peerとは「同じもの」とか「同僚」みたいな意味があって、それぞれのコンピュータが対等な関係にあるものをいいます。
中小企業や一般家庭でもこの方法で利用しているケースが沢山あると思います。インターネットは基本的にクライアント・サーバー型なので、ここでは社内や家庭内でファイルを共有する場合を例に説明します。
例えば、パソコンAとBがあり、Bにはハードディスクが接続されています。この時パソコンBでハードディスクの共有設定を許可にすると、ケーブルで接続されているコンピュータAからBに接続されたハードディスクの中身を見る事ができます。AがBに入っているデータを開いたりすることもできますが、パソコンBの電源が入っていなければ、AはBに接続されたハードディスクの中身を見る事ができません。
ピア・ツー・ピアでは、サーバーを用意しない代わりに、パソコン内のハードディスクの中にあるデータも簡単に共有できますが、一方でAがBの中のデータを利用している際にはパソコンBに負荷がかかりパソコンの動作が遅くなったりします。
WindowsやMacなどのパソコンの世界では、「共有」の設定などでピア・ツー・ピア(P2Pと短縮する場合もあります)ネットワークは簡単に構築できます。なのでP2Pを意識しなくてもその形態を利用している場合がよくあります。
同じファイル共有でも、クライアント・サーバーで解説した図のように、ネットワークに直接接続できるネットワークハードディスク(HDD)と呼ばれるものを利用すれば、ハードディスクの中に「ファイルサーバー」が搭載されているため、ネットワークHDDの電源さえついていれば、他のコンピュータの電源が切れていても利用できます。プリンタも同様の事が言えます。
つまり、ピア・ツー・ピアはサーバーが無い分、サーバーの役割をそれぞれのコンピュータが担当しなければならないため、コンピュータに負荷がかかるデメリットがありますが、簡単にネットワークを構築できるというメリットもあります。
しかし規模が大きくなってきた場合はコンピュータへの負荷やデータを効率よく転送する専門家としてのサーバーがあることを考えると、クライアント・サーバー型のネットワークのほうが向いているといえます。
通信の約束事「プロトコル(Protocol)」
ネットワークで使われる用語に「プロトコル」という言葉があります。これはネットワーク上でコンピュータ同士が通信をする際に利用する「約束事・ルール」の事を指します。
HTTP、POP、SMTP、TCP、IP、PPPなんて文字を見たことがありませんか?今後このあたりも紐解いていきますが、この最後につく「P」がProtocolのPで、「~という約束事ですよ!」という意味になります。
通信の基本「ネットワーク」を理解していきましょう。
この第3章は、おそらくもっとも詳しく、最も長い章になると思います。それだけネットワークへの知識は重要になります。今日のコンピューティングは、インターネットの発展により、より必要性が高くなってきているものと言えます。そこにはハードウェアの進化やソフトウェアの進化も伴っているため、ここまで学んできたコンピュータサイエンスのハードやソフトの話も更に深堀していく事になります。
インターネットの出現により、人と人との距離が縮まっただけでなく、国境も超えた情報交換が行われるようになり、人々の生活や考え方が大きく変わっています。今後「人」の在り方すら変わっていくでしょう。
IoT時代、そのようなネットワークへの知識は不可欠なものです。基礎からしっかり学び、上手な活用方法を学んでいきましょう。