エッジ キャッシングによるメディア配信

発行日: 2009 年 3 月 18 日 (作業者: chriskno (英語))

更新日: 2009 年 5 月 12 日 (作業者: chriskno (英語))

エッジ キャッシング

エッジ キャッシングとは、キャッシュ サーバーを使用してコンテンツをエンド ユーザーにより近い場所に保存しておくことを言います。たとえば、人気のある Web サイトを訪れて、静的コンテンツをダウンロードしてキャッシュすると、後続ユーザーに対しては、キャッシュが期限切れになるまでキャッシュ サーバーからそのコンテンツが直接配信されます。このエッジ キャッシュが重要な理由について、以下で説明します。

たとえば、キャッシングを世界各地で新聞を発行する新聞社の業務として考えてみます。印刷を 1 か所で行うとすると、各購読者への発送コストによって利益が大きく減ります。配達に時間がかかり、購読を解約する顧客が出てくる可能性もあります。実際のところ、国際的な新聞のほとんどは 1 つのマスター コピーを世界各地の印刷所に送り、各地で増刷して配達するという方法をとっています。印刷所ではおそらく毎日何紙もの印刷を請け負い、フル稼働で利益を上げています。これを Web に置き換えると、キャッシュ サーバーはこのような地域の印刷所として、新聞 (Web コンテンツ) を大手発行元 (コンテンツ提供元) から多くのエンド ユーザーに送り届ける役割を果たします。

インターネットのコンテンツ提供元では、さまざまな方法で配信モデルにエッジ キャッシュを追加できます。多くの方法では、コンテンツ配信ネットワーク (CDN) によって、コンテンツ提供元とエンド ユーザーの間のデータ処理がすべて行われます。このとき、配信データの量に応じて料金が発生します。地理的に分散しているエンタープライズでは、独自のエンタープライズ CDN (eCDN) を構築している場合もよくあります。その主な目的は、ネットワークの混雑を解消し WAN リンク全体にかかるコストを削減することです。

メディアに関する以前からの課題

エッジ キャッシュという考え方は、Web ページやその他の HTTP 配信コンテンツに対しては優れています。しかし、メディアの場合、特に従来のストリーミング方式で配信されるライブ イベントの場合は、別の新しい課題が生まれます。

規模:  ライブ イベントの場合は特に、メディアは比較的少数の専用ストリーミング サーバー (通常十数個の HTTP エッジ キャッシュにつき 1 台) から非標準的なプロトコルを使って配信されるのが普通です。大きなイベントでは、ストリーミング サーバーの特別な準備が必要になり、それでも不十分なケースが増えているのが現状です (詳細については、「インターネットが死んだ日 (英語)」をお読みください)。

コスト:  配信されるバイト サイズで言うと、オーディオ/ビデオ コンテンツは新聞というよりも 26 巻ものの百科事典に似ています。そのような単位のスループットをサポートしようとすると、ハードウェアとネットワーク容量の要件はかなり高くなります。

ユーザー エクスペリエンス:  前に挙げた課題を解決しようとすると、バッファー、再生品質の劣化、帯域幅の上限などで、ユーザー エクスペリエンスが貧弱になる可能性があります。

IIS で提供される機能

Windows Server 2008 の一部である IIS 7.0 は、まったく新しい拡張可能なアーキテクチャを基盤としており、リッチな Web エクスペリエンスを提供する強力かつ柔軟性の高いプラットフォームとなります。このエクスペリエンスには、次のものが含まれます。

メディア:  従来のストリーミングとは異なり、IIS Media Services のねらいは、標準 HTTP を使用してオーディオ/ビデオを配信するための画期的な方法を提供することです。この良い例として挙げられるのが、スムーズ ストリーミングと Live Smooth Streaming の 2 つです。これらの方式では、各エンド ユーザー固有のネットワークとビデオ レンダリングの能力に応じてビデオを配信し、中断のないリアルな映像を実現します。これらのテクノロジでは標準 HTTP を使用し、ファイル全体のダウンロードやステートフルなストリームといった方法ではなく、小さいキャッシュ可能なフラグメント単位でコンテンツを配信します。つまり、IIS エッジ キャッシュとそのダウンストリーム キャッシュでは、新しい要求を受け取ったときに同じフラグメントを何度も再利用でき、サーバーごとに何千ものステートフルなストリーミング セッションを確立する必要がありません。

キャッシュとプロキシ:  Application Request Routing Version 2 for IIS 7.0 (ARRv2) は、HTTP 要求をルーティングするプロキシベースのモジュールで、ディスク単位でのキャッシュ機能があります。このモジュールにより、IIS はキャッシュ階層管理と Cache Array Routing Protocol (CARP) のサポートを備えた真のエッジ キャッシュ サーバーとなります。

課題の解決

IIS Media Services と ARRv2 を組み合わせると、メディアのエッジ キャッシュを行う強力なツールとなります。前に挙げた課題は、IIS によって次のように解決されます。

規模:  すべての HTTP エッジ キャッシュをメディア キャッシュ/プロキシ サーバーとしても使用すると、メディア用の特別な準備を行うことなく、メディア配信の規模は約 10 倍になります。ARR をスムーズ ストリーミングと組み合わせて、エッジでメディア フラグメントをキャッシュし再利用することができます。

コスト:  非標準の HTTP ストリーミング サーバー ネットワークを構築して管理する必要がなくなることは、それだけでもメリットです。HTTP エッジ キャッシュ ネットワークでより大きなライブ イベントを提供することで、さらに収益を増大できます。

ユーザー エクスペリエンス:  10 倍のスケーラビリティと、ローカルの状態に応じた中断のない再生によって、エンド ユーザーには優れたエクスペリエンスが提供されます。また、より多くのユーザーをサポートできるようになります。

まとめ

ARR と IIS Media Services が提供する強力なエッジ キャッシュ ソリューションによって、顧客維持率を高めることができます。IIS の機能の詳細を調べたり、機能を実際に使用してみるには、以下のリンクにアクセスしてください。

関連コンテンツ