JP2015503274A - 仮想レーンの動的割り当てを用いてファットツリートポロジにおける輻輳を緩和するためのシステムおよび方法 - Google Patents
仮想レーンの動的割り当てを用いてファットツリートポロジにおける輻輳を緩和するためのシステムおよび方法 Download PDFInfo
- Publication number
- JP2015503274A JP2015503274A JP2014542415A JP2014542415A JP2015503274A JP 2015503274 A JP2015503274 A JP 2015503274A JP 2014542415 A JP2014542415 A JP 2014542415A JP 2014542415 A JP2014542415 A JP 2014542415A JP 2015503274 A JP2015503274 A JP 2015503274A
- Authority
- JP
- Japan
- Prior art keywords
- performance
- subnet
- node
- hot spot
- machine environment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/125—Shortest path evaluation based on throughput or bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
Abstract
システムおよび方法は、ファットツリートポロジにおける複数のスイッチを用いてミドルウェアマシン環境におけるトラフィック輻輳を防止し得る。サブネットマネージャは、ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見してサブネットを完全に接続された状態に維持し得る。パフォーマンスマネージャは、サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出し得る。そして、ホストは、ネットワークパフォーマンスを向上させるために1つ以上の仮想レーンを動的に再構成し得る。
Description
著作権に関する注意
本特許文献の開示の一部には、著作権保護の対象となるものが含まれている。著作権者は、この特許文献または特許開示の何者かによる複製が、特許商標庁の特許ファイルまたは記録にある限り、それに対して異議を唱えないが、そうでなければ、いかなる場合もすべての著作権を留保する。
本特許文献の開示の一部には、著作権保護の対象となるものが含まれている。著作権者は、この特許文献または特許開示の何者かによる複製が、特許商標庁の特許ファイルまたは記録にある限り、それに対して異議を唱えないが、そうでなければ、いかなる場合もすべての著作権を留保する。
発明の分野
本発明は概してコンピュータシステムに関し、特にミドルウェアマシン環境におけるヘッドオブラインブロッキングおよびトラフィック輻輳の防止に関する。
本発明は概してコンピュータシステムに関し、特にミドルウェアマシン環境におけるヘッドオブラインブロッキングおよびトラフィック輻輳の防止に関する。
背景
相互接続ネットワークは、次世代のスーパーコンピュータ、クラスタ、およびデータセンタに有益な役割を果たす。インフィニバンド(InfiniBand:IB)技術などの高性能ネットワーク技術が、高帯域幅および低レイテンシが重要要件である高性能コンピューティングドメインにおけるプロプライエタリまたは低性能ソリューションに取って代わりつつある。たとえば、IBインストレーションは、ロスアラモス国立研究所のRoadrunner、テキサス先端計算センターのRanger、およびユーリヒ総合研究機構のJuRoPaなどのスーパーコンピュータに使用されている。
相互接続ネットワークは、次世代のスーパーコンピュータ、クラスタ、およびデータセンタに有益な役割を果たす。インフィニバンド(InfiniBand:IB)技術などの高性能ネットワーク技術が、高帯域幅および低レイテンシが重要要件である高性能コンピューティングドメインにおけるプロプライエタリまたは低性能ソリューションに取って代わりつつある。たとえば、IBインストレーションは、ロスアラモス国立研究所のRoadrunner、テキサス先端計算センターのRanger、およびユーリヒ総合研究機構のJuRoPaなどのスーパーコンピュータに使用されている。
IBは、Future I/OおよびNext Generation I/Oと称される2つの旧来技術の組合わせとして2000年10月に初めて規格化された。IBは低レイテンシ、高帯域幅で、ホスト側処理資源を効率的に利用できるため、大型のスケーラブルなコンピュータクラスタを構築するソリューションとして高性能コンピューティング(HPC)コミュニティ内で受け入れられつつある。IBの事実上のシステムソフトウェアは、熱心な専門家達によって開発されOpenFabrics Allianceによって維持されている、OpenFabrics Enterprise Distribution(OFED)である。OFEDはオープンソースであり、GNU/Linux(登録商標)およびMicrosoft Windows(登録商標)の両方に使用可能である。
概要
ファットツリートポロジにおける複数のスイッチを用いてミドルウェアマシン環境におけるヘッドオブラインブロッキングおよびトラフィック輻輳を防止し得るシステムおよび方法がここに記載される。サブネットマネージャは、ミドルウェアマシン環境におけるサブネットをスイープ(sweep)し、変更を発見してサブネットを完全に接続された状態に維持し得る。パフォーマンスマネージャは、サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出し得る。そして、ホストは、ネットワークパフォーマンスを向上させるために1つ以上の仮想レーンを動的に再構成し得る。
ファットツリートポロジにおける複数のスイッチを用いてミドルウェアマシン環境におけるヘッドオブラインブロッキングおよびトラフィック輻輳を防止し得るシステムおよび方法がここに記載される。サブネットマネージャは、ミドルウェアマシン環境におけるサブネットをスイープ(sweep)し、変更を発見してサブネットを完全に接続された状態に維持し得る。パフォーマンスマネージャは、サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出し得る。そして、ホストは、ネットワークパフォーマンスを向上させるために1つ以上の仮想レーンを動的に再構成し得る。
詳細な説明
ネットワークトラフィックパターンのアルゴリズム予測可能性は、仮想化および多重コアシステムの導入に伴って低下する。複数の仮想化クライアントが同一の物理ハードウェア上に存在する場合、ネットワークトラフィックは複数のトラフィックパターンのオーバーレイになり、ネットワーク内にホットスポットを引き起こし得る。ホットスポットは、複数のフローが単一のエンドポイントに向けられる場合に発生する。ホットスポットの一般的な原因には、仮想化による複雑なトラフィックパターン、仮想マシン画像のマイグレーション、耐障害性のためのチェックポイントおよび復元メカニズム、ならびにストレージおよびI/Oトラフィックがある。
ネットワークトラフィックパターンのアルゴリズム予測可能性は、仮想化および多重コアシステムの導入に伴って低下する。複数の仮想化クライアントが同一の物理ハードウェア上に存在する場合、ネットワークトラフィックは複数のトラフィックパターンのオーバーレイになり、ネットワーク内にホットスポットを引き起こし得る。ホットスポットは、複数のフローが単一のエンドポイントに向けられる場合に発生する。ホットスポットの一般的な原因には、仮想化による複雑なトラフィックパターン、仮想マシン画像のマイグレーション、耐障害性のためのチェックポイントおよび復元メカニズム、ならびにストレージおよびI/Oトラフィックがある。
ネットワーク内にホットスポットが存在する場合、ホットスポットに指定されるフローは、ホットスポットに指定されない犠牲フロー(victim flow)と称される他のフローのパフォーマンスを低下させ得る。これは、輻輳したホットスポットによって生じるヘッドオブライン(HOL)ブロッキング現象に起因する。
この問題を回避するための1つの方法は、ハードウェアで評価される輻輳制御(CC)メカニズムなどのCCメカニズムを使用することである。しかし、ハードウェアで評価される輻輳制御メカニズムは、たとえば大型クラスタ内に共存する新旧設備の混合のため、常に使用可能であるとは限らない。さらに、適切なCCパラメータの選択はトポロジに大きく依存しており、誤ったパラメータはパフォーマンス低下につながり得る。また、輻輳制御メカニズムが送信側の注入レートを動的に調整しているという事実によって、フロー同士の間に多少の発振が発生し得る。
本発明の実施形態に従い、システムおよび方法は、ファットツリートポロジを使用する複数のスイッチを用いてミドルウェアマシン環境などの相互接続ネットワークにおけるヘッドオブラインブロッキングおよびトラフィック輻輳を防止し得る。サブネットマネージャは、ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見してサブネットを完全に接続された状態に維持し得る。パフォーマンスマネージャは、サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出し得る。そして、ホストは、ネットワークパフォーマンスを向上させるために1つ以上の仮想レーンを動的に再構成し得る。
インフィニバンド(IB)アーキテクチャ
本発明の実施形態に従い、直列ポイント・ツー・ポイント技術であるインフィニバンド(IB)アーキテクチャにおいてトラフィック輻輳が防止され得る。IBネットワークの各々、つまりサブネットは、スイッチおよびポイント・ツー・ポイントリンクを用いて相互接続される一組のホストを含み得る。単一のサブネットは1万本よりも多いノードにスケーラブルであり、2つ以上のサブネットがIBルータを用いて相互接続され得る。サブネット内のホストおよびスイッチはローカル識別子(LID)を用いてアドレス指定され、たとえば単一のサブネットは48151個のユニキャストアドレスに制限される。
本発明の実施形態に従い、直列ポイント・ツー・ポイント技術であるインフィニバンド(IB)アーキテクチャにおいてトラフィック輻輳が防止され得る。IBネットワークの各々、つまりサブネットは、スイッチおよびポイント・ツー・ポイントリンクを用いて相互接続される一組のホストを含み得る。単一のサブネットは1万本よりも多いノードにスケーラブルであり、2つ以上のサブネットがIBルータを用いて相互接続され得る。サブネット内のホストおよびスイッチはローカル識別子(LID)を用いてアドレス指定され、たとえば単一のサブネットは48151個のユニキャストアドレスに制限される。
IBサブネットは、サブネット内のスイッチ、ルータおよびホストチャネルアダプタ(HCA)上に存在するすべてのIBポートの構成を含むサブネットを初期化および開始する役割を果たす、少なくとも1つのサブネットマネージャ(SM)を使用し得る。SMの役割には、ルーティングテーブル計算および展開も含まれる。ネットワークのルーティングは、完全接続性、無デッドロック性、およびすべてのソースと宛先との対同士の間のロードバランシングを得ることを目的としている。ルーティングテーブルはネットワーク初期化時間に計算され得、この処理は、ルーティングテーブルを更新して最適なパフォーマンスを保証するためにトポロジが変更されるたびに繰返され得る。
初期化時、SMは、SMがすべてのスイッチおよびホストを発見するためにネットワークのスイープを行う発見フェーズで開始する。発見フェーズの間、SMは存在する他のSMも発見して、誰がマスタSMになるべきかを交渉し得る。発見フェーズが完了すると、SMはマスタフェーズに入り得る。マスタフェーズでは、SMはLID割り当て、スイッチ構成、ルーティングテーブル計算および展開、ならびにポート構成を進める。この時点で、サブネットは立上がって使用できる状態にある。
サブネットが構成された後、SMはネットワークに変更がないか(たとえばリンクがダウンする、装置が追加される、またはリンクが除去される)監視し得る。監視処理時に変更が検出されると、メッセージ(たとえばトラップ)がSMに転送され得、SMはネットワークを再構成し得る。再構成処理の一部、つまり大量スイープ処理(heavy sweep process)は、完全接続性、無デッドロック性、およびすべてのソースと宛先との対同士の間の適切なロードバランシングを保証するために実行され得るネットワークの再ルーティングである。
IBネットワーク内のHCAは、キューペア(QP)を用いて互いに通信可能である。QPは通信セットアップの間に作成され、QP番号、HCAポート、宛先LID、キューサイズ、およびトランスポートサービスなどの一組の初期属性が供給される。他方、通信中のHCAに関連付けられるQPは通信が終わると抹消される。HCAは多くのQPを処理可能であり、各QPは一対のキュー、つまり送信キュー(SQ)および受信キュー(RQ)からなる。通信に参加している各エンドノードに、1つのそのような対が存在する。受信キューはリモートノードに送られる作業要求を保持し、受信キューはリモートノードから受信したデータをどう扱うかについての情報を保持する。QPに加えて、各HCAは、一組の送信および受信キューに関連付けられる1つ以上の完了キュー(CQ)を有し得る。CQは、送信および受信キューにポストされる作業要求についての完了通知を保持する。
サブネット管理者(SA)は、サブネットに関する異なる情報を格納するためのマスタSMに関連付けられるサブネットデータベースである。SAとの通信は、エンドノードが、たとえばQP1などの指定QPを介して汎用サービスの管理データグラム(MAD)を送信することによってQPを確立することを助け得る。送信側および受信側の両方とも、QPを確立するためにソース/宛先LID、サービスレベル(SL)、MTUなどの情報を必要とする。この情報は、SAによって提供される経路記録として公知のデータ構造から取り出され得る。経路記録を得るために、エンドノードは、たとえばSubnAdmGet/SubnAdmGetable動作を用いてSAに対して経路記録問合わせを行い得る。そして、SAは、要求された経路記録をエンドノードに戻し得る。
SMは、すべてのスイッチおよび/またはすべてのHCA内に提示されるサブネット管理エージェント(SMA)を用いて、ネットワークに変更がないかどうか監視する役割も果たす。SMAはトラップおよび通知を用いて、新たな接続、切断、およびポート状態変更などの変更をSMに通信する。
トラップは、あるイベントをエンドノードに警告するために送信されるメッセージである。トラップは、イベントを記述する詳細とともに通知属性を含み得る。異なるイベントには異なるトラップが定義され得る。トラップの不要な分配を減らすために、IBは、エンドノードが知らせてほしいトラップをエンドノードが明示的にサブスクライブすることが要求されるイベント転送メカニズムを適用する。
パフォーマンス管理のための最適化フィードバックサイクル
図1は、本発明の実施形態に従うミドルウェア環境における最適化フィードバックサイクルを示す図である。図1に示されるように、ミドルウェア環境における最適化フィードバックサイクルは、エグゼキュータ(たとえばサブネットマネージャ101)と、モニタ(たとえばパフォーマンスマネージャ102)と、オプティマイザ(たとえばスイッチ104)とを含む。
図1は、本発明の実施形態に従うミドルウェア環境における最適化フィードバックサイクルを示す図である。図1に示されるように、ミドルウェア環境における最適化フィードバックサイクルは、エグゼキュータ(たとえばサブネットマネージャ101)と、モニタ(たとえばパフォーマンスマネージャ102)と、オプティマイザ(たとえばスイッチ104)とを含む。
サブネットマネージャ101は、サブネットを定期的にスイープし、変更を発見して完全に接続されたサブネットを維持し得る。さらに、パフォーマンスマネージャ102は、ネットワークパフォーマンスを分析するためにサブネット内のすべてのコンポーネントから情報を定期的に収集し得、ホスト側スタック103は、ネットワーク構成のためにアドレス指定状態情報を動的に再構成し得る。
また、スイッチ104またはチャネルアダプタ105などのサブネット内の各装置は、パフォーマンス管理エージェント(PMA)106または107を実施し得る。各PMAは、一組のパフォーマンス監視およびエラー監視レジスタに関連付けられ得る。パフォーマンスマネージャ102は、たとえばパフォーマンス管理データグラム(MAD)を用いて、これらのレジスタからパフォーマンスおよびエラー関連の情報を取り出し得る。
パフォーマンス管理は、IBコンポーネントからパフォーマンス統計およびエラー情報を取り出すためにIBによって提供される汎用管理サービスの1つである。各IB装置は、PMAと、最少の一組のパフォーマンス監視およびエラー監視レジスタとを実施し得る。さらに、IBの仕様は、さらなるパフォーマンスおよびエラーカウンタの監視を許可する一組の随意の属性も定義する。
パフォーマンスマネージャ(PM)は、パフォーマンスMADを所与の装置のPMAに発行することによって、これらのレジスタからパフォーマンスおよびエラー関連の情報を取り出し得る。PMは次に取り出しを実行し、結果をPMAに戻す。PMはこの情報を用いて初期不良を検出し得、PMはこの情報に基づいて、推奨されるまたは必要とされる経路変更およびパフォーマンス最適化についてSMに忠告し得る。
パフォーマンス管理は、ボトルネックの発見および除去を含むパフォーマンスチューニングに関する。図1に示されるような最適化フィードバックサイクルは、仮想レーンの動的割り当てを用いて、SM、PM、およびホスト側動的再構成能力を有するホストスタックの助けを借りてネットワーク輻輳を緩和するサポートに適用され得る。サブネット内では、SMがサブネットを定期的にスイープし、変更を発見して完全に接続されたサブネットを維持する。PMは、ネットワークパフォーマンスを分析するためにサブネット内のすべてのコンポーネントから情報を定期的に収集し得る。分析の後、PMは関連情報をホストスタックに転送し、ホストスタックはネットワークパフォーマンスを向上させるために仮想レーンを再構成する。
本発明の実施形態に従い、ルーティングアルゴリズムは、複数の仮想レーン(VL)を利用してホットスポットが存在する間のパフォーマンスを向上させ得る。VLは、トポロジが、バランスが取れており、完全にデータを入力されており、無欠陥なファットツリーであるという仮定に基づいて、ルーティングテーブル生成時に静的に割り当てられ得、輻輳の悪影響を回避し得る。さらに、仮想レーンの動的割り当てを用いてネットワーク輻輳を緩和するメカニズムが、ホットスポットフローを同定して仮想レーンを動的に割り当てるように設計され得る。
IB輻輳制御と比較して、仮想レーンの動的割り当てを用いてネットワーク輻輳を緩和すると、コントリビュータのソーススロットリングが不要になる。さらに、IB CCは送信側の注入レートを動的に調整可能であるため、IB CCパラメータはすべてのフロー同士の間に発振を発生させ得る。この結果、発振によってネットワーク全体のスループットが減少し得るため、IB CCソリューションはより永続的な性質の輻輳問題には適切でない場合がある。そのような永続的な輻輳問題は、トラフィックが故障リンクから移されたとき、複数のジョブが同一のシステム上で実行されてネットワーク資源を得るために競争しているとき、またはシステムが当該システム上で実行されるアプリケーションに対してバランスが取れていないときに起こる。永続的な輻輳問題は、まずそれらの問題を検出し、次に、システム開始時に静的に達成するのが不可能であり得るバランスを取るようにVL資源を動的に再分配することによって処理され得る。
本発明の実施形態に従い、SMは有効になったPMとともに使用され得る。PMがサブセット内の各コンポーネントのパフォーマンスカウンタに定期的に問合せをすることによって追加されるオーバーヘッドは、SMが専用ノード上で実行されている限り、データトラフィックに与える影響が最小限で済む。
本発明の実施形態に従い、ミドルウェアマシン環境におけるサブネットは、ファットツリートポロジ内にある。好ましくは、ミドルウェアマシン環境におけるファットツリートポロジは、簡潔なファットツリートポロジである。好ましくは、ミドルウェアマシン環境におけるファットツリートポロジは、オーバーサブスクライブされたファットツリートポロジである。
本発明の実施形態に従い、ミドルウェアマシン環境における1つ以上のスイッチは、ルーティングアルゴリズムを用いて、ソースノードから宛先ノードに転送されるパケットの無デッドロック性を保証する。
好ましくは、ミドルウェアマシン環境における1つ以上のスイッチは、ルーティングアルゴリズムがソースノードおよび宛先ノードの最小共通先祖ノードを介してパケットを転送することを可能にする。好ましくは、ホストは、ルーティングアルゴリズムが、パケットがソースノードから最小共通先祖ノードに転送される上りステージと、パケットが最小共通先祖ノードから宛先に転送される下りステージとを含むことを可能にする。
好ましくは、ミドルウェアマシン環境における1つ以上のスイッチは、ミドルウェアマシン環境における1つ以上の物理リンクを複数の仮想レーンに関連付けるように構成する。
好ましくは、パフォーマンスマネージャは、1つ以上のパフォーマンスカウンタを、ネットワーク動作時のホットスポットおよびホットスポットに対するコントリビュータを同定するメトリクスとして使用する。好ましくは、パフォーマンスマネージャは、パフォーマンススイープの後にホットスポットフローを同定し得る。パフォーマンスマネージャは、ホットスポットを発見した後に、再経路メッセージをすべてのコントリビュータに転送し得る。
ミドルウェアマシンは、ホットスポットフローを低速レーンに分類される仮想レーンに再割り当てし得る。犠牲フローがホットスポットフローと上りステージを共有している場合、ミドルウェアマシンは、簡潔なファットツリートポロジにおけるホットスポットフローが低速レーンに分類される仮想レーンに割り当てられることを可能にし得る。犠牲フローがホットスポットフローと上りステージおよび下りステージの少なくとも一方を共有している場合、ミドルウェアマシンは、オーバーサブスクライブされたファットツリートポロジにおけるホットスポットフローが低速レーンに分類される仮想レーンに割り当てられることを可能にし得る。ミドルウェアマシンは、ホットスポットフローを低速レーンに分類される仮想レーンに再割り当てし得る。ミドルウェアマシンは、ノードがホットスポットではなくなったと判断した後に、ノードへのすべてのフローを低速レーンから高速レーンに向け得る。ミドルウェアマシンは、輻輳制御メカニズムを用いて犠牲フローがヘッドオブラインブロッキングを回避することを可能にし得る。
図2は、本発明の実施形態に従うミドルウェア環境におけるネットワーク輻輳を緩和するための例示的なフローチャートを示す。このフローチャートに示される処理はプロセッサによって実行され得る。図2に示されるように、ステップ201において、サブネットマネージャはミドルウェアマシン環境におけるサブネットをスイープし、変更を発見してサブネットを完全に接続された状態に維持する。そして、ステップ202において、パフォーマンスマネージャは、サブネット内のハードウェアであり得る1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出し得る。最後に、ステップ203において、システムは、ネットワークパフォーマンスを向上させるために、ホストがアドレス指定状態情報などのネットワーク接続を動的に再構成することを可能にする。
ファットツリートポロジにおける輻輳の緩和
本発明の実施形態に従い、最適化フィードバックサイクルメカニズムは、任意のトポロジおよびルーティングアルゴリズムに適用可能である。一例では、ファットツリーは無デッドロック性に対する簡潔性のために用いられ得る。システムは輻輳した接続を動的に更新し、輻輳したトラフィックフローをファブリック内の異なる仮想レーンに移すことよって、輻輳効果が、輻輳を受けない接続に影響を及ぼさないようにすることができる。
本発明の実施形態に従い、最適化フィードバックサイクルメカニズムは、任意のトポロジおよびルーティングアルゴリズムに適用可能である。一例では、ファットツリーは無デッドロック性に対する簡潔性のために用いられ得る。システムは輻輳した接続を動的に更新し、輻輳したトラフィックフローをファブリック内の異なる仮想レーンに移すことよって、輻輳効果が、輻輳を受けない接続に影響を及ぼさないようにすることができる。
図3は、本発明の実施形態に従うファットツリートポロジにおける輻輳を緩和するための仮想レーンの動的割り当てを示す図である。図3に示されるように、ミドルウェアマシン環境300は、たとえばスイッチ301〜303などの複数のリーフスイッチと、ファットツリートポロジ内でリーフスイッチに接続するサーバノード1〜6などの複数のノードとを含む。さらに、リーフスイッチ301〜303は、1つ以上の物理リンクI〜VIを用いて中間スイッチまたはルートスイッチ310に接続し得る。
本発明の実施形態に従い、各物理リンクは1つ以上の仮想レーン(VL)をサポートし得る。VLは別個のバッファリング、フロー制御、および輻輳管理資源を有する同一の物理リンク上の論理チャネルである。図3に示されるように、各物理リンクI〜VIは、低速レーン(仮想レーン1)および高速レーン(仮想レーン0)などの複数の仮想レーンを有し得、すべてのパケットフローは当初は高速レーン上で実行されるように構成され得る。
ルーティングアルゴリズムは、ファットツリートポロジにおける無デッドロック性を保証し得る。ルーティングアルゴリズムは2つのステージ、すなわちパケットがソースから転送される上りステージと、パケットが宛先に転送される下りステージとを含み得る。これら2つのステージ同士の間の移行は、その下りポートを介してソースおよび宛先の両方に到達可能な中間スイッチまたはルートスイッチ310である最少共通先祖で起こる。
複数の仮想化クライアントが同一の物理ハードウェア上に存在する場合、ネットワークトラフィックは複数のトラフィックパターンのオーバーレイになり、ネットワーク内にホットスポットを引き起こし得る。図3に示されるような例では、ノード1、ノード3およびノード6などのコントリビュータからの複数のフロー(点線)の行先がエンドノード5である場合、エンドノード5がホットスポットになり得る。
ホットスポットに指定されたフローは、他のフローのパフォーマンスを低下させ得る。上記の例では、ノード2からノード3への別のフローがあり得る。物理リンクIはリーフスイッチ301からリーフスイッチ302および303の両方へのトラフィックを処理するように指定されているため、ノード1からノード5へのフローおよびノード2からノード3へのフローの上りステージは物理リンクIを共有している。ヘッドオブライン(HOL)ブロッキング現象のため、ノード2からノード3へのフローは犠牲フロー(破線)になり得る。
システムは、たとえばネットワークフローを低速レーンおよび高速レーントラフィックに分離することによって、2つのフローの2つの上りステージを同一の物理リンク上の異なる仮想レーンに分配し得る。ノード5がホットスポットであることを発見した後、システムは、ノード1,3および6などのすべての可能性のあるコントリビュータへの、たとえば再経路トラップなどのメッセージの転送をトリガし得る。そして、システムは、ノード1からノード5へのフローを、低速レーンに指定される物理リンクI上の仮想レーン0を通るように向け得る。さらに、新たなフローが既存のホットスポットであるノード5に向けられる場合、新たなフローは低速レーンに移され得る。反対に、ノード5がホットスポットではなくなった場合、ノード5に向けられるすべてのフローが、物理リンクI上の高速レーンに分類される仮想レーン1に戻され得る。
図4は、本発明の実施形態に従うオーバーサブスクライブされたファットツリートポロジにおける輻輳を緩和するための仮想レーンの動的割り当てを示す図である。図4に示されるように、ミドルウェアマシン環境400は、スイッチ401〜403などの複数のリーフスイッチと、ファットツリートポロジ内でリーフスイッチに接続するサーバノード1〜12などの複数のノードとを含む。さらに、リーフスイッチ401〜403は、1つ以上の物理リンクI〜IVを用いて中間スイッチまたはルートスイッチ410に接続し得る。
このオーバーサブスクライブされたファットツリーでは、パケットを転送するための下り経路は、図3に示されるように単一の宛先専用とする代わりに、いくつかの宛先によって共有されている。図4のオーバーサブスクライブされたファットツリーは、各下り経路が2つの宛先によって共有されているため、2:1のオーバーサブスクライブされたファットツリーである。
図4に示されるように、ノード1,5および10からノード9へのトラフィックフローは、オーバーサブスクライブされたファットツリーにおけるHOLブロッキングの悪影響をもたらし得る。このため、ホットスポットはノード9にあり、ノード1,5および10はコントリビュータである。
リンクがオーバーサブスクライブされているときに犠牲フローがHOLブロッキングに悩まされ得る状況は2つあり得、1つは上りステージにおいてであり、1つは下りステージにおいてである。
図4に示されるように、ノード2からノード7への犠牲フローは、物理リンクIを介して、コントリビュータノード1からノード9へのホットスポットフローと、リーフスイッチ401から中間/ルートスイッチ410への上りステージを共有している。これは、パフォーマンス低下が、上流リンクが輻輳コントリビュータであるノード1と共有されていることに起因する図3に示されるような例と同様である。
図4にも示されるように、ノード2からノード11への犠牲フローは、物理リンクIを介して、コントリビュータノード1からノード9へのホットスポットフローと、リーフスイッチ401から中間/ルートスイッチ410への上りリンクを共有している。さらに、ノード2からノード11への犠牲フローは、すべてのホットスポットコントリビュータと、中間/ルートスイッチ410からリーフスイッチ403への下りステージを共有している。この場合、犠牲フローの宛先ノードであるノード11がホットスポットとは異なるノードであったとしても、輻輳コントリビュータであるノード1と共有されている下りリンクでパフォーマンス低下が起こる。
システムは、たとえばネットワークフローを低速レーンおよび高速レーントラフィックに分離することによって、フローを同一の物理リンク上の異なる仮想レーンに分配し得る。
dFtreeアルゴリズム
本発明の実施形態に従い、たとえばdFtreeアルゴリズムなどのルーティングアルゴリズムを用いて、最適化フィードバックサイクルを使用するネットワーク動作時にVLの動的割り当てを行うことができる。パフォーマンスマネージャは、ハードウェアポートカウンタを用いてネットワークを監視して輻輳を検出し、フローを低速レーン(輻輳に対するコントリビュータ)または高速レーン(輻輳の犠牲)のいずれか一方に分類することによって現在のVL割り当てを最適化する。そして、ホスト側動的再構成方法を用いて最適化が適用され得る。この方法の効果は、輻輳に貢献していないフロー(犠牲フロー)に対するヘッドオブラインブロッキングの悪影響を回避するために、輻輳に貢献しているすべてのフローが別個のVL(低速レーン)に移行することである。
本発明の実施形態に従い、たとえばdFtreeアルゴリズムなどのルーティングアルゴリズムを用いて、最適化フィードバックサイクルを使用するネットワーク動作時にVLの動的割り当てを行うことができる。パフォーマンスマネージャは、ハードウェアポートカウンタを用いてネットワークを監視して輻輳を検出し、フローを低速レーン(輻輳に対するコントリビュータ)または高速レーン(輻輳の犠牲)のいずれか一方に分類することによって現在のVL割り当てを最適化する。そして、ホスト側動的再構成方法を用いて最適化が適用され得る。この方法の効果は、輻輳に貢献していないフロー(犠牲フロー)に対するヘッドオブラインブロッキングの悪影響を回避するために、輻輳に貢献しているすべてのフローが別個のVL(低速レーン)に移行することである。
ルーティングアルゴリズムは、IBパフォーマンスカウンタであるXmitWaitおよびXmitDataなどの、ホットスポットフローを動的に同定するさまざまなメトリクスを使用し得る。IBカウンタXmitWaitは、選択されたポートが送信すべきデータを有しているが、たとえばクレジットが不十分であるためにまたはアービトレーションがないためにティック全体の間にデータが実際には送信されない場合のティックの数である。ここで、ティックは、クロック間隔をサンプリングするIBアーキテクチャハードウェアである。さらに、IBカウンタXmitDataは、すべてのVL上で送信されるダブルワードのデータの総数である。また、ルーティングアルゴリズムは、ホットスポットフローを同定するために、各パフォーマンススイープの間の秒数であるIntervalなどの他のメトリクスを使用し得る。
輻輳インジケータ値は、式ΔxmitWait/Intervalに基づいて、エンドノードのリモートスイッチポートについて計算され得る。輻輳インジケータ値は、正規化されたポート輻輳を1秒当たりのXmitWaitの数と定義する。輻輳インジケータ値が閾値を超えると、エンドノードがホットスポットであることを意味する。
高い輻輳インジケータ値を有するオーバーサブスクライブされたエンドノードは、輻輳に対するコントリビュータまたは犠牲フローのいずれか一方である。たとえば、図4のエンドノード1,5,10のコントリビュータおよびエンドノード2の犠牲はすべて、高い輻輳インジケータ値を有し得る。他方、そのリモートスイッチポートについての高い輻輳インジケータ値を有するエンドノードは、それがエンドポイントホットスポットであることを示す。たとえば、図4のエンドノード9に接続されるリモートスイッチポートは、高い輻輳インジケータ値を有し得る。
送信側ポート帯域幅は、たとえば式ΔxmitWait*4/Intervalに基づいて、各ポートについて測定され得る。この式は、パフォーマンススイープ同士の間に送信されるバイトの数を表すXmitDataパフォーマンスカウンタから得られる。XmitDataカウンタは32ビットワード単位で測定されるため、当該式においてXmitDataパフォーマンスカウンタに4を掛ける。
ポート利用は、実際の帯域幅と最大サポートリンク帯域幅との比率と定義され得る。
本発明の実施形態に従い、dFtreeの実施は2つのアルゴリズム、すなわちホットスポットフローを同定するための第1のアルゴリズム(たとえば以下に示すようなアルゴリズム1)と、ホットスポットフローを低速レーンに分類される仮想レーンに再割り当てするための第2のアルゴリズム(たとえば以下に示すようなアルゴリズム2)とを含む。
本発明の実施形態に従い、dFtreeの実施は2つのアルゴリズム、すなわちホットスポットフローを同定するための第1のアルゴリズム(たとえば以下に示すようなアルゴリズム1)と、ホットスポットフローを低速レーンに分類される仮想レーンに再割り当てするための第2のアルゴリズム(たとえば以下に示すようなアルゴリズム2)とを含む。
アルゴリズム1は、パフォーマンススイープのすべての反復の後に実行され得る。アルゴリズムは、エンドノードのリモートスイッチポートが閾値を超える輻輳インジケータ値を有するか否か確認する。たとえば、輻輳を判断するために使用される輻輳用閾値は、100000XmtWaitティック/秒に設定され得る。XmtWaitカウンタはポート毎に計算されるので、ネットワークサイズが増大しても輻輳を判断するための閾値が適用可能である。
エンドノードのリモートスイッチポートが閾値を超える輻輳インジケータ値を有する場合、結論として、当該エンドノードがホットスポットであり、かつリモートスイッチポートがホットスポットポートとして印を付けられる。エンドポイントホットスポットを発見した後、第1のアルゴリズムは、すべての可能性のあるコントリビュータへの再経路トラップの転送をトリガする。この再経路トラップは、輻輳ノードのLIDをカプセル化する。
ホットスポットフローの検出は、パフォーマンススイープの間隔に依存する。ホットスポットが反復nの直後に現れた場合、ホットスポット検出および「低速レーン」割り当てはn+1の反復で、すなわちt秒後にしか実行できない。
輻輳インジケータ値およびポート利用率を用いて、可能性のあるコントリビュータを同定することができる。閾値を超える輻輳インジケータ値は、エンドノードがホットスポットコントリビュータまたは犠牲フローのいずれか一方であり得ることを示すのに対して、ポート利用率はフェアシェアリンクと輻輳リンクとを区別するために用いられ得る。
たとえば、ノードAおよびノードBがノードCに向かって同時に送信しているとする。ノードAおよびBの両方が閾値を超える輻輳インジケータを有していても、両ノードはノードCに向かうリンク帯域幅のフェアシェアを受信する。このため、輻輳インジケータ値が閾値よりも高く、かつポート利用率が50%未満である場合、アルゴリズムはエンドノードをホットスポットに対する可能性のあるコントリビュータとして印を付け、再経路トラップを転送する。
さらに、新たなフローが既存のホットスポットに向けられる場合、新たなフローは低速レーンに移され得る。反対に、エンドノードがホットスポットではなくなった場合、そのエンドノードに向けられるすべてのフローが高速レーンに分類されるその仮想レーンに戻され得る。
再経路トラップが可能性のあるコントリビュータによって受信されると、アルゴリズム2が実行され得る。ホストはすべてのアクティブQPを取り出して、それらを再経路トラップ内のDLIDと比較し得る。QPの1つにおいて整合するDLIDが見つかると、そのQPは低速レーンを使用するように再構成される。当初はすべてのQPが高速レーンを使用して初期化される。
再び図3を参照して、dFtreeアルゴリズムは、輻輳フローが提示された場合にPMがノード5がホットスポットであると検出した後に、HOLブロッキングを回避し得る。そして、ノード5をホットスポットLIDとしてカプセル化する再経路トラップがコントリビュータおよび犠牲フローのソースノードに転送される。送信側(ホットスポットコントリビュータまたは犠牲フロー)が再経路トラップを受信すると、送信側はすべてのアクティブQPを取り出して、宛先LIDを再経路トラップLIDと比較する。QPが整合する宛先LIDを有する場合、QPは低速レーンに再構成され得る。QPが低速レーンに再構成されているため、関連のフローに若干のグリッチが存在し得る。再構成の後、dFtreeアルゴリズムはHOLブロッキングを解消する分離したVL(低速レーン)に輻輳フローを配置するため、犠牲フローはそのスループットを取戻す。
本発明は、1つ以上のプロセッサ、メモリ、および/または本開示の教示に従ってプログラムされたコンピュータ可読記憶媒体を含む1つ以上の従来の汎用または専用デジタルコンピュータ、コンピューティング装置、マシン、またはマイクロプロセッサを用いて簡便に実施され得る。ソフトウェア技術の当業者には明らかであるように、適切なソフトウェアコーディングは、熟練したプログラマによって本開示の教示に基づき容易に用意され得る。
いくつかの実施形態では、本発明は、本発明の処理のいずれかを実行するようコンピュータをプログラムするのに用いられ得る命令を格納した記憶媒体またはコンピュータ可読媒体であるコンピュータプログラム製品を含む。当該記憶媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリ素子、磁気または光学カード、ナノシステム(分子メモリICを含む)、または命令および/またはデータを格納するのに好適な任意のタイプの媒体もしくは装置を含み得るが、これらに限定されない。
本発明の上記の記載は、例示および説明目的で与えられている。網羅的であることまたは開示されたそのものの形態に本発明を限定することを意図したものではない。当業者にとっては、多くの修正例および変形例が明確であろう。上記の実施形態は、本発明の原理およびその実際的な適用をもっともよく説明するために選択および記載されたものであり、これにより他の当業者が、特定の使用に好適なさまざまな修正例を考慮して、さまざまな実施例について本発明を理解するのが可能になる。本発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されることが意図される。
Claims (22)
- 1つ以上のマイクロプロセッサ上で動作するミドルウェアマシン環境におけるトラフィック輻輳を緩和するための方法であって、
サブネットマネージャを介して、前記ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見して前記サブネットを完全に接続された状態に維持するステップと、
パフォーマンスマネージャを介して、前記サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出すステップと、
ネットワークパフォーマンスを向上させるためにホストがアドレス指定状態情報を動的に再構成することを可能にするステップとを備える、方法。 - 前記ミドルウェアマシン環境におけるファットツリートポロジをサポートするステップをさらに備える、請求項1に記載の方法。
- 前記ミドルウェアマシン環境における前記ファットツリートポロジが簡潔なファットツリートポロジであることを可能にするステップをさらに備える、請求項2に記載の方法。
- 前記ミドルウェアマシン環境における前記ファットツリートポロジがオーバーサブスクライブされたファットツリートポロジであることを可能にするステップをさらに備える、請求項2に記載の方法。
- ルーティングアルゴリズムを用いて、ソースノードから宛先ノードに転送されるパケットの無デッドロック性を保証するステップをさらに備える、請求項1〜4のいずれか1項に記載の方法。
- 前記ルーティングアルゴリズムが、前記ソースノードおよび前記宛先ノードの最小共通先祖ノードを介して前記パケットを転送することを可能にするステップをさらに備える、請求項5に記載の方法。
- 前記ルーティングアルゴリズムが、前記パケットが前記ソースノードから前記最小共通先祖ノードに転送される上りステージと、前記パケットが前記最小共通先祖ノードから前記宛先に転送される下りステージとを含むことを可能にするステップをさらに備える、請求項6に記載の方法。
- 前記ミドルウェアマシン環境における1つ以上の物理リンクを複数の仮想レーンに関連付けるように構成するステップをさらに備える、請求項1〜7のいずれか1項に記載の方法。
- 1つ以上のパフォーマンスカウンタを、ネットワーク動作時のホットスポットおよび前記ホットスポットに対するコントリビュータを同定するメトリクスとして使用するステップをさらに備える、請求項1〜8のいずれか1項に記載の方法。
- パフォーマンススイープの後にホットスポットフローを同定するステップをさらに備える、請求項1〜9のいずれか1項に記載の方法。
- ホットスポットを発見した後に、再経路メッセージをすべてのコントリビュータに転送するステップをさらに備える、請求項10に記載の方法。
- 前記ホットスポットフローを低速レーンに分類される仮想レーンに再割り当てするステップをさらに備える、請求項10または11に記載の方法。
- 犠牲フローが前記ホットスポットフローと上りステージを共有している場合、簡潔なファットツリートポロジにおける前記ホットスポットフローが低速レーンに分類される仮想レーンに割り当てられることを可能にするステップをさらに備える、請求項10または11に記載の方法。
- 犠牲フローが前記ホットスポットフローと上りステージおよび下りステージの少なくとも一方を共有している場合、オーバーサブスクライブされたファットツリートポロジにおける前記ホットスポットフローが低速レーンに分類される仮想レーンに割り当てられることを可能にするステップをさらに備える、請求項10または11に記載の方法。
- ノードがホットスポットではなくなったと判断された後に、ノードへのすべてのフローを低速レーンから高速レーンに向けるステップをさらに備える、請求項10または11に記載の方法。
- 輻輳制御メカニズムを用いて犠牲フローがヘッドオブラインブロッキングを回避することを可能にするステップをさらに備える、請求項1〜15のいずれか1項に記載の方法。
- 1つ以上のコンピュータシステムによって実行されると、前記1つ以上のシステムに請求項1〜16のいずれか1項に記載の方法を実行させるプログラム命令を備える、コンピュータプログラム。
- 請求項17に記載のコンピュータプログラムを格納する機械可読記憶媒体を備える、コンピュータプログラム製品。
- 1つ以上のマイクロプロセッサ上で動作するミドルウェアマシン環境におけるトラフィック輻輳を防止するためのシステムであって、
前記ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見して前記サブネットを完全に接続された状態に維持するサブネットマネージャと、
前記サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出すパフォーマンスマネージャと、
ネットワークパフォーマンスを向上させるためにアドレス指定状態情報を動的に再構成し得るホスト側スタックとを備える、システム。 - 前記ミドルウェアマシン環境における前記サブネットはファットツリートポロジ内にある、請求項19に記載のシステム。
- 命令を格納する非一時的機械可読記憶媒体であって、前記命令は実行されると、システムに、
サブネットマネージャを介して、ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見して前記サブネットを完全に接続された状態に維持するステップと、
パフォーマンスマネージャを介して、前記サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出すステップと、
ネットワークパフォーマンスを向上させるためにホストが1つ以上の仮想レーンを動的に再構成することを可能にするステップとを実行させる、記憶媒体。 - プログラムであって、前記プログラムは実行されると、システムに、
サブネットマネージャを介して、ミドルウェアマシン環境におけるサブネットをスイープし、変更を発見して前記サブネットを完全に接続された状態に維持するステップと、
パフォーマンスマネージャを介して、前記サブネット内の1つ以上のコンポーネントに関連付けられる1つ以上のパフォーマンス管理エージェントからパフォーマンスおよびエラー関連の情報を取り出すステップと、
ネットワークパフォーマンスを向上させるためにホストが1つ以上の仮想レーンを動的に再構成することを可能にするステップとを実行させる、プログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161560226P | 2011-11-15 | 2011-11-15 | |
US61/560,226 | 2011-11-15 | ||
US13/648,961 US8879396B2 (en) | 2011-11-15 | 2012-10-10 | System and method for using dynamic allocation of virtual lanes to alleviate congestion in a fat-tree topology |
US13/648,961 | 2012-10-10 | ||
PCT/US2012/065115 WO2013074697A1 (en) | 2011-11-15 | 2012-11-14 | System and method for using dynamic allocation of virtual lanes to alleviate congestion in a fat-tree topology |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015503274A true JP2015503274A (ja) | 2015-01-29 |
Family
ID=48280539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014542415A Pending JP2015503274A (ja) | 2011-11-15 | 2012-11-14 | 仮想レーンの動的割り当てを用いてファットツリートポロジにおける輻輳を緩和するためのシステムおよび方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8879396B2 (ja) |
EP (1) | EP2781062A1 (ja) |
JP (1) | JP2015503274A (ja) |
CN (1) | CN103907321A (ja) |
IN (1) | IN2014CN02132A (ja) |
WO (1) | WO2013074697A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019526943A (ja) * | 2016-08-23 | 2019-09-19 | オラクル・インターナショナル・コーポレイション | 高性能コンピューティング環境における高速ハイブリッド再構成をサポートするためのシステムおよび方法 |
US11082365B2 (en) | 2016-01-27 | 2021-08-03 | Oracle International Corporation | System and method for supporting scalable representation of switch port status in a high performance computing environment |
US11271870B2 (en) | 2016-01-27 | 2022-03-08 | Oracle International Corporation | System and method for supporting scalable bit map based P_Key table in a high performance computing environment |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782434B1 (en) | 2010-07-15 | 2014-07-15 | The Research Foundation For The State University Of New York | System and method for validating program execution at run-time |
US9401963B2 (en) * | 2012-06-04 | 2016-07-26 | Oracle International Corporation | System and method for supporting reliable connection (RC) based subnet administrator (SA) access in an engineered system for middleware and application execution |
US10177957B1 (en) | 2012-07-06 | 2019-01-08 | Cradlepoint, Inc. | Connecting a cloud network to the internet |
US10135677B1 (en) | 2012-07-06 | 2018-11-20 | Cradlepoint, Inc. | Deployment of network-related features over cloud network |
US10110417B1 (en) | 2012-07-06 | 2018-10-23 | Cradlepoint, Inc. | Private networks overlaid on cloud infrastructure |
US10560343B1 (en) | 2012-07-06 | 2020-02-11 | Cradlepoint, Inc. | People centric management of cloud networks via GUI |
US10880162B1 (en) | 2012-07-06 | 2020-12-29 | Cradlepoint, Inc. | Linking logical broadcast domains |
US10601653B2 (en) * | 2012-07-06 | 2020-03-24 | Cradlepoint, Inc. | Implicit traffic engineering |
US9992062B1 (en) * | 2012-07-06 | 2018-06-05 | Cradlepoint, Inc. | Implicit traffic engineering |
US9231892B2 (en) * | 2012-07-09 | 2016-01-05 | Vmware, Inc. | Distributed virtual switch configuration and state management |
US9130858B2 (en) * | 2012-08-29 | 2015-09-08 | Oracle International Corporation | System and method for supporting discovery and routing degraded fat-trees in a middleware machine environment |
US9063721B2 (en) | 2012-09-14 | 2015-06-23 | The Research Foundation For The State University Of New York | Continuous run-time validation of program execution: a practical approach |
US9069782B2 (en) | 2012-10-01 | 2015-06-30 | The Research Foundation For The State University Of New York | System and method for security and privacy aware virtual machine checkpointing |
US9990221B2 (en) | 2013-03-15 | 2018-06-05 | Oracle International Corporation | System and method for providing an infiniband SR-IOV vSwitch architecture for a high performance cloud computing environment |
US10230794B2 (en) * | 2013-03-15 | 2019-03-12 | Oracle International Corporation | System and method for efficient virtualization in lossless interconnection networks |
ES2539248B1 (es) * | 2013-12-26 | 2016-03-14 | Universidad De Castilla La Mancha | Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand |
JP6213303B2 (ja) * | 2014-02-26 | 2017-10-18 | 富士通株式会社 | 情報処理システム、制御装置及び制御プログラム |
CN105337866B (zh) * | 2014-06-30 | 2019-09-20 | 华为技术有限公司 | 一种流量切换方法及装置 |
US9876737B2 (en) * | 2014-07-11 | 2018-01-23 | Oracle International Corporation | System and method for supporting efficient load-balancing in a high performance computing (HPC) environment |
US10033574B2 (en) | 2015-03-20 | 2018-07-24 | Oracle International Corporation | System and method for efficient network reconfiguration in fat-trees |
US10084639B2 (en) * | 2015-03-20 | 2018-09-25 | Oracle International Corporation | System and method for efficient network reconfiguration in fat-trees |
EP3275141B1 (en) | 2015-03-25 | 2018-11-21 | British Telecommunications public limited company | Mobile telecommunications routing |
US9762491B2 (en) | 2015-03-30 | 2017-09-12 | Mellanox Technologies Tlv Ltd. | Dynamic thresholds for congestion control |
US9699095B2 (en) | 2015-05-21 | 2017-07-04 | Mellanox Technologies Tlv Ltd. | Adaptive allocation of headroom in network devices |
US10033647B2 (en) | 2015-10-13 | 2018-07-24 | Oracle International Corporation | System and method for efficient network isolation and load balancing in a multi-tenant cluster environment |
US10069748B2 (en) | 2015-12-14 | 2018-09-04 | Mellanox Technologies Tlv Ltd. | Congestion estimation for multi-priority traffic |
US10069701B2 (en) | 2016-01-13 | 2018-09-04 | Mellanox Technologies Tlv Ltd. | Flexible allocation of packet buffers |
US10178027B2 (en) | 2016-01-27 | 2019-01-08 | Oracle International Corporation | System and method for supporting inter subnet partitions in a high performance computing environment |
US10355972B2 (en) | 2016-01-28 | 2019-07-16 | Oracle International Corporation | System and method for supporting flexible P_Key mapping in a high performance computing environment |
US10333894B2 (en) | 2016-01-28 | 2019-06-25 | Oracle International Corporation | System and method for supporting flexible forwarding domain boundaries in a high performance computing environment |
US10616118B2 (en) | 2016-01-28 | 2020-04-07 | Oracle International Corporation | System and method for supporting aggressive credit waiting in a high performance computing environment |
US10581711B2 (en) | 2016-01-28 | 2020-03-03 | Oracle International Corporation | System and method for policing network traffic flows using a ternary content addressable memory in a high performance computing environment |
US10348649B2 (en) | 2016-01-28 | 2019-07-09 | Oracle International Corporation | System and method for supporting partitioned switch forwarding tables in a high performance computing environment |
US10666611B2 (en) | 2016-01-28 | 2020-05-26 | Oracle International Corporation | System and method for supporting multiple concurrent SL to VL mappings in a high performance computing environment |
US10630816B2 (en) | 2016-01-28 | 2020-04-21 | Oracle International Corporation | System and method for supporting shared multicast local identifiers (MILD) ranges in a high performance computing environment |
US10348847B2 (en) | 2016-01-28 | 2019-07-09 | Oracle International Corporation | System and method for supporting proxy based multicast forwarding in a high performance computing environment |
US10659340B2 (en) | 2016-01-28 | 2020-05-19 | Oracle International Corporation | System and method for supporting VM migration between subnets in a high performance computing environment |
US10536334B2 (en) | 2016-01-28 | 2020-01-14 | Oracle International Corporation | System and method for supporting subnet number aliasing in a high performance computing environment |
US10171353B2 (en) * | 2016-03-04 | 2019-01-01 | Oracle International Corporation | System and method for supporting dual-port virtual router in a high performance computing environment |
US10250530B2 (en) | 2016-03-08 | 2019-04-02 | Mellanox Technologies Tlv Ltd. | Flexible buffer allocation in a network switch |
US10084716B2 (en) | 2016-03-20 | 2018-09-25 | Mellanox Technologies Tlv Ltd. | Flexible application of congestion control measures |
US10205683B2 (en) | 2016-03-28 | 2019-02-12 | Mellanox Technologies Tlv Ltd. | Optimizing buffer allocation for network flow control |
US10387074B2 (en) | 2016-05-23 | 2019-08-20 | Mellanox Technologies Tlv Ltd. | Efficient use of buffer space in a network switch |
US9985910B2 (en) | 2016-06-28 | 2018-05-29 | Mellanox Technologies Tlv Ltd. | Adaptive flow prioritization |
US10630590B2 (en) * | 2016-07-14 | 2020-04-21 | Mellanox Technologies Tlv Ltd. | Credit loop deadlock detection and recovery in arbitrary topology networks |
CN106658753B (zh) * | 2016-09-14 | 2020-01-17 | Oppo广东移动通信有限公司 | 一种数据迁移方法及终端设备 |
US10389646B2 (en) | 2017-02-15 | 2019-08-20 | Mellanox Technologies Tlv Ltd. | Evading congestion spreading for victim flows |
US10645033B2 (en) | 2017-03-27 | 2020-05-05 | Mellanox Technologies Tlv Ltd. | Buffer optimization in modular switches |
FR3072236B1 (fr) * | 2017-10-10 | 2020-11-27 | Bull Sas | Dispositif et procede d'acquisition de valeurs de compteurs associes a une tache de calcul |
EP3777267A1 (en) | 2018-03-28 | 2021-02-17 | British Telecommunications public limited company | Roaming route optimization |
CN110177125B (zh) * | 2018-05-15 | 2021-08-31 | 广东电网有限责任公司 | 一种中间件平台迁移方法 |
US10735541B2 (en) | 2018-11-30 | 2020-08-04 | Vmware, Inc. | Distributed inline proxy |
CN111835652B (zh) * | 2019-04-17 | 2024-04-16 | 华为技术有限公司 | 一种数据流的虚拟通道的设置方法及装置 |
US11005770B2 (en) | 2019-06-16 | 2021-05-11 | Mellanox Technologies Tlv Ltd. | Listing congestion notification packet generation by switch |
US10999221B2 (en) | 2019-07-02 | 2021-05-04 | Mellanox Technologies Tlv Ltd. | Transaction based scheduling |
CN110351195A (zh) * | 2019-08-15 | 2019-10-18 | 赛尔网络有限公司 | 一种网络拥塞控制方法、装置、设备及介质 |
US11470010B2 (en) | 2020-02-06 | 2022-10-11 | Mellanox Technologies, Ltd. | Head-of-queue blocking for multiple lossless queues |
CN111428973B (zh) * | 2020-03-11 | 2024-04-12 | 慧镕电子系统工程股份有限公司 | 一种能有效提高资源利用率的虚拟资源分配方法 |
CN113660630B (zh) * | 2021-08-30 | 2024-03-29 | 枫荷科技(苏州)有限公司 | 一种离散无线传感专网、系统及其数据传输方式 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7636772B1 (en) * | 2000-10-19 | 2009-12-22 | International Business Machines Corporation | Method and apparatus for dynamic retention of system area network management information in non-volatile store |
US7136907B1 (en) * | 2000-10-19 | 2006-11-14 | International Business Machines Corporation | Method and system for informing an operating system in a system area network when a new device is connected |
US20030005039A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | End node partitioning using local identifiers |
US7379420B2 (en) * | 2001-12-28 | 2008-05-27 | Network Equipment Technologies, Inc. | Method and apparatus for multiple qualities of service to different network connections of a single network path |
US7016996B1 (en) * | 2002-04-15 | 2006-03-21 | Schober Richard L | Method and apparatus to detect a timeout condition for a data item within a process |
GB0304628D0 (en) * | 2003-02-28 | 2003-04-02 | Imec Inter Uni Micro Electr | Method for hardware-software multitasking on a reconfigurable computing platform |
US7644182B2 (en) * | 2004-03-11 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Reconfiguring a multicast tree |
US8381152B2 (en) * | 2008-06-05 | 2013-02-19 | Cadence Design Systems, Inc. | Method and system for model-based design and layout of an integrated circuit |
US8601376B2 (en) * | 2008-09-23 | 2013-12-03 | Catalina Computing, Llc | Virtual wiring |
US9172803B2 (en) * | 2009-08-23 | 2015-10-27 | Aspect Software, Inc. | System and method for integrating runtime usage statistics with developing environment |
CN103125098B (zh) * | 2010-09-17 | 2016-08-17 | 甲骨文国际公司 | 支持中间机环境的系统和方法、子网管理器和网络交换机 |
US8743890B2 (en) * | 2011-06-03 | 2014-06-03 | Oracle International Corporation | System and method for supporting sub-subnet in an infiniband (IB) network |
-
2012
- 2012-10-10 US US13/648,961 patent/US8879396B2/en active Active
- 2012-11-14 WO PCT/US2012/065115 patent/WO2013074697A1/en active Application Filing
- 2012-11-14 EP EP12791404.2A patent/EP2781062A1/en not_active Withdrawn
- 2012-11-14 CN CN201280052890.XA patent/CN103907321A/zh active Pending
- 2012-11-14 IN IN2132CHN2014 patent/IN2014CN02132A/en unknown
- 2012-11-14 JP JP2014542415A patent/JP2015503274A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11082365B2 (en) | 2016-01-27 | 2021-08-03 | Oracle International Corporation | System and method for supporting scalable representation of switch port status in a high performance computing environment |
US11271870B2 (en) | 2016-01-27 | 2022-03-08 | Oracle International Corporation | System and method for supporting scalable bit map based P_Key table in a high performance computing environment |
US11381520B2 (en) | 2016-01-27 | 2022-07-05 | Oracle International Corporation | System and method for supporting node role attributes in a high performance computing environment |
US11770349B2 (en) | 2016-01-27 | 2023-09-26 | Oracle International Corporation | System and method for supporting configurable legacy P_Key table abstraction using a bitmap based hardware implementation in a high performance computing environment |
JP2019526943A (ja) * | 2016-08-23 | 2019-09-19 | オラクル・インターナショナル・コーポレイション | 高性能コンピューティング環境における高速ハイブリッド再構成をサポートするためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
US20130121154A1 (en) | 2013-05-16 |
US8879396B2 (en) | 2014-11-04 |
IN2014CN02132A (ja) | 2015-05-29 |
EP2781062A1 (en) | 2014-09-24 |
CN103907321A (zh) | 2014-07-02 |
WO2013074697A1 (en) | 2013-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015503274A (ja) | 仮想レーンの動的割り当てを用いてファットツリートポロジにおける輻輳を緩和するためのシステムおよび方法 | |
US11949530B2 (en) | System and method to provide multicast group membership defined relative to partition membership in a high performance computing environment | |
US9948553B2 (en) | System and method for virtual network-based distributed multi-domain routing control | |
JP6803422B2 (ja) | ミドルウェアおよびアプリケーションの実行のための設計されたシステムに対するサービス妨害(dos:denial of service)攻撃を防止するためのシステムおよび方法、ならびに、ミドルウェアおよびアプリケーションの実行のための設計されたシステムにおいてサブネットアドミニストレータ(sa:subnet administrator)アクセスに基づいて信頼性のある接続(rc:reliable connection)をサポートするためのシステムおよび方法 | |
US10534601B1 (en) | In-service software upgrade of virtual router with reduced packet loss | |
US10257066B2 (en) | Interconnect congestion control in a storage grid | |
US11405229B2 (en) | System and method to provide explicit multicast local identifier assignment for per-partition default multicast local identifiers defined as subnet manager policy input in a high performance computing environment | |
US10404773B2 (en) | Distributed cluster processing system and packet processing method thereof | |
JP7313480B2 (ja) | スライスベースネットワークにおける輻輳回避 | |
Cui et al. | PLAN: Joint policy-and network-aware VM management for cloud data centers | |
US11218400B2 (en) | System and method for optimized path record handling in homogeneous fabrics without host stack cooperation in a high performance computing environment | |
US20140310377A1 (en) | Information processing method and information processing apparatus | |
WO2021098425A1 (zh) | 配置业务的服务质量策略方法、装置和计算设备 | |
KR20210016802A (ko) | 소프트웨어 정의 네트워킹 환경에서 서버-클라이언트 기반의 네트워크 서비스를 위한 플로우 테이블을 최적화하는 방법 및 이를 위한 sdn 스위치 | |
WO2021224931A1 (en) | System and a method to efficiently exchange echo and stats messages between sdn controller and the open vswitches | |
KR101707073B1 (ko) | Sdn 기반의 에러 탐색 네트워크 시스템 | |
CN109450794A (zh) | 一种基于sdn网络的通信方法及设备 | |
WO2023169407A1 (zh) | 一种下发路由表的方法及相关装置 | |
Tseng et al. | An urgency and congestion control scheme for larger-scale TCP incast problem in data center | |
US20190014077A1 (en) | System and method to provide combined ib and ip address and name resolution schemes via default ib multicast groups in a high performance computing environment |