説明

総トラフィックで帯域幅を保証する技術

方法、システム、及び装置は、ネットワークトランザクションための帯域幅を保証する。ネットワークは、複数のノードを持つツリーのように論理的に組織化されている。それぞれのノードは、ネットワークを通じたネットワークトランザクションについてサービスを保証することができる。それぞれのノードは、そのトラフィックをモニタして、予め定められた量の使用されていない帯域幅をその隣接するノードとともにリザーブする。特定のノードが追加の帯域幅を必要とする場合、当該ノードは隣接するノードから帯域幅を借りる。


【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、広くコンピュータネットワークに関し、より詳しくは、ネットワークトラフィックのための帯域幅管理に関する。
【背景技術】
【0002】
サービス品質(QoS)は、ネットワーク伝送に先立って、伝送レート、エラーレート、及び他のネットワーク伝送特性が計測、向上、及びある程度保障されることが可能である概念である。QoSは、ビデオ、オーディオ、マルチメディア、及び同様のもののような大量のデータを恒常的に伝送する高帯域幅ネットワークに対して重要な問題である。さらに、QoSは、インターネットのような、複数のインターネットサービスプロバイダ(ISP)を通じて任意の単一のネットワークトランザクションが複数のサブネットワークに広がり得る、地理的に分散されたネットワークに対して問題となる。
【0003】
適切なQoSアーキテクチャを提供する試みは、しばしばスケーラビリティ問題を経験する。すなわち、独立したサブネットワーク(例えば、複数のISP)は、任意の実用的な商業ソリューションを実現すべく、過度に互いに依存することを要求される。独立するサブネットワークが他のサブネットワークのオペレーション上のスペックに依存するようになると、それらは、スケーラブルでなくなり、望ましくなくなる。スケーラビリティが充分に達せられた場合、その結果は大抵、プロバイディングスケーラビリティを犠牲にしてネットワークスループットを劇的に低下させる、過度に複雑な実装スキームで達成される。
【0004】
したがって、大きな地理的に分散したネットワークに対して、ネットワークスループットに著しく影響を与えず、過度に複雑でないような方法でスケーラビリティが達成される、よりスケーラブルなQoS技術が必要とされる。
【図面の簡単な説明】
【0005】
【図1】本発明の一実施形態に係る、サービスを保証するためのネットワーク図である。
【0006】
【図2】本発明の一実施形態に係る、ネットワークサービスを保証する方法のフロー図である。
【0007】
【図3】本発明の一実施形態に係る、保証されたネットワークサービス要求の帯域幅を管理するための方法のフロー図である。
【0008】
【図4】本発明の一実施形態に係る、帯域幅管理システムの図である。
【発明を実施するための最良の形態】
【0009】
図1は、トランザクションがネットワーク100内で処理される前に、ネットワークトランザクションのためのサービスを保証するネットワーク100の図である。その技術は、ネットワークのプロセッシングデバイス内にコンピュータアクセス可能媒体で実装される。これらのデバイスは、ルータ、ハブ、ブリッジ、スイッチ、ゲートウェイ、ファイアウォール、プロクシ、サーバ、クライアントワークステーション、及び同種のものであってよい。ネットワーク100は、ツリーの枝のそれぞれが1つのノードである1つのツリーとして、コンピュータアクセス可能媒体の中で論理的に表現される。1つのノードは、発信ノードと宛先ノードとの間のネットワークトランザクションに関連するデータパケットをルーティングすることによって、ネットワークトランザクションに加わるプロセッシングデバイスである。
【0010】
本発明の実施形態は、ネットワーク100のノード間のサービスを保証するための、改良された技術を提供する。保証することは、ネットワーク100のノード及びリンクが機能し、他の場合に機能しなくならないことを仮定して、ネットワークトランザクションが開始する前に帯域幅可用性が保証されることを意味する。リンク及びノードがハードウェア又はソフトウェア障害により変則的に機能しなくなる又はリンク及びノードが計画されたメンテナンス活動により機能しなくなることがあり得るので、ネットワークトランザクションがネットワーク100内で完了するという絶対的な保証はできないことを、当業者は容易に理解する。
【0011】
図1に示されたネットワーク100は、互いに独立に動作可能な種々の自立システム(AS)を含む。これらの複数のASは、ISP、プライベートネットワーク、及び同種のもののような、独立したサブネットワークとして考えられ得る。サブネットワークは、全世界に地理的に広がることができる。それぞれのASの中で、プロセッシングノードのいくつかは外部の他の複数のASと直接的に通信するために使用される。これらのノードはエッジノードと呼ばれる。
【0012】
ネットワーク100の全体は、1つのツリーとして論理的に組織化される。図1において、当該ツリーは逆転され、ツリーのルートがAS Yによって識別され、最も遠いリーフがAS Xによって識別される。ツリーのルートノードは、エッジノードDである。AS Nは、子0、1、及び2の父である。さらに、子は互いに兄弟とみなされる。それぞれのASはそれ自体、自身の内部のルートノード、父ノード、及び兄弟ノードを持つサブツリーとみなされる。さらに、父の子は、その息子とみなされる。したがって、父AS Nは、Child 0、Child 1、及びChild 2として識別される息子を持つ。さらに、AS Nは、AS Xの祖父とみなされる。
【0013】
ネットワークトランザクションは、ネットワーク100の任意の2以上のノード間の通信である。ネットワークトランザクションを始めるノードは発信ノードと呼ばれる。ネットワークトランザクションは、発信ノードから宛先ノードにデータパケットを伝達する。したがって、発信ノードがネットワークトランザクションを通じて通信を希望するノードは、宛先ノードと呼ばれる。ネットワークトランザクションは、発信ノードから1以上の中間ノードを通じた宛先ノードへのネットワークデータパケットの伝達を含んでよい。したがって、ネットワークトランザクションは、ネットワークを通じた発信ノードから宛先ノードへのパスに関連する。様々なパス生成及び動的変更アルゴリズムはネットワーク技術においてよく知られており、既存のネットワークアーキテクチャ及びプロトコルを用いて容易に実現可能である。そのようなアルゴリズム及びアーキテクチャの全ては、本発明の実施形態とともに使用されることが可能である。
【0014】
ネットワークパケットがネットワーク100の任意の2つのノード間で存在して送信される量及び速度は、帯域幅と呼ばれる。これらのデータ伝達は、ネットワーク100のリンクにわたって生じ、リンクは複数のノードを接続する。それぞれのリンクは、異なるタイプの媒体、異なる量、異なる速度、及び異なる数のネットワークトランザクションの同時セッションを処理することができてよい。それぞれのリンクのハード及びソフト制限は、そのハードウェア及びソフトウェア構成に基づいて、それぞれのノードによって予め知られる。これらの制限は、よく知られた既存のネットワークプロトコル及び技術を用いて、ノード間で通信され得る。
【0015】
発信ノードが、宛先ノードに向けた特定のネットワークトランザクションを要求するとき、発信ノードは、宛先ノードにトランザクションを処理するために十分な量の帯域幅がネットワーク100内に存在することを、トランザクションを開始する前に知ることを希望する。本発明の実施形態において、これは帯域幅管理規則(BCC)計算で実現される。発信ノードは、ネットワークパス内に定められた最初のプロセッシングノードにネットワークトランザクションを要求する。最初のプロセッシングノードは、宛先ノードの利用可能な帯域幅の総量を特定して、宛先ノードに定められた全ての顕著なトラフィックの帯域幅を合計する。この計算は、そのトランザクションを満たすために帯域幅が存在するであろうことを発信ノードに保証するBCC計算である。その保証に応じて、発信ノードはネットワーク100を通じてネットワークトランザクションを開始する。
【0016】
一例として、10KBの帯域幅を要するネットワークトランザクションを要求する発信ノードAを考える。そのトランザクションは、宛先ノードNに向けられ第1プロセッシングノードBに最初に要求される。Nは128KBの最大の帯域幅を持つことができる。AがBに要求したとき、Nに向けた現在のトラフィックの総計は110KBである。
【0017】
この例において、Bは、BCCを適用して、そのネットワークトランザクションが保証されている場合に、ネットワークトランザクションが任意の時点でNが処理することができる128KBの最大の帯域幅より小さい、Nに向けられた現在の120KBのトラフィックが存在するであろうことを判断する。このように、Bは、Aから要求を受け取った場合にBCC計算を行い、ネットワークトランザクションが保証され得るか否かを決定する。その保証はその後にBからAに通信され、ネットワークトランザクションが始まる。
【0018】
BCCは、以下の式で定められ得る。ここで、発信ノードはAS Xで識別されるノードであり、宛先ノードはAS Y(ツリーのルート)のエッジノードDである。
【数1】

ijは、エッジノードi及びjの間で利用できるAS Xの全帯域幅であり、rijは、エッジノードDをルートとしたツリーにおける、AS Xの対応する部分である。したがって、1つのネットワークトランザクションに関連する帯域幅要求が、エッジノードDに定められた全帯域幅の集計と合算されたとき、エッジノードDが処理することができる全帯域幅より小さければ、BCCの式は真をとり、ネットワークトランザクションは保証されたサービスであり得る。
【0019】
この計算はスケーラブルなアプローチである。なぜなら、必要とされる全ては、宛先ノードに関連する既知の帯域幅制限の他に、宛先ノードに向けられている存在するトラフィックの総計を合計する計算であるからである。集計のトラフィックは、ネットワークにおいてアクティブであり、宛先ノードに現在向けられている全ての現在のネットワークトラフィックを意味する。しかしながら、ネットワークトランザクションがネットワーク100を通じて進んでいる任意の与えられた時点で、1以上のノードは、ネットワーク要求を処理するため十分な帯域幅を有していないかもしれない。したがって、BCCは、ネットワークトランザクションのネットワークパスに関連するそれぞれのプロセッシングノードで、必要に応じて必要な動的な調整を行うべく拡張されてよく、それはBCCの式によって保証される。
【0020】
例えば、ネットワークトランザクションは、AS mからAS Yのエッジノードj’へのサービスの保証の後に進展する。しかしながら、この時点で、ノードj’とk(リンクj’−k)との間のリンクについての現在の帯域幅は容量一杯であり、そのネットワークトランザクションを処理することができない。リンクj’−kに対してその帯域幅を増加させる能力が無いと、トランザクションは機能しないか不当に遅延するだろう。したがって、BBCの静的なアプローチは、ノードが隣接する(兄弟、息子、父)複数のノードから帯域幅を借りることを可能にするClosest relation AllocatioN (CLAN) 技術で拡張される。
【0021】
CLAN技術を用いて、ネットワーク100のノードのそれぞれは、隣接するノードへのリンクで、より具体的には父ノードで生じているトラフィック量をモニタする。特定のノードが、父ノードへのリンクで生じている帯域幅の低下に気付いたとき、その低下は父ノード(隣接するノード)に知らされる。このリザーブされた帯域幅は、父ノードによって保持され、他のより必要としている父の複数の息子に、必要とされたときに与えられる。
【0022】
したがって、上に示されたこの例において、リンクj’−kが128KBの量を保持できており、ノードkに到達する必要があるネットワークトランザクションが現れたとき、ノードkは、2つの残りの息子のうちの1つ又は両方から64KBを借りることができる。処理の間に2つの残りの息子が父ノードKに利用可能な帯域幅の量を有することを発見した場合に、必要な時にそれらの父ノードから帯域幅を要求するので、ノードkは、残りの息子のうちの1つ又は2つから64KBが取得可能であることを知る。
【0023】
例えば、それぞれが128KBの全帯域幅容量を有するノードkへの3つのリンクを考え、さらにそれぞれの息子ノードが任意のある時刻にわずか64KBを管理すべく設定され、そして、64KBを超える帯域幅が必要とされ、父ノードが与えられたトランザクションについて64KBを超える容量がもはや必要とされないことに気付く度に、リリースして父ノードkに通知するよう設定されることを考える。この例において、リンクj’−kを移動するネットワークトランザクションが追加の帯域幅を必要とする場合、父ノードkはこの超過の帯域幅を管理する。帯域幅が以前にノードj’のうちの1つ又は両方の兄弟から借りられているので、父ノードkは、息子ノードj’にそれを供給すべくリザーブする。
【0024】
借りることは、2つの隣接するノード又は兄弟ノードの間で行われ得る。さらに、借りることは、1つのASの中で生じる必要はない。例えば、エッジノードj’は、2つの異なるAS(L及びM)をAS Nに接続する。したがって、AS Mのエッジノードjは、リンクj−j’にわたるトランザクションを行うために、AS Lの適切なエッジノードから借りることができる。これは、隣接するノード、又はノードjとノードj’に直接接続するAS Lのエッジノードとの両方に対する父ノードとしてふるまうj’を介して行われる。
【0025】
したがって、CLANを用いて、隣接するノードは、それらの息子に代わって父ノードによって帯域幅の量が管理されるよう、互いにポリシーを確立する。これらの帯域幅の量は、リザーブが適切な父ノードから使用される前に要求されるべきリザーブと考えられる。したがって、息子ノードは、それらの父を通じて、予め取り決められた量を超える帯域幅を借りる。借りられた帯域幅は、借りる息子ノードの兄弟ノードからもたらされるが、それらの父ノードによって管理される。同様にして、父ノードは、任意の時刻に、借りているノードがその兄弟及びその父の兄弟から帯域幅を取得し得るよう、ネットワーク100内のその父ノードから借りることができる。
【0026】
ネットワークのノード間の階層的な関係は、CLAN技術を用いて帯域幅を借りることを目的として管理される。借りることは、ネットワークの複数のノードを通じて進行しているネットワークトランザクションにとって必要とされる。すなわち、より大きい帯域幅を必要とするノードは、必要な帯域幅の割り当てを得るために、隣接するノードへのその最も近いつながりを使用し、この借りることは、最も近いつながりからの最初の借りることの後、ノードの親族を通じて上に進むことができる。
【0027】
さらに、BCC計算は、ネットワークトランザクションの発信ノードに与えられるべきトランザクション保証を可能にする。ここで、当該ネットワークトランザクションは、宛先ノードに到達すべくネットワーク100を通じたある量の帯域幅を要求する、さらに、ネットワークトランザクションが進行した場合、ノード間の任意の特定のリンクがトランザクションを処理するために十分な帯域幅を欠いた場合、隣接するノードからCLAN技術を用いて、帯域幅が一時的に借りられる。BCC及びCLAN技術は、複数のAS又は独立したネットワークに対するQoSへのスケーラブルなソリューションを提供する。これらの技術は過度に複雑ではなく、既存のネットワークプロトコルと、BCCを計算及びCLAN技術を実装すべく設計されたソフトウェアとの中に実装され得る。
【0028】
図2は、図1とともに上述されたBCC及びCLAN技術を実装することによってネットワークサービスを保証する1つの方法200のフロー図である。方法200は、コンピュータアクセス可能媒体に実装され、ネットワークのそれぞれのノード上で処理されてよい。ノードは、ネットワークを通じたネットワークトランザクションを開始、ルーティング、及び処理する、ネットワーク内のプロセシングデバイスである。方法200は、ネットワークのそれぞれのノード内に、ソフトウェア、ファームウェア、及び/又はネットワークプロトコルを介して実装され得る。
【0029】
最初に、210において、第1プロセッシングノードによって、ネットワークトランザクション要求が受信される。その要求は1つの発信ノードから発生する。ネットワークトランザクションは、ネットワークの1以上の中間ノードを通じて宛先ノードに渡る、ネットワークトランザクションに関連するネットワークパケットのための1以上の経路を定めるネットワークパスに関連づけられる。第1プロセッシングノードは、当該ネットワークパスの最初のノードである。
【0030】
第1プロセッシングノードは、発信ノードからネットワーク要求を受信した場合、当該宛先ノードに定められたネットワーク内に存在するトラフィックの総計とそのネットワークトランザクションによって必要とされる帯域幅との和が宛先ノードの最大帯域幅を超えるか否かをチェックすることにより、BCC計算に基づいて、その要求が受け入れられるかを判断する。BCC計算及び適切なチェックは220で行われる。トラフィックの総計のと必要とされる帯域幅との和が、宛先ノードの帯域幅制限を超える場合、222において、そのネットワークトランザクションは保証されることができず、発信ノードは同じように通知される。
【0031】
しかしながら、220において、総計のトラフィックと必要とされる帯域幅との和が宛先ノードの帯域幅制限を超えない場合、230において、第1プロセッシングノードは発信ノードに、要求されたネットワークトランザクションが、ネットワーク内で宛先ノードに到達するのに十分な帯域幅を有するであろうことを保証する。一実施形態において、この保証が生じると、240で、宛先ノードでの利用可能な全帯域幅は、現在のネットワークトランザクションを満たすために必要とされる帯域幅だけ減少させられる。
【0032】
勿論、BCC計算を実装するための多様な方法が存在する。1つの技術は、宛先ノードに、その方向に向かうトラフィックの経過を追跡させ、絶え間なく動的に変化する現在の利用可能な帯域幅カウンタを維持させるだろう。他の方法は、動的にBCCを計算するために、それぞれのノードにネットワーク内の他のノードに対して動的に問い合わせをさせる。当業者は、他の技術もまた存在し得ることを容易に理解するだろう。BCC計算を解くそのような技術の全てが本発明の実施形態の中に含まれることが意図される。
【0033】
第1プロセッシングノードがサービスを保証すると、250において、ネットワークを通じて宛先ノードに向けて処理すべく、ネットワークトランザクションが開始する。いくつかの実施形態において、ネットワークトランザクションの処理の間、ある時点で、260に示されるように、特定のプロセッシングノードは、ネットワークトランザクションに関連するネットワークパスの次のノードへのリンクを通じたネットワークトランザクションを処理するために必要とされる必要な帯域幅が実際に不足することを判断する場合がある。ネットワークのそれぞれのノードは、動的にこの問題を解決すべく、図1とともに上述されたCLAN技術を動的に実行する。
【0034】
したがって、270において、十分な帯域幅を欠く特定のプロセッシングノードは、ネットワークトランザクションを処理するために、必要とされる帯域幅を隣接するノードから借りる。このように、特定のプロセッシングノードの父ノードは、特定のプロセッシングノード及び特定のプロセッシングノードの兄弟ノードに代わって、リザーブの帯域幅を管理する。これらのノードは、父のいずれかの息子によって超過の帯域幅が必要とされることを条件としてそして超過の帯域幅が必要とされる場合に、父ノードが管理及び供給を担うことになる超過する帯域幅の量を、互いに予め確立する。さらに、いくつかの実施形態において、必要とする息子の父ノードが、必要としている息子の帯域幅要求を満たすのに十分な帯域幅を持っていない場合がある。これらの状況において、父は、父の兄弟(必要としている息子の祖父)から帯域幅を借りるべく、その父(父に隣接するノード及び必要としている息子の祖父)に連絡する。この借りることは、図1で上記されたような、CLAN技術に関連するルールに従って、必要に応じて続く。
【0035】
方法200の実施形態は、1つのネットワークとして論理的に組織化された異種ASからスケーラブルなQoSを提供すべく、BCC及びCLAN技術がネットワークのノードの間でどのように実装され処理されるかを示す。これらの実施形態は複雑でなく、ノード間で通信するための従来のネットワークプロトコルを使用するそれぞれのネットワークノード上で処理するソフトウェアで実施され得る。
【0036】
図3は、保証されたネットワークサービス要求の帯域幅を管理するための1つの方法300のフロー図である。方法300は、ネットワークのノードのそれぞれの中に実装され、コンピュータアクセス可能媒体で実装される。方法300は、それぞれのノードによって行われる処理及び1つのネットワークトランザクションの間にノード間で生じるいくつかの連携を表す。方法300は、CLAN技術の実施形態を表し、そこでは複数のノードは、ネットワークトランザクションの間にネットワーク内で帯域幅を借りて管理する。
【0037】
310において、ネットワークを通じて宛先ノードへのネットワークトランザクションを処理するプロセッシングノードは、自身のトラフィック量をモニタする。プロセッシングノードは、特定の予め定められたレベルでトラフィックをモニタするよう設定することを目的として、その隣接するノード(兄弟、父、及び息子)に知られた、以前に使用された複数のポリシーを持つ。トラフィックが予め定められた限度を下回ると、これは320で検出され、330において、利用可能な予め定められた量の帯域幅がプロセッシングノードに利用不可能になるようリザーブされる。
【0038】
340において、それらの予め定められた量のリザーブされた帯域幅は、プロセッシングノードの父ノード(隣接するノード)に知られる。父ノードは、プロセッシングノードの代わりに、及びプロセッシングノードの兄弟の代わりに、リザーブされた帯域幅のプールを管理する。したがって、350において、他のノード(元のプロセッシングノードの兄弟ノード)が自身のネットワークトランザクションを処理しており、父ノードを通じたネットワークトランザクションを処理するために追加の帯域幅が必要であることを判断した場合、その兄弟ノードは、360において、必要な帯域幅を父ノード(隣接するノード)から借りるべく要求する。兄弟は、帯域幅を父から直接的に借りたが、兄弟の氏族が管理を目的として以前に父に預けた余剰能力から間接的に借りた。
【0039】
この帯域幅管理及び借用技術は、図1及び2とともに上述したCLAN技術の一実装例を示す。帯域幅の寄託(例えば、リザーベーション)及び回収に関連する、帯域幅の管理に関する複数のポリシーは、ネットワークの隣接するノードの間で伝達される。さらに、370において、ネットワークのノードのそれぞれは、特定のネットワークトランザクションの任意の特定の宛先ノードに関する帯域幅の総量を解決(例えば計算)するための管理技術によって必要とされたとき、BCC計算を解くことができる。
【0040】
方法300は、CLAN技術の一実装例を提供し、BCC計算を行う必要がある場合にその能力を維持する。これは、複数のノードを持つ異種ネットワークが、ネットワークトランザクションについてのQoSを提供すべく、いかにしてスケーラブルな方法で互いに情報を交換することができるかを示す。
【0041】
図4は、帯域幅管理システム400の図である。帯域幅管理システム400は、異種ネットワーク内でのBCC及びCLAN技術の一実施形態を示し、そのネットワークはASとして識別される複数のサブネットワークを含む。帯域幅管理システム400は、コンピュータアクセス可能媒体で実装される。
【0042】
帯域幅管理システム400は、ネットワークツリー401として論理的に表す異種ネットワークを備え、ツリー401のブランチは、他のサブツリーを含むことができる。ツリー401は、ポインタとツリー401の属性及び特性に関連づけられたメタデータとによって、完全に管理され、扱われることができる。ツリー401は、複数のノード402及び403を含む。ノード402又は403のそれぞれは、他の隣接するノード402又は403に対するツリー内でのその前後関係に応じて、息子、父、及び/又は兄弟としての呼称をとる。したがって、1つのノード402又は403は、隣接するノード402及び403に対して複数の呼称を持ち得る。1つのノードは、隣接しないノードに対して、祖父、孫息子、叔父、及び同種のもののような、1つの呼称も持ち得る。
【0043】
それぞれのノード402又は403は、それぞれのトラフィックモニタ402A−403A、帯域幅変更部402B−403B、及びシグナリングプロセッサ402C−403Cも含む。これらの要素は、BCC及びCLAN技術を実行するためのソフトウェア論理回路及び既存のネットワークプロトコルの両方を結びつける。
【0044】
したがって、トラフィックモニタ402−403Aは、その個々のノード402又は403上のトラフィックをモニタして、トラフィック情報を、隣接するノード402又は403のトラフィックモニタ402A−403Aに通知する。この通信及びモニタリングは、BCC及びCLAN技術に関連する処理を解決することにおいて有効である。例えば、トラフィック量は、特定のネットワークトランザクションの特定の宛先ノードについてのBCC計算を解くべく集計される。さらに、当該トラフィック量は、帯域幅を隣接するノード402又は403に寄託すべきか、貸し付けた帯域幅を隣接するノード402又は403から回収すべきかを決定すべく、使用され得る。
【0045】
帯域幅変更部402B−403Bは、特定のプロセッシングノード402又は403に関連する帯域幅を調節すべく、トラフィックモニタ402A−403Aと通信する。すなわち、予め定められ、予め取り決められた量より小さい帯域幅をトラフィックモニタ402A−403Aが報告した場合、帯域幅変更部402B−403Bは、CLAN技術を実行すべく使用され、リザーブされた帯域幅として使用されていない追加の帯域幅を要求し、追加の帯域幅は隣接するノード402又は403に寄託される。逆に、ノード402又は403が追加の帯域幅を必要とする場合、帯域幅変更部402B−403Bは、隣接するノード402又は403から借り入れているさらなる帯域幅を要求すべく、現在のトランザクション基づいて、及びトラフィックモニタ402A−403Aからの帯域幅使用量の報告に基づいて、この要求を検出するために使用され得る。
【0046】
シグナリングプロセッサ402C−403Cは、隣接するノード402又は403から、必要な帯域幅又は超過の帯域幅を実際にアロケート及び再アロケートされるべく、使用され得る。すなわち、指定されたリンクに帯域幅が切り替えられることを可能にする実際のデバイスは、シグナリングプロセッサ402C−403Cでコントロールされ得る。要するに、隣接するノード402及び403から帯域幅が寄託又は回収された場合、帯域幅は複数の物理リンクにわたって再アロケート並びにスロットルアップ又はスロットルダウンされる。このスロットリングは、シグナリングプロセッサ402C−403Cが担う。
【0047】
オペレーションの間、トラフィックモニタ402A−403Aは、そのノード402又は403上のトラフィックを、隣接するノード402又は403に報告する。帯域幅変更部402B−403Bは、これを現在のネットワーク要求と組み合わせて使用して、帯域幅を変更する。シグナリングプロセッサ402C−403Cは、変更された帯域幅を検出して、ノード402及び403の影響されるリンクをスロットルアップ及びダウンすべく、内在する帯域幅デバイスを駆動する。
【0048】
トラフィックモニタ402A−403A、帯域幅変更部402B−403B、及びシグナリングプロセッサ402C−403Cの使用は、大きな異種ネットワークにわたってスケーラブルなBCC及びCLAN技術のモジュール式のイベント駆動型の実装を提供する。しかしながら、当業者は、モジュールの機能がより多くのモジュールにさらに分離され、またはより少数のモジュールに組み合わせられた、他の実装及びアーキテクチャが可能であることを理解する。BCC又はCLAN技術を実行すべく設計されたこのアーキテクチャに対するそのような変更の全ては、本発明の実施形態の範囲に含まれる。
【0049】
上の記載は実例であって、限定するものではない。上の記載を検討すると、多くの他の実施形態が当業者に明らかであろう。したがって本発明の実施形態の範囲は、添付の請求項に従って、そのような請求項が与える均等物の及ぶ全範囲とともに決定されるべきである。
【0050】
要約は、技術開示の性質及び要旨を読者が迅速に決定することができる要約を要求する連邦規則集第37巻第1.72項(b)に準拠して提供される。それは、請求項の及ぶ範囲又は意義を解釈又は限定するために使用されないという了解の下に提出される。
【0051】
前の実施形態の記載において、開示を簡素化することを目的として、多様な機能が1つの実施形態にまとめられている。この開示方法は、本発明の請求された実施形態が、それぞれのクレーム内に明示的に列挙された機能より多くの機能を要するという意図を示すと解釈されるべきではない。むしろ、以下の請求項が示すように、発明の主題は、1つの開示された実施形態の全ての機能にあるとは言えない。したがって、以下の請求項は、それぞれの請求項がそのまま別個の典型的な実施形態として、実施形態の記載に組み込まれる。


【特許請求の範囲】
【請求項1】
1つのネットワークトランザクション要求を1つの発信ノードから受信する段階と、
前記要求を満たすための充分な帯域幅を1つの宛先ノードが持つことを判断する段階と、
複数の中間ノードを介して宛先ノードにサービスが保証されることを前記発信ノードに通知する段階と、
宛先ノードの帯域幅から前記トランザクションを提供するために必要とされるトランザクションの帯域幅を減らす段階と
を備える方法。
【請求項2】
ネットワークを通じた前記宛先ノードに対する前記ネットワークトランザクションを処理する段階
をさらに備える請求項1に記載の方法。
【請求項3】
前記ネットワークトランザクションが完了すると、必要とされる前記トランザクションの帯域幅を、前記宛先ノードの帯域幅に加える段階と
をさらに備える請求項1に記載の方法。
【請求項4】
前記ネットワークトランザクションを処理する段階と、
前記複数の中間ノードのうちの1つで、前記処理の間、前記ネットワークトランザクションのために不十分な帯域幅が利用可能であることを検出する段階と、
前記1つの中間ノードによって、前記1つの中間ノードを通じた前記ネットワークトランザクションを処理するために必要とされる前記不十分な帯域幅を、1つの隣接するノードから借りる段階と
をさらに備える請求項1に記載の方法。
【請求項5】
借りる段階は、
前記隣接するノードが以前に他の隣接するノードから取り分けた、リザーブされた帯域幅を要求する段階
をさらに有する請求項4に記載の方法。
【請求項6】
借りる段階は、
前記隣接するノードによって、前記隣接するノードに隣接する他のノードから、前記不十分な帯域幅の少なくとも一部が借りられる、追加の借りる段階
を有する請求項4に記載の方法。
【請求項7】
前記宛先ノードの帯域幅を、プロセッシングノード、前記複数の中間ノード、及び前記宛先ノードで管理及び調整する段階
をさらに備える請求項1に記載の方法。
【請求項8】
1つのネットワークの1つのプロセッシングノードでトラフィック量をモニタする段階と、
前記量が予め定められた限度を予め定められた量だけ下回ることを検出する段階と、
前記予め定められた量をリザーブする段階と、
前記リザーブされた予め定められた量を、1つの隣接するノードに伝達する段階と
を備える方法。
【請求項9】
1つの異なるプロセッシングノードで、利用可能な帯域幅を超える1つのネットワークトランザクション要求を検出する段階と、
前記隣接するノードによって保持される前記リザーブされた予め定められた量から、前記ネットワークトランザクションをサービスするための必要とされる帯域幅の量を要求する段階と
をさらに備える請求項8に記載の方法。
【請求項10】
前記隣接するノードで利用可能な帯域幅に、前記リザーブされた予め定められた量を追加する段階
をさらに備える請求項8に記載の方法。
【請求項11】
必要とされる帯域幅要求を異なるプロセッシングノードから受信した後に、前記隣接するノードで、要求された帯域幅の量を前記利用可能な帯域幅から減らす段階
をさらに備える請求項10に記載の方法。
【請求項12】
前記要求された帯域幅の量が前記利用可能な帯域幅を超える場合に、前記隣接するノードで、前記隣接するノードに隣接する1つの隣接するノードから、前記要求された帯域幅の量の少なくとも一部を借りる段階
をさらに備える請求項11に記載の方法。
【請求項13】
前記プロセッシングノードによって、前記隣接するノードを含む、前記プロセッシングノードに直接接続されたノードのリストを管理する段階
をさらに備える請求項8に記載の方法。
【請求項14】
前記プロセッシングノードによって、1つの宛先ノードで利用可能な全帯域幅の総計を管理する段階
をさらに備える請求項8に記載の方法。
【請求項15】
1つのネットワーク内の1つの宛先ノードに向けられたネットワークトランザクションを要求する1つの発信ノードと、
前記要求を最初に受信する1つの第1プロセッシングノードと
を備え、
前記第1プロセッシングノードは、前記宛先ノードが前記ネットワークトランザクションを行うことができるか否かを判断し、できる場合に、前記第1プロセッシングノード、1以上の中間ノード、及び前記宛先ノードを通じて前記ネットワークトランザクションを完了するために十分な帯域幅が前記ネットワークにおいて利用可能であることを、前記発信ノードに保証するシステム。
【請求項16】
前記第1プロセッシングノードは、前記ネットワークトランザクションのために必要とされるトランザクションの帯域幅を、1以上の中間ノードのうちの1つである次のプロセッシングノードに伝達し、
必要とされる前記トランザクションの帯域幅は、残りの前記中間ノード及び前記宛先ノードに前記ネットワーク全体にわたって連続的に伝達される
請求項15に記載のシステム。
【請求項17】
前記発信ノード及び前記第1プロセッシングノードは、前記発信ノードが前記保証を受け取った後に前記ネットワークトランザクションの処理を開始する
請求項15に記載のシステム。
【請求項18】
前記中間ノードのうちの1つは、前記ネットワークトランザクションを処理するための十分な帯域幅を欠くことを検出し、前記1つの中間ノードは、隣接するノードのうちの1つから前記十分な帯域幅を借りて前記ネットワークトランザクションを処理する
請求項17に記載のシステム。
【請求項19】
前記1つの中間ノードは、他のノードによって隣接するノードに伝達された、以前にリザーブされた帯域幅を取り戻すことによって、前記十分な帯域幅を借りる
請求項18に記載のシステム。
【請求項20】
アクセスされた場合に、ネットワークの1つのノードで1つの機械に、
1つのプロセッシングノードで、ネットワークトラフィック量が予め定められた閾値を予め定められた量だけ下回ることを検出することと、
ネットワークトラフィックについて利用できない前記予め定められた量をリザーブすることと、
前記予め定められた量を1つの隣接するノードに伝達することと
を実行することもたらす関連するデータ
を備える機械可読メディア。
【請求項21】
前記機械は、
ネットワークトランザクションが追加の帯域幅を要求すると検出された場合に、他のノードによって、前記予め定められた量の少なくとも一部を前記隣接するノードから要求することをさらに実行する
請求項20に記載のメディア。
【請求項22】
前記機械はさらに、
隣接するノードによって、前記隣接するノードに隣接する他のノードから、他のプロセッシングノードからの要求を満たす追加の帯域幅を、前記要求が以前にリザーブされた予め定められた量を超える場合に、借りることを実行する
請求項21に記載のメディア。
【請求項23】
前記機械はさらに、
ネットワークトランザクションの宛先ノードについて利用可能な全帯域幅を、前記プロセッシングノード、前記隣接するノード、1以上の中間ノード、及び前記宛先ノードで維持することを実行する
請求項20に記載のメディア。
【請求項24】
ネットワークトランザクションを処理する1つのネットワークノード
を備え、
前記ネットワークノードは、
ネットワークトラフィックをモニタし、当該ネットワークトラフィックを1つの隣接するノードに通信する1つのトラフィックモニタと、
前記トラフィックモニタとの通信に基づいて帯域幅の割り当てを調整する1つの帯域幅変更部と、
前記トラフィックモニタ及び前記帯域幅変更部との通信に基づいて、利用可能な帯域幅を割り当てる1つのシグナリングプロセッサと
を有し、
前記ノードは、そのトラフィックモニタ、帯域幅変更部、及びシグナリングプロセッサを使用して、予め定められた帯域幅の量に対する任意の要求の前に、予め定められた帯域幅の量が利用可能になった場合に、当該予め定められた帯域幅の量をリザーブして、当該リザーブを前記隣接するノードに伝達する
装置。
【請求項25】
前記ノードは、前記隣接するノードから、前記トラフィックモニタ、帯域幅変更部、及びシグナリングプロセッサを通じて、追加の帯域幅を要求するよう構成される
請求項24に記載の装置。
【請求項26】
前記ノードは、ネットワークの宛先ノードについての利用可能な全帯域幅を保持し、前記宛先ノードに基にした十分な帯域幅が存在する場合に、ネットワークトランザクションの1つの発信ノードにサービスを保証する
請求項24に記載の装置。
【請求項27】
前記ノードは、前記隣接するノード及び他の複数のノードへの複数のリンクを管理し、
前記複数のリンクは、1つのネットワークを論理的に表す1つのツリー内での前記ノードの位置を表す
請求項24に記載の装置。
【請求項28】
前記ノード及び前記複数のリンクは、前記ツリーの前記隣接するノード及び前記他の複数のノードに対する前記ノードについての指定又はつながりを定める
請求項27に記載の装置。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公表番号】特表2007−517415(P2007−517415A)
【公表日】平成19年6月28日(2007.6.28)
【国際特許分類】
【出願番号】特願2005−513052(P2005−513052)
【出願日】平成15年12月30日(2003.12.30)
【国際出願番号】PCT/CN2003/001141
【国際公開番号】WO2005/067203
【国際公開日】平成17年7月21日(2005.7.21)
【出願人】(591003943)インテル・コーポレーション (1,101)
【Fターム(参考)】