(57)【要約】  ネットワーク内で保証されたサービス品質（ＱｏＳ）フローを開始するための第１要求を受信し、ネットワークコーディネータから、ネットワークに接続された複数のノードに第２要求をブロードキャストし、少なくとも一つの入口ノードから第２要求に対する第１応答を受信するステップを含む通信のシステム及び方法。この方法は、さらに、少なくとも一つの出口ノードが、保証されたＱｏＳフローを受信するのに使用可能なリソースを有するか否かを示す第２要求に対する第２応答を少なくとも一つの出口ノードから受信し、少なくとも一つの入口ノードが、保証されたＱｏＳフローを送信するのに使用可能なリソースを有し、少なくとも一つの出口ノードが、保証されたＱｏＳフローを受信するのに使用可能なリソースを有する場合に、保証されたＱｏＳフローのためにリソースを割り振ることを含む。【選択図】  図５
2010518756.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークコーディネータから、ネットワークに接続された複数のノードへ、ネットワーク内の保証されたサービス品質フローに関する要求をブロードキャストするステップであって、前記複数のノードが、少なくとも一つの入口ノード及び少なくとも一つの出口ノードを含む、ステップと、
前記少なくとも一つの入口ノードから前記要求に対する第１の応答を受信するステップであって、前記第１の応答は、前記少なくとも一つの入口ノードが、前記保証されたサービス品質フローを送信するのに使用可能なリソースを有するか否かを示す、該ステップと、
前記少なくとも一つの出口ノードが前記保証されたサービス品質フローを受信するのに使用可能なリソースを有するか否かを示す前記要求に対する第２の応答を前記少なくとも一つの出口ノードから受信するステップと、
前記少なくとも一つの入口ノードが、前記保証されたサービス品質フローの送信に使用可能なリソースを有し、前記少なくとも一つの出口ノードが、前記保証されたサービス品質フローの受信に使用可能なリソースを有する場合に、前記保証されたサービス品質フローのためにリソースを割り振るステップと、
を含む通信方法。
【請求項２】
前記ネットワークコーディネータでサブミットメッセージを受信するステップを更に含み、
前記要求が、前記受信されるサブミットメッセージの結果として前記ネットワークコーディネータからブロードキャストされる、
請求項１に記載の通信方法。
【請求項３】
エントリノードが、前記入口ノード及び前記出口ノードとは別々である、請求項１に記載の通信方法。
【請求項４】
前記サブミットメッセージ及び前記第２要求が、レイヤ２メッセージである、請求項２に記載の通信方法。
【請求項５】
前記フローを許容することのコストを入口ノードから受信するステップであって、前記フローの前記コストが、前記ネットワーク内の既存フローの個数に部分的に基づく、該ステップを更に含む、請求項１に記載の通信方法。
【請求項６】
前記受信された第１の応答が、タイムスロット又はパケットサイズ情報を含む場合に、前記入口ノードが、前記保証されたサービス品質フローをサポートすることができる、請求項１に記載の通信方法。
【請求項７】
前記受信された第１の応答が、帯域幅情報を含む場合に、前記入口ノードが、前記保証されたサービス品質フローをサポートすることができない、請求項１に記載の通信方法。
【請求項８】
前記受信された第２の応答が、タイムスロット又はパケットサイズ情報を含む場合に、前記出口ノードが、前記保証されたサービス品質フローをサポートすることができる、請求項１に記載の通信方法。
【請求項９】
前記受信された第２の応答が、帯域幅情報を含む場合に、前記出口ノードが、前記保証されたサービス品質フローをサポートすることができない、請求項１に記載の通信方法。
【請求項１０】
前記保証されたサービス品質フローが生成されない場合に、前記エントリノードにユニキャストメッセージを送信するステップであって、前記ユニキャストメッセージが、前記ネットワーク上で使用可能な最大共通帯域幅を含む、該ステップを更に含む、請求項２に記載の通信方法。
【請求項１１】
前記ネットワークコーディネータが前記保証されたサービス品質フローをサポートするのに十分なネットワークリソースがあると判定する場合に、該ネットワークコーディネータから全ての前記ネットワークノードへメッセージをブロードキャストするステップを更に含む、請求項１に記載の通信方法。
【請求項１２】
前記ブロードキャストメッセージの受信時に、前記ネットワークノードが、ネットワークリソースを前記保証されたサービス品質フローに投入する、請求項１０に記載の通信方法。
【請求項１３】
プログラムコードで符号化された機械可読記憶媒体であって、前記プログラムコードがプロセッサによって実行される時に、前記プロセッサが、
ネットワークコーディネータから、ネットワークに接続された複数のノードへ、ネットワーク内の保証されたサービス品質フローに関する要求をブロードキャストするステップであって、前記複数のノードが、少なくとも一つの入口ノード及び少なくとも一つの出口ノードを含む、該ステップと、
前記少なくとも一つの入口ノードから前記要求に対する第１の応答を受信するステップであって、前記第１の応答は、前記少なくとも一つの入口ノードが、前記保証されたサービス品質フローを送信するのに使用可能なリソースを有するか否かを示す、該ステップと、
前記少なくとも一つの出口ノードが、前記保証されたサービス品質フローを受信するのに使用可能なリソースを有するか否かを示す前記要求に対する第２の応答を前記少なくとも一つの出口ノードから受信するステップと、
前記少なくとも一つの入口ノードが、前記保証されたサービス品質フローの送信に使用可能なリソースを有し、前記少なくとも一つの出口ノードが、前記保証されたサービス品質フローの受信に使用可能なリソースを有する場合に、前記保証されたサービス品質フローのためのリソースを割り振るステップと、
を含む方法を実行する、機械可読記憶媒体。
【請求項１４】
前記ネットワークコーディネータでサブミットメッセージを受信するステップを更に含み、
前記要求が、前記受信されるサブミットメッセージの結果として前記ネットワークコーディネータからブロードキャストされる、
請求項１３に記載の機械可読記憶媒体。
【請求項１５】
第１の要求が、エントリノードによって送信される、請求項１３に記載の機械可読記憶媒体。
【請求項１６】
前記受信された第１の応答が、タイムスロット又はパケットサイズ情報を含む場合に、前記入口ノードが、パラメータ化サービス品質フローをサポートすることができる、請求項１３に記載の機械可読記憶媒体。
【請求項１７】
前記受信された第２の応答が、帯域幅情報を含む場合に、前記出口ノードが、前記パラメータ化サービス品質フローをサポートすることができない、請求項１３に記載の機械可読記憶媒体。
【請求項１８】
前記保証されたサービス品質フローがネットワークノードから受信されたネットワーク帯域幅情報に基づいて前記ネットワーク内でサポートされるか否かを前記ネットワークコーディネータで判定するステップを更に含む、請求項１３に記載の機械可読記憶媒体。
【請求項１９】
前記受信されたネットワーク帯域幅情報が、前記ネットワーク内のフローのコストを含む、請求項１６に記載の機械可読記憶媒体。
【請求項２０】
リソースが前記保証されたサービス品質フローのために割り振られる場合に、前記ネットワークコーディネータから全てのネットワークノードにメッセージをブロードキャストするステップを更に含む、請求項１６に記載の機械可読記憶媒体。
【請求項２１】
前記ブロードキャストメッセージの受信時に、前記ネットワークノードが、前記パラメータ化サービス品質フローにネットワークリソースを投入する、請求項１８に記載の機械可読記憶媒体。
【請求項２２】
前記第１の要求及び前記第２の要求が、レイヤ２メッセージである、請求項１２に記載の機械可読記憶媒体。
【請求項２３】
協調ネットワークに接続された物理インターフェースであって、前記協調ネットワークを介してメッセージを送信し、受信するように構成された該物理インターフェースと、
前記物理インターフェースに結合されたサービス品質モジュールであって、複数のレイヤ２メッセージを介して協調ネットワーク内での一以上の保証されたサービス品質フローを許容するように構成された、前記サービス品質モジュールと
を備えるシステム。
【請求項２４】
前記サービス品質モジュールが、Ｌ２ＭＥを介して前記物理インターフェースに結合される、請求項２１に記載のシステム。
【請求項２５】
前記サービス品質モジュールが、前記協調ネットワークに接続された複数のノードからメッセージを受信するように構成される、請求項２１に記載のシステム。
【請求項２６】
前記協調ネットワークが、同軸ネットワークである、請求項２１に記載のシステム。
【請求項２７】
前記協調ネットワークが、無線ネットワークである、請求項２１に記載のシステム。
【請求項２８】
ネットワークに接続されたネットワークコーディネータであって、前記ネットワーク内の保証されたサービス品質フローに関する要求を複数のノードにブロードキャストするように構成された、該ネットワークコーディネータと、
前記ネットワークに接続された少なくとも一つの入口ノードであって、前記ネットワークコーディネータに第１の応答を送信するように構成され、前記第１の応答は、前記少なくとも一つの入口ノードが、前記保証されたサービス品質フローを送信するのに使用可能なリソースを有するか否かを示す、該少なくとも一つの入口ノードと、
前記ネットワークに接続された少なくとも一つの出口ノードであって、前記ネットワークコーディネータに第２の応答を送信するように構成され、前記第２の応答は、前記少なくとも一つの出口ノードが、前記保証されたサービス品質フローを受信するのに使用可能なリソースを有するか否かを示す、該少なくとも一つの出口ノードと
を備え、
前記ネットワークコーディネータは、前記少なくとも一つの入口ノードが前記サービス品質フローを送信するのに使用可能なリソースを有し、前記少なくとも一つの出口ノードが前記サービス品質フローを受信するのに使用可能なリソースを有する場合に、前記保証されたサービス品質フローのためにリソースを割り振るように更に構成される
システム。
【請求項２９】
前記ネットワークコーディネータが、エントリノードからサブミットメッセージを受信することの結果として前記要求をブロードキャストするように更に構成される、請求項２８に記載のシステム。
【発明の詳細な説明】
【優先権の主張】
【０００１】
[0001]本願は、２００７年２月６日に出願した米国特許仮出願第６０／９００２０６号、２００７年２月１４日に出願した米国特許仮出願第６０／９０１５６４号、２００７年５月４日に出願した米国特許仮出願第６０／９２７６１３号、２００７年２月１４日に出願した米国特許仮出願第６０／９０１５６３号、２００７年５月４日に出願した米国特許仮出願第６０／９２７７６６号、２００７年５月４日に出願した米国特許仮出願第６０／９２７６３６号、及び２００７年５月２１日に出願した米国特許仮出願第６０／９３１３１４号の優先権を主張するものであり、これら出願を参照することによって本明細書に援用するものである。
【技術分野】
【０００２】
[0002]開示する方法及び装置は、ネットワークにおける通信プロトコルに関するものであり、より詳細には、ネットワーク内のサービス品質プロトコルに関するものである。
【背景】
【０００３】
[0003]コンピュータに加えて、ホームネットワークは、今や、通常、ホームネットワークを介して加入者サービスを提供するように構成された複数のタイプの加入者装置を含んでいる。加入者サービスは、ホームネットワークを介して加入者装置へストリーミングオーディオ及びストリーミングビデオ等のマルチメディアを配信することを含んでおり、この加入者装置で、マルチメディアがユーザに提示される。使用可能な加入者サービスの数が増えるにつれて、ホームネットワークに接続されるデバイスの数も増える。サービス及びデバイスの数の増加は、各ノードが異なる時に異なる製造業者によって製造され得るので、ネットワークノードの間の調整の複雑さを増す。一部のホームネットワーキングテクノロジは、単純なホームネットワークソリューションを促進し、複数の家庭に存在し得る既存のネットワークインフラストラクチャを活用しようとする試みの中で現れてきた。例えば、Ｈｏｍｅ  Ｐｈｏｎｅ  Ｎｅｔｗｏｒｋ  Ａｌｌｉａｎｃｅ（ＨＰＮＡ）は、ユーザが、家庭内の既存の電話及び同軸ケーブル配線を使用することによってホームコンピュータをネットワーク化することを可能にする。ＨＰＮＡ対応デバイスは、ファクシミリ及び電話機によって使用されるスペクトルとは異なる周波数スペクトルを利用する。既存の電話及び同軸ケーブル配線を使用するのではなく、Ｈｏｍｅｐｌｕｇ（登録商標）Ｐｏｗｅｒ  Ａｌｌｉａｎｃｅは、家庭内の既存電力配線を利用して、ホームネットワークを生成する。Ｈｏｍｅｐｌｕｇ（登録商標）に関する一つの問題は、家庭電気配線及びコンセントの無効負荷の大きい変動に起因して、ネットワーク帯域幅が相当に縮小を受けることである。
【０００４】
[0004]さらに、これらのテクノロジに関する問題は、他のネットワークデバイスと正しく相互作用するネットワークデバイスを実施する際に生じる。これらの問題は、より古い（レガシ）デバイスの存在下でより後に開発されるサービスを提供するより新しいデバイスの開発を妨げることがある。新生のＭｕｌｔｉｍｅｄｉａ  ｏｖｅｒ  Ｃｏａｘ  Ａｌｌｉａｎｃｅ（ＭｏＣＡ）標準アーキテクチャは、（１）ネットワーク挙動が、性能を最適化するために、あるデバイスに「ネットワークコーディネータ（Ｎｅｔｗｏｒｋ  Ｃｏｏｒｄｉｎａｔｏｒ）」（ＮＣ）の役割を動的に割り当て、（２）ＮＣの役割のデバイスだけが、ネットワーク内の全ての他のノードに関するトラフィックをスケジューリングできることが知られており、（３）全てのデバイスとそのピアとの間のフルメッシュネットワークアーキテクチャを形成するという点で、この問題に影響する。
【０００５】
[0005]多数の潜在的なアプリケーションが同一ディジタルネットワークを共有する状態では、様々なアプリケーションが、同一の限られた帯域幅について競合しなければならず、配布問題を悪化させる。高スループットダウンロードといった帯域幅集中型アプリケーションは、ネットワークを共有する他のより重要なアプリケーションの劣化を引き起こすことがある。この結果は、他のアプリケーションが高いサービス品質を要求する場合には、容認できないものとなり得る。
【０００６】
[0006]この問題を解決するための様々な解決策が提案されてきており、これら解決策は、通常、高水準ネットワークコントローラを伴うか又は高水準アプリケーションを有して、ネットワーク内のデータパケット又はデータストリームに優先順位をセットするものである。さらに、インテリジェントネットワークデバイスは、高い計算能力を必要とし、その結果、必要以上に高価である。最後に、複雑なネットワークデバイスは、家庭での使用には非実用的である。これは、殆どの消費者が、コンピュータネットワークを構成するための高度な知識又は経験を有していないからである。
【開示の要約】
【０００７】
[0007]一実施形態では、通信方法が、（１）ネットワーク内で保証されたサービス品質のデータフローを開始するために第１の要求を受信するステップと、（２）ＮＣから、ネットワークに接続された複数のノードに第２の要求をブロードキャストするステップと、（３）少なくとも一つの入口ノード（Ingress node）から第２の要求に対する第１の応答を受信するステップと、を含む。第２の要求は、第１の要求に基づいており、第１の応答は、少なくとも一つの入口ノードが、保証されたサービス品質のフローを送信するのに使用可能なリソースを有するか否かを示している。この方法は、少なくとも一つの出口ノードから第２の要求に対する第２の応答を受信するステップと、（一つ以上の）入口ノードが、保証されたサービス品質のフローを送信するのに使用可能なリソースを有し、（一つ以上の）出口ノードが、保証されたサービス品質のフローを受信するのに使用可能なリソースを有する場合に、保証されたサービス品質のフローのためにリソースを割り振るステップと、を含む。
【０００８】
[0008]別の実施形態では、システムが、協調ネットワー（CoordinatedNetwork）に接続された物理インターフェースと、物理インターフェースに結合されたサービス品質モジュールと、を備える。物理インターフェースは、協調ネットワークを介してメッセージを送信し、受信するように構成されている。構成されたサービス品質モジュールは、協調ネットワークにおいて複数のレイヤ２メッセージを介して一以上の保証されたサービス品質のフローを許容する。
【図面の簡単な説明】
【０００９】
【図１】ネットワークアーキテクチャの実施形態を示す図である。
【図２】図１の実施形態による二つのＬ２ＭＥウェーブサイクル（Ｗａｖｅ  Ｃｙｃｌｅ）を示す図である。
【図３】図１の実施形態によるＬ２ＭＥフレームを示すブロック図である。
【図４】一実施形態によるレイヤ２マネージメントエンティティトランザクションプロトコルを示すブロック図である。
【図５】パラメータ化サービス品質ネットワークアーキテクチャの実施形態を示す図である。
【図６】ＴＳｐｅｃ  ＸＭＬをＱＳｐｅｃに変換するＬ２ＭＥの決定木を示す図である。
【図７】図５の実施形態によるＣｒｅａｔｅ／Ｕｐｄａｔｅトランザクションを示す図である。
【図８】図５の実施形態によるＤｅｌｅｔｅトランザクションを示す図である。
【図９】図５の実施形態によるＬｉｓｔトランザクションを示す図である。
【図１０】図５の実施形態によるＱｕｅｒｙトランザクションを示す図である。
【図１１】図５の実施形態によるＭａｉｎｔｅｎａｎｃｅトランザクションを示す図である。
【概要】
【００１０】
[0020]一つのシステムは、本明細書に開示し図５に示し、また、より詳細には後述するように、Ｍｕｌｔｉｍｅｄｉａ  ｏｖｅｒ  Ｃｏａｘ  Ａｌｌｉａｎｃｅ（ＭｏＣＡ）１．１ネットワークのような協調ネットワーク５０２に接続された、ＭｏＣＡ  ＰＨＹレイヤといった物理インターフェース５１２を含んでいる。物理インターフェース５１２は、協調ネットワーク５０２を介してメッセージを送信し、受信するように構成されている。このシステムは、レイヤ２マネージメントエンティティ（Ｌ２ＭＥ）５１６に接続されたサービス品質（ＱｏＳ）マネージャ５２０をも含んでいる。ＱｏＳマネージャ５２０は、例えば、Ｌ２ＭＥ  ５１６によって管理される複数のレイヤ２メッセージを介した協調ネットワーク５０２内の単一の入口ノード（ソースデバイス）から一以上の出口ノード（シンクデバイス）への単一方向トラフィックストリームなど、一以上の保証されたサービス品質データフローを許容するように構成されている。
【００１１】
[0021]本明細書に開示する一つのネットワークアーキテクチャは、管理されたネットワーク内でパラメータ化サービス品質（ｐＱｏＳ）をサポートする。ｐＱｏＳ対応ネットワークでは、ネットワーク内のデータフローが、保証された（パラメータ化された）及び／又はベストエフォートのデータフローを含み得る。保証された（パラメータ化された）フローは、詳細には後述するアドミッション（セットアップ）プロセス中に確立されるフローの所定のパラメータによって定義される少なくとも一つの性能レベルを保証される。パラメータ化されたフロー用に予約されるタイムスロットは、パラメータ化されたフローがそのタイムスロット中に送信すべきデータを有しない場合には、他のフローから使用可能とされ得る。図６に示し、より詳細には後述するアーキテクチャでは、ｃ．Ｌｉｎｋデータリンクレイヤのようなノード６０４が、ＱｏＳ開始要求をネットワークコーディネータ（ＮＣ）ノード６０６に送信して、少なくとも一つの品質パラメータを有する保証されたサービス品質フローを開始する。ＱｏＳ開始要求からの少なくとも一つのパラメータを含むレイヤ２要求は、ＮＣ  ６０６によって、全てのノード６０４、６０８にブロードキャストされる。入口ノード５０８及び出口ノード５１０を含む複数のノード６０８は、ブロードキャスト要求に対して、入口ノード５０８がフローの送信に使用可能なリソースを有し、出口ノード５１０がフローを受信するリソースを有するかどうかを示す応答を送信する。受信された応答が、入口ノード５０８及び出口ノード５１０のそれぞれがフローをセットアップするためのリソースを有することを示す場合には、ＮＣノード６０６は、ノード６０８がリソースをフローに振り向けなければならないことを示すメッセージを複数のノード６０８にブロードキャストする。
【詳細な説明】
【００１２】
[0022]この実施形態の説明は、添付図面と共に読まれることが意図されており、当該図面は、説明全体の一部と考えられるべきである。
【００１３】
[0023]実施形態は、一般に、ネットワーク内の低水準メッセージングフレームワークをサポートする装置、システム、方法、及びアーキテクチャに関するものである。幾つかの実施形態は、既存の家庭内ネットワーク内でマルチメディアデータ（ビデオ／オーディオ、ゲーム、イメージ、汎用データ、及び対話サービス）を配布する能力を確実にするために、レイヤ２メッセージングを促進してネットワーク内のリソースの低コスト高速管理を可能にする。
【００１４】
[0024]実施形態は、ホームネットワーキングデバイスを単純なものとし、これらデバイスを使いやすく費用効率の高いものとする。言い換えると、ホームネットワークは、ホームユーザが複雑な設定メニューを扱う必要がなく、コンピュータネットワークの高度な知識を必要としないように、単純でなければならない。実施形態は、大量の計算能力を必要としない低水準ディジタルトランスポートフレームワークの実施を介して設定問題及びコスト問題をも解決する。この低水準フレームワークは、メディアアクセス制御（ＭＡＣ）サブレイヤ又は物理（ＰＨＹ）ネットワークレイヤの拡張と考えることができ、「レイヤ２メッセージングフレームワーク」と呼ばれる。
【００１５】
[0025]レイヤ２メッセージングは、ノードの導入又は除去並びにネットワークシグナリング容量の進化に起因してスペクトルが共有され、ネゴシエートされる様々なネットワークで実施することができる。幾つかの実施形態で、ネットワークは、ネットワークに接続された複数のデバイスの間の通信を調整するネットワークコーディネータ（ＮＣ）を有する協調ネットワークである。調整は、ＮＣが、その間にデバイスがＭＡＣメッセージ、プローブ、及びデータを送信し又は受信することのできるタイムスロットをネットワークデバイスに割り振ることによって達成される。協調ネットワークに接続されたネットワークデバイスは、管理されたデバイス及び管理されないデバイスを含むことができる。そのようなネットワークの例は、Ｍｕｌｔｉｍｅｄｉａ  ｏｖｅｒ  Ｃｏａｘ  Ａｌｌｉａｎｃｅ（ＭｏＣＡ）標準規格に従う同軸ネットワーク、「より線対」ワイヤ上の有線ネットワーク、又は無線ホームネットワークを含む。実施形態を、本明細書では、ネットワーク内に８個又は１６個のノードを伴って実施されるものとして説明する。しかし、他の実施形態は、様々なネットワーク内で任意の個数のノードに対応する拡張を組み込むことができる。さらに、実施形態は、エンドユーザアプリケーション及びベンダ固有サービスをサポートするためにレイヤ２メッセージングアーキテクチャ及びプロトコルを含むシステム、方法、及びデバイスを含むことができる。
【００１６】
[0026]以下、ディジタルネットワークのレイヤ２マネージメントエンティティ（Ｌ２ＭＥ）アーキテクチャ及びメッセージングプロトコルに関して実施形態を説明する。幾つかの実施形態は、限定されるものではないが、Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ（ＵＰｎＰ）サービス品質及びＩＥＥＥ  Ｓｔｒｅａｍ  Ｒｅｓｅｒｖａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＳＲＰ）のような、アプリケーションレイヤによってトリガされるトランザクションをサポートする。レイヤ２メッセージングプロトコルは、ネットワーク内のパラメータ化サービス品質（ｐＱｏＳ）トランザクション等の機能を使用可能とし得る。Ｌ２ＭＥとアプリケーションレイヤとの間のインターフェースが変化し得ることに留意されたい。
【００１７】
[0027]図１は、ネットワーク１０２に接続された複数のネットワークノード１０４、１０６、１０８、１１０を有する協調メッシュネットワークアーキテクチャ１００を示している。ネットワークノード１０６は、ＮＣノードであり、ＰＨＹレイヤ１１２、ＭＡＣサブレイヤ１１４、及びＬ２ＭＥ  １１６で構成されるよう図示されている。全てのネットワークノードが、複数の物理インターフェースを有することができ、上位レイヤ機能（例えば、ＴＣＰ／ＩＰ、ＵＤＰ、又は類似物）を実施できることに留意されたい。ネットワークノード１０４は、エントリノード（ＥＮ）である。ノード１０４、１０８、及び１１０のそれぞれは、Ｌ２ＭＥ  １１６で構成されてもよい。
【００１８】
[0028]Ｌ２ＭＥ  １１６は、レイヤ２インターフェース及び管理サービスを提供しており、これらを通して、レイヤ２管理機能を呼び出すことができる。エンドユーザアプリケーションによって開始されたトランザクションに基づいて、Ｌ２ＭＥ  １１６は、ネットワークノード１０４、１０６、１０８、及び１１０の間の、パラメータ化サービス品質などの全てのＬ２ＭＥトランザクションを実行し、管理する責任を負う。Ｌ２ＭＥ  １１６は、二つのサブレイヤ、即ち、上位のトランザクションプロトコルサブレイヤ１２０及び下位のウェーブプロトコルサブレイヤ１１８を含む。Ｌ２ＭＥウェーブプロトコルサブレイヤ１１８は、それ自体のメッセージングプロトコルを伴って構成されたＬ２ＭＥ  １１６内の高信頼性メッセージ機構である。Ｌ２ＭＥウェーブプロトコルは、ネットワークノードが堅牢なネットワーク規模の短待ち時間の一般的なトランザクションに参加することを可能にし、ＮＣノード１０６が複数のレイヤ２サービス品質セグメントを有するホームネットワークにまたがって、ＩＥＥＥ  ８０２．１Ｑａｔ／Ｄ０．８標準規格草案（２００７年７月）に従うデバイスなど、低コストオーディオ／ビデオブリッジングデバイスのフローを管理することを可能にする。
【００１９】
Ｌ２ＭＥウェーブプロトコル
【００２０】
[0029]Ｌ２ＭＥウェーブプロトコルは、複数のウェーブサイクルを生成することによってＬ２ＭＥトランザクションプロトコルに関する信頼できるトランスポートサービスを提供する。Ｌ２ＭＥウェーブは、一以上のＬ２ＭＥウェーブサイクルを含む。ウェーブサイクルは、ＮＣから一以上のノードへのメッセージの送信と、その一以上のノードからのそのメッセージに対する対応する応答の受信とを含む。ウェーブサイクルは、ＮＣノード１０６が、要求などの特定のペイロードをネットワーク１０２に接続された全てのノード１０４、１０８、１１０にブロードキャストする時に開始される。一実施形態では、ＮＣノード１０６は、まず、ウェーブサイクルを開始する前に、より詳細には後述するＷＡＶＥ＿ＮＯＤＥＭＡＳＫフィールドにおいて全てのノードを三つのカテゴリに分類する。ノードの第１カテゴリ（「カテゴリ１ノード」）は、ＮＣノード１０６によって発行される要求Ｌ２ＭＥフレームのＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫフィールド内でこれから指定されなければならないネットワークノードを含む。ノードの第２カテゴリ（「カテゴリ２ノード」）は、ＮＣノード１０６によって発行される要求Ｌ２ＭＥフレームのＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫフィールド内で特定されているが、ＮＣノード１０６がそこから応答をこれから受信しなければならないネットワークノードを含む。ネットワークノードの第３カテゴリ（「カテゴリ３ノード」）は、ＮＣノード１０６がそこから応答Ｌ２ＭＥフレームを受信済みであるネットワークノードを含む。
【００２１】
[0030]ＮＣノード１０６が、ネットワークノード１０４、１０８、１１０のそれぞれをカテゴリ１ノード、カテゴリ２ノード、又はカテゴリ３ノードとして適切に分類した後に、ＮＣノード１０６は、次のガイドラインに従ってＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫを構成する。まず、三つ以上のカテゴリ１ノードがある場合に、ＮＣノード１０６は、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内の対応する個数のビットに「１」をセットする。三つ以上のカテゴリ１ノードがある場合に、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内でＮＣノード１０６によってセットされるビットの個数は、カテゴリ１ノードの総数より少ない場合があるが、３ビット未満ではない。例えば、五つのカテゴリ１ノードがある場合に、ＮＣノード１０６は、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内で三つ、四つ、又は五つのビットに「１」をセットすることができる。第２に、三つ以上のカテゴリ２ノードがある場合に、ＮＣノード１０６は、カテゴリ２ノードに対応するＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内のビットのうちの三つ以上に「１」をセットする。第３に、カテゴリ１ノードがない場合、又はカテゴリ１ノードに対応するビットの全てが既にＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内で「１」をセットされている場合に、ＮＣノード１０６は、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内でカテゴリ２ノードに対応するビットに「１」をセットする。最後に、ＮＣノード１０６は、ＮＣノード１０６がネットワークサービスを中断させずに応答を受信できる数だけのＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫ内のビットに「１」をセットすることができる。ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫが生成されたならば、ＮＣノード１０６は、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫを含むＬ２ＭＥメッセージをブロードキャストすることによって、ウェーブサイクルを開始する。
【００２２】
[0031]ウェーブサイクルは、ＮＣノード１０６がノード１０４、１０８、１１０のうちの一部又は全てから応答といった対応するペイロードを受信するとき又はＮＣノードのタイマが満了するときのいずれかに完了する。例えば、ＮＣノード１０６は、メッセージを送信し、その後、そのタイマを始動する。ＮＣノード１０６のタイマが、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫで特定されるネットワークノードのうちの一部又は全てから応答メッセージを受信する前にＴ２１（例えば、２０ミリ秒）に達する場合に、そのウェーブサイクルは、ＮＣノード１０６が応答メッセージを受信していない場合であっても完了する。Ｔ２１が、ＮＣノード１０６による要求Ｌ２ＭＥフレームの送信と要求されたノードによる対応する応答Ｌ２ＭＥフレームの送信との間の最大の許容可能なタイムインターバルであることに留意されたい。Ｌ２ＭＥウェーブサイクルは、ペイロードのＷＡＶＥ＿ＮＯＤＥＭＡＳＫフィールドで特定されるノードのそれぞれが応答し終えた時に成功して完了する。言い換えると、ウェーブサイクルは、ネットワークノード１０４、１０８、１１０の全てが、ＮＣノード１０６のタイマがＴ２１に達する前にカテゴリ３ノードとして分類される場合に成功する。或いは、ウェーブサイクルは、ＮＣノード１０６が、ＮＣノード１０６によって送信されたＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫの対応するビットに「１」をセットされたカテゴリ２ノードから応答Ｌ２ＭＥフレームを受信しない場合に、不成功である、即ち失敗する。ウェーブサイクルが失敗する場合には、ＮＣノード１０６は、ＮＣノード１０６が応答Ｌ２ＭＥフレームを受信しなかったノードだけにマルチキャストメッセージを送信することによって、そのウェーブサイクルを繰り返す。一実施形態では、マルチキャストメッセージが、応答しないノードにマルチキャストメッセージを送信することによってウェーブサイクルを繰り返すことに関してブロードキャストメッセージ同一と扱われることに留意されたい。ＮＣノード１０６は、応答がそこから受信されなかった全てのノードについて、新しいウェーブサイクルを作成する前に、スケジューリングされたウェーブサイクルを完了する。
【００２３】
[0032]図２は、二つのウェーブサイクル２１４、２１６を示すＬ２ＭＥウェーブ図２００の例である。第１ウェーブサイクル２１４は、ノードＩＤ＝２を有するＮＣノード２０６が、ネットワーク１０２に接続された全てのノード２０２、２０４、２０８、２１０、２１２にペイロードを有するメッセージをブロードキャストする時に開始される。この例では、ペイロードは、ＮＯＤＥ＿ＢＩＴＭＡＳＫ  ０１１０１１を含み、ここで、右端のビットは、ノードＩＤ＝０を有するノードに対応する。このビットマスクは、ＮＣノード２０６が、ノード２０２、２０４、２０８、及び２１０からＷＡＶＥ＿ＡＣＫを含むペイロードを受信することを期待することを示す。図２に示すように、ＮＣノード２０６は、ノード２０２、２０４、及び２０８から応答Ｌ２ＭＥフレームを受信するのみであり、ノード２１０からの応答Ｌ２ＭＥフレームは、失われるか、ＮＣノード２０６タイマが満了する前に受信されないかのいずれかである。ＮＣノード２０６内のタイマの満了は、第１ウェーブサイクル２１４を完了するが、トランザクションは終了させない。
【００２４】
[0033]ＮＣノード２０６はノード２１０から応答Ｌ２ＭＥフレームを受信していないので、ＮＣノード２０６はノード２１０に更なる要求Ｌ２ＭＥフレームを送信し、これによって第２ウェーブサイクル２１６を開始している。ノード２１０に送信される要求は、ノード２１２にも送信され、ノード２１０及び２１２がＮＣノード２０６にＷＡＶＥ＿ＡＣＫを送信することを要求するＮＯＤＥ＿ＢＩＴＭＡＳＫ  １１００００を含んでいる。ノード２１０及び２１２からの応答Ｌ２ＭＥフレームが、その後、ＮＣノード２０６によって受信され、これによって、ウェーブサイクル２１６が完了する。
【００２５】
Ｌ２ＭＥトランザクションプロトコル
【００２６】
[0034]Ｌ２ＭＥトランザクションプロトコルは、Ｌ２ＭＥ内の上位サブレイヤプロトコルであり、複数のＬ２ＭＥウェーブを使用してネットワーク規模のトランザクションを達成する。一般に、全てのＬ２ＭＥトランザクションは、ｊ＋１個のウェーブを含み（ただし、ｊ＝０、１、２…）、ＥＮ又はＮＣノードのいずれかによって開始される。ＥＮは、ＮＣノードを含む任意のネットワークノードであってもよく、エンドユーザアプリケーションに基づいてＬ２ＭＥトランザクションを開始する。最後のＬ２ＭＥウェーブ内では、要求された結果が、ＮＣノードによってＥＮに返される。Ｌ２ＭＥトランザクションは、要求されたネットワークノードがその最終応答を提供する時に完了する。一実施形態では、一つのＬ２ＭＥトランザクションだけが、任意の所与の時にネットワーク内で実行され又は保留中である。失敗したＬ２ＭＥウェーブについて、結果のＮＣノードアクションは、特定のＬ２ＭＥトランザクションタイプ及びウェーブ番号に依存する。
【００２７】
[0035]一般に、全てのＬ２ＭＥトランザクションメッセージを、トランザクション中に三つの異なるカテゴリに分類することができる。メッセージは、（１）サブミット、（２）要求、及び（３）応答として分類される。Ｌ２ＭＥを伴って構成されていないレガシノードのような、Ｌ２ＭＥメッセージを使用しないノードは、単純にこれらのメッセージを捨てることができる。Ｌ２ＭＥを伴って構成されたノードは、Ｌ２ＭＥメッセージを受信することができる。というのは、Ｌ２ＭＥメッセージが、先在するＭＡＣメッセージングフレームワークに埋め込まれているからである。図３は、ＭＡＣフレーム３００の一例を示している。ＭＡＣフレーム３００は、ＭＡＣヘッダ３０２、ＭＡＣペイロード３０４、及びＭＡＣペイロード巡回冗長検査（ＣＲＣ）３１０を含む。Ｌ２ＭＥフレームは、ＭＡＣペイロード３０４内に埋め込まれており、Ｌ２ＭＥヘッダ３０６及びＬ２ＭＥペイロード３０８を含んでいる。
【００２８】
サブミットＬ２ＭＥメッセージ
【００２９】
[0036]サブミットＬ２ＭＥメッセージは、ＥＮからＮＣノードへアプリケーションによって開始される要求を伝え、ここで、Ｌ２ＭＥウェーブトランザクションを開始することができる。ＥＮは、通常、トランザクションの様々なステージを管理する責任を負い、ＮＣノードは、要求をブロードキャストし、各ノードの応答を収集し、サブミットメッセージを送信したＥＮにトランザクション結果を供給する責任を負う。下の表１は、サブミットＬ２ＭＥフレームフォーマットの一例を示しており、サブミットＬ２ＭＥフレームのヘッダ及びペイロードを含んでいる。
【表１】
2010518756.tif 000003
【００３０】
[0037]サブミットＬ２ＭＥフレームヘッダは、８ビットのＥＮＴＲＹ＿ＴＸＮ＿ＩＤフィールドを含む。ＥＮＴＲＹ＿ＴＸＮ＿ＩＤフィールドは、エントリノードのトランザクションＩＤであり、これは、「１」から始まり、サブミットメッセージがＮＣノードに送信されるたびに増分される。ＥＮ＿ＴＸＮ＿ＩＤ＝０は、ＥＮがない時のＮＣノード用に予約済みである。サブミットメッセージから生じる全てのＬ２ＭＥトランザクションが、このトランザクションＩＤを含み得る。エントリノードＩＤとトランザクションＩＤとの組み合わせが、ネットワーク内の各Ｌ２ＭＥトランザクションを一意に特定し、ＥＮが、そのトランザクションがトリガされたことを知ることを可能にすることに留意されたい。さらに、各トランザクションを一意に特定することによって、ＥＮが、トランザクションが始まるのを待って既にタイムアウトしている場合に、ＥＮが、ＮＣノードによるトランザクションを開始する全ての試みを認識し、キャンセルすることを可能にする。Ｌ２ＭＥ＿ＰＡＹＬＯＡＤフィールドの構成及び長さは、特定のＶＥＮＤＯＲ＿ＩＤフィールド、ＴＲＡＮＳ＿ＴＹＰＥフィールド、及びＴＲＡＮＳ＿ＳＵＢＴＹＰＥフィールドに依存する。ＶＥＮＤＯＲ＿ＩＤは、サブミットＬ２ＭＥメッセージ及び要求Ｌ２ＭＥメッセージでは１６ビットフィールドであり、メッセージの様々なフィールドのベンダ固有使用を示す。例えば、Ｅｎｔｒｏｐｉｃ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ社の割り当てられたＶＥＮＤＯＲ＿ＩＤ範囲は、０ｘ００１０から０ｘ００１Ｆまでであり、値０ｘ００００から０ｘ０００Ｆまでは、ＭｏＣＡに割り当てられる。Ｌ２ＭＥ＿ＰＡＹＬＯＡＤフィールドの長さは、Ｌ＿ＳＵＢ＿ＭＡＸ以下とすることができる。所与のＬ２ＭＥトランザクションに関連するサブミットメッセージ及び要求メッセージが、ＶＥＮＤＯＲ＿ＩＤフィールド、ＴＲＡＮＳ＿ＴＹＰＥフィールド、及びＴＲＡＮＳ＿ＳＵＢＴＹＰＥフィールドの同一のセットを有し得ることにも留意されたい。
【００３１】
要求Ｌ２ＭＥメッセージ
【００３２】
[0038]要求Ｌ２ＭＥメッセージは、トランザクションウェーブ中にＮＣノードによって全てのノードにブロードキャストされる。サブミットメッセージがＮＣノードによって受信される一実施形態では、ＮＣノードは、サブミットメッセージの結果として要求Ｌ２ＭＥフレームメッセージをブロードキャストする。幾つかの場合に、ＮＣノードがＥＮとして働いている時に、下で説明するように、サブミットメッセージは送信されず、ＮＣノードは、それ自体のために要求Ｌ２ＭＥフレームメッセージを発行することによってトランザクションを開始する。例えば、ＮＣノードが、管理トランザクションを開始する時に、サブミットＬ２ＭＥフレームは、不要であり、トランザクションは、要求Ｌ２ＭＥフレームから始まる。要求Ｌ２ＭＥフレームメッセージを受信する各ノードは、ペイロード内でＮＣノードによって要求されたようにトランザクションの結果をＮＣノードに応答すると期待される。表２に、要求Ｌ２ＭＥフレームメッセージのヘッダ及びペイロードのフォーマットを示すが、これは、ＭＡＣヘッダが示されない場合のサブミットＬ２ＭＥフレームフォーマットに類似する。
【表２】
2010518756.tif 000004
【００３３】
[0039]このメッセージでは、ＥＮＴＲＹ＿ＮＯＤＥ＿ＩＤが、開始のサブミットメッセージからコピーされる。ＮＣ管理トランザクションのような要求メッセージが、ＥＮなしでＬ２ＭＥトランザクションから生じる場合に、ＥＮＴＲＹ＿ＮＯＤＥ＿ＴＸＮ＿ＩＤは、意味を持たず、このフィールド値は「０」にリセットされる。ＷＡＶＥ＿ＮＯＤＥＭＡＳＫ値は、これが最初のＬ２ＭＥウェーブである場合にサブミットメッセージと同一である。トランザクションの最後のＬ２ＭＥウェーブでは、このフィールドの値は、最後のウェーブの一部であるノードのセットを含む。そうでない場合に、ＷＡＶＥ＿ＮＯＤＥＭＡＳＫ値は、前の要求のＩＮ＿ＮＥＸＴ＿ＷＡＶＥビット内で応答を供給したノードのセットに対応する。ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫは、各ビット位置がノードＩＤに対応する（即ち、ビット０値はノードＩＤ＝０に対応する）ノードのビットマスクである。各ノードに対応するビットは、そのノードがＮＣノードによって要求メッセージ受信時に応答を供給するように指示される場合にセットされる。さらに、要求メッセージは、ＷＡＶＥ＿ＳＴＡＴＵＳフィールドを含み、これは、前のウェーブサイクルが失敗したか成功して完了したかを示す。ＷＡＶＥ＿ＳＴＡＴＵＳフィールドの許容される値が、０、１、２、及び４であり、ＲＥＳＰ＿ＦＡＩＬビット及び／又はＮＣ＿ＣＡＮＣＥＬ＿ＦＡＩＬビットがセットされている場合に、これがトランザクションの最後のＬ２ＭＥウェーブであり、全ての後続のウェーブが、失敗したトランザクションのＬ２ＭＥ＿ＰＡＹＬＯＡＤフィールドを含む可能性があることに留意されたい。
【００３４】
[0040]Ｌ２ＭＥウェーブ（ウェーブ０を除く）の応答フレームのペイロードは、通常、前のウェーブでのノードからの応答を連結することによって形成される。この連結は、次のように形成される。応答Ｌ２ＭＥフレームが所与のノードからＮＣノードに到着する時に、そのペイロードが、ＮＣノードで応答キューの末尾に付加される。次に、ペイロードの長さが、ディレクトリと呼ばれるデータ構造に書き込まれ、ノードのＩＤが送信される。ＮＣノードが、次の要求Ｌ２ＭＥフレームを送信する準備ができた時に、ＮＣノードは、ディレクトリの長さをＤＩＲ＿ＬＥＮフィールドに置き、ディレクトリをペイロードの始めにコピーし、その後、応答キューをペイロードの残りにコピーする。
【００３５】
[0041]ＤＩＲ＿ＬＥＮフィールドは、要求Ｌ２ＭＥフレームメッセージのペイロード部分内のディレクトリの長さを示す。要求Ｌ２ＭＥフレームメッセージで使用されるＬ２ＭＥ＿ＰＡＹＬＯＡＤフィールドには、次の四つの異なるタイプがある。
１．  第１タイプのＬ２ＭＥ＿ＰＡＹＬＯＡＤは、所与のトランザクションの最初のＬ２ＭＥウェーブである場合に、サブミットメッセージのペイロードと同一である。このＬ２ＭＥ＿ＰＡＹＬＯＡＤフィールドの長さは、Ｌ＿ＳＵＢ＿ＭＡＸ以下であってもよく、Ｌ＿ＳＵＢ＿ＭＡＸは、連結されたサブミットＬ２ＭＥフレームペイロードの最大バイト数である。
２．  要求Ｌ２ＭＥフレームペイロードの第２タイプは、下の表３に示されているように、トランザクションの第２のウェーブから始まり最後のウェーブまでで、ＮＣノードから参加ノードへの報告として送信される。Ｌ２ＭＥ＿ＰＡＹＬＯＡＤフィールドは、ノードごとに２バイトのエントリを有する１６エントリディレクトリとＲＥＳＰ＿ＤＡＴＡフィールドとを含む。ＲＥＳＰ＿ＤＡＴＡフィールドは、前のウェーブで応答を供給した参加Ｌ２ＭＥノードのそれぞれからの可変長の応答Ｌ２ＭＥフレームの連結である。このディレクトリは、受信するノードが全てのノードからのＬ２ＭＥ応答をデコードすることを可能にする。
【表３】
2010518756.tif 000005
３．Ｌ２ＭＥ＿ＰＡＹＬＯＡＤの第３タイプは、ＲＥＳＰ＿ＦＡＩＬビット又はＮＣ＿ＦＡＩＬビットに「１」がセットされる、失敗したＬ２ＭＥトランザクションの場合である。ＮＣノードは、最後のＬ２ＭＥウェーブの要求メッセージで０の長さのペイロードを送信することができる。
４．Ｌ２ＭＥ＿ＰＡＹＬＯＡＤの第４タイプは、パラメータ化サービス品質など、幾つかの特定のＬ２ＭＥトランザクションをサポートするのに使用される。このペイロードでは、要求  Ｌ２ＭＥフレームヘッダ内のＤＩＲ＿ＬＥＮは使用されず、ＮＣノードは、全てのノードの応答を処理してカスタム要求フレームペイロードを作る。Ｌ２ＭＥ＿ＰＡＹＬＯＡＤフィールドのフォーマットは、特定のＬ２ＭＥトランザクション内で定義される。ペイロードを伴わない要求フレームが、６４ビットのタイプＩＩＩ予約済みフィールドからなることに留意されたい。
【００３６】
応答Ｌ２ＭＥメッセージフォーマット
【００３７】
[0042]応答Ｌ２ＭＥフレームフォーマットを、下の表４に示す。応答Ｌ２ＭＥフレームは、各Ｌ２ＭＥトランザクション対応ノードからＮＣノードへ各Ｌ２ＭＥウェーブの終りにユニキャストで送信される。幾つかの実施形態では、ＮＣノードを、要求されたノードから複数の（例えば、三つ以上の）応答を同時に受信するように構成することができる。
【表４】
2010518756.tif 000006
【００３８】
[0043]応答Ｌ２ＭＥメッセージは、ＲＥＳＰ＿ＳＴＡＴＵＳフィールドを含み、このＲＥＳＰ＿ＳＴＡＴＵＳフィールドは、次の又は最後のウェーブサイクルで応答することを要求されたノードの応答状況を示す。さらに、ＲＥＳＰ＿ＳＴＡＴＵＳフィールドは、ＥＮが、サブミットメッセージをＮＣノードに送信することによって開始したが応答メッセージを待ってタイムアウトしたトランザクションをキャンセルすることを可能にする。
【００３９】
[0044]Ｌ２ＭＥ対応ネットワークノードが、認識されないＶＥＮＤＯＲ＿ＩＤフィールド値、ＴＲＡＮＳ＿ＴＹＰＥフィールド値、又はＴＲＡＮＳ＿ＳＵＢＴＹＰＥフィールド値を有する任意のＬ２ＭＥトランザクションメッセージを受信する場合に、そのノードは、応答フレームのＲＥＳＰ＿ＳＴＡＴＵＳフィールドに「０」をセットすることができ、ＮＣノードは、そのトランザクションの将来のウェーブからこのノードを除外することができる。ＥＮ及び任意の応答でＩＮ＿ＦＩＮＡＬ＿ＷＡＶＥビットをセットする全て他のノードを、最後のウェーブのＷＡＶＥ＿ＮＯＤＥＭＡＳＫに含めることができる。
【００４０】
Ｌ２ＭＥトランザクションの概要
【００４１】
[0045]Ｌ２ＭＥトランザクションは、複数の形で開始することができるが、通常は、一つのＬ２ＭＥトランザクションだけを、ネットワーク内で任意の所与の時に実行することができる。一実施形態では、Ｌ２ＭＥトランザクションを、ＥＮによって開始することができ、このＥＮは、ネットワークに接続された任意のノードとすることができる。例えば、ＥＮを、コンピュータに接続されたＭｏＣＡネットワークノードとすることができる。コンピュータは、インターネットに接続され、より上位のプロトコルインターフェースによって通信するアプリケーションを実行しているものとすることができる。この構成では、コンピュータは、下でより詳細に説明するように、ＥＮをプロキシとして使用して、コンピュータ内でアプリケーションによって生成されたトランザクションに応答するＬ２ＭＥメッセージングを介してＭｏＣＡネットワーク全体を監視することができる。
【００４２】
[0046]ここで、図４を参照し、ＥＮによって開始されるトランザクションの一例を説明する。図４は、ＥＮ  ４０２によって開始されたＬ２ＭＥトランザクション４００の一例のブロック図である。より上位のレベルのアプリケーションからの要求を受け取る時に、ＥＮ  ４０２は、サブミットＬ２ＭＥメッセージを生成し、ＮＣノード４０４に送信する。ＮＣノード４０４は、そのサブミットメッセージを受信し、ＥＮ  ４０２から受信されたサブミットメッセージに類似するヘッダを有する要求メッセージをブロードキャストすることによって、最初のＬ２ＭＥウェーブ、即ちＬ２ＭＥウェーブ０を開始する。要求メッセージは、ペイロードに含まれるＷＡＶＥ＿ＮＯＤＥＭＡＳＫフィールドによって指定されるＬ２ＭＥ対応ノード４０６、４０８、４１０のそれぞれにブロードキャストされる。この要求がＬ２ＭＥ対応ではないノードに送信される場合に、そのノードは、単純にこのメッセージを無視する。
【００４３】
[0047]要求Ｌ２ＭＥフレームメッセージは、これから説明する理由のためにＥＮ  ４０２にも送信される。要求メッセージを受信すると、ＥＮ  ４０２は、要求ヘッダ内の適切なフィールドを、それがサブミットヘッダ内で使用した値と比較することによって、トランザクションを検証する。値が一致する場合には、トランザクションが処理される。しかし、ネットワーク内のＬ２ＭＥトランザクションが、ＥＮ  ４０２によって要求された最も最近のトランザクションではない場合があり得る。この状況は、ＥＮ  ４０２によって送信されたサブミットメッセージが、破壊されたか、受信されなかったか、ＮＣノード４０４によって許可されなかった時に生じる。開始されたトランザクションが、最も最近に要求されたＬ２ＭＥトランザクションではない場合に、ＥＮ  ４０２は、応答のＤＯ＿ＥＮＴＲＹ＿ＣＡＮＣＥＬビットに「１」をセットすることによって、トランザクションをキャンセルすることができる。ＤＯ＿ＥＮＴＲＹ＿ＣＡＮＣＥＬビットに「１」をセットされた応答をＥＮ  ４０２から受信すると、ＮＣノード４０４は、このトランザクションで更なるＬ２ＭＥウェーブを発行するのではなく、即座に別のＬ２ＭＥトランザクションを開始することができる。
【００４４】
[0048]Ｌ２ＭＥトランザクションがＥＮ  ４０２によってキャンセルされないと仮定すると、要求されたＬ２ＭＥトランザクション対応ノードは、それらがこのトランザクションの（一以上の）次のウェーブに参加することを選ぶか否かを示すペイロードを有する応答メッセージをＮＣノード４０４に送信する。ノードは、例えば、トランザクションが、新しいパラメータ化ＱｏＳフローを作成するためのパラメータ化ＱｏＳトランザクションであり、そのノードがパラメータ化ＱｏＳフローをサポートできない場合には、将来のウェーブに参加しないことを選ぶことができる。ノードは、ＩＮ＿ＮＥＸＴ＿ＷＡＶＥビットに「１」をセットすることによってネットワークトランザクションに参加することを選ぶことができ、ＩＮ＿ＮＥＸＴ＿ＷＡＶＥビットに「０」をセットすることによって参加しないことを選ぶことができる。続くＬ２ＭＥウェーブでは、ＮＣノード４０４は、通常、上で説明したように、以前のウェーブからの全ての応答を連結することによって、要求Ｌ２ＭＥフレームペイロードを生成する。次に、ＮＣノード４０４は、この要求メッセージを、現在のウェーブへの参加を要求したノードに送信する。幾つかのトランザクションの実施形態に場合には、ＮＣノードが、受信された応答ペイロードから、別個の連結されない要求メッセージペイロードを作ることがあることに留意されたい。トランザクションは、ＮＣノードが、サブミットＬ２ＭＥメッセージで指定されたウェーブの最大個数に達するまで継続される。トランザクションのウェーブの最大個数に達したと、ＮＣノード４０４は、最終ウェーブを発行し、この最終ウェーブは、ＥＮ  ４０２への要求Ｌ２ＭＥフレームメッセージを含む。
【００４５】
[0049]しかし、ＮＣノード４０４が、Ｌ２ＭＥ対応ノードの全てからＩＮ＿ＮＥＸＴ＿ＷＡＶＥビットに「０」をセットされた応答を受信し、ＥＮ  ４０２が存在する場合に、ＮＣノード４０４は、そのトランザクションの中間ウェーブをスキップし、適切な要求ペイロードを合成することができる。要求ペイロードが、連結を使用して作成された場合には、ＮＣノード４０４は、ディレクトリのエントリの全てにＤＩＲ＿ＮＯＤＥ＿ＩＤ＝０ｘＦＦを充てんし、合成された要求は、最終ウェーブについて正しくセットされたＴＸＮ＿ＷＡＶＥ＿Ｎを有することができる。
【００４６】
[0050]複数のＬ２ＭＥトランザクションにおいて、ＮＣノード４０４は、ＥＮ  ４０２だけが、全ての他のノードが応答した後にその要求メッセージに対する応答を供給することを要求することができる。この応答は、様々なトランザクションでＬ２ＭＥウェーブを完了するものであり、トランザクションが完了したことをＥＮ  ４０２がそのアプリケーションに通知する前に、Ｌ２ＭＥトランザクションが、完全に完了していることを保証する。他のＬ２ＭＥトランザクションでは、トランザクションは、ＮＣノード４０４が、ＥＮ  ４０２を含む複数のノードに要求を送信し、ノードのそれぞれから応答を受信するまで、完了しない。
【００４７】
[0051]幾つかの例では、Ｌ２ＭＥトランザクション全体が、エラーをもたらす場合がある。この状況は、例えば、（１）Ｌ２ＭＥウェーブサイクルが失敗する、（２）所与のトランザクション内の実行されたＬ２ＭＥウェーブの個数が、開始のサブミットＬ２ＭＥメッセージ内のＴＸＮ＿ＬＡＳＴ＿ＷＡＶＥ＿ＮＵＭフィールドで示されるＬ２ＭＥウェーブの期待される総数未満である、及び（３）Ｌ２ＭＥトランザクションがＥＮによって開始された場合に生じる。一実施形態では、Ｌ２ＭＥトランザクションが失敗する場合に、ＮＣノード４０４は、トランザクション失敗ウェーブと呼ばれる新しいＬ２ＭＥウェーブを発行する。このウェーブは、以前のＬ２ＭＥウェーブの失敗に起因するトランザクションの終了をアナウンスする。トランザクション失敗ウェーブは、ＮＣノード４０４が、上の表２で定義したように、ＷＡＶＥ＿ＳＴＡＴＵＳフィールドに「４」をセットされ、ＷＡＶＥ＿ＮＯＤＥＭＡＳＫがＥＮ  ４０２に対応するビットに「１」をセットされた要求Ｌ２ＭＥフレームヘッダを送信することによって開始される。さらに、この要求Ｌ２ＭＥフレームは、上で説明したように０の長さのペイロードである。この要求の受信時に、ＥＮ  ４０２は、上の表４に示した応答Ｌ２ＭＥフレームを送信する。
【００４８】
[0052]別の実施形態で、ＮＣノード４０４は、他のノードのどれがＬ２ＭＥトランザクション対応であるかをネットワークノードに知らせるためにＬ２ＭＥトランザクションを自律的に開始することができる。これらのＮＣノードによって開始されたトランザクションは、通常、単一のウェーブで行われ、レガシノード又は他の互換ノードとの相互運用性を提供することによってネットワークメンテナンスを達成するように設計される。ＮＣノードによって開始されるＬ２ＭＥウェーブトランザクションは、通常、次の特性を有する。
１．  ウェーブ持続期間の上限を設けるために、ＮＣノードは、ＣＹＣＬＥ＿ＮＯＤＥＭＡＳＫフィールドに少なくとも三つのノードを含めなければならない。
２．  ＮＣノードが、ＮＣ＿ＴＩＭＥＯＵＴ以内に要求されたノードから期待される応答を受信しない場合に、そのＮＣノードは、応答がもはや未解決ではないと仮定する。
３．  ＮＣノードは、全ての他のノードがまずその応答を送信するように要求される前に、あるノードにその応答を再送信することを要求することができない。
４．  要求時に、第２の要求からＴ２１以内に応答を供給できない全てのノードは、Ｌ２ＭＥウェーブ失敗を引き起こす。
【００４９】
[0053]ＷＡＶＥ＿ＮＯＤＥＭＡＳＫフィールドは、Ｌ２ＭＥトランザクション対応ノードとしてＮＣノード４０４によって認識されるノードのセットを示す。ノードがＮＣノード４０４によって認識される場合に、そのノードは、下の表５に従って、トランザクションを完了するために長さ０の応答メッセージを使用して応答する。
【表５】
2010518756.tif 000007
【００５０】
パラメータ化サービス品質アーキテクチャ
【００５１】
[0054]ここで、ネットワークパラメータ化サービス品質（ｐＱｏＳ）セグメントの一実施形態を、説明する。ホームネットワークが、同軸ネットワーク、ＭｏＣＡセグメント、及びＩＥＥＥ  ８０２．１１セグメントのような、複数のｐＱｏＳセグメントを含み得ることに留意されたい。ｐＱｏＳセグメントは、同一のＰＨＹレイヤ及びＭＡＣレイヤを共有するネットワーク化されたノードの任意のグループとすることができ、このグループは、入口ノードでネットワークに入るフローが、ｐＱｏＳ保証を伴って一以上の出口ノードに達することを保証する。ｐＱｏＳ保証は、少なくとも所定のデータレートが、入口ノードから出口ノードへのデータの通信について提供されることを保証する。一実施形態では、各ｐＱｏＳセグメントは、それ自体のＩＤを有し、このＩＤは、通常、ＮＣノードのＭＡＣアドレスである。上位レイヤｐＱｏＳ論理エンティティを、フローを複数のｐＱｏＳセグメントにまたがってどのようにセットアップできるかを規定するように構成することができる。全てのネットワークノードが、通常は同一ｐＱｏＳセグメント内で動作していることに留意されたい。
【００５２】
[0055]一般に、ネットワークは、三つのカテゴリ、即ち（１）Ｌ２ＭＥトランザクション又はｐＱｏＳ機能を有しないネットワークのようなレガシネットワーク、（２）パラメータ化ＱｏＳ対応のネットワーク、及び（３）パラメータ化ＱｏＳ非対応のネットワーク、に分類することができる。Ｌ２ＭＥ対応のネットワークで動作する全てのネットワークノードは、そのノードが他のレガシデバイスを有するネットワーク内で動作している場合には、レガシデバイスとして振る舞う。一実施形態では、各ネットワークノードは、Ｌ２ＭＥ及びｐＱｏＳ機能を有する。
【００５３】
[0056]幾つかの実施形態では、ｐＱｏＳは、ネットワークノードのうちのいずれか一つがｐＱｏＳをサポートしない場合に無効にされる。例えば、非ｐＱｏＳ対応ノードがｐＱｏＳ対応ネットワークに加わる場合には、そのネットワークは、ｐＱｏＳをサポートするのを止め、全てのネットワークノードがｐＱｏＳ対応になるまで新しいｐＱｏＳフローを作成するのも止める。あるネットワークノードが新しいフローを作成しようと試みる場合には、エラーメッセージが、新しいフローのセットアップを要求するネットワークノードに送信される。さらに、ｐＱｏＳフローは、もはや保証されず、パケットは、優先順位付きトラフィック又はベストエフォートトラフィックとして扱われる。
【００５４】
[0057]しかし、非ｐＱｏＳ対応ノードがネットワークを去り、ｐＱｏＳ対応ノードだけが残される場合には、ネットワークは、アップグレードし、ｐＱｏＳ伝送を可とすることができる。ｐＱｏＳにアップグレードする時には、優先順位付きフローは、入口ノードによって上で説明したアップグレードによってアップグレードされるまで、優先順位付きフローのままになる。
【００５５】
[0058]ここで、図５を参照し、Ｌ２ＭＥアーキテクチャに基づくｐＱｏＳアーキテクチャの一実施形態を説明する。パラメータ化ＱｏＳネットワークアーキテクチャ５００は、複数のノード５０４、５０６、５０８、５１０を有するネットワーク５０２を含む。ネットワーク５０２は、ＭｏＣＡ標準規格に従う同軸ネットワーク、メッシュネットワーク、又は無線ネットワークを含む協調ネットワークであってもよい。一実施形態では、複数のノード５０４、５０６、５０８、５１０のそれぞれは、ＰＨＹレイヤ５１２、ＭＡＣサブレイヤ５１４、及びＬ２ＭＥ  ５１６を有する。ＵＰｎＰサービス品質環境では、Ｌ２ＭＥ  ５１６は、ＱｏＳデバイスサービス５１８へのインターフェースとなる。非ＵＰｎＰ環境では、Ｌ２ＭＥは、サービス品質管理のための適切なサービス品質アプリケーションエンティティ（図示せず）へのインターフェースとなる。Ｌ２ＭＥ  ５１６は、更に、下でより詳細に説明するように、上位レイヤアプリケーションからのメッセージをレイヤ２互換メッセージに適合させるように構成される。
【００５６】
[0059]複数のノード５０４、５０６、５０８、５１０は、ＱｏＳデバイスサービス５１８、ＱｏＳマネージャサービス５２０、及びＱｏＳポリシホルダサービス５２２を含む、より上のレベルの機能をも伴って構成される。ＱｏＳデバイスサービス５１８は、ＱｏＳマネージャサービス５２０からアクション呼出しを受け取り、アクションの結果をＱｏＳマネージャサービス５２０へと報告する。ＱｏＳデバイス５１８は、それ自体で又はＬ２ＭＥ  ５１６を介して下位レイヤを利用することによって、アクションを実行する。
【００５７】
[0060]図５に示すように、ノード５０４は、エントリノードであり、ノード５０６は、ＮＣノードである。ノード５０８及び５１０は、それぞれ入口ノード及び出口ノードである。全てのネットワーク５０２に、複数の出口ノード５１０があってもよいことに留意されたい。例えば、エンドユーザアプリケーションが、入口ノード５０８から出口ノード５１０へのビデオストリームのために特定の帯域幅を必要とすると仮定する。トラフィックストリームは、通常、入口ノード５０８から出口ノード５１０への単一方向フローを有するストリームとみなされる。エンドユーザアプリケーションは、通常、入口ノード５０８、出口ノード５１０、及びストリームコンテンツを知っている。エンドユーザアプリケーションは、コンテンツのトラフィック仕様（ＴＳｐｅｃ  ＸＭＬ）をも知っている場合がある。
【００５８】
[0061]ＴＳｐｅｃ  ＸＭＬは、フローの帯域幅、パケットサイズ、待ち時間、及び消失許容度を記述する様々なパラメータを含むことができる。帯域幅パラメータの一部は、平均データレート、ピークデータレート、及び最大バーストサイズを含む。パケットサイズパラメータは、最大パケットサイズ及び最小パケットサイズ並びに公称パケットサイズを指定することができる。待ち時間パラメータは、最大遅延変動並びに最大サービスインターバル及び最小サービスインターバルを含む。
【００５９】
[0062]ｐＱｏＳ環境では、図６に示すように、Ｌ２ＭＥ  ６０６が、ＴＳｐｅｃ  ＸＭＬをレイヤ２固有ＱＳｐｅｃに変換するように適合される。Ｌ２ＭＥ  ６０６は、単純にＴＳｐｅｃ  ＸＭＬをＱＳｐｅｃとして使用すること、ＱＳｐｅｃに関するＴＳｐｅｃ  ＸＭＬのパラメータの幾つかを選択し、他のパラメータを無視すること、又はＴＳｐｅｃ  ＸＭＬのパラメータの幾つかを選択し、それらのパラメータをＱＳｐｅｃフォーマットに変換することによって、ＴＳｐｅｃ  ＸＭＬからＱＳｐｅｃを変換することができる。ＱＳｐｅｃパラメータの一部は、サービスタイプ、ピークデータレート、平均データレート、最小パケットサイズ、最大パケットサイズ、及び公称パケットサイズを含むことができる。
【００６０】
[0063]エンドユーザアプリケーションは、トラフィック記述子を構成し、要求されたフローに必要なＱｏＳリソースをセットアップするようにＱｏＳマネージャ５２０に要求する。トラフィック記述子は、ソース及びシンクの情報を定義するトラフィックＩＤ、ＴＳｐｅｃ  ＸＭＬ、及びパラメータ化ＱｏＳを提供するためのビデオストリームの他の関係する情報を含むことができる。ＱｏＳマネージャ５２０は、エンドユーザアプリケーションの代わりに働き、トラフィック記述子によって記述されるように、要求されたビデオストリームのための適当なポリシを提供するようにＱｏＳポリシホルダサービス５２２に要求する。ＱｏＳポリシホルダサービス５２２は、ネットワーク５０２のＱｏＳポリシのリポジトリであるが、ＱｏＳマネージャ５２０に要求されたビデオストリームに適当なポリシを提供する。このポリシを使用して、トラフィックフローの相対的重要性をセットすることができる。ユーザ重要性数（user importance number）は、ユーザにとって最大の重要性を有するトラフィックストリームがネットワークリソースに対する対応の優先順位を受け取ることを保証するのに使用される。このポリシに基づいて、ＱｏＳマネージャ５２０は、ＱｏＳデバイスサービス５１８を構成し、これによって、入口ノード５０８及び出口ノード５１０が新しいビデオストリームを処理することを可能にする。ＱｏＳポリシホルダ５２２及びＱｏＳマネージャ５２０サービスが、任意のネットワークノード５０４、５０６、５０８、５１０上又は別のパラメータ化ＱｏＳセグメント上のいずれかに存在することができることに留意されたい。
【００６１】
ｐＱｏＳフローのコスト
【００６２】
[0064]ネットワーク内でＱｏＳフローを許可するか更新する前に、ＮＣノード５０６は、特定のフロー要求を許可できるかどうか、例えば、十分なネットワークリソースが使用可能であるか否かを判断しなければならない。ＮＣノード５０６は、まずｐＱｏＳフローのコストを判定することによって、フローを許可すべきか否かに関する判断を行う。フローのコスト（ＣＦ）は、所与のｐＱｏＳフローをサポートするのに必要な特定の帯域幅の尺度であり、ＳＬＯＴ＿ＴＩＭＥフィールドで表される（例えば、スロット時間、ここで、スロット時間は、２０ｎｓと等しい測定の単位である）。一実施形態では、基本帯域幅単位が、タイムスロットであって転送レート（例えば、Ｍビット／ｓ）ではないことに留意されたい。しかし、別の実施形態では、ＣＦが、転送レートとして提供される。
【００６３】
[0065]下で詳細に定義される全ての生成（Create）ｐＱｏＳフロートランザクション又は更新ｐＱｏＳフロートランザクションについて、ＣＦを、入口ノード５０８によって周期的に計算することができる。ＮＣノード５０６は、このＣＦ計算を使用して、要求されたｐＱｏＳフローがネットワーク内で許容されるか否かを判断することができる。ＣＦ（ＳＬＯＴ＿ＴＩＭＥ／秒の倍数）は、次のように計算することができる。
【数１】
2010518756.tif 000008
ここで、
【表６】
2010518756.tif 000009
【００６４】
[0066]ＮＰＰＳＭＡＸは、直交周波数分割多重（ＯＦＤＭ）シンボル数／パケットであり、ここで、
【数２】
2010518756.tif 000010
は、Ｘを丸めた整数であり、これに、ＯＦＤＭシンボル長（ＳＬＯＴ＿ＴＩＭＥ数／秒）が乗じられる。ＯＦＤＭシンボルの長さはネットワークチャネル特性に依存することに留意されたい。プリアンブル長及びパケットあたりのインターフレームギャップ（ＩＦＧ）長を加算した後に、ＮＰＰＳＭＡＸは、１秒あたりに送信されるパケットの総数と乗じられ、この総数は、ピークパケットレートを公称パケットサイズによって割ることによって与えられる。入口ノード５０８ごとの全ての既存フローのコストＮ（パケット集約なし）は、
【数３】
2010518756.tif 000011
によって与えられる。
【００６５】
[0067]入口ノード５０８が新しいフローを受け入れるためには、その最大使用可能帯域幅が、現在のフロー及び新しいフローのコスト以上でなければならない。この条件は、
【数４】
2010518756.tif 000012
によって与えられる。
【００６６】
[0068]新しいｐＱｏＳフローが入口ノードによって受け入れられたならば、ＮＣノード５０６は、新しいｐＱｏＳフローのコストを含む全てのノードの集約された全てのｐＱｏＳフローのコストが総最大使用可能ネットワーク帯域幅以下であるか否かを判断しなければならない。ネットワーク内にＭ個のノードがあると仮定すると、総使用可能ネットワーク帯域幅は、条件
【数５】
2010518756.tif 000013
を満足しなければならない。
【００６７】
[0069]ここで、ＢＷＮＣは、総ネットワーク帯域幅である。幾つかの実施形態では、ｐＱｏＳサービスに関するネットワーク内の総使用可能帯域幅は、総ネットワーク帯域幅から全てのオーバーヘッドのコストを引いたものの８０％であり、このオーバーヘッドは、全てのリンク制御パケット、予約要求、許可コントロール、及びプローブを含み得る。式（４）が真の場合に、ＮＣノード５０６は、新しいｐＱｏＳフローをネットワークに受け入れる。式（４）が真ではない場合に、ＮＣノード５０６は、フロー要求を拒絶し、次のように使用可能フロー帯域幅（ＡＦＢＱ）を返す。
【数６】
2010518756.tif 000014
【００６８】
[0070]ＮＣノードが新しいフローを受け入れるためには、入口ノード５０８及び出口ノード５１０のそれぞれのＮｏｄｅＣａｐａｃｉｔｙが、そのノードを通る既存フロー及び新しいフローのコスト以上でなければならない。この条件は、
【数７】
2010518756.tif 000015
によって与えられる。
【００６９】
[0071]残りのノード容量（ＲＥＭ＿ＮＯＤＥ＿ＣＡＰＡＣＩＴＹ）は、式（６）の左辺と右辺との間の差であり、特定のフロー作成又は更新を許容する前にＮＣノード５０６によって使用される帯域幅関連基準のうちの一つである。ｐＱｏＳフローの最も基本的な帯域幅要件は、１サイクル（例えば、１ｍｓ）に必要なタイムスロットの個数であり、Ｍビット／秒単位の帯域幅値とデータリンクレイヤでのタイムスロットの個数との間の単純なマッピングは、ＯＦＤＭ変調及びビットローディングに起因して単純ではないので、変換が、通常、フローに必要なパケット数を判定するために必要である。一つのデータリンクサイクルでの同等の最大パケット数及び各パケットのサイズ（ビット単位）を見つけるために、１サイクルあたりのデータリンクレイヤでのフローに必要なワーストケース帯域幅は、次のとおりである。
【数８】
2010518756.tif 000016
ここで、ＱＳｐｅｃ＿ＰｅａｋＤａｔａＲａｔｅ及びそのタイムスロットへの変換は、ＮＣによってフローのために予約されるデータリンクレイヤ帯域幅である。
【数９】
2010518756.tif 000017
１ｍｓにわたるＴＳｐｅｃ＿ＰｅａｋＤａｔａＲａｔｅが、１ｍｓ以外のＴｉｍｅＵｎｉｔを用いてＴＳｐｅｃ＿ＰｅａｋＤａｔａＲａｔｅから計算される。
【００７０】
[0072]ＴｉｍｅＵｎｉｔパラメータは、ライブトラフィックソースのトークンバケットＴＳｐｅｃ  ＸＭＬの仕様がそのトラフィック生成プロセスと一致することを可能にする。ＴｉｍｅＵｎｉｔパラメータは、トランスポート情報が使用可能であるか否かにかかわりなく、事前に記録されたコンテンツ又はレガシコンテンツからトークンバケットＴＳｐｅｃ  ＸＭＬを抽出する便利で柔軟な方法をも提供する。例えば、トランスポート情報を伴わないＭＰＥＧコーディングされたビデオコンテンツの場合、ＰｅａｋＤａｔａＲａｔｅを、ビデオフレーム内の最大ビット数をビデオフレーム持続時間によって割ったものとして指定することができる。この態様では、ＴｉｍｅＵｎｉｔは、ビデオフレームレートによって判定されるビデオフレームインターバルである。メディアが、例えばＰＣＭオーディオである場合には、ＴｉｍｅＵｎｉｔは、そのサンプリングレートの逆数と等しいものとすることができる。ＲＴＰなどのトランスポート情報を備えるコンテンツの場合、ＲＴＰタイムスタンプの分解能は、９０ＫＨＺのデフォルトを有するが、通常は、ＴＳｐｅｃ  ＸＭＬを指定するのに使用される。ＴＳｐｅｃ  ＸＭＬ内のＴｉｍｅＵｎｉｔが、トラフィックストリームをトランスポートするのに使用される基礎になるリンクの動作クロックレートによって決定されるＴｉｍｅＵｎｉｔと一致しないことが、まれではなく、異なるＴｉｍｅＵｎｉｔで指定されたトークンバケットＴＳｐｅｃ  ＸＭＬの変換が必要である場合がある。
【００７１】
[0073]トークンバケットモデルでのＰｅａｋＤａｔａＲａｔｅの定義から、任意の区間［ｔ１，ｔ０］で、｛ｒ，ｂ，ｐ｝の特性を有するトラフィックソースによって生成されるビットの最大個数は、任意のｔ１−ｔ０≧ＴＵＴＳＰＥＣについて、ｐ（ｔ１−ｔ０）を超えてはならない。したがって、任意の区間［ｔ１−ｔ０］で測定される最大データレート、即ちＰｅａｋＤａｔａＲａｔｅは、
【数１０】
2010518756.tif 000018
を超えてはならない。
【００７２】
[0074]同様に、トークンバケットモデルでのＭａｘｉｍｕｍＢｕｒｓｔＳｉｚｅの定義から、任意の区間［ｔ１−ｔ０］で、｛ｒ，ｂ，ｐ｝の特性を有するトラフィックソースによって生成される最大ビット量は、任意のｔ１−ｔ０≧ＴＵＴＳＰＥＣについてｒ（ｔ１−ｔ０）＋ｂを超えてはならない。任意の区間［ｔ１−ｔ０］で測定される最大データレート、即ちＰｅａｋＤａｔａＲａｔｅは、
【数１１】
2010518756.tif 000019
を超えてはならない。
【００７３】
[0075]したがって、上の制約の両者を組み合わせると、動作クロックレートｃｏｐｅｒによって決定されるＴＵｏｐｅｒ（＞ＴＵＴＳＰＥＣ）の任意の時間単位に関する動作クロックレートｃｏｐｅｒで測定されるＰｅａｋＤａｔａＲａｔｅ（ｐｏｐｅｒによって表される）は、
【数１２】
2010518756.tif 000020
によって与えられる。
【００７４】
パラメータ化ＱｏＳフロー保証
【００７５】
[0076]ｐＱｏＳフロー保証は、ＣＦが使用可能ネットワーク帯域幅を超えないならば、ｐＱｏＳ対応ネットワークが、フローをサポートできることを意味する。これは、フローのピークデータレート／公称パケットサイズ（Ｎｐｐｓ）をいつでもサポートできない限り、新しいｐＱｏＳフローがネットワーク内で認められないことを意味する。入口ノード５０８又はＮＣノード５０６のいずれもが、フローの入ピークパケットレートがネットワークによってサポートできるピークデータレート／公称データサイズを瞬間的に超えることを許容できることに留意されたい。
【００７６】
[0077]一実施形態では、ＮＣノード５０６は、総ネットワーク帯域幅の一部が優先順位付けされたトラフィックのために確保され、トラフィックの残りがパラメータ化されたトラフィックに使用されることを保証する。例えば、ＮＣノード５０６は、優先順位付けされたトラフィックのために総ネットワーク帯域幅の２０％を確保し、帯域幅の残りの８０％は、パラメータ化されたトラフィックのために確保される。優先順位付けされたトラフィックは、非同期ストリームトラフィック及び非同期データトラフィックを含む。非同期ストリームトラフィック、例えばビデオストリームは、ストリームの平均データレートの知識を必要とする。したがって、ＱｏＳマネージャ５２０は、許可を要求するか、非同期ストリームトラフィックに使用可能な帯域幅の可用性に関する情報を入手することができる。優先順位付けされた帯域幅が、重いネットワーク負荷に起因して使用可能ではない場合には、ストリームは、認められず、ソース（入口ノード５０８）は、その後、非同期データトラフィックとしてトラフィックを送信することを試みることができる。非同期ストリームトラフィックのＱＳｐｅｃは、サービスタイプパラメータ及び最大パケットサイズパラメータを含む。
【００７７】
[0078]非同期データトラフィック、例えばファイル転送は、必要な又は予測可能な帯域幅がないトラフィックである。非同期データトラフィックは、ベストエフォートトラフィック、例えば、その優先順位を示すＶＬＡＮタグを有しないトラフィックをも含むことができる。一実施形態では、ベストエフォートトラフィックは、下で説明する許可プロセスを通らない。ネットワーク制御及びフロー管理トラフィックは、通常、優先順位付けされたトラフィックとみなされる。しかし、短い予測可能な待ち時間が要求されるある種のアプリケーションでは、ネットワーク制御及びフロー制御トラフィックを、パラメータ化されたフロー帯域幅を使用するように構成することができる（例えば、プルモードＤＶＲ再生又は、管理交換のラウンドトリップ時間が７ｍｓまでに制限されるＤＴＣＰローカライゼーション制約）。或いは、ネットワーク制御及びフロー管理トラフィックを、高優先順位非同期トラフィックとして扱うことができる。高優先順位非同期データトラフィックとして扱われる場合に、優先順位付けされたトラフィックのために確保される帯域幅は、ネットワーク管理及びストリーム管理トラフィックのメッセージをタイムリーに送信できるようにするために、ネットワーク管理及びストリーム管理トラフィックに必要なものより多くしなければならない。
【００７８】
[0079]ｐＱｏＳフローの帯域幅を要求する時に、全てのノードは、データ／制御Ｒｅｓｅｒｖａｔｉｏｎ  要求  ＥｌｅｍｅｎｔフレームのＰＲＩＯＲＩＴＹフィールドに、下の表７に示すように０ｘ３をセットすることができる。ＮＣノード５０６は、ネットワーク５０２内のフローのスケジューリングを調整する。ネットワークレベルでは、三つの優先順位レベル、即ち、（１）ネットワーク及びストリーム管理を含む高優先順位、（２）非同期ストリームを含む中優先順位、及び（３）ベストエフォートトラフィックなど、優先順位タグを伴わない非同期トラフィックを含む低優先順位、がサポートされる。フローをスケジューリングする際には、ＮＣノード５０６は、先入れ先出し方式でｐＱｏＳフローをスケジューリングする。一実施形態では、これらのｐＱｏＳフローは、非ｐＱｏＳフローがスケジューリングされる前にスケジューリングされる。
【表７】
2010518756.tif 000021
【００７９】
[0080]一部のｐＱｏＳフローは、可変ビットレート（ＶＢＲ）フローであってもよい。ＶＢＲフローのピークデータレートは、その平均レートより高く、フローは、長い時間にわたってその平均レートを使用するので、パラメータ化されたフロー帯域幅の大部分が、フローによって使用されないことがある。帯域幅を最大にするために、ＶＢＲフローの未使用帯域幅が、非同期トラフィックに使用可能とされる。したがって、実際の非同期帯域幅は、（１）非同期トラフィック用のプリセット部分、及び、（２）パラメータ化されたフロー帯域幅からの再利用される部分という二つの成分を有する。
【００８０】
パラメータ化ＱｏＳトランザクション
【００８１】
[0081]図５に示した実施形態では、パラメータ化ＱｏＳトランザクションが、ＮＣノード５０６又はエントリノード５０４のいずれかによって開始され得る。ＥＮによって開始されたトランザクションは、通常、二つのｐＱｏＳウェーブを含み、通常、サブミットメッセージがＮＣノード５０６にユニキャストで送信されることによって開始される。ＥＮ  ５０４の入力が、ネットワーク５０２の外の別のｐＱｏＳセグメントからであってもよいことに留意することが重要である。サブミットメッセージの受信時に、ＮＣノード５０６は、通常、特定のｐＱｏＳフロー情報が返されることを求める要求メッセージを全てのネットワークノード５０４、５０８、５１０にブロードキャストすることによって、第１ウェーブを開始する。第２ウェーブでは、ＮＣノード５０６は、通常、第１ウェーブでネットワークノードからの応答から受信された情報をブロードキャストする。
【００８２】
[0082]対照的に、ＮＣノード５０６によって開始されるｐＱｏＳトランザクションは、通常、単一のｐＱｏＳウェーブだけを含む。このｐＱｏＳウェーブは、ＮＣノード５０６が、特定のアクションを行うことを要求する要求メッセージを全てのノード５０４、５０８、５１０にブロードキャストすることによって開始される。このウェーブは、要求されたネットワークノード５０４、５０８、５１０のそれぞれから応答がＮＣノード５０６によって受信された時に完了する。
【００８３】
[0083]サポートされるｐＱｏＳフローのそれぞれを、ユニキャスト又はブロードキャストフローのいずれかで送信することができる。ネットワーク内のマルチキャストフローが、通常、ブロードキャストフローとして処理され、出口ノードＩＤが０ｘ３ｆであることに留意されたい。ブロードキャストフローは、ネットワーク内の全てのネットワークノードに送信されるｐＱｏＳフローである。ＮＣノード５０６は、入口ノード５０８又は出口ノード５１０がネットワーク５０２から切断される場合に、ユニキャストフローを削除することができる。対照的に、ブロードキャストフローは、入口ノード５０８がネットワークから切断される時を除いて、通常、ネットワークトポロジの理由からは削除されない。
【００８４】
パラメータ化ＱｏＳフロートランザクションの作成及び更新
【００８５】
[0084]ここで、図７を参照し、図５に示された実施形態による生成／更新トランザクションの一例を説明する。生成トランザクション又は更新トランザクションの目的は、図５に示した入口ノード５０８と出口ノード５１０との間で新しいｐＱｏＳフローを作成するか、ｐＱｏＳフロー属性を更新することである。当初に、ＱｏＳマネージャ５２０は、入口ノード５０８と出口ノード５１０の双方並びにＱｏＳデバイスサービス５１８からのフロー経路のＱｏＳデバイスのＩＰアドレス及びＭＡＣアドレスを受信する。次に、ｐＱｏＳフローの経路が、経路が見つかるまで、ＱｏＳデバイスサービス５１８から報告されたＲｅａｃｈａｂｌｅＭＡＣ値を入口ノード５０８及び出口ノード５１０のＭＡＣアドレスと比較することによって、ＱｏＳマネージャ５２０によって判定される。
【表８】
2010518756.tif 000022
【００８６】
[0085]ｐＱｏＳフローは、フローＩＤによって特定することができる。一実施形態では、フローＩＤは、マルチキャスト宛先ＭＡＣイーサネットアドレスであり、パケットは、ｐＱｏＳフロー上でルーティングされる。タグ値（ＴＶ）フィールドは、２４個までの異なるｐＱｏＳエントリを有する。各ｐＱｏＳ  ＴＶエントリは、８ビットタグフィールド及びそれに続く２４ビットタグ値フィールドを有する。表９に、ＴＶエントリのｐＱｏＳタグのリストの例を示す。タグ「０」が、現在のＴＶを示し、全ての続くＴＶエントリを無視できることに留意されたい。範囲外のＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥ値は、フローを作成せずに使用可能帯域幅を照会するための特殊事例と解釈することができる。ＬＥＡＳＥ＿ＴＩＭＥフィールドは、その後に入口ノード５０８（図５に図示）が関連するトラフィックをｐＱｏＳフローとして扱うのを止め、そのフローに関連するリソースを解放できる持続時間を示す。
【表９】
2010518756.tif 000023
【００８７】
[0086]一実施形態では、ｐＱｏＳトランザクションは、ＮＣノード５０６がＥＮ  ７０４からサブミットメッセージを受信する時に開始される。ＥＮ  ７０４が、ＱｏＳデバイスサービス５１８（図５に図示）などの上位レイヤアプリケーションに応答してサブミットメッセージを送信する場合があることに留意されたい。ＥＮ  ７０４からサブミットメッセージを受信した後に、ＮＣノード７０６は、ネットワークに接続された全てのノード７０４、７０８に要求メッセージを送信し、これによって第１ウェーブ（ウェーブ０）７１０を開始する。第１ウェーブ７１０は、提案されたｐＱｏＳフローの生成トランザクション又は更新トランザクションについて全てのネットワークノード７０４、７０８に知らせ、これらのノードから現在のフロー割振りに関するメトリックを収集するのに使用される。
【００８８】
[0087]要求Ｌ２ＭＥメッセージの受信時に、入口ノード５０８及び出口ノード５１０（両方とも図５に図示）は、ＴＳｐｅｃ  ＸＭＬ値を使用して、フローに必要なタイムスロット並びにシステムバス帯域幅及びメモリなどの各ノードから必要なリソースを計算する。各要求されたノードは、既存のｐＱｏＳフローの集計コストを示す応答Ｌ２ＭＥフレームをＮＣノード７０６に応答して、第１  Ｌ２ＭＥウェーブを完了し得る。あるノードが要求Ｌ２ＭＥフレームを受信し、そのフローに関わっていない場合に、そのノードは、そのメッセージを単純に無視できることに留意されたい。生成／更新トランザクションに関する応答メッセージフォーマットの一例を、下の表１０で指定する。ＮＣノード７０６が、所与のタイムインターバル以内に入口ノード５０８又は出口ノード５１０から応答Ｌ２ＭＥフレームを受信しない場合に、ＮＣノード７０６は、メッセージを失敗として扱う前に、ある回数、例えば３回まで、要求Ｌ２ＭＥメッセージを再ブロードキャストすることに留意されたい。
【表１０】
2010518756.tif 000024
【００８９】
[0088]各要求されたノード７０４、７０８は、そのノードが入口ノードである新しいフロー又は更新されるフローを除く全ての既存フローのＥＸＩＳＴＩＮＧ＿ＴＰＳ値を計算することによって、応答Ｌ２ＭＥフレームを生成する。この値は、フローごとに式（１）を使用することによって計算される。ノード７０４、７０８は、新しいフロー又は更新されるフローを除く全ての既存フローのＥＸＩＳＴＩＮＧ＿ＰＰＳ値をも計算する。ＥＸＩＳＴＩＮＧ＿ＰＰＳ値は、各フローのピークデータレート／公称パケットサイズの合計である。さらに、ノード７０４、７０８は、式（１）に従ってＳＬＯＴ＿ＴＩＭＥ／秒単位の新しいフロー又は更新されるフローのコストとしてＣＯＳＴ＿ＴＰＳ値を計算する。ＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥ＝０の値は除外される。フロースループット（ビット／秒）に対する入口ノード又は出口ノードの制限がある場合には、ノード７０４、７０８は、ビット／秒単位の残りのノード容量（ＲＥＭ＿ＮＯＤＥ＿ＣＡＰＡＣＩＴＹ）を計算し、ＶＥＴＯ＿ＣＯＤＥフィールドを使用して理由を特定する（ノードの容量定義）。ウェーブ１の応答Ｌ２ＭＥフレームのフォーマットの一例を、下の表１５に示す。
【００９０】
[0089]ノードがＮＣノード７０６によって発行された要求を満足するのに使用不能となり得る複数のシナリオがある。これらの場合に、そのノードはＶＥＴＯ＿ＣＯＤＥを発行する。ＶＥＴＯ＿ＣＯＤＥの例を、下の表１１に示す。ＩＮＶＡＬＩＤ＿ＴＶは、次のステートメントのうちの一以上が、ＮＣノード７０６によって受信されるＴＶセットに関して真である場合に発行される。
１．ＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥが存在しない。
２．ＮＯＭ＿ＰＡＣＫＥＴ＿ＳＩＺＥが存在しない。
３．ＮＯＭ＿ＰＡＣＫＥＴ＿ＳＩＺＥが６４Ｂ未満又は１５１８Ｂより大きい。
【表１１】
2010518756.tif 000025
【００９１】
[0090]ＮＣノード７０６が、第２ウェーブ（ウェーブ１）７１２を開始できる前に、ＮＣノード７０６は、生成トランザクション又は更新トランザクションの結果が、（１）ノードが要求されたフローの非帯域幅関連理由を供給したので拒否される、（２）帯域幅制限のゆえに拒否される、又は（３）要求されたとおりにフローリソースをコミットすることを許容される、のいずれであるかを判定する必要がある。
【表１２】
2010518756.tif 000026
【００９２】
[0091]いずれかのノードが上の表１２にリストされたＶＥＴＯ＿ＣＯＤＥのうちの一つを返す場合に、ウェーブ１に関する要求は、対応するＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮを含む。あるノードがＶＥＴＯ＿ＣＯＤＥ＿ＩＮＧＲＥＳＳ＿ＯＫを返さない場合に、ウェーブ１の要求は、下の表１４に示されたＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮ＿ＦＬＯＷ＿ＮＯＴ＿ＦＯＵＮＤを含む。
【００９３】
[0092]ＮＣノード７０６は、特定のフローのＣｒｅａｔｅ又はＵｐｄａｔｅを許可する前に、次の三つの帯域幅関連基準を評価し、これらが満足されることを保証する。
１．  集計されたＴＰＳ  全てのノードからのＥＸＩＳＴＩＮＧ＿ＴＰＳ値及びＣＯＳＴ＿ＴＰＳ値の合計が、ＱＵＡＬＩＴＹ  ＯＦ  ＳＥＲＶＩＣＥ＿ＴＰＳ＿ＭＡＸ未満であってよい。
２．  集計されたＰＰＳ  全てのノードからのＥＸＩＳＴＩＮＧ＿ＰＰＳ値及びＮｐｐｓ値の合計が、ＱＵＡＬＩＴＹ  ＯＦ  ＳＥＲＶＩＣＥ＿ＰＰＳ＿ＭＡＸ未満であってよい。
３．  入口ノード又は出口ノードの容量  入口ノード又は出口ノードでの返却ＲＥＭ＿ＮＯＤＥ＿ＣＡＰＡＣＩＴＹ値が、要求されたフローのＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥ以上であってよい。
【００９４】
[0093]ＮＣノード７０６が、要求されたフローリソースを生成トランザクション又は更新トランザクションのために投入（Commit）できると判定する場合には、ＮＣノード７０６は、ウェーブ１に参加するノードに長さ０のペイロードを伴う要求Ｌ２ＭＥフレームを送信して、要求されたリソースを投入することができる。
【００９５】
[0094]これらの帯域幅関連基準のいずれか一つが不合格である場合に、ＮＣノード７０６は、要求フレームのペイロード内のＭＡＸ＿ＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥ（ＴＨＲＥＳＨＯＬＤ＿ＢＰＳ）値を計算することができる。ＭＡＸ＿ＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥは、成功した最大の許容可能なフローＰＥＡＫ＿ＤＡＴＡ＿ＲＡＴＥ（ビット／秒）である。ＮＣノード７０６は、次のＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮのうちの一つを選択することによって、最も制限的な基準を指定することもできる。
１．ＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮ＿ＩＮＳＵＦ＿ＩＮＧ＿ＢＷ
２．ＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮ＿ＩＮＳＵＦ＿ＥＧＲ＿ＢＷ
３．ＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮ＿ＩＮＳＵＦ＿ＡＧＧＲ＿ＢＷ
４．ＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮ＿ＩＮＳＵＦ＿ＡＧＧＲ＿ＰＰＳ
【００９６】
[0095]第２ウェーブ７１２は、フロー生成トランザクション又はフロー更新トランザクションの判断についてノードに知らせる。生成トランザクション又は更新トランザクションが第１ウェーブ７１０で失敗する場合には、ＮＣノード７０６は、下の表１３に従って第２ウェーブ７１２の要求Ｌ２ＭＥフレームを送信することができ、ここで、ＴＨＲＥＳＯＬＤ＿ＢＰＳ値は、四つの上のＲＯＬＬＢＡＣＫ＿ＲＥＡＳＯＮについてのみ定義される。更新トランザクションが失敗する場合には、既存のｐＱｏＳフローは、それでも、その現在のＴＳｐｅｃ  ＸＭＬパラメータを用いて存続することに留意されたい。
【表１３】
2010518756.tif 000027
【表１４】
2010518756.tif 000028
【００９７】
[0096]第２ウェーブ７１２での成功の生成トランザクションに関する長さ０の要求を受信する時に、そのフローの入口ノード５０４（図５に図示）は、要求されたリソースを投入することができる。各ノード７０４、７０８は、応答メッセージフォーマットを用いて応答し、このフォーマットの一例を、下の表１５に示す。最終ウェーブ８１４、即ちウェーブ２で、ＮＣ  ８０６は、ＥＮ  ８０４に生成／更新トランザクションの結果について通知する。
【表１５】
2010518756.tif 000029
【００９８】
Ｄｅｌｅｔｅ  Ｐａｒａｍｅｔｅｒｉｚｅｄ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅフロートランザクション
【００９９】
[0097]Ｄｅｌｅｔｅ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅフロートランザクションの目的は、特定のｐＱｏＳフローを入口ノード５０８及び出口ノード５１０（図５に図示）のセットの間で分解することである。ここで、図８を参照して、図５に示した実施形態によるＤｅｌｅｔｅ  ｐＱｏＳトランザクション８００の一例を説明する。Ｄｅｌｅｔｅ  ｐＱｏＳトランザクション８００は、三つのＬ２ＭＥウェーブ８１０、８１２、８１４を含む。このトランザクションは、ＥＮ  ８０４が、削除すべきフローＩＤを指定するサブミットメッセージをＮＣノード８０６に送信する時に開始される。Ｄｅｌｅｔｅメッセージフォーマットの一例を、下の表１６に示す。
【表１６】
2010518756.tif 000030
【０１００】
[0098]Ｄｅｌｅｔｅトランザクション８００の第１ウェーブ（ウェーブ０）８１０は、どのｐＱｏＳフロー及びリソースを削除しなければならないのかについて全てのネットワークノード８０４及び８０８に知らせる。ＮＣノード８０６は、全てのノード８０４、８０８へのサブミットメッセージに基づいて、要求メッセージフォーマットを使用して第１ウェーブ８１０を開始する。ノード８０４、８０８は、それらが削除されるフローに関連するリソースを有するか否かを示す応答メッセージを用いて応答することができる。
【表１７】
2010518756.tif 000031
【０１０１】
[0099]第２ウェーブ８１２、即ちウェーブ１中に、フローリソースが削除される。ＮＣノード８０６は、第１ウェーブ８１０からの連結された応答を有する要求メッセージフォーマットを使用して第２ウェーブ８１２を開始する。第２ウェーブ８１２、即ちウェーブ１で使用される応答メッセージフォーマットを、応答メッセージフォーマットの一例として下の表１８に示す。各ノード８０４、８０８は、フレームのペイロード部分のＤＥＬＥＴＥＤフィールド内のビット３１をセットすることによってフロー検出を示す応答フレームを、第２ウェーブ８１２で応答する。
【表１８】
2010518756.tif 000032
【０１０２】
[00100]第３ウェーブ８１４では、ＮＣノード８０６が、要求されたフローが削除されたことをＥＮ  ８０４に知らせる。第３ウェーブ８１４は、第２ウェーブ８１２からの連結された応答を有する要求メッセージフォーマットを使用してＮＣノード８０６によって開始される。Ｄｅｌｅｔｅトランザクション８００は、ＥＮ  ８０４及び全ての他の要求されたノード８０８が、その最終応答を下の表１９に示されているように供給した時に完了する。
【表１９】
2010518756.tif 000033
【０１０３】
Ｌｉｓｔ  Ｐａｒａｍｅｔｅｒｉｚｅｄ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅフロートランザクション
【０１０４】
[00101]Ｌｉｓｔ  ｐＱｏＳフロートランザクションは、任意のネットワークノードがネットワーク内のフローのリストを取り出すことを可能にする。ここで、図９を参照し、図５に示した実施形態によるＬｉｓｔ  ｐＱｏＳトランザクション９００の一例を説明する。このトランザクションは、通常、二つのＬ２ＭＥウェーブ９１０、９１２を含み、ＥＮ  ９０４が、下の表２０に従うフォーマットでＮＣノード９０６にサブミットメッセージを送信する時に開始される。各ノード９０４、９０６、９０８は、０から連続的に番号を付けられるその入口フローの論理テーブルを維持するように構成される。このテーブル内の要素の順序付けは、フローが作成されるか削除される時にのみ変化する。したがって、リモートノードは、この論理テーブル内のどのエントリが最初であるかを選択することによって、フローの完全なリストを作成することができる。
【表２０】
2010518756.tif 000034
【０１０５】
[00102]第１ウェーブ９１０、即ちウェーブ０では、ＮＣノード９０６が、どのＱｏＳフロー範囲が照会されるかをノード９０４、９０８に知らせる。ＮＣノード９０６は、ＥＮ  ８０４から受信されたサブミットメッセージに基づいて要求メッセージフォーマットを使用して第１ウェーブ９１０を開始する。この要求メッセージは、応答を供給できるノード９０８に送信される。照会されたノード９０８は、下の表２１による応答メッセージフォーマットを用いて応答することができる。ＬＩＳＴ＿応答フレームのペイロード部分のＲＥＴＵＲＮ＿ＦＬＯＷ＿ＩＤフィールドは、ノードのＦＬＯＷ＿ＳＴＡＲＴ＿ＩＮＤＥＸから始まり、ＦＬＯＷ＿ＭＡＸ＿ＲＥＴＵＲＮによって指定されるフローの最大個数までのｐＱｏＳフローのリストを含む。フロー更新カウンタが、フローの個数が変更される時に増分されることに留意されたい。このトランザクションにおいて、ノードが、入口フローの論理テーブルを保ち、各要素が、０から削除されるフローの最大個数までのインデックスを割り当てられると仮定する。
【表２１】
2010518756.tif 000035
【０１０６】
[0100]第２ウェーブ９１２、即ちウェーブ１では、ＮＣノード９０６が、ＥＮ  ９０４及び他の関心を持つノード９０８に、第１ウェーブ９１０で見つかったｐＱｏＳフローの集計されたリストについて知らせる。ＮＣノード９０６は、第１ウェーブ９１０からの連結された応答を用いる要求メッセージフォーマットを使用して第２ウェーブ９１２を開始する。Ｌｉｓｔトランザクション９００は、全ての関心を持つノード９０４、９０８が、下の表２２に示されているようにＮＣノード９０６にその最終応答を送信した時に完了する。
【表２２】
2010518756.tif 000036
【０１０７】
Ｑｕｅｒｙ  Ｐａｒａｍｅｔｅｒｉｚｅｄ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅフロートランザクション
【０１０８】
[0101]Ｑｕｅｒｙ  ｐＱｏＳフロートランザクションの目的は、特定のフローＩＤの属性を取り出すことである。ここで、図１０を参照し、図５に示した実施形態によるＱｕｅｒｙ  ｐＱｏＳトランザクション１０００の一例を説明する。Ｑｕｅｒｙ  ｐＱｏＳトランザクション１０００は、二つのウェーブサイクル１０１０、１０１２を含み、ＥＮ  １００４が特定のｐＱｏＳフローのフローＩＤを指定するサブミットメッセージをＮＣノード１００６に送信する時に開始される。
【表２３】
2010518756.tif 000037
【０１０９】
[0102]Ｑｕｅｒｙトランザクション１０００の第１ウェーブ１０１０、即ちウェーブ０は、ノード１００４、１００８に、どのｐＱｏＳフローが照会されつつあるかを知らせ、ＮＣノード１００６がどのノードが特定のフローを保持するかを識別するためにノード１００４、１００８にサブミットメッセージに基づいて要求メッセージを送信する時に開始される。全てのノード１００４、１００８は、それがフローの入口ノードであるか否かを応答メッセージによって応答することができる。応答Ｌ２ＭＥメッセージフォーマットを、そのようなフォーマットの一例として下の表２３に示す。ノードが、フローの入ではない場合に、そのノードは、０長さペイロードを有する応答フレームによって応答する。
【表２４】
2010518756.tif 000038
【０１１０】
[0103]第２ウェーブ１０１２、即ちウェーブ１では、Ｑｕｅｒｙ結果が、ＥＮ  １００４及びその結果に関心を持つ全ての他のノード１００８に送信される。ＮＣノード１００６は、第１ウェーブ１０１０からの連結された応答を有する要求  Ｌ２ＭＥメッセージフォーマットを使用して第２ウェーブを開始する。Ｑｕｅｒｙトランザクション１０００は、関心を持つノード１００４、１００８がＮＣノード１００６に下の表２４に示された最終応答フレームを送信する時に完了する。
【表２５】
2010518756.tif 000039
【０１１１】
Ｍａｉｎｔｅｎａｎｃｅ  Ｐａｒａｍｅｔｅｒｉｚｅｄ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅフロートランザクション
【０１１２】
[0104]Ｍａｉｎｔｅｎａｎｃｅ  ｐＱｏＳトランザクションは、投入されたｐＱｏＳフローに十分なネットワークリソースがあるか否かを周期的に査定するのに使用することができる。ここで、図１１を参照し、図５に示した実施形態によるＭａｉｎｔｅｎａｎｃｅ  ｐＱｏＳトランザクション１１００の一例を説明する。Ｍａｉｎｔｅｎａｎｃｅ  ｐＱｏＳトランザクション１１００は、ＮＣノード１１０６がこのトランザクションをＴ２２（Ｔ６／５）秒とＴ６秒との間に発行することによって達成することができ、ここで、Ｔ６は、２５秒又は５０秒とすることができる。さらに、ＮＣノード１０６は、新しいＬ２ＭＥ  ｐＱｏＳ対応ノードがネットワーク５０２に参加した後のＴ２２（Ｔ６／５）秒にこのトランザクションを発行することができる。Ｍａｉｎｔｅｎａｎｃｅトランザクション１１００は、二つのＬ２ＭＥウェーブ１１１０、１１１２を含み、サブミットメッセージは、このトランザクションがＮＣノード１１０６によってトリガされるので、不要である。
【０１１３】
[0105]ＮＣノード１００６は、要求メッセージを送信することによって第１ウェーブ１１１０、即ちウェーブ０及びＭａｉｎｔｅｎａｎｃｅトランザクション１１００を開始する。この要求メッセージの一例を、下の表２５に示す。要求メッセージは、全てのノード１１０４、１１０８に、その現在のフロー割振りメトリックに関する情報を提供するように求める。
【表２６】
2010518756.tif 000040
【０１１４】
[0106]各要求されたノード１１０４、１０８は、そのノードが入口ノードである全ての既存のフローに関するＥＸＩＳＴＩＮＧ＿ＴＰＳ値及びＥＸＩＳＴＩＮＧ＿ＰＰＳ値を指定する、第１ウェーブ１１１０に関する表２６に示すペイロードフォーマットを有する応答メッセージを送信する。
【表２７】
2010518756.tif 000041
【０１１５】
[0107]第２ウェーブ１１１２、即ちウェーブ１は、ＮＣノード１１０６が、ネットワーク内の現在のｐＱｏＳフローが第１ウェーブ１１１０の結果に基づく変化するネットワーク条件に鑑みて保証されるか否かを見つけることを可能にする。ＮＣノード１１０６は、次の変更を伴う、表２７に示す要求メッセージフォーマットヘッダを使用して第２ウェーブ１１１２を開始する。
１．ＷＡＶＥ＿ＳＴＡＴＵＳ＝１
２．ＤＩＲ＿ＬＥＮ＝０ｘ１０
３．ＴＸＮ＿ＷＡＶＥ＿Ｎ＝１
【０１１６】
[0108]全てのｐＱｏＳフローの集計が過剰にコミットされる場合に、ＮＣノード１１０６は、第２ウェーブ１０１２の要求メッセージ内のＯＶＥＲ＿ＣＯＭＭＩＴＴＥＤフィールド値に「１」をセットする。各ノード１１０４、１１０８は、ネットワークのｐＱｏＳフローリソースが保証されないことを通知するメッセージをそのアプリケーションレイヤに送信することができる。
【表２８】
2010518756.tif 000042
【０１１７】
[0109]Ｍａｉｎｔｅｎａｎｃｅトランザクション１１００は、各ノード１１０４、１１０８が、下の表２８に示す応答フレームをＮＣノード１１０６に送信する時に完了する。
【表２９】
2010518756.tif 000043
【０１１８】
[0110]上で説明した実施形態に加えて、開示した方法及び装置を、コンピュータ実施プロセス及びこれらのプロセスを実践する装置の形で実施することができる。本開示方法及び装置は、フロッピーディスケット、読取り専用メモリ（ＲＯＭ）、ＣＤ−ＲＯＭ、ハードドライブ、「ＺＩＰ（商標）」高密度ディスクドライブ、ＤＶＤ−ＲＯＭ、フラッシュメモリドライブ、又は任意の他のコンピュータ可読記憶媒体などの有形の媒体内で実施されるコンピュータプログラムコードの形で実施することもできる。コンピュータプログラムコードがコンピュータにロードされ、コンピュータによって実行される時に、そのコンピュータは、開示した方法及びシステムを実践する装置になる。本開示方法及び装置を、例えば記憶媒体に格納され、コンピュータにロードされ、及び／又はコンピュータによって実行される、コンピュータプログラムコードの形で実施することもできる。ここで、コンピュータプログラムコードがコンピュータにロードされ、コンピュータによって実行される時に、そのコンピュータは、開示した方法及び装置を実践する装置になる。汎用プロセッサ上で実施される時に、コンピュータプログラムコードセグメントは、特定の論理回路を作成するようにプロセッサを構成する。
【０１１９】
[0111]開示した方法及びシステムを、例として働く実施形態に関して説明したが、開示した方法及びシステムは、これに限定されるものではない。そうではなく、添付の特許請求の範囲は、本方法及びシステムの均等物の範囲から逸脱せずに当業者によって作られ得る開示した方法及びシステムの他の変形形態及び実施形態を含むように広義に解釈されなければならない。
【図１】
2010518756.tif 000044
【図２】
2010518756.tif 000045
【図３】
2010518756.tif 000046
【図４】
2010518756.tif 000047
【図５】
2010518756.tif 000048
【図６】
2010518756.tif 000049
【図７】
2010518756.tif 000050
【図８】
2010518756.tif 000051
【図９】
2010518756.tif 000052
【図１０】
2010518756.tif 000053
【図１１】
2010518756.tif 000054
【国際調査報告】
2010518756.tif 000055
2010518756.tif 000056