(57)【特許請求の範囲】
【請求項１】
電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、
前記応答監視手段が、該応答があると判断した場合は、該他の情報処理装置からの指示に基づいた電子機器と通信可能とするとともに、該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、
該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、
該情報処理装置接続判断手段が、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段と、
を有することを特徴とする情報処理装置。
【請求項２】
該応答監視手段が、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記応答監視手段は、前記情報処理装置の起動時に、該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行う事を特徴とする請求項１、または、請求項２に記載の情報処理装置。
【請求項４】
電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、
該他の情報処理装置と該情報処理装置とにおいて、該他の情報処理装置が該情報処理装置へ指示を出して互いに該電子機器と通信を行うことを示す通信リストを格納する格納手段と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、
前記応答監視手段が、該応答があると判断した場合は、該他の情報処理装置からの指示に基づいた電子機器との通信を可能とするとともに、該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、
該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、
該情報処理装置接続判断手段が、新たな他の情報処理装置が接続されていると判断した場合には、新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段と、
該情報処理装置が該他の情報処理装置の指示なしで通信し、該他の情報処理装置は通信せず、該新たな他の情報処理装置が通信する旨に該通信リストを更新する通信リスト更新手段と、
を有することを特徴とする情報処理装置。
【請求項５】
電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置が実行する通信負荷分散方法において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続手順と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手順と、
前記応答監視手順において、該応答があると判断した場合は、該他の情報処理装置からの指示に基づいた電子機器と通信を可能とするとともに、該応答監視手順において、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手順と、
該応答監視手順において、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断手順と、
該情報処理装置接続判断手順において、新たな他の情報処理装置が接続されていると判断した場合には、新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手順と、
を実行することを特徴とする通信負荷分散方法。
【請求項６】
電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を情報処理装置に行わせる通信負荷分散プログラムにおいて、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続ステップと、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視ステップと、
前記応答監視ステップにおいて、該応答があると判断した場合は、該他の情報処理装置からの指示に基づいた電子機器と通信を可能とするとともに、該応答監視ステップにおいて、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御ステップと、
該応答監視ステップにおいて、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断ステップと、
該情報処理装置接続判断ステップにおいて、新たな他の情報処理装置が接続されていると判断した場合には、新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示ステップと、
を前記情報処理装置に実行させることを特徴とする通信負荷分散プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のノードを用いて通信の負荷分散を行うシステムに関わるものであり、とくにマスターノード、スレーブノードと主従の関係にあるノードを用いて動作するシステムに関わるものである。
【背景技術】
【０００２】
近年、ネットワーク環境において大容量データを通信するようになってきている。そのため、データ通信の負荷を分散して、効率的にデータを通信することが求められてきている。
【０００３】
通信負荷分散と伝送路の冗長化を行うために、例えばホストコンピュータと複数の大容量記憶装置との間に複数のノードを設け、これらのノードを用いて通信負荷分散を実現している。
【０００４】
一般的にはまず、複数のノードにおいて主従の関係を持たせ、マスターノードとスレーブノードを予め設定しておく。そしてマスターノードは他のノードからの指示なしで大容量記憶装置などとデータ通信を行い、スレーブノードはマスターノードからの指示により大容量記憶装置などとデータ通信を行う。これにより複数のノードを用いて、ネットワーク環境における通信の負荷分散を実現する。
【０００５】
図１は、マスターノードとスレーブノードとの組み込み処理を示すシーケンス図である。
【０００６】
マスターノード１とスレーブノード２が予め設定されている場合において、マスターノード１とスレーブノード２を起動すると（ステップＳ１０１、Ｓ１０２）、マスターノード１はスレーブノード２に対して、スレーブノードが起動しているか否かを問い合わせる（ステップＳ１０３）。スレーブノード２は、マスターノード１に対して、起動している旨の応答を返す（ステップＳ１０４）。マスターノード１は、接続されているホストコンピュータ及び大容量記憶装置と、通信可能な状態に設定して、その設定を完了する（ステップＳ１０５、Ｓ１０６）。ここでマスターノード１は、通信可能な状態に設定すると共に、スレーブノード２へ指示を出してスレーブノード２に通信を行わせるマスター権を取得する。
【０００７】
次にスレーブノード２もマスターノード１に対して、マスターノードが起動しているか否かを問い合わせる（ステップＳ１０７）。マスターノード１は、スレーブノード２に対して、ホストコンピュータと大容量記憶装置との通信における負荷分散をするために、マスターノードとスレーブノードとの間で組み込み処理が必要である旨を通知する（ステップＳ１０８）。ここで組み込み処理とは、マスターノードとスレーブノードが、ホストコンピュータと大容量記憶装置と通信可能なようにマスターノードとスレーブノードを設定し、スレーブノードはマスターノードからの指示に基づいて通信するように設定処理することである。スレーブノード２はマスターノード１に対して、組み込み処理を依頼し、マスターノード１とスレーブノード２において組み込み処理を行う（ステップＳ１０９、Ｓ１１０）。マスターノード２は、組み込み処理が完了したときに、組み込み処理完了の旨をスレーブノード２に通知する（ステップＳ１１１）。スレーブノード２は、組み込み処理完了通知を受け取った後、ホストコンピュータ及び大容量記憶装置と、通信可能な状態に設定完了する（ステップＳ１１２）。またスレーブノード２もマスターノード１に対して、マスターノードが起動しているか否かを問い合わせる（ステップＳ１０７）タイミングは、スレーブノード２を起動した直後であっても構わない。
【０００８】
しかしながら、マスターノードとスレーブノードを用いて通信経路を冗長化して通信負荷分散を行う場合に以下の問題がある。
【０００９】
図２は、マスターノードが正常に動作していない場合のシーケンス図である。
【００１０】
スレーブノード２が起動し（ステップＳ２０１）、マスターノード１に対して起動しているか否かを問い合わせる（ステップＳ２０２）。ここでマスターノード１は、起動しておらず、スレーブノード２に対して、起動している旨の応答を返すことができない。
【００１１】
スレーブノード２は、マスターノード１より応答がくるまで所定の時間カウントする。所定時間が経ってもマスターノード１より応答がない場合には、タイムアウトとする（ステップＳ２０３）。
【００１２】
そしてスレーブノードは起動することができずに終了する（ステップＳ２０４）。
【００１３】
スレーブノード２は、マスターノード１の指示がないと動作することができないため、マスターノード１が動作できない場合等には、ホストコンピュータと大容量記憶装置と通信することができず、通信経路を冗長化したことの意味が実質的にない。
【００１４】
図３は、マスターノード１がホストコンピュータと大容量記憶装置などと物理的に接続されていない場合のシーケンス図である。
【００１５】
マスターノード１とスレーブノード２を起動すると（ステップＳ３０１、Ｓ３０２）、スレーブノード２は、マスターノード１に対して、マスターノード１が起動しているか否かを問い合わせる（ステップＳ３０３）。
【００１６】
そしてマスターノード１は、ホストコンピュータや大容量記憶装置と物理的に接続できていない場合に、起動はしているが通信することができないと判断する（ステップＳ３０４）。
【００１７】
マスターノード１は、スレーブノード２に対して、正常動作することができない旨の応答を返す（ステップＳ３０５）。
【００１８】
スレーブノード２は、起動することができずに終了する（ステップＳ３０６）。ここで、マスターノード１もスレーブノード２に対して、スレーブノード２が起動しているか否かを問い合わせるが、ここでは図示するのを省略している。マスターノード１の問い合わせに対するスレーブノード２の応答などに関しても図示するのを省略する。
【００１９】
この場合においてもマスターノード１が通信不可能な状態であるため、スレーブノード２は、ホストコンピュータと大容量記憶装置と通信することができず、通信経路を冗長化したことの意味が実質的にない。
【００２０】
またマスターノード１とスレーブノード２とが組み込み処理を行い、通信負荷分散を構成している場合において、スレーブノードに障害が発生する等してスレーブノード２が通信できなくなる場合にも以下の問題が生じる。
【００２１】
また通信負荷分散と伝送路の冗長化を行うための情報処理装置に関する特許文献として以下のものが存在する。
【特許文献１】特開平２−６５３３５号公報  上記特許文献には、ノードに接続されたリンクの障害を検出した場合、リンクの接続状態を切り替えると共に、隣接するノードへの迂回パステーブルとリンクの使用状態の変化をネットワーク中の全てのノードに通知する。
【００２２】
そして通知を受けたノードは状態変化が起きたリンクが自己の迂回パステーブルに含まれるかを検索し、含まれる場合には、迂回パステーブルのリンクの使用状態を書き替えることによって迂回パステーブル更新ものである。
【発明の開示】
【発明が解決しようとする課題】
【００２３】
しかしながら、上記特許文献１に記載の技術では、以下の問題がある。
【００２４】
つまり、障害が発生したノードがマスターノードである場合に、迂回経路をして設けられているスレーブノードは、迂回パステーブルを更新することにより、通信を行うことができる。しかし、予めノード構成をしているスレーブノードのみが通信を行う経路として動作するため、スレーブノードに通信する負荷がかかる状態となってしまう。
【００２５】
この問題を解決するために、ノードを構成するマスターノード、スレーブノードに障害が発生した場合には、図４に示すようにノード構成の復旧を行っている。
【００２６】
図４は、ノード構成復旧にかかる概念図である。
【００２７】
ここでは、スレーブノードに障害が発生した場合を示すが、マスターノードに障害が発生した場合においても同様の復旧作業を行う。
【００２８】
ノード構成４０１のスレーブノード２に障害などが発生し、ダウンして通信不可能になると、通信負荷分散と経路の冗長構成を保つために保守員などの手によってスレーブノード２０とスレーブノード２を入れ替える。
【００２９】
スレーブノード２０はスレーブノード２とＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）やＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）などが同一のものであって、スレーブノード２と入れ替えてもノード構成４０１が正常に動作するものである。
【００３０】
そしてマスターノード１とスレーブノード２０によってノード構成４０３の負荷分散を構成して、ホストコンピュータと大容量記憶装置と通信を行う。ここでマスターノード１、スレーブノード２、２０に記載の「マスター１」、「スレーブ２」、「スレーブ２０」はそれぞれマスターノード１、スレーブノード２、スレーブノード２０を意味するものである。そしてマスターノード１、スレーブノード２、スレーブノード２０が通信を行うノード構成を通信リストとして記憶していることを示す。
【００３１】
しかしながら、これはスレーブノード２において障害が発生した場合に、保守員があらたなスレーブノードに入れ替えなければならず、煩わしい。
【００３２】
そこで本発明は、マスターノード、スレーブノードに障害が発生した場合であっても、保守員の手を煩わすことなく、ノード構成を新たに構成して通信負荷分散と経路の冗長化を保つことを目的とする。
【課題を解決するための手段】
【００３３】
本発明に係る情報処理装置は、電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、該情報処理装置接続判断手段において、該新たな他の情報処理装置が接続されていると判断した場合には、新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段とから構成されることを特徴とする。
【００３４】
また本発明に係る情報処理装置は、該応答監視手段が、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする。
【００３５】
また本発明に係る情報処理装置は、電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、該他の情報処理装置と該情報処理装置とにおいて、該他の情報処理装置が該情報処理装置へ指示を出して互いに該電子機器と通信を行うことを示す通信リストを格納する格納手段と、該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、該情報処理装置接続判断手段において、新たな他の情報処理装置が接続されていると判断した場合には、新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段と、該情報処理装置が該他の情報処理装置の指示なしで通信し、該他の情報処理装置は通信せず、該新たな他の情報処理装置が通信する旨に該通信リストを更新する通信リスト更新手段とから構成されることを特徴とする。
【００３６】
また本発明に係る通信負荷分散方法は、電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う通信負荷分散方法において、該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続手順と、該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手順と、該応答監視手順において、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手順と、  該応答監視手順において、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断手順と、該情報処理装置接続判断手順において、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手順とから構成されることを特徴とする。
【００３７】
さらに本発明に係る通信負荷分散プログラムは、電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う通信負荷分散プログラムにおいて、該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続ステップと、該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視ステップと、該応答監視ステップにおいて、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御ステップと、該応答監視ステップにおいて、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断ステップと、該情報処理装置接続判断ステップにおいて、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００３８】
本発明によれば、マスターノードに障害が発生した場合であっても、スレーブノードは通信することができ、さらに保守員の手を煩わすことなく、ノード構成を新たに構成して通信負荷分散と経路の冗長化を保つことができる。
【００３９】
またノードを再構成した後、障害が発生したノードが再起動した場合であっても、ホストコンピュータ等と通信することができるノード構成において矛盾を生じずに通信を行うことが可能となる。
【発明を実施するための最良の形態】
【００４０】
図５は、本発明を用いた通信システムに係る概念図である。
【００４１】
本実施例における通信システムは、ホストコンピュータ５０１、５０２、マスターノード５０３、スレーブノード５０４、ＲＡＩＤストレージ５０５、５０６から構成される。
【００４２】
マスターノード５０３、スレーブノード５０４は共にホストコンピュータ５０１、５０２、ＲＡＩＤストレージ５０５、５０６と接続されている。
【００４３】
ＲＡＩＤストレージ５０５、５０６は、それぞれハードディスク５０７〜５０９、５１０〜５１２を有している。図中に記載のＬＵＮは「Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ」の略称であり、それぞれのＲＡＩＤストレージ内におけるハードディスクを識別するものである。
【００４４】
そしてマスターノード５０３、スレーブノード５０４がＲＡＩＤストレージ５０５、５０６とデータのやりとりを行う場合、マスターノード５０３、５０４はハードディスク５０７とハードディスク５１０を１つの仮想的なハードディスク５１３としてみなして通信を行う。
【００４５】
このような構成とすることにより、マスターノード５０３、スレーブノード５０４は、通信するハードディスクが仮想的に統一され、通信を高速に行うことができる。
【００４６】
同様にして、ハードディスク５０８とハードディスク５１１、ハードディスク５０９とハードディスク５１２もそれぞれ１つの仮想的なハードディスクとして構成されるものとする（図示せず）。
【００４７】
マスターノード５０３、スレーブノード５０４によって、通信するノード構成が構成されており、マスターノード５０３が正常に動作できない場合には、スレーブノード５０４がマスターノード５０３の指示なしにホストコンピュータ５０１、５０２、ＲＡＩＤストレージ５０５、５０６と通信することができるように設定処理する。
【００４８】
そしてスレーブノードは、通信負荷分散を保つために、他のノードが接続されていないかを判断する。他のノードがスレーブノード５０４に接続されている場合には、新たにそのノードとノード構成を構成して通信負荷分散を保つ。ここで他のノードは図中に示していない。
【００４９】
図６は、本実施例にかかるノードのハードブロック図である。
【００５０】
ノード６００は、制御部６０１、格納部６０２、送受信部６０３、６０４、接続部６０５から構成されている。
【００５１】
本実施例において、請求項に記載の接続手段における動作は接続部６０５が同等の動作を行う。応答監視手段及び通信制御手段及び情報処理装置接続判断手段及び通信指示手段における動作は、制御部６０１内において行われる動作と同等である。また格納手段は、格納部６０２が同等の動作を行うものとする。
【００５２】
ノード６００は、送受信部６０３を用いてホストコンピュータと接続されており、送受信部６０４を用いて大容量格納装置と接続されている。
【００５３】
そして他のノードと接続部６０５を用いて接続されている。接続部６０５を介して接続されたノードとは、マスター、スレーブの主従関係を有しており、本実施例ではノード６００はスレーブノードであるとする。ここでスレーブノードとは、マスターノードからの指示によって、送受信部６０３に接続されたホストコンピュータ、及び送受信部６０４に接続された大容量記憶装置と送信をするノードのことである。
【００５４】
また本実施例においては、大容量記憶装置と接続する送受信部６０４、他のノードと接続する接続部６０５はそれぞれ１つずつしか記載していないが、これに限定されることはなく、送受信部６０４、接続部６０５は、２つ以上あってもよい。これよりノード６００は、複数の大容量記憶装置、複数のノードと接続することが可能である。
【００５５】
格納部６０２は、通信リストを格納している。ここで通信リストとは、ホストコンピュータと大容量記憶装置と通信するノードが示されているリストのことである。そして通信リストには、通信を行うノードの主従関係も示されており、例えばノード６００がスレーブノード、ノード６００に接続されているノードのうち１つのノードがマスターノードであることが示されている。
【００５６】
本実施例では、通信リストに示されていないノードは、ホストコンピュータと大容量記憶装置と通信することができない構成とする。
【００５７】
また本実施例において、単にマスターノードと呼んだ場合、そのノードは、ノード６００に接続されているノードであって、ノード６００に通信することを指示するノードである。
【００５８】
制御部６０１は、マスターノードに対して、マスターノードが起動しているかを問い合わせる起動問い合わせ通知を行う。ここで制御部６０１はノード６００に複数のノードが接続されている場合には、接続されているノードであって、通信リストに示されている全てのノードに対して起動問い合わせ通知を行うものとする。
【００５９】
そして制御部６０１はマスターノードからの該起動問い合わせ通知に対する応答を監視する。
【００６０】
制御部６０１は予め定められた一定時間、該応答を待つ。制御部６０１は、一定時間経っても該応答が無い場合には、マスターノードからの指示がなくともホストコンピュータ等と通信できるように、マスター権を取得する。ここでマスター権とは、ホストコンピュータ及び大容量記憶装置と通信を行うノード構成（通信リストに示されているノード群）において、他のノードにホストコンピュータ及び大容量記憶装置と通信を行わせるための指示を出すノードであることを示すものである。
【００６１】
また一定時間内に、該応答があった場合は、接続部６０５は引き続きマスターノードから組み込み処理が必要である旨を受ける。
【００６２】
制御部６０１は組み込み処理をマスターノードに依頼し、組み込み処理を行う。組み込み処理が完了した後、接続部６０５はマスターノードから組み込み処理完了通知を受ける。
【００６３】
そして制御部６０１は、ノード６００をホストコンピュータ及び大容量記憶装置と通信可能な状態に設定完了する。
【００６４】
さらに制御部６０１は、一定時間経っても該応答が無い場合には、通信リストに示されていないノードであって、ノード６００に接続されているノードが存在するか否かを判断する。
【００６５】
制御部６０１は、通信リストに示されていないノードが接続されていると判断した場合には、そのノードと組み込み処理を行う。
【００６６】
格納部６０２は、通信リストにおいて、応答がなかった前マスターノードを削除し、ノード６００をマスターノードとし、新たに組み込み処理を行ったノードを追加して、通信リストを更新する。
【００６７】
これにより、ノード６００は、接続されているマスターノードに障害等が発生した場合であっても、ホストコンピュータ等と通信することが可能である。さらに、ノード６００は、新たなノードを通信リストに加えることによって、通信負荷分散を行い、冗長化構成を保つことができる。
【００６８】
図７は、マスターノード７が正常に動作していない場合における本実施例のシーケンス図である。
【００６９】
スレーブノード８が起動し（ステップＳ７０１）、マスターノード７に対して起動しているか否かを問い合わせる（ステップＳ７０２）。
【００７０】
マスターノード７は、障害が発生しておりスレーブノード８に対して起動している旨の応答を返すことができない。
【００７１】
スレーブノード８は、マスターノード７より応答がくるまで所定の時間カウントし、所定時間が経ってもマスターノード７より応答がない場合には、タイムアウトとする（ステップＳ７０３）。
【００７２】
そしてスレーブノード８は、マスター権を取得し、マスターノード７の指示なしにホストコンピュータ、大容量記憶装置と通信できる設定に設定処理して、設定を完了する（ステップＳ７０４、Ｓ７０５）。
【００７３】
スレーブノード８は、マスターノード７が復旧するまでの間、マスターノードとして動作する。スレーブノード８（マスターノードとして動作している。）とノード構成している他のスレーブノードが存在する場合には、該他のスレーブノードに対して指示を出し、通信を行わせる。
【００７４】
マスターノード７が復旧し、マスターノードを起動すると（ステップＳ７０６）、マスターノード７は、スレーブノード８に対して、起動しているか否かを問い合わせる（ステップＳ７０７）。
【００７５】
スレーブノード８は、組み込み処理が必要である旨をマスターノード７に通知する（ステップＳ７０８）。
【００７６】
そしてマスターノード７とスレーブノード８は、組み込み処理を行う（ステップＳ７０９）。
【００７７】
組み込み処理の段階において、マスターノード７はマスター権を取得し、スレーブノード８はマスター権を破棄して、マスターノード７がノード構成しているノードに対して通信を行うことを指示する。
【００７８】
そしてマスターノード７は設定完了する（ステップＳ７１０）。
【００７９】
図８は、マスターノード７がホストコンピュータと大容量記憶装置などと物理的に接続されていない場合における本実施例のシーケンス図である。
【００８０】
マスターノード７とスレーブノード８を起動すると（ステップＳ８０１、Ｓ８０２）、スレーブノード８は、マスターノード７に対して、マスターノード７が起動しているか否かを問い合わせる（ステップＳ８０３）。
【００８１】
マスターノード７は、ホストコンピュータや大容量記憶装置と物理的に接続できておらず、通信できないと判断する（ステップＳ８０４）。
【００８２】
マスターノード７は、スレーブノード２に対して、正常動作することができない旨の応答を返す（ステップＳ８０５）。
【００８３】
スレーブノード８は、マスターノード７が正常動作することができないことを認識すると、マスター権取得予告をマスターノード７に通知する（ステップＳ８０６）。
【００８４】
マスターノード７は、マスター権を取得することを承諾する旨をスレーブノード７へ通知する（ステップＳ８０８）。
【００８５】
そしてスレーブノード８は、マスター権を取得して、マスターノード７からの指示なしでホストコンピュータ等と通信できるように設定処理し、設定を完了する（ステップＳ８０８、Ｓ８０９）。
【００８６】
マスターノード７が復旧し、マスターノードを起動すると（ステップＳ８１０）、マスターノード７は、スレーブノード８に対して、起動しているか否かを問い合わせる（ステップＳ８１１）。スレーブノード８は、組み込み処理が必要である旨をマスターノード７に通知する（ステップＳ８１２）。そしてマスターノード７とスレーブノード８は、組み込み処理を行う（ステップＳ８１３）。組み込み処理の段階において、マスターノード７はマスター権を取得し、スレーブノード８はマスター権を破棄して、マスターノード７がノード構成しているノードに対して通信を行うことを指示する。そしてマスターノード７は設定完了する（ステップＳ８１４）。
【００８７】
図９は、スレーブノードを復旧する場合の本実施例における概念図である。
【００８８】
本実施例においては、スレーブノードに障害が発生した場合を示すが、マスターノードに障害が発生した場合においても同様の復旧作業を行う。
【００８９】
通信をホストコンピュータ等と通信を行うノードは、マスターノード９とスレーブノード１０である。
【００９０】
マスターノード９とスレーブノード１０はそれぞれ通信リストを有しており、マスターノード９とスレーブノード１０を用いてノード構成９０１が構成されていることを示している。
【００９１】
ノード構成９０１のスレーブノード１０に障害が発生し、ダウンして通信不可能になると、マスターノード９はスレーブノード１０を切り離す。
【００９２】
そしてマスターノード９と接続されており、通信に用いられていないノードが存在するか否かを判断する。
【００９３】
マスターノード９は、接続されているノード１１を認識すると、ノード１１を新たなノード構成として組み込み処理を行う。ここでマスターノード９、スレーブノード１０に記載の「マスター９」、「スレーブ１０」はそれぞれマスターノード９、スレーブノード１０を意味するものである。
【００９４】
ノード１１が有する通信リストには、組み込み処理を行われる前においては、ノードを構成しておらず、構成するノードが存在しない旨の「なし」が記載されているとする。
【００９５】
マスターノード９とノード１１は、新たにノード構成９０２を構成する。ノード１１は、スレーブノードとして機能する。以下の説明において、ノード１１をスレーブノード１１と記載する。
【００９６】
マスターノード９とスレーブノード１１が有する通信リストは新たにノード構成を構成するノードがマスターノード９、スレーブノード１１である旨に更新される。
【００９７】
ダウンしたスレーブノード１０が復旧して起動した場合、マスターノード９が有する通信リストは、マスターノード９、スレーブノード１１に更新されているため、スレーブノード１０が通信に関わることを拒否する。
【００９８】
さらにスレーブノード１０は、組み込み処理をマスターノード９に依頼して、ノード構成９０３に加えてもらう処理を行ってもよい。
【００９９】
図１０は、本実施例にかかるフローチャートである。
【０１００】
マスターノード、スレーブノードを起動すると、マスターノードとスレーブノードは、通信負荷分散を行うため、冗長構成を構成する（ステップＳ１００１）。ここで冗長構成とは、上記記載のノード構成を意味するものである。
【０１０１】
ノード構成を構成するノード同士は、ホストコンピュータ等と通信するノードをそれぞれ認識している。またいずれのノードがマスターであり、いずれのノードがスレーブであるかは、予め決められているものとする。
【０１０２】
そしてスレーブノードは、マスターノードが正常に動作しているか否かを判断する（ステップＳ１００２）。
【０１０３】
スレーブノードは、マスターノードが正常に動作していないと判断した場合には、マスター権を取得する（ステップＳ１００３）。
【０１０４】
またスレーブノードは、他にスレーブノードに接続され、ノード構成を構成しているノードが存在する場合には、接続されている全ノードが正常に動作しているか否かを判断する（ステップＳ１００４）。
【０１０５】
ノード構成を構成し、接続されているノードにおいて、正常に動作していないノードがあった場合には、ノード構成を構成していないノードであってスレーブノードに接続されている非常用ノードを新たに追加する（ステップＳ１００５）。そして動作不可能なノードと非常用ノードを入れ替えて冗長構成を再構成し（ステップＳ１００６）、処理を終了する。
【０１０６】
ステップＳ１００２において、マスターノードが正常に動作していると判断した場合においても同様にして、他にスレーブノードに接続され、ノード構成を構成しているノードが存在する場合には、接続されている全ノードが正常に動作しているか否かを判断する（ステップＳ１００４）。
【０１０７】
ノード構成を構成し、接続されているノードにおいて、正常に動作していないノードがあった場合には、ノード構成を構成していないノードであってマスターノードに接続されている非常用ノードを新たに追加する（ステップＳ１００５）。そして動作不可能なノードと非常用ノードを入れ替えて冗長構成を再構成し（ステップＳ１００６）、処理を終了する。
【０１０８】
次に、以上述べた情報処理装置の実施形態から抽出される技術的思想を請求項の記載形式に準じて付記として列挙する。本発明に係る技術的思想は上位概念から下位概念まで、様々なレベルやバリエーションにより把握できるものであり、以下の付記に本発明が限定されるものではない。
【０１０９】
（付記１）  電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、
該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、
該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、
該情報処理装置接続判断手段において、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段と、
から構成されることを特徴とする情報処理装置。
【０１１０】
（付記２）  該応答監視手段が、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする付記１に記載の情報処理装置。
【０１１１】
（付記３）  該通信指示手段が該新たな他の情報処理装置へ該電子機器と通信することを指示した後、該応答監視手段が該他の情報処理装置から該応答があったと判断した場合に、該他の情報処理装置を用いて該電子機器と通信不可能として、応答を拒否する応答拒否手段を有することを特徴とする付記１に記載の情報処理装置。
【０１１２】
（付記４）  電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う情報処理装置において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能な接続手段と、
該他の情報処理装置と該情報処理装置とにおいて、該他の情報処理装置が該情報処理装置へ指示を出して互いに該電子機器と通信を行うことを示す通信リストを格納する格納手段と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手段と、
該応答監視手段が、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手段と、
該応答監視手段が、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手段によって接続されているかを判断する情報処理装置接続判断手段と、
該情報処理装置接続判断手段において、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手段と、
該情報処理装置が該他の情報処理装置の指示なしで通信し、該他の情報処理装置は通信せず、該新たな他の情報処理装置が通信する旨に該通信リストを更新する通信リスト更新手段と、
から構成されることを特徴とする情報処理装置。
【０１１３】
（付記５）  該応答監視手段が、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする付記４に記載の情報処理装置。
【０１１４】
（付記６）  電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う通信負荷分散方法において、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続手順と、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視手順と、
該応答監視手順において、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御手順と、
該応答監視手順において、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断手順と、
該情報処理装置接続判断手順において、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示手順と、
から構成されることを特徴とする通信負荷分散方法。
【０１１５】
（付記８）  該応答監視手順が、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする付記７に記載の通信負荷分散方法。
【０１１６】
（付記９）  電子機器と接続される他の情報処理装置からの指示に従い、該電子機器との間で通信を行う通信負荷分散プログラムにおいて、
該他の情報処理装置と接続し、さらに新たな１または複数の情報処理装置と接続可能とする接続ステップと、
該他の情報処理装置に対して、該他の情報処理装置が起動しているかを問い合わせる起動問い合わせ通知を行い、該他の情報処理装置からの該起動問い合わせ通知に対する応答を監視する応答監視ステップと、
該応答監視ステップにおいて、該応答がないと判断した場合には、該他の情報処理装置からの指示がなくとも該電子機器を通信可能とする通信制御ステップと、
該応答監視ステップにおいて、該応答がないと判断した場合には、新たな他の情報処理装置が該接続手順によって接続されているかを判断する情報処理装置接続判断ステップと、
該情報処理装置接続判断ステップにおいて、新たな他の情報処理装置が接続されていると判断した場合には、該新たな他の情報処理装置へ該電子機器と通信することを指示する通信指示ステップと、
をコンピュータに実行させることを特徴とする通信負荷分散プログラム。
【０１１７】
（付記１０）  該応答監視ステップが、該他の情報処理装置より該応答があった否かを所定時間監視し、該所定時間を過ぎても該応答がない場合には該応答はないと判断することを特徴とする付記９に記載の通信負荷分散プログラム。
【図面の簡単な説明】
【０１１８】
【図１】従来技術におけるマスターノードとスレーブノードとの組み込み処理を示すシーケンス図
【図２】従来技術におけるマスターノードが正常に動作していない場合のシーケンス図
【図３】従来技術におけるマスターノードがホストコンピュータ等と接続されていない場合のシーケンス図
【図４】ノード構成復旧にかかる概念図
【図５】本発明を用いた通信システムにかかる概念図
【図６】本実施例にかかるノードのハードブロック図
【図７】マスターノード７が正常に動作していない場合における本実施例のシーケンス図
【図８】マスターノードがホストコンピュータ等と接続されていない場合における本実施例のシーケンス図
【図９】スレーブノードを復旧する場合の本実施例における概念図
【図１０】本実施例にかかるフローチャート
【符号の説明】
【０１１９】
１…マスターノード
２…スレーブノード
７…マスターノード
８…スレーブノード
９…マスターノード
１０…スレーブノード
１１…ノード
２０…スレーブノード
５０１…ホストコンピュータ
５０２…ホストコンピュータ
５０３…マスターノード
５０４…スレーブノード
５０５…ＲＡＩＤストレージ
５０６…ＲＡＩＤストレージ
５１３…仮想ハードディスク
６００…ノード
６０１…制御部
６０２…格納部
６０３…送受信部
６０４…送受信部
６０５…接続部
【図１】
0004645435.tif 000002
【図２】
0004645435.tif 000003
【図３】
0004645435.tif 000004
【図４】
0004645435.tif 000005
【図５】
0004645435.tif 000006
【図６】
0004645435.tif 000007
【図７】
0004645435.tif 000008
【図８】
0004645435.tif 000009
【図９】
0004645435.tif 000010
【図１０】
0004645435.tif 000011