Silverlight をインストールするには、ここをクリックします*
Japan変更|すべてのMicrosoft のサイト
Windows Media Player
|各国の Windows Media

Web サーバー対ストリーミング サーバー

ストリーミング方法 : Web サーバー対ストリーミング サーバー

概要
Web を通じてオーディオおよびビデオのコンテンツをストリーミング方式で提供する主要な方法が 2 つあります。1 番目の方法では、標準の Web サーバーを使用して、オーディオおよびビデオのデータをメディア プレーヤーに送ります。2 番目の方法では、オーディオ / ビデオのストリーミングのタスクに特化した別立てのストリーミング メディア サーバーを使用します。Web サーバーを使用したストリーミングは暫定的なソリューションとしては有効ですが、ストリーミング サーバーを使用した方が効率が高く柔軟性に富みユーザーの使い勝手もよいことを、このホワイト ペーパーでは説明します。

はじめに
最近まで、Web 上でのオーディオおよびビデオは主としてダウンロード再生のためのテクノロジでした。最初にメディア ファイル全体をダウンロードしてからでないと、再生することができませんでした。言うなれば、牛乳をコップに注いでから飲むようなものです。メディア ファイルは通常は非常に大きいので、ダウンロードするのに長時間かかります。そのため、Web 上のコンテンツは 30 秒程度のクリップという短いものだけでした。それよりも短いものも少なくありません。その程度のファイルでも、ダウンロードするのに 20 分以上かかることがありました。言い換えると、牛乳をコップに注ぐのに長い時間がかかりますが、それでもその量は喉の渇きを癒すのに全然足りませんでした。

ストリーミング方式でオーディオおよびビデオのファイルを処理することは、牛乳パックから直接牛乳を飲むようなものです。ストリーミング メディア ファイルの再生は、データの送信が開始されると、ファイル全体がダウンロードされ終わるのを待たずに、すぐに開始されます。ファイルの再生が始まるまで数秒待つ以外には、見ることを開始するのを待つ必要はありません。ファイルの再生時間が 30 秒でも 30 分でも、それに変わりはありません。

インターネット上でのオーディオおよびビデオのストリーミングが普及するにつれて、コンテンツをストリーミングする主要な方法が 2 つ登場しました。1 番目の方法は Web サーバー方式です。この方式では、標準の Web サーバーを使用して、データをクライアントに供給します。2 番目の方法はストリーミング メディア サーバー方式です。この方式では、専用のストリーミング サーバーを使用して、データをクライアントに供給します。どちらの方法にも利点があります。それについてこの後で説明しますが、その前にそれぞれの方法の仕組みをみておきましょう。



2 つの方法の仕組み (1) : Web サーバーを用いたストリーミング

ポスティングとホスティング
Web サーバーを用いてストリーミング メディア コンテンツを配信する方法は、実際にはダウンロード再生するモデルを少し発展させたものにすぎません。圧縮されていないオーディオおよびビデオをまず最初に、28.8 キロビット / 秒 (Kbps) モデムのような特定のネットワーク帯域幅で送信するように圧縮して、単一の「メディア ファイル」を作成します。そして、このメディア ファイルを標準の Web サーバー上に置きます。次に、そのメディア ファイルの URL を記した Web ページを作成して、同じ Web サーバー上に置きます。この Web ページを起動すると、クライアント サイドのプレーヤーが始動して、メディア ファイルのダウンロードが開始されます。ここまでは、ダウンロード再生の場合と、動きはまったく同じです。 違いはクライアントがどのように動作するかにあります。

データの配信
ダウンロード再生のクライアントとは異なり、ストリーミング クライアントはバッファリングのためにほんの数秒待った後で、ダウンロードと並行してオーディオまたはビデオ再生を開始します。このバッファリングとは、再生を開始する前にメディア ファイルの最初の部分を蓄積するプロセスです。この少量の情報の蓄積ないしバッファを用いることにより、中断せずにメディアの再生を続けることが可能になります。ネットワークが混雑しているときでもそれは可能です。このデータ配信方法を用いる場合、クライアントは、ネットワークおよびクライアントで可能なかぎり、圧縮されているストリームのビット レート パラメータにかかわらず、Web サーバーと同じ早さでデータを読み出します。一部のメディア ファイル フォーマットだけがこの種の「プログレッシブ再生」をサポートしています。そのうちでマイクロソフトの ASF (Advanced Streaming Format) が最も普及しています。

Web サーバー ストリーミングでは HTTP (Hyper Text Transfer Protocol) を使用します。これは、サーバーとクライアントとの間の通信のために、すべての Web サーバー (たとえば、Microsoft® Internet Information Server) および Web ブラウザ (たとえば、Microsoft Internet Explorer) で使用されている、標準の Web プロトコルです。HTTP は、すべてのデータ伝送を処理する伝送制御プロトコル (TCP) の上で作動します。TCP はファイル転送やリモート ログインのような非リアルタイム アプリケーション用に最適化されています。その目標は、ネットワーク全体の安定性と高いスループットを保証しながら、データ転送レートを最大化することです。この目標を達成するために、スロー スタートというアルゴリズムを使用して、TCP は最初に遅い転送レートでデータを送信し、宛先からパケットが失われたと報告がくるまで徐々にレートを上げていき、報告を受けると TCP は帯域幅の限界に達するかまたはネットワークの混雑に遭遇したものと解釈して、元に戻って低いデータレートでデータを送信するようにします。それからまた徐々にレートを上げるというプロセスを繰り返します。TCP は失われたパケットを再送信して、データ転送の信頼性を維持するよう努めます。しかし、再送信したすべてのパケットがメディア ストリーム中で再生するのに間に合うようにクライアントに到達することを保証することはできません。

Back to the top of this page トップに戻る



2 つの方法の仕組み (2) : ストリーミング メディア サーバーを用いたストリーミング

ポスティングとホスティング
ストリーミング メディア サーバー方式では、最初のステップは Web サーバー方式と似ています。ただ、メディア ファイルを圧縮したファイルを Web サーバーの代わりに専用のストリーミング メディア サーバー (たとえば、Microsoft Windows Media サービス) にコピーする点が異なります。それから、そのメディア ファイルを参照する Web ページが Web サーバー上に置かれます。Windows Media サービスと Web サーバーを同じコンピュータ上で稼働させることができます。

データの配信
ストリーミング メディア サーバーによるデータ送付の残りのプロセスは Web サーバー方式とは相当に異なります。Web サーバー方式のストリーミングで採用されている、一方的にデータを送りつける方法とは対照的に、データは双方向的かつ知能的にクライアントに送信されます。この方式では、圧縮されたオーディオおよびビデオのストリームにぴったり合うデータレートで、コンテンツが転送されます。データ受け渡しプロセスの間、サーバーとクライアントは密接に連絡を取り合い、クライアントからのいかなるフィードバックにもストリーミング メディア サーバーは応答することができます。

ストリーミング メディア サーバーは、Web サーバーが使用する HTTP / TCP プロトコルを使用することができますが、ユーザー データグラム プロトコル (UDP) のような特殊化されているプロトコルを使用することもできます。 それにより、ストリーミングが大幅に向上します。TCP とは異なり、UDP は再送信やデータレート管理の機能を外して高速化と軽量化を図ったなプロトコルです。したがって、多少のパケットの損失には耐えられる、リアルタイムのオーディオおよびビデオのデータの転送にとって、UDP は理想的なプロトコルです。さらに利点があります。TCP プロトコルに暗黙的に組み込まれているバックオフ ポリシーのおかげで、UDP トラフィックはインターネット上で TCP トラフィックよりも優先度が高くなっています。また、TCP では盲目的な再送信方式が取られているのに対して、マイクロソフトの Windows Media サービスのようなストリーミング メディア サーバーでは UDP の上に知能的な再送信方式を重ねています。Windows Media サービスの UDP再送信 機能では、失われたパケットを再送信する際に、クライアント サイドで再生するのに間に合うものだけに絞るようにしています。

比較分析
Web サーバー方式のソリューションとストリーミング メディア サーバー方式のソリューションとの違いは、導入のしやすさ、管理のしやすさ、およびユーザーによる使い勝手に明確に現れてきます。このホワイト ペーパーでは以降、汎用の Web サーバーとマイクロソフトのストリーミング メディア サーバーである Windows NT Server Windows Media サービス (以降 Windows Media サーバーと呼びます) との間で比較を行います。

Back to the top of this page トップに戻る



Web サーバーを用いたストリーミング : 利点
ストリーミング メディア サーバーではなく Web サーバーを用いてストリーミングを行う主な利点は、実際には 1 つしかありません。それは既存のインフラストラクチャを利用することです。Web サーバー方式では標準の Web サーバーしか使用しません。それは既にどこの組織にも存在すると思われるので、新しいソフトウェア インフラストラクチャをインストールすることも管理することも必要ありません。他方、Windows Media サーバー方式は、追加のサーバー ソフトウェアをインストールして管理するために、コンテンツ プロデューサとシステム管理スタッフの両方またはどちらか一方を必要とします。そのために、複雑度が高いがいっそう強力でもある Windows Media サーバー環境を学習して管理するために、より一層のトレーニングおよびスタッフに対するコストがかかります。

ここで注意すべきことがあります。それは、Web サーバーを用いてストリーミングを行うと、既存の Web サーバー インフラストラクチャにかかる負荷が増大し、クライアントの要求にサービスを提供するためには追加の Web サーバー ハードウェアが必要となることが多々あることです。ハードウェアのコストだけに基づいて、専用のストリーミング メディア サーバーを抑えて Web サーバーによるストリーミングを選択することは、財務的な節減につながりません。

Windows Media サーバー を用いたストリーミング : 利点
Windows Media サーバーは、多数の小さな HTML ファイルやイメージ ファイルではなく、ライブまたはオンデマンドのストリーミング メディアを処理するように特別に設計されています。したがって、Windows Media サーバーには、下記のように、標準の Web サーバーよりも多くの利点があります。
  1. ネットワークのスループット効率が高い : Windows Media サーバー ストリーミングの利点を 1 つ既に述べました。それは、ライブおよびオンデマンドのストリーミング用に最適化され特殊化したプロトコルである UDP が使用可能なことです。Web サーバー ストリーミングで使用する TCP ベースの転送は、最低速のネットワーク リンク (たとえば 28.8 Kbps のモデム リンク) をパケットの損失が発生するまで繰り返し加速するように設計されています。これは以下の点で帯域幅を浪費することになります。
    (1) 失われたパケットを補填するためにデータを再送信すること
    (2) ネットワーク接続でサポートされているスループットを再び推測するためにネットワーク リンクを過少利用すること

    UDP プロトコルを使用すると、広い帯域幅を利用してクライアントにデータを送ることができます (その結果ビデオの品質が向上します)。サーバーとクライアントとの間の接続性が同じであり、インターネットの混雑ぐあいが同じであると想定しても、そういう結果になります。特殊化したストリーミング メディア サーバーを利用しているため、圧縮されたメディア ファイルのヘッダに基づいて、データが消費される速度を知ることができます。Windows Media サーバーはこの要求されたビット レートでのみクライアント (Windows® Media Player) にデータを送信します。ネットワーク リンクのボトルネックによりデータが失われることはありません。したがって、ネットワークのスループットが高くなり、クライアントにとってオーディオおよびビデオの品質が高まるという結果が得られます。

  2. オーディオおよびビデオの品質が向上 : ネットワーク スループットが高いことは、Windows Media サーバーによるオーディオおよびビデオの品質が優れていることの理由の 1 つにすぎません。他にもいくつか理由がありますがそのうちの 2 つを下に例示します。

    • 再生中も Windows Media サーバー と Windows Media Player は連絡を保っています。したがって、クライアントからのフィードバックにサーバーは動的に応答することができます。ネットワークが混雑しているために、(28.8 Kbps ではなく) 22 Kbps でしかデータがクライアントに到達しない場合、サーバーは対応措置を講ずることができます。具体的には、オーディオの品質は維持しながら、ビデオ ストリームのフレーム レートを少し下げて、利用可能な 22 Kbps を超えないようにします。Web サーバー方式ではこのような措置を取ることはできません。Web サーバー方式では、クライアントからのフィードバックがなく、オーディオの優先度をビデオよりも動的に高めることもできません。したがって、Web サーバーから送られてくるオーディオ / ビデオをクライアントは受け取り終わってから前に進むことになります。その結果、次のバッファリングが終わるまで再生が待たされるという不愉快な現象が発生します。初期のストリーミング メディア製品にはよくあったことです。それとは対照的に、Windows Media サーバーからは連続的に円滑なストリームが得られます。ネットワークが混雑しているときでも、ビデオのフレーム レートが変わったことをほとんど感じることはありません。
    • Windows Media サーバーを用いたストリーミングでは、UDP のトラフィックの方が HTTP のトラフィックよりも優先度が高いという特性を利用しています。その結果、オーディオおよびビデオのストリーミング データの方がファイルおよび Web ページの転送よりも優先されます。それにより、表示が円滑に進む可能性が高まります。

  3. 高度な機能のサポート : Windows Media サーバー方式では高度な機能をサポートしています。その例として、再生されたストリームの詳細なレポーティング、VCR の制御 (シーク、早送り、巻き戻し)、ライブのビデオの配信、クライアントへの複数のストリームの配信が挙げられます。Web サーバー ストリーミングの場合は、そのような機能はたとえ可能であったとしても、実装するのは困難であり、サポートする効率もよくありません。

  4. 多数のユーザーへのコスト効果の高いスケーラビリティ : ストリーミング メディアの初期の段階では、多くの場合、同時には少数のユーザーにしかサービスを提供できませんでした。そのため、Web サーバー ストリーミングが適切なソリューションでした。しかし、オーディオおよびビデオの利用が増大するにつれて、何百人または何千人の同時ユーザーにサービスを提供するサイトも多くなってきました。そのような状況において、Windows Media サーバーの 2 つの主要な機能が Web サーバーよりも大きな利点となります。

    • 特殊化 : Web サーバー方式では、クライアントにメディア ファイルを送るのに Web サーバーを使用します。しかし、Web サーバーは多数の小さな HTML ファイルを送るために最適化されており、大きなメディア ファイルを送るのには適していません。Windows Media サーバーでは、大量のファイルを送る要求に対応するために、ディスクからメディア ファイルを読み出し、メイン メモリにバッファリングし、ネットワークにストリームとして送出する方法を最適化しています。Windows Media サーバーではスケーラビリティを Web サーバーの 2 倍から 3 倍に容易に向上させることができます。
    • マルチキャストのサポート : ライブまたは格納されているオーディオおよびビデオを大量の視聴者にネットワークの混雑を最小限にとどめながら配信する 1 つの方法にマルチキャスト ネットワーク テクノロジを使用することがあります。それにより、単一のメディア ストリームを複数のクライアントで同時に再生することができ、劇的に帯域幅の使用を減らすことが出来ます。Windows Media サーバーのように特別に設計されたストリーミング メディア サーバーだけが、この機能を備えています。

  5. コンテンツ著作権の保護 : Web サーバー ストリーミングでは再生した各メディア ファイルのローカル キャッシュ コピーを作成します。したがって、エンド ユーザーがそれらのファイルを個人のディレクトリにコピーして後で参照することを防止する方法はありません。そうすると、従量制の有料ビジネス モデルを採用しているコンテンツ プロバイダは損害をこうむります。また、広告から収入を得ているコンテンツ プロバイダも損害をこうむります。エンド ユーザーが繰り返しプロバイダのサイトにアクセスすることがなくなるからです。Windows Media サーバーの場合は、ユーザーはデータ ストリームを再生できるだけで、ファイルを直接自分のハード ディスクにダウンロードすることはできないようになっています。ネットワークを介して受信されたデータ パケットは直接クライアント アプリケーションに引き渡されます。エンド ユーザーが介入してコピーを作成する簡単な方法はありません。

  6. 複数の配信オプション : Windows Media サーバーの場合、可能な場合には最適な UDP プロトコルまたはマルチキャスト プロトコルを用いてメディアをストリーミングし、必要な場合には TCP プロトコルを用いてメディアをストリーミングします。それにより、企業のユーザーはファイアウォールのセキュリティを脅かすことなくインターネット コンテンツを参照することができるとともに、すべてのネットワーク上のすべてのユーザーがすべてのストリーミング メディア コンテンツにアクセスできることが保証されます。Windows Media サーバーは独自のバージョンの HTTP プロトコルを実装して、ファイアウォールまたはプロキシ サーバーを通じてストリーミングを行えるようにしながら、Windows Media サーバーの大部分の利点を依然として保持しています。

    Windows Media サービスでは 4 種類のプロトコル構成をサポートしています。各プロトコル構成に固有の利点があります。

    • UDP : 「Windows Media サーバー」セクションで詳しく説明したように、UDP を使用するとネットワークのスループット効率が最もよくなり、ユーザー (プレーヤー) エクスペリエンスに非常に良い影響があります。UDP の唯一のマイナス面は、多くのネットワーク管理者が UDP トラフィックに対してファイアウォールを閉ざしているため、UDP ベースのストリームの潜在的な視聴者が限られることです。
    • TCP : 「Web サーバー」セクションに詳しく説明したように、TCP は、サーバーからクライアントにストリーミング メディア コンテンツを配信するのに、効率的とは言えないまでも適切なプロトコルです。顧客は多くの場合ファイアウォール中に TCP ポートを開いています。したがって、Windows Media サービスは TCP プロトコルを使用して、それらのファイアウォールを通してストリーミング メディアを流すことができます。UDP トラフィックは多くの場合、ファイアウォールによってブロックされます。
    • HTTP + TCP : Windows Media サーバーでは、TCP ベースのデータ配信に加えて、HTTP ベースの制御コマンドをサポートすることもできます。この組み合わせには、Web トラフィックを通す (ポート 80) すべてのファイアウォールと連携しながら、標準の Web サーバーよりもはるかに多くの制御 (早送りや巻き戻しなど) を行えるという利点があります。しかし、生の TCP ストリームにある程度のオーバーヘッドがかかり、スケーラビリティが低下します。
    • マルチキャスト : Windows Media サーバーでは、IP マルチキャスト プロトコルをサポートすることもできます。それにより、多数のユーザーにストリーミング コンテンツを非常に効率よく配信することができます。マルチキャスト機能を利用すると、何百人ないし何千人のユーザーが単一のストリームを再生することができます。ただし、マルチキャストを処理できるルーターを備えたネットワーク上でのみ機能します。マルチキャストは企業のネットワーク上では徐々に普及していますが、インターネット上では依然として非常に希です。

    Windows Media サーバーは適切なプロトコルに自動的に切り替えます。したがって、クライアント側で構成する必要ありません。Windows Media サーバーは最初は最適な UDP プロトコルまたはマルチキャスト プロトコルを使用してファイルの転送を試みます。それが不成功であった場合、Windows Media サーバーは最初に生の TCP プロトコルを通じて送信を試み、次いで HTTP ベースの制御を加味した TCP プロトコルを通じて送信を試みます。
Back to the top of this page トップに戻る



結論
このホワイト ペーパーでは、メディア コンテンツをユーザーにストリーミング方式で配信する、主要な 2 つの方法を評価しました。最初の Web サーバー方式では、標準の Web サーバーおよび関連する HTTP プロトコルと TCP プロトコルを使用して、クライアントからの要求を受け付けて、クライアントへコンテンツを送付します。2 番目の方式では、オーディオ / ビデオのストリーミング専用のストリーミング メディア サーバーを使用します。このサーバーにはオーディオ / ビデオのストリーミングに特化した機能が組み込まれています。具体的には、大容量のメディア ファイルをディスクから読み出すために最適化されたルーチン、UDP / TCP / マルチキャストの任意のプロトコルを選択できる柔軟性、およびクライアントとサーバーが接触を保ち続けてクライアントへのコンテンツの配信を動的に改善するオプションがあります。

Web サーバー方式の主な利点は、学習して管理するソフトウェア コンポーネントが 1 つ (ストリーミング メディア サーバー) 少なくて済むことです。 この方法はストリーミング ソリューションを取り入れる最初のステップとして有効です。

Microsoft Windows NT Server Windows Media サービスを使用したストリーミング メディア サーバー方式には以下の利点があります。
  • ネットワークの帯域幅の使用効率が高い
  • ユーザーにとってのオーディオ / ビデオ品質が優れている
  • 詳細な報告およびマルチストリーム マルチメディア コンテンツのような高度な機能がある
  • 多数のユーザーをサポートする
  • 複数の配信オプション
  • コンテンツ著作権の保護
上記の利点を比較すると、ストリーミング メディア コンテンツの事実上すべてのプロバイダにとって、Windows Media サーバー方式の方が優れたストリームであることは明白です。

Back to the top of this page トップに戻る

 

Microsoft