(57)【要約】【解決手段】クライアントジェネリックなデータブロックシーケンスを送信するＤＯＤ放送の方法であって、クライアントジェネリックなデータブロックのデータ伝送シーケンスを準備し（１０４ｎ）、クライアントジェネリックなデータ伝送シーケンスは準最適な時間配信特徴を有し、受信側クライアントが所定の時間内にデータファイルにアクセス開始し得るように、準最適伝送シーケンスに従ったシーケンスのデータブロックから構成されているデータファイルを伝送する（１０８、１１０）動作を備える方法である。そのシーケンスを準備する動作には、データファイルを受信し、時間間隔を特定し、各データブロックが時間間隔中に表示可能であるように、データファイルを時間間隔に基づいて複数のデータブロックに分割し、データファイルを送信するために必要な数のタイムスロットを決定し、前記タイムスロットはそれぞれ時間間隔と実質的に等しい継続時間を有し、各時間スロットに複数のデータブロックのなかの少なくとも一つを割り当てることが含まれる。【選択図】図１Ａ
2005506725.tif 000002
【特許請求の範囲】
【請求項１】
クライアントジェネリックなデータブロックシーケンスを伝送するデータ・オン・デマンド（ＤＯＤ）放送方法であって、
準最適な時間配信特性を有するクライアントジェネリックなデータブロックのデータ伝送シーケンスを準備する動作と、
受信側クライアントが所定の期間内に前記データブロックシーケンスからなるデータファイルへのアクセスを開始することができるよう、非クライアント固有方式にて、前記データファイルを前記準最適な伝送シーケンスに従って複数のクライアントに伝送する動作と
を備える方法。
【請求項２】
請求項１に記載の方法において、前記所定の期間は継続時間を有し、前記継続時間は前記データブロックシーケンスのうちの少なくとも一つに含まれている情報に対応している方法。
【請求項３】
請求項１に記載の方法において、前記データファイルの伝送は、前記複数のクライアントの数とは無関係な量の伝送帯域幅を必要とする方法。
【請求項４】
請求項３に記載の方法において、前記準最適なデータ伝送シーケンスを準備する動作は、
データファイルを受信する動作と、
時間間隔を特定する動作と、
各データブロックが前記時間間隔中にわたって表示され得るように、前記時間間隔に基づいて前記データファイルを複数のデータブロックに分割する動作と、
前記データファイルを送信するために必要なタイムスロットの数を決定する動作と、前記タイムスロットはそれぞれ前記時間間隔と実質的に等しい継続時間を有し、
各時間スロットに前記複数のデータブロックのうちの少なくとも一つを割り当てる動作と
を備える方法。
【請求項５】
請求項４に記載の方法において、クライアントは、前記タイムスロットの所定の数の範囲内で、前記伝送されたデータファイルにアクセスすることができる方法。
【請求項６】
請求項５に記載の方法において、タイムスロットの前記所定の数は一つである方法。
【請求項７】
請求項５に記載の方法において、タイムスロットの前記所定の数は少なくとも二つである方法。
【請求項８】
請求項５に記載の方法において、前記タイムスロットの数は、選択された帯域幅を示している方法。
【請求項９】
請求項１に記載の方法は、電子番組案内（ＥＰＧ）を伝送することを含み、前記ＥＰＧにより、受信側クライアントは視聴のために必要なデータファイルを選択することができる方法。
【請求項１０】
請求項９に記載の方法において、前記ＥＰＧは、選択されたデータファイルを受信するための遅延時間を示す方法。
【請求項１１】
準最適なデータブロックシーケンスとして伝送されるデータファイルを受信する方法であって、
少なくとも一つの選択されたデータファイルを示すユーザ入力を受信する動作と、
所定の期間中、前記準最適なデータブロックシーケンスの複数のデータブロックのうちの少なくとも一つを記憶場所に格納する動作と、
前記所定の期間が経過した後、前記データファイルの少なくとも第１の部分をユーザに表示する動作と、
前記準最適なデータブロックシーケンスの前記複数のデータブロックの少なくとも一つの追加データブロックを受信する動作と、
前記格納されたデータブロックのうちの少なくとも一つを前記少なくとも一つの追加データブロックと結合することにより、前記データファイルの少なくとも第２の部分を前記ユーザに表示する動作と
を備える方法。
【請求項１２】
請求項１１に記載の方法において、前記少なくとも一つの追加データブロックもまた記憶場所に格納される方法。
【請求項１３】
請求項１１に記載の方法はさらに、前記データファイルに対応するデータブロックが再生予定前に確実に受信されるように、前記データファイルを再生する前に必要な待機時間を決定することを備える方法。
【請求項１４】
請求項１９に記載の方法において、前記待機時間は、前記準最適なデータブロックシーケンスの前記データブロックのうちの少なくとも一つのパックヘッダに含まれている情報に応じて決定される方法。
【請求項１５】
準最適なデータブロックシーケンスとして、複数のタイムスロットにわたり繰り返して放送されるデータファイルを取り込む装置であって、
ユーザから前記放送データファイルのうちの少なくとも一つを選択するファイル要求を受信する手段と、
第１の時間間隔中に前記データブロックシーケンスの少なくとも一つのデータブロックを取り込むために、許可ファイル取り込み処理を開始する手段と、
前記第１の時間間隔後に前記データファイルの第１の部分を表示する手段と、
前記準最適なデータブロックシーケンスの残りのデータブロックを取り込む手段と、
前記第１の時間間隔の間、前記残りのデータブロックのうちの少なくとも一つと関連して取りこまれる前記少なくとも一つのデータブロックを用いて、前記データファイルの第２の部分を表示する手段とを備える装置。
【請求項１６】
請求項１４に記載の装置はさらに、要求されているファイルを取り込むための許可を要求する手段を備える装置。
【請求項１７】
請求項１４に記載の装置において、電子番組案内（ＥＰＧ）はユーザのセット・トップ・ボックス（ＳＴＢ）により受信されるとともに前記ユーザに提示される装置。
【請求項１８】
請求項１６に記載の装置において、前記ユーザＳＴＢは、ユーザによる前記ファイル選択に対応する前記ＥＰＧと共に伝送されるデータから、ダウンロード時間および再生時間を自動的に決定するとともに、待機期間後、前記ファイルの少なくとも一部を自動的に表示し、
前記待機期間の継続時間は前記ダウンロード時間および前記再生時間に対応している装置。
【請求項１９】
請求項１７に記載の装置であって、前記ユーザＳＴＢは前記再生時間および前記ダウンロード時間に対応する待機期間の継続時間を自動的に演算する装置。
【請求項２０】
請求項１８に記載の装置において、前記待機期間はさらに、前記ファイルを構成するデータブロック数に対応している装置。
【請求項２１】
準最適なシーケンスのデータブロックとして、複数のタイムスロットにわたり繰り返し放送されるデータファイルを取り込む装置であって、
ユーザから、前記放送データファイルのうちの少なくとも一つを選択するファイル要求を受信する入力装置と、
第１の時間間隔中に前記データブロックシーケンスの少なくとも一つのデータブロックを取り込むために、許可ファイル取り込み処理を開始する処理装置と、
前記第１の時間間隔後に前記データファイルの第１の部分を表示する表示装置と、
前記準最適なデータブロックシーケンスの残りのデータブロックを取り込む通信回線と
を備え、前記表示装置はさらに、前記第１の時間間隔の間に、少なくとも１つの前記残りのデータブロックと関連して取り込まれる前記少なくとも一つのデータブロックを用いて、前記データファイルの第２の部分を表示するよう動作する装置。
【請求項２２】
請求項１９に記載の装置はさらに、要求されているファイルを取り込むための許可を要求する通信ポートを備える装置。
【請求項２３】
請求項２０に記載の装置において、ＥＰＧは、ユーザＳＴＢにより受信されるとともに前記ユーザに提示される装置。
【請求項２４】
請求項２１に記載の装置において、前記ユーザＳＴＢは前記ユーザによる前記ファイル選択に対応する前記ＥＰＧと共に伝送されるデータから、ダウンロード時間および再生時間を自動的に決定するとともに、待機期間後、前記ファイルの少なくとも一部を自動表示し、
前記待機期間の継続時間は前記ダウンロード時間および前記再生時間に対応している装置。
【請求項２５】
請求項２２に記載の装置であって、前記ユーザＳＴＢは、前記再生時間および前記ダウンロード時間に対応する待機期間の継続時間を自動的に演算する装置。
【請求項２６】
請求項２３に記載の装置において、前記待機期間はさらに、前記ファイルを構成するデータブロック数に対応している装置。
【請求項２７】
複数のデータファイルを伝送するデータ・オン・デマンド（ＤＯＤ）放送システムにおいて、各データファイルは準最適なデータブロックシーケンスとして伝送され、前記システムは、
複数のデータファイルを放送するＤＯＤ放送サーバと、
前記ＤＯＤ放送サーバと通信可能に接続されている伝送媒体と、
前記伝送媒体を介して前記ＤＯＤ放送サーバと通信可能に接続されている複数の受信部と
を備え、
前記ＤＯＤ放送サーバは、前記伝送媒体を介して、複数のデータファイルを前記複数の受信部に繰り返し伝送し、
前記受信部は、選択されたデータファイルに対応する許可情報を要求するように、さらには前記許可情報を受信するように、またさらには所定の期間後に前記選択されたデータファイルの一部をユーザに表示するように動作し、
前記所定の期間は、前記データファイルの表示開始よりも前に、前記受信部による前記データファイルの一部の格納を可能にするシステム。
【請求項２８】
広域ネットワークを通じて準最適なデータブロックシーケンスとして放送を行うＤＯＤデータファイルにアクセスするセット・トップ・ボックス装置であって、
ユーザから前記放送データファイルのうちの少なくとも一つを選択するファイル要求を受信する入力装置と、
第１の時間間隔中に前記データブロックシーケンスの少なくとも一つのデータブロックを取り込むために、許可ファイル取り込み処理を開始する処理装置と、
前記第１の時間間隔後に前記データファイルの第１の部分を表示する表示装置と、
前記準最適なデータブロックシーケンスの残りのデータブロックを取り込む通信回線と
を備え、前記表示装置はさらに、前記第１の時間間隔中に前記残りのデータブロックのうちの少なくとも一つと共に取り込まれる前記少なくとも一つのデータブロックを用いて、前記データファイルの第２の部分を表示するよう動作する装置。
【請求項２９】
請求項２６に記載の装置において、前記処理装置はさらに、前記選択されたデータファイルの最小部分が受信されると、前記選択されたデータファイルを自動的に表示開始するよう動作する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、データ・オン・デマンドシステムに関する。特に本発明は、データ通信のスケジューリングに関する。
【背景技術】
【０００２】
ビデオ・オン・デマンド（ＶＯＤ）システムは、データ・オン・デマンド（ＤＯＤ）システムの一種である。ＶＯＤシステムにおいてビデオデータファイルは、一つのサーバ、あるいは複数サーバのネットワークによって、１つ以上のクライアントに要求（デマンド）に基づいて提供される。
【０００３】
従来のＶＯＤ構成では、一つのサーバ、あるいは複数サーバのネットワークは、標準的な階層クライアント・サーバモデルにてクライアントと通信する。例えばクライアントは、サーバにデータファイル（例えば、映像データファイル）の要求を送信する。クライアントの要求に応じて、サーバは要求されたファイルをクライアントに送信する。標準クライアント・サーバモデルにおいて、クライアントからのデータファイル要求は、１つあるいは複数のサーバによって実現され得る。クライアントは、後から利用するために、受信された任意のデータファイルを不揮発性メモリにローカルで保存する機能を有し得る。標準クライアント・サーバモデルは、双方向通信のインフラを必要とする。既存のケーブルは片方向通信のみ提供可能であるため、現時点では、双方向通信は新しいインフラの構築を必要とする。双方向通信インフラには、例えば、光ファイバ・同軸ケーブル（ＨＦＣ）、あるいはすべてのファイバインフラがある。既存のケーブルを置き換えると非常にコストがかかるため、その結果もたらされるサービスは、大部分のユーザにとって手頃な価格とはいえない可能性がある。
【０００４】
また、標準クライアント・サーバモデルは、サービスプロバイダ（例えばケーブル会社）が多数のクライアントにＶＯＤサービスの提供を試みる場合には、多くの制限を受ける。標準クライアント・サーバモデルに対する一制限としては、サービスプロバイダは、ネットワーク内の各クライアントからのすべての要求を断続的に受けるとともに実現する機構を実装しなければならいため、サービスを享受し得るクライアント数はかかる機構の処理能力によって決まるという制限がある。ある機構は、大型で高速なディスクアレイを備える大規模並列コンピュータをローカルサーバとして用いる。しかしながら、既存の最高速ローカルサーバでさえ、一度にビデオデータストリームの配信が可能なクライアント数は、わずかにおよそ１，０００から２，０００である。したがって、より多くのクライアントにサービスするためには、ローカルサーバの数を増やす必要がある。ローカルサーバを増加すると、ローカルサーバの維持管理のために、より上位のサーバが必要となる。
【０００５】
標準クライアント・サーバモデルの別の制限は、各クライアントはそれぞれの帯域幅を要することである。したがって、必要とされる帯域幅の合計は、加入クライアントの数に正比例する。帯域幅の制限を改善するために、これまでローカルサーバ内のキャッシュメモリが使用されてきたが、キャッシュメモリ自体にも同様に制限があるため、キャッシュメモリの使用は問題の解決とはならない。
【０００６】
現在、ビデオ・オン・デマンドサービスがクライアントにとってより手ごろな価格となるように、既存のサービスプロバイダは、ローカルサーバあたりのクライアントの割合をローカルサーバの能力を超えて増大させている。一般的に、ローカルサーバ１台につき１，０００のクライアントに対してサービスの提供が可能であるが、実際には１０，０００のクライアントに対するサービスを請け負っている。この手法は、ほとんどの加入クライアントが同時にビデオを注文しなければ機能し得る。しかしながら、多くのクライアントは同時に（例えば夜間や週末など）ビデオの視聴を所望する傾向にあるため、この手法は、かかるピーク時の間、ローカルサーバをオーバーロード状態にして障害を起こす構成である。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、既存のインフラを取り替えることなく、ほぼすべての伝送媒体を介して、多数のクライアントにオン・デマンドサービスを与えることができるシステムの提供が望まれている。さらに、加入消費者の数とは無関係な送信帯域幅を有するクライアントジェネリックな放送システムを提供することが望まれている。さらに、低減された伝送帯域幅を必要とするクライアントジェネリックな準最適データ・オン・デマンドサービスを与えることができるシステムの提供も望まれている。
【課題を解決するための手段】
【０００８】
本発明は、低減帯域幅のクライアントジェネリックなデータブロックシーケンスとして一つ以上のデータファイルを、双方向通信を必要とすることなく、狭い帯域幅を通じて多数のクライアントに同時に伝送することができるＤＯＤ放送システムを提供する。本発明はさらに、クライアントからデータファイルが注文されてから短時間のうちに、クライアントジェネリックなフォーマットを介してデータファイル放送を再生開始することができるＳＴＢを提供する。さらに、データファイルの再生を開始するより前に、インテリジェントＳＴＢがデータファイル部分をロードすることができるように、クライアントアクセス時間を遅延することによってデータファイルをダウンロードする、さらに帯域幅を効率化する方法が提供されている。
【０００９】
簡単にいうと、本発明の一態様は、複数のデータファイルを送信するデータ・オン・デマンド（ＤＯＤ）放送システムにおいて具体化され、各データファイルは、低減されたクライアントジェネリックなデータブロックシーケンスとして送信されている。データ・オン・デマンド（ＤＯＤ）放送システムは、複数のデータファイルを放送するためのＤＯＤ放送サーバと、ＤＯＤ放送サーバに通信接続されている伝送媒体と、伝送媒体を介してＤＯＤ放送サーバに通信接続されている複数の受信部とを備え、ＤＯＤ放送サーバは、伝送媒体を介して、複数のデータファイルを低減されたクライアントジェネリックなフォーマットにて複数の受信部に繰り返し伝送し、受信部は、選択されたデータファイルに対応する許可情報を要求する、許可情報を受信する、および、所定時間の経過後に選択されたデータファイルをユーザに表示するよう動作し、所定の期間により受信部は、データファイルの表示開始より前に、データファイルの一部を格納することができる。
【００１０】
本発明の別の態様は、準最適なデータブロックシーケンスを伝送するデータ・オン・デマンド（ＤＯＤ）放送方法を教示し、その方法は、シーケンス中の順に隣り合う２つのデータブロックが同一ではない準最適なデータブロックのデータ伝送シーケンスを準備する動作と、準最適な伝送シーケンスに従ったデータブロックシーケンスから成るデータファイルを、受信側クライアントが所定の期間内にデータファイルにアクセス開始し得るよう、非クライアント固有方式で複数のクライアントに送信する動作とを含む。さらに、所定の期間には継続時間があり、その継続時間はデータブロックシーケンスのうちの少なくとも一つに含まれている情報に対応している。準最適なデータ伝送シーケンスを準備する動作は、データファイルを受信する動作と、時間間隔を特定する動作と、各データブロックが時間間隔中に表示され得るように、時間間隔に基づいてデータファイルを複数のデータブロックに分割する動作と、データファイルを送信するために必要なタイムスロット数を決定する動作と、タイムスロットはそれぞれ、時間間隔と実質的に等しい継続時間を有し、各タイムスロットに複数のデータブロックのうちの少なくとも一つを割り当てる動作とを含む。
【００１１】
データ・オン・デマンドシステムは、第１組のチャンネルサーバと、第１組のチャンネルサーバを制御する中央制御サーバと、第１組のチャンネルサーバに接続されている第１組のアップコンバータと、伝送媒体を介して送信データに適合している合成器／増幅器とを備える。代表的な一実施形態において、データ・オン・デマンドシステムはさらに、システムを監視するためのチャンネル監視モジュールと、スイッチ行列と、第２組のチャンネルサーバと、第２組のアップコンバータとを備える。チャンネル監視モジュールは、システム障害が発生した場合に中央制御サーバに報告するよう構成されている。中央制御サーバは、チャンネル監視モジュールからの報告に応じて、第１組のチャンネルサーバ内の欠陥のあるチャンネルサーバを第２組のチャンネルサーバ内のチャンネルサーバで置き換えるとともに、第１組のアップコンバータ内の欠陥のあるアップコンバータを第２組のアップコンバータ内のコンバータで置き換えるように、スイッチ行列に命令する。
【００１２】
準最適なデータブロックシーケンスとして伝送されるデータファイルを受信する方法は、少なくとも一つの選択データファイルを示すユーザ入力を受信する動作と、所定の期間中、準最適なデータブロックシーケンスの複数データブロックのうちの少なくとも一つを、記憶場所に格納する動作と、所定の期間の経過後に、データファイルの少なくとも第１の部分をユーザに表示する動作と、格納されたデータブロックのうちの少なくとも一つを少なくとも一つの追加データブロックと結合することにより、データファイルの少なくとも第２の部分をユーザに表示する動作を含む。
【００１３】
セット・トップ・ボックスという用語は、テレビに装着する装置に限定されず、拡張されたテレビシステムおよびコンピュータを含む本発明の方法に従った放送の伝送を受信することができる任意の装置を含み得る。
【発明を実施するための最良の形態】
【００１４】
本発明は、準最適なデータブロックシーケンスとして、一つ以上のデータファイルを、双方向通信を必要とすることなく狭い帯域幅を通じて、多数のクライアントに同時に伝送することができるＤＯＤ放送システムを提供する。本発明はさらに、データファイルがクライアントから注文されてから短時間のうちに、データファイルの再生を開始することができるＳＴＢを提供する。さらに、データファイルを再生開始するより前に、インテリジェントＳＴＢがデータファイル部分をロードすることができるように、クライアントアクセス時間を遅延することによって、データファイルをダウンロードするより帯域幅を効率化する方法が提供されている。
【００１５】
伝送帯域幅を最小化しながら、伝送されたＤＯＤデータを最大化するいくつかの可能な方法には、一定帯域幅の配信行列と、減少されたアイドルタイムマトリクスとを利用することを含む。これらおよびその他の方法は、Ｋｈｏｉ  Ｈｏａｎｇの上記引用されている発明により教示されている。これらの方法が、時間最適方法にてクライアントジェネリックなＤＯＤサービスを提供する一方、アクセスタイムの遅延と引き換えに要求伝送帯域幅をさらに低減するクライアントジェネリックなＤＯＤ放送サービスを提供するその他の可能性が存在する。
【００１６】
図１Ａは、本発明の一実施形態における代表的なＤＯＤシステム１００を示す。この実施形態では、ＤＯＤシステム１００は、ビデオファイルなどのデータファイルをオンデマンドで提供する。但し、ＤＯＤシステム１００は、ビデオファイルをオンデマンドで提供することに限定されず、例えばゲームファイルなどのその他のデータファイルをオンデマンドで提供することもできる。ＤＯＤシステム１００は、中央制御サーバ１０２と、中央記憶装置１０３と、複数のチャンネルサーバ１０４ａから１０４ｎと、複数のアップコンバータ１０６ａから１０６ｎと、合成器／増幅器１０８とを含む。中央制御サーバ１０２は、チャンネルサーバ１０４を制御する。中央記憶装置１０３は、データファイルをデジタルフォーマットで格納する。代表的な一実施形態において、中央記憶装置１０３に格納されているデータファイルは、ネットワークに接続された中央制御サーバ１０２などの任意の許可コンピュータにより、標準のネットワークインタフェース（例えば、イーサネット接続）を介してアクセス可能である。各チャンネルサーバ１０４にはチャンネルが割り当てられ、アップコンバータ１０６と接続されている。チャンネルサーバ１０４は、中央制御サーバ１０２からの命令に従って、中央記憶装置１０３から取り出されるデータファイルを提供する。各チャンネルサーバ１０４の出力は、対応するアップコンバータ１０６に適した周波数を有する直交振幅変調（ＱＡＭ）によって変調された中間周波数（ＩＦ）信号である。ＱＡＭ変調されたＩＦ信号は、採用される規格に依存している。米国で現在採用されている規格は、データ・オーバー・ケーブル・システム・インタフェース・規格（ＤＯＣＳＩＳ）であり、およそ４３．７５ＭＨｚのＩＦ周波数を必要とする。アップコンバータ１０６は、チャンネルサーバ１０４から受信されるＩＦ信号を高周波信号（ＲＦ信号）に変換する。ＲＦ信号は、周波数および帯域幅を含んでおり、所望のチャンネルおよび採用された規格によって決まる。例えば、ケーブルテレビチャンネル８０について、米国における現行の規格では、ＲＦ信号は、約５５９．２５ＭＨｚの周波数と約６ＭＨｚの帯域幅とを有する。アップコンバータ１０６の出力は、合成器／増幅器１０８に適用される。合成器／増幅器１０８は、受信されたＲＦ信号を増幅、調節および合成した後、その信号を伝送媒体１１０へと出力する。
【００１７】
代表的な実施形態では、中央制御サーバ１０２は、サービスプロバイダがドラッグ・アンド・ドロップ操作によってデータ配信をスケジューリングできるように、グラフィックユーザーインタフェース（図示せず）を備えている。さらに、中央制御サーバ１０２は、チャンネルサーバ１０４を認証および制御して、配信行列に従って開始、あるいは停止させる。代表的な一実施形態では、中央制御サーバ１０２は、チャンネルを自動選択し、選択されたチャンネルでデータファイルを伝送するための配信行列を算出する。中央制御サーバ１０２は、データファイル情報（例えば、継続時間、カテゴリ、レーティング、および／あるいは要旨）のオフラインでの追加、削除、および更新を提供する。さらに、中央制御サーバ１０２は、中央記憶装置１０３に格納されているデータファイルおよびデータベースを更新することにより、中央記憶装置１０３を制御する。
【００１８】
代表的な一実施形態では、既存のケーブルテレビシステム１２０は、クライアントに非ＤＯＤサービスを提供するために、合成器／増幅器１０８に継続して信号を供給し続けることができる。したがって、本発明によるＤＯＤシステム１００は、現在のケーブルテレビサービスを妨げることはない。
【００１９】
図１Ｂは、本発明によるＤＯＤシステム１００の別の代表的な実施形態を示す図である。図１Ａに示した要素に加えて、ＤＯＤシステム１００は、スイッチ行列１１２と、チャンネル監視モジュール１１４と、１組のバックアップ・チャンネルサーバ１１６ａから１１６ｂと、１組のバックアップ・アップコンバータ１１８ａから１１８ｂとを含む。一実施形態において、スイッチ行列１１２は、物理的にはアップコンバータ１０６と合成器／増幅器１０８との間に配置されている。スイッチ行列１１２は、中央制御サーバ１０２により制御されている。チャンネル監視モジュール１１４は、ＤＯＤシステム１００の正常性を監視するために、潜在的なクライアントをシミュレートするよう構成された複数のセット・トップ・ボックスを備える。監視結果は、チャンネル監視モジュール１１４により中央制御サーバ１０２へと伝えられる。チャンネル障害（すなわち、チャンネルサーバ障害、アップコンバータ障害、あるいは通信リンク障害）の場合には、中央制御サーバ１０２は、スイッチ行列１１２を介して、故障状態のコンポーネントを外し、サービスを再開するために正常なバックアップコンポーネント１１６および／または１１８を組み込む。
【００２０】
代表的な実施形態では、ＤＯＤシステム１００より放送されているデータファイルは、ｍｏｔｉｏｎ  ｐｉｃｔｕｒｅｓ  ｅｘｐｅｒｔ  ｇｒｏｕｐ（ＭＰＥＧ）ファイル形式で格納されている。各ＭＰＥＧファイルは、時間軸に沿って、データファイルの特定部分に対してマッピングするデータブロックおよびサブブロックに動的に分割される。これらのデータブロックおよびサブブロックは、中央制御サーバ１０２によって提供されている三次元の配信行列に従って、所定の期間中に送信される。フィードバックチャンネルは、ＤＯＤシステム１００がＤＯＤサービスを提供する際には必要ではない。但し、フィードバックチャンネルが利用可能である場合には、フィードバックチャンネルは、支払い請求、あるいはインターネットサービスの提供などの他の目的のために用いられ得る。
【００２１】
図２は、本発明の一実施形態における代表的なチャンネルサーバ１０４を示す。チャンネルサーバ１０４は、サーバ制御装置２０２、ＣＰＵ２０４、ＱＡＭモジュレータ２０６、ローカルメモリ２０８およびネットワークインタフェース２１０を備える。サーバ制御装置２０２は、データファイルをブロックに（さらに、サブブロックおよびデータパケットに）分割し、中央制御サーバ１０２によって提供されている配信行列に従って送信するためのデータブロックを選択し、選択されたデータを符号化し、符号化されたデータを圧縮し、次いで、圧縮されたデータをＱＡＭモジュレータ２０６に配信するようＣＰＵ２０４に命令することにより、チャンネルサーバ１０４の全般的な動作を制御する。ＱＡＭモジュレータ２０６は、バス（すなわち、ＰＣＩ、ＣＰＵローカルバス）、あるいはイーサネット接続を介して送信するデータを受信する。
代表的な一実施形態において、ＱＡＭモジュレータ２０６は、下流側ＱＡＭモジュレータ、前方型誤り訂正デコーダを備える上流側直交振幅変調／直交位相変位変調方式（ＱＡＭ／ＱＰＳＫ）バーストデモジュレータ、および／または、上流側チューナを備え得る。ＱＡＭモジュレータ２０６の出力は、アップコンバータ１０６に直接適用され得るＩＦ信号である。
【００２２】
ネットワークインタフェース２１０は、中央制御サーバ１０２からの命令のスケジューリングおよび制御、中央制御サーバ１０２へのステータス報告、および、中央記憶装置１０３からのデータファイルの受信を行うために、チャンネルサーバ１０４を他のチャンネルサーバ１０４と中央制御サーバ１０２とに接続する。中央記憶装置１０３から取り込まれるデータファイルはどれも、サーバ制御装置２０２からの命令に従って処理を受ける前に、チャンネルサーバ１０４のローカルメモリ２０８に格納され得る。代表的な一実施形態において、チャンネルサーバ１０４は、ケーブルチャンネルの帯域幅（例えば、６、６．５または８ＭＨｚ）、ＱＡＭ変調（例えば、ＱＡＭ６４またはＱＡＭ２５６）、およびＤＯＤデータストリームの圧縮規格／ビットレート（すなわち、ＭＰＥＧ−１またはＭＰＥＧ−２）に応じて、一つあるいはそれ以上のＤＯＤデータストリームを送信し得る。
【００２３】
図３は、本発明の一実施形態における代表的なセット・トップ・ボックス（ＳＴＢ）３００を示す。ＳＴＢ３００は、ＱＡＭモジュレータ３０２、ＣＰＵ３０４、条件付きアクセスモジュール３０６（例えばスマートカードシステム）、ローカルメモリ３０８、バッファメモリ３０９、ＳＴＢ制御装置３１０、デコーダ３１２、およびグラフィックスオーバレイモジュール３１４を備える。ＳＴＢ制御装置３１０は、クライアント要求に応じたデータの選択、選択されたデータの復号、復号されたデータの解凍、再編集、およびローカルメモリ３０８またはバッファメモリ３０９への格納、および、格納されたデータのデコーダ３１２への送信を行うために、ＣＰＵ３０２およびＱＡＭデモジュレータ３０２を制御することにより、ＳＴＢ３００の全般的な動作を制御する。代表的な一実施形態において、ＳＴＢ制御装置３１０は、伝送媒体１１０から受信されるデータパケット内のデータパケットヘッダに基づいて、ＳＴＢ３００の全般的な動作を制御する。代表的な一実施形態において、ローカルメモリ３０８は不揮発性メモリ（例えばハードドライブ）を含み、バッファメモリ３０９は揮発性メモリを含む。
【００２４】
一実施形態において、ＱＡＭデモジュレータ３０２は、送信および受信モジュールと、以下の内の一つ、あるいは複数を備える：プライバシ暗号化／復号モジュール、前方型誤り訂正デコーダ／エンコーダ、チューナ制御、下流側および上流側処理装置、ＣＰＵ、および、メモリインタフェース回路。ＱＡＭデモジュレータ３０２は、変調されたＩＦ信号を受信し、その信号をサンプリングおよび復調してデータを復元する。
【００２５】
アクセス制限モジュール３０６は、認証後にアクセス権が付与された場合、および／または適切な料金が支払われた場合には、デコード処理を許可する。アクセス条件は、サービスプロバイダによって決定される。
【００２６】
認証方法は、加入レベルと警告レベルとを送信されたＤＯＤデータのヘッダーに直接挿入することを含む。かかる方法において、ＳＴＢ３００は３つの加入レベルを読みとるとともに、読み取られた加入レベルとＳＴＢ３００内に格納されている加入レベルとを比較する。格納されている加入レベルがＤＯＤサービスと共に送信される加入レベルと一致する場合には、そのクライアントはサービスの受信を認証される。警告レベルの場合には、ＳＴＢ３００は、ＤＯＤサービス内部において伝送される警告レベルを読み取り、その警告レベルに対応するメッセージを表示する。これらの認証方法は、２００１年７月９日に出願されたＫｈｏｉ  Ｈｏａｎｇの特許出願「ＣＯＮＴＲＯＬＬＩＮＧ  ＤＡＴＡ−ＯＮ−ＤＥＭＡＮＤ  ＣＬＩＥＮＴ  ＡＣＣＥＳＳ」、出願番号０９／９０２，５０３に教示されており、引用によって本願に組み入れられている。
【００２７】
代表的な一実施形態では、アクセス権が付与されると、デコーダ３１２は、少なくとも１つのデータブロックを復号して、そのデータブロックを出力画面上で表示可能な画像に変換する。デコーダ３１２は、再生、停止、一時停止、コマ送り、巻き戻し、早送りなど、加入クライアントからの命令を支援する。
【００２８】
グラフィックスオーバーレイモジュール３１４は、例えば、アルファブレンディング、あるいはピクチャ・イン・ピクチャ機能を提供することにより、表示される画像の画質を高める。代表的な一実施形態において、サービスプロバイダが本発明に従ったシステムを用いてゲーム・オン・デマンドサービスを提供した場合には、グラフィックスオーバーレイモジュール３１４は、ゲームプレイモード中、グラフィックスの加速に用いられ得る。
【００２９】
代表的な一実施形態において、データファイルは、全てのケーブルテレビ加入者に対して放送されるが、互換性のあるＳＴＢ３００を持つＤＯＤ加入者のみが、データ・オン・デマンドサービスを復号して楽しむことができる。代表的な一実施形態において、データファイルをオンデマンドで取得するための許可は、アクセス制限制御モジュール３０６内のスマートカードシステムを介して取得され得る。スマートカードは、サービスプロバイダにより設定される小売店、あるいは自動販売機において再充電可能であってよい。別の代表的な実施形態において、定額料金体系は、加入者に対し、利用可能なデータファイルすべてに対する無制限のアクセスを提供する。
【００３０】
代表的な一実施形態において、データ・オン・デマンドの対話性により、クライアントは利用可能なデータファイルをいつでも選択することができる。クライアントが選択ボタンを押してから選択されたデータファイルを再生開始するまでの時間は、応答時間と呼ばれる。ＤＯＤサービスを提供するために割り当てられるリソース（例えば、帯域幅、サーバの能力）が大きいほど、応答時間はより短くなる。代表的な一実施形態において、応答時間は、リソース割り当てのレーティングおよび所望のサービスの質に基づいて決定され得る。
【００３１】
代表的な一実施形態では、選択された応答時間により、１タイムスロットの継続時間が決定される。１タイムスロット（ＴＳ）の継続時間は、クライアントが常用速度でデータブロックを再生する時間間隔である。代表的な一実施形態において、ビデオファイルなどのデータファイルは、各データブロックが、１タイムスロットの継続時間の間、データファイルの再生を支援し得るよう、複数のデータブロックに分割されている。
【００３２】
一実施形態では、各データファイルのデータブロック数（NUM_OF_BLKS）は、以下のとおり演算され得る：
【００３３】
【数１】
2005506725.tif 000003
【００３４】
式（１）〜（４）では、Estimated_BLK_Sizeは（バイト数表示の）推定ブロックサイズ、DataFile_Sizeは（バイト数表示の）データファイルサイズ、ＴＳは（秒数表示の）タイムスロットの継続時間、DataFile_Lengthは（秒数表示の）データファイルの継続時間、BLK SIZEは各データブロックに必要とされるクラスタの数、CLUSTER_SIZEは各チャンネルサーバ１０４のためのローカルメモリ２０８内のクラスタのサイズ（例えば、６４キロバイト）、BLK_SIZE_BYTESはバイト数で表されるブロックサイズである。
この実施形態では、ブロック数（NUM_OF_BLKS）は、データファイルのサイズ（バイト数表示）にデータブロックのサイズ（バイト数表示）を加え、そこから１バイトを引き、さらに、バイト数で表されるデータブロックのサイズで割ったものに等しい。式（１）〜（４）は、１つの具体的な実施形態を示している。データファイルのデータブロック数の演算に他の方法を利用してよいことは、当業者にとって明らかである。例えば、データファイルをデータブロックに分割するのは、主に、チャンネルサーバ１０４のローカルメモリ２０８の推定ブロックサイズおよびクラスタサイズの関数である。したがって本発明は、上述した特定の実施形態に限定されるべきではない。
【００３５】
図４は、本発明の一実施形態において、データファイルを送信するためのスケジューリング行列を生成する代表的な処理を示す。代表的な一実施形態において、本発明は、時分割多重化（ＴＤＭ）および周波数分割多重化（ＦＤＭ）技術を用いて、サーバ側にてデータ配信を圧縮およびスケジューリングしている。代表的な一実施形態では、スケジューリング行列は、各データファイルに対して生成される。一実施形態において、各データファイルは複数のデータブロックに分割され、スケジューリング行列はデータブロック数に基づいて生成される。一般的に、スケジューリング行列は、データファイルのデータブロックをサーバからクライアントへと送信するための送信順序を提供し、その結果、データブロックは、任意の時間にデータファイルへのアクセスを希望する任意のクライアントによって、シーケンシャルな順序にてアクセス可能になる。
【００３６】
工程４０２において、データファイルについての多数のデータブロック（ｘ）が受信される。第１の変数ｊが、０に設定される（工程４０４）。参照配列がクリアされる（工程４０６）。参照配列は、内部管理のためにデータブロックのトラックを維持する。次に、ｊは、ｘと比較される（工程４０８）。ｊがｘ未満である場合には、第２の変数ｉが０に設定される（工程４１２）。次に、ｉは、ｘと比較される（工程４１４）。ｉがｘ未満である場合には、スケジューリング行列の列［（ｉ＋ｊ）  ｍｏｄｕｌｏ  （ｘ）］に格納されているデータブロックが参照配列に書き込まれる（工程４１８）。参照配列が当該データブロックをすでに有している場合には、重複して書き込まない。開始時には、スケジューリング行列はまだエントリも有していないため、この工程は飛ばしてもよい。次に参照配列は、データブロックｉを含むか否か調べられる（工程４２０）。開始時には、参照配列内のエントリはすべて工程４０６でクリアされているため、参照行列内には何も存在しない。参照配列がデータブロックｉを含まない場合には、スケジューリング行列の行列位置［（ｉ＋ｊ）  ｍｏｄｕｌｏ  （ｘ），ｊ］および参照配列に、データブロックｉが加えられる（工程４２２）。データブロックｉがスケジューリング行列および参照配列に加えられた後、ｉ＝ｉ＋１になるようにｉは１つ増分され（工程４２４）、本処理は、ｉ＝ｘになるまで工程４１４にて繰り返される。参照配列がデータブロックｉを含む場合には、ｉ＝ｉ＋１になるようにｉは１つ増分され（工程４２４）、その処理は、ｉ＝ｘになるまで工程４１４にて繰り返される。ｉ＝ｘの場合には、ｊ＝ｊ＋１になるようにｊは１つ増分され（工程４１６）、その処理はｊ＝ｘになるまで工程４０６にて繰り返される。全体の処理は、ｊ＝ｘ（工程４１０）のとき終了する。
【００３７】
代表的な一実施形態において、データファイルが６つのデータブロックに分割される（ｘ＝６）場合には、スケジューリング行列および参照配列は、以下のように表される。
【００３８】
【表１】
2005506725.tif 000004
【００３９】
【表２】
2005506725.tif 000005
【００４０】
この代表的な実施形態では、上述のスケジューリング行列に基づいて、データファイルの６つのデータブロックが、以下の順番で送信される：
【００４１】
【表３】
2005506725.tif 000006
【００４２】
別の代表的な実施形態において、先読み処理は、予測されたアクセス時間より前にデータファイルの所定数のデータブロックを送信するために、先読みスケジューリング行列の演算に用いられ得る。例えば、タイムスロット番号が４以上の任意のタイムスロットに対して、所定の先読み時間が１タイムスロットの継続時間である場合には、データファイルのデータブロック４（ｂｌｋ４）は、ＴＳ３、あるいはそれよりも前に加入クライアントのＳＴＢ３００によって受信されなければならないが、ＴＳ４までは再生されることはない。先読みスケジューリング行列を生成する処理工程は、本実施形態における先読みスケジューリング行列が先読み時間に基づいて早めの送信シーケンスをスケジューリングするという点を除いては、図４に関連して上述した処理工程と実質的に同じである。データファイルが６つのデータブロックに分割されると仮定すると、先読みスケジューリング行列に基づく代表的な送信シーケンスは、２タイムスロットの継続時間の先読み時間を有し、以下のように表され得る：
【００４３】
【表４】
2005506725.tif 000007
【００４４】
１組のデータファイルを送信するための三次元の配信行列は、その１組のデータファイルの中の各データファイルに対するスケジューリング行列に基づいて生成される。三次元の配信行列では、１組のデータファイル内における各データファイル用のＩＤを含む第３の次元が生成される。三次元の配信行列は、各チャンネルにおいて利用可能な帯域幅を効率的に用いて、複数のデータストリームを配信するために算出される。代表的な一実施形態において、当該分野において周知である畳み込みメソッドは、１組のデータファイルの効率的な配信をスケジューリングするために、三次元の配信行列の生成に用いられている。例えば、畳み込みメソッドは、以下の方針を含み得る：（１）任意のタイムスロット（ＴＳ）の継続時間に送信されるデータブロックの総数は、可能な限り最小に維持される必要がある。（２）複数の部分的な解決法が方針（１）に対して利用可能である場合、好ましい解決手法は、任意の参照タイムスロットの継続時間中に送信されるデータブロックと、（参照タイムスロットの）前のタイムスロットの継続時間中に送信されるデータブロックと、（参照タイムスロットの）次のタイムスロットの継続時間中に送信されるデータブロックとを加算することによって得られるデータブロックの和が最小である解決手法である。例えば、２つの短いデータファイル、すなわちＭおよびＮを送信する代表的なシステムを想定すると、各データファイルが６つのデータブロックにそれぞれ分割されている場合、スケジューリング行列に基づく伝送シーケンスは、以下のようになる。
【００４５】
【表５】
2005506725.tif 000008
【００４６】
上述したような代表的な畳み込みメソッドを適用すると、配信行列として可能な組み合わせは、以下のとおりである：
【００４７】
【表６】
2005506725.tif 000009
2005506725.tif 000010
【００４８】
方針（１）を適用すると、オプション２、４、６は、任意のタイムスロット中に送信されるデータブロックの最大数が最も小さい（すなわち、６データブロック）。方針（２）を適用すると、任意の参照タイムスロットのデータブロックと、隣接するタイムスロットのデータブロックとの和が最小（すなわち、１６データブロック）なのはオプション４であるため、この代表的な実施形態における最適な配信行列はオプション４となる。したがって、この実施形態では、データファイルＮの送信シーケンスは、３タイムスロット分、シフトされなければならない。代表的な一実施形態では、三次元の配信行列は、各チャンネルサーバ１０４に対して生成されている。
【００４９】
各データファイルのデータブロックが配信行列に従って送信されると、多数の加入クライアントがいつでもデータファイルにアクセス可能になり、各加入クライアントは、適時、データファイルの適切なデータブロックを利用することができる。上述した実施例において、１タイムスロットの継続時間が５秒間に等しいと仮定すると、ＤＯＤシステム１００は、データファイルＭおよびＮのデータブロックを、最適な配信行列に従って（すなわちデータファイルＮの配信シーケンスを３タイムスロット分シフトする）、以下の方法で送信する：
【００５０】
【表７】
2005506725.tif 000011
【００５１】
クライアントＡが、時刻００：００：００において映画Ｍを選択すると、クライアントＡのＳＴＢ３００は、データブロックの受信（receive）、格納（store）、再生（play）、および拒否（reject）を以下のように行う：
【００５２】
【表８】
2005506725.tif 000012
【００５３】
クライアントＢが、時刻００：００：１０において映画Ｍを選択すると、クライアントＢのＳＴＢ３００は、データブロックの受信、格納、再生、および拒否を以下のように行う：
【００５４】
【表９】
2005506725.tif 000013
【００５５】
クライアントＣが、時刻００：００：１５において映画Ｍを選択すると、クライアントＣのＳＴＢ３００は、データブロックの受信、格納、再生、および拒否を以下のように行う：
【００５６】
【表１０】
2005506725.tif 000014
【００５７】
クライアントＤが、時刻００：００：３０において映画Ｍを選択すると、クライアントＤのＳＴＢ３００は、データブロックの受信、格納、再生、および拒否を以下のように行う：
【００５８】
【表１１】
2005506725.tif 000015
【００５９】
上述の例で示したように、任意の組み合わせのクライアントは、任意の時間に独立して、サービスプロバイダにより提供される任意のデータファイルを選択および再生開始し得る。上述の実施形態で所定の数のデータファイルを送信するために利用可能な帯域幅が不十分な場合には、以下に説明するような準最適な送信スケジュールを利用してわずかに時間を遅延させることにより、大量のデータを送信することが可能である。上記の方法が時間最適方式におけるクライアントジェネリックなＤＯＤサービスを提供する一方、続く処理は、アクセスタイムを遅延させる代わりに、要求伝送帯域幅をさらに縮小させるクライアントジェネリックなＤＯＤ放送サービスを提供する方法を教示している。
【００６０】
図５は、準最適なスケジューリング行列を生成する代表的な方法５００を示す図である。代表的な一実施形態において、本発明は、時分割多重化（ＴＤＭ）および周波数分割多重化（ＦＤＭ）技術を用いて、サーバ側にてデータ配信を圧縮およびスケジューリングしている。代表的な実施形態では、準最適なスケジューリング行列は、各データファイルに対して生成される。一実施形態において、各データファイルは複数のデータブロックに分割され、準最適なスケジューリング行列は、データブロック数に基づいて生成される。準最適なスケジューリング行列は、データファイルのデータブロックをサーバからクライアントへと送信するための送信順序を提供し、その結果データブロックは、１タイムスロットの任意の開始時間内において、データファイルへのアクセスを希望する任意のクライアントによりシーケンシャルにアクセスすることができる。
【００６１】
工程５０２において、データファイルについての多数のデータブロック数（ｘ）が受信される。第１の変数ｊが、０に設定される（工程５０４）。参照配列がクリアされる（工程５０６）。参照配列は、内部管理のためにデータブロックのトラックを維持する。次に、ｊは、ｘと比較される（工程５０８）。ｊがｘ未満である場合には、第２の変数ｉが０に設定される（工程５１２）。次に、ｉは、ｘと比較される（工程５１４）。ｉがｘ未満である場合には、準最適なスケジューリング行列の列［（ｉ＋ｊ）  ｍｏｄｕｌｏ  （ｘ）］に格納されたデータブロックが、参照配列に書き込まれる（ステップ５１８）。参照配列がかかるデータブロックをすでに有している場合には、重複して書き込まない。開始時には、準最適なスケジューリング行列はまだエントリを有していないため、この工程は飛ばしてもよい。次に参照配列は、データブロックｉを含むかについて否か調べられる（工程５２０）。開始時には、参照配列内のエントリはすべて工程５０６でクリアされているため、参照行列内には何も存在しない。参照配列がデータブロックｉを含まない場合には、準最適なスケジューリング行列の一つ前の列（ｉ−１）は、その行列の列（ｉ−１）がデータブロックｉを含むか否かについて調べられる。（工程５２１）。準最適な行列の列（ｉ−１）がデータブロックｉをも含まない場合には、データブロックｉは、準最適なスケジューリング行列の行列位置［（ｉ＋ｊ）  ｍｏｄｕｌｏ  （ｘ），ｊ］および参照配列に加えられる（工程５２２）。データブロックｉが準最適なスケジューリング行列および参照配列に加えられると、ｉ＝ｉ＋１になるようにｉは１つ増分される（工程５２４）、続いて処理は、ｉ＝ｘになるまで工程５１４にて繰り返される。参照配列がデータブロックｉ、あるいは準最適なスケジューリング行列の列（ｉ−１）を含む場合には、ｉ＝ｉ＋１になるようにｉは１つ増分され（工程５２４）、続いてその処理は、ｉ＝ｘになるまで工程５１４にて繰り返される。ｉ＝ｘの場合には、ｊ＝ｊ＋１になるようにｊは１つ増分され（工程５１６）、その処理はｊ＝ｘになるまで工程５０６にて繰り返される。全体の処理は、ｊ＝ｘ（工程５１０）のとき終了する。
【００６２】
代表的な一実施形態において、データファイルが６つのデータブロックに分割される（ｘ＝６）場合には、準最適なスケジューリング行列および参照配列は、以下のように表される。
【００６３】
【表１２】
2005506725.tif 000016
【００６４】
【表１３】
2005506725.tif 000017
【００６５】
この代表的な実施形態では、上述の準最適なスケジューリング行列に基づいて、データファイルの６つのデータブロックが以下の順に送信される：
【００６６】
【表１４】
2005506725.tif 000018
【００６７】
図４の代表的な「最適」なスケジューリングシーケンスと比較すると、この代表的な「準最適」なスケジューリングシーケンスが送信するデータブロック数は、３つ少ない。この結果、代表的な準最適なスケジューリングを用いる送信に必要な帯域幅が１８．７５％減少する。この準最適なスケジューリングは、受信側のＳＴＢに、１タイムスロットの継続時間中、選択されたデータファイルをユーザに遅延して表示することを要求する。
【００６８】
当業者には明らかなように、上記の実施形態の準最適なスケジューリングは、無数に存在する可能な具体的スケジューリングスキームのなかのほんの一つにすぎない。ＳＴＢアクセス時間の大幅な遅延を用いると、データファイルの伝送に必要とされる帯域幅は大幅な縮小が実現され得る。例えば、受信側ＳＴＢが選択されたデータファイルを表示し得る前に、２以上のタイムスロット分の遅延を必要とする伝送もある。
【００６９】
図６は、本発明の一実施形態において、「準最適」なＤＯＤデータ送信を受信する代表的なＳＴＢの方法を示す図である。処理６００は、工程６０２で開始され、そこでＳＴＢ３００（図３）は、ＤＯＤ放送システム１００（図１Ａ）から電子案内番組（ＥＰＧ）を受信する。ＥＰＧ番組は、ＤＯＤシステム１００により利用可能な全ファイルをリストに載せている。工程６０３において、ユーザは、所望のデータファイルと関連付けられている購入ボタンを押すことにより、ＥＰＧのリストに掲載されているデータファイルを選択する。工程６０４において、ＳＴＢ３００（図３）は、選択されたデータファイルのデータブロックを格納開始する。ＳＴＢは所定の期間待機し、ＳＴＢが中断することなくデータファイルを再生するために、選択されたデータファイルのデータブロックの十分な量が格納され得るようにする。一実施形態において、ＣＰＵ３０４（図３）は、選択されたデータファイルの円滑な再生を保証するために必要な遅延量を決定することができる。このことは、種々のアルゴリズムを用いる、あるいは単に要求遅延情報をＤＯＤシステム１００から送信されるデータ内のパケットヘッダ場所に含むことにより実現することができる。かかる実施形態において、ＤＯＤシステムは、必要な遅延のタイムスロット数を利用可能な伝送帯域幅と対応付けるために、準最適な配信行列を変更する。
【００７０】
選択されたデータファイルの連続表示に必要なデータブロックを十分格納するほど待機したあと、ＳＴＢは、その選択されたデータファイルを自動再生し始める。
別の実施形態において、遅延期間が完了すると、ＳＴＢはユーザに、選択されたデータファイルの表示開始を指示する。
【００７１】
処理概要
サービスプロバイダは、放送の前に、複数のデータファイル（例えばビデオファイル）をチャンネルサーバ１０４に送信するようスケジューリングされ得る。中央制御サーバ１０２は、三次元の配信行列（ＩＤ、タイムスロット、およびデータブロック送信順序）を算出するとともにチャンネルサーバ１０４に送信する。放送中に、チャンネルサーバ１０４は、適切なデータブロックを適切な順序で送信するために三次元の配信行列を参照する。多数の加入クライアントが独立して、いつでも連続してかつシーケンシャルにデータファイルの視聴を始めることができるように、各データファイルはデータブロックに分割されている。データファイルのデータブロックの大きさは、選択されたタイムスロットの継続時間と、データファイルのデータストリームのビットレートとに依存する。例えば、一定のＭＰＥＧデータストリームでは、各データブロックは、以下の式で表される固定サイズを有する。ブロックサイズ（メガバイト）＝ビットレート（メガバイト毎秒）×ＴＳ（秒）／８…（１）。
【００７２】
代表的な実施形態において、データブロックのサイズは、チャンネルサーバ１０４のローカルメモリ２０８内におけるメモリクラスタサイズの次に高い倍数になるよう調整される。例えば、算出されたデータブロック長が上記の式（１）により７２０キロバイトの場合には、ローカルメモリ２０８のクラスタサイズが６４キロバイトなら、求められるデータブロック長は７６８キロバイトでなければならない。本実施形態において、データブロックは、クラスタサイズと同じ大きさをそれぞれ有する複数のサブブロックにさらに分割される必要がある。この例では、データブロックは、６４キロバイトである１２のサブブロックを有する。
【００７３】
サブブロックは、さらにデータパケットに分割することができる。各データパケットは、パケットヘッダとパケットデータとを含む。パケットデータの長さは、各チャネルサーバのＣＰＵによるデータの送信先である物理層の最大伝送単位（ＭＴＵ）に依存する。好ましい実施形態では、パケットヘッダおよびパケットデータの合計サイズは、ＭＴＵ未満でなければならない。しかしながら、最大限の効率を得るためには、パケットデータの長さは可能な限り長くすべきである。
【００７４】
代表的な実施形態では、パケットヘッダのデータは、加入クライアントのＳＴＢ３００に対して、任意の受信データの復号と、データパケットが選択されたデータファイルに属するか否かの決定とを認める情報（例えば、プロトコル署名、バージョン、ＩＤ、またはパケットタイプ情報など）を含む。パケットヘッダはさらに、必要とされる「準最適」な遅延期間、ブロック／サブブロック／パケット番号、パケット長、サブブロック内での巡回冗長検査（ＣＲＣ）およびオフセット、および／またはエンコード情報など、その他の情報をも含み得る。
【００７５】
データパケットは、チャンネルサーバ１０４によって受信されるとＱＡＭモジュレータ２０６に送信され、そこで、ＱＡＭ変調されたＩＦ出力信号を生成するために別のヘッダが追加される。ＱＡＭモジュレータ２０６に対する最大ビットレート出力は、利用可能な帯域幅に依存している。例えば、６ＭＨｚの帯域幅を有するＱＡＭモジュレータ２０６では、最大ビットレートは５．０５（ビット／シンボル）×６（メガヘルツ）＝３０．３メガビット／秒である。
【００７６】
ＱＡＭ変調されたＩＦ信号はアップコンバータ１０６に送信され、特定のチャンネルに適したＲＦ信号（例えば、ＣＡＴＶチャンネル８０の場合は５５９．２５０ＭＨｚおよび６ＭＨｚの帯域幅）に変換される。例えば、ケーブルネットワークが高い帯域幅（すなわちビットレート）を有する場合には、各チャンネルは、それぞれが仮想サブチャンネルを占有する２以上のデータストリームを提供するために用いられ得る。例えば、ＱＡＭ変調を用いて、３つのＭＰＥＧ１データストリームは、６ＭＨｚチャンネルに適合され得る。アップコンバータ１０６の出力は、結合された信号を伝送媒体１１０に送信する合成器／増幅器１０８に加えられる。
【００７７】
代表的な一実施形態では、「Ｎ」個のデータストリームを伝送するための総システム帯域幅（ＢＷ）は、ＢＷ＝Ｎ×ｂｗであり、ｂｗは、データストリームごとに必要とされる帯域幅である。例えば、各ＭＰＥＧ−１データストリームは、９メガビット／秒のシステム帯域幅を占めるため、３つのＭＰＥＧ−１データストリームは、３０．３メガビット／秒のシステム帯域幅を有するＤＯＣＳＩＳケーブルチャンネルにより、同時に伝送され得る。
【００７８】
一般的に、帯域幅は、ＤＯＤサービスに実際にアクセスしている加入クライアントの数とは関係なく消費される。したがって、ＤＯＤサービスを利用している加入クライアントが存在しない場合でも、システムのオン・デマンド能力を確保するために、なお帯域幅は消費される。
【００７９】
ＳＴＢ３００は、作動されると、ＳＴＢ３００のローカルメモリ３０８に格納されている番組ガイドの受信および更新を断続的に行う。一実施例において、ＳＴＢ３００は、最新の番組案内を含むデータファイル情報をテレビの画面上に表示する。ビデオファイル情報などのデータファイル情報は、映画のＩＤ、映画のタイトル、解説（多言語表示）、カテゴリ（例えば、アクション、子供向けなど）、レーティング（例えばＲ指定やＰＧ１３指定など）、ケーブル会社の方針（例えば、値段や無料試聴の長さなど）、加入期間、映画のポスタ、および映画の予告などを含んでよい。代表的な一実施形態では、データファイル情報は、ファームウェアの更新、コマーシャル、および／または緊急情報のための予備チャンネルのような、予備物理チャンネルを介して送信される。別の代表的な実施形態では、情報は、他のデータストリームにより共有されている物理チャンネルで送信される。
【００８０】
加入クライアントは、テレビの画面に表示されているカテゴリごとに並べられた利用可能データファイルのリストを見ることが可能である。クライアントが利用可能データファイルのうちの１つを選択すると、ＳＴＢ３００は、そのデータファイルのデータパケットの受信を開始するために、ハードウェアを制御して、対応する物理チャンネルおよび／または仮想サブチャンネルに同調する。ＳＴＢ３００は、すべてのデータパケットヘッダを検査し、データパケット内のデータを復号し、受信されたデータパケットを保存すべきか否かを決定する。ＳＴＢ３００が、データパケットを保存すべきでないと決定した場合は、そのデータパケットは廃棄される。そうでない場合には、データパケットは、その後回復する場合に備えてローカルメモリ３０８内に保存される、あるいは、デコーダ３１２に送信されるまでのあいだバッファメモリ３０９内に一時的に格納される。
【００８１】
ローカルメモリ３０８に対する頻繁な読み出し／書き込みを回避することによってパフォーマンスの効率を向上させるため、代表的な実施形態において、ＳＴＢ３００は、メモリバッファ３０９内の予測されるデータブロックを、可能であればいつでもロックする「スライディングウィンドウ」予測技術を用いる。予測ウィンドウにおいてヒットが生じた場合、データブロックは、メモリバッファ３０９から直接、デコーダ３１２へと伝送される。予測ミスが生じた場合には、データブロックは、メモリバッファ３０９からデコーダ３１２へと伝送される前に、ローカルメモリ３０８からメモリバッファ３０９へと読み込まれる。
【００８２】
代表的な一実施形態において、ＳＴＢ３００は、一時停止、スローモーション再生、巻き戻し、ズーム、およびシングルステップのためのボタンを備える赤外線（ＩＲ）リモートコントロール装置ボタン、ＩＲキーボード、あるいはフロントパネル押しボタンを介して、加入クライアントの命令に答える。代表的な実施形態において、加入クライアントが所定の期間中に何のアクションも入力しなかった場合（例えば、番組メニューのスクロール、あるいはカテゴリか映画の選択など）には、スケジューリングされたコマーシャルが自動的に再生される。スケジューリングされたコマーシャルは、加入クライアントがアクションを与えた（例えば、リモートコントロール装置のボタンを押すなど）場合には、自動的に停止する。別の代表的な一実施形態では、ＳＴＢ３００は、ビデオの再生中にコマーシャルを自動的に挿入することができる。サービスプロバイダ（例えば、ケーブル会社）は、再生中のビデオにどのくらいの頻度でコマーシャルを割り込ませるかを指示する条件決定方針を設定することができる。
【００８３】
緊急情報ビットがデータパケットヘッダ内で検出された場合には、ＳＴＢ３００は、あらゆるデータ受信操作を一時停止し、データファイル情報の受信用に確保されているチャンネルに同調するようハードウェアを制御して、出力画面上に表示すべきあらゆる緊急情報を取得および復号する。代表的な一実施形態において、ＳＴＢ３００が待機状態の際には、ＳＴＢ３００は、データファイル情報の受信用に確保されているチャンネルに同調され、いかなる緊急情報も遅滞なく受信および表示する用意が常に整っている。
【００８４】
上述の例は、本発明の代表的な実施形態のいくつかを例示したものであり、当業者は、これらから、他の実施形態、変更例、変形例を容易に導くことができる。したがって、本発明は、上述した特定の実施形態に限定されず、添付した特許請求の範囲によって規定される。
【図面の簡単な説明】
【００８５】
【図１Ａ】本発明の一実施形態における代表的なＤＯＤシステムを示す図である。
【図１Ｂ】本発明の別の一実施形態における代表的なＤＯＤシステムを示す図である。
【図２】本発明の一実施形態における代表的なチャンネルサーバを示す図である。
【図３】本発明の一実施形態における代表的なセット・トップ・ボックスを示す図である。
【図４】本発明の一実施形態において、スケジューリング行列を生成する代表的な処理を示す図である。
【図５】本発明の一実施形態において、スケジューリング行列を生成する代表的な処理を示す図である。
【図６】本発明の一実施形態において、準最適なスケジューリング行列を用いて伝送されるデータファイルを表示する代表的ＳＴＢを示す図である。
【図１Ａ】
2005506725.tif 000019
【図１Ｂ】
2005506725.tif 000020
【図２】
2005506725.tif 000021
【図３】
2005506725.tif 000022
【図４】
2005506725.tif 000023
【図５】
2005506725.tif 000024
【図６】
2005506725.tif 000025
【国際公開パンフレット】
2005506725.tif 000026
2005506725.tif 000027
2005506725.tif 000028
2005506725.tif 000029
2005506725.tif 000030
2005506725.tif 000031
2005506725.tif 000032
2005506725.tif 000033
2005506725.tif 000034
2005506725.tif 000035
2005506725.tif 000036
2005506725.tif 000037
2005506725.tif 000038
2005506725.tif 000039
2005506725.tif 000040
2005506725.tif 000041
2005506725.tif 000042
2005506725.tif 000043
2005506725.tif 000044
2005506725.tif 000045
2005506725.tif 000046
2005506725.tif 000047
2005506725.tif 000048
2005506725.tif 000049
2005506725.tif 000050
2005506725.tif 000051
2005506725.tif 000052
2005506725.tif 000053
2005506725.tif 000054
2005506725.tif 000055
2005506725.tif 000056
2005506725.tif 000057
2005506725.tif 000058
2005506725.tif 000059
【国際公開パンフレット（コレクトバージョン）】
2005506725.tif 000060
2005506725.tif 000061
【国際調査報告】
2005506725.tif 000062