(57)【特許請求の範囲】
【請求項１】
所与のコンテンツ・ストリームの複数の端末へのユニキャスト伝送が指定された閾値条件を満たす状態を検出するステップと、
前記検出した状態に応答して前記所与のコンテンツ・ストリームのマルチキャスト伝送を開始するステップと、
前記複数の端末のうちの少なくとも１つを前記マルチキャスト伝送に遷移させるステップとを含み、
前記閾値条件は、少なくとも一部が、前記複数の端末のうちの第１の端末に関連する前記ユニキャスト伝送のうちの第１のユニキャスト伝送と前記複数の端末のうちの第２の端末に関連する前記ユニキャスト伝送のうちの第２のユニキャスト伝送との間の時間オフセットに基づく、方法。
【請求項２】
前記複数の端末のうちの少なくとも１つを、その他の端末のうちの１つまたは複数が前記マルチキャスト伝送を受信するより前に、前記所与のコンテンツ・ストリームの前記マルチキャスト伝送をそのユニキャスト伝送の代わりに受信する端末として識別するステップと、
前記識別した端末への前記ユニキャスト伝送を停止するステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
先導端末および追跡端末のうちの少なくとも１つを識別するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記マルチキャスト伝送の速度を減少させて、前記所与のコンテンツ・ストリームの配信を同期するステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記所与のコンテンツ・ストリームを前記複数の端末のうちの少なくとも１つに、前記複数の端末のうちの別の端末用の速度より大きな速度で伝送するステップをさらに含む、請求項１に記載の方法。
【請求項６】
プロセッサによって実行されると、関連した処理装置に請求項１に記載の方法の前記ステップを実行させる、実行可能プログラム・コードを記録したコンピュータ可読記憶媒体。
【請求項７】
プロセッサを含むコントローラを備える装置であって、
前記コントローラが、所与のコンテンツ・ストリームのそれぞれの端末へのユニキャスト伝送が指定された閾値条件を満たす状態を検出するように構成され、
前記コントローラが、前記検出した状態に応答して、前記所与のコンテンツ・ストリームのマルチキャスト伝送を開始し、前記端末を前記マルチキャスト伝送に遷移させるように構成され、
前記閾値条件は、少なくとも一部が、前記複数の端末のうちの第１の端末に関連する前記ユニキャスト伝送のうちの第１のユニキャスト伝送と前記複数の端末のうちの第２の端末に関連する前記ユニキャスト伝送のうちの第２のユニキャスト伝送との間の時間オフセットに基づく、装置。
【請求項８】
請求項７に記載の装置を備える集積回路。
【請求項９】
前記コントローラが、前記端末のうちの少なくとも１つの最大バッファリング容量を示すメッセージを受信するように構成された、請求項７に記載の装置。
【請求項１０】
前記コントローラが、少なくとも一部は前記最大バッファリング容量に基づいて、前記少なくとも１つの端末を前記マルチキャスト伝送に遷移させるように構成された、請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に信号分配システムに関し、より詳細には、そのようなシステムで伝送帯域幅を制御する技法に関する。
【背景技術】
【０００２】
通常、信号分配システムは、コンテンツ配信用のさまざまな伝送プロトコルをサポートするように構成される。分配システムに結合するか、またはその一部である端末は、同じコンテンツを受信することができる。そのようなコンテンツには、例えば、ビデオおよび関連オーディオが含まれ得る。同じコンテンツがさまざまな時間にさまざまな端末に供給されるか、または受信される場合、非効率が生じる。そのようなシステムを最適化すると、帯域幅をより適切に利用することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願公開第１２／２６１，１７５号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ユニキャスト伝送では、別々のコンテンツ・ストリームがさまざまな端末に伝送される。マルチキャスト伝送の場合、システムの複数の端末が指定されたマルチキャスト・グループに参加し、そのグループの中の全端末が同じ伝送されたコンテンツ・ストリームを受信する。複数の端末にビデオ・コンテンツを伝送する信号分配システムの１つの例は、デジタル加入者線（ＤＳＬ）または光ファイバを介してインターネット・プロトコル・テレビ（ＩＰＴＶ）を提供するシステムである。そのようなシステムでは、加入者または他のユーザは、ＤＳＬアクセス・マルチプレクサ（ＤＳＬＡＭ）を含むことができるネットワーク機器と通信するための、セット・トップ・ボックス（ＳＴＢ）または受信機などのインタフェース装置が提供される。インタフェース装置は、所与の場所でインタフェース装置に結合したテレビまたは他の表示装置上で、加入者が選択したチャネルに対応するコンテンツ・ストリームを受信できるように構成される。ＩＰＴＶシステムにおいて所与の選択したチャネルを受信するために、通常、インタフェース装置は対応するマルチキャスト・ストリームに参加する。２００８年１０月３０に出願された、「Ｆａｓｔ  Ｃｈａｎｎｅｌ  Ｃｈａｎｇｅ  Ｒｅｑｕｅｓｔ  Ｐｒｏｃｅｓｓｉｎｇ」と題する、米国特許出願公開第１２／２６１，１７５号は、本願の譲受人に譲渡され、参照することによって本明細書に組み込まれたが、チャネル変更コマンドのユーザ入力と新しいチャネル用の復号可能なマルチキャスト・データの受信との間の遅延をかなり減少させる、例示的な実施形態を開示する。
【０００５】
ＩＰＴＶシステムおよび他の信号分配システムでは、しばしば、ユニキャスト・ストリームをシステムのそれぞれの端末に配信することが必要になる。例えば、ユニキャスト・ストリームは、ビデオ・オン・デマンド（ＶＯＤ）またはネットワーク・パーソナル・ビデオ・レコーディング（ＮＰＶＲ）などのアプリケーションをサポートするために使用することができる。これによって、多くの必要なユニキャスト・ストリームがネットワーク帯域幅の過大な量を消費する可能性があるという問題が生じる。同じコンテンツに関連する複数のユニキャスト・ストリームを単一のマルチキャスト・ストリームに連結することにより、帯域幅はかなり減少させることができるが、そのような手法には非常に多くの困難がある。例えば、複数の端末はすべて、お互いから時間的にずれたそれぞれのユニキャスト・ストリームを経由して、同じコンテンツを受信することができる。そのような状況では、１つまたは複数の端末についてかなりの量の遅延をもたらすことなしに、すべてのユニキャスト・ストリームを単一のマルチキャスト・ストリームに連結するのに利用できる効率的なメカニズムは存在しない。
【０００６】
１つまたは複数の例示的な実施形態における本発明は、ＩＰＴＶシステムまたは他のタイプの信号分配システムにおいて、複数の端末をユニキャスト伝送からマルチキャスト伝送に段階的に遷移させるための技法を提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、信号分配システムのビデオ・ヘッドエンドまたは他の伝送構成要素の中のコントローラは、所与のコンテンツ・ストリームの複数の端末へのユニキャスト伝送が指定された閾値を満たす状態を検出するように動作する。コントローラは、検出した状態に応答して所与のコンテンツ・ストリームのマルチキャスト伝送を開始し、少なくとも１つの端末をマルチキャスト伝送に遷移させる。例えば、コントローラは、少なくとも１つの端末を、その他の端末のうちの１つまたは複数がマルチキャスト伝送を受信するより前に、所与のコンテンツ・ストリームのマルチキャスト伝送をそのユニキャスト伝送の代わりに受信する端末として識別することができる。次いで、コントローラは、ユニキャスト伝送がすでに開始されていた場合、識別した端末へのそのユニキャスト伝送を停止し、マルチキャスト伝送を開始して、識別した端末をマルチキャスト伝送に切り替え、その後、その他の端末のうちの１つまたは複数をマルチキャスト伝送に遷移させる。
【０００８】
第１の例示的な実施形態は、本明細書において先導マルチキャスト技法（ｌｅａｄ  ｍｕｌｔｉｃａｓｔ  ｔｅｃｈｎｉｑｕｅ）と呼ばれる技法を提供する。この技法では、識別した端末は、端末のうちの先導する端末、すなわち、その他の端末と比べて時間的に最も早く、そのユニキャスト伝送経由で所与のコンテンツ・ストリームを受信するか、またはそうでなければ受信するように指定された端末である。マルチキャスト伝送が始まると、先導端末はマルチキャストに参加し、所与のコンテンツ・ストリームがその他の端末のそれぞれにそれぞれのユニキャスト伝送経由で伝送される速度は、デンティングまたはバースティングなどの既知の速度調節メカニズムを使用して増加する。この文脈および本明細書の他の所で使用される用語「速度」は、効果的なデータ速度または実際のデータ速度を包含するように広く解釈されるものである。例として、効果的なデータ速度は、実際のデータ速度では増加をもたらさないデンティング・メカニズムを使用して増加することができ、一方、実際のデータ速度は、バースティング・メカニズムを使用して増加することができる。その他の端末は、それぞれのユニキャストが先導端末へのマルチキャスト伝送にいつ「追い付く」かに基づいて、マルチキャスト伝送に段階的に遷移する。
【０００９】
第２の例示的な実施形態は、本明細書において追跡マルチキャスト技法（ｔｒａｉｌ  ｍｕｌｔｉｃａｓｔ  ｔｅｃｈｎｉｑｕｅ）と呼ばれる技法を提供する。この技法では、識別した端末は、端末のうちの追跡する端末、すなわち、その他の端末と比べて時間的に最も遅く、そのユニキャスト伝送経由で所与のコンテンツ・ストリームを受信するか、またはそうでなければ受信するように指定された端末である。マルチキャスト伝送は、再びデンティングまたはバースティングなどの既知の速度調節技法を使用して、それぞれのユニキャスト伝送の速度よりも大きな速度で開始される。マルチキャスト伝送が開始されると、追跡端末はマルチキャスト伝送に参加し、所与のコンテンツ・ストリームがその他の端末のそれぞれにそれぞれのユニキャスト伝送経由で伝送される速度は、これらの速度のうちの１つまたは複数が、例えばマルチキャスト伝送の速度まで増加することができるポイントで、マルチキャスト伝送に参加するちょうど前まで実質的に変わらずにいる。その他の端末は、マルチキャスト伝送がそれぞれのユニキャスト伝送にいつ「追い付く」かに基づいて、マルチキャスト伝送に段階的に遷移する。その他の端末がマルチキャスト伝送に遷移した後、マルチキャスト伝送の速度は、その他の端末が遷移する前の速度に比べて減少する可能性がある。例えば、マルチキャスト伝送の効果的な速度は、その他の端末のうちの１つのユニキャスト伝送の速度にまで減少する可能性がある。
【００１０】
第３の例示的な実施形態は、本明細書において複合型先導兼追跡マルチキャスト技法と呼ばれる技法を提供する。この技法では、先導端末と追跡端末のどちらも識別される。第１のマルチキャスト伝送が開始され、先導端末が第１のマルチキャスト伝送に切り替わる。また、第２のマルチキャスト伝送が開始され、追跡端末が第２のマルチキャスト伝送に切り替わる。その後、残りの端末のそれぞれが、そのユニキャスト伝送から第１のマルチキャスト伝送および第２のマルチキャスト伝送のうちの１つに遷移する。第２のマルチキャスト伝送は、第１のマルチキャスト伝送の速度よりも大きな速度を有することができる。また、追跡端末、およびそれぞれのユニキャスト伝送から第２のマルチキャスト伝送に遷移した端末のうちのその他の端末は、その後、第２のマルチキャスト伝送から第１のマルチキャスト伝送に遷移することができる。
【００１１】
例示的な実施形態は、ユーザ端末で受信するビデオまたは他のコンテンツ・ストリームの中で、かなりの量の遅延、または凍結もしくは欠落などの他の望ましくない障害を起こさずに、信号分配システムの中の帯域幅の消費を都合よく減少させる。
【００１２】
本発明の上記その他の特徴および利点は、添付図面および以下の詳細説明からより明白になる。
【図面の簡単な説明】
【００１３】
【図１】本発明による信号分配システムの例示的な実施形態を示す図である。
【図２】例示的な実施形態の中の図１の信号分配システムのコントローラのより詳細な図である。
【図３】例示的な実施形態の中の図２のコントローラの動作を示す流れ図である。
【図４】それぞれの時間移動したユニキャスト・ストリームを経由して同じコンテンツを受信する図１のシステムのいくつかのユーザ端末の例を示す図である。
【図５】本発明の先導マルチキャスト技法を使用して、図４の端末が単一のマルチキャスト・ストリームに段階的に遷移する方式を示す図である。
【図６】本発明の追跡マルチキャスト技法を使用して、図４の端末が単一のマルチキャスト・ストリームに段階的に遷移する方式を示す図である。
【図７】本発明の複合型先導兼追跡マルチキャスト技法を使用して、図４の端末が単一のマルチキャスト・ストリームに段階的に遷移する方式を示す図である。
【図８】本発明の別の実施形態における信号分配システムのブロック図である。
【発明を実施するための形態】
【００１４】
本発明は、信号分配システムの例示的な実施形態および関連するユニキャストからマルチキャストへの遷移技法とともに、本明細書において記載される。しかしながら、本発明は記載した特定のシステムおよび技法での使用に限定されず、代わりにより一般には、システムの中の帯域幅の消費を減少させるために、複数の端末のユニキャスト伝送からマルチキャスト伝送への遷移を改善することが望まれる、任意の信号分配システムに適用可能であることを理解すべきである。例えば、本明細書において主にＩＰＴＶシステムの文脈の中で記載したが、本発明の技法は、例えば、ＷｅｂＴＶ（すなわち、インターネットＴＶ）システム、セルラ・システム、ケーブル・システム、衛星システム、統合デジタル放送サービス−地上（ＩＳＤＢ−Ｔ）規格およびＳｉｓｔｅｍａ  Ｂｒａｓｉｌｅｉｒｏ  ｄｅ  Ｔｅｌｅｖｉｓａｏ  Ｄｉｇｉｔａｌ（ＳＢＴＶＤ）規格などに基づいたシステムを含む、他のタイプの信号分配システムにも、直接的に適応することができる。また、主にビデオ分配の文脈の中で説明したが、開示した技法は、任意の組合せにおけるオーディオまたは他のタイプの信号などの、他のタイプの情報の伝送にも適用することができる。
【００１５】
図１は、ネットワーク１０４経由で複数のユーザ端末１０６−１、１０６−２、・・・１０６−Ｎに結合したビデオ・ソース１０２を備える信号分配システム１００を示す。ビデオ・ソース１０２は、コントローラ１１２に結合した１つまたは複数のサーバ１１０を備える。下記でより詳細に記載するように、コントローラは、ユーザ端末１０６のうちの複数の端末を、複数の端末のうちの任意の特定の端末で受信され表示されるコンテンツの中で、任意の著しい遅延、凍結、欠落、または他の望ましくない障害が起きることを都合良く回避する方式で、同じコンテンツ・ストリームのそれぞれ別々のユニキャスト伝送からそのコンテンツ・ストリームの単一のマルチキャスト伝送の受信に、段階的に遷移させるように構成される。
【００１６】
信号分配システム１００は、例として、ＩＰＴＶシステムを含むことができる。そうでなければ、ビデオ・ソース１０２は、本明細書で開示した方式で適切に修正された、例えば、ヘッドエンド・システム、衛星、サーバ、ゲートウェイ・ルータなどを含む、従来のＩＰＴＶシステムのサービス・プロバイダ機器を含むことができる。本実施形態の中のコントローラ１１２は１つまたは複数のサーバ１１０から分かれているように示されるが、他の実施形態におけるコントローラはそのようなサーバもしくはサーバ群の中に実装することができるか、またはビデオ・ソース１０２の外部に配置することができる。ビデオ・ソースは、より一般には本明細書において信号分配システムの「伝送構成要素」と呼ばれるものの例である。そのような伝送構成要素は、ネットワークを介して複数の端末にユニキャスト伝送およびマルチキャスト伝送を提供する、任意の処理装置または処理装置群を包含すると理解すべきである。
【００１７】
ユーザ端末１０６は、それぞれＩＰＴＶシステムのＳＴＢなどのインタフェース装置、および、場合によりテレビなどの関連する表示装置を含むことができる。あるいは、ユーザ端末は、例えば、コンピュータ、モバイル電話、携帯情報端末（ＰＤＡ）、無線装置、または他のプロセッサベースの装置を、任意の組合せで含むことができる。また、そのような装置は、本明細書において、ユーザ・インタフェース装置または「クライアント」と呼ぶことができる。このタイプの所与のインタフェース装置または端末装置によって、１人または複数のユーザが、信号分配システムの他の構成要素を経由して装置に分配されたコンテンツ・ストリームにアクセスすることが可能になる。本明細書で参照されるような「端末」は、ユーザへの表示または他の表現のために、信号分配システムの中でネットワークを介してユニキャスト伝送またはマルチキャスト伝送を受信する、任意のタイプの処理装置または処理装置群として広く解釈されるものである。一般に、そのような端末は、メモリに結合したプロセッサ、ならびにネットワークを介してビデオ・ソースと通信するための送受信回路を備え、例示的な実施形態では、通常、コントローラから端末に宛てた、ユニキャスト受信からマルチキャスト受信に切り替えるようにとの１つまたは複数の指示を受信し処理する機能を含む。
【００１８】
ネットワーク１０４は、テレビ・サービスまたは他のタイプのコンテンツ配信サービスの提供に関連する信号の伝送に適している任意のタイプの通信ネットワークを含むことができ、本発明はこの点に関して限定されない。例えば、ネットワーク１０４の一部は、インターネット、メトロポリタン・エリア・ネットワーク、ローカル・エリア・ネットワーク、ケーブル・ネットワーク、電話ネットワーク、衛星ネットワーク、ならびに、これらもしくは他のネットワークの一部または組合せなどの広域ネットワークを含むことができる。
【００１９】
図１とともに示し記載した特定の信号分配システムの構成は、そのようなシステムの例示的な例として見るべきであり、本発明は他のタイプおよび構成のシステム構成要素を使用して実装できることを理解されたい。本発明の別の実施形態における信号分配システムのより詳細な例は、下記で図８とともに記載される。
【００２０】
ここで図２を参照すると、図１のシステムのコントローラ１１２の１つの実現可能な実施形態が示される。この実施形態では、コントローラは、メモリ２０２に結合したプロセッサ２００を備え、さらに、インタフェース回路２０４を備える。また、モジュール２１０〜２１６、より具体的には、ユニキャスト制御モジュール２１０、マルチキャスト制御モジュール２１２、リスト生成および保守モジュール２１４、ならびに、先導および／または追跡選択モジュール２１６がコントローラの中に含まれる。
【００２１】
プロセッサ２００は、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路（ＡＳＩＣ）または他のタイプの処理装置、ならびにそのような装置の一部または組合せとして実装することができる。メモリ２０２は、電子式のランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、ディスクベースのメモリ、または他のタイプの記憶装置、ならびにそのような装置の一部または組合せを含むことができる。プロセッサおよびメモリは、本明細書で開示した技法を使用して複数の端末をユニキャスト伝送からマルチキャスト伝送に段階的に遷移するための、１つまたは複数のソフトウェア・プログラムを格納し実行するために使用される。さまざまなモジュール２１０〜２１６は、少なくとも一部はそのようなソフトウェアを使用して実装することができる。メモリ２０２は、より一般には本明細書においてコンピュータ・プログラム製品と呼ばれるものの例、または、さらにより一般には、その中に包含された実行可能なプログラム・コードを有するコンピュータ可読記憶媒体として見ることができる。コンピュータ可読記憶媒体の他の例には、ディスクもしくは他のタイプの磁気媒体、または光学媒体が任意の組合せで含まれ得る。
【００２２】
プロセッサ２００、メモリ２０２およびインタフェース回路２０４は、本明細書に記載した方式で動作するように適切に修正された、よく知られている従来の電気回路を含むことができる。そのような電気回路の従来の態様は当業者にはよく知られており、したがって、本明細書においては詳細に記載しない。
【００２３】
本明細書で開示したような所与のコントローラは、図２の例示的な構成で具体的に示したモジュール以外の構成要素およびモジュールを使用して実装できることを理解されたい。
【００２４】
例示的な実施形態の中のコントローラ１１２の動作を、これから図３から７を参照して記載する。これらの例示的な実施形態は、本明細書において帯域幅「焼きなまし」技法と呼ばれる技法を実装し、その中では１つまたは複数の特定の端末が、所与のコンテンツ・ストリームのそれぞれのユニキャスト伝送を受信するか、受信するように指定された一組の端末の中で識別され、識別した端末が最初にマルチキャスト伝送に遷移し、一組の中のその他の端末のうちの１つまたは複数が段階的にマルチキャスト伝送に遷移する。
【００２５】
ここで図３を参照すると、一実施形態の中のコントローラ１１２の動作が示される。この実施形態では、上記識別した端末が、一組の中の先導端末、すなわち、そのユニキャスト伝送経由で所与のコンテンツ・ストリームを一組の中のその他の端末に比べて時間的に最も早く受信する端末なので、適用された特定の焼きなまし技法は先導マルチキャスト焼きなましと呼ばれる。この実施形態の中の先導マルチキャスト技法は、示したようにステップ３００から３１６を含む。
【００２６】
ステップ３００において、コントローラ１１２は、それぞれのユニキャスト伝送経由で同じビデオ・ストリームを受信しているクライアントをチェックするように起動される。そのような起動は、例えば、周期的（例えば、時計によって駆動される）、またはイベント・ドリブン（例えば、ビデオ・ストリームに対するクライアントの要求が、コントローラに同じストリームを受信している他のクライアントをチェックさせる）であり得る。前述したように、この文脈の中の用語「クライアント」は端末１０６のうちのそれぞれの端末を意味する。
【００２７】
ステップ３０２において、それぞれのユニキャスト伝送経由で同じビデオ・ストリームを受信するクライアントの組が指定された閾値に達したかどうかについての判定が行われる。これは、例えば指定された最小の数のクライアントがそれぞれのユニキャスト伝送経由で同じビデオ・ストリームを受信するか、受信するように指定されたかどうかの判定を含むことがある。他の実施形態での指定された閾値は、より複雑である可能性があり、場合により、例として近傍のクライアントのペア間の最大時間オフセットを組み込んでいる。すなわち、指定された最小の数の端末がユニキャスト経由で同じコンテンツ・ストリームを受信しているか、受信するように指定されているという要件に加えて、そのようなユニキャスト間の時間オフセットが指定された最大値以内にある必要がある。これは、任意の特定の端末の中の過大な量のバッファリングを要求することなしに、端末がすべてマルチキャストに遷移できることを保証する助けになることができる。そのような最大時間オフセットは、時間の単位で、またはフレーム数、パケット数、バイト数などの用語で表現することができる。
【００２８】
ステップ３０２において指定された閾値を満たさなかったと判定された場合、ステップ３０４において、システムはビデオ・ストリームの別々のユニキャスト伝送をそれぞれのクライアントに送信し続ける。一方ステップ３０２において指定された閾値を満たしたと判定された場合、処理は示されたようにステップ３０６に移る。ステップ３００でのチェックは、場合によりステップ３０２における閾値の判定の１回または複数回の繰り返しに先だって、時々繰り返し起動できることに留意すべきである。
【００２９】
ステップ３０６において、それぞれのユニキャスト伝送経由で同じビデオ・コンテンツを受信するクライアントのリストが作成される。一般に、このリストは、マルチキャストに遷移することが可能な、同じビデオ・コンテンツを受信するクライアントを含み、したがって、同じビデオ・コンテンツを受信しているが、マルチキャストへの遷移をサポートするのに十分なバッファリング容量をもたない一部のクライアントを除外することができる。次いで、同じコンテンツのマルチキャスト・ストリームが作成され、リストの中のクライアントはこのマルチキャスト・ストリームに段階的に遷移する。先導マルチキャスト焼きなまし技法において、リストの中のクライアントの中で先導者が選択され、選択されたクライアントへのユニキャスト伝送に取って代わることになるマルチキャスト・ストリームが、ステップ３０７で示されたように開始される。次いで、選択されたクライアントへのユニキャスト・ストリームが停止し、そのクライアントはマルチキャスト・ストリームに参加するように指示される。選択されたクライアントがマルチキャストに参加すると、マルチキャスト伝送は選択されたクライアントへのユニキャスト伝送に取って代わり、したがって、そのクライアントはユニキャスト伝送からマルチキャスト伝送に遷移する。この特定の先導マルチキャストの実施形態では、先導者は、組の中のその他の端末に比べて時間的に最も早く、所与のコンテンツ・ストリームをそのユニキャスト伝送経由で受信する端末であり、上記で先導端末とも呼ばれる。
【００３０】
一般に、端末は、関連する加入者ループの中で利用可能な帯域幅を超える可能性があるので、ユニキャストおよびマルチキャストを同時に受信することはサポートされていないことに留意すべきである。マルチキャストへの参加には（例えば、ＩＧＭＰ参加要求の送信から最初のマルチキャスト・パケットの受信まで）数百ミリ秒かかる場合があるので、ユニキャストの停止はユニキャストが少なくともその長い時間だけマルチキャストより進んだときに起きる可能性がある。これを達成する１つの方法は、ユニキャストを停止させ選択した端末にマルチキャストへの参加を指示する前に、デンティング（例えば、ビデオのあまり重要でない部分を読み飛ばすことによる効果的なデータ速度の増加）またはバースティング（例えば、実際のデータ速度の増加）の使用により、選択された端末へのユニキャスト・ストリームの速度を増加させることである。
【００３１】
その後、その他の端末は、それぞれのユニキャストが先導端末へのマルチキャスト伝送にいつ「追い付く」かに基づいて、ユニキャスト伝送からマルチキャスト伝送に段階的な方式で遷移する。処理のこの部分はステップ３０８〜３１６に示される。
【００３２】
ステップ３０８において、ステップ３０６で作成されたリスト上のいずれかの特定の残りのユニキャスト・クライアントが、３０７で示されたように、ステップ３０６で識別した先導者に送信されたマルチキャストに追い付いたかどうかについて判定が行われる。リスト上のいずれのクライアントもマルチキャストに追い付かなかった場合、処理はステップ３１０に移る。このステップでおいて、残りのクライアントのうちのそれぞれのクライアントへのユニキャスト伝送の速度は、デンティングまたはバースティングなどの既知の技法を使用して増加する。ステップ３１０から、ステップ３０８における判定が繰り返される。
【００３３】
ステップ３０８において、リスト上の残りのクライアントのうちの特定のクライアントがマルチキャストに追い付いたと判定された場合、その特定のクライアントへのユニキャストは停止し、ステップ３１２で示したように、そのクライアントはマルチキャストに移動するように知らされ、マルチキャスト情報を送信される。
【００３４】
クライアントがステップ３１４で移動を承諾すると、クライアントはステップ３１６でリストから削除される。次いで、処理はステップ３１０に戻って、リスト上の残りのクライアントへのより高速のユニキャスト伝送を、それらのうちの１つまたは複数がまたマルチキャストに追い付くまで継続する。
【００３５】
ステップ３１４での承諾は任意であり、他の実施形態では取り除くことができることに留意すべきである。例えば、ある理由でクライアントがステップ３１２でマルチキャストへ移動するようにとの知らせを逃した場合、クライアントはユニキャストが停止したことに気付き、そのことをビデオ・ソースに知らせ、次いで、ビデオ・ソースは、クライアントに再びマルチキャストに参加するように知らせることなどの適切なステップを取る。
【００３６】
図３の流れ図の中のさまざまな動作を、図２に示したような関連するコントローラ・モジュールを使用して実装することができる。例えば、ステップ３０４およびステップ３１０の中のユニキャスト伝送は、ユニキャスト制御モジュール２１０によって制御することができる。同様に、３０７で示したマルチキャスト伝送は、マルチキャスト制御モジュール２１２によって制御することができる。ステップ３０６およびステップ３１６で参照されたリスト生成および保守動作は、モジュール２１４によって実行することができ、ステップ３０６で参照された先導選択動作は、モジュール２１６によって実行することができる。当然、図３の特定の処理動作、および関連する図２のモジュール構成は、例示のみを目的としており、多少なりとも本発明の範囲を限定するものとは解釈すべきでない。
【００３７】
ここで、図４および図５を参照して、図３の先導マルチキャスト焼きなましの詳細な例を記載する。
【００３８】
図４は、４台の端末Ａ、Ｂ、ＣおよびＤのうちのそれぞれの端末への、同じビデオ・コンテンツのユニキャスト伝送を示す。図の中の横軸は時間を表し、縦軸はビデオ・ストリームの中の位置、または言い換えれば、伝送されたコンテンツの中へのオフセット（例えば、対応するビデオ・ファイルの中へのバイト・オフセット）を表す。各端末は実線および破線によって表される。実線は端末で時間とともにビデオを受信することを示し、破線はその端末で時間とともにビデオを消費することを示す。所与の端末用のこれら２本の線の間の縦方向の間隔は、任意の所与の時間にその端末でバッファリングされたビデオの量である。横方向の間隔は、バッファリングによってもたらされた遅延（例えば、端末がビデオ・パケットを受信した時刻から消費するまで）である。
【００３９】
図の中で直線として示されているが、実線および破線は、この直線的な一定のビット・レートの外観からはずれることができる。例えば、実線のまわりの変動はネットワークのジッタによってもたらされ、破線のまわりの変動は、ビデオ・フレームがさまざまなサイズを有するが、固定のフレーム・レートで消費されるという事実によってもたらされる。実線の受信ラインと破線の消費ラインとの間の平均間隔は、変動にかかわらず受信ラインが常に消費ラインより前にある（例えば、時間的に早いか、または図の中でその左にある）ことを保証するほど十分に広くあるべきである。これによって、表示されたビデオの中で、凍結、読み飛ばし、および他の障害を避けることができる。
【００４０】
端末Ａが先導端末であり、その他の端末Ｂ、ＣおよびＤに比べて時間的に最も早く、そのユニキャスト伝送経由で所与のコンテンツ・ストリームをその中に受信することが、図４から明白である。同様に、端末Ｄは追跡端末であり、その他の端末Ａ、ＢおよびＣに比べて時間的に最も遅く、そのユニキャスト伝送経由で所与のコンテンツ・ストリームをその中に受信する。この例の中の横軸上の所与の一対の端末（例えばＡおよびＢ）の間の時間オフセットは、１つの端末（例えば、端末Ａ）でのビデオ・ストリームの特定のパケットまたは他の指定された部分の受信と、時間上の次の端末（例えば、端末Ｂ）でのビデオ・ストリームの同じ部分の受信との間の、時間的な差異である。
【００４１】
ここで図５を参照すると、図３の先導マルチキャスト処理の動作が図示される。ステップ３０２における閾値を４台以上の端末であると仮定すると、端末Ｄがそのユニキャスト伝送を受信し始めるか、受信するように指定されると、閾値に達する。Ｄはそのユニキャストのどの部分も実際に受信する必要はないが、それよりも通常ユニキャスト伝送経由でＤに配信されるはずのビデオ・コンテンツを単に要求したかもしれないことに留意すべきである。そのような状況は、端末がユニキャスト伝送を「受信するように指定された」という一般記述によって包含されるものであり、単に端末が本明細書で開示したような帯域幅焼きなまし技法のアプリケーションがない場合にユニキャスト伝送を受信することを意味する。
【００４２】
この段階で、端末のリストは端末Ａ、Ｂ、ＣおよびＤを含み、端末Ａは先導者として指定されている。したがって、端末Ａはユニキャストからマルチキャストに遷移する。マルチキャストは図５の中で端末Ａ用の実線の太い部分として示され、示されているようにポイント５００で始まる。この遷移の一部として、サーバ１１０は端末Ａへのユニキャストの送信を停止し、次いでその端末はマルチキャストに参加する。この例の中の先導端末へのユニキャストの速度は、ユニキャストからマルチキャストへの円滑な遷移を容易にするために、停止する前の短い時間増加することに留意すべきである。その他の端末は、前述したように、例えばデンティングまたはバースティングによって増加した速度でビデオの受信を始める。これは、端末Ｂ、ＣおよびＤ用の実線の受信ラインの増加した勾配によって示される。図の中の勾配の増加は例示目的のために誇張されているが、通常は、普通のビデオ・レートに比べて５％から２５％の割り増しであるはずである。
【００４３】
増加した速度の端末Ｂ、ＣおよびＤへのユニキャスト伝送によって、この実施形態では端末Ａへの以前のユニキャスト伝送と同じ速度で、それらの端末がマルチキャストに追い付くことが最終的に可能になる。増加した速度のユニキャスト伝送のそれぞれが、マルチキャスト伝送に追い付き追い越すと、そのユニキャスト伝送は停止し、対応する端末はマルチキャストに切り替わり、例えばマルチキャストに参加するように指示される。したがって、すべての残りの端末Ｂ、ＣおよびＤは、最終的にユニキャスト伝送からマルチキャスト伝送に遷移する。
【００４４】
前述したように、一般に、端末はユニキャストおよびマルチキャストを同時に受信するようにサポートされていない。マルチキャストへの参加には（例えば、ＩＧＭＰ参加要求の送信から最初のマルチキャスト・パケットの受信まで）数百ミリ秒かかる場合があるので、ユニキャストの停止はユニキャストが少なくともその長い時間だけマルチキャストより（すなわち図の中の左側に）進んだときに起きる可能性がある。しかしながら、安全対策として端末がより長く待つ場合、損害は発生しない。例えば、ユニキャストが２秒進んだときだけユニキャストが停止する場合、問題またはデータの損失は存在しない。
【００４５】
すべての端末がマルチキャストに参加すると、端末Ｂ、ＣおよびＤのそれぞれに必要なバッファリングの量は、マルチキャストとそれに対応する消費ラインとの間の縦方向の間隔によって与えられる。この縦方向の間隔は、他の方法でマルチキャストに参加しない場合よりかなり大きく、追跡端末Ｄで最も大きい。しかしながら、最近の装置は、通常大量の利用可能なメモリを有するので、このさらなるバッファリング要件は問題をもたらすはずがない。
【００４６】
本発明のこの実施形態の拡張では、新しいクライアントは、マルチキャスト・ストリームが開始された後か、またはすべてのクライアントがマルチキャストに参加した後さえ、同じビデオ・コンテンツを要求する。そのクライアントは、デンティングまたはバースティングによって増加した速度でユニキャスト・ストリームを受信することができ、そのクライアントへのユニキャストがマルチキャストに追い付くと、クライアントはマルチキャストに参加するように指示される。したがって、帯域幅焼きなましは、動作が始まるときすでにビデオ・コンテンツを受信しているクライアントに限定されない。
【００４７】
本発明のさらなる実施形態では、クライアントがビデオ・ストリームに対する要求を行うと、それは要求の中にそれがサポートできる最大限のバッファリングの指示を含み、コントローラ１１２は、ステップ３０２およびステップ３０６で示したような決定を行う際にこの情報を使用することができる。
【００４８】
図６は、本明細書において追跡マルチキャスト焼きなましと呼ばれる代替の手法を示す。この手法では、端末Ｄが、現在端末Ａ、ＢおよびＣへのユニキャスト経由でも供給されている、同じビデオ・ストリームのユニキャスト伝送を要求すると、４台の端末すべてを１つの共通マルチキャスト伝送に移すための決定がなされる。しかしながら、最初に先導端末Ａにマルチキャストを送信することなく、代わりに、最初に追跡端末Ｄにマルチキャストが送信される。したがって、追跡端末Ｄは、太い実線の受信ラインとして示されるように、実線のポイント６００でマルチキャストの受信を開始する。初めに、マルチキャスト・ストリームは、デンティングまたはバースティングにより、リアルタイムのビデオ・レートよりも高く加速された速度で送信される。マルチキャスト・ストリームが端末Ａ、ＢまたはＣの受信ラインの１つに十分に接近すると、その端末へのユニキャストは停止し、その端末はマルチキャストに参加するように指示される。先導者Ａがマルチキャストに参加すると、マルチキャストの速度はポイント６０２で、一般にリアルタイムのビデオ・レートに対応する、その通常の速度に落ちる。
【００４９】
定常状態で、すべての端末がマルチキャストに参加した後、先導マルチキャスト手法および追跡マルチキャスト手法は同じ結果をもたらす。しかしながら、それぞれの手法は、下記で概説するように、その他に比べてある特定の利点を有する。
【００５０】
先導マルチキャストに勝る追跡マルチキャストの利点は、追跡マルチキャストにより、任意の所与の時間に１つだけのストリームが加速された速度で存在し（すなわち、マルチキャスト・ストリーム）、したがってネットワーク帯域幅を保全することである。
【００５１】
追跡マルチキャストの別の利点は、マルチキャストを受信する最初の端末、追跡端末はユニキャスト伝送からマルチキャスト伝送に切り替わる必要がないことである。代わりに、直接マルチキャストの中で開始することができる。
【００５２】
追跡マルチキャストに勝る先導マルチキャストの利点は、先導マルチキャストの中のユニキャストからマルチキャストへの遷移がより単純であることである。追跡マルチキャストでは、ちょうど先導マルチキャストの中のように、ユニキャストは、受信するビデオの中の中断または他の障害を防止するために、少なくとも数百ミリ秒マルチキャストより進んだときのみ、停止するべきである。これによって、先導マルチキャストの中の遷移についての「より早くない」制約、および、追跡マルチキャストの中の遷移についての「より遅くない」制約がもたらされる。加えて、追跡マルチキャストでは、遷移は早すぎることはできず、さもなければ（遷移後マルチキャストに従う）所与の端末の受信ラインがその端末の消費ラインの後ろになってしまう。したがって、追跡マルチキャストでは、ユニキャストが停止してシームレスな遷移を可能にする有限間隔が存在する。この困難さは、ユニキャストが停止し短時間の間ユニキャストおよびマルチキャストが「並んで」動作する直前に（図６の中で端末Ａおよび端末Ｂについて示されるように）ユニキャスト速度をすぐに加速することによって、軽減することができる。
【００５３】
先導マルチキャストの別の利点は、それによって、帯域幅焼きなまし動作が開始した後新しいクライアントをマルチキャストに遷移させることが可能になることであり、これは一般に追跡マルチキャストでは実現できない。
【００５４】
先導マルチキャストでは、端末Ａに時間的に比較的近い端末Ｂなどの端末へのユニキャストが、処理の中で比較的早く停止し、一方端末Ｃおよび端末Ｄへのユニキャストは、マルチキャストに追い付くまでより長い時間継続しなければならないことに留意すべきである。追跡マルチキャストでは、この状況は反対で、端末Ａおよび端末Ｂは、それらのユニキャストが停止することができるまで、端末Ｃおよび端末Ｄより長くかかる。
【００５５】
図７は、すべてのユニキャスト・ストリームが迅速に停止するのを可能にする、複合型先導マルチキャスト兼追跡マルチキャスト手法を示す。この手法では、すでに別々のユニキャスト経由で端末Ａ、ＢおよびＣによって受信されている同じビデオ・ストリームをＤが要求すると、Ｄは図６の追跡マルチキャスト手法におけるように加速されたマルチキャスト・ストリームを割り当てられる。実質的に同時に、先導端末Ａは、図５の先導マルチキャスト手法におけるようにその通常の速度でマルチキャストに入る。端末Ｂは先導者に近いので、そのユニキャスト速度は加速され、最終的にＡのマルチキャストに参加する。端末Ｃは追跡端末Ｄに近いので、その通常のユニキャスト速度で保持され、後者が適切な切替間隔に入ると、最終的にＤの追跡マルチキャストに切り替わる。したがって、すべてのユニキャスト・チャネルが処理の中でかなり早く１つのマルチキャストに遷移する。追跡マルチキャストが先導マルチキャストより前に進むと、その上のすべての端末（この例では端末Ｃおよび端末Ｄ）は先導マルチキャストに参加するように指示され、追跡マルチキャストは停止する。
【００５６】
図５、図６および図７の例示的な帯域幅焼きなまし技法は、端末をユニキャスト伝送からマルチキャスト伝送に段階的に遷移させ、受信し表示するビデオの中で望ましくない障害をもたらさない効率的な方式で伝送の重複を減少させることにより、信号分配システムの帯域幅要件をかなり削減することができる。
【００５７】
図８は、本明細書で開示した帯域幅焼きなまし技法を使用して、複数の端末をユニキャスト伝送からマルチキャスト伝送へ段階的に遷移させる、信号分配システム８００の別の実施形態を示す。この実施形態では、システム８００は、媒体格納装置８０６に結合した衛星受信機８０４を含むビデオ・ヘッドエンド８０２を備える。媒体格納装置は受信機８０４からビデオ信号を受信し、サーバ８１０への配信用にそれを格納する。ビデオ・ヘッドエンドは、１つまたは複数のエンコーダなどの、従来型の別の構成要素を含むことができる。
【００５８】
ヘッドエンド８０２は、ネットワーク８００の中のビデオのソースである。しかしながら、それはビデオの最終的なソースである必要はないことを理解すべきである。例えば、ヘッドエンド８０２は、別のより高いレベルのネットワークに属することができ、ネットワーク８００に配信するビデオ・コンテンツをそこから受信する。
【００５９】
サーバ８１０は、図２に示したようなコントローラ１１２と同様に構成されると想定される、コントローラ８１２に結合する。また、サーバは、エッジ・ルータ８２２を含むコア・ネットワーク８２０に結合する。コア・ネットワーク８２０のエッジ・ルータは、アクセス・ネットワーク８３０−１、８３０−２および８３０−３のそれぞれのエッジ・ルータに結合する。そのようなアクセス・ネットワークのそれぞれは、より詳細には、エッジ・ルータ８３２、スイッチ８３４、ならびに、例示的にＤＳＬＡＭおよび／またはファイバ・トゥ・ザ・ユーザ（ＦＴＴＵ）インタフェース装置を含む別のネットワーク構成要素８３６を備える。アクセス・ネットワーク８３０−１、８３０−２および８３０−３は、それぞれの加入者の組８４０−１、８４０−２および８４０−３に結合し、そのような加入者のそれぞれは住宅または事業拠点８４２に関連している。
【００６０】
動作中、コントローラ８１２はサーバ８１０と相互作用して、ユニキャスト経由でビデオ・ヘッドエンド８０２から同じコンテンツを受信しているか、受信するように指定されている加入者のうちの特定の加入者を検出し、以前に記載したような先導マルチキャスト技法、追跡マルチキャスト技法または複合型先導兼追跡マルチキャスト技法のうちの１つまたは複数を使用して、それらの加入者のうちの特定の加入者を共用マルチキャストに自動的に遷移させる。
【００６１】
所与のクライアント・グループ用の帯域幅焼きなましをいつ開始するかの決定は、同じコンテンツを受信するクライアントの数、またはそれらの間の相対的な遅延などの因子だけでなく、それらのクライアントがシステムの中のどこに位置しているかにも依存する可能性がある。例えば、システム８００のコア・ネットワーク８２０は高い帯域幅容量を有する可能性があるので、帯域幅焼きなまし用のその閾値は１０クライアントである可能性がある。アクセス・ネットワーク８３０はより低い帯域幅容量を有する可能性があるので、４クライアントがそこでの閾値である可能性がある。この場合、ルールは以下のように指定することができる。「同じアクセス・ネットワークから少なくとも４クライアント、または全ネットワークから合計１０クライアントあれば、帯域幅焼きなましを開始。」
【００６２】
他の実施形態では、コア・ネットワーク８２０とアクセス・ネットワーク８３０の間に、各それ自体の制約により、１つまたは複数の中間レベルのネットワークがある場合がある。そのような中間のネットワークには、例えばメトロポリタン・ネットワークが含まれ得る。ビデオ・ヘッドエンド８０２は、各低レベルのネットワーク特有の閾値に気付くことができず、各クライアントが属する特定のネットワークを知ることさえできない。したがって、ビデオ・コンテンツに対するクライアント要求をモニタする別のコントローラをアクセス・ネットワークに（例えば、エッジ・ルータの一部として、またはエッジ・ルータに結合して）提供することができ、そのネットワーク用の焼きなまし制約が達成された場合、コントローラ８１２にそれらのクライアントの帯域幅焼きなましを要求する要求を送る。
【００６３】
システム８００は本発明による信号分配システムの１つの実現可能な実装形態にすぎないことを強調すべきである。多数の他のシステムは、本発明の１つまたは複数の態様を実装するように構成することができる。例えば、他の実施形態では、１つまたは複数のアクセス・ネットワーク８３０は、セルラ・ネットワークへのゲートウェイによって置き換えることができる。
【００６４】
上述したように、本発明の実施形態は、信号分配システムのビデオ・ヘッドエンドまたは他の伝送構成要素のメモリまたは他のコンピュータ可読媒体の中に格納された、１つまたは複数のソフトウェア・プログラムの形態で、少なくとも一部は実装することができる。モジュール２１０、２１２、２１４および２１６などのシステム構成要素は、少なくとも一部はソフトウェア・プログラムを使用して実装することができる。当然、ハードウェア、ソフトウェアまたはファームウェアの多数の代替構成は、任意の組合せで、本発明に従って上記その他のシステム構成要素を実装する際に利用することができる。例えば、本発明の実施形態は、１つまたは複数のフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）または他のタイプの集積回路装置の中に、任意の組合せで実装することができる。そのような集積回路装置、ならびにその一部または組合せは、本明細書において使用されるような用語「電気回路」の例である。
【００６５】
本明細書で使用される用語「ユニキャスト」および「マルチキャスト」は、それぞれ１対１伝送、１対多伝送用の多種多様の技法を包含するように、広く解釈されるものであることに留意すべきである。
【００６６】
改めて、ＩＰＴＶの文脈で説明したが、記載した技法は、セルラ・システム、ケーブル・テレビ・システムおよび衛星テレビ・システムなどの他のタイプの信号分配システムで使用するために、直接的に適応することができる。一例として、図１の実施形態の中のビデオ・ソース１０２に付随するコントローラ１１２は、例えば、テレビ信号をモバイル装置に配信するセルラ・システムの基地局の中に実装することができる。そのような基地局は、本明細書において使用されるような用語「伝送構成要素」の別の例である。
【００６７】
上記に記載した実施形態は例示だけを目的としており、いずれにしても限定的であるとは解釈すべきでないことを改めて強調すべきである。他の実施形態は、特定のコンテンツ配信アプリケーションの需要に応じて、さまざまなタイプのシステム構成要素、ネットワーク、装置構成、および通信媒体を使用することができる。したがって、代替の実施形態は、本明細書に記載した技法を、別々のユニキャストから共用マルチキャストへの複数の端末の効率的な遷移を実装することが望ましい、他の状況で使用することができる。また、例示的な実施形態を記載する文脈の中でなされた特定の仮定は、本発明の要件として解釈すべきでないことにも留意すべきである。本発明は、これら特定の仮定を適用しない他の実施形態に実装することができる。添付特許請求の範囲の範囲内にある、これらおよび多数の他の代替の実施形態は、当業者には容易に明白になるであろう。
【図１】
0005551822.tif 000002
【図２】
0005551822.tif 000003
【図３】
0005551822.tif 000004
【図４】
0005551822.tif 000005
【図５】
0005551822.tif 000006
【図６】
0005551822.tif 000007
【図７】
0005551822.tif 000008
【図８】
0005551822.tif 000009