(57)【特許請求の範囲】
【請求項１】
ａ）複数のクライアントに至る複数のチャンネルのビットローディングプロファイルを判定するステップであって、各前記チャンネルは、１組のキャリアを用いてビットを搬送し、各前記ビットローディングプロファイルは、前記キャリアごとのビットローディング値を含んでおり、該ビットローディング値は、該キャリアによって搬送されるビットの数を示している、ステップと、
ｂ）前記ビットローディングプロファイルに少なくとも部分的に基づいて、前記複数のクライアントを複数の統合グループに関連づけるステップと、
ｃ）２つ以上の前記クライアントに送信する情報を、前記クライアントが同一の統合グループのメンバであるかどうかに少なくとも部分的に基づいて、統合するステップと、を含む方法。
【請求項２】
前記統合された情報は、前記２つ以上の前記クライアントに送信することが意図された情報を含むペイロードを有するデータパケットを含んでいる、請求項１に記載の方法。
【請求項３】
１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれるという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの１つに追加するステップをさらに含む、請求項１に記載の方法。
【請求項４】
ａ）１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれないという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記グループのうちの１つから除去するステップと、
ｂ）前記ビットローディングプロファイルの前記再評価に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの他の１つに含めるステップと、
をさらに含む、請求項１に記載の方法。
【請求項５】
前記統合された情報のサイズは、前記同一の統合グループの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項１に記載の方法。
【請求項６】
ａ）前記複数のクライアントに至る前記複数のチャンネルの前記ビットローディングプロファイルを再評価するステップと、
ｂ）前記再評価されたビットローディングプロファイルに少なくとも部分的に基づいて、前記複数のクライアントを複数の新規の統合グループに関連づけるステップと、
をさらに含む、請求項１に記載の方法。
【請求項７】
単一のビットローディングが１つの統合グループの全メンバに対して適用される、請求項１に記載の方法。
【請求項８】
前記単一のビットローディングは、前記統合グループの全メンバの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項７に記載の方法。
【請求項９】
ａ）複数のクライアントに至る複数のチャンネルのビットローディングプロファイルを判定するステップであって、各前記チャンネルは、１組のキャリアを用いてビットを搬送し、各前記ビットローディングプロファイルは、前記キャリアごとのビットローディング値を含んでおり、該ビットローディング値は、該キャリアによって搬送されるビットの数を示している、ステップと、
ｂ）前記ビットローディングプロファイルに少なくとも部分的に基づいて、前記複数のクライアントを複数の統合グループに関連づけるステップと、
ｃ）２つ以上の前記クライアントに送信する情報を、前記クライアントが同一の統合グループのメンバであるかどうかに少なくとも部分的に基づいて、統合するステップと、
をコンピュータに実行させるプログラム。
【請求項１０】
前記統合された情報は、前記２つ以上の前記クライアントに送信することが意図された情報を含むペイロードを有するデータパケットを含んでいる、請求項９に記載のプログラム。
【請求項１１】
１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれるという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの１つに含めるステップを前記コンピュータにさらに実行させる、請求項９に記載のプログラム。
【請求項１２】
ａ）１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれないという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記グループのうちの１つから除去するステップと、
ｂ）前記ビットローディングプロファイルの前記再評価に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの他の１つに含めるステップと、
を前記コンピュータにさらに実行させる、請求項９に記載のプログラム。
【請求項１３】
前記統合された情報のサイズは、前記同一の統合グループの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項９に記載のプログラム。
【請求項１４】
ａ）前記複数のクライアントに至る前記複数のチャンネルの前記ビットローディングプロファイルを再評価するステップと、
ｂ）前記再評価されたビットローディングプロファイルに少なくとも部分的に基づいて、前記クライアントを複数の新規の統合グループに関連づけるステップと、
を前記コンピュータにさらに実行させる、請求項９に記載のプログラム。
【請求項１５】
単一のビットローディングが１つの統合グループの全メンバに対して適用される、請求項９に記載のプログラム。
【請求項１６】
前記単一のビットローディングは、前記統合グループの全メンバの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項１５に記載のプログラム。
【請求項１７】
ａ）複数のクライアントに至る複数のチャンネルのビットローディングプロファイルを判定する手段であって、各前記チャンネルは、１組のキャリアを用いてビットを搬送し、各前記ビットローディングプロファイルは、前記キャリアごとのビットローディング値を含んでおり、該ビットローディング値は、該キャリアによって搬送されるビットの数を示している、手段と、
ｂ）前記ビットローディングプロファイルに少なくとも部分的に基づいて、前記複数のクライアントを複数の統合グループに関連づける手段と、
ｃ）２つ以上の前記クライアントに送信する情報を、前記クライアントが同一の統合グループのメンバであるかどうかに少なくとも部分的に基づいて、統合する手段と、
を備える装置。
【請求項１８】
前記統合された情報は、前記２つ以上の前記クライアントに送信することが意図された情報を含むペイロードを有するデータパケットを含んでいる、請求項１７に記載の装置。
【請求項１９】
１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれるという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの１つに追加する手段を更に含む、請求項１７に記載の装置。
【請求項２０】
ａ）１つまたは複数の前記クライアントに関連づけられたそれぞれのチャンネルの前記ビットローディングプロファイルに含まれる前記ビットローディング値が所定のビットローディング値範囲に含まれないという再評価に少なくとも部分的に基づいて、該１つまたは複数の前記クライアントを、前記グループのうちの１つから除去する手段と、
ｂ）前記ビットローディングプロファイルの前記再評価に基づいて、該１つまたは複数の前記クライアントを、前記統合グループのうちの他の１つに含める手段と、
を更に備える、請求項１７に記載の装置。
【請求項２１】
前記統合された情報のサイズは、前記同一の統合グループの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項１７に記載の装置。
【請求項２２】
ａ）前記複数のクライアントに至る前記複数のチャンネルの前記ビットローディングプロファイルを再評価する手段と、
ｂ）前記再評価されたビットローディングプロファイルに少なくとも部分的に基づいて、前記クライアントを複数の新規の統合グループに関連づける手段と、
を更に備える、請求項１７に記載の装置。
【請求項２３】
単一のビットローディングが１つの統合グループの全メンバに対して適用される、請求項１７に記載の装置。
【請求項２４】
前記単一のビットローディングは、前記統合グループの全メンバの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項２３に記載の装置。
【請求項２５】
ａ）データパケットを送信元から受信し、前記データパケットを複数のクライアントに転送するための送受信器と、
ｂ）前記複数のクライアントに至る複数のチャンネルのビットローディングプロファイルを判定し、前記ビットローディングプロファイルに少なくとも部分的に基づいて、前記複数のクライアントを複数の統合グループに関連づけるためのプロセッサであって、各前記チャンネルは、１組のキャリアを用いてビットを搬送し、各前記ビットローディングプロファイルは、前記キャリアごとのビットローディング値を含んでおり、該ビットローディング値は、該キャリアによって搬送されるビットの数を示している、プロセッサと、
ｃ）２つ以上の前記クライアントに送信する情報を、前記クライアントが同一の統合グループのメンバであるかどうかに少なくとも部分的に基づいて、統合するためのメモリと、
を備えるネットワークコントローラ。
【請求項２６】
前記統合された情報は、前記クライアントに送信することが意図された情報を含むペイロードを有するデータパケットを含んでいる、請求項２５に記載のネットワークコントローラ。
【請求項２７】
前記統合された情報のサイズは、前記同一の統合グループの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項２５に記載のネットワークコントローラ。
【請求項２８】
単一のビットローディングが１つの統合グループの全メンバに適用される、請求項２５に記載のネットワークコントローラ。
【請求項２９】
前記単一のビットローディングは、前記統合グループの全メンバの最大公約数（ＧＣＤ）ビットローディングに少なくとも部分的に基づいている、請求項２８に記載のネットワークコントローラ。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は、２００８年６月３０に出願され、Ｄｙｎａｍｉｃ  Ｂｉｔｌｏａｄｉｎｇを発明の名称とする米国通常特許出願第１２／１６５，４２６号の優先権を主張する。
【技術分野】
【０００２】
本願において開示される主題は、ネットワーク上の複数の転送先に対するビットローディングを動的に調整することに関する。
【背景技術】
【０００３】
マルチメディアの人気が高まるにつれて、デジタルビデオ等のマルチメディアコンテンツを既存の同軸ケーブルを用いて家庭および企業全体にわたって配信する要望もまた高まりつつある。かかる配信のための一手段が、例えば、同軸ケーブル・マルチメディア協会（ＭｏＣＡ：Ｍｕｌｔｉｍｅｄｉａ  ｏｖｅｒ  Ｃｏａｘ  Ａｌｌｉａｎｃｅ）にしたがって開発された装置を用いることにより可能となっている。マルチメディアコンテンツを搬送する信号は、家庭および企業にエントリ点（ＰＯＥ：ｐｏｉｎｔ−ｏｆ−ｅｎｔｒｙ）から入ることができる。かかる信号は、ＰＯＥから家庭内および企業内に、例えば、様々な端末すなわちブロードバンドケーブルネット（ＢＣＮ：ｂｒｏａｄｂａｎｄ  ｃａｂｌｅ  ｎｅｔｗｏｒｋ）等の通信ネットワークの一部であり得るノードに配信されてもよい。かかる端末、クライアント、ＣＰＥ、および／またはクライアント（これらは、以後クライアントと称する）は、いくつか例を挙げると、ケーブルコンバータボックス、テレビ、ビデオモニタ、ケーブルモデム、ケーブル電話、およびビデオゲームコンソール等の、様々な実体に接続されまたは含まれ得る。
【０００４】
本明細書で定義される用語「クライアント」は用語「ノード」と交換可能に用いられ、用語「チャンネル」は用語「リンク」と交換可能に用いられる。クライアントに至るリンクすなわちチャンネルにおいては、ビットロードされた変調方式等の信号送信技術が用いられてもよい。本明細書で定義されるビットローディングとは、リンク上で１組のキャリアを用いてデータをノードへと搬送するために用いる変調技術を最適化してスループットを増大させるプロセスを指す。例えば、いくつかのＢＣＮでは、ビットロードされた直交周波数分割多重（ＯＦＤＭ：ｏｒｔｈｏｇｏｎａｌ  ｆｒｅｑｕｅｎｃｙ  ｄｉｖｉｓｉｏｎ  ｍｕｌｔｉｐｌｅｘｉｎｇ）が用いられる。ＯＦＤＭによれば、情報は、各個別のキャリア上で様々な異なった変調方式を用いて、複数のキャリア信号上で変調される（通常は２４４個のキャリア。そのうち、一部または全部が情報により変調される）。例えば、キャリアの内のいくつかは、３２ＱＡＭを用いて、いくつかは１６ＱＡＭを用いて、いくつかは８ＱＡＭを用いて、および、いくつかはＢＰＳＫ（Ｂｉｎａｒｙ  Ｐｈａｓｅ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ：２位相偏移変調）を用いて、変調されてもよい。かかる技術では、例えば、長さ、品質、チャンネル接続、および／または、チャンネル上で送信されるメッセージの送信に影響を与える、クライアントに至るチャンネルが有する他の任意の特徴等のチャンネル特性が考慮される。変調技術は、例えば、許容可能なビット誤り率を保持しながら、チャンネル上で最適なデータ送信速度が提供されるよう、選択される。符号は、２５６個のキャリア（または、その一部）を介して、各キャリアが１６ＱＡＭ、３２ＱＡＭ、ＢＰＳＫ等の各変調方式にしたがってビットを送信しながら、チャンネル上から下流側へと送信される。
【０００５】
異なるチャンネルは物理的特性および／または電気的特性が異なるため、上述のように、異なったチャンネルでは異なったビットロードされた変調方式が用いられてもよい。物理的には、送信元から異なったクライアントに至るチャンネルは、長さが異なり、電気的には、かかるチャンネルは、ネットワーク内のケーブル、スイッチ、端末、接続、および他の電気部品等の様々な要素を通過する経路および様々な要素からの反映のために異なり得る。チャンネルの通信特性は、例えば、リモート装置等のクライアントにおいて受信される信号の信号対雑音比（ＳＮＲ：ｓｉｇｎａｌ−ｔｏ−ｎｏｉｓｅ  ｒａｔｉｏ）、ビット誤り率（ＢＥＲ：ｂｉｔ−ｅｒｒｏｒ  ｒａｔｅ）、および／または出力レベルにより記述され得る。
【０００６】
いくつかのＢＣＮでは、データは、例えば、ヘッダ、プリアンブル、およびペイロードを含むデータパケットの形態でネットワーク上に送信される。かかるヘッダは、ペイロードおよび対象受信者の特徴に関する情報を含んでもよい。かかる情報は、いくつか例を挙げると、送信元および送信先のノード識別、パケットタイプおよびサブタイプを含んでもよい。プリアンブルは、パケットの検出および受信のために、物理層により用いられてもよい。
【０００７】
符号は、送信されるパケットのヘッダ、プリアンブル、および／またはペイロードを構成するデータの１つまたは複数のビットを表す。ヘッダおよびペイロードの両方は、ＮＣによりおよび／またはクライアントにより、解釈される情報を含む。下流パケットに関しては、例えば、ヘッダは、どのクライアントが対応するペイロードの対象受信者であるかを記述する情報を含む。かかる情報は、受信クライアントにより読み取られてもよい。
【０００８】
加えて、フレーム間ギャップ（ＩＦＧ：ｉｎｔｅｒ−ｆｒａｍｅ  ｇａｐ）がデータパケット間に存在し得る。ヘッダ、プリアンブル、およびＩＦＧがデータパケットのオーバーヘッド部分を構成し、このオーバーヘッド部分は、複数のデータパケットを統合（ａｇｇｒｅｇａｔｅ）することにより、他のデータパケットのオーバーヘッド部分と組み合わされてもよい。単一データパケットの場合のプリアンブルと比較して統合データパケットの場合は比較的より小さい部分がプリアンブルのために使用され得るため、データ送信効率すなわちスループットが、かかる統合により改善され得る。したがって、オーバーヘッドに対するデータ（ペイロード）の比率が大きくなり得る。
【０００９】
ネットワークコーディネータすなわちネットワークコントローラ（ＮＣ）は、ＰＯＥの上流側または下流側のいずれかに配置してもよい。例えば、いくつかのＢＣＮにおいて、ＮＣは、ＢＣＮの上流側と見なされる「ヘッドエンド」装置に備えられる。かかるＮＣは、例えば、ＢＣＮの各チャンネルからのデータパケットおよび各チャンネルへのデータパケット等の上流データパケットおよび下流データパケットをコーディネートする。例えば下流データパケットが単一のクライアントを対象とする場合、ＮＣは、スループットを増すために、かかるデータパケットを統合する。しかしながら、異なったクライアントが、ほぼ常に異なったビットローディングパターンを有するチャンネルを有するため、かかる下流データパケットが複数のクライアントを対象とする場合は、下流データパケットは統合されないこともある。
【００１０】
非限定的および非網羅的な実施形態が、以下の図面を参照して説明される。なお、以下の図面では、特記ある場合を除き、同様の参照番号が同様の構成要素に対して様々な図を通じて用いられる。
【図面の簡単な説明】
【００１１】
【図１】本開示の方法および装置の１つの実施形態に係るマルチキャストネットワークを示す概略図である。
【図２】本開示の方法および装置の１つの実施形態に係る、クライアントが配置される複数のグループを示す概略図である。
【図３】本開示の方法および装置の１つの実施形態に係るパケットの構成を示す概略図である。
【図４】本開示の方法および装置の１つの実施形態に係るネットワークコントローラプロセスのフローチャートである。
【発明を実施するための形態】
【００１２】
下記の詳細な記載において、請求項の内容に関する十分な理解を提供するために、多数の特定の詳細が説明される。しかし、当業者は、これらの特定の詳細がなくとも請求項の内容が実施可能であることを理解するであろう。他の例において、周知の方法、手順、構成部品、および回路については、請求項の内容を不明瞭なものとしないため、詳細にわたる説明がなされていない。
【００１３】
本開示の方法および装置においては、グループ化される２つ以上のクライアントを対象とするデータパケットが統合（ａｇｇｒｅｇａｔｅ）されるように、２つ以上のクライアントがグループ化される。次に、ネットワーク上の複数のクライアントは、かかる統合パケットを受信する。次に、受信クライアントは、他のクライアントを対象とするペイロード部分を無視する一方で当該クライアントを対象とするペイロード部分を受信するために、統合パケットを解析する。ネットワーク上の複数のクライアントを対象とするパケットを統合する該プロセスにより、パケットをクライアントに供給するためのスループットおよび効率が改善され得る。
【００１４】
１つの実施形態において、ＮＣは、複数のクライアントに至るチャンネルのビットローディング能力に応じて、かかるクライアントを１つの統合グループ（ＡＧ：ａｇｇｒｅｇａｔｉｏｎ  ｇｒｏｕｐ）に関連づける。他の実施形態において、複数のクライアントは、送信されるデータパケットのトラフィックパターンに応じて、１つのＡＧへと関連づけられる。例えば、近接したデータパケットは、データパケットの並び替えおよび可能なレイテンシが最小化されるように、統合により適している。ＮＣは送受信器（図示せず）を用いて、最大公約数（ＧＣＤ：ｇｒｅａｔｅｓｔ  ｃｏｍｍｏｎ  ｄｅｎｏｍｉｎａｔｏｒ）ビットローディング技術により判定されたビットローディングで、統合パケットをＡＧへと下流側に送信する。かかるＧＣＤビットローディングの判定においては、ＡＧ内のクライアントに至るチャンネルの個々のキャリアに対するビットローディングが考慮される。ＮＣは、ＡＧ内のクライアントに対するかかる個々のキャリアに適用されるビットローディングを、ＡＧ内のクライアントに関連づけられた全キャリアのうちの個々のキャリアに対する最悪状態のビットローディング能力にしたがって、設定してもよい。かかる最悪状態のキャリアのビットローディング能力が、ＡＧ内のクライアントに至る複数のキャリアに適用されてもよい。クライアントに至るチャンネルのビットローディングプロファイルは、チャンネル上の個々のキャリアのビットローディングにより特徴づけられてもよい。したがって、ＡＧのＧＣＤビットローディングは、ＡＧ内のクライアントに至る複数のチャンネルにわたる各キャリアの最悪状態ビットローディング値を含むビットローディング能力プロファイルを含んでもよい。１つの特定の実施形態において、ＮＣは、下記の説明のように、パケットを統合することの利益と、ＡＧのＧＣＤビットローディングプロファイルとの間のトレードオフを考慮する。
【００１５】
上述のように、パケットの統合は、プリアンブルおよびＩＦＧ等のオーバーヘッドのサイズをペイロードデータに対して低減することにより、ネットワーク上のデータ送信の効率およびスループットを改善し得る。しかし、統合パケットがＡＧ内の２つ以上のクライアントを対象とする場合、かかるクライアントのすべてに適用されるビットローディングプロファイルは、ＧＣＤビットローディングが用いられる場合、ＡＧ内のクライアントに至るチャンネル上の個々のキャリアの最悪状態ビットローディング値を含んでいてもよい。したがって、クライアントをＡＧにグループ化することは、全クライアントに対して統合されていないパケットを個別に送ることに比べて、ＡＧの全クライアントに対するビットローディングプロファイルがより低くなる危険があるかもしれない。したがって、ＮＣは、パケットを統合しＡＧを生成してパケットオーバーヘッドを低減する（これはビットローディングプロファイルの低下を伴うかもしれない）、ことと、パケットオーバーヘッドの低減を差し控えて、統合されていないパケットを、個々のビットローディング能力プロファイルを適用しながら、各クライアントに個別に送ることのどちらがより利益があるかを判定してもよい。
【００１６】
１つの実施形態においては、ＮＣは、同様のビットローディング能力プロファイルを有するクライアントを複数のＡＧに関連づけることにより、２つ以上のＡＧを生成する。かかるグループ化プロセスは、上述のように、ＡＧに対するＧＣＤビットローディングによるスループットのトレードオフを低減する。例えば、実質的に等しいビットローディング能力プロファイルを有するクライアントを含むＡＧは、ＡＧのクライアントのビットローディング能力プロファイルよりも実質的に低くないＧＣＤビットローディングプロファイルを有する。さらに詳細な例においては、ＡＧは、ＡＧ内の各クライアントのビットローディング能力プロファイルが少なくとも実質的に同一となるよう、すべてが、キャリア１〜１０に対しては６４ＱＡＭ、キャリア１１〜２０に対しては３２ＱＡＭ等のビットローディング能力プロファイルを有するクライアントを含む。すなわち、ＡＧの各クライアントのビットローディングプロファイルは同一である。したがって、ＡＧに対するＧＣＤビットローディングも同一となるであろう。
【００１７】
１つの特定の実施形態においては、ＮＣは、クライアントのビットローディングプロファイルを判定するための、且つ、実質的に等しいビットローディングプロファイルは有しないが、それにもかかわらず、ＮＣが多数のグループ化オプションにおけるトレードオフを考慮する際に使用する判定基準内に適合する複数のクライアントをともに関連づけるための、プロセッサ（図示せず）を備える。したがって、ＮＣは、統合パケットおよびＡＧのどの組合せがネットワークのクライアントに対して最適なデータスループットを生じるかにしたがって、パケットを統合し、複数のＡＧを生成するための判定基準を選択してもよい。１つの代替的な実施形態においては、ＮＣはパケットを統合するためのメモリ（図示せず）を備える。どのクライアントをＡＧにグループ化するかを判定するとき、ＮＣは、ＡＧのＧＣＤビットローディングのみばかりではなく、ＡＧから生じる全体的なデータスループットを考慮してもよい。このように、上記に示したように、パケットの統合により効率を改善するにあたって、ＡＧの全クライアントが必ずしも実質的に等しいビットローディングプロファイルを有する必要はない。もちろん、統合グループのかかる判定は、上記において単に実施形態の例として表されたものであり、該実施形態の例に請求項の内容を限定するものではない。
【００１８】
１つの実施形態において、ＮＣは、ネットワーク上におけるクライアントに至るチャンネルのビットローディング能力を定期的に点検する。例えば、かかる定期的点検すなわちリンク保守動作（ＬＭＯ：ｌｉｎｋ  ｍａｉｎｔｅｎａｎｃｅ  ｏｐｅｒａｔｉｏｎ）は、チャンネル上の複数のキャリアにわたるビットローディングプロファイルの変化等のビットローディング能力の変化を調べるための、チャンネルのラウンドロビン判定を含む。かかる変化は、温度変化等の、ネットワークに対する物理的変化から生じ得る。１つの例においては、ＬＭＯはおよそ５分毎に発生する。ただし、請求項の内容は、かかる例に限定されない。ビットローディング能力は、例えば、プローブ信号をチャンネルに沿って各クライアントへと送り、関連づけられたクライアントからの応答を計測することにより、ＬＭＯ中に判定される。例えば、クライアントＸからクライアントＹへのビットローディング能力を判定するために、ビットローディングプローブがクライアントＸからクライアントＹへと送られる。次に、クライアントＹは、プローブを受信し、ＲＦチャンネルにおいて用いられる各キャリアに対するそのＳＮＲを測定する。測定されたＳＮＲに基づいて、クライアントＸからの送信のために、クライアントＹ上で用いられる受信ビットローディング能力が判定される。次に、クライアントＹは、ビットローディング能力を含むレポートをクライアントＸへと送り返す。するとクライアントＸは、クライアントＸからクライアントＹへの送信のために、送信ビットローディング能力として、レポートのビットローディング能力を使用する。
【００１９】
ＬＭＯ周期の間、ＮＣは、新規に判定されたクライアントのビットローディング能力に応じて、ＡＧからのクライアントの除去またはＡＧへのクライアントの追加を考慮してもよい。例えば、クライアントに至るチャンネルのビットローディング能力が最後のＬＭＯ周期以後に変化した場合、かかる変化により、上述のように、クライアントはＡＧのビットローディングパラメータに含まれなくなり得るため、ＮＣは特定のＡＧからクライアントを除去する。すると、ＮＣは、対応するビットローディングパラメータを有する他のＡＧへと、かかるクライアントを移動させる。
【００２０】
図１を参照すると、概略図は、特定の実施形態に係る、例えばＢＣＮ等の、ネットワーク１００を示す。ネットワーク１００は、例えば、アクセスネットワークおよび／またはメッシュネットワークを含む。１つの実装において、アクセスネットワークでは、ＮＣ１２０を用いてクライアント間の通信が行われるが、一方メッシュネットワークにより、１つのクライアントが別のクライアントと直接通信することが可能になる。ＮＣ１２０は、通信ポート１１０を介してルータ１６０等の上流側送信元から情報を受信するための送受信器（図示せず）を備える。かかる情報は、パケットの形態を取り得るものであり、いくつか例を挙げると、ビデオパケットまたはプログラムガイドデータ（例えば、ＩＰＴＶにおけるような）を含み得る。１つの特定の実施形態においては、通信ポート１１０および／またはＮＣ１２０は、ルータ１６０からのＰＯＥ（図示せず）の下流側に配置される。他の実施形態においては、通信ポート１１０および／またはＮＣ１２０は、かかるＰＯＥの上流側に配置される。ＮＣ１２０は、かかる情報の少なくとも一部を、１つまたは複数の接続されたクライアント１３０ａから１３０ｆへと、ダウンストリーム（ＤＳ：ｄｏｗｎｓｔｒｅａｍ）ポート１１５を介して転送する。クライアント１３０ａから１３０ｆが１つの例として図１に示されているが、限定されない数のこのようなクライアントがポート１１５に接続されてもよい。１つの実施形態においては、ＮＣ１２０は、同軸ケーブルを介してデータパケットを受信し、通信ポート１１０は、例えば、ケーブルモデムを含む。通信ポート１１０は、ルータ１６０に加えて、１つまたは複数の実体に接続され、これら１つまたは複数の実体から信号を受信する。１つの実施形態においては、ルータ１６０、ＮＣ１２０、およびクライアント１３０が、通信ネットワークの一部を構成する。
【００２１】
ＤＳポート１１５ａおよび１１５ｂは、ＤＳポート１１５と下流側のクライアント１３０との間の接続の例を示す。かかる接続は、パケットが複数のクライアント１３０へと共有媒体上で下流側に渡されるよう、スプリッタネットワークを含んでもよい。任意数量のクライアントが任意数量のＤＳポート接続および任意の構成を介してＤＳポート１１５へと接続されてもよいが、図１においては、クライアント１３０ａ、１３０ｂ、１３０ｃ、および１３０ｄはＤＳポート１１５ｂを介してＤＳポート１１５に接続され、クライアント１３０ｅおよび１３０ｆは、ＤＳポート１１５ａを介してＤＳポート１１５に接続される。例えば、ＢＣＮにおいては、ネットワークは、複数のクライアントが単一の物理ポートに接続されるように共有媒体である。しかし、ＮＣ１２０は、ポート１１５を物理ポートからの仮想ポートとして提供してもよい。図１に示すクライアント１３０の数量と、ＤＳポート接続の数量および構成は、本明細書の様々な実施形態の例を示すものである。１つの特定の実施形態においては、上述のネットワークは、同軸ケーブル・マルチメディア協会（ＭｏＣＡ。例えば、ＭｏＣＡ１．１）にしたがって構成されてもよい。なお、請求項の内容は、かかる例に限定されない。
【００２２】
１つの実施形態においては、ルータ１６０は、例えばマルチキャストのデータストリーム等のデータパケットをネットワーク１００上に提供するための上流側のビデオサーバ（図示せず）から、データトラフィックを受信する。他の実施形態においては、ルータ１６０は、例えば、１つまたは複数のサーバからデータトラフィックを受信するためのマルチポートスイッチ／ルータを備える。かかるデータトラフィックを受信すると、次にルータ１６０は、トラフィックをネットワーク１００上にクライアントへと下流側にルート指定する。高解像度テレビ（ＨＤＴＶ）信号等のビデオデータストリームは、例えば、ＭＡＣアドレス等のアドレスに含まれるグループ番号により、相互に区別される。データストリームは、例えば、データストリームを構成するインターネットプロトコル（ＩＰ：ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）のマルチキャストパケットで送信されるＭＰＥＧビデオを含む。ＮＣ１２０の下流側にあるクライアント１３０を含む、ルータ１６０の下流側のクライアントは、データストリームを受信可能なネットワーク上の家庭、企業、または任意のＰＯＥを含んでもよい。クライアント１３０は相互間の通信が、可能または不可能であり得るが、ＮＣ１２０は接続されたクライアント１３０と通信する。
【００２３】
１つの実施形態においては、ＡＧは、個々のキャリアに対するビットローディング値範囲に含まれるビットローディングプロファイルを有するクライアントを含む。例えば、図１を参照すると、ＡＧは、様々な範囲に含まれる関連づけられたビットローディングプロファイルを有するクライアント１３０の全部または一部を含む。例によって示すと、クライアント１３０ｃおよび１３０ｆは、ビットローディングプロファイル範囲外の関連づけられたビットローディングプロファイルを有し、したがって、ＡＧに含まれない。クライアント１３０ａおよび１３０ｂは、第１範囲にすべて含まれるビットローディングプロファイルと関連づけられ、そのために、第１ＡＧ１４０に含まれる。クライアント１３０ｄおよび１３０ｅは、第２範囲に含まれるビットローディングプロファイルと関連づけられ、そのために、第２ＡＧ１５０に含まれる。したがって、第１ＡＧ内のクライアント１３０ａおよび１３０ｂへと送信するために、パケットが統合され、第２ＡＧ内のクライアント１３０ｄおよび１３０ｅへと送信するために、他のパケットが統合される。ここで、クライアント１３０ｃおよび１３０ｆを対象とするパケットは、どのＡＧに対しても関連づけられていないため、統合されない。故に、例えば、ＮＣ１２０は、どのクライアントがどのＡＧにグループ化されるかに少なくとも部分的に基づいて、どのようにパケットを統合するかを判定し得る。例えば、統合パケットを第１ＡＧ１４０に送信するときに適用されるビットローディングは、第１ＡＧのＧＣＤビットローディングと同一のビットローディングであってもよく、統合パケットを第２ＡＧ１５０に対して送信するときに適用されるビットローディングは、第２ＡＧのＧＣＤビットローディングと同一であってもよい。
【００２４】
上述のように、ＮＣ１２０は、ＡＧ１４０および１５０のそれぞれに適用される単一のビットローディングプロファイルを判定してもよい。なお、この単一のビットローディングプロファイルは、それぞれのＡＧの各々に含まれるクライアントに至るチャンネルの性能に少なくとも部分的に基づくものであってもよい。例えば、ＡＧに適用されるビットローディングプロファイルは、許容可能なＢＥＲに適応し得る、ＡＧ内の全クライアントのチャンネルの個々のキャリアのビットローディング値を含む。例えば、ＡＧに含まれるクライアントのうち、１つのクライアントが、特定キャリアに対する関連づけられた最低の性能を有するチャンネルを有する。この最低性能のチャンネルが、ＡＧ内の全クライアントのその特定キャリアに統合パケットを転送するときに適用されるその特定キャリアに対するビットローディングプロファイルを判定してもよい。
【００２５】
上述のように、ＮＣ１２０はＡＧと関連づけられたクライアントを除去してもよい。この除去は、例えば、ＡＧに対して確立された判定基準内に含まれるビットローディングプロファイルをもはや有さないクライアントに応答して、行われる。かかる除去が行われると、ＡＧ内のクライアントに至るチャンネルの性能が再評価される。次に、新規のビットローディング値は、変更されたＡＧのＧＣＤビットローディングであり得るものであり、変更されたＡＧ内のクライアントへの統合パケットの転送に適用される。かかる再評価は、例えば、残りのクライアントのビットローディング能力に対する、既存のクライアントのビットローディング能力の相違を考慮して、かかる変更が無視可能であるかどうかに依存する。
【００２６】
図２は、図１に示すＮＣ１２０等のＮＣが、複数のＡＧ２２０のうちのどのＡＧにクライアント２１０を配置するかを判定するときに有する選択を概略的に示す。例えば、ＡＧ１が特定のビットローディングプロファイルを有するクライアントを含む一方で、ＡＧ２が他のビットローディングプロファイルを有する、などである。１つの実施形態においては、１つのクライアントが複数のＡＧ内に配置されてもよい。１つのクライアントが属するＡＧの数が多いほど、有益な統合である可能性がより大きくなる。図２の両頭矢印２３０は、ＮＣがＡＧ２２０のうちのいずれかからクライアント２１０を除去し得ることを示す。かかる除去は、例えば、ネットワークチャンネルの物理的挙動を変化させることによってクライアント２１０に対するビットローディングプロファイルが十分な影響を受け、その結果として、変化後のビットローディングプロファイルが特定のＡＧに対するビットローディング範囲の値に含まれなくなる場合に、生じ得る。例えば、ビットローディングプロファイルが変化した結果、クライアント２１０が元のグループＡＧ２に「適合」しなくなる。そのような場合、ＮＣ１２０は、クライアントの新規ビットローディングプロファイルを有するクライアント２１０に対して他のＡＧが適しているかどうかを判定する。例えば、新規のビットローディングプロファイルが他のグループＡＧ１に対する値の範囲に含まれる場合、ＮＣ１２０は次いでクライアント２１０をＡＧ１に配置する。
【００２７】
上述のように、ＮＣ１２０は、例えば、ＬＭＯ中にネットワークパラメータを定期的に再評価した後、ネットワークのクライアント２１０をＡＧ２２０に追加するかまたはＡＧ２２０から除去するかを判定してもよい。クライアントを追加するかまたは除去するかの該判定においては、クライアントのビットローディングプロファイルが最近変化したかどうかに加えて、他の要因も考慮される。例えば、そのビットローディングプロファイルが、そのＡＧ内の他のクライアントのビットローディングプロファイルと比較して、どれほど変化したかを考慮することが、かかる要因の１つとなる。例えば、あるＡＧのビットローディング値範囲に含まれない、関連づけられたビットローディングプロファイルを有するクライアントを考慮してみる。かかる場合、ＮＣは、かかるビットローディングプロファイルがこのクライアントおよびＡＧ内のおそらく数個より少ないクライアントのみに対応する場合、このクライアントをＡＧから除去しないことを選択する。すなわち、かかるクライアントの数の少なさによって、それらのクライアントを１つのＡＧから他のＡＧへと移動させることが保証されるとは限らない。しかし、ＡＧ内の比較的多数のクライアントがＡＧのビットローディング値範囲に含まれないビットローディングプロファイルを有するとＮＣが判定する場合、ＮＣは、次いで１つまたは複数のこれらのクライアントをＡＧから除去する。例えば、ＮＣは、ネットワーク上の通信がより高速であるクライアントのチャンネルから利益を得るよう、より高速のビットローディング能力を有するクライアントに対して、より適したＡＧを見つけてもよい。
【００２８】
図３は、１つの実施形態に係る統合パケット３００の構成を示す概略図である。上述のように、統合パケット３００は、ヘッダ３２０（以後、統合ヘッダと称する）およびペイロード３４０を含んでもよい。統合ヘッダ３２０は、いくつか例を挙げると、プロトコルデータユニット（ＰＤＵ：ｐｒｏｔｏｃｏｌ  ｄａｔａ  ｕｎｉｔ）の数量、各ＰＤＵのチェックサムおよび長さ等の他のパラメータの他に、ペイロード３４０の対象となるクライアントのアドレス情報を含む。１つの実施形態においては、各統合データのペイロードに先行して、１つのＭｏＣＡヘッダが存在する。ペイロード３４０は、２つ以上のクライアントを対象とする複数のペイロードセクション３６０を含む。統合パケット３００は、全クライアントがそのパケットを受信するよう、ネットワーク上で通信される。ペイロード３４０内で、ＭｏＣＡヘッダ３８０は、ペイロードセクション３６０の前端部および／または後端部等において、ペイロード３４０に含まれる。例えば、ＭｏＣＡヘッダ３８０は、いくつか例を挙げると、送信クロック時刻、パケットサブタイプ、パケットタイプ、バージョン、送信元ノードＩＤ、送信先ノードＩＤ、バケット長、およびヘッダチェックサムを含んでもよい。特定のクライアントが統合パケット３００を受信する場合、そのクライアントは、ヘッダ情報３８０にしたがって、そのクライアントに向けられたペイロードセクション３６０を解析する。残りのペイロードセクション３６０は、特定のクライアントにより無視されてもよい。
【００２９】
図４は、１つの実施形態に係るネットワークコントローラプロセス４００のフローチャートである。かかるプロセスは、例えば、ＬＭＯ周期にしたがって、周期的に繰り返されてもよい。ブロック４１０において、図１に示すＮＣ１２０等のＮＣは、ネットワーク上の複数のクライアントに至る複数のチャンネルのビットローディング能力を判定する。かかるビットローディング能力は、ネットワーク上の各クライアントに対する複数のキャリアにわたるビットローディングプロファイルを含む。ブロック４２０において、ＮＣは、クライアントのビットローディングプロファイルに応じて、クライアントを複数の統合グループ（ａｇｇｒｅｇａｔｉｏｎ  ｇｒｏｕｐ）に関連づける。ＮＣは、上述のように、あるＡＧに対してどのＧＣＤビットローディングが、かかる統合から生じたかを考慮する。次に、ブロック４３０において、複数のＡＧを考慮しながら、ＮＣは、例えば、どのクライアントがどのＡＧに属するかにしたがって、下流パケットを統合する。
【００３０】
ブロック４４０において、ＮＣは、ネットワーク上の各クライアントに対するビットローディング能力を再評価してもよい。かかる再評価は、例えば、上述のように、ＬＭＯと関連して実施されてもよい。ブロック４５０において、ＮＣは、複数のＡＧが最後に生成または変更されてからビットローディング能力が変化したかどうかを判定する。クライアントのビットローディング能力の再評価により、実質的な変化が生じていないと判定された場合、これら複数のＡＧはブロック４６０において保持される。しかし、１つまたは複数のクライアントのビットローディング能力が変化した場合は、ＮＣは、かかる変化が複数のＡＧのうちのいずれかの変更を保証するのに十分であるかどうかを、ブロック４７０において判定する。かかる場合、これら複数のＡＧはブロック４６０において保持される。他方では、ＮＣは、１つまたは複数のクライアントのビットローディング能力の変化が１つまたは複数のＡＧの変更を保証すると判定する。かかる場合、ブロック４８０において、ＮＣは、新しいビットローディング能力がどのように各ＡＧに適合して、下流クライアントへの統合パケットの増大したスループットを最適化するかにしたがって、１つまたは複数のクライアントを、１つまたは複数のＡＧに追加または１つまたは複数のＡＧから除去する。
【００３１】
上記の詳細な説明の一部は、コンピュータメモリ等のデータ処理システムのメモリ内に記憶された、データビットすなわちバイナリデジタル信号上の操作についてのアルゴリズムおよび／または符号的な表現に関してなされてきた。これらのアルゴリズムの記述および／または表現は、データ処理技術の当業者により他の当業者に研究の趣旨を伝えるために用いられる技術である。本明細書において、および一般的に、アルゴリズムは、所望の結果に至る一貫した一連の操作および／または同様の処理であると考えられる。操作および／または処理は、物理量の物理的な操作を伴う。一般に、必ずしもそうとは限らないが、これらの物理量は、記憶、転送、結合、比較および／または別様に操作され得る電気信号および／または磁気信号の形態を取り得る。これらの信号を、ビット、データ、値、要素、シンボル、文字、用語、数値、番号、および／または同様のものとして見なすことは、原則的に一般的な使用の理由により、時として好都合であることがわかっている。これらすべておよび同様の用語は、適切な物理量と関連し、好都合なラベルに過ぎないことを理解すべきである。特に別段の記載がない限り、以下の説明から明らかなように、本明細書を通じて、「処理する」、「演算する」、「計算する」、「関連づける」、「識別する」、「判定する」、および／または同様等の用語を利用する説明は、実行装置のメモリ、レジスタ、および／または他の情報記憶装置、転送装置および／またはディスプレイ装置内における物理的な電子的量および／または磁気的量として表現されるデータの操作および／または変換を実行するコンピューティングプラットフォーム、コンピュータ、または同様の電子演算装置等の実行装置の動作および／または処理を示すものであることが理解されるであろう。
【００３２】
本明細書全体を通して、「１つの実施形態」または「実施形態」についての言及は、その実施形態に関して説明される特定の特徴、構造、または特性が、請求項の内容の少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書全体を通して様々な箇所で「１つの実施形態において」または「実施形態において」という文言が見られるが、それらの文言が必ずしも同一の実施形態を指すとは限らない。さらに、特定の特徴、構造、または特性は、１つまたは複数の実施形態において、任意の適切な方法で組み合わされてもよい。
【００３３】
本明細書で言及される「および／または」という用語は、「および」を意味してもよく、「または」を意味してもよく、「排他的論理和」を意味してもよく、「１つの」を意味してもよく、「いくつか、しかしすべてではない」を意味してもよく、「どちらも〜ない」を意味してもよく、および／または「両方」を意味してもよい。なお、請求項の内容は、この点に関して限定されない。
【００３４】
現在において典型的な特徴と見なされる内容が示され説明されてきたが、請求項の内容から逸脱することなく、様々な他の変更がなされ得ること、および均等物が代用され得ることが当業者により理解されるであろう。加えて、本明細書に説明された中心的な概念から逸脱することなく、特定の状況を請求項の内容の教示に適応させるよう、多数の変更がなされ得る。したがって、請求項の内容が、開示された特定の例に限定されることを意図するものではない。むしろ、かかる請求項の内容は、添付の請求項およびその等価物に含まれるすべての態様も含むことを意図するものである。
【００３５】
請求項には、個々の要素および／または処理ステップを表す文字が含まれ得るが、かかる文字は、請求項の言語の任意の側面の順序または重要度の階層を必ずしも示すものではない。
【図１】
0005505413.tif 000002
【図２】
0005505413.tif 000003
【図３】
0005505413.tif 000004
【図４】
0005505413.tif 000005