(57)【要約】【課題】データ・センタ・イーサネット（ＤＣＥ）ネットワークにおいて、輻輳を適応制御する。【解決手段】複数のパケットが、ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介して受信される。或る期間にわたって、絶対または相対パケット到着速度が計算される。絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とが比較される。絶対または相対パケット到着速度が第１の閾値より上に上がると、パケット送信速度が下げられる。絶対または相対パケット到着速度が第２の閾値を下回ると、パケット送信速度が上げられる。【選択図】図６
2010541351.tif 000002
【特許請求の範囲】
【請求項１】
データ・センタ・イーサネット・ネットワークにおける適応輻輳制御の方法であって、
前記ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介してパケットを受信するステップと、
或る期間にわたって絶対または相対パケット到着速度を計算するステップと、
前記絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が前記第１の閾値を上回れば、パケット送信速度を下げるステップと、
前記絶対または相対パケット到着速度が前記第２の閾値を下回れば、前記パケット送信速度を上げるステップと、
を含む方法。
【請求項２】
前記絶対到着速度は、
受信されたパケットそれぞれが有効パケット・シーケンス番号を有するかどうかを判断し、
前記受信されたパケットが有効パケット・シーケンス番号を有すれば、カウンタをインクリメントすること
によって計算され、
前記絶対パケット到着速度は、前記期間にわたる前記カウンタのインクリメントに基づき計算される、
請求項１に記載の方法。
【請求項３】
前記相対パケット到着速度は、
受信されたパケットが送信された時間を示す、前記パケットそれぞれのタイムスタンプを検出し、
前記パケットの受信時間および前記パケットが送信された前記時間から、オフセットを判断すること
によって計算され、
前記相対パケット到着速度は、前記期間にわたる複数パケットの受信におけるオフセットに基づき計算される、
請求項１に記載の方法。
【請求項４】
前記絶対または相対パケット到着速度は、一定期間または可変期間にわたって計算される、請求項１に記載の方法。
【請求項５】
前記絶対または相対パケット到着速度と、第３の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が、前記第３の閾値を上回るが前記第１の閾値を下回っていれば、前記パケット送信速度を、間をおいてから下げるステップ
をさらに含む、請求項１に記載の方法。
【請求項６】
前記絶対または相対パケット到着速度と、第４の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が、前記第４の閾値を下回るが前記第２の閾値を下回っていなければ、前記パケット送信速度を、間をおいてから上げるステップ
をさらに含む、請求項１に記載の方法。
【請求項７】
前記ステップは、仮想レーンごとのパケットに関して実行される、請求項１に記載の方法。
【請求項８】
前記少なくとも１つの仮想レーン上の前記計算されたパケット到着速度に応じて、他の仮想レーン上のパケット送信速度を動的に上げるか、または下げるステップをさらに含む、請求項１に記載の方法。
【請求項９】
データ・センタ・イーサネット・ネットワークにおける適応輻輳制御のシステムであって、
前記ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介してパケットを送信する送信機と、
前記送信機から前記送信されたパケットを受信する受信機と、
前記送信機と、前記受信機との間に入れられるスイッチであって、前記スイッチは、前記送信機から前記パケットを受信して、或る期間にわたって絶対または相対パケット到着速度を計算し、前記絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とを比較して、前記絶対または相対パケット到着速度が前記第１の閾値を上回れば、前記スイッチはパケット送信速度を下げ、前記絶対または相対パケット到着速度が前記第２の閾値を下回れば、前記スイッチは前記パケット送信速度を上げる、前記スイッチと、
を含むシステム。
【請求項１０】
前記スイッチはさらに、受信されたパケットそれぞれが有効パケット・シーケンス番号を有するかどうかを判断し、前記受信されたパケットが有効パケット・シーケンス番号を有すれば、前記スイッチはカウンタをインクリメントし、前記スイッチは、前記期間にわたる前記カウンタのインクリメントに基づいて、前記絶対パケット到着速度を計算する、請求項９に記載のシステム。
【請求項１１】
前記スイッチは、受信されたパケットが送信された時間を示す、前記パケットそれぞれのタイムスタンプを検出し、前記パケットの受信時間および前記パケットが送信された前記時間からオフセットを判断し、前記相対パケット到着速度を計算するステップは、前記期間にわたる複数パケットの受信におけるオフセットに基づく、請求項９に記載のシステム。
【請求項１２】
前記絶対または相対パケット到着速度は、一定期間または可変期間にわたって計算される、請求項９に記載のシステム。
【請求項１３】
前記スイッチはさらに、前記絶対または相対パケット到着速度と、第３の閾値とを比較し、前記絶対または相対パケット到着速度が、前記第３の閾値を上回るが前記第１の閾値を下回っていれば、前記スイッチは、前記パケット送信速度を、間をおいてから下げる、請求項９に記載のシステム。
【請求項１４】
前記スイッチはさらに、前記絶対または相対パケット到着速度と、第４の閾値とを比較し、前記絶対または相対パケット到着速度が、前記第４の閾値を下回るが前記第２の閾値を下回っていなければ、前記スイッチは、前記パケット送信速度を、間をおいてから上げる、請求項９に記載のシステム。
【請求項１５】
データ・センタ・イーサネット・ネットワークにおける適応輻輳制御用のコンピュータ・プログラム製品であって、コンピュータ可読プログラムを有するコンピュータ使用可能媒体を含む、コンピュータ・プログラム製品であり、前記コンピュータ可読プログラムは、コンピュータ上で実行されると、前記コンピュータに、
或る期間にわたって絶対または相対パケット到着速度を計算させ、
前記絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とを比較させ、
前記絶対または相対パケット到着速度が前記第１の閾値を上回れば、パケット送信速度を下げさせ、
前記絶対または相対パケット到着速度が前記第２の閾値を下回れば、前記パケット送信速度を上げさせる、コンピュータ・プログラム製品。
【請求項１６】
前記絶対到着速度は、
受信されたパケットそれぞれが有効パケット・シーケンス番号を有するかどうかを判断し、
前記受信されたパケットが有効パケット・シーケンス番号を有すれば、カウンタをインクリメントすること
によって計算され、
前記絶対パケット到着速度は、前記期間にわたる前記カウンタのインクリメントに基づき計算される、
請求項１５に記載のコンピュータ・プログラム製品。
【請求項１７】
前記相対パケット到着速度は、
受信されたパケットが送信された時間を示す、前記パケットそれぞれのタイムスタンプを検出し、
前記パケットの受信時間および前記パケットが送信された前記時間から、オフセットを判断すること
によって計算され、
前記相対パケット到着速度は、前記期間にわたる複数パケットの受信におけるオフセットに基づき計算される、
請求項１５に記載のコンピュータ・プログラム製品。
【請求項１８】
前記絶対または相対パケット到着速度は、一定期間または可変期間にわたって計算される、請求項１５に記載のコンピュータ・プログラム製品。
【請求項１９】
前記コンピュータ可読媒体は、さらに命令を含み、前記命令は、コンピュータ上で実行されると前記コンピュータに、
前記絶対または相対パケット到着速度と、第３の閾値とを比較させ、
前記絶対または相対パケット到着速度が、前記第３の閾値を上回るが前記第１の閾値を下回っていれば、前記パケット送信速度を、間おいてから下げさせる、
請求項１５に記載のコンピュータ・プログラム製品。
【請求項２０】
前記コンピュータ可読媒体は、さらに命令を含み、前記命令は、コンピュータ上で実行されると前記コンピュータに、
前記絶対または相対パケット到着速度と、第４の閾値とを比較させ、
前記絶対または相対パケット到着速度が、前記第４の閾値を下回るが前記第２の閾値を下回っていなければ、前記パケット送信速度を、間おいてから上げさせる、
請求項１５に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
商標
ＩＢＭ（ＩＢＭ社の登録商標）は、米国ニューヨーク州アーモンク（Ａｒｍｏｎｋ，Ｎｅｗ  Ｙｏｒｋ，Ｕ．Ｓ．Ａ．）のＩｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｍａｃｈｉｎｅｓ  Ｃｏｒｐｏｒａｔｉｏｎの登録商標である。本願明細書で用いられる他の名称は、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｍａｃｈｉｎｅｓ  Ｃｏｒｐｏｒａｔｉｏｎまたは他の企業の登録商標、商標もしくは製品名であることもある。
【０００２】
発明の分野
本発明は、全般的にトラフィック制御に関し、特に適応輻輳制御に関する。
【背景技術】
【０００３】
データ・センタ・イーサネット（ＤＣＥ：Ｄａｔａ  Ｃｅｎｔｅｒ  Ｅｔｈｅｒｎｅｔ）は、好ましい集合ファブリック（ｃｏｎｖｅｒｇｅｎｃｅ  ｆａｂｒｉｃ）またはあらゆるタイプのデータ・センタ・トラフィックとしてイーサネット（Ｒ）を位置づける目的で、既存ネットワークに対する変更を提案する、新たな業界標準である。最近の研究で、イーサネットが、図１に示されているようにデータ・センタにおいてＩ／Ｏを統合する集合ファブリックであることが分かっている。この統合によって、プラットフォーム・アーキテクチャが単純化され、プラットフォームの全体的な費用が削減されることが期待されている。統合に関する提案のさらなる詳細は、ｈｔｔｐ：／／ｗｗｗ．ｉｅｅｅ８０２．ｏｒｇ／１／ｆｉｌｅｓ／ｐｕｂｌｉｃ／ｄｏｃｓ２００５／ｎｅｗ−ｗａｄｅｋａｒ−ｖｉｒｔｕａｌ％２０−ｌｉｎｋｓ−０３０５．ｐｄｆにあると思われる、「Ｐｒｏｐｏｓａｌ  ｆｏｒ  Ｔｒａｆｆｉｃ  Ｄｉｆｆｅｒｅｎｔｉａｔｉｏｎ  ｉｎ  Ｅｔｈｅｒｎｅｔ  Ｎｅｔｗｏｒｋｓ」に記載されている。
【０００４】
ＤＣＥ（エンハンスド・イーサネットおよび低レイテンシ・イーサネットとも呼ばれる）に関しては、リンク層におけるクレジット・ベースのフロー制御の追加、輻輳検出およびデータ速度調節、ならびにサービス品質差別化を伴う複数仮想レーンの追加を含む、大きな変更が提案されている。こうした機能が、ＤＣＥレベルより上位に存在する伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ：Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に影響を及ぼさないということに注目しなくてはならない。さらに、ＤＣＥは、ＴＣＰ／ＩＰのオーバーヘッドを伴わずに動作するよう意図されているということにも注目すべきである。これは、オフロード処理もアクセラレータも必要としない、大幅に簡素化された低費用の手法を提供する。
【０００５】
ＤＣＥの実装には、サーバ、ストレージ制御ユニット、およびイーサネット・スイッチにおいて、恐らく１０ギガビットのデータ速度の能力がある新たなＤＣ互換のネットワーク・インターフェース・カードが必要となる。これから数年間にわたる、集合型（ｃｏｎｖｅｒｇｅｄ）ＤＣＥネットワークへの移行を促進するために、高性能サーバ用の低レイテンシ・イーサネット、および他の様々なプロトコルのＤＣＥファブリックへのカプセル化を含む、サーバ関連アーキテクチャの取り組みが行われている。この、データ・センタ・ネットワークの新たなアーキテクチャには、多数の技術的課題がある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＴＣＰ／ＩＰのもとで動作している従来のイーサネット・ネットワークは、特定の条件下でデータ・パケットを廃棄することを許可されている。こうしたネットワークは、「ベスト・エフォート」または損失のあるネットワークとして既知である。非同期転送モード（ＡＴＭ：Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）などの他のプロトコルを用いるネットワークも、この手法を用いる。このようなネットワークは、廃棄パケットを頼りに輻輳を検出する。ＴＣＰ／ＩＰを使用するネットワークでは、ＴＣＰ／ＩＰソフトウェアが、当該ネットワークに対して一種のエンド・ツー・エンド・フロー制御を提供する。しかし、パケット廃棄からの回復は、大きなレイテンシ・ペナルティを招き得る。さらに、廃棄されたパケットによって既に使用されたネットワーク・リソースもすべて無駄になる。企業データ・センタ環境が、パケットが破損していない限りはパケットを廃棄しない損失のないプロトコルを必要とするということは、十分に定着している。さらに、企業データ・センタ環境は、ファイバ・チャネル・プロトコル、ＩｎｆｉｎｉＢａｎｄなど、はるかに高速な回復メカニズムを必要とする。損失のないネットワークは、バッファ・オーバーフローを防止し、破損パケットを回復する応答時間の高速化もたらし、損失によって引き起こされるスループットの限界の問題がなく、全帯域幅で遅延なくバースト・トラフィック・フローがネットワークに入ることを可能にする。こうした機能が、ＤＣＥレベルより上位のＴＣＰ／ＩＰに影響を及ぼさないということに注目しなくてはならない。こうした懸案事項に対処するために、何らかの他の種類のフロー制御および輻輳解決が必要とされている。
【０００７】
クレジット・ベースのフロー制御を使用するネットワークは、輻輳「ホット・スポット」を生じやすい。この問題は図２〜５に示されている。この図面に示されている例は、スイッチ・ファブリックを３層のカスケード・スイッチング（スイッチ層１、スイッチ層２、およびスイッチ層３）ならびにその関連したトラフィック・フローと共に示す。説明を簡潔にするために３つのスイッチ層が示されているが、当然のことながら、スイッチ・ファブリックは、はるかに多くのスイッチ層を含んでもよい。
【０００８】
図２では、トラフィックは輻輳なしでスムーズに流れる。しかし、図３に示されているように、全入力トラフィックのうち、十分な断片が同じ出力ポートをターゲットにすると、その出力リンクが飽和して「ホット・スポット」２１０を生じ得る。これにより、リンクに供給しているスイッチ上のキューが満杯になる。このトラフィック・パターンが持続すると、スイッチ上の利用可能なバッファ領域が枯渇し得る。これによって今度は、前のスイッチング段階がそのバッファ領域を飽和させることになり、図４に示されているようにさらなるホット・スポット２２０および２３０を生じ得る。この輻輳が、最終的にネットワークの入力ノードまで逆流していき、ホット・スポット２４０〜２５６を生じることもある。これは、輻輳拡大または木状飽和（ｔｒｅｅ  ｓａｔｕｒａｔｉｏｎ）と呼ばれる。１つ以上の飽和木（ｓａｔｕｒａｔｉｏｎ  ｔｒｅｅ）が同時に発生し、ネットワークを非常に速く拡大することもある。完全にできた飽和木（ｓａｔｕｒａｔｅ  ｔｒｅｅ）では、すべてのパケットがネットワークを通過するときに飽和したスイッチを少なくとも１つ越えなければならない。結果として、そのネットワークは全体としてスループットの破局的な損失を被ることになり得る。
【０００９】
この問題には、いくつかの解決策が提案されている。提案されている解決策の１つは、スイッチにて見込まれるバッファ・オーバーフロー状態を検出し、メッセージを宛先へ向け下流へ、次にもとのソースへとブロードキャストして、データ速度の抑制をリクエストすることを含む。この手法は時間がかかり、さらに、バッファが飽和に近づいているときの検出を、スイッチにおけるプリセット閾値に頼る。トラフィックのバーストによって、急激にスイッチが閾値レベルを上回り、さらに再び即座におさまることもある。トラフィック量に基づいた単一の閾値は、こうした状況下において十分に速く補正を行うことができない。
【００１０】
その他多数の従来スキームは、輻輳地点の場所について何らかの事前知識を必要とする。こうしたスキームは、予測可能なトラフィック・パターンにのみ効果があり、トラフィック・パターンが予測不可能な混合トラフィックには向かない。
【００１１】
もう１つの一般的な回避策は、ホット・スポットの形成を回避するために、余分の帯域幅を配分すること、またはネットワークをオーバー・プロビジョンすることを含む。しかし、ネットワーク・ノードの数が増加する一方でオーバー・プロビジョンは十分に拡大せず、さらに、データ速度は１０ギガビット／秒に近づくため、高価な解決策である。さらに、ＤＣＥは、種々のデータ・トラフィック・パターン（音声、ストレージ、ストリーミング・ビデオ、およびその他の企業データ）を単一のネットワーク上へ混合することを目的としている。これによって、トラフィック・パターンの予測可能性が低下することから、ＤＣＥがホット・スポット輻輳に直面する可能性がさらに高くなる。
【課題を解決するための手段】
【００１２】
例示的実施形態によれば、データ・センタ・イーサネット（ＤＣＥ）ネットワークにおける適応輻輳制御のための方法、システムおよびコンピュータ・プログラム製品が提供される。複数パケットが、ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介して受信される。或る期間にわたって、絶対または相対パケット到着速度（ａｂｓｏｌｕｔｅ  ｏｒ  ｒｅｌａｔｉｖｅ  ｐａｃｋｅｔ  ａｒｒｉｖａｌ  ｒａｔｅ）が計算される。絶対または相対パケット到着速度が、少なくとも第１の閾値および第２の閾値と比較される。絶対または相対パケット到着速度が第１の閾値を上回ると、パケット送信速度が下げられる。絶対または相対パケット到着速度が第２の閾値を下回ると、パケット送信速度が上げられる。
【００１３】
以下、次の図面を参照しながら、単なる一例として好適な実施形態について記載する。
【図面の簡単な説明】
【００１４】
【図１】データ・センタ・イーサネット（ＤＣＥ）ネットワークにおけるトラフィックの、提案されている統合を示す。
【図２】従来のクレジット・ベースのフロー制御ネットワークにおいて生じる輻輳「ホット・スポット」を示す。
【図３】従来のクレジット・ベースのフロー制御ネットワークにおいて生じる輻輳「ホット・スポット」を示す。
【図４】従来のクレジット・ベースのフロー制御ネットワークにおいて生じる輻輳「ホット・スポット」を示す。
【図５】従来のクレジット・ベースのフロー制御ネットワークにおいて生じる輻輳「ホット・スポット」を示す。
【図６】例示的実施形態による適応輻輳制御の方法を示す。
【図７】パケットの送信と、パケットの受信との間のオフセットの変化を示す。
【図８】別の実施形態による適応輻輳制御の方法を示す。
【図９】例示的実施形態による適応輻輳制御の例示的システムを示す。
【図１０】例示的実施形態によるコンピュータ・プログラム製品を使用した適応輻輳制御を実装する例示的システムを示す。
【発明を実施するための形態】
【００１５】
例示的実施形態によれば、大型のデータ・センタ・イーサネット（ＤＣＥ）ネットワーク内のリンク層における信頼性が改善される。一実施形態では、スイッチ・バッファ内に蓄積したパケットの総数が単純に集計されるのではなく、パケット到着速度が動的に計算されて閾値と比較される。これによって、見込まれる輻輳状態をより迅速に検出し、適宜対応できるようにする。この手法はさらに、輻輳が徐々に形成される場合に、パケット送信速度の抑制が必要になるまで待機することもできる。この手法はさらに、輻輳がなくなった後、より迅速に回復を実行できるようにし、リンクはその完全稼働率まで再び上げられる。
【００１６】
例示的実施形態によれば、廃棄パケットを防止するために、各パケットには、パケット・シーケンス番号（ＰＳＮ：ｐａｃｋｅｔ  ｓｅｑｕｅｎｃｅ  ｎｕｍｂｅｒ）が割り当てられる。一実施形態では、ＰＳＮは、オプションの３ビット・セッション識別子と共に、パケット・ヘッダに予約されている２４ビットを含むとよい。この番号を割り当てて、リンクが再確立されると有効ＰＳＮのシーケンスを再初期化するスキームは、例えば、参照によって本願明細書に引用したものとする、本発明の譲受人に譲渡された米国特許出願第１１／４２６４２１号に記載されている。
【００１７】
図６は、例示的実施形態による、ＤＣＥネットワークにおける適応輻輳制御の方法を示す。ステップ３１０で、パケットが、仮想レーンを介してスイッチにて受信される。ステップ３２０で、パケットが有効ＰＳＮを有するかどうかが判断される。この判断は、例えばスイッチ（図９に示されているスイッチ５１０ａなど）において下されるとよい。パケットが有効ＰＳＮを有しなければ、ステップ３２５でエラーが生成され、プロセスはステップ３１０へ戻る。パケットが有効ＰＳＮを有すれば、ステップ３３０で、カウンタ・タイマが実行されているかどうかが判断される。実行されていなければ、ステップ３４０で、カウンタ・タイマが始動され、１インクリメントされる。カウンタ・タイマが実行されていれば、ステップ３４５で１インクリメントされる。カウンタ・タイマは、有効ＰＳＮを有する連続するパケットそれぞれが到着したときにインクリメントされる。ステップ３５０で、絶対パケット到着速度が計算される。パケット到着速度のみが測定されるため、この時点では一連のＰＳＮを検査する必要はない。絶対パケット到着速度は、一定の時間間隔または可変長の時間窓にわたって計算されるとよい。ステップ３６０〜３６８で、絶対パケット到着速度が様々な閾値と比較される。この比較はスイッチにおいて実行されるとよい。ステップ３６２で絶対パケット到着速度が閾値レベルを上回り、パケット到着速度が急速に上がっていることを示すと判断されると、メッセージが、例えばスイッチからソース・ノード（例えば図９に示されているソース・ノード５２０）へ送られ、ステップ３７２でパケット送信速度が減速される。ステップ３６４で、絶対パケット到着速度が低い方の閾値を上回り、パケット到着速度が徐々に上がっていることを示すと判断されると、ステップ３７４で、所定時間待機した後に入力が減速されるとよい。このプロセスは反対も可能であり、それによって、ステップ３６６で絶対パケット到着速度が所定の閾値を下回り、パケット到着速度が徐々に下がっていることを示すと判断されると、ステップ３７６で、コマンドがソース・ノードへ送信され、所定時間後にパケット送信速度を上げることができる。ステップ３６８で、絶対パケット到着速度が低い方の閾値を下回り、パケット到着速度が急速に下がっていることを示すと判断されると、ステップ３７８で、ソース・ノードがパケット送信速度を急速に上げさせられるとよい。
【００１８】
別の実施形態によれば、閾値との比較に用いる相対パケット到着速度を判断するために、カウンタの代わりにＤＣＥパケット・ヘッダのタイム・スタンピングが使用されてもよい。図７は、様々なパケットについて、パケットが送信された時間から、それが受信されるまでのオフセットに、どのように経時的変化（差分）があり得るかを示す。パケット送信時間とパケット受信時間との間のオフセットが或る期間にわたって測定され、相対パケット送信速度を示すものとして使用されるとよい。オフセットは、送信時（例えばスイッチから）にパケット・ヘッダに付加されパケットの送信時間を示すタイムスタンプを検出し、パケットの受信時間（例えば別のスイッチでの）を判断することによって測定されるとよい。オフセットは、送信時間と、受信時間との間の時間の差である。レイテンシを考慮するために、タイムスタンプは、パケットがノード、例えばスイッチを出るときにパケットのヘッダに付加されるとよい。オフセットの変化は、パケット到着速度が、或る期間にわたって上がっているか、または下がっているかを示すとよい。相対パケット到着速度は、パケット送信時間と、パケット到着時間との間のオフセットに基づき計算されるとよく、計算された相対パケット到着速度と、図８を参照して以下で説明する様々な閾値とを比較することによって、パケット到着速度を上げる、または下げる措置がとられるとよい。これによって、ネットワーク内の中央マネージャが、輻輳地点を、または単にソース・パケット注入速度が遅いのかどうかを、判断することができるようになる。送信時間と到着時間との間のオフセットのみが相対パケット到着速度の計算に使用されるため、この実施形態は、ネットワーク内のどこにおいても（ソース、宛先および中間ノードおよびスイッチを含め）受信および送信クロックの同期化を必要としない。したがって、パケットの送信とパケットの受信との間の時間のオフセットが負の値ということもあり得る。
【００１９】
図８は、例示的実施形態による、ＤＣＥネットワークにおけるタイムスタンプの手法を使用した適応輻輳制御の方法を示す。ステップ４１０で、パケットが仮想レーンを介しスイッチにて受信される。ステップ４２０で、上記のように、パケットが送信された時間およびパケットの受信時間からオフセットが判断される。ステップ４４０で、或る期間にわたるいくつかのパケットの送信時間と到着時間との間のオフセットに基づいて、相対パケット到着速度が計算される。相対パケット到着速度は、一定の時間間隔または可変長の時間窓にわたって計算されればよい。ステップ４５０〜４６８で、図６に示されているプロセスと同様に、相対パケット到着速度が様々な閾値と比較される。この比較はスイッチにおいて実行されるとよい。ステップ４６２で相対パケット到着速度が閾値レベルを上回り、パケット到着速度が急速に上がっていることを示すと判断されると、メッセージが、ソース・ノード（例えば図９に示されているソース・ノード５２０）へ送られ、ステップ４７２でパケット送信速度が減速される。ステップ４６４で、相対パケット到着速度が低い方の閾値を上回り、相対パケット到着速度が徐々に上がっていることを示すと判断されると、ステップ４７４で、所定時間待機した後に入力が減速されるとよい。このプロセスは反対も可能であり、それによって、ステップ４６６で相対パケット到着速度が所定の閾値を下回り、パケット到着速度が徐々に下がっていることを示すと判断されると、ステップ４７６で、コマンドがソース・ノードへ送信され、所定時間後にパケット送信速度を上げることができる。ステップ４６８で、相対パケット到着速度が低い方の閾値を下回り、相対パケット到着速度が急速に下がっていることを示すと判断されると、ステップ４７８で、ソース・ノードがパケット送信速度を急速に上げさせられるとよい。
【００２０】
例示的実施形態によれば、図６および図８に図示されているプロセスは、スイッチにおいて、制御論理によって、または、コンピュータ・プログラム製品に含まれＣＤ−ＲＯＭディスクもしくはフレキシブル・ディスクなどのコンピュータ可読媒体上に符号化された命令を実行するコンピュータ・プロセッサによって、あるいはその両方によって実装されてもよい。
【００２１】
上述の手法は、各スイッチにて、ネットワーク内のすべてのノードに対し実装されるとよい。そうすることで、輻輳をもたらし得るトラフィックのバーストにも、より迅速に対処することができる。さらに、輻輳がなくなったときの回復をより迅速に実行することができる。
【００２２】
図９は、例示的実施形態による適応輻輳制御の例示的システムを示す。図９に示されているように、ソース・ノード５２０と、宛先ノード５３０との間で、スイッチ５１０ａおよび５１０ｂ、ならびにリンク５４０のＤＣＥファブリック経由でパケットが送信される。説明を簡潔にするために、図９には２つのスイッチが示されているが、当然のことながら、はるかに多くのスイッチがあってもよい。上記のように、スイッチ５１０ａおよび５１０ｂにおいてパケット到着速度が測定／計算され、複数の閾値と比較されればよい。その結果として、スイッチは、必要に応じてソース・ノード（または、トラフィックが宛先ノードから送られていれば宛先ノード）にパケット送信速度を上下させるとよい。
【００２３】
上記のように、異なる速度のトラフィックの増減に対して、別々の閾値レベルが設定されるとよい。例えば、トラフィック送信速度が徐々に上がっている場合には、ソースによる入力データ速度の減速をリクエストする前に、間がおかれるとよい。同じく、トラフィック送信速度が徐々に下がっている場合には、ソースに入力データ速度の加速をリクエストする前に、間がおかれるとよい。このように、最大量のデータができるだけ長くパイプラインに保たれ、利用可能なネットワーク帯域幅がより効率的に使用される。パケット到着速度および閾値に応じて、最大許容受信バッファ配分が調整されるとよい。さらに、例示的実施形態によれば、単にパケットの総数を測定するのに比べて、輻輳状態からのより迅速な回復が実現され得る。これにより、輻輳木（ｃｏｎｇｅｓｔｉｏｎ  ｔｒｅｅ）の形成の事前防止が可能になり、ネットワーク・スループットおよび効率性が最適化される。
【００２４】
さらに、この手法は、共通高速接続でいくつかの仮想トラフィック・フローを送信する、レーン制システム上で実装されるとよい。こうすることで、１つの仮想レーン上のトラフィックのバーストが、同じ物理接続を共有する他のトラフィック・ストリームに対し輻輳をもたらすことがなくなる。このロード・バランシングは、混合トラフィック・タイプに特に有益である。さらに、受信バッファ・サイズの配分は、パケット到着速度の増減に基づいて調整されるとよい。輻輳のレベルに応じて異なる仮想レーン間にトラフィックを動的に配分するよう、フィードバック・ループを実装することさえも可能である。
【００２５】
上述の通り、図６および図８に図示されているプロセスは、スイッチにおいて、制御論理によって、または、コンピュータ・プログラム製品に含まれＣＤ−ＲＯＭディスクもしくはフレキシブル・ディスクなどのコンピュータ可読媒体上に符号化された命令を実行するコンピュータ・プロセッサによって、あるいはその両方によって実装されるとよい。コンピュータ・プログラム製品上のプロセスを実装する例示的システムが、図１０に示されている。
【００２６】
図１０は、例示的実施形態による、コンピュータ・プログラム製品を使用した適応輻輳制御を実装する例示的システムを示す。システムは、入出力インターフェース６３０経由で信号保持媒体６４０と交信しているコンピュータ６００を含む。信号保持媒体６４０は、上述の適応輻輳制御技術を実行する命令を含むとよく、これは、例えば、書き込み不可能なストレージ媒体（例えば、ＣＤ−ＲＯＭドライブにより読み取り可能なＣＤ−ＲＯＭディスクなど、コンピュータ内の読み取り専用メモリ・デバイス）上に恒久的に格納された情報、書き込み可能なストレージ媒体（例えば、ディスケット・ドライブ内のフレキシブル・ディスクまたはハード・ディスク・ドライブ）上に格納された変更可能な情報、インターネットなど無線およびブロードバンド通信ネットワークなどを含むコンピュータまたは電話ネットワークを介してなど、通信媒体によりコンピュータに伝達される情報などとして実装される。
【００２７】
コンピュータは、プロセッサ６１０を含み、プロセッサ６１０は、例えば信号保持媒体６４０上に含まれ入出力インターフェース６３０経由でコンピュータに伝達される、適応輻輳制御技術を実行する命令を実行する。適応輻輳制御を実行する命令は、メモリ６２０に格納されても、または信号保持媒体６４０上に保持されてもよい。
【００２８】
本発明について例示的実施形態を参照して記載してきたが、当業者であれば当然のことながら、本発明の範囲から逸脱することなく様々な変更が加えられ、その構成部品の代わりに等価物が用いられてもよい。さらに、本発明の本質的な範囲から逸脱することなく、本発明の教示に特定の状況または構成要素を適合させるよう多数の調節が行われてもよい。したがって、本発明は、本発明の実施に関して考えられる最良の形態として開示された特定の実施形態に限定されず、本発明は、添付の特許請求の範囲に記載の範囲内に入るすべての実施形態を含むものとする。
【図１】
2010541351.tif 000003
【図２】
2010541351.tif 000004
【図３】
2010541351.tif 000005
【図４】
2010541351.tif 000006
【図５】
2010541351.tif 000007
【図６】
2010541351.tif 000008
【図７】
2010541351.tif 000009
【図８】
2010541351.tif 000010
【図９】
2010541351.tif 000011
【図１０】
2010541351.tif 000012
【手続補正書】
【提出日】平成22年6月24日(2010.6.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ・センタ・イーサネット・ネットワーク（ＤＣＥネットワーク）における適応輻輳制御の方法であって、
前記ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介してパケットを受信するステップと、
或る期間にわたって絶対または相対パケット到着速度を計算するステップと、
前記絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が前記第１の閾値を上回れば、パケット送信速度を下げるステップと、
前記絶対または相対パケット到着速度が前記第２の閾値を下回れば、前記パケット送信速度を上げるステップと、
を含む方法であって、
前記絶対到着速度は、
受信されたパケットそれぞれが有効パケット・シーケンス番号を有するかどうかを判断し、
前記受信されたパケットが有効パケット・シーケンス番号を有すれば、カウンタをインクリメントすること
によって計算され、
前記絶対パケット到着速度は、前記期間にわたる前記カウンタのインクリメントに基づき計算される、方法。
【請求項２】
前記相対パケット到着速度は、
受信されたパケットが送信された時間を示す、前記パケットそれぞれのタイムスタンプを検出し、
前記パケットの受信時間および前記パケットが送信された前記時間から、オフセットを判断すること
によって計算され、
前記相対パケット到着速度は、前記期間にわたる複数パケットの受信におけるオフセットに基づき計算される、
請求項１に記載の方法。
【請求項３】
前記絶対または相対パケット到着速度は、一定期間または可変期間にわたって計算される、請求項１に記載の方法。
【請求項４】
前記絶対または相対パケット到着速度と、第３の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が、前記第３の閾値を上回るが前記第１の閾値を下回っていれば、前記パケット送信速度を、間をおいてから下げるステップ
をさらに含む、請求項１に記載の方法。
【請求項５】
前記絶対または相対パケット到着速度と、第４の閾値とを比較するステップと、
前記絶対または相対パケット到着速度が、前記第４の閾値を下回るが前記第２の閾値を下回っていなければ、前記パケット送信速度を、間をおいてから上げるステップ
をさらに含む、請求項１に記載の方法。
【請求項６】
前記ステップは、仮想レーンごとのパケットに関して実行される、請求項１に記載の方法。
【請求項７】
前記少なくとも１つの仮想レーン上の前記計算されたパケット到着速度に応じて、他の仮想レーン上のパケット送信速度を動的に上げるか、または下げるステップをさらに含む、請求項１に記載の方法。
【請求項８】
データ・センタ・イーサネット・ネットワークにおける適応輻輳制御のシステムであって、
前記ＤＣＥネットワーク内の少なくとも１つの仮想レーンを介してパケットを送信する送信機と、
前記送信機から前記送信されたパケットを受信する受信機と、
前記送信機と、前記受信機との間に入れられるスイッチであって、前記スイッチは、前記送信機から前記パケットを受信して、或る期間にわたって絶対または相対パケット到着速度を計算し、前記絶対または相対パケット到着速度と、少なくとも第１の閾値および第２の閾値とを比較して、前記絶対または相対パケット到着速度が前記第１の閾値を上回れば、前記スイッチはパケット送信速度を下げ、前記絶対または相対パケット到着速度が前記第２の閾値を下回れば、前記スイッチは前記パケット送信速度を上げる、前記スイッチと、
を含むシステムであって、
前記スイッチはさらに、受信されたパケットそれぞれが有効パケット・シーケンス番号を有するかどうかを判断し、前記受信されたパケットが有効パケット・シーケンス番号を有すれば、前記スイッチはカウンタをインクリメントし、前記スイッチは、前記期間にわたる前記カウンタのインクリメントに基づいて、前記絶対パケット到着速度を計算する、システム。
【請求項９】
前記スイッチは、受信されたパケットが送信された時間を示す、前記パケットそれぞれのタイムスタンプを検出し、前記パケットの受信時間および前記パケットが送信された前記時間からオフセットを判断し、前記相対パケット到着速度を計算するステップは、前記期間にわたる複数パケットの受信におけるオフセットに基づく、請求項８に記載のシステム。
【請求項１０】
前記絶対または相対パケット到着速度は、一定期間または可変期間にわたって計算される、請求項８に記載のシステム。
【請求項１１】
前記スイッチはさらに、前記絶対または相対パケット到着速度と、第３の閾値とを比較し、前記絶対または相対パケット到着速度が、前記第３の閾値を上回るが前記第１の閾値を下回っていれば、前記スイッチは、前記パケット送信速度を、間をおいてから下げる、請求項８に記載のシステム。
【請求項１２】
前記スイッチはさらに、前記絶対または相対パケット到着速度と、第４の閾値とを比較し、前記絶対または相対パケット到着速度が、前記第４の閾値を下回るが前記第２の閾値を下回っていなければ、前記スイッチは、前記パケット送信速度を、間をおいてから上げる、請求項８に記載のシステム。
【請求項１３】
データ・センタ・イーサネット・ネットワークにおける適応輻輳制御のためのコンピュータ・プログラムであって、前記コンピュータ・プログラムが、前記コンピュータに、請求項１〜７のいずれかに記載の方法の各ステップを実行させる、コンピュータ・プログラム。
【国際調査報告】
2010541351.tif 000013
2010541351.tif 000014