コンテンツデリバリネットワーク

コンテンツデリバリネットワークとは、ウェブコンテンツをインターネット経由で配信するために最適化されたネットワークのことである。コンテンツ配信網とも呼ばれる。

1990年代以降ネットが一般に普及するにつれ、大手サイトからのリンクやテレビといった他メディアからのリンクにより、通常想定されていない大量のユーザーがサイトへ集中し、反応が遅くなったり、まったく応答不能になることが多くなってきた。このような現象に対処する場合、サーバを一ヶ所だけに置くのではなく、地理的・バックボーン的に分散させるのが効果的である。同一のコンテンツを多くのサーバでミラーする手段としては、単純なDNSラウンドロビンから、P2P、地理情報を加味した複雑な配信技術までさまざまなものがあり、研究、実用化がなされている。

CDNはある意味インターネットにおけるエコシステムであり、CDN事業者が提供する分散されたエッジサーバより配信を行う事で、インターネットサービスプロバイダが相互接続提供するインターネット上バックボーンに不要なコンテンツトラフィックを流入させず、同時に表示高速化が得られると言う効果が期待される。

CDNを用いることにより、ウェブのみならず、大容量アプリケーション、音楽、動画の配信やオンラインゲームといったブロードバンドのコンテンツを配信することが安定かつ低コストで行えるようになる。そのためビジネス分野において注目されている。

近年ではCDNは広義の配信効率化サービスとして広がりを見せており、動画配信、ソフトウェアダウンロード、WEBサイトへのアクセス高速化・分散・負荷軽減を始め、構成上DDoS攻撃などのボリューム攻撃への高耐性を持ち合わせている点で、セキュリティ分野にまで活用の幅を広げている

1. よく知られたサービス
-------------

以下の他に自社専用のCDNを構築する企業も存在する。

1.1. 商用
-------

米国系
Akamai CDN
Amazon CloudFront
Cloudflare CDN
Edgio Delivery
Google Cloud CDN
Lumen Technologies  CDN
Fastly CDN
F5 Distributed Cloud CDN
StackPath CDN - CDNより撤退予定
IBM Cloud CDN
Microsoft Azure Content Delivery Network
CDN77
欧州系
Gcore CDN
AdvancedHosters Content Delivery Network 
i3D.net Content Delivery Network 
Datacamp CDN77
国内系
Accelia DuraSite-CDN
IIJ GIOコンテンツアクセラレーションサービス
Jストリーム CDNext
JOCDN
さくらインターネット ウェブアクセラレータ
レッドボックス エッジキャッシュ
中国系
Alibaba Cloud CDN
Tencent Cloud Content Delivery Network 
Huawei Cloud Content Delivery Network 
BytePlus CDN
Zenlayer Content Delivery Network Solutions
韓国系
NAVER Cloud Platform CDN
その他
CDNetworks

1.2. 商用
-------

BitTorrent

1.3. 学術研究用
----------

Coral Content Distribution Network - ニューヨーク大学によるオープンソース実装
FCAN / TENBIN - DNS分散技術の ja-Latn は Ring Server Projectで用いられている

2. 日本におけるCDN
------------

以下の帯域にはCDN以外のサービスも含む。



3. コンテンツデリバリネットワークの技術
--------------------------

3.1. 概要
-------

CDNの配信サーバ拠点は通常、広範囲かつ複数の場所に展開され、多くの場合、複数のインターネットバックボーンを介して展開されている。利点として、自社保有サーバの負荷軽減・接続回線帯域幅コストの削減、ページの読み込み時間の改善、またはコンテンツのグローバルな可用性の向上が含まれる。 CDNを構成するノードとサーバーの数はアーキテクチャによって異なるが、場合によっては数千のノード、エッジサーバと呼ばれるサーバー台数としても数万に至るケースがある。

コンテンツのリクエストは通常、分散されたDNSのCNAME解決からユーザ最寄りの設備IPを返却するアルゴリズムを経て最適なノードにリクエストが送信される。 接続元ユーザ最寄りのノード・POPを判定する際には次のフローにてDNS解決での処理が行われる。

URLを入力した際にユーザDNSにて当該DNS内容を解決リクエストする
意図的に記述されたCNAME先DNSに再接続される
CDN事業者のDNSシステム内でネットワーク上最短経路情報やエッジサーバのパフォーマンス状況などのアルゴリズムより最適な拠点のIPが返却される
ここで最終的にユーザから返却されたIPに接続リクエスト送信接続元ユーザから最寄りノード・エッジサーバへの判定アルゴリズムとしては各社様々なメトリクスを使用しているが、一般的にはユーザが接続しているISP設備へのネットワーク上PING結果や、物理的なエッジサーバの負荷指標などをスコア化しているケースが多い。

3.2. CDNにおける負荷分散の仕組み
--------------------

CDNはコンテンツ配信を最適化するように設計された技術を採用し活用する事により、エッジサーバへのキャッシュによるサーバー負荷分散、キャッシュ出来ないコンテンツの透過ルーティング等の結果によりWebサイトへの可用性向上が可能になっている。

各ユーザへのサーバー負荷分散は、先述したエニーキャストDNS 、CNAME解決によるサービスベース及び、その後のノード内機器ベース分散を含む1つ以上の手法を使用して、複数のユーザー間でトラフィックを共有している。スイッチには単一の仮想IPアドレスが割り当てられており、スイッチに到着するトラフィックは、配下に接続されている実際のエッジサーバーの1つに転送される。これには、万が一障害が発生した場合エッジサーバーの負荷を再分散し、サーバーのヘルスチェックを提供することで、負荷のバランスを取り、仮想的な総容量を増やし、スケーラビリティを向上させ、信頼性を高めるという利点がある。

3.3. コンテンツキャッシュと透過
------------------

コンテンツキャッシュは、要求されたコンテンツに対する需要が最も高いエッジサーバーを中心に人気のあるコンテンツを保存する。これらの共有ネットワークアプライアンスは、オリジンサーバと呼ばれる配信元サーバ設備の帯域幅の要件、サーバーの負荷を減らし、キャッシュされているコンテンツのクライアント応答時間を改善することが可能である。 コンテンツキャッシュは、ユーザーからの要求またはコンテンツサーバーから配布されたプリロードされたコンテンツに基づいて作成される。

CDNでは主に更新の少ない静的コンテンツ、及び都度ユーザ毎でのWEBサーバ側でのHTML生成が必要な動的コンテンツに2分されるが、静的コンテンツはサイト内容量の大部分を占めるケースが多くキャッシュをする事により、WEBサーバのリソースを動的コンテンツ生成に振り分ける事ができる。またネットワーク上ピアの良い箇所にCDN設備は設置されている事が多いため、結果としてサイト全体の表示高速化に繋がるケースが考えられる。

4. CDNのトレンド
-----------

4.1. 電気通信事業者によるCDNの出現
---------------------

ストリーミングビデオなどトラフィックの急速な成長により、この需要に応え十分に質の高いユーザエクスペリエンスを提供することで加入者を維持するために、昨今インターネットプロバイダーは多額の設備投資を行っている。

膨大な接続要求やダウンロードに対応するために、通信事業者は、ネットワークバックボーンへの不要なコンテンツトラフィックを軽減し、通信インフラへの投資を削減する手段として、独自のコンテンツ配信ネットワークを立ち上げ始めている。

4.1.1. 利点
---------

通信キャリアが提供するCDNは、コンテンツが送信されるネットワークやバックボーンを所有しているため、従来のCDNよりも優れているとされている。

ラストマイルやバックボーンの観点からインターネット接続上効率の良い拠点にキャッシュできるため、エンドユーザーのより近くからコンテンツを配信できる。このディープキャッシングによりコンテンツが一般的なインターネット上を移動する距離が最小限に抑えられ、より高速かつ確実に配信する事が可能になる。

また、従来型CDN事業者は接続回線をリース調達し、各種オペレーションの費用マージンを独自のコストモデルに組み込む必要があるため、電気通信事業者によるCDNにはコスト上の利点も考慮される。

さらに、CDN利用者によって実行されるコンテンツ管理操作やユーザの利用動向によっては、とある限定された地域や時間帯での利用率が大幅に変化する場合があり、各回線や設備リソースをリース契約している一般的な従来型CDN提供事業者にとっては設備マネジメントに多くの課題をもたらす。対照的にTelco CDN事業者はリソースの使用率をより適切に制御できるため、サービスとユーザエクスペリエンスの品質向上が期待できる。

4.2. 単一障害点問題
------------

一般にCDNを利用する場合は、単一のCDN業者を利用することになる場合が多く、当該CDNに何らかの障害が発生した場合にはそこが単一障害点となる問題がある。一例として、2021年6月に発生したFastlyの障害では、Amazon.com/eBay/Spotify/PayPalなどの世界的大企業も障害に巻き込まれており、一説には被害総額は1,500億円を上回るとも言われた。

耐障害性を確保するために複数のCDN業者を並行利用する「マルチCDN」と呼ばれる手法もあるが、コストやセキュリティ等の面で問題があるため、実際には「マルチCDN」の利用は現実的ではないという意見もある。また、世界的なCDN市場はアカマイ・Cloudflare・Fastlyの3社による寡占が進んでおり、そもそも選択肢が限られるという指摘もされている。

4.3. エッジコンピューティングへの活用
---------------------

IoTデバイスの増加により、データセンターやクラウド上で処理される大量のデータが生成され、クラウド側ネットワーク帯域幅の要件が限界に達しているケースが少なくない。IoTデバイスは常にクラウド側とのリアルタイム性を要求されるデータ通信が発生するため、コンテンツデリバリネットワークを構築してデータとサービスのプロビジョニングを分散し、エンドユーザーとの物理的な近接性を持つする必要がある。

従来CDN提供用途のみであったエッジサーバを、仮想化サーバとしてユーザに開放しユーザが自由にアプリケーションを配置してエッジコンピューティングとして利用できるサービスが広がっている。

5. 国内CDNシェア動向
-------------

近年の、日本国内CDNのシェアは、CloudFront、Cloudflare、Akamai Technologiesの3サービスによって、大半のシェアを占めている。



6. 脚注
-----

7. 関連項目
-------

分散コンピューティング