(57)【特許請求の範囲】
【請求項１】
複数の処理装置と、前記複数の処理装置を管理する複数の管理装置を含む情報処理システムであって、
データを記憶する第１の管理装置と、
前記データを前記第１の管理装置から通信路を介して受信し、受信した前記データを記憶する第２の管理装置と、
他の１台以上の管理装置と、を備え、
前記第１の管理装置は、前記通信路に障害が発生すると、前記他の１台以上の管理装置の状態に基づいて、前記他の１台以上の管理装置の中から、前記第１の管理装置および前記第２の管理装置と接続されている第３の管理装置を選択し、前記第３の管理装置を介して前記データを前記第２の管理装置に送信し、
前記第２の管理装置は、前記第２の管理装置が記憶する第２のデータを、前記通信路または別の通信路を介して前記第１の管理装置に送信し、
前記第２の管理装置が前記第２のデータの送信に用いる前記通信路または前記別の通信路に障害が発生すると、前記第２の管理装置は、前記他の１台以上の管理装置の状態に基づいて、前記他の１台以上の管理装置の中から、前記第３の管理装置または前記第３の管理装置とは異なる第４の管理装置を選択し、選択した前記第３の管理装置または選択した前記第４の管理装置を介して、前記第２のデータを前記第１の管理装置に送信し、
前記他の１台以上の管理装置の各々の状態は、当該他の管理装置が管理する１台以上の処理装置の状態が当該他の管理装置を介したデータ送信に悪影響を与える程度に基づく指標値により表され、
前記第１の管理装置は、前記指標値に基づいて前記第３の管理装置を選択し、
前記第２の管理装置は、前記指標値に基づいて前記第３の管理装置または前記第４の管理装置を選択する
ことを特徴とする情報処理システム。
【請求項２】
前記第１の管理装置は、前記第３の管理装置に、前記第３の管理装置のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）アドレスとポート番号を含む第１の接続先情報を前記第１の管理装置へ送信させ、前記ＩＰアドレスと前記ポート番号とは異なるポート番号を含む第２の接続先情報を、前記第２の管理装置へ送信させ、
前記第２の管理装置は、前記第２の接続先情報にしたがって、前記第２の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第１の管理装置は、前記第１の接続先情報にしたがって、前記第１の管理装置と前記第３の管理装置との間の通信路を形成する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第２の管理装置は、前記第３の管理装置を選択すると、前記第３の管理装置のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）アドレスとポート番号を含む第１の接続先情報を、前記第３の管理装置から前記第１の管理装置および前記第２の管理装置へ送信させ、前記第１の接続先情報にしたがって、前記第２の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第２の管理装置が前記第３の管理装置を選択した場合、前記第１の管理装置は、前記第１の接続先情報にしたがって、前記第１の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第２の管理装置は、前記第４の管理装置を選択すると、前記第４の管理装置のＩＰアドレスとポート番号を含む第２の接続先情報を、前記第４の管理装置から前記第１の管理装置および前記第２の管理装置へ送信させ、前記第２の接続先情報にしたがって、前記第２の管理装置と前記第４の管理装置との間の通信路を形成し、
前記第２の管理装置が前記第４の管理装置を選択した場合、前記第１の管理装置は、前記第２の接続先情報にしたがって、前記第１の管理装置と前記第４の管理装置との間の通信路を形成する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項４】
複数の処理装置と、前記複数の処理装置を管理する複数の管理装置とを含む情報処理システムの中の、第１の管理装置に、
前記第１の管理装置が記憶するデータを前記第１の管理装置から受信する第２の管理装置と前記第１の管理装置との間の通信路に発生する障害を検出し、
前記通信路に障害が発生すると、他の１台以上の管理装置の状態に基づいて、前記他の１台以上の管理装置の中から、前記第１の管理装置および前記第２の管理装置と接続されている第３の管理装置を選択し、
前記第３の管理装置を介して前記データを前記第２の管理装置に送信する
処理を実行させ、
前記他の１台以上の管理装置の各々の状態は、当該他の管理装置が管理する１台以上の処理装置の状態が当該他の管理装置を介したデータ送信に悪影響を与える程度に基づく指標値により表され、
前記第１の管理装置に、前記指標値に基づいて前記第３の管理装置を選択させる処理をさらに実行させる
ことを特徴とするプログラム。
【請求項５】
前記第３の管理装置のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）アドレスとポート番号を含む第１の接続先情報を前記第３の管理装置から前記第２の管理装置に送信させるとともに、前記第２の管理装置が前記第１の接続先情報にしたがって前記第２の管理装置と前記第３の管理装置との間の通信路を形成した後に前記第３の管理装置から前記第１の管理装置に前記ＩＰアドレスと前記ポート番号と異なるポート番号を含む第２の接続先情報を送信させるための命令を、前記第３の管理装置に送信し、
前記第２の接続先情報を前記第３の管理装置から受信し、
前記第２の接続先情報にしたがって前記第３の管理装置との間の通信路を形成する
処理をさらに前記第１の管理装置に実行させる
ことを特徴とする請求項４に記載のプログラム。
【請求項６】
複数の処理装置と、前記複数の処理装置を管理する複数の管理装置を含む情報処理システムにおいて実行される情報処理方法であって、
データを記憶する第１の管理装置と、前記データを前記第１の管理装置から受信する第２の管理装置との間の通信路で障害が発生すると、前記第１の管理装置が、他の１台以上の管理装置の状態に基づいて、前記他の１台以上の管理装置の中から、前記第１の管理装置および前記第２の管理装置と接続されている第３の管理装置を選択し、前記第３の管理装置を介して前記データを前記第２の管理装置に送信し、
前記第２の管理装置が、前記第２の管理装置が記憶する第２のデータを、前記通信路または別の通信路を介して前記第１の管理装置に送信し、
前記第２の管理装置が前記第２のデータの送信に用いる前記通信路または前記別の通信路に障害が発生すると、前記第２の管理装置は、前記他の１台以上の管理装置の状態に基づいて、前記他の１台以上の管理装置の中から、前記第３の管理装置または前記第３の管理装置とは異なる第４の管理装置を選択し、選択した前記第３の管理装置または選択した前記第４の管理装置を介して、前記第２のデータを前記第１の管理装置に送信し、
前記他の１台以上の管理装置の各々の状態は、当該他の管理装置が管理する１台以上の処理装置の状態が当該他の管理装置を介したデータ送信に悪影響を与える程度に基づく指標値により表され、
前記第１の管理装置は、前記指標値に基づいて前記第３の管理装置を選択し、
前記第２の管理装置は、前記指標値に基づいて前記第３の管理装置または前記第４の管理装置を選択する
ことを特徴とする情報処理方法。
【請求項７】
前記第１の管理装置は、前記第３の管理装置に、前記第３の管理装置のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）アドレスとポート番号を含む第１の接続先情報を前記第１の管理装置へ送信させ、前記ＩＰアドレスと前記ポート番号と異なるポート番号を含む第２の接続先情報を、前記第２の管理装置へ送信させ、
前記第２の管理装置は、前記第２の接続先情報にしたがって、前記第２の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第１の管理装置は、前記第１の接続先情報にしたがって、前記第１の管理装置と前記第３の管理装置との間の通信路を形成する
ことを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記第２の管理装置が、前記第３の管理装置を選択すると、前記第３の管理装置のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）アドレスとポート番号を含む第１の接続先情報を、前記第３の管理装置から前記第１の管理装置および前記第２の管理装置へ送信させ、前記第１の接続先情報にしたがって、前記第２の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第２の管理装置が前記第３の管理装置を選択した場合、前記第１の管理装置は、前記第１の接続先情報にしたがって、前記第１の管理装置と前記第３の管理装置との間の通信路を形成し、
前記第２の管理装置が、前記第４の管理装置を選択すると、前記第４の管理装置のＩＰアドレスとポート番号を含む第２の接続先情報を、前記第４の管理装置から前記第１の管理装置および前記第２の管理装置へ送信させ、前記第２の接続先情報にしたがって、前記第２の管理装置と前記第４の管理装置との間の通信路を形成し、
前記第２の管理装置が前記第４の管理装置を選択した場合、前記第１の管理装置は、前記第２の接続先情報にしたがって、前記第１の管理装置と前記第４の管理装置との間の通信路を形成する
ことを特徴とする請求項６に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関する。
【背景技術】
【０００２】
複数の情報処理装置を接続することで、大規模なシステムを実現するビルディング・ブロックシステム（以下、ＢＢシステムと呼ぶことがある。）が知られている。ＢＢシステムの各情報処理装置は、プロセッサ（処理装置）、メモリを含み、それぞれ情報を処理することができる。情報処理装置は、プロセッサとメモリを１つの筐体に収めた１台のコンピュータであってもよく、又、プロセッサとメモリを搭載した１枚のシステムボードであってもよい。また、各情報処理装置は、通信機能を有し、他の情報処理装置と連携して情報を処理できる。
【０００３】
ある種のＢＢシステム内の各情報処理装置は、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理するサービスプロセッサ（ＳＰ：Ｓｅｒｖｉｃｅ  Ｐｒｏｃｅｓｓｏｒ）を備える。ＳＰは、例えば、ＭＰＵ（Ｍｉｃｒｏ−Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フラッシュメモリなどの不揮発性メモリ、及び揮発性メモリを備える。各ＳＰは、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理し、該ハードウェア装置の装置情報を「ＳＰデータ」として記憶する。
【０００４】
以上のようなＢＢシステムは、複数の処理装置と、それら複数の処理装置を管理する複数の管理装置とを含む情報処理システムの例である。すなわち、ＢＢシステム内の各ＳＰは、管理装置の具体例であり、１台以上の処理装置を管理する。
【０００５】
ある種のＢＢシステムにおいて、ＳＰは、マスタＳＰと、マスタＳＰのバックアップであるスタンバイＳＰと、スレイブＳＰと、に分類される。複数の情報処理装置中の何れか１つの情報処理装置内のＳＰが、マスタＳＰとして動作する。マスタＳＰは、スタンバイＳＰ及びスレイブＳＰを統括するＳＰであり、スタンバイＳＰ及びスレイブＳＰが管理する各種ハードウェア装置についてのＳＰデータを、スタンバイＳＰ及びスレイブＳＰから収集する。マスタＳＰは、スタンバイＳＰ及びスレイブＳＰを統括するＳＰであるため、スタンバイＳＰとスレイブＳＰが管理しているハードウェア装置を、スタンバイＳＰとスレイブＳＰを介して、管理することができる。
【０００６】
また、マスタＳＰは、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理する。スタンバイＳＰは、マスタＳＰが収集したＳＰデータのうち、少なくともスレイブＳＰが管理するハードウェア装置のＳＰデータをマスタＳＰから受信し、マスタＳＰで障害が発生した際に、マスタＳＰの代替として、スレイブＳＰを統括するＳＰである。スタンバイＳＰは、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理する。スレイブＳＰは、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理する。
【０００７】
サービスプロセッサ間で時刻を同期させる時刻同期処理部と、プロセッサ間通信を監視するプロセッサ間監視処理部と、同期した時刻をトリガにして動作する診断処理部を備える多重化サービスプロセッサも提案されている（例えば、特許文献１を参照）。診断処理部は、ユニット内の共有格納領域への診断データの書き込み処理、共有格納領域からの読み出し処理、およびプロセッサ間通信の監視処理の一連の自己診断処理を自律的に順次実行する。また診断処理部は、待機系のサービスプロセッサへの切替処理を行う。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１１−６５５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
複数の管理装置を有する情報処理システムにおいて、第１の管理装置から第２の管理装置にデータを送信するのに使われる通信路で障害が発生した場合に、該データの送信ができなくなる。
【００１０】
１つの側面において、本発明は、管理装置間の通信路で障害が発生しても、管理装置間でデータの送受信を継続できるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
一態様による情報処理システムは、複数の処理装置と、複数の処理装置を管理する複数の管理装置を含む。第１の管理装置は、データを記憶する。第２の管理装置は、データを第１の管理装置から通信路を介して受信し、受信したデータを記憶する。第１の管理装置は、該通信路に障害が発生すると、他の１台以上の管理装置の状態に基づいて、他の１台以上の管理装置の中から、第１の管理装置および第２の管理装置と接続されている第３の管理装置を選択する。そして、第１の管理装置は、第３の管理装置を介してデータを第２の管理装置に送信する。第２の管理装置は、第２の管理装置が記憶する第２のデータを、該通信路または別の通信路を介して第１の管理装置に送信する。第２の管理装置が第２のデータの送信に用いる該通信路または該別の通信路に障害が発生すると、第２の管理装置は、該他の１台以上の管理装置の状態に基づいて、該他の１台以上の管理装置の中から、第３の管理装置または第３の管理装置とは異なる第４の管理装置を選択し、選択した第３の管理装置または選択した第４の管理装置を介して、第２のデータを第１の管理装置に送信する。該他の１台以上の管理装置の各々の状態は、当該他の管理装置が管理する１台以上の処理装置の状態が当該他の管理装置を介したデータ送信に悪影響を与える程度に基づく指標値により表される。第１の管理装置は、該指標値に基づいて第３の管理装置を選択する。第２の管理装置は、該指標値に基づいて第３の管理装置または第４の管理装置を選択する。
【発明の効果】
【００１２】
管理装置間の通信路で障害が発生しても、管理装置間でデータの送受信を継続できる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係るＢＢシステムの例を説明する図である。
【図２】通信路で障害が発生した場合のＢＢシステムの処理の例（その１）を説明する図である。
【図３】情報処理装置のハードウェア構成の例（その１）を説明する図である。
【図４】情報処理装置のハードウェア構成の例（その２）を説明する図である。
【図５】通信路で障害が発生した場合のＢＢシステムの処理の例（その２）を説明する図である。
【図６】通信路で障害が発生した場合のＢＢシステムの処理の例（その３）を説明する図である。
【図７】代替経路を形成する処理の例を説明する図である。
【図８】経由情報の例を説明する図である。
【図９】係数情報の例を説明する図である。
【図１０】マスタＳＰの代替経路形成処理の例を説明するフローチャートである。
【図１１】スタンバイＳＰの代替経路形成処理の例を説明するフローチャートである。
【図１２Ａ】スレイブＳＰのリスク指標値の算出処理の例を説明するフローチャートである。
【図１２Ｂ】スレイブＳＰのリスク指標値の算出処理の例を説明するフローチャートである。
【図１３Ａ】スレイブＳＰの選択処理の例を説明するフローチャートである。
【図１３Ｂ】スレイブＳＰの選択処理の例を説明するフローチャートである。
【図１４】代替経路の形成処理の例（その１）を説明するフローチャートである。
【図１５】代替経路の形成処理の例（その２）を説明するフローチャートである。
【図１６】代替経路の形成処理の例（その３）を説明するフローチャートである。
【図１７】通信路の障害が回復した後の処理の例を説明するフローチャートである。
【図１８】リスク指標値の再計算の処理の例を説明するフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照しながら、実施形態を詳細に説明する。
図１は、本実施形態に係るＢＢシステムの例を説明する図である。図１のＢＢシステム１００は、マスタＳＰ１２０を備える情報処理装置１０１と、スタンバイＳＰ１３０を備える情報処理装置１０２と、スレイブＳＰ１４０ａを備える情報処理装置１０３ａと、スレイブＳＰ１４０ｂを備える情報処理装置１０３ｂを含む。各情報処理装置は、ＳＰ以外にさらに、プロセッサ（すなわち処理装置）とメモリを含み、それぞれ情報を処理することができる。情報処理装置は、プロセッサとメモリを１つの筐体に収めた１台のコンピュータであってもよく、又、プロセッサとメモリを搭載した１枚のシステムボードであってもよい。
【００１５】
ＢＢシステム１００は、複数の処理装置と、それら複数の処理装置を管理する複数の管理装置を含む情報処理システムの例である。各管理装置が管理する処理装置の数は、１以上の任意の数であってよい。図１の各ＳＰは、自情報処理装置内の（つまり、当該ＳＰ自体が搭載されている情報処理装置内の）プロセッサ（処理装置）やメモリなどのハードウェア装置を管理する管理装置の例である。各ＳＰは、例えば、ＭＰＵ、フラッシュメモリなどの不揮発性メモリ、及び揮発性メモリを備える。
【００１６】
情報処理装置１０３ｂは、入出力装置１１０（以下、「Ｉｎｐｕｔ／Ｏｕｔｐｕｔ（Ｉ／Ｏ）装置」と略す）と接続されている。Ｉ／Ｏ装置１１０は、例えば、キーボード、マウス、モニタなどの装置である。Ｉ／Ｏ装置１１０は、情報処理装置１０１、１０２、１０３ａの何れにも接続可能であり、情報処理装置１０３ｂ以外の情報処理装置に接続されていてもよい。Ｉ／Ｏ装置１１０が省略されていてもよい。
【００１７】
以下では、情報処理装置１０３ａと情報処理装置１０３ｂをまとめて「情報処理装置１０３」と称する。また、スレイブＳＰ１４０ａとスレイブＳＰ１４０ｂをまとめて「スレイブＳＰ１４０」と称する。
【００１８】
マスタＳＰ１２０、スタンバイＳＰ１３０、スレイブＳＰ１４０などの各ＳＰは、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置の制御や監視を行い、該ハードウェア装置の装置情報を、「ＳＰデータ」として記憶する。各ハードウェア装置の装置情報は、少なくとも当該ハードウェア装置の状態を示す。各ＳＰは、当該ＳＰが搭載されている情報処理装置にＩ／Ｏ装置１１０が接続されている場合は、Ｉ／Ｏ装置１１０も監視する。ＳＰがＩ／Ｏ装置１１０を監視する場合、Ｉ／Ｏ装置１１０の装置情報も、ＳＰデータに含まれる。更に、各ＳＰは、自情報処理装置と接続されている他情報処理装置を検出し、どの情報処理装置が自情報処理装置に接続されているのかを示す情報を、ＳＰデータとして記憶する。
【００１９】
マスタＳＰ１２０は、スタンバイＳＰ１３０及びスレイブＳＰ１４０を統括するＳＰである。言い換えると、マスタＳＰ１２０は、スタンバイＳＰ１３０とスレイブＳＰ１４０が管理している処理装置などのハードウェア装置を、スタンバイＳＰ１３０とスレイブＳＰ１４０を介して、管理することができる。その管理のために、マスタＳＰ１２０は、スタンバイＳＰ１３０とスレイブＳＰ１４０が記憶するＳＰデータを収集する。
【００２０】
スタンバイＳＰ１３０は、マスタＳＰ１２０が故障した場合にマスタＳＰ１２０のバックアップとして動作するＳＰである。そのため、スタンバイＳＰ１３０は、マスタＳＰ１２０が収集したＳＰデータ（少なくとも、そのうちスレイブＳＰ１３０から収集されたＳＰデータ）及びマスタＳＰ１２０のＳＰデータを、マスタＳＰ１２０から受信する。スタンバイＳＰ１３０は、マスタＳＰ１２０が記憶しているＳＰデータと同じデータを記憶することで、マスタＳＰ１２０で障害が発生した場合でもマスタＳＰ１２０の代替としてスレイブＳＰ１４０を統括するＳＰとなれる。
【００２１】
情報処理装置１０１は、情報処理装置１０２と２本の通信ケーブル（すなわち通信路１５１と通信路１５２）で接続されている。通信路１５２は、情報処理装置１０１のマスタＳＰ１２０から情報処理装置１０２のスタンバイＳＰ１３０にＳＰデータを送信するために用いられる。通信路１５１は、情報処理装置１０２のスタンバイＳＰ１３０から情報処理装置１０１のマスタＳＰ１２０にＳＰデータを送信するために用いられる。
【００２２】
情報処理装置１０１は、通信路１５３ａで情報処理装置１０３ａと、通信路１５３ｂで情報処理装置１０３ｂと、接続されている。また、情報処理装置１０２は、通通信路１５４ａで情報処理装置１０３ａと、通信路１５４ｂで情報処理装置１０３ｂと、接続されている。
【００２３】
なお、図１の例では、情報処理装置１０１と情報処理装置１０２が２本の通信ケーブルで接続されているものの、実施形態によっては、双方向に通信可能な通信ケーブル１本で情報処理装置１０１と情報処理装置１０２が接続されていてもよい。
【００２４】
ここで、通信路１５２で障害が発生した場合、マスタＳＰ１２０は、通信路１５２を用いたスタンバイＳＰ１３０へのＳＰデータの送信ができなくなる。すると、マスタＳＰ１２０が記憶するＳＰデータとスタンバイＳＰ１３０が記憶するＳＰデータが異なる、という状況が生じ得る。マスタＳＰ１２０とスタンバイＳＰ１３０とが異なるＳＰデータを記憶している場合、スタンバイＳＰ１３０は、マスタＳＰ１２０で障害が発生すると、マスタＳＰ１２０のバックアップとして動作できなくなる。
【００２５】
本実施形態のマスタＳＰ１２０は、通信路１５２で障害が発生した場合、情報処理装置１０３ａ又は情報処理装置１０３ｂを介した別の通信路を形成し、ＳＰデータをスタンバイＳＰ１３０に送信する。別の通信路を形成するために、マスタＳＰ１２０は、スレイブＳＰ１４０が管理する処理装置などのハードウェア装置の状態を示す情報を指標化した値を取得する。この値は、スレイブＳＰ１４０により算出される。スレイブＳＰ１４０は、スレイブＳＰ１４０が管理する処理装置などのハードウェア装置の状態を示す情報を指標化する際に、図９とともに後述する係数情報を用いてもよい。図１のＢＢシステム１００では、マスタＳＰ１２０は、スレイブＳＰ１４０ａ〜１４０ｂからそれぞれ取得した値に基づいて、スレイブＳＰ１４０ａを選択する。マスタＳＰ１２０は、通信路１５３ａと通信路１５４ａを用い、スレイブＳＰ１４０ａを介してスタンバイＳＰ１３０にＳＰデータを送信する。
【００２６】
上記の実施形態のように、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２で障害が発生しても、スレイブＳＰ１４０を介して、マスタＳＰ１２０はＳＰデータをスタンバイＳＰ１３０に送信できる。つまり、マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶する状態を維持することができる。マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶することで、スタンバイＳＰ１３０は、マスタＳＰ１２０のバックアップとして動作可能である。
【００２７】
以上のように、ＢＢシステム１００は、複数の処理装置を管理する複数の管理装置を含む情報処理システムの例である。マスタＳＰ１２０は、複数の管理装置のうち、データ（例えば、マスタＳＰ１２０のＳＰデータと、スレイブＳＰ１４０から収集されたＳＰデータ）を記憶する第１の管理装置の例である。スタンバイＳＰ１３０は、複数の管理装置のうち、上記データを第１の管理装置から通信路（例えば通信路１５２）を介して受信し、受信したデータを記憶する第２の管理装置の例である。
【００２８】
通信路に障害が発生すると、第１の管理装置は、他の１台以上の管理装置の中から、第１の管理装置および第２の管理装置と接続されている第３の管理装置を選択する。例えば、スレイブＳＰ１４０ａが第３の管理装置の例である。第３の管理装置の選択は、他の１台以上の管理装置の状態に基づいて行われる。具体的には、第３の管理装置の選択は、例えば、上記のとおりスレイブＳＰ１４０ａ〜１４０ｂに搭載される処理装置などのハードウェア装置の状態を示す情報に基づいて行われてもよい。
【００２９】
第１の管理装置は、第３の管理装置を選択すると、第３の管理装置を介してデータを第２の管理装置に送信する。その結果、上記通信路に障害が発生しても、第１の管理装置から第２の管理装置へのデータ送信を継続することが可能となる。
【００３０】
上記のようにマスタＳＰ１２０とスタンバイＳＰ１３０の間のデータ同期のためにデータ送信が行われる場合、データ送信の継続によりデータ同期が維持される。データ同期が維持されていれば、マスタＳＰ１２０で障害が発生した際に、マスタＳＰ１２０からスタンバイＳＰ１３０へのフェイルオーバが適切に行われる。
【００３１】
なお、上記の例とは逆に、スタンバイＳＰ１３０が第１の管理装置に対応し、かつ、マスタＳＰ１２０が第２の管理装置に対応するような実施形態も可能である。すなわち、スタンバイＳＰ１３０が記憶するデータのマスタＳＰ１２０への送信を継続するために、スタンバイＳＰ１３０が、通信路の障害に応じて第３の管理装置を選択し、第３の管理装置を介してデータをマスタＳＰ１２０に送信してもよい。
【００３２】
図２は、通信経路で障害が発生した場合のＢＢシステムの処理の例（その１）を説明する図である。図２のＢＢシステム１００において、図１と同じ構成要素には、図１と同じ符号を付す。図２では、簡略化のために、Ｉ／Ｏ装置１１０を記載していない。Ｉ／Ｏ装置１１０は、情報処理装置１０１〜１０３の何れにも接続可能である。
【００３３】
図２のＢＢシステム１００は、それぞれスレイブＳＰ１４０ａ〜１４０ｎを備える情報処理装置１０３ａ〜１０３ｎを備える。図２におけるスレイブＳＰ１４０ａ〜１４０ｎや情報処理装置１０３ａ〜１０３ｎの例示は、情報処理装置１０３及びスレイブＳＰ１４０の数を制限する趣旨のものではない。以下では、情報処理装置１０３ａ〜１０３ｎをまとめて「情報処理装置１０３」と称することがある。また、以下では、スレイブＳＰ１４０ａ〜１４０ｎをまとめて「スレイブＳＰ１４０」と称することがある。
【００３４】
情報処理装置１０１は、情報処理装置１０３ａ〜１０３ｎと、それぞれの通信路１５３ａ〜通信路１５３ｎを介して接続されている。情報処理装置１０２は、情報処理装置１０３ａ〜１０３ｎと、それぞれ通信路１５４ａ〜通信路１５４ｎを介して接続されている。
【００３５】
マスタＳＰ１２０は、記憶部１２１、同期部１２２、データ制御部１２３、検出部１２４を含む。スタンバイＳＰ１３０は、記憶部１３１、同期部１３２、データ制御部１３３、検出部１３４を含む。スレイブＳＰ１４０ａ〜１４０ｎは、それぞれ、記憶部１４１ａ〜１４１ｎ、データ経由部１４２ａ〜１４２ｎ、管理部１４３ａ〜１４３ｎ、検出部１４４ａ〜１４４ｎ、同期部１４５ａ〜１４５ｎを含む。以下では、記憶部１４１ａ〜１４１ｎをまとめて、「記憶部１４１」と称する。データ経由部１４２ａ〜１４２ｎをまとめて、「データ経由部１４２」と称する。管理部１４３ａ〜１４３ｎをまとめて、「管理部１４３」と称する。検出部１４４ａ〜１４４ｎをまとめて、「検出部１４４」と称する。同期部１４５ａ〜１４５ｎをまとめて、「同期部１４５」と称する。
【００３６】
スレイブＳＰ１４０の管理部１４３は、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理する。具体的には、管理部１４３は、自情報処理装置１０３に搭載されているハードウェア装置を認識し、ハードウェア装置の故障を監視する。管理部１４３は、認識したハードウェア装置の情報や、パーティション（詳しくは後述する）の起動、停止などを示す情報などを、スレイブＳＰデータ１６３として記憶部１４１に記憶する。係数情報１６４（詳しくは、図９とともに説明する）は、予め記憶部１４１に設定されている。図２には、スレイブＳＰデータ１６３と係数情報１６４の例として、スレイブＳＰ１４０内の記憶部１４１ａに記憶されるスレイブＳＰデータ１６３ａと係数情報１６４ａが図示されている。
【００３７】
スレイブＳＰ１４０の検出部１４４は、自情報処理装置１０３と接続された他情報処理装置１０１〜１０２やＩ／Ｏ装置１１０などの装置を検出し、検出した装置に関する情報も、スレイブＳＰデータ１６３として記憶部１４１に記憶する。検出部１４４は、更に、自情報処理装置１０３と情報処理装置１０１を接続する通信路１５３に障害が発生すると、障害を検出する。また、検出部１４４は、自情報処理装置１０３と情報処理装置１０２を接続する通信路１５４に障害が発生すると、障害を検出する。
【００３８】
同期部１４５は、定期的に、又は、スレイブＳＰ１４０のスレイブＳＰデータ１６３に更新があると、スレイブＳＰデータ１６３を、マスタＳＰ１２０の同期部１２２に送信する。同期部１２２は、受信したスレイブＳＰ１４０のスレイブＳＰデータ１６３を記憶部１２１に記憶する。データ経由部１４２については、後述する。
【００３９】
スタンバイＳＰ１３０の検出部１３４は、自情報処理装置１０２と接続された他情報処理装置１０１や１０３、Ｉ／Ｏ装置１１０などの装置を検出し、検出した装置に関する情報をスタンバイＳＰデータ１６２として記憶部１３１に記憶する。検出部１３４は、検出した情報処理装置１０３の情報を、経由情報１６６として記憶部１３１に記憶する。経由情報１６６は、通信路１５１に障害が発生し、スタンバイＳＰ１３０が情報処理装置１０３ａ〜１０３ｎの何れかを介した別の通信路を形成する際の、選択候補となる情報処理装置の一覧情報を含む。
【００４０】
検出部１３４は、更に、通信路１５１、通信路１５２に障害が発生すると、障害を検出する。また、検出部１３４は、自情報処理装置１０２と情報処理装置１０３を接続する通信路１５４に障害が発生すると、障害を検出する。
【００４１】
同期部１３２は、定期的に、又は、スタンバイＳＰデータ１６２に更新があると、スタンバイＳＰデータ１６２をマスタＳＰ１２０の同期部１２２に送信する。マスタＳＰ１２０の同期部１２２は、受信したスタンバイＳＰデータ１６２を記憶部１２１に記憶する。データ制御部１３３については後述する。
【００４２】
マスタＳＰ１２０の検出部１２４は、自情報処理装置１０１と接続された他情報処理装置１０２〜１０３、Ｉ／Ｏ装置１１０などの装置を検出し、検出した装置に関する情報をマスタＳＰデータ１６１として記憶部１２１に記憶する。検出部１２４は、検出した情報処理装置１０３の情報を、経由情報１６５として記憶部１２１に記憶する。経由情報１６５は、通信路１５２に障害が発生し、マスタＳＰ１２０が情報処理装置１０３ａ〜１０３ｎの何れかを介した別の通信路を形成する際の、選択候補となる情報処理装置１０３の一覧情報を含む。
【００４３】
検出部１２４は、更に、通信路１５１、通信路１５２に障害が発生すると、障害を検出する。また、検出部１２４は、自情報処理装置１０１と情報処理装置１０３を接続する通信路１５３に障害が発生すると、障害を検出する。
【００４４】
同期部１２２は、定期的に、又は、マスタＳＰデータ１６１に更新があると、マスタＳＰデータ１６１をスタンバイＳＰ１３０の同期部１３２に送信する。スタンバイＳＰ１３０の同期部１３２は、受信したマスタＳＰデータ１６１を、記憶部１３１に記憶する。データ制御部１２３については後述する。
【００４５】
同期部１２２は、マスタＳＰ１２０が故障した場合に、スタンバイＳＰ１３０がマスタＳＰ１２０の代替として動作できるようにするために、スタンバイＳＰ１３０に、マスタＳＰ１２０の記憶部１２１と同じＳＰデータを記憶させる。具体的には、同期部１２２は、マスタＳＰデータ１６１と、スレイブＳＰ１４０ａ〜１４０ｎから受信したスレイブＳＰデータ１６３ａ〜１６３ｎとを、スタンバイＳＰ１３０の同期部１３２に送信する。スタンバイＳＰ１３０の同期部１３２は、同期部１２２から受信したマスタＳＰデータ１６１と、スレイブＳＰデータ１６３ａ〜１６３ｎとを、記憶部１３１に記憶する。スタンバイＳＰ１３０は、マスタＳＰ１２０が使用する最新のスレイブＳＰデータ１６３ａ〜１６３ｎを記憶部１３１に記憶することで、マスタＳＰ１２０が故障してもマスタＳＰ１２０の代わりにスレイブＳＰ１４０ａ〜１４０ｎを管理できるようになる。なお、マスタＳＰ１２０が故障している間は、スレイブＳＰ１４０の同期部１４５は、スタンバイＳＰ１３０の同期部１３２に、スレイブＳＰデータ１６３を送信する。
【００４６】
ここで、マスタＳＰ１２０の同期部１２２からスタンバイＳＰ１３０の同期部１３２にＳＰデータを送信するための通信路１５２で障害が発生した場合、通信路１５２を用いたマスタＳＰ１２０からスタンバイＳＰ１３０へのＳＰデータの送信ができなくなる。すると、マスタＳＰ１２０が記憶するＳＰデータとスタンバイＳＰ１３０が記憶するＳＰデータが異なる、という状況が生じ得る。マスタＳＰ１２０とスタンバイＳＰ１３０とが異なるＳＰデータを記憶している場合、スタンバイＳＰ１３０は、マスタＳＰ１２０で障害が発生すると、マスタＳＰ１２０のバックアップとして動作できなくなる。
【００４７】
そのため、本実施形態のマスタＳＰ１２０は、通信路１５２で障害が発生した場合、情報処理装置１０３ａ〜１０３ｎの何れかを介した（より具体的には、スレイブ１４０ａ〜１４０ｎの何れかを介した）別の通信路を形成する。この別の通信路を、以下において、代替経路と称する。代替経路を形成する処理では、まず、マスタＳＰ１２０の検出部１２４が、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２で障害を検出すると、障害を検出したことを、データ制御部１２３に通知する。データ制御部１２３は、記憶部１２１に記憶されている経由情報１６５に含まれるマスタＳＰ１２０と通信可能なスレイブＳＰ１４０のデータ経由部１４２に計算命令を送信する。計算命令は、スレイブＳＰ１４０が管理する処理装置などのハードウェア装置の状態を示す情報であるスレイブＳＰデータ１６３を、係数情報１６４を用いて指標化するように求める命令である。計算命令を受信したデータ経由部１４２は、スレイブＳＰデータ１６３と、記憶部１４１の係数情報１６４に含まれる情報とから、データ転送に悪影響を与える要因を指標化したリスク指標値を計算する。データ転送に悪影響を与える要因の例は、データ経由部１４２の搭載された情報処理装置１０３内の各ハードウェア装置の故障や、情報処理装置１０３内の各処理装置の負荷などである。データ経由部１４２は、計算したリスク指標値を、マスタＳＰ１２０のデータ制御部１２３に送信する。
【００４８】
マスタＳＰ１２０のデータ制御部１２３は、計算命令を送信した全スレイブＳＰ１４０から、リスク指標値を受け取ると、該リスク指標値に基づいて記憶部１２１の経由情報１６５を更新する。マスタＳＰ１２０のデータ制御部１２３は、リスク指標値に基づいて（詳しくは、図９とともに後述する）、１つのスレイブＳＰ１４０を選択する。マスタＳＰ１２０のデータ制御部１２３は、選択したスレイブＳＰ１４０を介した代替経路を形成する。
【００４９】
リスク指標値は、スレイブＳＰ１４０が管理する１台以上の処理装置などのハードウェア装置の状態が当該スレイブＳＰ１４０を介したデータ送信に悪影響を与える程度に基づく指標値の例である。本実施形態では、リスク指標値によりスレイブＳＰ１４０の状態が表される。リスク指標値により表される状態とは、換言すれば、代替経路が経由する中継点としてスレイブ１４０がどの程度適しているか、という度合いである。本実施形態では、リスク指標値により表される状態に基づいて、１つのスレイブＳＰ１４０が選択される。
【００５０】
代替経路が形成されると、マスタＳＰ１２０の同期部１２２は、スタンバイＳＰ１３０に送信するＳＰデータ（マスタＳＰデータ１６１とスレイブＳＰデータ１６３）を、データ制御部１２３に出力する。データ制御部１２３は、同期部１２２から受け取ったＳＰデータを、選択したスレイブＳＰ１４０のデータ経由部１４２に送信する。データ経由部１４２は、受信したＳＰデータを、スタンバイＳＰ１３０のデータ制御部１３３に送信する。データ制御部１３３は、受信したＳＰデータを同期部１３２に出力する。同期部１３２は、データ制御部１３３から受け取ったＳＰデータを、記憶部１３１に記憶する。
【００５１】
このように、マスタＳＰ１２０が代替経路を形成することで、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２で障害が発生しても、マスタＳＰ１２０は、ＳＰデータをスタンバイＳＰ１３０に送信し続けることができる。マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶することで、スタンバイＳＰ１３０は、マスタＳＰ１２０のバックアップとして動作可能な状態を維持することができる。
【００５２】
図３は、情報処理装置のハードウェア構成の例（その１）を説明する図である。図１〜図２に示す情報処理装置１０１〜１０３は、同じハードウェア構成である。そのため、情報処理装置１０１〜１０３を纏めて「情報処理装置２００」と称す。情報処理装置２００は、ＣＰＵ  Ｍｅｍｏｒｙ  Ｕｎｉｔ（ＣＭＵ）２１０と、サービスプロセッサ（ＳＰ）２２０を備える。ＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略である。
【００５３】
ＣＭＵ２１０は、プロセッサ２１１とメモリ２１２を備える。プロセッサ２１１は、ＳＰ２２０により管理される処理装置の例である。プロセッサ２１１は、任意の処理回路であってよく、例えばCentral Processing Unit（ＣＰＵ）であってもよい。メモリ２１２は、プロセッサ２１１の動作により得られたデータや、プロセッサ２１１の処理に用いられるデータを、適宜記憶する。
【００５４】
なお、図３には情報処理装置２００が１つのＣＭＵ２１０を有する例が示されているが、情報処理装置２００が２つ以上のＣＭＵ２１０を有していてもよい。また、１つのＣＭＵ２１０が２つ以上のプロセッサ２１１を有していてもよい。
【００５５】
ＳＰ２２０は、プロセッサ２２１とメモリ２２２を備える。プロセッサ２２１は、任意の処理回路であってよく、例えばCentral Processing Unit（ＣＰＵ）であってもよい。マスタＳＰ１２０において、プロセッサ２２１は、プログラムを実行することにより、検出部１２４、同期部１２２、データ制御部１２３として動作する。スタンバイＳＰ１３０において、プロセッサ２２１は、プログラムを実行することにより、検出部１３４、同期部１３２、データ制御部１３３として動作する。スレイブＳＰ１４０において、プロセッサ２２１は、プログラムを実行することにより、同期部１４５、検出部１４４、データ経由部１４２、管理部１４３として動作する。
【００５６】
マスタＳＰ１２０において、メモリ２２２は、記憶部１２１として使われ、スタンバイＳＰ１３０のＳＰデータのコピー、スレイブＳＰ１４０のＳＰデータのコピー、マスタＳＰ１２０のＳＰデータ及び経由情報１６５を保持する。スタンバイＳＰ１３０において、メモリ２２２は、記憶部１３１として使われ、スタンバイＳＰ１３０のＳＰデータ、スレイブＳＰ１４０のＳＰデータのコピー、マスタＳＰ１２０のＳＰデータのコピー及び経由情報１６５を保持する。スレイブＳＰ１４０において、メモリ２２２は、記憶部１４１として使われ、スレイブＳＰ１４０のＳＰデータと係数情報１６４を保持する。さらに、メモリ２２２は、プロセッサ２２１の動作により得られたデータや、プロセッサ２２１の処理に用いられるデータも、適宜、記憶する。
【００５７】
図４は、情報処理装置のハードウェア構成の例（その２）を説明する図である。情報処理装置２００は、プロセッサ１１、メモリ１２、バス１５、外部記憶装置１６、ネットワーク接続装置１９、ＳＰ２０を備える。さらにオプションとして、情報処理装置２００は、入力装置１３、出力装置１４、媒体駆動装置１７を備えてもよい。あるいは、入力装置１３、出力装置１４、媒体駆動装置１７のうち少なくとも１つが情報処理装置２００の外部にあって情報処理装置２００に接続されていてもよい。情報処理装置２００は、例えば、コンピュータなどで実現されることがある。
【００５８】
プロセッサ１１は、図３のＣＭＵ２１０のプロセッサ２１１である。メモリ１２は、ＣＭＵ２１０のメモリ２１２である。プロセッサ１１は、例えば、外部記憶装置１６に記憶されたプログラムをメモリ１２にロードして実行することができる。ネットワーク接続装置１９は、他の装置との通信に使用される。ネットワーク接続装置１９は、例えば、ネットワークアダプタなどの通信回路である。ＳＰ２０は、図３のＳＰ２２０である。
【００５９】
入力装置１３は、例えば、ボタン、キーボード、マウス等であってもよく、出力装置１４は、ディスプレイなどであってもよい。バス１５は、プロセッサ１１、メモリ１２、入力装置１３、出力装置１４、外部記憶装置１６、媒体駆動装置１７、ネットワーク接続装置１９、ＳＰ２０の間を相互にデータの受け渡しが行えるように接続する。ＳＰ２０は、ネットワーク接続装置１９（およびケーブル等の物理的通信路）を介して、他の情報処理装置２００に搭載された他のＳＰ２０と通信することが可能である。外部記憶装置１６には、プログラムやデータなどが格納される。外部記憶装置１６は、例えば、Hard Disk Drive（ＨＤＤ）でもよく、Solid-State Drive（ＳＳＤ）でもよい。外部記憶装置１６に格納されている情報は、適宜、プロセッサ１１などに提供される。媒体駆動装置１７は、メモリ１２や外部記憶装置１６に記憶されているデータを可搬型記録媒体１８に送信することができ、また、可搬型記録媒体１８からプログラムやデータ等を読み出すことができる。ここで、可搬型記録媒体１８は、フロッピイディスク、Magneto-Optical（ＭＯ）ディスク、Compact Disc Recordable（ＣＤ−Ｒ）やDigital Versatile Disk Recordable（ＤＶＤ−Ｒ）などの、持ち運びが可能な任意の記録媒体とすることができる。可搬型記録媒体１８はフラッシュメモリなどの半導体メモリカードであってもよく、媒体駆動装置１７はメモリカード用のリーダ及びライタであってもよい。
【００６０】
図５は、通信路で障害が発生した場合のＢＢシステムの処理の例（その２）を説明する図である。図５のＢＢシステム１００において、図２と同じ構成要素には、図２と同じ符号を付す。
【００６１】
スタンバイＳＰ１３０の同期部１３２からマスタＳＰ１２０の同期部１２２にＳＰデータを送信するための通信路１５１で障害が発生した場合、通信路１５１を用いたスタンバイＳＰ１３０からマスタＳＰ１２０へのＳＰデータの送信ができなくなる。すると、マスタＳＰ１２０が記憶するＳＰデータとスタンバイＳＰ１３０が記憶するＳＰデータが異なる、という状況が生じ得る。マスタＳＰ１２０とスタンバイＳＰ１３０とが異なるＳＰデータを記憶している場合、スタンバイＳＰ１３０は、マスタＳＰ１２０で障害が発生すると、マスタＳＰ１２０のバックアップとして動作できなくなる。
【００６２】
そのため、本実施形態のスタンバイＳＰ１３０は、通信路１５１で障害が発生した場合、障害が発生した通信路１５１の代替経路を形成する処理を開始する。代替経路を形成する処理では、まず、スタンバイＳＰ１３０の検出部１３４が、スタンバイＳＰ１３０からマスタＳＰ１２０にＳＰデータを送信するための通信路１５１で障害を検出すると、障害を検出したことを、データ制御部１３３に通知する。データ制御部１３３は、記憶部１３１に記憶されている経由情報１６６に基づいて、スタンバイＳＰ１３０と通信可能なスレイブＳＰ１４０を特定する。データ制御部１３３は、特定したスレイブＳＰ１４０のデータ経由部１４２に、スレイブＳＰデータ１６３を、係数情報１６４を用いて指標化するように求める計算命令を送信する。計算命令を受信したデータ経由部１４２は、スレイブＳＰデータ１６３と、記憶部１４１の係数情報１６４とから、データ転送に悪影響を与える要因を指標化したリスク指標値を計算する。データ経由部１４２は、計算したリスク指標値を、スタンバイＳＰ１３０のデータ制御部１３３に送信する。
【００６３】
スタンバイＳＰ１３０のデータ制御部１３３は、計算命令を送信した全スレイブＳＰ１４０から、リスク指標値を受け取ると、該リスク指標値に基づいて記憶部１３１の経由情報１６６を更新する。スタンバイＳＰ１３０のデータ制御部１３３は、リスク指標値に基づいて（詳しくは、図９とともに後述する）、１つのスレイブＳＰ１４０を選択する。スタンバイＳＰ１３０のデータ制御部１３３は、選択したスレイブＳＰ１４０を介した代替経路を形成する。
【００６４】
代替経路が形成されると、スタンバイＳＰ１３０の同期部１３２は、マスタＳＰ１２０に送信するＳＰデータ（スタンバイＳＰデータ１６２）を、スタンバイＳＰ１３０のデータ制御部１３３に出力する。スタンバイＳＰ１３０のデータ制御部１３３は、同期部１３２から受け取ったＳＰデータを、選択したスレイブＳＰ１４０のデータ経由部１４２に送信する。データ経由部１４２は、受信したＳＰデータを、マスタＳＰ１２０のデータ制御部１２３に送信する。マスタＳＰ１２０のデータ制御部１２３は、受信したＳＰデータを同期部１２２に出力する。同期部１２２は、データ制御部１２３から受け取ったＳＰデータを、記憶部１２１に記憶する。
【００６５】
このように、スタンバイＳＰ１３０が代替経路を形成することで、スタンバイＳＰ１３０からマスタＳＰ１２０にＳＰデータを送信するための通信路１５１で障害が発生しても、スタンバイＳＰ１３０は、ＳＰデータをマスタＳＰ１２０に送信し続けることができる。マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶することで、スタンバイＳＰ１３０は、マスタＳＰ１２０のバックアップとして動作可能な状態を維持することができる。
【００６６】
なお、図２と図５のＢＢシステム１００では、ＳＰデータの送信元となるマスタＳＰ１２０又はスタンバイＳＰ１３０が、ＳＰデータの送信に使用する通信路の障害を検出し、代替経路を形成する。送信元となるＳＰが代替経路を形成することで、マスタＳＰ１２０とスタンバイＳＰ１３０は、同じＳＰデータを記憶することができる。
【００６７】
図６は、通信路で障害が発生した場合のＢＢシステムの処理の例（その３）を説明する図である。図６のＢＢシステム１００において、図２と同じ構成要素には、図２と同じ符号を付す。図６のＢＢシステム１００は、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２と、スタンバイＳＰ１３０からマスタＳＰ１２０にＳＰデータを送信するための通信路１５１の双方で障害が発生した場合の例である。
【００６８】
マスタＳＰ１２０の検出部１２４は、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２で障害を検出すると、障害を検出したことを、データ制御部１２３に通知する。同様に、スタンバイＳＰ１３０の検出部１３４は、スタンバイＳＰ１３０からマスタＳＰ１２０にＳＰデータを送信するための通信路１５１で障害を検出すると、障害を検出したことを、データ制御部１３３に通知する。
【００６９】
データ制御部１２３は、記憶部１２１に記憶されている経由情報１６５に基づいて、マスタＳＰ１２０と通信可能なスレイブＳＰ１４０を特定する。データ制御部１２３は、特定したスレイブＳＰ１４０のデータ経由部１４２に、スレイブＳＰデータ１６３を、係数情報１６４を用いて指標化するように求める計算命令を送信する。
【００７０】
データ制御部１３３は、記憶部１３１に記憶されている経由情報１６６に基づいて、スタンバイＳＰ１３０と通信可能なスレイブＳＰ１４０を特定する。データ制御部１３３は、特定したスレイブＳＰ１４０のデータ経由部１４２に、スレイブＳＰデータ１６３を、係数情報１６４を用いて指標化するように求める計算命令を送信する。なお、データ制御部１２３及びデータ制御部１３３の処理は、異なる情報処理装置内で実行されるため、実行タイミングは異なってよい。
【００７１】
データ経由部１４２は、マスタＳＰ１２０のデータ制御部１２３からの計算命令を受けると、リスク指標値を計算し、計算したリスク指標値を、マスタＳＰ１２０のデータ制御部１２３に送信する。また、データ経由部１４２は、スタンバイＳＰ１３０のデータ制御部１３３からの計算命令を受けると、リスク指標値を計算し、計算したリスク指標値を、スタンバイＳＰ１３０のデータ制御部１３３に送信する。
【００７２】
なお、スレイブＳＰ１４０のデータ経由部１４２は、リスク指標値を送信する際に、併せて、スレイブＳＰ１４０自身が既に代替経路として選択済みであるかを示す予約情報を送信する。
【００７３】
マスタＳＰ１２０のデータ制御部１２３は、計算命令を送信した全スレイブＳＰ１４０から、リスク指標値及び予約情報を受け取ると、記憶部１２１の経由情報１６５に、リスク指標値及び予約情報を追加する。マスタＳＰ１２０のデータ制御部１２３は、リスク指標値に基づいて（詳しくは、図９とともに後述する）、１つのスレイブＳＰ１４０ｂを選択する。なお、既に代替経路として選択されていることが予約情報により示されているスレイブＳＰ１４０は、選択対象から外される。マスタＳＰ１２０のデータ制御部１２３は、選択したスレイブＳＰ１４０ｂを介した代替経路を形成する。選択されたスレイブＳＰ１４０ｂは、代替経路を形成する処理の際に、スレイブＳＰ１４０ｂ自身が代替経路として選択されたことを示す情報を、係数情報１６４として記憶部１４１ｂに記憶する。マスタＳＰ１２０のデータ制御部１２３は、代替経路の形成が完了すると、代替経路の形成が完了したことを示すように、記憶部１２１の経由情報１６５を更新する。
【００７４】
スタンバイＳＰ１３０のデータ制御部１３３は、計算命令を送信した全スレイブＳＰ１４０から、リスク指標値及び予約情報を受け取ると、記憶部１３１の経由情報１６６に、リスク指標値の情報及び予約情報を追加する。スタンバイＳＰ１３０のデータ制御部１３３は、リスク指標値に基づいて（詳しくは、図９とともに後述する）、１つのスレイブＳＰ１４０ａを選択する。なお、既に代替経路として選択されていることが予約情報により示されているスレイブＳＰ１４０ｂは、選択対象から外される。スタンバイＳＰ１３０のデータ制御部１３３は、選択したスレイブＳＰ１４０ａを介した代替経路を形成する。選択されたスレイブＳＰ１４０ａは、代替経路を形成する処理の際に、スレイブＳＰ１４０ａ自身が代替経路として選択されたことを示す情報を、スレイブＳＰデータ１６３として記憶部１４１ａに記憶する。スタンバイＳＰ１３０のデータ制御部１３３は、代替経路の形成が完了すると、代替経路の形成が完了したことを示すように、記憶部１３１の経由情報１６５を更新する。
【００７５】
なお、ＢＢシステム１００に、スレイブＳＰ１４０が１つしかない場合は、マスタＳＰ１２０とスレイブＳＰ１４０は、予約情報によらず、その１つのスレイブＳＰ１４０を代替経路として選択する。
【００７６】
代替経路が形成されると、マスタＳＰ１２０の同期部１２２は、スタンバイＳＰ１３０に送信するＳＰデータ（マスタＳＰデータ１６１とスレイブＳＰデータ１６３ａ〜１６３ｎ）を、データ制御部１２３に出力する。データ制御部１２３は、同期部１２２から受け取ったＳＰデータを、選択したスレイブＳＰ１４０ｂのデータ経由部１４２ｂに送信する。データ経由部１４２ｂは、受信したＳＰデータを、スタンバイＳＰ１３０のデータ制御部１３３に送信する。データ制御部１３３は、受信したＳＰデータを同期部１３２に出力する。同期部１３２は、データ制御部１３３から受け取ったＳＰデータを、記憶部１３１に記憶する。
【００７７】
同様に、スタンバイＳＰ１３０の同期部１３２は、マスタＳＰ１２０に送信するＳＰデータ（スタンバイＳＰデータ１６２）を、スタンバイＳＰ１３０のデータ制御部１３３に出力する。スタンバイＳＰ１３０のデータ制御部１３３は、同期部１３２から受け取ったＳＰデータを、選択したスレイブＳＰ１４０aのデータ経由部１４２aに送信する。データ経由部１４２ａは、受信したＳＰデータを、マスタＳＰ１２０のデータ制御部１２３に送信する。マスタＳＰ１２０のデータ制御部１２３は、受信したＳＰデータを同期部１２２に出力する。同期部１２２は、データ制御部１２３から受け取ったＳＰデータを、記憶部１２１に記憶する。
【００７８】
このように、ＳＰデータの送信元となるマスタＳＰ１２０又はスタンバイＳＰ１３０が、ＳＰデータの送信に使用する通信路の障害を検出し、代替経路を形成する。送信元となるＳＰが代替経路を形成することで、マスタＳＰ１２０とスタンバイＳＰ１３０は、同じＳＰデータを記憶することができる。マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶することで、スタンバイＳＰ１３０は、マスタＳＰ１２０のバックアップとして動作可能な状態を維持することができる。また、既に代替経路として選択されていることが予約情報により示されているスレイブＳＰ１４０が、選択対象から外されることで、同じスレイブＳＰ１４０が代替経路として二重に選ばれることを防ぐことができる。１つのスレイブＳＰ１４０が２つの代替経路の中継点として二重に選択されることを防ぐことにより、データ送信を中継するためにスレイブＳＰ１４０にかかる負荷が過大になることを防ぐことができる。
【００７９】
図７は、代替経路を形成する処理の例を説明する図である。図７のＢＢシステム１００において、図２と同じ構成要素には、図２と同じ符号を付す。
【００８０】
図７のＢＢシステム１００では、通信路１５１で障害が発生している。そのため、スタンバイＳＰ１３０は、１つのスレイブＳＰ１４０を選択し、選択したスレイブＳＰ１４０を介した代替経路の形成を開始する。以下に、代替経路の形成処理を、順番に示す。
【００８１】
ステップＳ１で、スタンバイＳＰ１３０のデータ制御部１３３は、自スタンバイＳＰ１３０内の同期部１３２に、ＳＰデータを送信する処理を停止するよう求める停止命令を出力する。停止命令により、スタンバイＳＰ１３０の同期部１３２から、マスタＳＰ１２０の同期部１２２へのデータ送信が停止される。
【００８２】
ステップＳ２で、スタンバイＳＰ１３０のデータ制御部１３３は、同期部１３２に設定されている接続先情報を、バックアップ１６６として記憶部１３１に記憶する。同期部１３２に設定されている接続先情報は、通信路１５１に対応する情報処理装置１０１側のＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ａｄｄｒｅｓｓ（ＩＰ）アドレスやＰｏｒｔ番号などを含む。
【００８３】
ステップＳ３で、スタンバイＳＰ１３０のデータ制御部１３３は、同期部１３２の接続先情報に、データ制御部１３３に割り当てられているＩＰアドレスとＰｏｒｔ番号を設定する。
【００８４】
ステップＳ４で、スタンバイＳＰ１３０のデータ制御部１３３は、同期部１３２を再起動する。
【００８５】
再起動により、ステップＳ５で、スタンバイＳＰ１３０の同期部１３２は、ステップＳ３で接続先情報として設定されたＩＰアドレスとＰｏｒｔ番号を認識し、データ制御部１３３との間の通信路を形成する。同期部１３２とデータ制御部１３３との間の通信路は、具体的には、ソケットを利用したプロセス間通信のための論理的な通信路である。なお、同期部１３２の再起動に伴い、通信路１５２も一度切断されるが、リトライ処理などで自動的に通信路１５２は再形成される。つまり、通信路１５２上のコネクションは一度切断されるが、通信路１５２を実現するための物理的なケーブルには障害がないため、通信路１５２上のコネクションはリトライ処理などにより再確立される。通信路１５２上のコネクションは、具体的には、例えばTransmission Control Protocol（ＴＣＰ）コネクションである。
【００８６】
ステップＳ６で、スタンバイＳＰ１３０のデータ制御部１３３は、記憶部１３１に記憶されている経由情報１６５を参照し、選択（予約）されたスレイブＳＰ１４０を特定する。
【００８７】
ステップＳ７で、スタンバイＳＰ１３０のデータ制御部１３３は、選択されたスレイブＳＰ１４０のデータ経由部１４２に、代替経路の形成依頼を送信する。
【００８８】
ステップＳ８で、スレイブＳＰ１４０のデータ経由部１４２は、マスタＳＰ１２０のデータ制御部１２３に、データ経由部１４２に設定されているＩＰアドレスやＰｏｒｔ番号を含む接続先情報、及び代替経路の形成依頼を、送信する。ここで、データ経由部１４２のＩＰアドレスを、１９２．１６８．２００とし、ポート番号を、１００１とする。そのため、ステップＳ８では、スレイブＳＰ１４０のデータ経由部１４２は、ＩＰアドレスが１９２．１６８．２００で、ポート番号が１００１の接続先情報を、マスタＳＰ１２０のデータ制御部１２３に送信する。
【００８９】
ステップＳ９で、マスタＳＰ１２０のデータ制御部１２３は、代替経路の形成依頼を受信すると、ＩＰアドレスが１９２．１６８．２００で、ポート番号が１００１の接続先情報を用いて、スレイブＳＰ１４０との間の通信路を形成する。具体的には、データ制御部１２３は、データ制御部１２３とデータ経由部１４２の間のコネクションを確立する。
【００９０】
ステップＳ１０で、マスタＳＰ１２０のデータ制御部１２３は、同期部１２２との通信路を形成する。同期部１２２とデータ制御部１２３との間の通信路は、具体的には、ソケットを利用したプロセス間通信のための論理的な通信路である。
【００９１】
ステップＳ１１で、マスタＳＰ１２０のデータ制御部１２３は、スレイブＳＰ１４０のデータ経由部１４２に、代替経路の形成依頼に対応する処理が完了したことを示す情報を送信する。
【００９２】
ステップＳ１２で、マスタＳＰ１２０のデータ制御部１２３は、選択（予約）されたスレイブＳＰ１４０が、代替経路として選択済みであることを示す情報を、記憶部１２１の経由情報１６５に追加する。ステップＳ１２の処理は、ステップＳ１１と並列されて行われてもよい。また、ステップＳ１２の処理は、ステップＳ１１よりも先に行われても良い。
【００９３】
ステップＳ１３で、スレイブＳＰ１４０のデータ経由部１４２は、スタンバイＳＰ１３０のデータ制御部１３３に、マスタＳＰ１２０のデータ制御部１２３側で代替経路の形成依頼に対応する処理が完了したことを示す情報を送信する。併せて、スレイブＳＰ１４０のデータ経由部１４２は、データ経由部１４２に設定されているＩＰアドレスやＰｏｒｔ番号を含む接続先情報を、スタンバイＳＰ１３０のデータ制御部１３３に送信する。データ経由部１４２は、スレイブＳＰ１４０のデータ制御部１２３に送信する接続先情報は、ステップＳ８の接続先情報とは、ポート番号が異なる。例えば、ステップＳ１３で送信する接続先情報は、データ経由部１４２のＩＰアドレスを、１９２．１６８．２００とポート番号を、１０００である。
【００９４】
ステップＳ１４で、スタンバイＳＰ１３０のデータ制御部１３３は、受信した接続情報に含まれるＩＰアドレスやＰｏｒｔ番号を用いて、スレイブＳＰ１４０との間の通信路を形成する。具体的には、データ制御部１３３は、データ制御部１３３とデータ経由部１４２の間のコネクションを確立する。
【００９５】
以上のように、データ経由部１４２とマスタＳＰ１２０のデータ制御部１２３との間の通信路をデータ制御部１２３が形成するとともに、データ経由部１４２とスタンバイＳＰ１３０のデータ制御部１３３との間の通信路をデータ制御部１３３が形成する。その結果、スレイブＳＰ１４０（より具体的にはデータ経由部１４２）は、マスタＳＰ１２０とスタンバイＳＰ１３０の間のデータの送受信を中継することが可能となる。
【００９６】
なお、図７は、通信路１５１で障害が発生した場合の例である。通信路１５２で障害が発生した場合は、ステップＳ１〜Ｓ７・Ｓ１４と同様の処理をマスタＳＰ１２０が行い、ステップＳ８・Ｓ１０・Ｓ１２と同様の処理をスタンバイＳＰ１３０が行う。また、通信路１５２で障害が発生した場合は、ステップＳ８の送信はスレイブＳＰ１４０からスタンバイＳＰ１３０への送信に置き換えられ、ステップＳ１３の送信はスレイブＳＰ１４０からマスタＳＰ１２０への送信に置き換えられる。
【００９７】
図８は、経由情報の例を説明する図である。マスタＳＰ１２０の経由情報１６５及びスレイブＳＰ１３０の経由情報１６６は、自ＳＰが通信可能なスレイブＳＰ１４０についての情報、スレイブＳＰ１４０への問い合わせが済んだか否かを示す問い合わせ情報、経由状況情報、リスク指標値、選択情報を含む。図８の経由情報の例は、図５に示すスタンバイＳＰ１３０の経由情報１６６の例である。
【００９８】
図８の経由情報には、スタンバイＳＰ１３０が通信可能なスレイブＳＰ１４０として、スレイブＳＰ１４０ａ〜１４０ｎを示す情報（例えばスレイブＳＰ１４０ａ〜１４０ｎそれぞれの識別子）が含まれる。スタンバイＳＰ１３０の経由情報１６６は、スタンバイＳＰ１３０が通信可能なスレイブＳＰ１４０の情報として、検出部１３４が検出した情報処理装置１０３ａ〜１０３ｎにそれぞれ搭載されたスレイブＳＰ１４０ａ〜１４０ｎの各々を示す情報を含む。なお、マスタＳＰ１２０の経由情報１６５では、マスタＳＰ１２０が通信可能なスレイブＳＰ１４０の情報として、検出部１２４が検出した情報処理装置１０３ａ〜１０３ｎにそれぞれ搭載されたスレイブＳＰ１４０ａ〜１４０ｎの各々を示す情報が含まれる。
【００９９】
図８の経由情報の例は、スタンバイＳＰ１３０が通信可能なスレイブＳＰ１４０の各々への問い合わせが済んだか否かを示す問い合わせ情報を含む。問い合わせ情報は、スタンバイＳＰ１３０のデータ制御部１３３がスレイブＳＰ１４０に、スレイブＳＰデータ１６３を、係数情報１６４を用いて指標化するように求める計算命令を、既に送信したかどうかを示す情報である。スタンバイＳＰ１３０のデータ制御部１３３が、既にスレイブＳＰ１４０に対して計算命令を送信済みである場合、問い合わせ情報には、計算命令が送信済みであることを示す「済」が設定される。スレイブＳＰ１４０に対して計算命令がまだ送信されていない場合、問い合わせ情報には、計算命令が送信されていないことを示す「未」が設定される。なお、マスタＳＰ１２０の経由情報１６５でも、同様に、スレイブＳＰ１４０に対して計算命令が送られているかを示す情報が、問い合わせ情報に設定される。
【０１００】
図８の経由情報は、スタンバイＳＰ１３０が通信可能なスレイブＳＰ１４０の各々に対応する経由状況情報を含む。経由状況情報は、各スレイブＳＰ１４０の通信状況を示す情報である。経由状況情報は、「経由ＯＫ」、「経由ＮＧ」、「経由予約中」、「経由中」、「不明」などの値により示される。経由状況情報は、リスク指標値の計算命令に応じて、スレイブＳＰ１４０から受信される。「経由ＯＫ」は、スレイブＳＰ１４０が、マスタＳＰ１２０とスタンバイＳＰ１３０の両方と通信可能であることを示す。「経由ＮＧ」は、スレイブＳＰ１４０が、マスタＳＰ１２０又はスタンバイＳＰ１３０の少なくともどちらか一方と、通信ができない状態を示す。スタンバイＳＰ１３０の経由情報１６６内における「経由予約中」は、マスタＳＰ１２０側からスレイブＳＰ１４０が代替経路の形成依頼を受けている状態を示す。なお、マスタＳＰ１２０の経由情報１６５における「経由予約中」は、スタンバイＳＰ１３０側からスレイブＳＰ１４０が代替経路の形成依頼を受けている状態を示す。「経由中」は、該スレイブＳＰ１４０が、既に代替経路として使用されていることを示す。「不明」は、スレイブＳＰ１４０がマスタＳＰ１２０及びスタンバイＳＰ１３０と通信可能であるか否かということが、未確認であるため不明である、ということを示す。また、「不明」は、スレイブＳＰ１４０に搭載されている処理装置などのハードウェア装置の状態が不明であることも示す。
【０１０１】
リスク指標値は、スレイブＳＰ１４０のデータ経由部１４２が、記憶部１４１の係数情報１６４に含まれる情報を用いて、スレイブＳＰデータ１６３から、データ転送に悪影響を与える要因を指標化した値である（詳しくは、図９とともに後述する）。リスク指標値は、スレイブＳＰ１４０からスタンバイＳＰ１３０に送信され、経由情報１６５の一部として記憶部１３１に書き込まれる。リスク指標値は、データ転送に悪影響を与える要因を指標化した値であるため、数値が小さい（悪影響が少ない）ものほど好ましい。図８の経由情報１６６では、スレイブＳＰ１４０ａに対するリスク指標値は１、スレイブＳＰ１４０ｂに対するリスク指標値は２５、スレイブＳＰ１４０ｎに対するリスク指標値は２０である。すると、リスク指標値が最も小さいスレイブＳＰ１４０ａが、データ転送に悪影響を与える要因が少なく、データを中継するのに望ましいと判断できる。そのため、マスタＳＰ１２０のデータ制御部１２３及びスタンバイＳＰ１３０のデータ制御部１３３は、代替経路を形成するために用いるスレイブＳＰ１４０を選択する場合に、リスク指標値の値が最も小さいスレイブＳＰ１４０を選択する。
【０１０２】
選択情報は、各スレイブＳＰ１４０が、代替経路として選択されているかを示す情報である。マスタＳＰ１２０のデータ制御部１２３及びスタンバイＳＰ１３０のデータ制御部１３３は、代替経路の形成に用いたスレイブＳＰ１４０に対応する選択情報に、「選択」を設定する。なお、代替経路として用いられないスレイブＳＰ１４０に対応する選択情報には、「未選択」が設定される。
【０１０３】
図９は、係数情報の例を説明する図である。係数情報１６４は、スレイブＳＰ１４０の記憶部１４１に予め設定されている。係数情報１６４は、スレイブＳＰ１４０が搭載されている自情報処理装置１０３の状態を指標化するために用いられる。
【０１０４】
スレイブＳＰ１４０は、自情報処理装置内のプロセッサ（処理装置）やメモリなどのハードウェア装置を管理する。実際には、スレイブＳＰ１４０は、各処理装置などのハードウェア装置を管理する管理部１４３を備える。データ経由部１４２は、マスタＳＰ１２０のデータ制御部１２３又はスタンバイＳＰ１３０のデータ制御部１３３から計算命令を受信すると、管理部１４３に、各ハードウェア装置の状態を問い合わせる。データ経由部１４２は、管理部１４３から各処理装置の状態を示す情報（すなわち、スレイブＳＰデータ１６３の少なくとも一部）を受け取ると、管理部１４３から受け取った情報と記憶部１４１内の係数情報１６４とを用いて、リスク指標値を算出する。
【０１０５】
ここで、係数情報１６４は、処理装置などのハードウェア装置の状態を示す情報と、その状態情報により示される状態がスレイブＳＰ１４０を介したデータ送信に悪影響を与える程度を指標化した指標値と、を含む。換言すれば、各指標値は、各状態に対応する係数である。ハードウェア装置の状態には、以下のような例がある。
・パーティションＯＮ実行中（高負荷処理中）
・パーティションＯＮ実行中（低負荷処理中）
・パーティションＯＮ状態
・パーティションＯＦＦ実行中
・パーティションＯＦＦ状態
・一部のハードウェア装置が故障
・Ｉ／Ｏ装置が接続されている状態
・４つの情報処理装置が１つのパーティションに所属
・３つの情報処理装置が１つのパーティションに所属
・２つの情報処理装置が１つのパーティションに所属
・１つの情報処理装置が１つのパーティションに所属
【０１０６】
上記のような、ハードウェア装置の状態情報の各々に対応して、係数情報１６４では、指標値が設定されている。１つのパーティションには１つ以上の情報処理装置が所属し、１つのパーティション上では１つのＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）が実行される。具体的には、１つのパーティションに所属する１つ以上の情報処理装置に搭載された１つ以上の処理装置により、１つのＯＳが実行される。こうして、１つのパーティションに所属する１つ以上の情報処理装置により、論理的に１つの情報処理装置が実現される。
【０１０７】
パーティションＯＮとは、１つ以上の情報処理装置を、論理的に１つの情報処理装置として動作させるための処理であり、論理的にパーティションを形成する処理である。パーティションＯＮ実行（準備）処理は、高負荷の期間と、低負荷の期間に分けられる。高負荷の期間のほうが、低負荷の期間よりも、データ送信に悪影響を及ぼす。そのため、図９の係数情報１６４では、「パーティションＯＮ実行中（高負荷処理中）」の指標値は５０であり、「パーティションＯＮ実行中（低負荷処理中）」の指標値は４０である。「パーティションＯＮ状態」では、１つ以上の情報処理装置を論理的に１つの情報処理装置として動作させる環境が既に整っているため、情報処理装置に対するパーティション設定の処理は行われない。「パーティションＯＮ実行中」よりも「パーティションＯＮ状態」の方が、データ送信に悪影響を及ぼす要因が少ない。そのため、「パーティションＯＮ状態」には、指標値３０が設定されている。
【０１０８】
「パーティションＯＦＦ実行中」は、論理的に１つの情報処理装置として動作していた環境を止める処理を実行している最中であることを示す。「パーティションＯＦＦ実行中」は、ＯＳが停止されるため、ＯＳが実行されている「パーティションＯＮ状態」よりもデータ送信に悪影響を及ぼす要因が少ない。そのため、「パーティションＯＦＦ実行中」には、指標値２０が設定されている。「パーティションＯＦＦ状態」は、既にパーティションＯＦＦ処理が完了しているため、各情報処理装置が、パーティションに関連する処理をしていない状態である。「パーティションＯＦＦ状態」は、「パーティションＯＦＦ実行中」よりもデータ送信に悪影響を及ぼす要因が少ない。そのため、「パーティションＯＦＦ状態」には、指標値１０が設定されている。
【０１０９】
スレイブＳＰ１４０が搭載されている情報処理装置１０３に含まれる処理装置のうち、一部のハードウェア装置が故障している場合は、当該スレイブＳＰ１４０を介したデータ送信に悪影響があることが考えられる。そのため、一部のハードウェア装置が故障している場合の指標値には、１００が設定されている。スレイブＳＰ１４０が搭載されている情報処理装置１０３にＩ／Ｏ装置が接続されている場合、スレイブＳＰ１４０内の該Ｉ／Ｏ装置を別の処理に使用する可能性があるため、スレイブＳＰ１４０のデータ送信処理に悪影響が及ぶことが考えられる。そのため、Ｉ／Ｏ装置が接続されている場合の指標値には、２０が設定されている。
【０１１０】
係数情報１６４では、更に、パーティションに所属する情報処理装置の数に応じて、指標値が設定されている。例えば、ある処理装置が搭載されている情報処理装置が所属するパーティションに所属する情報処理装置の数が３のとき、当該処理装置の状態情報は、「３つの情報処理装置が１つのパーティションに所属」と表される。例えば、情報処理装置が４つあると、４つの情報処理装置のうち少なくとも１つの情報処理装置に障害が発生する確率は、情報処理装置が１つの場合の約４倍となる。そのため、１つのパーティションに所属する情報処理装置が４つの場合、指標値は４０と設定されている。１つのパーティションに所属する情報処理装置が１つの場合、指標値は１０と設定されている。
【０１１１】
なお、上記の指標値に設定されている値は、変更可能であり、数値を限定するものではない。また、処理装置などのハードウェア装置の状態も、更に異なる状態を示す情報があってよい。
【０１１２】
データ経由部１４２は、スレイブＳＰデータ１６３により表される処理装置の状態に対応した指標値を足し合わせることで、リスク指標値を算出する。マスタＳＰ１２０のデータ制御部１２３及びスレイブＳＰ１３０のデータ制御部１３３は、データ経由部１４２からリスク指標値を受信すると、リスク指標値の小さい情報処理装置１０３（より具体的にはスレイブＳＰ１４０）を、代替経路の形成のために選択する。
【０１１３】
図１０は、マスタＳＰの代替経路形成処理の例を説明するフローチャートである。検出部１２４は、同期部１２２が同期部１３２にＳＰデータを送信するのに用いる通信路１５２の障害がある場合に、障害があることを検出する（ステップＳ１０１）。通信路１５２に障害がない場合（ステップＳ１０１でＮＯ）、検出部１２４は、ステップＳ１０１の処理（すなわち通信路１５２の監視）を繰り返す。通信路１５２に障害がある場合（ステップＳ１０１でＹＥＳ）、検出部１２４は、データ制御部１２３に、障害が発生していることを通知する（ステップＳ１０２）。
【０１１４】
データ制御部１２３は、経由情報１６５を参照し、マスタＳＰ１２０と通信可能なスレイブＳＰ１４０があるかを判定する（ステップＳ１０３）。マスタＳＰ１２０と通信可能なスレイブＳＰ１４０がない場合（ステップＳ１０３でＮＯ）、マスタＳＰ１２０は、代替経路形成処理を終了する。マスタＳＰ１２０と通信可能なスレイブＳＰ１４０１つ以上がある場合（ステップＳ１０３でＹＥＳ）、データ制御部１２３は、通信可能な全スレイブＳＰ１４０に、リスク指標値を計算するよう求める計算命令を送信する（ステップＳ１０４）。
【０１１５】
データ制御部１２３は、リスク指標値を、通信可能な全スレイブＳＰ１４０から受信したかを判定する（ステップＳ１０５）。通信可能な全スレイブＳＰ１４０からリスク指標値を受信していない場合（ステップＳ１０５でＮＯ）、データ制御部１２３は、ステップＳ１０５の処理を繰り返す。通信可能な全スレイブＳＰ１４０からリスク指標値を受信した場合（ステップＳ１０５でＹＥＳ）、データ制御部１２３は、リスク指標値の最も小さいスレイブＳＰ１４０を選択する（ステップＳ１０６）。
【０１１６】
データ制御部１２３は、選択したスレイブＳＰ１４０を用いて代替経路を形成する（ステップＳ１０７）。代替経路を形成すると、データ制御部１２３は、代替経路形成処理を終了する。代替経路が形成されると、マスタＳＰ１２０の同期部１２２は、データ制御部１２３と代替経路を介して、スタンバイＳＰ１３０のデータ制御部１３３にＳＰデータを送信する。
【０１１７】
図１１は、スタンバイＳＰの代替経路形成処理の例を説明するフローチャートである。検出部１３４は、同期部１３２が同期部１２２にＳＰデータを送信するのに用いる通信路１５１の障害がある場合に、障害があることを検出する（ステップＳ２０１）。通信路１５１に障害がない場合（ステップＳ２０１でＮＯ）、検出部１３４は、ステップＳ２０１の処理（すなわち通信路１５１の監視）を繰り返す。通信路１５１に障害がある場合（ステップＳ２０１でＹＥＳ）、検出部１３４は、データ制御部１３３に、障害が発生していることを通知する（ステップＳ２０２）。
【０１１８】
データ制御部１３３は、経由情報１６６を参照し、スタンバイＳＰ１３０と通信可能なスレイブＳＰ１４０があるかを判定する（ステップＳ２０３）。スタンバイＳＰ１３０と通信可能なスレイブＳＰ１４０がない場合（ステップＳ２０３でＮＯ）、スタンバイＳＰ１３０は、代替経路形成処理を終了する。スタンバイＳＰ１３０と通信可能なスレイブＳＰ１４０１つ以上がある場合（ステップＳ２０３でＹＥＳ）、データ制御部１３３は、通信可能な全スレイブＳＰ１４０に、リスク指標値を計算するよう求める計算命令を送信する（ステップＳ２０４）。
【０１１９】
データ制御部１３３は、リスク指標値を、通信可能な全スレイブＳＰ１４０から受信したかを判定する（ステップＳ２０５）。通信可能な全スレイブＳＰ１４０からリスク指標値を受信していない場合（ステップＳ２０５でＮＯ）、データ制御部１３３は、ステップＳ２０５の処理を繰り返す。通信可能な全スレイブＳＰ１４０からリスク指標値を受信した場合（ステップＳ２０５でＹＥＳ）、データ制御部１３３は、リスク指標値の最も小さいスレイブＳＰ１４０を選択する（ステップＳ２０６）。
【０１２０】
データ制御部１３３は、選択したスレイブＳＰ１４０を用いて代替経路を形成する（ステップＳ２０７）。ステップＳ２０７の詳細は、図７を参照して説明したとおりである。代替経路を形成すると、データ制御部１３３は、代替経路形成処理を終了する。代替経路が形成されると、スタンバイＳＰ１３０の同期部１３２は、データ制御部１３３と代替経路を介して、マスタＳＰ１２０のデータ制御部１２３にＳＰデータを送信する。
【０１２１】
図１２Ａ及び図１２Ｂは、スレイブＳＰのリスク指標値の算出処理の例を説明するフローチャートである。データ経由部１４２は、マスタＳＰ１２０のデータ制御部１２３又はスタンバイＳＰ１３０のデータ制御部１３３からリスク指標値を算出するようい求める計算命令を受信すると、図１２Ａ〜１２Ｂの算出処理を開始する。
【０１２２】
検出部１４４は、スレイブＳＰ１４０が、マスタＳＰ１２０とスタンバイＳＰ１３０の双方と通信可能かを判定する（ステップＳ３０１）。スレイブＳＰ１４０がマスタＳＰ１２０とスタンバイＳＰ１３０の双方と通信可能な場合（ステップＳ３０１でＹＥＳ）、データ経由部１４２は、情報処理装置１０３に搭載された各ハードウェア装置の状態を管理部１４３に問い合わせる（ステップＳ３０２）。データ経由部１４２は、各ハードウェア装置の状態を示すスレイブＳＰデータ１６３を管理部１４３から受け取る。そして、データ経由部１４２は、受け取ったスレイブＳＰデータ１６３により表されるハードウェア装置の状態に対応する指標値が、係数情報１６４に含まれるかを判定する（ステップＳ３０３）。なお、データ経由部１４２は、少なくとも１台のハードウェア装置について、当ハードウェア装置の状態に対応する指標値が係数情報１６４に含まれるかを判定する。処理装置の状態に対応する指標値が係数情報１６４に含まれない場合（ステップＳ３０３でＮＯ）、データ経由部１４２は、計算命令の送信元であるデータ制御部１２３又はデータ制御部１３３に、「不明」を示す情報を送信する（ステップＳ３０４）。スレイブＳＰ１４０がマスタＳＰ１２０とスタンバイＳＰ１３０のうち少なくとも一方と通信できない場合（ステップＳ３０１でＹＥＳ）、データ経由部１４２は、計算命令の送信元であるデータ制御部１２３又はデータ制御部１３３に、「経由ＮＧ」を示す情報を送信する（ステップＳ３０５）。ステップＳ３０４又はステップＳ３０５の処理が完了すると、スレイブＳＰ１４０は、リスク指標値の算出処理を終了する。
【０１２３】
少なくとも１台以上のハードウェア装置の状態に対応する指標値が状態情報１６４に含まれる場合（ステップＳ３０３でＹＥＳ）、データ経由部１４２は、ハードウェア装置の状態に対応する指標値を全て足し合わせることでリスク指標値を算出する（ステップＳ３０６）。なお、ハードウェア装置が複数台ある場合には、各ハードウェア装置の状態に対応するリスク指標値を、更に合計する。データ経由部１４２は、データ経由部１４２を含むスレイブＳＰ１４０が搭載された自情報処理装置１０３が、すでに経由予約中又は経由中かを判定する（ステップＳ３０７）。なお、「経由予約中」・「経由中」などの情報は、データ経由部１４２の内部データとして保持されている。
【０１２４】
該情報処理装置１０３が、経由予約中や経由中でない場合（ステップＳ３０７でＮＯ）、データ経由部１４２は、リスク指標値と「経由ＯＫ」を示す予約情報を、計算命令の送信元であるデータ制御部１２３又はデータ制御部１３３に送信する（ステップＳ３０８）。該情報処理装置１０３が経由予約中または経由中である場合（ステップＳ３０７でＹＥＳ）、データ経由部１４２は、データ経由部１４２を含むスレイブＳＰ１４０が搭載された情報処理装置１０３が経由中であるかを判定する（ステップＳ３０９）。該情報処理装置１０３が経由中でない場合（ステップＳ３０９でＮＯ）、データ経由部１４２は、リスク指標値と「経由予約中」を示す予約情報を、計算命令の送信元であるデータ制御部１２３又はデータ制御部１３３に送信する（ステップＳ３１０）。該情報処理装置１０３が経由中の場合（ステップＳ３０９でＹＥＳ）、データ経由部１４２は、リスク指標値と「経由中」を示す予約情報を、計算命令の送信元であるデータ制御部１２３又はデータ制御部１３３に送信する（ステップＳ３１１）。ステップＳ３０８、ステップＳ３１０又はステップＳ３１１の処理が完了すると、スレイブＳＰ１４０は、リスク指標値の算出処理を終了する。
【０１２５】
図１３Ａ及び図１３Ｂは、スレイブＳＰの選択処理の例を説明するフローチャートである。図１２Ａ及び図１２Ｂに示したように、リスク指標値と経由状態を示す予約情報がスレイブＳＰ１４０からマスタＳＰ１２０のデータ制御部１２３又はスタンバイＳＰ１３０のデータ制御部１３３に送信される。リスク指標値と予約情報を受信すると、マスタＳＰ１２０のデータ制御部１２３又はスタンバイＳＰ１３０のデータ制御部１３３は、受信したリスク指標値と予約情報にしたがって、経由情報１６５内の経由状況情報とリスク指標値を更新する。経由情報１６５の更新後、データ制御部１２３又はデータ制御部１３３は図１３Ａ及び図１３Ｂの選択処理を開始する。以下では説明の便宜上、マスタＳＰ１２０のデータ制御部１２３がスレイブＳＰ１４０の選択処理を開始する場合について、具体的に説明する。
【０１２６】
マスタＳＰ１２０のデータ制御部１２３は、経由情報１６５を参照し、経由ＯＫのスレイブＳＰ１４０があるかを判定する（ステップＳ４０１）。経由ＯＫのスレイブＳＰ１４０についてのエントリが経由情報１６５に含まれる場合（ステップＳ４０１でＹＥＳ）、データ制御部１２３は、経由情報１６５を参照し、経由ＯＫのスレイブＳＰ１４０の中でリスク指標値の数値が一番小さいスレイブＳＰ１４０を選択する（ステップＳ４０２）。データ制御部１２３は、選択したスレイブＳＰ１４０のデータ経由部１４２に、代替経路の形成依頼を送信する（ステップＳ４０３）。
【０１２７】
例えば図６に例示したように、通信路１５１と通信路１５２にほぼ同時に障害が発生した場合、リスク指標値の計算命令が、データ制御部１２３とデータ制御部１３３の各々からほぼ同時にデータ経由部１４２に送信される。この場合、リスク指標値と「経由ＯＫ」という予約情報が、データ経由部１４２から、データ制御部１２３とデータ制御部１３３の各々に対して、ほぼ同時に送信され得る。また、この場合、図７のステップＳ７に関して説明した代替経路の形成依頼も、データ制御部１２３とデータ制御部１３３の各々からほぼ同時にデータ経由部１４２に送信され得る。つまり、データ制御部１２３とデータ制御部１３３の各々が、ほぼ同時にステップＳ４０３の処理を実行する場合があり得る。この場合、データ経由部１４２は、先に受信した形成依頼にしたがって、図７のステップＳ８〜Ｓ１３のような処理を行う。
【０１２８】
例えば、データ経由部１４２がデータ制御部１３３から先に形成依頼を受信した場合、データ経由部１４２は、図７のステップＳ１３に示すように、形成依頼に対応する処理が完了したことをデータ制御部１３３に通知する。この通知は、換言すれば、形成依頼に対する「ＯＫ」という返答である。また、データ経由部１４２がデータ制御部１３３から先に形成依頼を受信した場合、データ経由部１４２は、データ制御部１２３に対しては、「ＮＧ」という返答を返す。「ＮＧ」という返答は、データ経由部１４２が既に「経由予約中」であるためデータ制御部１２３からの形成依頼に応えられないことを示す。
【０１２９】
ステップＳ４０３〜Ｓ４０６は、通信路１５１と通信路１５２にほぼ同時に障害が発生する場合に２つの異なる代替経路が形成されるようにするためのステップである。具体的には、データ制御部１２３は、ステップＳ４０２で選択したスレイブＳＰ１４０のデータ経由部１４２からの返答が、ＯＫかを判定する（ステップＳ４０４）。選択したスレイブＳＰ１４０を経由する代替経路の形成が可能である場合（ステップＳ４０４でＹＥＳ）、データ制御部１２３は、経由情報１６５のうち、選択したスレイブＳＰ１４０に対応する選択情報に、「選択」を設定する（ステップＳ４０５）。選択したスレイブＳＰ１４０を経由する代替経路の形成ができない場合（ステップＳ４０４でＮＯ）、データ制御部１２３は、経由情報１６５のうち、選択したスレイブＳＰ１４０に対応する経由状況情報を「経由予約中」に変更する（ステップＳ４０６）。ステップＳ４０６が終了すると、データ制御部１２３は、処理をステップＳ４０１から繰り返す。
【０１３０】
経由ＯＫのスレイブＳＰ１４０についてのエントリが経由情報１６５に含まれない場合（ステップＳ４０１でＮＯ）、データ制御部１２３は、経由情報１６５を参照し、経由予約中又は経由中と設定されているスレイブＳＰ１４０があるかを判定する（ステップＳ４０７）。経由情報１６５に経由予約中又は経由中と設定されているスレイブＳＰ１４０がない場合（ステップＳ４０７でＮＯ）、データ制御部１２３は、スレイブＳＰ１４０を経由する代替経路を形成することができないと判定し、選択処理を終了する（ステップＳ４０８）。
【０１３１】
経由情報１６５において経由予約中又は経由中と設定されているスレイブＳＰ１４０がある場合（ステップＳ４０７でＹＥＳ）、データ制御部１２３は、経由予約中又は経由中と設定されているスレイブＳＰ１４０を選択する（ステップＳ４０９）。なお、経由予約中又は経由中と設定されているスレイブＳＰ１４０は、多くても１つしか存在しないことに注意されたい。ステップＳ４０９の処理が終了すると、データ制御部１２３は、ステップＳ４０５から処理を開始する。なお、通信路１５１で障害がある場合には、図１３Ａ〜１３ＢのステップＳ４０１〜Ｓ４１０の処理と同様の処理を、スタンバイＳＰ１３０のデータ制御部１３３が実行する。
【０１３２】
図１４は、代替経路の形成処理の例（その１）を説明するフローチャートである。マスタＳＰ１２０のデータ制御部１２３は、同期部１２２に、ＳＰデータを送信する処理の停止命令を送信する（ステップＳ５０１）。同期部１２２は、ＳＰデータの送信処理を停止する（ステップＳ５０２）。データ制御部１２３は、同期部１２２に設定されているＩＰアドレスとＰｏｒｔ番号を含む接続先情報を、記憶部１２１にバックアップする（ステップＳ５０３）。データ制御部１２３は、同期部１２２の接続先情報に、データ制御部１２３に割り当てられているＩＰアドレスとＰｏｒｔ番号を設定する（ステップＳ５０４）。
【０１３３】
データ制御部１２３は、同期部１２２を再起動する命令を同期部１２２に送信する（ステップＳ５０５）。すると、同期部１２２は、再起動する（ステップＳ５０６）。同期部１２２は、再起動により、接続先情報として設定されたＩＰアドレスとＰｏｒｔ番号（すなわち、データ制御部１２３に割り当てられているＩＰアドレスとＰｏｒｔ番号）を認識し、データ制御部１２３との間の通信路を形成する（ステップＳ５０７）。ステップＳ５０１〜Ｓ５０７は、図７のステップＳ１〜Ｓ５と類似である。
【０１３４】
データ制御部１２３は、経由情報１６５を参照し、選択（予約）されたスレイブＳＰ１４０を特定する（ステップＳ５０８）。データ制御部１２３は、選択したスレイブＳＰ１４０に、代替経路の形成依頼を送信する（ステップＳ５０９）。ステップＳ５０８〜Ｓ５０９は、図７のステップＳ６〜Ｓ７と類似である。
【０１３５】
データ制御部１２３は、代替経路形成依頼に対応する処理が完了したことを示す情報を、スレイブＳＰ１４０のデータ経由部１４２から受信したかを判定する（ステップＳ５１０）。代替経路の形成依頼に対応する処理が完了したことを示す情報を、スレイブＳＰ１４０のデータ経由部１４２から受信していない場合（ステップＳ５１０でＮＯ）、データ制御部１２３は、ステップＳ５１０の処理を繰り返す。
【０１３６】
なお、図１３ＡのステップＳ４０３〜Ｓ４０６に関して説明したように、まれに、データ制御部１２３がデータ経由部１４２から「ＮＧ」という返答を受信する場合がある。ただし、図示の簡単化のため、図１４ではこの場合について省略されている。「ＮＧ」という返答を受信した場合、データ制御部１２３は図１４の処理を終了する。
【０１３７】
他方、代替経路の形成依頼に対応する処理が完了したことを示す情報を、スレイブＳＰ１４０のデータ経由部１４２から受信した場合（ステップＳ５１０でＹＥＳ）、データ制御部１２３は、データ経由部１４２との通信路を形成する（ステップＳ５１１）。なお、代替経路の形成依頼に対応する処理が完了したことを示す情報の送信は、図７のステップＳ１３と類似である。また、この情報は、形成依頼に対する「ＯＫ」という返答である（図１３ＡのステップＳ４０４を参照）。ステップＳ５１１は図７のステップＳ１４と類似である。
【０１３８】
データ制御部１２３は、同期部１２２に、ＳＰデータの同期処理の開始命令を送信する（ステップＳ５１２）。マスタＳＰ１２０の同期部１２２は、データ経由部１４２を介したスタンバイＳＰ１３０の同期部１３２へのＳＰデータの送信を開始する（ステップＳ５１３）。データ制御部１２３は、代替経路の形成処理を終了する。なお、通信路１５１で障害が発生した場合には、図１４のＳ５０１〜Ｓ５１３の処理と同様の処理を、スタンバイＳＰ１３０のデータ制御部１３３と同期部１３２が実行する。
【０１３９】
図１５は、代替経路の形成処理の例（その２）を説明するフローチャートである。図１５の処理は、図１４のステップＳ５０９の代替経路の形成依頼をマスタＳＰ１２０側から受信したスレイブＳＰ１４０において実行される処理の例である。なお、図１４のステップＳ５０９の代替経路の形成依頼をスレイブＳＰ１４０がスタンバイ１３０から受信した場合も、スレイブＳＰ１４０は図１５と類似の処理を実行する（図７も参照）。
【０１４０】
データ経由部１４２は、スタンバイＳＰ１３０のデータ制御部１３３に、データ経由部１４２に設定されているＩＰアドレスとＰｏｒｔ番号を含む接続先情報および代替経路の形成依頼を送信する（ステップＳ６０１）。ステップＳ６０１は図７のステップＳ８と類似である。データ経由部１４２は、スタンバイＳＰ１３０側での代替経路形成処理が完了したかを判定する（ステップＳ６０２）。例えば、データ経由部１４２は、代替経路の形成依頼に対応する処理が完了したことを示す情報（図７のステップＳ１１で送信される情報と類似の情報）がデータ制御部１３３から受信されたか否かを判定する。
【０１４１】
スタンバイＳＰ１３０側での代替経路の形成処理が完了していない場合（ステップＳ６０２でＮＯ）、データ経由部１４２は、ステップＳ６０２の処理を繰り返す。スタンバイＳＰ１３０側での代替経路の形成が完了した場合（ステップＳ６０２でＹＥＳ）、データ経由部１４２は、スレイブＳＰ１３０側での代替経路の形成処理が完了したことを、マスタＳＰ１２０のデータ制御部１２３に送信する（ステップＳ６０３）。ステップＳ６０３の通知は、図７のステップＳ１３の通知と類似である。なお、ステップＳ６０３では、併せてデータ経由部１４２は、データ経由部１４２に設定されているＩＰアドレスとＰｏｒｔ番号を含む接続先情報を、マスタＳＰのデータ制御部１２３に送信する。ステップＳ６０３の処理が完了すると、図１４のステップＳ５１０の処理が開始される。
【０１４２】
図１６は、代替経路の形成処理の例（その３）を説明するフローチャートである。図１６の処理は、図１５のステップＳ６０１の代替経路の形成依頼を受信した後の、スタンバイＳＰ１３０側の処理の例である。
【０１４３】
スタンバイＳＰ１３０のデータ制御部１３３は、代替経路の形成依頼を接続先情報とともに受信すると、受信した接続先情報に含まれるＩＰアドレスやＰｏｒｔ番号を用いて、スレイブＳＰ１４０との通信路を形成する（ステップＳ７０１）。データ制御部１３３は、同期部１３２との通信路を形成する（ステップＳ７０２）。データ制御部１３３は、スタンバイＳＰ１３０のデータ経由部１４２に、代替経路の形成依頼（つまりステップＳ６０１で送信された依頼）に対応する処理が完了したことを示す情報を送信する（ステップＳ７０３）。ステップＳ７０１〜Ｓ７０３は、図７のステップＳ９〜Ｓ１１と類似である。ステップＳ７０３の処理が完了すると、図１５のステップＳ６０２に処理が移行する。なお、通信路１５１で障害がある場合は、図１６のステップＳ７０１〜Ｓ７０３と類似の処理を、マスタＳＰ１２０が実行する（図７のステップＳ９〜Ｓ１１を参照）。
【０１４４】
図１７は、通信路の障害が回復した後の処理の例を説明するフローチャートである。検出部１２４は、通信路１５２の障害の回復を検出する（ステップＳ８０１）。検出部１２４は、データ制御部１２３に、通信路１５２の障害が回復したことを示す情報を送信する（ステップＳ８０２）。データ制御部１２３は、経由情報１６５を参照し、代替経路としてスレイブＳＰ１４０を使用しているかを判定する（ステップＳ８０３）。代替経路としてスレイブＳＰ１４０を使用していない場合（ステップＳ８０３でＮＯ）、データ制御部１２３は、図１７の処理を終了する。代替経路としてスレイブＳＰ１４０を使用している場合（ステップＳ８０３でＹＥＳ）、データ制御部１２３は、同期部１２２に、ＳＰデータの送信を停止するよう求める停止命令を送信する（ステップＳ８０４）。
【０１４５】
同期部１２２は、ＳＰデータの送信を停止する（ステップＳ８０５）。データ制御部１２３は、図１４のステップＳ５０４で同期部１２２に設定した接続先情報をリセットする（ステップＳ８０６）。データ制御部１２３は、図１４のステップＳ５０３で記憶部１２１にバックアップした接続先情報を参照し、同期部１２２の接続先として、スタンバイＳＰ１３０の同期部１３２のＩＰアドレスおよびＰｏｒｔ番号を設定する（ステップＳ８０７）。データ制御部１２３は、同期部１２２の再起動をする命令を、同期部１２２に送信する（ステップＳ８０８）。
【０１４６】
同期部１２２は、再起動する（ステップＳ８０９）。同期部１２２は、スタンバイＳＰ１３０の同期部１３２との間の通信路を形成する（ステップＳ８１０）。データ制御部１２３は、通信路の障害が回復した後の処理を終了する。なお、通信路１５１の障害の回復は、検出部１３４で検出する。通信路１５１の障害の回復については、スタンバイＳＰ１３０が、図１７と類似の処理を行う。
【０１４７】
図１８は、リスク指標値の再計算の処理の例を説明するフローチャートである。各スレイブＳＰ１４０は、リスク指標値の算出結果をマスタＳＰ１２０又はスタンバイＳＰ１３０に送信した後も、定期的に、リスク指標値を算出しなおすことが好ましい。スレイブＳＰ１４０のリスク指標値は、一定ではない。そのため、選択されたスレイブＳＰ１４０のリスク指標値が、所定の閾値よりも高くなると、他のスレイブＳＰ１４０を代替経路として用いることが望ましい。図１８に示すスレイブＳＰ１４０の処理は、定期的に行われることが好ましい。
【０１４８】
データ経由部１６４は、管理部１４３から処理装置の状態情報（具体的にはスレイブＳＰデータ１６３の少なくとも一部）を取得し、リスク指標値を算出する（ステップＳ９０１）。データ経由部１６４は、算出したリスク指標値が、所定の閾値よりも高いかを判定する（ステップＳ９０２）。算出したリスク指標値が所定の閾値よりも低い場合（ステップＳ９０２でＮＯ）、データ経由部１６４は、リスク指標値の再計算処理を終了する。算出したリスク指標値が所定の閾値よりも高い場合（ステップＳ９０２でＹＥＳ）、データ経由部１６４は、リスク指標値の計算命令の送信元のデータ制御部に、スレイブＳＰ１４０の再選択命令を送信する（ステップＳ９０３）。データ経由部１６４は、再計算処理を終了する。
【０１４９】
データ制御部１２３は、再選択命令を受信すると、図１０のステップＳ１０４〜Ｓ１０７の処理を実行する。データ制御部１３３は、再選択命令を受信すると、図１１のステップＳ２０４〜Ｓ２０７の処理を実行する。
【０１５０】
以上のように、マスタＳＰ１２０からスタンバイＳＰ１３０にＳＰデータを送信するための通信路１５２で障害が発生しても、スレイブＳＰ１４０を介して、マスタＳＰ１２０はＳＰデータをスタンバイＳＰ１３０に送信できる。また、スタンバイＳＰ１３０からマスタＳＰ１２０にＳＰデータを送信するための通信路１５１で障害が発生しても、スレイブＳＰ１４０を介して、スタンバイＳＰ１３０はＳＰデータをマスタＳＰ１２０に送信できる。マスタＳＰ１２０とスタンバイＳＰ１３０とが同じＳＰデータを記憶することで、スタンバイＳＰ１３０は、マスタＳＰ１２０のバックアップとして動作可能な状態を維持することができる。
【符号の説明】
【０１５１】
１００  ＢＢシステム
１０１、１０２、１０３ａ〜１０３ｎ、２００  情報処理装置
１１０  Ｉ／Ｏ装置
１２０  マスタＳＰ
１２１、１３１、１４１ａ〜１４１ｎ  記憶部
１２２、１３２、１４５ａ〜１４５ｎ  同期部
１２３、１３３  データ制御部
１２４、１３４、１４４ａ〜１４４ｎ  検出部
１３０  スタンバイＳＰ
１４０ａ〜１４０ｎ  スレイブＳＰ
１４２ａ〜１４２ｎ  データ経由部
１４３ａ〜１４３ｎ  管理部
１５１、１５２、１５３ａ〜１５３ｎ、１５４ａ〜１５４ｎ  通信路
１６１  マスタＳＰデータ
１６２  スタンバイＳＰデータ
１６３ａ〜１６３ｎ  スレイブＳＰデータ
１６４  係数情報
１６５、１６６  経由情報
２１０  ＣＭＵ
２２０  ＳＰ
２１１、２２１、１１  プロセッサ
２１２、２２２、１２  メモリ
【図１】
0006476718.tif 000002
【図２】
0006476718.tif 000003
【図３】
0006476718.tif 000004
【図４】
0006476718.tif 000005
【図５】
0006476718.tif 000006
【図６】
0006476718.tif 000007
【図７】
0006476718.tif 000008
【図８】
0006476718.tif 000009
【図９】
0006476718.tif 000010
【図１０】
0006476718.tif 000011
【図１１】
0006476718.tif 000012
【図１２Ａ】
0006476718.tif 000013
【図１２Ｂ】
0006476718.tif 000014
【図１３Ａ】
0006476718.tif 000015
【図１３Ｂ】
0006476718.tif 000016
【図１４】
0006476718.tif 000017
【図１５】
0006476718.tif 000018
【図１６】
0006476718.tif 000019
【図１７】
0006476718.tif 000020
【図１８】
0006476718.tif 000021