(57)【要約】  ＡＬＭアプリケーションにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらす通信経路構築装置を開示する。転送テーブル構築コントローラ（３１６）は、複数の通信ノードにわたる分散型最適経路テーブルの構築を制御し、グループコンストラクタ（３０８）は、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付け、帯域幅仮割り当て器（３２２）は、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てし、転送テーブルコンストラクタ（３２８）は、特定ソース向けグループの優先順位に基づいて、分散型最適経路テーブルを構築する。
2009153945.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信ノードにわたる分散型最適経路テーブルの構築の開始または終了を制御する転送テーブル構築コントローラと、
通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタと、
通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割当器と、
前記特定ソース向けグループの優先順位に基づいて、前記分散型最適経路テーブルを構築する転送テーブルコンストラクタと、
を具備する通信経路構築装置。
【請求項２】
前記転送テーブル構築コントローラは、
分散型最適経路テーブル構築ステータスメッセージを送信することにより、前記分散型最適経路テーブルの構築開始又は構築終了を指示する、
請求項１に記載の通信経路構築装置。
【請求項３】
前記転送テーブル構築コントローラは、
特定ソース向け表示解像度／コンテンツタイプ通知メッセージを受信し、
前記分散型最適経路テーブルの構築開始を指示する、
請求項２に記載の通信経路構築装置。
【請求項４】
前記転送テーブル構築コントローラは、
前記分散型最適経路テーブルの完全な構築の終了を識別し、
前記分散型最適経路テーブルの構築終了を通知し、
構築された前記分散型最適経路テーブルの使用を通知した後、
前記分散型最適経路テーブルの構築開始を指示する、
請求項３に記載の通信経路構築装置。
【請求項５】
前記分散型最適経路テーブル構築ステータスメッセージは、
通信セッションに対する一意的な識別子を表すセッションＩＤフィールドと、
前記分散型最適経路テーブル構築の開始又は終了を指示するステータスフィールドと、を含む、
請求項２に記載の通信経路構築装置。
【請求項６】
前記グループコンストラクタは、
通信ノードの表示解像度及びコンテンツタイプを受信し、
通信ノードの表示解像度及びコンテンツタイプに基づいて、前記特定ソース向けグループを形成し、
前記特定ソース向けグループ内のグループ情報を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項７】
前記グループコンストラクタは、
通信ノードの表示解像度及びコンテンツタイプに基づいて、前記特定ソース向けグループを形成し、各前記特定ソース向けグループに重みを割り当て、
前記特定ソース向けグループの重みに応じて、前記特定ソース向けグループに優先順位を付け、
グループ優先順位通知メッセージを介して、前記特定ソース向けグループの優先順位を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項８】
前記グループコンストラクタは、
前記特定ソース向けグループの重みに基づいて、前記特定ソース向けグループをランク付け、
前記特定ソース向けグループ内のストリーム受信ノードの数に基づき前記特定ソース向けグループをランク付け、
ストリーム発信ノードが利用可能な仮割り当て帯域幅に基づき、前記特定ソース向けグループをランク付けることにより、
前記特定ソース向けグループに優先順序を付ける、
請求項７に記載の通信経路構築装置。
【請求項９】
前記グループ優先順位通知メッセージは、
ストリーム発信ノードの一意的な識別子を表すソースＩＤフィールドと、
前記特定ソース向けグループの一意的な識別子を表すグループＩＤフィールドと、
前記分散型最適経路テーブルを構築する際の前記特定ソース向けグループの順位を示す優先順位フィールドと、を含む、
請求項７に記載の通信経路構築装置。
【請求項１０】
前記帯域幅仮割当器は、
同じ前記特定ソース向けグループ内の通信ノード間の論理ストリームを構築し、
前記特定ソース向けグループ内の論理ストリームに割り当てられる帯域幅を見積もり、仮割り当て帯域幅通知メッセージを介して当該帯域幅を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項１１】
前記帯域幅仮割当器は、
表示解像度及びコンテンツタイプに基づき、各論理ストリームに表示解像度及びコンテンツタイプ重みを割り当て、
前記表示解像度及びコンテンツタイプ重みに基づき、各論理ストリームの仮割り当て帯域幅を計算する、
請求項１０に記載の通信経路構築装置。
【請求項１２】
前記仮割り当て帯域幅通知メッセージは、
ストリーム中継ノードの一意的な識別子を表すセンダーＩＤフィールドと、
前記特定ソース向けグループの一意的な識別子を表すグループＩＤフィールドと、
特定ソース向けの表示解像度及びコンテンツタイプを送信する、ストリーム中継ノードからストリーム受信ノードへの論理ストリームの一意的な識別子を表すストリームＩＤフィールドと、
前記論理ストリームに利用可能な最大仮割り当て帯域幅を示す仮割り当て帯域幅スロットフィールドと、を更に含む、
請求項１０に記載の通信経路構築装置。
【請求項１３】
前記転送テーブルコンストラクタは、
グループベースツリー構築メッセージを介し、前記特定ソース向けグループの優先順位に基づいて、前記特定ソース向けグループのグループベースツリー構築を指示し、
前記特定ソース向けグループのグループベースツリー構築を行い、
前記分散型最適経路テーブルを構築する、
請求項１に記載の通信経路構築装置。
【請求項１４】
前記転送テーブルコンストラクタは、
前記特定ソース向けグループ内の最大仮割り当て帯域幅を有する論理ストリームを選択するために、グループベースツリー構築呼出し選択メッセージを介して、ストリーム受信ノードを指示し、
グループベースツリー構築ストリーム選択メッセージを介して、ストリーム中継ノード及びストリーム発信ノードに論理ストリーム選択結果を通知し、
前記論理ストリーム選択結果に基づいて、選択された各論理ストリームに割り当てられる帯域幅を分配し、
未処理の特定ソース向けグループの論理ストリームに、未使用の論理ストリームの帯域幅を再配分し、
グループベースツリーを構築する、
請求項１３に記載の通信経路構築装置。
【請求項１５】
前記グループベースツリー構築ストリーム選択メッセージは、
グループベースツリーを構築するために指示されるグループの一意的な識別子を表すグループＩＤフィールドと、
前記選択された論理ストリームの一意的な識別子を表すストリームＩＤフィールドと、
前記論理ストリームの一意的な識別子を表す経路ＩＤフィールドと、
特定の前記論理ストリームに割り当てられた実際の帯域幅と、
グループベースツリー構築の動作のステータスを指示するステータスフィールドと、含む、
請求項１４に記載の通信経路構築装置。
【請求項１６】
通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるステップと、
通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てするステップと、
前記特定ソース向けグループの優先順位に基づいて、複数の通信ノードにわたる分散型最適経路テーブルを構築するステップと、
を含むＮ−ツリー構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはパケット転送のための最適経路構築に関し、特にパケットベースのネットワーク上のアプリケーション層マルチキャスティング（ＡＬＭ：application layer multicasting）のための最適経路構築に関する。特に、本発明は、Ｎ個の特定ソース向け（source-specific）経路における、公平な帯域幅割り当てを行う通信経路構築装置及びＮ−ツリー構築方法に関する。
【背景技術】
【０００２】
マルチポイント通信、特にインターネット上のマルチポイント通信は、セッション中に、全ての参加ノードに対し同時に同じコンテンツを配送するマルチキャスト方法により広く行われている。ＩＰ（Internet Protocol）マルチキャストは、ＩＰ層マルチキャストを可能にするための中間ノード構成、末端ノード構成、及び、インターネットサービスプロバイダー参加要件の複雑さにより、その普及は妨げられてきた。【０００３】
これに対して、アプリケーション層マルチキャスティング（ＡＬＭ）と呼ばれる新しいメカニズムが、知られている。ＡＬＭは、既存のユニキャストネットワークアーキテクチャ上にアプリケーション層を実施することの簡潔性の故に普及しつつある。ＡＬＭは、ＩＰ層におけるマルチキャスト転送機能が不要であることから、参加ノード間でのメンバー自身によるオーディオビデオ（ＡＶ：Audio Video）パケット転送を行うことができる。また、ＡＬＭは、アプリケーション層におけるＡＶパケット転送を柔軟に行うことができる。【０００４】
ＡＬＭは、特定セッション中に全ての参加者が事前の環境設定なしに、全ての参加者間でＡＶコンテンツ又はストリームを交換することができる。従って、ＡＬＭは、複数の当事者間のテレビ会議のようなＡＶベースのアプリケーションに極めて有用である（特許文献１、特許文献２、及び、特許文献３参照）。【０００５】
ＡＬＭにおいて、パケットルーチンは、アプリケーション層で行われるので、それぞれがデータパケット配送のためのソースベースのツリーを形成する必要がある。すなわち、ＡＬＭは、Ｎ対Ｎの通信を行うために、アプリケーション層において、Ｎ個の参加ノード間で、Ｎ個のソースコンテンツの配送ツリーを構成する。【０００６】
一方、ネットワーク層ルーティングメカニズムは、測定された待ち時間（例えば、ラウンドトリップ時間）のみに基づく選択メカニズムの故に、公平な帯域幅割り当てツリー解決策を提供するのが困難である。なお、ネットワーク層ルーティングメカニズムは、最短経路生成のためのDijkstra、Bellman-Ford、Primアルゴリズムの「欲張り」概念に基づく最小スパニングツリー（Minimum Spanning Tree）などを含む。【０００７】
また、非特許文献１には、注目したい映像を優先したい等のユーザ嗜好に基づいた複数ストリーム間の帯域の割り当て方法が開示されている。【０００８】
インターネット上のユニキャストパケットルーティングは、最短経路生成のためのこれらのアルゴリズムに基づいており、ＡＬＭルーティングの要件を反映していない。従って、これらの解決策は、ＡＬＭベースのアプリケーションではなく、ネットワーク層ユニキャストルーティングに最も好都合である。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許出願公開第２００５／０１６３２２４号明細書
【特許文献２】米国特許出願公開第２００６／０１５３１００号明細書
【特許文献３】米国特許出願公開第２００７／０１３３４１３号明細書
【非特許文献】
【００１０】
【非特許文献１】Puneet Mehra他「ＴＣＰ用のレシーバー主導型帯域幅共有：Receiver-driven bandwidth sharing for TCP」、Proceedings of IEEE Transactions on Multimedia,Volume 7 Issue 4, August 2005.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、最短経路生成のためのこれらのアルゴリズムは、末端ノードネットワーク帯域幅及び全体ネットワークトポロジーを意識しない。このため、これらアルゴリズムがＡＬＭアプリケーションに適用されると、ＡＬＭノードの共有経路においてトラヒック輻輳が引き起こされ、ネットワーク待ち時間が長くなり、ＡＶ品質が劣化してしまう。また、非特許文献１の方法では、Ｎ対Ｎの配送木（Ｎ−ツリー）の間での帯域の競合を考慮しておらず、公平なツリーを構成したい場合に用いることが難しい。【００１２】
また、公平な帯域幅割り当てを保証するＮ−ツリーを総当り法で解く問題は、ＮＰハードであることが知られている。つまり、ノード数ＮとしてＮの多項式倍の時間（例：Ｎの３乗、Ｎの４乗の時間）で解ける問題ではなく、ＮのＮ乗など、Ｎが多くなると爆発的に計算量が増える問題である。すなわち、Ｎ−ツリーを計算する時間がノードの数が増えるにつれ、爆発的に増加し、実用的な時間でＮ−ツリーの計算が完了しないという問題があった。【００１３】
本発明は、係る点に鑑みてなされたものであり、ＡＬＭにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらす通信経路構築装置及びＮ−ツリー構築方法を提供することを第一の目的とする。また、本発明は、実用的な時間でＮ−ツリーの計算を完了することを第二の目的とする。
【課題を解決するための手段】
【００１４】
本発明の通信経路構築装置は、複数の通信ノードにわたる分散型最適経路テーブルの構築の開始又は終了を制御する転送テーブル構築コントローラと、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタと、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割当器と、前記特定ソース向けグループの優先順位に基づいて、前記分散型最適経路テーブルを構築する転送テーブルコンストラクタと、を具備する構成を採る。【００１５】
本発明のＮ−ツリー構築方法は、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるステップと、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てするステップと、前記特定ソース向けグループの優先順位に基づいて、複数の通信ノードにわたる分散型最適経路テーブルを構築するステップと、を含むようにした。
【発明の効果】
【００１６】
本発明の通信経路構築装置及びＮ−ツリー構築方法によれば、ＡＬＭにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらすことができる。また、分散型でＮ−ツリーを計算するため実用的な時間でＮ−ツリーの計算を完了することができる。
【図面の簡単な説明】
【００１７】
【図１】ＡＬＭセッションにおいて複数の通信ノードを有する簡単なネットワークを示す図
【図２】異なる表示解像度及びコンテンツタイプに基づく複数の通信ノードグループの一例を示す図
【図３】ネットワーク環境における通信ノードの通信経路構築装置の要部構成の一例を示す図
【図４】グループテーブルのテーブルフォーマットを示す図
【図５】ストリームテーブルのテーブルフォーマットを示す図
【図６】コンテンツグループテーブルのテーブルフォーマットを示す図
【図７】グループ優先順位テーブルのテーブルフォーマットを示す図
【図８】送信元別論理ストリーム保持テーブルのテーブルフォーマットを示す図
【図９】帯域幅仮割り当てテーブルのテーブルフォーマットを示す図
【図１０】分散型最適経路テーブルのテーブルフォーマットを示す図
【図１１】最適知覚ＡＶ品質を実現するための公平な帯域幅割り当ての識別のためのグループベースツリー構築の主要プロセスフローを例示する図
【図１２】ストリーム発信ノード、ストリーム受信ノード、ストリーム中継ノード、ストリーム調整ノード間のメッセージ交換シーケンスを例示する図
【図１３】表示解像度／コンテンツタイプ通知メッセージのフォーマットを示す図
【図１４】特定ソース向け表示解像度／コンテンツタイプ通知メッセージのフォーマットを示す図
【図１５】分散型最適経路テーブル構築ステータスメッセージのフォーマットを示す図
【図１６】重み通知メッセージのフォーマットを示す図
【図１７】グループ優先順位通知メッセージのフォーマットを示す図
【図１８】特定ソース向けグループリスト通知メッセージのフォーマットを示す図
【図１９】仮割り当て帯域幅通知メッセージのフォーマットを示す図
【図２０】グループベースツリー構築呼出し選択メッセージのフォーマットを示す図
【図２１】グループベースツリー構築ストリーム選択メッセージのフォーマットを示す図
【図２２】グループベースツリー構築メッセージのフォーマットを示す図
【図２３】分散型最適経路テーブル構築の開始を通知する詳細プロセスフローを示す図
【図２４】特定ソース向け表示解像度／コンテンツタイプグループのランク付けのための詳細プロセスフローを例示する図
【図２５】論理ストリーム構築プロセスフローを示す図
【図２６】帯域幅仮割り当てプロセスフローを示す図
【図２７】グループベースツリー構築の詳細プロセスフローを示す図
【図２８】分散型最適経路テーブル構築の完了を通知する詳細プロセスフローを示す図
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１９】
本発明では、本発明者によって先に出願された特願２００８−０２９７７１の明細書に記載の「水拡散ポリシー」に加え、Ｎ−ツリー構築において、表示解像度及びコンテンツタイプとして表される「粘度：viscosity」が考慮される。
【００２０】
ここで、「水拡散ポリシー」とは、帯域幅公平化ツリーを満足するアルゴリズムである。以下、「水拡散ポリシー」の概要を説明する。
【００２１】
「水拡散ポリシー」によると、Ｎ個の水源トンネル（穴）を含む容器は、該トンネルの大きさと該トンネルの高さ（圧力：枝の選択時に利用する経験データベースに相当）とに基づいて、その場所から異なる距離まで水を拡散する。大きなトンネルは、小さなトンネルと比較してより多くの水を拡散する。容器の底に近いトンネルは、高い位置のトンネルと比較してより遠くまで水を拡散する。各トンネルは、異なる容量（穴サイズ：帯域に相当）を有してよい。このことは、広い帯域幅を有するノードは、狭い帯域幅を有するノードと比較して、より多くのストリームをＮ−ツリー内の多くのノードに運ぶものと解釈される。
【００２２】
「水拡散ポリシー」によるＮ−ツリーアルゴリズムは、以下の３つの主要なフェーズを有する。
【００２３】
ｉ）接続確立フェーズ：全てのノード間の接続が確立され、ネットワークメトリック（ノードの接続状態）が収集される。
【００２４】
なお、上記メトリック情報は、接続の有無を示す離散量（０か１）で示されているものではなく、フルメッシュ（Ａ−Ｂ，Ａ−Ｃ，Ｂ−Ｃの双方向）の計測値を反映した連続量の接続状態である。つまり、ノードＡ−Ｃ間のメトリックは、１Ｍｂｐｓの場合、０．１Ｍｂｐｓの場合、０Ｍｂｐｓの場合が存在する。
【００２５】
ｉｉ）Ｎ−ツリー構築フェーズ：最適経路テーブル（Optimal Path Table）と呼ぶ接続テーブルを利用して、メッシュノード接続性を有するＮ−ツリーのステータスが更新される。ＡＬＭセッション中にノードの結合及び離脱のステータスが更新される。
【００２６】
ｉｉｉ）制御又はＮ−ツリー最適化フェーズ：最少遅延でＮ−ツリー全体の公平化帯域幅割り当てを、段階的に改善するために改善手順が実行される。そしてＮ−ツリー最適化のためにノード間又はリンク間で、ノード移動又はリンク移動が実行される。実行した結果は、ＦＲＣ（Fast Route Convergence）を有するＡＬＭをもたらす。この情報は、ノードに対するＡＶストリーム配送経路を構築するために使用される。
【００２７】
Ｎ−ツリーアルゴリズムは、小グループの参加者が、ネットワーク上における全参加者間のセッションを通じて、高度な対話機能と良好なＡＶ品質とを用いて、ＡＶストリーム又はコンテンツを交換するＡＶ会議アプリケーションに好適である。
【００２８】
全てのノードの帯域幅公平性を保証するために、Ｎ−ツリーアルゴリズムでは、各ノードのアップロードスロット及びダウンロードスロットの容量を考慮する。ここで、アップロードスロット、ダウンロードスロットは、ノードのアップリンク、ダウンリンクの帯域幅容量を指す。帯域幅は、例えば６４ｋｂ、１２８ｋｂといった離散的な範囲で複数に分割される。
【００２９】
「水拡散ポリシー」は、帯域幅公平化配送ツリー構築のための上記Ｎ−ツリー構築アルゴリズムの３つの主要なフェーズと共に採用される。このソリューションは、所与のＡＶセッションに対し、ネットワークに参加している全てのノードに適用されるＡＬＭ＿ＦＲＣを実現する。
【００３０】
「水拡散ポリシー」は、エンドツーエンドノード遅延を低減することにより、トラヒック輻輳を最小限にすることができる。又、「水拡散ポリシー」は、共有Ｎ−ツリーＡＬＭノード間で利用可能な帯域幅を最大化することができる。
【００３１】
また、「水拡散ポリシー」による経路選択メカニズムは、均等に分配された帯域幅を有する参加ノードにおける利用可能な帯域幅と遅延とにのみ基づく。ここで、２つ以上のデータストリームが、共有ネットワーク経路内のリンク内帯域幅を競合する場面では、参加ノードにとって、最適な知覚ＡＶ品質を生じさせる場合について、以下に説明する。
【００３２】
多数共同ＡＬＭテレビ会議セッション内では、参加者は、自身の多画面分割レイアウトを構成し、カスタマイズすることができる。現在の解決策は、「全ての参加者に対し、均等な表示解像度で表示する」、「非アクティブ話者に対しては、より低い表示解像度（例えば、ＣＩＦ）で表示する。一方、アクティブ話者に対しては、より大きな表示解像度（例えば、ＨＤ７２０ｐ、ＨＤ１０８０ｉ、４ＣＩＦ）で表示する」、など様々な多画面分割レイアウトを提供する。
【００３３】
更に、オーディオ、ビデオ、オーディオ及びビデオの混合、文書データなど様々なコンテンツタイプは、単一のストリームセッションにおいて様々なネットワーク経路を介し、様々な参加ノードに配送され得る。
【００３４】
本発明者は、上述の「水拡散ポリシー」に加え、Ｎ−ツリー構築において、表示解像度及びコンテンツタイプとして表される「粘度：viscosity」を考慮した。これにより、利用可能な帯域幅とエンドポイント能力に応じて最良の知覚ＡＶ品質をもたらすことができる。
【００３５】
また、本発明では、Ｎ−ツリーアルゴリズムを、ノード間で分散的に実行することができるので、Ｎ−ツリー構築処理を複数のノードに分散させることができ、ある特定のノードにだけ負荷がかかるのを回避することができる。
【００３６】
次は、当該技術の明確性と一貫性を保証するために、本実施の形態において用いられる用語の定義について説明する。
【００３７】
１．「ＡＬＭセッション」は、２つ以上の通信ノード間でデータパケットを同時に交換する多数共同アプリケーションにおいて、該２つ以上の通信ノードがネットワークを介し接続される論理セッションとして定義される。
【００３８】
２．「粘度」は、「水拡散ポリシー」において、移動すべき同じ経路を共有することができ、２つ以上の異なるポイント間で運ばれる異なる種類の液体の条件又は状態を定義する。異なる粘度を有する液体は、平らな表面上を異なる速度で伝わる。本実施の形態では、粘度は、ＡＶストリームの表示解像度及びコンテンツタイプを指す。
【００３９】
３．「ストリーム発信ノード」は、キャプチャ装置により捕捉したコンテンツを配送する通信ノードを表す。ストリーム発信ノードは、「ソース」又は「ソースノード」と同じ意味で用いられる。
【００４０】
４．「ストリーム中継ノード」は、ストリーム発信ノードからのコンテンツを受信し、次の通信ノードに中継する通信ノードを表す。
【００４１】
５．「ストリーム受信ノード」は、コンテンツを受信し、再生する通信ノードを表す。ストリーム受信ノードは、「レシーバー」又は「レシーバーノード」と同じ意味で用いられる。
【００４２】
６．「ストリーム調整ノード」は、ＡＬＭセッション中に全ての通信ノードに対し、同期されたタスクを行う通信ノードを表す。
【００４３】
７．「グループベースツリー」は、ソースノードと、該特定ソースから同じ表示解像度及びコンテンツタイプを要求するレシーバーノードのグループとから構成される。
【００４４】
８．「優先順位が付けられたグループベースツリー」は、予め定義された一組のランキング規則に基づいて複数のグループベースツリーをランク付けすることにより形成される。
【００４５】
９．「論理ストリーム」は、確立されたアクティブ接続を持たない２つの通信ノード間により形成される仮想経路（ネットワーク経路）を表す。仮想経路上の通信ノードは、一組の共通属性を共有し、共通属性を持つ論理ストリームが最終選択されるとアクティブ接続を確立する。共通属性とは、例えば、同じストリームセッション、又は、同じストリーム発信ノードから要求される同じ表示解像度及びコンテンツタイプであり、２つの通信ノード間のコンテンツ送信に利用できる帯域幅等を有する。
【００４６】
１０．「転送テーブル」は、最終宛先に到達するまで当該転送テーブルにより指定される次の通信ノードへ受信パケットを転送するために、通信ノードにより使用されるパケット転送情報から構成される。
【００４７】
図１は、本発明の実施の形態に係る通信システムを示す図である。図１に示すように、複数の通信ノード（１０２，１０４，１０６，１０８）が、該通信ノード間の接続を可能にする同一ネットワーク（１１０）に接続されている。各通信ノードは、ＡＬＭセッション中、通信ノード間でＡＶストリームと制御ストリームとを同時に交換することができる。ストリーム調整ノード、ストリーム発信ノード、ストリーム中継ノード、及び、ストリーム受信ノードは、一つの通信ノード又は複数の通信ノード内に同時に存在する論理的エンティティであってよい。
【００４８】
なお、本発明において、物理的及び論理的エンティティを指す用語であるノード及びエンティティは、互いに読み替えて使用することができる。
【００４９】
図２は、本発明の実施の形態に係る通信システムを示す別の図である。図２には、複数の通信ノードが、異なる通信ノードグループ下でストリーム受信ノード、ストリーム発信ノード、ストリーム調整ノード、及び、ストリーム中継ノードとして動作する例を示す。
【００５０】
通信ノードのグルーピングは、特定のストリーム発信ノードから要求された表示解像度及びコンテンツタイプに基づいて行われる。ストリーム受信ノードは、ストリーム発信ノードから異なる表示解像度（例えば、ＨＤ７２０ｐ、４ＣＩＦ、ＣＩＦ等）、及び、コンテンツタイプを要求することができる。なお、コンテンツタイプは、例えば、オーディオのみ（Ａ）、ビデオのみ（Ｖ）、オーディオとビデオの混合（ＡＶ）、文書データ（Ｄ）、制御データ等（Ｃ）を含む。
【００５１】
各表示解像度及びコンテンツタイプ要求は、更なるグループベースツリーの構築のための通信ノードグループ（以下「特定ソース向け表示解像度／コンテンツタイプグループ」、又は「特定ソース向けグループ」ともいう）を形成する。
【００５２】
グループ（２０４）は、通信ノード＃１から同じ表示解像度（ＨＤ７２０ｐ）及びコンテンツタイプ（オーディオとビデオの混合）（２３０，２３２，２３４）を要求する通信ノードにより、形成された通信ノードグループを示す。グループ（２０２）とグループ（２０６）とは、通信ノード＃４から異なる表示解像度及びコンテンツタイプを要求する通信ノード＃２，＃３、及び、通信ノード＃１のそれぞれにより形成される別の通信ノードグループを示す。
【００５３】
すなわち、グループ（２０２）は、通信ノード＃１による４ＣＩＦ表示解像度、及びオーディオとビデオの混合コンテンツタイプ（２４６）を要求する通信ノードグループである。また、グループ（２０６）は、通信ノード（２１６，２１８）によるＣＩＦ表示解像度、及びオーディオとビデオの混合コンテンツタイプ（２４８，２５０）を要求する通信ノードグループである。
【００５４】
図２に示すように、Ｎ個の参加ノードを有するＡＬＭセッションは、ストリーム受信ノードとなる通信ノードをＮ個まで有することができる。各ストリーム受信ノード（２１４，２１６，２１８，２２０）は、指定の表示解像度及びコンテンツタイプを有するストリーム発信ノードに対し表示解像度及びコンテンツタイプの要求を開始する。
【００５５】
各ストリーム受信ノードは、ストリーム発信ノードから要求された表示解像度及びコンテンツタイプとは異なる選択肢を有することができる。例えば、通信ノード＃１は、通信ノード＃２，＃３，＃４からのビデオを４ＣＩＦ解像度（２３６，２４２，２４６）で表示されるように設定することができる。また、通信ノード＃２，＃３，＃４は、通信ノード＃１からのビデオを高精細解像度（２３０、２３２、２３４）で表示されるように設定する。なお、通信ノード＃２，＃３，＃４は、他の通信ノードからのビデオをＣＩＦ解像度（２３８，２４０，２４４，２４８，２５０，２５２）で表示されるように設定する。
【００５６】
マルチメディアコンテンツを全ての参加ノードへ配送することができる各通信ノードは、ストリーム発信ノードのＡＬＭ機能を含む。
【００５７】
図２には、通信ノード＃１，＃４が、ストリーム発信ノードである例が示されている。各ストリーム受信ノード（２１４，２１６，２１８）により、要求された表示解像度及びコンテンツタイプ（以下「粘度情報」ともいう）は、ストリーム発信ノード（２１４，２２０）内にのみに保持される。各ストリーム発信ノード内では、要求された表示解像度及びコンテンツタイプに基づき、ストリーム受信ノードを、更に、複数の特定ソース向け表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）に分割する。具体的には、ストリーム発信ノード２１４の内部は、表示解像度／コンテンツタイプグループ２０４が構成される。すなわち、表示解像度／コンテンツタイプグループ２０４は、ストリーム発信ノード２１４のストリームを表示解像度／コンテンツタイプ（２３０，２３２，２３４）で、配信するために構成されるグループが保持される。同様に、ストリーム発信ノード２２０の内部は、表示解像度／コンテンツタイプグループ（２０２、２０６）が保持される。つまり、表示解像度／コンテンツタイプグループ２０２は、ストリーム発信ノード２２０のストリームを表示解像度／コンテンツタイプ２４６で表示させるグループである。表示解像度／コンテンツタイプグループ２０６は、ストリーム発信ノード２２０のストリームを表示解像度／コンテンツタイプ（２２６，２５０）で表示させるグループである。
【００５８】
グループベースツリーは、これらのグループ（２０２，２０４，２０６）のそれぞれに対して構築される。例えば、ストリーム発信ノードである通信ノード＃４では、２つのグループベースツリーが構築される。すなわち、通信ノード＃４では、通信ノード＃１に対し４ＣＩＦ  ＡＶコンテンツを送信するためのグループベースツリーと、通信ノード＃２，＃３に対しＣＩＦ  ＡＶコンテンツを送信するための別のグループベースツリーとが構築される。通信ノード＃１では、高精細度ＡＶコンテンツの送信のために、通信ノード＃２，＃３，＃４に対するグループベースツリーが構成される。
【００５９】
通信ノード＃１は、要求されたコンテンツタイプに応じて、２つ以上のグループベースツリーを形成することもできる。例えば、通信ノード＃１では、通信ノード＃２，＃３，＃４に４ＣＩＦビデオ及びオーディオコンテンツを異なる経路を介し別々に配送するために、２つ以上のグループベースツリーを形成してもよい。
【００６０】
なお、少なくとも一つの通信ノードは、参加ノード間のセッション調整のためのストリーム調整ノードとなる。図２では、通信ノード＃１が、ストリーム調整ノードとなっている例である。ストリーム調整ノードは、全てのストリーム発信ノード（２１４，２２０）から、セッション中に表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）の要求リストを受信する。
【００６１】
ストリーム調整ノード（２１４）は、ユーザ又はアプリケーションにより設定された好みに基づく表示解像度及びコンテンツタイプの優先順位に従って、各表示解像度及びコンテンツタイプに対し、相対的な重みを定義する。ストリーム調整ノード（２１４）は、さらに、表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）の受信リストをランク付け、グループ優先順位を定義する。グループ優先順位は、後に、グループベースツリー構築の優先順位を決定する際に用いられる。
【００６２】
同じ表示解像度／コンテンツタイプグループ内の各ノードは、ストリーム中継ノードになり得る。例えば、グループ（２０４）内では、通信ノード（２１６，２１８，２２０）は、通信ノード（２１４）に同じコンテンツを要求する。当該コンテンツは、コンテンツを最初に受信したノードから次ノードへ中継されるようにしてもよい。グループ内のネットワーク経路を選択するために、各ストリーム中継ノードは、各論理ストリームにより、当該表示解像度及びコンテンツタイプを配送するのに必要な最大帯域幅を見積もる（推定する）ために帯域幅仮割り当てを行う。
【００６３】
各通信ノード（２１４，２１６，２１８，２２０）は、複数の特定ソース向け表示解像度／コンテンツタイプグループに対するストリーム発信ノードとストリーム中継ノードとに、同時になり得るということに留意されたい。このようにして、当該通信ノードは、Ｎ個の参加ノードＡＬＭセッション中に、少なくともＮ個の表示解像度／コンテンツタイプグループに関わることができる。
【００６４】
一方、当該通信ノードは、複数のストリームを送信するために共有される限られた帯域幅のみを有する。従って、帯域幅仮割り当ては、複数のグループ内のストリーム中継ノード又はストリーム発信ノードとしてそれ自身により形成されるそれぞれの論理ストリームに、その帯域幅を分配する。この帯域幅仮割り当ては、当該通信ノード（２１４，２１６，２１８，２２０）において行われる。
【００６５】
公平な帯域幅割り当て分配メカニズムは、優先順位が高い表示解像度／コンテンツタイプグループの論理ストリームと、優先順位が低い表示解像度／コンテンツタイプグループからの論理ストリームと比較する。次に、公平な帯域幅割り当て分配メカニズムは、より高い割合で共有帯域幅が割り当てられるように適用される。これにより、優先順位が高い表示解像度及びコンテンツタイプに対し、ストリーム内で最適化された知覚ＡＶ品質の公平性が実現される。
【００６６】
初期の段階では、ストリーム調整ノードにより定義されたグループ優先順位に基づいて、各ストリーム発信ノードは、グループベースツリー構築を順に指示する。各グループ内では、当該ストリーム受信ノードは、ネットワーク経路を形成するために最大仮割り当て帯域幅を有する論理ストリームを選択する。最大仮割り当て帯域幅を有する論理ストリームは、ストリーム受信ノードが最良の知覚ＡＶ品質を受信することができる帯域幅を有するネットワーク経路を表す。
【００６７】
選択結果は、論理ストリームの中継ノードに反映され、転送テーブルが更新される。転送テーブルの情報は、最終宛先に到達するまで受信ＡＶパケットを次のストリーム受信ノードに転送するために、ストリーム発信ノードとそれに続く中継ノードにより使用される。一つのグループから別のグループへの連続的なグループベースツリー構築により、ネットワーク（１１０）において、優先順位が付けられた表示解像度及びコンテンツタイプに対する帯域幅仮割り当ての的確さが保証される。さらに、同時のグループベースツリー構築が、グループ間で残りの帯域幅の情報を同期して取得させるように、適所に配置された同期機構により可能となる。
【００６８】
図３は、本発明の実施の形態に係るネットワーク環境内における通信ノードの内部構成（３０２，３０４）を例示するブロック図である。各通信ノードは、グループコンストラクタ（３０８）、転送テーブル構築コントローラ（３１６）、帯域幅仮割り当て器（３２２）、転送テーブルコンストラクタ（３２８）、及び、転送実行部（３３４）を有する。
【００６９】
これら５つのモジュール（３０８，３１６，３２２，３２８，３３４）は、これらの間で情報を交換するために複数のテーブル（３５８〜３７４）を介して接続される。これらのテーブルは、表示解像度／コンテンツ規則テーブル（３５８）、コンテンツグループテーブル（３６０）、グループ優先順位テーブル（３６２）、グループテーブル（３６４）、ストリームテーブル（３６８）、送信元別論理ストリーム保持テーブル（３７０）、帯域幅仮割り当てテーブル（３７２）、及び、分散型最適経路テーブル（ＯＰＴ：optimal path table）（３７４）である。
【００７０】
表示解像度／コンテンツタイプトリガモニタ（３４０）は、メディアアプリケーション（３７６）から通知される表示解像度／コンテンツタイプの変更要求の有無を判断する。
【００７１】
転送テーブル構築コントローラ（３１６）は、複数の通信ノード（３０２，３０４）に対する分散型最適経路テーブル構築を制御する。分散型ＯＰＴ（３７４）は、グループベースツリー構築の結果生じる転送情報から構成される。最適ネットワーク経路は、分散型の方法でグループベースツリーの優先順位に基づいて構築される。したがって、全てのグループベースツリーが構築される前に、任意の参加ノードから任意の表示解像度及びコンテンツタイプ（２３０〜２５２）の変更要求が呼び出されると、ＡＬＭ経路構築の的確さに影響を与え得る。
【００７２】
そのため、最新の表示解像度及びコンテンツタイプの要求に基づくと、不公平な帯域幅割り当てをもたらす可能性がある。従って、転送テーブル構築コントローラ（３１６）は、分散型最適経路テーブル構築を同期させるために存在する。つまり、転送テーブル構築コントローラ（３１６）は、全ての参加ノードに分散型最適経路テーブル構築イベント（３１８，３２０，３８２）の開始と終了を通知する。これにより、参加ノードは、制御変更を実行するようにしたので、分散型最適経路テーブル構築を同期させることができる。
【００７３】
グループコンストラクタ（３０８）は、表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに取り込む（振り分ける）。ユーザにより制御されるメディアアプリケーション（３７６）は、表示解像度及びコンテンツタイプの変更要求を指示する。各ストリーム受信ノードのグループコンストラクタ（３０８）は、表示解像度／コンテンツタイプトリガモニタ（３４０）から表示解像度／コンテンツタイプ変更要求を受信する（３０６）。次に、各ストリーム受信ノードのグループコンストラクタ（３０８）は、要求された表示解像度及びコンテンツタイプを、それぞれのストリーム発信ノードのグループコンストラクタ（３０８）に通知する（３１０，３１２）。
【００７４】
ストリーム発信ノードのグループコンストラクタ（３０８）は、要求された表示解像度及びコンテンツタイプに基づき、ストリーム受信ノードを複数の特定ソース向け表示解像度／コンテンツタイプグループに分類する（３４２）。なお、分類する際は、表示解像度／コンテンツタイプ規則に従って分類する。ストリーム発信ノードのグループコンストラクタ（３０８）は、また、特定ソース向け表示解像度／コンテンツタイプグループ内のストリーム受信ノードの接続情報を、ストリームテーブル（３６８）に通知する（３１０）。
【００７５】
グループ情報が記録された（３４４）グループテーブル（３６４）は、ストリーム発信ノード及びストリーム受信ノードにおいて維持される。図４は、グループテーブル（３６４）のフォーマットの一例を示す。
【００７６】
図４に示すように、グループテーブル（３６４）は、当該グループに対する一意的な識別子を示すグループＩＤ（２００２）と、ＡＬＭセッション内に存在する他のグループに対する当該グループの優先順位を指示するグループ優先順位（２００４）と、交換された表示解像度及びコンテンツタイプを示すコンテンツグループＩＤ（２００６）と、グループにより提供される表示解像度及びコンテンツタイプを要求するストリーム受信ノードを指示するレシーバーＩＤ（２００８）と、グループ内のストリーム受信ノード（特定の表示解像度及びコンテンツタイプを配送するための可能なネットワーク経路でもある）間で構築される論理ストリームのリストを指示するストリームＩＤ（２０１０）と、を含む。
【００７７】
論理ストリーム情報及び接続情報が記録されたストリームテーブル（３６８）は、グループコンストラクタ（３０８）により維持される。図５は、ストリームテーブル（３６８）のフォーマットの一例を示す。図５に示すように、ストリームテーブル（３６８）は、ストリームＩＤ（２１０２）と、センダーＩＤ（２１０４）と、レシーバーＩＤ（２１０６）と、ＩＰアドレス及びポート情報を含む接続情報（２１０８）とから成る。
【００７８】
ストリーム調整ノードのグループコンストラクタ（３０８）は、表示解像度及びコンテンツタイプに基づいてグループを形成するとともに、全ストリーム発信ノードからグループ情報を受信すると（３１０）、各グループに重みを割り当てる。
【００７９】
グループコンストラクタ（３０８）は、特定ソース向け表示解像度／コンテンツタイプグループを順序付きリストに並べ、特定ソース向け表示解像度／コンテンツタイプグループの優先順位を全てのストリーム発信ノードに通知する。
【００８０】
コンテンツグループテーブル（３６０）は、帯域幅仮割り当てのために重み情報が参照されるテーブルであり、全ての参加ノードにおいて保持される（３４４）。図６は、コンテンツグループテーブル（３６０）のフォーマットの一例を示す。
【００８１】
図６に示すように、コンテンツグループテーブル（３６０）は、特定の表示解像度とコンテンツタイプに対する一意的な識別子であるコンテンツグループＩＤ（２２０２）と、コンテンツグループの表示解像度（２２０４）と、コンテンツグループにより配送されるコンテンツタイプ（２２０６）と、コンテンツグループにより配送されるＡＬＭセッション内における、他のコンテンツに対するコンテンツの優先順位を示す重み情報（２２０８）とから成る。
【００８２】
グループ優先順位テーブル（３６２）は、ストリーム発信ノードのグループコンストラクタ（３０８）によって維持される。グループベースツリー構築の優先順位は、このテーブル内に割り当てられた優先順位に基づく。図７は、グループ優先順位テーブル（３６２）のフォーマットの一例を示す。図７に示すように、グループ優先順位テーブル（３６２）は、グループＩＤ（２３０２）及びプライオリティ情報（２３０４）から成る。
【００８３】
帯域幅仮割り当て器（３２２）は、全ての論理経路に対し、利用可能な帯域幅を見積もる（推定する）。ストリーム中継ノードの帯域幅仮割り当て器（３２２）は、同じ特定ソース向け表示解像度／コンテンツタイプグループ内の参加ノードを参照し（３４８）、全ての参加ノードに対する論理経路を構築する。帯域幅仮割り当て器（３２２）は、各論理ストリームに割り当てられる帯域幅を表示解像度／コンテンツタイプ規則に基づいて推定する（３４６）。
【００８４】
また、帯域幅仮割り当て器（３２２）は、後の選択のために仮割り当てされる仮割り当て帯域幅の情報を、ストリーム受信ノードの帯域幅仮割り当て器（３２２）に通知する（３２６）。仮割り当て帯域幅の情報を受信すると（３２４）、ストリーム受信ノードの帯域幅仮割り当て器（３２２）は、帯域幅仮割り当てテーブル（３７２）を更新する。
【００８５】
送信元別論理ストリーム保持テーブル（３７０）は、ストリーム中継ノードに関する論理ストリーム情報が記録される各ストリーム中継ノード内に保持される。図８は、送信元別論理ストリーム保持テーブル（３７０）のフォーマットの一例を示す。図８に示すように、送信元別論理ストリーム保持テーブル（３７０）は、センダーＩＤ（２４０２）と、レシーバーＩＤ（２４０４）と、仮割り当てリンク帯域幅（２４０６）と、ストリームＩＤ（２４０８）とから成る。センダーＩＤ（２４０２）は、特定のストリーム中継ノードに対する一意的な識別子である。
【００８６】
レシーバーＩＤ（２４０４）は、ストリーム中継ノードに接続された少なくとも一つの論理ストリームを有するストリーム受信ノードを示す。仮割り当てリンク帯域幅（２４０６）は、ストリーム中継ノードから特定のストリーム受信ノードに利用可能な最大仮割り当て帯域幅を示す。ストリームＩＤ（２４０８）は、特定のストリーム中継ノードとストリーム受信ノード間の接続下で形成された論理ストリームのリストを含む。
【００８７】
帯域幅仮割り当てテーブル（３７２）は、ストリーム中継ノード及びストリーム受信ノードの両方により保持される。これにより、ストリーム中継ノードの仮割り当て帯域幅情報は、論理ストリーム選択のためにストリーム受信ノードへ送信される。図９は、帯域幅仮割り当てテーブルのフォーマットを示す。図９に示すように、帯域幅仮割り当てテーブルは、ストリームＩＤ（２５０２）と特定論理ストリームのための仮割り当て帯域幅（２５０４）情報とから成る。
【００８８】
転送テーブルコンストラクタ（３２８）は、特定ソース向け表示解像度／コンテンツタイプグループに基づき分散型ＯＰＴ（３７４）を構築する。ストリーム発信ノードの転送テーブルコンストラクタ（３２８）は、グループ優先順位を参照し（３５２）、グループベースツリー構築を始動させる。ストリーム受信ノードの転送テーブルコンストラクタ（３２８）は、表示解像度／コンテンツタイプ規則に基づいて、最大仮割り当て帯域幅を有する論理ストリームを選択する（３５０）。
【００８９】
また、転送テーブルコンストラクタ（３２８）は、帯域幅を仮割り当てした（３３２）ストリーム中継ノードの転送テーブルコンストラクタ（３２８）に、論理ストリームの選択結果を通知する（３３０）。ストリーム中継ノードの転送テーブルコンストラクタ（３２８）は、分散型ＯＰＴ（３７４）を更新する（３５４）。
【００９０】
図１０は、分散型ＯＰＴ（３７４）のフォーマットの一例を示す。各分散型ＯＰＴ（３７４）は、グループＩＤ（２６０２）と、経路ＩＤ（２６０４）と、選択ストリームＩＤ（２６０６）と、実際の割り当て帯域幅（２６０８）とを含む。グループＩＤ（２６０２）は、特定ソース向け表示解像度／コンテンツタイプグループに対する一意的な識別子である。
【００９１】
経路ＩＤ（２６０４）は、グループベースツリー内の同じソースから発する経路の分岐を示す。選択ストリームＩＤ（２６０６）は、各経路ＩＤに関連し、選択された論理ストリームのリストを指示する。実際の割り当て帯域幅（２６０８）は、経路内のコンテンツ送信のために割り当てられた最終帯域幅を示す。
【００９２】
転送実行部（３３４）は、コンテンツ送信のために分散型ＯＰＴ（３７４）を利用する。転送実行部（３３４）は、他の通信ノードからコンテンツを受信する（３３８）と、ＯＰＴ上で探索を行う（３５６）。ＯＰＴからの探索結果に基づき、転送実行部（３３４）は、次の指定先を特定し、コンテンツを中継する（３３６）。
【００９３】
表示解像度／コンテンツ規則テーブル（３５８）は、分散型ＯＰＴ（３７４）を構築するために使用される（３４２，３４６，３５０）経験則セットを含む。以下に、基本的規則及び拡張的規則の一部を示す。
【００９４】
規則１：グループベースツリーは、表示解像度／コンテンツタイプベースネットワークのパケット配送のために、ストリーム発信ノードから要求された各特定の表示解像度及びコンテンツタイプに対し構築される。
【００９５】
規則２：形成されたＭ個のグループを有するストリーム発信ノードは、Ｍ個の特定表示解像度／コンテンツタイプ向けストリームを各グループにそれぞれ送信する。
【００９６】
規則３：Ｎ個のストリーム受信ノードから成る各グループは、グループ内に（Ｎ−１）個のリンクを構築する。
【００９７】
規則４：表示解像度及びコンテンツタイプの変更は、変更制御フラグ（ステータス）が、変更要求を受理するために「変更オン」に設定された場合のみ許可される。
【００９８】
規則５：構築された最新のグループベースツリーに基づいて更新された転送経路は、最新のグループベースツリーがグループベース再構築セッションに従って構築された場合のみに参照される。
【００９９】
規則６：ストリーム中継ノードにより配送される各論理ストリームに対する帯域幅は、ストリーム上で配送される表示解像度及びコンテンツタイプに応じて算出される。
【０１００】
規則７：論理ストリームの選択は、最大帯域幅が仮割り当てられた論理ストリームが優先されるものとする。但し、当該規則はユーザ又はアプリケーションの好みに基づき再設定されてもよい。
【０１０１】
規則８：グループの優先順位は、表示解像度がより高く、データレートがより高いコンテンツを配送するグループが、より高い優先順位を有するように交換された表示解像度及びコンテンツタイプに基づいて、決定されるものとする。但し、当該規則はユーザ又はアプリケーションの好みに基づいて再設定されてもよい。
【０１０２】
規則９：特定ソース向け表示解像度／コンテンツタイプグループは、以下の規則に従ってランク付けされる。
【０１０３】
（１）優先順位がより低い表示解像度及びコンテンツタイプを送信するグループから始まる昇順でグループをランク付けする。
【０１０４】
（２）同じ表示解像度及びコンテンツタイプが配送されるグループを、ストリーム受信ノードの数が少ないグループから始まる昇順でランク付けする。
【０１０５】
（３）同数のストリーム受信ノードを有するグループを、ストリーム発信ノードにおけるコンテンツ送信に利用可能な帯域幅が増大する順にランク付けする。但し、同規則はユーザ又はアプリケーションの好みに基づいて再構成されてもよい。
【０１０６】
図１１は、最適知覚ＡＶ品質を実現するための公平な帯域幅割り当て分配に用いる、グループベースツリー構築の主要プロセスフローを例示する。また、図１２は、図１１に示すプロセスを実現するストリーム発信ノード、ストリーム受信ノード、ストリーム中継ノード、ストリーム調整ノード間のメッセージ交換シーケンスを示す。
【０１０７】
図１２に示すように、ストリーム発信ノード（５０４，５０６）、ストリーム受信ノード（５０６，５０８）、ストリーム中継ノード（５０６，５０８）、ストリーム調整ノード（５０２）間で、必要な情報が交換される。このため、以下に示すように、様々な通信メッセージが定義される。
【０１０８】
（１）表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）
（２）特定ソース向け表示解像度／コンテンツタイプ通知メッセージ（５１４）
（３）分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）
（４）重み通知メッセージ（５２０，５２２，５２４）
（５）グループ優先順位通知メッセージ（５２６，５２８，５３０）
（６）特定ソース向けグループリスト通知メッセージ（５３２，５３４）
（７）仮割り当て帯域幅通知メッセージ（５３６，５３８，５４０）
（８）グループベースツリー構築呼出し選択メッセージ（５４２，５４４）
（９）グループベースツリー構築ストリーム選択メッセージ（５４６，５４８，５５０，５５２，５５４）
（１０）グループベースツリー構築メッセージ（５５６）
【０１０９】
図１３は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）のフォーマットの一例を示す。図１３に示すように、上記メッセージ（５１０，５１２）は、ストリーム受信ノードに一意的な識別子であるレシーバーＩＤ（６０２）と、通信ノードの表示解像度（６０４）と、コンテンツタイプ（６０６）とから成る。
【０１１０】
図１４は、特定ソース向け表示解像度／コンテンツタイプ通知メッセージ（５１４）のフォーマットの一例を示す。図１４に示すように、上記メッセージ（５１４）は、ストリーム発信ノードに一意的な識別子であるソースＩＤ（７０２）と、ＡＬＭセッション内のデータを交換するためにストリーム発信ノードにおいて利用可能な帯域幅の合計を示す帯域幅情報（７０４）と、表示解像度のコンパイルリスト（７０６，７１２）と、コンテンツタイプ（７０８，７１４）と、上記表示解像度及びコンテンツタイプを要求するストリーム受信ノード数（７１０，７１６）とから成る。
【０１１１】
図１５は、分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）のフォーマットの一例を示す。図１５に示すように、上記メッセージ（５１６，５１８）は、ＡＬＭセッションＩＤ（９０２）とステータス（９０４）とから成る。表示解像度及びコンテンツタイプのさらなる変更要求は、ステータス（９０４）が「変更オフ」に設定された場合には許可されず、ステータス（９０４）が「変更オン」に設定された場合に許可される。
【０１１２】
図１６は、重み通知メッセージ（５２０，５２２，５２４）のフォーマットの一例を示す。図１６に示すように、上記メッセージ（５２０，５２２，５２４）は、コンテンツグループＩＤ（１００２）と、表示解像度（１００４）と、コンテンツタイプ（１００６）と、重みフィールド（１００８）とから成る。
【０１１３】
コンテンツグループＩＤ（１００２）は、特定の表示解像度／コンテンツタイプグループに一意的な識別子を示す。表示解像度（１００４）は、グループの表示解像度を表す。コンテンツタイプ（１００６）は、グループのコンテンツタイプを表す。重みフィールド（１００８）は、この特定のコンテンツグループの他のコンテンツグループに対する優先順位を示す。
【０１１４】
図１７は、グループ優先順位通知メッセージ（５２６，５２８，５３０）のメッセージ構造を定義する。図１７に示すように、上記メッセージ（５２６，５２８，５３０）は、ソースＩＤ（１２０２）と、グループＩＤ（１２０４，１２０８）と、優先順位（１２０６，１２１０）とから成る。ソースＩＤ（１２０２）は、ストリーム発信ノードに一意的な識別子を示す。グループＩＤ（１２０４，１２０８）は、特定ソース向け表示解像度／コンテンツタイプグループを示す。優先順位（１２０６，１２１０）は、上記グループに対するグループベースツリー構築の順番を示す。
【０１１５】
図１８は、特定ソース向けグループリスト通知メッセージ（５３２，５３４）のメッセージ構造を定義する。図１８に示すように、上記メッセージ（５３２，５３４）は、ソースＩＤ（１３０２）と、グループＩＤ（１３０４）と、レシーバーＩＤを含むグループリスト情報（１３０６）とから成る。また、接続情報は、端末間で複製しリレーしながらパケットを配送する際に用いるＩＰアドレス及びポート情報を含む。
【０１１６】
図１９は、仮割り当て帯域幅通知メッセージ（５３６，５３８，５４０）のフォーマットの一例を示す。図１９に示すように、上記メッセージ（５３６，５３８，５４０）は、特定のストリーム発信ノード又はストリーム中継ノードに一意的な識別子であるセンダーＩＤ（１４０２）と、論理ストリームが所属するグループを指示するグループＩＤ（１４０４、１４１０）と、特定論理ストリームに一意的な識別子であるストリームＩＤ（１４０６、１４１２）と、上記コンテンツを配送するために利用可能な最大帯域幅を示す仮割り当て帯域幅（１４０８、１４１４）と、から成る。
【０１１７】
図２０は、グループベースツリー構築呼出し選択メッセージ（５４２，５４４）のフォーマットの一例を示す。図２０に示すように、上記メッセージ（５４２，５４４）は、グループＩＤ（１６０２）と、グループベースツリー構築の「開始」／「終了」／「停止」状態を指示するための条件を指示するステータス（１６０４）と、から成る。
【０１１８】
図２１は、グループベースツリー構築ストリーム選択メッセージ（５４６，５４８，５５０，５５２，５５４）のフォーマットの一例を示す。図２１に示すように、上記メッセージ（５４６，５４８，５５０，５５２，５５４）は、グループＩＤ（１７０２）と、選択ストリームＩＤ（１７０４）と、経路ＩＤ（１７０６）と、ＡＶコンテンツ等を配送するために割り当てられる帯域幅を指示する実際の帯域幅（１７０８）と、グループベースツリー構築のそれぞれの動作、「選択」／「削除」／「再選択」を指示するステータス（１７１０）と、から成る。
【０１１９】
図２２は、グループベースツリー構築メッセージ（５５６）のフォーマットの一例を示す。図２２に示すように、上記メッセージ（５５６）は、現在のグループＩＤ（１８０２）と、次のグループＩＤ（１８０４）とから成る。現在のグループＩＤ（１８０２）は、グループベースツリーを構築した特定ソース向け表示解像度／コンテンツタイプグループを示す。次のグループＩＤ（１８０４）は、グループベースツリーを構築するであろう、次の特定ソース向け表示解像度／コンテンツタイプグループを示す。
【０１２０】
以下では、図１１の主要プロセス及び図１２のプロセスの詳細について、図２３、図２４、図２７、及び、図２８を用いて説明する。
【０１２１】
まず、各ストリーム受信ノードにより要求された表示解像度及びコンテンツタイプは、表示解像度／コンテンツタイプ通知メッセージを介して通知する。具体的には、各ストリーム受信ノード（５０６，５０８）は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）を特定のストリーム発信ノード（５０４）に通知する。該通知メッセージを受信すると、ストリーム発信ノード（５０４）は、要求された特定ソース向け表示解像度／コンテンツタイプグループが生成されているかどうかを識別する（ＳＴ４０２）。
【０１２２】
表示解像度及びコンテンツタイプの新しいセットが要求される場合、特定ソース向け表示解像度／コンテンツタイプグループの新しいエントリーがグループテーブルに追加される。一方、新しいセットの要求がない場合、ストリーム受信ノードのＩＤが、類似の要求表示解像度及びコンテンツタイプから成るグループテーブルの、既存のエントリーに追加される。
【０１２３】
これにより、ストリーム発信ノードは、特定ソース向け表示解像度／コンテンツタイプグループを形成する（ＳＴ４０４）。全てのノードは、ノードの表示解像度及びコンテンツタイプに基づき、特定ソース向け表示解像度／コンテンツタイプグループに分類される（ＳＴ４０６）。
【０１２４】
図２３は、ストリーム調整ノード（５０２）の動作を説明するためのフロー図であり、分散型最適経路テーブル構築の開始を通知する詳細プロセスフローを示す。
【０１２５】
全ての参加ノードから表示解像度／コンテンツタイプ通知メッセージを受信すると、各ストリーム発信ノードは、特定ソース向け表示解像度／コンテンツタイプ通知メッセージをストリーム調整ノード（５０２）に送信する（５１４）。全てのストリーム発信ノードから特定ソース向け表示解像度／コンテンツタイプ通知メッセージを受信すると（ＳＴ８０２）、ストリーム調整ノード（５０２）は、分散型最適経路テーブル構築の開始の通知を指示する（５１６，５１８）。
【０１２６】
「変更オフ」に設定されたＡＬＭセッションＩＤ（９０２）とステータス（９０４）とから成る、分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）は、全ての参加ノードへ配送される（ＳＴ８０４）。なお、「変更オフ」は、表示解像度及びコンテンツタイプの更なる変更要求が許可されないことを示す。このメッセージ（５１６，５１８）が送信されると、その後の全ての表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）は、次のように処理される。つまり、その後の全ての表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）は、次の分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）を受信するまで処理されずに破棄される（ＳＴ８０６）。
【０１２７】
これにより、次にネットワーク経路内の帯域幅仮割り当てに使用される表示解像度／コンテンツタイプグループの構築が容易になる。このように動作することにより、同時の複数の要求に基づいて同時に分散方経路テーブル構築が行われることがなくなる。この結果、形成された表示解像度／コンテンツタイプグループの完全性と、要求された表示解像度及びコンテンツタイプに基づく帯域幅割り当ての一貫性とが保証される。
【０１２８】
例えば、図２において、グループ（２０６）、次にグループ（２０２）、次にグループ（２０４）の順に、グループベースツリーを構築すると仮定する。グループ（２０２）に対するグループベースツリーの構築中、グループ（２０６）の通信ノード＃２が、グループ（２０４）の通信ノード＃４からのコンテンツに対し、臨時的に表示解像度変更（ＣＩＦ→４ＣＩＦ）を呼び出すことができる。
【０１２９】
グループ（２０２）のグループベースツリー構築プロセスの最中に、通信ノード＃２からの表示解像度変更要求を受諾することは、形成されたグループの完全性を破壊する。すなわち、通信ノード＃２は、グループ（２０２）と接続するために取り残されるため、グループ（２０６）のグループベースツリーは、無効となる。この結果、グループ（２０６）のグループベースツリー構築時に割り当てられた帯域幅は無効となるので、臨時的に選択された表示解像度の優先順位に基づいて割り当てられた帯域幅の分配精度に影響を与える。
【０１３０】
収集された全ての表示解像度／コンテンツタイプグループの情報を用いて、ストリーム調整ノード（５０２）は、各表示解像度／コンテンツタイプグループの重みを定義することができる（ＳＴ４０８）。定義された重みは、さらに、表示解像度及びコンテンツタイプ（粘度）のリストを順序付けられた優先順位のセットにマッピングする。なお、ストリーム調整ノード（５０２）は、表示解像度及びコンテンツタイプに対する相対的な重みを導出するために、異なる規則を採用してもよい。
【０１３１】
本実施の形態では、配送される最小の表示解像度に関し、フレーム毎に必要とされるビットレートに従って表示解像度の重みを定義する。この場合、重みの割り当てについては、ＣＩＦ、４ＣＩＦ、ＨＤ７２０ｐなどに対する相対比較の基準としてＱＣＩＦが選択される。
【０１３２】
一方、コンテンツタイプの重みは、配送される最小のコンテンツタイプに関する送信に必要な最小帯域幅に従って定義される。この場合、重みの割り当てについては、ビデオのみ、オーディオ及びビデオ、そして文書に対する相対比較の基準としてオーディオのみのコンテンツタイプが選択される。
【０１３３】
各表示解像度及びコンテンツタイプに対し定義された重みは、特定のコンテンツを配送する各グループの優先順位を導出し、続いて各ストリームに対する帯域幅割り当てに影響を与えるための基準として使用される。この情報は、さらに、重み通知メッセージ（５２０，５２２，５２４）を介し全ての参加ノードに配送される。
【０１３４】
特定ソース向け表示解像度／コンテンツタイプ情報のリストが与えられると、ストリーム調整ノード（５０２）は、優先順位の順に配列されるリストにこれらのグループをランク付けし配列する（ＳＴ４１０）。この重要なステップは、各特定ソース向けグループ内のストリームに割り当てられる帯域幅の大きさを決定し、さらにその知覚ＡＶ品質に影響を与える。
【０１３５】
図２４には、特定ソース向け表示解像度／コンテンツタイプグループのランク付けのための詳細プロセスフローを例示する。まず、全てのストリーム発信ノードから受信された特定ソース向け表示解像度／コンテンツタイプグループが参照される（ＳＴ１１０２）。これらグループは、各グループにより送信された表示解像度及びコンテンツタイプの重みに従ってランク付けされる（ＳＴ１１０４）。本実施の形態では、グループはより低い重みを有するグループから始まる昇順でランク付けされる。
【０１３６】
次に、同じ重みの複数のグループは、グループに登録されたストリーム受信ノードの数の昇順に基づいて再度ランク付けされる（ＳＴ１１０６）。完全なグループベースツリーを形成するために、優先順位は、より少ないノードを有するグループほど、選択すべき経路の選択肢となる可能性が低いというコンセプトに基づいて定義される。
【０１３７】
ストリーム受信ノード数が同じ複数のグループは、さらに、ストリーム発信ノードから入手可能な帯域幅に基づいて、帯域幅の大きさに従ってランク付けされる（ＳＴ１１０８）。優先順位は、利用可能な帯域幅がより小さいストリーム発信ノードほど、他のノードのコンテンツを中継する前に、まず自ノードからコンテンツを配送するために、より高い優先順位が与えられるという原理に基づいて定義される。
【０１３８】
最後に、各特定ソース向け表示解像度／コンテンツタイプグループには、それらのランクに基づいて、グループベースツリー構築におけるそれらの優先順位を示すインデックスが割り当てられる。このランクキングメカニズムは、グループベースツリー構築中、より低い表示解像度／コンテンツタイプグループに対しは、最小ではあるが十分な帯域幅を重みに基づいて割り当てる。一方、当該グループに対し選択されなかった論理ストリームは、より高い表示解像度／コンテンツタイプグループに解放され再配分される。このため、再配分により追加された帯域幅は、さらに、より高い表示解像度／コンテンツタイプグループに、より多くの帯域幅割り当てをもたらし、より良好な知覚ＡＶ品質が期待される。
【０１３９】
各グループにランクを割り当てると、ストリーム調整ノード（５０２）は、全てのストリーム発信ノード（５０４，５０６，５０８）にグループ優先順位通知メッセージを送信する（５２６，５２８，５３０）。このメッセージを受信すると、ストリーム発信ノードは、グループベースツリー構築を順に指示するためのさらなる参照用にグループ優先順位テーブル（３６２）を更新する。さらに、各ストリーム発信ノードは、グループ内の全てのストリーム受信ノード（５０６，５０８）にグループ情報、すなわち、特定ソース向けグループリスト通知メッセージ（５３２，５３４）を配送する。
【０１４０】
ストリーム受信ノード（５０６，５０８）は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）を先に送信した全てのストリーム発信ノード（５０４）から、特定ソース向けグループリスト通知メッセージ（５３２，５３４）を受信する。次に、ストリーム受信ノード（５０６，５０８）は、論理ストリームを構築し（ＳＴ４１２）、帯域幅仮割り当てを行う（ＳＴ４１４）。
【０１４１】
図２５は、論理ストリーム構築プロセスフローを示す。グループ内では、各ストリーム受信ノードは、コンテンツを同一グループ内の次のストリーム受信ノードへさらに中継する能力を有するので、全てのストリーム受信ノードは、この状況下ではストリーム中継ノードと見なされる。
【０１４２】
一方、ストリーム発信ノードは、コンテンツのソースであるので、ストリーム発信ノードは、ストリーム中継ノードと同様に、論理ストリームを構築するとともに、帯域幅仮割り当てを行う。ストリーム発信ノード及び各ストリーム中継ノード（別名、ストリーム受信ノード）は、グループリスト情報に基づき、全てのストリーム受信ノードに対する論理ストリームを構築する。
【０１４３】
論理ストリームの構築中、ストリーム発信ノード又はストリーム中継ノード自身は、デフォルト設定では、論理ストリームにおける「センダーノード」として選択される（ＳＴ２７０２）。
【０１４４】
次に、論理ストリームにおける「レシーバーノード」として、ストリーム受信ノードが、グループリストから選択される（ＳＴ２７０４）。２つのノードの論理ストリーム情報は、ストリームテーブル（３６８）に格納され、さらにグループテーブル（３６４）及び送信元別論理ストリーム保持テーブル（３７０）内において更新される（ＳＴ２７０６）。
【０１４５】
これに続き、特定のストリーム発信ノードとストリーム中継ノードにおいて、仮割り当て帯域幅が、全ての論理経路において見積もられる（推定される）。図２６は、帯域幅仮割り当てプロセスフローを示す。
【０１４６】
本実施の形態では、ストリーム受信ノードにより要求された表示解像度及びコンテンツタイプに従って、重み付けされた比率に基づく動的な帯域幅仮割り当てが採用される。各論理ストリームは、配送される表示解像度及びコンテンツタイプに従って重みが割り当てられる（ＳＴ２８０２）。ストリーム発信ノード及びストリーム中継ノード内には、異なる表示解像度及びコンテンツタイプを送信又は中継する複数の論理ストリームが存在し得る。したがって、全ての論理ストリームにおける表示解像度の平均重みとコンテンツタイプの平均重みが計算される（ＳＴ２８０４）。
【０１４７】
次に、論理ストリームは、そのストリーム受信ノードの表示解像度及びコンテンツタイプに基づいてさらにグループに分割される。各グループ内の全ての論理ストリームの表示解像度の平均重み及びコンテンツタイプの平均重みが計算される。
【０１４８】
次に、各ストリーム受信ノードに与えられる帯域幅の割合は、先に計算された表示解像度の平均重み及びコンテンツタイプの平均重みを基準重みで除算し、上記与えられた帯域幅を乗算したものとして推定される（ＳＴ２８０６）。
【０１４９】
ストリーム受信ノードに与えられる帯域幅の割合は、さらに、ストリーム受信ノードに向けてコンテンツを送信する論理ストリームにより共有される。次に、論理ストリーム毎に与えられた帯域幅の割合は、論理ストリームの表示解像度重み及びコンテンツタイプ重みを基準重みで割り、上記ストリーム受信ノードに与えられた帯域幅に掛けることにより推定される（ＳＴ２８０８）。
【０１５０】
仮割り当て帯域幅通知メッセージは、ストリーム発信ノード及びストリーム中継ノードから全てのストリーム受信ノードに送信される（５３６，５３８，５４０）。メッセージを受信すると、論理ストリーム毎の仮割り当て帯域幅情報は、さらに、ストリーム受信ノード内の帯域幅仮割り当てテーブル（３７２）において更新される。
【０１５１】
帯域幅仮割り当てプロセスが完了すると、グループベースツリー構築が、指示される。具体的には、各特定ソース向け表示解像度／コンテンツタイプグループに対し定義されたグループ優先順位に基づいて、グループベースツリー構築が、優先順位リスト内で第１位にランク付けられたストリーム発信ノードにより自動的に指示される（ＳＴ４１６）。
【０１５２】
図２７は、グループベースツリー構築の詳細プロセスフローを例示する。ストリーム発信ノードは、優先順位の順番に基づいて、グループ優先順位テーブルを参照し、特定ソース向け表示解像度／コンテンツタイプグループを選択する（ＳＴ１５０２）。グループベースツリー構築呼出し選択メッセージ（５４２，５４４）は、ストリーム発信ノードにより、選択されたグループ内の全てのストリーム受信ノードへ送信される。
【０１５３】
グループベースツリー構築呼出し選択メッセージのステータス（１６０４）フィールドは、グループベースツリー構築の開始を指示する「開始」に設定される。グループＩＤ（１６０２）に基づいて、このグループに該当する関連論理ストリームとその仮割り当て帯域幅は、ストリーム受信ノードにおけるグループテーブル（３６４）及び帯域幅仮割り当てテーブル（３７２）から識別される。ストリーム受信ノードは、さらに並行して、最大割り当て帯域幅を有する論理ストリームを選択する（ＳＴ１５０４）。
【０１５４】
次に、各ストリーム受信ノードは、「選択」に設定されたステータス（１６０４）フィールドを有するグループベースツリー構築ストリーム選択メッセージ（５４８，５５０）を、送信する。そのメッセージ（５４８，５５０）は、選択された論理ストリームのストリーム発信ノード及びグループのストリーム中継ノードへ送信される（５４６，５４８，ＳＴ１５０６，ＳＴ１５１８）。
【０１５５】
ある状況では、グループ内の通信ノードが、グループベースツリーの構築中にＡＬＭセッションを離れる場合がある。このときは、グループ内の通信ノードは、「停止」に設定されたステータス（１６０４）フィールドを有する別のグループベースツリー構築呼出し選択メッセージ（５４２，５４４）を、全てのアクティブ通信ノードに通知する。グループベースツリー構築プロセスは、停止され再開される。
【０１５６】
あるいは、グループベースツリー構築が完了すると、ストリーム発信ノードは、次の処理を行う。ストリーム発信ノードは、グループ内の全ての通信ノードに通知するために、「終了」に設定されたステータス（１６０４）フィールドを有するグループベースツリー構築呼出し選択メッセージ（５４２，５４４）を随時送信する。
【０１５７】
ストリーム中継ノードは、「選択」に設定されたステータス（１７１０）を有するグループベースツリー構築ストリーム選択メッセージ（５４８，５５０）を、受信する（ＳＴ１５２０：ＹＥＳ）。次に、ストリーム中継ノードは、ストリーム受信ノード情報を分散型最適経路テーブル（３７４）に格納する（ＳＴ１５２２）。一方、ステータス（１７１０）が「選択」に設定されていない場合には（ＳＴ１５２０：ＮＯ）、グループベースツリー構築を終了する。
【０１５８】
ストリーム発信ノードでは、グループの全てのストリーム受信ノードからグループベースツリー構築ストリーム選択メッセージを、受信したか否かが判定される（ＳＴ１５０８）。グループの全てのストリーム受信ノードからグループベースツリー構築ストリーム選択メッセージを、受信していない場合には（ＳＴ１５０８：ＮＯ）、グループベースツリー構築を終了する。
【０１５９】
一方、グループベースツリー構築ストリーム選択メッセージを受信した場合（ＳＴ１５０８：ＹＥＳ）、少なくとも一つのストリーム受信ノードが該ストリーム発信ノード自身に接続されているかどうかが検査される（ＳＴ１５１０）。このステップは、コンテンツソースへの接続を有しない孤立したグループベースツリー構築を回避するために重要である。
【０１６０】
少なくとも一つのストリーム受信ノードが接続されている場合（ＳＴ１５１０：ＹＥＳ）、ストリーム発信ノードは、選択された論理ストリーム内にループ経路又は孤立経路が存在するかどうかを検査する（ＳＴ１５１４）。一方、いかなるストリーム受信ノードが接続されていない場合（ＳＴ１５１０：ＮＯ）、ストリーム発信ノードは、最大割り当て帯域幅を有するストリーム受信ノードに向けた論理ストリームの選択を指示する（ＳＴ１５１２）。
【０１６１】
次に、ストリーム発信ノードは、選択された論理ストリーム内にループ経路又は孤立経路が存在するかどうかを検査する（ＳＴ１５１４）。存在する場合（ＳＴ１５１４：ＹＥＳ）、グループベースツリー構築ストリーム選択メッセージは、グループＩＤが特定ソース向け表示解像度／コンテンツタイプグループＩＤに設定される。また、ステータスが「再選択」に設定されたそれぞれのストリーム受信ノードへ送信される（５５４）。ストリーム受信ノードは、次の最大割り当て帯域幅を有する論理ストリームを選択するために指示される（ＳＴ１５１６）。
【０１６２】
新しく選択された論理ストリームのストリーム発信ノードとストリーム中継ノードとは、ステータスが「選択」に設定されたグループベースツリー構築ストリーム選択メッセージにより通知される（５４６）。それぞれのストリーム受信ノードによりすでに選択されたストリーム中継ノードは、グループＩＤが特定ソース向け表示解像度及びコンテンツタイプに設定される。また、ストリーム中継ノードは、ステータスが「削除」に設定されたストリーム発信ノードからグループベースツリー構築ストリーム選択メッセージを、受信する（５５２）。
【０１６３】
ループ経路又は孤立経路が存在しない場合（ＳＴ１５１４：ＮＯ）、ストリーム発信ノードは、仮割り当てられていた帯域幅を確定するように指示をする。具体的には、ストリーム発信ノードは、推定される実際の帯域幅を論理ストリーム間で仮割り当てされる最小帯域幅に設定するように、当該グループ下の全てのストリーム中継ノードを指示する。選択された論理ストリームにより形成された経路に基づき、経路ＩＤは、グループベースツリー内のストリーム発信ノードから発する各分岐に割り当てられる。
【０１６４】
ストリーム発信ノードは、グループＩＤ（１７０２）が特定ソース向け表示解像度／コンテンツタイプグループＩＤに設定され、ストリームＩＤが選択された論理ストリームのそれぞれのストリームＩＤに設定される（１７０４）。次に、ストリーム発信ノードは、経路ＩＤ（１７０６）が、割り当てられたＩＤに設定され、実際の帯域幅（１７０８）が割り当てられた最終の帯域幅に設定される。次に、ストリーム発信ノードは、ステータス（１７１０）が「最終」に設定された最終のグループベースツリー構築ストリーム選択メッセージ（５５２，５５４）を、グループ内の全てのストリーム中継ノードへ送信する（ＳＴ１５１８）。
【０１６５】
ストリーム発信ノードが送信するグループベースツリー構築ストリーム選択メッセージ中のステータス（１６０４）は、受信情報を有するストリーム中継ノードにおいて最終的に点検される（ＳＴ１５２０）。ステータス（１６０４）が「選択」を示す場合（ＳＴ１５２０：ＹＥＳ）、ストリーム中継ノードは、ストリーム受信ノード情報をストリーム中継ノードの分散型最適経路テーブル（３７４）に格納する（ＳＴ１５２２）。さらに、ストリーム中継ノードは、各選択論理ストリームに帯域幅を仮割り当てる（ＳＴ１５２４）。ストリーム中継ノードの分散型最適経路テーブル（３７４）は、それぞれの更新通知により更新される（ＳＴ１５２６）。
【０１６６】
最終のグループベースツリー構築ストリーム選択メッセージを受信すると、各ストリーム中継ノードは、全ての論理ストリームが構築されたかどうかを検査する（ＳＴ４１８）。論理ストリームが依然として存在する場合（ＳＴ４１８：ＮＯ）、グループ内の各ストリーム中継ノードは、未選択の論理ストリームを削除する。次に、グループ内の各ストリーム中継ノードは、未処理の特定ソース向け表示解像度／コンテンツタイプグループの論理ストリームへ残りの帯域幅を、再配分する（ＳＴ４２０）ために指示される。先に説明したように、帯域幅仮割り当てプロセス（ＳＴ４１４）が再度実行される。
【０１６７】
当該グループベースツリー構築を完了したストリーム発信ノードは、次のグループのストリーム発信ノードに対し、次の特定ソース向け表示解像度／コンテンツタイプグループベースのツリー構築を指示する。具体的には、ストリーム発信ノードは、図２２に示すようなグループベースツリー構築メッセージを送信する（５５６）。図２２に示すグループベースツリー構築メッセージにおいて、現在のグループＩＤ（１８０２）は、グループ優先順位テーブルを参照し、グループベースツリー構築を完了した現在のグループのグループＩＤに設定される。次のグループＩＤ（１８０４）は、優先順位リスト内のすぐ後の特定ソース向け表示解像度／コンテンツタイプグループのグループＩＤに設定される。
【０１６８】
図２８は、分散型最適経路テーブル構築の完了を通知する詳細プロセスフローを示す。
【０１６９】
分散型最適経路テーブル構築が完了すると（ＳＴ４１８：ＹＥＳ，ＳＴ１９０２）、優先順位リストの最後のグループのストリーム発信ノードが、分散型最適経路テーブル構築の終了の通知を指示する（ＳＴ１９０４）。ＡＬＭセッションＩＤ（９０２）と、「変更オン」に設定されたステータス（９０４）から成る分散型最適経路テーブル構築ステータスメッセージ（図１５に示す）は、全ての参加ノード（５５８，５６０）へ配送される。なお、「変更オン」は、表示解像度及びコンテンツタイプの更なる変更要求が許可されることを示す。
【０１７０】
ストリーム中継ノード、ストリーム発信ノードが、このメッセージを送信すると、その後の全ての表示解像度／コンテンツタイプ通知メッセージは、表示品質／コンテンツタイプに従って、受諾される（ＳＴ１９０６）。その後、ストリーム発信ノードが分散型最適経路テーブル構築の次のラウンドを指示し（ＳＴ１９０８）、公平な帯域幅割り当てを識別する。一方、最適経路テーブル内に新しく構築された転送経路は、コンテンツ送信のために以降参照される。
【０１７１】
以上のように、本実施の形態によれば、該通信経路構築装置は、複数の通信ノードにわたる分散型最適経路テーブルの構築を制御する転送テーブル構築コントローラ（３１６）と、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタ（３０８）と、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割り当て器（３２２）と、特定ソース向けグループの優先順位に基づいて、分散型最適経路テーブルを構築する転送テーブルコンストラクタ（３２８）と、を備えるようにした。
【０１７２】
アプリケーションやユーザ環境設定で設定された各通信ノードの表示解像度及びコンテンツタイプに基づき、ストリーム受信ノードは、複数の特定ソース向け表示解像度／コンテンツタイプグループ（特定ソース向けグループ）に分類する。次に、ストリーム受信ノードは、各表示解像度及びコンテンツタイプの優先順位に基づいて、当該グループに優先順序が付けられる。さらに、当該優先順位に基づいて、特定ソース向け表示解像度／コンテンツタイプグループのグループベースツリーが構築される。
【０１７３】
また、特定ソース向けグループの優先順位に基づいて、各特定ソース向けグループのグループベースツリー構築を行うことができるので、総当り方法と比較して、劇的に少ない計算ステップでツリーの構築を終えることができる。また、Ｎ−ツリー構築を分散して行うことができるので、特定の通信ノードにのみ負荷がかかるのを回避することができるようになる。このとき、ストリーム発信ノードとストリーム受信ノード間のネットワーク経路に利用可能な最大帯域幅を割り当てることにより、良好なＡＶ品質をもたらすことができる。
【０１７４】
なお、我々の評価実験では、１２ノードのＮ−ツリー構築に要する時間は、一般的なＣＰＵで５０ｍｓ以下となり実用化可能な計算時間でＮ−ツリーが構築できることを確認している。
【０１７５】
また、本実施の形態では、各グループベースツリーの構築後、該グループベースツリー内の未選択の候補経路は削除され、削除された候補ネットワーク経路の未使用推定帯域幅を優先順位に基づいて他の候補ネットワーク経路へ再配分する。これにより、本実施の形態は、帯域幅仮割り当てを再指示することにより、帯域利用効率を向上することができる。
【０１７６】
また、表示解像度及びコンテンツタイプを、例えば、ユーザ主導により切り替えるような場合でも、本実施の形態によれば、新たに要求された表示解像度及びコンテンツタイプに応じて、特定ソース向けグループを再構築する。これにより、本実施の形態では、最適な帯域幅割り当てを行うことができるため、要求された表示解像度とコンテンツタイプに基づき割り当てられる帯域幅を適応的に変更することができる。これにより、本実施の形態では、ユーザが要求する表示解像度及びコンテンツタイプに応じつつ、良好な知覚ＡＶ品質をもたらすことができる。
【０１７７】
そのため、例えば、多数共同ＡＬＭテレビ会議セッション内において、参加者が、自身の多画面分割レイアウトを構成しカスタマイズするような場合においても、良好な知覚ＡＶ品質をもたらすことができる。
【０１７８】
また、割り当てられた帯域幅に従って、符号化パラメータ（すなわち符号化ビットレート、画像解像度、フレーム率）を、調整することにより、ＡＶ品質をさらに向上させることができる。
【０１７９】
本発明において示される通信経路構築装置及びＮ−ツリー構築方法は、単一装置内に物理的に一緒に配置される必要はないが、論理的に結合されるとモジュールを構成し、モジュールの明示された目的を実現する集積回路又は装置セット内に格納された、非結合の複数又は結合された単一の製品コードを含むことができる。
【０１８０】
２００８年６月１９日出願の特願２００８−１６０９１６に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【０１８１】
本発明に係る通信経路構築装置及びＮ−ツリー構築方法は、ＡＬＭアプリケーションにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらすことができ、ＡＬＭの最適経路構築などに有用である。
【符号の説明】
【０１８２】
１０２，１０４，１０６，１０８，２１４，２１６，２１８，２２０  通信ノード
１１０  ネットワーク
２０２，２０４，２０６  グループ
３１６  転送テーブル構築コントローラ
３０８  グループコンストラクタ
３２２  帯域幅仮割り当て器
３２８  転送テーブルコンストラクタ
３３４  転送実行部
３４０  表示解像度／コンテンツタイプトリガモニタ
３５８  表示解像度／コンテンツ規則テーブル
３６０  コンテンツグループテーブル
３６２  グループ優先順位テーブル
３６４  グループテーブル
３６８  ストリームテーブル
３７０  送信元別論理ストリーム保持テーブル
３７２  帯域幅仮割り当てテーブル
３７４  分散型最適経路テーブル
３７６  メディアアプリケーション
【図１】
2009153945.tif 000003
【図２】
2009153945.tif 000004
【図３】
2009153945.tif 000005
【図４】
2009153945.tif 000006
【図５】
2009153945.tif 000007
【図６】
2009153945.tif 000008
【図７】
2009153945.tif 000009
【図８】
2009153945.tif 000010
【図９】
2009153945.tif 000011
【図１０】
2009153945.tif 000012
【図１１】
2009153945.tif 000013
【図１２】
2009153945.tif 000014
【図１３】
2009153945.tif 000015
【図１４】
2009153945.tif 000016
【図１５】
2009153945.tif 000017
【図１６】
2009153945.tif 000018
【図１７】
2009153945.tif 000019
【図１８】
2009153945.tif 000020
【図１９】
2009153945.tif 000021
【図２０】
2009153945.tif 000022
【図２１】
2009153945.tif 000023
【図２２】
2009153945.tif 000024
【図２３】
2009153945.tif 000025
【図２４】
2009153945.tif 000026
【図２５】
2009153945.tif 000027
【図２６】
2009153945.tif 000028
【図２７】
2009153945.tif 000029
【図２８】
2009153945.tif 000030
【手続補正書】
【提出日】平成22年6月2日(2010.6.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはパケット転送のための最適経路構築に関し、特にパケットベースのネットワーク上のアプリケーション層マルチキャスティング（ＡＬＭ：application layer multicasting）のための最適経路構築に関する。特に、本発明は、Ｎ個の特定ソース向け（source-specific）経路における、公平な帯域幅割り当てを行う通信経路構築装置及びＮ−ツリー構築方法に関する。
【背景技術】
【０００２】
マルチポイント通信、特にインターネット上のマルチポイント通信は、セッション中に、全ての参加ノードに対し同時に同じコンテンツを配送するマルチキャスト方法により広く行われている。ＩＰ（Internet Protocol）マルチキャストは、ＩＰ層マルチキャストを可能にするための中間ノード構成、末端ノード構成、及び、インターネットサービスプロバイダー参加要件の複雑さにより、その普及は妨げられてきた。
【０００３】
これに対して、アプリケーション層マルチキャスティング（ＡＬＭ）と呼ばれる新しいメカニズムが、知られている。ＡＬＭは、既存のユニキャストネットワークアーキテクチャ上にアプリケーション層を実施することの簡潔性の故に普及しつつある。ＡＬＭは、ＩＰ層におけるマルチキャスト転送機能が不要であることから、参加ノード間でのメンバー自身によるオーディオビデオ（ＡＶ：Audio Video）パケット転送を行うことができる。また、ＡＬＭは、アプリケーション層におけるＡＶパケット転送を柔軟に行うことができる。
【０００４】
ＡＬＭは、特定セッション中に全ての参加者が事前の環境設定なしに、全ての参加者間でＡＶコンテンツ又はストリームを交換することができる。従って、ＡＬＭは、複数の当事者間のテレビ会議のようなＡＶベースのアプリケーションに極めて有用である（特許文献１、特許文献２、及び、特許文献３参照）。
【０００５】
ＡＬＭにおいて、パケットルーチンは、アプリケーション層で行われるので、それぞれがデータパケット配送のためのソースベースのツリーを形成する必要がある。すなわち、ＡＬＭは、Ｎ対Ｎの通信を行うために、アプリケーション層において、Ｎ個の参加ノード間で、Ｎ個のソースコンテンツの配送ツリーを構成する。
【０００６】
一方、ネットワーク層ルーティングメカニズムは、測定された待ち時間（例えば、ラウンドトリップ時間）のみに基づく選択メカニズムの故に、公平な帯域幅割り当てツリー解決策を提供するのが困難である。なお、ネットワーク層ルーティングメカニズムは、最短経路生成のためのDijkstra、Bellman-Ford、Primアルゴリズムの「欲張り」概念に基づく最小スパニングツリー（Minimum Spanning Tree）などを含む。
【０００７】
また、非特許文献１には、注目したい映像を優先したい等のユーザ嗜好に基づいた複数ストリーム間の帯域の割り当て方法が開示されている。
【０００８】
インターネット上のユニキャストパケットルーティングは、最短経路生成のためのこれらのアルゴリズムに基づいており、ＡＬＭルーティングの要件を反映していない。従って、これらの解決策は、ＡＬＭベースのアプリケーションではなく、ネットワーク層ユニキャストルーティングに最も好都合である。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許出願公開第２００５／０１６３２２４号明細書
【特許文献２】米国特許出願公開第２００６／０１５３１００号明細書
【特許文献３】米国特許出願公開第２００７／０１３３４１３号明細書
【非特許文献】
【００１０】
【非特許文献１】Puneet Mehra他「ＴＣＰ用のレシーバー主導型帯域幅共有：Receiver-driven bandwidth sharing for TCP」、Proceedings of IEEE Transactions on Multimedia,Volume 7 Issue 4, August 2005.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、最短経路生成のためのこれらのアルゴリズムは、末端ノードネットワーク帯域幅及び全体ネットワークトポロジーを意識しない。このため、これらアルゴリズムがＡＬＭアプリケーションに適用されると、ＡＬＭノードの共有経路においてトラヒック輻輳が引き起こされ、ネットワーク待ち時間が長くなり、ＡＶ品質が劣化してしまう。また、非特許文献１の方法では、Ｎ対Ｎの配送木（Ｎ−ツリー）の間での帯域の競合を考慮しておらず、公平なツリーを構成したい場合に用いることが難しい。
【００１２】
また、公平な帯域幅割り当てを保証するＮ−ツリーを総当り法で解く問題は、ＮＰハードであることが知られている。つまり、ノード数ＮとしてＮの多項式倍の時間（例：Ｎの３乗、Ｎの４乗の時間）で解ける問題ではなく、ＮのＮ乗など、Ｎが多くなると爆発的に計算量が増える問題である。すなわち、Ｎ−ツリーを計算する時間がノードの数が増えるにつれ、爆発的に増加し、実用的な時間でＮ−ツリーの計算が完了しないという問題があった。
【００１３】
本発明は、係る点に鑑みてなされたものであり、ＡＬＭにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらす通信経路構築装置及びＮ−ツリー構築方法を提供することを第一の目的とする。また、本発明は、実用的な時間でＮ−ツリーの計算を完了することを第二の目的とする。
【課題を解決するための手段】
【００１４】
本発明の通信経路構築装置は、複数の通信ノードにわたる分散型最適経路テーブルの構築の開始又は終了を制御する転送テーブル構築コントローラと、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタと、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割当器と、前記特定ソース向けグループの優先順位に基づいて、前記分散型最適経路テーブルを構築する転送テーブルコンストラクタと、を具備する構成を採る。
【００１５】
本発明のＮ−ツリー構築方法は、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるステップと、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てするステップと、前記特定ソース向けグループの優先順位に基づいて、複数の通信ノードにわたる分散型最適経路テーブルを構築するステップと、を含むようにした。
【発明の効果】
【００１６】
本発明の通信経路構築装置及びＮ−ツリー構築方法によれば、ＡＬＭにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらすことができる。また、分散
型でＮ−ツリーを計算するため実用的な時間でＮ−ツリーの計算を完了することができる。
【図面の簡単な説明】
【００１７】
【図１】ＡＬＭセッションにおいて複数の通信ノードを有する簡単なネットワークを示す図
【図２】異なる表示解像度及びコンテンツタイプに基づく複数の通信ノードグループの一例を示す図
【図３】ネットワーク環境における通信ノードの通信経路構築装置の要部構成の一例を示す図
【図４】グループテーブルのテーブルフォーマットを示す図
【図５】ストリームテーブルのテーブルフォーマットを示す図
【図６】コンテンツグループテーブルのテーブルフォーマットを示す図
【図７】グループ優先順位テーブルのテーブルフォーマットを示す図
【図８】送信元別論理ストリーム保持テーブルのテーブルフォーマットを示す図
【図９】帯域幅仮割り当てテーブルのテーブルフォーマットを示す図
【図１０】分散型最適経路テーブルのテーブルフォーマットを示す図
【図１１】最適知覚ＡＶ品質を実現するための公平な帯域幅割り当ての識別のためのグループベースツリー構築の主要プロセスフローを例示する図
【図１２】ストリーム発信ノード、ストリーム受信ノード、ストリーム中継ノード、ストリーム調整ノード間のメッセージ交換シーケンスを例示する図
【図１３】表示解像度／コンテンツタイプ通知メッセージのフォーマットを示す図
【図１４】特定ソース向け表示解像度／コンテンツタイプ通知メッセージのフォーマットを示す図
【図１５】分散型最適経路テーブル構築ステータスメッセージのフォーマットを示す図
【図１６】重み通知メッセージのフォーマットを示す図
【図１７】グループ優先順位通知メッセージのフォーマットを示す図
【図１８】特定ソース向けグループリスト通知メッセージのフォーマットを示す図
【図１９】仮割り当て帯域幅通知メッセージのフォーマットを示す図
【図２０】グループベースツリー構築呼出し選択メッセージのフォーマットを示す図
【図２１】グループベースツリー構築ストリーム選択メッセージのフォーマットを示す図
【図２２】グループベースツリー構築メッセージのフォーマットを示す図
【図２３】分散型最適経路テーブル構築の開始を通知する詳細プロセスフローを示す図
【図２４】特定ソース向け表示解像度／コンテンツタイプグループのランク付けのための詳細プロセスフローを例示する図
【図２５】論理ストリーム構築プロセスフローを示す図
【図２６】帯域幅仮割り当てプロセスフローを示す図
【図２７】グループベースツリー構築の詳細プロセスフローを示す図
【図２８】分散型最適経路テーブル構築の完了を通知する詳細プロセスフローを示す図
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１９】
本発明では、本発明者によって先に出願された特願２００８−０２９７７１の明細書に記載の「水拡散ポリシー」に加え、Ｎ−ツリー構築において、表示解像度及びコンテンツタイプとして表される「粘度：viscosity」が考慮される。
【００２０】
ここで、「水拡散ポリシー」とは、帯域幅公平化ツリーを満足するアルゴリズムである。以下、「水拡散ポリシー」の概要を説明する。
【００２１】
「水拡散ポリシー」によると、Ｎ個の水源トンネル（穴）を含む容器は、該トンネルの大きさと該トンネルの高さ（圧力：枝の選択時に利用する経験データベースに相当）とに基づいて、その場所から異なる距離まで水を拡散する。大きなトンネルは、小さなトンネルと比較してより多くの水を拡散する。容器の底に近いトンネルは、高い位置のトンネルと比較してより遠くまで水を拡散する。各トンネルは、異なる容量（穴サイズ：帯域に相当）を有してよい。このことは、広い帯域幅を有するノードは、狭い帯域幅を有するノードと比較して、より多くのストリームをＮ−ツリー内の多くのノードに運ぶものと解釈される。
【００２２】
「水拡散ポリシー」によるＮ−ツリーアルゴリズムは、以下の３つの主要なフェーズを有する。
【００２３】
ｉ）接続確立フェーズ：全てのノード間の接続が確立され、ネットワークメトリック（ノードの接続状態）が収集される。
【００２４】
なお、上記メトリック情報は、接続の有無を示す離散量（０か１）で示されているものではなく、フルメッシュ（Ａ−Ｂ，Ａ−Ｃ，Ｂ−Ｃの双方向）の計測値を反映した連続量の接続状態である。つまり、ノードＡ−Ｃ間のメトリックは、１Ｍｂｐｓの場合、０．１Ｍｂｐｓの場合、０Ｍｂｐｓの場合が存在する。
【００２５】
ｉｉ）Ｎ−ツリー構築フェーズ：最適経路テーブル（Optimal Path Table）と呼ぶ接続テーブルを利用して、メッシュノード接続性を有するＮ−ツリーのステータスが更新される。ＡＬＭセッション中にノードの結合及び離脱のステータスが更新される。
【００２６】
ｉｉｉ）制御又はＮ−ツリー最適化フェーズ：最少遅延でＮ−ツリー全体の公平化帯域幅割り当てを、段階的に改善するために改善手順が実行される。そしてＮ−ツリー最適化のためにノード間又はリンク間で、ノード移動又はリンク移動が実行される。実行した結果は、ＦＲＣ（Fast Route Convergence）を有するＡＬＭをもたらす。この情報は、ノードに対するＡＶストリーム配送経路を構築するために使用される。
【００２７】
Ｎ−ツリーアルゴリズムは、小グループの参加者が、ネットワーク上における全参加者間のセッションを通じて、高度な対話機能と良好なＡＶ品質とを用いて、ＡＶストリーム又はコンテンツを交換するＡＶ会議アプリケーションに好適である。
【００２８】
全てのノードの帯域幅公平性を保証するために、Ｎ−ツリーアルゴリズムでは、各ノードのアップロードスロット及びダウンロードスロットの容量を考慮する。ここで、アップロードスロット、ダウンロードスロットは、ノードのアップリンク、ダウンリンクの帯域幅容量を指す。帯域幅は、例えば６４ｋｂ、１２８ｋｂといった離散的な範囲で複数に分割される。
【００２９】
「水拡散ポリシー」は、帯域幅公平化配送ツリー構築のための上記Ｎ−ツリー構築アルゴリズムの３つの主要なフェーズと共に採用される。このソリューションは、所与のＡＶセッションに対し、ネットワークに参加している全てのノードに適用されるＡＬＭ＿ＦＲＣを実現する。
【００３０】
「水拡散ポリシー」は、エンドツーエンドノード遅延を低減することにより、トラヒック輻輳を最小限にすることができる。又、「水拡散ポリシー」は、共有Ｎ−ツリーＡＬＭノード間で利用可能な帯域幅を最大化することができる。
【００３１】
また、「水拡散ポリシー」による経路選択メカニズムは、均等に分配された帯域幅を有
する参加ノードにおける利用可能な帯域幅と遅延とにのみ基づく。ここで、２つ以上のデータストリームが、共有ネットワーク経路内のリンク内帯域幅を競合する場面では、参加ノードにとって、最適な知覚ＡＶ品質を生じさせる場合について、以下に説明する。
【００３２】
多数共同ＡＬＭテレビ会議セッション内では、参加者は、自身の多画面分割レイアウトを構成し、カスタマイズすることができる。現在の解決策は、「全ての参加者に対し、均等な表示解像度で表示する」、「非アクティブ話者に対しては、より低い表示解像度（例えば、ＣＩＦ）で表示する。一方、アクティブ話者に対しては、より大きな表示解像度（例えば、ＨＤ７２０ｐ、ＨＤ１０８０ｉ、４ＣＩＦ）で表示する」、など様々な多画面分割レイアウトを提供する。
【００３３】
更に、オーディオ、ビデオ、オーディオ及びビデオの混合、文書データなど様々なコンテンツタイプは、単一のストリームセッションにおいて様々なネットワーク経路を介し、様々な参加ノードに配送され得る。
【００３４】
本発明者は、上述の「水拡散ポリシー」に加え、Ｎ−ツリー構築において、表示解像度及びコンテンツタイプとして表される「粘度：viscosity」を考慮した。これにより、利用可能な帯域幅とエンドポイント能力に応じて最良の知覚ＡＶ品質をもたらすことができる。
【００３５】
また、本発明では、Ｎ−ツリーアルゴリズムを、ノード間で分散的に実行することができるので、Ｎ−ツリー構築処理を複数のノードに分散させることができ、ある特定のノードにだけ負荷がかかるのを回避することができる。
【００３６】
次は、当該技術の明確性と一貫性を保証するために、本実施の形態において用いられる用語の定義について説明する。
【００３７】
１．「ＡＬＭセッション」は、２つ以上の通信ノード間でデータパケットを同時に交換する多数共同アプリケーションにおいて、該２つ以上の通信ノードがネットワークを介し接続される論理セッションとして定義される。
【００３８】
２．「粘度」は、「水拡散ポリシー」において、移動すべき同じ経路を共有することができ、２つ以上の異なるポイント間で運ばれる異なる種類の液体の条件又は状態を定義する。異なる粘度を有する液体は、平らな表面上を異なる速度で伝わる。本実施の形態では、粘度は、ＡＶストリームの表示解像度及びコンテンツタイプを指す。
【００３９】
３．「ストリーム発信ノード」は、キャプチャ装置により捕捉したコンテンツを配送する通信ノードを表す。ストリーム発信ノードは、「ソース」又は「ソースノード」と同じ意味で用いられる。
【００４０】
４．「ストリーム中継ノード」は、ストリーム発信ノードからのコンテンツを受信し、次の通信ノードに中継する通信ノードを表す。
【００４１】
５．「ストリーム受信ノード」は、コンテンツを受信し、再生する通信ノードを表す。ストリーム受信ノードは、「レシーバー」又は「レシーバーノード」と同じ意味で用いられる。
【００４２】
６．「ストリーム調整ノード」は、ＡＬＭセッション中に全ての通信ノードに対し、同期されたタスクを行う通信ノードを表す。
【００４３】
７．「グループベースツリー」は、ソースノードと、該特定ソースから同じ表示解像度及びコンテンツタイプを要求するレシーバーノードのグループとから構成される。
【００４４】
８．「優先順位が付けられたグループベースツリー」は、予め定義された一組のランキング規則に基づいて複数のグループベースツリーをランク付けすることにより形成される。
【００４５】
９．「論理ストリーム」は、確立されたアクティブ接続を持たない２つの通信ノード間により形成される仮想経路（ネットワーク経路）を表す。仮想経路上の通信ノードは、一組の共通属性を共有し、共通属性を持つ論理ストリームが最終選択されるとアクティブ接続を確立する。共通属性とは、例えば、同じストリームセッション、又は、同じストリーム発信ノードから要求される同じ表示解像度及びコンテンツタイプであり、２つの通信ノード間のコンテンツ送信に利用できる帯域幅等を有する。
【００４６】
１０．「転送テーブル」は、最終宛先に到達するまで当該転送テーブルにより指定される次の通信ノードへ受信パケットを転送するために、通信ノードにより使用されるパケット転送情報から構成される。
【００４７】
図１は、本発明の実施の形態に係る通信システムを示す図である。図１に示すように、複数の通信ノード（１０２，１０４，１０６，１０８）が、該通信ノード間の接続を可能にする同一ネットワーク（１１０）に接続されている。各通信ノードは、ＡＬＭセッション中、通信ノード間でＡＶストリームと制御ストリームとを同時に交換することができる。ストリーム調整ノード、ストリーム発信ノード、ストリーム中継ノード、及び、ストリーム受信ノードは、一つの通信ノード又は複数の通信ノード内に同時に存在する論理的エンティティであってよい。
【００４８】
なお、本発明において、物理的及び論理的エンティティを指す用語であるノード及びエンティティは、互いに読み替えて使用することができる。
【００４９】
図２は、本発明の実施の形態に係る通信システムを示す別の図である。図２には、複数の通信ノードが、異なる通信ノードグループ下でストリーム受信ノード、ストリーム発信ノード、ストリーム調整ノード、及び、ストリーム中継ノードとして動作する例を示す。
【００５０】
通信ノードのグルーピングは、特定のストリーム発信ノードから要求された表示解像度及びコンテンツタイプに基づいて行われる。ストリーム受信ノードは、ストリーム発信ノードから異なる表示解像度（例えば、ＨＤ７２０ｐ、４ＣＩＦ、ＣＩＦ等）、及び、コンテンツタイプを要求することができる。なお、コンテンツタイプは、例えば、オーディオのみ（Ａ）、ビデオのみ（Ｖ）、オーディオとビデオの混合（ＡＶ）、文書データ（Ｄ）、制御データ等（Ｃ）を含む。
【００５１】
各表示解像度及びコンテンツタイプ要求は、更なるグループベースツリーの構築のための通信ノードグループ（以下「特定ソース向け表示解像度／コンテンツタイプグループ」、又は「特定ソース向けグループ」ともいう）を形成する。
【００５２】
グループ（２０４）は、通信ノード＃１から同じ表示解像度（ＨＤ７２０ｐ）及びコンテンツタイプ（オーディオとビデオの混合）（２３０，２３２，２３４）を要求する通信ノードにより、形成された通信ノードグループを示す。グループ（２０２）とグループ（２０６）とは、通信ノード＃４から異なる表示解像度及びコンテンツタイプを要求する通信ノード＃２，＃３、及び、通信ノード＃１のそれぞれにより形成される別の通信ノードグループを示す。
【００５３】
すなわち、グループ（２０２）は、通信ノード＃１による４ＣＩＦ表示解像度、及びオーディオとビデオの混合コンテンツタイプ（２４６）を要求する通信ノードグループである。また、グループ（２０６）は、通信ノード（２１６，２１８）によるＣＩＦ表示解像度、及びオーディオとビデオの混合コンテンツタイプ（２４８，２５０）を要求する通信ノードグループである。
【００５４】
図２に示すように、Ｎ個の参加ノードを有するＡＬＭセッションは、ストリーム受信ノードとなる通信ノードをＮ個まで有することができる。各ストリーム受信ノード（２１４，２１６，２１８，２２０）は、指定の表示解像度及びコンテンツタイプを有するストリーム発信ノードに対し表示解像度及びコンテンツタイプの要求を開始する。
【００５５】
各ストリーム受信ノードは、ストリーム発信ノードから要求された表示解像度及びコンテンツタイプとは異なる選択肢を有することができる。例えば、通信ノード＃１は、通信ノード＃２，＃３，＃４からのビデオを４ＣＩＦ解像度（２３６，２４２，２４６）で表示されるように設定することができる。また、通信ノード＃２，＃３，＃４は、通信ノード＃１からのビデオを高精細解像度（２３０、２３２、２３４）で表示されるように設定する。なお、通信ノード＃２，＃３，＃４は、他の通信ノードからのビデオをＣＩＦ解像度（２３８，２４０，２４４，２４８，２５０，２５２）で表示されるように設定する。
【００５６】
マルチメディアコンテンツを全ての参加ノードへ配送することができる各通信ノードは、ストリーム発信ノードのＡＬＭ機能を含む。
【００５７】
図２には、通信ノード＃１，＃４が、ストリーム発信ノードである例が示されている。各ストリーム受信ノード（２１４，２１６，２１８）により、要求された表示解像度及びコンテンツタイプ（以下「粘度情報」ともいう）は、ストリーム発信ノード（２１４，２２０）内にのみに保持される。各ストリーム発信ノード内では、要求された表示解像度及びコンテンツタイプに基づき、ストリーム受信ノードを、更に、複数の特定ソース向け表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）に分割する。具体的には、ストリーム発信ノード２１４の内部は、表示解像度／コンテンツタイプグループ２０４が構成される。すなわち、表示解像度／コンテンツタイプグループ２０４は、ストリーム発信ノード２１４のストリームを表示解像度／コンテンツタイプ（２３０，２３２，２３４）で、配信するために構成されるグループが保持される。同様に、ストリーム発信ノード２２０の内部は、表示解像度／コンテンツタイプグループ（２０２、２０６）が保持される。つまり、表示解像度／コンテンツタイプグループ２０２は、ストリーム発信ノード２２０のストリームを表示解像度／コンテンツタイプ２４６で表示させるグループである。表示解像度／コンテンツタイプグループ２０６は、ストリーム発信ノード２２０のストリームを表示解像度／コンテンツタイプ（２２６，２５０）で表示させるグループである。
【００５８】
グループベースツリーは、これらのグループ（２０２，２０４，２０６）のそれぞれに対して構築される。例えば、ストリーム発信ノードである通信ノード＃４では、２つのグループベースツリーが構築される。すなわち、通信ノード＃４では、通信ノード＃１に対し４ＣＩＦ  ＡＶコンテンツを送信するためのグループベースツリーと、通信ノード＃２，＃３に対しＣＩＦ  ＡＶコンテンツを送信するための別のグループベースツリーとが構築される。通信ノード＃１では、高精細度ＡＶコンテンツの送信のために、通信ノード＃２，＃３，＃４に対するグループベースツリーが構成される。
【００５９】
通信ノード＃１は、要求されたコンテンツタイプに応じて、２つ以上のグループベースツリーを形成することもできる。例えば、通信ノード＃１では、通信ノード＃２，＃３，
＃４に４ＣＩＦビデオ及びオーディオコンテンツを異なる経路を介し別々に配送するために、２つ以上のグループベースツリーを形成してもよい。
【００６０】
なお、少なくとも一つの通信ノードは、参加ノード間のセッション調整のためのストリーム調整ノードとなる。図２では、通信ノード＃１が、ストリーム調整ノードとなっている例である。ストリーム調整ノードは、全てのストリーム発信ノード（２１４，２２０）から、セッション中に表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）の要求リストを受信する。
【００６１】
ストリーム調整ノード（２１４）は、ユーザ又はアプリケーションにより設定された好みに基づく表示解像度及びコンテンツタイプの優先順位に従って、各表示解像度及びコンテンツタイプに対し、相対的な重みを定義する。ストリーム調整ノード（２１４）は、さらに、表示解像度／コンテンツタイプグループ（２０２，２０４，２０６）の受信リストをランク付け、グループ優先順位を定義する。グループ優先順位は、後に、グループベースツリー構築の優先順位を決定する際に用いられる。
【００６２】
同じ表示解像度／コンテンツタイプグループ内の各ノードは、ストリーム中継ノードになり得る。例えば、グループ（２０４）内では、通信ノード（２１６，２１８，２２０）は、通信ノード（２１４）に同じコンテンツを要求する。当該コンテンツは、コンテンツを最初に受信したノードから次ノードへ中継されるようにしてもよい。グループ内のネットワーク経路を選択するために、各ストリーム中継ノードは、各論理ストリームにより、当該表示解像度及びコンテンツタイプを配送するのに必要な最大帯域幅を見積もる（推定する）ために帯域幅仮割り当てを行う。
【００６３】
各通信ノード（２１４，２１６，２１８，２２０）は、複数の特定ソース向け表示解像度／コンテンツタイプグループに対するストリーム発信ノードとストリーム中継ノードとに、同時になり得るということに留意されたい。このようにして、当該通信ノードは、Ｎ個の参加ノードＡＬＭセッション中に、少なくともＮ個の表示解像度／コンテンツタイプグループに関わることができる。
【００６４】
一方、当該通信ノードは、複数のストリームを送信するために共有される限られた帯域幅のみを有する。従って、帯域幅仮割り当ては、複数のグループ内のストリーム中継ノード又はストリーム発信ノードとしてそれ自身により形成されるそれぞれの論理ストリームに、その帯域幅を分配する。この帯域幅仮割り当ては、当該通信ノード（２１４，２１６，２１８，２２０）において行われる。
【００６５】
公平な帯域幅割り当て分配メカニズムは、優先順位が高い表示解像度／コンテンツタイプグループの論理ストリームと、優先順位が低い表示解像度／コンテンツタイプグループからの論理ストリームと比較する。次に、公平な帯域幅割り当て分配メカニズムは、より高い割合で共有帯域幅が割り当てられるように適用される。これにより、優先順位が高い表示解像度及びコンテンツタイプに対し、ストリーム内で最適化された知覚ＡＶ品質の公平性が実現される。
【００６６】
初期の段階では、ストリーム調整ノードにより定義されたグループ優先順位に基づいて、各ストリーム発信ノードは、グループベースツリー構築を順に指示する。各グループ内では、当該ストリーム受信ノードは、ネットワーク経路を形成するために最大仮割り当て帯域幅を有する論理ストリームを選択する。最大仮割り当て帯域幅を有する論理ストリームは、ストリーム受信ノードが最良の知覚ＡＶ品質を受信することができる帯域幅を有するネットワーク経路を表す。
【００６７】
選択結果は、論理ストリームの中継ノードに反映され、転送テーブルが更新される。転送テーブルの情報は、最終宛先に到達するまで受信ＡＶパケットを次のストリーム受信ノードに転送するために、ストリーム発信ノードとそれに続く中継ノードにより使用される。一つのグループから別のグループへの連続的なグループベースツリー構築により、ネットワーク（１１０）において、優先順位が付けられた表示解像度及びコンテンツタイプに対する帯域幅仮割り当ての的確さが保証される。さらに、同時のグループベースツリー構築が、グループ間で残りの帯域幅の情報を同期して取得させるように、適所に配置された同期機構により可能となる。
【００６８】
図３は、本発明の実施の形態に係るネットワーク環境内における通信ノードの内部構成（３０２，３０４）を例示するブロック図である。各通信ノードは、グループコンストラクタ（３０８）、転送テーブル構築コントローラ（３１６）、帯域幅仮割り当て器（３２２）、転送テーブルコンストラクタ（３２８）、及び、転送実行部（３３４）を有する。
【００６９】
これら５つのモジュール（３０８，３１６，３２２，３２８，３３４）は、これらの間で情報を交換するために複数のテーブル（３５８〜３７４）を介して接続される。これらのテーブルは、表示解像度／コンテンツ規則テーブル（３５８）、コンテンツグループテーブル（３６０）、グループ優先順位テーブル（３６２）、グループテーブル（３６４）、ストリームテーブル（３６８）、送信元別論理ストリーム保持テーブル（３７０）、帯域幅仮割り当てテーブル（３７２）、及び、分散型最適経路テーブル（ＯＰＴ：optimal path table）（３７４）である。
【００７０】
表示解像度／コンテンツタイプトリガモニタ（３４０）は、メディアアプリケーション（３７６）から通知される表示解像度／コンテンツタイプの変更要求の有無を判断する。
【００７１】
転送テーブル構築コントローラ（３１６）は、複数の通信ノード（３０２，３０４）に対する分散型最適経路テーブル構築を制御する。分散型ＯＰＴ（３７４）は、グループベースツリー構築の結果生じる転送情報から構成される。最適ネットワーク経路は、分散型の方法でグループベースツリーの優先順位に基づいて構築される。したがって、全てのグループベースツリーが構築される前に、任意の参加ノードから任意の表示解像度及びコンテンツタイプ（２３０〜２５２）の変更要求が呼び出されると、ＡＬＭ経路構築の的確さに影響を与え得る。
【００７２】
そのため、最新の表示解像度及びコンテンツタイプの要求に基づくと、不公平な帯域幅割り当てをもたらす可能性がある。従って、転送テーブル構築コントローラ（３１６）は、分散型最適経路テーブル構築を同期させるために存在する。つまり、転送テーブル構築コントローラ（３１６）は、全ての参加ノードに分散型最適経路テーブル構築イベント（３１８，３２０，３８２）の開始と終了を通知する。これにより、参加ノードは、制御変更を実行するようにしたので、分散型最適経路テーブル構築を同期させることができる。
【００７３】
グループコンストラクタ（３０８）は、表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに取り込む（振り分ける）。ユーザにより制御されるメディアアプリケーション（３７６）は、表示解像度及びコンテンツタイプの変更要求を指示する。各ストリーム受信ノードのグループコンストラクタ（３０８）は、表示解像度／コンテンツタイプトリガモニタ（３４０）から表示解像度／コンテンツタイプ変更要求を受信する（３０６）。次に、各ストリーム受信ノードのグループコンストラクタ（３０８）は、要求された表示解像度及びコンテンツタイプを、それぞれのストリーム発信ノードのグループコンストラクタ（３０８）に通知する（３１０，３１２）。
【００７４】
ストリーム発信ノードのグループコンストラクタ（３０８）は、要求された表示解像度
及びコンテンツタイプに基づき、ストリーム受信ノードを複数の特定ソース向け表示解像度／コンテンツタイプグループに分類する（３４２）。なお、分類する際は、表示解像度／コンテンツタイプ規則に従って分類する。ストリーム発信ノードのグループコンストラクタ（３０８）は、また、特定ソース向け表示解像度／コンテンツタイプグループ内のストリーム受信ノードの接続情報を、ストリームテーブル（３６８）に通知する（３１０）。
【００７５】
グループ情報が記録された（３４４）グループテーブル（３６４）は、ストリーム発信ノード及びストリーム受信ノードにおいて維持される。図４は、グループテーブル（３６４）のフォーマットの一例を示す。
【００７６】
図４に示すように、グループテーブル（３６４）は、当該グループに対する一意的な識別子を示すグループＩＤ（２００２）と、ＡＬＭセッション内に存在する他のグループに対する当該グループの優先順位を指示するグループ優先順位（２００４）と、交換された表示解像度及びコンテンツタイプを示すコンテンツグループＩＤ（２００６）と、グループにより提供される表示解像度及びコンテンツタイプを要求するストリーム受信ノードを指示するレシーバーＩＤ（２００８）と、グループ内のストリーム受信ノード（特定の表示解像度及びコンテンツタイプを配送するための可能なネットワーク経路でもある）間で構築される論理ストリームのリストを指示するストリームＩＤ（２０１０）と、を含む。
【００７７】
論理ストリーム情報及び接続情報が記録されたストリームテーブル（３６８）は、グループコンストラクタ（３０８）により維持される。図５は、ストリームテーブル（３６８）のフォーマットの一例を示す。図５に示すように、ストリームテーブル（３６８）は、ストリームＩＤ（２１０２）と、センダーＩＤ（２１０４）と、レシーバーＩＤ（２１０６）と、ＩＰアドレス及びポート情報を含む接続情報（２１０８）とから成る。
【００７８】
ストリーム調整ノードのグループコンストラクタ（３０８）は、表示解像度及びコンテンツタイプに基づいてグループを形成するとともに、全ストリーム発信ノードからグループ情報を受信すると（３１０）、各グループに重みを割り当てる。
【００７９】
グループコンストラクタ（３０８）は、特定ソース向け表示解像度／コンテンツタイプグループを順序付きリストに並べ、特定ソース向け表示解像度／コンテンツタイプグループの優先順位を全てのストリーム発信ノードに通知する。
【００８０】
コンテンツグループテーブル（３６０）は、帯域幅仮割り当てのために重み情報が参照されるテーブルであり、全ての参加ノードにおいて保持される（３４４）。図６は、コンテンツグループテーブル（３６０）のフォーマットの一例を示す。
【００８１】
図６に示すように、コンテンツグループテーブル（３６０）は、特定の表示解像度とコンテンツタイプに対する一意的な識別子であるコンテンツグループＩＤ（２２０２）と、コンテンツグループの表示解像度（２２０４）と、コンテンツグループにより配送されるコンテンツタイプ（２２０６）と、コンテンツグループにより配送されるＡＬＭセッション内における、他のコンテンツに対するコンテンツの優先順位を示す重み情報（２２０８）とから成る。
【００８２】
グループ優先順位テーブル（３６２）は、ストリーム発信ノードのグループコンストラクタ（３０８）によって維持される。グループベースツリー構築の優先順位は、このテーブル内に割り当てられた優先順位に基づく。図７は、グループ優先順位テーブル（３６２）のフォーマットの一例を示す。図７に示すように、グループ優先順位テーブル（３６２）は、グループＩＤ（２３０２）及びプライオリティ情報（２３０４）から成る。
【００８３】
帯域幅仮割り当て器（３２２）は、全ての論理経路に対し、利用可能な帯域幅を見積もる（推定する）。ストリーム中継ノードの帯域幅仮割り当て器（３２２）は、同じ特定ソース向け表示解像度／コンテンツタイプグループ内の参加ノードを参照し（３４８）、全ての参加ノードに対する論理経路を構築する。帯域幅仮割り当て器（３２２）は、各論理ストリームに割り当てられる帯域幅を表示解像度／コンテンツタイプ規則に基づいて推定する（３４６）。
【００８４】
また、帯域幅仮割り当て器（３２２）は、後の選択のために仮割り当てされる仮割り当て帯域幅の情報を、ストリーム受信ノードの帯域幅仮割り当て器（３２２）に通知する（３２６）。仮割り当て帯域幅の情報を受信すると（３２４）、ストリーム受信ノードの帯域幅仮割り当て器（３２２）は、帯域幅仮割り当てテーブル（３７２）を更新する。
【００８５】
送信元別論理ストリーム保持テーブル（３７０）は、ストリーム中継ノードに関する論理ストリーム情報が記録される各ストリーム中継ノード内に保持される。図８は、送信元別論理ストリーム保持テーブル（３７０）のフォーマットの一例を示す。図８に示すように、送信元別論理ストリーム保持テーブル（３７０）は、センダーＩＤ（２４０２）と、レシーバーＩＤ（２４０４）と、仮割り当てリンク帯域幅（２４０６）と、ストリームＩＤ（２４０８）とから成る。センダーＩＤ（２４０２）は、特定のストリーム中継ノードに対する一意的な識別子である。
【００８６】
レシーバーＩＤ（２４０４）は、ストリーム中継ノードに接続された少なくとも一つの論理ストリームを有するストリーム受信ノードを示す。仮割り当てリンク帯域幅（２４０６）は、ストリーム中継ノードから特定のストリーム受信ノードに利用可能な最大仮割り当て帯域幅を示す。ストリームＩＤ（２４０８）は、特定のストリーム中継ノードとストリーム受信ノード間の接続下で形成された論理ストリームのリストを含む。
【００８７】
帯域幅仮割り当てテーブル（３７２）は、ストリーム中継ノード及びストリーム受信ノードの両方により保持される。これにより、ストリーム中継ノードの仮割り当て帯域幅情報は、論理ストリーム選択のためにストリーム受信ノードへ送信される。図９は、帯域幅仮割り当てテーブルのフォーマットを示す。図９に示すように、帯域幅仮割り当てテーブルは、ストリームＩＤ（２５０２）と特定論理ストリームのための仮割り当て帯域幅（２５０４）情報とから成る。
【００８８】
転送テーブルコンストラクタ（３２８）は、特定ソース向け表示解像度／コンテンツタイプグループに基づき分散型ＯＰＴ（３７４）を構築する。ストリーム発信ノードの転送テーブルコンストラクタ（３２８）は、グループ優先順位を参照し（３５２）、グループベースツリー構築を始動させる。ストリーム受信ノードの転送テーブルコンストラクタ（３２８）は、表示解像度／コンテンツタイプ規則に基づいて、最大仮割り当て帯域幅を有する論理ストリームを選択する（３５０）。
【００８９】
また、転送テーブルコンストラクタ（３２８）は、帯域幅を仮割り当てした（３３２）ストリーム中継ノードの転送テーブルコンストラクタ（３２８）に、論理ストリームの選択結果を通知する（３３０）。ストリーム中継ノードの転送テーブルコンストラクタ（３２８）は、分散型ＯＰＴ（３７４）を更新する（３５４）。
【００９０】
図１０は、分散型ＯＰＴ（３７４）のフォーマットの一例を示す。各分散型ＯＰＴ（３７４）は、グループＩＤ（２６０２）と、経路ＩＤ（２６０４）と、選択ストリームＩＤ（２６０６）と、実際の割り当て帯域幅（２６０８）とを含む。グループＩＤ（２６０２）は、特定ソース向け表示解像度／コンテンツタイプグループに対する一意的な識別子で
ある。
【００９１】
経路ＩＤ（２６０４）は、グループベースツリー内の同じソースから発する経路の分岐を示す。選択ストリームＩＤ（２６０６）は、各経路ＩＤに関連し、選択された論理ストリームのリストを指示する。実際の割り当て帯域幅（２６０８）は、経路内のコンテンツ送信のために割り当てられた最終帯域幅を示す。
【００９２】
転送実行部（３３４）は、コンテンツ送信のために分散型ＯＰＴ（３７４）を利用する。転送実行部（３３４）は、他の通信ノードからコンテンツを受信する（３３８）と、ＯＰＴ上で探索を行う（３５６）。ＯＰＴからの探索結果に基づき、転送実行部（３３４）は、次の指定先を特定し、コンテンツを中継する（３３６）。
【００９３】
表示解像度／コンテンツ規則テーブル（３５８）は、分散型ＯＰＴ（３７４）を構築するために使用される（３４２，３４６，３５０）経験則セットを含む。以下に、基本的規則及び拡張的規則の一部を示す。
【００９４】
規則１：グループベースツリーは、表示解像度／コンテンツタイプベースネットワークのパケット配送のために、ストリーム発信ノードから要求された各特定の表示解像度及びコンテンツタイプに対し構築される。
【００９５】
規則２：形成されたＭ個のグループを有するストリーム発信ノードは、Ｍ個の特定表示解像度／コンテンツタイプ向けストリームを各グループにそれぞれ送信する。
【００９６】
規則３：Ｎ個のストリーム受信ノードから成る各グループは、グループ内に（Ｎ−１）個のリンクを構築する。
【００９７】
規則４：表示解像度及びコンテンツタイプの変更は、変更制御フラグ（ステータス）が、変更要求を受理するために「変更オン」に設定された場合のみ許可される。
【００９８】
規則５：構築された最新のグループベースツリーに基づいて更新された転送経路は、最新のグループベースツリーがグループベース再構築セッションに従って構築された場合のみに参照される。
【００９９】
規則６：ストリーム中継ノードにより配送される各論理ストリームに対する帯域幅は、ストリーム上で配送される表示解像度及びコンテンツタイプに応じて算出される。
【０１００】
規則７：論理ストリームの選択は、最大帯域幅が仮割り当てられた論理ストリームが優先されるものとする。但し、当該規則はユーザ又はアプリケーションの好みに基づき再設定されてもよい。
【０１０１】
規則８：グループの優先順位は、表示解像度がより高く、データレートがより高いコンテンツを配送するグループが、より高い優先順位を有するように交換された表示解像度及びコンテンツタイプに基づいて、決定されるものとする。但し、当該規則はユーザ又はアプリケーションの好みに基づいて再設定されてもよい。
【０１０２】
規則９：特定ソース向け表示解像度／コンテンツタイプグループは、以下の規則に従ってランク付けされる。
【０１０３】
（１）優先順位がより低い表示解像度及びコンテンツタイプを送信するグループから始まる昇順でグループをランク付けする。
【０１０４】
（２）同じ表示解像度及びコンテンツタイプが配送されるグループを、ストリーム受信ノードの数が少ないグループから始まる昇順でランク付けする。
【０１０５】
（３）同数のストリーム受信ノードを有するグループを、ストリーム発信ノードにおけるコンテンツ送信に利用可能な帯域幅が増大する順にランク付けする。但し、同規則はユーザ又はアプリケーションの好みに基づいて再構成されてもよい。
【０１０６】
図１１は、最適知覚ＡＶ品質を実現するための公平な帯域幅割り当て分配に用いる、グループベースツリー構築の主要プロセスフローを例示する。また、図１２は、図１１に示すプロセスを実現するストリーム発信ノード、ストリーム受信ノード、ストリーム中継ノード、ストリーム調整ノード間のメッセージ交換シーケンスを示す。
【０１０７】
図１２に示すように、ストリーム発信ノード（５０４，５０６）、ストリーム受信ノード（５０６，５０８）、ストリーム中継ノード（５０６，５０８）、ストリーム調整ノード（５０２）間で、必要な情報が交換される。このため、以下に示すように、様々な通信メッセージが定義される。
【０１０８】
（１）表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）
（２）特定ソース向け表示解像度／コンテンツタイプ通知メッセージ（５１４）
（３）分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）
（４）重み通知メッセージ（５２０，５２２，５２４）
（５）グループ優先順位通知メッセージ（５２６，５２８，５３０）
（６）特定ソース向けグループリスト通知メッセージ（５３２，５３４）
（７）仮割り当て帯域幅通知メッセージ（５３６，５３８，５４０）
（８）グループベースツリー構築呼出し選択メッセージ（５４２，５４４）
（９）グループベースツリー構築ストリーム選択メッセージ（５４６，５４８，５５０，５５２，５５４）
（１０）グループベースツリー構築メッセージ（５５６）
【０１０９】
図１３は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）のフォーマットの一例を示す。図１３に示すように、上記メッセージ（５１０，５１２）は、ストリーム受信ノードに一意的な識別子であるレシーバーＩＤ（６０２）と、通信ノードの表示解像度（６０４）と、コンテンツタイプ（６０６）とから成る。
【０１１０】
図１４は、特定ソース向け表示解像度／コンテンツタイプ通知メッセージ（５１４）のフォーマットの一例を示す。図１４に示すように、上記メッセージ（５１４）は、ストリーム発信ノードに一意的な識別子であるソースＩＤ（７０２）と、ＡＬＭセッション内のデータを交換するためにストリーム発信ノードにおいて利用可能な帯域幅の合計を示す帯域幅情報（７０４）と、表示解像度のコンパイルリスト（７０６，７１２）と、コンテンツタイプ（７０８，７１４）と、上記表示解像度及びコンテンツタイプを要求するストリーム受信ノード数（７１０，７１６）とから成る。
【０１１１】
図１５は、分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）のフォーマットの一例を示す。図１５に示すように、上記メッセージ（５１６，５１８）は、ＡＬＭセッションＩＤ（９０２）とステータス（９０４）とから成る。表示解像度及びコンテンツタイプのさらなる変更要求は、ステータス（９０４）が「変更オフ」に設定された場合には許可されず、ステータス（９０４）が「変更オン」に設定された場合に許可される。
【０１１２】
図１６は、重み通知メッセージ（５２０，５２２，５２４）のフォーマットの一例を示す。図１６に示すように、上記メッセージ（５２０，５２２，５２４）は、コンテンツグループＩＤ（１００２）と、表示解像度（１００４）と、コンテンツタイプ（１００６）と、重みフィールド（１００８）とから成る。
【０１１３】
コンテンツグループＩＤ（１００２）は、特定の表示解像度／コンテンツタイプグループに一意的な識別子を示す。表示解像度（１００４）は、グループの表示解像度を表す。コンテンツタイプ（１００６）は、グループのコンテンツタイプを表す。重みフィールド（１００８）は、この特定のコンテンツグループの他のコンテンツグループに対する優先順位を示す。
【０１１４】
図１７は、グループ優先順位通知メッセージ（５２６，５２８，５３０）のメッセージ構造を定義する。図１７に示すように、上記メッセージ（５２６，５２８，５３０）は、ソースＩＤ（１２０２）と、グループＩＤ（１２０４，１２０８）と、優先順位（１２０６，１２１０）とから成る。ソースＩＤ（１２０２）は、ストリーム発信ノードに一意的な識別子を示す。グループＩＤ（１２０４，１２０８）は、特定ソース向け表示解像度／コンテンツタイプグループを示す。優先順位（１２０６，１２１０）は、上記グループに対するグループベースツリー構築の順番を示す。
【０１１５】
図１８は、特定ソース向けグループリスト通知メッセージ（５３２，５３４）のメッセージ構造を定義する。図１８に示すように、上記メッセージ（５３２，５３４）は、ソースＩＤ（１３０２）と、グループＩＤ（１３０４）と、レシーバーＩＤを含むグループリスト情報（１３０６）とから成る。また、接続情報は、端末間で複製しリレーしながらパケットを配送する際に用いるＩＰアドレス及びポート情報を含む。
【０１１６】
図１９は、仮割り当て帯域幅通知メッセージ（５３６，５３８，５４０）のフォーマットの一例を示す。図１９に示すように、上記メッセージ（５３６，５３８，５４０）は、特定のストリーム発信ノード又はストリーム中継ノードに一意的な識別子であるセンダーＩＤ（１４０２）と、論理ストリームが所属するグループを指示するグループＩＤ（１４０４、１４１０）と、特定論理ストリームに一意的な識別子であるストリームＩＤ（１４０６、１４１２）と、上記コンテンツを配送するために利用可能な最大帯域幅を示す仮割り当て帯域幅（１４０８、１４１４）と、から成る。
【０１１７】
図２０は、グループベースツリー構築呼出し選択メッセージ（５４２，５４４）のフォーマットの一例を示す。図２０に示すように、上記メッセージ（５４２，５４４）は、グループＩＤ（１６０２）と、グループベースツリー構築の「開始」／「終了」／「停止」状態を指示するための条件を指示するステータス（１６０４）と、から成る。
【０１１８】
図２１は、グループベースツリー構築ストリーム選択メッセージ（５４６，５４８，５５０，５５２，５５４）のフォーマットの一例を示す。図２１に示すように、上記メッセージ（５４６，５４８，５５０，５５２，５５４）は、グループＩＤ（１７０２）と、選択ストリームＩＤ（１７０４）と、経路ＩＤ（１７０６）と、ＡＶコンテンツ等を配送するために割り当てられる帯域幅を指示する実際の帯域幅（１７０８）と、グループベースツリー構築のそれぞれの動作、「選択」／「削除」／「再選択」を指示するステータス（１７１０）と、から成る。
【０１１９】
図２２は、グループベースツリー構築メッセージ（５５６）のフォーマットの一例を示す。図２２に示すように、上記メッセージ（５５６）は、現在のグループＩＤ（１８０２）と、次のグループＩＤ（１８０４）とから成る。現在のグループＩＤ（１８０２）は、グループベースツリーを構築した特定ソース向け表示解像度／コンテンツタイプグループ
を示す。次のグループＩＤ（１８０４）は、グループベースツリーを構築するであろう、次の特定ソース向け表示解像度／コンテンツタイプグループを示す。
【０１２０】
以下では、図１１の主要プロセス及び図１２のプロセスの詳細について、図２３、図２４、図２７、及び、図２８を用いて説明する。
【０１２１】
まず、各ストリーム受信ノードにより要求された表示解像度及びコンテンツタイプは、表示解像度／コンテンツタイプ通知メッセージを介して通知する。具体的には、各ストリーム受信ノード（５０６，５０８）は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）を特定のストリーム発信ノード（５０４）に通知する。該通知メッセージを受信すると、ストリーム発信ノード（５０４）は、要求された特定ソース向け表示解像度／コンテンツタイプグループが生成されているかどうかを識別する（ＳＴ４０２）。
【０１２２】
表示解像度及びコンテンツタイプの新しいセットが要求される場合、特定ソース向け表示解像度／コンテンツタイプグループの新しいエントリーがグループテーブルに追加される。一方、新しいセットの要求がない場合、ストリーム受信ノードのＩＤが、類似の要求表示解像度及びコンテンツタイプから成るグループテーブルの、既存のエントリーに追加される。
【０１２３】
これにより、ストリーム発信ノードは、特定ソース向け表示解像度／コンテンツタイプグループを形成する（ＳＴ４０４）。全てのノードは、ノードの表示解像度及びコンテンツタイプに基づき、特定ソース向け表示解像度／コンテンツタイプグループに分類される（ＳＴ４０６）。
【０１２４】
図２３は、ストリーム調整ノード（５０２）の動作を説明するためのフロー図であり、分散型最適経路テーブル構築の開始を通知する詳細プロセスフローを示す。
【０１２５】
全ての参加ノードから表示解像度／コンテンツタイプ通知メッセージを受信すると、各ストリーム発信ノードは、特定ソース向け表示解像度／コンテンツタイプ通知メッセージをストリーム調整ノード（５０２）に送信する（５１４）。全てのストリーム発信ノードから特定ソース向け表示解像度／コンテンツタイプ通知メッセージを受信すると（ＳＴ８０２）、ストリーム調整ノード（５０２）は、分散型最適経路テーブル構築の開始の通知を指示する（５１６，５１８）。
【０１２６】
「変更オフ」に設定されたＡＬＭセッションＩＤ（９０２）とステータス（９０４）とから成る、分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）は、全ての参加ノードへ配送される（ＳＴ８０４）。なお、「変更オフ」は、表示解像度及びコンテンツタイプの更なる変更要求が許可されないことを示す。このメッセージ（５１６，５１８）が送信されると、その後の全ての表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）は、次のように処理される。つまり、その後の全ての表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）は、次の分散型最適経路テーブル構築ステータスメッセージ（５１６，５１８）を受信するまで処理されずに破棄される（ＳＴ８０６）。
【０１２７】
これにより、次にネットワーク経路内の帯域幅仮割り当てに使用される表示解像度／コンテンツタイプグループの構築が容易になる。このように動作することにより、同時の複数の要求に基づいて同時に分散方経路テーブル構築が行われることがなくなる。この結果、形成された表示解像度／コンテンツタイプグループの完全性と、要求された表示解像度及びコンテンツタイプに基づく帯域幅割り当ての一貫性とが保証される。
【０１２８】
例えば、図２において、グループ（２０６）、次にグループ（２０２）、次にグループ（２０４）の順に、グループベースツリーを構築すると仮定する。グループ（２０２）に対するグループベースツリーの構築中、グループ（２０６）の通信ノード＃２が、グループ（２０４）の通信ノード＃４からのコンテンツに対し、臨時的に表示解像度変更（ＣＩＦ→４ＣＩＦ）を呼び出すことができる。
【０１２９】
グループ（２０２）のグループベースツリー構築プロセスの最中に、通信ノード＃２からの表示解像度変更要求を受諾することは、形成されたグループの完全性を破壊する。すなわち、通信ノード＃２は、グループ（２０２）と接続するために取り残されるため、グループ（２０６）のグループベースツリーは、無効となる。この結果、グループ（２０６）のグループベースツリー構築時に割り当てられた帯域幅は無効となるので、臨時的に選択された表示解像度の優先順位に基づいて割り当てられた帯域幅の分配精度に影響を与える。
【０１３０】
収集された全ての表示解像度／コンテンツタイプグループの情報を用いて、ストリーム調整ノード（５０２）は、各表示解像度／コンテンツタイプグループの重みを定義することができる（ＳＴ４０８）。定義された重みは、さらに、表示解像度及びコンテンツタイプ（粘度）のリストを順序付けられた優先順位のセットにマッピングする。なお、ストリーム調整ノード（５０２）は、表示解像度及びコンテンツタイプに対する相対的な重みを導出するために、異なる規則を採用してもよい。
【０１３１】
本実施の形態では、配送される最小の表示解像度に関し、フレーム毎に必要とされるビットレートに従って表示解像度の重みを定義する。この場合、重みの割り当てについては、ＣＩＦ、４ＣＩＦ、ＨＤ７２０ｐなどに対する相対比較の基準としてＱＣＩＦが選択される。
【０１３２】
一方、コンテンツタイプの重みは、配送される最小のコンテンツタイプに関する送信に必要な最小帯域幅に従って定義される。この場合、重みの割り当てについては、ビデオのみ、オーディオ及びビデオ、そして文書に対する相対比較の基準としてオーディオのみのコンテンツタイプが選択される。
【０１３３】
各表示解像度及びコンテンツタイプに対し定義された重みは、特定のコンテンツを配送する各グループの優先順位を導出し、続いて各ストリームに対する帯域幅割り当てに影響を与えるための基準として使用される。この情報は、さらに、重み通知メッセージ（５２０，５２２，５２４）を介し全ての参加ノードに配送される。
【０１３４】
特定ソース向け表示解像度／コンテンツタイプ情報のリストが与えられると、ストリーム調整ノード（５０２）は、優先順位の順に配列されるリストにこれらのグループをランク付けし配列する（ＳＴ４１０）。この重要なステップは、各特定ソース向けグループ内のストリームに割り当てられる帯域幅の大きさを決定し、さらにその知覚ＡＶ品質に影響を与える。
【０１３５】
図２４には、特定ソース向け表示解像度／コンテンツタイプグループのランク付けのための詳細プロセスフローを例示する。まず、全てのストリーム発信ノードから受信された特定ソース向け表示解像度／コンテンツタイプグループが参照される（ＳＴ１１０２）。これらグループは、各グループにより送信された表示解像度及びコンテンツタイプの重みに従ってランク付けされる（ＳＴ１１０４）。本実施の形態では、グループはより低い重みを有するグループから始まる昇順でランク付けされる。
【０１３６】
次に、同じ重みの複数のグループは、グループに登録されたストリーム受信ノードの数
の昇順に基づいて再度ランク付けされる（ＳＴ１１０６）。完全なグループベースツリーを形成するために、優先順位は、より少ないノードを有するグループほど、選択すべき経路の選択肢となる可能性が低いというコンセプトに基づいて定義される。
【０１３７】
ストリーム受信ノード数が同じ複数のグループは、さらに、ストリーム発信ノードから入手可能な帯域幅に基づいて、帯域幅の大きさに従ってランク付けされる（ＳＴ１１０８）。優先順位は、利用可能な帯域幅がより小さいストリーム発信ノードほど、他のノードのコンテンツを中継する前に、まず自ノードからコンテンツを配送するために、より高い優先順位が与えられるという原理に基づいて定義される。
【０１３８】
最後に、各特定ソース向け表示解像度／コンテンツタイプグループには、それらのランクに基づいて、グループベースツリー構築におけるそれらの優先順位を示すインデックスが割り当てられる。このランクキングメカニズムは、グループベースツリー構築中、より低い表示解像度／コンテンツタイプグループに対しは、最小ではあるが十分な帯域幅を重みに基づいて割り当てる。一方、当該グループに対し選択されなかった論理ストリームは、より高い表示解像度／コンテンツタイプグループに解放され再配分される。このため、再配分により追加された帯域幅は、さらに、より高い表示解像度／コンテンツタイプグループに、より多くの帯域幅割り当てをもたらし、より良好な知覚ＡＶ品質が期待される。
【０１３９】
各グループにランクを割り当てると、ストリーム調整ノード（５０２）は、全てのストリーム発信ノード（５０４，５０６，５０８）にグループ優先順位通知メッセージを送信する（５２６，５２８，５３０）。このメッセージを受信すると、ストリーム発信ノードは、グループベースツリー構築を順に指示するためのさらなる参照用にグループ優先順位テーブル（３６２）を更新する。さらに、各ストリーム発信ノードは、グループ内の全てのストリーム受信ノード（５０６，５０８）にグループ情報、すなわち、特定ソース向けグループリスト通知メッセージ（５３２，５３４）を配送する。
【０１４０】
ストリーム受信ノード（５０６，５０８）は、表示解像度／コンテンツタイプ通知メッセージ（５１０，５１２）を先に送信した全てのストリーム発信ノード（５０４）から、特定ソース向けグループリスト通知メッセージ（５３２，５３４）を受信する。次に、ストリーム受信ノード（５０６，５０８）は、論理ストリームを構築し（ＳＴ４１２）、帯域幅仮割り当てを行う（ＳＴ４１４）。
【０１４１】
図２５は、論理ストリーム構築プロセスフローを示す。グループ内では、各ストリーム受信ノードは、コンテンツを同一グループ内の次のストリーム受信ノードへさらに中継する能力を有するので、全てのストリーム受信ノードは、この状況下ではストリーム中継ノードと見なされる。
【０１４２】
一方、ストリーム発信ノードは、コンテンツのソースであるので、ストリーム発信ノードは、ストリーム中継ノードと同様に、論理ストリームを構築するとともに、帯域幅仮割り当てを行う。ストリーム発信ノード及び各ストリーム中継ノード（別名、ストリーム受信ノード）は、グループリスト情報に基づき、全てのストリーム受信ノードに対する論理ストリームを構築する。
【０１４３】
論理ストリームの構築中、ストリーム発信ノード又はストリーム中継ノード自身は、デフォルト設定では、論理ストリームにおける「センダーノード」として選択される（ＳＴ２７０２）。
【０１４４】
次に、論理ストリームにおける「レシーバーノード」として、ストリーム受信ノードが、グループリストから選択される（ＳＴ２７０４）。２つのノードの論理ストリーム情報
は、ストリームテーブル（３６８）に格納され、さらにグループテーブル（３６４）及び送信元別論理ストリーム保持テーブル（３７０）内において更新される（ＳＴ２７０６）。
【０１４５】
これに続き、特定のストリーム発信ノードとストリーム中継ノードにおいて、仮割り当て帯域幅が、全ての論理経路において見積もられる（推定される）。図２６は、帯域幅仮割り当てプロセスフローを示す。
【０１４６】
本実施の形態では、ストリーム受信ノードにより要求された表示解像度及びコンテンツタイプに従って、重み付けされた比率に基づく動的な帯域幅仮割り当てが採用される。各論理ストリームは、配送される表示解像度及びコンテンツタイプに従って重みが割り当てられる（ＳＴ２８０２）。ストリーム発信ノード及びストリーム中継ノード内には、異なる表示解像度及びコンテンツタイプを送信又は中継する複数の論理ストリームが存在し得る。したがって、全ての論理ストリームにおける表示解像度の平均重みとコンテンツタイプの平均重みが計算される（ＳＴ２８０４）。
【０１４７】
次に、論理ストリームは、そのストリーム受信ノードの表示解像度及びコンテンツタイプに基づいてさらにグループに分割される。各グループ内の全ての論理ストリームの表示解像度の平均重み及びコンテンツタイプの平均重みが計算される。
【０１４８】
次に、各ストリーム受信ノードに与えられる帯域幅の割合は、先に計算された表示解像度の平均重み及びコンテンツタイプの平均重みを基準重みで除算し、上記与えられた帯域幅を乗算したものとして推定される（ＳＴ２８０６）。
【０１４９】
ストリーム受信ノードに与えられる帯域幅の割合は、さらに、ストリーム受信ノードに向けてコンテンツを送信する論理ストリームにより共有される。次に、論理ストリーム毎に与えられた帯域幅の割合は、論理ストリームの表示解像度重み及びコンテンツタイプ重みを基準重みで割り、上記ストリーム受信ノードに与えられた帯域幅に掛けることにより推定される（ＳＴ２８０８）。
【０１５０】
仮割り当て帯域幅通知メッセージは、ストリーム発信ノード及びストリーム中継ノードから全てのストリーム受信ノードに送信される（５３６，５３８，５４０）。メッセージを受信すると、論理ストリーム毎の仮割り当て帯域幅情報は、さらに、ストリーム受信ノード内の帯域幅仮割り当てテーブル（３７２）において更新される。
【０１５１】
帯域幅仮割り当てプロセスが完了すると、グループベースツリー構築が、指示される。具体的には、各特定ソース向け表示解像度／コンテンツタイプグループに対し定義されたグループ優先順位に基づいて、グループベースツリー構築が、優先順位リスト内で第１位にランク付けられたストリーム発信ノードにより自動的に指示される（ＳＴ４１６）。
【０１５２】
図２７は、グループベースツリー構築の詳細プロセスフローを例示する。ストリーム発信ノードは、優先順位の順番に基づいて、グループ優先順位テーブルを参照し、特定ソース向け表示解像度／コンテンツタイプグループを選択する（ＳＴ１５０２）。グループベースツリー構築呼出し選択メッセージ（５４２，５４４）は、ストリーム発信ノードにより、選択されたグループ内の全てのストリーム受信ノードへ送信される。
【０１５３】
グループベースツリー構築呼出し選択メッセージのステータス（１６０４）フィールドは、グループベースツリー構築の開始を指示する「開始」に設定される。グループＩＤ（１６０２）に基づいて、このグループに該当する関連論理ストリームとその仮割り当て帯域幅は、ストリーム受信ノードにおけるグループテーブル（３６４）及び帯域幅仮割り当
てテーブル（３７２）から識別される。ストリーム受信ノードは、さらに並行して、最大割り当て帯域幅を有する論理ストリームを選択する（ＳＴ１５０４）。
【０１５４】
次に、各ストリーム受信ノードは、「選択」に設定されたステータス（１６０４）フィールドを有するグループベースツリー構築ストリーム選択メッセージ（５４８，５５０）を、送信する。そのメッセージ（５４８，５５０）は、選択された論理ストリームのストリーム発信ノード及びグループのストリーム中継ノードへ送信される（５４６，５４８，ＳＴ１５０６，ＳＴ１５１８）。
【０１５５】
ある状況では、グループ内の通信ノードが、グループベースツリーの構築中にＡＬＭセッションを離れる場合がある。このときは、グループ内の通信ノードは、「停止」に設定されたステータス（１６０４）フィールドを有する別のグループベースツリー構築呼出し選択メッセージ（５４２，５４４）を、全てのアクティブ通信ノードに通知する。グループベースツリー構築プロセスは、停止され再開される。
【０１５６】
あるいは、グループベースツリー構築が完了すると、ストリーム発信ノードは、次の処理を行う。ストリーム発信ノードは、グループ内の全ての通信ノードに通知するために、「終了」に設定されたステータス（１６０４）フィールドを有するグループベースツリー構築呼出し選択メッセージ（５４２，５４４）を随時送信する。
【０１５７】
ストリーム中継ノードは、「選択」に設定されたステータス（１７１０）を有するグループベースツリー構築ストリーム選択メッセージ（５４８，５５０）を、受信する（ＳＴ１５２０：ＹＥＳ）。次に、ストリーム中継ノードは、ストリーム受信ノード情報を分散型最適経路テーブル（３７４）に格納する（ＳＴ１５２２）。一方、ステータス（１７１０）が「選択」に設定されていない場合には（ＳＴ１５２０：ＮＯ）、グループベースツリー構築を終了する。
【０１５８】
ストリーム発信ノードでは、グループの全てのストリーム受信ノードからグループベースツリー構築ストリーム選択メッセージを、受信したか否かが判定される（ＳＴ１５０８）。グループの全てのストリーム受信ノードからグループベースツリー構築ストリーム選択メッセージを、受信していない場合には（ＳＴ１５０８：ＮＯ）、グループベースツリー構築を終了する。
【０１５９】
一方、グループベースツリー構築ストリーム選択メッセージを受信した場合（ＳＴ１５０８：ＹＥＳ）、少なくとも一つのストリーム受信ノードが該ストリーム発信ノード自身に接続されているかどうかが検査される（ＳＴ１５１０）。このステップは、コンテンツソースへの接続を有しない孤立したグループベースツリー構築を回避するために重要である。
【０１６０】
少なくとも一つのストリーム受信ノードが接続されている場合（ＳＴ１５１０：ＹＥＳ）、ストリーム発信ノードは、選択された論理ストリーム内にループ経路又は孤立経路が存在するかどうかを検査する（ＳＴ１５１４）。一方、いかなるストリーム受信ノードが接続されていない場合（ＳＴ１５１０：ＮＯ）、ストリーム発信ノードは、最大割り当て帯域幅を有するストリーム受信ノードに向けた論理ストリームの選択を指示する（ＳＴ１５１２）。
【０１６１】
次に、ストリーム発信ノードは、選択された論理ストリーム内にループ経路又は孤立経路が存在するかどうかを検査する（ＳＴ１５１４）。存在する場合（ＳＴ１５１４：ＹＥＳ）、グループベースツリー構築ストリーム選択メッセージは、グループＩＤが特定ソース向け表示解像度／コンテンツタイプグループＩＤに設定される。また、ステータスが「
再選択」に設定されたそれぞれのストリーム受信ノードへ送信される（５５４）。ストリーム受信ノードは、次の最大割り当て帯域幅を有する論理ストリームを選択するために指示される（ＳＴ１５１６）。
【０１６２】
新しく選択された論理ストリームのストリーム発信ノードとストリーム中継ノードとは、ステータスが「選択」に設定されたグループベースツリー構築ストリーム選択メッセージにより通知される（５４６）。それぞれのストリーム受信ノードによりすでに選択されたストリーム中継ノードは、グループＩＤが特定ソース向け表示解像度及びコンテンツタイプに設定される。また、ストリーム中継ノードは、ステータスが「削除」に設定されたストリーム発信ノードからグループベースツリー構築ストリーム選択メッセージを、受信する（５５２）。
【０１６３】
ループ経路又は孤立経路が存在しない場合（ＳＴ１５１４：ＮＯ）、ストリーム発信ノードは、仮割り当てられていた帯域幅を確定するように指示をする。具体的には、ストリーム発信ノードは、推定される実際の帯域幅を論理ストリーム間で仮割り当てされる最小帯域幅に設定するように、当該グループ下の全てのストリーム中継ノードを指示する。選択された論理ストリームにより形成された経路に基づき、経路ＩＤは、グループベースツリー内のストリーム発信ノードから発する各分岐に割り当てられる。
【０１６４】
ストリーム発信ノードは、グループＩＤ（１７０２）が特定ソース向け表示解像度／コンテンツタイプグループＩＤに設定され、ストリームＩＤが選択された論理ストリームのそれぞれのストリームＩＤに設定される（１７０４）。次に、ストリーム発信ノードは、経路ＩＤ（１７０６）が、割り当てられたＩＤに設定され、実際の帯域幅（１７０８）が割り当てられた最終の帯域幅に設定される。次に、ストリーム発信ノードは、ステータス（１７１０）が「最終」に設定された最終のグループベースツリー構築ストリーム選択メッセージ（５５２，５５４）を、グループ内の全てのストリーム中継ノードへ送信する（ＳＴ１５１８）。
【０１６５】
ストリーム発信ノードが送信するグループベースツリー構築ストリーム選択メッセージ中のステータス（１６０４）は、受信情報を有するストリーム中継ノードにおいて最終的に点検される（ＳＴ１５２０）。ステータス（１６０４）が「選択」を示す場合（ＳＴ１５２０：ＹＥＳ）、ストリーム中継ノードは、ストリーム受信ノード情報をストリーム中継ノードの分散型最適経路テーブル（３７４）に格納する（ＳＴ１５２２）。さらに、ストリーム中継ノードは、各選択論理ストリームに帯域幅を仮割り当てる（ＳＴ１５２４）。ストリーム中継ノードの分散型最適経路テーブル（３７４）は、それぞれの更新通知により更新される（ＳＴ１５２６）。
【０１６６】
最終のグループベースツリー構築ストリーム選択メッセージを受信すると、各ストリーム中継ノードは、全ての論理ストリームが構築されたかどうかを検査する（ＳＴ４１８）。論理ストリームが依然として存在する場合（ＳＴ４１８：ＮＯ）、グループ内の各ストリーム中継ノードは、未選択の論理ストリームを削除する。次に、グループ内の各ストリーム中継ノードは、未処理の特定ソース向け表示解像度／コンテンツタイプグループの論理ストリームへ残りの帯域幅を、再配分する（ＳＴ４２０）ために指示される。先に説明したように、帯域幅仮割り当てプロセス（ＳＴ４１４）が再度実行される。
【０１６７】
当該グループベースツリー構築を完了したストリーム発信ノードは、次のグループのストリーム発信ノードに対し、次の特定ソース向け表示解像度／コンテンツタイプグループベースのツリー構築を指示する。具体的には、ストリーム発信ノードは、図２２に示すようなグループベースツリー構築メッセージを送信する（５５６）。図２２に示すグループベースツリー構築メッセージにおいて、現在のグループＩＤ（１８０２）は、グループ優
先順位テーブルを参照し、グループベースツリー構築を完了した現在のグループのグループＩＤに設定される。次のグループＩＤ（１８０４）は、優先順位リスト内のすぐ後の特定ソース向け表示解像度／コンテンツタイプグループのグループＩＤに設定される。
【０１６８】
図２８は、分散型最適経路テーブル構築の完了を通知する詳細プロセスフローを示す。
【０１６９】
分散型最適経路テーブル構築が完了すると（ＳＴ４１８：ＹＥＳ，ＳＴ１９０２）、優先順位リストの最後のグループのストリーム発信ノードが、分散型最適経路テーブル構築の終了の通知を指示する（ＳＴ１９０４）。ＡＬＭセッションＩＤ（９０２）と、「変更オン」に設定されたステータス（９０４）から成る分散型最適経路テーブル構築ステータスメッセージ（図１５に示す）は、全ての参加ノード（５５８，５６０）へ配送される。なお、「変更オン」は、表示解像度及びコンテンツタイプの更なる変更要求が許可されることを示す。
【０１７０】
ストリーム中継ノード、ストリーム発信ノードが、このメッセージを送信すると、その後の全ての表示解像度／コンテンツタイプ通知メッセージは、表示品質／コンテンツタイプに従って、受諾される（ＳＴ１９０６）。その後、ストリーム発信ノードが分散型最適経路テーブル構築の次のラウンドを指示し（ＳＴ１９０８）、公平な帯域幅割り当てを識別する。一方、最適経路テーブル内に新しく構築された転送経路は、コンテンツ送信のために以降参照される。
【０１７１】
以上のように、本実施の形態によれば、該通信経路構築装置は、複数の通信ノードにわたる分散型最適経路テーブルの構築を制御する転送テーブル構築コントローラ（３１６）と、通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタ（３０８）と、通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割り当て器（３２２）と、特定ソース向けグループの優先順位に基づいて、分散型最適経路テーブルを構築する転送テーブルコンストラクタ（３２８）と、を備えるようにした。
【０１７２】
アプリケーションやユーザ環境設定で設定された各通信ノードの表示解像度及びコンテンツタイプに基づき、ストリーム受信ノードは、複数の特定ソース向け表示解像度／コンテンツタイプグループ（特定ソース向けグループ）に分類する。次に、ストリーム受信ノードは、各表示解像度及びコンテンツタイプの優先順位に基づいて、当該グループに優先順序が付けられる。さらに、当該優先順位に基づいて、特定ソース向け表示解像度／コンテンツタイプグループのグループベースツリーが構築される。
【０１７３】
また、特定ソース向けグループの優先順位に基づいて、各特定ソース向けグループのグループベースツリー構築を行うことができるので、総当り方法と比較して、劇的に少ない計算ステップでツリーの構築を終えることができる。また、Ｎ−ツリー構築を分散して行うことができるので、特定の通信ノードにのみ負荷がかかるのを回避することができるようになる。このとき、ストリーム発信ノードとストリーム受信ノード間のネットワーク経路に利用可能な最大帯域幅を割り当てることにより、良好なＡＶ品質をもたらすことができる。
【０１７４】
なお、我々の評価実験では、１２ノードのＮ−ツリー構築に要する時間は、一般的なＣＰＵで５０ｍｓ以下となり実用化可能な計算時間でＮ−ツリーが構築できることを確認している。
【０１７５】
また、本実施の形態では、各グループベースツリーの構築後、該グループベースツリー
内の未選択の候補経路は削除され、削除された候補ネットワーク経路の未使用推定帯域幅を優先順位に基づいて他の候補ネットワーク経路へ再配分する。これにより、本実施の形態は、帯域幅仮割り当てを再指示することにより、帯域利用効率を向上することができる。
【０１７６】
また、表示解像度及びコンテンツタイプを、例えば、ユーザ主導により切り替えるような場合でも、本実施の形態によれば、新たに要求された表示解像度及びコンテンツタイプに応じて、特定ソース向けグループを再構築する。これにより、本実施の形態では、最適な帯域幅割り当てを行うことができるため、要求された表示解像度とコンテンツタイプに基づき割り当てられる帯域幅を適応的に変更することができる。これにより、本実施の形態では、ユーザが要求する表示解像度及びコンテンツタイプに応じつつ、良好な知覚ＡＶ品質をもたらすことができる。
【０１７７】
そのため、例えば、多数共同ＡＬＭテレビ会議セッション内において、参加者が、自身の多画面分割レイアウトを構成しカスタマイズするような場合においても、良好な知覚ＡＶ品質をもたらすことができる。
【０１７８】
また、割り当てられた帯域幅に従って、符号化パラメータ（すなわち符号化ビットレート、画像解像度、フレーム率）を、調整することにより、ＡＶ品質をさらに向上させることができる。
【０１７９】
本発明において示される通信経路構築装置及びＮ−ツリー構築方法は、単一装置内に物理的に一緒に配置される必要はないが、論理的に結合されるとモジュールを構成し、モジュールの明示された目的を実現する集積回路又は装置セット内に格納された、非結合の複数又は結合された単一の製品コードを含むことができる。
【０１８０】
２００８年６月１９日出願の特願２００８−１６０９１６に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【０１８１】
本発明に係る通信経路構築装置及びＮ−ツリー構築方法は、ＡＬＭアプリケーションにおいて、公平な帯域幅割り当てを保証しつつ、良好な知覚ＡＶ品質をもたらすことができ、ＡＬＭの最適経路構築などに有用である。
【符号の説明】
【０１８２】
１０２，１０４，１０６，１０８，２１４，２１６，２１８，２２０  通信ノード
１１０  ネットワーク
２０２，２０４，２０６  グループ
３１６  転送テーブル構築コントローラ
３０８  グループコンストラクタ
３２２  帯域幅仮割り当て器
３２８  転送テーブルコンストラクタ
３３４  転送実行部
３４０  表示解像度／コンテンツタイプトリガモニタ
３５８  表示解像度／コンテンツ規則テーブル
３６０  コンテンツグループテーブル
３６２  グループ優先順位テーブル
３６４  グループテーブル
３６８  ストリームテーブル
３７０  送信元別論理ストリーム保持テーブル
３７２  帯域幅仮割り当てテーブル
３７４  分散型最適経路テーブル
３７６  メディアアプリケーション
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の通信ノードにわたる分散型最適経路テーブルの構築の開始または終了を制御する転送テーブル構築コントローラと、
通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるグループコンストラクタと、
通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てする帯域幅仮割当器と、
前記特定ソース向けグループの優先順位に基づいて、前記分散型最適経路テーブルを構築する転送テーブルコンストラクタと、
を具備する通信経路構築装置。
【請求項２】
前記転送テーブル構築コントローラは、
分散型最適経路テーブル構築ステータスメッセージを送信することにより、前記分散型最適経路テーブルの構築開始又は構築終了を指示する、
請求項１に記載の通信経路構築装置。
【請求項３】
前記転送テーブル構築コントローラは、
特定ソース向け表示解像度／コンテンツタイプ通知メッセージを受信し、
前記分散型最適経路テーブルの構築開始を指示する、
請求項２に記載の通信経路構築装置。
【請求項４】
前記転送テーブル構築コントローラは、
前記分散型最適経路テーブルの完全な構築の終了を識別し、
前記分散型最適経路テーブルの構築終了を通知し、
構築された前記分散型最適経路テーブルの使用を通知した後、
前記分散型最適経路テーブルの構築開始を指示する、
請求項３に記載の通信経路構築装置。
【請求項５】
前記分散型最適経路テーブル構築ステータスメッセージは、
通信セッションに対する一意的な識別子を表すセッションＩＤフィールドと、
前記分散型最適経路テーブル構築の開始又は終了を指示するステータスフィールドと、を含む、
請求項２に記載の通信経路構築装置。
【請求項６】
前記グループコンストラクタは、
通信ノードの表示解像度及びコンテンツタイプを受信し、
通信ノードの表示解像度及びコンテンツタイプに基づいて、前記特定ソース向けグループを形成し、
前記特定ソース向けグループ内のグループ情報を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項７】
前記グループコンストラクタは、
通信ノードの表示解像度及びコンテンツタイプに基づいて、前記特定ソース向けグループを形成し、各前記特定ソース向けグループに重みを割り当て、
前記特定ソース向けグループの重みに応じて、前記特定ソース向けグループに優先順位を付け、
グループ優先順位通知メッセージを介して、前記特定ソース向けグループの優先順位を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項８】
前記グループコンストラクタは、
前記特定ソース向けグループの重みに基づいて、前記特定ソース向けグループをランク付け、
前記特定ソース向けグループ内のストリーム受信ノードの数に基づき前記特定ソース向けグループをランク付け、
ストリーム発信ノードが利用可能な仮割り当て帯域幅に基づき、前記特定ソース向けグループをランク付けることにより、
前記特定ソース向けグループに優先順序を付ける、
請求項７に記載の通信経路構築装置。
【請求項９】
前記グループ優先順位通知メッセージは、
ストリーム発信ノードの一意的な識別子を表すソースＩＤフィールドと、
前記特定ソース向けグループの一意的な識別子を表すグループＩＤフィールドと、
前記分散型最適経路テーブルを構築する際の前記特定ソース向けグループの順位を示す優先順位フィールドと、を含む、
請求項７に記載の通信経路構築装置。
【請求項１０】
前記帯域幅仮割当器は、
同じ前記特定ソース向けグループ内の通信ノード間の論理ストリームを構築し、
前記特定ソース向けグループ内の論理ストリームに割り当てられる帯域幅を見積もり、仮割り当て帯域幅通知メッセージを介して当該帯域幅を通信ノードに通知する、
請求項１に記載の通信経路構築装置。
【請求項１１】
前記帯域幅仮割当器は、
表示解像度及びコンテンツタイプに基づき、各論理ストリームに表示解像度及びコンテンツタイプ重みを割り当て、
前記表示解像度及びコンテンツタイプ重みに基づき、各論理ストリームの仮割り当て帯域幅を計算する、
請求項１０に記載の通信経路構築装置。
【請求項１２】
前記仮割り当て帯域幅通知メッセージは、
ストリーム中継ノードの一意的な識別子を表すセンダーＩＤフィールドと、
前記特定ソース向けグループの一意的な識別子を表すグループＩＤフィールドと、
特定ソース向けの表示解像度及びコンテンツタイプを送信する、ストリーム中継ノードからストリーム受信ノードへの論理ストリームの一意的な識別子を表すストリームＩＤフィールドと、
前記論理ストリームに利用可能な最大仮割り当て帯域幅を示す仮割り当て帯域幅スロットフィールドと、を更に含む、
請求項１０に記載の通信経路構築装置。
【請求項１３】
前記転送テーブルコンストラクタは、
グループベースツリー構築メッセージを介し、前記特定ソース向けグループの優先順位に基づいて、前記特定ソース向けグループのグループベースツリー構築を指示し、
前記特定ソース向けグループのグループベースツリー構築を行い、
前記分散型最適経路テーブルを構築する、
請求項１に記載の通信経路構築装置。
【請求項１４】
前記転送テーブルコンストラクタは、
前記特定ソース向けグループ内の最大仮割り当て帯域幅を有する論理ストリームを選択するために、グループベースツリー構築呼出し選択メッセージを介して、ストリーム受信ノードを指示し、
グループベースツリー構築ストリーム選択メッセージを介して、ストリーム中継ノード及びストリーム発信ノードに論理ストリーム選択結果を通知し、
前記論理ストリーム選択結果に基づいて、選択された各論理ストリームに割り当てられる帯域幅を分配し、
未処理の特定ソース向けグループの論理ストリームに、未使用の論理ストリームの帯域幅を再配分し、
グループベースツリーを構築する、
請求項１３に記載の通信経路構築装置。
【請求項１５】
前記グループベースツリー構築ストリーム選択メッセージは、
グループベースツリーを構築するために指示されるグループの一意的な識別子を表すグループＩＤフィールドと、
前記選択された論理ストリームの一意的な識別子を表すストリームＩＤフィールドと、
前記論理ストリームの一意的な識別子を表す経路ＩＤフィールドと、
特定の前記論理ストリームに割り当てられた実際の帯域幅と、
グループベースツリー構築の動作のステータスを指示するステータスフィールドと、含む、
請求項１４に記載の通信経路構築装置。
【請求項１６】
通信ノードの表示解像度及びコンテンツタイプに基づいて、通信ノードを特定ソース向けグループに振り分けるとともに、前記特性ソース向けグループに優先順位を付けるステップと、
通信ノード間の論理ストリームに利用可能な帯域幅を仮割り当てするステップと、
前記特定ソース向けグループの優先順位に基づいて、複数の通信ノードにわたる分散型最適経路テーブルを構築するステップと、
を含むＮ−ツリー構築方法。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009153945.tif 000031
【図２】
2009153945.tif 000032
【図３】
2009153945.tif 000033
【図４】
2009153945.tif 000034
【図５】
2009153945.tif 000035
【図６】
2009153945.tif 000036
【図７】
2009153945.tif 000037
【図８】
2009153945.tif 000038
【図９】
2009153945.tif 000039
【図１０】
2009153945.tif 000040
【図１１】
2009153945.tif 000041
【図１２】
2009153945.tif 000042
【図１３】
2009153945.tif 000043
【図１４】
2009153945.tif 000044
【図１５】
2009153945.tif 000045
【図１６】
2009153945.tif 000046
【図１７】
2009153945.tif 000047
【図１８】
2009153945.tif 000048
【図１９】
2009153945.tif 000049
【図２０】
2009153945.tif 000050
【図２１】
2009153945.tif 000051
【図２２】
2009153945.tif 000052
【図２３】
2009153945.tif 000053
【図２４】
2009153945.tif 000054
【図２５】
2009153945.tif 000055
【図２６】
2009153945.tif 000056
【図２７】
2009153945.tif 000057
【図２８】
2009153945.tif 000058
【国際調査報告】
2009153945.tif 000059
2009153945.tif 000060
2009153945.tif 000061
2009153945.tif 000062