Windows Media サーバーと Web サーバーの比較

作成者 :David Nelson

発行日 : 2008 年 5 月 15 日 (作業者 : dmnelson (英語))

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

デジタル メディアのオーディオ/ビデオ ファイルは、Windows Media サーバー (Windows Media サービスを実行しているサーバー) または Web サーバー (インターネット インフォメーション サービス (IIS) を実行しているサーバー) から配信できます。また、ライブ ストリームを Windows Media サーバーから配信できます (Web サーバーからは配信できません)。Windows Media サーバーと Web サーバーは、異なる方法を使用してデジタル メディア コンテンツをクライアントに配信します。クライアントは、デジタル メディア ファイルを Windows Media サーバーからストリーミングするか Web サーバーからダウンロードすることで、これらのファイルをネットワーク経由で受信できます。

高帯域幅ネットワークが普及して、テクノロジの変革が進むにつれて、デジタル メディア コンテンツを配信する手段としての Web サーバーに対する Windows Media サーバーの優位性は薄れてきました。各自のビジネス ニーズに応じて、Windows Media サーバーまたは Web サーバーはどちらも、今日のデジタル メディア コンテンツ配信のための有効な選択肢となり得ます。この記事では、各自の配信環境に適したサーバー タイプを選択するために役立つ情報を提供します。

この記事の内容 :

Windows Media サーバーについて

    ストリーミング

    ネットワーク スループット

Web サーバーについて

    ダウンロード

    IIS 7.0 Media Pack

Windows Media サーバーと Web サーバーの機能の比較

Windows Media サーバーについて

Windows Media サーバーは、オンデマンドとライブのデジタル メディアのストリーミング専用として設計されています。Windows Media サーバーは、Windows Media Player 9 シリーズの ActiveX コントロールや Microsoft Silverlight (英語) ブラウザー プラグインを使用している Web ブラウザーと Windows Media Player (英語) に、幅広い帯域幅を介して高品質なストリーミングを配信します。Windows Media サーバーは、トラフィック量の多い混雑したネットワークや低帯域幅の接続を介して大量のデータをストリーミングするのに特に便利です。ストリーミングで は、クライアント側でデータを正しくレンダリングするために必要な最低限の速度でデータがネットワーク経由で送信されるため、ダウンロードより効率的に帯 域幅が使用されます。これにより、ネットワークに過剰な負荷がかかることが防止されると共に、システムの信頼性が維持されます。

ユーザーは、ストリームに接続するとほぼ同時に、そのストリームの再生を開始できます。エンコード時にストリーミ ング オンデマンド コンテンツにインデックスが設定される場合、ユーザーはプレーヤーのシーク機能 (早送りと巻き戻し) を使用して、ダウンロードが完了する前にストリームの任意の箇所にジャンプできます。ストリーミングでは、ストリーミング データ パケットはクライアント アプリケーションに直接配信されて、レンダリングされた後に自動的に破棄されるため、ユーザーはファイルをハード ディスクに直接ダウンロードする必要はありません。

Windows Media サーバーは、Windows Media オーディオ (WMA)、Windows Media ビデオ (WMV)、MP3 など、限られた数の一般的なデジタル メディア ファイル形式の配信をサポートしています。また、サーバー側プレイリスト内のメディア要素として、または Windows Media Player で表示されるバナー画像として、JPEG ファイルの使用もサポートしています。

ストリーミング

ユーザー データグラム プロトコル (UDP) は、メディアのストリーミング用として推奨されるデータ転送プロトコルです。UDP は高速で軽量なプロトコルであり、再転送機能やデータ速度管理機能を備えていないため、多少のパケットが失われても問題ないリアルタイム オーディオ/ビデオ データの転送用として理想的です。UDP は、インターネット トラフィック用の伝送制御プロトコル (TCP) ベースの HTTP よりネットワーク上での優先度が高いため、オーディオ/ビデオ データのストリーミングはファイルや Web ページの転送より優先され、混雑したネットワーク上でも途切れなく再生できる可能性が高まります。さらに Windows Media サーバーは、UDP Resend というインテリジェントな UDP 再転送方式を使用して、失われたパケットのうちプレーヤーでの再生に間に合うように届くパケットのみを再転送します。これに対して、TCP では失われたパケットが無差別に再転送されます。この高度な再転送機能によって、混雑したネットワークの帯域幅が無駄に消費されることが防止されます。

Windows Media サーバーは、リアルタイム ストリーミング プロトコル (RTSP) と UDP ベースのデータ転送を組み合わせた RTSPU を使用してデジタル メディアをストリーミングすることで、効率的な UDP ベースのストリーミングを実現できます。UDP がサポートされていないネットワークでは、Windows Media サーバーはプロトコル ロールオーバーと 呼ばれるプロセスを使用して、TCP ベースのストリーミングを試行します。このために、最初は RTSP を使用しますが、うまくいかない場合は、ポート 80 経由の Web トラフィックを許可するファイアウォール用の独自バージョンの HTTP を使用します。これにより、企業ユーザーは、ファイアウォールのセキュリティを侵害することなくインターネット コンテンツを表示できるようになり、すべてのネットワーク上のすべてのユーザーがすべてのストリーミング メディア コンテンツにアクセスできることが保証されます。Windows Media サービスによって使用されるストリーミング プロトコルの詳細については、「Comparing HTTP Streaming Protocol with RTSP(英語)」 を参照してください。

ネットワーク スループット

Windows Media サーバーはコンテンツと同じビット レートでデータを送信するため、コンテンツに対する同時クライアント要求を処理するために使用できる残りの帯域幅が通常より多く確保され、接続されたクラ イアントに配信されるオーディオとビデオの品質が高まります。プレーヤーは、ストリームの遅延や途切れが発生した場合に備えて、最初にある程度のデータを バッファーに蓄えておく必要があるため、プレーヤーがストリームを受信してから再生を開始するまでに通常は遅れが生じます。このバッファー内のデータを使 用することで、ネットワークの混雑度が高いときでもメディアを途切れなく再生し続けることが可能になります。データのストリーミングとレンダリングはほぼ 同時に実行されるため、ストリーミングによってライブ コンテンツを配信することもできます。Windows Media サービスには、ネットワーク スループットを最適化するための多くの追加機能が含まれています。ここでは、これらのうち最も重要なインテリジェント ストリーミングおよびファスト ストリーミングという 2 つの機能を説明します。

インテリジェント ストリーミング

オーディオおよびビデオをネットワーク経由でストリーミングするうえで最も難しいのは、変化の激しい環境でユー ザーがコンテンツを途切れなく再生できるようにすることです。バッファー処理は、デジタル メディアのストリーミングに伴う最も大きな問題です。バッファー処理は、クライアントがメモリ (バッファー) 内のデータを使い切ったために、新しいデータが届くまで待機する必要があるときに発生します。着信ストリームのビット レートが現在の使用可能な帯域幅を上回る場合は、クライアントでは必ずデータ不足が生じます。

インターネットでは、帯域幅が予測不能であることは当然のことと捉えられています。どの時点においても、実際の帯 域幅は、絶えず変化しているネットワーク状況とトラフィック量によって決まります。途切れのない再生を実現するために、Windows Media テクノロジーはインテリジェント ストリーミング (英語)を 使用して、使用可能な帯域幅の変化に応じてコンテンツ ストリームのビット レートを調整します。クライアントが初めてストリームに接続すると、インテリジェント ストリーミングでは、クライアントがコンテンツを受信するためのビット レートを現在の帯域幅に最適なレベルに調整します。ストリームの再生中、インテリジェント ストリーミングでは、使用可能な帯域幅が変化するたびにストリーミング コンテンツのビット レートを動的かつシームレスに調整します。

インテリジェント ストリーミングでは、一連の方策を順番に試してストリームのビット レートを変更することで、現在の帯域幅に関係なくストリームがクライアント上で途切れなく再生されるようにします。サーバーとクライアント間の帯域幅が変 化するたびに、サーバーはこれらの変化を検知して最適な方策を採用します。これらの方策は次のとおりです。

1. サーバーとクライアントが現在の使用可能な帯域幅を自動的に確認してから、サーバーはストリームを選択して最適なビット レートで配信します。このためには、コンテンツがマルチビットレート (MBR) ストリームとしてエンコードされる必要があります。

2. 転送時に帯域幅が低下した場合は、サーバーは自動的にその変化を検知して、現在より低いビット レートのストリームに切り替えます。帯域幅が上昇した場合は、サーバーは現在より高いビット レートのストリームに切り替えますが、元のビット レートを上回ることはありません。適切なストリームを選択するプロセスは、ユーザー側には見えません。

3. 現在の帯域幅でビデオのストリーミングをサポートできなくなった場合は、クライアントとサーバーは画質を適 切に下げることでバッファー処理を回避します。このように現在の帯域幅に合わせてビット レートを引き下げる手法は、ストリーム シニングと呼ばれます。サーバーはまずビデオのフレーム レートを引き下げます。それでもビット レートが高すぎる場合は、サーバーはビデオ フレームの送信を停止します。

4. サーバーはビデオ フレームの送信を停止した後に、インテリジェント ストリーミングを使用して途切れのないオーディオ ストリームを維持しようとします。音質が低下し始めた場合は、クライアントはストリームの構成要素を再構築して音質を維持します。

帯域幅が最高レベルのときは、サーバーは 1 つ目の方策を使用します。帯域幅が低下するにつれて、サーバーは上記の各方策を順番に試して、最終的に現在の帯域幅に最適なビット レートが使用されます。

ファスト ストリーミング

ファスト ストリーミング (英語)と は、ユーザーに配信されるストリーミング メディア コンテンツの品質を高めるための Windows Media サービス内の一連の機能を指します。これらの機能は、ストリーミング、ダウンロード、およびキャッシュの組み合わせによって最高のユーザー エクスペリエンスを実現することを可能にします。これらの機能は次のとおりです。

  • ファスト キャッシュ :Windows Media サービスが追加の帯域幅を使用して追加のデータをプレーヤーのバッファーに送信することを可能にして、プレーヤーがネットワーク帯域幅の変化に対処しやすいようにします。

  • ファスト スタート :コンテンツの先頭部分を使用可能な最大の帯域幅でプレーヤーにすばやくダウンロードすることを可能にして、プレーヤーのバッファーに必要な量のデータが格納されるまでの時間と、ストリームの受信を開始するまでのユーザーの待ち時間を短縮します。

  • ファスト リカバリ :前方向エラー訂正を使用してパケットの破損や途切れを大幅に減らすことで、無線ネットワークや衛星ネットワークなどの待ち時間の長いネットワーク接続を介してサーバーから配信されるコンテンツをユーザーが途切れなく再生できるようにします。

  • ファスト リコネクト :ネットワーク状況が原因でブロードキャスト時に切断されたクライアント接続 (エンコーダー、配信サーバー、プレーヤーなど) をサーバーが自動的に回復できるようにします。

  • アドバンスト ファスト スタート :ファスト スタートを拡張した機能であり、バッファーに最小限の量のデータが格納されると同時にプレーヤーがコンテンツの再生を開始できるようにします。これにより、ユーザーがストリームの受信を開始するまでの待ち時間がさらに短縮されます。

Web サーバーについて

Web サーバーの役割は、Web サイトを公開して、要求に応じて Web サイト ページをクライアントに表示することです。クライアントが標準の Web サーバーに対してファイルを要求すると、すべての使用可能なネットワーク帯域幅を使用して、そのデータが可能な限り迅速にクライアントにダウンロードされ ます。Web サーバーが小さいファイルを限られた数のユーザーに同時に配信する場合は、わずかな帯域幅しか必要ありません。しかし、オーディオやビデオのファイル (多くの場合はサイズが大きくなります) の配信や、サイトが処理しなければならない同時クライアント要求の数が増えるにつれて、クライアント要求に迅速に応えるためにより多くの帯域幅が必要にな ります。

帯域幅管理機能があらかじめ組み込まれた Windows Media サーバーは、デジタル メディア コンテンツを多数の同時ユーザーに配信するための理想的な手段です。ただし、高帯域幅ネットワークが普及して、Web サーバー テクノロジーに他の変革がもたらされるにつれて、Web サーバーは以前にも増して、デジタル メディア ファイルを配信するための実用的な選択肢となりつつあります。

ダウンロード

Windows Media サーバーが備えている帯域幅管理機能は、標準の Web サーバーにはありません。クライアントが Web サーバーに対してデジタル メディアを要求すると、Web サーバーは、ネットワークが発揮できる最大の速度でそのコンテンツをクライアントにダウンロードしますが、この際に、配信の品質を監視したり、 Windows Media サーバーのようにビット レートをクライアントに合わせて調整したりすることはありません。クライアントは、そのインターネット キャッシュに必要最小限のデータがダウンロードされると同時にコンテンツの再生を開始できますが (この方式はプログレッシブ ダウンロードと呼ばれます)、帯域幅が制限されたシステムでは、複数のクライアントからの同時要求が発生すると、使用可能なネットワーク帯域幅全体がすぐ に消費されて、クライアントは再生を再開する前にさらなるデータをキャッシュに格納する必要があります。

ダウンロードでは、使用可能な帯域幅がストリーミングよりも非効率的に使用されます。Web サーバーは HTTP を使用してコンテンツを配信します。HTTP は、サーバーとクライアント間の通信用にすべての Web サーバーと Web ブラウザーによって使用される標準の Web プロトコルです。HTTP は、すべてのデータ転送を処理する TCP というデータ転送プロトコルの上で動作します。TCP は、ファイル転送やリモート ログインなどの非リアルタイムの用途に最適化されているため、ネットワーク全体の総合的な安定性と高スループットを保証しながら、データ転送速度を最大限 に高めます。TCP は、すべての失われたパケットを再転送することで信頼性の高いデータ転送を実現しますが、すべての再転送されたパケットが再生に間に合ってクライアントに 届くことを保証できないため、場合によっては帯域幅が無駄に消費されます。

IIS 7.0 Media Pack

IIS 7.0 Media Pack の目的は、インターネット インフォメーション サービス (IIS) 7.0 を実行している Web サーバーに Windows Media サーバーの機能をモジュールの形式で追加することです。ここでは、IIS 7.0 用のメディア モジュールについて説明します。必ず IIS Media Delivery Blog(英語) を随時参照して、追加モジュールの詳細情報を確認してください。追加モジュールは、Web サーバーからのデジタル メディア コンテンツの配信を向上させるために開発されます。

ビット レート調整

Web サーバー システムの全体的な帯域幅制限を懸念している場合は、現在のネットワーク コンピューターを新しいストリーミング配信システムに置き換える代わりに、IIS 7.0 用の Bit Rate Throttling モジュールを使用できます。このモジュールは、Windows Media サービスで使用される帯域幅管理機能とクライアント接続機能の一部を提供します。データの初期バーストをクライアントのキャッシュに送信するようにビット レート調整を構成できます (待ち時間を短縮する Windows Media サービスのファスト スタート機能と似た効果が得られます)。その結果として、クライアント アプリケーションは、プログレッシブ ダウンロードを使用してファイルの再生を開始してから、残りのデータをクライアントにダウンロードするためのビット レートを調整できるようになります。一般に、この調整ビット レートは、ファイルのエンコードされたビット レートより少しだけ高いため、クライアントは調整データをダウンロードすると同時にレンダリングします (ストリーミング方式と似ています)。複数のクライアントが Web サーバーに対してデータを要求した場合、これらのクライアントはデータをすべて同時に消費するのではなく調整されたビット レートで消費します。これにより、追加のクライアント要件を処理するための空き帯域幅が増大します。

使用可能な帯域幅が十分にある標準の Web サーバー ネットワークでは、1 つのファイル全体をユーザーのインターネット キャッシュに数秒間でダウンロードできますが (そのファイルがあまり大きくない場合)、ユーザーがダウンロードしたファイルの再生をしばらくしてから停止した場合は、コンテンツ プロバイダーは使用されていない帯域幅に関するコストを負担することになりかねません。クライアントがレンダリングするために必要な最低限のコンテンツを 受信するようにコンテンツのダウンロードのレートを調整することで、コンテンツ プロバイダーは、ダウンロードされたファイルの未再生部分のために浪費された帯域幅に関するコストを負担せずに済みます。

ビット レート調整モジュールの詳細設定を使用すると、累積的なネットワーク スループットを Web サーバーからより細かく制御できます。たとえば、すべてのデジタル メディア ファイルに適用される (これらのファイルのエンコードされたビット レートにかかわらず) グローバルな既定調整レートと最大調整レートを指定したり、使用可能な帯域幅が接続されたクライアントに動的に割り当てられるように、1 つのサイトの合計ビット レート スループット制限値を指定したりできます。ビット レート調整モジュールは、データ ファイル タイプを指定されたビット レートで調整する、便利な 2 次機能も提供します。

詳細については、「Readme for IIS7 Media Pack - Bit Rate Throttling Module (英語)」 を参照してください。

Web プレイリスト

IIS 7.0 用の新しい Web Playlist モジュールは、Windows Media サービスのサーバー側プレイリストによって提供される機能の一部を提供します。このモジュールを使用すると、クライアント コンピューター上のコンテンツ アイテムの再生が Web サーバーによって制御されるような形で、メディア コンテンツ アイテムのリストを作成できます。たとえば、この機能を使用すると、メディア コンテンツ アイテムのリストに広告を挿入して、ユーザーがこれらの広告を再生しないとリスト内の次のアイテムに進めないようにできます。プレイリスト内の個別のメ ディア アイテムに新たな制約を追加できます。これらの制約として、アイテム内のシークを防止する機能、リストの次のアイテムにスキップすること (または現在再生しているアイテムが指定されたパーセンテージだけ再生された後にのみ前方へのスキップを許可すること) を防止する機能、前に再生したアイテムの先頭にスキップして戻ることを防止する機能などが挙げられます。

広告収入が得られるように現在の Web サーバー ネットワーク コンピューターを新しいストリーミング配信システムに置き換える代わりに、このモジュールを使用すると、ローカル コンピューターまたはリモート広告サーバーから、プリロール広告、スポット広告、およびトレーラー広告を Web サーバーからクライアントに配信されるプレイリストに挿入できます。

Web プレイリスト モジュールの主な機能は次のとおりです。

  • すべてのデジタル メディア ファイル タイプをサポート。このモジュールを使用すると、Web サーバーからダウンロードできるどのようなデジタル メディア ファイル タイプでも Web プレイリストに追加できます。

  • ほとんどのメディア プレーヤーに対応。Web サーバー上の Web プレイリスト (.isx 拡張子を持つファイル) は、HTTP 応答内のクライアント側プレイリスト (.asx 拡張子を持つファイル) としてプレーヤーに配信されます。.asx ファイルの再生をサポートしているどのクライアント アプリケーション (Silverlight (英語) ブラウザー プラグイン、Windows Media Player (英語)、Adobe Flash Player など) も、コンテンツをレンダリングできます。

  • セッションの設定。プレイリストに接続できるクライアントの最大数を指定したり、ユーザーが次のプレイリスト アイテムにスキップする前に視聴する必要のあるコンテンツの量を指定したりできます。

  • セッションの永続性。ASP.NET のセッションの永続性を使用して、ユーザー別にカスタマイズされた広告やコンテンツを配信したり、プレイリストで参照されているコンテンツを再生できる期間を指定したりできます。

  • アセットの保護。ユーザー資格情報によって保護されているメディア アイテムをプレイリストに追加できます。また、メディア アイテムがプレイリスト内のトークン化された URL によって参照されるため、ユーザーのメディア アセットが無許可アクセスから保護されます。

  • クライアント側プレイリストのインポート。クライアント側プレイリストを Web プレイリストにすばやく変換できます。

詳細については、「Readme for IIS7 Media Pack - Web Playlists Module(英語)」 を参照してください。

Windows Media サーバーと Web サーバーの機能の比較

Windows Media サーバーは、Windows Media ベース コンテンツのストリーミングと管理の特別な要件を処理するように設計されています。しかし、Web サーバーは、特に IIS 7.0 Media Pack 用のモジュールをインストールすることで、デジタル メディア コンテンツを配信するための実用的な選択肢となり得ます。これらのモジュールをインストールすると、Web サーバーに Windows Media サーバーの機能が追加されます。

Windows Media サービス 2008 と IIS 7.0 は、この記事で説明していない追加機能を備えていますが、これらの追加機能はデジタル メディアを配信する手段の選択に影響を与える可能性があります。たとえば、Windows Media サービスは、企業ネットワーク上のコンテンツのマルチキャスト配信用に使用できる唯一のサーバー役割です。各自のビジネス モデルを促進するために展開するサーバー役割を最終決定する前に、次の表で各サーバー役割の機能を確認してください。

Windows Server 2008 の機能 Windows Media サービス 2008 インターネット インフォメーション サービス 7.0

Windows Media ベース コンテンツ (英語)の配信用に最適化

X

X

幅広いデジタル メディア ファイル形式を配信

 

X

ほとんどのファイアウォール (英語)を介してコンテンツを配信

X

X

ライブ コンテンツをブロードキャスト

X

 

マルチキャスト ストリーミングを使用してコンテンツを配信

X

 

オンデマンド ファイルのトリック モード再生をサポート

X

 

デジタル著作権管理 (英語)で保護されているコンテンツを配信

X

X

ファスト ストリーミング (英語)を使用してコンテンツを配信

X

1

インテリジェント ストリーミング (英語)を使用してコンテンツを配信

X

 

キャッシュ/プロキシ (英語)配信シナリオをサポート

X

 

リッチ クライアントのログ記録 (英語)をサポート

X

 

クロスプラットフォームの Silverlight(英語) クライアントにコンテンツを配信

X

X

サーバーによって管理されるプレイリストで参照されているコンテンツを配信

X

2

高度なパフォーマンス境界制限プロパティを提供

X

3

Server Core インストール環境に対応

X

X

Windows Web Server 2008 で使用可能

X

X

1  IIS 7.0 Media Pack 用のビット レート調整モジュールには、Windows Media サービスのファスト キャッシュやファスト スタートに似たファスト ストリーミング機能が含まれています。このモジュールには、Windows Media サービスのファスト ストリーミング機能であるファスト リコネクト、ファスト リカバリ、およびアドバンスト ファスト スタートは含まれていません。詳細については、「Readme for IIS7 Media Pack – Bit Rate Throttling Module(英語)」 を参照してください。

2  IIS 7.0 Media Pack 用の Web プレイリスト モジュールは、Windows Media サービスのサーバー側プレイリストによって提供される機能の一部を提供します。詳細については、「Readme for IIS7 Media Pack - Web Playlists Module(英語)」 を参照してください。

3  IIS 7.0 用のビット レート調整モジュールの詳細設定を使用すると、Web サーバーからの累積的なネットワーク スループットを制御できます。たとえば、使用可能な帯域幅が接続されたクライアントに動的に割り当てられるように、1 つのサイトの合計ビット レート スループット制限値を指定できます。詳細については、「Readme for IIS7 Media Pack – Bit Rate Throttling Module(英語)」 を参照してください。

注意) 本記事は IIS7.0 と IIS Media Services 1.0 について記載しており、IIS Media Services 2.0以降で搭載される Smooth Streaming、Live Smooth Streaming、Advanced Logging の各モジュールの登場で上記の表における機能差異は変わっていますのでご注意ください。