(58)【調査した分野】(Int.Cl.,DB名)
前記アクティブPCIEスイッチ・デバイス及び前記スタンバイPCIEスイッチ・デバイスがそれぞれ第1の制御モジュールを含み、前記第1の制御モジュールが第1の中央演算処理装置を含み、前記スタンバイPCIEスイッチ・デバイスが、前記アクティブPCIEスイッチ・デバイスの前記スイッチ・ネットワーク構成情報を取得するため、前記アクティブPCIEスイッチ・デバイスの前記第1の中央演算処理装置が、前記アクティブPCIEスイッチ・デバイスの前記通信インターフェース及び前記スタンバイPCIEスイッチ・デバイスの前記通信インターフェースを介して前記スタンバイPCIEスイッチ・デバイスの前記第1の中央演算処理装置と相互作用するように構成される、請求項1記載のシステム。
第2のPCIEスイッチ・モジュールを含み、前記第2のPCIEスイッチ・モジュールが2つの第2のPCIEポートを含み、一方の第2のPCIEポートが前記アクティブPCIEスイッチ・デバイスの前記少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続され、もう一方の第2のPCIEポートが前記スタンバイPCIEスイッチ・デバイスの前記少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続されている、PCIEエンドポイント
をさらに含む、請求項1又は2記載のシステム。
前記PCIEエンドポイントが第2の制御モジュールと処理モジュールとをさらに含み、前記第2の制御モジュールが第2の中央演算処理装置を含み、前記アクティブPCIEスイッチ・デバイス及び前記スタンバイPCIEスイッチ・デバイスに接続された前記2つの第2のPCIEポートがアップリンク・ポートであり、前記処理モジュールに接続された前記第2のPCIEポートがダウンリンク・ポートであり、前記2つのアップリンク・ポートが異なるPCIEスイッチ・パーティションに位置する場合に、前記第2の中央演算処理装置が、前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートのポート構成情報を、前記スタンバイPCIEスイッチ・デバイスに接続された前記第2のPCIEポートに対して同期させ、前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、前記処理モジュールに接続されたダウンリンク・ポートを、前記スイッチング後の前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加するように構成される、請求項3記載のシステム。
前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとの前記アクティブ・スタンバイ・スイッチング前に、前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するパーティションがアクティブPCIEスイッチ・パーティションであり、前記スタンバイPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するパーティションがスタンバイPCIEスイッチ・パーティションであり、前記第2の中央演算処理装置が、前記処理モジュールに接続された前記ダウンリンク・ポートを前記アクティブPCIEスイッチ・パーティションに追加するように構成され、
前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとの前記アクティブ・スタンバイ・スイッチング後に、前記スイッチング後の前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するパーティションが前記スイッチング後のアクティブPCIEスイッチ・パーティションであり、前記スイッチング後の前記スタンバイPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するパーティションが前記スイッチング後のスタンバイPCIEスイッチ・パーティションであり、前記第2の中央演算処理装置が、前記処理モジュールに接続された前記ダウンリンク・ポートを前記スイッチング後の前記アクティブPCIEスイッチ・パーティションに追加するように構成される、請求項4記載のシステム。
前記アクティブPCIEスイッチ・デバイス及び前記スタンバイPCIEスイッチ・デバイスがそれぞれ障害検出モジュールをさらに含み、前記アクティブPCIEスイッチ・デバイスの前記障害検出モジュールが、前記アクティブPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびに前記アクティブPCIEスイッチ・デバイスが故障しているかどうかを検出するように構成され、前記スタンバイPCIEスイッチ・デバイスの前記障害検出モジュールが、前記スタンバイPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびに前記スタンバイPCIEスイッチ・デバイスが故障しているかどうかを検出するように構成される、請求項1乃至5のいずれか1項記載のシステム。
前記アクティブPCIEスイッチ・デバイスが、前記アクティブPCIEスイッチ・デバイスの第1の制御モジュールの制御命令に応じて前記アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行し、前記スイッチング後の前記PCIEスイッチ・デバイスのアクティブ・スタンバイ状態を前記PCIEスイッチ・デバイスの前記第1の制御モジュール及び前記PCIEエンドポイントに送信するように構成されたアクティブ・スタンバイ・インターロック・モジュールをさらに含み、
前記スタンバイPCIEスイッチ・デバイスが、前記アクティブPCIEスイッチ・デバイスの前記アクティブ・スタンバイ・インターロック・モジュールと相互作用することにより前記アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、前記アクティブPCIEスイッチ・デバイスの前記取得したアクティブ・スタンバイ状態に応じて前記スタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行し、前記スイッチング後の前記PCIEスイッチ・デバイスの前記アクティブ・スタンバイ状態を前記PCIEスイッチ・デバイスの前記第1の制御モジュール及び前記PCIEエンドポイントに送信するように構成されたアクティブ・スタンバイ・インターロック・モジュールをさらに含む、請求項1乃至6のいずれか1項記載のシステム。
2つの第3の周辺装置相互接続エクスプレス(PCIE)ポートを含むホストであって、一方の第3のPCIEポートがアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第3のPCIEポートがスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、前記ホストが第3の制御モジュールをさらに含み、前記第3の制御モジュールが第3の中央演算処理装置を含み、前記第3の中央演算処理装置が、前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、前記スイッチング後の前記アクティブPCIEスイッチ・デバイスに接続された前記第3のPCIEポートを開放し、前記スイッチング前の前記アクティブPCIEスイッチ・デバイスに接続された前記第3のPCIEポートのポート構成情報を採用して前記スイッチング後の前記アクティブPCIEスイッチ・デバイスに接続された前記第3のPCIEポートを構成し、同時に、前記スイッチング後の前記スタンバイPCIEスイッチ・デバイスに接続された前記第3のPCIEポートを使用不可にするように構成される、ホスト。
前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング前に、PCIEエンドポイントにより、前記アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報を、前記スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させるステップと、
前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートと前記スタンバイPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが異なるPCIEスイッチ・パーティションに位置する場合に、前記アクティブPCIEスイッチ・デバイスと前記スタンバイPCIEスイッチ・デバイスとの前記アクティブ・スタンバイ・スイッチング後に、前記PCIEエンドポイントにより、前記PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートを、前記スイッチング後の前記アクティブPCIEスイッチ・デバイスに接続された前記第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加するステップと
をさらに含む、請求項9記載の方法。
前記アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールにより、前記アクティブPCIEスイッチ・デバイスの第1の制御モジュールの制御命令に応じて前記アクティブ・スタンバイ・スイッチングを実行し、前記スイッチング後の前記PCIEスイッチ・デバイスのアクティブ・スタンバイ状態を前記デバイスの前記第1の制御モジュール、ホスト又は前記PCIEエンドポイント、及び前記スタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールに送信するステップ
をさらに含む、請求項9乃至12のいずれか1項記載の方法。
前記スタンバイPCIEスイッチ・デバイスの前記アクティブ・スタンバイ・インターロック・モジュールにより、前記アクティブPCIEスイッチ・デバイスの前記アクティブ・スタンバイ・インターロック・モジュールと相互作用することにより前記アクティブPCIEスイッチ・デバイスの前記アクティブ・スタンバイ状態を取得し、前記アクティブPCIEスイッチ・デバイスの前記取得したアクティブ・スタンバイ状態に応じて前記スタンバイPCIEスイッチ・デバイスの前記アクティブ・スタンバイ・スイッチングを実行し、前記スイッチング後の前記PCIEスイッチ・デバイスの前記アクティブ・スタンバイ状態を前記スタンバイPCIEスイッチ・デバイスの前記第1の制御モジュール、前記ホスト、及び前記PCIEエンドポイントに送信するステップ
をさらに含む、請求項13記載の方法。
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来技術の諸問題を解決するために、本発明の諸実施形態は、PCIEスイッチベースのサーバ・システム、スイッチング方法、及びデバイスを提供する。技術的解決策は以下の通りである。
【課題を解決するための手段】
【0007】
一態様では、本発明の一実施形態は、PCIEスイッチベースのサーバ・システムを提供し、このシステムは、
通信インターフェースと第1のPCIEスイッチ・モジュールとを含み、第1のPCIEスイッチ・モジュールが少なくとも2つの第1のPCIEポートを含む、アクティブPCIEスイッチ・デバイス(active PCIE switch device)と、
通信インターフェースと第1のPCIEスイッチ・モジュールとを含み、第1のPCIEスイッチ・モジュールが少なくとも2つの第1のPCIEポートを含む、スタンバイPCIEスイッチ・デバイス(standby PCIE switch device)と
を含み、
スタンバイPCIEスイッチ・デバイスが、アクティブPCIEスイッチ・デバイスの通信インターフェース及びスタンバイPCIEスイッチ・デバイスの通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報(switch network configuration information)を取得するため、アクティブPCIEスイッチ・デバイスの通信インターフェースとスタンバイPCIEスイッチ・デバイスの通信インターフェースが相互接続される。
【0008】
具体的には、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスはそれぞれ第1の制御モジュールを含み、第1の制御モジュールは第1の中央演算処理装置を含み、スタンバイPCIEスイッチ・デバイスが、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得するため、アクティブPCIEスイッチ・デバイスの第1の中央演算処理装置は、アクティブPCIEスイッチ・デバイスの通信インターフェース及びスタンバイPCIEスイッチ・デバイスの通信インターフェースを介してスタンバイPCIEスイッチ・デバイスの第1の中央演算処理装置と相互作用するように構成される。
【0009】
好ましくは、このシステムは、
第2のPCIEスイッチ・モジュールを含み、第2のPCIEスイッチ・モジュールが2つの第2のPCIEポートを含み、一方の第2のPCIEポートがアクティブPCIEスイッチ・デバイスの少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続され、もう一方の第2のPCIEポートがスタンバイPCIEスイッチ・デバイスの少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続されている、PCIEエンドポイント(PCIE endpoint)
をさらに含む。
【0010】
具体的には、PCIEエンドポイントは第2の制御モジュールと処理モジュールとをさらに含み、第2の制御モジュールは第2の中央演算処理装置を含み、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスに接続された2つの第2のPCIEポートがアップリンク・ポート(uplink port)であり、処理モジュールに接続された第2のPCIEポートがダウンリンク・ポート(downlink port)であり、2つのアップリンク・ポートが異なるPCIEスイッチ・パーティション(PCIE switch partition)に位置する場合に、第2の中央演算処理装置は、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報(port configuration information)を、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させ、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング(active-standby switching)後に、処理モジュールに接続されたダウンリンク・ポートを、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加するように構成される。
【0011】
さらに、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング前に、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションがアクティブPCIEスイッチ・パーティションであり、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションがスタンバイPCIEスイッチ・パーティションであり、第2の中央演算処理装置は、処理モジュールに接続されたダウンリンク・ポートをアクティブPCIEスイッチ・パーティションに追加するように構成され、
アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションがスイッチング後のアクティブPCIEスイッチ・パーティションであり、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションがスイッチング後のスタンバイPCIEスイッチ・パーティションであり、第2の中央演算処理装置は、処理モジュールに接続されたダウンリンク・ポートをスイッチング後のアクティブPCIEスイッチ・パーティションに追加するように構成される。
【0012】
好ましくは、このシステムは、
2つの第3のPCIEポートを含み、一方の第3のPCIEポートがアクティブPCIEスイッチ・デバイスの少なくとも2つの第1のPCIEポートのうちのもう一方の第1のPCIEポートに接続され、もう一方の第3のPCIEポートがスタンバイPCIEスイッチ・デバイスの少なくとも2つの第1のPCIEポートのうちのもう一方の第1のPCIEポートに接続されている、ホスト
をさらに含み、
このホストは、アクティブPCIEスイッチ・デバイスを介してPCIEエンドポイントと通信する。
【0013】
具体的には、ホストは第3の制御モジュールをさらに含み、第3の制御モジュールは第3の中央演算処理装置を含み、第3の中央演算処理装置は、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にするように構成される。
【0014】
好ましくは、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスはそれぞれ障害検出モジュール(fault detection module)をさらに含み、アクティブPCIEスイッチ・デバイスの障害検出モジュールは、アクティブPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびにアクティブPCIEスイッチ・デバイスが故障しているかどうかを検出するように構成され、スタンバイPCIEスイッチ・デバイスの障害検出モジュールは、スタンバイPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびにスタンバイPCIEスイッチ・デバイスが故障しているかどうかを検出するように構成される。
【0015】
好ましくは、アクティブPCIEスイッチ・デバイスは、アクティブPCIEスイッチ・デバイスの第1の制御モジュールの制御命令に応じてアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態(active-standby state)をPCIEスイッチ・デバイスの第1の制御モジュール及びPCIEエンドポイントに送信するように構成されたアクティブ・スタンバイ・インターロック・モジュール(active-standby interlocking module)をさらに含み、
このデバイスがスタンバイPCIEスイッチ・デバイスであるときに、アクティブ・スタンバイ・インターロック・モジュールは、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールと相互作用することによりアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイスの取得したアクティブ・スタンバイ状態に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をPCIEスイッチ・デバイスの第1の制御モジュール及びPCIEエンドポイントに送信するように構成される。
【0016】
具体的には、アクティブPCIEスイッチ・デバイスの通信インターフェース及びスタンバイPCIEスイッチ・デバイスの通信インターフェースは、ファスト・イーサネット(登録商標)・インターフェース又はギガビット・イーサネット(登録商標)・インターフェースである。
【0017】
他の態様では、本発明の一実施形態は、周辺装置相互接続エクスプレス(PCIE)スイッチ・デバイスを提供し、このデバイスは、
第1のPCIEスイッチ・モジュールと、他のPCIEスイッチ・デバイスに接続するように構成された通信インターフェースとを含み、第1のPCIEスイッチ・モジュールは少なくとも2つの第1のPCIEポートを含み、
このデバイスがアクティブPCIEスイッチ・デバイスとして使用され、他のPCIEスイッチ・デバイスがスタンバイPCIEスイッチ・デバイスとして使用されるときに、このデバイスは通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を他のPCIEスイッチ・デバイスに転送し、
このデバイスがスタンバイPCIEスイッチ・デバイスとして使用され、他のPCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスとして使用されるときに、このデバイスは通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得する。
【0018】
具体的には、このデバイスは第1の制御モジュールをさらに含み、第1の制御モジュールは、
スタンバイPCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得するため、通信インターフェースを介して他のPCIEスイッチ・デバイスの第1の中央演算処理装置と相互作用するように構成される、第1の中央演算処理装置
を含む。
【0019】
好ましくは、このデバイスは、
第1のPCIEポートに接続されたPCIEリンクに障害が存在するかどうかならびにPCIEスイッチ・デバイスに障害が存在するかどうかを検出するように構成され、第1の制御モジュールに接続されている障害検出モジュール
をさらに含む。
【0020】
好ましくは、このデバイスは、アクティブ・スタンバイ・インターロック・モジュールをさらに含み、
このデバイスがアクティブPCIEスイッチ・デバイスであるときに、アクティブ・スタンバイ・インターロック・モジュールは、第1の制御モジュールの制御命令に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を第1の制御モジュール、ホスト、又はPCIEエンドポイントに送信するように構成され、
このデバイスがスタンバイPCIEスイッチ・デバイスであるときに、アクティブ・スタンバイ・インターロック・モジュールは、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールと相互作用することによりアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイスの取得したアクティブ・スタンバイ状態に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をPCIEスイッチ・デバイスの第1の制御モジュール、ホスト、又はPCIEエンドポイントに送信するように構成される。
【0021】
他の態様では、本発明の一実施形態は、周辺装置相互接続エクスプレス(PCIE)エンドポイントをさらに提供し、このPCIEエンドポイントは第2のPCIEスイッチ・モジュールを含み、第2のPCIEスイッチ・モジュールは2つの第2のPCIEポートを含み、一方の第2のPCIEポートはアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第2のPCIEポートはスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成される。
【0022】
具体的には、このPCIEエンドポイントは第2の制御モジュールと処理モジュールをさらに含み、第2の制御モジュールは第2の中央演算処理装置を含み、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスに接続された2つの第2のPCIEポートがアップリンク・ポートであり、処理モジュールに接続された第2のPCIEポートがダウンリンク・ポートであり、2つのアップリンク・ポートが異なるPCIEスイッチ・パーティションに位置する場合に、第2の中央演算処理装置は、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報を、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させ、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、処理モジュールに接続された第2のPCIEポートを、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加するように構成される。
【0023】
他の態様では、本発明の一実施形態は、ホストをさらに提供し、このホストは2つの第3のPCIEポートを含み、一方の第3のPCIEポートはアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第3のPCIEポートはスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成される。
【0024】
具体的には、このホストは第3の制御モジュールをさらに含み、第3の制御モジュールは第3の中央演算処理装置を含み、第3の中央演算処理装置は、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にするように構成される。
【0025】
他の態様では、本発明の一実施形態は、PCIEスイッチベースのスイッチング方法をさらに提供し、この方法は、
スタンバイPCIEスイッチ・デバイスがスイッチ・ネットワーク構成情報を採用してスタンバイPCIEスイッチ・デバイスを構成するため、アクティブPCIEスイッチ・デバイスにより、アクティブPCIEスイッチ・デバイスの通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報をスタンバイPCIEスイッチ・デバイスに転送すること
を含む。
【0026】
好ましくは、この方法は、
アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング前に、PCIEエンドポイントにより、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報を、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させることと、
アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートとスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが異なるPCIEスイッチ・パーティションに位置する場合に、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、PCIEエンドポイントにより、PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートを、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加すること
をさらに含む。
【0027】
具体的には、この方法は、
ホストが2つの第3のPCIEポートを含み、一方の第3のPCIEポートがアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続され、もう一方の第3のPCIEポートがスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続される場合に、ホストにより、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にすること
をさらに含む。
【0028】
さらに、この方法は、
アクティブPCIEスイッチ・デバイスの障害検出モジュールにより、アクティブPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびにアクティブPCIEスイッチ・デバイスに障害が存在するかどうかを検出することと、
PCIEリンクに障害が存在するか又はアクティブPCIEスイッチ・デバイスに障害が存在する場合に、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスについてアクティブ・スタンバイ・スイッチングを実行すること
をさらに含む。
【0029】
さらに、この方法は、
アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールにより、アクティブPCIEスイッチ・デバイスの第1の制御モジュールの制御命令に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をデバイスの第1の制御モジュール、ホスト又はPCIEエンドポイント、及びスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールに送信すること
をさらに含む。
【0030】
さらに、この方法は、
スタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールにより、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールと相互作用することによりアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイスの取得したアクティブ・スタンバイ状態に応じてスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をスタンバイPCIEスイッチ・デバイスの第1の制御モジュール、ホスト、及びPCIEエンドポイントに送信すること
をさらに含む。
【0031】
本発明の諸実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。
【0032】
本発明の諸実施形態における技術的解決策をより明瞭に説明するために、諸実施形態を説明するために必要な添付図面について以下に簡単に紹介する。明らかに、以下の説明における添付図面は単に本発明のいくつかの実施形態を示すだけであり、当業者であれば、創造的努力なしにこれらの添付図面に応じてその他の図面をさらに入手することができる。
【発明を実施するための形態】
【0034】
本発明の目的、技術的解決策、及び利点をより分かり易くするため、以下の説明では、さらに、添付図面に関連して本発明の実現方法について詳細に記述する。
実施形態1
本発明の一実施形態は、PCIE(Peripheral Component Interconnect Express、周辺装置相互接続エクスプレス)スイッチベースのサーバ・システムを提供する。
図1を参照すると、このシステムはアクティブPCIEスイッチ・デバイス110aとスタンバイPCIEスイッチ・デバイス110bとを含む。
【0035】
具体的には、アクティブPCIEスイッチ・デバイス110aは通信インターフェース111aと第1のPCIEスイッチ・モジュール112aとを含み、第1のPCIEスイッチ・モジュール112aは少なくとも2つの第1のPCIEポート(同図には示されていない)を含む。スタンバイPCIEスイッチ・デバイス110bは通信インターフェース111bと第1のPCIEスイッチ・モジュール112bとを含み、第1のPCIEスイッチ・モジュール112bは少なくとも2つの第1のPCIEポート(同図には示されていない)を含む。スタンバイPCIEスイッチ・デバイス110bが、アクティブPCIEスイッチ・デバイス110aの通信インターフェース111a及びスタンバイPCIEスイッチ・デバイス110bの通信インターフェース111bを介してアクティブPCIEスイッチ・デバイス110aのスイッチ・ネットワーク構成情報を取得するため、アクティブPCIEスイッチ・デバイス110aの通信インターフェース111aとスタンバイPCIEスイッチ・デバイス110bの通信インターフェース111bは相互接続される。
【0036】
アクティブPCIEスイッチ・デバイス110aの第1のPCIEポートは、HOST(ホスト)又はPCIE Endpoint(PCIEエンドポイント)に接続するように構成され、スタンバイPCIEスイッチ・デバイス110bの第1のPCIEポートも、HOST又はPCIEエンドポイントに接続するように構成されている。
【0037】
具体的には、通信インターフェース111a及び111bは、FE(Fast Ethernet(登録商標)、ファスト・イーサネット(登録商標))インターフェース又はGE(Gigabit Ethernet(登録商標)、ギガビット・イーサネット(登録商標))インターフェースを含むが、これらに限定されない。
【0038】
具体的には、ある種の特定の実現例では、PCIEスイッチ・デバイス110a及び110bはPCIEスイッチ・ファブリック・ユニットでもよい。他の種類の特定の実現例では、PCIEスイッチ・デバイス110a及び110bはPCIEスイッチでもよい。
【0039】
この実施形態及び以下の諸実施形態では、アクティブPCIEスイッチ・デバイスは一時的にスイッチ・サービスを提供するPCIEスイッチ・デバイスを指し、スタンバイPCIEスイッチ・デバイスは一時的にスイッチ・サービスを提供しないPCIEスイッチ・デバイスを指すことに留意されたい。明らかに、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスは同時にスイッチ・サービスを提供してもよく、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスの間で負荷が分担される。好ましくは、ハードウェア構造の見地からすれば、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスは同じデバイスであり、特定のPCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスであるかスタンバイPCIEスイッチ・デバイスであるかは、動作状態のみに応じて区別される。
【0040】
本発明のこの実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。
実施形態2
本発明の一実施形態は、PCIEスイッチベースのサーバ・システムを提供する。
図2を参照すると、このシステムは、アクティブPCIEスイッチ・デバイス210aと、スタンバイPCIEスイッチ・デバイス210bと、PCIEエンドポイント220と、HOST230とを含み、HOST230はアクティブPCIEスイッチ・デバイス210aを介して一時的にPCIEエンドポイント220と通信する。PCIEエンドポイント220の数とHOST230の数は必要に応じて設定されてもよく、ここでは限定されない。
【0041】
具体的には、アクティブPCIEスイッチ・デバイス210aは通信インターフェース211aと第1のPCIEスイッチ・モジュール212aとを含み、第1のPCIEスイッチ・モジュール212aは少なくとも2つの第1のPCIEポート(同図には示されていない)を含む。スタンバイPCIEスイッチ・デバイス210bは通信インターフェース211bと第1のPCIEスイッチ・モジュール212bとを含み、第1のPCIEスイッチ・モジュール212bは少なくとも2つの第1のPCIEポート(同図には示されていない)を含む。アクティブPCIEスイッチ・デバイス210aの通信インターフェース211aとスタンバイPCIEスイッチ・デバイス210bの通信インターフェース211bは相互接続されている。
【0042】
具体的には、PCIEエンドポイント220は第2のPCIEスイッチ・モジュール222を含み、第2のPCIEスイッチ・モジュール222は2つの第2のPCIEポート(同図には示されていない)を含み、一方の第2のPCIEポートはアクティブPCIEスイッチ・デバイス210aの少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続され、もう一方の第2のPCIEポートはスタンバイPCIEスイッチ・デバイス210bの少なくとも2つの第1のPCIEポートのうちの一方の第1のPCIEポートに接続されている。
【0043】
具体的には、HOST230は2つの第3のPCIEポートを含み、一方の第3のPCIEポートはアクティブPCIEスイッチ・デバイス210aの少なくとも2つの第1のPCIEポートのうちのもう一方の第1のPCIEポートに接続され、もう一方の第3のPCIEポートはスタンバイPCIEスイッチ・デバイス210bの少なくとも2つの第1のPCIEポートのうちのもう一方の第1のPCIEポートに接続されている。
【0044】
アクティブPCIEスイッチ・デバイス210aの一方の第1のPCIEポートはPCIEバスを介してHOST230の一方の第3のPCIEポートに接続され、アクティブPCIEスイッチ・デバイス210aのもう一方の第1のPCIEポートもPCIEバスを介してPCIEエンドポイント220の一方の第2のPCIEポートに接続され、スタンバイPCIEスイッチ・デバイス210bの一方の第1のPCIEポートはPCIEバスを介してHOST230のもう一方の第3のPCIEポートに接続され、スタンバイPCIEスイッチ・デバイス210bのもう一方の第1のPCIEポートもPCIEバスを介してPCIEエンドポイント220のもう一方の第2のPCIEポートに接続されている。
図2では、HOST230とPCIEスイッチ・デバイス210a及び210bとの間ならびにPCIEエンドポイント220とPCIEスイッチ・デバイス210a及び210bとの間の両方向矢印が付いた実線はPCIEバスを示している。
【0045】
さらに、アクティブPCIEスイッチ・デバイス210aは第1の制御モジュール213aをさらに含み、第1の制御モジュール213aは通信インターフェース211a及び第1のPCIEスイッチ・モジュール212aに接続され、スタンバイPCIEスイッチ・デバイス210bは第1の制御モジュール213bをさらに含み、第1の制御モジュール213bは通信インターフェース211b及び第1のPCIEスイッチ・モジュール212bに接続されている。第1の制御モジュール213a及び第2の制御モジュール213bはそれぞれ第1のCPU(Central Processing Unit、中央演算処理装置)を含む。スタンバイPCIEスイッチ・デバイス210bの第1のCPUが、アクティブPCIEスイッチ・デバイス210aのスイッチ・ネットワーク構成情報を取得し、アクティブPCIEスイッチ・デバイス210aのものと同じスイッチ・ネットワーク構成情報採用して構成を実行するため、アクティブPCIEスイッチ・デバイス210aの第1のCPUは、アクティブPCIEスイッチ・デバイス210aの通信インターフェース211a及びスタンバイPCIEスイッチ・デバイス210bの通信インターフェース211bを介してスタンバイPCIEスイッチ・デバイス210bの第1のCPUと相互作用するように構成される。具体的には、スイッチ・ネットワーク構成情報は主にP2P(PCI−to−PCI)ブリッジの構成情報を含む。
【0046】
さらに、PCIEエンドポイント220は第2の制御モジュール221と処理モジュール223とをさらに含み、第2のPCIEスイッチ・モジュール222は第2の制御モジュール221及び処理モジュール223に接続され、処理モジュール223は一方の第2のPCIEポートを介して第2のPCIEスイッチ・モジュール222に接続されている。第2の制御モジュール221は、アクティブPCIEスイッチ・デバイス210aに接続された第2のPCIEポートとスタンバイPCIEスイッチ・デバイス210bに接続された第2のPCIEポートが異なるPCIEスイッチ・パーティションに位置する場合に、アクティブPCIEスイッチ・デバイス210aとスタンバイPCIEスイッチ・デバイス210bとのスイッチング前に、アクティブPCIEスイッチ・デバイス210aに接続された第2のPCIEポートのポート構成情報を、スタンバイPCIEスイッチ・デバイス210bに接続された第2のPCIEポートに対して同期させ、アクティブPCIEスイッチ・デバイス210aとスタンバイPCIEスイッチ・デバイス210bとのスイッチング後に、処理モジュール223に接続された第2のPCIEポートを、スイッチング後のアクティブPCIEスイッチ・デバイス210b(スイッチング前のスタンバイPCIEスイッチ・デバイス210b)が位置するPCIEスイッチ・パーティションに追加するように構成された第2のCPUを含む。アクティブPCIEスイッチ・デバイス210a及びスタンバイPCIEスイッチ・デバイス210bに接続された第2のPCIEポートはアップリンク・ポートであり、処理モジュール223に接続された第2のPCIEポートはダウンリンク・ポートであり、2つのアップリンク・ポートは異なるPCIEスイッチ・パーティションに位置し、すなわち、1つのPCIEスイッチ・パーティションは1つのアップリンク・ポートのみを有する。処理モジュール223は、GPU(Graphic Processing Unit)、SSD(Solid State Disk)、DSP(Digital Signal Processing)、及び暗号化/解読ユニットを含むが、これらに限定されない。
【0047】
第2のCPUは、システムが初期設定されたときに2つのPCIEスイッチ・パーティションを作成するようにさらに構成され、それぞれのPCIEスイッチ・パーティションは1つのアップリンク・ポートのみを有し、アップリンク・ポートはPCIEスイッチ・デバイス210a及び210bに接続された第2のPCIEポートである。アクティブPCIEスイッチ・デバイス210aに接続された第2のPCIEポートが位置するパーティションはアクティブPCIEスイッチ・パーティションと呼ばれてもよく、スタンバイPCIEスイッチ・デバイス210bに接続された第2のPCIEポートが位置するパーティションはスタンバイPCIEスイッチ・パーティションと呼ばれてもよい。この場合、第2のCPUは、処理モジュール223に接続されたダウンリンク・ポートをアクティブPCIEスイッチ・パーティションに追加する。
【0048】
この場合、アクティブPCIEスイッチ・デバイス210aとスタンバイPCIEスイッチ・デバイス210bとのアクティブ・スタンバイ・スイッチング後に、スタンバイPCIEスイッチ・デバイス210bはスイッチング後のアクティブPCIEスイッチ・デバイスとして使用され、アクティブPCIEスイッチ・デバイス210aはスイッチング後のスタンバイPCIEスイッチ・デバイスとして使用される。スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のアクティブPCIEスイッチ・パーティションと呼ばれ、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のスタンバイPCIEスイッチ・パーティションと呼ばれる。この場合、第2のCPUは、処理モジュール223に接続されたダウンリンク・ポートをスイッチング後のアクティブPCIEスイッチ・パーティションに追加する。
【0049】
さらに、HOST230は第3の制御モジュール231を含み、第3の制御モジュール231は、アクティブPCIEスイッチ・デバイス210aとスタンバイPCIEスイッチ・デバイス210bとのスイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイス210bに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイス210aに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイス210bに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイス210aに接続された第3のPCIEポートを使用不可にするように構成された第3のCPUを含む。
【0050】
第3のCPUは、システムが初期設定されたときにPCIEシステム全体を構成するようにさらに構成され、これは、HOST230自体の第3のPCIEポート、PCIEスイッチ・デバイス210a及び210b、ならびにPCIEエンドポイント220を構成することを含む。
【0051】
具体的には、通信インターフェース211a及び211bは、FE(Fast Ethernet(登録商標)、ファスト・イーサネット(登録商標))インターフェース又はGE(Gigabit Ethernet(登録商標)、ギガビット・イーサネット(登録商標))インターフェースを含むが、これらに限定されない。
【0052】
好ましくは、アクティブPCIEスイッチ・デバイス210aはアクティブ・スタンバイ・インターロック・モジュール214aをさらに含み、アクティブ・スタンバイ・インターロック・モジュール214aは第1の制御モジュール213aに接続され、スタンバイPCIEスイッチ・デバイス210bはアクティブ・スタンバイ・インターロック・モジュール214bをさらに含み、アクティブ・スタンバイ・インターロック・モジュール214bは第1の制御モジュール213bに接続されている。
図2に点線で示されているように、アクティブPCIEスイッチ・デバイス210aのアクティブ・スタンバイ・インターロック・モジュール214aとスタンバイPCIEスイッチ・デバイス210bのアクティブ・スタンバイ・インターロック・モジュール214bは相互接続されている。アクティブ・スタンバイ・インターロック・モジュール214a及び214bは、ハードウェア回路を採用することにより実現されてもよい。
【0053】
具体的には、アクティブ・スタンバイ・インターロック・モジュール214aは、アクティブPCIEスイッチ・デバイス210aの第1の制御モジュール213aの制御命令に応じて、アクティブPCIEスイッチ・デバイス210aのアクティブ・スタンバイ・スイッチングを実行し、アクティブ・スタンバイ・スイッチングを実行したことをスタンバイPCIEスイッチ・デバイス210bに通知するように構成されている。スタンバイPCIEスイッチ・デバイス210bのアクティブ・スタンバイ・インターロック・モジュール214bは、アクティブPCIEスイッチ・デバイス210aのアクティブ・スタンバイ・インターロック・モジュール214aと相互作用して、アクティブPCIEスイッチ・デバイス210aのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイス210aのアクティブ・スタンバイ状態が変化すると、スタンバイPCIEスイッチ・デバイス210bのアクティブ・スタンバイ・スイッチングが実行される。アクティブPCIEスイッチ・デバイス210aとスタンバイPCIEスイッチ・デバイス210bがアクティブ・スタンバイ・スイッチングを実行した後、アクティブ・スタンバイ・インターロック・モジュール214a及び214bは、スイッチング後の2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をHOST230及びPCIEエンドポイント220に送信する。
【0054】
好ましくは、アクティブPCIEスイッチ・デバイス210a及びスタンバイPCIEスイッチ・デバイス210bはそれぞれ障害検出モジュールをさらに含み、アクティブPCIEスイッチ・デバイス210aの障害検出モジュールは、アクティブPCIEスイッチ・デバイス210aに接続されたPCIEリンクに障害が存在するかどうかならびにアクティブPCIEスイッチ・デバイス210aが故障しているかどうかを検出するように構成され、スタンバイPCIEスイッチ・デバイス210bの障害検出モジュールは、スタンバイPCIEスイッチ・デバイス210bに接続されたPCIEリンクに障害が存在するかどうかならびにスタンバイPCIEスイッチ・デバイス210bが故障しているかどうかを検出するように構成されている。アクティブPCIEスイッチ・デバイス210aの一方の第1のPCIEポートに接続されたPCIEリンク又はアクティブPCIEスイッチ・デバイス210aが故障していることをアクティブPCIEスイッチ・デバイス210aの障害検出モジュールが検出した場合、アクティブPCIEスイッチ・デバイス210aの第1の制御モジュール213aは制御命令を送信し、その制御命令は、2つのPCIEスイッチ・デバイス210a及び210bのアクティブ・スタンバイ・スイッチングを実行するようアクティブ・スタンバイ・インターロック・モジュール214a及び214bに指示するために使用される。
【0055】
具体的には、ある種の特定の実現例では、HOST230及びPCIEエンドポイント220はブレード・サーバのブレードでもよく(たとえば、HOST230はサーバ・ブレードを含んでもよいが、これに限定されず、PCIEエンドポイント220はハードウェア・アクセラレータ・ブレードを含んでもよいが、これに限定されない)、PCIEスイッチ・デバイス210はPCIEスイッチ・ファブリック・ユニットでもよく、他の種類の特定の実現例では、HOST230及びPCIEエンドポイント220はラック・サーバでもよく、PCIEスイッチ・デバイス210はPCIEスイッチでもよい。
【0056】
本発明のこの実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。
【0057】
同時に、ホストは、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、したがって、ホストは、システム全体を走査するためにリセットし再始動する必要はない。
【0058】
加えて、PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートは常に、アクティブPCIEスイッチ・デバイスに現在接続されている第2のPCIEポートが位置するPCIEスイッチ・パーティション、すなわち、アクティブPCIEスイッチ・パーティションのみに位置し、したがって、走査時に、ホストは常に1つのPCIEエンドポイントのみを確認し、それにより同じPCIEエンドポイントが2回走査されるのを回避し、また、PCIEスイッチ・デバイスに接続された2つの第2のPCIEポートの構成は完全に同じであり、したがって、スイッチングは非常に短い時間で完了することができる。すなわち、一方のPCIEスイッチ・デバイスが故障している場合、それはもう一方のPCIEスイッチ・デバイスに直接スイッチングすることができる。スイッチング前後のシステム構成は完全に同じであり、したがって、システムの動作はまったく影響されず、それによりシステムの信頼性が大幅に改善される。
【0059】
加えて、本発明のこの実施形態では、障害検出を実行するために障害検出モジュールが採用され、自動スイッチングを実行するためにアクティブ・スタンバイ・インターロック・モジュールが採用され、それによりシステムの信頼性がさらに改善される。
実施形態3
本発明の一実施形態は、PCIEスイッチ・デバイスを提供し、これは実施形態1又は2によって提供されたPCIEスイッチベースのサーバ・システムに適用可能である。
図3に示されているように、PCIEスイッチ・デバイスは、第1のPCIEスイッチ・モジュール312と、他のPCIEスイッチ・デバイスに接続するように構成された通信インターフェース311とを含み、第1のPCIEスイッチ・モジュール312は少なくとも2つの第1のPCIEポートを含む。第1のPCIEポートは、HOST及びPCIEエンドポイントに接続するように構成されている。PCIEスイッチ・デバイスと他のPCIEスイッチ・デバイスのうちの一方はアクティブPCIEスイッチ・デバイスであり、もう一方はスタンバイPCIEスイッチ・デバイスである。
【0060】
PCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスとして使用され、他のPCIEスイッチ・デバイスがスタンバイPCIEスイッチ・デバイスとして使用されるときに、PCIEスイッチ・デバイスは通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を他のPCIEスイッチ・デバイスに転送し、PCIEスイッチ・デバイスがスタンバイPCIEスイッチ・デバイスとして使用され、他のPCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスとして使用されるときに、PCIEスイッチ・デバイスは通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得する。
【0061】
好ましくは、PCIEスイッチ・デバイスは第1の制御モジュール313をさらに含み、第1の制御モジュール313は、第1のPCIEスイッチ・モジュール312及び通信インターフェース311に接続されている。第1の制御モジュール313は第1のCPUを含み、スタンバイPCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得するため、第1のCPUは、通信インターフェース311を介して他のPCIEスイッチ・デバイスの第1の中央演算処理装置と相互作用するように構成される。
【0062】
好ましくは、アクティブ及びスタンバイPCIEスイッチ・デバイスのスイッチングは、PCIEエンドポイントがアクティブPCIEスイッチ・デバイスと通信する過程において行われるものと想定され、スイッチ・ネットワーク構成情報は、PCIEエンドポイントに関連する情報をさらに含んでもよい。具体的には、PCIEエンドポイントのID及びアドレスなどの情報が含まれてもよい。PCIEエンドポイントの一方の第2のPCIEポートはPCIEスイッチ・デバイスの第1のPCIEポートに接続され、もう一方の第2のPCIEポートは他のPCIEスイッチ・デバイスの第1のPCIEポートに接続されている。
【0063】
さらに、PCIEスイッチ・デバイスはアクティブ・スタンバイ・インターロック・モジュール314をさらに含み、アクティブ・スタンバイ・インターロック・モジュール314は、第1の制御モジュール313、HOST、及びPCIEエンドポイントに接続されている。PCIEスイッチ・デバイスがアクティブPCIEスイッチ・デバイスであるときに、アクティブ・スタンバイ・インターロック・モジュール314は、第1の制御モジュール313の制御命令に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を第1の制御モジュール313、HOST、及びPCIEエンドポイントに送信するように構成されている。PCIEスイッチ・デバイスがスタンバイPCIEスイッチ・デバイスであるときに、アクティブ・スタンバイ・インターロック・モジュール314は、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールと相互作用することによりアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイスの取得したアクティブ・スタンバイ状態に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をPCIEスイッチ・デバイスの第1の制御モジュール313、HOST、及びPCIEエンドポイントに送信するように構成されている。アクティブ・スタンバイ・インターロック・モジュール314は、ハードウェア回路を採用することにより実現されてもよい。
【0064】
好ましくは、PCIEスイッチ・デバイスは障害検出モジュール315をさらに含み、障害検出モジュール315は、第1の制御モジュール313に接続され、一方の第1のPCIEポートに接続されたPCIEリンクに障害が存在するかどうかならびにPCIEスイッチ・デバイスが故障しているかどうかを検出するように構成されている。PCIEスイッチ・デバイスが故障しているかどうかは、キー・レジスタ(key register)情報に応じて判断されてもよい。アクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続されたPCIEリンク又はアクティブPCIEスイッチ・デバイスが故障していることをアクティブPCIEスイッチ・デバイスの障害検出モジュール315が検出した場合、第1の制御モジュール313は制御命令を送信し、その制御命令は、2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行するようアクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュール314に指示するために使用される。
【0065】
本発明のこの実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。加えて、本発明のこの実施形態では、障害検出を実行するために障害検出モジュールが採用され、自動スイッチングを実行するためにアクティブ・スタンバイ・インターロック・モジュールが採用され、それによりシステムの信頼性がさらに改善される。
実施形態4
本発明の一実施形態は、ホスト(HOST)を提供し、これは実施形態2によって提供されたPCIEスイッチベースのサーバ・システムに適用可能である。
図4に示されているように、HOSTは2つの第3のPCIEポート431を含み、一方の第3のPCIEポート431はアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第3のPCIEポート431はスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成されている。
【0066】
さらに、HOSTは第3の制御モジュール432をさらに含み、第3の制御モジュール432は、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にするように構成された第3のCPUを含む。
【0067】
第3のCPUは、システムが初期設定されたときにPCIEシステム全体を構成するようにさらに構成され、これは、HOST自体の第3のPCIEポート、PCIEスイッチ・デバイス、及びPCIEエンドポイントを構成することを含む。
【0068】
本発明のこの実施形態では、ホストは、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、したがって、ホストは、システム全体を走査するためにリセットし再始動する必要はない。
実施形態5
本発明の一実施形態は、PCIE Endpoint(PCIEエンドポイント)を提供し、これは実施形態1又は2によって提供されたPCIEスイッチベースのサーバ・システムに適用可能である。
図5に示されているように、PCIEエンドポイントは第2のPCIEスイッチ・モジュール522を含み、第2のPCIEスイッチ・モジュール522は2つの第2のPCIEポートを含み、一方の第2のPCIEポートはアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第2のPCIEポートはスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成されている。
【0069】
さらに、PCIEエンドポイントは第2の制御モジュール521と処理モジュール523とをさらに含み、第2のPCIEスイッチ・モジュール522は第2の制御モジュール521及び処理モジュール523に接続され、処理モジュール523は一方の第2のPCIEポートを介して第2のPCIEスイッチ・モジュール522に接続されている。
【0070】
第2の制御モジュール521は、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートがアップリンク・ポートであり、処理モジュール523に接続された第2のPCIEポートがダウンリンク・ポートであり、2つのアップリンク・ポートが異なるPCIEスイッチ・パーティションに位置し、すなわち、1つのPCIEスイッチ・パーティションが1つのアップリンク・ポートのみを有する場合に、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング前に、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報を、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させ、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、処理モジュール523に接続された第2のPCIEポートを、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加するように構成された第2のCPUを含む。処理モジュール523は、GPU、SSD、DSP、及び暗号化/解読ユニットを含むが、これらに限定されない。
【0071】
第2のCPUは、システムが初期設定されたときに2つのPCIEスイッチ・パーティションを作成するようにさらに構成され、それぞれのPCIEスイッチ・パーティションは1つのアップリンク・ポートのみを有し、すなわち、PCIEスイッチ・デバイスに接続された第2のPCIEポートを有する。アクティブPCIEスイッチ・デバイスに接続された一方の第2のPCIEポートが位置するパーティションはアクティブPCIEスイッチ・パーティションと呼ばれてもよく、スタンバイPCIEスイッチ・デバイスに接続されたもう一方の第2のPCIEポートが位置するパーティションはスタンバイPCIEスイッチ・パーティションと呼ばれてもよい。この場合、処理モジュール523に接続されたダウンリンク・ポートがアクティブPCIEスイッチ・パーティションに追加される。
【0072】
この場合、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スタンバイPCIEスイッチ・デバイスはスイッチング後のアクティブPCIEスイッチ・デバイスとして使用され、アクティブPCIEスイッチ・デバイスはスイッチング後のスタンバイPCIEスイッチ・デバイスとして使用される。スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のアクティブPCIEスイッチ・パーティションと呼ばれ、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のスタンバイPCIEスイッチ・パーティションと呼ばれる。この場合、処理モジュール523に接続されたダウンリンク・ポートがスイッチング後のアクティブPCIEスイッチ・パーティションに追加される。
【0073】
本発明のこの実施形態では、PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートは常に、アクティブPCIEスイッチ・デバイスに現在接続されている第2のPCIEポートが位置するPCIEスイッチ・パーティションのみに位置し、したがって、走査時に、ホストは常に1つのPCIEエンドポイントのみを確認し、それにより同じPCIEエンドポイントが2回走査されるのを回避し、また、PCIEスイッチ・デバイスに接続された2つの第2のPCIEポートの構成は完全に同じであり、したがって、スイッチングは非常に短い時間で完了することができる。
実施形態6
本発明の一実施形態は、PCIEスイッチベースのスイッチング方法を提供し、これは実施形態1又は2によって提供されたPCIEスイッチベースのサーバ・システムに適用可能であり、この方法は、
スタンバイPCIEスイッチ・デバイスがスイッチ・ネットワーク構成情報を採用してスタンバイPCIEスイッチ・デバイスを構成するため、アクティブPCIEスイッチ・デバイスにより、アクティブPCIEスイッチ・デバイスの通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報をスタンバイPCIEスイッチ・デバイスに転送すること
を含む。
【0074】
好ましくは、スタンバイPCIEスイッチ・デバイスの通信インターフェースは、ファスト・イーサネット(登録商標)・インターフェース又はギガビット・イーサネット(登録商標)・インターフェースでもよい。アクティブPCIEスイッチ・デバイスの通信インターフェースも、ファスト・イーサネット(登録商標)・インターフェース又はギガビット・イーサネット(登録商標)・インターフェースでもよい。
【0075】
好ましくは、アクティブ及びスタンバイPCIEスイッチ・デバイスのスイッチングは、PCIEエンドポイントがアクティブPCIEスイッチ・デバイスと通信する過程において行われるものと想定され、スイッチ・ネットワーク構成情報は、PCIEエンドポイントに関連する情報をさらに含んでもよい。具体的には、PCIEエンドポイントのID及びアドレスなどの情報が含まれてもよい。PCIEエンドポイントの一方の第2のPCIEポートはアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続され、もう一方の第2のPCIEポートはスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続されている。
【0076】
図6に関連して、以下に詳細な説明を示す。
【0077】
ステップ601: アクティブ及びスタンバイPCIEスイッチ・デバイスがアクティブ・スタンバイ・スイッチングを実行する前に、スタンバイPCIEスイッチ・デバイスは、スタンバイPCIEスイッチ・デバイスの通信インターフェースを介してアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報を取得し、取得したスイッチ・ネットワーク構成情報を採用してスタンバイPCIEスイッチ・デバイスを構成する。具体的には、アクティブPCIEスイッチ・デバイスのものと同じ構成が実行されてもよく、PCIEエンドポイントは、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートのポート構成情報を、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートに対して同期させる。
【0078】
ステップ602: アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートとスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが異なるPCIEスイッチ・パーティションに位置する場合に、アクティブ及びスタンバイPCIEスイッチ・デバイスがアクティブ・スタンバイ・スイッチングを実行した後に、PCIEエンドポイントは、アクティブ及びスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートを、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するPCIEスイッチ・パーティションに追加する。
【0079】
アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートはアップリンク・ポートであり、処理モジュールに接続された第2のPCIEポートはダウンリンク・ポートであり、2つのアップリンク・ポートは異なるPCIEスイッチ・パーティションに位置し、1つのPCIEスイッチ・パーティションは1つのアップリンク・ポートのみを有する。
【0080】
好ましくは、この方法は、ホストが2つの第3のPCIEポートを含み、一方の第3のPCIEポートがアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続され、もう一方の第3のPCIEポートがスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続される場合に、ホストにより、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にすることをさらに含む。
【0081】
好ましくは、この方法は、アクティブPCIEスイッチ・デバイスの障害検出モジュールにより、アクティブPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するかどうかならびにアクティブPCIEスイッチ・デバイスに障害が存在するかどうかを検出することと、アクティブPCIEスイッチ・デバイスに接続されたPCIEリンクに障害が存在するか又はアクティブPCIEスイッチ・デバイスに障害が存在する場合に、アクティブPCIEスイッチ・デバイス及びスタンバイPCIEスイッチ・デバイスについてアクティブ・スタンバイ・スイッチングを実行することをさらに含む。
【0082】
好ましくは、この方法は、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールにより、アクティブPCIEスイッチ・デバイスの第1の制御モジュールの制御命令に応じてアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をデバイスの第1の制御モジュール、ホスト又はPCIEエンドポイント、及びスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールに送信することをさらに含む。
【0083】
好ましくは、この方法は、スタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールにより、アクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールと相互作用することによりアクティブPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、アクティブPCIEスイッチ・デバイスの取得したアクティブ・スタンバイ状態に応じてスタンバイPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行し、スイッチング後のPCIEスイッチ・デバイスのアクティブ・スタンバイ状態をスタンバイPCIEスイッチ・デバイスの第1の制御モジュール、ホスト、及びPCIEエンドポイントに送信することをさらに含む。
【0084】
本発明のこの実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。
実施形態7
本発明の一実施形態は、PCIEスイッチベースのスイッチング方法を提供し、これは実施形態1又は2によって提供されたPCIEスイッチベースのサーバ・システムに適用可能である。
図7を参照すると、この方法は以下のステップを含む。
【0085】
ステップ701: システムは電源を投入し始動する。
【0086】
システムが電源を投入し始動した後、2つのPCIEスイッチ・デバイスが初期設定され始める。
【0087】
具体的には、PCIEスイッチ・デバイスの初期設定は以下の動作を含む。
【0088】
PCIEスイッチ・デバイスの第1の制御モジュールは、PCIEスイッチ・ネットワークのアップリンク/ダウンリンク・ポート及びパーティションを構成するなど、事前設定されたシステム構成に応じてPCIEスイッチ・デバイスの第1のPCIEスイッチ・モジュールを初期設定するが、これは従来技術であり、ここでは詳細に説明しない。
【0089】
ステップ702: 2つのPCIEスイッチ・デバイスは2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を決定し、一方はアクティブPCIEスイッチ・デバイスとして使用され、もう一方はスタンバイPCIEスイッチ・デバイスとして使用される。
【0090】
さらに、2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態は、PCIEスイッチ・デバイスの開始シーケンス及びデバイス状態(たとえば、キー・チップ(key chip)・セルフチェック)などに応じて決定されてもよい。
【0091】
特定の実現例では、これは2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ・インターロック・モジュールを介して実現されてもよい。
【0092】
ステップ703: PCIEエンドポイントは、2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、2つのPCIEスイッチ・パーティションを作成し、一方のPCIEスイッチ・パーティションは1つのアップリンク・ポート(PCIEスイッチ・デバイスに接続された第2のPCIEポートはアップリンク・ポートである)を含み、1つ又は複数のダウンリンク・ポート(PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートはダウンリンク・ポートである)を、アクティブPCIEスイッチ・デバイスに接続されたアップリンク・ポートが位置するPCIEスイッチ・パーティションに追加する。PCIEエンドポイントは第2のPCIEスイッチ・モジュールを含み、第2のPCIEスイッチ・モジュールは2つの第2のPCIEポートを含み、一方の第2のPCIEポートはアクティブPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成され、もう一方の第2のPCIEポートはスタンバイPCIEスイッチ・デバイスの第1のPCIEポートに接続するように構成される。
【0093】
具体的には、PCIEエンドポイントの処理モジュールは、GPU、SSD、DSP、及び暗号化/解読ユニットを含むが、これらに限定されない。
【0094】
この実施形態では、アップリンク・ポートとして設定された第2のPCIEインターフェースはアップリンクの第2のPCIEポートと呼ばれ、ダウンリンク・ポートとして設定された第2のPCIEインターフェースはダウンリンクの第2のPCIEポートと呼ばれる。
【0095】
アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチングの前に、アクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはアクティブPCIEスイッチ・パーティションと呼ばれてもよく、スタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスタンバイPCIEスイッチ・パーティションと呼ばれてもよい。この場合、処理モジュールに接続されたダウンリンクの第2のPCIEポートはアクティブPCIEスイッチ・パーティションに追加される。
【0096】
具体的には、PCIEエンドポイントは、アクティブ・スタンバイ・インターロック・モジュールを介して2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得する。
【0097】
ステップ704: HOSTは、2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得し、そのアクティブ・スタンバイ状態に応じて、2つのPCIEスイッチ・デバイスに接続された第3のPCIEポートを個別に設定する。HOSTは2つの第3のPCIEポートを含み、一方の第3のPCIEポートはアクティブPCIEスイッチ・デバイスの一方の第1のPCIEポートに接続するように構成され、もう一方の第3のPCIEポートはスタンバイPCIEスイッチ・デバイスのもう一方の第1のPCIEポートに接続するように構成される。
【0098】
同様に、HOSTは、アクティブ・スタンバイ・インターロック・モジュールを介して2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を取得してもよい。
【0099】
具体的には、このステップは、アクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、同時に、スタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にすることを含む。次に、HOSTはシステム全体を構成するが、これは、HOST自体の第3のPCIEポート、PCIEスイッチ・デバイス、及びPCIEエンドポイントを構成することを含む。
【0100】
具体的には、HOSTは、アクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報をメモリに保管する。
【0101】
ステップ704の実行が完了した後、システムは正常に動作し始める。
【0102】
ステップ705: アクティブPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報をスタンバイPCIEスイッチ・デバイスに送信し、スタンバイPCIEスイッチ・デバイスは取得したスイッチ・ネットワーク構成情報を採用してアクティブPCIEスイッチ・デバイスのものと同じ構成を実行する。
【0103】
具体的には、スイッチ・ネットワーク構成情報は、2つのPCIEスイッチ・デバイス間の通信リンクを介して送信されてもよい。
【0104】
好ましくは、スイッチ・ネットワーク構成情報は定期的な時間に送信されてもよい。
【0105】
ステップ706: PCIEエンドポイントは、アクティブPCIEスイッチ・デバイスに接続されたアップリンクの第2のPCIEポートの構成情報を、スタンバイPCIEスイッチ・デバイスに接続されたアップリンクの第2のPCIEポートに対して同期させる。
【0106】
具体的には、この同期は、ここでは、アクティブ・スタンバイ・スイッチングが実行されたときに、スタンバイPCIEスイッチ・デバイスのアップリンクの第2のPCIEポートの構成情報がアクティブPCIEスイッチ・デバイスに接続されたアップリンクの第2のPCIEポートのものと同じであることを保証するために、アクティブPCIEスイッチ・デバイスに接続されたアップリンクの第2のPCIEポートの構成情報を定期的に採用してスタンバイPCIEスイッチ・デバイスのアップリンクの第2のPCIEポートを構成することを指す。
【0107】
ステップ707: アクティブPCIEスイッチ・デバイスに接続されたPCIEリンク又はアクティブPCIEスイッチ・デバイスに障害が存在するかどうかを検出する。具体的には、アクティブPCIEスイッチ・デバイスとホストとの間のPCIEリンクに障害が存在するかどうか、アクティブPCIEスイッチ・デバイスとPCIEエンドポイントとの間のPCIEリンクに障害が存在するかどうか、ならびにアクティブPCIEスイッチ・デバイスに障害が存在するかどうかが検出される。
【0108】
具体的には、PCIEスイッチ・デバイスが故障しているかどうかは、キー・レジスタ情報に応じて判断されてもよい。
【0109】
システムが正常に動作している場合、ステップ705、ステップ706、及びステップ707の実行にはいかなる順序もないことに留意されたい。これらのステップは同時に実行されてもよく、事前設定されたシーケンスに応じて順次実行されてもよい。システムが正常に動作する過程において、ステップ705、ステップ706、及びステップ707は複数回実行される。
【0110】
ステップ708: アクティブPCIEスイッチ・デバイスに接続されたPCIEリンク又はアクティブPCIEスイッチ・デバイスが故障していることが検出されたときに、アクティブ及びスタンバイPCIEスイッチ・デバイスのスイッチングを実行する。
【0111】
すなわち、スイッチング前のアクティブPCIEスイッチ・デバイスはスイッチング後のスタンバイPCIEスイッチ・デバイスになり、スイッチング前のスタンバイPCIEスイッチ・デバイスはスイッチング後のアクティブPCIEスイッチ・デバイスになる。
【0112】
具体的には、このステップは、PCIEスイッチ・デバイスの第1の制御モジュールによりアクティブ・スタンバイ・インターロック・モジュールを制御することによって実現されてもよい。
【0113】
ステップ709: 2つのPCIEスイッチ・デバイスは2つのPCIEスイッチ・デバイスのアクティブ・スタンバイ状態を決定する。
【0114】
具体的には、このステップもアクティブ・スタンバイ・インターロック・モジュールを介して実現される。
【0115】
ステップ710: PCIEエンドポイントは、ダウンリンクの第2のPCIEポートを、スイッチング後のアクティブ・スイッチ・デバイスに接続されたアップリンクの第2のPCIEポートが位置するPCIEスイッチ・パーティションにシフトする。
【0116】
具体的には、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスとのアクティブ・スタンバイ・スイッチング後に、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のアクティブPCIEスイッチ・パーティションと呼ばれ、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第2のPCIEポートが位置するパーティションはスイッチング後のスタンバイPCIEスイッチ・パーティションと呼ばれる。この場合、処理モジュールに接続されたダウンリンクの第2のPCIEポートはスイッチング後のアクティブPCIEスイッチ・パーティションに追加される。
【0117】
ステップ711: HOSTは、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを開放し、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、同時に、スイッチング後のスタンバイPCIEスイッチ・デバイスに接続された第3のPCIEポートを使用不可にする。
【0118】
具体的には、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報であって、ステップ704でメモリに保管されたものを使用して、スイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成してもよい。
【0119】
上記のステップ710及び711の実行にはいかなる順序もなく、これらは同時に実行されてもよく、事前設定されたシーケンスに応じて順次実行されてもよい。
【0120】
本発明のこの実施形態では、アクティブPCIEスイッチ・デバイスとスタンバイPCIEスイッチ・デバイスが配置され、相互接続された通信インターフェースが2つのPCIEスイッチ・デバイス上に配置されており、その結果、アクティブPCIEスイッチ・デバイスのスイッチ・ネットワーク構成情報は通信インターフェースを介してスタンバイPCIEスイッチ・デバイスに転送することができる。アクティブPCIEスイッチ・デバイスで障害が発生した場合、スタンバイPCIEスイッチ・デバイスはアクティブPCIEスイッチ・デバイスのものと同じスイッチ・ネットワーク構成情報を採用して構成を実行し、それによりシステムの信頼性を改善することができる。
【0121】
同時に、ホストは、スイッチング前のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートのポート構成情報を採用してスイッチング後のアクティブPCIEスイッチ・デバイスに接続された第3のPCIEポートを構成し、したがって、ホストは、システム全体を走査するためにリセットし再始動する必要はない。
【0122】
加えて、PCIEエンドポイントの処理モジュールに接続された第2のPCIEポートは常に、アクティブPCIEスイッチ・デバイスに現在接続されている第2のPCIEポートが位置するPCIEスイッチ・パーティション、すなわち、アクティブPCIEスイッチ・パーティションのみに位置し、したがって、走査時に、ホストは常に1つのPCIEエンドポイントのみを確認し、それにより同じPCIEエンドポイントが2回走査されるのを回避し、また、PCIEスイッチ・デバイスに接続された2つの第2のPCIEポートの構成は完全に同じであり、したがって、スイッチングは非常に短い時間で完了することができる。すなわち、一方のPCIEスイッチ・デバイスが故障している場合、それはもう一方のPCIEスイッチ・デバイスに直接スイッチングすることができる。スイッチング前後のシステム構成は完全に同じであり、したがって、システムの動作はまったく影響されず、それによりシステムの信頼性が大幅に改善される。
【0123】
上記の実施形態によって提供されるサーバ・システムがPCIEスイッチ・デバイスのアクティブ・スタンバイ・スイッチングを実行する場合に、上記の機能モジュールの分割についてのみ、例を挙げて説明していることに留意されたい。実際の適用例では、上記の機能は必要に応じて完了するために異なる機能モジュールに割り振られてもよい。すなわち、上記で記載した機能の全部又は一部を完了するために、1つの装置の内部構造が異なる機能モジュールに分割される。加えて、上記の実施形態によって提供されるサーバ・システムとスイッチング方法の実施形態は同じ概念に属し、特定の実現過程のために、方法の実施形態を参照してもよく、詳細についてはここでは繰り返して説明しない。
【0124】
本発明の上記の諸実施形態の一連番号は、単に説明のためのものであり、諸実施形態の優先度を示すものではない。
【0125】
当業者であれば、上記の諸実施形態のステップの全部又は一部がハードウェアによって実現されてもよく、関連するハードウェアに指示するプログラムによって実現されてもよいことも理解できるであろう。そのプログラムはコンピュータ可読記憶媒体に保管されてもよい。その記憶媒体は、読み取り専用メモリ、磁気ディスク、又は光ディスクなどでもよい。
【0126】
上記の説明は、単に本発明の模範的な諸実施形態に過ぎず、本発明を限定するためのものではない。本発明の精神及び原理の範囲内でなされた変更、同等の置換、又は改良はいずれも本発明の保護範囲に入るものとする。