(57)【要約】  本発明を適用した１システムは、互いに接続された複数の情報処理装置と、複数の情報処理装置の管理に必要な第１の数の管理データを、第１の数以上である第２の数の管理データに分割し、分割した第２の数の管理データを複数の情報処理装置に対してそれぞれ送信する管理装置を有する。
2014103078.tif 000002
【特許請求の範囲】
【請求項１】
互いに接続された複数の情報処理装置と、
前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割し、分割した前記第２の数の管理データを前記複数の情報処理装置に対してそれぞれ送信する管理装置を有することを特徴とする情報処理システム。
【請求項２】
前記管理装置は、
ｅ（ｅは正の整数）ビットである前記第１の数の管理データをｎ分割（ｎは正の整数）したｎ次元ベクトルｖに対して、有限体ＧＦ（２＾ｅ）を掛けたｎ＋ｋ次元ベクトル（ｋは正の整数）であるｕ＝ｖＧの各ベクトル成分を前記第２の数の管理データの各要素とすることを特徴等する請求項１記載の情報処理システム。
【請求項３】
前記管理装置は、
分割した前記第２の数の管理データを前記複数の情報処理装置に対して同時にそれぞれ送信することを特徴とする請求項１又は２記載の情報処理システム。
【請求項４】
前記情報処理システムはさらに、
前記管理装置が分割した前記第２の数の管理データを前記複数の情報処理装置に対してそれぞれ中継する中継装置を有することを特徴とする請求項１〜３のいずれか１項に記載の情報処理システム。
【請求項５】
前記複数の情報処理装置はさらに、
互いに１次元トーラス状又は２次元トーラス状に接続されることを特徴とする請求項１〜４のいずれか１項に記載の情報処理システム。
【請求項６】
互いに接続された複数の情報処理装置と、前記複数の情報処理装置を管理する管理装置とを有する情報処理システムの管理方法において、
前記管理装置が、前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割し、
前記管理装置が、分割した前記第２の数の管理データを前記複数の情報処理装置に対してそれぞれ送信することを特徴とする情報処理システムの管理方法。
【請求項７】
互いに接続された複数の情報処理装置と、前記複数の情報処理装置を管理する管理装置とを有する情報処理システムの管理プログラムにおいて、
前記管理装置に、前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割させ、
前記管理装置に、分割した前記第２の数の管理データを前記複数の情報処理装置に対してそれぞれ送信させることを特徴とする情報処理システムの管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理システムの管理方法および情報処理システムの管理プログラムに関する。
【背景技術】
【０００２】
近年、多数の情報処理装置としてのコンピュータ（以下「計算ノード」）をネットワークに接続し、計算処理（以下「ジョブ」）を複数の計算ノードに分散させて並列に行わせる情報処理システムとしてのコンピュータシステムの需要が高まっている。このようなコンピュータシステムでは、各計算ノードのハードウェア、並びに計算ノード群に処理させるジョブの管理、及び制御に管理用のコンピュータ（以下「管理ノード」）が用いられる。【０００３】
大規模なコンピュータシステムでは、１台の管理ノードにより全てのコンピュータを管理することは、その管理に要する時間が長くなって処理性能を低下させることから、困難である。このため、大規模なコンピュータシステムでは、通常、複数台の管理ノードによる分散処理が採用される。【０００４】
図１は、従来の管理ノードを用いたコンピュータシステムの管理方法を説明する図である。図１において、１は計算ノード、２（２−１、２−２）は管理ノードである。【０００５】
図１に表すように、大規模なコンピュータシステムの場合、管理ノード２は木構造状に階層化される。図１では、管理ノード２−１は、木構造における最上位の管理ノード２であり、その下位の管理ノード２−２を統制する。管理ノード２−２は、その下位の管理ノード２−３を統制する。各管理ノード２−３は、管理対象とする計算ノード１を管理する。上位の管理ノード２（２−１、或いは２−２）によって統制される管理ノード２（２−２及び２−３）は以降「管理サブノード」と表記する。最上位に位置する管理ノード２−１は、以降「最上位管理ノード」と表記する。【０００６】
図１に表すような管理ノード２の階層化では、下位の管理サブノード２を統制する管理ノード２は、各管理サブノード２を介して計算ノード１を間接的に管理する。このため、管理ノード２間の階層関係は、下位の管理サブノード２を統制する管理ノード２と、その管理ノード２が直接、或いは間接的に管理する計算ノード１群との間の包含関係に対応する。また、その階層関係は、最上位管理ノード２−１から各計算ノード１に指示メッセージを配布する経路、及び各計算ノード１から情報を最上位管理ノード２−１に送信する経路に対応する。【０００７】
図１に表すようなコンピュータシステムでは、複数の管理ノード２のいずれか１台ダウンした場合、ダウンした管理ノード２に応じて、管理できなくなる計算ノード１が発生する。そのため、コンピュータシステムの高信頼化には、冗長化が必要である。【０００８】
図１に表すような管理ノード２の階層関係は、固定的な木構造であり、各管理ノード２は、階層関係（木構造）上の位置に応じた固有の役割を行わなくてはならない。一般に、システムの高信頼化には、（ａ）システムとしての機能を維持する、（ｂ）処理中のデータを保全する、という２つの条件が考慮される。この２つの条件を考慮しなければならないこともあり、図１に表すような管理ノード２の階層関係が存在する場合、冗長化は、管理ノード２ごとに行う必要がある。【０００９】
コンピュータシステムでは、上記のように、計算ノード１群に処理させるジョブの管理、及び制御が行われる。条件（ｂ）のデータとしては、ジョブの管理、或いは制御に係わる情報が含まれる。そのような情報が失われた場合、コンピュータシステム全体の運用管理に大きな悪影響を及ぼす。このため、条件（ｂ）も非常に重要である。【００１０】
コンピュータシステムの高信頼化では、多重故障への耐性が必要である。図１に表すような管理ノードの木構造（階層関係）を採用した場合、ｋ（１以上の整数）重故障への耐性には、各管理ノードの多重度を１＋ｋ倍にする必要がある。【００１１】
現在、大規模なコンピュータシステムでも、多重故障への耐性が実現されている。その耐性の実現は、木構造上の各ノード（頂点、或いは節点）でのデータの保全に用いるコンピュータを用意し、そのコンピュータに、複数ノード分のデータを退避させることで行われている。【００１２】
この実現方法では、故障した管理ノード２と代替させるコンピュータの台数を抑えることができる。しかし、データの退避のために、ノード間の通信を行わなければならない。その通信は遅延を発生させる。この遅延は、計算ノード１群の迅速な制御の実行、及び管理ノード２の故障への対応、等を迅速に行ううえでの障害となる。そのため、この実現方法は、通信遅延時間の制約が厳しいコンピュータシステムに採用するのは困難である。【００１３】
上記のように、各管理ノード２は、階層関係（木構造）上の位置に応じた固有の役割を行わなくてはならない。このことから、木構造上のノード毎に、代替用の管理ノード２を用意し、各代替用の管理ノード２にデータを保全させるという実現方法が考えられる。この実現方法は、退避させたデータへのアクセスを行わなくても良いため、通信遅延時間の制約が厳しいコンピュータシステムにも採用することができる。【００１４】
しかし、この実現方法では、木構造全体で管理ノード２を表すノード（頂点、或いは節点）の数がＭであり、その木構造のノードでの負荷分散の多重度をｍ（ｐ）とすると、ｋ重故障への耐性に必要な全ノード数は、Ｍ×（１＋ｋ）により算出される数となる。任意のノードで必要なノード数はｍ（ｐ）×（１＋ｋ）により求められるので、Ｍ＝Σｍ（ｐ）である。【００１５】
この実現方法では、上記のように、ノード数、及び想定するｋの値に応じた数の代替用の管理ノード２を用意しなければならない。大規模なコンピュータシステムでは、ノード数は非常に大きい。そのため、代替用の管理ノード２を非常に多く用意しなければならず、冗長用とする予備システムの資源が膨大となる。膨大な資源の予備システムの存在は、コンピュータシステムの構築コストを上昇させる他に、運用コストも上昇させる。このことから、多重故障への耐性では、予備システムの資源を抑えることも重要と云える。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２００８−１５３７３５号公報
【特許文献２】特開平１０−２１１０３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
１側面では、本発明は、予備システムの資源を抑えつつ、管理用のノードに発生する多重故障に迅速に対応できるようにするための技術を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明を適用した１システムは、互いに接続された複数の情報処理装置と、複数の情報処理装置の管理に必要な第１の数の管理データを、第１の数以上である第２の数の管理データに分割し、分割した第２の数の管理データを複数の情報処理装置に対してそれぞれ送信する管理装置を有する。
【発明の効果】
【００１９】
本発明を適用した１システムでは、予備システムの資源を抑えつつ、管理用のノードに発生する多重故障に迅速に対応することができる。
【図面の簡単な説明】
【００２０】
【図１】従来の管理ノードを用いたコンピュータシステムの管理方法を説明する図である。
【図２】本実施形態による情報処理システム、情報処理システムの管理方法および情報処理システムの管理プログラムを実現させる仕組みを説明する図である。
【図３】本実施形態で用いられる管理ノードを説明する図である。
【図４】管理データに対して行われる操作を説明する図である。
【図５Ａ】管理データに対して行われる操作の詳細を説明する図である（その１）。
【図５Ｂ】管理データに対して行われる操作の詳細を説明する図である（その２）。
【図５Ｃ】管理データに対して行われる操作の詳細を説明する図である（その３）。
【図６】管理データの送信方法を説明する図である。
【図７】管理ノード間の接続関係を説明する図である。
【図８Ａ】送信された消失訂正符号セグメントの確認方法を説明する図である（１次元トーラスを用いた場合）。
【図８Ｂ】送信された消失訂正符号セグメントの確認方法を説明する図である（２次元トーラスを用いた場合）。
【図９】管理データ送信処理のフローチャートである。
【図１０】セグメント受信処理のフローチャートである。
【図１１】セグメント受信／復元処理のフローチャートである。
【図１２】セグメント転送処理のフローチャートである。
【図１３】転送希望通知処理のフローチャートである。
【図１４】データから消失訂正符号セグメントを生成しない場合に適用可能な送信手順の例を表す図である（変形例）。
【図１５】メッセージ受信処理のフローチャートである（変形例）。
【図１６】データの保全方法を説明する図である。
【図１７】他の実施形態を適用したシステム構成例を説明する図である。
【図１８】管理データ復元依頼処理のフローチャートである。
【図１９】管理データ復元処理のフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図２は、本実施形態による情報処理システム、情報処理システムの管理方法および情報処理システムの管理プログラムを実現させる仕組みを説明する図である。図２において、１０は本実施形態による情報処理システムであるコンピュータシステムが備えるコンピュータ１をまとめた管理対象ノード群、２０は管理対象ノード群１０の管理用に設けられた管理機構群である。
【００２２】
管理機構群２０は、複数の管理ノード２１を備えている。各管理ノード２１には、管理操作実行機構２５、及び管理データ保全機構２６が搭載されている。
【００２３】
管理操作実行機構２５は、管理対象ノード群１０の管理用の機能を提供する。その管理用の機能により、各コンピュータ１の起動、停止、実行すべきジョブの指定、等の管理操作が行われる。これら各コンピュータ１の管理操作は、その管理操作の内容を表すメッセージの送信により実現される。そのメッセージは以降「管理操作メッセージ」と表記する。
【００２４】
管理データ保全機構２６は、管理対象ノード群１０の管理に必要なデータ（以降「管理データ」）を保存する機能を提供する。各コンピュータ１から送信される管理データとしては、実行中のジョブを表すデータ、構成部品の状態を表すデータ、等がある。
【００２５】
各管理ノード２１に搭載された管理操作実行機構２５、及び管理データ保全機構２６は、上記のように、管理ノード２１として動作するうえで必要な機能を提供する。それにより、管理対象ノード群１０は、管理機構群２０により管理される。
【００２６】
各管理ノード２１に搭載された管理操作実行機構２５、及び管理データ保全機構２６は、互いに独立して動作する。これは、管理操作実行機構２５、及び管理データ保全機構２６のうちの一方の停止によって他方も停止する可能性をより抑えるためである。各機構２５、及び２６の互いに独立した動作は、その動作に必要なハードウェア群の少なくとも一部を別にすることで可能にすることができる。その互いに独立した動作は、仮想マシンを用いて実現させても良く、各機構２５、及び２６をそれぞれ独立した別の装置とすることで実現させても良い。
【００２７】
図３は、本実施形態で用いられる管理ノードを説明する図である。図３に表すように、管理ノード２１は、管理操作実行機構２５と管理データ保全機構２６が互いに独立して動作する。管理操作実行機構２５には、上記管理操作メッセージの格納に用いられる記憶装置である管理操作メッセージバッファ２５ａが設けられている。管理データ保全機構２６には、管理データキャッシュ２６ａ、及び管理データセグメント保全領域２６ｂが確保されている。管理データキャッシュ２６ａ、及び管理データセグメント保全領域２６ｂは、例えば管理ノード２１に搭載されているメモリ上に確保された記憶領域である。
【００２８】
本実施形態では、各管理操作実行機構２５から他の管理操作実行機構２５への管理操作メッセージの送信は、複数の送信先に対して同時にメッセージの送信を行うマルチキャスト機能を利用し、複数の他の管理操作実行機構２５を対象に行う。そのマルチキャスト機能を利用した管理操作メッセージの送信により、同じ管理操作メッセージを受信した１つ以上の管理操作実行機構２５が正常に動作すれば、管理対象ノード群１０の管理を継続させることができる。そのため、高い信頼性が実現される。また、同じ管理操作メッセージを受信した１つ以上の管理操作実行機構２５が正常に動作すれば良いことから、各管理操作実行機構２５に複数の異なる管理操作メッセージを受信させても良い。それにより、用意すべき管理操作実行機構２５の数も抑えることができる。
【００２９】
一方、各管理データ保全機構２６から他の管理保全機構２６への管理データの送信は、以下のように行う。
【００３０】
図４は、管理データに対して行われる操作を説明する図である。
本実施形態では、図４に表すように、管理データをｎ（ｎは正の整数）個のセグメントに分解し、ｎ個のセグメントからｎ＋ｋ個のセグメントを生成する。ここでのｋ（ｋは正の整数）は、対応可能とする多重故障の数である。このことから、ｎ＋ｋ個のセグメントは、そのなかのｋ個のセグメントが失われても元の管理データを復元可能なセグメントとしている。
【００３１】
このｎ＋ｋ個のセグメントは、例えば以下のようにして生成することができる。図５Ａ〜図５Ｃを参照して具体的に説明する。
【００３２】
先ず、図５Ａに表すように、元データ全体をｎ分割する。このｎ分割は、各セグメントの長さ（データ量）が等しくなるように行う。そのために、元データがｅ（ｅは正の整数）ビットの整数倍でない場合、最後に必要な数の値が０のビットを追加する。追加したビット数は記録しておく。
【００３３】
次にｑ＝２＾ｅとして、図５Ａに表すように、元データを有限体ＧＦ（ｑ）成分のｎ次元ベクトルと見なす。ここでは元データをｖとする。
【００３４】
ＧＦ（ｑ）上の次の条件を満たすｎ行ｎ＋ｋ列の行列を任意に選択する。選択した行列はＧとする。このＧの各列は「コード・セグメント・ベクトル」と呼ぶことにする。
条件１：任意のｎ個の列が線形独立
条件２：最初のｎ個の列がｎ行ｎ列の単位行列
ｕ＝ｖＧとおく。ｖＧは、図５Ｂに表すように、ｖにＧを右からかけて得られるｎ＋ｋ次元ベクトルである。このｎ＋ｋ次元ベクトルのｕが、上記ｎ＋ｋ個のセグメントとなる。
【００３５】
ｕからの元データの復元は、例えば、以下のようにして行うことができる。
ｕのなかで消失していない要素、つまり内容が適切な要素のなかからｎ要素を任意に選択する。選択したｎ要素のベクトルはｗとする。
ｗ＝ｖＰとする。Ｐはｕからｗを得るときと同じ番号の列をＧから選んで得られる行列である。
【００３６】
Ｐの逆行列をＱとすると、ｖ＝ｗＱとなり、Ｑを用いてｖを復元する。ビットを追加して元データを分割していた場合、追加したビット数を考慮して、元データを復元する。
【００３７】
図３に表す管理データキャッシュ２６ａは、管理対象とするコンピュータ１から得られた管理データ、或いは復元された管理データの格納に用いられる。管理データセグメント保全領域２６ｂは、生成したｎ＋ｋ個のセグメント、或いは受信したセグメントの格納に用いられる。図３の３１は、生成または受信したセグメントである。３０は、管理データ別にセグメント３１を格納するために確保される領域（以降「個別保全領域」と表記）である。そのセグメント３１は以降、「消失訂正符号セグメント」と呼ぶことにする。
【００３８】
図６は、管理データの送信方法を説明する図である。
各管理ノード２１は、ＮＩＣ（Network Interface Card）２１１、ＣＰＵ（Central Processing Unit）２１２、及びメモリ２１３を備えている。管理データを送信する管理ノード２１は、上記のように、ｎ＋ｋ個のセグメントを生成し、生成したｎ＋ｋ個のセグメントを個別にそれぞれ異なる管理ノード２１に送信する。
【００３９】
図７は、管理ノード間の接続関係を説明する図である。
図７に表すように、各管理ノード２１は複数の他の管理ノード２１と接続されている。それにより、マルチキャストによる管理操作メッセージの複数の管理ノード２１への送信、および、消失訂正符号セグメント３１の複数の管理ノード２１への送信が可能となっている。
【００４０】
消失訂正符号セグメント３１は、ｋ個までの消失訂正符号セグメント３１が消失しても元の管理データを復元可能なものである。そのため、高い信頼性を確保できる。
【００４１】
各消失訂正符号セグメント３１をそれぞれ異なる管理ノード２１（管理データ保全機構２６）に送信して保存させる場合、図１に表す各管理ノードに必要なデータ全体のコピーを冗長用のノードに保持させる従来の方法と比較して、各消失訂正符号セグメント３１の保存に必要なノード数をより抑えることができる。具体的には、ｋ重故障を想定した冗長ノード数は、従来の方法では１＋ｋとなるが、本実施形態では（１＋ＩＮＴ（ｋ／ｎ））となる。ＩＮＴ（ｋ／ｎ）は、ｋ／ｎの小数点以下を切り上げて整数化した値を表す。
【００４２】
また、マルチキャストによる送受信では、以下のような利点がある。
図１に表すような管理ノードの階層関係で１台の管理ノードのみを通信対象とするユニキャストによる管理データの送信を行わせる場合、大規模なコンピュータシステムでは、木構造における階層の数、すなわちノードの中継段数が多いことから、通信遅延が大きくなる。ノードによる中継は、通信媒体上の伝送時間より２桁程度、大きい遅延を発生させる。また、故障が発生する確率も高くなる。
【００４３】
しかし、マルチキャストを用いた送信では、図７に表すように、階層関係に沿っていない送信を行うことができる。このため、木構造における階層の数、すなわちノードの中継段数をより少なくすることができる。それにより、故障への耐性の向上と共に、通信遅延もより抑えることができる。
【００４４】
図８Ａ及び図８Ｂは、送信された消失訂正符号セグメントの確認方法を説明する図である。図８Ａは、複数のノードを環状に接続した１次元トーラスを用いた場合、図８Ｂはメッシュ状に接続された複数のノードの端辺をそれぞれ接続した２次元トーラスを用いた場合、のものである。
【００４５】
図８Ａでは、１台の管理ノード２１から４台の管理ノード２１に消失訂正符号セグメント３１が送信される場合の例を表している。４台の管理ノード２１は、１次元トーラスを形成し、その１次元トーラスにより隣接する管理ノード２１間で消失訂正符号セグメント３１の送達確認が行われる。また、その管理ノード２１間では、例えば図８Ａに表す矢印に沿って、消失訂正符号セグメント３１の送受信が行われる。消失訂正符号セグメント３１の送受信により、例えば図８Ａの最下端に位置する管理ノード２１に、全ての消失訂正符号セグメント３１が集まる。図８Ｂでは同様にして、最下端、且つ最右端に位置する管理ノード２１に、全ての消失訂正符号セグメント３１が集まる。
【００４６】
送達確認により故障していることが判明した管理ノード２１は、消失訂正符号セグメント３１の収集対象から除外される。しかし、ｋ台の管理ノード２１に故障が発生しても、元の管理データを復元することができる。このことから、消失訂正符号セグメント３１がそれぞれ送信される管理ノード２１は、図１６に表すように、管理データを分散させて保存させる記憶装置として機能させることができる。管理ノード２１を管理データの保存用とすることから、何れかの管理ノード２１の故障にも迅速に対応することができる。
【００４７】
図８Ａ或いは図８Ｂに表すようなトーラスでは、送達確認に伴い、各管理ノード２１にデータが集まる仕組みである。管理ノード２１間の接続関係によっては、１台の管理ノード２１からデータをマルチキャストにより送信すべき全ての管理ノード２１にデータを送信できない場合がありうる。このことから、図８Ａ或いは図８Ｂに表すようなトーラスは、消失訂正符号セグメント３１を直接、送信できない管理ノード２１に必要な消失訂正符号セグメント３１を取得／保存させる目的で用いることもできる。
【００４８】
以降は、管理ノード２１に搭載されたＣＰＵ２１２に着目して、その動作を説明する。その動作は、メモリ２１３に読み出されたプログラムをＣＰＵ２１２が実行することで実現される。メモリ２１３に読み出されるプログラムは、管理ノード２１に搭載された不揮発性の記憶装置に格納されていても良いが、外部から取得しても良い。
【００４９】
図９は、管理データ送信処理のフローチャートである。この管理データ送信処理は、送信対象とする管理データを送信するための処理である。この管理データ送信処理は、例えば、管理対象ノード群１０からの管理データの取得、或いは１つにまとめるべき複数の管理データの復元、等を契機に実行される。
【００５０】
先ず、ＣＰＵ２１２は、管理データをｎ等分してｎ個のセグメントに分解する（Ｓ１）。次にＣＰＵ２１２は、ｎ個のセグメントからｎ＋ｋ個の消失訂正符号セグメント３１を生成し（Ｓ２）、生成した各消失訂正符号セグメント３１にエラー検出訂正符号を付与する（Ｓ３）。その後、ＣＰＵ２１２は、エラー検出訂正符号を付与した消失訂正符号セグメント３１を対応する複数の管理ノード２１に送信する（Ｓ４）。
【００５１】
図１０は、セグメント受信処理のフローチャートである。このセグメント受信処理は、別の管理ノード２１による消失訂正符号セグメント３１の受信のために行われる処理である。それにより、このセグメント受信処理は、消失訂正符号セグメント３１の受信を契機に実行される。
【００５２】
先ず、ＣＰＵ２１２は、ＮＩＣ２１１により受信された消失訂正符号セグメント３１を受け取る（Ｓ１１）。次にＣＰＵ２１２は、受け取った消失訂正符号セグメント３１に付与されているエラー検出訂正コードを用いて、訂正不可能なエラーが発生しているか否か、つまりそのセグメント３１が管理データの復元に利用可能なものか否かを確認するための検査を行う（Ｓ１２）。
【００５３】
その検査を行ったＣＰＵ２１２は、次に、その検査結果が管理データの復元に利用可能となっているか否か判定する（Ｓ１３）。受信した消失訂正符号セグメント３１にエラーが発生していないか、或いはエラーが発生したが訂正可能である場合、Ｓ１３の判定はｙｅｓとなってＳ１４に移行する。受信した消失訂正符号セグメント３１に訂正不可能なエラーが発生していた場合、Ｓ１３の判定はｎｏとなってＳ１５に移行する。
【００５４】
Ｓ１４では、ＣＰＵ２１２は、受信した消失訂正符号セグメント３１を管理データセグメント保全領域２６ｂの対応する個別保全領域３０に格納する。次にＣＰＵ２１２は、他に受信すべき消失訂正符号セグメント３１があるか否か判定する（Ｓ１５）。他に受信すべき消失訂正符号セグメント３１が存在する場合、Ｓ１５の判定はｙｅｓとなってＳ１１に戻り、次の消失訂正符号セグメント３１の受信に備える。一方、他に受信すべき消失訂正符号セグメント３１が存在しない場合、Ｓ１５の判定はｎｏとなり、ここでセグメント受信処理が終了する。
【００５５】
消失訂正符号セグメント３１から管理データの復元を行う可能性のある管理ノード２１では、上記セグメント受信処理に代わり、図１１にフローチャートを表すセグメント受信／復元処理をＣＰＵ２１２が実行する。
【００５６】
図１１のＳ２１〜Ｓ２４の処理内容は、図１０のＳ１１〜Ｓ１４の処理内容と基本的に同じである。このことから、Ｓ２５以降について詳細の説明を行う。
【００５７】
Ｓ２５では、ＣＰＵ２１２は、管理データセグメント保全領域２６ｂを参照し、管理データの復元開始が可能か否か判定する。管理データセグメント保全領域２６ｂの対応する個別保全領域３０に、管理データの復元に必要な数の消失訂正符号セグメント３１が格納されていた場合、Ｓ２５の判定はｙｅｓとなってＳ２６に移行する。必要な数の消失訂正符号セグメント３１が個別保全領域３０に格納されていない場合、Ｓ２５の判定はｎｏとなってＳ２８に移行する。
【００５８】
Ｓ２６では、ＣＰＵ２１２は、管理データの復元開始が必要か否か判定する。自管理ノード２１に、受信した消失訂正符号セグメント３１から管理データの復元を行う役割が割り当てられていた場合、Ｓ２６の判定はｙｅｓとなってＳ２７に移行する。復元を行うべき管理データの消失訂正符号セグメント３１を受信しなかった場合、Ｓ２６の判定はｎｏとなってＳ２８に移行する。
【００５９】
Ｓ２７では、ＣＰＵ２１２は、管理データセグメント保全領域２６ｂの対応する個別保全領域３０に格納された消失訂正符号セグメント３１を用いて、管理データの復元を行う。次にＣＰＵ２１２は、他に受信すべき消失訂正符号セグメント３１があるか否か判定する（Ｓ２８）。他に受信すべき消失訂正符号セグメント３１が存在する場合、Ｓ２８の判定はｙｅｓとなってＳ２１に戻り、次の消失訂正符号セグメント３１の受信に備える。一方、他に受信すべき消失訂正符号セグメント３１が存在しない場合、Ｓ２８の判定はＮｏとなり、ここでセグメント受信／復元処理が終了する。
【００６０】
図１２は、セグメント転送処理のフローチャートである。このセグメント転送処理は、図８Ａ或いは図８Ｂに表すように、同じ管理データから生成された消失訂正符号セグメント３１がマルチキャストされた各管理ノード２１によって実行される処理である。このセグメント転送処理を実行する管理ノード２１は、他の管理ノード２１への送達確認、消失訂正符号セグメント３１の収集を行うことができる。
【００６１】
先ず、ＣＰＵ２１２は、管理データセグメント保全領域２６ｂ（図１２中「受信セグメント領域」と表記）の確認を行い、別の管理ノード２１に転送すべき消失訂正符号セグメント３１、或いは必要な消失訂正符号セグメント３１を特定する（Ｓ３１）。図１２では、消失訂正符号セグメント３１を転送すべき別の管理ノード２１は「隣接ノード」と表記している。以降、この表記を用いる。
【００６２】
次にＣＰＵ２１２は、転送すべき消失訂正符号セグメント３１、或いは必要な消失訂正符号セグメント３１を特定できた場合、特定できた旨を対応する隣接ノードに通知し（Ｓ３２）、隣接ノードに対する通知による返信として転送希望メッセージが受信されるのを待つ（Ｓ３３）。その転送希望メッセージの受信により、Ｓ３４に移行する。
【００６３】
Ｓ３４では、ＣＰＵ２１２は、転送希望メッセージが、消失訂正符号セグメント３１の転送を希望しているものか否か判定する。転送希望メッセージが、転送が必要な内容であった場合、判定はｙｅｓとなってＳ３５に移行する。転送希望メッセージが、転送を希望していない内容であった場合、判定はｎｏとなってＳ３６に移行する。
【００６４】
Ｓ３５では、ＣＰＵ２１２は、希望された消失訂正符号セグメント３１を隣接ノードに転送する。次にＣＰＵ２１２は、他に転送対象となる消失訂正符号セグメント３１が残存しているか否か判定する（Ｓ３６）。少なくとも、管理データの復元が可能になる数の消失訂正符号セグメント３１の転送が完了していない場合、Ｓ３６の判定はｙｅｓとなって上記Ｓ３１に戻る。少なくとも、管理データの復元が可能になる数の消失訂正符号セグメント３１の転送が完了している場合、Ｓ３６の判定はｎｏとなり、ここでセグメント転送処理が終了する。
【００６５】
図１３は、転送希望通知処理のフローチャートである。この転送希望通知処理は、同じ管理データから生成された消失訂正符号セグメント３１がマルチキャストされた各管理ノード２１が、管理データの復元に必要な数の消失訂正符号セグメント３１の収集のために行われる。
【００６６】
先ず、ＣＰＵ２１２は、管理データセグメント保全領域２６ｂ（図１２中「受信セグメント領域」と表記）の確認を行う（Ｓ４１）。次にＣＰＵ２１２は、消失訂正符号セグメント３１の受信（収集）状況をコード化し（Ｓ４２）、生成したコードを隣接ノードに送信することにより、受信状況を通知する（Ｓ４３）。
【００６７】
その後、ＣＰＵ２１２は、隣接ノードから消失訂正符号セグメント３１を受信するのを待つ（Ｓ４４）。消失訂正符号セグメント３１を受信すると、ＣＰＵ２１２は、必要な消失訂正符号セグメント３１が残っているか否か判定する（Ｓ４５）。必要な消失訂正符号セグメント３１が残っている場合、Ｓ４５の判定はｙｅｓとなって上記Ｓ４１に戻る。必要な消失訂正符号セグメント３１が残っていない場合、Ｓ４５の判定はｎｏとなり、ここで転送希望通知処理が終了する。
【００６８】
消失訂正符号セグメント３１の転送が必要な各管理ノード２１が上記の転送希望通知処理をそれぞれ実行することにより、管理データの復元に必要な数の消失訂正可能セグメント３１の収集が行われることとなる。
【００６９】
なお、本実施形態では、管理データを分割して消失訂正符号セグメント３１を生成するが、データ量の比較的に小さいデータを送信する場合、消失訂正符号セグメント３１の生成は行わなくても良い。これは、通信に要する時間がより短くなる、各管理ノード２１の負荷をより抑えられる、といった効果が期待できるからである。これらの効果により、処理がより高速に行えることが期待できる。その場合、管理データは、例えば図１４に表す送信手順でマルチキャスト送信させても良い。
【００７０】
図１４に表す送信手順は、管理データのマルチキャスト送信を専用のノード（再送管理ノード）に行わせることを想定したものである。図１４に表すように、管理ノード２１は、管理データにエラー検出訂正コード（図１４中「エラー検出コード」と表記）を付与し（Ｓ５１）、再送管理ノードに送信する（Ｓ５２）。再送管理ノードは、エラー検出コード、及び管理データを格納したメッセージをマルチキャスト送信する（Ｓ５３）。マルチキャスト送信すべき管理ノード２１は、管理データを受信した管理ノード２１から特定すれば良い。
【００７１】
このようなことから、管理ノード２１（管理操作実行機構２５、管理データ保全機構２６）からのデータのマルチキャスト送信は、必要に応じて行わせるようにしても良い。結果的に、マルチキャスト送信が行われるようにしても良い。
【００７２】
一方、メッセージ（管理データ）を受信した管理ノード２１のＣＰＵ２１２には、例えば図１５に表すようなメッセージ受信処理を行わせれば良い。
【００７３】
このメッセージ受信処理では、先ず、ＣＰＵ２１２は、ＮＩＣ２１１により受信されたメッセージを受け取る（Ｓ６１）。次にＣＰＵ２１２は、受け取ったメッセージ中のエラー検出訂正コードを用いて、エラー（ビット化け）の有無を判定するための計算を行う（Ｓ６２）。その計算によりエラーが無い、或いは発生したエラーは訂正可能と判定したＣＰＵ２１２は、適切なメッセージを受信した旨を表す送達確認を隣接ノードに通知する（Ｓ６３）。
【００７４】
次に、他の実施形態について説明する。
図１７は、他の実施形態を適用したシステム構成例を説明する図である。他の実施形態では、図１７に表すように、ノード間演算装置１７０が追加／配置されている。このノード間演算装置１７０は、各管理ノード２１から消失訂正符号セグメント３１を受信し、管理データの復元を行う。
【００７５】
上記実施形態では、管理データの復元は、管理ノード２１が行う。しかし、管理データ２１による管理データの復元には、プログラムにより、管理ノード２１間の消失訂正符号セグメント３１の転送、演算処理、等を行わなければならず、比較的に長い時間が必要である。これに対し、ノード間演算装置１７０を用いた管理データの復元では、管理ノード２１間の消失訂正符号セグメント３１の転送を不要にすることができる。ノード間演算装置１７０は専用装置として最適化が可能なため、管理データの復元もより高速に行わせることができる。
【００７６】
ノード間演算装置１７０を用いる場合、消失訂正符号セグメント３１を受信した各管理ノード２１のＣＰＵ２１２は、以下のような処理を実行させれば良い。
【００７７】
図１８は、管理データ復元依頼処理のフローチャートである。この管理データ復元依頼処理は、１台の管理ノード２１が、ノード間演算装置１７０に管理データを復元させるために実行される処理である。
【００７８】
先ず、ＣＰＵ２１２は、他の消失訂正符号セグメント３１が受信される各管理ノード２１に、使用するセグメント・コード・ベクトルを同期させる（Ｓ１０１）。次にＣＰＵ２１２は、自管理ノード２１が受信した消失訂正符号セグメント３１に、必要な係数を乗算する（Ｓ１０２）。  
【００７９】
次にＣＰＵ２１２は、他の管理ノード２１に、ノード間演算装置１７０への消失訂正符号セグメント３１（演算（乗算）が行われたもの）の送信を準備させる（Ｓ１０３）。その後、ＣＰＵ２１２は、自管理ノード２１を含む各管理ノード２１に、消失訂正符号セグメント３１をノード間演算装置１７０に送信させ、管理データの復元（演算）の開始を指示する（Ｓ１０４）。管理データ復元依頼処理は、その後、終了する。
【００８０】
図１９は、管理データ復元処理のフローチャートである。この管理データ復元処理は、ノード間演算装置１７０によって実行される。
【００８１】
ノード間演算装置１７０は、先ず、管理データの復元に用いるメモリ領域をゼロクリアする（Ｓ１１１）。次に、ノード間演算装置１７０は、ｎ個のセグメント・コード・ベクトルの組のなかで一次独立なものを選び、選んだ組を割り当てる管理ノード（図１９では「中継ノード」と表記）２１を定める（Ｓ１１２）。
【００８２】
次にノード間演算装置１７０は、定めた管理ノード２１からの演算結果から、選んだ組を用いて管理データを復元するように設定を行う（Ｓ１１３）。その設定を行ったＣＰＵ２１２は、各管理ノード２１から受信する演算結果をメモリ領域に格納する（Ｓ１１４）。
【００８３】
次にＣＰＵ２１２は、復元に必要な数の演算結果を受信したか否か判定する（Ｓ１１５）。復元に必要な数の演算結果を受信した場合、Ｓ１１５の判定はＹｅｓとなり、管理データの復元を行った後、この管理データ復元処理が終了する。復元に必要な数の演算結果を受信していない場合、Ｓ１１５の判定はＮｏとなり、上記Ｓ１１３に戻る。
【図１】
2014103078.tif 000003
【図２】
2014103078.tif 000004
【図３】
2014103078.tif 000005
【図４】
2014103078.tif 000006
【図５Ａ】
2014103078.tif 000007
【図５Ｂ】
2014103078.tif 000008
【図５Ｃ】
2014103078.tif 000009
【図６】
2014103078.tif 000010
【図７】
2014103078.tif 000011
【図８Ａ】
2014103078.tif 000012
【図８Ｂ】
2014103078.tif 000013
【図９】
2014103078.tif 000014
【図１０】
2014103078.tif 000015
【図１１】
2014103078.tif 000016
【図１２】
2014103078.tif 000017
【図１３】
2014103078.tif 000018
【図１４】
2014103078.tif 000019
【図１５】
2014103078.tif 000020
【図１６】
2014103078.tif 000021
【図１７】
2014103078.tif 000022
【図１８】
2014103078.tif 000023
【図１９】
2014103078.tif 000024
【手続補正書】
【提出日】平成28年1月21日(2016.1.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
互いに接続された複数の情報処理装置と、
前記複数の情報処理装置を管理する複数の管理装置と、
を含む、情報処理システムであって、
前記複数の管理装置のうちの第１の管理装置は、前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割し、分割した前記第２の数の管理データのうちの第１の管理データを、前記複数の管理装置のうちの第２の管理装置に送信し、及び、前記第２の数の管理データのうちの第２の管理データを、前記複数の管理装置のうちの第３の管理装置に送信し、
前記第２の管理装置は、前記第３の管理装置に前記第２の管理データを要求して、前記第２の管理データを受信し、
前記第１の数の管理データは、前記複数の情報処理装置から送信されてくる、前記複数の情報処理装置のそれぞれの実行中のジョブを表すデータ、及び構成部品の状態を表すデータを含むことを特徴とする情報処理システム。
【請求項２】
前記第１の管理装置は、
ｅ（ｅは正の整数）ビットである前記第１の数の管理データをｎ分割（ｎは正の整数）したｎ次元ベクトルｖに対して、有限体ＧＦ（２＾ｅ）を掛けたｎ＋ｋ次元ベクトル（ｋは正の整数）であるｕ＝ｖＧの各ベクトル成分を前記第２の数の管理データの各要素とすることを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記第１の管理装置は、
分割した前記第２の数の管理データを前記複数の管理装置に対して同時にそれぞれ送信することを特徴とする請求項１又は２記載の情報処理システム。
【請求項４】
前記情報処理システムはさらに、
前記第１の管理装置が分割した前記第２の数の管理データを前記複数の管理装置に対してそれぞれ中継する中継装置を有することを特徴とする請求項１〜３のいずれか１項に記載の情報処理システム。
【請求項５】
前記複数の管理装置はさらに、
互いに１次元トーラス状又は２次元トーラス状に接続されることを特徴とする請求項１〜４のいずれか１項に記載の情報処理システム。
【請求項６】
互いに接続された複数の情報処理装置と、前記複数の情報処理装置を管理する複数の管理装置とを有する情報処理システムの管理方法において、
前記複数の管理装置のうちの第１の管理装置が、前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割する工程と、
前記第１の管理装置が、分割した前記第２の数の管理データのうちの第１の管理データを、前記複数の管理装置のうちの第２の管理装置に送信し、及び、前記第２の数の管理データのうちの第２の管理データを、前記複数の管理装置のうちの第３の管理装置に送信する工程と、
前記第２の管理装置は、前記第３の管理装置に前記第２の管理データを要求して、前記第２の管理データを受信する工程と、
を含み、
前記第１の数の管理データは、前記複数の情報処理装置から送信されてくる、前記複数の情報処理装置のそれぞれの実行中のジョブを表すデータ、及び構成部品の状態を表すデータを含むことを特徴とする情報処理システムの管理方法。
【請求項７】
互いに接続された複数の情報処理装置と、前記複数の情報処理装置を管理する複数の管理装置とを有する情報処理システムにおいて、前記複数の情報処理装置の管理に必要な第１の数の管理データを、前記第１の数以上である第２の数の管理データに分割し、
分割した前記第２の数の管理データのうちの第１の管理データを、前記複数の管理装置のうちの第２の管理装置に送信し、及び、前記第２の数の管理データのうちの第２の管理データを、前記複数の管理装置のうちの第３の管理装置に送信する、
処理を前記複数の管理装置のうちの第１の管理装置に実行させる管理プログラムであって、
前記第２の管理装置は、前記第３の管理装置に前記第２の管理データを要求して、前記第２の管理データを受信し、
前記第１の数の管理データは、前記複数の情報処理装置から送信されてくる、前記複数の情報処理装置のそれぞれの実行中のジョブを表すデータ、及び構成部品の状態を表すデータを含む、ことを特徴とする管理プログラム。
【国際調査報告】
2014103078.tif 000025
2014103078.tif 000026
2014103078.tif 000027
2014103078.tif 000028