第16回:WebブラウザはWebサイトを見るだけじゃない【Webアプリケーション・アプリケーションサーバ・データベースサーバ・HTTPリクエスト・HTTPレスポンス・DNSの名前解決】

<<第15回:Webサイトにアクセスしたことを覚えておく【HTTP Cookie・クッキー・プロキシサーバ・URLフィルタリング・Webフィルタリング】

この記事のポイント

  • Webアプリケーションは、Webブラウザをユーザインタフェースとして利用するアプリケーション
  • クライアントPC用の専用のアプリケーションのインストールやアップデートなどが不要になる

WebブラウザはWebサイトを見るだけじゃない

Webアプリケーションとは

Webブラウザだけあればいい

Webブラウザは今ではWebサイトを見るためだけのものではなくなっています。アプリケーションのユーザインタフェースとしても広く利用されるようになっています。Webブラウザをユーザインタフェースとして利用するようなアプリケーションをWebアプリケーションと呼びます。

以前は、企業では社内で利用する業務アプリケーションを開発して利用することが一般的でした。業務用アプリケーションはユーザインタフェース、つまり、ユーザが触れる画面レイアウトや入力パラメータの処理などもつくりこむ必要があります。そして、開発した業務アプリケーションはクライアントPCにインストールしなければいけません。そして多くの社員が利用するクライアントPCの業務アプリケーションを常に最新バージョンに保っておくことは、とても負担が大きい作業になっていたのです。

一方、Webアプリケーションは、Webブラウザをユーザインタフェースとして利用するので、クラアントPC用の専用アプリケーションを開発し、それをインストールしておく必要はありません。WebブラウザだけインストールされていればそれでOKです。Webサーバ側で画面レイアウトの構成や入カパラメータのチェックやその処理をどのように行うかを決めればよいだけです。処理そのものは、Webサーバではなく別途アプリケーションサーバを使うこともあります。アプリケーションサーバはさらにデータベースサーバと連携していることもあります。

Webアプリケーションを利用するには?

Webアプリケーションの処理の概要は下の図を参照してください。このようなWebアプリケーションの例として、Googleカレンダーなどのスケジュール管理や複数のユーザ間で情報共有するためのグループウェア、証券会社のオンライントレード、銀行のインターネットバンキング、オンラインショッピングなどが挙げられます。

Webアプリケーションの概要

Webアプリケーションの概要

Webサイトを見るときの準備


次の項目のポイント

  • Webアクセスの大前提は、TCP/IPの設定が正しく行われていること
  • 利用するアプリケーションはWebブラウザとWebサーバアプリケーシヨン
  • 利用するプロトコルはHTTP/TCP/IPを組み合わせる。他にもDNSやARPも必要になる

Webアクセス時のアプリケーションとプロトコル

利用するアプリケーション

Webサイトにアクセスするために利用するアプリケーションは、Webブラウザです。広く利用されているWebブラウザに、「Google Chrome」「Microsoft Edge/Internet Explorer」「Mozilla Firefox」「Apple Safari」があります。

Webブラウザは、たいていの場合、特別な設定を行う必要はありません。ただし、プロキシサーバを利用するときには、プロキシサーバのIPアドレスポート番号を設定します。

また、WebサーバではWebサーバアプリケーションが必要です。主なWebサーバアプリケーションに、「Apache」「Microsoft IIS」があります。

Webサーバアプリケーションでは、公開するWebサイトのファイルを置いている場所(ディレクトリ)などの設定が必要です。

Webアクセスで利用するアプリケーション

Webアクセスで利用するアプリケーション

利用するプロトコル

Webアクセスで利用するプロトコルは、HTTPです。

Webアクセスで利用するプロトコル

Webアクセスで利用するプロトコル

また、トランスポート層にはTCP、インターネット層にはIPを利用します。HTTPのウェルノウンポート番号は80です。そして、ネットワークインタフェース層は多くの場合、イーサネットを利用します。

また、WebサイトにアクセスするときにはWebサイトのアドレスであるURLを利用します。そのURLからWebサーバのIPアドレスを求める名前解決のためにDNSも必要です。そして、イーサネットのMACアドレスを求めるためにはARPを利用します。DNSやARPは自動的に行われるので、ユーザ自身はあまり意識することはないのですが、とても重要なプロトコルです。

Webサイトを見るときの流れ


次の項目のポイント

  • Webサイトを見るときにはDNSの名前解決やARPのアドレス解決の動作も行っている
  • Webサイトを見るとき流れ
  1. WebブラウザでURLを入力
  2. WebサーバのIPアドレスを解決
  3. TCPコネクションの確立
  4. HTTPリクエストの送信とHTTPレスポンスの送信

DNSの名前解決、HTTPリクエストとHTTPレスポンス

Webサイトを見るときの動作

Webサイトを見るにはHTTPリクエストHTTPレスポンスのやりとりがありますが、その前にDNSの名前解決やARPのアドレス解決の動作も行われています。そして、TCPでのコネクションの確立も行います。簡単なネットワーク構成を例にして、DNSやARP、TCPも含めたWebサイトを見るときの流れを考えましょう。

Webサイトを見るときには、WebブラウザでURLを入力します。または、Webページのリンクをクリックします。

Webサーバの名前解決

Webサーバの名前解決

TCP/IPでは必ずIPアドレスを指定しなければいけません。URLに含まれているWebサーバのホスト名から、DNS サーバへ問い合わせてWebサーバのIPアドレスを解決します。

Webサーバの名前解決

Webサーバの名前解決

DNSサーバへ問い合わせを送信するときには、イーサネットのMACアドレスを求めるためにARPも行われます。

ネットワーク構成例では、ルータがDNSサーバ機能を持っていると想定しています。ルータ自体には宛先になるWebサーバのIPアドレスはないので、ルータからさらにDNSの問い合わせを行います。

WebサーバのIPアドレスがわかれば、そのIPアドレスを指定してWebブラウザと Webサーバアプリケーション間でTCPコネクションを確立します。

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

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

WebブラウザとWebサーバアプリケーション間のTCPコネクションを確立してから、HTTPリクエストとHTTPレスポンスのやりとりが行われます。

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

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

Webブラウザで指定したURLを含んだHTTPリクエスト (GETメソッド)がWebサーバアプリケーションへ送信されます。

HTTPリクエストを受け取ったWebサーバアプリケーションは、リクエストされたWebページのファイルをHTTPレスポンスとして返します。TCPで複数に分割されたWebページのファイルを組み立てて、Webブラウザにその内容を表示するので、ユーザはWebサイトを見られるようになります。

>>第17回:同じネットワーク内での転送を繰り返す【イーサネット・無線LAN・Wi-Fi・IEEE802委員会・LANケーブル・UTPケーブル】

TOP