(57)【要約】【課題】  レジスタ・アクセスを行うシステム及び方法を提供する。【解決手段】  特定の方法が、複数のサーバ・コンピュータとの通信を行う複数のブリッジ要素のうちのブリッジ要素においてデータ・フレームを受信することを含む。データ・フレームは、レジスタ・アクセス要求を含むことができ、複数のブリッジ要素との通信を行う制御ブリッジから転送することができる。レジスタにアクセスすることができ、データ・フレームを受信したことに応答してレジスタ・アクセス要求の実行を開始することができる。【選択図】      図４
2013537740.tif 000002
【特許請求の範囲】
【請求項１】
複数のサーバ・コンピュータと、
前記複数のサーバ・コンピュータとの通信を行う複数の分散ブリッジ要素であって、各々の分散ブリッジ要素は、レジスタ・アクセス要求を含むデータ・フレームの受信に応答してレジスタにアクセスするように構成された、複数の分散ブリッジ要素と、
前記複数の分散ブリッジ要素を制御し、前記データ・フレームを生成して前記複数のブリッジ要素のうちの少なくとも１つに通信するように構成された、制御ブリッジと、
を備える装置。
【請求項２】
前記レジスタは、前記複数のブリッジ要素のうちの１つのブリッジ要素内に含まれる、請求項１に記載の装置。
【請求項３】
前記レジスタを含む非ブリッジ要素ノードをさらに含む、請求項１に記載の装置。
【請求項４】
前記複数のブリッジ要素に結合されたメイン・レジスタ・リングをさらに含み、前記メイン・レジスタ・リングは、トークン・プロトコルを含む、請求項１に記載の装置。
【請求項５】
前記レジスタ・アクセス要求は、ロード操作とストア操作とのうちの少なくとも１つを含む、請求項１に記載の装置。
【請求項６】
前記データ・フレームは、前記レジスタ・アクセス要求に関連するシーケンス番号を含む、請求項１に記載の装置。
【請求項７】
前記複数のブリッジ要素のうちの１つのブリッジ要素は、前記シーケンス番号をメモリに格納するように構成された、請求項６に記載の装置。
【請求項８】
前記制御ブリッジは、前記格納されたシーケンス番号を用いて、前記データ・フレームが前記ブリッジ要素に配信されたことを確認するように構成された、請求項６に記載の装置。
【請求項９】
前記制御ブリッジは、前記シーケンス番号をメモリに格納するように構成された、請求項８に記載の装置。
【請求項１０】
前記メモリは、先入れ先出しメモリとして構成された、請求項９に記載の装置。
【請求項１１】
前記制御ブリッジは、前記複数のブリッジ要素のうちの１つのブリッジ要素を選択して、前記レジスタを含む非ブリッジ要素ノードに前記レジスタ・アクセス要求を通信するように構成された、請求項１に記載の装置。
【請求項１２】
前記複数のブリッジ要素のうちの１つのブリッジ要素と前記制御ブリッジとのうちの少なくとも１つは、成功して完了したレジスタ・アクセス要求の総数を格納する、請求項１に記載の装置。
【請求項１３】
前記複数のブリッジ要素のうちの１つのブリッジ要素は、前記レジスタ・アクセス要求に関連する状態情報を前記制御ブリッジに通信するように構成された、請求項１に記載の装置。
【請求項１４】
前記制御ブリッジは、前記データ・フレームの前記通信と前記レジスタ・アクセス要求の実行とのうちの少なくとも１つに関して誤りが起きたと判定したことに応答して、前記データ・フレームを再送するように構成された、請求項１に記載の装置。
【請求項１５】
前記制御ブリッジと前記複数のブリッジ要素のうちの１つのブリッジ要素とのうちの少なくとも１つは、前記レジスタ・アクセス要求の実行の前にセマフォ操作を開始するように構成された、請求項１に記載の装置。
【請求項１６】
レジスタ・アクセスを行う方法であって、
複数のサーバ・コンピュータとの通信を行う複数のブリッジ要素のうちの１つのブリッジ要素においてデータ・フレームを受信することであって、前記データ・フレームは、レジスタ・アクセス要求を含み、前記複数のブリッジ要素との通信を行う制御ブリッジから転送される、受信することと、
前記データ・フレームを受信したことに応答して、レジスタにアクセスし、前記レジスタ・アクセス要求の実行を開始することと、
を含む方法。
【請求項１７】
トークンを用いて前記レジスタにアクセスすることをさらに含む、請求項１６に記載の方法。
【請求項１８】
トークンを用いることなく前記レジスタにアクセスすることをさらに含み、前記レジスタは前記ブリッジ要素内に含まれる、請求項１６に記載の方法。
【請求項１９】
前記レジスタ・アクセス要求に関連するシーケンス番号と成功して完了したレジスタ・アクセス要求の総数とのうちの少なくとも１つをメモリ内に格納することをさらに含む、請求子１６に記載の方法。
【請求項２０】
複数のサーバ・コンピュータとの通信を行う複数のブリッジ要素のうちの１つのブリッジ要素に常駐するプログラム命令を含むコンピュータ・プログラムであって、前記プログラム命令は、レジスタ・アクセス要求を含むデータ・フレームを制御ブリッジから受信し、レジスタにアクセスし、前記データ・フレームを受信したことに応答して前記レジスタ・アクセス要求の実行を開始するように構成されたものである、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、データ通信に関し、より具体的には、高度に統合されたコンピュータ・ネットワークにおけるレジスタへのアクセスに関する。
【背景技術】
【０００２】
サーバ・コンピュータは、共有スイッチ及び他のトラフィック・ルーティング資源にアクセスできるようにするために、継続的に管理される。例えば、ブレード・サーバ・コンピュータ構成などにおいて、サーバ・コンピュータが空間及び接続性を考慮してラック内に収容されるときに、ルーティング資源の競合が存在することがある。サーバ・コンピュータは、共有のトップ・オブ・ラック・スイッチなどの中央集中型スイッチを通してデータ・フレームを転送するときに、伝送のボトルネック及び遅延を経験することがある。
【０００３】
例示すると、図１は、従来のブレード・サーバ・コンピュータ・システム１００を示す。システム１００は、ラック１０２、１０４内に収容され、シャシ１３８、１４０、１４２及び１４４内に配列された、複数のサーバ・コンピュータ１０６−１２５を含む。一例としてのサーバ・コンピュータ１０６は、ハーフワイド（ｈａｌｆ−ｗｉｄｔｈ）インフォメーション・テクノロジ・エレメント（ＩＴＥ）ブレード・サーバ・コンピュータを含むことがある。
【０００４】
異なるシャシ１３８、１４０、１４２、１４４又はラック１０２、１０４内に収容されたサーバ・コンピュータ１０６−１２５間のデータ・フレーム通信は、イースト-ウェスト接続と呼ばれることがある。例えば、第１のシャシ１４０のサーバ・コンピュータ１１１が、データ・フレームを、経路１６４を経由して別のシャシ１３８のサーバ・コンピュータ１０６に転送することがある。経路１６４は、シャシ・スイッチ１５４及びトップ・オブ・ラック・スイッチ（ＴＯＲ）１５８を含む。シャシ・スイッチ１５４及びトップ・オブ・ラック・スイッチ１５８は、データ・フレームを、メディア・アクセス・コントロール（ＭＡＣ）アドレスに基づいてルーティングする。
【０００５】
ラック１０２のサーバ・コンピュータ１１１が、データ・フレームをラック１０４のサーバ・コンピュータ１２３に転送するときには、データ・フレームは、経路１６６及び１６８を通って進む。経路１６６及び１６８は、トップ・オブ・ラック・スイッチ１５８と、エンド・オブ・ラック・スイッチ（ＥＯＲ）１６２と、トップ・オブ・ラック・スイッチ１６０とを含む。トップ・オブ・ラック・スイッチ１５８は、サーバ・コンピュータ１１１が経路１６６及び１７０を経由してノース−サウス接続（即ち、内部から外部へのデータ・フレーム通信）をしようとするときにも用いられる。上記の例におけるデータ・フレームは全て、トップ・オブ・ラック・スイッチ１５８及び１６０を経由してルーティングされるため、結果として潜在的なボトルネックのシナリオが生じる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
追加のトラフィックに適応するようにスイッチ及び関連する接続の数を増加させることによって、ハードウェアのコスト及び遅延が増加するのに加えて、構成及び管理の問題が提起されることがある。従って、スイッチがサーバ・コンピュータ間においてデータ・フレームを転送する際の効率を高めることが望ましい。
【課題を解決するための手段】
【０００７】
特定の実施形態においては、複数のサーバ・コンピュータとの通信を行う複数の分散ブリッジ要素を含む装置が開示される。各々の分散ブリッジ要素は、レジスタ・アクセス要求を含むデータ・フレームの受信に応答してレジスタにアクセスするように構成することができる。制御ブリッジは、複数の分散ブリッジ要素を制御し、データ・フレームを生成して複数のブリッジ要素のうちの少なくとも１つに通信するように構成することができる。
【０００８】
別の実施形態において、レジスタ・アクセスを行う方法は、複数のサーバ・コンピュータとの通信を行う複数のブリッジ要素のうちのブリッジ要素においてデータ・フレームを受信することを含む。データ・フレームは、レジスタ・アクセス要求を含むことができ、複数のブリッジ要素との通信を行う制御ブリッジから転送することができる。レジスタにアクセスすることができ、レジスタ・アクセス要求の実行は、データ・フレームの受信に応答して開始することができる。
【０００９】
別の実施形態において、レジスタにアクセスするためのプログラム製品は、媒体内に具体化されたコンピュータ可読プログラム・コードを有するコンピュータ可読ストレージ媒体を含むことができる。コンピュータ可読プログラム・コードは、複数のサーバ・コンピュータとの通信を行う複数のブリッジ要素のうちのブリッジ要素に常駐するプログラム命令を含むことができる。プログラム命令は、レジスタ・アクセス要求を含むデータ・フレームを制御ブリッジから受信し、レジスタにアクセスし、データ・フレームを受信したことに応答してレジスタ・アクセス要求の実行を開始するように構成することができる。
【００１０】
実施形態のうちの少なくとも１つは、高度に統合された環境におけるレジスタの効率的なプログラミングを容易にすることができる。制御ブリッジは、セキュリティ、ルーティング、及び利用可能性などのアクセス考慮事項を一貫した方法で制御するのに用いられる、信頼できる（例えば、既知で安全な）ファームウェアを提供することができる。制御ブリッジは、ローカル及び遠隔のブリッジ要素のレジスタの他に、アダプタ及びパーティションなど別のハードウェア・ノードにもアクセスするように、構成することができる。自動化されたレジスタ・アクセスは、潜在的なボトルネックを緩和し、効率的な処理を容易にすることができる。ファイバ・チャネル・オーバ・イーサネットをサポートすることができ、システムの実施形態は、数百以上の直接接続されたサーバ・コンピュータを含むように拡張可能なものとすることができる。
【００１１】
実施形態を特徴付ける特性は、本明細書に添付され、その更なる部分を構成する、特許請求の範囲の中で示される。しかしながら、実施形態と、その使用によって達成される利点及び目的とをより良く理解するために、例示的な実施形態が説明されている図面とそれに付随する説明事項を参照されたい。
【図面の簡単な説明】
【００１２】
【図１】ブレード・サーバ・コンピュータのラックを含む従来技術のコンピューティング・システムのブロック図である。
【図２】ブレード・サーバ・コンピュータの異なるラック及びシャシ内に収容されたサーバ・コンピュータ間における直接通信を可能にするように構成されたネットワーク化されたコンピューティング・システムの実施形態のブロック図である。
【図３】分散ブリッジ要素及び１つ又は複数の制御ブリッジを用いてレジスタに遠隔的にアクセスするように構成されたシステムの特定の実施形態の図である。
【図４】複数の分散ブリッジ要素及び１つ又は複数の制御ブリッジを用いてレジスタ・アクセス操作を行うように構成されたシステムの別の特定の実施形態の図である。
【図５】制御ブリッジを用いて分散ブリッジ要素及び他のターゲット・ノードのレジスタをプログラムする方法の特定の実施形態のフローチャートである。
【図６】レジスタ・アクセスの誤りを検出してそれに応答する方法の特定の実施形態のフローチャートである。
【発明を実施するための形態】
【００１３】
制御ブリッジのファームウェアは、複数の相互接続されたブリッジ要素が関係するレジスタのロード及びストア操作を制御することができる。制御ブリッジは、ペリフェラル・コンポーネント・インターコネクト・エクスプレス（ＰＣＩｅ）を介してローカル・ブリッジ要素に直接的に結合することができ、レジスタ・アクセス要求を含むデータ・フレームを用いてそのブリッジ要素と通信することができる。特定の実施形態においては、システムは、レジスタにアクセスするためのトークン・プロトコルを用いるメイン・レジスタ・リングを含むことができる。レジスタ・アクセス要求を作る開始ブリッジ要素は、メイン・レジスタ・リング上のトークンを待つことができる。トークンは、トークンを制御する１つのブリッジ要素のみが一度にターゲット・ノードにアクセスできるように、用いることができる。トークンが利用可能になったときに、ターゲット・ノードへの配信のためにレジスタ・アクセス要求をメイン・レジスタ・リング上に置くことができる。レジスタ・アクセス要求は、ブリッジ要素又は他のターゲット・ノードを宛先とすることができる。ターゲット・ノードは、レジスタ・アクセス要求を実行し、応答を開始ブリッジ要素に通信することができる。次いで、開始ブリッジ要素は、トークンをメイン・レジスタ・リングに返すことができる。
【００１４】
複数の制御ブリッジからのレジスタ・アクセス操作が衝突することを防ぐために、制御ブリッジは、ブリッジ要素を選択してブリッジ要素制御ポートにすることができる。ブリッジ要素制御ポートは、ブリッジ要素レジスタ以外のレジスタにアクセスするときに用いることができる。ブリッジ要素レジスタは、ブリッジ要素レジスタの別の組への並列アクセスを可能にするように、それぞれのブリッジ要素を介して直接的にアクセスすることができる。ブリッジ要素は、トークンをメイン・レジスタ・リングから受け取ることなく、自己のレジスタにアクセスすることができる。ブリッジ要素は、データ・フレームの全てのレジスタ・アクセス要求が完了するまで、メイン・レジスタ・リングからの外部アクセスを保留することができる。
【００１５】
制御ブリッジは、レジスタにアクセスするときに、ファームウェア・ベースのセマフォ機構を用いることができる。セマフォ機構は、他の制御ブリッジがレジスタに同時にアクセスするのを防ぐことができる。各々のブリッジ要素は、制御ブリッジがセマフォ・レジスタとして用いる複数のレジスタを含むことができる。
【００１６】
単一のデータ・フレーム内に、複数のレジスタ・アクセス要求、即ち操作を、含むことができる。レジスタ・アクセス操作の例として、レジスタ・ロード及びレジスタ・ストア並びに順次レジスタ・ロード及び順次レジスタ・ストアを挙げることができる。他のレジスタ・アクセス操作として、セマフォ制御操作の取得機能、検査機能及び解放機能を挙げることができる。レジスタ・アクセス操作のさらなる例として、ＡＮＤ／ＯＲ操作並びに比較操作及びスワップ操作を挙げることができる。
【００１７】
レジスタ・アクセス要求を伝達するデータ・フレームは、シーケンス番号フィールドをさらに含むことができる。特定の実施形態によれば、制御ブリッジは、データ・フレーム及び関連するレジスタ・アクセス要求を送るときに、４バイトのシーケンス番号をシーケンス番号フィールドに挿入することができる。シーケンス番号フィールドは、シーケンス番号を用いて履歴キューを更新する受信ブリッジ要素によって変更されないようにすることができる。ブリッジ要素は、データ・フレーム及びシーケンス番号を制御ブリッジに返すことができる。制御ブリッジは、返されたフレームのシーケンス番号を用いて、配信を確認するか又はデータ・フレームの損失を検出することができる。
【００１８】
レジスタ・アクセス要求を実行するブリッジ要素は、１つ又は複数の履歴キューを保持することができる。履歴キューの例として、先入れ先出し（ＦＩＦＯ）メモリを挙げることができる。履歴キューは、所与のデータ・フレームに関連するシーケンス番号と成功して完了した操作（例えば、ロード操作及びストア操作）の総数とを格納するエントリを含むことができる。制御ブリッジは、履歴キューのエントリを読んで、データ・フレームが損失したかどうかを判定することができる。例えば、制御ブリッジは、期待されるシーケンス番号を有するデータ・フレームが制御ブリッジにおいて受信されないときには、ブリッジ要素の履歴キューにアクセスすることができる。制御ブリッジは、履歴キューを読むことによって、そのシーケンス番号を有するデータ・フレームがブリッジ要素によって受信されたかどうかを判定することができる。データ・フレームが受信されなかった場合には、制御ブリッジは、データ・フレームを再送することができる。データ・フレームがブリッジ要素において受信されたことを履歴キューのエントリが示している場合には、制御ブリッジは、成功して完了した操作の総数を読むことができる。成功して完了した操作の総数を用いて、レジスタ・アクセス要求を処理する間に誤りに起きたかどうかを判定することができる。特定の実施形態によれば、ブリッジ要素は、複数の履歴キュー（例えば、ブリッジ要素を制御することができる制御ブリッジごとに１つの履歴キュー）を保持することができる。
【００１９】
制御ブリッジも履歴キューを保持することができ、それもまたＦＩＦＯとすることができる。履歴キューのエントリは、状態情報を含むことができる。例えば、制御ブリッジは、第１のレジスタ・アクセス要求に関連するエントリの状態情報を、レジスタ・アクセス要求を伴うデータ・フレームを送信する前に「未定」に設定することができる。状態情報は、誤りに関する詳細を反映するように更新することができる。他のレジスタ・アクセス要求に関連するエントリは、第１のレジスタ・アクセスが成功するまで「未定」と読むことができる。状態情報の例として、未定、完了、ロック衝突により未完了、及び誤り（例えば、アクセス時間切れ、短すぎるフレーム又は長すぎるフレーム）を挙げることができる。
【００２０】
具体的に図面を見ると、図２は、分散仮想ブリッジ２６０を用いてレジスタ・アクセス要求を含むデータ・フレームを転送するように構成された、高度に統合されたシステム２００の例示的な実施形態を示す。分散仮想ブリッジ２６０は、サーバ・コンピュータ２０６−２２５、シャシ２４６、２４８、２５０、２５２、及びラック２０２、２０４にまたがって、ブリッジ要素を切り替えるデータ・リンク層（即ち、レイヤ３）を提供することができる。ブリッジ要素は、フレーム・ベースの、イーサネットのようなインターフェースを提供することができる。インターフェースは、異なるラック２０２、２０４又はシャシ２４６、２４８、２５０、２５２のサーバ・コンピュータ２０６−２２５間（即ち、イースト‐ウェスト接続）において、冗長性及び遅延を低減した、損失のない２地点間のインオーダ・フレーム配信を容易にすることができる。
【００２１】
システム２００は、ノース‐サウス接続を可能にするエンド・オブ・ラック・スイッチ２５８及び入出力（Ｉ／Ｏ）サーバＩＴＥ２５９、２６１をさらに含む。Ｉ／ＯサーバＩＴＥ２５９、２６１は、ラック２０２、２０４内に収容されるサーバ・コンピュータ２０６−２２５のための、外部イーサネット・ネットワーク（又は他のネットワーク）へのアップリンク接続を可能にすることができる。
【００２２】
図２の矢印２６４は、（例えば、トップ・オブ・ラック・スイッチ又はシャシ・スイッチを用いない）システム２００の異なるラック２０２、２０４内に配置されたサーバ・コンピュータ間の直接イースト‐ウェスト接続及びデータ・フレームの流れを表す。矢印２６２は、ラック２０２の異なるシャシ２４６、２４８にまたがる直接イースト‐ウェスト接続を表す。
【００２３】
図２のシステム２００は、異なるラック又はシャシのサーバ・コンピュータ間の直接接続を可能にすることができる。比較的高レベルのシステム統合に適応するために、サーバ・コンピュータとの通信を行うファームウェアによって生成されるデータ・フレームは、レジスタ・アクセス要求を含むことができる。統一的な自動化されたレジスタ・アクセス処理は、レジスタ操作及び関連する処理時間を効率化することができる。
【００２４】
図３は、複数の分散ブリッジ要素及び１つ又は複数の制御ブリッジを用いてレジスタ・アクセス操作を行うように構成された、高度に統合されたシステム３００の特定の実施形態を示す。図３は、分散仮想ブリッジ３０８を用いてデータ・フレームを転送するように構成されたコンピュータ・システム３００の全体を示す。分散仮想ブリッジ３０８は、レジスタ・アクセス要求を有するデータ・フレームを分散ブリッジ要素及び他のターゲット・ノードに選択的に転送することができる。
【００２５】
分散仮想ブリッジ３０８は、図２の分散仮想ブリッジ２６０と同様のものとすることができる。システム３００は、第１のサーバ・コンピュータ３０２及び第２のサーバ・コンピュータ３０４を含み、これらは両方とも、分散仮想ブリッジ３０８を介してＩ／Ｏブレード・デバイス３０６に結合される。サーバ・コンピュータ３０２、３０４及びＩ／Ｏブレード・デバイス３０６は、別々のシャシ及びラック内に収容することができる。
【００２６】
分散仮想ブリッジ３０８は、複数のアダプタ３１０、３１２、３１４、３１６、３１８、３２０、３２２、及び３２４に結合することができる。アダプタ３１０、３１２、３１４、３１６、３１８、３２０、３２２、及び３２４は、サーバ・コンピュータ３０２、３０４内に配置することができ、又はサーバ・コンピュータ３０２、３０４に結合することができる。分散仮想ブリッジ３０８は、複数のアクセス・ポイント、即ちブリッジ要素３２６、３２８、３３０、及び３３２−３４０を用いて、サーバ・コンピュータ３０２、３０４に結合することができる。例えば、ブリッジ要素３２６、３２８、３３０、及び３３２を含むマイクロチップを、アダプタ３１０を含むサーバ・コンピュータ３０２のポートにケーブル接続するか、そうでなければ結合することができる。本明細書において説明されるように、分散仮想ブリッジ３０８は、シャシ・スイッチ及びトップ・オブ・ラック・スイッチを、イーサネット・ネットワークと同様に機能するフレーム・ベースのネットワーク・ファブリックで置き換えることができる。
【００２７】
ブリッジ要素３２６、３２８、３３０、及び３３２に結合された１つ又は複数のトランスポート層モジュール３８２、３８４、３８６、及び３８８は、１つ又は複数の統合スイッチ・ルータ３４２への、フレーム・ベースのイーサネットのようなインターフェースを提供することができる。トランスポート層モジュール３８２は、パケット情報をローカル・ラック相互接続３９０へのリンク全体にわたって平等に分配できるようにするために、データ・フレームの伝送を分解するように構成することができる。データ・フレームは、トランスポート層モジュール３８２を出発するときに、シリアライズしないようにすることができる。受信側のトランスポート層モジュール３２３は、データ・フレームをシリアライズして、信頼できるインオーダ配信を達成することができる。受信側のトランスポート層モジュール３２３が、データ・フレーム情報が失われたと判定した場合には、トランスポート層モジュール３２３は、失われたデータを回復する処理を開始することができる。中継処理はハードウェアで遂行することができ、ハードウェアは、ソフトウェア・アプリケーションより広い帯域幅及び高速な処理を提供することができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８、統合スイッチ・ルータ３４２、並びにローカル・ラック相互接続ネットワーク３９０は、サーバ・コンピュータ３０２、３０４とＩ／Ｏブレード・デバイス３０６との間における基礎をなす無損失の２地点間通信ネットワーク（即ち、統合スイッチ・ルータ・ネットワーク）を含むように結合することができる。
【００２８】
ブリッジ要素３２６、３２８、３３０、及び３３２は、分散仮想ブリッジ３０８内において、データ・リンク層（即ち、レイヤ２）ブリッジ転送器として機能することができる。特定の実施形態においては、ブリッジ要素３２６、３２８、３３０、及び３３２は、スイッチ、即ちルータ・デバイスを含むことができる。ブリッジ要素３２６、３２８、３３０、及び３３２は、分散仮想ブリッジ３０８全体にデータ・フレームを転送するのに用いられる、学習済みの（例えば、受信及び格納された）キャッシュされたアドレス・データを含むことができる。学習済みアドレス・データは、データ・フレームに関連する、宛先アドレス及び送信元アドレスの一方又は両方に対応することができる。
【００２９】
ブリッジ要素３２６が、受信されたデータ・フレームの送信元アドレス又は宛先アドレスに関するアドレス・データを含まないときには、ブリッジ要素３２６は、制御ブリッジ３４８にアドレス・データを問い合わせることができる。制御ブリッジ３４８は、格納されたアドレス・データを含む大域転送テーブル３１１を含むことができる。格納されたアドレス・データは、ブリッジ要素３２６、３２８、３３０、及び３３２によって、継続的に更新することができる。例えば、ブリッジ要素３２６は、更新された又は新規のＭＡＣアドレスを学習したことに応答して、更新メッセージを制御ブリッジ３４８に送信することができる。続いて、大域転送テーブル３１１内の対応するＭＡＣアドレスを更新することができる。
【００３０】
反対に、大域転送テーブル３１１のアドレス・データを用いて、ブリッジ要素３２６、３２８、３３０、及び３３２を更新することができる。例えば、制御ブリッジ３４８は、ブリッジ要素３２６からの問い合わせに、要求されたアドレス・データで応答することができる。ブリッジ要素３２６は、受信したアドレス・データを将来の使用のためにキャッシュすることができる。
【００３１】
第１のサーバ・コンピュータ３０２は、図２に示されるサーバ・コンピュータ２０２などのブレード・サーバ・コンピュータを含むことができる。第１のサーバ・コンピュータ３０２は、１つ又は複数の仮想マシン（ＶＭ）３５０、３５２、３５４、３５６、３５８、及び３６０を含むことができる。仮想マシンは、コンピュータのソフトウェア実装を含むことができ、物理的機械と同様の方法でプログラムを実行することができる。
【００３２】
図３は、仮想マシン３５０及び仮想マシン３５２の両方に結合された例示的なハイパーバイザ３６２を示す。ハイパーバイザ３６２は、複数のオペレーティング・システムが第１のサーバ・コンピュータ３０２上で同時に走ることができるようにするプラットフォーム仮想化ソフトウェアを含むことができる。ハイパーバイザ３６２は、外部のネットワークを通過することなく仮想マシン３５０、３５２間の直接通信を可能にするハイパーバイザ仮想ブリッジ３６４を含むことができる。１つの実施形態においては、ハイパーバイザ仮想ブリッジ３６４は、アドレス情報を制御ブリッジ３４８に登録する。
【００３３】
サーバ・コンピュータ３０２は、メモリ３０５に結合された少なくとも１つのプロセッサ３０３を含むことができる。プロセッサ３０３は、１つ又は複数のプロセッサ（例えば、マイクロプロセッサ）を表すことができ、メモリ３０５は、サーバ・コンピュータ３０２のメイン・ストレージを含むランダム・アクセス・メモリ（ＲＡＭ）の他に、補助的なレベルのメモリ、例えばキャッシュ・メモリ、不揮発性又はバックアップ・メモリ（例えば、プログラム可能メモリ又はフラッシュ・メモリ）、読出し専用メモリ等を表すことができる。さらに、メモリ３０５は、サーバ・コンピュータ３０２内に、又は分散仮想ブリッジ３０８を介してサーバ・コンピュータ３０２に結合された別のサーバ・コンピュータ３０４上に、物理的に配置されたメモリ・ストレージを含むものと考えることができる。
【００３４】
第１のサーバ・コンピュータ３０２は、オペレーティング・システム（ＯＳ）の制御下で動作することができ、仮想マシン３５０、３５２、３５４、３５６、３５８、及び３６０などといった、種々のコンピュータ・ソフトウェア・アプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、及びデータ構造を実行するか、そうでなければこれらに依存することができる。さらに、種々のアプリケーション、コンポーネント、プログラム、オブジェクト、モジュール等は、（例えば、コンピューティング処理を複数のサーバ・コンピュータに割り当てることができる分散コンピューティング環境において）サーバ・コンピュータ３０２に結合された別のデバイス内の１つ又は複数のプロセッサ上で実行することもできる。
【００３５】
第１のサーバ・コンピュータ３０２は、集中型ネットワーク・アダプタなどのアダプタ３１０、３１２、３１４、及び３１６を含むことができる。集中型ネットワーク・アダプタは、コンバージド・エンハンスド・イーサネット（ＣＥＥ）をサポートするペリフェラル・コンポーネント・インターコネクト・エクスプレス（ＰＣＥｅ）アダプタなどのシングル・ルートＩ／Ｏ仮想化（ＳＲ−ＩＯＶ）アダプタを含むことができる。アダプタ３１０、３１２、３１４、及び３１６は、ファイバ・チャネル・オーバ・イーサネット（ＦＣｏＥ）プロトコルを実装するのに用いることができる。各々のアダプタ３１０、３１２、３１４、及び３１６は、仮想マシン３５０、３５２、３５４、３５６、３５８、及び３６０の１つ又は複数に結合することができる。アダプタ３１０、３１２、３１４、及び３１６は、仮想マシン３５０、３５２、３５４、３５６、３５８、及び３６０の共有アクセスを容易にすることができる。図３において、アダプタ３１０、３１２、３１４、及び３１６はサーバ・コンピュータ３０２内に含まれるものとして示されているが、別の実施形態のアダプタは、サーバ・コンピュータ３０２、３０４とは分離された物理的に別個のデバイスを含むものとすることができる。
【００３６】
各々のアダプタ３１０、３１２、３１４、及び３１６は、集中型アダプタ仮想ブリッジ３６６、３６８、３７０、及び３７２を含むことができる。集中型アダプタ仮想ブリッジ３６６、３６８、３７０、及び３７２は、仮想マシン３５０、３５２、３５４、３５６、３５８、及び３６０によるアクセスを調整することによって、アダプタ３１０、３１２、３１４、及び３１６の共有を容易にすることができる。各々の集中型アダプタ仮想ブリッジ３６６、３６８、３７０、及び３７２は、そのドメイン内に含まれるデータ・フローを認識することができる。認識されたドメイン・アドレスは、特定の集中型アダプタ仮想ブリッジ３６６、３６８、３７０、及び３７２のドメインの外側で処理又は格納することなく、直接的にルーティングすることができる。各々のアダプタ３１０、３１２、３１４、及び３１６は、ブリッジ要素３２６、３２８、３３０、及び３３２の１つに結合する１つ又は複数のＣＥＥ伝送ポートを含むことができる。別の実施形態においては、ブリッジ要素は、アダプタと同じ所に配置することができ、アダプタとブリッジ要素との結合は、イーサネット接続ではないものとすることができる。
【００３７】
ブリッジ要素３２６、３２８、３３０、及び３３２は、分散仮想ブリッジ３０８全体にわたってデータ・フレームを転送するように構成することができる。従って、ブリッジ要素３２６、３２８、３３０、及び３３２は、イーサネットと統合スイッチ・ルータ３４２との間を中継することによって、分散仮想ブリッジ３０８のためのアクセス・ポイントとして機能することができる。ブリッジ要素３２６、３２８、３３０、及び３３２は、バッファを含まないものとすることができ、分散仮想ブリッジ３０８の境界においてＣＥＥをサポートすることができる。別の実施形態においては、ブリッジ要素３２６、３２８、３３０、及び３３２は、バッファを含むことができる。
【００３８】
分散仮想ブリッジ３０８の各々のブリッジ要素３２６、３２８、３３０、及び３３２は、転送キャッシュ３７４、３７６、３７８、及び３８０を含むことができる。転送キャッシュ３７４、３７６、３７８、及び３８０は、ブリッジ要素３２６、３２８、３３０、及び３３２によって受信されたデータ・フレームを転送するのに用いられるアドレス・データを格納するルックアップ・テーブルを含むことができる。例えば、ブリッジ要素３２６は、受信されたデータ・フレームに関連するアドレス・データを、転送キャッシュ３７４内に格納されたアドレス・データと比較することができる。
【００３９】
例としてのアドレス・データは、データ・フレームのヘッダ・データ内に含まれるルーティング・キーなどのルーティング情報を含むことができる。ルーティング・キーは、ＭＡＣアドレスのほかに、仮想ローカル・エリア・ネットワーク（ＶＬＡＮ）タグ及び論理ネットワーク識別子のうちの少なくとも一方を含むことができる。ＭＡＣアドレスは、ファイバ・チャネル転送器（ＦＣＦ）３１３によって、管理者又はコンピューティング・システムによって設定されたものとして、生成し割り当てることができる。ファイバ・チャネル転送器３１３即ちＦＣｏＥスイッチは、ＦＣｏＥイニシエータとファイバ・チャネル・ファブリックとの間の接続を容易にすることができる。例示すると、第１の仮想マシン３５８から送信され、第２の仮想マシン３６３に向けられたＦＣｏＥデータ・フレームは、ＦＣｏＥ標準に従って、ファイバ・チャネル転送器３１３を宛先とすることができる。標準的なルーティング手続に従って、ファイバ・チャネル転送器３１３は、ＦＣｏＥデータ・フレームを受信し、仮想マシン３６３に転送するために宛先を変えることができる。
【００４０】
ファイバ・チャネル転送器３１３がネットワーク接続されたデバイスとの通信を確立するときに、ファイバ・チャネル転送器３１３のメディア・アクセス・コントロール（ＭＡＣ）アドレスは、第１のサーバ・コンピュータによって、発見フェーズの際に学習されるようにすることができる。発見フェーズの際に、第２のサーバ・コンピュータ３０４は、第１のサーバ・コンピュータ３０２からの同報の問い合わせに応答することができる。ファイバ・チャネル転送器３１３は、問い合わせへの応答から第２のサーバ・コンピュータ３０４を発見することができる。発見フェーズの後に、ログイン・フェーズを開始することができる。サーバ・コンピュータ３０４のＭＡＣアドレスは、ファイバ・チャネル転送器３１３によって再割り当てされる。再割り当てされたＭＡＣアドレスは、サーバ・コンピュータ３０２、３０４間のその後のルーティング及び通信に用いることができる。ファイバ・チャネル転送器３１３は、サーバ・コンピュータ３０２、３０４に割り当てられたＭＡＣアドレスの格納を容易にすることができる。
【００４１】
ＶＬＡＮタグは、割り当てられたＶＬＡＮを示すものとすることができ、それを用いて、トラフィックを分離して１つより多いアップリンクを可能にすることができる。アップリンク上に複数のＶＬＡＮが存在することもある。従来、各々のＶＬＡＮは、１つのアップリンク・ポートのみを用いることができる。即ち、所与の時間において１つの物理的アップリンク・ポートのみを用いて、特定のＶＬＡＮに関連するデータ・フレームを転送することができる。論理ネットワークの使用によって、ＶＬＡＮは、トラフィックの分離を維持しながら、複数の物理ポートを用いてトラフィックを転送することができる。より広い帯域幅を持つ１つのアップリンクとしての機能を果たすように、リンク・アグリゲーションを用いて幾つかの物理リンクを束ねることもできる。
【００４２】
論理ネットワークは、分散仮想ブリッジ３０８の論理的に特定されるネットワーク部分を含むことができる。単一のブリッジ要素内に複数の論理ネットワークを含むことができる。このようにして、論理ネットワークは、トラフィック分離の追加的なレイヤを提供することができる。そのように構成されたときには、論理ネットワークは、異なる顧客が同じＶＬＡＮタグを用いることを可能にすることができる。各々の顧客のＶＬＡＮは、異なる論理ネットワークのおかげで、分離を維持することができる。
【００４３】
分散仮想ブリッジ３０８の転送キャッシュ３７４、３７６、３７８、及び３８０は、制御ブリッジ３４８の大域転送テーブル３１１と同様の形式を有することができる。転送キャッシュ３７４、３７６、３７８、及び３８０は、大域転送テーブル３１１より少ないメモリ容量を有するものであってもよい。転送キャッシュ３７４、３７６、３７８、及び３８０は、さらに、ブリッジ要素３２６、３２８、３３０、及び３３２を通って流れるデータ・フレームから学習されたアドレス・データで更新することができる。
【００４４】
アドレス・データは、大域転送テーブル３１１から受信されたアドレス・データでさらに更新することができる。ブリッジ要素３２６、３２８、３３０、及び３３２の転送キャッシュ３７４、３７６、３７８、及び３８０のうちの１つ又は複数内で更新された無効な又は変更されたアドレス・データは、制御ブリッジ３４８の大域転送テーブル３１１に通信することができる。例えば、ブリッジ要素３２６は、データを分散仮想ブリッジ３０８との間で送受信するように構成された新たに追加されたデバイスの新たなＭＡＣアドレスを、学習することができる。
【００４５】
ブリッジ要素３２６は、メモリ内に格納されたリストを検査することによって、受信されたデータ・フレーム内に含まれる送信元ＭＡＣアドレスがポートにおいて許可されていることを検証することができる。ブリッジ要素３２６は、大域転送テーブル３１１を検証されたＭＡＣアドレスで更新するために、登録メッセージを制御ブリッジ３４８に送信することができる。ブリッジ要素３２６は、さらに、転送キャッシュ３７４内にＭＡＣアドレスを格納することができる。別の例においては、ブリッジ要素３２６は、使用頻度の低いＭＡＣアドレスを識別することができる。この使用頻度の低いＭＡＣアドレスを転送キャッシュ３７４から取り除くことによって、他のＭＡＣアドレスのために利用可能なストレージの空きを作ることができる。ブリッジ要素３２６は、更新メッセージを制御ブリッジに送信して、ＭＡＣアドレスを大域転送テーブル３１１から取り除かせることができる。
【００４６】
大域転送テーブル３１１内に格納されたアドレス・データは、分散仮想ブリッジ３０８の１つ又は複数の転送キャッシュ３７４、３７６、３７８、及び３８０に通信することができる。例えば、ブリッジ要素３２６は、転送キャッシュ３７４内に格納されていない宛先ＭＡＣアドレスを含むデータ・フレームを受信することができる。データ・フレームを転送するための情報を入手するために、ブリッジ要素３２６は、制御ブリッジ３４８にアクセスするように構成されたブリッジ要素３３９に問い合わせを送信することができる。ブリッジ要素３３９は、宛先ＭＡＣアドレスに関連するアドレスを求めて大域転送テーブル３１１を検索することができる。アドレス・データが見付かった場合には、ブリッジ要素３３９は、ＭＡＣアドレスを、分散仮想ブリッジ３０８を通して、問い合わせ元のブリッジ要素３２６に転送することができる。ブリッジ要素３２６は、ＭＡＣアドレスを、アドレス・データとして、転送キャッシュ３７４内に格納することができる。大域転送テーブル３１１と同様に、分散仮想ブリッジ３０８の転送キャッシュ３７４、３７６、３７８、及び３８０内に含まれるアドレス・データは、内部アドレス情報と、システム３００の外部のアドレスとの両方を含むことができる。
【００４７】
ブリッジ要素３２６、３２８、３３０、及び３３２の各々は、トランスポート層モジュール３８２、３８４、３８６、及び３８８のうちの１つ又は複数に接続することができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８は、統合スイッチ・ルータ３４２への取り付けのために用いられるバッファを含むことができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８は、さらに、統合スイッチ・ルータ３４２への、フレーム・ベースのイーサネットのようなインターフェースを提供することができる。
【００４８】
トランスポート層モジュール３８２、３８４、３８６、及び３８８はそれぞれ、統合スイッチ・ルータ３４２を越えてフレームを伝送するのに用いられる共有バッファを含むことができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８の追加のバッファを用いて、統合スイッチ・ルータ３４２からデータ・フレームを受信することができる。バッファは、異なる仮想レーンに分割することができる。仮想レーンは、ブリッジ要素とトランスポート層モジュールとの間に流れるデータ・フレーム・トラフィックのための論理的に分離された経路を含むことができる。例えば、ブリッジ要素３２６とトランスポート層モジュール３８２との間に４つの仮想レーンを存在させることができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８は、欠陥のあるマイクロチップ及び送信元と宛先との間のリンクから回復する論理を含むことができる。トランスポート層モジュール３８２、３８４、３８６、及び３８８は、ローカル・ラック相互接続ネットワーク３９０及びコンピュータ・システム３００を通る各々のデータ・フレームの経路にかかわらず、特定の仮想レーン内におけるパケットの厳格な順序を維持する。
【００４９】
統合スイッチ・ルータ３４２は、トランスポート層モジュール３８２、３８４、３８６、及び３８８と通信することができ、ローカル・ラック相互接続ネットワーク３９０との間のルーティング及びパケット配信を容易にすることができる。ローカル・ラック相互接続ネットワーク３９０は、同じシャシ及びラック内に配置されたブリッジ要素３２６、３２８、３３０、及び３３２へのリンクの他に、異なるシャシ及びラックにおけるブリッジ要素３３４−３４０へのリンクを含むことができる。ローカル・ラック相互接続ネットワーク３９０は、分散仮想ブリッジ３０８のブリッジ要素３２６、３２８、３３０、３３２、及び３３４−３４０間における、フレーム損失がなくインオーダ・フレーム配信を有する２地点間接続、即ちパイプを含むことができる。
【００５０】
第２のサーバ・コンピュータ３０４は、第１のサーバ・コンピュータ３０２と同様のサーバ・コンピュータを含むことができ、図３のサーバ・コンピュータ３０２と同様のものとすることができる。このように、第２のサーバ・コンピュータ３０４は、第１のサーバ・コンピュータ３０２とは異なるシャシ及びラック内に配置することができる。第１のサーバ・コンピュータ３０２と同様に、第２のサーバ・コンピュータ３０４は、メモリ３９７とオペレーティング・システム３９５とに結合されたプロセッサ３９９を含むことができる。プロセッサ３９９は、制御ブリッジ（ＣＢ）３９４と、大域転送テーブル（ＧＦＴ）３９６と、ファイバ・チャネル転送器（ＦＣＦ）３９８とを含むことができる。第２のサーバ・コンピュータ３０４は、仮想マシン３５５、３５７、３５９、３６１、３６３、及び３６５をさらに含むことができる。
【００５１】
仮想マシン３５７、３５９にハイパーバイザ３６７を結合することができる。ハイパーバイザ３６７は、仮想マシン３５７、３５９間の直接通信を可能にするハイパーバイザ仮想ブリッジ３７１を含むことができる。仮想マシン３６１、３６３に結合されたハイパーバイザ３６９のハイパーバイザ仮想ブリッジ３７３は、仮想マシン３６１、３６３間の直接通信を容易にすることができる。例えば、ハイパーバイザ仮想ブリッジ３７１、３７３は、アドレス・データを制御ブリッジ３４８に登録することができる。
【００５２】
第２のサーバ・コンピュータ３０４は、集中型ＣＥＥネットワーク・アダプタなどといった１つ又は複数のアダプタ３１８、３２０、３２２、及び３２４も含むことができる。各々のアダプタ３１８、３２０、３２２、及び３２４は、仮想マシン３５５、３５７、３５９、３６１、３６３、及び３６５の１つ又は複数に結合することができる。アダプタ３１８、３２０、３２２、及び３２４はそれぞれ、集中型アダプタ仮想ブリッジ３７５、３７７、３７９、及び３８１を含むことができる。集中型アダプタ仮想ブリッジ３７５、３７７、３７９、及び３８１は、仮想マシンのアクセスを調整することによって、アダプタ３１８、３２０、３２２、及び３２４の共有を容易にすることができる。アダプタ３１８、３２０、３２２、及び３２４はそれぞれ、分散仮想ブリッジ３０８のブリッジ要素３３４、３３６、３３８、及び３４０のうちの１つ又は複数に結合することができる。各々のアダプタ３１８、３２０、３２２、及び３２４は、ブリッジ要素３３４、３３６、３３８、又は３４０のうちの１つに結合される１つ又は複数のＣＥＥ伝送ポートを含むことができる。
【００５３】
各々のブリッジ要素３３４、３３６、３３８、及び３４０は、ブリッジ要素３３４、３３６、３３８、及び３４０によって受信されるデータ・フレームを転送するのに用いられるアドレス・データを含む転送キャッシュ３８３、３８５、３８７、及び３８９を含むことができる。ブリッジ要素３３４、３３６、３３８、及び３４０はそれぞれ、１つ又は複数のトランスポート層モジュール３１５、３１７、３１９、及び３２１に接続することができる。トランスポート層モジュール３１５、３１７、３１９、及び３２１は、統合スイッチ・ルータ３４６への取り付けのために用いられるバッファを含むことができる。トランスポート層モジュール３１５、３１７、３１９、及び３２１は、さらに、統合スイッチ・ルータ３４６へのフレーム・ベースのイーサネットのようなインターフェースを提供することができ、パケットの順序を維持することができる。図３において、ローカル・ラック相互接続ネットワーク３９０の上方に位置するように、かつサーバ・コンピュータ３０２、３０４と関連するように示される、分散仮想ブリッジ３０８の部分は、ノース部分と呼ぶことができる。ブリッジ要素３２６、３２８、３３０、３３２、３３４、３３６、３３８、及び３４０は、アダプタ３１０、３１２、３１４、３１６、３１８、３２０、３２２、及び３２４に結合することができる。
【００５４】
Ｉ／Ｏブレード・デバイス３０６は、図２のＩ／Ｏサーバ・コンピュータ２５９とすることができる。このように、Ｉ／Ｏブレード・デバイス３０６は、トランスポート層モジュール３２３、３２５、３２７、３２９、及び３３１に結合された統合スイッチ・ルータ３０１を介して外部イーサネット・ネットワーク３９２へのアップリンク接続を可能にすることができる。
【００５５】
トランスポート層モジュール３２３、３２５、３２７、３２９、及び３３１はそれぞれ、ブリッジ要素３３３、３３５、３３７、及び３３９に結合することができる。ブリッジ要素３３３、３３５、３３７、及び３３９はそれぞれ、転送キャッシュ３４１、３４３、３４５、及び３４７を含むことができる。ブリッジ要素３３３、３３５、３３７、及び３３９は、イーサネット３９２へのアップリンクに結合することができるので、Ｉ／Ｏブレード・デバイス３０６は、分散仮想ブリッジ３０８のサウス部分内に含まれるものとして分類することができる。
【００５６】
Ｉ／Ｏブレード・デバイス３０６は、メモリ３０９と、オペレーティング・システム３９１と、制御ブリッジ３４８を含むプロセッサ３５３とを含むことができる。ブリッジ要素３３９は、イーサネット・リンク接続３５１を介してプロセッサ３５３に結合することができる。トランスポート層モジュール３３１は、ＰＣＩｅリンク接続３４９を介してプロセッサ３５３及び制御ブリッジ３４８に結合されるＰＣＩｅバス３４４に結合することができる。ＰＣＩｅバス３４４は、ＰＣＩｅスロット３９３にも結合することができる。
【００５７】
制御ブリッジ３４８は、ブリッジ要素３２６、３２８、３３０、及び３３２−３４０、並びにコンピュータ・システム３００の他の制御ブリッジ（図示せず）と、通信することができる。制御ブリッジ３４８は、ブリッジ要素３２６、３２８、３３０、及び３３２−３４０を管理する、プロセッサ３５３上で実行されるファームウェアを含むことができる。例えば、制御ブリッジ３４８は、ブリッジ要素３２６、３２８、３３０、及び３３２−３４０間のワークロードを分割し、同期手続及びフェイルオーバ動作を行うように、構成することができる。
【００５８】
制御ブリッジ３４８、３９４は、ブリッジ要素３２６、３２８、３３０、３３２−３４０とインターフェースで接続され、これらをプログラムするように、構成することができる。より具体的には、制御ブリッジ３２０は、データ・フレームを生成してブリッジ要素３２６、３２８、３３０、３３２−３４０のうちの１つ又は複数に送信するように構成することができる。データ・フレームは、ブリッジ要素３２６、３２８、３３０、３３２−３４０がレジスタにアクセスするのに用いるレジスタ・アクセス要求を含むことができる。
【００５９】
制御ブリッジ３４８は、ファイバ・チャネル転送器３１３を含むことができる。ＦＣｏＥは、イーサネット・ネットワーク上でファイバ・チャネルのペイロードを搬送する能力をもたらす。ファイバ・チャネル転送器３１３は、ファイバ・チャネル初期化プロトコルを実行して、イーサネット・クラウドに接続されたＦＣｏＥ対応のエンティティを発見し、初期化することができる。ファイバ・チャネル転送器３１３は、ファイバ・チャネル・データ・フレーム（例えば、ＦＣｏＥ形式のデータ・フレーム）をカプセル化及び脱カプセル化するファームウェアをさらに含むことができる。少なくとも１つの実施形態においては、ファイバ・チャネル転送器３１３は、イーサネット・プロトコルとファイバ・チャネル・プロトコルとの間で翻訳を行うことができる。
【００６０】
制御ブリッジ３４８は、大域転送テーブル３１１をさらに含むことができる。大域転送テーブル３１１は、ブリッジ要素３２６、３２８、３３０、及び３３２−３４０、並びに幾つかの場合にはハイパーバイザ３６２、３６７、及び３６９との、通信及び協調によって登録及び保持されるアドレス・データ（例えば、ＭＡＣアドレス）を含むことができる。
【００６１】
１つの例においては、大域転送テーブル３１１は、ブリッジ要素３２６によって学習されたＭＡＣアドレスを保持することができる。ブリッジ要素３２６は、アドレス・データを制御ブリッジ３４８に登録することができる。制御ブリッジ３４８は、アドレス・データを大域転送テーブル３１１に追加することによって、大域転送テーブル３１１を更新することができる。同様に、ブリッジ要素３２６は、更新メッセージを制御ブリッジ３４８に送信することによって、制御ブリッジ３４８に大域転送テーブル３１１を更新させることができる。更新メッセージは、制御ブリッジ３４８に、ブリッジ要素３２６によってエージアウトされたＭＡＣアドレスを削除させることができる。ブリッジ要素３２６が、アドレスがもはや有効ではないことを検出したときには、ＭＡＣアドレスをさらに削除することができる。
【００６２】
別の例においては、ハイパーバイザ仮想ブリッジ３６４は、ＭＡＣアドレス又は他のアドレス・データを制御ブリッジ３４８に登録することができる。大域転送テーブル３１１は、システム３００内に含まれるアドレスの他に、システム３００の外部にあるアドレスに関連するアドレス・データを含むことができる。
【００６３】
従って、図３は、損失のない２地点間のインオーダ・データ・フレーム配信用に構成された分散仮想ブリッジ３０８を含むシステム３００の実施形態を示す。システム３００は、ファイバ・チャネル・オーバ・イーサネット（ＦＣｏＥ）をサポートすることができ、数百以上のサーバ・コンピュータを含むように拡張可能なものとすることができる。制御ブリッジ３４８、３９４は、ブリッジ要素３２６、３２８、３３０、３３２−３４０及びアダプタ３６６、３６８、３７０、３７３、３７５、３７７、３７９、３８１とインターフェースで接続され、これらのレジスタをプログラムして、管理者の作業負荷を軽減するように構成することができる。自動化されたレジスタ・アクセスは、潜在的ボトルネックを緩和し、効率的な処理を容易にすることができる。
【００６４】
図４は、複数の分散ブリッジ要素４０２、４０４、４０６、４０８及び１つ又は複数の制御ブリッジ４３８を用いてレジスタ・アクセス操作を行うように構成されたシステム４００の別の特定の実施形態を示す。制御ブリッジ４３８は、イーサネットＮＩＣによって直接的に、又は図３のローカル・ラック相互接続ネットワーク３９０などのローカル・ラック相互接続を通して間接的に、接続することができる。メイン・レジスタ・リング４４６は、レジスタ・リング・プロトコルを用いてマイクロチップ上のノードを接続する通信経路を含むことができる。例えば、メイン・レジスタ・リング４４６は、ブリッジ要素４０２、４０４、４０６、４０８、パーティション４１０、統合スイッチ・ルータ４１２、及びトランスポート層モジュール４１４に結合することができる。
【００６５】
ブリッジ要素４０２、４０４、４０６、４０８は、図３のブリッジ要素３２６、３２８、３３０、及び３３２−３４０と同様の低遅延で高速なスイッチを含むことができる。パーティション４１０は、レジスタ４３１を含む定められたストレージ領域を含むことができる。統合スイッチ・ルータ４１２は、レジスタ４２３を含むことができ、図３の統合スイッチ・ルータ３４２、３４６と同様のものとすることができる。トランスポート層モジュール４１４は、レジスタ４３６を含むことができ、図３のトランスポート層モジュール３１５、３１７、３１９、３２１、３２３、３２５、３２７、３２９、３３１、３８２、３８４、３８６、３８８と同様のものとすることができる。
【００６６】
メイン・レジスタ・リング４４６上において、幾つかのノードは、レジスタ・アクセス要求に関してイニシエータ及びターゲットの両方となることができる。例えば、ブリッジ要素４０２、４０４、４０６、４０８は、レジスタ・アクセス要求の開始及び受信の両方を行うように構成することができる。パーティション４１０、統合スイッチ・ルータ４１２、及びトランスポート層モジュール４１４などの他のノードは、レジスタ・アクセス要求の受信のみを行うことができる。
【００６７】
ブリッジ要素４０４は、別のブリッジ要素４０２、４０６、４０８に対してレジスタ・アクセス要求を行うときに、メイン・レジスタ・リング４４６上のトークンを待つことがある。トークンを受信すると、ブリッジ要素４０４は、レジスタ・アクセス要求をメイン・レジスタ・リング４４６上に置く。レジスタ・アクセス要求の宛先である、受信側、即ちターゲットとなるブリッジ要素４０６は、レジスタ・アクセス要求を実行し、応答をブリッジ要素４０４に通信する。次いで、ブリッジ要素４０４は、メイン・レジスタ・リング４４６にトークンを返す。複数の制御ブリッジからのレジスタ・アクセス操作が衝突することを防ぐために、制御ブリッジ４３８は、ブリッジ要素制御ポートとなるようにブリッジ要素４０６を選択することができる。ブリッジ要素制御ポートは、ブリッジ要素レジスタ４０３、４１３、４１６、４３０以外のレジスタ４２３、４３１、４３６にアクセスするときに用いることができる。
【００６８】
各々のブリッジ要素４０２、４０４、４０６、４０８は、制御ブリッジ４３８による並列アクセスを容易にするために、自己のローカル・レジスタ４０３、４１３、４１６、４３０に直接的にアクセスすることができる。アクセスは、メイン・レジスタ・リング４４６からトークンを受信することなく行うことができる。ブリッジ要素４０４は、レジスタ・アクセス要求が完了するまで、メイン・レジスタ・リング４４６からの操作を遅らせることができる。
【００６９】
ブリッジ要素４０２は、制御ブリッジ４３８に結合されたローカル・ブリッジ要素を含むことができる。ブリッジ要素４０２は、図３のブリッジ要素３３９と同様のものとすることができる。ブリッジ要素４０２は、レジスタ４１６、履歴キュー４１８、及び遠隔制御モジュール４２４を含むことができる。履歴キュー４１８は、シーケンス番号４２０を含むＦＩＦＯエントリを含むことができる。シーケンス番号４２０は、レジスタ・アクセス要求を有するデータ・フレームに対応することができる。操作総数４２２は、データ・フレームに関連する成功して完了したレジスタ・アクセス要求の数に対応することができる。１つの履歴キュー４１８のみがブリッジ要素４０２に含まれているように示されるが、別のブリッジ要素の実施形態は、複数の履歴キュー（例えば、ブリッジ要素を制御することができる制御ブリッジごとに１つの履歴キュー）を含むことができる。遠隔制御モジュール４２４は、レジスタ・アクセス要求を実行し、シーケンス番号４２０及び操作総数４２２を更新するように構成することができる。遠隔制御モジュール４２４は、要求の状態情報を用いてデータ・フレームのオペランド・フィールドを更新し、システム４００全体にわたってデータ・フレームをルーティングするように構成することができる。
【００７０】
制御ブリッジ４３８は、レジスタ・アクセス要求を含むデータ・フレームを用いてブリッジ要素４０２、４０４、４０６、４０８と通信するために、ブリッジ要素４０２に、イーサネットＮＩＣを介して直接的に結合するか又はローカル・ラック相互接続を介して遠隔的に結合することができる。制御ブリッジ４３８は、セマフォ機構を用いて、他の制御ブリッジ（図示せず）がレジスタ４０３、４１３、４１６、４２３、４３０、４３１、４３６に同時にアクセスするのを防ぐことができる。制御ブリッジ４３８は、シーケンス番号４４２及び操作総数４４４を含むＦＩＦＯ履歴キュー４４０を含むことができる。シーケンス番号４４２は、それぞれのデータ・フレーム及びそれらに関連するレジスタ・アクセス要求に関連付けることができる。シーケンス番号４４２は、一意的なものとすることができる。レジスタ・アクセス要求の状態を判定するために、操作総数４４４を、ブリッジ要素４０２、４０４、４０６、４０８に格納された操作総数４０９、４１９、４２２、４２８と比較することができる。
【００７１】
制御ブリッジ４３８は、レジスタ・アクセス要求に関連する状態情報４５０をさらに含むことができる。例えば、制御ブリッジ４３８は、状態情報４５０にアクセスして、第１のレジスタ・アクセス要求に関連するエントリを「未定」に設定することができる。状態情報４５０は、レジスタ・アクセス要求と共にデータ・フレームを送信する前に設定することができる。誤りが検出されたときには、状態情報４５０を、検出された誤りの詳細を反映するように更新することができる。他のレジスタ・アクセス要求に関連するエントリは、第１のレジスタ・アクセス要求が成功して完了するまで、未定とすることができる。状態情報の例として、未定、完了、ロック衝突により未完了、及び誤り（例えば、アクセス時間切れ、短すぎるフレーム及び長すぎるフレーム）を含むことができる。
【００７２】
制御ブリッジ４３８は、４バイトのシーケンス番号をデータ・フレームのフィールド内に挿入することができる。シーケンス番号フィールドは、シーケンス番号フィールドを用いてシーケンス番号４０７を更新する受信側のブリッジ要素４０４によって変更されないようにすることができる。ブリッジ要素４０４は、データ・フレーム及び関連するシーケンス番号を制御ブリッジ４３８に返すことができる。制御ブリッジ４３８は、返されたデータ・フレームのシーケンス番号を格納済みのシーケンス番号４２２と照合して、配信を確認するか又はデータ・フレームの損失を検出することができる。
【００７３】
制御ブリッジ４３８は、期待されるシーケンス番号を有するデータ・フレームがブリッジ要素４０６から制御ブリッジ４３８において受信されないときには、履歴キュー４１５にアクセスすることができる。制御ブリッジ４３８は、履歴キュー４１５を読むことによって、そのシーケンス番号を有するデータ・フレームがブリッジ要素４０６によって受信されたかどうかを判定することができる。データ・フレームが受信されなかった場合には、制御ブリッジ４３８は、データ・フレームをブリッジ要素４０６に再送することができる。データ・フレームがブリッジ要素４０６において受信されたことを履歴キュー４１５のエントリが示している場合には、制御ブリッジ４３８は、操作総数４１９、即ち成功して完了した操作の数を読むことができる。操作総数４１９を用いて、ブリッジ要素４０６においてデータ・フレームのレジスタ・アクセス要求を処理する間に誤りが起きたかどうかを判定することができる。
【００７４】
成功して完了した操作は、完了したセマフォ・アクセスを含むことができる。１組の連続的なレジスタ・アクセスにおける各々のレジスタ・アクセス（即ち、ロード又はストア操作）は、成功して完了した操作として数えられる。誤って完了したレジスタ・アクセスは、成功して完了した操作として数えられないようにすることができる。メイン・レジスタ・リング４４６上での読み出しとそれに続くメイン・レジスタ・リング４４６への書き込みをと含むレジスタ・アクセスは、成功して完了した単一の操作として数えることができる。
【００７５】
複数の制御ブリッジからのレジスタ・アクセス操作の衝突を防ぐために、制御ブリッジ４３８は、ブリッジ要素制御ポートとなるようにブリッジ要素４０２、４０４、４０６、４０８のうちのブリッジ要素を選択することができる。指定されたブリッジ要素制御ポートは、ブリッジ要素レジスタ以外のレジスタにアクセスするときに用いることができる。例えば、データ・フレームが、非ブリッジ要素（例えば、パーティション４１０、統合スイッチ・ルータ４１２、又はトランスポート層モジュール４１４）を宛先とするときには、制御ブリッジ４３８によってブリッジ要素制御ポートとして指定されたブリッジ要素４０８は、データ・フレームを受信して、それを非ブリッジ要素のターゲット・ノードにルーティングすることができる。制御ブリッジ４４８は、データ・フレームを、ブリッジ要素４０２、４０４、４０６、４０８に直接（即ち、指定されたブリッジ要素制御ポートを用いずに）送信することができる。例えば、ブリッジ要素４０６がデータ・フレーム（及び含まれるレジスタ・アクセス要求）のターゲットであるときには、ブリッジ要素４０６の遠隔制御モジュール４２１は、データ・フレームを受信することができる。
【００７６】
ブリッジ要素４０４、４０６、４０８は、図３のノース・ブリッジ要素３２６などのノース・ブリッジ要素を含むものとすることができる。ブリッジ要素４０４は、レジスタ４０３と、履歴キュー４０５と、遠隔制御モジュール４１１とを含むことができる。履歴キュー４０５は、シーケンス番号４０７を含むＦＩＦＯエントリを含むことができる。シーケンス番号４０７は、レジスタ・アクセス要求を有するデータ・フレームに対応することができる。操作総数４０９は、データ・フレームに関連する成功して完了したレジスタ・アクセス要求の数に対応することができる。遠隔制御モジュール４１１は、レジスタ・アクセス要求を実行し、シーケンス番号４０７、操作総数４０９、及びデータ・フレームのオペランド・フィールドを更新するように、構成することができる。
【００７７】
ブリッジ要素４０６は、レジスタ４１３と、履歴キュー４１５と、遠隔制御モジュール４２１とを含むことができる。履歴キュー４１５は、シーケンス番号４１７を含むＦＩＦＯエントリを含むことができる。シーケンス番号４１７は、レジスタ・アクセス要求を有するデータ・フレームに対応することができる。操作総数４１９は、データ・フレームに関連する成功して完了したレジスタ・アクセス要求の数に対応することができる。遠隔制御モジュール４２１は、レジスタ・アクセス要求を実行し、シーケンス番号４１７、操作総数４１９、及びデータ・フレームのオペランド・フィールドを更新するように、構成することができる。
【００７８】
ブリッジ要素４０８は、レジスタ４３０と、履歴キュー４２６と、遠隔制御モジュール４２９とを含むことができる。履歴キュー４２６は、シーケンス番号４２７を含むＦＩＦＯエントリを含むことができる。シーケンス番号４２７は、レジスタ・アクセス要求を有するデータ・フレームに対応することができる。操作総数４２８は、データ・フレームに関連する成功して完了したレジスタ・アクセス要求の数に対応することができる。遠隔制御モジュール４２９は、レジスタ・アクセス要求を実行し、シーケンス番号４２７、操作総数４２８、及びデータ・フレームのオペランド・フィールドを更新するように、構成することができる。
【００７９】
従って、図４は、制御ブリッジ４３８が、分散ブリッジ要素４０２、４０４、４０６、及び４０８を用いるレジスタ・アクセス要求を開始することを可能にするように構成されたシステム４００の実施形態を示す。制御ブリッジ４３８は、セキュリティ、ルーティング、及び利用可能性などのアクセス考慮事項を制御するのに用いられる、信頼できる（例えば、既知で安全な）ファームウェアを提供することができる。制御ブリッジ４３８は、ローカル及び遠隔のブリッジ要素４０２、４０４、４０６、４０８のレジスタの他に、他のハードウェア・ノード４１０、４１２、４１４にもアクセスするように、構成することができる。自動化されたレジスタ・アクセスは、潜在的なボトルネックを緩和し、効率的な処理を容易にすることができる。
【００８０】
図５は、制御ブリッジを用いて分散ブリッジ要素及び他のターゲット・ノードのレジスタをプログラムする方法５００の実施形態のフローチャートである。特定の実施形態においては、方法５００は、図４の制御ブリッジ４３８及びブリッジ要素４０２、４０４、４０６、４０８などの制御ブリッジ及びブリッジ要素によって行うことができる。５０２において、データ・フレームのヘッダを作成することができる。例えば、図４の制御ブリッジ４３８は、ターゲットとなるブリッジ要素４０６又は他のノードの宛先アドレスを含むヘッダを作成することができる。ヘッダは、制御ブリッジ４３８のＭＡＣアドレス又は制御ブリッジ４３８に結合されたネットワーク・インターフェース・カード（ＮＩＣ）のＭＡＣアドレスなどの送信元アドレスも含むことができる。ヘッダは、ＶＬＡＮタグ及びイーサタイプをさらに含むことができる。
【００８１】
５０４において、データ・フレームのペイロードを作成することができる。例えば、図４の制御ブリッジ４３８は、レジスタ・アクセス要求、シーケンス番号、及びロード／ストア・プロトコルを含むペイロードを生成することができる。５０６において、データ・フレームをキューに入れることができる。例えば、図４の制御ブリッジ４３８は、制御ブリッジ４３８に結合されたＮＩＣにおける伝送のために、データ・フレームを準備することができる。５０８において、巡回冗長検査（ＣＲＣ）又は他のチェックサムを、データ・フレーム内に含めることができる。例えば、図４の制御ブリッジ４３８のＮＩＣは、ＣＲＣをデータ・フレームに付加することができる。
【００８２】
５１０において、データ・フレームをローカル・ブリッジ要素に送信することができる。例えば、図４の制御ブリッジ４３８は、データ・フレームをブリッジ要素４０２に送信することができる。５１２において、データ・フレーム・ルーティング情報を決定することができる。例えば、図４のブリッジ要素４０２は、ヘッダに基づいてデータ・フレームのルーティング経路を決定することができる。ブリッジ要素４０２は、さらに、統合スイッチ・ルータ４１２及びトランスポート層モジュール４１４を介して受信側のブリッジ要素４０６に配信するために、データ・フレームをキューに入れることができる。５１４において、受信側のブリッジ要素の遠隔制御モジュールにデータ・フレームを送信することができる。例えば、ブリッジ要素４０６がデータ・フレームのターゲットであるときには、図４のブリッジ要素４０６の遠隔制御モジュール４２１は、データ・フレームを受信することができる。或いは、データ・フレームが非ブリッジ要素（例えば、図４のパーティション４１０）を宛先とするときには、データ・フレームを非ブリッジ要素にルーティングするように制御ブリッジ４３８によって指定されたブリッジ要素４０８は、データ・フレームを受信することができる。
【００８３】
５１６において、ヘッダを調べることができ、データ・フレームに関連するシーケンス番号を格納することができる。例えば、図４の遠隔制御モジュール４２１は、受信されたデータ・フレームのヘッダを評価することができる。遠隔制御モジュール４２１は、さらに、データ・フレームに関連するシーケンス番号４１７を履歴キュー４１５に格納することができる。５１８において、レジスタ・アクセス要求、即ち操作を行うことができる。例えば、図４のブリッジ要素４０６は、レジスタ４１３上でレジスタ・アクセス要求を行うことができる。ブリッジ要素４０８がブリッジ要素制御ポートとして指定され、パーティション４１０がターゲット・ノードであるときには、ブリッジ要素４０８は、メイン・レジスタ・リング４４６からトークンが利用可能になるのを待つことができる。トークンは、トークンを制御する１つのブリッジ要素のみが一度にターゲット・ノードにアクセスできるように、用いることができる。トークンが利用可能になったときに、パーティション４１０への配信のためにレジスタ・アクセス要求をメイン・レジスタ・リング４４６上に置くことができる。
【００８４】
５２０において、成功して完了した操作の計数が実行される。例えば、ブリッジ要素４０６は、成功して完了したレジスタ・アクセス要求の数が操作総数４１９として格納されることを決定することができる。５２２において、操作のうちの１つ又は複数の結果をデータ・フレーム内に上書きすることができる。例えば、遠隔制御モジュール４２１は、各々のレジスタ・アクセス要求即ち操作の成果を評価することができる。レジスタ・アクセス要求について誤りが検出されたときには、遠隔制御モジュール４２１は、誤り状態更新情報を、レジスタ・アクセス要求に関連するデータ・フレームのオペランド・フィールド内に挿入することができる。誤り状態更新情報は、修正動作を開始することができるように、制御ブリッジ４３８に誤った試行を通知することができる。
【００８５】
５２４において、フレームに関連する操作が検出されなくなるまで、操作を行い続けることができる。特定の実施形態においては、図４の遠隔制御モジュール４２１は、データ・フレームのレジスタ・アクセス要求の終わりをプログラムで伝える、連続する４つのゼロの列を検出することができる。
【００８６】
５２６において、成功して完了した操作の数を格納することができる。例えば、図４の遠隔制御モジュール４２１は、所与のデータ・フレームに関連する成功して完了した操作（例えば、ロード及びストア操作）の数を操作総数４１９に格納することができる。成功して完了した操作の数は、レジスタ・アクセス要求を処理する際に誤りが起きたかどうかを判定するのに用いることができる。
【００８７】
５２８において、データ・フレームをキューに入れることができる。例えば、図４の遠隔制御モジュール４２１は、トランスポート層モジュール４１４を介して制御ブリッジ４３８に返すために、データ・フレームを準備することができる。遠隔制御モジュール４２１は、更新されたＣＲＣをさらに付加することができる。従って、５３０において、データ・フレームをローカル・ブリッジ要素にルーティングすることができる。例えば、トランスポート層モジュール４１４は、データ・フレームを、統合スイッチ・ルータ４１２を介してブリッジ要素４０２に、そして最終的には制御ブリッジ４３８に、ルーティングすることができる。制御ブリッジ４３８は、返されたデータ・フレームを受信して格納することができる。
【００８８】
従って、図５は、レジスタ・アクセス要求を有するデータ・フレームを分散ブリッジ要素のネットワークを通してルーティングする方法５００を示す。制御ブリッジ４３８は、レジスタ・アクセス要求を開始して、より高い正確性及び拡張性を容易にすることができる。メイン・レジスタ・リング４４６をトークン及びセマフォと共に用いて、遠隔及びローカルのレジスタ・アクセスを効率化することができる。
【００８９】
図６は、レジスタ・アクセスの誤りを検出して応答する特定の方法６００のフローチャートである。方法６００は、図４の制御ブリッジ４３８及びブリッジ要素４０２、４０４、４０６、４０８などの、複数のブリッジ要素との通信を行う制御ブリッジによって行うことができる。具体的にフローチャートを見ると、６０２において、履歴キューを保持することができる。例えば、図４の制御ブリッジ４３８は、履歴キュー４４０を継続的に更新することができる。履歴キュー４４０は、シーケンス番号４４２及び操作総数４４４を含むことができる。本明細書において説明されるように、シーケンス番号４４２は、異なるものであるか、そうでなければそれぞれのデータ・フレーム及びそれらに関連するレジスタ・アクセス要求に一意的に関連するものとすることができる。操作総数４４４は、成功して完了したレジスタ・アクセス要求の数を含むことができる。レジスタ・アクセス要求の状態を判定するために、操作総数を、ブリッジ要素４０２、４０４、４０６、４０８に格納された操作総数４０９、４１９、４２２、４２８と比較することができる。
【００９０】
６０４において、ターゲット・ノードからのデータ・フレームを制御ブリッジにおいて受信することができる。例えば、図４の制御ブリッジ４３８は、ブリッジ要素４０６から返されたデータ・フレームを受信することができる。データ・フレームは、レジスタ４１３上で１つ又は複数のレジスタ・アクセスを行うためにブリッジ要素４０６に以前に送信されたものとすることができる。
【００９１】
６０６において、制御ブリッジは、履歴キューを検査することができる。例えば、図４の制御ブリッジ４３８は、履歴キュー４１５のシーケンス番号４１７を評価して、受信されたフレームのシーケンス番号と比較することができる。
【００９２】
６０８において、制御ブリッジは、受信されたデータ・フレームが期待されるフレームであるかどうかを判定する。例えば、図４の制御ブリッジ４３８は、履歴キュー４４０のシーケンス番号４４２を、受信されたフレームのシーケンス番号と比較することができる。データ・フレームの期待されるシーケンス番号は、連続的に番号付けられた（例えば、インオーダの）次のシーケンス番号である。シーケンス番号４４２を用いて、返されるデータ・フレームと共に受信されるべきシーケンス番号を判定することができる。
【００９３】
６１０において、受信されたデータ・フレームが期待されるデータ・フレームであると判定されたときには、制御ブリッジは、データ・フレームを通過させ、即ち承認する。或いは、返されたデータ・フレームが期待されるデータ・フレームではなかったときには、データ・フレームは、伝送の際に失われた可能性がある。６１２において、制御ブリッジは、データ・フレームを生成して、返されたデータ・フレームを送ったブリッジ要素の履歴キューに送信することができる。例えば、図４の制御ブリッジ４３８は、返されたデータ・フレームが、履歴キュー４４０によって示される期待されるインオーダ・シーケンス番号に一致しないシーケンス番号を有するものであると判定することができる。これに応答して、制御ブリッジ４３８は、ブリッジ要素４０６に送信されるデータ・フレームを生成することができる。データ・フレームを用いて、ブリッジ要素４０６の履歴キュー４１５を読むことができる。より具体的には、データ・フレームは、元々伝送されたデータ・フレームに関連するシーケンス番号４１７及び操作総数４１９を含むように、ブリッジ要素４０６によって処理される。新たなレジスタ・アクセス要求を有するデータ・フレームのターゲット・ノードへの伝送は、一時停止することができる。
【００９４】
６１４において、返されたデータ・フレームを受信することができる。例えば、図４の制御ブリッジ４３８は、ブリッジ要素４０６からデータ・フレームを受信することができる。返されたデータ・フレームは、履歴キュー４１５から複製された情報を含むことができる。
【００９５】
６１６において、制御ブリッジは、失われたシーケンス番号がターゲット・ノードにおいて処理されたかどうかを判定することができる。例えば、図４の制御ブリッジ４３８は、返されたデータ・フレームを読んで、失われたシーケンス番号がブリッジ要素４０６において処理されて記録されたかどうかを判定することができる。失われたシーケンス番号が処理されなかった場合には、６１８において、レジスタ・アクセス要求を有する元のデータ・フレームを再送することができる。次いで、６０４において、制御ブリッジは、データ・フレームの配信の確認を待つことができる。
【００９６】
或いは、制御ブリッジが、失われたシーケンス番号がターゲット・ノードにおいて処理されたと判定したときには、６２０において、制御ブリッジは、返されたデータ・フレームに記録された成功した操作の数が元のデータ・フレームの操作の数に等しいかどうかを判定することができる。例えば、図４の制御ブリッジは、返されたデータ・フレーム内に操作総数４１９から複製されたデータを読むことができる。制御ブリッジ４３８は、複製されたデータを、元のデータ・フレームに含まれ、操作総数４４４に格納されたレジスタ・アクセス要求の数と、比較することができる。
【００９７】
返されたデータ・フレームに記録された成功した操作の数が、元のデータ・フレームにおける操作の数に等しくないときには、６１８において、元のデータ・フレームの全て又は一部を再送することができる。次いで、６０４において、制御ブリッジは、データ・フレームの配信の確認を待つことができる。或いは、返されたデータ・フレームに記録された成功した操作の数が、元のデータ・フレームにおける操作の数に等しいときには、６２２において、ターゲット・ノードへのデータ・フレームの伝送を再開することができる。
【００９８】
従って、図６は、失敗したレジスタ・アクセス要求を検出して回復する方法６００を示す。方法６００は、データ・フレームが損失したか、そうでなければレジスタ・アクセス要求が成功せずに完了したかどうかを検出することができる。検出された誤りに応答して、修正動作を自動的に開始することができる。例えば、レジスタ・アクセス要求を有するデータ・フレームを再送することができる。従って、方法６００の態様は、効率的で正確なレジスタ・アクセスを容易にすることができる。
【００９９】
本明細書において説明された特定の実施形態は、全てハードウェアの実施形態、全てソフトウェアの実施形態又はハードウェア及びソフトウェア両方の要素を含む実施形態の形をとることができる。特定の実施形態においては、開示された方法は、プロセッサ可読媒体内に組み込まれ、プロセッサによって実行されるソフトウェアに実装され、このソフトウェアは、ファームウェア、常駐ソフトウェア、マイクロコード等を含むが、これらに限定されるものではない。
【０１００】
さらに、１つ又は複数の実施形態などのような本開示の実施形態は、コンピュータ若しくはいずれかの命令実行システムによって、又はこれらと関連した状態で、用いるためのプログラム・コードを提供するコンピュータ利用可能媒体又はコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム製品の形態をとることができる。この説明の目的で、コンピュータ利用可能媒体又はコンピュータ可読媒体は、コンピュータ・プログラムを有形に具体化でき、命令実行システム、装置、又はデバイスによって、又はこれらとの関連した状態で、用いるためのプログラムを含み、格納し、通信し、伝搬し、又は搬送することができる、いずれかの装置とすることができる。
【０１０１】
種々の実施形態においては、媒体は、電気、磁気、光、電磁気、赤外線、若しくは半導体のシステム（若しくは装置若しくはデバイス）又は伝搬媒体を含むことができる。コンピュータ可読媒体の例として、半導体又はソリッド・ステート・メモリ、磁気テープ、取り外し可能コンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、リジッド磁気ディスク及び光ディスクが挙げられる。現時点での光ディスクの例として、コンパクト・ディスク‐読み出し専用メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク‐読み出し／書き込み（ＣＤ−Ｒ／Ｗ）及びデジタル多用途ディスク（ＤＶＤ）が挙げられる。
【０１０２】
プログラム・コードを格納及び／又は実行するのに適したデータ処理システムは、システム・バスを通してメモリ要素に直接的又は間接的に結合された少なくとも１つのプロセッサを含むことができる。メモリ要素は、プログラム・コードの実際の実行中に用いられるローカル・メモリ、大容量記憶装置、及び、実行中に大容量記憶装置からコードを読み出さなければならない回数を減らすために少なくとも幾つかのプログラム・コードの一時的なストレージを提供するキャッシュ・メモリを含むことができる。
【０１０３】
入力／出力デバイス即ちＩ／Ｏデバイス（キーボード、ディスプレイ、ポインティング・デバイス等を含むがこれらに限定されない）は、データ処理システムに直接的に、又は介在するＩ／Ｏコントローラを通して、結合することができる。ネットワーク・アダプタもまた、データ処理システムに結合して、データ処理システムが、介在する私設ネットワーク又は公衆ネットワークを通して他のデータ処理システム又は遠隔プリンタ若しくはストレージ・デバイスに結合できるようにすることができる。モデム、ケーブル・モデム及びイーサネット・カードは、現時点で入手可能なネットワーク・アダプタのタイプのうちの数例に過ぎない。
【０１０４】
開示される実施形態の前記説明は、開示される実施形態を当業者が作り又は用いることができるように提供される。これらの実施形態への種々の変更は、当業者には容易に明らかとなるものであり、本明細書において定められる一般的な原理は、開示の範囲から逸脱することなく他の実施形態に適用することができる。従って、本開示は、本明細書において示される実施形態に限定されることを意図したものではなく、特許請求の範囲によって定められる通りの原理及び特徴と矛盾しない、可能な限り最も広い範囲を与えられるべきである。
【符号の説明】
【０１０５】
１００：従来のブレード・サーバ・コンピュータ・システム
１０２、１０４：ラック
１０６−１２５：サーバ・コンピュータ
１３８、１４０、１４２、１４４：シャシ
１５４、１５６：シャシ・スイッチ
１５８、１６０：トップ・オブ・ラック・スイッチ（ＴＯＲ）
１６２：エンド・オブ・ラック・スイッチ（ＥＯＲ）
１６４、１６６、１６８、１７０：経路
２００：高度に統合されたシステム
２０２、２０４：ラック
２０６−２２５：サーバ・コンピュータ
２４６、２４８、２５０、２５２：シャシ
２５８：エンド・オブ・ラック・スイッチ（ＥＯＲ）
２５９、２６１：入出力（Ｉ／Ｏ）サーバＩＴＥ
２６０：分散仮想ブリッジ
２６２、２６４、２６６、２６８、２７０：経路
【図１】
2013537740.tif 000003
【図２】
2013537740.tif 000004
【図３】
2013537740.tif 000005
【図４】
2013537740.tif 000006
【図５】
2013537740.tif 000007
【図６】
2013537740.tif 000008
【国際調査報告】
2013537740.tif 000009
2013537740.tif 000010
2013537740.tif 000011