(57)【要約】【解決手段】本発明のひとつの実施例に従い、デジタルストリームのセットをデジタルマルチプレクスのセットへ結合する方法が与えられる。これは、チャネルの公称容量を超える速度で現にパケットを受信している第１通信チャネルを識別する工程を含む。チャネルの公称容量を超えることがそれほどない速度で現にパケットを受信している第２通信チャネルもまた識別される。第１通信チャネルに割当てられるマルチプレクスから成るひとつまたはそれ以上のストリームは選択ストリームを形成するよう選択される。また、選択されたストリームのパケットは第１通信チャネルに対応するマルチプレクスから第２通信チャネルに対応するマルチプレクスへ再割当てされる。ある実施例において、ひとつまたはそれ以上の選択されたストリームのひとつまたはそれ以上の受信機は、第１通信チャネルに対応する周波数から第２通信チャネルに対応する周波数へ再同調するよう指令される。【特許請求の範囲】
【請求項１】
複数のストリームをデジタルマルチプレクスに結合する方法であり、ひとつまたはそれ以上の前記ストリームは連続リアルタイムプレゼンテーション用に並べられかつ時刻合わせされたパケットを含むところの方法であって、
期限に基づいて、前記複数のストリームの他の次のパケット以前にリアルタイムストリームの次のパケットが送信されるべきことを決定する工程と、
バッファが前記次のパケットを受け入れる容量を有するか否かを決定する工程と、
前記バッファが容量を有すれば、前記デジタルマルチプレクスの一部として送信のための前記次のパケットを選択する工程と、
前記バッファが容量を有しなければ、前記デジタルマルチプレクスの一部として送信のための他の次のパケットのひとつを選択する工程と、
から成る方法。
【請求項２】
請求項１に記載の方法であって、前記次のパケットが送信されるべきことを決定する工程は、前記期限を前記リアルタイムストリームに対する第１優先順位に変換する工程から成り、前記第１優先順位は最高優先順位である、ところの方法。
【請求項３】
請求項２に記載の方法であって、前記リアルタイムストリームに対する前記第１優先順位は、他の次のパケットが新しいアクセス単位の最初のパケットであると決定される度に、更新される、ところの方法。
【請求項４】
請求項１に記載の方法であって、前記期限はタイムスタンプから導出される、ところの方法。
【請求項５】
請求項４に記載の方法であって、前記タイムスタンプは次のアクセス単位と関連する、ところの方法。
【請求項６】
請求項１に記載の方法であって、前記リアルタイムストリームはアクセス単位に区分され、各アクセス単位はひとつまたはそれ以上のパケットから成る、ところの方法。
【請求項７】
請求項６に記載の方法であって、さらに、前記リアルタイムストリームの前記次のパケットが新しいアクセス単位の最初のパケットであるか否かを決定する工程を含む、ところの方法。
【請求項８】
請求項６に記載の方法であって、前記アクセス単位の各々はビデオフレームを表す、ところの方法。
【請求項９】
請求項６に記載の方法であって、前記アクセス単位の各々はオーディオフレームを表す、ところの方法。
【請求項１０】
請求項２に記載の方法であって、前記他の次のパケットのひとつは特定ストリームである、ところの方法。
【請求項１１】
請求項１０に記載の方法であって、前記他の次のパケットのひとつを選択することは、前記特定ストリームへ第２の優先順位を割当てることから成り、前記第２の優先順位は最高優先順位以外である、ところの方法。
【請求項１２】
請求項１１に記載の方法であって、前記第２の優先順位は前記他の次のパケットのひとつに関連する待ち時間を表し、前記特定ストリームは非リアルタイムストリームである、ところの方法。
【請求項１３】
請求項１１に記載の方法であって、前記第２の優先順位は前記他の次のパケットのひとつに関連する既存のサービス品質(QOS)制約を表す、ところの方法。
【請求項１４】
請求項１１に記載の方法であって、前記第２の優先順位は前記他の次のパケットのひとつに関連する既存のQOS制約及び待ち時間の両方を表し、前記特定ストリームは非リアルタイムストリームである、ところの方法。
【請求項１５】
複数のストリームを複数のデジタルマルチプレクスに結合する方法であり、前記デジタルマルチプレクスの各々は対応する通信チャネルを通じて複数の受信機へ送信されるところの方法であって、
第１通信チャネルを通じて送信される第１データ量を有する複数のデジタルマルチプレクスの第１デジタルマルチプレクスを識別する工程であって、前記第１データ量は前記第１通信チャネルに対する第１閾値を超えるところの工程と、
第２通信チャネルを通じて送信される第２データ量を有する複数のデジタルマルチプレクスの第２デジタルマルチプレクスを識別する工程であって、前記第２データ量は前記第２通信チャネルに対する第２閾値を超えないところの工程と、
前記第１デジタルマルチプレクスに対して送信される複数のストリームのサブセットを選択する工程と、
前記サブセットを第２デジタルマルチプレクスへ再割当てする工程と、
から成る方法。
【請求項１６】
請求項１５に記載の方法であって、さらに、前記複数の受信機の少なくともひとつの受信機に、前記第１通信チャネルから前記第２通信チャネルへ再同調させることを知らせる工程を含む、ところの方法。
【請求項１７】
請求項１５に記載の方法であって、前記第１閾値及び前記第２閾値は、それぞれ前記第１通信チャネル及び前記第２通信チャネルと関連するデータ損失を制御するよう設定される、ところの方法。
【請求項１８】
請求項１５に記載の方法であって、前記再割当て工程は、
前記第１デジタルマルチプレクス内にはもはやサブセットが含まれないようにする工程と、
前記サブセット中のストリームの送信を遅延させる工程と、
前記サブセットが前記第２デジタルマルチプレクス内に含まれるようにする工程と、
を含むところの方法。
【請求項１９】
請求項１８に記載の方法であって、前記遅延工程は、前記第１通信チャネルから前記第２通信チャネルへ少なくともひとつの受信機を再同調させる間のインターバルと少なくとも同じ長さのインターバルの間、前記サブセットを遅延させる工程から成る、ところの方法。
【請求項２０】
請求項１９に記載の方法であって、さらに、
前記複数のストリームの各々を順位付けする工程と、
各デジタルマルチプレクスに対して、前記デジタルマルチプレクスの他のストリームと比べ最高の優先順位を有するストリームを選択する工程と、
前記デジタルマルチプレクスの各々に対応する選択されたストリームの次のパケットを送信する工程と、
から成る方法。
【請求項２１】
請求項１５に記載の方法であって、さらに、前記第１デジタルマルチプレクスから前記第２デジタルマルチプレクスへ再割当てされるべきストリームのサブセットの各々に対して次のパケットの期限を決定する工程を含む方法。
【請求項２２】
請求項２１に記載の方法であって、前記第１通信チャネルから前記第２通信チャネルへ少なくともひとつの受信機を再同調するのに必要なインターバルと少なくとも同じ長さの期限の前の残り時間までに、比較的高い優先順位がストリームの前記サブセットへ割当てられる、ところの方法。
【請求項２３】
請求項１５に記載の方法であって、前記第１及び第２通信チャネルは異なる中心周波数を有する高周波（RF）チャネルである、ところの方法。
【請求項２４】
複数のデータのストリームを送信する方法であって、
第１ストリームに関連するデータの第１サブセットがリアルタイムデータを含むことを決定する工程と、
前記第１サブセットがリアルタイムデータを含むことの決定に基づいて、データの前記第１サブセットを、第２ストリームに関連するデータの第２サブセットから区別するべく、データの前記第１サブセットを分類する工程と、
第２チャネルではなく第１チャネルを通じて送信するために前記第１サブセットを選択する工程と、
から成る方法。
【請求項２５】
請求項２４に記載の方法であって、さらに、前記第２チャネルから前記第１チャネルへ送信を切り替えることにより前記第１チャネルを通じて前記第１サブセットを送信する工程を含む方法。
【請求項２６】
請求項２４に記載の方法であって、前記第１チャネル及び前記第２チャネルは高周波（RF）チャネルである、ところの方法。
【請求項２７】
請求項２４に記載の方法であって、前記第１サブセットを分類する工程は、前記第１サブセットを順位付けする工程と、前記第１サブセットに第１優先順位のタグを付ける工程と、から成る方法。
【請求項２８】
請求項２７に記載の方法であって、前記第１サブセットを順位付けする工程は、前記第１サブセットが時間表示を含むか否かを決定する工程と、前記時間表示が前記第１サブセット内に含まれていれば、前記第１優先順位を前記時間表示の関数として形成する工程と、から成るところの方法。
【請求項２９】
請求項２８に記載の方法であって、前記第１サブセットを順位付けする工程はさらに、前記第１ストリームサブセットの他のサブセットが時間表示を含むか否かを決定する工程と、前記時間表示が前記第１サブセット内に含まれなければ、前記他のサブセットに関連する優先順位の関数として前記第１優先順位を形成する工程を含む、ところの方法。
【請求項３０】
請求項２９に記載の方法であって、前記時間表示はタイムスタンプである、ところの方法。
【請求項３１】
請求項２７に記載の方法であって、さらに、
データの前記第２サブセットがリアルタイムデータを含むか否かを決定する工程と、
前記第２サブセットがリアルタイムデータを含まないことの決定に基づいて、前記第２サブセットを分類する工程と、
を含む方法。
【請求項３２】
請求項３１に記載の方法であって、前記第２サブセットを分類する工程は、前記第２サブセットを順位付けする工程と、前記第２サブセットに第２優先順位のタグを付ける工程と、から成るところの方法。
【請求項３３】
請求項３２に記載の方法であって、前記第２サブセットを順位付けする工程は、前記第２サブセットが前記第２サブセットを示すパラメータに関連することを決定する工程と、前記パラメータを規格化する工程と、規格化されたパラメータの関数として前記第２優先順位を形成する工程とから成る、ところの方法。
【請求項３４】
請求項３３に記載の方法であって、前記パラメータはサービス品質（QOS）制約である、ところの方法。
【請求項３５】
請求項２７に記載の方法であって、送信するために前記第１サブセットを選択する工程は、前記第１サブセットが送信に適していることを決定する工程と、前記第２チャネルに関連する閾値が閾値限界であるかまたはその付近であるとき、送信するために前記第１チャネルを選択する工程と、から成るところの方法。
【請求項３６】
請求項３５に記載の方法であって、前記第１サブセットが適していることを決定する工程は、
第３サブセット及び第１サブセットが第３優先順位及び第１優先順位にそれぞれ割当てられるように、第３ストリームに関連するデータの第３サブセット及び前記第１サブセットを順位付けする工程であって、前記第３優先順位は前記第１優先順位より高いところの工程と、
バッファは前記第３サブセットを受信することができないことを決定する工程と、
他のバッファは前記第１サブセットを受信することができることを決定する工程と、から成るところの方法。
【請求項３７】
請求項３５に記載の方法であって、送信するために前記第１チャネルを選択する工程は、
前記第２チャネルが前記閾値限界またはその付近にあることを決定する工程と、
前記第１チャネルの選択を実施するために、前記第１サブセットを再分類する工程と、から成るところの方法。
【請求項３８】
請求項３７に記載の方法であって、前記第１サブセットを再分類する工程は、修正された優先順位の差の関数として、変換された第１優先順位を形成する工程を含む、ところの方法。
【請求項３９】
複数のストリームの各ストリームを送信するための装置であって、
前記複数のストリームの各々に対する各パケットのデータへ優先順位を示すタグを割当てるよう構成された分類器モジュールであって、前記タグは前記ストリームの各々が時間感知データを含むか否かに関する指標である、ところの分類器モジュールと、
受信バッファが特定ストリームの前記パケットの各々を格納することができれば、送信するための前記パケットを選択するよう構成されたパケットスケジューラーモジュールと、
から成る装置。
【請求項４０】
請求項３９に記載の装置であって、さらに、前記複数のストリームの各々に関連しかつタグのサブセットを格納するように構成されたバッファを含む装置。
【請求項４１】
請求項３９に記載の装置であって、さらに、ひとつまたはそれ以上のストリームに関連する相対的優先順位を格納するよう構成された優先順位待ち行列モジュールを含む装置。
【請求項４２】
請求項３９に記載の装置であって、さらに、前記特定のストリームが選択に有効であれば、前記特定ストリームに対して前記各パケットを送信するために通信チャネルを選択するべく前記優先順位を修正するよう構成された優先順位変換機を含む装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して信号処理に関する。特に、本発明はビデオ及びオーディオパケットのようなデータパケットの動的なチャネルマッピング及び最適スケジューリングのための技術に関する。
【背景技術】
【０００２】
従来の信号処理技術に関して多くの制限が存在する。例えば、既存のパケットスケジューリングアルゴリズムは計算上費用がかかり、またはビデオ及びオーディオのようなリアルタイム信号に対して最適化されていない。従来の信号処理の他の制限は、ビデオ、オーディオ及び／またはデータパケットを含む信号が固定数の高周波（RF）チャネルのような固定数の通信チャネルに静的に割り当てられる点にある。この制限は、ひとつまたはそれ以上の信号のデータ速度が可変であり時間とともに変化するような場合には問題である。所与の時間において、ひとつまたはそれ以上のRFチャネルが利用過多となり、すべての待ちパケットを収容することが不可能である一方、他のRFチャネルは利用過少となり過剰な帯域幅を有するような状況があった。この結果は、帯域幅の無駄ばかりでなく、リアルタイムのビデオ及び／またはオーディオサービスの再生中におけるパケット損失及び中断を引き起こし、さらに他の非リアルタイムサービスのデータ待ちの過剰な遅延を生じさせる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記を考慮して、さまざまな通信チャネルにわたって通信量を効率的に配分することにより通信チャネル中の帯域幅利用を削減しかつ計算上のオーバーヘッドを減少させながら、ビデオ及びオーディオ信号のようなリアルタイム信号に対するパケットスケジューリング処理の効率を改善することが所望される。
【課題を解決するための手段】
【０００４】
本発明のひとつの態様に従い、方法はデジタルストリームのセットをデジタルマルチプレクスのセットに結合する。デジタルマルチプレクスとは、２つまたはそれ以上の多重化されたビデオ、オーディオ及び／またはデータストリームを含む信号をいう。方法は、チャネルの公称容量近くまたはそれを超え始める速度でパケットを受信している第１通信チャネルを識別する工程を含む。そのようなパケットは、オーディオパケット、ビデオパケット、データパケット等を含み、連続リアルタイム表示用に配列されかつ時間合わせされる。概してデータパケットの用語は、リアルタイムオーディオまたはリアルタイムビデオのいずれも表さないデータを含むパケットを記述するのに使用される。チャネルの公称容量より低い速度でパケットを受信する第２通信チャネルが識別される。第１通信チャネルへ割り当てられるマルチプレクスから成るひとつまたはそれ以上のストリームが選択されたストリームを形成するよう選択される。選択されたストリームのパケットは第１通信チャネルに対応するマルチプレクスから第２通信チャネルに対応するマルチプレクスへ再配置される。ある実施例において、ひとつまたはそれ以上の選択されたストリームの任意の受信機が、第１通信チャネルに対応する周波数から第２通信チャネルに対応する周波数へ再同期されるように指令される。
【０００５】
発明の他の態様に従い、方法は複数のデジタルストリームをデジタルマルチプレクスに結合し、受信したパケットがメモリに格納される。リアルタイムデータを含むパケットのひとつまたはそれ以上のリアルタイムストリームに対して、次のパケットの到着までの期限が決定され、期限前のインターバルに基づく優先順位が生じる。非リアルタイムデータを含むパケットのひとつまたはそれ以上の非リアルタイムストリームに対して、次のパケットがメモリに格納された時刻、前に存在したサービス品質制約等に基づいて優先順位が決定される。非リアルタイムストリームの例はEメール、HTTPデータ、ファイル転送等を含む。ある実施例において、ひとつまたはそれ以上のストリームは、受信機のようなパケット受信用に使用される任意のバッファをオーバーフローさせることなく次のパケットが送信可能か否かの判断から除外される。判断から除外されなかった最高の優先順位を有するストリームが、パケットを送信するために識別される。この識別されたストリームに対応する次のパケットは、メモリからそれを検索しかつデジタルマルチプレクスを構成するデータストリームへそれを添付することにより選択される。
【発明を実施するための最良の形態】
【０００６】
本発明は、ひとつまたはそれ以上の通信チャネルを通じたパケット送信をスケジューリングする装置及び方法を与える。ビデオ及びオーディオを表すデータを含むこのようなパケットはそれぞれビデオパケット及びオーディオパケットと呼ばれる。しかし、リアルタイムオーディオまたはリアルタイムビデオ以外のものを表すデータを含むパケットは、データパケットと呼ばれる。ひとつの実施例に従い、スケジューリング法は、データを含むパケット及びパケットのストリームが、リアルタイムかまたは非リアルタイムかを調べる。その後特定のストリームが本発明の技術に基づいてその優先順位を決定することにより選択される。例えば、優先順位は、期限(deadline)のような時間、サービス品質制約のようなルーチングポリシーに類似の制約等に基づいて決定される。本発明のひとつのスケジューリング法の少なくとも一部を実行するための装置の例は、チャネルフォーマッターのようなケーブルモデム端末システムである。本発明は、通信チャネルが許容不能なパケット損失に晒される危険性がある場合に、ひとつまたはそれ以上のデジタルストリームにわたって通信チャネルを動的に変更する装置及び方法を与える。例えば、方法はまず、特定のストリームが潜在的にオーバーフローするバッファと関連しているか否かをモニターし、次に、パケット損失を制御するための補正行動をとる。
【０００７】
図１にケーブル配信システム100のブロック図が示されている。システム100は本発明の特定の実施例に従う装置を含む。加入者端末102はデータを処理し、ケーブルモデム、デジタルまたはアナログビデオ／オーディオセットトップデコーダ、結合型ケーブルモデム／セットトップハイブリッドデコーダ、パーソナルコンピュータ等を含む。典型的に、加入者端末102は、概してヘッドエンドサイトにより近い主要ファイバー及び家の近所の主要同軸ケーブル106を含むハイブリッド・ファイバー・コアキシャル(HFC)配信システム130によりケーブルヘッドエンドとリンクされる。
【０００８】
この例において、ローカル・エリア・ネットワーク(LAN)108が、ヘッドエンドにおいてアクセス可能なさまざまな装置を相互接続するために使用される。ひとつまたはそれ以上の高速スイッチまたはルータ110がLAN108に関して装置を相互接続する。イーサーネット・インターネット・プロトコル(IP)ルーチング装置が通常利用可能であり、特定のヘッドエンドシステムのサイズ、スケール及びスループット要求に一致するように構成される。
【０００９】
概して、ケーブルモデム端末システム(CMTS)は、スイッチまたはルータ110（または類似機能を有する他の適当なネットワーク装置）をHFC配信ネットワーク130とインタフェースするのに使用されるダウンストリーム及びアップストリームコンポーネントを含む。ダウンストリームCMTSモジュール122は、加入者端末102へHFCネットワーク130を通じて送信するために、ビデオ、オーディオ、及び非リアルタイムデータをフォーマットするよう設計される。ビデオ及びオーディオはデータとして表現されているが、非リアルタイムデータの用語は、電子メール、ウエブページのブラウジング、制御情報等を構成するデータのような一般的なデータを記述するのに使用され、それらはリアルタイムにまたは予め決められた速度で伝送される必要がないものである。非リアルタイムデータが時間感知である場合であっても、配信の期限は典型的に存在しない。
【００１０】
アップストリームCMTSモジュール124は、加入者端末102から非リアルタイムデータ、オーディオ及び／またはビデオを表すデータを受信し、配信用にデータを再フォーマットする。ダウンストリーム及びアップストリームモジュールは典型的に単一のCMTSユニット120に統合され、それは、ワイドエリアネットワーク(WAN)とパーソナルコンピュータをインターネットに接続するために加入者の自宅内に設置された複数のケーブルモデムとの間でIPデータを運ぶために主に使用される。他のハードウエアが、例えば、ビデオを加入者のテレビへ及びオーディオを加入者のラジオまたは電話機へ放送するために使用される。将来的には、より多くのコンテンツフォーマットが統合され、共通の配信ネットワークを通じて家庭または会社へ送信されるようになる。CMTS120はこのような統合信号を伝送することができるが、本発明はCMTS120の使用に制限されない。図１に示される実行例は本発明の実施例のひとつに過ぎない。この特定の実施例において、ローカル・プロビジョニング装置140はCMTS120のハイレベルなネットワーク制御サービスのいくつかを扱う。このようなサービスはケーブルモデム受信機を初期化し、チャネルパフォーマンスを最適化し、ファイル及びメッセージ転送プロトコルを実行するのに使用される。
【００１１】
本発明を実施するのに適したコンテンツのいくつかのソースの例が図１に含まれている。ビデオ・オンデマンド(VOD)サーバ150は、加入者のテレビへ要求に応じて伝送するために映画、広告、または他のビデオプログラムを格納する。また、VODサーバ150は、一時停止、高速または低速送り、戻り再生、ランダムアクセス等のようなインタラクティブ再生を可能とする。
【００１２】
ビデオキャッシュサーバ152は、衛星のようなひとつのソース180からのライブビデオコンテンツを受信しかつ格納し、同様のインタラクティブ機能により加入者へのオンデマンド伝送を可能にする。スイッチまたはルータのひとつまたはそれ以上のポートを適当なインターネットゲートウエイ装置とインタフェースすることにより、インターネット154へのアクセスが可能となる。HTMLキャッシュサーバ156は、選択されたページへのアクセス速度を高めるためにしばしばアクセスするインターネットのウエブページを格納する。これによりインターネットのインタフェースを通じた反復通信量を減少させることもできる。番組ガイドは、加入者端末102へ伝送するためにHTMLフォーマットで番組ガイドサーバ158に格納される。アクセス制御サーバ170は、各加入者に関する許可権を維持し、請求記録を更新し、表題及び制御メッセージを送信し、その結果加入者の復号化端末はビデオ及びオーディオプログラムを選択的にデスクランブル化することができる。
【００１３】
本発明のひとつの実施例において、ダウンストリームCMTSモジュール122のようなダウンストリームチャネルプロセッサが、ビデオ、オーディオ及びデータパケットを順位付けし及び／または管理するように構成される。アップストリームチャネルから受信される情報はアップストリームCMTSモジュール124により同様に処理される。アップストリーム経路内の情報はさまざまな加入者端末102から発生し、インターネットデータ、音声若しくはビデオメッセージ、またはテレビ、ラジオ若しくは他の視聴覚装置へ送られるマルチメディアコンテンツの再生をインタラクティブに制御するのに使用される信号を含む。このような信号の処理は、フィルタリング、信号のアナログ・デジタル変換、復調、エラー検出及びエラー補正、及び／または解読に関連する。
【００１４】
ダウンストリームCMTSモジュール122のブロック図が図２に示されている。コンテンツはネットワークトランシーバ202によってローカルヘッドエンドネットワーク（例えば、イーサーネットワーク）から受信され、ランダムアクセスメモリ(RAM)204またはその他既存のメモリへ送られる。続いて、コンテンツはRAM204から受信され、CMTSチャネルフォーマッタ−206により処理される。CMTSチャネルフォーマッター206はHFCネットワーク130を通じて送信するためのコンテンツを準備する。ホストCPU210は、データ・オーバー・ケーブル・サービス・インタフェース・スペシフィケーションズ(DOCSIS)または他の標準に基づいてCMTSシステム用のタスクを処理するように構成される。また、ホストCPU210は、メディア・アクセス・コントロール(MAC)及びダウンストリーム送信変換レイヤーの両方におけるパケット化処理、スクランブル化処理、データインターリーブ化及びランダム化、エラー制御に対するブロック及びトレリス符号化、変調、及び他の類似の通信処理を含む。
【００１５】
図２に示されるように、CMTSチャネルフォーマッタ−の出力における信号は、ひとつまたはそれ以上のRF出力チャネル208（すなわち、RF1のみか、RF1、RF2、・・・RFｎ）を含む。CMTSチャネルフォーマッタ−の入力207で受信されたパケットは、パケットが送信用に割り当てられたRFチャネルを特定するための識別子を含む。
【００１６】
RAM204の目的は、入力データパケットを、格納し、順位付けし、時間スケジュールに従って有効なダウンストリームRFチャネルへ割り当てることである。ビデオ及びオーディオ復号化装置が復号化するデータを使い果たす前に、リアルタイムビデオ及びオーディオパケットが加入者端末102に到着するように、優先順位が割り当てられる。対照的に、非リアルタイムデータは、サービス品質制約、最善努力ベース、または他の既知のメトリクスのようなメトリクスに従って伝送される。
【００１７】
各RFチャネルの帯域幅に関して、各RFチャネル208を通じて送信される全情報量（すなわち、ビデオ、オーディオ、及び／またはデータ）は、例えば、予め選択された変調及びエラー符号化パラメータにより決定される。ビデオ及びオーディオストリームは可変ビット速度(VBR)符号化アルゴリズムを使ってしばしば圧縮され、インターネットデータストリームはよくバーストし時間変化する性質があるため、ビデオ、オーディオ及びデータストリームを与えられたRFチャネル208へ割り当てるために静的な配分手法を適用することは困難である。このような静的割当ては、あるRFチャネルでは過剰な帯域幅でもって利用過少であるが、他のRFチャネルは利用過多であって送られるべきすべてのパケットを収容することができないといった事例を生じさせる。
【００１８】
ほとんどの従来のCMTSシステムはリアルタイムのビデオ及びオーディオを伝送するのに使用されないため、チャネルの利用過多の結果はそれほど深刻ではない。すなわち、利用過多のこのような時間中、特にTCPのような信号プロトコルがパケット損失を検出しかつ再送信を可能とするのを助ける場合には、エンドユーザはインターネットにアクセスしている間の遅延増加に気づくはずである。しかし、このような信号プロトコルは概してビデオ及びオーディオのようなリアルタイムのストリームで上手く機能しない。加入者ターミナル102内の復号化装置は、テレビスクリーン上での連続プレゼンテーションまたはオーディオ再生システムによるプレゼンテーション用に圧縮されたデータを復号化するように設計されている。再送信されるべき損失ビデオまたはオーディオパケットを待っている間に復号化及びプレゼンテーション処理が停止すると、視聴者に対して混乱を隠すことはできない。典型的に、より強力なビデオ及びオーディオ圧縮方法が採用される場合には、遅延はより深刻であり、回復に時間を要する。
【００１９】
図３は、本発明に従い、ネットワークトランシーバ202から受信したパケットをRAM204に書き込む処理、及びRAM204からパケットを読み出しCMTSチャネルフォーマッタ−206へそれを送信する処理を示す。書き込み制御器302及び読み出し制御器304は、ソフトウエア生成デスクリプタリストを使ってダイレクトメモリアクセス(DMA)処理として実行され、ここで各デスクリプタはソースアドレス、指定アドレス、及び転送すべきバイト数を特定する。この例において、書き込み制御器302は連続的に増加するアドレスを割当てるよう設計される。すなわち、次の転送を開始するためのアドレスは、以前の転送に対応するアドレスを取得しかつ先行の転送のサイズと等しい量だけそれを増分することにより導出される。書き込みアドレス生成器308がこれらのアドレスを与える。したがってパケットは有意なギャップまたは間隔無しで先行パケットの終端のすぐ後に続く。メモリユニットの最大アドレスを超えると同時に、書き込むための次のアドレスがメモリユニットの開始アドレスへリセットされる。他の実施例は、利用可能なメモリを有効に管理するためのフリーリストを含む。
【００２０】
典型的に、メモリユニットからパケットを読み出す処理は、順位付け及びスケジューリング処理がしばしば使用されるため、書き込む処理よりも複雑である。この場合、読み取りアドレス生成器306は図４に示されるようにモデル化される。パケット分類器402は各入力パケットに対応するストリームを識別し、かつパケットヘッダ内の情報に基づいて優先順位を割当てる。
【００２１】
本発明のひとつの実施例に従い、パケット分類器402が図５のフローチャートにより説明される。502で次のパケットを受信した後、504でストリームに対応する識別子が決定され（ストリームID(i)）、506でRAM内にパケットが格納される。その後、パケットを表すべくタグが割当てられ、タグはパケットが格納されるところのRAMアドレス及び決定されるべきパケット優先順位から成る。リアルタイムビデオ及びオーディオストリームに対して優先順位を決定するためのひとつの方法は、ビデオまたはオーディオが与えられるべき受信機へ次のパケットがそれまでに伝送されなければならない最終可能時間を考慮することである。図５に示されるような、最も早い期限が最初(EDF)基本スケジューラーは、期限とパケット優先順位との間の逆関係に基づいている。
【００２２】
リアルタイムのビデオ及びオーディオストリームに対して、各パケット期限が一意に決定される。例えば、MPEG転送ストリームプロトコルを使って符号化されたビデオ及びオーディオパケットは、新しいアクセスユニットまたはフレームごとにひとつの埋め込みタイムスタンプを含む。タイムスタンプはパケットが受信機で処理されるべき時間を特定する。すなわち、受信機は、受信機での時間がそのユニットに対応するタイムスタンプと等しくなる（またはそれ以上）とき、次のアクセスユニットの復号化を開始する。この時間までにすべてのアクセスユニットが受信されずかつ受信機のバッファ内に存在しない場合には、再生処理の混乱が生じ、正しい再生同期を回復するために付加的な工程が必要となる。
【００２３】
受信機がタイムスタンプを生成したエンコーダにより使用されたクロックと同期可能である場合、再生処理の時間を合わせる方法が機能する。このため、MPEG符号化転送ストリームは、プログラムクロックリファレンス(PCR)のような埋め込みタイムリファレンス情報を含み、受信機がそれを使ってオリジナルのクロックを再構成する。タイムリファレンスは、タイムスタンプと異なり、エンコーダからタイムリファレンスが送信された時刻のオリジナルクロックの値を特定する。オーバー・ジ・エアー・コミュニケーションにおいて、本質的にこの時刻はタイムリファレンスが受信機で受信された時刻と同じである。タイムリファレンスサンプル間において、クロックは２７MHzのMPEG特定速度で連続的に挿入される。このローカルクロック生成器の正確な周波数及び安定性がエンコーダで使用されるローカルクロックに依存するとしても、受信機は、ビットストリーム内に埋め込まれたタイムリファレンスパラメータ及び位相固定周波数トラッキングループにより、オリジナルクロックを同期化しかつ回復することができなければならない。
【００２４】
図５に示されたパケット分類フローチャート処理は、異なるストリーム上で検出されたタイムスタンプを単一の共通クロックリファレンスへ変換する方法を含む。タイムリファレンスが508でストリームIDがiのパケット内で検出されると、それは、受信機（例えば、ローカル２７MHzクロックに基づき）でのカレントローカルタイムｔとタイムリファレンスの値との差であるΔTRiを計算するのに510で使用される。
【００２５】
512でタイムスタンプがパケット内に検出され、対応するストリームIDがiであるとき、そのパケットに対する新しい優先順位が、このストリームに対応する最も最近のΔTRiとタイムスタンプとの和に等しく設定される。512でパケットがタイムスタンプ無しで受信される度に、それは同じストリームの先行パケットと同じアクセス単位（すなわち、同じフレーム）に対応すると仮定され、優先順位は516で変更されないままである。しかし、いくつかのMPEG符号化モデルは、各連続アクセス単位がタイムスタンプを含むことを要求しない点に注意すべきである。もしこのようなまれなタイムスタンプが（または特定のパケットに対するタイムスタンプが検出されないいかなる理由に対しても）許可されれば、タイムスタンプを含まないアクセス単位はフレーム速度に基づいて前のタイムスタンプから外挿することにより導出された推定タイムスタンプが割当てられる。フレーム速度もまたパケットヘッダ内に含まれる情報から推定される。
【００２６】
他の方法の例は、511で決定されるように、非リアルタイムストリーム内のパケット（すなわち、プレゼンテーションの正確な速度を特定しないアプリケーションに対するパケット）を順位付けするためのフロー500内で使用される。このようなストリームの例は、インターネットデータ、または後に再生するためにキャッシュされるべきオーディオ若しくはビデオ、またはリアルタイム再生が全く必要でないオーディオ若しくはビデオに対応するものである。518でテストされるように、任意の外部の特定サービス品質(QOS)制約が無い場合、パケットに対する優先順位は、522において、定数Qだけ増分されたカレントローカルタイムと等しく設定される。Qの値は非リアルタイム通信量とリアルタイムのビデオ及びオーディオとの間に適当なバランスを与えるように選択される。この方法で、511で決定された非リアルタイム通信は、カレント時間とビデオ及びオーディオ優先順位期限とのインターバルがQ以下とならない限り優先順位が与えられる。しかし、インターバルがQ以下となると、リアルタイムパケットの優先順位は、非リアルタイムパケットの優先順位より高くなる。アクセス単位のすべてのパケットが送信され、優先順位の次の変更が生じるまで、リアルタイムパケットに対するこの優先順位の有利が続く。
【００２７】
ある実施例において、通常のインターネット通信から成るような非リアルタイムパケットの送信は既存のQOSプロトコルに支配される。非リアルタイムパケットのネットワーク要求を満足するために、タイムスタンプ及びタイムリファレンスに基づいてリアルタイムQOSプロトコルに支配されないさまざまなストリーム内で相対的な優先順位を確立することが所望される。理想的には、このような他のQOS制約は、QOS制約を含まない非リアルタイムストリームとともにリアルタイムのビデオ及びオーディオの再生をスケジューリングするのに使用される同じ優先順位スケールへ変換される。既存のQOSプロトコルを共通の優先順位スケールへマッピングするための方法は、概して研究中の特定のQOSモデルに依存する。異なるQOSクラスの相対的順位が適宜維持される限り、520でのマッピングは、それほど厳密または正確である必要はない。
【００２８】
パケットが図４のパケット分類器402により優先順位を割当てられたとき、524でタグが付される。その後、このタグが特定のストリームに関連する先入れ先出しメモリ(FIFO)404内に置かれる。タグは少なくとも２つパラメータ、すなわち、割当てられたパケット優先順位及びメモリ（例えば、RAM）でのパケットのアドレスを含む。パケットストリームの各々に対して、同様のFIFOが保持され、それぞれはそのストリームで受信されたパケットの優先順位及びアドレスに対応するタグのシーケンスを含む。新しいタグが526で予め空白であると決定されたFIFO404内に挿入される度に、528においてパケットスケジューラ406へ中断信号420が送られる。
【００２９】
パケットスケジューラ406のタスクは、各FIFO404の出力において次のタグ405を連続的にモニターすることと、次のタグにより特定された優先順位に従ってさまざまなストリームをソートすることである。生成された順番リストは優先順位待ち行列と呼ばれる。中断420に応答するパケットスケジューラ406の動作例を記述する単純なフローチャートが図６に示されている。フロー600は、優先順位待ち行列408の優先順位のリストを更新するための本発明の実施例に従う処理の例である。パケット分類器402が中断を生成した後、中断をトリガーしたパケットに関連するストリームに対応するFIFO404の出力に新しい次のタグが与えられる。特定のFIFO404が予め空白であったため（すなわち、このパケットはFIFO内で最初であると526で決定された）、ストリームは優先順位待ち行列408内に現にリストされておらず、よって新しいエントリーが挿入されなければならない。602において、パケット用のストリーム識別子及びパケット優先順位が受信される。604において、パケットスケジューラ406は、新しいエントリーに関連する優先順位を既存の優先順位待ち行列408エントリーと比較することにより、この新しいエントリーが優先順位待ち行列408内のどこに挿入されるべきかを決定する。
【００３０】
優先順位待ち行列408は優先順位に従ってソートされるため、この処理は新しいエントリーの優先順位より低い及び高い（または等しい）優先順位を有する連続エントリーの対を配置すること、及びこの対の間に新しいエントリーを挿入することに関する。より高い（または等しい）優先順位を有するエントリーが存在しなければ、新しいエントリーが優先順位待ち行列408の前に置かれる。同様に、より低い優先順位を有するエントリーが存在しなければ、新しいエントリーが優先順位待ち行列408の終わりに挿入される。このようなソートされたリストを作成しかつ維持する効果的方法は周知であるのでこれ以上議論しない。
【００３１】
図７は本発明の特定の実施例に従う、パケットスケジューラ406により実行されるように優先順位をソートする方法の例を示すフローチャートである。CMTSチャネルフォーマッターが702で新しいパケットを受け入れる準備ができる度に、704において、パケットスケジューラ406は優先順位待ち行列408内の最高の優先順位ストリームに対応する次のパケットを選択しかつこのパケットが選択に適当か否かを決定する。例えば、パケットの送信が受信機においてパケットを受信するのに使用されるひとつまたはそれ以上のバッファのオーバーフローを生じさせるなら、パケットは選択に適さないとみなされる。MPEGフォーマットの転送ストリームを受信するのにMPEG適合受信機が使用される場合、概してある条件下でオーバーフローする可能性のある２つのバッファが存在する。このようなバッファの第１は転送バッファと呼ばれる。ビデオ、オーディオ、または特定の受信機により復号化されるべき任意のタイプのパケットに対して、別々の転送バッファが保持される。ある実施例において、各転送バッファのサイズ及び排出速度はMPEG仕様に従っており、例えば実際の受信機の実行が転送バッファを全く含まない場合であっても、MPEGコンプライアンスはこのような仮想的バッファがオーバーフローしないことを保証する符号化、多重化または再多重化システムを要求する。
【００３２】
単一のビデオ、オーディオまたはデータストリームのすべてのパケットを受信するチャネルバッファは、ある条件下でオーバーフローする他の種類のバッファである。典型的に、チャネルバッファは特にビデオの場合に転送バッファより大きいが、転送バッファと違いチャネルバッファは固定した排出速度を有しない。対応する復号化タイムスタンプにより特定された瞬間時間にチャネルバッファからしばしば全アクセス単位が除去される。転送バッファの場合のように、MPEG標準は最小チャネルバッファサイズを特定し、それはこれらのバッファがオーバーフローしないことを保証するための符号化、多重化または再多重化システムのような他の装置の義務である。
【００３３】
本発明のひとつの実施例において、710において、パケットスケジューラ406はまず次のエントリーに対応するストリームIDを識別する。パケットスケジューラは、712でいっぱいか否かを決定する転送バッファ及び714でいっぱいか否かを決定するチャネルバッファの両方のモデルを保持する。こうしてパケットスケジューラ406は任意の時間においてバッファがパケット用の空きがあるか否かを決定することができる。もし無ければ、パケットスケジューラ406はパケットを送信することを避けなければならず、代わりに、次に高い優先順位を有するパケットの適正を識別しかつ決定しなければならない。706において適当なパケットが存在しないか、または優先順位待ち行列408が空白であれば、708でヌルパケットが代わりに送られる。ヌルパケットはMPEG仕様で記述される。
【００３４】
アドレスを検索することにより716で適当な次のパケットが選択されると、パケットは720のように送信されるか、または特定のCMTS実行の要求に従い718で修正される。例えば、718において、MPEGパケット識別フィールド(PID)を修正するか、IPヘッダを付加、削除若しくは修正するか、またはDOCSIS MACヘッダを挿入若しくは修正することが所望される。他の例において、優先順位処理で使用されたタイムリファレンス(PCR)は、パケットがRAM内で待機している間に発生する遅延を考慮するように修正される。この遅延はタイムリファレンスを含むパケットの送信時間と受信時間との間の差に等しいタイムリファレンス補正を付加することにより補正される。この処理はPCRリスタンピングとして知られている。
【００３５】
他の実施例において、スケジューリングの最適化を通じてチャネルのスループットを最大化するために空きをさらに広げるよう各タイムリファレンスに対し固定の負バイアスが付加される。これが実行されると、スケジューリング用に使用されるパケット優先順位に対する正の補正として同じバイアスが印加されなければならない。これはパケットが受信機で処理される前の期限を考慮したものである。最後に、タイムリファレンスに関して、概してMPEG要求は、超えられない連続PCR間の最大インターバルを設定する。最適なパケットシーケンスアルゴリズムはこの規則の違反を簡単に生じさせる。本発明の他の実施例に従い、パケットスケジューラ406は最後のタイムリファレンスが送信されてからのインターバルをモニターし、必要な場合に付加的なタイムリファレンスを挿入することによりこの違反を防止することができる。この場合において、パケットスケジューラ406はPCRを有しかつペイロードを有しない新しいパケットを生成することにより既存のパケットの再編成を避けることができる。
【００３６】
720でパケットが送信用に選択されると、パケットスケジューラ406の最後のタスクは優先順位待ち行列408を更新することである。選択されたパケットに対するタグが対応するストリームFIFO404から除去された後、次のタグの優先順位が調べられなければならない。722においてFIFO404内に含まれるタグが他になければ、724において優先順位待ち行列708内のこのストリームに対するエントリーは除去されなければならない。FIFO404が空白でなく、また次のタグにより特定される優先順位が先行タグにより特定された優先順位と同じであるなら、他にすべきことはない。MPEGアクセス単位が典型的に等しい優先順位を有する多くのパケットから成るため、このような場合はMPEGストリームを処理する際にしばしば起こる。しかし、FIFO404が空白ではなく、次のタグにより特定される優先順位が先行タグにより特定される優先順位と同じでないなら、優先順位待ち行列408内でこのストリームに対する対応するエントリーは減少した優先順位に基づき適当なシーケンスを維持するべく再配置されなければならない。
【００３７】
図４に示された優先順位システムに従ってパケットを分類しかつスケジューリングするための方法は、本発明の特定の実施例に従って、各ストリームが単一のRFチャネルに静的に割当てられるところのシステムに関連する。
【００３８】
しかし、チャネルリソースの利用を最適化するような方法でひとつの通信チャネルから他の通信チャネルへストリームの割当てを動的に変化させる、CMTSまたはその他のチャネルフォーマット装置のようなシステムを与えることは、本発明の思想及び態様の範囲内である。このようなストリームの再割当てがケーブルモデムネットワーク内に経済的に導入されるひとつの理由は、動的な周波数変更の付与は、データ・オーバー・ケーブル・サービス・インタフェース・スペシフィケーション(DOCSIS)ケーブルモデム標準のバージョン１.１にすでに適応されているということである。すなわち、DOCSIS１.１と適合すると認証されたケーブルモデムは、異なるRFチャネルへ再同調させるための命令を受信することができるだけでなく、長時間の間受信機を使用不可能にする長い再同期化工程を経ずに再同調処理を完了することが可能である。しかし、DOCSIS１.１でさえもチャネルホップが完全にシームレスであることを特定できない。
【００３９】
典型的に、ケーブルモデムの再同調の際または新しいチャネルの信号を捕捉処理する時間の間にいくつかのパケットが失われ、また、移行中に両方のRFチャネル上で同じパケットを反復することをCMTSが選択するといくつかのパケットは２度受信されるかまたは連続しなくなる。幸い、このようなエラーを検出しかつ補正するためにTCPプロトコルが使用されるところのほとんどのインターネットアクセスアプリケーションに対して、これは深刻な問題ではない。悪いことに、このソリューションはリアルタイムビデオ及びオーディオストリームに対してうまく機能しない。受信機の再同調及び再同期化によるこのような遅延、または補正不可能なエラーまたは損失が検出された後の再送信の要求による遅延は、再同期化の試み中の付加的遅延により生じる視覚及び聴覚的なエラーを導く。
【００４０】
本発明の態様は、ひとつの通信チャネルから他の通信チャネルへの移行を制御するための付加的なメカニズムを与えることであり、その両方はRFチャネルであっても無くともよい。ひとつの実施例において、これらの付加的なメカニズムは入力パケットの各々に優先順位値を割当てるパケット分類器402の動作と連結される。ひとつの実施例に従って、パケット分類器に対して優先順位を割当てる方法の例が図５に示されている。リアルタイムストリームに対応するパケットの場合、図５との関係で説明されるように、優先順位はパケットが受信機に到着できる最新可能時刻として定義される。本発明の他の実施例に従って、ここに説明されるような優先順位の期限に対する修正は、異なるRFチャネルへの動的な再割当てのためにさまざまなストリームを用意するべく実施される。最初の優先順位Pを新しい優先順位P’へ変換するひとつの可能な修正が以下に説明されるが、他の類似の修正も本発明の思想及び態様の範囲内に含まれる。
【００４１】
この修正例の第１の目的は、受信機でのリアルタイム再生処理の中断を避けるべく、いくつかのパケットを定時に伝送することができない短期リスクが存在するポイントまでRFチャネルが利用過多となったときを識別するための方法を与えることである。修正の第２の目的は、利用過多RFチャネルから他の利用過少RFチャネルへ少なくともひとつのストリームを切り替えることにより、このリスクを軽減するための方法を与えることである。一方または両方の目的は、図５に示されるようなパケット分類器により割当てられる優先順位に対する変換を適用することにより実現される。
【００４２】
特定の実施例は図８に示されるように、パケットスケジューラ406の前にFIFO404の出力において優先順位変換モジュール802を挿入することにより実行される。優先順位変換モジュール802により実行される修正の例は図９(a)及び９(b)に示されるマッピング関数である。図９(a)のRFチャネルA及び図９(b)のRFチャネルBの２つのRFチャネルが示されている。それぞれの場合において、水平軸はパケット分類器402により決定される初期優先順位Pと現在時刻ｔとの差を表し、垂直軸は新しい優先順位P’と現在時刻ｔとの差を表す。新しい優先順位P’はストリームに依存する点に注意すべきである。すなわち、特定のRFチャネルにグループ化されたストリームは最初に任意の順序で並べられ、RFチャネルAの場合には１からｎまで、RFチャネルBの場合には１からｍまでの連続インデックスで表される。同じ加入者にアドレスされるストリームは同一のインデックスを割当てられる。例えば、図１の加入者端末102が、２つの異なるテレビディスプレイに与えられている２つの番組を同時に受信しているか、インターネットデータをパーソナルコンピュータへ供給しているひとつのデータストリームを受信していれば、インターネットデータストリーム、２つのビデオストリーム、及び２つのテレビ番組の各々に関連する任意のオーディオ及びデータストリームに対して、ひとつの共通インデックスが割当てられる。
【００４３】
本発明に従うある場合において、特定のストリームに対する動的チャネル再割当て（または、ホップ）は、特定の受信機のハードウエアまたはソフトウエア制限によりあるストリームに対して許されないかもしれない点に注意すべきである。この場合、対応するストリームは１からｎ（またはRFチャネルBに対して１からｍ）にインデックスされたストリームのグループから除外される。これらのストリームがチャネル再割当てに対して選択されないことを保証するひとつの方法は、これらの除外されたストリームの優先順位の修正を単純に避けることである。すなわち、新しい優先順位P’は、除外されたストリーム（すなわち、動的なチャネル割当てが不可能なストリーム）と関連する各パケットに対する初期優先順位Pと等しく設定されなければならない。一方、パケットが除外されたストリームと対応しないならば、初期優先順位の差(P−ｔ)が所定閾値Tｋより大きい限り、新しいまたは修正された優先順位P’は初期優先順位Pと等しく設定される。初期優先順位の差が閾値以下に落ちれば、修正された優先順位の差(P’−ｔ)は閾値と等しく設定される。この特定の例において、各ストリーム分類は最小閾値Tminから最大閾値Tlまでの異なる閾値範囲に割当てられる。インデックスｋが減少するに従い、閾値Tkは増加する。
【００４４】
最初に、最大閾値Tlは有意である。この閾値は典型的に対応する受信機でチャネルホップを実行するのに必要なインターバルと少なくとも同じであるように選択される。より正確には、それは、チャネルホップ命令が目標の受信機へ送られた時刻から始まって、受信機が新しいRFチャネル上でパケットを受信することができる最後の時刻までのインターバルと少なくとも等しくなければならない。受信機はチャネル再同調インターバルの間に新しいパケットを受信することができないため、次のパケットが移行中に切れる期限を有する場合には、移行は開始されてはならない。１のインデックスを有するストリームは、少なくともTlの期限切れ時間(P−ｔ)を維持するのに十分に高い優先順位を常に割当てられることを保証することにより、いかなるときにもチャネルホップを開始することが可能とならなければならない。
【００４５】
第２に、最小閾値Tminも有意である。優先順位の差(P−ｔ)がこの閾値以下に減少すれば、カレントのRFチャネルは、リアルタイムストリームの各パケットに関連する期限と一致する時刻に所定の受信機へすべてのパケットを伝送することができないかなりのリスクが存在するポイントまで利用過多となる。このことは、期限が図８のパケット分類器402で決定される優先順位と同じでありかつ優先順位の差が期限切れ前の残り時間である場合において、直感的にわかる。最小の優先順位の差を有するストリームは最高のインデックスを有するものであり、これらはそれぞれの閾値に達する最初のストリームでなければならない。この例において、優先順位の差はRFチャネルAにおける各ストリームに対して減少すると仮定される。このことは、図９Aの矢印の方向で示されている。
【００４６】
チャネルホップが開始される前に、インデックス１を有するストリームを受け入れることができる最適なRFチャネルが識別されなければならない。概して、最適な選択は、最高のインデックスを有するストリームまたはチャネル再割当て用に選択されることができないストリームで、最長の期限切れ(P−t)を現に維持しているチャネルである。これらは、優先順位閾値処理をバイパスする除外ストリームである。この例において、RFチャネルBはRFチャネルAを含む他のRFチャネルから割当てられたストリームを受け取るように選択された。指定は一時的なものであり、通常のインターバルで各チャネルホップ発生後に再評価されなければならない点に注意すべきである。
【００４７】
本発明の特定の実施例に従い、図８のRFチャネル制御器850モジュールはチャネルホップを制御するように設計され、図１０でより詳細に説明されている。1004において、あるリアルタイムストリームに対して優先順位の差がTminと同じまたはそれ以下となるとき、1002においてチャネルホップを開始する決定がなされる。ある実行において、装置の誤作動またはシステム不具合によりトリガーされる不安定性から保護することが所望される。これを実行するひとつの方法は、チャネル移行をトリガーするのに使用されるべき任意のストリームでの優先順位の差値の一定変化をチェックすることである。
【００４８】
ストリームが再割当てされるべきとき、新しいRF周波数情報を含むチャネルホップ命令が1008で決定されるインデックス1を有するストリームに対応する受信機へ送られる。上記したように、DOCSIS１.１標準は動的なチャネルホップを許可し、チャネルホップ命令のフォーマットは仕様に含まれている。1110でチャネルホップ命令が送られると、RFチャネル制御器850は、カレントのRFチャネルのインデックス１から新しいRFチャネルでの次の最高有用インデックスへストリームを再割当てする。例えば、新しいRFチャネルでの既存ストリームが１からｍの範囲であるなら、908で概念的に示されるように、1114においてストリームはｍ＋１のインデックスに割当てられる。RFチャネル制御器850は２つの条件のひとつが一致するまで、この新しいRFチャネルでのこのストリームに対してパケットが送信されないことを保証しなければならない。(1)固定インターバルTｆが切れる、または、(2)このストリームに対応する受信機が新しいチャネルでパケットを受信する準備ができたことを報告する、のいずれかである。図１０において、パケット送信のこの制約は、再割当てされるべき各ストリームに対応する優先順位待ち行列でのエントリーを1116で除去することにより実行される。これは、パケットがこれらのストリームのいずれからも選択されないことを保証する。同時に、1118で、パケットスケジューラ406への中断がインターバルTf後に生じるように設定される。このとき、エントリーは図８の優先順位待ち行列408中に再挿入され、次のそれぞれのパケットの優先順位に従ってソートされる。パケットスケジューラの中断処理は図６に示され、上記された。
【００４９】
RFチャネル制御器850は、先のRFチャネル（例えば、チャネルA）にすでに割当てられた残りのストリームのインデックス（例えば、２からｎ）を再割当てしなければならない。1112において、このインデックスは単純に１だけ減分される。この方法により、２のインデックスを有するストリームは１のインデックスを再割当てされ、動的なチャネル再割当て用に次の列をなす。例えば、ｋ＝１のストリームのチャネル再割当て前にｋ＝２に関連したチャネルAのストリームがｋ＝１と関連するようになる。正確な実行に依存して、単一のチャネル再割当てがチャネル再割当ての早い遷移をトリガーしないことを保証するための工程を有することが必要である。本発明の特定の実施例に従うひとつの実行において、インデックス１を割当てられたストリームが少なくともTlの優先順位の差(P−ｔ)を達成するための時間を有するまで、次のチャネルホップが延期される。この時までに、システムはインデックス１を有する最新ストリームの再割当てを調節しなければならず、よって第２のチャネルホップは必要ではない。
【００５０】
本発明の他の特定の実施例に従う他の実行は特に効果的である。閾値Tkをカレント時間のパケットの優先順位の差(P−ｔ)と比較する代わりに、RFチャネル制御器850は閾値Tkを将来のある時（例えば、ｔ＋Tmin）における優先順位の差と比較する。完全に利用されたチャネルのスループットが一定であると仮定すると、当業者は固定インターバルが過ぎた時までに送信されたパケット数を決定することができる。さらに、パケット分類器402により調べられた各パケットに対しすでに優先順位が割当てられているため、どのパケットがインターバルの終わりに送られるか及びどのパケットが待ち行列内に残るかを予想することが可能である。したがって、将来のこの時間におけるチャネル全体の利用度は、優先順位待ち行列408内のタグに対応する次のパケットの優先順位の差(P−ｔ)を観測することにより単純に決定される。
【００５１】
将来の時刻におけるチャネル負荷を予想するひとつの利点は、動的チャネルの再割当ての効果が明らかになることである。ひとつまたはそれ以上のストリームがスケジューリング処理の外挿から除外されるなら、残りのストリームの付加的パケットが外挿インターバルの間に送信され、インターバルが過ぎるとより大きな優先順位の差(P−ｔ)が現れる。したがって、パケットがチャネルのスループットを超える速度に到達するまで続かなければ、２度目のチャネル再割当てが必要となることはまれである。
【００５２】
中央メモリユニットからパケットを読み出し、複数のFIFOへ対応するパケットタグを割当てるためにパケット分類器を使用し、パケットタグを読み出しかつCMTSチャネルフォーマッターへパケットを出力するのにパケットスケジューラを使用するため上記方法は、２つの重要な利点を有する。第１に、ビデオ、オーディオ及びデータパケットは、リアルタイムのビデオ及びオーディオのプレゼンテーションの中断を避けるべく、他のすべてのストリームに対する待ち時間を最小化しながら、パケットが定刻に伝送されることを保証する最適な方法で順位付けされる。第２に、順位付け及びスケジューリング処理は計算効率が良い。優先順位待ち行列は、優先順位に従ってソートされた異なるストリームの最新リストを保持し、エントリーはめったに調節される必要はない。これにより、多数のRFチャネルに対するソート及びスケジューリング処理を管理するのに、ひとつの廉価なプロセッサを使用することで済む。
【００５３】
動的なチャネル割当て方法を使用することで付加的な効果が得られる。利用可能な通信チャネルのストリームを管理しかつ周期的に選択し、準備し、及びひとつの通信チャネルから他の通信チャネルへストリームを再割当てする方法及び装置が説明されてきた。
【００５４】
本発明の実施例は、さまざまな計算演算を実行するための計算コードを有するコンピュータ読取可能媒体を有するコンピュータ記憶製品と関連する。媒体及びコンピュータコードは本発明の目的に対して特に設計されかつ構成されたものであり、当業者に周知かつ入手可能なものである。コンピュータ読取可能記憶媒体は、例えば、ハードディスク、フロッピー（登録商標）ディスク、及び磁気テープのような磁気媒体、CD-ROM及びホログラフィックデバイスのような光学媒体、フロプチカルディスクのような磁気光学媒体、及び特定用途集積回路(ASIC)、プログラム可能論理デバイス(PLD)、ROM及びRAMのようなプログラムコードを格納しかつ実行するように構成されたハードウエアデバイスを含む。コンピュータコードの例として、コンパイラーにより作成されるような機械コード、インタプリタを使ってコンピュータにより実行される高レベルコードを含むファイル等が含まれる。例えば、本発明の実施例はXML、Java（登録商標）、C++、または他のオブジェクト指向プログラム言語及び開発ツールを使って実行される。本発明の他の実施例は、機械実行可能なソフトウエア命令の代わりに、またはそれと組み合わせてハイドワイヤ回路内で実行される。
【００５５】
結果として、本発明はネットワークデバイス及びネットワークデバイス構成を保証するためのシステム及び方法を与える。当業者は本発明の実施例により達成される同じ結果を実質的に達成する構成のさまざまな修正及び置換が可能であることを知る。例えば、開く、実行、移動等のような他のアクセス権、及びファイル及び／またはデバイスの同期化、ひとつまたはそれ以上の命令コマンドセット等のような他の動作が、ここで説明されたセキュリティセットを補強するために使用されてもよい。したがって、発明は開示された実施形式に限定されない。多くの変更、修正及び他の構成が特許請求の範囲に表された発明の思想及び態様の範囲内に含まれる。
【００５６】
上記説明は、発明の全体的な理解を与えるために、特定の標準名称を使って記述された。しかし、発明を実施するために特定の詳細は必要ではないことは当業者の知るところである。よって、発明の実施例の上記説明は、例示及び説明のために与えられたものに過ぎない。それらは網羅的でなく発明を開示された形式に制限するものではなく、上記教示を考慮して、多くの修正及び変更が可能である。実施例は発明の原理及び実際の応用を最適に説明するために選択されかつ記述されたものであり、当業者は、意図された特定の使用に適するようなさまざまな修正でもって本発明及び実施例を最適に利用することが可能である。発明の態様は特許請求の範囲に定義されている。
【図面の簡単な説明】
【００５７】
【図１】図１は、本発明を実行するケーブル配信システムを図示したものである。
【図２】図２は、本発明の実施例に従って使用されるケーブルモデム端末システムを示す。
【図３】図３は、本発明の特定の実施例に従う、ケーブルモデム端末システムで使用されるパケットの読み／書きメカニズムを示す。
【図４】図４は、本発明の実施例に従う読取アドレス生成器を示す。
【図５】図５は、本発明の実施例に従って実行されるパケット分類動作を示す。
【図６】図６は、本発明の実施例に従う、割込みに応答して実行されるパケットスケジューラ動作を示す。
【図７】図７は、本発明の実施例に従って構成されるパケットスケジューラにより実行されるソート動作の例を示す。
【図８】図８は、本発明の実施例に従うパケットスケジューラとともに使用される優先順位変換モジュールの例を示す。
【図９】図９(a)及び図９(b)は発明のさまざまな実施例に従って使用される優先順位変換マッピング機能を示す。
【図１０】図１０は、本発明の実施例に従うRFチャネルコントローラを動作する方法を示す。
【図１】
2006508614.tif 000002
【図２】
2006508614.tif 000003
【図３】
2006508614.tif 000004
【図４】
2006508614.tif 000005
【図５】
2006508614.tif 000006
【図６】
2006508614.tif 000007
【図７】
2006508614.tif 000008
【図８】
2006508614.tif 000009
【図９】
2006508614.tif 000010
【図１０】
2006508614.tif 000011
【手続補正書】
【提出日】平成17年9月1日(2005.9.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のストリームを複数のデジタルマルチプレクスに結合する方法であり、前記デジタルマルチプレクスの各々は対応する通信チャネルを通じて複数の受信機へ送信されるところの方法であって、
第１通信チャネルを通じて送信される第１データ量を有する複数のデジタルマルチプレクスの第１デジタルマルチプレクスを識別する工程であって、前記第１データ量は前記第１通信チャネルに対する第１閾値を超えるところの工程と、
第２通信チャネルを通じて送信される第２データ量を有する複数のデジタルマルチプレクスの第２デジタルマルチプレクスを識別する工程であって、前記第２データ量は前記第２通信チャネルに対する第２閾値を超えないところの工程と、
前記第１デジタルマルチプレクスに対して送信される複数のストリームのサブセットを選択する工程と、
前記サブセットを第２デジタルマルチプレクスへ再割当てする工程と、
から成る方法。
【請求項２】
請求項１に記載の方法であって、さらに、前記複数の受信機の少なくともひとつの受信機に、前記第１通信チャネルから前記第２通信チャネルへ再同調させることを知らせる工程を含む、ところの方法。
【請求項３】
請求項１または２に記載の方法であって、前記第１閾値及び前記第２閾値は、それぞれ前記第１通信チャネル及び前記第２通信チャネルと関連するデータ損失を制御するよう設定される、ところの方法。
【請求項４】
請求項１から３のいずれかに記載の方法であって、前記再割当て工程は、
前記第１デジタルマルチプレクス内にはもはやサブセットが含まれないようにする工程と、
前記サブセット中のストリームの送信を遅延させる工程と、
前記サブセットが前記第２デジタルマルチプレクス内に含まれるようにする工程と、
を含むところの方法。
【請求項５】
請求項４に記載の方法であって、前記遅延工程は、前記第１通信チャネルから前記第２通信チャネルへ少なくともひとつの受信機を再同調させる間のインターバルと少なくとも同じ長さのインターバルの間、前記サブセットを遅延させる工程から成る、ところの方法。
【請求項６】
請求項５に記載の方法であって、さらに、
前記複数のストリームの各々を順位付けする工程と、
各デジタルマルチプレクスに対して、前記デジタルマルチプレクスの他のストリームと比べ最高の優先順位を有するストリームを選択する工程と、
前記デジタルマルチプレクスの各々に対応する選択されたストリームの次のパケットを送信する工程と、
から成る方法。
【請求項７】
請求項１から６のいずれかに記載の方法であって、さらに、前記第１デジタルマルチプレクスから前記第２デジタルマルチプレクスへ再割当てされるべきストリームのサブセットの各々に対して次のパケットの期限を決定する工程を含む方法。
【請求項８】
請求項７に記載の方法であって、前記第１通信チャネルから前記第２通信チャネルへ少なくともひとつの受信機を再同調するのに必要なインターバルと少なくとも同じ長さの期限の前の残り時間までに、比較的高い優先順位がストリームの前記サブセットへ割当てられる、ところの方法。
【請求項９】
請求項１から８のいずれかに記載の方法であって、前記第１及び第２通信チャネルは異なる中心周波数を有する高周波（RF）チャネルである、ところの方法。
【請求項１０】
複数のデータのストリームを送信する方法であって、
第１ストリームに関連するデータの第１サブセットがリアルタイムデータを含むことを決定する工程と、
前記第１サブセットがリアルタイムデータを含むことの決定に基づいて、データの前記第１サブセットを、第２ストリームに関連するデータの第２サブセットから区別するべく、データの前記第１サブセットを分類する工程と、
第２チャネルではなく第１チャネルを通じて送信するために前記第１サブセットを選択する工程と、
から成る方法。
【請求項１１】
請求項１０に記載の方法であって、さらに、前記第２チャネルから前記第１チャネルへ送信を切り替えることにより前記第１チャネルを通じて前記第１サブセットを送信する工程を含む方法。
【請求項１２】
請求項１０または１１に記載の方法であって、前記第１チャネル及び前記第２チャネルは高周波（RF）チャネルである、ところの方法。
【請求項１３】
請求項１０から１２のいずれかに記載の方法であって、前記第１サブセットを分類する工程は、前記第１サブセットを順位付けする工程と、前記第１サブセットに第１優先順位のタグを付ける工程と、から成る方法。
【請求項１４】
請求項１３に記載の方法であって、前記第１サブセットを順位付けする工程は、前記第１サブセットが時間表示を含むか否かを決定する工程と、前記時間表示が前記第１サブセット内に含まれていれば、前記第１優先順位を前記時間表示の関数として形成する工程と、から成るところの方法。
【請求項１５】
請求項１４に記載の方法であって、前記第１サブセットを順位付けする工程はさらに、前記第１ストリームサブセットの他のサブセットが時間表示を含むか否かを決定する工程と、前記時間表示が前記第１サブセット内に含まれなければ、前記他のサブセットに関連する優先順位の関数として前記第１優先順位を形成する工程を含む、ところの方法。
【請求項１６】
請求項１５に記載の方法であって、前記時間表示はタイムスタンプである、ところの方法。
【請求項１７】
請求項１３から１６のいずれかに記載の方法であって、さらに、
データの前記第２サブセットがリアルタイムデータを含むか否かを決定する工程と、
前記第２サブセットがリアルタイムデータを含まないことの決定に基づいて、前記第２サブセットを分類する工程と、
を含む方法。
【請求項１８】
請求項１７に記載の方法であって、前記第２サブセットを分類する工程は、前記第２サブセットを順位付けする工程と、前記第２サブセットに第２優先順位のタグを付ける工程と、から成るところの方法。
【請求項１９】
請求項１８に記載の方法であって、前記第２サブセットを順位付けする工程は、前記第２サブセットが前記第２サブセットを示すパラメータに関連することを決定する工程と、前記パラメータを規格化する工程と、規格化されたパラメータの関数として前記第２優先順位を形成する工程とから成る、ところの方法。
【請求項２０】
請求項１９に記載の方法であって、前記パラメータはサービス品質（QOS）制約である、ところの方法。
【請求項２１】
請求項１３から２０のいずれかに記載の方法であって、送信するために前記第１サブセットを選択する工程は、前記第１サブセットが送信に適していることを決定する工程と、前記第２チャネルに関連する閾値が閾値限界であるかまたはその付近であるとき、送信するために前記第１チャネルを選択する工程と、から成るところの方法。
【請求項２２】
請求項２１に記載の方法であって、前記第１サブセットが適していることを決定する工程は、
第３サブセット及び第１サブセットが第３優先順位及び第１優先順位にそれぞれ割当てられるように、第３ストリームに関連するデータの第３サブセット及び前記第１サブセットを順位付けする工程であって、前記第３優先順位は前記第１優先順位より高いところの工程と、
バッファは前記第３サブセットを受信することができないことを決定する工程と、
他のバッファは前記第１サブセットを受信することができることを決定する工程と、から成るところの方法。
【請求項２３】
請求項２１または２２に記載の方法であって、送信するために前記第１チャネルを選択する工程は、
前記第２チャネルが前記閾値限界またはその付近にあることを決定する工程と、
前記第１チャネルの選択を実施するために、前記第１サブセットを再分類する工程と、から成るところの方法。
【請求項２４】
請求項２３に記載の方法であって、前記第１サブセットを再分類する工程は、修正された優先順位の差の関数として、変換された第１優先順位を形成する工程を含む、ところの方法。
【請求項２５】
複数のストリームの各ストリームを送信するための装置であって、
前記複数のストリームの各々に対する各パケットのデータへ優先順位を示すタグを割当てるよう構成された分類器モジュールであって、前記タグは前記ストリームの各々が時間感知データを含むか否かに関する指標である、ところの分類器モジュールと、
受信バッファが特定ストリームの前記パケットの各々を格納することができれば、送信するための前記パケットを選択するよう構成されたパケットスケジューラーモジュールと、
から成る装置。
【請求項２６】
請求項２５に記載の装置であって、さらに、前記複数のストリームの各々に関連しかつタグのサブセットを格納するように構成されたバッファを含む装置。
【請求項２７】
請求項２５または２６に記載の装置であって、さらに、ひとつまたはそれ以上のストリームに関連する相対的優先順位を格納するよう構成された優先順位待ち行列モジュールを含む装置。
【請求項２８】
請求項２５から２７のいずれかに記載の装置であって、さらに、前記特定のストリームが選択に有効であれば、前記特定ストリームに対して前記各パケットを送信するために通信チャネルを選択するべく前記優先順位を修正するよう構成された優先順位変換機を含む装置。
【国際調査報告】
2006508614.tif 000012
2006508614.tif 000013
2006508614.tif 000014