(57)【要約】【課題】システムの特性を考慮したＮＩＣを選択することを目的とする。【解決手段】システムの特性に適合しているＮＩＣを選択し、サーバ装置に割り当てる管理サーバ１によるＮＩＣ選択方法であって、管理サーバ１は、ＮＩＣに接続されているサーバ装置およびＮＩＣの性能が、ＮＩＣにおけるポートの識別子であるＮＩＣポート識別子と関連付けられて格納しているＮＩＣ情報管理テーブル１２３、割当条件管理テーブル１２６および負荷管理テーブル１２８を記憶部１２０に記憶しており、管理サーバ１が、各テーブル１２３，１２６，１２８を基に、ＮＩＣポート識別子を性能の高い順にソートし、ソートの結果の最上位のＮＩＣポート識別子を、選択ＮＩＣポートとして出力することを特徴とする。【選択図】図２
2011118663.tif 000002
【特許請求の範囲】
【請求項１】
システムの特性に適合しているＮＩＣ（Network Interface Card）を、複数のＮＩＣの中から選択し、サーバ装置に割り当てるＮＩＣ管理装置によるＮＩＣ選択方法であって、
前記ＮＩＣ管理装置は、
前記ＮＩＣに接続されている前記サーバ装置および前記ＮＩＣの特性が、前記ＮＩＣにおけるポートの識別子であるＮＩＣポート識別子と関連付けられて格納している特性情報を記憶部に記憶しており、
前記ＮＩＣ管理装置が、
前記特性情報を参照して、前記ＮＩＣポート識別子を前記特性に基づいてソートし、
前記ソートの結果に基づく前記ＮＩＣポート識別子を、適合した選択ＮＩＣポートとして出力する
ことを特徴とするＮＩＣ選択方法。
【請求項２】
前記特性情報は、
ＮＩＣが割り当てられている前記ＮＩＣポート識別子毎に、現在の通信負荷量を記述している負荷管理情報と、
前記ＮＩＣポート識別子毎に、性能を記述しているＮＩＣ情報管理情報と、
サーバ装置の種類に応じた、ＮＩＣの割当条件を格納している割当条件管理情報と、
であり、
前記ＮＩＣ管理装置が、
前記負荷管理情報における前記ＮＩＣポート識別子を、負荷の低い順にソートし、第１のソート結果として出力し、
前記第１のソート結果における前記ＮＩＣポート識別子を、前記ＮＩＣ情報管理情報における性能が高い順に、さらにソートし、第２のソート結果として出力し、
入力部から入力されたサーバ装置の種類を基に、前記ソートされた前記ＮＩＣポート識別子のうち、前記割当条件管理情報に格納されている条件と合致しない前記ＮＩＣポート識別子を、前記ソートの結果から除外し、第３のソート結果として出力し、
前記第３のソートの結果に基づく前記ＮＩＣポート識別子を、前記適合した選択ＮＩＣポートを出力する
ことを特徴とする請求項１に記載のＮＩＣ選択方法。
【請求項３】
前記ＮＩＣ情報管理情報には、ＮＩＣに関するドライバに関する情報が、さらに格納されており、
前記ＮＩＣ管理装置が、
切替前のＮＩＣと同じドライバであるＮＩＣの前記ＮＩＣポート識別子を、前記第１のソート結果または第２のソート結果の先頭に移動する
ことを特徴とする請求項２に記載のＮＩＣ選択方法。
【請求項４】
前記記憶部には、前記ＮＩＣポートをグループ毎にまとめて管理しているネットワーク情報管理情報が格納されており、
前記ＮＩＣ管理装置は、
前記ネットワーク情報管理情報におけるグループ毎に、前記選択ＮＩＣポートの選択を行う
ことを特徴とする請求項１に記載のＮＩＣ選択方法。
【請求項５】
請求項１から請求項４のうち、いずれか一項に記載のＮＩＣ選択方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＩＣ選択方法およびプログラムの技術に関する。
【背景技術】
【０００２】
サーバ装置は、異なるネットワークセグメントを有する複数のネットワークに接続することによって通信を行うことがある。このとき、これらのサーバ装置には、複数のネットワークに接続するための複数のＮＩＣ（Network Interface Card）が設けられる。一般的には、サーバ装置とＮＩＣとの対応付けが固定であり、その対応を変更することができない。そのため、企業などの計算機システムのように、可用性を高めるため、ネットワーク構成を冗長化している環境では、ネットワークセグメント毎に２つ以上のＮＩＣを搭載する必要がある。しかし、１つ１つのネットワークセグメントにおいて、現用系として使用されるＮＩＣは常に１つであり、残りのＮＩＣは待機系として通常は使用されないため、リソースの有効利用ができていない。
【０００３】
この課題を解決する技術として、Ｉ／Ｏ（Input/Output）ドロワと複数のＭＡＣ（Media Access Control）アドレスを持つことを可能とするＮＩＣがある。Ｉ／Ｏドロワは、ＰＣＩｅ(Peripheral Component Interconnect Express)スイッチと複数のＮＩＣを搭載した装置である。このＩ／Ｏドロワは、複数のサーバ装置と接続が可能なため、ＮＩＣを１つのＩ／Ｏドロワに集約し管理することが可能となる。
また、特許文献１には、ＭＡＣアドレスを複数持つことを可能とする、特定のネットワークインタフェースチップを内蔵したＮＩＣを用いることで、複数のサーバ装置間でＮＩＣを共有する方法が開示されている。これらの技術により、待機系として通常は使用されないＮＩＣを低減し、リソースの有効利用が可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００７−５２６５２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術によれば、Ｉ／Ｏドロワと複数ＭＡＣアドレスを持つことを可能とするＮＩＣにより、複数のサーバ装置におけるリソースの低減が可能となるが、一方で各サーバ装置におけるネットワーク構築作業が複雑化するという問題が生じる。
例えば、Ｉ／Ｏドロワに接続されていないサーバ装置の場合、各サーバ装置がハードウェアレベルで独立しているため、他サーバ装置を意識せずにネットワーク構築作業を行うことができる。
しかしながら、Ｉ／Ｏドロワと複数ＭＡＣアドレスを持つことを可能とするＮＩＣに接続されているサーバ装置の場合、個々のサーバ装置から見ると不要なネットワークに接続された多数のＮＩＣも認識しているため、システム構築者が必要となるネットワークに接続されたＮＩＣを選択しなければならない。また、サーバ装置からは選択したＮＩＣが他のサーバ装置からも使用されているかわからないため、システム全体で負荷分散を意識したネットワーク構築が要求される。
【０００６】
さらに、Ｉ／Ｏドロワの有無に関わらず、ネットワーク冗長化構成の設定が各サーバ装置毎に必要となる。そのため、サーバ装置の台数が増加するに従い設定作業が増加し、ヒューマンエラーの発生確率が高まる。また、同一ＮＩＣに対し、ＮＩＣの障害監視を各サーバ装置毎におこなうため、例えば障害監視方式としてＡＲＰ（Address Resolution Protocol）パケットの送受信量を監視する方式を用いた場合、各サーバ装置から送出する監視用パケットによるネットワーク負荷の増加も課題となる。
【０００７】
このような背景に鑑みて本発明がなされたのであり、本発明は、システムの特性を考慮したＮＩＣを選択することを目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するため、本発明は、システムの特性に適合しているＮＩＣを、複数のＮＩＣの中から選択し、サーバ装置に割り当てるＮＩＣ管理装置によるＮＩＣ選択方法であって、前記ＮＩＣ管理装置は、前記ＮＩＣに接続されている前記サーバ装置および前記ＮＩＣの特性が、前記ＮＩＣにおけるポートの識別子であるＮＩＣポート識別子と関連付けられて格納している特性情報を記憶部に記憶しており、前記ＮＩＣ管理装置が、前記特性情報を参照して、前記ＮＩＣポート識別子を前記特性に基づいてソートし、前記ソートの結果に基づく前記ＮＩＣポート識別子を、適合した選択ＮＩＣポートとして出力することを特徴とする。
その他の解決手段は実施形態中において説明する。
【発明の効果】
【０００９】
本発明によれば、システムの特性を考慮したＮＩＣを選択することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係る計算機システムの構成例を示す図である。
【図２】本実施形態に係る管理サーバの構成例を示す機能ブロック図である。
【図３】本実施形態に係るサーバ装置の構成例を示す機能ブロック図である。
【図４】本実施形態に係るＩ／Ｏドロワの構成例を示す機能ブロック図である。
【図５】本実施形態に係るＮＩＣ切替処理の概要の一例を示す図である。
【図６】本実施形態に係るＩ／Ｏドロワ管理テーブルの構成例を示す図である。
【図７】本実施形態に係るＰＣＩｅスロット管理テーブルの構成例を示す図である。
【図８】本実施形態に係るＮＩＣ情報管理テーブルの構成例を示す図である
【図９】本実施形態に係るネットワーク情報管理テーブルの構成例を示す図である。
【図１０】本実施形態に係るサーバ管理テーブルの構成例を示す図である。
【図１１】本実施形態に係る割当条件管理テーブルの構成例を示す図である。
【図１２】本実施形態に係る仮想ＭＡＣ管理テーブルの構成例を示す図である。
【図１３】本実施形態に係る負荷管理テーブルの構成例を示す図である。
【図１４】本実施形態に係る障害監視情報管理テーブルの構成例を示す図である。
【図１５】本実施形態に係るＮＩＣ情報取得処理の流れを示すフローチャートである。
【図１６】本実施形態に係るＮＩＣグルーピング処理の流れを示すフローチャートである。
【図１７】本実施形態に係るサーバ情報取得処理の流れを示すフローチャートである。
【図１８】本実施形態に係るＮＩＣ監視処理の流れを示すフローチャートである。
【図１９】本実施形態に係るＮＩＣ切替処理の流れを示すフローチャートである。
【図２０】本実施形態に係るＮＩＣ選択処理の流れを示すフローチャートである。
【図２１】本実施形態に係るＮＩＣ切替検出処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。
【００１２】
《システム構成》
図１は、本実施形態に係る計算機システムの構成例を示す図である。
計算機システム８は、管理サーバ（ＮＩＣ管理装置）１、サーバ装置２、Ｉ／Ｏドロワ３、ＮＩＣ４、ルータ７、ネットワークスイッチ５，６を有する。
サーバ装置２に対するＮＩＣ４の選択・割当およびＮＩＣ４の障害の監視および回復制御を行う管理サーバ１は、ネットワークスイッチ５を介して複数のサーバ装置２と接続している。また、複数のサーバ装置２は、Ｉ／Ｏドロワ３に接続している。さらに、Ｉ／Ｏドロワ３は、複数のＮＩＣ４に接続している。そして、複数のＮＩＣ４は複数のネットワークスイッチ６に接続しており、複数のネットワークスイッチ６は複数のルータ７に接続している。
【００１３】
《管理サーバの構成》
図２は、本実施形態に係る管理サーバの構成例を示す機能ブロック図である。
管理サーバ１は、ＲＡＭ（Random Access memory）などのメモリ１１０、ＣＰＵ（Central Processing Unit）であるプロセッサ１３０、ＨＤ（Hard Disk）などの記憶装置（記憶部）１２０、Ｉ／Ｏシリアルインタフェース１３１およびネットワークインタフェース１３２を有する。
メモリ１１０には、記憶装置１２０に格納されているプログラムが展開され、プロセッサ１３０によって実行されることにより、制御部１１１、ＮＩＣ情報取得部１１２、ネットワーク構成情報取得部１１３、サーバ情報取得部１１４、ＮＩＣ監視部１１５、ＮＩＣ切替部１１６およびＮＩＣ選択部１１７の各部が具現化している。
各部１１２〜１１７の機能は、フローチャートにて詳細に説明する。
【００１４】
記憶装置１２０には、Ｉ／Ｏドロワ管理テーブル１２１、ＰＣＩｅスロット管理テーブル１２２、ＮＩＣ情報管理テーブル（性能情報、ＮＩＣ情報管理情報）１２３、ネットワーク情報管理テーブル１２４、サーバ管理テーブル１２５、割当条件管理テーブル（性能情報、割当条件管理情報）１２６、仮想ＭＡＣ管理テーブル１２７、負荷管理テーブル（性能情報、負荷管理情報）１２８および障害監視情報管理テーブル１２９が格納されている。各テーブル１２１〜１２９は、図６〜図１４を参照して後記する。
【００１５】
Ｉ／Ｏシリアルインタフェース１３１は、Ｉ／Ｏドロワ３と接続しており、ＮＩＣ監視部１１５から送られるＮＩＣ監視用パケットの送受信を行う。
ネットワークインタフェース１３２は、ネットワークスイッチ５と接続しており、各サーバ装置２やＩ／Ｏドロワ３の情報取得、およびＮＩＣ切替時にサーバ装置２にＮＩＣ切替通知の送信を行う。
【００１６】
《サーバ装置の構成》
図３は、本実施形態に係るサーバ装置の構成例を示す機能ブロック図である。
サーバ装置２は、ＲＡＭなどのメモリ２１０、ＣＰＵであるプロセッサ２２０、Ｉ／Ｏシリアルインタフェース２３０、ＢＭＣ（Base Broad Management Controller）２４０を有する。
メモリ２１０には、図示しないサーバ装置２の記憶装置に格納されているプログラムが展開され、プロセッサ２２０によって実行されることによって、ＮＩＣ切替検出部２１１が具現化している。ＮＩＣ切替検出部２１１は、自身に接続しているＮＩＣ４の切替を検出し、管理サーバ１へサーバ装置追加・変更通知などを送信する機能を有する。
Ｉ／Ｏシリアルインタフェース２３０は、Ｉ／Ｏドロワ３に接続されている。ＢＭＣ２４０は、ネットワークスイッチ５に接続されており、管理サーバ１から、ネットワークスイッチ５を介してＮＩＣ切替完了通知などを受信する機能を有する。
【００１７】
《Ｉ／Ｏドロワの構成》
図４は、本実施形態に係るＩ／Ｏドロワの構成例を示す機能ブロック図である。
Ｉ／Ｏドロワ３は、ＲＯＭ（Read Only Memory）などのメモリ３１０、ＣＰＵであるプロセッサ３２０、ネットワークインタフェース３７０、ＰＣＩｅスイッチ３４０、サーバ装置２が接続されるサーバ装置用ポート３５０およびＮＩＣ４が接続されるスロット用ポート３６０を有する。サーバ装置用ポート３５０と、スロット用ポート３６０とを合わせてポートと称する。
メモリ３１０には、プログラムが格納されており、このプログラムがプロセッサ３２０によって実行されることにより、制御部３１１が具現化している。
制御部３１１は、ＰＣＩｅスイッチ３４０に接続されるサーバ装置用ポート３５０やスロット用ポート３６０の状態や割当を制御する機能を有する。
ネットワークインタフェース３７０は、Ｉ／Ｏドロワ３内のサーバ装置用ポート３５０、スロット用ポート３６０、スロット用ポート３６０に接続されるＮＩＣ４の状態や割当情報の送信や、Ｉ／Ｏドロワ３の制御を行うためのコマンドを、ネットワークスイッチ５を介して管理サーバ１から受信する機能を有する。ＰＣＩｅスイッチ３４０は、サーバ装置用ポート３５０とスロット用ポート３６０間におけるデータの転送制御を行う。
なお、Ｉ／Ｏドロワ３において、各ポートにはポート番号が割り振られ、制御部３１１によって管理されている。
【００１８】
《処理概要》
図５は、本実施形態に係るＮＩＣ切替処理の概要の一例を示す図である。なお、図５において図１と同様の構成要素については同一の符号を付して説明を省略する。
管理サーバ１（図１）はＩ／Ｏドロワ３に接続されているＮＩＣ４のいずれかに障害が発生した場合に、ＮＩＣ４の切り替えなどを行い、障害回復を行わせる。このとき、管理サーバ１は、ＮＩＣグループ５０１の中から、ユーザが設定したシステム特性に従って、切替先のＮＩＣ４を動的に選択する。ＮＩＣグループ５０１は、障害時の切り替えに備えて設定されるものであり、同じネットワークセグメントに接続されている複数のＮＩＣ４によるグループである。ユーザは、Ｉ／Ｏドロワ３に適用ドライバや性能の異なる複数の種類のＮＩＣ４を接続することができる。
【００１９】
ここで、いかなる種類のＮＩＣ４に障害が発生しても、通信を回復することができるよう、切替先が同一ネットワークセグメントであれば、異なる種類のＮＩＣ４でも同じＮＩＣグループに所属させることが好ましい。図５におけるＮＩＣ４ａに障害が発生した時、管理サーバ１は、設定されているシステム特性に応じて、異なるネットワークスイッチ６に接続されたＮＩＣ４ｂを切替先として選んでいる。その後、管理サーバ１は、Ｉ／Ｏドロワ３を制御し、サーバ装置２によるネットワーク接続経路を、ＮＩＣ４ａを経由する経路５０２からＮＩＣ４ｂを経由する経路５０３に変更する。このとき、仮想ＭＡＣアドレスの変更を生じさせないように、管理サーバ１は、各サーバ装置２に認識させているＮＩＣ４における各仮想ＭＡＣアドレスを切替先のＮＩＣ４に引き継ぐ動作（図５の矢印５１０）も行う。
【００２０】
また、切替先のＮＩＣ４のドライバが障害が発生したＮＩＣ４のドライバと同じであれば、サーバ装置２の構成が変更されることはなく、つまりサーバ装置２におけるドライバを変更することがないので、切替による影響をサーバ装置２に与えることはない。また、切替先が異なるドライバである場合、管理サーバ１は、切替先のＮＩＣ４のドライバをサーバ装置２に通知し、サーバ装置２に対しドライバの切替を促すことで、ＮＩＣ４の切替後のドライバのチェックなどが不要となり、切替によるサーバ装置２への影響を少なくすることが可能となる。
なお、図５ではＮＩＣ４に障害が発生した例について記載したが、サーバ装置２やＮＩＣ４が新たにＩ／Ｏドロワ３に接続されたときにも、このようなＮＩＣ４の選択・切替処理が行われる。
【００２１】
《テーブル》
次に、図２〜図４を適宜参照しつつ、図６〜図１４を参照して各テーブルの説明を行う。
【００２２】
（Ｉ／Ｏドロワ管理テーブル）
図６は、本実施形態に係るＩ／Ｏドロワ管理テーブルの構成例を示す図である。
Ｉ／Ｏドロワ管理テーブル１２１は、Ｉ／Ｏドロワ３のポートに接続されている機器を管理するためのテーブルであり、Ｉ／Ｏドロワ識別子、ポート番号、接続デバイス、デバイス識別子、状態の各フィールドを有する。
Ｉ／Ｏドロワ識別子は、Ｉ／Ｏドロワ３に割り当てられる識別子である。ポート番号は、Ｉ／Ｏドロワ３におけるポートに割り当てられる番号である。接続デバイスは、ポートに接続されているデバイスの種類を示す情報である。ここで、「ｓｌｏｔ」はＰＣＩｅを示し、「ｈｏｓｔ」はサーバ装置２を示している。デバイス識別子は、ポートに接続されたデバイス毎の識別子である。状態は、接続されたデバイスの状態を示し、例えば、正常動作可能（「正常」）、「障害発生」、「未接続」などの情報が格納されている。
【００２３】
Ｉ／Ｏドロワ管理テーブル１２１に格納される情報は、新たにポートにサーバ装置２が接続された場合や、Ｉ／Ｏデバイス（ＮＩＣ４や、ＨＢＡ（Host Bus Adapter）など）が新たに接続された場合や、サーバ装置２やＰＣＩｅに接続されたＩ／Ｏデバイスの障害などが原因で、Ｉ／Ｏデバイスが交換された場合など、Ｉ／Ｏドロワ３に接続されている機器に変更が生じた場合などに収集・更新される情報である。
Ｉ／Ｏドロワ管理テーブル１２１を有することで、管理サーバ１は、Ｉ／Ｏドロワ３に接続されるサーバ装置２やポートを管理することができる。
【００２４】
（ＰＣＩｅスロット管理テーブル）
図７は、本実施形態に係るＰＣＩｅスロット管理テーブルの構成例を示す図である。
ＰＣＩｅスロット管理テーブル１２２は、Ｉ／Ｏドロワ３のスロット用ポート３６０に接続されている機器を管理するためのテーブルであり、デバイス識別子、接続デバイスカードおよびデバイス識別子の各フィールドを有している。
デバイス識別子は、スロット用ポート３６０毎の識別子である。接続デバイスカードは、デバイス識別子が示すスロット用ポート３６０に接続されたＩ／Ｏデバイスの種類を示す情報を示す。接続デバイスカードは、接続されるＩ／ＯデバイスがＮＩＣ４であれば「ＮＩＣ４」が格納され、ＨＢＡであれば「ＨＢＡ」が格納され、何も接続されていなければ「未接続」が格納される。デバイス識別子は、接続されているＩ／Ｏデバイス毎の識別子である。
【００２５】
ＰＣＩｅスロット管理テーブル１２２に格納されている情報は、新たにスロット用ポート３６０にＩ／Ｏデバイスが接続された場合や、スロット用ポート３６０に接続されたＩ／Ｏデバイスの障害などが原因で、Ｉ／Ｏデバイスが交換された場合など、スロット用ポート３６０に接続されているＩ／Ｏデバイスの構成に変更が生じた場合などに収集・更新される情報である。管理サーバ１が、ＰＣＩｅスロット管理テーブル１２２を有することで、スロット用ポート３６０に接続されるＩ／Ｏデバイスを管理することができる。また、Ｉ／Ｏデバイスに障害が発生し、Ｉ／Ｏデバイスにアクセス不可能になった場合でも、管理サーバ１は、デバイスの識別子を取得することができる。
【００２６】
（ＮＩＣ情報管理テーブル）
図８は、本実施形態に係るＮＩＣ情報管理テーブルの構成例を示す図である
ＮＩＣ情報管理テーブル１２３は、計算機システム８におけるＮＩＣ４の情報を管理するためのテーブルであり、ＮＩＣ識別子、適合ドライバ、性能、ＮＩＣポート数、ＮＩＣポート識別子、状態の各フィールドを有する。
ＮＩＣ識別子は、ＮＩＣ４毎の識別子である。適合ドライバは、該当するＮＩＣ４を使用するため、サーバ装置２で実行されているドライバの種類である。性能は、該当するＮＩＣ４の通信性能を示し、具体的にはＮＩＣ４の通信速度が格納される。ＮＩＣポート数は、該当するＮＩＣ４に搭載されているポート（ＮＩＣポート）の数である。ＮＩＣポート識別子は、該当するＮＩＣポート毎の識別子である。状態は、該当するＮＩＣポートの状態を示し、例えば、正常動作可能（「正常」）、「障害発生」、ＬＡＮケーブルの未接続（「未接続」）などの情報が格納される。
【００２７】
ＮＩＣ情報管理テーブル１２３に格納されている情報は、新たにスロット用ポート３６０にＮＩＣ４が接続された場合や、スロット用ポート３６０に接続されたＮＩＣ４の障害などが原因で、ＮＩＣ４が交換された場合など、ＮＩＣ４の構成に変更が生じた場合にＮＩＣ情報取得部１１２が収集・更新される情報である。管理サーバ１が、ＮＩＣ情報管理テーブル１２３を有することで、管理サーバ１はＮＩＣ４およびＮＩＣポートを管理することができる。
【００２８】
（ネットワーク情報管理テーブル）
図９は、本実施形態に係るネットワーク情報管理テーブルの構成例を示す図である。
ネットワーク情報管理テーブル１２４は、ＮＩＣポートに接続されているネットワークセグメントに関する情報の管理や、ＮＩＣグループに関する情報を管理するためのテーブルであり、ＮＩＣポート識別子、ネットワークアドレス、ネットマスク、次ノードＭＡＣアドレスおよびＮＩＣグループ識別子の各フィールドを有している。
ＮＩＣポート識別子は、ＮＩＣ４に搭載されているＮＩＣポート毎の識別子である。ネットワークアドレスは、該当するＮＩＣポートが接続されているネットワークのアドレスである。ネットマスクは、該当するＮＩＣポートが接続されているネットワークのネットマスクである。次ノードＭＡＣアドレスは、該当するＮＩＣポートの次ノードのＭＡＣアドレスである。ＮＩＣグループ識別子は、同一ネットワークと同一ネットマスクを有するＮＩＣポートの集合で構成されるＮＩＣグループの識別子である。
【００２９】
ネットワーク情報管理テーブル１２４に格納されている情報は、ＮＩＣポートのリンクアップを検出したときにネットワーク構成情報取得部１１３によって収集・更新される情報である。管理サーバ１がネットワーク情報管理テーブル１２４を有することで、管理サーバ１は各ＮＩＣポートが属するＮＩＣグループを管理することができる。
【００３０】
（サーバ管理テーブル）
図１０は、本実施形態に係るサーバ管理テーブルの構成例を示す図である。
サーバ管理テーブル１２５は、サーバ装置２に接続されているＩ／Ｏデバイスの情報を管理するためのテーブルであり、サーバ装置識別子、ＰＣＩバス番号、ＮＩＣグループ識別子、仮想ＭＡＣ識別子、現用ＮＩＣポート識別子およびＮＩＣ割当種別の各フィールドを有している。
サーバ装置識別子は、サーバ装置２の識別子であり、図６のデバイス識別子に入力される情報と同じものである。ＰＣＩバス番号は、該当するサーバ装置２が有するＰＣＩバスの番号を示す。ＮＩＣグループ識別子は、該当するＰＣＩバスに割り当てられたＮＩＣ４が属するＮＩＣグループの識別子である。仮想ＭＡＣ識別子は、ＰＣＩバスに割り当てられたＮＩＣ４が有する仮想ＭＡＣアドレス毎の識別子である。仮想ＭＡＣ識別子は、ＮＩＣ４で受信したパケットを、どのサーバ装置２にデータ送信するかをＮＩＣ４が区別するためのものであり、１つのＮＩＣポートに複数の仮想ＭＡＣ識別子を設定することができる。現用ＮＩＣポート識別子は、該当するＰＣＩバスに接続されたＮＩＣ４に搭載されているＮＩＣポートを特定するための識別子であり、１つのＮＩＣポートに１つのＮＩＣポート識別子のみが設定される。ＮＩＣ割当種別は、該当するＰＣＩバスに割り当てられたＮＩＣ４の割当種別である。ＮＩＣ割当種別としては、例えば、障害が生じても運用が可能なサーバ装置２である「高可用」や、障害が生じた際、他のサーバ装置２へ処理を分散するサーバ装置２である「負荷分散」などの情報が格納される。
【００３１】
サーバ管理テーブル１２５に格納される情報は、新たにサーバ装置２が追加・変更された場合や、サーバ装置２の障害などが原因で、サーバ装置２が交換された場合など、計算機システム８内におけるサーバ装置２の構成に変更が生じたとき、サーバ情報取得部１１４が収集・更新する情報である。管理サーバ１が、サーバ管理テーブル１２５を有することで、管理サーバ１は各サーバ装置２のＰＣＩバスが対応付けされるＮＩＣグループ、ＮＩＣポート、仮想ＭＡＣアドレスおよびＮＩＣ割当種別を管理することができる。
【００３２】
（割当条件管理テーブル）
図１１は、本実施形態に係る割当条件管理テーブルの構成例を示す図である。
割当条件管理テーブル１２６は、ＮＩＣ割当種別に対応する切替先の条件に関する情報を管理するためのテーブルであり、ＮＩＣ割当種別および切替先条件の各フィールドを有し、切替先条件は、ＮＩＣグループ識別子条件、ＮＩＣ識別子条件、次ノードＭＡＣ条件および性能条件の各フィールドを有する。
ＮＩＣ割当種別は、図１０のＮＩＣ割当種別と同様であり、「高可用」、「負荷分散」などのサーバ装置２の特性を示す情報である。ＮＩＣグループ識別子条件は、切替先ＮＩＣグループ識別子の条件であり、例えば、「一致」は、ＮＩＣグループ識別子が一致するＮＩＣポートへの切り替えを行う（つまり、同一のＮＩＣグループ内でＮＩＣ４の切替を行う）ことである。ＮＩＣ識別子条件は、切替先となるＮＩＣ識別子の条件を示し、例えば、「不一致」はＮＩＣ識別子が一致しないＮＩＣポートへの切り替えを行うことである。次ノードＭＡＣ条件は、切替先となるＮＩＣポートのＭＡＣアドレスである次ノードＭＡＣアドレスの条件を示し、例えば、「不一致」は次ノードが一致するＮＩＣポートへの切り替えは行わないことを示す。性能条件は、ＮＩＣ４などに要求される性能条件であり、具体的には通信速度などが格納される。
割当条件管理テーブル１２６は、管理者が管理サーバ１の図示しない入力装置を介して入力する情報である。管理サーバ１が、割当条件管理テーブル１２６を有することで、サーバ装置２が「高可用」であれば、切替先条件としてどのようなＮＩＣ４が要求されるか、あるいはサーバ装置２が「負荷分散」であれば、切替先条件としてどのようなＮＩＣ４が要求されるかを管理することができる。
【００３３】
（仮想ＭＡＣ管理テーブル）
図１２は、本実施形態に係る仮想ＭＡＣ管理テーブルの構成例を示す図である。
仮想ＭＡＣ管理テーブル１２７は、仮想ＭＡＣ識別子が示す仮想ＭＡＣアドレスの状態を管理するためのテーブルであり、仮想ＭＡＣ識別子および状態の各フィールドを有する。
仮想ＭＡＣ識別子は、図１０の仮想ＭＡＣ識別子と同様に仮想ＭＡＣアドレス毎の識別子である。状態は、該当する仮想ＭＡＣアドレス（仮想ＭＡＣ識別子）の割当状態であり、「割当済み」、「未割当」などの情報が格納される。
仮想ＭＡＣ管理テーブル１２７は、新たにサーバ装置２が追加された場合や、サーバ装置２の障害などが原因で、サーバ装置２が交換された場合など、計算機システム８におけるサーバ装置２の構成に変更が生じたときにサーバ情報取得部１１４が収集・更新する情報である。管理サーバ１が仮想ＭＡＣ管理テーブル１２７を有することで、管理サーバ１は仮想ＭＡＣアドレスの割当状態を管理することができる。
【００３４】
（負荷管理テーブル）
図１３は、本実施形態に係る負荷管理テーブルの構成例を示す図である。
負荷管理テーブル１２８は、ＮＩＣポートにおける負荷を管理するためのテーブルであり、ＮＩＣポート識別子、ＮＩＣグループ識別子、総送信データ量および単位時間当たりのトラフィック量の各フィールドを有する。
ＮＩＣポート識別子は、図９のＮＩＣポート識別子と同様、ＮＩＣポートの識別子である。ＮＩＣグループ識別子は、該当するＮＩＣポートが属するＮＩＣグループの識別子である。ＮＩＣグループ識別子がハイフン（「−」）であるＮＩＣポートはＮＩＣグループが割り当てられていないことを示す。総送信データ量は、該当するＮＩＣポートがデータの送受信を始めた時点から累積したデータ量である。単位時間当たりのトラフィック量は、総送信データ量をＮＩＣ４の稼働時間で除算したものである。
負荷管理テーブル１２８に格納される情報は、ＮＩＣ情報取得部１１２がＩ／Ｏドロワ３のネットワークインタフェース３７０から定期的に性能情報を収集し、更新を行う情報である。管理サーバ１が負荷管理テーブル１２８を有することによって、管理サーバ１はＮＩＣポート毎の負荷の状態を管理することができる。
【００３５】
（障害監視情報管理テーブル）
図１４は、本実施形態に係る障害監視情報管理テーブルの構成例を示す図である。
障害監視情報管理テーブル１２９は、ＮＩＣグループにおけるＮＩＣ４の障害を監視する際に使用する情報を格納しているテーブルであって、ＮＩＣグループ識別子、監視ターゲットＩＰアドレス、監視ターゲットネットマスク、監視用ＩＰアドレスおよび監視パケット送出間隔の各フィールドを有している。
ＮＩＣグループ識別子は、図９のＮＩＣグループ識別子と同様、ＮＩＣグループの識別子である。監視ターゲットＩＰアドレスは、監視ターゲットのＩＰアドレスである。ここで、監視ターゲットとは、障害監視のためにＮＩＣ４との間でパケットの送受信を行う機器である。監視ターゲットネットマスクは、監視ターゲットのネットマスクである。監視用ＩＰアドレスは、障害の監視のために送受信されるパケット（障害監視パケット）を送信する際に、ＮＩＣ４に対して割り当てるＩＰアドレスである。監視パケット送出間隔は、監視パケットの送出間隔である。障害監視情報管理テーブル１２９は、管理者が管理サーバ１の図示しない入力装置を介して入力する情報である。
【００３６】
《フローチャート》
次に、図２〜図４および図６〜図１４を参照しつつ、図１５〜図２１に沿って本実施形態に係る処理の説明を行う。
【００３７】
（ＮＩＣ４情報取得処理）
図１５は、本実施形態に係るＮＩＣ情報取得処理の流れを示すフローチャートである。
まず、ＮＩＣ４が追加されたり、変更されたりすると、Ｉ／Ｏドロワ３は管理サーバ１へＮＩＣ追加・変更通知を送信し、管理サーバ１は、このＮＩＣ追加・変更通知を受信する（Ｓ１０１）。ＮＩＣ追加・変更通知には、追加されたり、変更された後のＮＩＣ４のＮＩＣ識別子や、このＮＩＣ４が接続しているＩ／Ｏドロワ３のポート番号などが含まれている。
次に、ＮＩＣ情報取得部１１２は、ＮＩＣ追加・変更通知から追加・変更が行われたＮＩＣ４の接続位置（ポート番号）を取得する（Ｓ１０２）。
そして、ＮＩＣ情報取得部１１２は、追加・変更対象のＮＩＣ識別子を管理サーバ１のＰＣＩバスに対し一時的な割り当てを行う（Ｓ１０３）。
次に、ＮＩＣ情報取得部１１２は、サーバ装置２で実行されているドライバを介して、追加・変更対象ＮＩＣ４の適合ドライバと性能の情報（具体的には、ＮＩＣ４の通信速度）を取得する（Ｓ１０４）。なお、ステップＳ１０４で、ＮＩＣ情報取得部１１２は、ＮＩＣ４からＮＩＣポート識別子、デバイス識別子、ＮＩＣ識別子、ＮＩＣポート数も取得する。
そして、ＮＩＣ情報取得部１１２は、ステップＳ１０２、ステップＳ１０４で取得した各情報をＩ／Ｏドロワ管理テーブル（図６）１２１、ＰＣＩｅスロット管理テーブル（図７）１２２、ＮＩＣ情報管理テーブル（図８）１２３に反映する（Ｓ１０５）。具体的には、ＮＩＣ情報取得部１１２が以下の処理を行う。つまり、ＮＩＣ情報取得部１１２はＩ／Ｏドロワ管理テーブル（図６）１２１において、ステップＳ１０２で取得したポート番号に該当する接続デバイスを「ｓｌｏｔ」にし、デバイス識別子を登録し、状態を「正常」にする。また、ＮＩＣ情報取得部１１２はＰＣＩｅスロット管理テーブル（図７）１２２に、ステップＳ１０２で取得したポート識別子、デバイス識別子を登録し、接続デバイスカードには「ＮＩＣ」を登録する。さらに、ＮＩＣ情報取得部１１２はＮＩＣ情報管理テーブル（図８）１２３のＮＩＣ識別子にステップＳ１０２で取得したデバイス識別子を登録し、ステップＳ１０４で取得した適合ドライバ、性能、ＮＩＣポート数、ＮＩＣポート識別子を登録し、状態を「正常」にする。ＮＩＣ情報取得部１１２は、各テーブル１２１〜１２３の他のフィールドは空欄としておく。
ＮＩＣ情報取得部１１２は、ステップＳ１０５における反映を行った後、ステップＳ１０３で一時的に割り当てた管理サーバ１から追加・変更対象ＮＩＣ４の割り当てを解放する（Ｓ１０６）。
【００３８】
（ＮＩＣグルーピング処理）
図１６は、本実施形態に係るＮＩＣグルーピング処理の流れを示すフローチャートである。
まず、Ｉ／Ｏドロワ３はＮＩＣポートのリンクアップを検知すると、リンクアップしたＮＩＣポートのリンクアップ通知を管理サーバ１へ送信し、ネットワーク構成情報取得部１１３は、このリンクアップ通知を受信する（Ｓ２０１）。リンクアップ通知には、リンクアップしたＮＩＣポートのＮＩＣポート識別子が含まれている。
次に、ネットワーク構成情報取得部１１３は、リンクアップ通知に含まれているＮＩＣポート識別子をキーとして、ＮＩＣ情報管理テーブル（図８）１２３およびネットワーク情報管理テーブル（図９）１２４を参照し、該当するＮＩＣポートが未グルーピングかつ正常であるか否かを判定する（Ｓ２０２）。具体的には、ネットワーク構成情報取得部１１３は、リンクアップ通知に含まれているＮＩＣポート識別子をキーとして、ネットワーク情報管理テーブル（図９）１２４において、該当する各フィールドがハイフン（「−」）であるか否かで、該当するＮＩＣポートが未グルーピングであるか否かを判定する。さらに、ネットワーク構成情報取得部１１３は、リンクアップ通知に含まれているＮＩＣポート識別子をキーとして、ＮＩＣ情報管理テーブル（図８）１２３における「状態」のフィールドを参照し、該当する「状態」が「正常」であるか否かを判定する。
【００３９】
ステップＳ２０２の結果、該当するＮＩＣポートが未グルーピングではないか（グループ化済み）、もしくは状態が正常ではない場合（Ｓ２０２→Ｎｏ）、ネットワーク構成情報取得部１１３は、ネットワーク構成情報取得処理を終了する。
ステップＳ２０２の結果、該当するＮＩＣポートが未グルーピングであり、かつ状態が正常である場合（Ｓ２０２→Ｙｅｓ）、ネットワーク構成情報取得部１１３は、障害監視情報管理テーブル（図１４）１２９からＮＩＣグループのレコードを１つ抽出する（Ｓ２０３）。抽出は、例えば、ネットワーク構成情報取得部１１３が障害監視情報管理テーブル１２９の上のレコードから順に取得することによって行われる。
【００４０】
次に、ネットワーク構成情報取得部１１３は、グループに所属するネットワークが正常であるか否かを判定するため、抽出したＮＩＣグループのレコードにおける監視用ＩＰアドレスを、処理対象の（リンクアップした）ＮＩＣポートに割り当て、抽出したレコードにおける監視ターゲットＩＰアドレスへ（処理対照のＮＩＣポートへ）監視パケットを送信する（Ｓ２０４）。
そして、ネットワーク構成情報取得部１１３は、ステップＳ２０４で送信した監視パケットに対する応答パケットを所定時間内に受信したか否かを判定する（Ｓ２０５）。
【００４１】
ステップＳ２０５の結果、応答パケットを受信した場合（Ｓ２０５→Ｙｅｓ）、ネットワーク構成情報取得部１１３は、応答パケットを参照して、ネットワーク情報管理テーブル（図９）１２４を更新して（Ｓ２０６）、ネットワーク構成情報取得処理を終了する。
ステップＳ２０６における具体的な処理は以下の通りである。応答パケットを受信すると、ネットワーク構成情報取得部１１３は、監視ターゲットＩＰアドレスを有するネットワークセグメントにおいて正常に通信が行われていると判定する。そして、ネットワーク構成情報取得部１１３は、処理対象となっているＮＩＣポート識別子をキーとして、ネットワーク情報管理テーブル（図９）１２４のネットワークアドレスのフィールドと、ネットマスクと、ＮＩＣグループ識別子のフィールドに、ステップＳ２０３で抽出した監視ターゲットＩＰアドレスとネットマスクとＮＩＣグループ識別子を格納する。さらに、ネットワーク構成情報取得部１１３は、応答パケットのＥｔｈｅｒｎｅｔ（登録商標）フレームを解析して、応答パケットの送信元ＭＡＣアドレスを取得し、ネットワーク情報管理テーブル（図９）１２４の次ノードＭＡＣアドレスのフィールドに、この送信元ＭＡＣアドレスを格納する。
【００４２】
ステップＳ２０５の結果、所定時間経過しても応答パケットを受信できない場合（Ｓ２０５→Ｎｏ）、ネットワーク構成情報取得部１１３は、監視ターゲットＩＰアドレスを有するネットワークセグメントにおいて正常な通信が行われていないと判定し、現在処理対象となっているＮＩＣグループが、ＮＩＣグループの終端であるか否かを判定する（Ｓ２０７）。つまり、ネットワーク構成情報取得部１１３は、ステップＳ２０３で抽出したレコードが障害監視情報管理テーブル（図１４）１２９における最後のレコードであるか否かを判定する。
ステップＳ２０７の結果、ＮＩＣグループの終端ではない場合（Ｓ２０７→Ｎｏ）、ネットワーク構成情報取得部１１３は、ステップＳ２０３へ処理を戻し、障害監視情報管理テーブル（図１４）１２９から次のレコードを抽出する。
ステップＳ２０７の結果、ＮＩＣグループが終端である場合（Ｓ２０７→Ｙｅｓ）、ネットワーク構成情報取得部１１３は、このＮＩＣポートが、登録されていないネットワークセグメントに接続しているか、もしくはネットワークに接続されていないと判断し、処理対象ＮＩＣポートの情報をネットワーク情報管理テーブル（図９）１２４に反映せずにネットワーク構成情報取得処理を終了する。
【００４３】
（サーバ情報取得処理）
図１７は、本実施形態に係るサーバ情報取得処理の流れを示すフローチャートである。
Ｉ／Ｏドロワ３にサーバ装置２が追加接続されたり、変更されたりすると、Ｉ／Ｏドロワ３はサーバ装置追加・変更通知を管理サーバ１へ送信し、サーバ情報取得部１１４は、このサーバ装置追加・変更通知を受信する（Ｓ３０１）。サーバ装置追加・変更通知には、サーバ装置識別子と、ＰＣＩバスの数が含まれている。
次に、サーバ情報取得部１１４は、ネットワークインタフェース１３２を介して、Ｉ／Ｏドロワ３から追加・変更対象のサーバ装置２（以下、対象サーバ装置２と称する）の接続位置（具体的にはポート番号）を取得し、追加・変更の対象サーバ装置２からＰＣＩバス番号を取得し（Ｓ３０２）、Ｉ／Ｏドロワ管理テーブル（図６）１２１を更新し（図１７に図示せず）、サーバ管理テーブル（図１０）１２５を更新する（図１７に図示せず）。具体的には、サーバ情報取得部１１４は、Ｉ／Ｏドロワ管理テーブル（図６）１２１において、取得したポート番号に該当する接続デバイスを「ｈｏｓｔ」とし、ポート識別子にサーバ装置追加・変更通知のサーバ装置識別子と、ＰＣＩバス番号を登録する。また、サーバ情報取得部１１４は、取得したサーバ装置識別子を、サーバ管理テーブル（図１０）１２５に登録する。サーバ情報取得部１１４は、各テーブル１２１，１２５の他のフィールドは空欄としておく。
【００４４】
次に、サーバ情報取得部１１４は、対象サーバ装置２にネットワーク構成を割り当てるため管理者が予め入力してある対象サーバ装置２のネットワーク割当要件情報（図示せず）を参照する（Ｓ３０３）。ネットワーク割当要件情報は、対象サーバ装置２が「高可用」であるか、「負荷分散」であるか、といった情報が格納されている。
なお、ネットワーク割当要件情報は、１つのみが入力されてもよいし、複数入力されてもよい。ネットワーク割当要件情報が複数入力されるときとは、複数のサーバ装置２が追加・変更されたときや、１つのサーバ装置２に異なる複数のネットワークセグメントが割り当てられたときなどである。例えば、あるサーバ装置２にネットワークセグメントＡ，Ｂ，Ｃが割り当てられると、ネットワークセグメントＡ，Ｂ，Ｃ用のネットワーク割当要件情報が入力される。他のサーバ装置２にも同様にネットワークセグメントが割り当てられたとすると、２つのサーバ装置２に対し、ネットワークセグメントＡ，Ｂ，Ｃ用のネットワーク割当要件情報がそれぞれ入力されるため、結果として６つのネットワーク割当要件情報が管理サーバ１に入力されることになる。
【００４５】
続いて、サーバ情報取得部１１４は、割当条件管理テーブル（図１１）１２６を参照し、ステップＳ３０３で参照したネットワーク割当要件情報における割当要求が、割当条件管理テーブル１２６にあるか否かを判定する（Ｓ３０４）。
ステップＳ３０４の結果、ネットワーク割当要件情報が、割当条件管理テーブル１２６にない場合（Ｓ３０４→Ｎｏ）、サーバ情報取得部１１４は追加・変更の対象外となっている種類のサーバ装置２と判定し、サーバ情報取得処理を終了する。
【００４６】
ステップＳ３０４の結果、ネットワーク割当要件情報が、割当条件管理テーブル１２６にある場合（Ｓ３０４→Ｙｅｓ）、サーバ情報取得部１１４は、管理者が予め入力してある要求ネットワーク構成情報（図示せず）を参照して、ネットワーク情報管理テーブル（図９）１２４から、要求ネットワーク構成情報に該当するＮＩＣグループ識別子を取得する（Ｓ３０５）。管理者によって入力される要求ネットワーク構成情報には、対象サーバ装置２が接続しているＮＩＣポートにおけるＮＩＣポート識別子、ネットワークアドレス、ネットマスク、次ノードＭＡＣアドレスなどの情報が格納されている。
【００４７】
次に、サーバ情報取得部１１４は、ステップＳ３０１で受信したサーバ装置追加・変更通知に含まれている対象サーバ装置２のサーバ装置識別子をキーとして、サーバ管理テーブル（図１０）１２５を参照し、対象サーバ装置２においてＮＩＣグループ識別子のフィールドが未割当（「−」）のＰＣＩバス番号に該当する、ステップＳ３０５で取得したＮＩＣグループ識別子を割り当て、管理者が入力した要求ネットワーク構成情報をＮＩＣ割当種別のフィールドに登録する（Ｓ３０６）。
続いて、サーバ情報取得部１１４は、仮想ＭＡＣ管理テーブル（図１２）１２７を参照し、状態のフィールドが「未割当」の仮想ＭＡＣ識別子があるか否かを判定する（Ｓ３０７）。
【００４８】
ステップＳ３０７の結果、「未割当」の仮想ＭＡＣ識別子がある場合（Ｓ３０７→Ｙｅｓ）、サーバ情報取得部１１４は、ステップＳ３０９へ処理を進める。
ステップＳ３０７の結果、「未割当」の仮想ＭＡＣ識別子がない場合（Ｓ３０７→Ｎｏ）、サーバ情報取得部１１４は、新規に仮想ＭＡＣ識別子を生成し、生成した仮想ＭＡＣ識別子を、仮想ＭＡＣ管理テーブル（図１２）１２７に追加する（Ｓ３０８）。
そして、サーバ情報取得部１１４は、サーバ管理テーブル（図１０）１２５において、ステップＳ３０６で処理の対象となったＰＣＩバス番号に該当する仮想ＭＡＣ識別子のフィールドに、取得した未割当の仮想ＭＡＣ識別子、もしくはステップＳ３０８で生成した仮想ＭＡＣ識別子を割り当て（図１７に図示せず）、仮想ＭＡＣ管理テーブル１２７における該当する仮想ＭＡＣ識別子の状態を「割当済み」に変更する（Ｓ３０９）。
この操作により、サーバ装置２に、いずれのＮＩＣポートが割り当てられた場合でも、常に割当られた仮想ＭＡＣアドレスが認識できるようになる。
【００４９】
次に、ＮＩＣ選択部１１７が、ステップＳ３０７で検索したＰＣＩバス番号を含むＮＩＣ選択通知をＮＩＣ選択部１１７へ送ることにより、ＮＩＣ選択部１１７が図２０で後記するＮＩＣ選択処理を行い（Ｓ３１０）、サーバ情報取得部１１４は、ＮＩＣ選択処理の結果から選択ＮＩＣポートがあるか否かを判定する（Ｓ３１１）
選択ＮＩＣポートがない場合（Ｓ３１１→Ｎｏ）、サーバ情報取得部１１４は、選択ＮＩＣポートがない旨をサーバ装置２に通知して（Ｓ３１２）、ステップＳ３０３へ処理を戻す。
選択ＮＩＣポートがある場合（Ｓ３１１→Ｙｅｓ）、サーバ情報取得部１１４は、ＮＩＣ選択処理で選択されたＮＩＣポート識別子を、サーバ管理テーブル（図１０）１２５のステップＳ３０６で処理の対象となったＰＣＩバス番号に該当する現用ポートＮＩＣ識別子のフィールドに割り当てる（Ｓ３１３）。
次に、ＮＩＣ監視部１１５が、すべてのＮＩＣ４に対し図１８で後記する障害監視処理を行った（Ｓ３１４）後、入力されたネットワーク割当要件情報がすべて終わるまで、ステップＳ３０３〜Ｓ３１４を繰り返す。
【００５０】
なお、負荷管理テーブル（図１３）１２８は、以下の手順で作成される。管理サーバ１が図１６のＮＩＣグルーピング時にネットワーク情報管理テーブル（図９）１２４のＮＩＣポート識別子とＮＩＣグループ識別子を負荷管理テーブル（図１３）１２８のＮＩＣポート識別子とＮＩＣグループ識別子にコピーし、その後、定期的にＮＩＣ４の通信量を監視することによって作成される。
【００５１】
（ＮＩＣ監視処理）
図１８は、本実施形態に係るＮＩＣ監視処理の流れを示すフローチャートである。図１８は、すべてのＮＩＣ４に対して独立に実行される処理である。
ＮＩＣ監視部１１５は、ＮＩＣ監視部１１５自身の呼び出し、もしくはＮＩＣポートへ送っている障害監視用パケット送出の間隔満了通知を受信する（Ｓ４０１）。
次に、ＮＩＣ監視部１１５は、処理の対象となっているＮＩＣポート識別子をキーとして、ネットワーク情報管理テーブル（図９）１２４からＮＩＣグループ識別子を取得し（図１８に図示せず）、さらに、取得したＮＩＣグループ識別子をキーとして、障害監視情報管理テーブル（図１４）１２９を参照し、該当する監視用ＩＰアドレスと、監視ターゲットＩＰアドレスを取得し、処理対象のＮＩＣポート（以下、対象ＮＩＣポートと称する）に取得した監視用ＩＰアドレスを割り当てる（Ｓ４０２）。
そして、ＮＩＣ監視部１１５は、監視ターゲットＩＰアドレスに監視パケットを送信し（Ｓ４０３）、この監視パケットに対する応答パケットを所定時間内に受信したか否かを判定する（Ｓ４０４）。
【００５２】
ステップＳ４０４の結果、所定時間が経過しても応答パケットを受信できなかった場合（Ｓ４０４→Ｎｏ）、ＮＩＣ監視部１１５は監視パケットの送信先となっているＮＩＣポートに障害が発生したと判定し、障害通知およびＰＣＩ番号を含んだＮＩＣ切替通知をＮＩＣ切替部１１６へ送ることにより、ＮＩＣ切替部１１６が通信の回復のためＮＩＣ切替処理を行った（Ｓ４０５）後、ＮＩＣ監視部１１５は呼出元の処理へリターンする。ここで、ＰＣＩ番号は、対象となっているＮＩＣポート識別子をキーとして、サーバ管理テーブル（図１０）１２５から取得する（図１８に図示せず）。
ステップＳ４０４の結果、応答パケットを受信した場合（Ｓ４０４→Ｙｅｓ）、ＮＩＣ監視部１１５は、対象ＮＩＣポートを介した通信経路は正常と判定し、処理対象となっているＮＩＣポート識別子をキーとして、サーバ管理テーブル（図１０）１２５からＮＩＣ割当種別を取得し（図１８に図示せず）、取得したＮＩＣ割当種別が「負荷分散」であるか否かを判定する（Ｓ４０６）。
ステップＳ４０６の結果、「負荷分散」ではない場合（Ｓ４０６→Ｎｏ）、ＮＩＣ監視部１１５はステップＳ４０７をスキップしてステップＳ４０８へ処理を進める。
ステップＳ４０６の結果、「負荷分散」である場合（Ｓ４０６→Ｙｅｓ）、ＮＩＣ監視部１１５はステップＳ４０２で取得したＮＩＣグループ識別子をキーとして、負荷管理テーブル（図１３）１２８を参照し、該当する性能（総送信データ量、単位時間当たりのトラフィック量）が、割当条件管理テーブル（図１１）１２６の性能条件のフィールドに格納されている要求性能を満たすか否かを判定する（Ｓ４０７）。
【００５３】
ステップＳ４０６の結果、要求性能を満たさない場合（Ｓ４０７→Ｎｏ）、要求性能を満たすＮＩＣポートへの切り替えを行うため、ＰＣＩ番号を含んでいるが、障害通知は含んでいないＮＩＣ切替通知をＮＩＣ切替部１１６へ送ることにより、ＮＩＣ切替部１１６がＮＩＣ切替処理を行う（Ｓ４０５）。
ステップＳ４０７の結果、要求性能を満たしている場合（Ｓ４０７→Ｙｅｓ）、ＮＩＣ監視部１１５は、監視パケット送出間隔満了通知を行うよう、管理サーバ１の図示しないタイマを設定する（Ｓ４０８）。ＮＩＣ監視部１１５は、すべてのＮＩＣポートに関して図１９の処理を繰り返した後、呼出元の処理へリターンする。
【００５４】
（ＮＩＣ切替処理）
図１９は、本実施形態に係るＮＩＣ切替処理の流れを示すフローチャートである。図１９の処理は、図１８のステップＳ４０５で行われる処理である。
ＮＩＣ切替部１１６は、呼出元から送られたＮＩＣ切替通知に含まれているＰＣＩ番号を取得する（Ｓ５０１）
次に、ＮＩＣ切替部１１６は、取得したＰＣＩバス番号をキーとして、サーバ管理テーブル（図１０）１２５を検索し、現用ＮＩＣポート識別子、ＮＩＣグループ識別子、仮想ＭＡＣ識別子を取得する（Ｓ５０２）。
次に、ＮＩＣ切替部１１６は、ＮＩＣ切替通知に障害通知が含まれているか否かを判定する（Ｓ５０３）。すなわち、現在のＮＩＣ切替処理が図１８のステップＳ４０４において「Ｎｏ」が選択されることによって行われている処理であるか否かを判定する。
【００５５】
ステップＳ５０３の結果、障害通知を含んでいない場合（Ｓ５０３→Ｎｏ）、ＮＩＣ切替部１１６はステップＳ５０５へ処理を進める。
ステップＳ５０３の結果、障害通知を含んでいる場合（Ｓ５０３→Ｙｅｓ）、ＮＩＣ切替部１１６はステップＳ５０２で取得した現用ＮＩＣポート識別子（ＮＩＣポート識別子）をキーとして、ＮＩＣ情報管理テーブル（図８）１２３を参照し、該当する状態を「正常」から「異常」に変更する（Ｓ５０４）。
続いて、ＮＩＣ切替部１１６は、ステップＳ５０１で取得したＰＣＩバス番号を含むＮＩＣ選択通知をＮＩＣ選択部１１７へ送ることにより、ＮＩＣ選択部１１７が図２０で後記するＮＩＣ選択処理を行う（Ｓ５０５）。
【００５６】
そして、ＮＩＣ切替部１１６は、ＮＩＣ選択処理の結果から、選択ＮＩＣポートがあるか否かを判定する（Ｓ５０６）。
ステップＳ５０６の結果、選択ＮＩＣポートがない場合（Ｓ５０６→Ｎｏ）、ＮＩＣ切替部１１６は切替先ＮＩＣポートがない旨を含む切替完了通知をサーバ装置２へ通知し（Ｓ５０７）、ＮＩＣ切替部１１６は呼出元の処理へリターンする。
【００５７】
ステップＳ５０６の結果、選択ＮＩＣポートがある場合（Ｓ５０６→Ｙｅｓ）、ＮＩＣ切替部１１６は、サーバ管理テーブル（図１０）１２５において、ステップＳ５０２で取得された現用ＮＩＣポート識別子に割り当てられているＰＣＩバス番号、仮想ＭＡＣ識別子を削除することによって、切替対象のＮＩＣポートに割り当てられたＰＣＩバス番号、仮想ＭＡＣ識別子を切替対象の現用ＮＩＣポート識別子から割当解除する（Ｓ５０８）。
そして、ＮＩＣ切替部１１６は、サーバ管理テーブル（図１０）１２５を参照し、割当解除されたＰＣＩバス番号および仮想ＭＡＣ識別子を、ＮＩＣ選択処理で選択されたＮＩＣポート識別子に該当するフィールドに格納することで、これらの再割当を行う（Ｓ５０９）。
【００５８】
次に、ＮＩＣ切替部１１６はステップＳ５０３で取得した現用ＮＩＣポート識別子およびＮＩＣ選択処理で選択されたＮＩＣポート識別子をキーとして、ＮＩＣ情報管理テーブル（図８）１２３の適合ドライバのフィールドを参照し、切替前後でドライバが同じであるか否かを判定する（Ｓ５１０）。
ステップＳ５１０の結果、ドライバが異なるのであれば（Ｓ５１０→Ｎｏ）、ＮＩＣ切替部１１６は、ＮＩＣ選択処理で選択されたＮＩＣポート識別子に対応するドライバ種類をＮＩＣ情報管理テーブル（図８）１２３から取得し、このドライバ種類を含む切替完了通知をサーバ装置２へ送信し（Ｓ５１１）、ＮＩＣ切替部１１６は呼出元の処理へリターンする。
ステップＳ５１０の結果、ドライバが同じであれば（Ｓ５１０→Ｙｅｓ）、ＮＩＣ切替部１１６は、切替完了通知をサーバ装置２へ送信し（Ｓ５１２）、ＮＩＣ切替部１１６は呼出元の処理へリターンする。
【００５９】
（ＮＩＣ選択処理）
図２０は、本実施形態に係るＮＩＣ選択処理の流れを示すフローチャートである。図２０の処理は、図１７のステップＳ３１０および図１９のステップＳ５０５で行われる処理である。
まず、ＮＩＣ選択部１１７は、ＮＩＣ選択通知に含まれているＰＣＩバス番号を取得し（Ｓ６０１）、このＰＣＩバス番号をキーとして、サーバ管理テーブル（図１０）１２５を参照し、取得したＰＣＩバス番号である対象ＰＣＩバスに割り当てられているＮＩＣグループ識別子、現用ＮＩＣポート識別子、ＮＩＣ割当種別を取得する（Ｓ６０２）。
次に、ＮＩＣ選択部１１７は、ステップＳ６０２で取得したＮＩＣグループ識別子をキーとして、ネットワーク情報管理テーブル（図９）１２４を参照し（図２０に図示せず）、該当するＮＩＣポート識別子をすべて取得すると、取得したＮＩＣポート識別子のそれぞれをキーとしてＮＩＣ情報管理テーブル（図８）１２３の状態のフィールドを参照し、「正常」であるＮＩＣポートがあるか否かを判定する（Ｓ６０３）。
ステップＳ６０３の結果、「正常」であるＮＩＣポートがない場合（Ｓ６０３→Ｎｏ）、ＮＩＣ選択部１１７は、選択ＮＩＣポートなしの旨を呼出元へ返却し（Ｓ６０４）、呼出元の処理へリターンする。
【００６０】
ステップＳ６０３の結果、「正常」であるＮＩＣポートがある場合（Ｓ６０３→Ｙｅｓ）、ＮＩＣ選択部１１７は、ステップＳ６０２で取得したＮＩＣグループ識別子である対象ＮＩＣグループ所属のすべての「正常」なＮＩＣポート識別子に関して、負荷管理テーブル（図１３）１２８を参照し、負荷が低い順にソートする（Ｓ６０５）。負荷が低い順とは、単位時間当たりのトラフィック量が小さい順であるが、総送信データ量が小さい順でもよい。ソートされたＮＩＣポート識別子はソート結果に格納される。
さらに、ＮＩＣ選択部１１７は、ＮＩＣ情報管理テーブル（図８）１２３の性能のフィールドを参照し、ステップＳ６０５のソート結果に対し、性能がよい順にＮＩＣポート識別子をソートする（Ｓ６０６）。性能がよい順とは、ＮＩＣ情報管理テーブル（図８）１２３の性能に格納されている通信速度の速い順である。
【００６１】
次に、ＮＩＣ選択部１１７は、ステップＳ６０１で取得したＰＣＩバス番号（対象のＰＣＩバス番号）をキーとして、サーバ管理テーブル（図１０）１２５を参照し、対象のＰＣＩバス番号にＮＩＣポートが割当済みか否かを判定する（Ｓ６０７）。
ステップＳ６０７の結果、対象のＰＣＩバス番号にＮＩＣポートが割当済みでない場合（Ｓ６０７→Ｎｏ）、ＮＩＣ選択部１１７はステップＳ６０９へ処理を進める。
ステップＳ６０７の結果、対象のＰＣＩバス番号にＮＩＣポートが割当済みである場合（Ｓ６０７→Ｙｅｓ）、ＮＩＣ選択部１１７はサーバ管理テーブル（図１０）１２５から対象のＰＣＩバス番号に該当する現用ＮＩＣポート識別子を取得すると（図２０に図示せず）、さらに、取得した現用ＮＩＣポート識別子（ＮＩＣポート識別子：割当ＮＩＣポート）をキーとして、ＮＩＣ情報管理テーブル（図８）１２３の適合ドライバのフィールドから、該当するドライバ種類を取得する。そして、ＮＩＣ選択部１１７は、ステップＳ６０６におけるソート結果に格納されているＮＩＣポート識別子をキーとして、ＮＩＣ情報管理テーブル（図８）１２３の適合ドライバのフィールドを参照し（図２０に図示せず）、それぞれのＮＩＣポート識別子に該当するドライバ種類を取得すると、これらのドライバ種類を、割当ＮＩＣポートを基に取得したドライバ種類と比較する。そして、ＮＩＣ選択部１１７は、比較の結果、割当ＮＩＣポートと同一種類のドライバを有するＮＩＣポート識別子をソート結果の先頭へ移動する（Ｓ６０８）。
【００６２】
その後、ＮＩＣ選択部１１７は、ステップＳ６０１で取得した対象ＰＣＩバス番号をキーとして、サーバ管理テーブル（図１０）１２５からＮＩＣ割当種別を取得すると、取得したＮＩＣ割当種別をキーとして、割当条件管理テーブル（図１１）１２６から該当する切替先条件の各情報を取得することによって、対象のＰＣＩバスに割り当てられたＮＩＣ割当種別の切替先条件を取得する（Ｓ６０９）。
次に、ＮＩＣ選択部１１７は、ステップＳ６０９で取得した切替先条件に合致しないＮＩＣポート識別子をソート結果から除外する（Ｓ６１０）。
【００６３】
例えば、ＮＩＣ割当種別が「高可用」であれば、ＮＩＣ選択部１１７はソート結果に格納されているＮＩＣポート識別子のそれぞれと、ステップＳ６０２で取得した現用ＮＩＣポート識別子（ＮＩＣポート識別子）をキーとして、ネットワーク情報管理テーブル（図９）１２４から該当するＮＩＣグループ識別子、次ノードＭＡＣアドレスを取得した後、比較を行い、ステップＳ６０２で取得した現用ＮＩＣポート識別子をキーとして取得したＮＩＣグループ識別子に一致せず、次ノードＭＡＣアドレスが一致しているＮＩＣポート識別子をソート結果から除外する。
また、ＮＩＣ４割当種別が「負荷分散」であれば、ＮＩＣ選択部１１７はソート結果に格納されているＮＩＣポート識別子のそれぞれと、ステップＳ６０２で取得した現用ＮＩＣポート識別子（ＮＩＣポート識別子）をキーとして、ネットワーク情報管理テーブル（図９）１２４から、該当するＮＩＣグループ識別子を取得し、ソート結果に格納されているＮＩＣポート識別子をキーとして、ＮＩＣ情報管理テーブル（図８）１２３から該当する性能を取得した後、比較を行い、ステップＳ６０２で取得した現用ＮＩＣポート識別子をキーとして取得したＮＩＣグループ識別子に一致せず、取得した性能が割当条件管理テーブル（図１１）１２６の要求性能を満たしていないＮＩＣポート識別子をソート結果から除外する。
【００６４】
そして、ＮＩＣ選択部１１７は、この時点でソート結果にＮＩＣポート識別子が残っているか否かを判定することにより、ステップＳ６１０の条件を満たすＮＩＣポート識別子があるか否かを判定する（Ｓ６１１）。
ステップＳ６１１の結果、条件を満たすＮＩＣポート識別子がない場合（Ｓ６１１→Ｎｏ）、つまり、ステップＳ６１１の時点でソート結果が空である場合、ＮＩＣ選択部１１７は、選択ＮＩＣポートなしの旨を呼出元へ返却し（Ｓ６０４）、呼出元の処理へリターンする。
ステップＳ６１１の結果、条件を満たすＮＩＣポート識別子がある場合（Ｓ６０２→Ｙｅｓ）、つまり、ステップＳ６１１の時点でソート結果が空ではない場合、ＮＩＣ選択部１１７は、ソート結果の最上位のＮＩＣポート識別子を選択ＮＩＣポートとして呼出元へ返却し（Ｓ６１２）、呼出元の処理へリターンする。なお、ステップＳ６１２において、ＮＩＣ選択部１１７はソート結果の２番目、３番目などに位置しているＮＩＣポート識別子を選択してもよい。
【００６５】
（ＮＩＣ切替検出処理）
図２１は、本実施形態に係るＮＩＣ切替検出処理の流れを示すフローチャートである。
まず、サーバ装置２のＮＩＣ切替検出部２１１は、図１９のステップＳ５０７、ステップＳ５１１およびステップＳ５１２で管理サーバ１から送信された切替完了通知を受信する（Ｓ７０１）。
次に、ＮＩＣ切替検出部２１１は、受信した切替完了通知に含まれる情報から、切替先ＮＩＣポートがあるか否かを判定する（Ｓ７０２）。
ステップＳ７０２の結果、切替先ＮＩＣポートがない場合（Ｓ７０２→Ｎｏ）、つまり受信した切替完了通知が、図１９のステップＳ５０７の段階で送信されたものである場合、ＮＩＣ切替検出部２１１は、管理サーバ１のネットワークインタフェース１３２をダウンさせ（Ｓ７０３）、ＮＩＣ切替検出処理を終了する。
【００６６】
ステップＳ７０２の結果、切替先ＮＩＣポートがある場合（Ｓ７０２→Ｙｅｓ）、つまり、受信した切替完了通知は、図１９のステップＳ５１１およびステップＳ５１２の段階で送信されたものである場合、ＮＩＣ切替検出部２１１は、切替完了通知にドライバ種類が含まれているか否かを判定することによって、切替前後のＮＩＣポートを制御するドライバに変更があるか否かを判定する（Ｓ７０４）。
ステップＳ７０４の結果、ドライバに変更がない場合（Ｓ７０４→Ｎｏ）、つまり、受信した切替完了通知は、図１９のステップＳ５１２の段階で送信されたものである場合、ＮＩＣ切替検出部２１１は、ステップＳ７０６へ処理を進める。
【００６７】
ステップＳ７０４の結果、ドライバに変更がある場合（Ｓ７０４→Ｙｅｓ）、つまり、受信した切替完了通知は、図１９のステップＳ５１１の段階で送信されたものである場合、ＮＩＣ切替検出部２１１は、切替完了通知に含まれているドライバ種類の情報を基にドライバを入れ替える（Ｓ７０５）。具体的には、ＮＩＣ切替検出部２１１は、ネットワークサービスを停止し、古いドライバをアンロードし、新しいドライバ（切替完了通知に含まれているドライバ種類）をロードした後、ネットワークサービスを開始させる。
次に、ＮＩＣ切替検出部２１１は、切替前のＮＩＣポートのオフロード設定を切替後のＮＩＣポートに適用する（Ｓ７０６）。
【００６８】
《まとめ》
本実施形態によれば、ＮＩＣ４の性能などを考慮してＮＩＣポートを選択することにより、Ｉ／Ｏドロワ３と複数ＭＡＣアドレスを持つことを可能とするＮＩＣ４を有する複数サーバ装置２におけるシステム構築の容易化、および運用管理の簡素化を図ることができる。とりわけ、サーバ装置２を追加した場合に、要求されるネットワーク構成およびシステム特性（ＮＩＣ４の性能など）を考慮して、サーバ装置２に割り当てるＮＩＣ４を選択し、そのＮＩＣ４をサーバ装置２に接続するように割当制御を行うことで、適確にシステム構築を行うことができる。
さらに、本実施形態によれば、あるＮＩＣ４に障害が発生した場合において、各種テーブルを参照して切替先のＮＩＣ４を選択し、そのＮＩＣ４をサーバ装置２に接続するようにＮＩＣ４の接続切替制御を行うことができ、システム特性を考慮した障害回復を行うことができる。
つまり、本実施形態によれば、Ｉ／Ｏドロワと複数ＭＡＣアドレスを持つことを可能とするＮＩＣを有する複数サーバ装置におけるシステム構築の容易化、および運用管理の簡素化を図ることができる。より具体的には、各サーバ装置に必要となるネットワーク構成、およびシステム特性、具体的には信頼性重視、性能重視に応じて、Ｉ／Ｏドロワに搭載されたＮＩＣから、最適なＮＩＣを選択し、各サーバ装置に割当制御を行うことができる。
【符号の説明】
【００６９】
１      管理サーバ（ＮＩＣ管理装置）
２      サーバ装置
３      Ｉ／Ｏドロワ
４      ＮＩＣ
５，６  ネットワークスイッチ
７      ルータ
８      計算機システム
１１０  メモリ（管理サーバ）
１１１  制御部（管理サーバ）
１１２  ＮＩＣ情報取得部
１１３  ネットワーク構成情報取得部
１１４  サーバ情報取得部
１１５  ＮＩＣ監視部
１１６  ＮＩＣ切替部
１１７  ＮＩＣ選択部
１２０  記憶装置
１２１  Ｉ／Ｏドロワ管理テーブル
１２２  ＰＣＩｅスロット管理テーブル
１２３  ＮＩＣ情報管理テーブル（性能情報、ＮＩＣ情報管理情報）
１２４  ネットワーク情報管理テーブル
１２５  サーバ管理テーブル
１２６  割当条件管理テーブル（性能情報、割当条件管理情報）
１２７  仮想ＭＡＣ管理テーブル
１２８  負荷管理テーブル（性能情報、負荷管理情報）
１２９  障害監視情報管理テーブル
１３０  プロセッサ（管理サーバ）
２１０  メモリ（サーバ装置）
２１１  ＮＩＣ切替検出部
２２０  プロセッサ（サーバ装置）
３１０  メモリ（Ｉ／Ｏドロワ）
３１１  制御部（Ｉ／Ｏドロワ）
３２０  プロセッサ（Ｉ／Ｏドロワ）
３４０  ＰＣＩｅスイッチ
３５０  サーバ装置用ポート
３６０  スロット用ポート
【図１】
2011118663.tif 000003
【図２】
2011118663.tif 000004
【図３】
2011118663.tif 000005
【図４】
2011118663.tif 000006
【図５】
2011118663.tif 000007
【図６】
2011118663.tif 000008
【図７】
2011118663.tif 000009
【図８】
2011118663.tif 000010
【図９】
2011118663.tif 000011
【図１０】
2011118663.tif 000012
【図１１】
2011118663.tif 000013
【図１２】
2011118663.tif 000014
【図１３】
2011118663.tif 000015
【図１４】
2011118663.tif 000016
【図１５】
2011118663.tif 000017
【図１６】
2011118663.tif 000018
【図１７】
2011118663.tif 000019
【図１８】
2011118663.tif 000020
【図１９】
2011118663.tif 000021
【図２０】
2011118663.tif 000022
【図２１】
2011118663.tif 000023