説明

Pコントローラによるレジリエントパケットリングネットワーク内の帯域幅割当て

P型コントローラによってレジリエントパケットリングネットワーク内で帯域幅を割り当てるための実施および技法が大まかに開示される。

【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本出願は、「ALLOCATING BANDWIDTH IN A RESILIENT PACKET RING NETWORK BY P CONTROLLER」という名称の2009年6月5日出願の米国特許出願第12/479,574号の優先権を主張する。
【0002】
本出願は、Fahd AlharbiおよびNirwan Ansariの「ALLOCATING BANDWIDTH IN A RESILIENT PACKET RING NETWORK BY PI CONTROLLER」という名称の2009年6月5日出願の米国特許出願第12/479,438号に関連する。
【背景技術】
【0003】
レジリエントパケットリング(RPR)ネットワークは、少なくとも一部には保護特性および障害許容特性により、メトロ技術としてよく利用される。しかし、メトロネットワーク技術の中にはいくつかの制限を呈するものがある。例えば、同期光ネットワーク型(SONET)では、個々のノードは、最少の公平な共有(minimum fair share)を与えられるが、未使用の帯域幅を再要求することはできないことがある。さらに、潜在的に利用可能な帯域幅の何パーセントかが保護のために残しておかれ、そのために利用が不十分ということになる場合がある。一方、ギガビットイーサネット(登録商標)型リングが、公平性を代償にして完全な統計的多重化になることがある。RPRネットワークを利用して、現在のSONET型リング技術およびイーサネット(登録商標)型リング技術に伴うそれぞれの不十分な利用および不公平性の問題を軽減することができる。
【発明の概要】
【0004】
本開示は、比例(P型)コントローラによってレジリエントパケットリングネットワーク(RPR)内で帯域幅を割り当てることに関連した方法を大まかに説明する。本開示のいくつかの例示的な方法には、レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラにより、レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度(fair rate)を決定することが含まれうる。不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させることができる。
【0005】
本開示はまた、比例(P型)コントローラによってレジリエントパケットリングネットワーク(RPR)内で帯域幅を割り当てることに関連したコンピュータプログラム製品を大まかに説明する。本開示のいくつかの例示的なコンピュータプログラム製品には、レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラにより、レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定することが含まれうる。不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させることができる。
【0006】
本開示は、比例(P型)コントローラによってレジリエントパケットリングネットワーク(RPR)内で帯域幅を割り当てることに関連したシステムを大まかに説明する。本開示のいくつかの例示的なシステムはレジリエントパケットリングネットワークを含むことができ、このネットワークは、複数のノード、リンクの内側リング、リンクの外側リンク、および/またはP型コントローラを含むことができる。リングの内側リングは、複数のノードの間に結びつけることができる。リングの外側リングは、複数のノードの間に結びつけることができる。P型コントローラは、複数のノードのうちの少なくとも1つと結びつけることができる。P型コントローラは、レジリエントパケットリングネットワーク内で帯域幅割当てを容易にするための公平速度を決定するように構成することができ、かつ/または不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、複数のノードのうちの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成することができる。
【0007】
本開示は、比例(P型)コントローラによってレジリエントパケットリングネットワーク(RPR)内で帯域幅を割り当てることに関連した装置を大まかに説明する。本開示のいくつかの例示的な装置は、P型コントローラを含むことができる。このP型コントローラは、レジリエントパケットリングネットワーク内の複数のノードのうちの少なくとも1つと結びつけることができる。P型コントローラは、レジリエントパケットリングネットワーク内で帯域幅割当てを容易にするための公平速度を決定するように構成することができ、かつ/または不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの複数のノードのうちの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成することができる。
【0008】
上記の要約は例示的なものにすぎず、決して限定的なものではない。上述の例示的な態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図面および以下の詳細な説明を参照することによって明らかになろう。
【0009】
主題は、本明細書の結論部分で具体的に指摘され、明瞭に主張される。本開示の上記および他の特徴は、以下の説明および添付の特許請求の範囲を添付の図面と併せて解釈することにより完全に明らかになろう。これらの図面は、本開示によるいくつかの実施形態だけを描写しており、したがってその範囲を限定すると考えられるべきでないと理解されたとして、本開示を、添付の図面を用いることにより、付加的な具体性および細部について説明する。
【図面の簡単な説明】
【0010】
【図1】例示的なRPRリングを示す図である。
【図2】例示的なRPRリングの所与のノードのブロック図である。
【図3】レジリエントパケットリングネットワーク内で帯域幅を割り当てる例示的なプロセスを示す流れ図である。
【図4】レジリエントパケットリングネットワーク内で帯域幅を割り当てる例示的な制御プロセスを示す図である。
【図5】例示的な不平衡トラフィックシナリオを示す図である。
【図6】例示的な不平衡トラフィックシナリオを示す図である。
【図7】例示的な不平衡トラフィックシナリオのもとでの経時的なスループットを示すグラフである。
【図8】例示的な不平衡トラフィックシナリオのもとでの経時的なスループットを示すグラフである。
【図9】例示的なコンピュータプログラム製品を示す図である。
【図10】すべて本開示により構成された例示的な計算デバイスのブロック図である。
【発明を実施するための形態】
【0011】
以下の説明では、特許請求された主題の完全な理解が得られるように、具体的な細部と共に様々な例を示す。しかし、本明細書に開示された具体的細部の一部またはそれよりも多くを用いずに、特許請求された主題を実施できることは当業者に理解されよう。さらに、場合により、よく知られた方法、手順、システム、構成要素および/または回路については、特許請求された主題を不必要に曖昧にすることを避けるために詳細には説明していない。以下の詳細な説明では、説明の一部を形成する添付の図面を参照する。図面では、特にことわらない限り、類似の記号が通常は類似の構成要素を特定する。詳細な説明、図面および特許請求の範囲に示される例示的な諸実施形態は、限定的なものではない。本明細書に提示された主題の趣旨または範囲から逸脱することなく、他の実施形態を利用することができ、他の変更を加えることができる。本明細書で一般的に説明され、図に示された本開示の諸態様を多種多様な異なる構成で配置、置き換え、組み合わせ、および設計をすることができ、これらのすべてが明確に企図されており、かつ本開示の一部をなすことは容易に理解されよう。
【0012】
本開示は、とりわけ、比例(P型)コントローラによってレジリエントパケットリング(RPR)ネットワーク内で帯域幅を割り当てることに関係する方法、装置、システムおよび/またはコンピュータプログラム製品を対象とする。
【0013】
RPRネットワークは、大都市圏ネットワークの高速基幹技術として利用することができる。例えば、RPRネットワークを導入して、SONET型リング技術およびイーサネット(登録商標)型リング技術にそれぞれ伴う不十分な利用および不公平性の問題を軽減することができる。RPRのいくつかの性能目標には、高度の帯域幅利用、RPRの二重リング上の最適な空間再利用、および/または公平性の達成が含まれうる。
【0014】
1つの難題は、このような性能目標を達成する上で、トラフィックに動的に反応できるアルゴリズムを設計することであるといえる。アグレッシブモード(RPR−AM)および保守モード(RPR−CM)の公平アルゴリズムは、比較的簡単な処理でありうるが、いくつかの制限を与えうる。例えば、このような制限の1つは、RPR−CMおよび/またはRPR−AMによって割り当てられる帯域幅量が、不平衡トラフィックシナリオのもとで振動する可能性がありうることである。このような不平衡トラフィックシナリオについては、図5に示される例に関して後でさらに詳細に説明する。これらの振動は、空間再利用および/または高度の帯域幅利用を達成することの障壁になりうる。さらに、RPR−CMおよび/またはRPR−AMの性能は、アルゴリズムパラメータ設定の影響を受けやすいことがある。したがって、RPR−CMおよび/またはRPR−AMの公平アルゴリズムの制限に対処するための、比例(P型)コントローラによってRPRネットワーク内で帯域幅を割り当てることに関係する方法、装置、システムおよび/またはコンピュータプログラム製品を以下で説明する。
【0015】
本開示のいくつかの例示的な方法には、レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラによって、レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定することが含まれうる。不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させることができる。
【0016】
本開示のいくつかの例示的なコンピュータプログラム製品には、レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラによって、レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定することが含まれうる。不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させることができる。
【0017】
本開示のいくつかの例示的なシステムは、レジリエントパケットリングネットワークを含むことができ、このネットワークは、複数のノード、リンクの内側リング、リンクの外側リンク、および/またはP型コントローラを含むことができる。リンクの内側リングは、複数のノード間に結びつけることができる。リンクの外側リングは、複数のノード間に結びつけることができる。P型コントローラは、複数のノードの少なくとも1つと結びつけることができる。P型コントローラは、レジリエントパケットリングネットワーク内で帯域幅割当てを容易にするための公平速度を決定するように構成することができ、かつ/または不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、複数のノードのうちの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成することができる。
【0018】
本開示のいくつかの例示的な装置は、P型コントローラを含むことができる。P型コントローラは、レジリエントパケットリングネットワーク内の複数のノードの少なくとも1つと結びつけることができる。P型コントローラは、レジリエントパケットリングネットワーク内で帯域幅割当てを容易にするための公平速度を決定するように構成することができ、かつ/または不平衡トラフィックシナリオのもとで、少なくとも一部は帯域幅割当てに基づいて、レジリエントパケットリングネットワークの複数のノードのうちの少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成することができる。
【0019】
本開示のいくつかの例では、公平速度を決定することには、目標キュー長と現在のトランジットキュー長の差を決定することが含まれうる。いくつかの例では、公平速度の決定には、目標キュー長と現在のトランジットキュー長の差の変化率を決定することが含まれうる。いくつかの例では、公平速度の決定は、レジリエントパケットリングネットワークのボトルネックリンクと、レジリエントパケットリングネットワークの少なくとも1つのノードとの間の往復遅延を決定することが含まれうる。
【0020】
本開示のいくつかの例では、公平速度の決定は、以下のように表される比例ゲインkに少なくとも一部は基づくことができ、
【0021】
0<k<π/(2Wτ)
ここで、Wはレジリエントパケットリングネットワークの各ノードと関連付けられた重みの合計を表すことができ、τはレジリエントパケットリングネットワークのボトルネックリンクと、レジリエントパケットリングネットワークの少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づくことができる。
【0022】
本開示のいくつかの例では、公平速度F(n)は以下のように表すことができ、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)は以前の公平速度を表し、Kは比例ゲインを表し、e(n)は目標キュー長と現在のトランジットキュー長の間の差を表し、e(n−1)は目標キュー長と現在のトランジットキュー長の間の以前の差を表すことができる。
【0023】
図1は、1つまたは複数の例示的な実施による例示的なRPRネットワーク100の図を示す。RPRネットワーク100は、2つの循環する小環を含むことができる。例えば、一方のこのような小環を内側小環102と呼び、もう一方のこのような小環を外側小環104と呼ぶことができる。内側小環102および外側小環104は、2つ以上のノードを横切ることができる。例えば、内側小環102および外側小環104は、ノード106A、106B、106C、106D、106E、および106Fを横切ることができる。2つの隣り合うノード106A、106Bを動作可能に一緒に結びつける内側小環102または外側小環104の一部分は、リンク108と呼ぶことができる。したがって、内側小環102および/または外側小環104は、2つ以上のノード106A、106B、106C、106D、106E、および106Fの間に動作可能に結びついたいくつかのリンク108を含むことができる。動作時、情報は、ノード106Aなど所与の上流ノードでRPRネットワーク100に入り、内側小環102または外側小環104をたどって、1つまたは複数のリンク108を経由してノード106Bなどの下流の宛先まで進むことができる。この場合には、このような情報がノード106Bなどの下流の宛先ノードに到達すると、このような情報は、RPRネットワーク100の中から外へ進むことができる。
【0024】
図2は、本開示の1つまたは複数の例示的な実施により構成された例示的なRPRネットワーク100(図1)の、所与のノード106Bのブロック図を示す。ノード106Bは、進入データ測定、輻輳、および帯域幅割当ての諸機能を実施できるハードウェア、ソフトウェア、および/またはこれらの任意の組合せを含むことができる。例えば、ノード106Bは、1つまたは複数の速度コントローラ210、1つまたは複数のローカルバッファ212、一次トランジットキュー(PTQ)バッファ214、二次トランジットキュー(STQ)バッファ216、チェッカ218、スケジューラ220、および/またはP型コントローラ222を含むことができる。これらの機能ユニットは、RPRネットワーク100(図1)内のフロー制御を行うように動作することができる。このようなフロー制御により、輻輳ノード106Bが公平性メッセージ(ノード106Bで行われる測定によって導出される)を1つまたは複数の上流ノード106Aなど(図1)に送出することが可能になる。このような公平性メッセージにより、1つまたは複数の上流ノード106Aなど(図1)が、輻輳ノード106Bにおける輻輳状態を軽減および/または除去するように、かつ参加ノード106Aなど(図1)の間で公平性を適用するように、進入情報レートを調整することになる。
【0025】
ノード106Bは、1つまたは複数の速度コントローラ210を利用して、RPRネットワーク100(図1)に入るローカルトラフィック230を調整することができる。例えば、速度コントローラ210は、実際の宛先キューイングをサポートするために、かつ/またはヘッドオブライン(head-of-line)ブロッキング(HOL)を回避するために、宛先ごとにローカルトラフィック230を調整することができる。本明細書では、HOLブロッキングとは、ソースから宛先までの経路に沿った輻輳の故に特定のバッファのヘッドオブラインパケットを宛先へ切り替えることができず、その結果、そのバッファ内の残りのパケットが、ソースからそれらの宛先までの経路に沿った輻輳がたとえなくても、そのヘッドオブラインパケットによって阻止されることになる場合があるという状況を指しうる。加えて、または別法として、速度コントローラ210は、ローカルトラフィック230がローカルバッファ212まで配信されることを許可することができる。ローカルバッファ212は、ユーザトラフィックのいくつかのサービスクラスを定義することができる。例えば、ローカルバッファ212は、クラスAユーザトラフィックを保証速度およびジッタで、クラスBユーザトラフィックを認定情報速度(committed information rate)(CIR)、有界遅延およびジッタで、かつ/またはクラスCユーザトラフィックをベストエフォートトラフィックとして、定義することができる。
【0026】
チェッカ218は入口トラフィック232をノード106Bに入る小環(図示せず)から受信することができる。チェッカ218は、出トラフィック234をノード106Bの外へ分路することができる。加えて、または別法としてチェッカ218は、トランジットトラフィック236をPTQバッファ214および/またはSTQバッファ216を通じて転送することができる。
【0027】
スケジューラ220は、PTQバッファ214、STQバッファ216、および/またはローカルバッファ212から出る情報の流れを調整することができる。例えば、スケジューラ220は、PTQバッファ214、STQバッファ216、および/またはローカルバッファ212からの出口トラフィック238がノード106Bを出て、RPRネットワーク100をたどって進むことを選択的に許可することができる。例えば、220は、まずPTQバッファ214からの出口トラフィックを選択的に許可することができる。PTQバッファ214が空の場合には、STQバッファ216が、ローカルバッファ212からのステーショントラフィックに対して優先権を有することができる。例えば、STQバッファ216は、STQキュー長がSTQ閾値を超える場合に、ローカルバッファ212からのステーショントラフィックに対して優先権を有することができ、そうでない場合には、ステーショントラフィック230がサービスを受けることができる。この場合には、ステーショントラフィック230は、クラスA、クラスB、クラスC、および/または同様の1つまたは複数の重要度のクラスに分割することができる。例えば、ステーショントラフィック230は、以下の順序、すなわちクラスAトラフィック、次にクラスBトラフィックの順序でサービスを受けることができる。ノード106BにクラスAまたはBトラフィックがない場合には、クラスCトラフィックがサービスを受けることができる。
【0028】
P型コントローラは、トランジットキュー長240を含むトラフィック測定値を受け取ることができる。例えば、P型コントローラ222は、STQバッファ216と関連するトランジットキュー長240に関するトラフィック測定値を受け取ることができる。このようなトラフィック測定値に少なくとも一部は基づいて、P型コントローラ222は、公平性アルゴリズムを適用して公平速度F(n)を決定することができる。このような決定公平速度を利用して、RPRネットワーク100(図1)内で帯域幅を割り当てることができる。例えば、このような決定公平速度は、制御メッセージ242の形で上流ノード106Aなど(図1)に送出することができる。制御メッセージ242を受信するこのような上流ノード160Aなど(図1)は、この制御メッセージ情報および/またはローカル情報を用いて、それに応じた速度の調整をすることができる。
【0029】
図3は、1つまたは複数の例示的な実施例により構成された、レジリエントパケットリングネットワーク内で帯域幅を割り当てる例示的なプロセスを示す流れ図を示す。プロセス300、および本明細書で説明される他のプロセスは、様々な機能ブロックまたは動作を示し、これらは、処理ステップ、機能動作、イベント、および/または動きなどとして説明することができ、またハードウェア、ソフトウェア、および/またはファームウェアによって実施することができる。当業者は、本開示に照らして、図3に示される機能ブロックの多数の代替形態を様々に実施できることが理解されよう。例えば、図3に示されるプロセス300は、ブロックまたは動作の1つの特定の順序を含むが、これらのブロックまたは動作が提示されている順序は、特許請求された主題を何らかの特定の順序に必ずしも限定しない。同様に、特許請求された主題の範囲から逸脱することなく、図3に示されていない介入動作および/または図3に示されていない付加的な動作を用いることもでき、かつ/または図3に示された動作の一部を除去することもできる。
【0030】
図示のように、プロセス300を実施して、レジリエントパケットリングネットワーク内で帯域幅を割り当てることができる。所与のサンプリング時間Tの終わりのところの動作302で処理が開始し、下流ノード106BにあるP型コントローラ222(図2)が、現在のトランジットキュー長をサンプリングすることができる。例えば、下流ノード106Bは、STQバッファ216(図2)の現在のトランジットキュー長をサンプリングすることができる。本明細書では、「サンプリング時間T」という語は、現在の公平速度F(n)の決定と以前の公平速度F(n−1)の決定との間のサンプリング時間を指すことができる。処理は、動作302から304へ進み、そこでトランジットキュー長を目標キュー長と比較することができる。例えば、下流ノード106BにあるP型コントローラ222(図2)は、STQバッファ216(図2)の現在のトランジットキュー長を、あらかじめ指定された目標キュー長と比較することができる。
【0031】
動作306へ進むと、公平速度を決定することができる。例えば、下流ノード106BにあるP型コントローラ222(図2)は、STQバッファ216(図2)の現在のトランジットキュー長とあらかじめ指定された目標キュー長との比較に少なくとも一部は基づいて、公平速度を決定することができる。一実施例では、このような公平速度は、例えば、下流ノード106Bなどの、RPRネットワーク100の少なくとも1つのノードと結びついたP型コントローラ222(図2)によって、RPRネットワーク100内の帯域幅を割り当てるように決定することができる。
【0032】
動作308に進むと、このような決定公平速度を1つまたは複数の上流ノード106Aへ転送することができる。例えば、下流ノード106Bは、公平速度を反対側の小環102(図1)上の1つまたは複数の上流ノード106Aへ転送することができる。したがって、個々の上流ノード106Aは、下流ノード106Bでサポートされた公平速度を知ることができる。加えて、または別法として、同様の公平速度を決定し、RPRネットワーク100内の他のノード(ノード106Cなど)からブロードキャストすることもできる。したがって、RPRネットワーク100内の個々の上流ノード106A、106Bなどは、下流ノード106Bでサポートされた公平速度、および/またはRPRネットワーク100内の個々のノード106A、106Bなどでサポートされた公平速度を知ることができる。
【0033】
動作310に進むと、下流ノード106Aが、その転送速度を調整することができる。例えば、上流ノード106Aは、その転送速度を、下流ノード106Bから受信された公平速度に少なくとも一部は基づいて調整することができる。以下でさらに詳細に論じるように、手順300の実施が、動作312で示されるように、これらの前方速度を安定化させることになりうる。例えば、不平衡トラフィックシナリオのもとで、動作306に関して上で論じた帯域幅割当てに少なくとも一部は基づいて、RPRネットワーク100内の1つまたは複数の個々のノード106A、106Bなどに関連している1つまたは複数の前方速度を安定化させることができる。一実施例では、動作312で下流ノード106Bは、動作302〜308のうちの1つ以上を繰り返して、上流ノード106Aに関連している前方速度を安定化させることができる。加えて、または別法として、RPRネットワーク100内の他のノード(ノード106Cなど)で同様の動作を行うことができる。したがって、RPRネットワーク100内の個々のノード106C、106Dなど(図1)もまた、RPRネットワーク100内の個々のノード106C、106Dなど(図1)にそれぞれ対応付けられた前方速度を安定化させることができる。加えて、または別法として、前方速度のこのような安定化は、不平衡トラフィックシナリオのもとで実現可能になりうる。
【0034】
図4は、1つまたは複数の例示的実施により構成された、レジリエントパケットリングネットワーク内で帯域幅を割り当てる例示的な制御プロセス400を示す。プロセス400、および本明細書で説明される他のプロセスは、様々な機能ブロックまたは動作を示し、これらは、処理ステップ、機能動作、イベント、および/または動きなどとして説明されることがあり、またハードウェア、ソフトウェア、および/またはファームウェアによって実施することができる。当業者は、本開示に照らして、図4に示される機能ブロックに対する多数の代替形態を様々に実施できることが理解されよう。例えば、図4に示されるプロセス400は、ブロックまたは動作の1つの特定の順序を含むが、これらのブロックまたは動作が提示された順序は、特許請求された主題を何らかの特定の順序に必ずしも限定しない。同様に、特許請求された主題の範囲から逸脱することなく、図4に示されていない介入動作および/または図4に示されていない付加的な動作を用いることもでき、かつ/または図4に示された動作の一部を除去することもできる。
【0035】
図示のように、制御プロセス400を実施して、レジリエントパケットリングネットワーク内で帯域幅を割り当てることができる。ブロック401で、トランジットキュー長Q(s)402と目標キュー長Q404の比較をすることができる。例えば、誤差E(s)406を決定して、トランジットキュー長Q(s)402と目標キュー長Q404のこのような比較を定量化することができる。一実施例では、誤差E(s)は、少なくとも一部は次式に基づいて決定することができる。
E(s)=Q(s)−Q(s) (式1)
【0036】
処理は、ブロック401からブロック408に進み、ここで公平速度F(s)を、少なくとも一部はトランジットキュー長Q(s)402と目標キュー長Q404の比較に基づいて決定することができる。例えば、誤差E(s)406を、少なくとも一部は比例ゲインkに基づいて修正して、ブロック408に示される公平速度F(s)410が結果として得られることになる。一実施例では、公平速度F(s)410は、少なくとも一部は次式に基づいて決定することができる。
F(s)=kE(S) (式2)
【0037】
処理はブロック408からブロック412へ進み、ここで更新トランジットキュー長Q(s)402を決定することができる。例えば、更新トランジットキュー長Q(s)402は、少なくとも一部は公平速度F(s)410に基づいて決定することができる。一実施例では、公平速度F(s)410を、少なくとも一部は次式に基づいて修正して、更新トランジットキュー長Q(s)402を決定することができる。
【0038】
【数1】

(式3)
制御プロセス400のブロック412が図4に示されているが、ここでWは、以下のようにRPRネットワークの様々なノードに対応付けられた重みの合計として表すことができる。
【0039】
【数2】

(式4)
加えて、τは、ボトルネックリンク108(図1)とRPRネットワークのソースノードiとの間の往復遅延を表すことができる。このような往復遅延τは、後方遅延
【0040】
【数3】

として表される、下流ノード106B(図1)での通信の開始と上流ノード106A(図1)での受信との間の時間を表すことができ、また前方遅延
【0041】
【数4】

として表される、上流ノード106A(図1)での通信の開始と下流ノード106B(図1)での受信との間の時間を表すことができる。例えば、往復遅延τは、
【0042】
【数5】

として計算することができ、ここで
【0043】
【数6】

は、ボトルネックリンク108(図1)からソースノードiまでの後方遅延を表すことができ、
【0044】
【数7】

は、ソースノードiからボトルネックリンク108(図1)までの前方遅延を表すことができる。一実施例では、τは、このような往復遅延τの上限を表すことができる。
【0045】
より詳細には、制御プロセス400は、制御プロセス400の構成に関する以下の議論を参照してより良く理解されよう。下流ノード106B(図1)と結びついたボトルネックリンク108(図1)において、トランジットキュー長402の変化率は以下のように書き表すことができる。
【0046】
【数8】

(式5)
【0047】
この場合、rは、上流ノード106Aなどのソースノードiの送信速度を表すことができ、
【0048】
【数9】

は、ソースノードiからボトルネックリンク108(図1)までの前方遅延を表すことができ、tは時間を表すことができ、Nはソースノードの数を表すことができ、Cはボトルネックリンク108(図1)と結びついた下流ノード106B(図1)の利用可能な帯域幅を表すことができる。例えば、利用可能な帯域幅Cおよび前方遅延
【0049】
【数10】

を考慮した場合、トランジットキュー長402の変化率は、下流ノード106B(図1)と結びついたボトルネックリンク108(108)を通じて上流ソースノードiから送信されるトラフィックに比例しうる。
【0050】
上流ノード106A(図1)などのソースノードの1つ以上が、下流ノード106B(図1)と結びついたボトルネックリンク108(図1)からの受信公平速度fに応じて、次式の速度で情報を送信することができる。
【0051】
【数11】

(式6)
この場合、Wは1以下の重みを表すことができ、
【0052】
【数12】

は、下流ノード106B(図1)と結びついたボトルネックリンク108(図1)から上流ノード106A(図1)などのソースノードiまでの後方遅延を表すことができる。
【0053】
下流ノード106B(図1)と結びついたボトルネックリンク108(図1)の公平速度f(t)は、以下のように表すことができる。
f(t)=ke(t) (式7)
この場合、kはP型コントローラの比例ゲインを表すことができ、kはP型コントローラの積分ゲインを表すことができ、e(t)=q−q(t)はトランジットキュー長q(t)と目標キュー長qの差を表すことができる。
【0054】
RPRネットワーク100(図1)は、閉ループシステムとして表すことができ、このシステムは、
【0055】
【数13】

【0056】
【数14】

【0057】
【数15】

となる平衡点を含むことができる。この場合、fは最適公平速度を表すことができる。したがって(式5)は、平衡点において以下のように書き表すことができる。
【0058】
【数16】

(式8)
この場合、rは、上流ノード106A(図1)などの個々のソースノードiが、下流ノード106B(図1)と結びついたボトルネックリンク108(図1)を通じて送信できる最適速度を表すことができる。
【0059】
(式8)および(式6)を用いて、次式を得ることができる。
【0060】
【数17】

(式9)
この場合、(式9)で、P型コントローラが以下の重み付けされた最大〜最小公平速度を実現できることを確認することができる。
【0061】
【数18】

(式10)
【0062】
上記の重み付けされた最大〜最少公平速度に加えて、P型コントローラの比例ゲインkを含むコントローラゲインの安定条件を見出すことができる。(式5)および(式6)を用いて次式を得ることができる。
【0063】
【数19】

(式11)
この場合、
【0064】
【数20】

は、上流ノード106A(図1)などのソースノードiと、例えば下流ノード106B(図1)と結びついたボトルネックリンク108(図1)との間の往復時間を表すことができる。
【0065】
(式8)および(式11)をラプラス変換することによって、前に論じた以下の(式2)および/または(式3)を得ることができる。
F(s)=kE(S) (式2)
および
【0066】
【数21】

(式3)
簡単にするために、往復遅延τ=τ,∀i∈Nと想定することができる。この場合、τは往復遅延τの上限を表すことができる。したがって、制御プロセス400は、少なくとも一部は(式2)、(式3)、および/または(式1)に基づいて明確に表すことができる。
【0067】
図4に示された制御プロセス400は、少なくとも一部はラプラス領域の特性方程式によって以下のように表すことができる。
【0068】
【数22】

(式12)
【0069】
次の式s=jωおよびe−jωτ=cos(ωτ)−jsin(ωτ)を代入することにより、次の式を得ることができる。
Wcos(ωτ)−jkWsin(ωτ)=−jω (式13)
いくつかの代数操作の後に、閉ループシステムが安定になりうる以下の条件を、少なくとも一部は上記の(式13)による安定条件に基づいて得ることができる。
【0070】
0<k<π/(2Wτ) (式14)
この場合、Wは、RPRネットワーク100(図1)のノードiに対応付けられた重みの合計を表すことができ、τは、例えば、RPRネットワーク100(図1)の下流ノード106Bと結びついたボトルネックリンク108(図1)とRPRネットワーク100(図1)の上流ノード106A(図1)との間のこのような往復遅延τの上限を表すことができる。したがって、以下で論じるように、公平速度の決定は、RPRネットワーク100(図1)のボトルネックリンク108(図1)と、RPRネットワーク100(図1)のソースノードiの少なくとも1つとの間の往復遅延τに少なくとも一部は基づくことができる。
【0071】
非連続時間でのサンプリングの発生を考慮に入れるようにP型コントローラの離散的な実施例を形成することができる。離散時間でのP型コントローラのこのような実施例は、少なくとも一部は実時間領域の(式7)の導関数に基づくことができ、以下のように表すことができる。
F(n)=F(n−l)−k(e(n)−e(n−l)) (式15)
この場合、F(n)は現在の公平速度を表すことができ、nはサンプリング時間を表すことができ、F(n−1)は以前の公平速度を表すことができ、Kは比例ゲインを表すことができ、e(n)は目標キュー長と現在のトランジットキュー長との差を表すことができ、e(n−1)は目標キュー長と現在のトランジットキュー長との以前の差を表すことができる。したがって、公平速度F(n)の決定は、少なくとも一部は目標キュー長と現在のトランジットキュー長との差に基づくことができる。加えて、または別法として、公平速度F(n)の決定は、少なくとも一部は目標キュー長と現在のトランジットキュー長との差の変化率に基づくことができる。
【0072】
図5は、本開示により構成された例示的な不平衡トラフィックシナリオ500の図を示す。図2〜4に示されたP型コントローラ222は、不平衡トラフィックシナリオのもとで、RPRネットワーク100内のノード106A、106Bなどと関連している1つまたは複数の前方速度を安定化させるために示されうる。本明細書では、「不平衡トラフィックシナリオ」という語は、上流ノード106Aなどからの情報の速度の間に格差があるシナリオを含むことができる。例えば、不平衡トラフィックシナリオは、上流ノード106Aなどからの情報の1つまたは複数の速度が貪欲(greedy)であり、上流ノード106Aなどからの情報の1つまたは複数の速度が、例えば所与の既定速度を有することなどによって貪欲でないシナリオを含むことができる。
【0073】
例示的な不平衡トラフィックシナリオ500では、第1のノード502から第3のノード506へのフローは貪欲でありうるが、第2のノード504から第3のノード506へのフローは低速度でありうる。例えば、第2のノード504から第3のノード506へのフローは、1秒当たり50メガビット(Mbps)の低速度でありうる。第1のノード502と第2のノード504の間のリンク508、ならびに第2のノード504と第3のノード506の間のリンク510は、622Mbpsなどの固定容量を有しうる。不平衡トラフィックシナリオ500では、第2のノード504から第3のノード506へのフローの速度512と、第1のノード502から第3のノード506へのフローの速度514との合計が、第2のノード504と第3のノード506との間のリンク510の容量よりも大きくなる場合に、第2のノード504は輻輳することになる可能性がある。この場合、リンク510がボトルネックリンクになることがあり、第2のノード504は、更新された公平速度を第1のノード502などの上流ノードにブロードキャストすることができる。例示的な不平衡トラフィックシナリオ500では、前方遅延
【0074】
【数23】

は、あるパケットが第1のノード502から第2のノード504のSTQ216(図2)へ行くのに要する時間を表し、後方遅延
【0075】
【数24】

は、第2のノード504での更新公平速度の通信の開始と第1のノード502での受信との間の時間を表すことができる。
【0076】
図6は、本開示により構成された例示的な不平衡トラフィックシナリオ600の図を示す。この例示的な不平衡トラフィックシナリオ600では、10個のノード601〜610がある。不平衡トラフィックシナリオ600では、リンク612のすべてが622Mbpsなどの同じ容量を有し、それぞれのリンク612が0.1msの伝搬遅延を有する。すべての前方速度のフローが、時間0においてすべてのフローが開始するUDPフローである。フロー614、フロー616、フロー618、およびフローは貪欲であり、フロー622は50Mbpsに等しい速度を有する。不平衡トラフィックシナリオ600では、不平衡トラフィックがリンク624で起こりうる。P型コントローラ222(図2)を使用しないと、リンク624での不平衡トラフィックにより動作中に振動がありうる。このような振動により帯域幅を損なうことになりうる。さらに、P型コントローラ222(図2)を使用しないと、輻輳により、ノード601〜610と関連するいくつかのトランジェントキューの長さが増加しうる。
【0077】
図7は、本開示による例示的な不平衡トラフィックシナリオ500のもとでの経時的なスループットのグラフ700を示す。図示のように、前方速度のフロー512および514は、それぞれの安定化した最適公平速度に収束することができる。本明細書では「安定化した」および/または同様の語は、定常状態において振動がほとんどまたは全くない状態にあることを指すことができる。
【0078】
図8は、本開示による例示的な不平衡トラフィックシナリオ600のもとでの経時的なスループットのグラフ800を示す。図8に示されたシミュレーション結果では、測定時間間隔はT=1msに設定され、トランジットキューの目標長は
【0079】
【数25】

に設定された。図8に示されたシミュレーション結果は、S.Gjessing、「The Simula RPR Simulator implemented in Java(登録商標)」、Simula Research Laboratory Technical Report、2003−12、2003年12月、に記載されているRPRシミュレータを使用することによって得られた。図8に示されるように、フロー614〜620およびフロー622は、定常状態において、それぞれの安定化した最適公平速度に収束することができる。
【0080】
図9は、本開示により構成された例示的なコンピュータプログラム製品900を示す。プログラム製品900は、信号伝達媒体902を含むことができる。信号伝達媒体902は、1つまたは複数の機械可読命令904を含むことができ、これは、1つまたは複数のプロセッサで実行された場合に計算デバイスを、図3および/または図4に関して前述した機能を実行するように動作可能にすることができる。すなわち、例えば図2のシステムを参照すると、P型コントローラ222は、媒体902によって伝えられた命令904に応じて、図3および/または図4に示された動作の1つ以上を引き受けることができる。
【0081】
いくつかの実施例では、信号伝達媒体902は、それだけには限らないが、ハードディスクドライブ、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、デジタルテープ、メモリなどのコンピュータ可読媒体906を包含することができる。いくつかの実施では、信号伝達媒体902は、それだけには限らないが、メモリ、読取り/書込み(R/W)CD、R/W DVDなどの記録可能媒体908を包含することができる。いくつかの実施では、信号伝達媒体902は、それだけには限らないが、デジタルおよび/またはアナログ通信媒体など(例えば、光ファイバケーブル、導波管、有線通信リンク、無線通信リンクなど)の通信媒体910を包含することができる。
【0082】
図10は、本開示により構成される例示的な計算デバイス1000を示すブロック図である。1つの例示的な構成1001では、計算デバイス1000は、1つまたは複数のプロセッサ1010およびシステムメモリ1020を含むことができる。メモリバス1030は、プロセッサ1010とシステムメモリ1020の間で通信するのに使用することができる。
【0083】
所望の構成に応じて、プロセッサ1010は、それだけには限らないが、マイクロプロセッサ(μP)、マイクロコントローラ(μC)、デジタル信号プロセッサ(DSP)、またはこれらの任意の組合せを含む任意の種類のものとすることができる。プロセッサ1010は、レベル1キャッシュ1011およびレベル2キャッシュ1012などの1つまたは複数のキャッシングレベル、プロセッサコア1013、およびレジスタ1014を含むことができる。プロセッサコア1013は、演算論理装置(ALU)、浮動小数点演算装置(FPU)、デジタル信号処理コア(DSPコア)、またはこれらの任意の組合せを含むことができる。メモリコントローラ1015はまた、プロセッサ1010と共に使用することができ、あるいはいくつかの実施では、メモリコントローラ1015は、プロセッサ1010の内部部品とすることができる。
【0084】
所望の構成に応じて、システムメモリ1020は、それだけには限らないが、揮発性メモリ(RAMなど)、不揮発性メモリ(ROM、フラッシュメモリなど)、またはこれらの任意の組合せを含む任意の種類のものとすることができる。システムメモリ1020は、オペレーティングシステム1021、1つまたは複数のアプリケーション1022、およびプログラムデータ1024を含むことができる。アプリケーション1022は、レジリエントパケットリングネットワーク内の帯域幅割当てアルゴリズム1023を含むことができ、これは、図3のプロセス300および/または図4のプロセス400に関して説明された機能ブロックおよび/または動作を含む、本明細書で説明された機能を実施するように構成されている。プログラムデータ1024は、例えば1つまたは複数のトランジットキュー長の表示に対応するデータである、帯域幅割当てアルゴリズム1023で使用するためのデータ1025を含むことができる。いくつかの例示的な実施形態では、アプリケーション1022は、オペレーティングシステム1021上でプログラムデータ1024を用いて動作するように構成することができ、その結果、帯域幅割当ての実施が本明細書で説明されたように可能になる。例えば、RPRノード106Bは、計算デバイス1000のすべてまたは一部分を備えることができ、かつアプリケーション1022のすべてまたは一部分を実行することができ、その結果、帯域幅割当ての実施が本明細書で説明されたように可能になる。この説明された基本構成は、図10に、破線1001の内側の構成要素によって示されている。
【0085】
計算デバイス1000は、追加の特徴または機能と、基本構成1001と任意の必要なデバイスおよびインターフェースとの間の通信を容易にするための追加のインターフェースとを有することができる。例えば、バス/インターフェースコントローラ1040を使用して、基本構成1001と1つまたは複数のデータ記憶デバイス1050との間の通信を記憶インターフェースバス1041によって容易にすることができる。データ記憶デバイス1050は、取外し可能記憶デバイス1051、取外しできない記憶デバイス1052、またはこれらの組合せとすることができる。取外し可能記憶デバイスおよび取外しできない記憶デバイスの例には、いくつか挙げると、フレキシブルディスクドライブおよびハードディスクドライブ(HDD)などの磁気ディスクドライブ、コンパクトディスク(CD)ドライブまたはデジタル多用途ディスク(DVD)ドライブなどの光ディスクドライブ、ソリッドステートドライブ(SSD)、およびテープドライブが含まれる。例示的なコンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための任意の方法または技法で実施される、揮発性および不揮発性で取外し可能および取外しできない媒体が含まれうる。
【0086】
システムメモリ1020、取外し可能記憶装置1051、および取外しできない記憶装置1052はすべて、コンピュータ記憶媒体の例である。コンピュータ記憶媒体には、それだけには限らないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは、所望の情報を記憶するために使用でき、計算デバイス1000によってアクセスできる他の任意の媒体が含まれる。任意のこのようなコンピュータ記憶媒体をデバイス1000の一部とすることができる。
【0087】
計算デバイス1000はまた、様々なインターフェースデバイス(例えば、出力インターフェース、周辺インターフェース、および通信インターフェース)から基本構成1001までの、バス/インターフェースコントローラ1040を介した通信を容易にするためのインターフェースバス1042を含むこともできる。例示的な出力インターフェース1060は、グラフィック処理ユニット1061および音声処理ユニット1062を含むことができ、これらは、1つまたは複数のA/Vポート1063を介してディスプレイまたはスピーカなどの様々な外部デバイスと通信するように構成することができる。例示的な周辺インターフェース1060は、シリアルインターフェースコントローラ1071またはパラレルインターフェースコントローラ1072を含むことができ、これらは、1つまたは複数のI/Oポート1073を介して、入力デバイスなど(例えば、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスなど)または他の周辺デバイスなど(例えば、プリンタ、スキャナなど)の外部デバイスと通信するように構成することができる。例示的な通信インターフェース1080は、ネットワークコントローラ1081を含み、これは、ネットワーク通信を通じた1つまたは複数の他の計算デバイス1090との通信を、1つまたは複数の通信ポート1082を介して容易にするように構成することができる。通信接続は、通信媒体の一例である。通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュールによって、あるいは、搬送波または他の搬送機構などの変調データ信号の形の他のデータによって具現化することができ、かつ任意の情報伝達媒体を含むことができる。「変調データ信号」は、その特性集合の1つ以上を有する信号、または信号中の情報を符号化するように変化した信号とすることができる。限定ではなく例として示すと、通信媒体は、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響、高周波(RF)、赤外線(IR)などの無線媒体、および他の無線媒体を含むことができる。コンピュータ可読媒体という語は、本明細書では、記憶媒体と通信媒体の両方を含みうる。
【0088】
計算デバイス1000は、携帯電話、携帯情報端末(PDA)、パーソナルメディアプレーヤデバイス、無線ウェブ監視デバイス、パーソナルヘッドセットデバイス、特定用途向けデバイス、または上記の機能のいずれかを含むハイブリッドデバイスなど、小型携帯用(または移動用)電子デバイスの一部分として実施することができる。計算デバイス1000はまた、ラップトップコンピュータ構成とラップトップではないコンピュータ構成の両方を含むパーソナルコンピュータとして実施することもできる。加えて、計算デバイス1000は、無線ベース局または他の無線システム、あるいは図2に関して前述したノード106Bなどのデバイスの一部として実施することもできる。
【0089】
以上の詳細な説明の一部分は、コンピュータメモリなど、計算システムメモリ内に記憶されたデータビットまたは2進デジタル信号に対する動作のアルゴリズムまたは記号表現について提示されている。これらのアルゴリズムに関する記述または表現は、データ処理技術分野の当業者によって、その仕事の内容を他の当業者に伝えるために用いられる技法の例である。アルゴリズムとは、ここでは、また一般に、所望の結果をもたらす一連の首尾一貫した動作または同様な処理であると考えられる。この文脈で、動作または処理は、物理量の物理的操作を含む。必ずではないが通常、このような量は、記憶、転送、結合、比較または別に操作することができる電気信号または磁気信号の形を取ることができる。このような信号をビット、データ、値、要素、記号、特性、語、番号、数字などと呼ぶことが、主として通常の用法という理由から、場合によって便利であることが分かっている。しかし、上記および同様の語のすべては、適切な物理量と関連付けられるべきものであり、単に便利な表示にすぎないことを理解されたい。特にことわらない限り、以下の議論で明らかなように、本明細書全体を通じて、「処理する」、「計算する(computing)」、「計算する(calculating)」、「決定する」などの語を用いる議論は、メモリ、レジスタまたは他の情報記憶デバイス、送信デバイス、あるいは計算デバイスの表示デバイスの中の物理電子量または磁気量として表されるデータを操作または変換する、計算デバイスの動作または処理を指すことを理解されたい。
【0090】
特許請求される主題は、本明細書で説明された特定の実施の範囲に限定されない。例えば、一部の実施は、あるデバイスまたはデバイスの組合せで動作するように使用されるなど、ハードウェアの中でありうるのに対して、他の実施は、ソフトウェアおよび/またはファームウェアの中でありうる。同様に、特許請求される主題は、これに関する範囲に限定されないが、一部の実施は、信号伝達媒体、1つの記憶媒体および/または複数の記憶媒体などの1つまたは複数の物品を含むことができる。例えば、CD−ROMなどの記憶媒体、コンピュータディスク、フラッシュメモリなどは、記憶された命令を有することができ、この命令は、例えば計算システム、計算プラットフォーム、または他のシステムなどの計算デバイスによって実行される場合、例えば前に説明された実施のうちの1つなど、特許請求された主題によるプロセッサが実行することになる。1つの可能性として、計算デバイスは、1つまたは複数の処理ユニットまたはプロセッサと、ディスプレイ、キーボードおよび/またはマウスなどの1つまたは複数の入力/出力デバイスと、スタティックランダムアクセスメモリ、ダイナミックランダムアクセスメモリ、フラッシュメモリ、および/またはハードドライブなどの1つまたは複数のメモリとを含むことができる。
【0091】
システムの態様のハードウェア実施とソフトウェア実施の間の違いはほとんど残っていなく、ハードウェアまたはソフトウェアの使用は一般に(しかし、ハードウェアとソフトウェアの間の選択が重要になる特定の状況については、必ずではない)、コストと効率のトレードオフである設計選択になる。本明細書で説明された方法および/またはシステムおよび/または他の技術を達成できる様々な手段があり(例えば、ハードウェア、ソフトウェア、および/またはファームウェア)、その好ましい手段は、方法、および/またはシステム、および/または他の技術が採用される状況で変わることになる。例えば、実施者が速度および精度が最重要であると決定した場合、実施者は、主としてハードウェアおよび/またはファームウェアの手段を選ぶ可能性があり、融通性が最重要である場合には、実施者は、主としてソフトウェア実施を選ぶ可能性があり、あるいは、さらに別法として、実施者はハードウェア、ソフトウェア、および/またはファームウェアの何らかの組合せを選ぶ可能性もある。
【0092】
上記の詳細な説明では、ブロック図、流れ図、および/または例を用いることによって、デバイスおよび/または方法の様々な実施形態を示した。このようなブロック図、流れ図、および/または例が1つまたは複数の機能および/または動作を包含する限り、当業者には、このようなブロック図、流れ図、または例の中の各機能および/または動作を、広範囲にわたるハードウェア、ソフトウェア、ファームウェア、または実質的にこれらのあらゆる組合せによって、個別に、または一括して実施できることが理解されよう。一実施形態では、本明細書で説明された主題のいくつかの部分を、特定用途向け集積回路(ASIC)、書替え可能ゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、または他の統合様式によって実施することができる。しかし、当業者には、本明細書に開示された諸実施形態のいくつかの態様を、すべてまたは一部について、1つまたは複数のコンピュータ上で実行する1つまたは複数のコンピュータプログラムとして(例えば、1つまたは複数のコンピュータシステム上で実行する1つまたは複数のプログラムとして)、または1つまたは複数のコンピュータ上で実行する1つまたは複数のプロセッサとして(例えば、1つまたは複数のコンピュータシステム上で実行する1つまたは複数のマイクロプロセッサとして)、ファームウェアとして、またはこれらの実質的に任意の組合せとして、同様に集積回路内で実施できること、ならびにその回路の設計および/またはソフトウェアおよびまたはファームウェアのコードの書出しが、本開示に照らして当業者の技術の範囲内に十分にあることが理解されよう。加えて、当業者には、本明細書で説明された主題の機構を様々な様式のプログラム製品として配布することが可能であること、ならびに本明細書で開示された主題の例示的な一実施形態が、その配布を実際に実行するために使用される信号伝達媒体の具体的な種類にかかわらず該当することが理解されよう。信号伝達媒体の例には、それだけには限らないが、次の、フレキシブルディスク、ハードディスクドライブ(HDD)、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、デジタルビデオテープ、コンピュータメモリなどの記録可能タイプの媒体、ならびにデジタルおよび/またはアナログ通信媒体など(例えば、光ファイバケーブル、導波管、有線通信リンク、無線通信リンクなど)の伝送タイプの媒体が含まれる。
【0093】
当業者には、本明細書に示されたようにデバイスおよび/または方法を説明し、その後、技術的経験を用いて、このように説明されたデバイスおよび/または方法をデータ処理システムに統合することが当技術分野内で一般的であることが理解されよう。つまり、本明細書で説明されたデバイスおよび/または方法の少なくとも一部分は、妥当な量の実験によってデータ処理システムに統合することができる。当業者には、典型的なデータ処理システムが一般に、システムユニット筐体、映像ディスプレイデバイス、揮発性および不揮発性メモリなどのメモリ、マイクロプロセッサおよびデジタル信号プロセッサなどのプロセッサ、オペレーティングシステム、ドライバ、グラフィカルユーザインターフェース、およびアプリケーションプログラムなどの計算エンティティ、タッチパッドまたはタッチスクリーンなどの1つまたは複数の対話デバイス、および/またはフィードバックループおよび制御モータを含む制御システム(例えば、位置および/または速度を検知するためのフィードバック、構成要素および/または量を移動および/または調整する制御モータ)のうちの1つ以上を含むことを理解されよう。典型的なデータ処理システムは、データ計算/通信システム、およびまたはネットワーク計算/通信システムにおいて通常見出されるものなど、任意の適切な市販の構成要素を利用して実施することができる。
【0094】
本明細書で説明された主題は、他の構成要素内に包含される、または接続される別の構成要素を示す場合がある。このように描写された構成は例示的なものにすぎないこと、また実際、同じ機能を実現する多くの他の構成を実施できることを理解されたい。概念的な意味で、同じ機能を実現するための任意の構成の構成要素が、所望の機能が実現されるように効果的に「結びつけられる」。したがって、特定の機能を実現するために本明細書で組み合わされた2つの任意の構成要素は、構成または中間構成要素にかかわらず、所望の機能が実現されるように互いに「結びつけられている」と見ることができる。同様に、そのように結びついた2つの任意の構成要素はまた、所望の機能を実現するために互いに「動作可能に接続」または「動作可能に結合」されていると見ることができ、また、そのように結びつくことができる2つの任意の構成要素はまた、所望の機能を実現するために互いに「動作可能に連結可能」であると見ることができる。動作可能に連結可能な具体的な例には、それだけには限らないが、物理的に連結可能かつ/または物理的に対話する構成要素、および/または無線で対話可能かつ/または無線で対話する構成要素、および/または論理的に対話する、かつ/または論理的に対話可能な構成要素が含まれる。
【0095】
本明細書での実質的にあらゆる複数形および/または単数形の語の用方に関し、当業者は、状況および/または用途に適切なように複数形から単数形へ、および/または単数形から複数形へ変換することが可能である。明確にするために本明細書では、様々な単数形/複数形の置換がはっきり示されることがある。
【0096】
当業者には、一般に、本明細書で用いられる、また特に添付の特許請求の範囲(例えば、添付の特許請求の範囲の本文)で用いられる語は、「開いた」語として一般に意図されていることが理解されよう(例えば、「含んでいる」という語は、「〜を含んでいるが〜に限定されない」と解釈されるべきであり、「有する」という語は、「少なくとも〜を有する」と解釈されるべきであり、「含む」という語は、「〜を含むが〜に限定されない」など)。さらに当業者には、特定の数の導入特許請求記述が意図されている場合、このような意図は特許請求の範囲に明確に記述され、このような記述がない場合は、このような意図がないことが理解されよう。理解の助けとして、例えば、添付の特許請求の範囲では、特許請求記述を導入するための「少なくとも1つの」および「1つまたは複数の」という導入句の使用を含むことがある。しかし、このような句を使用することは、同じ特許請求の範囲が「1つまたは複数の」または「少なくとも1つの」という導入句、および「a」または「an」などの不定冠詞をたとえ含む場合でも、不定冠詞「a」または「an」による特許請求記述の導入が、このような導入特許請求記述を包含するいかなる特定の特許請求の範囲も、このような記述を1つだけ包含する発明に限定することを示唆すると解釈されるべきではない(例えば、「a」および/または「an」は通常、「少なくとも1つの」または「1つまたは複数の」を意味すると解釈されるべきである)。同じことは、特許請求記述を導入するために使用される定冠詞を使用することにも当てはまる。加えて、たとえ特定の数の導入特許請求記述が明確に記述されていても、当業者には、このような記述が通常は、記述された数を少なくとも意味すると解釈されるべきことを理解されよう(例えば、他の修飾語を伴わない「2つの記述」だけの記述は通常、少なくとも2つの記述、または2つ以上の記述を意味する)。さらに、「A、BおよびCなどのうちの少なくとも1つ」と類似の伝統的表現法が用いられる場合、一般にこのような構成は、当業者がその伝統的表現法を解釈する意味において意図されている(例えば、「A、BおよびCのうちの少なくとも1つを有するシステム」は、それだけには限らないが、Aだけ、Bだけ、Cだけ、AとB共に、AとC共に、BとC共に、および/またはA、BおよびC共になどを有するシステムを含む)。「A、BまたはCなどのうちの少なくとも1つ」と類似の伝統的表現法が用いられる場合、一般にこのような構成は、当業者がその伝統的表現法を解釈する意味において意図されている(例えば、「A、BまたCのうちの少なくとも1つを有するシステム」は、それだけには限らないが、Aだけ、Bだけ、Cだけ、AとB共に、AとC共に、BとC共に、および/またはA、BおよびC共になどを有するシステムを含む)。さらに、当業者には、実質的にあらゆる選言的な、2つ以上の選択可能な語を表す単語および/または句は、明細書であろうと特許請求の範囲であろうと、または図面であろうと、これらの語の1つ、これらの語のどちらか、または両方の語を含むという可能性を企図すると理解されるべきである。例えば、「AまたはB」という句は、「A」または「B」または「AおよびB」という可能性を含むと理解されることになる。
【0097】
また、「最適な」という語は、最大化および/または最小化を含むことができると理解されたい。本明細書で用いられる「最小化」および/または同様な語は、大域最小、局所最小、近似大域最小、および/または近似局所最小を含むことができる。同様に、本明細書で用いられる「最大化」および/または同様な語は、大域最大、局所最大、近似大域最大、および/または近似局所最大を含むことができるとも理解されたい。
【0098】
明細書で「1つの実施例(an implementation)」、「一実施例(one implementation)」、「いくつかの実施例」または「他の実施例」を参照することは、1つまたは複数の実施例に関連して説明された特定の特徴、構造、または特性が、必ずしも全部の実施例にではないが、少なくともいくつかの実施例に含まれうることを意味することがある。「1つの実施例」、「一実施例」または「いくつかの実施例」が上記に様々に出現することで、同じ実施例を必ずしもすべて参照していない。
【0099】
本明細書で様々な方法およびシステムを使用していくつかの例示的な技法を説明したが、特許請求された主題から逸脱することなく、様々な他の修正を加え、等価物を置換することができることは、当業者に理解されるはずである。加えて、特定の状況に適合させるために、本明細書で説明された中心の概念から逸脱することなく、特許請求された主題の教示に多くの修正を加えることもできる。したがって、特許請求された主題は、開示された特定の例に限定されるものではなく、このような特許請求された主題はまた、添付の特許請求の範囲に入るすべての実施、およびその等価物を含むこともできるものである。

【特許請求の範囲】
【請求項1】
レジリエントパケットリングネットワーク内で実施される方法であって、
前記レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラによって、前記レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定することと、
不平衡トラフィックシナリオのもとで、少なくとも一部は前記帯域幅割当てに基づいて、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させることとを含む、方法。
【請求項2】
前記公平速度を決定することが、目標キュー長と現在のトランジットキュー長との差を決定することを含む、請求項1に記載の方法。
【請求項3】
前記公平速度を決定することが、目標キュー長と現在のトランジットキュー長との差の変化率を決定することを含む、請求項1に記載の方法。
【請求項4】
前記公平速度を決定することが、前記レジリエントパケットリングネットワークのボトルネックリンクと前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延を決定することを含む、請求項1に記載の方法。
【請求項5】
前記公平速度を決定することが、以下のように表される比例ゲインkに少なくとも一部は基づき、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項1に記載の方法。
【請求項6】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長の間の以前の差である、請求項1に記載の方法。
【請求項7】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長の間の以前の差であり、
前記比例ゲインkが以下のように表され、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項1に記載の方法。
【請求項8】
レジリエントパケットリングネットワークと共に使用するための物品であって、
記憶された機械可読命令を含む信号伝達媒体を備え、前記機械可読命令が、1つまたは複数のプロセッサによって実行された場合に、
前記レジリエントパケットリングネットワークの少なくとも1つのノードと結びついたP型コントローラによって、前記レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定するように、かつ
不平衡トラフィックシナリオのもとで、少なくとも一部は前記帯域幅割当てに基づいて、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように、計算デバイスを動作可能にする、物品。
【請求項9】
公平速度の前記決定が、少なくとも一部は目標キュー長と現在のトランジットキュー長との差に基づく、請求項8に記載の物品。
【請求項10】
公平速度の前記決定が、少なくとも一部は目標キュー長と現在のトランジットキュー長との差の変化率に基づく、請求項8に記載の物品。
【請求項11】
公平速度の前記決定が、前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項8に記載の物品。
【請求項12】
公平速度の前記決定が、以下のように表される比例ゲインkに少なくとも一部は基づき、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項8に記載の物品。
【請求項13】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長の間の以前の差である、請求項8に記載の物品。
【請求項14】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長との以前の差であり、
前記比例ゲインkが以下のように表され、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項8に記載の物品。
【請求項15】
複数のノードと、
前記複数のノードの間に結びついたリンクの内側リングと、
前記複数のノードの間に結びついたリンクの外側リングと、
前記複数のノードのうちの少なくとも1つのノードと結びついたP型コントローラとを備えるレジリエントパケットリングネットワークであって、前記P型コントローラが、
前記レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定するように構成され、かつ
不平衡トラフィックシナリオのもとで、少なくとも一部は前記帯域幅割当てに基づいて、前記複数のノードのうちの前記少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成される、レジリエントパケットリングネットワーク。
【請求項16】
公平速度の前記決定が、以下のように表される比例ゲインkに少なくとも一部は基づき、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項15に記載のレジリエントパケットリングネットワーク。
【請求項17】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長の間の以前の差である、請求項15に記載のレジリエントパケットリングネットワーク。
【請求項18】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長との以前の差であり、
前記比例ゲインkが以下のように表され、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項15に記載のレジリエントパケットリングネットワーク。
【請求項19】
レジリエントパケットリングネットワークと共に使用する装置であって、
前記レジリエントパケットリングネットワーク内の複数のノードのうちの少なくとも1つのノードと結びついたP型コントローラを備え、前記P型コントローラが、
前記レジリエントパケットリングネットワーク内の帯域幅割当てを容易にするための公平速度を決定するように構成され、かつ
不平衡トラフィックシナリオのもとで、少なくとも一部は前記帯域幅割当てに基づいて、前記レジリエントパケットリングネットワークの複数のノードのうちの前記少なくとも1つのノードと関連している1つまたは複数の前方速度を安定化させるように構成される、装置。
【請求項20】
前記P型コントローラがさらに、以下のように表される比例ゲインkに少なくとも一部は基づき、前記公平速度を決定するように構成され、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項19に記載の装置。
【請求項21】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長の間の以前の差である、請求項19に記載の装置。
【請求項22】
前記公平速度F(n)が以下のように表され、
F(n)=F(n−1)−k(e(n)−e(n−1))
ここで、F(n−1)が以前の公平速度であり、Kが比例ゲインであり、e(n)が目標キュー長と現在のトランジットキュー長の間の差であり、e(n−1)が目標キュー長と現在のトランジットキュー長との以前の差であり、
前記比例ゲインkが以下のように表され、
0<k<π/(2Wτ)
ここで、Wが前記レジリエントパケットリングネットワークのノードと関連付けられた重みの合計であり、τが前記レジリエントパケットリングネットワークのボトルネックリンクと、前記レジリエントパケットリングネットワークの前記少なくとも1つのノードとの間の往復遅延に少なくとも一部は基づく、請求項19に記載の装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公表番号】特表2012−529242(P2012−529242A)
【公表日】平成24年11月15日(2012.11.15)
【国際特許分類】
【出願番号】特願2012−514142(P2012−514142)
【出願日】平成22年6月3日(2010.6.3)
【国際出願番号】PCT/US2010/037303
【国際公開番号】WO2010/141756
【国際公開日】平成22年12月9日(2010.12.9)
【出願人】(509349510)ニュー ジャージー インスティチュート オブ テクノロジー (8)
【Fターム(参考)】