webnote.info

Home › インターネット概論 › インターネットの仕組み

§  Introduction to Internet

01.

インターネットとは

インターネットは「複数のコンピュータネットワークを世界規模で相互接続したネットワーク」のことです。ネットワークを繋ぐ点(コンピュータやハブ、ルータなど)をノード、それらを繋いでいる線をリンクと呼びます。


インターネットの歴史


WWWとは

ワールドワイドウェブ(WWW)とは、インターネット上に散在するドキュメント同士を相互に参照可能にするハイパーリンク機能を備えたハイパテキスト(文書形式)システムです。このシステムは、リクエストレスポンスが一対になっているサーバ・クライアントモデル [2] で構築されています。

WWWにアクセスするには、ユーザエージェント [3] からウェブページをURIで指定してブラウジング [4] する必要があります。インターネットの通信手続きの方法(規約)としてプロトコルがあり、標準化されたプロトコルはIETFからRFC [5] として公開されています。


リクエストとレスポンスとは

リクエストとは、クライアントからの要求のことです。ユーザエージェントやCookieの情報が含まれるリスエストヘッダ部と、リクエストする情報のパス(所在地)が含まれるリクエストメッセージ部に分けられています。

レスポンスとは、サーバからの応答のことです。応答情報以外にステータスコード(リクエストの結果)やコンテンツタイプ(応答する内容の種類)が含まれるレスポンスヘッダ部が含まれます。


通信プロトコルとは

通信プロトコルとは、コンピュータ同士がネットワーク通信を行うときの決まりごと、通信手順のことです。言語が互いに違えば会話できないように、プロトコルが互いに違えばコンピュータは通信することができません。役割に応じて複数の階層に分けており、上位のプロトコルはすぐ下のプロトコルの使い方さえ知っていれば、それより下の階層で何が起きているかを認識しなくても通信することが可能です。 主な通信プロトコルに、IP、TCP、HTTP、FTPなどがある。


ステータスコードの意味

コンピュータ通信の際、クライアントのリクエストに対して、サーバがどんな状態かを知らせるHTTPのリクエストに応じたステータスコードには、主に以下のものがあります。

コード 意味 状態
200OK
リクエスト成功
『正常に応答しました!』
例:ページが正しく表示された
301Moved Permanently
永久リダイレクト
『移転しました!』
例:別のURLへ恒久的に移動した
302Found
リダイレクト
『見つかりました!』
例:一時的にリダイレクトした
304Not Modified
未更新
『更新されてません!』
例:更新がなかった
401Unauthorized
認証失敗
『認証されません!』
例:IDやPWの入力ミスした
403Forbidden
アクセス拒否
『見ちゃだめ!』
例:アクセス権限がない
404Not Found
URLの存在不明
『リソースがありません!』
例:ページが存在しない
500Internal Server Error
サーバ内部エラー
『障害発生中…。』
例:CGIなどの設定ミスした
501Not Implemented
未実装・未サポート
『それはできません…。』
例:実装してない機能を使う
503Service Unavailable
サービス停止
『混みあってます…。』
例:アクセス集中、メンテ、DOS攻撃

ステータスコードは、レスポンスヘッダ部という付加情報に含まれ、100番代は情報、200番代は成功、300番代はリダイレクション、400番代はクライアントエラー、500番代はサーバーエラー、を示しています。


ウェブページを見るまでのデータの流れ

※ドキュメントを解析してHTMLで指定されている通りに文字をレイアウトする。


ステートレスとは

ステートレスとは、一つひとつの通信において、アプリケーション状態(ステート)をサーバ側で維持しない(レス)ということです。リクエストとそれに対するレスポンスとによって都度通信が完了し、通信の状態を保持しません。

<例> ステートレスの場合
店員: いらっしゃいませ。
客: 「Aセット」をください。
店員: サイドメニューは何になさいますか?
客: 「Aセット」を「サラダ」でください。
店員: ドリンクは何になさいますか?
客: 「Aセット」を「サラダ」と「アイスコーヒー」でください。

HTTPの通信は前後のページとの因果関係を引き継がないステートレスなアプリケーション・プロトコルなので上記のように1アクセス(店員と客の会話)ごとに切れてしまい「接続→通信→切断」が繰り返されます。

そこで、クライアント側にセッションID(同一のユーザーであることを認識する値)をCookie [8] に保存し、サーバ側に保持されるユーザ-の詳細情報を共有することでステートフルを疑似的に実現しています。

<例> セッションID(会員証)でステートフルを実現した場合
店員: いらっしゃいませ。
客: (会員証を提示して)「Aセット」をください。
店員: サイドメニューは何になさいますか?
客: (会員証を提示して)「サラダ」で。
店員: ドリンクは何になさいますか?
客: (会員証を提示して)「アイスコーヒー」で。

FTPやPOP3といったステートフルなアプリケーション・プロトコルは、セッションをつないだうえでメッセージをやりとりしながら複数の状態を行き来する格好で処理を順番に進めていく必要があります。


ネットワークの接続方法

一般家庭のPCからインターネットへ接続する場合、光ファイバーメタル線(銅線)による電話線の接続サービスはISP(インターネットサービスプロバイダ)によって提供されます。インターネットにつなぐEthernet(イーサネット/有線LAN、無線LAN)やBluetoothなどの標準規格はIEEE(電子電気学会:アイトリプルイー)という組織が定めています。主なインターネット接続サービスは以下のとおりです。


WAP2.0 とは

ワイヤレス アプリケーション プロトコル(Wireless Application Protocol)2.0 の略。ワップニーテンレーと呼ぶ。
2001年に公開された携帯電話などの移動通信端末を使ってインターネット情報を表示するための通信プロトコルとコンテンツ記述言語の仕様のこと。


ウェブサーバのソフトウェア

WWWサービスを提供するウェブサーバは、HTTPプロトコルを利用してクライアントから要求されたデータを送る機能があります。ウェブサーバで使われるソフトウェアは以下のとおりです。


クライアントのソフトウェア

ウェブブラウザの世界の市場シェアWindowsに標準で付属しているInternet Explorer が5割強を占めており、Google Chrome、Mozilla Firefoxがそれを追っています(2012年現在)。主なクライアント側の主なブラウザソフトは以下のとおりです。


クラウドコンピューティングとは

ネット上でサービスとして仮想的に提供されるハードウェア、ソフトウェア、開発環境などコンピューティングリソースを土台として、必要な情報処理システムを構築・運用することです。概念としては、アプリケーションの「利用」のためのSaaS、アプリケーションの「開発」のための PaaS、情報処理システムを構成する要素全般を指す XaaS が含まれます。

footnotes

  1. 1.ARPAnet
    アドバンスド リサーチ プロジェクト エージェンシー ネットワーク(Advanced Research Projects Agency Network)の略。TCP/IPプロトコル群は「ARPAnet」で採用されており、インターネットに引き継がれた。

    page top

  2. 2.サーバ・クライアントモデル
    特定の役割を担当するサーバと利用者の操作するクライアントに役割を分けて、相互にネットワークで接続される方式。クライアントのリクエスト(要求)に対してサーバのレスポンス(応答)を提供し、一往復で情報のやりとりを完結するモデル。別名、クライアントサーバモデル、クライアントサーバーシステム、C/Sシステム、クラサバ。

    page top

  3. 3.ユーザエージェントUser Agent
    ウェブサイトへのアクセスの際に使用されるクライアント側のソフトウェア(プログラム)またはハードウェア。OS、ブラウザ、検索エンジンのクローラ、RSSリーダなどを指す。ユーザエージェントは、HTTPリクエストの際にユーザエージェント毎に決められた識別名称文字列を送信する。その値からハードウェア情報、携帯キャリア名、ホストOS名、アプリケーション名などを取得することができる。

    例:Softbank iphone iOS5 Mobie Safari の場合
    Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9A334

    page top

  4. 4.ブラウジングBrowsing
    PC、携帯端末、セットトップボックス(テレビで視聴可能な信号に変換する装置)にインストールされているウェブブラウザ等のアプリケーションを使ってWWW上のHTMLファイルを閲覧すること。HTMLを解釈して画像化し、ウェブサイトとして映し出すためのレンダリング(描画)を行い、ディスプレイに画像・文字などを表示する。

    page top

  5. 5.RFC
    リクエスト フォア コメンツ(Request for Comments)の略。
    TCP/IPプロトコルURIなどのインターネットで利用される技術を標準化する組織「IETF」が策定した技術仕様。

    page top

  6. 6.ONU
    光回線終端装置(Optical Network Unit)の略。
    FTTHなどの光ファイバー回線を家庭に引き込んだ際、その終端で光信号を電気信号に変換する装置。

    page top

  7. 7.DSU
    加入者回線終端装置(Digital Service Unit)の略。
    ISDNのデジタル回線に端末装置を接続するための装置。

    page top

  8. 8.Cookie
    ユーザエージェントの状態を把握するために、HTTPで擬似的なステートフルを実現するために使用される。

    page top