(57)【特許請求の範囲】
【請求項１】
レイヤ２ネットワークに接続するEthernetカードと、
前記Ethernetカードを介して、所定の条件を満たす、I/Oデバイス側に配置され、データフレームと制御フレームをレイヤ２ネットワーク経由で送受信するEthernetカードであるExpEtherカード（EEIOカード）から、前記EEIOカードが、サーバ側に配置され、データフレームと制御フレームをレイヤ２ネットワーク経由で送受信するEthernetカードであるExpEtherカード（EESVカード）に未接続であることを示す情報を含むフレームを受信する受信部と、
前記レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な前記管理EESVカードを決定する決定部と、
前記EEIOカードに、決定された前記管理EESVカードのグループIDを前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する送信部とを備える
ことを特徴とする管理装置。
【請求項２】
受信部は、Ethernetカードを介して、所定の条件を満たさないEEIOカードから前記EEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信し、
送信部は、前記EEIOカードに、グループIDの初期値を前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する
請求項１記載の管理装置。
【請求項３】
所定の条件を満たすEEIOカードとEESVカードとの接続を解除する指示が入力される入力部を備え、
決定部は、管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な前記管理EESVカードを決定し、
送信部は、前記EEIOカードに、決定された前記管理EESVカードのグループIDを前記EEIOカードのグループIDに設定させるフレームを、Ethernetカードを介して前記EEIOカードに送信する
請求項１または請求項２記載の管理装置。
【請求項４】
入力部に、所定の条件を満たさないEEIOカードとEESVカードとの接続を解除する指示が入力され、
送信部は、前記EEIOカードに、グループIDの初期値を前記EEIOカードのグループIDに設定させるフレームを、Ethernetカードを介して前記EEIOカードに送信する
請求項３記載の管理装置。
【請求項５】
EEIOカードに接続されているI/Oデバイスの情報を記憶する記憶部を備え、
所定の条件は、EEIOカードに接続されているI/Oデバイスの情報が前記記憶部に記憶されていることである
請求項１から請求項４のうちのいずれか１項に記載の管理装置。
【請求項６】
受信部は、Ethernetカードを介して、管理EESVカードからグループIDを含まないフレームを受信し、
送信部は、前記管理EESVカードに、未割当のグループIDを前記管理EESVカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記管理EESVカードに送信する
請求項１から請求項５のうちのいずれか１項に記載の管理装置。
【請求項７】
レイヤ２ネットワークに接続するEthernetカードを備える管理装置において実行される管理方法であって、
前記Ethernetカードを介して、所定の条件を満たすEEIOカードから前記EEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信し、
前記レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な前記管理EESVカードを決定し、
前記EEIOカードに、決定された前記管理EESVカードのグループIDを前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する
ことを特徴とする管理方法。
【請求項８】
Ethernetカードを介して、所定の条件を満たさないEEIOカードから前記EEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信し、
前記EEIOカードに、グループIDの初期値を前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する
請求項７記載の管理方法。
【請求項９】
レイヤ２ネットワークに接続するEthernetカードを備えるコンピュータにおいて実行される管理プログラムであって、
前記コンピュータに、
前記Ethernetカードを介して、所定の条件を満たすEEIOカードから前記EEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信する受信処理、
前記レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な前記管理EESVカードを決定する決定処理、および
前記EEIOカードに、決定された前記管理EESVカードのグループIDを前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する送信処理
を実行させるための管理プログラム。
【請求項１０】
コンピュータに、
Ethernetカードを介して、所定の条件を満たさないEEIOカードから前記EEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信する受信処理、および
前記EEIOカードに、グループIDの初期値を前記EEIOカードのグループIDに設定させるフレームを、前記Ethernetカードを介して前記EEIOカードに送信する送信処理を実行させる
請求項９記載の管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理装置、管理方法および管理プログラムに関し、特にExpEtherネットワークにおけるI/Oデバイスの管理装置、管理方法および管理プログラムに関する。
【背景技術】
【０００２】
PCI Expressは、I/Oシリアル転送インターフェースである。また、PCI Expressスイッチは、PCI Express ポートを増やすためのデバイスである。特許文献１には、通信ネットワークを介したPCI Expressスイッチを介して、複数のCPU(Central Processing Unit)と周辺装置を接続したシステムが記載されている。
【０００３】
ExpEtherは、PCIe(PCI Express)のTLP(Transaction Layer Packet)をカプセル化することによってEthernet（登録商標）フレームを作成し、作成されたEthernetフレームをレイヤ２ネットワーク経由で送受信する技術である。ExpEtherの技術を用いた場合、ユーザは、例えば、PCIe規格のリソースとサーバをレイヤ２ネットワーク経由で接続できる。
【０００４】
ExpEtherネットワークは、サーバ側に配置されるExpEtherカードと、I/Oデバイス側に配置されるExpEtherカードと、管理サーバとを接続するためのレイヤ２ネットワークである。
【０００５】
以下、ExpEtherカードを説明する。ExpEtherカードは、データフレームと制御フレームをレイヤ２ネットワーク経由で送受信するEthernetカードである。データフレームは、TLPがカプセル化されて作成されたEthernetフレームである。
【０００６】
ExpEtherカードは、送信するフレームに、自身に割り当てられたグループIDを設定する。また、ExpEtherカードは、自身に割り当てられたグループIDと異なるグループIDが設定されたフレームを受信した場合、受信したフレームを廃棄する。
【０００７】
ExpEtherカードの種別には、EESVカード（以下、EESVという。）とEEIOカード（以下、EEIOという。）の２種類が存在する。
【０００８】
EESVは、サーバ側に配置されるExpEtherカードである。EESVは、PCIeスイッチのUpstream Portとして動作する。EESVは、PCIeのRoot complex機能を有するチップセットと接続する。
【０００９】
EEIOは、I/Oデバイス側に配置されるExpEtherカードである。EEIOは、PCIeスイッチのDownstream Portとして動作する。EEIOは、ストレージやネットワークインタフェースカードなどのI/Oデバイスと接続する。
【００１０】
EESVは、自身に割り当てられたグループIDと同一のグループIDが設定されている、EEIOが送信した制御フレームの受信を契機に、制御フレームを送信したEEIOとの接続を確立する。送信される制御フレームは、例えば、DEVINFOフレームである。
【００１１】
なお、EEIOは、レイヤ２ネットワークを介してEESVに接続する。新たにEESVに接続する場合、EEIOには、DEVINFOフレームをブロードキャストすることが求められる。
【００１２】
また、サーバは、起動直後にBIOS(Basic Input/Output System)経由で通信先のI/Oデバイスを認識するために、例えば、起動後100ms以内にEEIOからのブロードキャスト情報を受信しなくてはならない。サーバにI/Oデバイスを認識させるために、EEIOには、短い間隔でDEVINFOフレームを送信することが求められる。
【００１３】
EESVに未接続のEEIOは、EESVとの接続を確立するために、DEVINFOフレームを短い間隔でブロードキャストする。DEVINFOフレームが送信される間隔は、例えば、10ms間隔である。
【００１４】
EESVとの接続が確立されたEEIO、およびEESVは、キープアライブとして、DEVINFOフレームを所定の間隔でブロードキャストする。所定の間隔は、例えば、500ms間隔である。
【００１５】
ExpEtherの技術が適用された、ExpEtherカードを含む通信システムの構成例を図１１に示す。図１１は、ExpEtherの技術が適用された通信システムの構成例を示すブロック図である。図１１に示す通信システムは、管理サーバ９００と、サーバ２０１〜２０Ｋと、EEIO３０１〜３０Ｌと、EEIO５０１〜５０Ｍと、I/Oデバイス４０１〜４０Ｌと、I/Oデバイス６０１〜６０Ｍと、レイヤ２ネットワーク７００とを含む。
【００１６】
管理サーバ９００は、管理ソフトウェア９０１と、Ethernetカード９０２とを含む。サーバ２０１は、チップセット２１１と、CPU２２１と、メモリ２３１と、EESV２４１とを含む。他のサーバの構成も、サーバ２０１の構成と同様である。
【００１７】
管理サーバ９００、サーバ２０１〜２０Ｋ、EEIO３０１〜３０Ｌ、およびEEIO５０１〜５０Ｍは、レイヤ２ネットワーク７００に接続されている。また、I/Oデバイス４０１〜４０Ｌは、EEIO３０１〜３０Ｌにそれぞれ接続されている。また、I/Oデバイス６０１〜６０Ｍは、EEIO５０１〜５０Ｍにそれぞれ接続されている。
【００１８】
管理ソフトウェア９０１は、ExpEtherカードを一括管理するアプリケーションソフトウェアである。管理ソフトウェア９０１は、レイヤ２ネットワーク７００に接続されたExpEtherカードとの間で制御フレームを送受信することによって、ExpEtherカードを管理する。
【００１９】
管理ソフトウェア９０１の主な機能として、以下に示す機能がある。管理ソフトウェア９０１は、ExpEtherカードに対して制御フレームを送信することによって、グループIDを割り当てる機能を有する。送信される制御フレームは、例えば、VLANSETフレームである。
【００２０】
VLANSETフレームは、ExpEtherカードのグループIDの更新に用いられる制御フレームである。VLANSETフレームを受信したExpEtherカードは、自身のグループIDを、VLANSETフレームに含まれているグループIDに更新する。
【００２１】
なお、管理ソフトウェア９０１は、システム管理者用のユーザインタフェースを提供してもよい。提供されたユーザインタフェースを介して、システム管理者は、例えばExpEtherカードに割り当てるグループIDを設定できる。
【００２２】
また、ExpEtherカードがブロードキャストしたDEVINFOフレームが受信された場合、管理ソフトウェア９０１は、受信されたDEVINFOフレームに含まれるデバイス情報を抽出し、データベースまたはメモリに保存する機能を有する。なお、管理ソフトウェア９０１がシステム管理者用のユーザインタフェースを提供する場合、システム管理者は、提供されたユーザインタフェースを介して保存されたデバイス情報を参照できる。
【００２３】
また、管理ソフトウェア９０１は、管理対象の各ExpEtherカードの生存の有無を確認する機能を有する。管理ソフトウェア９０１は、各ExpEtherカードが送信した各DEVINFOフレームが受信された間隔が所定時間以内であるか否かを確認することによって、各ExpEtherカードの生存の有無を確認する。管理ソフトウェア９０１は、ExpEtherカードから所定時間以内にDEVINFOフレームが受信されているか否かを、保存するデバイス情報にDEVINFO受信状態情報として含める。
【００２４】
図１１に示すように、EESV２４１およびEEIO３０１〜３０Ｌには、同一のグループID(GID=x)が割り当てられている。また、EESV２４ＫおよびEEIO５０１〜５０Ｍには、同一のグループID(GID=y)が割り当てられている。上記のように、管理サーバ９００の管理ソフトウェア９０１が、対象の各ExpEtherカードに対して、同一のグループIDを割り当てる。
【００２５】
同一のグループIDが割り当てられることによって、EESV２４１およびEEIO３０１〜３０Ｌ、EESV２４ＫおよびEEIO５０１〜５０Ｍは、それぞれ仮想的なPCIeスイッチを構成する。図１１に示す点線の枠内が、構成された仮想的なPCIeスイッチに相当する。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００７−２１９８７３号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
図１１に示すように、比較的小規模な構成の通信システムにおいて、ExpEtherカードは、ディスプレイ、キーボードおよびマウスなどのI/Oデバイスを、遠隔配置するために使用される。
【００２８】
システム構成を定義する際、システム管理者は、遠隔配置されるI/Oデバイスと、サーバとを１対１に対応付ける。I/Oデバイスとサーバとが１対１に対応付けられた構成のシステムが運用されると、レイヤ２ネットワークに接続されたEEIOは、すぐにEESVに接続する。
【００２９】
すなわち、上記のような通信システムが運用される場合、EEIOがEESVと接続を確立するために短い間隔でブロードキャストするDEVINFOフレームが、他のEEIO-EESV間の通信に影響を及ぼすという問題は生じない。その理由は、運用が開始されるとEEIOはすぐにEESVと接続を確立し、短い間隔でのDEVINFOフレームのブロードキャストもすぐに行われなくなるためである。
【００３０】
しかし、今後の通信システムの運用において、複数のI/Oデバイスをリソースプールとして管理し、システム利用者の要求を受けてシステム管理者がサーバにリソースプールの中からI/Oデバイスを割り当てる手法が想定される。リソースプールとして管理されるI/Oデバイスは、例えば、ストレージやネットワークインタフェースカードである。想定されるシステム運用において、レイヤ２ネットワークに接続されたEEIOは、すぐにEESVに接続しない。
【００３１】
上記の想定されるシステム運用では、EEIOがDEVINFOフレームを短い間隔でブロードキャストし続けるため、EEIOによるブロードキャストが、他のEEIO-EESV間の通信に影響を及ぼす可能性がある。
【００３２】
そこで、本発明は、EESVカードに未接続のEEIOカードによるブロードキャストの影響を防止できる管理装置、管理方法および管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００３３】
本発明による管理装置は、レイヤ２ネットワークに接続するEthernetカードと、Ethernetカードを介して、所定の条件を満たすEEIOカードからEEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信する受信部と、レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な管理EESVカードを決定する決定部と、EEIOカードに、決定された管理EESVカードのグループIDをEEIOカードのグループIDに設定させるフレームを、Ethernetカードを介してEEIOカードに送信する送信部とを備えることを特徴とする。
【００３４】
本発明による管理方法は、レイヤ２ネットワークに接続するEthernetカードを備える管理装置において実行される管理方法であって、Ethernetカードを介して、所定の条件を満たすEEIOカードからEEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信し、レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な管理EESVカードを決定し、EEIOカードに、決定された管理EESVカードのグループIDをEEIOカードのグループIDに設定させるフレームを、Ethernetカードを介してEEIOカードに送信することを特徴とする。
【００３５】
本発明による管理プログラムは、レイヤ２ネットワークに接続するEthernetカードを備えるコンピュータにおいて実行される管理プログラムであって、コンピュータに、Ethernetカードを介して、所定の条件を満たすEEIOカードからEEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信する受信処理、レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な管理EESVカードを決定する決定処理、およびEEIOカードに、決定された管理EESVカードのグループIDをEEIOカードのグループIDに設定させるフレームを、Ethernetカードを介してEEIOカードに送信する送信処理を実行させることを特徴とする。
【発明の効果】
【００３６】
本発明によれば、EESVカードに未接続のEEIOカードによるブロードキャストの影響を防止できる。
【図面の簡単な説明】
【００３７】
【図１】本発明による管理装置の実施形態の構成例を示すブロック図である。
【図２】制御フレーム送信部１１２が送信するVLANSETフレームの構成例を示す説明図である。
【図３】制御フレーム受信部１１３が受信するDEVINFOフレームの構成例を示す説明図である。
【図４】デバイス情報記憶部１１５に記憶されるデバイス情報の例を示す説明図である。
【図５】管理EESV情報記憶部１１７に記憶される管理EESV情報の例を示す説明図である。
【図６】管理対象I/Oデバイス情報記憶部１１８に記憶される管理対象I/Oデバイス情報の例を示す説明図である。
【図７】管理ソフトウェア１０１によるDEVINFOフレームの受信処理の動作を示すフローチャートである。
【図８】管理ソフトウェア１０１によるEEIOの接続解除処理の動作を示すフローチャートである。
【図９】管理ソフトウェア１０１によるEEIOのグループIDの初期化処理の動作を示すフローチャートである。
【図１０】本発明による管理装置の概要を示すブロック図である。
【図１１】ExpEtherの技術が適用された通信システムの構成例を示すブロック図である。
【発明を実施するための形態】
【００３８】
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による管理装置の実施形態の構成例を示すブロック図である。図１に示す管理サーバ１００は、管理ソフトウェア１０１と、Ethernetカード１０２と、管理EESV８０１〜８０Ｎとを含む。Ethernetカード１０２および管理EESV８０１〜８０Ｎは、レイヤ２ネットワークに接続されている。
【００３９】
管理サーバ１００は、図１１に示す通信システムにおいて、管理サーバ９００の代わりに使用される管理サーバである。なお、図１に示す管理サーバ１００の構成は、管理EESVが管理サーバ１００に配置された場合の構成である。管理サーバ１００は、管理EESVを含まなくてもよい。
【００４０】
管理サーバ１００には、PCIeスイッチとして未使用のEEIOが接続される管理EESVが配置されている。管理EESVには、EESVに未接続のEEIOが接続される。管理EESVにEEIOが接続されることによって、EEIOがEESVと接続を確立するためにブロードキャストするDEVINFOフレームが抑止される。
【００４１】
なお、管理サーバ１００は、管理EESVに接続されているEEIOに対して、レイヤ２ネットワーク上のサーバに配置されているEESVに割り当てられているグループIDと同じグループIDを割り当てることもできる。すなわち、管理サーバ１００は、EEIOとEESVの接続を確立させるという、通常のExpEtherカードの管理装置としての機能も有する。
【００４２】
管理ソフトウェア１０１は、ユーザインタフェース部１１１と、制御フレーム送信部１１２と、制御フレーム受信部１１３と、デバイス制御部１１４と、デバイス情報記憶部１１５と、管理EESV制御部１１６と、管理EESV情報記憶部１１７と、管理対象I/Oデバイス情報記憶部１１８とを含む。なお、図１に示す実線の矢印は、例えばデータの入出力処理を示す。また、図１に示す点線の矢印は、例えばデータの参照処理や、データの更新処理を示す。
【００４３】
ユーザインタフェース部１１１は、システム管理者用のユーザインタフェースを提供する機能を有する。ユーザインタフェース部１１１が提供するユーザインタフェースを介して、システム管理者は、管理EESV情報の参照および更新、管理対象I/Oデバイス情報の参照および更新、デバイス情報の参照、グループIDの設定および初期化を実行できる。
【００４４】
制御フレーム送信部１１２は、Ethernetカード１０２を介してExpEtherカードに制御フレームを送信する機能を有する。制御フレーム送信部１１２は、例えば、システム管理者がグループIDを設定した際、パラメータとして指定されたMAC(Media Access Control)アドレスを有するExpEtherカードに、設定されたグループIDを含むVLANSETフレームを送信する。
【００４５】
本実施形態におけるVLANSETフレームの構成例を図２に示す。図２は、制御フレーム送信部１１２が送信するVLANSETフレームの構成例を示す説明図である。
【００４６】
図２に示すVLANSETフレームは、「宛先MACアドレス」、「送信元MACアドレス」、「グループID」、「フレーム種別」、「更新後グループID」の各フィールドで構成される。なお、図２に示すVLANSETフレームには、本実施形態に関係するフィールドのみが含まれている。以下、図２に示すVLANSETフレームの各フィールドを説明する。
【００４７】
「宛先MACアドレス」は、VLANSETフレームの送信先ExpEtherカードのMACアドレスが指定されるフィールドである。
【００４８】
「送信元MACアドレス」は、VLANSETフレームの送信元である、管理ソフトウェア１０１が使用するEthernetカード１０２のMACアドレスが指定されるフィールドである。
【００４９】
「グループID」は、VLANSETフレームの送信先ExpEtherカードに割り当てられているグループIDが指定されるフィールドである。「グループID」には、送信先ExpEtherカードの更新前のグループIDが指定される。
【００５０】
「フレーム種別」は、送信されるフレームがVLANSETフレームであることを示す値が指定されるフィールドである。
【００５１】
「更新後グループID」は、VLANSETフレームの送信先ExpEtherカードに割り当てられるグループIDが指定されるフィールドである。「更新後グループID」には、送信先ExpEtherカードの更新後のグループIDが指定される。
【００５２】
制御フレーム受信部１１３は、Ethernetカード１０２を介してExpEtherカードから制御フレームを受信する機能を有する。制御フレーム受信部１１３は、例えば、ExpEtherカードからブロードキャストされたDEVINFOフレームを受信する。
【００５３】
制御フレーム受信部１１３は、受信されたDEVINFOフレームから、フィールドに指定された値を抽出する。デバイス制御部１１４は、制御フレーム受信部１１３により抽出された値をデバイス情報記憶部１１５に保存する。
【００５４】
本実施形態におけるDEVINFOフレームの構成例を図３に示す。図３は、制御フレーム受信部１１３が受信するDEVINFOフレームの構成例を示す説明図である。
【００５５】
図３に示すDEVINFOフレームは、「宛先MACアドレス」、「送信元MACアドレス」、「グループID」、「フレーム種別」、「カード種別」、「EEIO接続数」、「接続状態」、「Device ID」、「Vendor ID」、「Class Code」の各フィールドで構成される。なお、図３に示すDEVINFOフレームには、本実施形態に関係するフィールドのみが含まれている。以下、図３に示すDEVINFOフレームの各フィールドを説明する。
【００５６】
「宛先MACアドレス」は、ブロードキャストアドレスが指定されるフィールドである。
【００５７】
「送信元MACアドレス」は、DEVINFOフレームの送信元ExpEtherカードのMACアドレスが指定されるフィールドである。
【００５８】
「グループID」は、DEVINFOフレームの送信元ExpEtherカードに割り当てられているグループIDが指定されるフィールドである。
【００５９】
「フレーム種別」は、送信されるフレームがDEVINFOフレームであることを示す値が指定されるフィールドである。
【００６０】
「カード種別」は、DEVINFOフレームの送信元ExpEtherカードの種別が指定されるフィールドである。「カード種別」フィールドには、「EESV」と「EEIO」のいずれかのカードの種別を示す値が指定される。
【００６１】
「EEIO接続数」は、DEVINFOフレームの送信元EESVに接続されたEEIOの数が指定されるフィールドである。なお、「カード種別」フィールドに指定される値がEESVである場合のみ、「EEIO接続数」フィールドに値が指定される。
【００６２】
PCIe 3.0の仕様では、１個のEESVに対して、最大３２個のEEIOが接続される。すなわち、DEVINFOフレームの送信元EESVがPCIe 3.0の仕様に従う場合、「EEIO接続数」フィールドには、０〜３２のいずれかの値が指定される。
【００６３】
「接続状態」は、DEVINFOフレームの送信元EEIOの、EESVとの接続状態が指定されるフィールドである。「接続状態」フィールドには、「接続済み」と「未接続」のいずれかの接続状態を示す値が指定される。なお、「カード種別」フィールドに指定される値がEEIOである場合のみ、「接続状態」フィールドに値が指定される。
【００６４】
「Device ID」、「Vendor ID」および「Class Code」は、DEVINFOフレームの送信元EEIOに接続されているI/OデバイスのDevice ID、Vendor ID、およびClass Codeがそれぞれ指定されるフィールドである。なお、「カード種別」フィールドに指定される値がEEIOである場合のみ、「Device ID」フィールド、「Vendor ID」フィールドおよび「Class Code」フィールドに値が指定される。
【００６５】
デバイス情報管理部１１４は、デバイス情報記憶部１１５に記憶されているデバイス情報を参照および更新する機能を有する。デバイス情報管理部１１４は、例えば、制御フレーム受信部１１３による処理を契機に、デバイス情報記憶部１１５に記憶されているデバイス情報を参照および更新する。
【００６６】
デバイス情報記憶部１１５は、DEVINFOフレームから抽出されたデバイス情報を記憶および管理する機能を有する。デバイス情報記憶部１１５に記憶されるデバイス情報の例を図４に示す。図４は、デバイス情報記憶部１１５に記憶されるデバイス情報の例を示す説明図である。
【００６７】
図４に示すように、デバイス情報は、「MACアドレス」と、「グループID」と、「カード種別」と、「EEIO接続数」と、「接続状態」と、「Device ID」と、「Vendor ID」と、「Class Code」とで構成される。
【００６８】
「MACアドレス」は、ExpEtherカードのMACアドレスを示す。「MACアドレス」には、DEVINFOフレームの「送信元MACアドレス」フィールドに指定された値が設定される。
【００６９】
「グループID」は、ExpEtherカードに割り当てられているグループIDを示す。「グループID」には、DEVINFOフレームの「グループID」フィールドに指定された値が設定される。
【００７０】
「カード種別」は、ExpEtherカードの種別を示す。「カード種別」には、DEVINFOフレームの「カード種別」フィールドに指定された値が設定される。
【００７１】
「EEIO接続数」は、EESVに接続されたEEIOの数を示す。「EEIO接続数」には、DEVINFOフレームの「EEIO接続数」フィールドに指定された値が設定される。なお、「カード種別」に設定された値がEESVである場合のみ、「EEIO接続数」に値が設定される。
【００７２】
「接続状態」は、EEIOのEESVとの接続状態を示す。「接続状態」には、DEVINFOフレームの「接続状態」フィールドに指定された値が設定される。なお、「カード種別」に設定された値がEEIOである場合のみ、「接続状態」に値が設定される。
【００７３】
「Device ID」、「Vendor ID」および「Class Code」は、EEIOに接続されたI/Oデバイスの情報をそれぞれ示す。「Device ID」、「Vendor ID」および「Class Code」には、DEVINFOフレームの「Device ID」フィールド、「Vendor ID」フィールドおよび「Class Code」フィールドに指定された値がそれぞれ設定される。なお、「カード種別」に設定された値がEEIOである場合のみ、「Device ID」、「Vendor ID」、「Class Code」にそれぞれ値が設定される。
【００７４】
管理EESV制御部１１６は、管理EESV情報記憶部１１７に記憶されている管理EESV情報を参照および更新する機能を有する。また、管理EESV制御部１１６は、管理対象I/Oデバイス情報記憶部１１８に記憶されている管理対象I/Oデバイス情報を参照および更新する機能を有する。
【００７５】
管理EESV制御部１１６は、例えば、ユーザからの指示の入力を契機に、管理EESV情報記憶部１１７に記憶されている管理EESV情報を参照および更新する。また、管理EESV制御部１１６は、例えば、ユーザからの指示の入力を契機に、管理対象I/Oデバイス情報記憶部１１８に記憶されている管理対象I/Oデバイス情報を参照および更新する。
【００７６】
管理EESV情報記憶部１１７は、管理EESV８０１〜８０Ｎに対応する管理EESV情報を記憶および管理する機能を有する。管理EESV情報記憶部１１７に記憶される管理EESV情報の例を図５に示す。図５は、管理EESV情報記憶部１１７に記憶される管理EESV情報の例を示す説明図である。図５に示すように、管理EESV情報は、「MACアドレス」を含む。
【００７７】
「MACアドレス」は、管理EESVのMACアドレスを示す。システム管理者は、例えば、ユーザインタフェース部１１１が提供するユーザインタフェースを介して、管理EESVに設定するEESVのMACアドレスを入力する。管理EESV制御部１１６は、入力されたEESVのMACアドレスを管理EESV情報記憶部１１７に保存する。
【００７８】
管理対象I/Oデバイス情報記憶部１１８は、管理EESV８０１〜８０Ｎが管理対象にするI/Oデバイスの管理対象I/Oデバイス情報を記憶および管理する機能を有する。
【００７９】
なお、管理ソフトウェア１０１は、管理対象I/Oデバイス情報記憶部１１８を含まなくてもよい。管理ソフトウェア１０１が管理対象I/Oデバイス情報記憶部１１８を含まない場合、レイヤ２ネットワーク上の全てのI/Oデバイスが、管理EESVの管理対象になる。
【００８０】
管理対象I/Oデバイス情報記憶部１１８に記憶される管理対象I/Oデバイス情報の例を図６に示す。図６は、管理対象I/Oデバイス情報記憶部１１８に記憶される管理対象I/Oデバイス情報の例を示す説明図である。図６に示すように、管理対象I/Oデバイス情報は、「Device ID」、「Vendor ID」、「Class Code」を含む。
【００８１】
「Device ID」、「Vendor ID」および「Class Code」は、管理EESV８０１〜８０Ｎが管理対象にするI/OデバイスのDevice ID、Vendor IDおよびClass Codeをそれぞれ示す。システム管理者は、例えば、ユーザインタフェース部１１１が提供するユーザインタフェースを介して、管理対象にするI/OデバイスのDevice ID、Vendor IDおよびClass Codeをそれぞれ入力する。管理EESV制御部１１６は、入力されたDevice ID、Vendor IDおよびClass Codeを管理対象I/Oデバイス情報記憶部１１８に保存する。
【００８２】
Ethernetカード１０２は、管理ソフトウェア１０１がVLANSETフレームを送信する際に使用されるEthernetカードである。VLANSETフレームの「送信元MACアドレス」フィールドには、Ethernetカード１０２のMACアドレスが指定される。また、Ethernetカード１０２は、管理ソフトウェア１０１がDEVINFOフレームを受信する際に使用されるEthernetカードである。
【００８３】
管理EESV８０１〜８０Ｎは、PCIeスイッチとして未使用のEEIO、および未使用のEEIOに接続されているI/Oデバイスを管理するために使用されるEESVである。管理EESVがPCIe 3.0の仕様に従う場合、１個の管理EESVに対して、最大３２個のPCIeスイッチとして未使用のEEIOが接続される。
【００８４】
すなわち、管理EESVがPCIe 3.0の仕様に従う場合、管理EESV８０１〜８０Ｎに対して、最大で（３２×Ｎ）個の未使用のEEIOが接続される。なお、（３２×Ｎ）個を超える数の未使用のEEIOを管理する場合、管理者には、管理サーバ１００に管理EESVを増設することが求められる。
【００８５】
なお、管理EESV８０１〜８０Ｎは、管理サーバ１００に配置される代わりに、管理サーバ１００とは別の専用サーバに配置されてもよい。また、レイヤ２ネットワークに接続されたPCIeスイッチとして未使用のEESVが、管理EESVとして使用されてもよい。
【００８６】
なお、本実施形態の管理サーバ１００は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するCPUによって実現される。すなわち、ユーザインタフェース部１１１、制御フレーム送信部１１２、制御フレーム受信部１１３、デバイス制御部１１４および管理EESV制御部１１６は、例えば、プログラム制御に従って処理を実行するCPUによって実現される。
【００８７】
また、管理サーバ１００における各部は、ハードウェア回路によって実現されてもよい。
【００８８】
また、デバイス情報記憶部１１５、管理EESV情報記憶部１１７および管理対象I/Oデバイス情報記憶部１１８は、例えば、RAM(Random Access Memory)で実現される。また、デバイス情報記憶部１１５、管理EESV情報記憶部１１７および管理対象I/Oデバイス情報記憶部１１８は、データベースソフトウェアで実現されてもよい。
【００８９】
［動作の説明］
以下、本実施形態の管理ソフトウェア１０１の動作を図７〜図９を参照して説明する。
【００９０】
最初に、本実施形態の管理ソフトウェア１０１がレイヤ２ネットワークからDEVINFOフレームを受信した時の動作を、図７を参照して説明する。図７は、管理ソフトウェア１０１によるDEVINFOフレームの受信処理の動作を示すフローチャートである。
【００９１】
管理ソフトウェア１０１は、DEVINFOフレームを受信した際、DEVINFOフレームの「カード種別」フィールドの値に応じて、以下に説明するように管理EESV、またはEESVに未接続のEEIOにグループIDを割り当てる。
【００９２】
制御フレーム受信部１１３は、Ethernetカード１０２を介してDEVINFOフレームを受信する。制御フレーム受信部１１３は、受信したDEVINFOフレームからデバイス情報を抽出する。デバイス制御部１１４は、制御フレーム受信部１１３により抽出されたデバイス情報を、デバイス情報記憶部１１５に保存する（ステップＳ１０１）。
【００９３】
次いで、デバイス制御部１１４は、制御フレーム受信部１１３により抽出されたデバイス情報の「カード種別」の値を参照して、「カード種別」の値がEESVか、EEIOかを確認する（ステップＳ１０２）。
【００９４】
「カード種別」の値がEESVである場合（ステップＳ１０３におけるEESV）、管理EESV制御部１１６は、抽出されたデバイス情報の「MACアドレス」の値、すなわち送信元MACアドレスを取得する。次いで、管理EESV制御部１１６は、管理EESV情報記憶部１１７を参照して、取得した送信元MACアドレスを含む管理EESV情報が存在するか否かを確認する。すなわち、管理EESV制御部１１６は、DEVINFOフレームに含まれる送信元MACアドレスが管理EESV８０１〜８０ＮのいずれかのMACアドレスか否かを確認する（ステップＳ１０４）。
【００９５】
取得した送信元MACアドレスが管理EESV８０１〜８０ＮのMACアドレス以外の場合（ステップＳ１０５におけるＮｏ）、管理ソフトウェア１０１は、DEVINFOフレームの受信処理を終了する。
【００９６】
取得した送信元MACアドレスが管理EESV８０１〜８０ＮのいずれかのMACアドレスである場合（ステップＳ１０５におけるＹｅｓ）、管理EESV制御部１１６は、デバイス情報記憶部１１５から、取得した送信元MACアドレスを含むデバイス情報を取得する。
【００９７】
送信元MACアドレスを含むデバイス情報が取得された後、管理EESV制御部１１６は、取得されたデバイス情報の「グループID」を参照して、対象の管理EESVにグループIDが未設定か否かを確認する（ステップＳ１０６）。すなわち、管理EESV制御部１１６は、DEVINFOフレームに含まれるグループIDが初期値であるか否かを確認する。
【００９８】
対象の管理EESVにグループIDが設定済みの場合（ステップＳ１０７におけるＮｏ）、管理ソフトウェア１０１は、DEVINFOフレームの受信処理を終了する。
【００９９】
対象の管理EESVにグループIDが未設定の場合（ステップＳ１０７におけるＹｅｓ）、管理EESV制御部１１６は、デバイス情報記憶部１１５に記憶されているデバイス情報を参照して、未使用のグループIDを採番する（ステップＳ１０８）。 
【０１００】
制御フレーム送信部１１２は、DEVINFOフレームを送信した管理EESVに、採番されたグループIDを含むVLANSETフレームを、Ethernetカード１０２を介して送信する。VLANSETフレームを受信した管理EESVは、VLANSETフレームに含まれる採番されたグループIDを自身のグループIDとして設定する（ステップＳ１０９）。管理EESVがグループIDを設定した後、管理ソフトウェア１０１は、DEVINFOフレームの受信処理を終了する。
【０１０１】
「カード種別」の値がEESV以外である場合、すなわちEEIOである場合（ステップＳ１０３におけるEEIO）、管理EESV制御部１１６は、抽出されたデバイス情報の「接続状態」を参照する。参照することによって、管理EESV制御部１１６は、DEVINFOフレームを送信したEEIOが、EESVに未接続であるか否かを確認する（ステップＳ１１０）。すなわち、管理EESV制御部１１６は、DEVINFOフレームに含まれる、EESVとの接続状態を示す「接続状態」フィールドの値が未接続であるか否かを確認する。
【０１０２】
DEVINFOフレームを送信したEEIOがEESVに未接続である場合（ステップＳ１１１におけるＹｅｓ）、管理ソフトウェア１０１は、後述する「EEIOのグループIDの初期化処理」を実行する。
【０１０３】
なお、DEVINFOフレームに含まれるI/Oデバイス情報を示す「Device ID」フィールド、「Vendor ID」フィールド、および「Class Code」フィールドの各値が、システム管理者が設定した管理対象I/Oデバイス情報に含まれる場合、EEIOに管理EESVと同じグループIDが割り当てられる。「EEIOのグループIDの初期化処理」を実行した後、管理ソフトウェア１０１は、DEVINFOフレームの受信処理を終了する。
【０１０４】
また、DEVINFOフレームを送信したEEIOがEESVに接続済みである場合（ステップＳ１１１におけるＮｏ）、管理ソフトウェア１０１は、DEVINFOフレームの受信処理を終了する。
【０１０５】
次に、本実施形態の管理ソフトウェア１０１がEESVに接続されているEEIOの、EESVとの接続を解除する時の動作を、図８を参照して説明する。図８は、管理ソフトウェア１０１によるEEIOの接続解除処理の動作を示すフローチャートである。システム管理者は、EEIOに割り当てられているグループIDを初期化することによって、EESVに接続されたEEIOの、EESVとの接続を解除できる。
【０１０６】
管理ソフトウェア１０１のユーザインタフェース部１１１は、システム管理者に対して、EEIOのグループIDの初期化に用いられるユーザインタフェースを提供する。システム管理者は、ユーザインタフェース部１１１が提供するユーザインタフェースを介して、EESVとの接続を解除するEEIOのグループIDを初期化する指示を入力する。ユーザインタフェースを介して初期化する指示を入力する際、システム管理者は、EESVとの接続を解除するEEIOのMACアドレスを、パラメータとして指定する。
【０１０７】
次いで、管理EESV制御部１１６は、デバイス情報記憶部１１５から、EESVとの接続を解除するEEIOのデバイス情報を取得する（ステップＳ２０１）。管理EESV制御部１１６は、システム管理者によりパラメータとして指定されたMACアドレスを含むデバイス情報を検索することによって、EESVとの接続を解除するEEIOのデバイス情報を取得する。
【０１０８】
デバイス情報を取得した後、管理ソフトウェア１０１は、後述する「EEIOのグループIDの初期化処理」を実行する。「EEIOのグループIDの初期化処理」を実行した後、管理ソフトウェア１０１は、EEIOの接続解除処理を終了する。
【０１０９】
次に、本実施形態の管理ソフトウェア１０１がEEIOに割り当てられているグループIDを初期化する時の動作を、図９を参照して説明する。図９は、管理ソフトウェア１０１によるEEIOのグループIDの初期化処理の動作を示すフローチャートである。
【０１１０】
管理EESV制御部１１６は、管理対象I/Oデバイス情報記憶部１１８から、ステップＳ１１０またはステップＳ２０１においてグループIDが初期化される対象にされたEEIOに接続するI/Oデバイスのデバイス情報を含む管理対象I/Oデバイス情報を検索する。
【０１１１】
具体的には、管理EESV制御部１１６は、指定されたMACアドレスを有するEEIOに接続するI/OデバイスのDevice ID、Vendor ID、Class Codeと同じ値を含む管理対象I/Oデバイス情報が、管理対象I/Oデバイス情報記憶部１１８に存在するか否かを確認する。すなわち、管理EESV制御部１１６は、対象のEEIOに接続するI/Oデバイスが、管理EESVの管理対象であるか否かを確認する（ステップＳ３０１）。
【０１１２】
対象のEEIOに接続するI/Oデバイスが管理EESVの管理対象である場合、すなわちI/Oデバイスの値を含む管理対象I/Oデバイス情報が存在する場合（ステップＳ３０２におけるＹｅｓ）、管理EESV制御部１１６は、デバイス情報記憶部１１５に記憶されているデバイス情報を参照する。
【０１１３】
管理EESV制御部１１６は、「EEIO接続数」が３２未満で、かつ「グループID」が設定済みの、管理EESV８０１〜８０Ｎのデバイス情報がデバイス情報記憶部１１５に存在するか否かを確認する。すなわち、管理EESV制御部１１６は、対象のEEIOが管理EESV８０１〜８０Ｎにまだ接続可能であるか否かを確認する（ステップＳ３０３）。
【０１１４】
対象のEEIOが管理EESV８０１〜８０Ｎにまだ接続可能である場合（ステップＳ３０４におけるＹｅｓ）、制御フレーム送信部１１２は、対象のEEIOに、EEIOがまだ接続可能である管理EESVに割り当てられているグループIDを含むVLANSETフレームを送信する。
【０１１５】
VLANSETフレームを受信することによって、対象のEEIOは、VLANSETフレームに含まれる管理EESVに割り当てられているグループIDを、自身のグループIDに設定する（ステップＳ３０５）。対象のEEIOがグループIDを設定した後、管理ソフトウェア１０１は、EEIOのグループIDの初期化処理を終了する。
【０１１６】
対象のEEIOに接続するI/Oデバイスが管理EESVの管理対象外である場合、すなわちI/Oデバイスの値を含む管理対象I/Oデバイス情報が存在しない場合（ステップＳ３０２におけるＮｏ）、制御フレーム送信部１１２は、対象のEEIOに、グループIDの初期値を含むVLANSETフレームを送信する。
【０１１７】
VLANSETフレームを受信することによって、対象のEEIOは、VLANSETフレームに含まれるグループIDの初期値を、自身のグループIDに設定する（ステップＳ３０６）。対象のEEIOがグループIDを設定した後、管理ソフトウェア１０１は、EEIOのグループIDの初期化処理を終了する。
【０１１８】
対象のEEIOが管理EESV８０１〜８０Ｎに接続不可能である場合（ステップＳ３０４におけるＮｏ）、制御フレーム送信部１１２は、対象のEEIOに、グループIDの初期値を含むVLANSETフレームを送信する。
【０１１９】
VLANSETフレームを受信することによって、対象のEEIOは、VLANSETフレームに含まれるグループIDの初期値を、自身のグループIDに設定する（ステップＳ３０６）。対象のEEIOがグループIDを設定した後、管理ソフトウェア１０１は、EEIOのグループIDの初期化処理を終了する。
【０１２０】
以上のように、EESVに未接続のEEIOに対して、管理EESVに割り当てられているグループIDと同じグループIDが割り当てられる。同じグループIDが割り当てられることによって、EESVに未接続のEEIOが、管理EESVに接続する。
【０１２１】
本実施形態の管理サーバは、EESVに未接続のEEIOを管理するための管理EESVを内部に配置し、制御フレーム送信部は、EESVに未接続のEEIOを管理EESVに強制的に接続させる。EEIOが管理EESVに接続することによって、EEIOがEESVと接続を確立するために短い間隔でブロードキャストする制御フレーム（DEVINFOフレーム）が抑止される。よって、本実施形態の管理サーバを使用した場合、システム管理者は、EEIOによるブロードキャストが他のEEIO-EESV間の通信に及ぼす影響を低減できる。
【０１２２】
次に、本発明の概要を説明する。図１０は、本発明による管理装置の概要を示すブロック図である。本発明による管理装置１０は、レイヤ２ネットワークに接続するEthernetカード１１（例えば、Ethernetカード１０２）と、Ethernetカード１１を介して、所定の条件を満たすEEIOカードからEEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信する受信部１２（例えば、制御フレーム受信部１１３）と、レイヤ２ネットワークに接続されておりPCIeスイッチの構成要素として使用されていないEESVカードである管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な管理EESVカードを決定する決定部１４（例えば、デバイス制御部１１４や管理EESV制御部１１６）と、EEIOカードに、決定された管理EESVカードのグループIDをEEIOカードのグループIDに設定させるフレームを、Ethernetカード１１を介してEEIOカードに送信する送信部１３（例えば、制御フレーム送信部１１２）とを備える。
【０１２３】
そのような構成により、管理装置は、EESVカードに未接続のEEIOカードによるブロードキャストの影響を防止できる。
【０１２４】
また、受信部１２は、Ethernetカード１１を介して、所定の条件を満たさないEEIOカードからEEIOカードがEESVカードに未接続であることを示す情報を含むフレームを受信し、送信部１３は、EEIOカードに、グループIDの初期値をEEIOカードのグループIDに設定させるフレームを、Ethernetカード１１を介してEEIOカードに送信してもよい。
【０１２５】
そのような構成により、管理装置は、管理対象外のEEIOカードを誤って管理EESVに接続することを防止できる。
【０１２６】
また、管理装置１０は、所定の条件を満たすEEIOカードとEESVカードとの接続を解除する指示が入力される入力部（例えば、ユーザインタフェース部１１１）を備え、決定部１４は、管理EESVカードの中で、グループIDが設定済みであり、新たにEEIOカードと接続可能な管理EESVカードを決定し、送信部１３は、EEIOカードに、決定された管理EESVカードのグループIDをEEIOカードのグループIDに設定させるフレームを、Ethernetカード１１を介してEEIOカードに送信してもよい。
【０１２７】
そのような構成により、管理装置は、EESVカードとの接続が解消される管理対象のEEIOカードを管理EESVに接続させておくことができる。
【０１２８】
また、入力部に、所定の条件を満たさないEEIOカードとEESVカードとの接続を解除する指示が入力され、送信部１３は、EEIOカードに、グループIDの初期値をEEIOカードのグループIDに設定させるフレームを、Ethernetカード１１を介してEEIOカードに送信してもよい。
【０１２９】
そのような構成により、管理装置は、管理対象外のEEIOカードとEESVカードとの接続を解消できる。
【０１３０】
また、管理装置１０は、EEIOカードに接続されているI/Oデバイスの情報を記憶する記憶部（例えば、管理対象I/Oデバイス情報記憶部１１８）を備え、所定の条件は、EEIOカードに接続されているI/Oデバイスの情報が記憶部に記憶されていることでもよい。
【０１３１】
そのような構成により、管理装置は、EEIOカードに接続されているI/Oデバイスの情報を用いて、管理対象のEEIOカードを識別できる。
【０１３２】
また、受信部１２は、Ethernetカード１１を介して、管理EESVカードからグループIDを含まないフレームを受信し、送信部１３は、管理EESVカードに、未割当のグループIDを管理EESVカードのグループIDに設定させるフレームを、Ethernetカード１１を介して管理EESVカードに送信してもよい。
【０１３３】
そのような構成により、管理装置は、グループIDが設定されていない管理EESVカードに対して、グループIDを割り当てることができる。
【符号の説明】
【０１３４】
１０  管理装置
１１、１０２、９０２  Ethernetカード
１２  受信部
１３  送信部
１４  決定部
１００、９００  管理サーバ
１０１、９０１  管理ソフトウェア
１１１  ユーザインタフェース部
１１２  制御フレーム送信部
１１３  制御フレーム受信部
１１４  デバイス制御部
１１５  デバイス情報記憶部
１１６  管理EESV制御部
１１７  管理EESV情報記憶部
１１８  管理対象I/Oデバイス情報記憶部
２０１〜２０Ｋ  サーバ
２１１〜２１Ｋ  チップセット
２２１〜２２Ｋ  CPU
２３１〜２３Ｋ  メモリ
２４１〜２４Ｋ  EESV
３０１〜３０Ｌ、５０１〜５０Ｍ  EEIO
４０１〜４０Ｌ、６０１〜６０Ｍ  I/Oデバイス
７００  レイヤ２ネットワーク
８０１〜８０Ｎ  管理EESV
【図１】
0006455194.tif 000002
【図２】
0006455194.tif 000003
【図３】
0006455194.tif 000004
【図４】
0006455194.tif 000005
【図５】
0006455194.tif 000006
【図６】
0006455194.tif 000007
【図７】
0006455194.tif 000008
【図８】
0006455194.tif 000009
【図９】
0006455194.tif 000010
【図１０】
0006455194.tif 000011
【図１１】
0006455194.tif 000012