インターネット




インターネットの仕組みの概略

 インターネットとは世界規模にまで拡大したコンピュータなどの情報機器のネットワークです。当初は学術研究のためのネットワークとしてスタートしましたが、1980年代の後半には商用利用も認められるようになり、現在のような隆盛に至っています。

 インターネットとはネットワーク(network)を相互に(inter、インター)関連付けようとするものです。インターネット以前にもコンピュータのネットワークは存在していました。ネットワークには複数のコンピュータが接続されます。ネットワークに接続される個々のコンピュータはどんなものでしょうか。その当時にもコンピュータのメーカはいくつも存在していました。そして、それぞれが独自の処理方法を採用していました。しかし、これではコンピュータ同士が情報のやり取りをすることはできません。そこで、異なる種類のコンピュータ同士が情報交換するために必要な処理方法の部分だけでも統一しようということになりました。これを通信プロトコルとかネットワークプロトコルなどと言います。日本語では通信手順などと呼ばれます。

 様々な通信プロトコルが作成され、コンピュータのネットワークが構築されました。しかし、異なる通信プロトコルを使っているネットワーク同士はつなげることができません。そこで、異なるネットワークを相互に接続しても、通信が可能になるようなプロトコルを作ろうということになりました。これは、どのような物理ネットワークを使っていようと、その上でこのプロトコルを使っていれば、相互に通信できるようにしようとする試みということになります。つまり、物理ネットワークを動かすための下位の通信プロトコルがあり、更に、物理ネットワークの違いを吸収することのできる仮想的な通信プロトコルを上位プロトコルとして使えるようにしようとする試みです。

 このプロトコルを使えばネットワーク(network)が相互(inter)接続できるようになります。そして、そのネットワーク全体をインターネットワーク(internetwork)と言います。つまり、インターネットとはネットワークを相互接続させたものという意味になります。この段階ではまだ、インターネットと言っても世界中に様々なものがある状態です。インターネットと言っても、それを聞いた人の受けるイメージは様々だということになります。しかし、これが世界規模にまで大きくなり、インターネットと言った時に、皆さんが同じものをイメージできるようになれば、このインターネットは「インターネット」という固有名詞になります。これが、現在のインターネットです。固有名詞としての「インターネット」は「Internet」とか「The Internet」などと書き表されます。



インターネットの歴史

 インターネットの歴史は1960年代に始まります。インターネットの開発に拍車をかけたのがソ連の宇宙開発における数々の成功と、アメリカのユタ州で起きたテロ事件でした。

 1957年10月にロシアにより世界初の人工衛星が打ち上げられました。人工衛星のスプートニク1号です。アメリカはこのスプートニクの成功にショックを受け、最先端科学技術を軍事技術に転用するための研究を管理する組織として高等研究局(APRA、Advanced Research Projects Agency)を設立しました(1958年2月)。そして、1958年10月には航空技術および宇宙開発計画を担うNASA(National Aeronautics and Space Administration、アメリカ国立航空宇宙局)を設立しました。

 1961年4月には再びアメリカを震撼させる事件が起こりました。ソ連が、世界初の有人宇宙船ボストーク1号に、ガガーリン少佐を乗せて地球を1周させた上で、逆噴射をかけて、無事地球に帰還させることに成功しました。

 この時代は米ソの冷戦時代で、アメリカの人々は、ソ連の人工衛星によって宇宙から核攻撃をされるのではないかと恐れました。

 更に1961年には、ボストークショックに追い打ちをかけるような事件が発生しています。ユタ州で起きたテロ事件です。このテロは、ユタ州の電話中継基地を破壊し、電話を一時的に完全停止させてしまいました。

 この事件によって、アメリカの国防総省は、従来の電話網では電話交換局がダウンすると電話が全然使い物にならないということに気づきます。

 この当時のコンピュータ間の通信は、テレックス網を使って遠隔地のコンピュータ間をつなぐものです。テレックス通信は、テレックス端末を電話回線でつなぐものですので、電話局が破壊されればテレックス通信もできません。

※テレックス(Telex、Teletype Exchange Service)は、1930年代に確立した通信技術で、ファクシミリの前身と言ってもいいかもしれません。物流、商取引、ニュース配信、気象通報などに使われました。キーボードに電話がついているような感じの機械です。電話と同様に番号で相手を呼び出し、送りたい文をキーボードで入力して送ると、相手側のテレックスが印刷するという形式になっていました。1980年代にファクシミリが登場し、1990年代にはインターネットが普及することで、徐々に使われなくなりました。

 そこでアメリカ国防総省は、テロや核攻撃で電話網が破壊されても、残っている施設を使って通信ができるようなシステムを開発を目指すことにしました。

 新しく作るネットワークの具体的な目標は2つありました。1つは、中継点が破壊されても、残っている中継点を使って通信が継続できるようなシステムを開発するということです。2つ目は、データを小分けにして、データ通信の途中で破壊行為が発生した場合、最初からやり直しではなく、途中からやり直しができるようにするということです。



 Aというノードに接続するXさんと、Gというノードに接続するYさんという2人が通信をする場合、電話では最初にX-A-B-D-G-Yというように、経路を構築し、その後で、その経路を土管のように使って、音声通信をします。従って、例えば、Dというノードが攻撃を受けて機能不全に陥ると、XとYの間の通信はできないということになります。

 Dが攻撃を受けて、機能不全に陥った場合に、X-A-B-C-H-G-Yと迂回できれば通信は可能です。しかし、ここが壊れたらこの道と決めておくのもあまりいい手ではありません。その経路がだめになったら通信はできないからです。

 そこで採用されたのが、常に最適経路を探せるようにしておくことです。ノードがダウンして、どのような形状のネットワークになっても、物理的な経路が残っている限りは、その残っている経路のうち最適な経路を探し出し、そこを使って通信ができるようにしておくということが必要になります。

 どのようにすればそのようなことが実現できるのでしょうか。電話のように通話を始めるにあたって、経路を確保し、そこを土管のようにして音声信号を送り込むという方式ではうまくいきません。

 インターネットの開発者が考えた方式は、まずデータを小分けにして、パケットとし、そのパケット毎に宛先や送信元、その他通信に関する制御情報を書き込んで、各ノードがパケット毎に最適な経路に転送してやるという方式です。

 この方式を実現するには、各ノードはパケットを受信したら、一旦どこかに格納して、パケットのヘッダを確認して、適切なリンクにデータを流してやるという作業を行う必要があります。受信したパケットを一旦格納しておく場所はキュー(queue、待ち行列)などと呼ばれます。

 このようなネットワークは「パケット交換型ネットワーク」(あるいは「蓄積交換型ネットワーク」)などと呼ばれます。

 パケット交換型のネットワークでノードの役割を果たす機器は、受信したパケットを一旦キューに格納し、ヘッダの制御情報を確認して、次に転送すべきノードを選択してから、その選択したノードにパケットを送り込むという機能を持っていなくてはなりません。最適なルートに関しては、人間であるネットワーク管理者が決めてやるという方法もないではありませんが、ネットワークが複雑になると自動的な経路制御の方式が望まれます。つまり、ノードが自分で、特定の宛先毎の最適ルートを計算し、常にそれを保持しているという方式が望まれます。

 ここではノードをネットワークとネットワークの接続点と考えてみましょう。このようなネットワークとネットワークを結ぶ接続点として機能できるネットワーク機器は、現在ルータと呼ばれています。

 最初の実験は1969年9月、カリフォルニア大学のロサンゼルス校(UCLA)とスタンフォード大学、カリフォルニア大学サンタバーバラ校を結んで行われました。最初の実験ではルータの元祖とされるIMP(Interface Message Processor)が導入されました。更に同年12月にはユタ大学が実験に参加しています。最初のネットワークは、実験研究を主導するARPAにちなんでARPANETと呼ばれることになりました。

 1973年には、ARPANETに参加するノードが30箇所にまで増加しています。異なる機種が実験に参加してくると相互接続が難しくなります。そこで、異機種間の接続を容易にするためのプロトコルが必要となります。このプロトコルがTCP/IPです。

 このTCP/IPは当時の大学や研究所などで広く利用されていたBSD UNIXというOSの内部に実装されました。このOSはフリーで、ARPAもTCP/IPをフリーで配布することに同意したため、BSD UNIXが広く配布されると、同時にTCP/IPも配布されるということになりました。

 TCP/IPはたくさんの通信プロトコルの集まりです。現在も新しいプロトコルが次々にTCP/IPのプロトコルの中に追加されています。従って、TCP/IPはたくさんの通信プロトコルの集まりです。インターネット通信を実現するために必要な通信プロトコル一揃という意味で「TCP/IPプロトコルスイート」と呼ばれることがよくあります。

 TCP/IPの代表的なプロトコルがIPとTCPです。最初は必要最小限のプロトコルしか揃っていませんでした。

 最初はドメインという概念はありませんでしたので、全てのコンピュータはIPアドレスだけで区別されていました。しかし、実験に参加するコンピュータが1000台を超えると、長い数字の羅列だけで個々のコンピュータを区別するのは煩わしくなりました。そこで、DNSというシステムが開発され、「www.kmownet.com」のような名前(ドメイン名)でコンピュータを区別することができるようになりました。これが1985年です。3年後には実験に参加するコンピュータが10,000台を突破することになりました。

 1990年にARPANET計画が終了し、インターネットの商用利用が始まります。これ以降、学術利用でなくてもインターネットを使っていいと言うことになりました。インターネット上で利益追求ができる時代になりました。

 1991年にはWWW(World Wide Web)が開発され、このWWWは無償で全世界に配布されました。当初、WWWはテキストしか扱うことができませんでしたが、1993年にイリノイ大学の学生たちが画像などの様々な情報を統一的に扱うことができるMosaicというWebブラウザ(Webクライアント)を開発し、これもインターネット上で無料配布され、インターネット人気に火をつけることとなりました。



物理ネットワーク

 インターネットの説明では、物理ネットワークという言葉が出てきます。この物理ネットワークは具体的なネットワークです。例えば、皆さんが大学生なら、大学内の研究室や事務局や、図書館にあるコンピュータを実際につないでいるネットワークということになります。皆さんが企業に勤めている企業人ならば、企業の各部署のコンピュータをつないだネットワークです。このようなネットワークは通常LAN(Local Area Network、ローカルエリアネットワーク、通称「ラン」)と呼ばれます。

 このように言うと自分の家にもあると気づく方もいるかもしれません。LANケーブルという名前の線で、コンピュータがつながれていれば、もう立派なLANです。LANは大学構内や企業の建物内、家庭の中で構築されるネットワークです。このようなLANについては、かつては様々な方法がありましたが、現在は殆どの場合イーサネットという方式(通信プロトコル)で構築されています。

 物理ネットワークはイーサネットだけではありません。LANをインターネットと接続する回線を、アクセス回線と言いますが、この部分は物理ネットワークという観点から言えば、イーサーネットと別の方式で動いています。アクセス回線を使うと、NTTの局舎まで到達します。NTTの局舎にはインターネットの回線が来ていますので、そこから、インターネットに接続できます。インターネットにももちろん物理ネットワークがなくてはなりません。これがどんな方式なのかは、とりあえず議論しないことにします。なぜ、議論しないのだと訝る人もいると思いますが、物理回線がどんなものであるかを考える必要のない方式を使っているからです。

 インターネットの方式は、もう何度も言っていますが、物理的なネットワークがどんなものでも構わないという方式です。もちろん、何でもいいと言っても限度があります、最低でもその上に仮想的なネットワークを構築することができるような、選択肢を提示してくれているものならそれで十分です。

 LANに関しては、ユーザの皆さんの身近にあるものですので、よく知っておくことは必要です。また、アクセス回線についても、具体的に知っておくことは必要です。しかし、ユーザの皆さんから遠いところにあるネットワークが物理的にどうなっているのかは、深く知っている必要はありません。従って、インターネットの物理ネットワークが具体的どのようなものであるかは論じないことにします。

 イーサネットの詳細についてはこちらをご覧ください。



無線LANの仕組み

 無線LANは無線通信を使ってデータの送受信を行うLANシステムです。ワイヤレスLAN(Wireless LAN)あるいはWLANなどと呼ばれています。

 最近の新築の家では、LAN用の配管を壁に通している場合が多いと思います。こういう場合は、家の中で簡単にイーサネットのLANを構築できるのですが、配管をしていない場合は、LANケーブルが家じゅうに引きまわされることになります。床に放置すると掃除などがしにくくなりますに、踏みつけて傷めたりすると、通信障害の原因にもなります。無線LANを利用すると、LANケーブルが醜く放置されることもなくなりますので、家の中がすっきりします。また、2階の隅の部屋のようにLANケーブルを引くことが難しかった部屋でも、LANにつなぐことができます。

 無線LANは有線LAN(イーサネット)につながる親機と、ノートパソコンやスマートフォンなど無線LAN端末の間を無線で接続します。

 無線LANの親機は無線LANアクセスポイントなどと呼ばれています。あるいは、基地局、ステーションなどと呼ばれることもあります。無線LANアクセスポイントは有線LANのイーサーネットと接続する役割がありますので、ブリッジ機能、あるいはルータの機能を持っています。製品によっては、スイッチによって、いずれかの機能を選択できるものもあります。アクセスポイントの購入時には帯域幅にも注意してください。自宅のアクセス回線が光回線なのか、ADSLなのか、CATVなのかで帯域幅が違ってきます。また、マンションなどの集合住宅や、商業ビルの場合は、光回線が引き込まれているといっても、建物内はVDSLで接続している場合があります(最近の新築は、マンションの各戸まで光回線が来ている場合もあります)。自宅のアクセス回線の帯域幅以上のものを購入しても機能を上限まで使い切ることができませんので、無駄な買い物になってしまいます。

 設定は簡単ですが、機器やメーカによって異なりますので、製品についている説明書に従ってください。

 パソコンなどを無線LAN端末(子機)にするには、PCカードタイプや、PCIカードタイプ、あるいはUSB型の子機を装着して利用します。最近のノートパソコンなどは、ほとんどが無線LAN子機の機能を事前に装着した状態(無線LAN対応)で販売されていますので、購入後は簡単な設定をするだけで直ぐに無線LANの機能を使うことができます(近くに親機があることが前提です)。ディスクトップタイプの場合は無線LAN子機の機能がなければ、PCIカード型子機を背後のスロットから装着する必要があります。

 無線LANの規格はIEEE802.11シリーズで行われています。IEEE802.11規格に添って作られた機器が相互接続できるかどうかを認定しているのが業界団体のWi-Fi Allianceです。 Wi-Fi Allienceの認定の名称がWi-Fiです。認定を受けた機器には「Wi-Fi」(ワイファイ)のロゴマークが付いています。

 Wi-Fiは電波の届くところではつながってしまいます。自分の家にアクセスポイントを備えて、それを利用しているつもりでも、実はお隣の家のアクセスポイントからインターネットに入っていたという話もありますので注意してください。通りから全く見ず知らずの他人が、あなたの家のアクセスポイント経由でインターネットを利用するということもあり得ます。あなたの家のLANに入り込まれてしまうこともあり得ます。危ないですから、セキュリティの設定を忘れずに行ってください。

 無線LANの詳細についてはこちらをご覧ください。



仮想的なネットワーク

 仮想ネットワークとは何でしょうか。実は仮想化という概念は今はやりの概念で、様々な仮想化ネットワークがあります。例えば、物理的なLANの上に、仮想的なLANを構築し、これを仮想的なLANという意味で、仮想LAN(Virtual LAN、VLAN)と言ったり、また専用回線のようなネットワークを仮想的に構築し、これを仮想専用線という意味で、仮想プライベートネットワーク(Virtual Private Network、VPN)と言ったりします。上の意味の仮想化は物理的なネットワークの上に、ソフトウエアを使って、物理ネットワークとはちょっと違ったネットワークを構築するという意味になります。

 インターネットも同様に物理的なネットワークの上に、ソフトウエアを使って、仮想的なネットワークを構築しているというものです。これを可能にしているのが通信プロトコルです。インターネットでは、TCP/IPプロトコルスイートという通信プロトコルを使っています。そして、この通信プロトコルの通りに通信をするように設計されたソフトウエアが作成され、それが各コンピュータ上にインストールされています。

 インターネットでは、クライアントサーバシステムという仕組みを基本としています。この仕組みでは、サーバは相手からの要求に応答して回答を返すことを主たる仕事にするソフトウエアです。これに対してクライアントは、サーバに対して要求をして回答を得るという機能を持ったソフトウェアです。基本的には、ユーザがクライアントを使って、サーバに要求を出し、回答を得るという使い方をします。

 クライアントとサーバはソケット(socket)という接続を構築します。ソケットは、IPアドレス(後で説明します)とサーバの種類によって接続を特定します。サーバの種類はポート番号というものによって特定します。従って、クライアントはIPアドレスとポート番号を指定して、サーバを特定し、要求を出します。これに対して、サーバはIPアドレスとポート番号を指定して、クライアントに応答を返します。これをソケット接続といいます。ソケット接続を実現するためのソフトウエアがsocketです。socketというソフトウェアをインストールすると、インターネット接続ができるようになります。インターネット接続はUNIXというOS上で開発が行われてきたため、socketもUNIX用です。このsocketをWindows用に修正したものがwinsockです。



プロバイダとアクセス回線


 インターネットは元はと言えば研究者のためのネットワークでした。最初は大学のLANとLANを接続することから始まりました。その後、研究施設や公的機関などを次々につないでいきました。接続する施設が増えると、簡単に接続ができるように工夫が必要となります。そこで考えられたのが、インターネットへ接続するための接続点(接続ノード)を設置し、インターネットに接続することを希望する施設は、そこまで自力で何とかケーブルを伸ばす(もちろん通信業者の手を借りて)という方法です。

 大学等のLANは接続ノードからSINET(Science Information NETwork、SINET、通称は「サイネット」)と呼ばれるネットワークに接続しています。SINETは国立情報学研究所が提供・運用する学術情報ネットワークです。SINETはインターネットと接続しています。接続ノードは各地方の代表的な大学にまで伸びて、周辺大学はその中心となる大学まで、NTT等の通信事業者の回線を借りて接続するという形をとっていました。

※現在は、何回かの改変を経て、NTTの局舎に接続ノードが置かれ、周辺大学はそこまで接続するという形でインターネット接続を実現しています。

 インターネットが商用に開放されると、一般利用者にも手の届くような方法が必要となります。そこで、インターネットに接続することを有料サービスとして提供する企業が必要ということになりました。このような業者をインターネットサービスプロバイダ(Internet Service Provider、ISP)と言います。日本では、インターネット接続事業者と呼ばれることもあります。

 現在のインターネットはISPのネットワークを相互接続したネットワークです。ネットワークとネットワークを接続するための機器をルータと言います。各接続業者はNTTの局舎にルータを置いて、このルータをNTT等の接続業者の専用回線を借りて、他の局舎のルータとネットワーク接続しています。つまり、ISPのネットワークが既にインターネットワークとなっています。このISPのインターネットワークを同士を接続する接続点が設けられます。これをIX(Internet Exchange point、インタネット接続点)と言います。最近は、NTTの局舎の中でも、異なるISP同士が直接接続している場合もあるようです。このようにしてISPのインターネットワーク同士が接続し、巨大なインターネットを形成しています。

 従って、インターネットを利用するためには、何とかしてISPのネットワークまで辿り着かなくはなりません。

 インターネット回線はNTTの局舎まで来ていますので、ここまで辿り着くことができればインターネットに接続できます。企業や、家庭のLANからNTTの局舎まで接続する回線をアクセス回線と言います。

 アクセス回線としては、電話回線を有効利用したADSLや、光回線(FTTH)などの方式があります。






 アクセス回線としては、ADSLとFTTHが一般的で、最近ではFTTHが急激にユーザ数を伸ばしています。これ以外の方式としては、ケーブルテレビの回線を利用したインターネット接続などもあります。

 LANの物理ネットワークはイーサネット(ethernet)のことが殆どです。このイーサネットとADSLやFTTHの信号方式は異なりますます。CATVの信号方式もイーサネットとは違います。従って、アクセス回線を使うためにはLANとアクセス回線の間に、信号方式を変換する機器が必要となります。ADSLの場合にはADSLモデム、FTTHの場合には光回線終端装置、ケーブルテレビを使ったインターネット接続の場合にはケーブルモデムが必要となります。

 これ以外にもアクセス回線はあります。最近、利用者が増えているのが無線を使って、NTTの局舎まで接続する方法です。無線というと皆さんは無線LAN(wifi)を思い浮かべると思いますが、Wi-Fiは無線を使ってLANを構築する方法です。アクセス回線に無線を使う方法は、無線MAN(WiMAX)と呼ばれます。

 インターネットを使うためにはアクセス回線でNTT局舎まで接続しなくてはなりません。このアクセス回線を使うためには、アクセス回線契約が必要です。更にアクセス回線を使って、NTTの局舎まで辿り着いたら、ここからインターネットまでつないでもらわなくてはなりません。このための契約も必要です。この契約はISPとの間に結ぶインターネット接続契約です。

 アクセス回線の詳細についてはこちらをご覧ください。



無線MANとは

 無線MAN(Wireless MAN、Wireless Metropolitan Area Network)とは、MANを無線で実現しようとするものです。MAN(Metropolitan Area Network、メトロポリタンネットワーク)とは、LANを相互接続したネットワークのことで、建物をまたいで、都市圏レベルのエリアをカバーするようなネットワークのことです。このレベルのエリアをカバーするネットワークを無線を使って実現しようとするのが無線MANです。

 最近注目されているのはラストワンマイルをどのように実現するかという観点からです。ラストワンマイルとは「最後の1マイル」ということですが、物理的な1マイルという長さを問題としているわけではありません。通信事業者と利用者を結ぶ通信回線の最後の区画という意味です。つまり、通信事業者の最寄りの局舎(加入者局)から利用者の建物までを結ぶ最後の回線をどのように確保するかということです。この部分はアクセス回線と呼ばれ、FTTH(Fiber To The Home)、専用線、CATV(ケーブルテレビの回線)DSL(Digital Subscriber Line、デジタル加入者線)などで賄われています。

 FTTHやCATVなどの高速回線は、地方の人口希薄地や山間部などでは、コスト的な意味で、あるいは物理的な意味で、敷設が困難です。しかし、国土の均衡ある発展のためには、情報格差を生み出さないような施策が必要となります。そのためには、全国どこに行ってもアクセス回線を確保できなくてはなりません。しかし、そのための資金には限りがあります。そこで、考えられたのができるだけ経費をかけずに実現できそうな無線によるアクセス回線です。これが無線MANです。

 無線MANというアイデアには通信の自由化も関係しています。通信が自由化されると、今までNTTが独占していた通信回線が、新規参入業者に開放されるわけですから、従来にも増して利用者の増加が期待されます。今までの利用者をNTTと他の新規参入業者の間で取り合っていたのでは、共倒れになってしまいます。そこで、アクセス回線をもっと増強して新しい利用者を増やそうということになってきます。しかし、残っているのは地方の山間地や、人口希薄地帯ですので、そこにFTTHやCATV、ADSLなどを敷設しようとしても、建設費用を回収するのが難しくなります。この問題を解決する手段となると期待されたのが無線MANというわけです。

 この無線MANの技術として期待されているのがWiMAX(Worldwide Interoperability for Microwave Access、ワイマックス)です。

 規格化の作業部会としてはIEEE802.16委員会と、業界団体(チップメーカ/通信機ベンダ/通信事業者)がメンバーとなるWiMAXフォーラムがあります。

 広帯域無線としては、以前より研究開発されていたLMDS(Local Multipoint Distribution Service)という技術があります。IEEE802.16委員会はこれを標準化して、EEE802.16という規格を策定しました。更に、IEEE802.16ファミリーとして、IEEE802.16a、IEEE802.16dなどの規格を策定し、これらをまとめる形で2004年6月に、IEEE802.16-2004という規格を策定しています。

 IEEE802.16-2004は物理層と、データリンク層の中のMAC副層だけを規定したものですが、WiMAXフォーラムは物理層とMAC副層についてはそのまま取り込んで、その上でIP層、上位アプリケーション層などの仕様、あるいは異なるベンダー、通信事業者間の相互接続を可能とする規格などを追加しました。このIEEE802.16-2004に上位層の規定や異なる機器同士の相互接続性の規定を追加した規格が「WiMAX」と呼ばれる規格です。この規格はあくまで「ラストワンマイル」を補うためのピースであり、固定無線通信(FWA、Fixed Wireless Access)の規格となります。

 WiMAXは、「Worldwide Interoperability for Microwave Access」の略で日本語に訳すとすると、「マイクロ波を利用した世界標準の通信方式」という意味になります。ラストワンマイルをサポートしなくてはなりませんので、電波が遠くまで届かなくてはなりません。そこで、Wi-Fiや携帯電話などと比較すると、高い周波数帯域(マイクロ波)を利用しています。周波数が高くなると、直進性が増してきますので、ビルなどの障害物に跳ね返されてしまうという問題があります。

WiMAX
規格 IEEE802.16-204
周波数帯域 2GHz~11GHz帯
最大伝送速度 最大74.81Mbps(20MHz帯時)
チャネル幅 1.25~20MHz
変調方式 OFDMA:QPSK/16QAM/64QAM
セル範囲 2~10km
移動性 固定、可搬
策定時期 2004年6月




Mobile WiMAX

 Mobile WiMAXは802.16-2004に移動端末用の修正を加えたIEEE802.16e(802.16e-2005)規格に対応する規格です。最初はハンドオーバーに関する規定は入っておらず、引き続きWiMAXフォーラムで調整されましたが、現在はハンドオーバーの規定も入っています。規格では120km/hの移動速度でもセクター間のハンドオーバーが可能となっています。実際の試験では200km/hでの移動でも支障は生じていません。
 
※ハンドオーバーとは、基地局の通信エリア(セル)を越えて移動局(車、電車等)が移動し、次の基地局のセルに入ったときに、通信を担当する基地局を切り替える仕組みです。

※IEEE802.16e-2005は世代的には3.9Gの移動通信システムとされています。
※Mobile WiMAX対応ルータは、メーカの規格名が「IEEE802.16e-2005」ではなく、IEEE802.16eとなっています。

 モバイル WiMAXの仕様は次の通りです。

モバイルWiMAX
規格 IEEE802.16e-2005
周波数帯域 6GHz以下
最大伝送速度 75Mbps(20MHz帯時)
チャネル幅 1.25~20MHz
変調方式 SOFDMA:QPSK/16QAM/64QAM
セル半径 1~3km
移動性 固定、可搬、移動性(時速120kmまで)
策定時期 2005年12月



 IEEE802.16e-2005の後継規格は2011年3月31日にIEEE802.16mとして規格化され、WiMAX2とも呼ばれています。

※WiMAX2は世代的には4Gの技術とされています。

 WiMAX2(IEEE802.16m)が出た後に、LTE(TD-LTE)との互換性を備えたWiMAX2.1が策定されました。WiMAX2.1はWiMAXに対して上位互換であるとともに、LTEとの互換性も目指したことで、将来的にはLTE技術への収束が実現するのではないかとみられます。

※Mobile WiMAXは速度、伝達距離が次世代技術と現行技術の中位であり、市場としてニッチになることが心配されましたが、WiMAX2.1でTD-LTEと互換になることで、市場の将来性が少し明るくなっています。

 Mobile WiMAXの詳細についてはこちらをご覧ください。






スマートフォンとは

 スマートフォンの前身は携帯電話です。携帯電話は、元々は、有線電話系通信事業者による電話機を、携帯するようにした移動体通信システムです。有線電話系の通信路につながっている基地局にまで、端末から電波でつなげて、後は有線電話系のシステムを使って、通話を行います。基地局から先は有線電話系の通信路を使いますので、無線電話とは異なります。

 その後1G(第一世代携帯電話)、2G(第二世代携帯電話)と開発が進められ、2000年度に入ると3G(第三世代携帯電話)の時代に入ります。日本では2001年に3Gの商用サービス(W-CDMA)が始まります。3Gになると、テレビ電話が可能となり、パソコンと接続して高速なデータ通信が行えるようになります。しかし、まだ音声電話機能が中心の携帯でインターネットもできるようになったという感じでした。

※インフラ整備の不十分な発展途上国では、ラストワンマイルの問題を解決しやすいということで爆発的に普及し始めています。

 2000年代の後半になると、PDA(Personal Data Assistant、携帯情報端末)が市場に投入されてきます。このPDAはノートパソコンと比較すると、機能的には限定されていますが、手のひらサイズで持ち運びが簡単なものでした。その後、このPDAに電話機能が追加され、PDAでも電話が可能、つまり簡易的なパソコンで電話ができるものというコンセプトで、スマートフォンが市場に出てくることになりました。

 スマートフォンは大きく分けるとアップル社が開発するアイフォン(iPhone)とドコモ、au、ソフトバンクなどの様々な携帯キャリアから発売されているアンドロイド(Android)に分けられます。アイフォンとアンドロイドの大きなな違いは採用しているOSが違うということです。

 アップル社のアイフォンはOSとして自社で開発している「iOS」(アイオーエス)を使用しています。アイフォン以外のドコモやau、ソフトバンクなどの携帯キャリアから発売されているスマートフォンにはGoogleが開発したAndroidというOSが入っています。

※アップ社ではパソコン用のOSとしてmacOSを使っています。このmacOSはUNIX系のOSをベースにしていますので、簡単なインターフェースを介在させるだけで、BSD系やLinux系のソフトウェアを容易に利用することができるという利点があります。元々、インターネット系のソフトウェアはBSD系のOS上で開発したものが多いので、BSD系のOS上で開発されたソフトウェア資源を簡単に利用できるのは大変便利です。このmacOSを組み込み用にしたのが「iOS」です。

※macOSは元々UNIX系のオープンソース「Darwin」をベースとしています。このDarwinは更に起源をさかのぼるとFreeBSDに行き着き、更にNetBSDなど他のBSD系の機能も取り入れています。アップ社はこのDarwinを基礎として、組み込みタイプのOSとして「iOS」、モバイルOSとしての「watchOS」、セットボックス用の[tvOS」などを開発しています。

※iOSはiPhoneだけでなく、iPod touch、iPad、iPad mini、iPad Air、iPad proなどのOSとしても利用されています。

※BSD(Berkeley Software Distribution)は1977年から1995年までカリフォルニア大学バークレー校(10校あるカリフォルニア大学システムの中で最古の歴史を持つ)が開発・配布したUNIXオペレーティングシステム、およびソフトウェア群を指します。ここから、FreeBSD、NetBSD、OpenBSD、DragonBSDなどのOSが派生しています。DEC Ultrix、サンマイクロのSunOSなどもBSDを元にして生まれています。Windowsで使用されているTCP/IPのコード(winsock)なども元々はBSDのコードとして開発されたものです。

※AndroidはカーネルにはLinuxカーネルのカスタマイズ版を使い、そこに様々な携帯用の機能を追加したものです。元々は、携帯電話向けソフトウェアプラットフォームを開発していたAndroid社が開発しました。2005年にAndroid社はGoogleによって買収されています。

 スマートフォンでは、様々なアプリケーションを使うことができます。携帯電話時代にも様々なアプリを使うことができましたが、キャリアが違うと使えないということがありました。しかし、スマートフォンはパソコンと同じで、キャリアに関係なくアプリが使えます。しかも、タッチパネルで操作できます。

 スマートフォンのメリットとしてメールがあげられます。アカウントを取得して、ログインすれば、携帯電話時代には使えなかったWebメールやPC用のアドレスが使えます。

 携帯時代にはパソコン用のサイトなどは携帯モードで、元のサイトを携帯用にレイアウトし直して見ていたのですが、スマートフォンは殆どパソコンですから、パソコンで見ているのと同じように見ることができます。

 スマートフォンを使えばyoutubeなどの動画サイトも見ることができます。動画サイトを見るためには高い処理能力と高い通信速度が必要でしたが、スマートフォンはこの2つの問題を解決していますので、動画をストレスなく見ることが可能になっています。

 では、iPhoneとAndroidはどうな違いがあるでしょうか。アプリに関しては、Androidの特徴は自由で、iPhoneは管理です。Androidは自由で、誰でも勝手にアプリの開発・販売ができますので、有料・無料を含めて様々なアプリが存在します。中には悪意を持ったウィルス的なものもありますので注意が必要です。これに対して、iPhoneの方はアップルが厳しく管理していますので、有料で、一定レベル以上のものが殆どです。

 操作性ははどうでしょうか。Androidでは携帯キャリアが自由に開発していますので、機種によってボタンの位置や配置・操作性が違います。そのため、機種を変更すると慣れるまでに一苦労することになります。これに対して、iPhoneは最初から一貫したコンセプトで作られていますので、初期のシリーズから一貫したデザインを採用しており、操作性で戸惑うことはないでしょう。

 iPhoneは完成性を売りにしていますので、待ち受け画面なども変えることができませんが、Androidは自由にカスタマイズ出来るようになっています。



 デメリットもあります。一番のデメリットは、月々の料金が携帯に比べて割高だということです。価格差は機能の差だと考えることができますが、もっと安くしたいという方は、格安スマホを検討してみてください。ただし、使い方によっては格安スマホの方が高くつくこともありますので、格安スマホを決める際には、自分の使い方をよく整理して、その使い方のままで、安くなるのかをよく検討してからにして下さい。格安スマホ、SIMフリー、MVNOなどについてはこちらをご覧ください。

 バッテリーの持ちが悪いのもデメリットです。携帯やスマートフォンの消費電力の大半はディスプレイによるものですので、画面の大型化はそのまま消費電力のアップにつながります。バッテリーの大容量化や、消費電力の少ないディスプレイの開発などがポイントになります。

 iモードを使った携帯専用サイトなども見られなくなります。携帯専用のサイトはパソコンからも見られませんので、使い慣れたサイトのある人は困ってしまうかも知れません。



インターネット上の住所

 アクセス回線を使ってISP経由でインターネットに接続します。インターネットの基本はクライアントサーバシステムであるということは既に説明しましたが、クライアントからサーバへの接続はどのように確立するのでしょうか。相手が誰であるかを特定しなくてはなりません。この特定の仕方はどのネットワークのどこに存在するかという方法で特定します。具体的には、IPアドレスという方法を使います。

 IPアドレスは、十進数の4つの並びで指定します。この4つの数字は「.」(ドット)でつなぎます。ドッドつなぎの十進数表示となります。十進数は「0」~「255」の間の数字です。何故でしょうか。IPアドレスは元々は32桁(1桁は通常「ビット」と言いますので、32ビットとなります)の2進数で表示されます。ただ、この表示方法は、機械(コンピュータ)には分かり易くとも、人間には極めて分かりにくい表示方法です。そこで、人間が扱う場面では、32ビットの2進数を8ビットずつに分けて、それぞれを十進数に直して表示しようということになりました。2進数の8ビットは0~255を表現することができます。従って、IPアドレスは「155.34.6.254」のような感じになります。

 インターネットはネットワーク同士の相互接続の関係であるということを説明しました。ネットワークの集まりですから、どのネットワークに存在するどんな装置(コンピュータ)であるということが分かれば、そこまでデータを送信することができます。

 実はIPアドレスはサブネットマスクというを情報とセットで処理されます。そこで、IPアドレスは、「155.34.61.25 255.255.255.0」とか、「155.34.61.25/24」のような表し方をします。


 「255.255.255.0」はサブネット(ワーク)マスクと言います。サブネットマスクの「1」が先頭からどれだけ伸びているかがポイントです。この例では、「1」が24ビット伸びています。これは、サブネットマスクとセットになっている「155.34.61.25」の上位24ビットがそのまま生きて、その後のビットは全部「0」となるという意味です。これが、サブネットのIPアドレスを表しています。つまり、サブネットのIPアドレスが「155.34.61.0」ということです。


 マスクが「1」のビットはそのまま生きて、マスクが「0」のビットは0となる(「AND」計算)とすると、サブネットのIPアドレスは次のようになります。


 「255.255.255.0」というのはごく一般的な例ですが、ネットワークのアドレスのうち、上位何ビットがサブネットのアドレスを表しているということには、決まりはありませんので、「255.255.240.0」というような場合もあります。240は2進法では「11110000」を表していますので、これは上位20ビットがネットワークアドレスとして生きて、後残りの12ビットは全部「0」ということになります。従って、サブネットワークアドレスは、「155.34.48.0」ということになります。


 サブネットマスクの長さが、IPアドレスのドット区切りと少しずれているときは少しわかりにくいかも知れませんが、書いてみると直ぐに分かります。

 もう一つ「155.34.61.25/24」は「155.34.61.25 255.255.255.0」と同じ意味で、サブネットマスクの上位何ビットまで、「1」が連続しているかを表しています。この例では、「24」ビット続いていますので、「255.255.255.0」と同じ意味だということが分かると思います。これをプレフィックス長と言ったりします。「255.255.240.0」はプレフィックス長が「20」となります。また、サブネットのアドレスを「プレフィックス」という場合もあります。

 つまり、通信相手のIPアドレスが、「155.34.61.25/24」ということは、相手方のコンピュータがサブネットアドレス「155.34.61.0」に設置されていて「155.34.61.25」というIPアドレスを持っていることを意味しています。

 IPアドレスの詳細についてはこちらをご覧ください。



ソケットとポート番号


 インターネットの通信では相手を指定して、データのやり取りをします。相手は、コンピュータの中にあるソフトウェアです。クライアントサーバシステムでは、クライアントは、ユーザが何らかの動作をすると、目覚めてサーバに要求を出します。サーバは通常の場合は、メモリ上でクライアントからの要求を待っています(Listen状態)。つまり、いつも目を覚まして、スタンバイ状態です。

 サーバソフトウェアは通常デーモンと呼ばれます。デーモン(daemon)とは、悪魔ではなく、「守護神」というイメージでとらえてください。インターネット上のサーバはUNIX OS上で動いていることが多いのですが、UNIXでは「ある条件が満たされたときにバックグラウンドで実行されるプログラム」というように理解されています。例えば、Webサーバならデーモン君は"httpd"、電子メールの場合のデーモン君は"smtpd"、FTPのデーモン君は"ftpd"という具合です。実は各サーバのプロトコル名に"d"が付いているだけです。

 一般的にクライアントからサーバへの要求は頻繁にあり、その要求に瞬時に対応できるようにデーモン君はメモリに常駐しています。しかし、メモリ上の領域つまり、座席はいくらでもあるというわけではありません。メモリは非常に高価です。そして、座席が一杯あるほど、高価です。そこで、メモリの座席には限りがあるということになります。

 余り頻繁にクライアントからの要求がないサーバ類は、代理人に頼んでメモリ上に常駐してもらっています。多くのサーバの代理人を引き受けているデーモン君をスーパデーモン(super daemon)とよびます。スーパデーモン君は依頼人に対する要求があると居眠りしているサーバ君を起こして、クライアントからの要求があったので、回答してほしいと指示します。

 通常は、メモリ上でたくさんのデーモン君がクライアントからの要求を待っています。つまり、クライアントが相手として、IPアドレスを指定しただけでは、1台のコンピュータを指定できるだけで、そのコンピュータのメモリ上で待っているサーバを指定したということにはなりません。では、サーバを選択するには、デーモン名で指定すればいいでしょうか。いやもっと簡単な方法が採用されています。それはポート番号という方法です。

 例えば、WebクライアントがWebサーバを指定する場合は、通常は80番を使います。電子メールサーバの場合は、通常は25です。

 IPアドレスとポート番号を指定すると特定のネットワーク上にある、特定のコンピュータ上の、特定のサーバを指定することができます。

 クライアントサーバシステムでは、クライアントからアクションで始まりますので、サーバのポート番号は予め定められ公開されている必要があります。従って、サーバのポート番号はウェルノウン(well-known)ポート番号と呼ばれます。

 では、クライアントのポート番号はどうでしょうか。クライアントのポート番号はその都度空いている番号をOSが割り当てることになっています。このOSによって割り当ててもらった番号をサーバへの要求の際に、一緒に教えてやれば十分です。「回答をするときには、このポート番号を使ってくださいね」ということです。

 このようにIPアドレスと、ポート番号の組を使って接続を構築する方法をソケット接続といいます。



データを運ぶ仕組み

 インターネット通信では、パケットを使います。パケットは、データを小分けにして、小さなまとまりにした単位のことです。大きなデータを小さなデータに小分けして、送信する方式を「パケット通信」と言います。このパケット通信は、大きな荷物を小さく分解して、小包で送るようなイメージです。小包には相手の住所と名前が書かれますが、パケットにも宛先が書かれます。宛先などの通信を制御する情報を記述する部分をヘッダ(パケットヘッダ)と言います。パケットヘッダにはIPアドレスや、ポート番号以外にもたくさんの制御情報が書かれています。

 このパケットを運んでくれる人(装置)が必要です。この人はルータ(router)君です。ルータはネットワークとネットワークの接続点となります。




 ルータはそれぞれがルーティングテーブルというデータベースを持っています。ルーティングテーブルは、基本的に宛先ネットワークのアドレスと、そのアドレスに到達するための次のルータの組み合わせで出来ています。



 次に到達すべきルータはネクストホップ(nexthop)と呼ばれます。ネクストホップのIPアドレスはいくつで、そのネクストホップに行くためのは、自分の出口(インターフェース)はどこになるのか。ルータは複数のネットワークと接続していて、その接続口をインターフェースと言ったり、ポートと言ったりしますが、そのいくつかある出口のうちのどこから出ていけば、ネクストホップに到達できるか、などがルーティングテーブルに記述されています。ルーティングテーブルの1行(エントリ)は通常次のような情報で出来ています。

宛先NWアドレス ネクストホップ 経過時間 出力if

 経過時間はこの情報を得てからどれくらい時間が経過しているかということです。同じサブネットワークに対する情報を得た時は新しい方を優先するのが一般的です。

 これ以外にも、いくつかの情報が記述されています。それは、このルート情報を得たのはどういう手段によってか(つまり情報源です)ことです。

 ルーティングテーブルはどうやって作るのでしょうか。基本的にはルータが自分で作成します。自分で作成するというと奇異に感じる人もいるかもしれませんが、ルータ同士が会話をして(ルートに関する情報交換をして)、どのネットワークにはどのように行けば最も効率的に行くことができるかを計算しています。

 このルート情報を交換するためのプロトコルをルーティングプロトコルと言います。ルーティングプロトコルには代表的なものとしてRIPとか、OSPFとか、BGPなどがあります。ルートに関する情報交換は同じルーティングプロトコルでないと成り立ちません。大まかな使い分けとしては、小規模なLANではRIPが、大きなLANではOSPFが、ISPのネットワーク間ではBGPが利用されます。つまり、情報源がRIPか、OSPFか、BGPかが分かるように、ルーティングテーブルのエントリに書かれているということになります。RIPなら"R"、OSPFなら"O"、BGPなら"B"と書かれています(ルーティングプロトコルはこれ以外にもベンダー独自のものがあります)。

 ルータはルーティングプロトコルを使ってどのようにルーティングテーブルを作っているのでしょうか。これは極めて専門的な質問ですので、ここでは詳細は省略します。ルーティングプロトコルの種類によって方法は様々ですが、概略的には自分の身の回りのネットワークやリンクの情報、あるいは他のISPとのつながりなどの情報を送り合って、個々のルータがネットワーク同士のつながりの全体像を構築するということになります。

 このように説明すると、各ルータがインターネットの全体像を把握しているのかと思うかも知れませんが、そういうことはありません。全体像を把握しているルータはインターネットのバックボーンにはいくつか必要ですが、多くのルータは全体像を把握していません。その秘密がデフォルトルートです。デフォルトルートは、宛先ネットワークが分からないときは、全部ここに送信してしまおうというルートです。途中のルータが宛先を知らず、どこの送信していいか分からなくなると、通常では、そこでパケットの転送は止まってしまうのですが、デフォルトルートが設定されているための、滞りなくパケットの転送が続くことになります。


 デフォルトルートは「0.0.0.0/0」で表しますが、このルートがルーティングテーブルの最後尾に置かれます。これによって、どこに送っていいか分からないパケットは、デフォルトルートに転送されることになります。上のルーティングテーブルの例ですと、何処に送っていいかルーティングテーブルに指定がない場合のパケットは全部デフォルトルートのネクストホップである「10.3.3.254」に送るということになります。

 サブネットの末端に接続されているコンピュータにも、簡略版のルーティングテーブルがセットされています。パソコンには外のネットワークに行くときには、このルータを使うというように記述されます。通常のパソコンの場合は、外のネットワークへの出口は1つですので、その外への出口としてのルータのIPアドレスを指定します。このルータは通常は、デフォルトゲートウェイなどと呼ばれています。

 ルーティングの基本についてはこちらをご覧ください。ルーティングの基本と、基本的なルーティングプロトコルであるRIPの仕組みについて説明しています。大規模はネットワークでは主としてOSPFというプロトコルが使われています。OSPFについてはこちらをご覧ください。

 RIPやOSPFはルートをサブネット単位で考えていますが(IGPs)、インターネット全体では、この考え方は効率的ではありません。余りにも制御単位が細かすぎるのです。インターネットはマクロの視点から見ると、ISPのインターネットワークを相互接続したものです。従って、インターネット全体では、ISPを単位とする経路制御が効率的です。ISPは自社内のインターネットワークを統一的なルーティングポリシーによって制御していますが、このように統一的なポリシーで制御されているシステムの単位をAS(Autonomous System、自律システム)と言います。このASを単位として経路を制御するルーティングプロトコル(EGPs)の代表的なものがBGPです。BGPについてはこちらをご覧ください。



Mobile Wi-Fiルータ

 ブリッジやスイッチなどは特定のサブネットワークの中で利用する機器です。従って、そのサブネットワークの外に移動することができません。これに対して、ルータはサブネットワークをつなぐ機器ですので移動することが可能です。

 通常の事務所内は家庭内で使うWi-Fiルータなら、WAN側は有線で外部ネットワークに接続します。

 Wi-Fiルータをポケットに入るくらいの大きさに小さくして、これを持ち歩くと外出中にもインターネット接続が可能となります。これを実現するには、外部へのWAN接続も無線で実現する必要があります。この時に利用されるWAN側の無線通信はLTE(携帯電話)や、Mobile WiMAXなどになります。Mobile Wi-Fiルータの詳細については、こちらをご覧ください。









ソケット接続

 IPアドレスとポート番号を指定すると相手を特定して通信することが可能です。例えば、Windowsのpowershellというシェルプログラムを開いて、"nslookup googleco.jp"というプログラムを実行してみてください。多分、google.co.jpのアドレスとして、172.217.25.67のようなIPアドレスが表示されると思います。

 今度は、IEやCHROMEなどのブラウザのアドレスボックスに"http://192.217.25.67"と入力して、エンターキーを押してみてください。Google検索のページが表示されると思います。つまり、IPアドレスを指定すれば、Webサーバと通信ができるということが分かります。エッーじゃ、ポート番号は?、"http://IPアドレス"と指定すると、自動的に"http://IPアドレス:ポート番号"とポート番号が補われます。Webブラウザと、Webサーバの通信ではポート番号の80番が利用されますので、ポート番号80番が補われるということになります。

 Webのポート番号は80番と決まっています。通常は、UNIXでは/etc/servicesというファイルにデーモンとポート番号の関係が記述されています。Windowsの場合は、Windows/system64(or system32)/drivers/etc/servecsに記述されています。このポート番号が公開されたポート番号ですから、Webのサーバの設定ファイルにこのポート番号が記述されます。Webサーバの一般的なソフトウェアはApacheです。Apacheの設定ファイルは、普通は"httpd.conf"という名前のファイルで、このファイルでポート番号は80番と指定します(教え込みます)。デーモン君がメインメモリに常駐して、クライアントからの要求を待つことをデーモン(サーバ)が"Listen"状態にあるといいます。そこで、設定ファイルには"Listen 80"のように記述します。こうすると、80番ポートへのアクセスがあったときに、httpd(デーモン)君は自分へのアクセス要求と認識します。

 では、"Listen 8080"と設定されているとどうなるのでしょうか?デーモン君は8080番へのアクセス要求があったときに、自分へのアクセス要求と認識することになります。しかし、これは普通の設定ではありませんので、アドレスボックスにポート番号を省略してIPアドレスだけ指定した場合は、"8080"を補ってもらうことができません。このように特別な番号を指定している場合には、"http://IPアドレス:8080"と明示的にポート番号を指定しなくてはなりません。

 世界中の見ず知らずの人にWebサーバを公開する場合にはポート番号は"80"を使わなくてはなりません。しかし、身内の人、例えば同じ会社の人、あるいは同じ大学の人にだけ公開したいという場合には、ポート番号を少し変更するという方法がよく利用されます。こうすると、サーバの管理者から予めポート番号を教えてもらっている人だけが、サーバにアクセスできるということになります。



クライアントサーバシステム

 インターネットサービスは殆どクライアントサーバという仕組みでサービスを提供します。クライアントサーバシステムでは、サービスを提供するソフトウェアと、サーバにサービスを要求するソフトウェアに役割分担します。サーバソフトウェアとクライアントソフトウェアが同じコンピュータ上で稼働することもありますが、ネットワークを経由して通信をすることもできます。

 クライアントソフトだけしかインストールされていないコンピュータはクライアントコンピュータ、クライアントマシン、あるいは単にクライアントと言ったりします。サーバソフトウェアがインストールされているマシンはサーバコンピュータ、サーバマシン、あるいは単にサーバと言ったりします。ちょっと紛らわしいのですが、ソフトウェアのことを言っているのかコンピュータ自体のことを言っているかは文脈から簡単に判断することができるでしょう。

 クライアントの役割はユーザからの指示に従って、サーバに要求を出し、サーバからの応答をユーザに提示することです。サーバの役割はクライアントからの要求に応答することです。

 クライアントとサーバは連携しています。クライアントはどんなサーバにでも要求を出せるわけではありません。クライアントは特定のサーバに対して要求を出すように最初から設計されています。サーバも同様です。どんなクライアントから要求されてもそれに回答するようにはできていません。特定のクライアントからの要求があって初めて、その要求に回答します。

 例えばWebシステムの例を考えてみましょう。WebシステムのクライアントはWebブラウザです。WebブラウザにはIEや、Chrome、firefoxなどがありますが、これらのブラウザはサーバに要求を出しますが、どんなサーバでもいいというわけではありません。Webブラウザの要求に応答できるのは、Webサーバです。メールサーバや、DNSサーバや、データベースサーバに要求を出すことはできません。Webブラウザは必ず、Webサーバに要求を出すように設計されています。WebサーバとしてはApacheや、IISなどがありますが、Webサーバの仕様に準拠して設計されていれば、Apacheも、IISもブラウザの要求を処理できます。

 サーバはインターネット上の様々なところから来る要求に素早く回答できるように一般的にはメインメモリ上に常駐しています。このような状態をプロセスといいます。サーバというプログラムがプロセス状態でクライアントからの要求を待っていますので、サーバマシンは大きな容量のメインメモリを必要とします。また、サーバはインターネット上の様々なところから来る要求に素早く回答できなくてはならないので、高性能のCPUが必要です。多くの場合はマルチコアというタイプのCPUを備えています。ハードディスクも大容量でなくてはなりません。

 サーバが稼働しているマシンは基本的には365日、1日24時間休みなく動いています。量販店で手に入るような廉価なパーソナルPCではおそらく耐えられません。サーバ用に堅固に作られたマシンを、空調の利いた部屋で動かす必要があります。停電時にも稼働できるように電源装置などの準備も必要です。マシン室は入退出管理も必要です。

 マシンは耐震構造の、できれば免震構造の建物に収納したいところです。このように考えると自宅に、あるいは自社の社屋内にサーバを立てて、情報公開するのは大変なことになります。そこで、データセンタの利用や、レンタルサーバの利用が検討課題になってきます。



分かり易い住所表示

 IPアドレスとポート番号さえ指定すれば相手のサーバを特定することができます。しかし、単なる数字の羅列は扱いにくいものです。覚えるべきIPアドレスが複数になると、インターネットを利用すること自体が難しくなります。

 そこで開発されたのがDNS(Domain Name System)というプロトコルです。先ほど、"nslookup"というプログラムを紹介しましたが、これはDNSプロトコルのクライアントに該当します。

 "nslookup yahoo.co.jp"を実行してみてください。IPアドレスが返ってくるはずです。今度は、このIPアドレスをパラメータとして指定します。例えば、"nslookup 183.79.135.206"を実行すると、f1.top.vip.kks.yahoo.co.jpという名前が表示されました。この名前をドメイン名と言います。

※GoogleやYahoo!のサイトは人気サイトでアクセスが非常の多く、単独のマシンでは処理しきれません。そのため、多くのサーバが稼働しています。これらは異なる名前を持っていますが、別名(エイリアス)という仕掛けを使って、google.co.jpやyahoo!.co.jpなどへのアクセスを、いくつかのサーバに振り分けて処理をしています。

 DNSもクライアントサーバシステムを採用しています。DNSクライアントがドメイン名を示して、DNSサーバに問い合わせをすると、DNSサーバが、IPアドレスを返します。



 例えば、ユーザがWebクライアントであるWebブラウザにドメイン名を示すと(例えばアドレスボックスにドメイン名を入れると)、ドメイン名を理解できないWebブラウザは、DNSクライアントに名前解決の依頼をし、DNSクライアントはDNSサーバに名前解決の要求をし、DNSサーバから回答を得たら、それをブラウザに提示します。そして、ブラウザはそのIPアドレスを使って、Webサーバに要求を出すというように動作します。

 DNSでははドメイン名をIPアドレスに変換しますが、IPアドレスをドメイン名に変換することもあります。このような変換は逆引きと呼ばれます。逆引きの必要性はあるのでしょうか。例えば、ファイアウオールのアクセスリストがドメイン名で記述されている場合、そのドメイン名をIPアドレスに変換しないと、そのパケットを通過させるべきかブロックすべきか判断できません。

 DNSのおかげで、ややこしいIPアドレスをいくつも覚えなくてはならない、ということはなくなりました。しかし、DNSのメリットはそれだけではありません。例えば、IPアドレスはネットワークの物理的な位置と関係していますので(実際はそのネットワークの境界に位置して、他のネットワークとの仲介役をしているルータのインターフェースのIPアドレスに関連付けられています)、コンピュータをどこか違うネットワークに引っ越ししてしまうと、IPアドレスが変わってしまいます。でも、ドメイン名は変わりません。ネットワークの管理者が、DNSシステムの設定ファイルでドメイン名とIPアドレスの関係を書き直すだけで、システムを利用するユーザは今まで通りのドメイン名でシステムを利用することが可能です。

 DNSもクライアントサーバシステムを採用しています。DNSクライアントは通常リゾルバ(resolver)と呼ばれます。リゾルバはWebブラウザなどの機能として含まれています。例えば、Webブラウザが名前の変換(ドメイン名からIPアドレスへ)をしたい場合は、リゾルバを呼び出します。リゾルバはDNSサーバに問い合わせを行い回答を得て、ブラウザに伝えます。

 リゾルバから問い合わせを受けたDNSは自分で持っているデータベースを確認し、問い合わせに応じることができない場合はどうしたらいいでしょうか。実はDNSは単独ではほとんど機能しません。世界中のドメイン名を1台で全部カバーしているDNSサーバがあればいいのですが、それは現実的ではありません。1台のDNSサーバに問い合わせが殺到して、ダウンしてしまうでしょう。

 DNSでは複数のサーバが連携する仕組みを採用しています。このような仕組みを通常、分散処理システムと言います。DNSでは全世界のドメインを逆ツリー構造で管理しています。全世界のドメインを逆ツリー構造の根と枝の付け根と葉の部分に分けて、ドメインに親子関係を持ち込んでいます。

 例えば、abc.co.jpというドメイン名があるとすると、"jp"というドメインの子ドメインの一つとして"co.jpというドメインがあり、更にこのドメインを親ドメインとして、子ドメインに"abc.co.jp"というドメインがあるというような感じになっています。ドメインの逆ツリー構造は次のようになります。



 これをドメイン名空間と言います。逆ツリーのルート(頂点)と各接点と葉はノードと呼ばれ、ノードにはドメイン名が割り当てられています。これは通常ラベルと呼ばれます。ラベルの長さは63文字以下と定められています。ルートのラベルは" "です。ルートからのラベル名を左側に、ピリオドでつないでいくとドメイン名になります。ルートのラベルは" "ですので、正確に書くと、"abc.co.jp."のように最後が"."(ピリオド)で終わる形になります。ドメイン名全体の長さはピリオドを含めて253文字です。



 ルートからどれだけ離れているかはレベルで表されます。図の中の"jp"、"com"、"fr"などはトップレベルドメインと呼ばれています。その下の"ac"、"ne"、"co"、"ibm"などがセカンドレベルドメインとなります。

 ドメイン空間の各ノードにはネームサーバ(name server)と呼ばれるDNSサーバが配置され、そのドメインにある名前を管理しています。ネームサーバは基本的にはそのドメイン内のドメイン名とIPアドレスの関係を管理していますが、そのドメインの下の階層(レベル)に更にドメイン(サブドメイン、子ドメイン)ができた場合は、そのサブドメインを管理しているネームサーバの位置を示す役割も担っています。例えば、co.jpというドメインを管理するネームサーバはabc.co.jpドメインを管理するネームサーバを、設定ファイルの中で指定されています。


 abc.co.jpというドメイン内にdef.abc.co.jpという名前のコンピュータが設置されている場合、abc.co.jpを管理するネームサーバは、設定ファイルの中で、このdef.abc.co.jpとIPアドレスを関連付けています。そして、co.jpを管理するネームサーバは、サブドメインabc.co.jpのネームサーバに対するポインターを設定ファイル中に持っていますので、def.abc.co.jpのIPアドレスに対する問い合わせを受けたら、abc.co.jpを管理するネームサーバに問い合わせを行います。

 ドメイン名空間の最上位にあるルータは「ルートサーバ」と呼ばれています。このルートサーバの設定ファイルには、トップレベルドメインを管理するネームサーバのホスト名とIPアドレスが記述されており、サブドメイン(トップレベルドメイン)のネームサーバを把握しています。トップレベルドメインのネームサーバは、自分の子ドメインであるセカンドレベルドメインを管理するネームサーバへのポインターを保持しており、セカンドレベルドメインを管理するネームサーバは、これまた自分の子ドメインであるサードレベルドメインを管理するネームサーバへのポインターを保持しています。このようにあるドメインのネームサーバが自分の子ドメイン(サブドメイン)を管理するネームサーバへのポインタを保持するという形で、全てのドメインの管理サーバが管理されています。また、各ネームサーバは設定ファイルの中には、直接の親子関係でないネームサーバへのポインターが記述されている場合もあります。

 ネームサーバがダウンしてしまうとインターネットの名前システムが使えなくなってしまいますので、各ドメイン毎に配置されるネームサーバは最低2台で運用するというのが慣例になっています。中でも最上階層のドメイン(ルートドメイン)のサーバ(ルートサーバ)が止まってしまった場合の影響は絶大ですので、ルートサーバは現在世界で13組配置されています(アメリカ合衆国内が10台、東京に1台、ロンドンに1台、ストックホルムに1台で計13台です)。

 DNSについての詳細はこちらをご覧ください。



電子メールの仕組み

 電子メールとはパソコンやタブレット端末、スマートフォンなどの情報機器同士の間で専用のソフトウェアを使って、インターネットなどのネットワークを越えて情報の交換をする機能です。やり取りできる情報は文章だけでなく、ファイルや画像などを添付ファイルとして扱うことができます。

 電子メールという言葉は、広い意味での使い方と、狭い意味での使い方があります。狭い意味での電子メールはインターネットのプロトコルを使ったメッセージ交換システムです。ここでは、狭い意味での電子メール、つまりインターネット電子メールについて説明します。

※電子メールは広い意味では、電子的な手段を使ってメッセージをやり取りするシステムや、サービス、ソフトウェア全般を指します。この意味では、携帯電話会社が提供しているメールシステムや、SMS(携帯電話間で、相手の電話番号を宛先として、短いメッセージのやり取りをするサービス、Short Message Service)、あるいはアプリ内で提供される利用者間のメッセージ交換機能などを含みます(例えば、グループウェアのNotesで提供されているNotesメールなど)。

 インターネット電子メールシステムは、SMTPやPOP3、IPAP4、MIMEなどのインターネット標準プロトコルに基づて構築されています。

 SMTP(Simple Mail Transfer Protocol)は電子メールを送信・転送する際に使用するプロトコルです。電子メールシステムもクライアントサーバシステムを採用しています。クライアントに当たるものをメーラなどと言ったりします。

 Windowsパソコンを購入すると「Outlook」というメールソフトがインストールされています。これがメールクライアントです。Google ChromeやMozilla Firefox、Safariなどのブラウザにもメール機能が付いています。

 Mozillaに付いているメール機能を独立させたのが「Thunderbirds」というメーラです。Thunderbirdsはオープンソースで開発が進められているフリーのソフトウエアです。Windowsパソコンにインストールして使うこともできます。

 メールソフトを使えるようにするにはアカウントの登録をして、サーバの設定をします。サーバの設定とは、メールサーバのドメイン名をメーラに指示する作業です。この作業は勝手にすることはできません。メールサーバを自宅で運用するという手もないではありませんが、通常はISPのメールサーバを利用します。自宅からインターネットをするにはISPと契約する必要があります。ISPと契約すると、ISPがメールサーバのドメイン名を指示してくれます。このメールサーバのドメイン名を、メーラの設定ページで記入するということになります。

 ISPと契約すると、ISPのメールサーバの管理者があなた専用の私書箱のようなものを、メールサーバ上に作ってくれます。これは通常、メールボックスなどと呼ばれます。これは、メールサーバ上のあなた専用のフォルダーのようなものです。ここに、あなた宛てのメールが届きます。あなたの契約したISPの名前が「PLALA」で「plala.or.jp」というドメイン名を持ち、メールサーバとして「mailserver-a」というサーバを指定され、あなたの名前が「username」ならあなたのメールボックスは、username@mailserver-a.plala.or.jpという名前で特定されることになります。これがあなたのメールアドレスです。「@」マークの前の「username」があなたのアカウントで、「@」の右側のmailserver-a.plala.or.jpがメールサーバのドメイン名です。もっと細かく言うと、「plala.or.jp」がISPのドメイン名、「mailserver-a」がメールサーバの名前ということになります。

 あなたがメールサーバ経由でメールを出すと、それはメーラで指定したメールサーバに届けられます。メールサーバは、自分の持っているメールボックスを確認し、宛先アドレスを見つけられれば、そのメールを宛先のメールボックスに投函します。なければ、設定に従って、他のメールサーバに転送します。メールサーバはDNSと連携して、宛先のメールサーバにメールを届け、そのメールボックスにメールを投函します。

 メールボックスに届いたメールをどのように読むかについてはいろいろの方法がありますが、現在は一般的にはユーザがPOP(version3)やIMAP(version4)などの方法で、メールサーバにアクセスして自分のメールボックス内のメールを読むという方法がとられています。ここでは更に、サーバにあるメールを自分のパソコンにダウンロードしてから読む(POP)という方法と、メールサーバに置いたままで読む(IMAP)という方法があります。

 メールサーバはグローバルIPアドレスを持ち、常時インターネットに接続していなくてはなりません。常時インターネットから来るメールを受信できる状態でなくてはなりません。そのため、LANの外側に出しておきます。企業の運営する企業ネットワークや大学のキャンパスネットの外に出している状態です。つまり、ファイアウォールの外側に置いているということになります。この部分はDMZ(DeMilitarized Zone、非武装地帯)と言われます。DMZ社内ネットワークとインターネットの中間的なネットワークです。

 DMZで稼働しているメールサーバに自分宛のメールが届いたかはPOPやIMAPなどの手法で確かめるわけですが、ユーザのパソコンとDMZ上のメールサーバは別のサブネットアドレスを持ち、しかもその間にはファイアウォールが存在しています。この壁をどうやって超えるかですが、ファイアウォールにこのアクセスは安全であるから許可してよいというように指示をしておくという方法が使われます。指示はファイアウォールのACL(アクセス制御リスト)というファイルに記述します。ここで社内からのPOPと許す場合は、社内のサブネットワークアドレスと、POPのポート番号(110)を指定して「許可」(permit)と指定します。この関係は、ISPとユーザ宅の間でも同様です。

 これは何を意味しているかですが、自宅で契約しているインターネットメールは自宅に帰らないと使えない、会社で運用しているインターネットメールは会社に行かないと使えないということです。会社のメールを、自宅に帰ってから確認しようと思ってもだめです。明日の朝、会社に行ってからじゃないと読むことはできません。

 電子メールはWWWと並んで今や社会インフラとも言えるほど普及しています。これほどまでに重要な手段はやはりどこでも使えるようになってほしいというのが一般的な要望だと思います。このような要望に応えるのが、「Webメール」という仕組みです。WebメールはWebシステムを使ったメールの仕組みです。Webブラウザ上のアプリケーションを使ってメールを送信し、メールをWebサーバ上に保管し、受信者はWebブラウザでメールを閲覧します。Webメールを使えば、インターネットにアクセスできる環境のある所なら、どこからでも、メールの送受信が可能です。

 電子メールシステムでは一通のメールを複数の宛先に同時に送信することができますので、これを使うとメーリングリストなどのサービスが可能となります。メーリングリストは、グループ全体のアドレスを用意し、そのアドレスに対してグループのメンバーのメールアドレスを関連付けておくリストを用意します。そして、グループのアドレス宛に送られたメールを、リストを参照して、全員に送信します。





 電子メールシステムの詳細についてはこちらをご覧ください。



Webシステムの仕組み

 Webシステムはインターネットを代表するサービスで、一般の人はインターネットと言えば、Webをイメージするのではないでしょうか。正式名称は「World Wide Web」です。略して、WWWとか、単にWebなどと呼ばれています。

 Webでは「Webサーバ」にデータを保管し、ユーザは、クライアント(Webブラウザ)を介してデータの保管場所を特定して、データの閲覧要求を出します。これに応答して、サーバがデータをブラウザに送ると、ブラウザがこれをユーザに見やすい形で提示するというシステムです。

 Webシステムを使って、データを公開したい人は、Webサーバにデータを保存します。これを「アップロード」と言います。

 このシステムを利用してインターネット上の公開される文書(ドキュメント)は「Webページ」と呼ばれます。Webページには「リンク」と呼ばれる機能があり、このリンクのもうけられた文字をクリックすると、簡単に他のページに移動することができます。このリンクをたどることによって、世界中にある様々なページを閲覧することができます。また、Webページには画像や音声などを埋め込むこともできます。

 Webページを作る文書の形式をHTML(Hyper Text Markup Language)と言います。Webを使って情報公開をしようとする人は文書(ドキュメント)をHTMLを使って記述しなくてはなりません。そして、それをWebサーバの特定のディレクトリに保管します。

 Webを使って、ページの閲覧をしたい人は、そのドキュメントがどこにあるのかを指定しなくてはなりません。この方法をURL(Uniform Resource Locator)と言います。URLにはURI(Uniform Resource Identifier」という上位概念があります。URIはURLとURNからなります(現在は、URCという概念についても議論が始まっています)。URN(Uniform Resource Name)は名前を永続的に識別するためのルール(書式)です。例えば本を識別するために利用されるisbnなどがあります。URLは場所を示す書き方のルールです。ページがどこにあるかを指定するために使用します。そして、URIが名前や場所を識別するルールの総称ということになります。

 例えば、http://www.kmownet.com/という書き方をURLだといいます。厳密に言うと、「www.kmownet.com」ドキュメントの場所を表しているので、URLですが、「http://」はURIの識別子(スキーム)なのでURIということになります。厳密な表現を大切にする技術仕様書などではURIなどと書かれていたりしますが、一般の人にはどうでもいいことなので、全体でURLでいいのではないかと思います。

 WebクライアントとWebサーバが要求とそれに対する応答を行うことでWebブラウザ上にWebページが表示されるわけですが、WebクライアントとWebサーバが通信を行う際に利用される通信プロトコルがHTTPです。これが、URLのスキームに使われています。

※URLスキームはhttpだけではありません。Webアクセスを暗号化するためにSSL/TLSを使う場合は、"https"となります。FTPでファイル送信する場合は"ftp"、ローカルのファイルにアクセスるウ場合は"file"、メールの送信先を指定する場合は"mailto"などとなります。

 HTMLでドキュメントを作成し、これをWebサーバに保管し、ユーザがURLでドキュメントを指定して、HTTPを使って要求をし、WebサーバがHTTPで応答する。これがWebシステムの基本です。これでは、ドキュメントを作った人から、ドキュメントの場所を具体的に教えてもらった人しか、そのドキュメントの閲覧ができません。研究者間で、研究論文を公開するなどの場合は、研究者仲間にメールで場所を知らせますので、これで問題なく利用できます。しかし、商用で不特定多数の人に公開したいという場合は、これでは不便です。いくらいいドキュメントを作っても閲覧してもらうことはできません。

 そこで必要なのがドキュメントの検索システムです。どんなことを知りたいか、検索システムに指定すると、適切なドキュメントの候補をいくつか提示してくれます。ユーザはその中から、自分で選択して、閲覧することができます。現在は、Googleに代表されるような検索システムがたくさんあり、Webの利用者には欠かせないものとなっています。

 Webシステムの詳細についてはこちらをご覧ください。



ホームページ/Webページ/Webサイト

 ホームページとWebページ、Webサイトは似たような意味合いで使うことが多いのですが、昔からインターネットを使っている詳しい人には違うという人も多くいます。

 今あなたが見ているページが「Webページ」です。ブラウザのウィンドウに表示されるページは「Webページ」です。Webページが一杯集まって1冊の本のようになっているWebページ群が「Webサイト」です。

 「Webサイト」の表紙に当たるページが「トップページ」です。いろいろなWebサイトへの玄関口のような役割を果たしているところが「ポータル」あるいは、「ポータルサイト」と呼ばれるWebサイトです。

 では、「ホームページ」って何のことでしょうか。元々はWebブラウザを表示するときに最初に表示されるページのことでした。例えば、ブラウザを起動したときにYahoo!のポータルサイトのトップページを表示するように設定していれば、このYahoo!のページがホームページということになります。

 次はIEのインターネットオプションで、yahoo!のポータルのトップページをホームページに設定しています。


 Webサイトのポータルサイトのトップページをホームページに設定する人が多かったため、Webサイトのポータルのトップページのことを「ホームページ」と呼ぶことが多くなっています。

 更に、インターネットが普及期に差し掛かり、WebブラウザやWebサイトのことを知らない人に説明する際に、「Webサイト」や[Webページ」のことを「ホームページ」と呼ぶというようなことがしばしばあり、現在では「Webサイト」や「Webページ」のことを全部「ホームページ」と呼んでしまう人が増えています。

 Windows10のEdgeではホームページという言葉は使わずに、「Microsoft Edgeの起動時に開くページ」という言い方に換えています。誤用を気にしての結果でしょうか?



ブログとは

 ブログはもともとは、「Web log」の略だといわれています。「log」というと木材の「丸太」のことや、数学の「対数」を思い浮かべてしまう人もいるかもしれませんが、ここでは情報を記録に残すという意味です。「履歴」などと言われます。もともとは、航海日誌という意味で用いられていたようです。「丸太」を海に流して船の速さを測り、それを日誌に記録していたことが語源となっているようです。

 コンピュータにもログファイルがあり、OSやアプリケーションなどがどのように動作したかの履歴を逐一記録しています。

 Webサイトに、このログのような使い方を導入したのが、Webログです。使い方としてはいろいろありますが、Webページを履歴をとるような使い方ができる機能を提供するソフトウェアやサービスがあり、それを利用します。例えば、自分でレンタルサーバを借りて、そこでブログのソフトウエアを動かすという場合や、インターネット上にあるブログサービスを利用する場合などがあります。ブログサービスは無料のものと、有料のものがあります。

 自分の考えや社会的な出来事に対する意見、物事に対する論評などを日記のように時系列に書いていくような使い方が一般的です。ここに他人がコメントを追加してくれると、自分の思いを表現しながら、他人との意見交換もできます。

 初めは個人的に利用する場合が殆どだったのですが、最近は企業が自社の情報を公開したり、新製品やサービスを公開するなどのためにも利用されることが多くなっています。

 ブログはこれまでのWebページを公開する技術を使っているため、閲覧する側はこれまでのWebブラウザを使ってそのまま見ることができます。



電子掲示板とは

 電子掲示板(Bulletin Board System、BBS)は、コンピュータネットワークを利用した環境で、記事を書き込んだり、閲覧したり、コメント(レス)を付けられるようにした仕組みです。情報交換や会話・議論などを行うことができます。パソコン通信の時代から存在するもので、インターネット時代の電子掲示板はWeb上で実装されています。

 電子掲示板では、書き込まれたメッセージはWebサーバ経由でデータベースに保存され、別な訪問者が記事を参照する際には、新しいメッセージが追加された状態で表示されます。このように、Webページの内容が常に新しい状態に保たれるようになっていますので、駅の伝言板のような利用が可能となります。

 電子掲示板の表示形式は大きく分けて伝言板型とツリー型があります。伝言板は駅の伝言板のように簡単なもので、書き込まれたメッセージは新しいもの順に表示されます。ツリー型は、特定の話題毎に個別のまとまりで表示されます。特定のテーマは通常スレッドとか略して「スレ」などと呼ばれます。呼び方は、掲示板によって異なり、トピック(略してトピ)などという場合もあります。

 スレッドを作成することをスレッドを立てる(スレ立て)と言います。このスレッド内に投稿に関わる返信が続くことで、スレッドが形成されていきます。スレッドに返信することはレスポンスを略して「レス」と言います。

 電子掲示板では、多くの場合、ハンドルネール(※和製英語、英語では"Handle"一語)やニックネームと呼ばれる名前で書き込みが行われます。このため面白半分で、本名なら遠慮するようなことを平気で書き込んでしまうという人がいます。例えば、他人の書き込みに対して、挑発的なことを書き込んだり、不合理な反論をするような場合です。このような行為は「荒らし」などと呼ばれています。また、他人から非難されるような事柄をうっかり書込み多くの人からの非難が集中するという場合もあります。このような状況は「炎上」などと呼ばれます。あるいは、他人のプライバシーを暴露してしまうというようなことも頻発しています。電子掲示板を利用する場合は、書き込み内容に注意することが大切です。



SNSとは

 SNS(Social Networking Service)は、Web上で社会的なネットワークを構築できる会員制のサービスのことです。趣味や嗜好、居住地域あるいは同じ学校の卒業生などのつながりを通じて新たな人間関係を構築する場を提供します。テーマを特定の分野に絞ったり、会員登録の資格を絞ったりしたSNSや、企業などが従業員間の情報共有や交流促進のために運用する社内SNSなどもあります。

 SNSで何ができるかについては明確な規定があるわけではありませんが、殆どのSNSでは自分のWebページを持ち、そこにプロフィールや写真を公開する機能を提供しています。その他、Webメールと同じようなセッセージ機能やチャット機能、新しくできた「友人」を登録するアドレス帳機能、友人に別の友人を紹介する機能、特定の仲間の間だけで情報やファイルなどをやり取りする機能(例えば、会員や友人に限定して日記を公開する機能など)があります。更に、趣味や地域などテーマを決めて掲示板などで交流するコミュニティ機能、予定や友人の誕生日などを書き込めるカレンダー機能・スケジュール機能などがあげられます。

 普及当初は人とのつながりを重視して「特定の大学の卒業生でないと使えない」とか、「既存の参加者からの招待がないと参加できない」など利用者を限定したサービスが多かったのですが、近年は殆ど、参加・登録自体は誰でも自由にできるものになっています。誰でも使えることからいろいろの人が入ってきていますので会員だから安心というわけにもいきません。知り合い同士の安心感を逆手にとって詐欺やウィルス配布などを行う輩もいます。また、アカウントの不正利用によるなりすましも起きていますので注意してください。

 友人間のコミュニケーションを目的としたSNSでも、友人から引用されることで書き込んだ内容が思ってもいなかった形で拡散してしまうこともあります。また、友人間のコミュニケーションを目的とするSNSの場合などは安心感から、プライバシー設定が不十分だったりすることもありますので、注意してください。

 主なSNSとしては、Facebook、Google+、Ameba、mixi、Instagram、LINE、Twitterなどがあります。

※Twitter社はSNSではないと言っています。Twitter社では「社会的な要素を備えたコミュニケーションネットワーク」(通信網)であり、SNSではないとしています。



チャットの仕組み

 チャット(chat)はインターネットを使っておしゃべりをするサービスです。チャットする場合はインスタントメッセンジャと呼ばれるアプリケーションを使って、チャットサーバに接続します。参加者がアプリでテキストを入力すると、そのテキストのメッセージが即座に表示されますので、数人の友人同士で会話をするような使い方ができます。最近では、パソコンやスマートフォンで使える無料電話アプリケーションやSNSを通じてチャットをしている利用者も増えているようです。



ショッピングサイト

 ショッピングサイトはWebシステム、データベースなどの仕組みを使って作られています。またユーザに対する連絡には電子メールが使われます。ショッピングサイトは自分で開設するという場合もありますが、管理会社がWebサーバやデータベースを用意し、ショッピングサイトの仕組みをサービスとして提供している場合もあります(ショッピングモール)。



ネットオークション

 ネットオークションはインターネット上で行われるオークションです。ネットオークションでは盗品が出品されたり、偽ブランド品などが出品されることがありますので、注意が必要です。また、ブランド品を出品して、品物を渡さずに代金だけをだまし取る詐欺行為が行われることがあります。



インターネットバンキング

 インターネットバンキングはインターネットを利用した銀行などの金融取引サービスです。インターネットバンキングでは、銀行の窓口やATMに行かなくても、また銀行の営業時間外でも、振り込みや残高確認などを行うことができます。インターネットバンキングでは、ID(契約者番号など)とパスワードでサービスを利用します。IDとパスワードを盗まれると、成りすましの被害に遭ってしまいますので注意が必要です。

※なりすましの被害に遭わないように、ワンタイムパスワードを利用する場合や、複数のパスワードを使うシステムもあります。例えば秘密の質問を利用する場合、パスワード表を使う方法などがあります。パスワード表は金融機関から渡されるランダムな数字の書かれた表です。顧客はログイン時に、パスワード表の読み取りの方法を指定されます。例えば、左上から斜め右下方向に何文字というように指定されます。

 フィッシング詐欺で狙われやすいのは、このインターネットバンキングのIDとパスワードです。代表的な手口としては、電子メールで金融機関を名乗り、偽のWebサイトに誘導し、IDやパスワードを入力させるタイプなどがあります。例えば、Webサイトをセキュアなものにリニューアルしたので、再度IDとパスワードを入力してほしいと言って、フィッシングサイトに誘導するなどの方法があります。電子メールにはフィッシングサイトへのリンクが設定されていて、そこをクリックすると、本物サイトそっくりの偽サイトに誘導されてしまいます。金融機関を名乗って、パスワード等の入力を求める電子メールは無視してください。メールに書かれたリンクをたどった場合には重要な個人情報などを入力しないように注意してください。

 最近はインターネットバンキングをターゲットとしたウィルスも見つかっていますので、注意が必要です。



インターネットとイントラネット

 イントラネット(Intranet)とは、Intra(内部)なネットワークです。つまり、企業内や大学内に構築したネットワークで、「net」は単なるネットワークではなく「Internet」を表しています。つまり、企業や大学のLAN内のインターネットだからです。ここでのインターネットは「インターネット技術」を使って構築したネットワークという意味です。つまり、企業や大学内にインターネット技術を使って構築したネットワークということになります。ここで言うインターネット技術とは、インターネットのプロトコルであるTCP/IPを使っているソフトウエアや、インターネット技術を使って動くルータなどを使って構築したという意味になります。

 インターネット技術を使えば安上がりに内部ネットワークが構築できます。また、ユーザインターフェースがインターネットと同じですから、それを使うユーザにとってもフレンドリーだということになります。最近の企業や大学の内部ネットワークは殆どの場合イントラネットとなっています。大学の離れたキャンパス間や、企業の本社と支社、あるいは営業所のネットワークはかつては専用線で結ばれることが多かったのですが、最近はインターネット技術を使ったIP-VPNで、あるいはインターネットそのものを使ったインターネットVPNなどによって結ばれることが多くなっています。



VPN

 VPNは仮想的な(Virtual)専用線(Private Network)という意味です。専用線は閉じられたネットワークという意味です。利用者が自分で回線を引いて、自分だけで利用するという場合もないわけではないですが、一般的には電気通信事業者が特定の顧客に回線を貸し出します。契約者しか利用しませんので、他の利用者に影響を受けることが少ないという利点があります。

 特定の利用者というと例えば大学のAキャンパスとBキャンパスの2地点間を結ぶようなイメージを持つかもしれませんが、スター型や分岐型の構成も可能です。また、専用の通信路や電波周波数帯を用いているかどうかは分かりません。他の回線と多重化している場合が多いと思います。

 専用線は通信回線を顧客が専用しますので、利用料は高くなります。そこで、セキュリティはそのまま維持しつつ、もっと低コストで利用できるサービスはないかということになります。このような要望に応えるのがVPNです。

 VPNの構築の仕方としては大きく「IP-VPN」と「インターネットVPN」という方法があります。

 IP-VPNは通信業者が独自に持っているIP網、つまりインターネット技術と全く同じ技術を使って構築されているが、一般には公開していない(つまり、オープンではない)閉鎖網を利用してVPNを作り、それを契約者に開放するという方法です。IP-VPNは特定の利用者以外は使いませんので、トラフィックの混雑時も一定の帯域が保証され、また盗聴や改竄のリスクも少ないというメリットが考えられます。



 現在、IP-VPNの技術として主としてはMPLS(Multi Protocol Label Switching)という技術が利用されています。MPLSでは「ラベル」というヘッダ情報によってMPSL網の中をスイッチングする技術です。

 MPLSではFEC(Forwarding Equivalence Class、通称は「フェック」)というという概念を使用します。このFECはMPSL網の中で同じ宛先、あるいは同じ扱いをさせたいパケットの集まりです。つまり、FECは宛先IPアドレス、マルチキャストグループアドレス、IPヘッダのTos値などによって、パケットの経路を識別するためのものです。そして、このFECを識別するための目印がラベルです。

 インターネットVPNは、インターネット経由でVPNを実現する技術です。インターネットVPNはトンネリング技術と、通信を暗号化する技術によって構成されています。トンネリングでは、パケットの新しいヘッダを付けてカプセル化(encapsulation)して通信をします。この新しいヘッダによって、どのような通信をするのかを識別できます。もう一つの暗号化通信の技術はパケットを暗号化して送信する技術です。これによって、パケットの盗聴や改竄を防ぐことができます。

 インターネットVPNを実現する技術としては、IPsec、PPTP、SoftEther、SSL-VPNなどがあります。



データセンター

 データセンター(data center)は各種コンピュータや通信装置などを設置して運用することに特化した施設です。かつては、企業がデータ処理をアウトソーシングするためにデータセンタを借り、本社とセンターを専用線で結んでいました。現在は、インターネット接続が安価になりましたのでインターネット接続が主流になっていますが、VPNを使っている場合もあります。

 特にインターネットに情報公開するためのサーバを設置することに特化したセンタはインターネットデータセンタ(iDC)などと呼ばれることがあります。

 データセンタを利用する理由はいくつかあると思います。最近の傾向としては、災害対策をメインとしているところが多いようです。データセンタは耐震構造で、免震構造を採用しているケースも多くなっています。電源供給も複数系統から同時に受けるようになっているところが増えています。また、外部からの電源供給が途絶えた場合に備えて、大容量の蓄電装置や自家発電装置を備えるところもあります。

 災害に備える場合には、本社から遠くのデータセンターを利用したり、データセンターを複数に分けるなどの傾向もあります。地震や津波などの被害は局地的ですので、本社が被災しても、データセンタは被災しないということが期待できます。

 外部に情報提供する場合には、インターネット接続回線の帯域も重要です。データセンターには、最初から多くの光ファイバが引き込まれていますので、情報公開用サーバの設置場所としては最適です。

 データセンタで情報公開用サーバを運用するには、コンピュータの他にルータや、スイッチなども必要となります。これらの装置に関しては、利用者が持ち込む場合と、データセンタ側が予め用意したものをレンタルという形で貸し出す場合があります。この場合には、更にルータやスイッチの管理をデータセンタ側で請け負うようなサービスもあります。

 セキュリティ面も期待されます。データセンタへの出入りは、事前に電話連絡した上で、IDカードを示したり、顔認証システムや静脈認証システム等の認証システムを通過しなくてはなりません。また、携帯電話やUSBメモリの持ち込みを禁止されている場合などもあります。また、情報漏えいの防止に力を入れているデータセンタも需要が高まっています。



レンタルサーバとは

 レンタルサーバはレンタルサーバの専門業者が用意したサーバを借り受けて利用するものです。レンタルサーバに似たようなサービスとしてハウジングサービスというものがあります。

 ハウジングサービスは、自社のサーバを専門業者のところ(一般的にはデータセンター)に持ち込んで利用します。データセンターには広い帯域の接続回線が通っていますので、外部に情報公開する場合などには非常に便利です。入退室のセキュリティもしっかりしています。また、耐震あるいは免震構造を備え、災害時の電源供給などにも十分な配慮がされています。ただし、データセンタのハウジングサービスを利用する場合にはサーバの管理は自分で行わなくてはなりません。インターネットや、VPNを利用してリモートから、サーバの管理をします。必要な場合には、データセンターに自ら出向いて、管理をしなくてはならない場合もあります。

 災害対策として、自社ビルから遠くのデータセンタを選択した場合には、自ら出向いて管理するのはなかなか大変です。


 ハウジングサービスと対比して説明されるサービスがホスティングサービスです。ホスティングサービスを提供する企業が提供しているのがレンタルサーバです。このサービスは、サーバのハードディスク上に予め顧客ユーザ用のエリアを作成し、これを契約したユーザに貸し出すというサービスです。


 契約によってはサーバの運用・管理等も委託できますので、ユーザの負担は少なくなります。次のイメージ図は、Webサーバの運用・管理は全部任せて、利用者はドキュメントの作成アップデートなどに集中する場合を表しています。


 ハウジングではなく何故ホスティングを選択するかと言えば、一番の理由は経費でしょう。ホスティングの場合は、複数ユーザで1台のサーバを共有しますので、経費が安くなります。ハウジングの場合は、自分のサーバを持ち込む必要がありますので、物理マシンをどのように選択するか、どの位の頻度で更新するかなどを考えなくてはなりません。また、ハウジングでは自分で管理運用する必要がありますが、ホスティングでは契約の仕方にもよりますが、サーバの運用管理を任せてしまうこともできます。

 サーバの運用にはUNIX、LinuxなどのOSがよく利用されますので、管理には専門的な知識と経験が必要となります。更に、ApacheのようなWebサーバ、PHPなどのスクリプト言語や、MySQLなどのデータベースの知識が必要となってきます。このような知識と経験を持つ社員を社内から見つけてくることができればいいのですが、新たに社外から見つけてくるということになると、これも大きな負担となります。

 ホスティングは共用サーバとして提供される場合と、専用サーバとして提供される場合があります。

 専用サーバの場合は、1台のレンタルサーバを丸ごと一人で利用できます。この点はハウジングと変わりません。ただ、ハウジングのようにコンピュータを自前で調達したり、更新したりという手間がかかりません。

 専用サーバは1台のサーバを一人で利用しますので、設定は契約者が自分の都合に合わせて自由に変更することができます。その代わり、設定や運用は契約者自身で行う必要がありますので、ある程度の専門知識が必要となります。

 共用サーバは1台のレンタルサーバのハードディスクの領域を複数のユーザで借りて使用します。共用サーバの場合は同じサーバを共用して使いますので、個々のユーザの都合でサーバの設定変更をすることができません。その代わり、共用サーバ1台の費用を、利用者全員で負担しますので比較的安価に利用できます。

 レンタルサーバにはこれ以外に、仮想サーバ(VPS)、クラウドサービスとして提供される場合があります。

 VPS(Virtual Private Server)は仮想的な専用サーバです。1台のサーバを複数のユーザで共用するという点は共用サーバと同様です。しかし、自由度や性能においては、専用サーバと同じと考えても構いません。1台のサーバの中に、契約者専用の領域が用意されます。この領域はまるで1台のサーバのように機能します。

 VPSでは1台の物理サーバの中に、仮想的に複数のサーバを構築します。物理サーバのCPUやメインメモリ、ハードディスクなどを制御するために共用のOSが準備され、その共用OSの土台の上に、ゲストOSが用意されます。基本的には、ゲストのOS同士は独立で互いに干渉することはありません。

 ゲストOSは互いに干渉しませんので、あるユーザの利用によって、それ以外のユーザが影響を受けることはありません。あるユーザがOSに過負荷を掛けているので、他のユーザに影響があるとか、あるユーザのOSに障害が発生したので、それ以外のユーザに影響が及ぶ、などということはありません。

 メモリやCPUについても、共用サーバと違って、ゲストOS用の性能が確保されるようにされているため、共用サーバよりも負荷のかかる利用にも適しています。また、ゲストOSの上で動かすアプリケーションも他のゲストOSとは全く無関係に決めることができます。

 サーバの管理に関しては、一般的には共用サーバの場合は、レンタルサーバ業者が行います。専用サーバやVPSサーバは、ユーザ自身が管理します。これに対して、マネージドサーバ(マネージド専用サーバ、マネージドVPS)というタイプがあります。マネージドサーバは管理についても業者に任せてしまうというものです。障害の発生時にも24時間365日対応してもらえますので、自社に専門技術者がいないという場合でも(例えば中小企業で人材が確保できない場合や、新規事業の立ち上げの場合など)、安心して利用できます。ただし、マネージドサーバといっても業者のサービスの種類によって様々異なりますので、どこまでは自分でやらなくてはならないか、どこからはやってもらえるのか契約時には細かく把握しておくことが必要です。


 次に示すのは仮想サーバのイメージ図です。


 専用サーバは1台まるごと一人で利用できます。VPSは仮想的な専用サーバですが、1台まるごと専用しているわけではありません。従って、性能や負荷耐性の点で、専用サーバが優れているといわざるを得ません。多数の利用者が同時に、CPUに負荷を掛け、メモリを利用しだすということがないわけではありません。物理サーバそのものに障害が発生した場合は、その物理サーバを利用している他のユーザにも影響があります。また、通信回線も複数人で利用することになりますので、他の利用者の利用状況によってはレスポンスが悪くなる場合もあります。

 ただ、統計的には、利用者の人数が増え、その利用者が地理的に広がると、利用者はバラバラの時間帯に利用しだしますので、物理サーバの運用という観点から見て、非常に効率的になります。この結果、VPSは非常に低価格で提供できるということになります。

 レンタルサーバの詳細についてはこちらをご覧ください。






クラウドサービスとは

 レンタルサーバには大きく分けて「共用」と「専用」、「仮想的専用(VPS)」の3つのタイプがあります。しかし、最近は新たに「クラウド型ホスティング」というタイプが登場して、注目を集めています。

 クラウドとはクラウドコンピューティングを省略した言い方です。では「クラウド」って何でしょうか?クラウドはCloud=雲ということだと思いますが、何のことかははっきりとは分かりません。どこかで正式に定義された言葉ではなさそうです。昔からコンピュータネットワークは雲を使って表されます。これは、ネットワークの先に何があるかハッキリとは分からないけれども、プロトコルに従って何かを要求すると、要求通りの答えが返ってくるというような世界を表現するものです。つながっている先は何だかもやもやしていてはっきりしないものだという場合に、それを雲を使って表現するということだと思います。

 従来、メールサーバは自宅、あるいは自社のネットワーク内で動かし、それを介して電子メールの送受信をしていました。この場合は、メールサーバにはサーバ管理者がいて、その管理者は設定の隅々まで心得ていて(Openソースのサーバなら、ソースコードそのものまで知っていてサーバの動作を細部まで全部知っている可能性もあります)、その管理者の設定した通りに電子メールサーバが稼働しています。この場合は、管理者が設定について隅から隅まで心得ているという意味で、クラウドではありません。しかし、電子メールサーバが企業のネットワーク内にあると、その企業の社員でも、自宅に帰ると、あるいは営業のために外出すると、その電子メールサーバを使うことができません。そこで、この電子メールをWebブラウザから使えるようにしたサービスが開発されました。これをWebメールといいます。皆さんの中にも使っている人がいるのではないかと思いますがGmailやHotmailなどが、このWebメールに該当します。GmailやHotmailなどは利用者にはその内部の設定などが分かりません。どのようなプログラムが、どのような設定で動いているのか皆目わかりません。しかし、ユーザが希望した通りのサービスを提供してくれます。これが、クラウドサービスです。


 GmailやHotmailなどのクラウドサービスはSaaS(サーズ、サース、Software as a Service)と呼ばれます。PCにアプリケーションをインストールしなくても、インターネット経由でサーバにアクセスすることで、そのアプリケーションを使うことができます。SaaSタイプのサービスとしては、他に、グループウェア、顧客管理、財務会計などがあります。

 クラウドのサービス形態としては、SaaS以外に、PaaSと、IaaSというタイプがあります。PaaS(パース、Platform as a Service)はインターネット経由のアプリケーションの開発・運用の場を提供するサービスで、システム開発者・管理者向けのサービスとなります。PaaSの具体的サービスとしては、仮想化されたアプリケーションサーバやデータベースなどのアプリケーション実行用のプラットフォーム機能の提供サービスがあります。IaaS(イアース、Infrastructure as a Service)はインターネット経由でハードウェアや回線などのいわゆる「インフラ」を提供するサービスです。利用者はOSと共にハードウェアの性能などを自由に選択することができます。

 IaaSは仮想化技術を使ってインフラを提供していますので、このタイプのクラウドサービスは、VPSとほとんど同様のサービスということになります。

 しかし、IaaSタイプのクラウドサービスは、VPSと全く同様かというとそういうわけではありません。一般的にレンタルサーバとよばれるもの(共用、専用、VPS)は契約内容が固定的です。ディスク容量はどれだけ利用できるか予め決まっています。それから料金も低額です。転送量に関しても1日当たり例えば70GBまでと上限の目安が決まっていますが、これを越えてしまったからと言って、その月の支払額が増えてしまうということはありません。専用サーバであっても、こうしたスペック(性能)は決まっていますし、料金も決まっています。VPSに関しても同様です。

 ただ、スペックが固定していると困ることもあります。何かのきっかけで自分のWebサイトに予測をはるかに超えたアクセスが集中することがあるとサーバがダウンしてしまうかもしれません。このような場合に備えて、高い料金プランのコースを選択するという手もありますが、めったにないことに備えて、高い料金を払い続けるのもコストパフォーマンス的にはつらいものがあります。

 このような場合に柔軟に対応できるようにしたサービスが、クラウドサービスです。物理的な仕組みとしてはVPSとほとんど同じです。VPSはサーバを仮想的に構築したものですので、CPU・メモリ・ディスクなどの性能も設定次第で柔軟に変更できます。また、必要とあればアクセスを複数の仮想サーバに振り分けるなどの設定も可能です。ただし、VPSは貸し出すときにそれを固定して貸し出しています。スペックを固定して、料金を固定化する方がユーザに受け入れやすいと考えたからだと思います。ところが、そのような方式では、ユーザを必ずしも満足させることができないということがハッキリしてきました。ユーザはもっと柔軟な使い方を望んでいる場合もあります。サービス提供会社はこのことを知って、柔軟なサービスも提供品目として追加してきました。これがクラウドのIaaSです。

 ところが、最近はクラウド型のサービスの例とされていたものを、VPSで提供する場合もあります。その結果、VPSとクラウド型のIaaSはますます区別のしにくいものとなっています。例えば、従来仮想マシンを複数台つなぐローカルネットワーク機能などはクラウド型の特徴と言われていたのですが、VPSという名前で、これを提供しているサービスなども出てきています。






P2P型通信

 通信ネットワークを利用したコンピュータシステムの形態はクライアントサーバシステムが基本です。クライアントサーバシステムでは、たくさんのクライアントからの要求がサーバに集中します。従って、人気のあるサービスが稼働しているサーバは、クライアントからの要求が増大して、過負荷状態に陥り、ダウンしてしまうこともあり得ます。

 対策はサーバの機能を高めることです。CPUの能力を高めるためにはマルチコアの採用なども考えなくてはなりません。メモリも増強する必要があります。ハードディスクの容量も増やさなくてはなりません。更に、コンピュータの仮想化や、クラウドサービスの利用などの手段が必要になるかも知れません。更にネットワーク回線を太くする必要もあります。

 そこで考えられるのがクライアントサーバ方式に頼らないネットワークの利用方式です。最近注目されている方式にP2Pという通信方式があります。P2Pの「P」はPeerです。peerとは「同格の人」とか、「対等者」という意味です。「2」はtoを意味します。従って、「Peer To Peer」ということになりますので、対等者同士の通信ということになります。つまり、どちらかは要求するだけ、もう一方は相手からの要求に応答するだけという関係ではありません。


 P2Pでは、この通信方式に参加する端末は、あるときは要求する側になり、ある時は応答する側になります。クライアントやサーバの役割分担がありませんので、端末同士が直接やり取りをすることになります。端末同士が直接やり取りすると、一部のサーバに負荷が集中するという可能性は低くなります。この意味では非常に将来性のある通信方式ではないかという見方もあります。

 特定サーバに負荷が集中するということはありませんので、高性能のサーバを要求する必要はありません。広帯域のネットワークを用意する必要もありません。従って、低コストでの運用が可能となります。

 これ以外にもまだメリットがあります。それは耐障害性が高いということです。クライアントサーバ方式では、サーバがダウンすると配信システムがダウンしてしまいますが、P2Pでは特定のホストに頼ることがなくなるので、耐障害性が高くなります。

 しかし、いいことばかりではありません。いったん情報が公開されると削除することは難しくなります。その情報がどこに保存されているかすべてを把握することは難しいので、キャッシュを持つ端末が存在する限りは公開され続けることになります。

 更にセキュリティ上の問題もあります。エンドユーザのPC上に保存された個人情報がインターネット上に漏えいするという事件も多発しています。

 P2Pには料金体系とのミスマッチという問題もあります。ISPや通信キャリアは料金体系を作成する際にP2Pという通信方式を想定していなかったようです。想定していたのはクライアントサーバシステムです。この方式では、一般のユーザはそれほど大きなトラフィックを出すことはないので、使い放題の固定料金にしても問題ないと考えるのが普通です。コンテンツを提供する業者(サービス提供業者)はサーバを設置して、多くの人にサービスを提供しますので、太い回線が必要となります。従って、太い回線を使う業者から高い使用料を徴収すれば、これで全体としてペイすると考えました(ようです)。ところが、P2Pでは一般のユーザから想定外の膨大な量のデータが出てきます。

 ISPの思惑も外れています。ISPと各通信キャリアの間では、IPパケットがISPをどれくらい通過するか(transit、トランジット)によって料金が決まる(従量制)契約を結んでいるのが普通です。ところが、ユーザがP2Pを使いだすと、ISPの想定を遥かに超えたトラフィックが流れ込んで来ることになり、想定外の料金の支払い義務を負うということになります。

※P2P型の通信を利用したサービスにはいろいろのものがありますが、そのうちのファイル共有と呼ばれるタイプのサービスではP2Pネットワーク(P2Pグループ)にファイルを配信するため膨大な量とトラフィックを発生させます。

 P2P型の通信方式を採用しているサービスは最近増えています。もっとも有名なのがファイル共有ソフトです。ファイル共有ソフトとはインターネットを通じてファイルを不特定多数で共有することを目的としたソフトウェアです。Napster、WinMX、BitTorrent、Winny、Gnutellaなどが有名です。インスタントメッセンジャ(インスタントメッセージング、Instant Messaging、IM)などもよく利用されるソフトウェアです。インスタントメッセンジャは、インターネット上で同じソフトウェアを使っている仲間がオンラインかどうかを調べ、オンラインであればチャットやファイル転送などを行うアプリケーションで、オンラインゲームやインターネット電話、ビデオ会議などの他のアプリケーションと連携できるものもあります。これ以外にもVoIPや、グループウエアなどP2Pの通信方式を利用したサービスが増えています。

 P2Pの場合には基本的には端末同士でやり取りをするのですが、誰とやり取りしたらいいのか直ぐには分かりません。例えば、ファイル共有の場合は欲しいデータがあったとしても、そのデータをだれが持っているのかは分かりません。このような場合は、グループ全体に問い合わせる方法を採用するか、それとも誰かが対応表のようなもの(インデックス情報)を持っているかどちらかの方法を選択する必要があります。

※P2PはP2Pのソフトウェアをインストールしている端末がグループを形成します。例えば、Winnyというファイル共有ソフトをインストールしている端末はWinnyというグループあるいは、Winnyネットワークを構成します。

 インデックス情報の持ち方によってピュアP2PとハイブリッドP2Pという方式があります。

 ピュア(pure、純粋な)とは純粋なP2Pで、端末同士だけでやり取りする方式を採用しています。

 ピュアP2Pではインターネット上に「入口」となるコンピュータをいくつか用意しておき、ユーザは最初にそのコンピュータにアクセスします。耐障害性が非常に高くなります。また、全体を把握するサーバがないため実装次第では匿名性を確保することも可能です。ただ、ファイルを検索する方法を何とか見つける必要があります。この方式では、インデックス情報を分散して持っていて、情報が欲しいユーザは、以前通信したことのある端末に尋ねるか、あるいは手当たり次第に聞いていくなどの方法が考えられます。この方式では、聞かれた端末は知っていれば回答し、知らなければ検索メッセージを他のノードに転送するなどの方法が考えられます。あるいは、検索メッセージの検索の方法がある程度構造化されているタイプもあります。例えば、検索メッセージを転送する方法が予め決まっている方式などもあります。このタイプでは、検索メッセージが転送されるに従って転送先がだんだん絞られていく方式を採用しているものなどがあります。


 ハイブリッドP2Pと呼ばれるタイプは純粋はP2Pと、クライアントサーバ方式の中間的な方式です。ハイブリッドP2Pは、P2Pネットワーク全体を管理するサーバを設置します。管理サーバは、P2Pを使うときの入り口として機能します。管理サーバはグループ全体を把握していますので、どのようなサービスを得たいならばどうすべきかを指示することができます。ファイル共有ソフトの場合には、欲しいデータを誰が持っているかの一覧表を管理していますので、効率的な指示ができます。この方式では、管理サーバがダウンすると、P2Pネットワーク全体がダウンしてしまいます。



 純粋なP2Pとハイブリッド型P2Pの中間的なタイプとして、スーパーノード型P2Pという方式を採用しているものもあります。Skypeなどが採用しているタイプです。

 Skypeはファイル共有ソフトなどと少し違うのは、ユーザ登録やログイン時の認証などの必要がありますので、ユーザ認証を担当するサーバなどが少数ながら必ず必要となるということです。従って、純粋なP2Pという方式は元々採用することはできません。しかし、通話時のノード間のルーティングなどにおいては、通常のP2Pの方式が利用できます。このP2Pの方式についてSkypeはスーパーノードやリレーノード、通常ノードなどの役割分担を導入しています。

 スーパーノードはSkypeネットワークの中核を構成するノードです。スーパーノードは一般のエンドユーザの端末から能力に応じて選択されるか、サービス提供者の提供した端末です。常時電源が入っていて、高性能(メモリやCPUに余裕があること)である必要があります。ファイアウォールでブロックされておらず、グローバルアドレスを持つものでなくてはなりません。これらのスーパーノードがSkypeネットワークの中核を構成します。スーパーノードに割り当てられるかはSkypeが自動的に決めてしまいますので、自分でSkypeを使っていないのにSkype通信の経路として利用されてしまうこともあり得ます。スーパーノードに割り当ててもらいたくないという場合には、グループポリシーや、レジストリなどを手動で設定することで禁止できるようにもなっています。

※SkypeのWebサイトで配布されているSkype管理用のADMファイルを利用すると、スーパーノードの割り当てを禁止するなどの設定をすることができます。

 ユーザが自分のパソコン上でSkypeアプリケーションを起動すると、Skype認証用のサーバで認証を受けた上で、通常ノードとしてSkypeネットワークに参加します。最初は通信相手をスーパーノードに見つけてもらいますが、その後は、その相手と直接接続を確立して、音声やビデオの通信をすることができます。全てのノードは最初は通常ノードとしてSkypeネットワークに参加しますが、後にスーパーノードや、リレーノードに昇格する場合もあります。

 スーパーノードに依頼して通信相手のIPアドレスやポート番号が分かれば、Skypeクライアントは次にはその相手と直接通信をしようとするのですが、相手との間にNATがあるとか、ファイアウォールなどがある場合は、これができません。この時に利用されるのが「リレーノード」です。リレーノードはユーザのネットワークの外側に位置し、直接通信できないノード同士の間に入って通信の橋渡しをすることができます。



インターネットの管理

 インターネットは誰が管理しているのだろうか、というのはインターネットに慣れていない人が普通に抱く疑問で無理もないものだと思います。しかし、インターネットには管理者はいません。ただ管理者と言っても、ここで言っているのは、インターネット全体を一手に引き受けて管理運用している人はいないという意味です。インターネットのために重要な役割を果たしている組織はいくつかあります。

 インターネットの通信のためにはIPアドレスが必要です。このIPアドレスが重複すると通信ができません。また、IPアドレスにはサブネットワークの情報も含まれていますので、サブネットワークとの関係を無視して決めることはできません。また、ドメイン名も重複が許されませんし、IPアドレスと無関係に決めることはできません。通信プロトコルもどこかに公開されている必要があります。例えばあるサービスを展開しようとする場合には、サーバのプログラムを作成する場合に守るべきルール、クライアントプログラムを作成する際に守るべきルールが決まっていて、それが誰でも見られるように公開されていなくてはなりません。

 初めに通信プロトコルの公開について考えてみましょう。インターネットに関する通信プロトコルはRFC(Request For Command)という文書によって管理されています。このRFCには通信プロトコルだけでなく、インターネットに関連付けて公開すべき情報なども公開されています。

 RFCのURLはhttps://ietf.org/rfc.htmlです。このURLを見ると、「ietf.org」というドメイン名を持つ組織がRFC文書を管理しているらしいことが分かると思います。IETFはインターネットの標準化を推進する任意団体です。コンピュータシステムを相互接続するために、共通の技術仕様を策定するために議論するグループから発展した組織です。IETFへの参加は企業単位ではなく、個人として参加し、ミーティングやメーリングリストで意見交換をします。IETFにおける議論標準化の意見交換はワーキンググループ(WG)を単位として行われます。

 RFCの文書にはいくつかの種類があります。何らかのインターネット上のサービスを考案した人はその仕様をRFCに投稿(公開)します。この段階を「Proposed Standard」(PS、標準化への提唱)と言います。ここで十分な議論が戦わされ、その間の議論の成果が仕様に反映され、相互接続性に関する独立した実証実験(最低でも2件)の実績があれば、「Draft Standard」となります。ここで十分な実績があげられ、標準化へのコンセンサスがあれば(個人、WGがインターネットに有用と判断すれば)、「Standard」となり、ドキュメントにはRFC番号が付与されます。

 文書だけで管理しているのかというとそういうわけでもありません。非営利の国際組織としてISOC(Internet Society)という組織があります。この組織は、インターネット技術およびシステムの標準化や、教育、ポリシーに関する問題の解決などについて議論することを目的としています。1992年からインターネットの普及促進や関連技術の開発促進という観点から、国際的な調整などの役割を担ってきました。ISOCの下部組織として、IETFやIABなどがあります。

 IAB(Internet Architecture Board)は、インターネットの技術コミュニティ全体の方向性やインターネット全体のアーキテクチャについての議論を行う技術者集団です。ISOCの技術理事会(Technical Advisory Group)としても機能し、インターネットを支える多くの重要な活動を監督しています。

 ドメイン名や、IPアドレス、プロトコル番号などのインターネット資源の管理はIANA(Internet Assigned Numbers Authority)が行っていました。これは南カリフォルニア大学の教授のJon Postelを中心としたプロジェクトですが、現在はICANNが引き継いでいます(2000年2月、ICANN、南カリフォルニア大学、およびアメリカ政府の合意による)。IANAは現在、ICANNのにおける資源管理、調整機能の名称として使用されています。

 ICANN(The Internet Corporation for Assigned Names and Numbers)はドメイン名、IPアドレス、プロトコルポート番号およびパラメータ番号、さらにDNSルートネームサーバシステムを民間主導でグローバルに管理する目的で、1998年10月に米国で設立された民間の非営利法人です。

 IPアドレスは、「アドレスポリシー」と呼ばれる管理方針に従って管理されています。アドレスポリシーはIPアドレスの配布、また利用に当たって守るべきルールなどを定義したものです。アドレス管理は世界を5つのRIR(Regional Internet Registry、地域インターネットレジストリ)に分けて行っています。日本が属するのはAPNIC(Asia Pacific Network Information Centre、アジア太平洋地域)です。RIRの下部に、NIR(National Internet Registry、国別インターネットレジストリ)があります。日本におけるNIRはJPNICです。JPNICはIPアドレス指定業者に委託して、IPアドレスの割り当てや登録情報の管理を行っています。

 指定業者として、IPアドレスの管理をしているのは、主としてISPですが、それに限りません。ISPはインターネット接続サービスを提供する必要上どうしても指定業者となる必要があります。それ以外には、データセンター業者などが考えられます。データセンターは運営するネットワーク内の機器にIPアドレスを割り振ることができれば、効率的なIPアドレスの割り当てができます。これ以外にもプロバイダーに依存しないネットワークを構築するために、IPアドレスが必要な場合などがあります。

参照:「インターネットの管理」の章に関しては、日本ネットワークインフォメーションセンターのサイトを参照させていただきました。





更新履歴
2017年4月25日               作成


















































































































































 ページの先頭へ