プロキシってなんだ。

「プロキシ」ってよく聞くな、と思って調べてみた。proxy=代理という意味で、user PCの代わりにWEBページをとってきてくれるサーバーのことだそう。
イメージとしては、


user PC(要求元) ⇔ プロキシサーバー ⇔ WWWサーバー(要求元)

当然、

user PC(要求元) ⇔ WWWサーバー(要求元)


という直接のやり取りでもかまわない。では、なぜプロキシを使うのか。メリットは以下。


(1)キャッシング…コンテンツ取得の高速化、サーバーやトラフィックの負荷軽減
(2)フィルタリング…コンテンツのデータ加工
(3)通信経路変更…通信の高速化、自宅サーバーでの動作確認
(4)匿名性確保…プライバシーの保護(IPアドレスがもれない)、セキュリティの強化、アクセス制限の回避


大学の学内なんかでプロキシが使われる主な理由は、(3)が大きく関係しているそう。例えば、日本にあるPC(要求元)から日本にあるWEBサーバー(要求先)にアクセスするとき。このとき通信する方法例として、以下の2点があるとする。


(1)この要求元と要求先を、日本にある回線を通して直接やり取りする。
(2)要求元と要求先の間に、アメリカにあるプロキシサーバを中継するようにする。通信は、アメリカ経由。


通常であれば、(1)の方式をとったほうが、物理的に回線距離が短いため通信は早い。しかし、(1)で使用している回線が混雑するときは、大容量のバックボーンに接続されたプロキシを解して混雑回線を回避したほうが通信が早くなる。これが(2)の場合。


大学なんかだと、一気にたくさんの人が同じ回線を使うことになるから、少しでも混雑してない回線を通ったほうがいいんだね。
なにげなーくインターネットを使っていたけど、仕組みってこうなってたんだ。