CDNとは?よく分かる!負荷分散と高速化の仕組み

入門

アクセスの多いWebサイトの閲覧や容量が大きい動画のストリーミング配信、電子書籍のダウンロードなどを行う際に課題となるのが、配信サーバへの負荷分散とコンテンツ配信の高速化です。
最近のWebサイトは動画や音声などの動的コンテンツを利用したリッチコンテンツ化が進み、コンテンツサイズが大きくなることでページ表示や動画再生に時間がかかってしまうサイトが多く見受けられます。また、スマートフォンを使用して誰でも簡単に動画を撮影できるようになってきたこともあり、動画を活用したコンテンツ配信に伴うデータ量の増加が影響し、サーバ負荷が高まるケースが増えてきました。

そのための対策としてCDNを利用している企業が多く見受けられます。読者の皆さんは、CDNがどのようなことをするものなのか詳しくご存じでしょうか?今回はCDNを使用した負荷分散と高速化の仕組みについてご紹介します。

1. CDNとは?基本のキから理解しよう!

CDNとは、Content Delivery Network の頭文字を取った略称です。インターネット上のコンテンツデータを効率的かつ高いパフォーマンスで安定的な配信を実行するために開発された技術や仕組みのことを指します。

CDNを利用しない配信では、オリジンサーバと呼ばれるオリジナルデータを保管しているサーバがコンテンツの配信も担うケースがあります。そのためアクセスが集中し、それがサーバの処理性能を超えるものだった場合にはサーバ内での処理が間に合わず、高負荷による処理遅延やタイムアウトによる処理不可、最悪の場合はオリジンサーバのダウンを引き起こすなど、安定したコンテンツ配信が難しくなってしまう懸念があります。

これに対してCDNを利用した配信では、世界中に張り巡らされた専用のネットワーク上にあり、かつ利用者や端末の近くに設置されたエッジサーバと呼ばれるサーバが配信の担い手となり、アクセスしたユーザーに最適なエッジサーバから配信します。こうして配信負荷を分散することで、効率的かつ安定的に多くのユーザーへコンテンツを配信できるようになるのです。

2. 動画再生開始の待ち時間はユーザー満足度に影響する

なぜCDNが必要なのでしょうか?その理由は、「動画再生開始の待ち時間がユーザー満足度に影響すること」にあります。読者の皆さんも、見たい動画がなかなか再生されないことや視聴中に再生が止まってしまうことがストレスになり、閲覧サイトから離脱した経験をお持ちの方も多いのではないでしょうか。

大手CDNサービス会社Akamaiの独自調査によると、動画再生開始が2秒を超えると視聴者は離脱することが報告されました。また開始時間が1秒増えるごとに約6%の視聴者が動画再生を諦めることも報告されています。

この調査結果から分かるように、数秒の遅延による機会損失は起こると言えます。初めて訪れたサイトで動画再生開始が遅ければユーザーからの満足度は低くなってしまい、かつ再訪する可能性が減少してしまうことは間違いありません。

▼あわせて読みたい「動画再生を快適にする方法」

3. CDNを利用した負荷分散と高速化の仕組み

では具体的に、CDNを利用するとどんな課題を解決できるのでしょうか。CDNを利用する大きなメリットとして、配信サーバへの負荷分散とコンテンツ配信の高速化が実現できることが挙げられます。

アクセス集中と混雑問題を解決

前項の「基本のキ」でもお伝えしましたが、アクセス数の多いサイトの場合、オリジンサーバだけにデータを置いて処理しようとすると、処理能力がアクセス数に追いつかずにパンクしてしまうことが起こり得ます。

また、ニュースなどで自分のサイトやブログなどが取り上げられた際に、一時的に想定以上のデータ通信が発生してしまうことがあります。その結果、サーバの処理性能が追いつかず、サイトがダウンしたという話を聞いたことがある方は多いのではないでしょうか。

アクセス数が増えたこと自体は良いことではあるものの、サービスが停止しては機会損失や信用失墜に繋がります。しかし、突発的なアクセスを予想して備えることは難しいですし、オリジンサーバを大量に用意しておくのはコスト的に見合わないケースも多いでしょう。

そこでCDNを用いれば、このような事態に備えることができます。CDNを利用した配信をすることで、オリジンサーバからエッジサーバにコンテンツの「キャッシュ」と呼ばれる一時的な保存データが作成され、負荷分散が行われることによって効率良くユーザーにコンテンツを届けることができるのです。

距離問題の解決

アクセスしたユーザーとコンテンツが配置されているサーバの物理的な距離が遠ければ遠いほど、データ取得のリクエストにかかる時間は増加します。

例えば、テレビ番組で海外との中継の際にタイムラグが生じている映像をイメージすると分かるように、物理的に距離が離れることによってデータ通信に遅延が発生してしまうのです。

特にデータ量が大きい動画ファイルであれば、再生するまでにデータ取得のローディングが発生しやすいため、視聴せずに離脱してしまうユーザーが増えてしまいます。

CDNを利用することで、そうした問題を解決することができます。世界中に分散配置されたサーバ群の中にコンテンツをキャッシュしておくことで、アクセス元のユーザーに距離の近いサーバからデータを取得し、高速配信を実現させることができるのです。

CDNによる距離問題の解決のためには、ユーザーのアクセス元からなるべく近い場所にCDNサーバを配置しておくことが重要です。

また、サーバの物理的な距離だけではなく、ネットワーク的な距離も遅延の原因となります。

ネットワーク的な距離とは、通信ネットワーク上で通信相手に到達するまでの経路のことを指し、その経路上で経由するホップ数と呼ばれる転送・中継設備の数とほぼ同義とも言えます。例えば中継の都度、次の転送を行うためにそのルーターでの処理が発生しますので、その数が多ければ多いほど処理速度は低下しますし、逆に少なければ少ないほど高速化します。高速化のためにホップ数の少ない最適な経路が選択できることは重要で、それを提供できるのもCDN利用の強みのひとつなのです。

4. CDNの利用により生まれるメリット

ここではCDNの利用により、サービス運営にどのようなメリットが生まれるかを解説します。

サーバ設置・運用の工数が削減できる

アクセス数の多いWebサイトでCDNを利用しない場合、高負荷に耐えられるだけのオリジンサーバを用意しなければいけません。高負荷対策には、オリジンサーバやCDNのエッジサーバと同じ役割を持つキャッシュサーバの複数配備などがあります。仮に高負荷対策のためにサーバを30台配備することになったとしたら、30台分のサーバを確保するのはもちろん、その30台全てに同じファイルが配置される仕組みまで作る手間も発生してしまいます。

これに対してCDNを利用した場合には、大量のサーバを用意する必要がなくなり、運用の工数が削減できます。

サーバ負荷が軽減できる

ECサイトのレコメンド商品のように動的コンテンツを利用したサイトでは、アクセスリクエストの度にデータ処理をする必要があることも多いです。そうするとサーバ負荷が高くなってしまい、表示速度に影響が出る場合があります。

この課題を解決するのにもCDNが有効です。CDNでエッジサーバがキャッシュしておくことで、次回以降のアクセスはエッジサーバがキャッシュされたコンテンツを返すことができます。これにより動的コンテンツの生成負荷を低くすることができ、静的コンテンツのように高速配信が可能になります。

動画配信サービスではCDNが特に有効となる

動画ファイルはテキストや画像データと比べて圧倒的にファイルサイズが大きいため、動画配信とCDN利用は特に相性が良いです。

例えば、ライブ配信で1Mbpsの動画を100人が同時に視聴する場合、100Mbps分のネットワーク回線を予め準備しておかなくてはなりません。仮に100人以上が同時に視聴を行なってしまうと、ネットワーク回線が混雑してしまうことで、それ以降の方がアクセスしてもライブ視聴が出来なくなってしまう事態にも繋がってしまいます。

CDNを利用することでオリジンサーバからエッジサーバにファイルが置かれるため、仮に100人以上の視聴者が訪れた場合でも、難なくスムーズに動画配信を行うことができます。そのため、動画配信ではCDNを利用することが一般的となっているのです。常に最大視聴者数を見込んだネットワーク回線を準備しておくと、多額のコストが発生してしまうことも多く、効率的ではありません。

また、自社でサーバを立ててCDNと繋ぎ動画を配信することも可能ですが、比較的難易度が高く運用コストもそれなりにかかります。そのため、動画配信プラットフォームを利用することをオススメします。動画配信プラットフォームにはCDNがデフォルトで付いているサービスも多いため、システムに詳しくない担当の方でも簡単に運用ができるからです。

インフラの運用に人員や時間を当てることも重要ですが、コンテンツ企画やマーケティングに注力をしたい企業において動画配信プラットフォームが利用されているケースが多いのは、このような理由が挙げられるでしょう。

5. さらにCDN利用でセキュリティ向上も

近年、サイバー攻撃に伴う被害が増加しており、自社が標的となる可能性も無視できなくなってきました。たった一度の攻撃による被害で、企業の存続に関わる一大事に発展してしまうこともあり得ます。

実はセキュリティソフトやSSLを利用するだけではなく、CDNを利用することでもセキュリティ向上に繋がります。

例えば、大量のリクエストや巨大なデータを送り続けることによって、サーバにつなぐネットワークを飽和状態にしてしまい、アクセス遮断を起こすサイバー攻撃があります。

これに対してオリジンサーバで攻撃を受けるよりも、CDNを利用すれば複数ある配信サーバに分散されるため、サービスがストップする可能性を軽減できると言えるでしょう。また、そうしたサイバー攻撃に対しては、異常を検知した通信を遮断する機能を持ったCDNのサービスで対応することも可能となります。

セキュリティに関する企業ニーズの高まりを受けて、セキュリティに関する機能強化やセミナーを行うCDNベンダーも増えているため、興味関心があれば足を運んでみても良いでしょう。

6. CDNは大規模なサイト運営や動画配信の強い味方

今回はCDNを使った配信サーバへの負荷分散とコンテンツ配信の高速化ができるための仕組みをご紹介しました。CDNは現在進行形で進化しており、セキュリティ対策機能を強化しているものや動画配信に最適化されたサービスを提供しているところも増えています。例えば老舗のAkamaiやLimeLightの他に、Amazon、Google、Microsoftといった有名企業も独自のCDNサービスを展開しています。

CDNは大規模サイト運営やファイルサイズの大きい動画配信をしたい方にとって、強い味方になることは間違いありません。利用用途を明確にし、自社サービスにCDNがマッチしていることを確認した上で、ぜひ利用を検討してみてはいかがでしょうか。

▼あわせて読みたい「CDNを利用した動画配信の流れ」

Author
おむらいす

聞き慣れないカタカナやalphabetの専門用語に頭を悩ませながら働く中、ある日突然、ブログ運営を任命された編集長。
運営とあわせて絶賛業界勉強中、かつ業界に詳しくない人にも分かりやすいブログを目指して奮闘中。

2018年=入社。初の動画配信プラットフォーム業界入り。
2019年=少しずつ。専門用語や動画配信にかかわる機能や仕組みを覚え始める。
2020年=なんとか格好がつくようになる。"新米"編集長を卒業する。
2021年=動画配信プラットフォーム業界の人っぽくなる。

入門
ULIZAブログ