(57)【要約】      （修正有）【課題】センサネットワークでイベント情報を収集、加工する際に、通信トラフィック量の増大を効率的に抑制する。【解決手段】イベントを検知するセンサノードと中継ノードを含む複数ノードが接続されたセンサネットワークからイベントを収集して加工・記憶する際に、ノード間の通信コストをノード間コスト定義情報として管理し、前記イベントの加工処理または記憶処理を行なうモジュールの間で発生するイベントの通信コストをモジュール間通信コスト情報として収集し、前記モジュールをセンサネットワーク上の任意のノードに割り当てて実行させるパターンの候補を配備パターン候補として複数抽出し、各候補についてモジュール間コスト情報とノード間コスト定義情報に基づいて総通信コストを計算し、総通信コストが一番小さい配備パターンを最適パターンに決定し、最適パターンに基づいて前記モジュールを前記ノードに配備する。【選択図】図１２
2015095176.tif 000002
【特許請求の範囲】
【請求項１】
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークからイベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理するコンピュータが実行するイベント収集方法において、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶し、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集し、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出し、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算し、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定し、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する、
各処理を実行するイベント収集方法。
【請求項２】
前記ノード間コスト定義情報の通信コストは単位通信量あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信量である
ことを特徴とする請求項１に記載のイベント収集方法。
【請求項３】
前記ノード間コスト定義情報の通信コストは単位時間あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信の通信時間である
ことを特徴とする請求項１に記載のイベント収集方法。
【請求項４】
前記配備パターン候補の抽出において、前記モジュールの実行先ノードを特定のノードに固定することができることを特徴とする請求項１に記載のイベント収集方法。
【請求項５】
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークと通信する通信部と、
前記イベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する実行部と、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する記憶部と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する収集部と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する抽出部と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する計算部と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する決定部と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する配備部と、
を有する情報処理装置。
【請求項６】
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークからイベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する情報処理システムにおいて、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する記憶部と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する収集部と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する抽出部と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する計算部と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する決定部と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する配備部と、
を有することを特徴とする情報処理システム。
【請求項７】
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークと通信する手順と、
前記イベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する手順と、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する手順と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する手順と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する手順と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する手順と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する手順と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する手順と、
を装置に実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上でのイベント収集方法、情報処理装置、情報処理システム、及び情報処理プログラムに関する。
【背景技術】
【０００２】
実世界の機器・センサ等から情報を自動的に仮想世界（クラウド）に収集して各種サービスに活用するＭ２Ｍ（machine-to-machine）クラウドシステム、センサネットワークシステムが実現され始めている。サービスの例として、機器内蔵センサで検出した機器動作状況の情報をクラウドに収集し、その機器動作情報に基づいて自動的にリモートメンテナンスを行う、あるいは電力センサで検出した機器の使用電力の情報をクラウドに収集し、その使用電力情報に基づいて自動省電力制御を行う等がある。
【０００３】
このようなシステムでは、端末機器やネットワーク上の中継機器（ＧＷ：gateway）の数が増加し、センサから収集しクラウドに送信する詳細なセンサ情報が増加するほど、ネットワーク上を流れるデータ量の削減が望まれる。
【０００４】
かかるセンサネットワークシステムのネットワークトラフィックを抑制するために、センサネットワークの各ノード(機器、ＧＷ、あるいはクラウド)を流れるイベントの発生状況に基づいて、イベント情報を加工処理するモジュールを可能な限り端末機器に近いノードに配備し、イベントをできるだけ端末機器に近いノードで処理し処理済のイベントをクラウドに送信することでネットワークトラフィックを抑制する方法が提案されている（たとえば、特許文献１参照）。この方法では、センサネットワークのノードが追加・削除されるなどネットワークトポロジが変化したことを契機に、各ノードにおける加工処理モジュールが出力するイベントの発生状況を収集し、収集したイベント発生状況に基づいてモジュールを可能な限り端末機器に近いノードに配備・実行するモジュール配備処理が起動される。各ノードが出力するイベント情報について、同じ集約属性値を持つイベント発生ノードが抽出され、同じ集約属性値のすべてのノードを収容する最も下位側のノードに、そのイベント情報を加工処理するモジュールを配備する。また、下位ノードと直近の上位ノードの間のノード負荷とネットワークコスト（通信コスト）をあらかじめ記憶し、モジュールの配備先を決定する際にノード負荷や通信コストを考慮する構成が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−４７９２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した公知方法では、センサネットワークの各ノードを流れるイベントの通信経路は設定として与えられている。ノードの追加、削除等によりネットワークトポロジが変化しても、下位ノードから上位ノードに向かうイベントの収集経路はその都度設定として与えられる必要がある。しかし、センサ内蔵機器の増大に伴ってセンサネットワークのノード数は膨大になる場合があり、膨大な数の相互に通信可能なセンサネットワークの通信経路をネットワークトポロジが変化する度に決定し、生成・設定することは現実的ではない。そこで、個々のノードが相互に通信可能なセンサネットワークにおいて、イベントの加工処理モジュールの実行ノードをイベント収集・加工コストが最小となるよう最適に制御するだけでなく、イベントの通信経路も最適に制御可能な情報収集制御を実現する。
【課題を解決するための手段】
【０００７】
ひとつの態様では、検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークからイベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理するコンピュータが実行するイベント収集方法において、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶し、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集し、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出し、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算し、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定し、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する、
各処理を実行する。
【発明の効果】
【０００８】
上記構成により、センサネットワーク上でイベント情報を収集、加工する際に、通信トラフィック量の増大を効率的に抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態の情報収集制御が適用されるセンサネットワークシステムの図である。
【図２】図１のシステムで用いられるサーバノード（情報収集制御装置）の機能ブロック図である。
【図３】サーバノードで行われる情報収集・加工の例を示す図である。
【図４】サーバノードで定義されるノード間コストの例を示す図である。
【図５】ノード間コストの定義をマトリックス表示した図である。
【図６】図５のマトリックスに基づく最短経路の計算例を示す図である。
【図７】イベント加工処理フローをすべてクラウドで実行するときに発生するイベント加工処理間の通信トラフィック量の収集を示す図である。
【図８】イベント加工処理フローをすべてクラウドで実行したときの総通信コストの計算例を示す図である。
【図９】イベント加工処理フローの一部を中継機器（ＧＷ）で実行するときの総通信コストと、すべての処理をクラウドで実行したときの総通信コストの比較例を示す図である。
【図１０】イベント加工処理モジュールの一部を下位ノードへ分散配備する例を示す図である。
【図１１】イベント加工処理モジュールの配備先を決定するフローチャートである。
【図１２】実施形態の情報収集制御の概要を示す図である。
【図１３】図１のシステムで用いられるセンサノードの機能ブロック図である。
【図１４】図１のシステムで用いられる中継ノードの機能ブロック図である。
【発明を実施するための形態】
【００１０】
図面を参照して良好な実施形態を説明する。図１は、実施形態の情報収集制御が適用されるネットワークシステム１の概略図である。ネットワークシステム１は、センサ等の端末機器２０Ａ，２０Ｂ（適宜、「端末２０」と総称する）と、中継器（ＧＷ）３０1、３０2、３０3（適宜「中継器３０」又は「ＧＷ３０」と総称する）と、サーバノード(クラウド)１００を含む。
【００１１】
ネットワークシステム１は、各ノードが相互に通信可能である。図示の便宜上、端末２０とクラウド１００の間に１階層のＧＷ３０だけが描かれているが、複数のＧＷ３０を取りまとめる上位の中継ノードが配置されていてもよい。
【００１２】
ネットワークシステム１では、端末２０で発生したイベントをサーバノード１００に集約する通信経路はフレキシブルであり、発生したイベントをいずれのＧＷ３０でも収集・加工処理することができる。また、ＧＷ３０間でイベントの処理結果を送受信することも可能である。サーバノード１００は、どのノードでどのイベント加工処理モジュール（サービスを実行するイベント加工処理フローの一部）を実行させると分散配備の効果が最大になるのかを判断して、最適な通信経路でのイベントの転送先ノードを決定する。
【００１３】
ここで、分散配備とは、たとえばクラウド（サーバノード）１００で行われていた一連のイベント処理フローを構成するイベント加工処理Ａ、Ｂ、Ｃに相当する、イベント（たとえば気温センサで検知した気温情報）の収集・加工処理をセンサネットワーク上の各ノードに分散配備して実行させることをいう。後述するように、端末２０は決定された最適な通信経路にしたがって、センサで検知したイベント情報を中継ノードであるＧＷ３０1〜３０3のいずれかに送信し、あるいは、直接クラウド１００に送信する。
【００１４】
図２は、情報収集制御機能を有するサーバノード１００の機能ブロック図である。サーバノード１００は、センサネットワーク上でセンサが検知したイベントをサービスに応じて加工・収集することで、様々なネットワークサービスを提供する。サーバノード１００は、イベント処理部１５１、トラフィック情報管理部１５２、発生イベント情報管理部１５３、ネットワークコスト管理部１５４、モジュール管理部１５５、配備先決定部１１９、配備先情報記憶部１０５、モジュール送信部１０４、及びイベント転送先情報送信部１０６を有する。
【００１５】
イベント処理部１５１は、イベント受信部１０７と、モジュール実行部１０８と、イベント記憶部１０９を含む。イベント受信部１０７は、端末２０やＧＷ３０などの他ノードからイベントを受信する。モジュール実行部１０８は、受信したイベントをイベント記憶部１０９に格納し、イベントの収集・加工処理を実行する。
【００１６】
図３（Ａ）は、モジュール実行部１０８で行なわれるイベント加工処理フローの例を示す。モジュール実行部１０８は、端末２０である気温センサ２０で発生した気温イベント４１を、イベント受信部１０７を介して受け取る。図示の便宜上、単一の気温センサ２０だけが描かれているが、モジュール実行部１０８は複数の気温センサ２０で発生したイベントを受け取る。気温イベント４１は、気温センサ２０が設置された場所を示す場所ＩＤと、その場所が存在する地域を表わす地域ＩＤを含む。また端末ＩＤを含んでもよい。
【００１７】
モジュール実行部１０８は、モジュール５１を実行し、イベント記憶部１０９を参照して同じ場所ＩＤを有する複数の気温センサ２０で得られた気温の平均（場所平均気温）を算出する。「モジュール」はイベントを収集・加工処理するアプリケーションであり、図３（Ｂ）に示すように、モジュールごとに識別子が与えられている。モジュール５１は、処理結果を出力イベント４２として出力する。出力イベント４２は、たとえば場所平均気温イベントである。また、後述するように、出力イベント４２を次のイベント処理モジュールに送信するのに要する通信トラフィック量（実コスト）を、トラフィック情報として出力する。
【００１８】
場所ＩＤごとに算出された出力イベント４２は、モジュール５２に入力される。出力イベント４２は、場所ＩＤと地域ＩＤを有する。モジュール５２は、同じ地域ＩＤを持つ出力イベント４２を収集して、地域平均気温を算出する。算出された地域平均気温は、出力イベント４３としてモジュール５２から出力され、イベント記憶部１０９に格納される。出力イベント４３は、地域ＩＤのみを有する。モジュール５２はまた、出力イベント４３（地域平均気温）をイベント記憶部１０９に送信するのに要する通信トラフィック量（実コスト）を、トラフィック情報として出力する。
【００１９】
図２に戻って、トラフィック情報管理部１５２は、トラフィック情報収集送信部１１０と、トラフィック情報受信部１１１と、トラフィック情報記憶部１１２を含む。トラフィック情報収集送信部１１０は、一連のイベント処理フローを構成する各イベント加工処理間のトラフィック情報を収集する。収集されたトラフィック情報はトラフィック情報受信部１１１により、トラフィック情報記憶部１１２に格納される。トラフィック情報記憶部１１２は、モジュール実行部１０８で実行された処理の出力イベントごとに、トラフィック情報を管理する。
【００２０】
発生イベント情報管理部１５３は、発生イベント情報受信部１１３と発生イベント情報記憶部１１４を含む。発生イベント情報受信部１１３は、気温センサ２０から発生イベント情報を受信する。気温センサ２０における発生イベントは「気温」である。端末２０が電力メータを内蔵する機器の場合は、発生イベントのイベント型は例えば「使用電力」となり、実行するサービスごとに異なる。
【００２１】
発生イベント情報記憶部１１４は、発生イベントに関する情報を格納し、端末２０やＧＷ３０などの各ノードでどのようなイベントが発生しているのかを管理する。端末２０やＧＷ３０の追加、削除等があった場合、発生イベント情報記憶部１１４に格納される発生イベント情報が更新される。発生イベント情報が更新された場合、イベント加工処理間の実コストを表わすトラフィック情報も変わるので、トラフィック情報も更新される。
【００２２】
ネットワークコスト管理部１５４は、ネットワークコスト定義部１１５と、ネットワークコスト記憶部１１６を含む。ネットワークコスト定義部１１５は、ノード間のネットワークコストの定義を受け付ける。ネットワークコスト記憶部１１６は、ネットワークコスト定義部１１５で受け付けたノード間相互のネットワークコスト情報を記憶、保持する。
【００２３】
図４は、ノード間コストの定義の例を示す。ノード間コストは、たとえば単位通信トラフィック量あたりの通信コストである。あるいは単位時間あたりの通信コストであってもよい。図４では、気温センサ２０1〜２０4とクラウド（サーバノード）１００の間に２つのＧＷ３０1、３０2が配置され、ＧＷ３０間の相互通信や、ＧＷ３０とクラウド１００の間の直接通信が可能である。気温センサ２０1と気温センサ２０2は、同じ場所ＩＤが割り当てられた場所の異なる箇所に設置される。気温センサ２０3と気温センサ２０4は、場所ＩＤで特定される場所の異なる箇所に配置されている。各気温センサ２０はいずれのＧＷ３０とも通信可能であり、またクラウド（サーバノード）１００との直接通信が可能である。
【００２４】
図５は、図４のノード間コスト定義をマトリクス１２１で表わした図である。マトリクス１２１は、直接通信が可能なすべてのノード間のネットワークコストを定義している。
【００２５】
図６は、図５のマトリクス１２１を基にして最小コスト経路探索を行った場合のノード間コストをマトリクス１２２で表した図である。マトリクス１２２は、既知のダイクストラ法やベルマン−フォード法を使用して作成することができる。
【００２６】
この例では、端末（気温センサ）２０間では直接通信はできないが、ＧＷ３０を介することによって相互通信が可能である。また、端末（気温センサ）２０とクラウド（サーバノード）１００の間は、直接通信だけではなく、任意のＧＷ３０を介した通信が可能である。最小コスト経路探索を行った結果、ＧＷ３０を介した方が端末−クラウド間の通信コストが低くなる場合は、コストが低い方の経路を選択する。
【００２７】
たとえば、気温センサ３とクラウド１００の間、あるいは気温センサ４とクラウド１００の間は、図５の直接通信ではノード間コストが「１０」である。しかし、ＧＷ-１を介することで、図６に示すようにノード間コストは「６」になる。同様に、ＧＷ-２とクラウドの間の直接通信ではノード間コストは「９」であるが、最小コスト経路探索によりＧＷ-１を介することによって、ノード間コストは「５」になる。
【００２８】
ネットワークコスト定義部１１５は、ネットワークコスト定義をマトリクス１２１の形でネットワークコスト記憶部１０２に格納してもよいし、マトリクス１２２の形で格納してもよい。マトリクス１２１の形で格納する場合は、後述する総通信コストの計算時に、最短経路探索により最適なノード間コストを算出して用いる。
【００２９】
図２に戻って、モジュール管理部１５５は、モジュール登録部１０１と、モジュール定義記憶部１０２と、モジュール記憶部１０３を含む。モジュール登録部１０１は、サーバノード１００が実行するモジュールを登録し、登録したモジュールの定義をモジュール定義記憶部１０２に格納する。モジュール登録部１０１はまた、登録したモジュールをモジュール記憶部１０３に格納する。
【００３０】
モジュール定義記憶部１０２は、図３（Ｂ）に示すモジュール定義テーブル１０２Ｔを有する。モジュールごとに識別子が与えられて、処理ロジックが定義されている。この例では、「場所平均気温」モジュールと「地域平均気温」モジュールのそれぞれについて、入力イベント型、集約属性名前、出力イベント型が定義されている。
【００３１】
配備先決定部１１９は、トラフィック情報、発生イベント情報、ネットワークコスト定義、及びモジュール定義に基づいて、どのイベント加工処理モジュールをどのノードに分散配備するかを決定する。上述のように、ネットワークコスト定義は、すべてのノード間の通信コストを定義している。トラフィック情報は、一連のイベント処理フローを実行したときに発生する各イベント加工処理間で発生するイベントの通信トラフィック量である。
【００３２】
配備先決定部１１９は、以下の手順でモジュールの配備先を決定する。
（１）配備候補の抽出
配備候補決定部１６１は、発生イベント情報とモジュール定義に基づいて、図３（Ａ）のようなイベント処理フローを矛盾なく実行することが可能な配備候補を決定する。発生イベント情報記憶部１１４に格納された発生イベント情報により、どの端末（センサノード）２０でどのイベントが発生しているかが判断される。モジュール定義記憶部１０２に格納されたモジュール定義テーブル１０２Ｔ（図３（Ｂ））を参照して、同じ集約属性名を有するノードが抽出される。あるモジュールの実行について、同じ集約属性名（たとえば場所ＩＤ）を有するすべてのノードを収容する最も下位のノード（ＧＷ３０など）が、そのモジュールの配備候補として抽出される。図４のようなネットワークトポロジの場合、同じ場所ＩＤ（梅田）の気温センサ１、２を収容する最も下位側のノードは、ＧＷ−１でもあり、ＧＷ−２でもある。同様に、同じ場所ＩＤ（難波）の気温センサ３、４を収容する最も下位側のノードは、ＧＷ−１でもあり、ＧＷ−２でもある。
（２）配備候補の総通信コストの計算
総通信コスト計算部１６２は、配備候補のノードにイベント加工処理モジュールを配備して実行した場合の総通信コストを計算する。総通信コストは、ノード間コストにイベント加工処理間の通信トラフィック量を乗算した値（（ノード間コスト）×（実コスト））の総和である。ノード間コストは、ネットワークコスト記憶部１１６に格納されたネットワークコスト定義から取得される。ネットワークコストは、図５のマトリクス１２１、あるいは図６のマトリクス１２２の形で定義される。総通信コストの算出に用いられるノード間コストは、最小コスト経路探索を行った後のノード間コストである。マトリクス１２２から、配備候補ＧＷ−１とＧＷ−２のうち、よりコストの低いＧＷ−１経由の経路でのノード間コストが選択される。イベント加工処理間の実コストは、トラフィック情報記憶部１１２に格納されたトラフィック情報から取得される。総通信コスト計算の詳細は、後述する。
（３）最適な分散配備パターンの決定
最適配備決定部１６３は、総通信コスト計算部１６２で算出された総通信コストと、現在の分散配備パターンにおける総通信コストを比較し、よりコストの小さい配備パターンを最適な分散配備パターンとして決定する。
【００３３】
新たな分散配備パターンが最適パターンとして決定された場合、配備先情報記憶部１０５の情報が更新される。モジュール送信部１０４は決定された分散配備パターンにしたがって、配備候補とされたノードにイベント加工処理モジュールを送信する。イベント転送先情報送信部１０６は、決定された分散配備パターンにしたがって、各ノードにイベント転送先情報を送信する。イベント転送先情報は、各端末２０及び各ＧＷ３０で発生するイベントをどのノードに転送すべきかを示す情報である。
【００３４】
最適配備決定部１６３によって、現在の分散配備パターンが最適パターンとして決定された場合は、現在の分散配備パターンを維持する。
最適な分散配備パターンの決定と配備実行後、さらにコストが最小となる分散配備パターンとするため、上記（１）の処理において異なる配備候補を抽出して、再度最適な分散配備パターンを決定・配備実行しても良い。
これにより、センサネットワークにおいて、ノード間相互のコストに基づいて、総通信コストが最小となる最適な分散配備を実現することができる。
【００３５】
図７は、イベント加工処理間のトラフィック（実コスト）の算出例を示す。ここでは、図３（Ａ）の平均気温の計算を例にとって説明する。まず、平均気温取得フローのすべてをクラウド（サーバノード）１００のモジュール実行部１０８で実行し、そのときに発生する単位時間あたりのイベント間の通信トラフィックをトラフィック情報管理部１５２で収集する。
【００３６】
気温センサ１で発生した気温イベントを、場所平均気温を算出するイベント加工処理のために気温センサ１から場所平均気温モジュール５１へ送信する際に発生する通信トラフィック量は３０である。同様に、気温センサ２、３、４で発生した気温イベントを、場所平均気温を算出するイベント加工処理のために気温センサ２、３、４から場所平均気温モジュール５１へ送信する際に発生する通信トラフィック量は、それぞれ２０、１５、１０である。
【００３７】
モジュール５１で場所ＩＤごとの場所平均気温を求めて、場所平均気温イベントとしてモジュール５２に送出するのに要する通信トラフィック量は、各出力イベントにつき、それぞれ５である。モジュール５２で算出した同一の地域ＩＤごとの地域平均気温をデータベース（イベント記憶部）１０９に送るのに要する通信トラフィック量は５である。
【００３８】
図８は、総通信コストの計算例を示す。コスト比較の開始値として、モジュールのすべてをクラウド１００で実行したときの総通信コストを計算する。この計算は、ノード間のの通信コストと、イベント加工処理間の通信トラフィック（実コスト）の乗算値の総和計算であり、配備先決定部１１９の総通信コスト計算部１６２で実行される。実コストは、図７で計算された各イベント加工処理間の通信トラフィック量を用いる。ノード間コストは、最小コスト経路探索を適用したマトリクス１２２で定義される各センサノード２０とクラウド(サーバノード)１００の間のノード間コストを用いる。
【００３９】
左辺の第１項（３０×４）は、気温センサ１で発生した気温イベントを、最もノード間コストの低い最短経路でクラウド１００に送るのに要するコストである。同様に、第２項（２０×４）、第３項（１５×６）、第４項（１０×６）は、気温センサ２〜４で発生した気温イベントを、それぞれ最もノード間コストの低い最小コスト経路でクラウド１００に送るのに要するコストである。
【００４０】
左辺の第５項（５×０）と第６項（５×０）は、同じクラウド１００内で、モジュール５１の処理結果である場所平均気温イベントをモジュール５２に送信するのに要するコストである。この場合、ノード間コストはゼロとなる。
【００４１】
左辺の第７項（５×０）は、同じクラウド１００内で、モジュール５２の処理結果である地域平均気温イベントをデータベース（イベント記憶部）１０９に送信するのに要するコストである。この場合も、ノード間コストはゼロになる。
【００４２】
すべての項をトータルすると、総通信コストは３５０となる。この総通信コスト値が、コスト比較の開始値となる。
【００４３】
図９は、場所平均気温モジュール５１の配備先候補のノードとしてＧＷ-１を選択した場合の総通信コストの計算を示す。イベント加工処理間の通信トラフィック量は、図７の実コスト値を用いる。
【００４４】
左辺の第１項（３０×１）は、気温センサ１で発生した気温イベントをＧＷ−１へ送信するのに要する通信トラフィク（実コスト）と、最短経路での気温センサ１とＧＷ-１間のノード間コストを乗算したものである。同様に、左辺の第２項（２０×１）、第３項（１５×３）、第４項（１０×３）は、気温センサ２〜４で発生した各気温イベントをＧＷ−１に送信するのに要する実コストと、最小コスト経路でのＧＷ-１との間のノード間コストを乗算したものである。
【００４５】
左辺の第５項（５×３）と第６項（５×３）は、ＧＷ-１で発生した場所平均気温イベントを、最短経路でクラウド１００に送信するのに要するコストである。左辺の第７項は、クラウドに集約された場所平均気温イベントから算出された地域平均気温を、同じクラウド１００内のデータベース１０９に送信するときのコストである。このときのノード間コストはゼロである。
【００４６】
左辺の第１項〜第７項の総和は１７０となる。この値を図８の総通信コストと比較すると、候補先へモジュールの配備を変更したときのコストのほうが小さい。したがって、モジュール５１をＧＷ-１へ分散配備することの効果が見込まれ、配備の実行が決定される。
【００４７】
図１０は、分散配備の実行を示す図である。サーバノード１００のモジュール送信部１０４は、モジュール配備先として決定されたＧＷ−１に対し、場所平均気温モジュール５１を送信する。サーバノード１００のイベント転送先情報送信部１０６は、各気温センサ１〜４に対し、発生した気温イベントをＧＷ−１に送信するように設定要求を送信する。同時に、ＧＷ−１に対して、出力イベントである場所平均気温イベントをクラウド（サーバノード）１００に送信するように設定要求を送信する。
【００４８】
この分散配備が実行されると、以降は、この収集経路でＧＷ−１が気温センサ１〜４で発生した気温イベントを収集し、モジュール５１を実行する。すなわち、同じ集約属性（場所ＩＤ）を有するイベントグループごとに場所平均気温を求め、場所平均気温を出力イベントとしてサーバノード１００に送信する。この結果、ネットワーク全体でみたときに総通信コストが最小となる最適ルートで情報の収集、加工処理を行なうことができる。
【００４９】
図１０では、ＧＷ-１にモジュール５１を配備し、サーバノード（クラウド）１００にモジュール５２を配備した例を示したが、この例に限定されない。ネットワークトポロジ（ノード間コスト）とイベント加工処理間の実コストに応じて、モジュール５１とモジュール５２の両方をいずれかのＧＷ３０に配備する、あるいは、モジュール５１をＧＷ-１に配備しモジュール５２をＧＷ-２に配備することもできる。また、モジュール５１をＧＷ-１又はＧＷ-２に配備し、モジュール５２をＧＷ-１、ＧＷ-２とクラウド１００の間に配置された図示しない上位ノードに配備することもできる。
【００５０】
図１１は、実施形態の情報収集制御のフローチャートである。まず、任意のイベントについて、モジュール記憶部１０３のすべてのモジュールをクラウド（サーバノード）１００に配備する（Ｓ１１）。イベント転送先情報送信部１０６は、端末（気温センサ）２０に対して、当該イベントのすべてのモジュールへの入力イベントをクラウド（サーバノード）１００に送信するように設定要求を送信する（Ｓ１２）。その後、当該イベントについて発生イベント情報記憶部１１４の更新を待機する（Ｓ１３）。発生イベント情報記憶部１１４が更新される場合とは、たとえば、当該イベントについて新たに端末（気温イベントの場合は気温センサ）２０や中継器（ＧＷ）３０が設置される場合や削除される場合、新たに発生イベント（たとえば湿度イベント）が追加される場合、などである。
【００５１】
また、トラフィック情報記憶部１１２の更新を待機する（Ｓ１４）。上述のように、トラフィック情報はイベント加工処理間でかかる通信トラフィック量である。あるイベントについてノードから単位時間あたりに出力されるデータ量は、ノードの能力、イベント処理内容等によって異なる。特定のイベントについて端末や中継器が追加、削除される場合や、新たなイベントが追加される場合は、イベント加工処理間のトラフィック情報の内容が変更される。
【００５２】
発生イベント情報記憶部１１４とトラフィック情報記憶部１１２が更新されると、現在の配備状態での総通信コストを計算する（Ｓ１５）。
【００５３】
次に、更新された発生イベント情報に基づいて、定義された処理フローをノード間で矛盾なく実行することのできる配備候補を抽出する（Ｓ１６）。配備候補の抽出は、一例として、フルメッシュ接続のネットワークシステム１において、同じ集約属性値を有するイベント発生ノードをすべて収容することのできる最も下位側のノードを検索して行う。
【００５４】
次に、配備候補における最短経路での総通信コストを計算し（Ｓ１７）、現在の配備での総通信コストと比較する（Ｓ１８）。配備候補の総通信コストが現在の配備での総通信コストと同じかそれより大きい場合は、Ｓ１６に戻って、次の配備パターン候補を抽出する。配備候補の総通信コストが現在の配備での総通信コストよりも小さい場合は、分散配備によるトラフィック軽減効果が見込まれるので、分散配備を実行する。すなわち、抽出された配備パターンにしたがって、モジュールを各ノードに配備し（Ｓ１９）、各ノードに対して、出力イベントの送信先を通知する（Ｓ２０）。その後、Ｓ１３に戻って発生イベント情報記憶部１１４の更新を待機する。
【００５５】
この方法によると、フルメッシュ接続のネットワークで、総通信コストが最小となる最適な分散配備を実現することができる。
【００５６】
上述した実施例ではサーバノード（クラウド）１００に情報収集制御（モジュール分散配備制御）の機能を持たせたが、この制御機能を中継器（ＧＷ）３０に持たせてもよい。この場合、配備先決定部１１９の機能をＧＷ３０に持たせ、サーバノード１００のトラフィック情報管理部１５２が管理するトラフィック情報と、ネットワークコスト定義部１１５が有するネットワークコスト定義を参照して、配備先候補と最適配備を決定させる構成としてもよい。
【００５７】
また、モジュールの登録、管理機能（モジュール管理部１５５）はサーバノード１００に維持しておき、ＧＷ３０からサーバノード１００に対して、決定した配備先へのモジュールの送信を要求する構成としてもよい。
【００５８】
図１２は、配備パターンの例を示す。ＧＷ-１とＧＷ-２を含むネットワークにおいて、モジュールの配備候補として、処理A_1をＧＷ-１、処理A_2をＧＷ-２、処理B_1をＧＷ-２、処理C_1をＧＷ-１で行なう配備パターンが抽出されたとする（Ｓ１６）。この場合、最短経路（最もモード間コストが低い経路）で、現在の配備パターンと、候補の配備パターンの総通信コストを計算する（Ｓ１５、Ｓ１７）。両者を比較して総通信コストの小さいほうの配備パターンを選択する（Ｓ１８）。これにより、メッシュネットワークで情報収集処理を行う場合のトラフィック抑制効果を最大限にすることができる。
【００５９】
図１３は端末２０の概略構成図である。センサ情報受信部２１は、端末２０に内蔵されたセンサデバイスからセンサ情報を受信する。センサデバイスが温度センサである場合は温度情報を受信する。モジュール受信部２２は、サーバノード１００からモジュールを受信する。モジュール受信部２２の出力はモジュール実行部２３の入力に接続される。モジュール実行部２２は、受信したモジュールを実行して出力イベントを生成する。モジュールが、端末２０で検知される気温の一日の平均気温を計算するアプリケーションである場合、センサ情報受信部２１から供給される温度情報を加工処理して、一日の平均気温を出力イベントとして出力する。モジュールが端末２０に配備されていない場合は、センサ情報受信部２１の出力はそのままイベント送信部２５に接続される。
【００６０】
イベント転送先情報受信部２４は、端末２０で発生するイベントを転送すべき転送先ノードの情報を受信し、イベント送信部２５に設定する。イベント送信部２５は、転送先情報に基づいて発生したイベントを送信する。
【００６１】
発生イベント情報送信部２６は、モジュール実行部２３への入力イベントや、モジュール実行部２３の処理結果である出力イベント情報を収集し、サーバノード１００に送信する。トラフィック情報収集送信部２７は、モジュール実行部２３の処理結果である出力イベントのトラフィクを収集し、サーバノード１００のトラフィック受信部１１１に送信する。
【００６２】
図１４は、中継器（ＧＷ）３０の概略構成図である。イベント受信部３１は、下位ノードである端末２０や他のＧＷ３０からイベントを受信する。モジュール受信部３２は、サーバノード１００からモジュールを受信し、受信したモジュールをモジュール実行部３３へ出力する。
【００６３】
モジュール実行部３３は、配備されたモジュールを実行し、処理結果を出力イベントとしてイベント送信部３５に出力する。モジュールが配備されていない場合は、イベント受信部３１で受信したイベントをそのままイベント送信部３５に出力する。
【００６４】
イベント転送先情報受信部２４は、イベント受信部３１で受信したイベントやモジュール実行部３３から出力された出力イベントを転送すべき転送先ノードの情報を受信し、イベント送信部３５に設定する。イベント送信部３５は、転送先情報に基づいて受信したイベントや発生した出力イベントを送信する。
【００６５】
発生イベント情報送信部３６は、モジュール実行部３３への入力イベントや、モジュール実行部３３の処理結果である出力イベント情報を収集し、サーバノード１００に送信する。トラフィック情報収集送信部３７は、モジュール実行部３３の処理結果である出力イベントのトラフィクを収集し、サーバノード１００のトラフィック受信部１１１に送信する。
【００６６】
このように、実施形態では、メッシュネットワークを構成するすべてのノード間の通信コスト（ノード間コスト）と、一連のイベント処理フローを構成する各イベント加工処理間に要する通信トラフィック（実コスト）と、をコスト計算の基礎とし、最短経路を採用したときの総通信コストを計算する。現状のモジュール配備パターンでの総通信コストと、一部の処理（モジュール）を配備先候補に移管したときの総通信コストを比較することで、分散配備の実行の要否を判断する。この構成により、最短経路探索を適用して最小コストで選択された他ノードにモジュールが分散配備され、トラフィックの増大を抑制することができる。
【００６７】
上述した制御処理は、サーバノード１００で行なってもよいし、ＧＷ３０で行なってもよい。制御処理は制御処理プログラムによって実行されてもよい。この場合、制御処理プログラムは、
(a)検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークと通信する手順と、
(b)前記イベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する手順と、
(c)前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する手順と、
(d)前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する手順と、
(e)前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する手順と、
(f)前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する手順と、
(g)前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する手順と、
(h)前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する手順と、
を制御装置に実行させる。
【００６８】
以上の説明に対し、以下の付記を提示する。
（付記１）
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークからイベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理するコンピュータが実行するイベント収集方法において、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶し、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集し、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出し、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算し、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定し、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する、
各処理を実行するイベント収集方法。
（付記２）
前記ノード間コスト定義情報の通信コストは単位通信量あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信量である
ことを特徴とする付記１に記載のイベント収集方法。
（付記３）
前記ノード間コスト定義情報の通信コストは単位時間あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信の通信時間である
ことを特徴とする付記１に記載のイベント収集方法。
（付記４）
前記配備パターン候補の抽出において、前記モジュールの実行先ノードを特定のノードに固定することができることを特徴とする付記１に記載のイベント収集方法。
（付記５）
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークと通信する通信部と、
前記イベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する実行部と、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する記憶部と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する収集部と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する抽出部と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する計算部と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する決定部と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する配備部と、
を有する情報処理装置。
（付記６）
前記ノード間コスト定義情報の通信コストは単位通信量あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信量である
ことを特徴とする付記５に記載の情報処理装置。
（付記７）
前記ノード間コスト定義情報の通信コストは単位時間あたりのコストであり、
前記モジュール間コスト情報の通信コストは前記モジュール間で発生する通信の通信時間である
ことを特徴とする付記５に記載の情報処理装置。
（付記８）
前記抽出部は、前記モジュールの実行先ノードを特定のノードに固定することができることを特徴とする付記５に記載の情報処理装置。
（付記９）
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークからイベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する情報処理システムにおいて、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する記憶部と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する収集部と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する抽出部と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する計算部と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する決定部と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する配備部と、
を有することを特徴とする情報処理システム。
（付記１０）
検知したイベントを送信するセンサノードと、前記イベントを中継する中間ノードと、を含む複数のノードが接続されたセンサネットワークと通信する手順と、
前記イベントを収集し、前記イベントを収集する過程で当該イベントに対して加工処理、あるいは記憶処理を実行する手順と、
前記センサネットワークのノード間で発生する通信の送信元ノードを識別する送信ノード識別子と、受信先ノードを識別する受信ノード識別子と、送信元ノードと受信先ノードの間の通信コストとを関連付けて管理するノード間コスト定義情報を記憶する手順と、
前記イベントの加工処理、あるいは記憶処理を実行し、前記加工処理、あるいは記憶処理するモジュールの間で発生するイベントの送信元モジュールを識別する送信モジュール識別子と、受信先モジュールを識別する受信モジュール識別子と、当該発生イベントの通信コストとを関連付けて管理するモジュール間コスト情報を収集する手順と、
前記イベントの加工処理、あるいは記憶処理するモジュールを、前記センサネットワークを構成する任意のノードに割り当てて実行するパターンの候補を、前記モジュールを識別するモジュール識別子と、当該モジュールの実行先ノードを識別するノード識別子とを関連付けて管理する配備パターン候補として複数抽出する手順と、
前記複数抽出した配備パターン候補のそれぞれについて、モジュール間コスト情報とノード間コスト情報に基づいて総通信コストを計算する手順と、
前記計算した総通信コストのうち一番小さい総通信コストの配備パターンを最適な配備パターンとして決定する手順と、
前記決定した配備パターンに基づいて前記モジュールを前記ノードに配備する手順と、
を装置に実行させる情報処理プログラム。
【符号の説明】
【００６９】
１  ネットワークシステム
２０  端末機器（気温センサ又はセンサノード）
３０  中継器（ゲートウェイ）
４１、４２、４３  出力イベント
５１、５２  モジュール
１００  サーバノード
１０４  モジュール送信部
１０５  配備先情報記憶部
１０６  イベント転送先情報送信部
１１９  配備先決定部
１５１  イベント処理部
１５２  トラフィック情報管理部
１５３  発生イベント情報管理部
１５４  ネットワークコスト管理部
１５５  モジュール管理部
１６１  配備候補決定部
１６２  総通信コスト計算部
１６３  最適配備決定部（最適パターン決定部）
【図１】
2015095176.tif 000003
【図２】
2015095176.tif 000004
【図３】
2015095176.tif 000005
【図４】
2015095176.tif 000006
【図５】
2015095176.tif 000007
【図６】
2015095176.tif 000008
【図７】
2015095176.tif 000009
【図８】
2015095176.tif 000010
【図９】
2015095176.tif 000011
【図１０】
2015095176.tif 000012
【図１１】
2015095176.tif 000013
【図１２】
2015095176.tif 000014
【図１３】
2015095176.tif 000015
【図１４】
2015095176.tif 000016