あきネット

フリーソフトウェアやオープンソースをはじめ、コンピューターやインターネットに関するTIPSや話題を扱います

北のまちから南のまちへと素敵な何かを届けます。
それは、六花かもしれないし、ナナカマドの実かもしれないし、雪の下キャベツかもしれません。

【初心者向け】CDNってなんなのかって話(今更ながら)

漫画村だとかいうのにまつわる、通信ブロック騒動でも話題になりましたが、


Cloudflare とか Amazon CloudFront とか、CDN はいまどき一般的です。


CDN というのは、 Contents Distribution Network のことです。


前提:プロキシサーバ


素人がことばを見ると全然関係なさそうな気がするでしょうけれど、
まず、プロキシサーバについて説明します。


通常は、サーバとクライアントが直接通信します。
例えばウェブだと、ウェブサーバと閲覧者側(パソコンとか携帯端末とか)が直接データのやり取りをします。


ところが、何らかの理由で、直接データのやり取りが不可能だったり、したくなかったりすることがあります。
例えば、ウェブサーバの処理が重いとか、ネットワークが遅いとか、
セキュリティ上の目的で途中にファイアウォールを挟んでいて直接行けないとかいう場合です。


そこで、途中に、代理するサービスを提供する代理サーバを挟むという発想が出てきます。
「プロキシサーバ」(代理サーバ)です。


ですので、プロキシサーバというのは、
クライアント(利用者)側がウェブブラウザだとかOSだとかに設定して利用するものです。


例えばインターネット接続プロバイダがプロキシサーバを顧客に提供して共用させ、
データをプロキシサーバにキャッシュさせておくと、
同じデータへのアクセスがあったとき、いちいちオリジナルのサーバに問い合わせるんじゃなくて、プロキシサーバのキャッシュを使えば、
上流のネットワークが軽くなるし、クライアント側には応答が早くなります


匿名プロキシ

プロキシサーバには、クライアント側が自分を隠蔽する用途ということもありました。
それで、かつて流行った時期があったのですが、不特定多数に開放されているプロキシサーバというのがインターネット上に存在しました。


自分のプライバシーの懸念で使うという正当な目的の、私みたいな人😃もいましたが、


世の中には、いかがわしい目的で使う人も多数いました。
そういういわゆる「アングラ」(アンダーグラウンド=地下)が流行っていた時代ですね。
例えば、ソフトウェアや音楽データの違法コピーのアップロードやダウンロードとか、アダルトサイトの猥褻データのアップロードや閲覧ですね。
こうした時代があったことを、頭の片隅においておくと、某角川の人のデマ(レッテル貼り)がわかりやすくなります。


リバースプロキシ


さて、ウェブサーバの処理が重い、アクセスが多い人気サイトだ、とかいう理由で、
むしろ
サーバの運営者のほうが、プロキシサーバに負荷を分散させたり、データをキャッシュさせたいと思うことが出てきました。


とりわけ、Wordpress のような、動的な(固定的なファイルがあるのではなく、サーバで処理をして応答する)ウェブサイトが流行りだしてからです。


だって、アクセスのあるたびにいちいちサーバで演算処理をして応答したら、サーバが重いし、遅いですよね。


例えば Wordpress は、データベースの読み書きも発生しますし、表示内容を処理するのにプログラミング言語を用いたりします。ですから、重いです。遅いです。
だからって、ハイパワーなサーバを用意したらコストがかさみますし、超人気サイトはそれでもつらいですよね。


それで、サーバ側のほうで立てるプロキシサーバが、リバースプロキシです。



コンテンツ配信ネットワーク(CDN):高度なリバースプロキシ


CDNは、リバースプロキシ技術のもっと高度なやつだと思ってください。


「ネットワーク」というように、リバースプロキシサーバが複数立っています。
全世界の各地にリバースプロキシサーバを立てて、協調させれば、
全世界のいろいろなところからのアクセスに対して、最寄りのサーバが応答すれば済みます
ネットワーク的に近いリバースプロキシサーバが応答するので、応答が早くなり、
本元のウェブサーバの負荷だけでなく、インターネットの負荷も減ります。


そして、こうしたリバースプロキシネットワークを専門に提供する業者が登場したということです。
それが、Cloudflare だったり、 Amazon Web Services の CloudFront だったりします。


で、カドカワだ

「プロキシサーバ」=「匿名」という用途をイメージしているとなおさらに、
CDNは、サーバ側(運営者)を隠匿するためのものだという偏見が出てきます。


いや、そういう使い方をしている者がいることは否定しませんが、


いずれにせよ、CDNをたとい使っていなくとも、ウェブサーバを業者(プロバイダ)から借りるのが通例で、業者は結局挟まるのですよね。


もうひとつ。
アングラ時代は特にそうでしたが、おそらく今でも FC2 とかはやってきたのだと思いますが、
国外のウェブサーバを使って、法令や行政の規制をかわすというやり口です。
その昔の発想も今ももっているとまた、「海外のCDN使って法規制かわしてやがる、クソっ」という思い込みが出てきます。


しかし、その感覚が偏見になって、
CDNは悪とか、CDNを利用しているサイトはいかがわしいとかいうデマを流布されたら困りますよねえ。


実際、CDNは普通に使っていますから。例えばムラウチも😁


これはまるで、包丁で人を殺せるから、包丁は悪とか、包丁の所有者は殺人犯だとか言っているみたいな、おかしな話です。


けれどほんとに、例えば「ファイル共有ソフトは悪」とかいう偏見(デマ)が未だに流されていますし。
そういや、Winnyの作者はそれで捕まったわけですよね、技術を開発した、道具を造ったから。もうとっくに亡くなってしまいましたが。


実際は、たいがいの道具は、中立、無色なのですよ。包丁にせよ。Cloudflare だろうが、 BitTorrent だろうが。
拳銃とか核兵器とかいうレベル(それ専用)まで行かないと、ね。