(57)【要約】  中継装置（２１０）は、往路メッセージを送信した送受信装置のアドレスと、送受信装置において往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路メッセージ受信部（２１ｄｂ）を備える。また、中継装置（２１０）は、往路メッセージのリストが追加された復路メッセージを受信する復路メッセージ受信部（２１ｒｂ）を備える。さらに、また、中継装置（２１０）は、受信した復路メッセージのリストに含まれるアドレスとポート番号との内で、送受信装置に対応する所定アドレスと、送受信装置で実行されたプログラムが通信に用いたポート番号と、に基づいて復路メッセージを送信する復路メッセージ送信部（２１ｒｆ）を備える。
2013114670.tif 000002
【特許請求の範囲】
【請求項１】
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・上記送受信装置に割り当てられている自身のアドレスと、当該送受信装置において上記往路メッセージの送信を行うプログラムが通信に用いるポート番号
と、が追加されたリストを含む第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする通信システム。
【請求項２】
上記初段中継装置と上記最終段中継装置との間の少なくとも１つの中段中継装置で更に構成され、
（５）．上記中段中継装置は、
・上記第２の往路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した上記第２の往路メッセージのリストに当該中段中継装置自身のアドレスを追加するアドレス追加器と、
・上記アドレス追加器で上記アドレスが追加された上記第２の往路メッセージを送信する第４の送信器と、を備え、
上記中段中継装置の第３の受信器は、上記復路メッセージを受信し、
上記中段中継装置の第４の送信器は、上記第３の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する装置に対応する所定アドレスに基づいて、上記復路メッセージを送信し、
上記初段中継装置の第１の受信器は、上記往路において上記送受信装置を起点として当該初段中継装置よりも後段に位置する中段中継装置器から復路メッセージを受信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項３】
上記送受信装置は、上記初段中継装置から復路メッセージを受信する第４の受信器、を更に備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項４】
上記初段中継装置及び上記中段中継装置の少なくとも１つは、上記受信した上記復路メッセージのリストに含まれる自身のアドレスを削除するアドレス削除器、を更に備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項５】
上記初段中継装置の第２のメッセージ生成器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記初段中継装置は、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該初段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記初段中継装置の第２の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項６】
上記中段中継装置のアドレス追加器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記中段中継装置は、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該中段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記中段中継装置の第４の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項７】
上記初段中継装置の第２のメッセージ生成器は、上記第１の受信器にて受信された第１の往路メッセージに含まれているリストに、当該初段中継装置に割り当てられている自身のアドレスに加えて、更に当該初段中継装置において上記第１の往路メッセージの受信を行うプログラムが通信に用いるポート番号を追加することで、上記第２の往路メッセージを生成し、
上記中段中継装置の第４の送信器は、上記第３の受信器が上記復路メッセージを受信すると、上記受信した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該中段中継装置の前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置で実行された上記プログラムが通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項８】
上記中段中継装置のアドレス追加器は、上記第３の受信器にて受信された第２の往路メッセージに含まれているリストに、当該中段中継装置に割り当てられている自身のアドレスに加えて、更に当該中段中継装置において上記第２の往路メッセージの受信を行うプログラムが通信に用いるポート番号を追加し、
上記最終段中継装置の第３の送信器は、上記生成した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該最終段中継装置の前段に位置する初段中継装置若しくは中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは中段中継装置で実行された上記プログラムが通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項９】
３つ以上の上記中段中継装置で少なくとも構成され、
上記中段中継装置は、
・上記最終段中継装置に割り当てられたアドレスと、上記最終段中継装置へ上記第２の往路メッセージを最終的に送信するために上記第２の往路メッセージを送信する送信先の候補となる上記３つ以上の中段中継装置の１つに割り当てられたアドレスと、を少なくとも２つ記憶したテーブルを記憶する記憶部、をさらに備え、
上記中段中継装置の特定器は、上記記憶部に記憶されたテーブルから、上記最終段中継装置に割り当てられたアドレスに対応付けられた２以上のアドレスを特定し、
上記中段中継装置の第４の送信器は、上記特定器で特定された２以上のアドレスのうち１つを上記送信先に割り当てられたアドレスとして指定した上記第２の往路メッセージの送信が失敗すると、上記検索された２以上のアドレスのうち、他の１つを上記送信先に割り当てられたアドレスとして指定して、上記第２の往路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項１０】
上記送受信装置は、上記第１の送信器が送信する上記第１の往路データに含まれるデータのダイジェストを生成する第１のダイジェスト生成器、を更に備え、
上記最終段中継装置は、上記第２の受信器で受信された第２の往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器、を更に備え、
上記最終段中継装置の第３のメッセージ生成器は、上記第２のダイジェスト生成器で生成されたダイジェストを追加された上記復路メッセージを生成し、
上記最終段中継装置の第３の送信器は、上記第３のメッセージ生成器で生成された復路メッセージを送信し、
上記送受信装置は、上記第４の受信器で受信された復路メッセージに含まれるダイジェストと、当該送受信装置の第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記第１の往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器、を更に備えた、
ことを特徴とする上記請求項３記載の通信システム。
【請求項１１】
複数の上記送受信装置で少なくとも構成され、
上記複数の送受信装置は、互いに異なる暗号鍵を用いて上記第１のメッセージ生成器で生成された第１の往路メッセージを暗号化する暗号化器、をそれぞれ更に備え、
上記複数の送受信装置がそれぞれ備える第１の送信器は、上記それぞれの暗号化器で暗号化された第１の往路メッセージを送信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項１２】
上記最終段中継装置は、上記第２の往路メッセージに含まれるイベントデータを、上記送受信装置を管理する管理サーバに集積する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項１３】
上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御装置、で更に構成され、
上記制御装置は、
・上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上から、動作状態を報告するステータスレポートを受信する第５の受信器と、
・上記第５の受信器で受信したステータスレポートに基づいて、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上に障害が生じたか否かを判別する障害発生判別器と、
・上記障害発生判別器で障害が生じたと判別した装置との通信を回復するように、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御器と、を備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項１４】
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする通信システム。
【請求項１５】
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成器と、
・上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記往路メッセージを受信する第１の受信器と、
・上記第１の受信器で受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記往路メッセージを受信する第２の受信器と、
・上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器と、
・上記第２のダイジェスト生成器で生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．上記送受信装置は、
・上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器と、を更に備えた、
ことを特徴とする通信システム。
【請求項１６】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする中継装置。
【請求項１７】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
第１の往路メッセージを送受信装置から受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする中継装置。
【請求項１８】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラム。
【請求項１９】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
第１の往路メッセージを送受信装置から受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラム。
【請求項２０】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２１】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
第１の往路メッセージを送受信装置から受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２２】
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、上記送受信装置に割り当てられている自身のアドレスが追加されたリストと、当該送受信装置において上記往路メッセージの送信を行うプログラムが通信に用いるポート番号と、を含む第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置が、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）． 
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする通信方法。
【請求項２３】
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置が、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする通信方法。
【請求項２４】
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成ステップと、
・上記送受信装置が、上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成ステップと、
・上記最終段中継装置が、上記第２のダイジェスト生成ステップで生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記送受信装置が、上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信ステップと、
・上記送受信装置が、上記第３の受信ステップで受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成ステップで生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別ステップと、を有する、
ことを特徴とする通信方法。
【請求項２５】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする中継方法。
【請求項２６】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
第１の往路メッセージを送受信装置から受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム及び中継装置、中継プログラム、中継プログラムを記録したコンピュータ読み取り可能な記録媒体、並びに通信方法及び中継方法に関する。
【背景技術】
【０００２】
従来から、複数の転送要求を発行するマスタ装置と、転送要求に対する応答信号を出力する複数のスレーブ装置と、が接続されるデータ転送装置が知られている（例えば、特許文献１）。このデータ転送装置は、スレーブ装置毎に用意されたカウンタを、スレーブ装置からの応答信号を入力するとカウントアップし、データ転送完了信号を入力するとカウントダウンする。また、このデータ転送装置は、当該複数の転送要求カウンタに基づいて選択したスレーブ装置とマスタ装置とをデータ転送可能とする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２４９６６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、現在においては複数の中継装置で構成されているネットワークが利用されることが多い。中継装置が複数になることで、データの中継回数が増加し、通信コストが増加するという問題が発生してきた。しかしながら特許文献１の技術では、メッセージなどのデータの中継回数が増加することによる通信コストの増加という問題については、十分に検討されていない。【０００５】
本発明は、このような点に鑑みてなされたものであり、その目的とするところは、メッセージなどのデータの中継回数が増加しても、通信コストの増加を抑制できる通信システム及び中継装置、中継プログラム、中継プログラムを記録したコンピュータ読み取り可能な記録媒体、並びに通信方法及び中継方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の第１の観点に係る通信システムは、
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・上記送受信装置に割り当てられている自身のアドレスと、当該送受信装置において上記往路メッセージの送信を行うプログラムが通信に用いるポート番号
と、が追加されたリストを含む第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする。【０００７】
また、第１の観点に係る通信システムにおいて、
上記初段中継装置と上記最終段中継装置との間の少なくとも１つの中段中継装置で更に構成され、
（５）．上記中段中継装置は、
・上記第２の往路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した上記第２の往路メッセージのリストに当該中段中継装置自身のアドレスを追加するアドレス追加器と、
・上記アドレス追加器で上記アドレスが追加された上記第２の往路メッセージを送信する第４の送信器と、を備え、
上記中段中継装置の第３の受信器は、上記復路メッセージを受信し、
上記中段中継装置の第４の送信器は、上記第３の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する装置に対応する所定アドレスに基づいて、上記復路メッセージを送信し、
上記初段中継装置の第１の受信器は、上記往路において上記送受信装置を起点として当該初段中継装置よりも後段に位置する中段中継装置器から復路メッセージを受信する、
としても良い。【０００８】
さらに、第１の観点に係る通信システムにおいて、
上記送受信装置は、上記初段中継装置から復路メッセージを受信する第４の受信器、を更に備えた、
としても良い。【０００９】
また、第１の観点に係る通信システムにおいて、
上記初段中継装置及び上記中段中継装置の少なくとも１つは、上記受信した上記復路メッセージのリストに含まれる自身のアドレスを削除するアドレス削除器、を更に備えた、
としても良い。【００１０】
さらにまた、第１の観点に係る通信システムにおいて、
上記初段中継装置の第２のメッセージ生成器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記初段中継装置は、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該初段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記初段中継装置の第２の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
としても良い。【００１１】
また、第１の観点に係る通信システムにおいて、
上記中段中継装置のアドレス追加器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記中段中継装置は、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該中段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記中段中継装置の第４の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
としても良い。【００１２】
さらにまた、第１の観点に係る通信システムにおいて、
上記初段中継装置の第２のメッセージ生成器は、上記第１の受信器にて受信された第１の往路メッセージに含まれているリストに、当該初段中継装置に割り当てられている自身のアドレスに加えて、更に当該初段中継装置において上記第１の往路メッセージの受信を行うプログラムが通信に用いるポート番号を追加することで、上記第２の往路メッセージを生成し、
上記中段中継装置の第４の送信器は、上記第３の受信器が上記復路メッセージを受信すると、上記受信した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該中段中継装置の前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置で実行された上記プログラムが通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
としても良い。【００１３】
また、第１の観点に係る通信システムにおいて、
上記中段中継装置のアドレス追加器は、上記第３の受信器にて受信された第２の往路メッセージに含まれているリストに、当該中段中継装置に割り当てられている自身のアドレスに加えて、更に当該中段中継装置において上記第２の往路メッセージの受信を行うプログラムが通信に用いるポート番号を追加し、
上記最終段中継装置の第３の送信器は、上記生成した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該最終段中継装置の前段に位置する初段中継装置若しくは中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは中段中継装置で実行された上記プログラムが通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
としても良い。【００１４】
さらにまた、第１の観点に係る通信システムにおいて、
３つ以上の上記中段中継装置で少なくとも構成され、
上記中段中継装置は、
・上記最終段中継装置に割り当てられたアドレスと、上記最終段中継装置へ上記第２の往路メッセージを最終的に送信するために上記第２の往路メッセージを送信する送信先の候補となる上記３つ以上の中段中継装置の１つに割り当てられたアドレスと、を少なくとも２つ記憶したテーブルを記憶する記憶部、をさらに備え、
上記中段中継装置の特定器は、上記記憶部に記憶されたテーブルから、上記最終段中継装置に割り当てられたアドレスに対応付けられた２以上のアドレスを特定し、
上記中段中継装置の第４の送信器は、上記特定器で特定された２以上のアドレスのうち１つを上記送信先に割り当てられたアドレスとして指定した上記第２の往路メッセージの送信が失敗すると、上記検索された２以上のアドレスのうち、他の１つを上記送信先に割り当てられたアドレスとして指定して、上記第２の往路メッセージを送信する、
としても良い。【００１５】
また、第１の観点に係る通信システムにおいて、
上記送受信装置は、上記第１の送信器が送信する上記第１の往路データに含まれるデータのダイジェストを生成する第１のダイジェスト生成器、を更に備え、
上記最終段中継装置は、上記第２の受信器で受信された第２の往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器、を更に備え、
上記最終段中継装置の第３のメッセージ生成器は、上記第２のダイジェスト生成器で生成されたダイジェストを追加された上記復路メッセージを生成し、
上記最終段中継装置の第３の送信器は、上記第３のメッセージ生成器で生成された復路メッセージを送信し、
上記送受信装置は、上記第４の受信器で受信された復路メッセージに含まれるダイジェストと、当該送受信装置の第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記第１の往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器、を更に備えた、
としても良い。【００１６】
さらにまた、第１の観点に係る通信システムにおいて、
複数の上記送受信装置で少なくとも構成され、
上記複数の送受信装置は、互いに異なる暗号鍵を用いて上記第１のメッセージ生成器で生成された第１の往路メッセージを暗号化する暗号化器、をそれぞれ更に備え、
上記複数の送受信装置がそれぞれ備える第１の送信器は、上記それぞれの暗号化器で暗号化された第１の往路メッセージを送信する、
としても良い。【００１７】
また、第１の観点に係る通信システムにおいて、
上記最終段中継装置は、上記第２の往路メッセージに含まれるイベントデータを、上記送受信装置を管理する管理サーバに集積する、
としても良い。【００１８】
さらにまた、第１の観点に係る通信システムにおいて、
上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御装置、で更に構成され、
上記制御装置は、
・上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上から、動作状態を報告するステータスレポートを受信する第５の受信器と、
・上記第５の受信器で受信したステータスレポートに基づいて、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上に障害が生じたか否かを判別する障害発生判別器と、
・上記障害発生判別器で障害が生じたと判別した装置との通信を回復するように、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御器と、を備えた、
としても良い。【００１９】
上記目的を達成するため、本発明の第２の観点に係る通信システムは、
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする。【００２０】
上記目的を達成するため、本発明の第３の観点に係る通信システムは、
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成器と、
・上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記往路メッセージを受信する第１の受信器と、
・上記第１の受信器で受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記往路メッセージを受信する第２の受信器と、
・上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器と、
・上記第２のダイジェスト生成器で生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．上記送受信装置は、
・上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器と、を更に備えた、
ことを特徴とする。【００２１】
上記目的を達成するため、本発明の第４の観点に係る中継装置は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする。【００２２】
上記目的を達成するため、本発明の第５の観点に係る中継装置は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
第１の往路メッセージを送受信装置から受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする。【００２３】
上記目的を達成するため、本発明の第６の観点に係る中継プログラムは、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする。【００２４】
上記目的を達成するため、本発明の第７の観点に係る中継プログラムは、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
第１の往路メッセージを送受信装置から受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする。【００２５】
上記目的を達成するため、本発明の第８の観点に係るコンピュータ読み取り可能な記録媒体は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムが記録されている。【００２６】
上記目的を達成するため、本発明の第９の観点に係るコンピュータ読み取り可能な記録媒体は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
第１の往路メッセージを送受信装置から受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムが記録されている。【００２７】
上記目的を達成するため、本発明の第１０の観点に係る通信方法は、
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、上記送受信装置に割り当てられている自身のアドレスが追加されたリストと、当該送受信装置において上記往路メッセージの送信を行うプログラムが通信に用いるポート番号と、を含む第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置が、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）． 
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする。【００２８】
上記目的を達成するため、本発明の第１１の観点に係る通信方法は、
リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置が、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする。【００２９】
上記目的を達成するため、本発明の第１２の観点に係る通信方法は、
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成ステップと、
・上記送受信装置が、上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成ステップと、
・上記最終段中継装置が、上記第２のダイジェスト生成ステップで生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記送受信装置が、上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信ステップと、
・上記送受信装置が、上記第３の受信ステップで受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成ステップで生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別ステップと、を有する、
ことを特徴とする。【００３０】
上記目的を達成するため、本発明の第１３の観点に係る中継方法は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする。【００３１】
上記目的を達成するため、本発明の第１４の観点に係る中継方法は、
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
第１の往路メッセージを送受信装置から受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったプログラムが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置で実行された上記プログラムが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする。
【発明の効果】
【００３２】
本発明に係る通信システム及び中継装置、中継プログラム、中継プログラムを記録したコンピュータ読み取り可能な記録媒体、並びに通信方法及び中継方法によれば、データの中継回数が増加しても、通信コストの増加を抑制できる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施例に係る通信システムの一構成例を表すシステム構成図である。
【図２】送受信装置の一構成例を表すハードェア構成図である。
【図３Ａ】中間中継装置の一構成例を表すハードェア構成図である。
【図３Ｂ】最終中継装置の一構成例を表すハードェア構成図である。
【図４Ａ】送受信装置が実行するデータ収集送受信処理の一例を表すフローチャートである。
【図４Ｂ】本実施例において、送受信装置が実行する往路メッセージ送信処理の一例を表すフローチャートである。
【図４Ｃ】送受信装置が実行する復路メッセージ受信処理の一例を表すフローチャートである。
【図５】中継経路の一例を表す図である。
【図６Ａ】中間中継装置が実行する中間中継処理の一例を表すフローチャートである。
【図６Ｂ】本実施例において、中間中継装置が実行する往路メッセージ中継処理の一例を表すフローチャートである。
【図６Ｃ】中間中継装置が実行する復路メッセージ中継処理の一例を表すフローチャートである。
【図７Ａ】最終中継装置が実行する最終中継処理の一例を表すフローチャートである。
【図７Ｂ】最終中継装置が実行する往路メッセージ応答処理の一例を表すフローチャートである。
【図７Ｃ】最終中継装置が実行する往路メッセージ集積処理の一例を表すフローチャートである。
【図８Ａ】往路及び復路の一例を表す図である。
【図８Ｂ】エージェントで生成される往路メッセージの一例を表す図である。
【図８Ｃ】エージェントで対応情報を追加された第１の往路メッセージの一例を表す図である。
【図８Ｄ】コレクタで対応情報を追加された第２の往路メッセージの一例を表す図である。
【図８Ｅ】コレクタで対応情報を追加された第２の往路メッセージの他例を表す図である。
【図８Ｆ】ファイナルコレクタで生成される復路メッセージの一例を表す図である。
【図８Ｇ】コレクタで対応情報を削除された復路メッセージの一例を表す図である。
【図８Ｈ】コレクタで対応情報を削除された復路メッセージの他例を表す図である。
【図８Ｉ】エージェントが受信する復路メッセージの一例を表す図である。
【図９】エージェントの一構成例を表す機能ブロック図である。
【図１０】コレクタの一構成例を表す機能ブロック図である。
【図１１】ファイナルコレクタの一構成例を表す機能ブロック図である。
【図１２】本実施例の変形例１３において、送受信装置が実行する往路メッセージ送信処理の一例を表すフローチャートである。
【図１３】本実施例の変形例１３において、中間中継装置が実行する往路メッセージ中継処理の一例を表すフローチャートである。
【図１４】本実施例の変形例１３において、最終中継装置が実行する往路メッセージ応答処理の一例を表すフローチャートである。
【図１５】本実施例の変形例１４において、送受信装置が実行する往路メッセージ送信処理の一例を表すフローチャートである。
【図１６】本実施例の変形例１４において、中間中継装置が実行する往路メッセージ中継処理の一例を表すフローチャートである。
【図１７Ａ】エージェント１２１が記憶するルーティングテーブルの一例を表す図である。
【図１７Ｂ】コレクタ２３１が記憶するルーティングテーブルの一例を表す図である。
【図１７Ｃ】コレクタ２４１が記憶するルーティングテーブルの一例を表す図である。
【図１７Ｄ】コレクタ２４２が記憶するルーティングテーブルの一例を表す図である。
【図１７Ｅ】コレクタ２２１が記憶するルーティングテーブルの一例を表す図である。
【図１８】本実施例の変形例１９に係る通信システムの一構成例を表すシステム構成図である。
【図１９】制御装置の一構成例を表すハードェア構成図である。
【図２０】制御装置が実行する障害解消制御処理の一例を表すフローチャートである。
【図２１】制御装置の一構成例を表す機能ブロック図である。
【発明を実施するための形態】
【００３４】
以下、本発明の実施例について添付図面を参照しつつ説明する。
【００３５】
本発明の実施例に係る通信システム１は、図１に示すような送受信装置１１０、１２０、及び１３０と、中間中継装置２１０、２２０、２３０、及び２４０と、最終中継装置２９０と、管理サーバ３００と、で構成される。
【００３６】
送受信装置１１０から１３０は、インターネットなどの通信網１０を介して端末装置１１に接続されている。送受信装置１１０から１３０は、端末装置１１から送信されるリクエストに応じて、例えば、文書の翻訳、商品の販売若しくは役務の提供、又はオークションなどのサービスを、端末装置１１のユーザに提供するサーバである。
【００３７】
送受信装置１１０は、通信回線Ｌ１を介して中間中継装置２１０に接続されている。中間中継装置２１０は、通信回線Ｌ２を介して中間中継装置２２０に接続されている。中間中継装置２２０は、通信回線Ｌ３を介して中間中継装置２３０に接続されていると共に、通信回線Ｌ４を介して最終中継装置２９０に接続されている。送受信装置１２０は、通信回線Ｌ５を介して中間中継装置２３０に接続されている。送受信装置１３０は、通信回線Ｌ６を介して中間中継装置２３０に接続されている。中間中継装置２３０は、通信回線Ｌ７を介して中間中継装置２４０に接続されている。中間中継装置２４０は、通信回線Ｌ８を介して最終中継装置２９０に接続されている。最終中継装置２９０は、管理サーバ３００に接続されている。
【００３８】
送受信装置１１０から１３０は、送受信装置１１０から１３０それぞれの動作若しくは状態の変化を表すイベントデータを含む往路メッセージを、中間中継装置２１０から２４０のいずれか１つ以上と、最終中継装置２９０と、を介して管理サーバ３００へ送信する。
【００３９】
本実施例において、イベントデータは、サービスの提供において発生したイベントを表す、として説明を行う。また、送受信装置１１０から１３０は、イベントが発生する度に、発生したイベントを表すイベントデータを含んだ往路メッセージを送信するとして説明を行う。しかし、往路メッセージの送信タイミングは、これに限定される訳ではない。送受信装置１１０から１３０は、例えば、所定周期で往路メッセージを送信しても良い。
【００４０】
中間中継装置２１０から２４０は、送受信装置１１０ないし１３０から送信された往路メッセージを最終中継装置２９０へ中継する。次に、中間中継装置２１０から２４０は、往路メッセージに応答するデータであって、最終中継装置２９０が往路メッセージを受信したことを表す復路メッセージを、最終中継装置２９０から当該往路メッセージを送信した送受信装置１１０から１３０のいずれかへ中継する。
【００４１】
最終中継装置２９０は、中間中継装置２２０若しくは２４０から往路メッセージを受信すると、往路メッセージを送信した送受信装置１１０ないし１３０のいずれかを最終的な宛先として復路メッセージを送信する。このため、最終中継装置２９０は、当該往路メッセージを送信した中間中継装置２２０及び２４０のいずれかへ復路メッセージを送信する。
【００４２】
管理サーバ３００は、最終中継装置２９０から受信した往路メッセージに基づき送受信装置１１０ないし１３０の動作及び状態を管理する。
【００４３】
ここで、送受信装置１１０から送信された往路メッセージが、中間中継装置２１０、中間中継装置２２０の順にそれぞれの装置で中継された後に、最終中継装置２９０で受信される場合を例に挙げて説明する。最終中継装置２９０は、往路メッセージの最終的な送信先であるため、最終段中継装置と称される。これに対して、中間中継装置２１０は、送受信装置１１０から送信された往路メッセージを最初に中継するため、初段中継装置と称される。さらに、中間中継装置２２０は、往路メッセージの中継経路である往路において、初段中継装置と称される中間中継装置２１０と、最終段中継装置と称される最終中継装置２９０と、の中間に位置するため、中段中継装置と称される。
【００４４】
同様に、送受信装置１２０から送信された往路メッセージが、中間中継装置２３０、中間中継装置２４０の順にそれぞれの装置で中継された後に、最終中継装置２９０で受信される場合を例に挙げて説明する。この場合、最終中継装置２９０は、最終段中継装置と称され、中間中継装置２３０は、初段中継装置と称され、中間中継装置２４０は、中段中継装置と称される。
【００４５】
これに対して、送受信装置１１０から送信された往路メッセージが、中間中継装置２１０、中間中継装置２２０、中間中継装置２３０、中間中継装置２４０の順にそれぞれの装置で中継された後に、最終中継装置２９０で受信される場合を例に挙げて説明する。この場合、最終中継装置２９０が、最終段中継装置と称され、中間中継装置２１０が、初段中継装置と称され、中間中継装置２２０、中間中継装置２３０、及び中間中継装置２４０は、それぞれ中段中継装置と称される。
【００４６】
すなわち、中間中継装置２１０、２２０、２３０、及び２４０の内で、どの装置が初段中継装置と称され、どの装置が中段中継装置と称されるか、は、往路メッセージが送信される経路により異なる。
【００４７】
次に、図２を参照して、送受信装置１１０のハードウェア構成について説明する。送受信装置１１０は、図２に示すようなＣＰＵ（Central Processing Unit）１１０ａ、ＲＯＭ（Read Only Memory）１１０ｂ、ＲＡＭ（Random Access Memory）１１０ｃ、ハードディスク１１０ｄ、メディアコントローラ１１０ｅ、ＬＡＮカード（Local Area Network）１１０ｆ、ビデオカード１１０ｇ、ＬＣＤ（Liquid Crystal Display）１１０ｈ、キーボード１１０i、スピーカ１１０ｊ、及びタッチパッド１１０ｋで構成される。
【００４８】
ＣＰＵ１１０ａは、ＲＯＭ１１０ｂ若しくはハードディスク１１０ｄに保存されたプログラムを実行することで、送受信装置１１０の全体制御を行う。ＲＡＭ１１０ｃは、ＣＰＵ１１０ａによるプログラムの実行時において、処理対象とするデータを一時的に記憶する。
【００４９】
ハードディスク１１０ｄは、各種のデータを保存したテーブルを記憶する情報記憶部である。尚、送受信装置１１０は、ハードディスク１１０ｄの代わりに、フラッシュメモリを備えても良い。
【００５０】
メディアコントローラ１１０ｅは、フラッシュメモリ、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）、及びブルーレイディスク（Blu-ray Disc）（登録商標）を含む記録媒体から各種のデータ及びプログラムを読み出す。
【００５１】
ＬＡＮカード１１０ｆは、通信網１０を介して接続された端末装置１１及び中間中継装置２１０との間でデータを送受信する。キーボード１１０i及びタッチパッド１１０ｋは、ユーザの操作に応じた信号又は情報を入力する。
【００５２】
ビデオカード１１０ｇは、ＣＰＵ１１０ａから出力されたデジタル信号に基づいて画像を描画（つまり、レンダリング）すると共に、描画された画像を表す画像信号を出力する。ＬＣＤ１１０ｈは、ビデオカード１１０ｇから出力された画像信号に従って画像を表示する。なお、送受信装置１１０は、ＬＣＤ１１０ｈの代わりに、ＰＤＰ（Plasma Display Panel）又はＥＬ（Electroluminescence）ディスプレイを備えても良い。スピーカ１１０ｊは、ＣＰＵ１１０ａから出力された信号に基づいて音声を出力する。
【００５３】
中間中継装置２１０は、送受信装置１１０と同様に、図３Ａに示すようなＣＰＵ２１０ａ、ＲＯＭ２１０ｂ、ＲＡＭ２１０ｃ、ハードディスク２１０ｄ、メディアコントローラ２１０ｅ、ＬＡＮカード２１０ｆ、ビデオカード２１０ｇ、ＬＣＤ２１０ｈ、キーボード２１０i、スピーカ２１０ｊ、及びタッチパッド２１０ｋで構成される。
【００５４】
最終中継装置２９０は、中間中継装置２１０と同様に、図３Ｂに示すようなＣＰＵ２９０ａ、ＲＯＭ２９０ｂ、ＲＡＭ２９０ｃ、ハードディスク２９０ｄ、メディアコントローラ２９０ｅ、ＬＡＮカード２９０ｆ、ビデオカード２９０ｇ、ＬＣＤ２９０ｈ、キーボード２９０i、スピーカ２９０ｊ、及びタッチパッド２９０ｋで構成される。管理サーバ３００も同様にＣＰＵ等で構成される。
【００５５】
図２に示した送受信装置１１０のＣＰＵ１１０ａは、図４Ａに示すようなデータ収集送受信処理を実行するためのプログラム（以下、データ収集送受信プログラムという）を並列的に複数実行する。これにより、ＣＰＵ１１０ａは、図２に示したハードウェアと協働して、図５に示すような送受信部（以下、エージェントともいう）１１１及び１１２として機能する。
【００５６】
送受信装置１１０のＬＡＮカード１１０ｆには、ネットワーク上で当該ＬＡＮカード１１０ｆを識別する情報としてＩＰアドレス「192.168.1.110」が割り当てられている。エージェント１１１は、番号「111」のポートを用いてデータを送受信し、エージェント１１２は、番号「112」のポートを用いてデータを送受信する。このため、１台の送受信装置１１０で複数のデータ収集送受信プログラムを同時に実行しても、それぞれのデータ収集送受信プログラムが送受信するデータを取り違えることを防止できる。
【００５７】
これに対して、送受信装置１２０及び１３０は、データ収集送受信プログラムを１つだけ実行する。このため、送受信装置１２０及び１３０がそれぞれ有するＣＰＵは、それぞれエージェント１２１及び１３１として機能する。送受信装置１２０のＬＡＮカードには、ＩＰアドレス「192.168.1.120」が割り当てられており、エージェント１２１は、番号「121」のポートを用いてデータを送受信する。送受信装置１３０のＬＡＮカードには、ＩＰアドレス「192.168.1.130」が割り当てられており、エージェント１３１は、番号「131」のポートを用いてデータを送受信する。
【００５８】
図３Ａに示した中間中継装置２１０のＣＰＵ２１０ａは、図６Ａに示すような、往路メッセージ及び復路メッセージを中継する中間中継処理を行う中継プログラムを並列的に複数実行する。これにより、ＣＰＵ２１０ａは、図３Ａに示したハードウェアと協働して、図５に示すような中間中継部（以下、コレクタともいう）２１１及び２１２として機能する。
【００５９】
ここで、ＬＡＮカード２１０ｆには、ネットワーク上で当該ＬＡＮカード２１０ｆを識別する情報としてＩＰアドレス「192.168.1.210」が割り当てられており、コレクタ２１１は、番号「211」のポートを用いてデータを送受信し、コレクタ２１２は、番号「212」のポートを用いてデータを送受信する。このため、１台の中間中継装置２１０で複数の中継プログラムを同時に実行しても、それぞれの中継プログラムが送受信するデータを取り違えることを防止できる。
【００６０】
同様に、中間中継装置２４０は、２つの中継プログラムを多重実行するため、中間中継装置２４０が有するＣＰＵは、コレクタ２４１及び２４２として機能する。また、中間中継装置２４０のＬＡＮカードには、ＩＰアドレス「192.168.1.240」が割り当てられており、コレクタ２４１及び２４２は、それぞれ番号「241」及び「242」のポートを用いてデータを送受信する。
【００６１】
これに対して、中間中継装置２２０及び２３０は、中継プログラムを１つだけ実行するため、中間中継装置２２０及び２３０がそれぞれ有するＣＰＵは、コレクタ２２１及び２３１としてそれぞれ機能する。中間中継装置２２０及び２３０のＬＡＮカードには、それぞれＩＰアドレス「192.168.1.220」及び「192.168.1.230」が割り当てられており、コレクタ２２１及び２３１は、それぞれ番号「221」及び「231」のポートを用いてデータを送受信する。
【００６２】
図３Ｂに示した最終中継装置２９０のＣＰＵ２９０ａは、図７Ａに示すような、往路メッセージに含まれるイベントデータを管理サーバ３００へ中継する最終中継処理を行う最終中継プログラムを実行する。これにより、ＣＰＵ２９０ａは、図３Ｂに示したハードウェアと協働して、図５に示すような最終中継部（以下、ファイナルコレクタともいう）２９１として機能する。図３Ｂに示したＬＡＮカード２９０ｆには、ＩＰアドレス「192.168.1.290」が割り当てられており、ファイナルコレクタ２９１は、番号「291」のポートでデータを送受信する。
【００６３】
管理サーバ３００のＣＰＵは、ソフトウェア処理を実行することで、図５に示すような管理部３０１として機能する。管理部３０１は、ファイナルコレクタ２９１で中継された往路メッセージを集積し、集積した往路メッセージに基づきエージェント１１１から１３１の動作及び状態を制御及び管理する。
【００６４】
ここで、図１に示したように、送受信装置１１０は、中間中継装置２１０に接続されている。このため、図５に示すように、送受信装置１１０のエージェント１１１及び１１２は、中間中継装置２１０のコレクタ２１１及び２１２とそれぞれ通信可能である。また、中間中継装置２１０は、中間中継装置２２０に接続されているため、中間中継装置２１０のコレクタ２１１及び２１２は、それぞれ中間中継装置２２０のコレクタ２２１と通信可能である。同様に、中間中継装置２２０のコレクタ２２１は、中間中継装置２３０のコレクタ２３１及び最終中継装置２９０のファイナルコレクタ２９１と通信可能である。
【００６５】
さらに、送受信装置１２０のエージェント１２１及び送受信装置１３０のエージェント１３１は、中間中継装置２３０のコレクタ２３１とそれぞれ通信可能であり、コレクタ２３１は、コレクタ２２１及び中間中継装置２４０のコレクタ２４１及び２４２とそれぞれ通信可能である。またさらに、コレクタ２４１及び２４２は、ファイナルコレクタ２９１と通信可能である。ファイナルコレクタ２９１は、管理サーバ３００の管理部３０１と通信可能である。
【００６６】
このため、エージェント１１１からファイナルコレクタ２９１まで往路メッセージを中継するために用いられる経路（以下、往路という）として、コレクタ２１１の後にコレクタ２２１を経由する経路だけでなく、コレクタ２１２の後にコレクタ２２１を経由する経路など、様々な経路が存在する。同様の理由から、ファイナルコレクタ２９１からエージェント１１１まで復路メッセージを中継するために用いられる経路（以下、復路という）として、複数の経路が存在する。
【００６７】
エージェント１１１からファイナルコレクタ２９１まで往路メッセージを中継するために用いられる往路は、通信システム１の管理者によって予め定められた経路であり、図８Ａに示すような、コレクタ２１１の後にコレクタ２２１を経由する経路であるとして以下説明を行う。
【００６８】
エージェント（つまり、送受信部）１１１として機能するＣＰＵ１１０ａは、図４Ａに示したデータ収集送受信処理の実行を開始すると、例えば、関数の引数から、設定対応情報「192.168.1.110:111」を取得する（ステップＳ０１）。この設定対応情報は、通信システム１の管理者によってＬＡＮカード１１０ｆに割り当てられた（つまり、設定された）ＩＰアドレス「192.168.1.110」を表す情報と、エージェント１１１が往路メッセージ及び復路メッセージの送受信に用いるように設定されたポート番号「111」を表す情報と、を対応付けた情報をいう。
【００６９】
次に、ＣＰＵ１１０ａは、設定対応情報「192.168.1.110:111」を引数に指定して、往路メッセージ送信プログラムを実行する送信スレッドと、復路メッセージ受信プログラムを実行する受信スレッドと、を生成する（ステップＳ０２）。その後、ＣＰＵ１１０ａは、例えば、シャットダウンコマンドが入力される等の予め定められた終了条件が満足されたか否かを判別する（ステップＳ０３）。このとき、終了条件が満足されていないと判別すると（ステップＳ０３；Ｎｏ）、ＣＰＵ１１０ａは、所定時間経過後にステップＳ０３を繰り返し実行する。
【００７０】
これに対して、終了条件が満足されたと判別すると（ステップＳ０３；Ｙｅｓ）、ＣＰＵ１１０ａは、例えば、キルシグナルを送信することで、送信スレッドを終了してから（ステップＳ０４）、同様に受信スレッドを終了した後に（ステップＳ０５）、データ収集送受信処理の実行を終了する。
【００７１】
エージェント１１１として機能するＣＰＵ１１０ａは、送信スレッドで、図４Ｂに示すような往路メッセージ送信処理を、図２に示したハードウェアと協働して実行する。これにより、ＣＰＵ１１０ａは、図９に示すような、往路メッセージ送信部（以下、ディストリビュータともいう）１１１ｄとして機能する。ディストリビュータ１１１ｄは、第１設定取得部１１ｄａ、リクエスト受信部１１ｄｂ、サービス提供部１１ｄｃ、往路メッセージ生成部１１ｄｄ、ダイジェスト生成部１１ｄｅ、ダイジェスト保存部１１ｄｆ、対応情報追加部１１ｄｇを有する往路メッセージ生成部１１ｄｉ、及び往路メッセージ送信部１１ｄｈを有する。また、エージェント１１１として機能するＣＰＵ１１０ａは、ハードディスク１１０ｄと協働することで、情報記憶部１１１ｍとして機能する。尚、受信スレッドの実行については後に説明する。
【００７２】
送信スレッドで往路メッセージ送信処理の実行が開始されると、エージェント１１１の第１設定取得部１１ｄａは、引数から設定対応情報「192.168.1.110:111」を取得する（ステップＳ１１）。次に、第１設定取得部１１ｄａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ１２）。
【００７３】
このとき、スレッドを終了しないと判別されると（ステップＳ１２；Ｎｏ）、リクエスト受信部１１ｄｂは、端末装置１１からサービスの提供を要求するリクエストを受信する（ステップＳ１３）。その後、サービス提供部１１ｄｃは、リクエストに応じてサービスを端末装置１１のユーザへ提供する（ステップＳ１４）。
【００７４】
次に、イベントデータ生成部１１ｄｄは、前回のイベントデータの送信から現在までに何らかのイベントが生じたか否かを判別する（ステップＳ１５）。ステップＳ１５で判別の対象とされるイベントは、例えば、サービスの提供における異常の発生を含むとして説明するが、これに限定される訳ではなく、送受信装置１１０の動作若しくは状態の変化であれば、どのようなイベントでも良い。
【００７５】
ステップＳ１５において、イベントが発生しなかったと判別されると（ステップＳ１５；Ｎｏ）、ステップＳ１２から上記処理が繰り返される。これに対して、イベントが発生したと判別されると（ステップＳ１５；Ｙｅｓ）、イベントデータ生成部１１ｄｄは、図８Ｂに示すように、当該イベントを表すイベントデータＤＥを生成し、当該イベントデータＤＥと、当該イベントデータＤＥを識別する情報（以下、データＩＤという）と、を往路メッセージとする（ステップＳ１６）。
【００７６】
その後、ダイジェスト生成部１１ｄｅは、通信システム１の管理者に予め設定されたアルゴリズムに従って、図８Ｂに示すようなイベントデータＤＥのダイジェストＤＤ１を生成する（ステップＳ１７）。本実施例において、ダイジェスト生成部１１ｄｅは、イベントデータＤＥの誤り検出符号をダイジェストＤＤ１として生成する。具体的には、ダイジェスト生成部１１ｄｅは、往路メッセージを構成する複数の１バイトデータの最下位１ビットの総和を算出することで、往路メッセージのチェックサムを誤り検出符号として算出する。しかし、これに限定される訳ではなく、ダイジェスト生成部１１ｄｅは、誤り検出符号として往路メッセージのパリティ符号、巡回符号、若しくはハッシュ値を算出しても良い。
【００７７】
次に、ダイジェスト保存部１１ｄｆは、往路メッセージ（つまり、データＩＤ及びイベントデータＤＥ）と、往路メッセージのダイジェストＤＤ１と、を対応付けて、図９に示した情報記憶部１１１ｍに保存する（ステップＳ１８）。
【００７８】
その後、対応情報追加部１１ｄｇは、図８Ｃに示すように、往路メッセージを送信若しくは中継したプログラムの対応情報を１又は複数格納する対応情報リストＤＬ１へ、当該往路メッセージの中継回数「0」回を表す情報と、ステップＳ１１で取得された設定対応情報と、を対応付けた情報「0:192.168.1.110:111」を追加する。その後、対応情報追加部１１ｄｇは、対応情報リストＤＬ１を往路メッセージの末尾に追加する（ステップＳ１９）。尚、送受信装置１１０が送信する往路メッセージを、以下、第１の往路メッセージと称する。
【００７９】
次に、往路メッセージ送信部１１ｄｈは、最終中継装置２９０のファイナルコレクタ２９１を最終的な宛先に指定して第１の往路メッセージを送信する。このとき、往路メッセージ送信部１１ｄｈは、コレクタ２１１が動作する中間中継装置２１０のＩＰアドレス「192.168.1.210」と、コレクタ２１１が通信に用いるポート番号「211」と、を対応付けた情報を情報記憶部１１１ｍから読み出す。コレクタ２１１は、往路メッセージをファイナルコレクタ２９１へ最終的に送信するために、通信システム１の管理者によって予め設定された送信先だからである。次に、往路メッセージ送信部１１ｄｈは、ＩＰアドレス「192.168.1.210」とポート番号「211」とを指定して第１の往路メッセージを送信する（ステップＳ２０）。このとき、往路メッセージ送信部１１ｄｈは、送信先からＡＣＫを受信するまで、所定回数に亘って第１の往路メッセージの送信を繰り返す。その後、ステップＳ１２から上記処理が繰り返される。
【００８０】
ステップＳ１２において、第１設定取得部１１ｄａがスレッドを終了すると判別すると（ステップＳ１２；Ｙｅｓ）、往路メッセージ送信処理の実行を終了する。
【００８１】
コレクタ（つまり、中間中継部）２１１として機能するＣＰＵ２１０ａは、図６Ａに示した中間中継処理の実行を開始すると、例えば、関数の引数から設定対応情報「192.168.1.210:211」を取得する（ステップＳ３１）。この設定対応情報「192.168.1.210:211」は、通信システム１の管理者によってＬＡＮカード２１０ｆに設定されたＩＰアドレス「192.168.1.210」を表す情報と、コレクタ２１１が往路メッセージ及び復路メッセージの送受信に用いるように設定されたポート番号「211」を表す情報と、を対応付けた情報である。
【００８２】
次に、ＣＰＵ２１０ａは、設定対応情報「192.168.1.210:211」を引数に指定して、往路メッセージの中継を行うプログラム（以下、往路メッセージ中継プログラムという）を実行する往路中継スレッドと、復路メッセージの中継を行うプログラム（以下、復路メッセージ中継プログラムという）を実行する復路中継スレッドと、を生成する（ステップＳ３２）。その後、ＣＰＵ２１０ａは、予め定められた終了条件が満足されたか否かを判別する（ステップＳ３３）。このとき、終了条件が満足されていないと判別すると（ステップＳ３３；Ｎｏ）、ＣＰＵ２１０ａは、所定時間経過後にステップＳ３３を繰り返し実行する。
【００８３】
これに対して、終了条件が満足されたと判別すると（ステップＳ３３；Ｙｅｓ）、ＣＰＵ２１０ａは、往路中継スレッドを終了してから（ステップＳ３４）、復路中継スレッドを同様に終了した後に（ステップＳ３５）、中間中継処理の実行を終了する。
【００８４】
コレクタ２１１として機能するＣＰＵ２１０ａは、往路中継スレッドで、図６Ｂに示すような往路メッセージ中継処理を、図３Ａに示したハードウェアと協働して実行する。これにより、ＣＰＵ２１０ａは、図１０に示すような、往路メッセージ中継部（以下、ディストリビュータともいう）２１１ｄとして機能する。ディストリビュータ２１１ｄは、第１設定取得部２１ｄａ、往路メッセージ受信部２１ｄｂ、対応情報追加部２１ｄｃを有する往路メッセージ再生成部２１ｄｅ、及び往路メッセージ送信部２１ｄｄを有する。尚、復路中継スレッドの実行については後に説明する。
【００８５】
往路中継スレッドで往路メッセージ中継処理の実行が開始されると、コレクタ２１１の第１設定取得部２１ｄａは、引数から設定対応情報「192.168.1.210:211」を取得する（ステップＳ４１）。次に、第１設定取得部２１ｄａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ４２）。
【００８６】
このとき、スレッドを終了しないと判別されると（ステップＳ４２；Ｎｏ）、往路メッセージ受信部２１ｄｂは、エージェント１１１から第１の往路メッセージを、設定された番号「211」のポート（以下、設定ポートという）を用いて受信する（ステップＳ４３）。次に、対応情報追加部２１ｄｃは、第１の往路メッセージにおけるデータＩＤとイベントデータＤＥとが格納される所定のデータ範囲の直後から往路メッセージの最後の位置までのデータ「0:192.168.1.110:111」を、対応情報リストＤＬ１を表すデータとして抽出する。
【００８７】
次に、対応情報追加部２１ｄｃは、往路メッセージの対応情報リストＤＬ１「0:192.168.1.110:111」に含まれる最大の中継回数「0」に対して値「1」を加算した値を算出する。その後、対応情報追加部２１ｄｃは、算出した中継回数「1」回（つまり、コレクタ２１１が往路メッセージを送信し終えた時における往路メッセージの総中継回数）を表す情報と、設定対応情報「192.168.1.210:211」と、を対応付けた情報「1:192.168.1.210:211」を生成する。次に、対応情報追加部２１ｄｃは、対応情報リストＤＬ１「0:192.168.1.110:111」の末尾に、情報「1:192.168.1.210:211」を追加する。その後、対応情報追加部２１ｄｃは、図８Ｄに示すように、往路メッセージのイベントデータＤＥの後に対応情報リストＤＬ１を追加する（ステップＳ４５）。尚、中間中継装置２１０のコレクタ２１１によって送信された往路メッセージを、以下、第２の往路メッセージと称する。
【００８８】
ステップＳ４５が実行された後に、往路メッセージ送信部２１ｄｄは、ファイナルコレクタ２９１を最終的な宛先に指定して第２の往路メッセージを送信する。このとき、往路メッセージ送信部２１ｄｄは、コレクタ２２１が動作する中間中継装置２２０のＩＰアドレス「192.168.1.220」と、コレクタ２２０が通信に用いるポート番号「221」と、を対応付けた情報をハードディスク２１０ｄから読み出す。コレクタ２２１は、通信システム１の管理者によって予め設定された送信先だからである。次に、往路メッセージ送信部２１ｄｄは、ＩＰアドレス「192.168.1.220」とポート番号「221」とを指定して第２の往路メッセージを送信する（ステップＳ４６）。このとき、往路メッセージ送信部２１ｄｄは、送信先からＡＣＫを受信するまで、所定回数に亘って第２の往路メッセージの送信を繰り返す。その後、ステップＳ４２から上記処理が繰り返される。
【００８９】
ステップＳ４２において、第１設定取得部２１ｄａは、スレッドを終了すると判別すると（ステップＳ４２；Ｙｅｓ）、往路メッセージ中継処理の実行を終了する。
【００９０】
中段中継装置と称される中間中継装置２２０のコレクタ２２１は、初段中継装置と称される中間中継装置２１０のコレクタ２１１と同様に中間中継処理を実行する。これにより、コレクタ２２１は、図８Ｅに示すように、第２の往路メッセージの対応情報リストＤＬ１「0:192.168.1.110:111,1:192.168.1.210:211」の末尾に、中継回数「2」回を表す情報と設定対応情報とを対応付けた情報「2:192.168.1.220:221」を追加する。次に、コレクタ２２１は、コレクタ２１１と同様に、ＩＰアドレス「192.168.1.290」とポート番号「291」とを指定して、自身の設定対応情報と中継回数とが追加された第２の往路メッセージを送信する。
【００９１】
すなわち、初段中継装置のコレクタ２１１が有する対応情報追加部２１ｄｃは、図１０に示す往路メッセージ受信部２１ｄｂで受信された第１の往路メッセージの対応情報リストＤＬ１に、コレクタ２１１の設定対応情報と中継回数を表す情報とを追加する。これにより、対応情報追加部２１ｄｃを有する往路メッセージ再生成部２１ｄｅは、第２の往路メッセージを生成する。
【００９２】
これに対して、中段中継装置のコレクタ２２１が有する対応情報追加部２１ｄｃに相当する部は、往路メッセージ受信部２１ｄｂに相当する部で受信された第２の往路メッセージの対応情報リストＤＬ１に、コレクタ２２１の設定対応情報と中継回数を表す情報とを追加する。これにより、コレクタ２２１の対応情報追加部２１ｄｃに相当する部を有した往路メッセージ再生成部２１ｄｅは、第２の往路メッセージを再生成する。
【００９３】
このように、初段中継装置の対応情報追加部２１ｄｃと、中段中継装置の対応情報追加部２１ｄｃに相当する部と、は、設定対応情報と中継回数を表す情報とを追加するメッセージが異なるだけで、同じ構成及び機能を有している。
【００９４】
また、初段中継装置のコレクタ２１１が有する往路メッセージ再生成部２１ｄｅは、対応情報追加部２１ｄｃのみを有し、中段中継装置のコレクタ２２１が有する往路メッセージ再生成部２１ｄｅに相当する部は、対応情報追加部２１ｄｃに相当する部のみを有する。このため、初段中継装置の往路メッセージ再生成部２１ｄｅ及び対応情報追加部２１ｄｃ並びに中段中継装置の往路メッセージ再生成部２１ｄｅに相当する部及び対応情報追加部２１ｄｃに相当する部は、同じ構成及び機能をそれぞれ有している。
【００９５】
ファイナルコレクタ（つまり、最終中継部）２９１として機能するＣＰＵ２９０ａは、図７Ａに示した最終中継処理の実行を開始すると、例えば、関数の引数から、通信システム１の管理者によってファイナルコレクタ２９１が往路メッセージ及び復路メッセージの送受信に用いるように設定されたポート番号「291」を表す情報を取得する（ステップＳ５１）。
【００９６】
次に、ＣＰＵ２９０ａは、ポート番号「291」を表す情報を引数と指定して、往路メッセージに応答する復路メッセージの送信を行うプログラム（以下、往路メッセージ応答プログラムという）を実行する応答スレッドと、往路メッセージを最終中継装置３００に集積させるプログラム（以下、往路メッセージ集積プログラムという）を実行する集積スレッドと、を生成する（ステップＳ５２）。その後、ＣＰＵ２９０ａは、予め定められた終了条件が満足されたか否かを判別する（ステップＳ５３）。このとき、終了条件が満足されていないと判別すると（ステップＳ５３；Ｎｏ）、ＣＰＵ２１０ａは、所定時間経過後にステップＳ５３を繰り返し実行する。
【００９７】
これに対して、終了条件が満足されたと判別すると（ステップＳ５３；Ｙｅｓ）、ＣＰＵ２９０ａは、集積スレッドを終了してから（ステップＳ５４）、応答スレッドを終了した後に（ステップＳ５５）、最終中継処理の実行を終了する。
【００９８】
ファイナルコレクタ２９１として機能するＣＰＵ２９０ａは、応答スレッドで、図７Ｂに示すような往路メッセージ応答処理を、図３Ｂに示したハードウェアと協働して実行する。これにより、ＣＰＵ２９０ａは、図１１に示すような、応答部２９１ｒとして機能する。応答部２９１ｒは、往路メッセージ受信部２９ｒａ、対応情報抽出部２９ｒｂ、往路メッセージ保存部２９ｒｃ、ダイジェスト生成部２９ｒｄ、応答メッセージ生成部２９ｒｅ、ダイジェスト追加部２９ｒｆ及び対応情報追加部２９ｒｇを有する往路メッセージ生成部２９ｒｊ、送信先特定部２９ｒｈ、並びに復路メッセージ送信部２９ｒｉを有する。また、ＣＰＵ２９０ａは、ハードディスク２９０ｄと協働することで、情報記憶部２９１ｍとして機能する。尚、集積スレッドの実行については後に説明する。
【００９９】
応答スレッドで往路メッセージ応答処理の実行が開始されると、ファイナルコレクタ２９１の往路メッセージ受信部２９ｒａは、引数からポート番号「291」を取得する。次に、往路メッセージ受信部２９ｒａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ６１）。
【０１００】
このとき、スレッドを終了しないと判別されると（ステップＳ６１；Ｎｏ）、往路メッセージ受信部２９ｒａは、ポート番号「291」でコレクタ２２１から第２の往路メッセージを受信する（ステップＳ６２）。次に、対応情報抽出部２９ｒｂは、第２の往路メッセージから対応情報リストＬＤ１「0:192.168.1.110:111,1:192.168.1.210:211,2:192.168.1.220:221」を抽出する（ステップＳ６３）。
【０１０１】
次に、往路メッセージ保存部２９ｒｃは、対応情報リストＬＤ１から、中継回数「0」回を表す情報に対応付けられた対応情報「192.168.1.110:111」を抽出する。その後、往路メッセージ保存部２９ｒｃは、抽出された対応情報を、エージェント１１０（つまり、復路メッセージの最終的な送信先）の対応情報と特定する。次に、往路メッセージ保存部２９ｒｃは、エージェント１１０の対応情報と、往路メッセージに含まれるイベントデータＤＥと、を対応付けて情報記憶部２９１ｍへ保存する（ステップＳ６４）。
【０１０２】
次に、ダイジェスト生成部２９ｒｄは、通信システム１の管理者によってエージェント１１１に予め設定されたアルゴリズムと同じアルゴリズムに従って、往路メッセージに含まれるイベントデータＤＥのダイジェストＤＤ２を生成する（ステップＳ６５）。
【０１０３】
その後、応答メッセージ生成部２９ｒｅは、第２の往路メッセージをファイナルコレクタ２９１が受信したことを表すＡＣＫとして、当該往路メッセージに含まれるデータＩＤを含む応答メッセージを生成する（ステップＳ６６）。次に、ダイジェスト追加部２９ｒｇは、図８Ｆに示すように、ステップＳ６５で生成されたダイジェストＤＤ２を応答メッセージの末尾に追加する（ステップＳ６７）。
【０１０４】
次に、送信先特定部２９ｒｈは、復路メッセージをエージェント１１１へ送信するために用いる中継経路（つまり、復路）として、往路を逆順に辿る経路を採用する。エージェント１１１からファイナルコレクタ２９１まで往路メッセージを送信するために用いられる往路は、コレクタ２１１で往路メッセージが中継された後にコレクタ２２１で当該往路メッセージが中継される経路であるとして説明した。送信先特定部２９ｒｈは、復路として、コレクタ２２１で復路メッセージが中継された後にコレクタ２１１で当該復路メッセージが中継される経路を採用する。
【０１０５】
往路メッセージを中継したコレクタ２１１及び２２１（つまり、往路上のコレクタ２１１及び２２１）は、復路メッセージの送信時においても中継機能を発揮していることが多く、かつ往路メッセージの中継に用いられた通信回線（つまり、往路上の通信回線）Ｌ１、Ｌ２、及びＬ４は、復路メッセージの送信時においても通信可能であることが多いからである。
【０１０６】
このため、対応情報追加部２９ｒｆは、ステップＳ６３で抽出された対応情報リストＬＤ１を、図８Ｆに示すように、中継回数の降順にソートする（ステップＳ６８）。次に、対応情報追加部２９ｒｆは、ソート済みの対応情報リストＤＬ２を応答メッセージの末尾に追加する（ステップＳ６９）。このように、往路メッセージ生成部２９ｒｊは、応答メッセージに対して、ダイジェストＤＤ２とソート済みの対応情報リストＤＬ２とを追加することで、往路メッセージを生成する。
【０１０７】
その後、送信先特定部２９ｒｈは、ソート済みの対応情報リストＤＬ２「2:192.168.1.220:221,1:192.168.1.210:211,0:192.168.1.110:111」の先頭の対応情報「192.168.1.220:221」を、次の送信先のＩＰアドレス「192.168.1.220」とポート番号「221」を表す情報と特定する（ステップＳ７０）。次に、復路メッセージ送信部２９ｒｉは、ＩＰアドレス「192.168.1.220」とポート番号「221」とを指定し、エージェント１１１を最終的な宛先として復路メッセージを送信する（ステップＳ７１）。このとき、復路メッセージ送信部２９ｒｉは、送信先であるコレクタ２２１からＡＣＫを受信するまで、所定回数に亘って復路メッセージの送信を繰り返す。その後、ステップＳ６１から上記処理が繰り返される。
【０１０８】
ファイナルコレクタ２９１として機能するＣＰＵ２９０ａは、集積スレッドで、図７Ｃに示すような往路メッセージ集積処理を、図３Ｂに示したハードウェアと協働して実行する。これにより、ＣＰＵ２９０ａは、図１１に示すような、メッセージ集積部２９１ｔとして機能する。メッセージ集積部２９１ｔは、往路メッセージ検索部２９ｔａ、往路メッセージ送信部２９ｔｂ、応答受信部２９ｔｃ、及び往路メッセージ削除部２９ｔｄを有する。
【０１０９】
集積スレッドで往路メッセージ集積処理の実行が開始されると、ファイナルコレクタ２９１の往路メッセージ検索部２９ｔａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ８１）。このとき、往路メッセージ検索部２９ｔａは、スレッドを終了しないと判別すると（ステップＳ８１；Ｎｏ）、情報記憶部２９１ｍから未だ管理部３０１へ中継していない往路メッセージ（以下、未中継の往路メッセージという）を検索する（ステップＳ８２）。
【０１１０】
次に、往路メッセージ送信部２９ｔｂは、検索された未中継の往路メッセージと、当該往路メッセージに対応付けられた対応情報と、を、管理部３０１へ送信する（ステップＳ８３）。その後、往路メッセージ削除部２９ｔｄは、情報記憶部２９１ｍから当該往路メッセージと当該対応情報とを削除する（ステップＳ８５）。その後、ステップＳ８１から上記処理が繰り返される。
【０１１１】
ステップＳ８１において、往路メッセージ検索部２９ｔａは、スレッドを終了すると判別すると（ステップＳ８１；Ｙｅｓ）、往路メッセージ集積処理の実行を終了する。
【０１１２】
コレクタ２２１は、後述するコレクタ２１１が実行する処理と同様の処理を実行する。これにより、コレクタ２２１は、復路メッセージを受信すると、図８Ｇに示すように、復路メッセージの対応情報リストＤＬ２から、コレクタ２２１の設定対応情報「192.168.1.220:221」と、当該情報に対応付けられた中継回数「2」を表す情報と、を削除する。その後に、コレクタ２２１は、対応情報リストＤＬ２が有する先頭の設定対応情報「192.168.1.210:211」を、コレクタ２２１の１つ前に往路メッセージを中継したコレクタの設定対応情報であると特定する。その後、コレクタ２２１は、特定した設定対応情報を指定して復路メッセージをコレクタ２１１へ送信する。このとき、コレクタ２２１は、送信先からＡＣＫを受信するまで、所定回数に亘って復路メッセージの送信を繰り返す。
【０１１３】
コレクタ２１１として機能するＣＰＵ２１０ａは、復路中継スレッドで、図６Ｃに示すような復路メッセージ中継処理を、図３Ａに示したハードウェアと協働して実行する。これにより、ＣＰＵ２１０ａは、図１０に示すような、復路メッセージ中継部（以下、レシーバともいう）２１１ｒとして機能する。レシーバ２１１ｒは、第２設定取得部２１ｒａ、復路メッセージ受信部２１ｒｂ、対応情報抽出部２１Ｒｒｃ、対応情報削除部２１ｒｄ、送信先特定部２１ｒｅ、及び復路メッセージ送信部２１ｒｆを有する。
【０１１４】
復路中継スレッドで復路メッセージ中継処理の実行が開始されると、コレクタ２１１の第２設定取得部２１ｒａは、引数から設定対応情報「192.168.1.210:211」を取得する（ステップＳ９１）。次に、第２設定取得部２１ｒａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ９２）。
【０１１５】
このとき、スレッドを終了しないと判別されると（ステップＳ９２；Ｎｏ）、復路メッセージ受信部２１ｒｂは、コレクタ２２１から、復路メッセージを、設定された番号「211」の設定ポートで受信する（ステップＳ９３）。次に、対応情報抽出部２１Ｒｒｃは、復路メッセージから対応情報リストＤＬ２を抽出する（ステップＳ９４）。
【０１１６】
その後、対応情報削除部２１ｒｄは、復路メッセージの対応情報リストＤＬ２から設定対応情報「192.168.1.210:211」と中継回数「1」を表す情報とを削除する（ステップＳ９６）。その後に、送信先特定部２１ｒｅは、ファイナルコレクタ２９１と同様に、往路を逆順に辿る経路を復路と特定する。その後、送信先特定部２１ｒｅは、対応情報リストＤＬ２に基づいて、往路を逆順に辿る経路における送信先のＩＰアドレスとポート番号を表す情報とを特定する（ステップＳ９７）。具体的には、送信先特定部２１ｒｅは、対応情報リストＤＬ２の先頭の対応情報「192.168.1.110:111」を、対応情報リストＤＬ２が有する対応情報の内で、往路においてエージェント１１１を起点として、コレクタ２２１の直前に位置する装置の設定対応であると特定する。つまり、送信先特定部２１ｒｅは、先頭の対応情報「192.168.1.110:111」を、対応情報リストＤＬ２が有する対応情報の内で、最も遅く往路メッセージを中継した中間中継装置の対応情報であると特定する。対応情報リストＤＬ２が有する対応情報の内で、最も遅く往路メッセージを中継した中間中継装置は、往路においてエージェントを起点として、コレクタ２１１より１つ先に往路メッセージを送信若しくは中継した装置であるためである。このため、送信先特定部２１ｒｅは、当該装置のＩＰアドレス「192.168.1.110」と当該装置で実行されたプログラムが往路メッセージの送信若しくは中継に用いたポート番号「111」とを、送信先のＩＰアドレスとポート番号と特定する。
【０１１７】
その後、復路メッセージ送信部２１ｒｆは、ＩＰアドレス「192.168.1.110」とポート番号「111」とを指定して復路メッセージを送信する（ステップＳ９８）。このとき、復路メッセージ送信部２１ｒｆは、送信先からＡＣＫを受信するまで、所定回数に亘って復路メッセージの送信を繰り返す。その後、ステップＳ９２から上記処理が繰り返される。
【０１１８】
エージェント１１１として機能するＣＰＵ１１０ａは、受信スレッドで、図４Ｃに示すような復路メッセージ受信処理を、図２に示したハードウェアと協働して実行する。これにより、ＣＰＵ１１０ａは、図９に示すような、復路メッセージ受信部（以下、レシーバともいう）１１１ｒとして機能する。レシーバ１１１ｒは、第２設定取得部１１ｒａ、復路メッセージ受信部１１ｒｂ、ダイジェスト検索部１１ｒｃ、判定部１１ｒｄ、及び往路メッセージ再送信部１１ｒｅを有する。
【０１１９】
受信スレッドで復路メッセージ受信処理の実行が開始されると、エージェント１１１の第２設定取得部１１ｒａは、引数から設定対応情報「192.168.1.110:111」を取得する（ステップＳ１０１）。次に、第２設定取得部１１ｒａは、例えば、キルシグナルを受信したか否かに基づいて、スレッドを終了するか否か判別する（ステップＳ１０２）。
【０１２０】
このとき、スレッドを終了しないと判別されると（ステップＳ１０２；Ｎｏ）、復路メッセージ受信部１１ｒｂは、図８Ｈに示すような復路メッセージを、設定された番号「111」のポートを用いてコレクタ２１１から受信する（ステップＳ１０３）。その後、ダイジェスト検索部１１ｒｃは、図８Ｉに示すように、復路メッセージからデータＩＤと、ダイジェストＤＤ２と、を抽出する（ステップＳ１０４）。次に、ダイジェスト検索部１１ｒｃは、情報記憶部１１１ｍから、ステップＳ１０４で抽出されたデータＩＤに対応付けられたダイジェストＤＤ１を検索する（ステップＳ１０５）。
【０１２１】
その後、判定部１１ｒｄは、ステップＳ１０５で検索されたダイジェスト（以下、検索ダイジェストという）ＤＤ１と、ステップＳ１０４で抽出されたダイジェスト（以下、抽出ダイジェストという）ＤＤ２と、が同一であるか否かを判別する（ステップＳ１０６）。
【０１２２】
このとき、判定部１１ｒｄは、検索ダイジェストＤＤ１と、抽出ダイジェストＤＤ２と、が同一であると判別すると（ステップＳ１０６；Ｙｅｓ）、往路メッセージが正確にファイナルコレクタ２９１へ届いたと判別する。その後、ステップＳ１０２から上記処理が繰り返される。
【０１２３】
これに対して、判定部１１ｒｄは、検索ダイジェストＤＤ１と、抽出ダイジェストＤＤ２と、が同一でないと判別すると（ステップＳ１０６；Ｎｏ）、往路メッセージが正確にファイナルコレクタ２９１へ届かなかったと判別する。次に、往路メッセージ再送信部１１ｒｅは、情報記憶部１１１ｍから予め定められた送信先のＩＰアドレスとポート番号とを取得する。次に、往路メッセージ再送信部１１ｒｅは、ステップＳ１０４で抽出されたデータＩＤに対応付けられたイベントデータを情報記憶部１１１ｍから検索する。その後、往路メッセージ再送信部１１ｒｅは、データＩＤとイベントデータとエージェント１１１の設定対応情報を含む対応情報リストＤＬ１とからなる第１の往路メッセージを、ファイナルコレクタ２９１を最終的な宛先として再送信する。この際に、往路メッセージ再送信部１１ｒｅは、送信先のＩＰアドレスとポート番号とを指定して往路メッセージを再送信する（ステップＳ１０７）。このとき、往路メッセージ再送信部１１ｒｅは、送信先からＡＣＫを受信するまで、所定回数に亘って復路メッセージの送信を繰り返す。その後、ステップＳ１０２から上記処理が繰り返される。
【０１２４】
ステップＳ１０２において、第２設定取得部１１ｒａがスレッドを終了すると判別すると（ステップＳ１０２；Ｙｅｓ）、復路メッセージ受信処理の実行を終了する。
【０１２５】
これらの構成によれば、送受信装置１１０から送信された往路メッセージが、中間中継装置２１０及び２２０で順に中継されてから、最終中継装置２９０へ送信される場合に、最終中継装置２９０は、最終段中継装置と称される。最終段中継装置と称される最終中継装置２９０は、復路メッセージの対応情報リストＤＬ２に含まれるアドレスであって、往路メッセージを送信若しくは中継した装置のアドレス「192.168.1.110」、「192.168.1.210」、及び「192.168.1.220」に基づいて、送受信装置１１０を最終的な宛先として復路メッセージを送信する。ここで、往路メッセージを中継した中間中継装置２１０及び２２０は、往路メッセージを中継しなかった中間中継装置２３０及び２４０と比べて、復路メッセージの中継時にもメッセージの中継機能を発揮している可能性が高い。また、往路メッセージの中継に用いられた通信回線Ｌ１、Ｌ２、及びＬ３は、復路メッセージの中継時にも通信可能である可能性が高い。このため、復路メッセージの中継における再送の発生を防止できるので、メッセージの中継効率を向上させ、通信コストを削減できる。
【０１２６】
これらの構成によれば、上記の場合に、中間中継装置２１０は、初段中間中継装置と称される。初段中間中継装置と称される中間中継装置２１０は、復路メッセージの対応情報リストＤＬ２に含まれるアドレス「192.168.1.110」に基づいて、送受信装置１１０へ復路メッセージを送信する。このため、往路メッセージを送信した送受信装置１１０へ復路メッセージを確実に送信できる。
【０１２７】
これらの構成によれば、上記の場合に、中間中継装置２１０は、初段中間中継装置と称され、中間中継装置２２０は、中段中間中継装置と称される。中段中間中継装置と称される中間中継装置２２０は、復路メッセージの対応情報リストＤＬ２に含まれるアドレス「192.168.1.110」及び「192.168.1.210」に基づいて、中間中継装置２１０へ復路メッセージを送信する。また、初段中間中継装置と称される中間中継装置２１０は、中段中間中継装置と称される中間中継装置２２０から復路メッセージを受信する。このため、往路メッセージの中継経路である往路を逆に辿った経路を、復路メッセージの中継経路とするので、通信可能である可能性が高い通信回線や中継機能を発揮している可能性が高い中間中継装置を経由して復路メッセージを中継できる。
【０１２８】
また、これらの構成によれば、上記の場合に中段中継装置と称される中間中継装置２２０は、復路メッセージに含まれる対応情報リストＤＬ２「2:192.168.1.220:211, 1:192.168.1.210:211,0:192.168.1.110:111」から当該中間中継装置２２０に割り当てられたアドレス「192.168.1.220」を削除した後に復路メッセージを送信する。また、上記の場合に初段中継装置と称される中間中継装置２１０は、復路メッセージに含まれる対応情報リストＤＬ２「1:192.168.1.210:211,0:192.168.1.110:111」から当該中間中継装置２１０に割り当てられたアドレス「192.168.1.210」を削除した後に復路メッセージを送信する。このため、中継される復路メッセージのデータ量が減少するので、往路メッセージや復路メッセージの中継回数が増加しても、メッセージの中継効率の低下を防止し、通信コストの増加を抑制できる。
【０１２９】
さらにこれらの構成によれば、送受信装置１１０のエージェント１１１から送信された往路メッセージが、中間中継装置２１０のコレクタ２１１及び中間中継装置２２０のコレクタ２２１で順に中継されてから、最終中継装置２９０のファイナルコレクタ２９１へ送信される場合に、中間中継装置２１０は初段中継装置と称され、中間中継装置２２０は中段中継装置と称され、最終中継装置２９０は最終段中継装置と称される。またこの場合、往路においてエージェント１１１を起点として、エージェント１１１はコレクタ２１１の直前に位置しており、コレクタ２１１はコレクタ２２１の直前に位置しており、コレクタ２２１はファイナルコレクタ２９１の直前に位置している。ファイナルコレクタ２９１は、生成した往路メッセージの対応情報ＤＬ２に含まれるアドレスとポート番号の内で、往路において直前に位置するコレクタ２２１を有し、中段中継装置と称される中間中継装置２２０のアドレス「192.168.1.220」と、コレクタ２２１が往路メッセージの中継に用いたポート番号「221」と、を指定して復路メッセージを送信する。同様に、コレクタ２２１は、受信した往路メッセージの対応情報ＤＬ２に含まれるアドレスとポート番号の内で、往路において直前に位置するコレクタ２１１を有し、初段中継装置と称される中間中継装置２１０のアドレス「192.168.1.210」と、コレクタ２１１が往路メッセージの中継に用いたポート番号「211」と、を指定して復路メッセージを送信する。さらに同様に、コレクタ２１１は、受信した往路メッセージの対応情報ＤＬ２に含まれるアドレスとポート番号の内で、往路において直前に位置するエージェント１１１を有する送受信装置１１０のアドレス「192.168.1.110」と、エージェント１１１が往路メッセージの送信に用いたポート番号「111」と、を指定して復路メッセージを送信する。ここで、往路メッセージを送信若しくは中継したプログラムは、往路メッセージを送信若しくは中継しなかったプログラムと比べて、復路メッセージの中継時にメッセージの中継機能を発揮している可能性が高い。このため、復路メッセージの中継における再送の発生を防止できるので、メッセージの中継効率を向上させ、通信コストを削減できる。また、１台の中間中継装置でメッセージの中継を行うプログラムを複数実行しても、往路メッセージを中継したプログラムが復路メッセージを確実に中継できるので、メッセージの中継効率を向上させ、通信コストを削減できる。
【０１３０】
＜変形例１＞
本実施例では、管理サーバ３００は、送受信装置１１０ないし１３０の動作及び状態を管理する、として説明したが、これに限定される訳ではない。管理サーバ３００は、送受信装置１１０ないし１３０の動作及び状態を管理しなくとも良い。すなわち、通信システム１は、管理サーバ３００の代わりに、ネットワークストレージのような記憶装置を備え、最終中継装置２９０は、往路メッセージを記憶装置に保存する構成を採用できる。記憶装置は、データを格納できればよく、単にストレージ機能を提供するものであれば良い。また、記憶装置は、データベースを搭載したものであっても良い。
【０１３１】
＜変形例２＞
本実施例において、最終中継装置２９０は、管理サーバ３００が往路メッセージを受信したことを表す肯定応答（以下、ＡＣＫという）を、管理サーバ３００から受信するまで、例えば、所定周期で往路メッセージを管理サーバ３００に送信し続けるとしても良い。
【０１３２】
＜変形例３＞
変形例２のように、最終中継装置２９０が管理装置３００へ往路メッセージを再送するのではなく、送受信装置１１０が往路メッセージを管理装置３００へ再送しても良い。
この変形例において、送受信装置１１０は、送信する往路メッセージに含まれるイベントデータの種類に基づいて、当該往路メッセージが再送の必要があるメッセージであるか否かを判別する。このとき、送信した往路メッセージが再送の必要があるメッセージであると判別すると、送受信装置１１０は、往路メッセージを記憶する。次に、送受信装置１１０は、往路メッセージを送信した後に、往路メッセージの送信から予め定められた猶予時間以内に、当該往路メッセージに応答する復路データを受信したか否かを判別する。このとき、送受信装置１１０は、往路メッセージの送信から猶予時間以内に復路データを受信しなかったと判別すると、当該往路メッセージを再送すると共に、猶予時間の値を所定の値だけ増加させる。
【０１３３】
その後、送受信装置１１０は、往路メッセージの再送から猶予時間以内に復路データを受信しない場合に、当該往路メッセージを再送すると共に、猶予時間を所定の値だけ増加させる。さらにその後、サービス提供サーバ送受信装置１１０は、往路メッセージが予め定められた回数以上再送されるまで、上記処理を繰り返す。
【０１３４】
尚、送受信装置１２０による往路メッセージの再送動作と、送受信装置１３０による往路メッセージの再送動作と、は、既に説明した送受信装置１１０による往路メッセージの再送動作と同様であるので、送受信装置１２０及び１３０の再送動作の説明を省略する。
【０１３５】
この構成によれば、変形例２のように、最終中継装置が往路メッセージを記憶したり、記憶した往路メッセージを再送したりする必要がないので、最終中継装置の処理負荷を軽減できる。
【０１３６】
＜変形例４＞
本実施例において、管理サーバ３００は、往路メッセージに含まれるイベントデータに基づき送受信装置１１０ないし１３０に異常が発生したか否かを判別し、異常が発生したと判別したサーバを最終的な宛先として、サービスの提供を停止するように命じるメッセージを送信するとしても良い。具体例としては、管理サーバ３００は、往路メッセージに含まれるイベントデータが、異常が生じたというイベントを表すデータである場合に、当該往路メッセージを送信した送受信装置に異常が生じたと判別しても良い。
【０１３７】
＜変形例５＞
本実施例において、中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１の「末尾」に、中継回数を表す情報と、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加するとして説明した。また、最終中継装置２９０は、往路メッセージに含まれる対応情報リストＤＬ１を、中継回数が「降順」となるようにソートした対応情報リストＤＬ２を復路メッセージに追加する。その後、最終中継装置２９０は、対応情報リストＤＬ２の「先頭」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信するとして説明した。さらに、中間中継装置２１０から２４０のそれぞれは、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を削除する。その後、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２の「先頭」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号として往路メッセージを送信するとして説明した。
【０１３８】
しかし、中間中継装置２１０から２４０が、対応情報リストＤＬ１にＩＰアドレスとポート番号とを追加する位置は、末尾に限定される訳でない。また、中間中継装置２１０から２４０が、送信先のＩＰアドレス及びポート番号とするのは、対応情報リストＤＬ２の先頭のＩＰアドレス及びポート番号に限定される訳ではない。以下説明する変形例では、中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１の「先頭」に、中継回数を表す情報と、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加する。最終中継装置２９０は、往路メッセージに含まれる対応情報リストＤＬ１を、中継回数が「昇順」となるようにソートした対応情報リストＤＬ２を復路メッセージに追加する。その後、最終中継装置２９０は、対応情報リストＤＬ２の「末尾」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。中間中継装置２１０から２４０のそれぞれは、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を削除する。その後、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２の「末尾」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号として往路メッセージを送信する。
【０１３９】
＜変形例６＞
中間中継装置２１０から２４０及び最終中継装置２９０は、対応情報リストＤＬ１及び対応情報リストＤＬ２をスタックとして用いても良い。この変形例では、中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１の「先頭」に、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加する。最終中継装置２９０は、往路メッセージに含まれる対応情報リストＤＬ１を対応情報リストＤＬ２としてソートせずに復路メッセージへ追加する。その後、最終中継装置２９０は、対応情報リストＤＬ２の「先頭」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。さらに、中間中継装置２１０から２４０のそれぞれは、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を削除する。その後に、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２の「先頭」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号として往路メッセージを送信する。
【０１４０】
＜変形例７＞
中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１の「末尾」に、中継回数を表す情報と、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加しても良い。この変形例において、最終中継装置２９０は、往路メッセージに含まれる対応情報リストＤＬ１を対応情報リストＤＬ２として復路メッセージに追加する。その後、最終中継装置２９０は、対応情報リストＤＬ２の「末尾」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。さらに、中間中継装置２１０から２４０のそれぞれは、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を削除する。その後、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２の「末尾」のＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号として往路メッセージを送信する。
【０１４１】
＜変形例８＞
送受信装置１１０から１３０及び中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１に、中継回数を表す情報を追加せず、送受信装置１１０から１３０及び中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加するとしても良い。中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ１におけるＩＰアドレスとポート番号との格納位置に基づいて往路メッセージの送信先を特定できるためである。
【０１４２】
＜変形例９＞
中間中継装置２１０から２４０のそれぞれは、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、に対して、中継回数を表す情報を対応付けていれば、往路メッセージに含まれる対応情報リストＤＬ１の任意の位置に、ＩＰアドレスとポート番号と中継回数を表す情報とを追加しても良い。また、最終中継装置２９０は、往路メッセージに含まれる対応情報リストＤＬ１を、ソートせずに対応情報リストＤＬ２として復路メッセージに追加する。その後、最終中継装置２９０は、対応情報リストＤＬ２に追加された情報で表される中継回数の内で、最も多い中継回数を表す情報と対応付けられたＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。また、中間中継装置２１０から２４０のそれぞれは、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を削除する。その後、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２に追加された情報で表される中継回数の内で、最も多い中継回数を表す情報と対応付けられたＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。
【０１４３】
＜変形例１０＞
中間中継装置２１０から２４０のそれぞれが、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を対応情報リストＤＬ２から削除した後に、対応情報リストＤＬ２に基づいて送信先のＩＰアドレスとポート番号とを特定することに限定されるのではない。以下説明する変形例では、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２に基づいて送信先のＩＰアドレスとポート番号を特定した後に、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、対応情報リストＤＬ２から削除する。すなわち、中間中継装置２１０から２４０のそれぞれは、対応情報リストＤＬ２が有する中継回数とＩＰアドレスとポート番号との内で、それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、に対応付けられた中継回数を特定する。その後、中間中継装置２１０から２４０のそれぞれは、特定された中継回数よりも値「1」だけ少ない中継回数に対応付けられたＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と特定する。最終中継装置２９０は、対応情報リストＤＬ２が有するＩＰアドレスとポート番号との内で、最も大きい中継回数に対応付けられたＩＰアドレスとポート番号とを送信先のＩＰアドレスとポート番号と指定して往路メッセージを送信する。
【０１４４】
＜変形例１１＞
本実施例では、中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１に、中継回数を表す情報と、中間中継装置２１０から２４０それぞれのＩＰアドレスと、それぞれで実行されたプログラムが往路メッセージの送信に用いたポート番号と、を追加するとして説明した。しかし、これに限定されるのではなく、中間中継装置２１０から２４０のそれぞれは、中継回数を表す情報の代わりに、往路メッセージの送信元の（すなわち、往路において直前に位置する装置で追加された）ＩＰアドレスとポート番号とを格納したメモリ領域のアドレス、若しくは、往路メッセージの送信先の（すなわち、往路において直後に位置する装置で追加される）ＩＰアドレスとポート番号とが格納されるメモリ領域のアドレスを表す情報を、対応情報リストＤＬ１に追加しても良い。この場合、リストＤＬ１からアドレス及びポート番号を削除しなくても良い。
＜変形例１２＞
本実施例では、中間中継装置２１０から２４０のそれぞれは、往路メッセージに含まれる対応情報リストＤＬ１に、中間中継装置２１０から２４０それぞれのＩＰアドレスを追加するとして説明した。しかし、ＩＰアドレスに限定されるのではなく、中間中継装置２１０から２４０のそれぞれは、例えば、ドメイン名及びホスト名といった、中間中継装置２１０から２４０それぞれを識別する情報であればどのような情報を追加しても構わない。
【０１４５】
＜変形例１３＞
本実施例において、エージェント１１１、コレクタ２１１及びコレクタ２２１は、ファイナルコレクタ２９１へ送信する往路メッセージに、それぞれの設定対応情報を追加するとして説明したが、これに限定される訳ではない。エージェント１１１は、設定対応情報を往路メッセージに追加せず、コレクタ２１１及びコレクタ２２１並びにファイナルコレクタ２９１は、往路メッセージの送信元の設定対応情報を往路メッセージに追加しても良い。
【０１４６】
すなわち、本実施例では、エージェント１１１は、図４Ｂに示した往路メッセージ送信処理のステップＳ１８を実行した後に、ステップＳ１９で往路メッセージにエージェント１１１の設定対応情報を追加してから、ステップＳ２０で、エージェント１１１の設定対応情報が追加された第１の往路メッセージを送信するとして説明した。また、コレクタ２１１は、図６Ｂに示した往路メッセージ中継処理のステップ４３で第１の往路メッセージを受信した後に、ステップＳ４５で、コレクタ２１１の中継が終了した時点での中継回数を表す情報と、コレクタ２１１の設定対応情報と、を、第１の往路メッセージに追加する。その後、コレクタ２１１は、ステップＳ４６で、コレクタ２１１の設定対応情報が追加された第２の往路メッセージを送信するとして説明した。さらに、ファイナルコレクタ２９１は、図７Ｂに示した往路メッセージ応答処理のステップＳ６２で往路メッセージを受信した後に、ステップＳ６３で往路メッセージから対応情報リストを抽出するとして説明した。
【０１４７】
しかし、本変形例では、エージェント１１１は、図４Ｂに示した往路メッセージ送信処理ではなく、図１２に示す往路メッセージ送信処理を実行する。以下、図１２に示す往路メッセージ送信処理について説明するが、図４Ｂに示した往路メッセージ送信処理と同じ処理については説明を省略する。
【０１４８】
図１２の往路メッセージ送信処理では、エージェント１１１は、ステップＳ１８を実行した後に、ステップＳ１９の往路メッセージにエージェント１１１の設定対応情報を追加する処理を実行せず、ステップＳ２０で第１の往路メッセージを送信する。
【０１４９】
また、コレクタ２１１は、図６Ｂに示した往路メッセージ中継処理ではなく、図１３に示す往路メッセージ中継処理を実行する。以下、図１３に示す往路メッセージ中継処理について説明するが、図６Ｂに示した往路メッセージ中継処理と同じ処理については説明を省略する。
【０１５０】
図１３に示す往路メッセージ中継処理では、コレクタ２１１は、ステップ４３を実行した後に、ステップＳ４５で、受信された第１の往路メッセージに含まれる対応情報リストＤＬ１に、エージェント１１１が往路メッセージを送信した時における往路メッセージの中継回数「0」を表す情報と、エージェント１１１の設定対応情報と、を追加することで、第２の往路メッセージを生成する（ステップ４５ａ）。その後、コレクタ２１１は、ステップ４６で第２の往路メッセージを送信する。また、コレクタ２２１は、同様に、第２の往路メッセージを受信すると、受信された第２の往路メッセージに含まれる対応情報リストＤＬ１に、コレクタ２１１が第２の往路メッセージを送信した時における往路メッセージの中継回数「1」を表す情報と、コレクタ２１１の設定対応情報と、を追加する。
【０１５１】
さらに、ファイナルコレクタ２９１は、図７Ｂに示した往路メッセージ応答処理ではなく、図１４に示す往路メッセージ応答処理を実行する。以下、図１４に示す往路メッセージ応答処理について説明するが、図７Ｂに示した往路メッセージ応答処理と同じ処理については説明を省略する。
【０１５２】
図１４に示す往路メッセージ応答処理では、ファイナルコレクタ２９１は、ステップＳ６２で第２の往路メッセージを受信した後に、受信された第２の往路メッセージに含まれる対応情報リストＤＬ１に、コレクタ２２１が往路メッセージを送信した時における往路メッセージの中継回数「2」を表す情報と、コレクタ２２１の設定対応情報と、を追加する（ステップ６２ｂ）。その後、ファイナルコレクタ２９１は、ステップＳ６３で往路メッセージから対応情報リストを抽出する。
【０１５３】
＜変形例１４＞
本実施例において、エージェント１１１、コレクタ２１１及びコレクタ２２１は、ファイナルコレクタ２９１へ送信する往路メッセージに、それぞれの設定対応情報を追加するとして説明したが、これに限定される訳ではない。エージェント１１１は、エージェント１１１の設定対応情報と送信先の設定対応情報とを往路メッセージに追加し、コレクタ２１１は、往路メッセージの送信先の設定対応情報を往路メッセージに追加しても良い。
【０１５４】
この変形例では、エージェント１１１は、図４Ｂに示した往路メッセージ送信処理ではなく、図１５に示す往路メッセージ送信処理を実行しても良い。以下、図１５に示す往路メッセージ送信処理について説明するが、図４Ｂに示した往路メッセージ送信処理と同じ処理については説明を省略する。
【０１５５】
図１５の往路メッセージ送信処理では、エージェント１１１は、ステップＳ１８で往路メッセージを保存した後に、ステップＳ１９で、往路メッセージに含まれる対応情報リストＤＬ１に、エージェント１１１が往路メッセージを送信した時における往路メッセージの中継回数「0」を表す情報と、エージェント１１１の設定対応情報と、を追加する。その後、エージェント１１１は、ステップＳ１９ｂで、送信先が往路メッセージを送信した時における往路メッセージの中継回数を表す情報と、送信先の設定対応情報と、を往路メッセージに含まれる対応情報リストＤＬ１へ追加する。これらの情報を往路メッセージに追加することにより、エージェント１１１は、第１の往路メッセージを生成する。その後、エージェント１１１は、ステップＳ２０で第１の往路メッセージを送信先へ送信する。
【０１５６】
また、コレクタ２１１は、図６Ｂに示した往路メッセージ中継処理ではなく、図１６に示す往路メッセージ中継処理を実行する。以下、図１６に示す往路メッセージ中継処理について説明するが、図６Ｂに示した往路メッセージ中継処理と同じ処理については説明を省略する。
【０１５７】
図１６に示す往路メッセージ中継処理では、コレクタ２１１は、ステップ４３で第１の往路メッセージを受信した後に、ステップ４４で、送信先が最終的な宛先であるファイナルコレクタ２９１であるか否かを判別する。このとき、コレクタ２１１は、送信先がファイナルコレクタ２９１でないと判別すると（ステップ４４；Ｎｏ）、往路メッセージに含まれる対応情報リストＤＬ１に、送信先が往路メッセージを送信した時の中継回数を表す情報と、送信先の設定対応情報と、を追加することで、第２の往路メッセージを生成する（ステップ４５ｂ）。その後、コレクタ２１１は、ステップ４６で第２の往路メッセージを送信する。
【０１５８】
これに対して、コレクタ２１１は、送信先がファイナルコレクタ２９１であると判別すると（ステップ４４；Ｙｅｓ）、ステップ４５ｂを実行せずに、ステップ４６で第２の往路メッセージを送信する。
【０１５９】
＜変形例１５＞
本実施例において、エージェント１１１から１３１は、それぞれ異なるサービスを提供し、それぞれ異なる暗号鍵を用いて往路メッセージに含まれるイベントデータＤＥを暗号化してからファイナルコレクタ２９１へ送信しても良い。この変形例において、ファイナルコレクタ２９１若しくは管理サーバ３００の管理部３０１は、エージェント１１１から１３１の設定対応情報と、エージェント１１１から１３１が暗号鍵を用いて暗号化した暗号文を平文へ復号する復号方法を表す情報と、を対応付けて記憶している。ファイナルコレクタ２９１若しくは管理サーバ３００の管理部３０１は、往路メッセージを受信すると、往路メッセージに含まれる対応情報リストＬＤ１に基づいてイベントデータＤＥを暗号化したエージェントの設定対応情報を特定する。また、ファイナルコレクタ２９１若しくは管理部３０１は、特定した設定対応情報に対応付けられた情報に基づいて、暗号化されたイベントデータＤＥを復号する。
【０１６０】
これらの構成によれば、エージェント１１１から１３１は、異なるサービスを提供しており、かつそれぞれ異なる暗号化キーを用いてイベントデータＤＥを暗号化する。このため、コレクタが複数のエージェントからイベントデータを収集しても、当該コレクタを管理するユーザが、異なるサービスのデータを互いに参照したり、組み合わせることを防止できる。すなわち、データの保全性がそれぞれ異なるサービスをエージェント１１１から１３１が提供していても、セキュリティを確保しながら、エージェント１１１から１３１が送信するイベントデータを同じコレクタで中継できる。
【０１６１】
＜変形例１６＞
本実施例において、エージェント１１１から１３１は、往路メッセージを再送するため、図５に示した管理部３０１は、ファイナルコレクタ２９１から往路メッセージを重複して受信する場合がある。このため、管理部３０１は、受信した複数の往路メッセージから、重複して受信した往路メッセージを、往路メッセージに含まれるデータＩＤに基づいて検出する。その後、管理部３０１は、検出された複数の往路メッセージから１つを選択した後に、選択された往路メッセージ以外のメッセージを削除する。管理部３０１は、重複して受信した往路メッセージを検出する処理及び重複して受信した往路メッセージを削除する処理を、新たな往路メッセージを受信したタイミング（つまり、リアルタイム）で実行しても良いし、予め定められた時刻で（つまり、バッチ処理として）実行しても良い。
これらの構成により、管理部３０１におけるデータ容量の無駄遣いを防ぎ、誤ったデータ分析を防止できる。
【０１６２】
＜変形例１７＞
本実施例では、エージェント１１１は、図４Ｂに示した往路メッセージ送信処理において、イベントが発生したと判別すると（ステップＳ１５；Ｙｅｓ）、当該イベントを表す１つのイベントデータＤＥを含む１つの往路メッセージを送信する（ステップＳ２０）、として説明した。送信される往路メッセージのデータサイズを、後述する本変形例よりも小さくでき、エージェント１１１、コレクタ２１１から２４２、及びファイナルコレクタ２９１が往路メッセージを中継するのに必要なメモリサイズを小さくできるからである。
【０１６３】
しかし、これに限定されるのではなく、エージェント１１１は、ステップＳ１５において、前回に往路メッセージを送信してから、所定数のイベントが発生したか否かを判定しても良い。この変形例において、エージェント１１１は、所定数のイベントが発生したと判定すると（ステップＳ１５；Ｙｅｓ）、ステップＳ２０において、当該所定数のイベントをそれぞれ表す所定数のイベントデータＤＥを含んだ１つの往路メッセージを送信する。この構成によれば、往路メッセージの送信回数を軽減できるので、通信コストを削減できる。
【０１６４】
＜変形例１８＞
本実施例において、エージェント１１１から１３１及びコレクタ２１１から２４２は、通信システム１の管理者が予め定めた送信先のＩＰアドレスとポート番号とを指定して往路メッセージを送信する、として説明した。すなわち、エージェント１１０から最終中継装置２９１まで往路メッセージを送信するために用いられる経路は、管理者が予め定めた設定経路に限られるとして説明した。しかし、これに限定される訳ではなく、エージェント１１１から１３１及びコレクタ２１１から２４２は、ルーティングテーブルを用いて送信先を動的に変更しても良い。
【０１６５】
以下、本変形例における往路の決定方法について説明する。
エージェント１１１からファイナルコレクタ２９１まで往路メッセージを中継するために用いられる往路は、以下の３つの規則に従って、エージェント１１１及びコレクタ２１１から２４２が決定する。
【０１６６】
規則１：エージェント１１１とコレクタ２１１から２４２とは、通信システム１の管理者によって宛先毎に予め定められたプライオリティの高い経路（すなわち、設定経路）を辿って往路メッセージが送信されるように往路メッセージを送信する。すなわち、エージェント１１１とコレクタ２１１から２４２とは、管理者によって宛先毎に予め定められた送信先（以下、設定送信先という）へ往路メッセージを送信する。
【０１６７】
規則２：エージェント１１１とコレクタ２１１から２４２とは、設定送信先へ往路メッセージを送信できない場合には、管理者によって宛先毎に予め定められた代替送信先へ往路メッセージを送信する。
【０１６８】
規則３：エージェント１１１とコレクタ２１１から２４２とは、設定送信先及び代替送信先のどちらにも往路メッセージを送信できない場合には、往路メッセージの送信元以外の送信可能なコレクタ２１１から２４２（以下、選択可能送信先という）のいずれかを選択する。次に、エージェント１１１とコレクタ２１１から２４２とは、選択した選択可能送信先へ往路メッセージを送信する。
【０１６９】
尚、エージェント１１２からファイナルコレクタ２９１までの往路の決定方法、エージェント１２１からファイナルコレクタ２９１までの往路の決定方法、及びエージェント１３１からファイナルコレクタ２９１までの往路の決定方法は、エージェント１１１からファイナルコレクタ２９１までの往路の決定方法と同様である。
【０１７０】
以下、図５に示したエージェント１２１からファイナルコレクタ２９１へ往路メッセージを送信するための設定経路が、コレクタ２３１の後にコレクタ２４１を経由する経路であり、代替経路がコレクタ２３１の後にコレクタ２４２を経由する経路である場合を例に挙げて説明を行う。
【０１７１】
エージェント１２１からファイナルコレクタ２９１へ往路メッセージを送信するための設定経路が、コレクタ２３１の後にコレクタ２４１を経由する経路であるため、エージェント１２１の設定送信先は、コレクタ２３１である。また、代替経路が、コレクタ２３１の後にコレクタ２４２を経由する経路であるため、エージェント１２１の代替送信先は、存在しない。さらに、エージェント１２１は、コレクタ２３１のみ接続するため、選択可能接続先も存在しない。
【０１７２】
このため、エージェント１２１は、図１７Ａに示すようなルーティングテーブルを記憶している。このルーティングテーブルには、宛先とされるファイナルコレクタ２９１の設定対応情報と、設定送信先であるコレクタ２３１の設定対応情報と、が対応付けられたデータが保存されている。
【０１７３】
設定経路が、コレクタ２３１の後にコレクタ２４１を経由する経路であるため、コレクタ２３１の設定送信先は、コレクタ２４１である。また、代替経路が、コレクタ２３１の後にコレクタ２４２を経由する経路であるため、コレクタ２３１の代替送信先は、コレクタ２４２である。さらに、コレクタ２３１は、コレクタ２２１にも接続するため、コレクタ２３１の選択可能接続先は、コレクタ２２１である。
【０１７４】
このため、コレクタ２３１は、図１７Ｂに示すようなルーティングテーブルを記憶している。このルーティングテーブルには、宛先とされるファイナルコレクタ２９１の設定対応情報と、設定送信先であるコレクタ２４１の設定対応情報と、代替送信先であるコレクタ２４２の設定対応情報と、選択可能送信先であるコレクタ２２１の設定対応情報と、が対応付けられたデータが保存されている。
【０１７５】
コレクタ２２１、コレクタ２４１、及びコレクタ２４２は、図１７Ｃから図１７Ｅにそれぞれ示すルーティングテーブルを記憶している。これらのルーティングテーブルには、宛先とされるファイナルコレクタ２９１の設定対応情報と、設定送信先であるファイナルコレクタ２９１の設定対応情報と、が対応付けられたデータが保存されている。
【０１７６】
先ず、設定経路を辿ってエージェント１２１からファイナルコレクタ２９１へ往路メッセージを送信できる場合におけるエージェント１２１、コレクタ２３１、及びコレクタ２４１の動作について説明する。
エージェント１２１は、図１７Ａに示すルーティングテーブルから、宛先であるファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先であるコレクタ２３１の設定対応情報「192.168.1.230:231」を読み出す。次に、エージェント１２１は、「192.168.1.230:231」を指定して往路メッセージをコレクタ２３１へ送信する。その後、エージェント１２１は、所定時間以内にコレクタ２３１からＡＣＫを受信し、往路メッセージがコレクタ２３１に受信されたと判定する。
【０１７７】
コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先であるコレクタ２４１の設定対応情報「192.168.1.240:241」を読み出す。次に、コレクタ２３１は、「192.168.1.240:241」を指定して往路メッセージをコレクタ２４１へ送信する。その後、コレクタ２３１は、所定時間以内にコレクタ２４１からＡＣＫを受信し、往路メッセージがコレクタ２４１に受信されたと判定する。
【０１７８】
コレクタ２４１は、図１７Ｃに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先の設定対応情報「192.168.1.290:291」を読み出す。次に、コレクタ２４１は、「192.168.1.290:291」を指定して往路メッセージを最終的な宛先であるファイナルコレクタ２９１へ送信する。その後、コレクタ２４１は、所定時間以内にファイナルコレクタ２９１からＡＣＫを受信し、往路メッセージがファイナルコレクタ２９１に受信されたと判定する。
【０１７９】
次に、エージェント１２１からファイナルコレクタ２９１へ、設定経路を辿って往路メッセージが送信されるのではなく、代替経路を辿って往路メッセージが送信される場合におけるエージェント１２１、コレクタ２３１、及びコレクタ２４２の動作について説明する。
エージェント１２１は、「192.168.1.230:231」を指定して往路メッセージをコレクタ２３１へ送信する。
【０１８０】
コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先の設定対応情報「192.168.1.240:241」を読み出す。次に、コレクタ２３１は、「192.168.1.240:241」を指定して往路メッセージをコレクタ２４１へ送信する。その後、コレクタ２３１は、往路メッセージの送信後、送信先からＡＣＫを受信するまで所定時間に亘って往路メッセージの送信を繰り返す。次に、コレクタ２３１は、往路メッセージの送信から所定時間経過しても送信先からＡＣＫを受信しないため、往路メッセージの送信が失敗したと判定する。
【０１８１】
次に、コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた代替送信先の設定対応情報「192.168.1.240:242」を読み出す。次に、コレクタ２３１は、「192.168.1.240:242」を指定して往路メッセージをコレクタ２４２へ送信する。その後、コレクタ２３１は、所定時間以内にコレクタ２４２からＡＣＫを受信したため、往路メッセージがコレクタ２４２に受信されたと判定する。
【０１８２】
コレクタ２４２は、図１７Ｄに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先の設定対応情報「192.168.1.290:291」を読み出す。次に、コレクタ２２１は、「192.168.1.290:291」を指定して往路メッセージを最終的な宛先であるファイナルコレクタ２９１へ送信する。その後、コレクタ２４１は、所定時間以内にファイナルコレクタ２９１からＡＣＫを受信し、往路メッセージがファイナルコレクタ２９１に受信されたと判定する。
【０１８３】
最後に、エージェント１２１からファイナルコレクタ２９１へ、設定経路及び代替経路のいずれとも異なる経路を辿って往路メッセージが送信される場合におけるエージェント１２１、コレクタ２３１、及びコレクタ２２１の動作について説明する。
エージェント１２１は、「192.168.1.230:231」を指定して往路メッセージをコレクタ２３１へ送信する。
【０１８４】
コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先の設定対応情報「192.168.1.240:241」を読み出す。次に、コレクタ２３１は、「192.168.1.240:241」を指定して往路メッセージを送信する。その後、コレクタ２３１は、往路メッセージの送信後、送信先からＡＣＫを受信するまで所定時間に亘って往路メッセージの送信を繰り返す。しかし、コレクタ２３１は、往路メッセージの送信から所定時間経過しても送信先からＡＣＫを受信しないため、往路メッセージの送信が失敗したと判定する。
【０１８５】
次に、コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた代替送信先の設定対応情報「192.168.1.240:242」を読み出す。次に、コレクタ２３１は、「192.168.1.240:242」を指定して往路メッセージを送信する。その後、コレクタ２３１は、往路メッセージの送信後、送信先からＡＣＫを受信するまで所定時間に亘って往路メッセージの送信を繰り返す。しかし、コレクタ２３１は、往路メッセージの送信から所定時間経過しても送信先からＡＣＫを受信しないため、往路メッセージの送信が失敗したと判定する。
【０１８６】
次に、コレクタ２３１は、図１７Ｂに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた選択可能送信先の設定対応情報「192.168.1.220:221」を読み出す。次に、コレクタ２３１は、「192.168.1.220:221」を指定して往路メッセージを送信する。その後、コレクタ２３１は、所定時間以内にコレクタ２２１からＡＣＫを受信したため、コレクタ２２１が往路メッセージを受信したと判定する。
【０１８７】
コレクタ２２１は、図１７Ｅに示すルーティングテーブルから、ファイナルコレクタ２９１の設定対応情報「192.168.1.290:291」に対応付けられた設定送信先の設定対応情報「192.168.1.290:291」を読み出す。次に、コレクタ２３１は、「192.168.1.290:291」を指定して往路メッセージを最終的な宛先であるファイナルコレクタ２９１へ送信する。その後、コレクタ２２１は、所定時間以内にファイナルコレクタ２９１からＡＣＫを受信し、往路メッセージがファイナルコレクタ２９１に受信されたと判定する。
【０１８８】
これらの構成によれば、ある送信先へ往路メッセージの送信が失敗しても、他の送信先へ往路メッセージを送信するので、メッセージが確実に最終中継装置２９０へ送信されるだけでなく、往路メッセージの送信が成功した中間中継装置で復路メッセージの中継が行われるので、メッセージの中継効率を向上させ、通信コストを削減できるだけでなく、往路メッセージの送信先を検索する検索コストを削減できる。
【０１８９】
＜変形例１９＞
本実施例において、図１に示した通信システム１は、管理サーバ３００を備え、管理サーバ３００は、送受信装置１１０から１３０でそれぞれ生じたイベントを表すイベントデータを、最終中継装置２９０から中継されるとして説明した。また、管理サーバ３００は、中継された往路メッセージからイベントデータを抽出し、抽出したイベントデータに基づき送受信装置１１０ないし１３０の動作及び状態を管理するとして説明した。
【０１９０】
本変形例では、図１８に示すように、通信システム１は、管理サーバ３００の代わりに制御装置（マスタともいう）４００を備え、制御装置４００は、通信システム１を構成する送受信装置１１０から１３０、中間中継装置２１０から２４０、及び最終中継装置２９０の全てに接続されており、これらの全てと通信可能である。制御装置４００は、送受信装置１１０から１３０、中間中継装置２１０から２４０、及び最終中継装置２９０から、これらの装置の動作状態と、これらの装置と他の装置との通信状態とを報告するステータスレポートを直接的に受信する。
【０１９１】
制御装置４００は、受信したステータスレポートに基づいて、送受信装置１１０から１３０、中間中継装置２１０から２４０、及び最終中継装置２９０に障害が発生したか否かを判別する。また、制御装置４００は、障害が発生したと判別すると、発生した障害の種類を、ステータスレポートに基づいて判別する。さらに、制御装置４００は、障害が発生したと判別した装置である障害発生装置と、障害発生装置の通信相手と、の通信に障害が発生したか否かを、受信したステータスレポートに基づいて判別する。
【０１９２】
その後、制御装置４００は、障害発生装置の通信相手を、例えば、リンクを解消するなどして、障害発生装置との通信を終了させるように制御する。次に、制御装置４００は、障害が発生したと判別した装置を、判別した障害の種類に応じた制御内容で動作するように制御したり、例えば、再起動など、障害を解消させる動作を行うように制御する。その後、制御装置４００は、例えば、障害発生装置の通信相手に、障害発生装置とのリンクを再確立させるなど、障害発生装置と障害発生装置の通信相手との通信を再開するように制御する。
【０１９３】
制御装置４００は、送受信装置１１０と同様に、図１９に示すようなＣＰＵ４００ａ、ＲＯＭ４００ｂ、ＲＡＭ４００ｃ、ハードディスク４００ｄ、メディアコントローラ４００ｅ、ＬＡＮカード４００ｆ、ビデオカード４００ｇ、ＬＣＤ４００ｈ、キーボード４００i、スピーカ４００ｊ、及びタッチパッド４００ｋで構成される。
【０１９４】
制御装置４００のＣＰＵ４００ａは、図２０に示すような障害解消制御処理を、図１９に示したハードウェアと協働して実行する。これにより、ＣＰＵ４００ａは、図２１に示すような、レポート受信部４２０、障害発生判別部４３０、制御内容決定部４４０、及び障害解消制御部４５０として機能する。また、ＣＰＵ１１０ａは、ハードディスク４００ｄと協働することで、情報記憶部４１０として機能する。
【０１９５】
情報記憶部４１０は、図５に示した送受信装置１１０から１３０のエージェント１１１、１１２、１２１、及び１３１（以下、エージェント１１１等という）の設定対応情報を記憶している。また、情報記憶部４１０は、中間中継装置２１０から２４０のコレクタ２１１、２１２、２２１、２３１、２４１、及び２４２（以下、コレクタ２１１等という）、並びに最終中継装置２９０のファイナルコレクタ２９１の設定対応情報を記憶している。
【０１９６】
また、情報記憶部４１０は、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１の設定対応情報と、当該設定対応情報が設定されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１の通信相手に設定された設定対応情報と、を対応付けて複数記憶している。例えば、図５に示すように、コレクタ２１１は、エージェント１１１及び１１２並びにコレクタ２２１と通信可能である。このため、情報記憶部４１０は、コレクタ２１１の設定対応情報と、エージェント１１１の設定対応情報、エージェント１１２の設定対応情報、及びコレクタ２２１の設定対応情報と、を対応付けて複数記憶している。
【０１９７】
さらに、情報記憶部４１０は、設定対応情報と、当該設定対応情報が設定されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１で生じ得る障害の種類を表す情報と、当該種類の障害が生じた場合に、当該障害の影響が波及し難くなるような動作をさせる制御内容及び当該障害が解消するような動作をさせる制御内容のいずれか１つ以上を表す制御内容データと、を対応付けて複数記憶している。例えば、バッファオーバーフローという障害であれば、障害が解消するような動作をさせる制御内容は、障害が生じた装置を再起動させる制御内容を含み、障害の影響が波及し難いような動作をさせる制御内容は、接続先を制限する制御内容や、動作を停止させる制御内容を含む。
【０１９８】
またさらに、情報記憶部４１０は、エージェント１１１等、コレクタ２１１等、並びにファイナルコレクタ２９１で生じ得る障害若しくは故障を診断するための診断モデルを表すデータを記憶している。
【０１９９】
制御装置４００のＣＰＵ４００ａが、図２０に示すような障害解消制御処理を開始すると、レポート受信部４２０は、予め定められた終了条件が満足されたか否かを判別する（ステップＳ１１１）。具体例としては、レポート受信部４２０は、図１９のキーボード４００ｉから出力された信号を取得し、取得した信号に基づいて、例えば、シャットダウンコマンドが入力される等の終了条件が満足されたか否かを判別する。
【０２００】
このとき、レポート受信部４２０は、終了条件が満足されていないと判別すると（ステップＳ１１１；Ｎｏ）、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１から、これらの設定対応情報と、これらのステータスレポートと、を受信する（ステップＳ１１２）。
【０２０１】
ここで、ステータスレポートとは、例えば、バッファに記憶されたデータの内容や通信状況等を含む動作状態を表す情報である。
【０２０２】
本変形例では、本実施例と同様に、エージェント１１１等とコレクタ２１１等との間、及び、コレクタ２１１等とファイナルコレクタ２９１との間で、往路メッセージや復路メッセージが送信される。コレクタ２１１等及びファイナルコレクタ２９１は、往路メッセージを受信するとＡＣＫを返信する。これに対して、往路メッセージを送信したエージェント１１１等及びコレクタ２１１等は、送信先からＡＣＫを受信するまで、所定回数に亘って往路メッセージの送信を繰り返す。同様に、エージェント１１１等及びコレクタ２１１等は、復路メッセージを受信するとＡＣＫを返信し、復路メッセージを送信したコレクタ２１１等及びファイナルコレクタ２９１は、送信先からＡＣＫを受信するまで、所定回数に亘って復路メッセージの送信を繰り返す。このため、ステータスレポートは、通信状況を、往路メッセージの再送信回数若しくは復路メッセージの再送信回数を用いて表しても良い。
【０２０３】
ステップＳ１１２が実行された後に、障害発生判別部４３０は、情報記憶部４１０から診断モデルを表すデータを読み出し、読み出したデータで表されるモデルに、ステータスレポートで報告された動作状態を入力する。次に、障害発生判別部４３０は、診断モデルを解析することで、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれかに障害が発生したか否かを判別する（ステップＳ１１４）。このとき、故障が発生していない、と障害発生判別部４３０が判別すると（ステップＳ１１４；Ｎｏ）、ステップＳ１１１から上記処理が繰り返される。
【０２０４】
これに対して、故障が発生した、と障害発生判別部４３０が判別すると（ステップＳ１１４；Ｙｅｓ）、障害発生判別部４３０は、診断モデルをさらに解析することで、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれに故障が発生したか、及び、発生した故障の種類を特定する。
【０２０５】
さらに、障害発生判別部４３０は、故障が発生したことが特定されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか（以下、故障発生部という）の設定対応情報に対応付けて情報記憶部４１０が記憶する設定対応情報を特定する。次に、障害発生判別部４３０は、特定した設定対応情報が設定されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上を、故障発生部の通信相手であると特定する。
【０２０６】
その後、障害発生判別部４３０は、受信されたステータスレポートに基づいて、故障発生部とその通信相手との通信に異常が生じたか否かを判別する。次に、故障発生装置の設定対応情報と、特定した故障の種類を表す情報と、に対応付けて、情報記憶部４１０が記憶する制御内容データを特定する（ステップＳ１１５）。
【０２０７】
その後、障害解消制御部４５０は、さらに障害が生じることを回避したり、障害を解消させるため、特定された制御内容データで表される制御内容で、故障発生部を制御する（ステップＳ１１６）。
【０２０８】
次に、障害解消制御部４５０は、故障発生部と故障発生部の通信相手とのリンクを再確立し、通信障害を回復するように、故障発生部の通信相手を制御する（ステップＳ１１７）。その後、ステップＳ１１１から上記処理が繰り返される。
【０２０９】
ステップＳ１１７において、故障発生部の通信相手は、通信障害が生じる前に受信した往路メッセージに基づいて、通信に用いられる故障発生部のアドレス及びポート番号を特定し、特定したアドレス及びポート番号を用いて故障発生部とのリンクを再確立しても良い。
【０２１０】
具体的には、故障発生部の通信相手は、往路メッセージを受信すると、当該往路メッセージを送信する前若しくは送信した後から、往路メッセージを所定期間に亘って記憶する。次に、障害解消制御部４５０から、通信障害を回復するように制御されると、故障発生部の通信相手は、記憶している往路メッセージから対応情報リストＤＬ１を抽出する。その後、故障発生部の通信相手は、対応情報リストＤＬ１から、上記往路メッセージの往路において、送受信装置１１０のエージェント１１１を起点として、当該故障発生部の通信相手の直前に位置するエージェント若しくはコレクタの設定対応情報を特定する。次に、故障発生部の通信相手は、特定した設定対応情報を故障発生部の設定対応情報とし、当該設定対応情報に含まれるＩＰアドレスとポート番号とを用いて故障発生部とのリンクを再確立する。
【０２１１】
勿論、故障発生部の通信相手は、往路メッセージに代えて、若しくは、往路メッセージだけでなく復路メッセージに基づいて、故障発生部とのリンクを再確立してもよい。
【０２１２】
さらに、故障発生部の通信相手は、復路メッセージの対応情報リストＤＬ２から、往路において、送受信装置１１０のエージェント１１１を起点として、当該故障発生部の通信相手の直後に位置するコレクタ若しくはファイナルコレクタの設定対応情報を特定し、特定した設定対応情報を故障発生部の設定対応情報としても良い。
【０２１３】
ステップＳ１１１において、レポート受信部４２０は、終了条件が満足されたと判別されると（ステップＳ１１１；Ｙｅｓ）、障害解消制御処理の実行を終了する。
【０２１４】
これらの構成によれば、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上から受信したステータスレポートに基づいてこれらの装置のいずれかに障害が生じたと判別すると、障害が生じたと判別されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上を、当該障害に応じた動作を行うように制御する。特に、障害に応じた動作は、障害の影響が波及し難い動作を含む。このため、新たに生じる障害を自動的に回避できる。
【０２１５】
またこれらの構成によれば、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上に障害が生じたと判別すると、障害が生じたと判別されたエージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上（つまり、障害発生部）との通信相手を、障害発生部との通信を回復するように制御する。このため、エージェント１１１等、コレクタ２１１等、及びファイナルコレクタ２９１のいずれか１つ以上に生じた障害により通信障害が発生しても、通信障害を自動的に回復できる。
【０２１６】
本実施例若しくは本実施例の変形例１から１９のいずれかに係る機能を実現するための構成を予め備えた中間中継装置２１０から２４０若しくは最終中継装置２９０として提供できることはもとより、プログラムの適用により、既存の中間中継装置及び最終中継装置２９０を本実施例若しくは本実施例の変形例１から１９のいずれかに係る中間中継装置２１０から２４０として機能させることもできる。すなわち、上記本実施例若しくは本実施例の変形例１から１９のいずれかで例示した中間中継装置２１０から２４０若しくは最終中継装置２９０による各機能構成を実現させるための中継プログラムを、既存の中間中継装置若しくは最終中継装置を制御するコンピュータ（ＣＰＵなど）が実行できるように適用することで、本実施例若しくは本実施例の変形例１から１９のいずれかに係る中間中継装置２１０から２４０若しくは最終中継装置２９０として機能させることができる。
【０２１７】
このようなプログラムの配布方法は任意であり、例えば、メモリカード、ＣＤ−ＲＯＭ、又はＤＶＤ−ＲＯＭなどの記録媒体に格納して配布できる他、インターネットなドの通信媒体を介して配布することもできる。また、本発明に係る中継方法及び通信方法は、本実施例に係る中間中継装置２１０から２４０及び通信システム１をそれぞれ用いて実施できる。
【０２１８】
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【０２１９】
本出願は、２０１２年１月３１日に出願された日本国特許出願２０１２−０１７５１４号に基づく。本明細書中に日本国特許出願２０１２−０１７５１４号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。
【産業上の利用可能性】
【０２２０】
本発明は、メッセージを中継する通信システム及び中継装置、中継プログラム、中継プログラムを記録したコンピュータ読み取り可能な記録媒体、並びに通信方法及び中継方法に適する。
【符号の説明】
【０２２１】
１：通信網システム
１０：通信網
１１：端末装置
１１ｄａ：第１設定取得部
１１ｄｂ：リクエスト受信部
１１ｄｃ：サービス提供部
１１ｄｄ：イベントデータ生成部
１１ｄｅ：ダイジェスト生成部
１１ｄｆ：ダイジェスト保存部
１１ｄｇ：対応情報追加部
１１ｄｈ：往路メッセージ送信部
１１ｄｉ：往路メッセージ生成部
１１ｒａ：第２設定取得部
１１ｒｂ：復路メッセージ受信部
１１ｒｃ：ダイジェスト検索部
１１ｒｄ：判定部
１１ｒｅ：往路メッセージ再送信部
２１ｄａ：第１設定取得部
２１ｄｂ：往路メッセージ受信部
２１ｄｃ：対応情報追加部
２１ｄｄ：往路メッセージ送信部
２１ｄｅ：往路メッセージ再生成部
２１ｒａ：第２設定取得部
２１ｒｂ：復路メッセージ受信部
２１ｒｃ：対応データ抽出部
２１ｒｄ：対応情報削除部
２１ｒｅ：送信先特定部
２１ｒｆ：復路メッセージ送信部
２９ｒａ：往路メッセージ受信部
２９ｒｂ：対応情報抽出部
２９ｒｃ：往路メッセージ保存部
２９ｒｄ：誤り検出符合生成部
２９ｒｅ：応答メッセージ生成部
２９ｒｆ：誤り検出符合追加部
２９ｒｇ：対応情報追加部
２９ｒｈ：送信先特定部
２９ｒｉ：復路メッセージ送信部
２９ｔａ：往路メッセージ検索部
２９ｔｂ：往路メッセージ送信部
２９ｔｃ：応答受信部
２９ｔｄ：往路メッセージ削除部
１１０、１２０、１３０：送受信装置
１１０ａ：ＣＰＵ
１１０ｂ：ＲＯＭ
１１０ｃ：ＲＡＭ
１１０ｄ：ハードディスク
１１０ｅ：メディアコントローラ
１１０ｆ：ＬＡＮカード
１１０ｇ：ビデオカード
１１０ｈ：ＬＣＤ
１１０i：キーボード
１１０ｊ：スピーカ
１１０ｋ：タッチパッド
１１１、１１２、１２１、１３１：送受信部（エージェント）
１１１ｄ：往路メッセージ送信部（ディストリビュータ）
１１１ｍ：情報記憶部
１１１ｒ：復路メッセージ受信部（レシーバ）
２１０、２２０、２３０、２４０：中間中継装置
２１０ａ：ＣＰＵ
２１０ｂ：ＲＯＭ
２１０ｃ：ＲＡＭ
２１０ｄ：ハードディスク
２１０ｅ：メディアコントローラ
２１０ｆ：ＬＡＮカード
２１０ｇ：ビデオカード
２１０ｈ：ＬＣＤ
２１０i：キーボード
２１０ｊ：スピーカ
２１０ｋ：タッチパッド
２１１、２１２、２２１、２３１、２４１、２４２：中間中継部（コレクタ）
２１１ｄ：往路メッセージ中継部（ディストリビュータ）
２１１ｒ：復路メッセージ中継部（レシーバ）
２９０：最終中継装置
２９０ａ：ＣＰＵ
２９０ｂ：ＲＯＭ
２９０ｃ：ＲＡＭ
２９０ｄ：ハードディスク
２９０ｅ：メディアコントローラ
２９０ｆ：ＬＡＮカード
２９０ｇ：ビデオカード
２９０ｈ：ＬＣＤ
２９０i：キーボード
２９０ｊ：スピーカ
２９０ｋ：タッチパッド
２９１：最終中継部（ファイナルコレクタ）
２９１ｒ：応答部
２９１ｍ：情報記憶部
２９１ｔ：メッセージ集積部
３００：管理サーバ
３０１：管理部
４００：制御装置
４１０：情報記憶部
４２０：レポート受信部
４３０：障害判定部
４４０：制御内容決定部
４５０：障害解消制御部
【図１】
2013114670.tif 000003
【図２】
2013114670.tif 000004
【図３Ａ】
2013114670.tif 000005
【図３Ｂ】
2013114670.tif 000006
【図４Ａ】
2013114670.tif 000007
【図４Ｂ】
2013114670.tif 000008
【図４Ｃ】
2013114670.tif 000009
【図５】
2013114670.tif 000010
【図６Ａ】
2013114670.tif 000011
【図６Ｂ】
2013114670.tif 000012
【図６Ｃ】
2013114670.tif 000013
【図７Ａ】
2013114670.tif 000014
【図７Ｂ】
2013114670.tif 000015
【図７Ｃ】
2013114670.tif 000016
【図８Ａ】
2013114670.tif 000017
【図８Ｂ】
2013114670.tif 000018
【図８Ｃ】
2013114670.tif 000019
【図８Ｄ】
2013114670.tif 000020
【図８Ｅ】
2013114670.tif 000021
【図８Ｆ】
2013114670.tif 000022
【図８Ｇ】
2013114670.tif 000023
【図８Ｈ】
2013114670.tif 000024
【図８Ｉ】
2013114670.tif 000025
【図９】
2013114670.tif 000026
【図１０】
2013114670.tif 000027
【図１１】
2013114670.tif 000028
【図１２】
2013114670.tif 000029
【図１３】
2013114670.tif 000030
【図１４】
2013114670.tif 000031
【図１５】
2013114670.tif 000032
【図１６】
2013114670.tif 000033
【図１７Ａ】
2013114670.tif 000034
【図１７Ｂ】
2013114670.tif 000035
【図１７Ｃ】
2013114670.tif 000036
【図１７Ｄ】
2013114670.tif 000037
【図１７Ｅ】
2013114670.tif 000038
【図１８】
2013114670.tif 000039
【図１９】
2013114670.tif 000040
【図２０】
2013114670.tif 000041
【図２１】
2013114670.tif 000042
【手続補正書】
【提出日】平成26年6月4日(2014.6.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから、リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置内の上記複数のエージェントは、
・上記送受信装置に割り当てられている自身のアドレスと、上記往路メッセージの送信に用いるポート番号と、が追加されたリストを含む第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、をそれぞれ備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする通信システム。
【請求項２】
上記初段中継装置と上記最終段中継装置との間の少なくとも１つの中段中継装置で更に構成され、
（５）．上記中段中継装置は、
・上記第２の往路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した上記第２の往路メッセージのリストに当該中段中継装置自身のアドレスを追加するアドレス追加器と、
・上記アドレス追加器で上記アドレスが追加された上記第２の往路メッセージを送信する第４の送信器と、を備え、
上記中段中継装置の第３の受信器は、上記復路メッセージを受信し、
上記中段中継装置の第４の送信器は、上記第３の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する装置に対応する所定アドレスに基づいて、上記復路メッセージを送信し、
上記初段中継装置の第１の受信器は、上記往路において上記送受信装置を起点として当該初段中継装置よりも後段に位置する中段中継装置から復路メッセージを受信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項３】
上記送受信装置は、上記初段中継装置から復路メッセージを受信する第４の受信器、を更に備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項４】
上記初段中継装置及び上記中段中継装置の少なくとも１つは、上記受信した上記復路メッセージのリストに含まれる自身のアドレスを削除するアドレス削除器、を更に備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項５】
上記初段中継装置の第２のメッセージ生成器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記初段中継装置は、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該初段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記初段中継装置の第２の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項６】
上記中段中継装置のアドレス追加器は、上記受信された往路メッセージに含まれているリストに、上記自身のアドレスに対応付けて、上記往路メッセージの中継回数を更に追加し、
上記中段中継装置は、上記往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスを、上記受信した復路メッセージのリストから、当該中段中継装置が追加した中継回数に基づいて特定する特定器、を更に備え、
上記中段中継装置の第４の送信器は、上記特定器で特定した所定アドレスに基づいて、上記復路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項７】
上記初段中継装置及び上記中段中継装置は、ポート番号がそれぞれ設定された複数のコレクタをそれぞれ有し、
上記初段中継装置が有する上記複数のコレクタのそれぞれは、上記第１の受信器及び上記第２のメッセージ生成器を有し、
上記複数のコレクタの内で、上記第１の往路メッセージを受信した上記第１の受信器を有するコレクタの上記第２のメッセージ生成器は、上記受信された第１の往路メッセージに含まれているリストに、当該初段中継装置に割り当てられている自身のアドレスに加えて、更に上記第１の往路メッセージの受信を行ったコレクタが通信に用いるポート番号を追加することで、上記第２の往路メッセージを生成し、
上記中段中継装置が有する上記複数のコレクタのそれぞれは、上記第３の受信器及び上記第４の送信器を有し、
上記複数のコレクタの内で、上記復路メッセージを受信した上記第３の受信器を有するコレクタの上記第４の送信器は、上記第３の受信器が上記復路メッセージを受信すると、上記受信した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該中段中継装置の前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは当該中段中継装置と異なる中段中継装置で上記往路メッセージの通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項８】
上記中段中継装置が有する上記複数のコレクタのそれぞれは、上記アドレス追加器をさらに有し、
上記複数のコレクタの内で、上記第２の往路メッセージを受信した上記第３の受信器を有するコレクタの上記アドレス追加器は、上記受信された第２の往路メッセージに含まれているリストに、当該中段中継装置に割り当てられている自身のアドレスに加えて、更に当該中段中継装置において上記第２の往路メッセージの受信を行ったコレクタが通信に用いるポート番号を追加し、
上記最終段中継装置の第３の送信器は、上記生成した復路メッセージのリストに含まれるアドレスの内で、上記往路において上記送受信装置を起点として当該最終段中継装置の前段に位置する初段中継装置若しくは中段中継装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する初段中継装置若しくは中段中継装置で上記第１の往路メッセージ若しくは上記第２の往路メッセージの通信に用いたポート番号と、を指定して上記復路メッセージを送信する、
ことを特徴とする上記請求項７記載の通信システム。
【請求項９】
３つ以上の上記中段中継装置で少なくとも構成され、
上記中段中継装置は、
・上記最終段中継装置に割り当てられたアドレスと、上記最終段中継装置へ上記第２の往路メッセージを最終的に送信するために上記第２の往路メッセージを送信する送信先の候補となる上記３つ以上の中段中継装置の１つに割り当てられたアドレスと、を少なくとも２つ記憶したテーブルを記憶する記憶部、をさらに備え、
上記中段中継装置の特定器は、上記記憶部に記憶されたテーブルから、上記最終段中継装置に割り当てられたアドレスに対応付けられた２以上のアドレスを特定し、
上記中段中継装置の第４の送信器は、上記特定器で特定された２以上のアドレスのうち１つを上記送信先に割り当てられたアドレスとして指定した上記第２の往路メッセージの送信が失敗すると、上記検索された２以上のアドレスのうち、他の１つを上記送信先に割り当てられたアドレスとして指定して、上記第２の往路メッセージを送信する、
ことを特徴とする上記請求項２記載の通信システム。
【請求項１０】
上記送受信装置は、上記第１の送信器が送信する上記第１の往路データに含まれるデータのダイジェストを生成する第１のダイジェスト生成器、を更に備え、
上記最終段中継装置は、上記第２の受信器で受信された第２の往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器、を更に備え、
上記最終段中継装置の第３のメッセージ生成器は、上記第２のダイジェスト生成器で生成されたダイジェストを追加された上記復路メッセージを生成し、
上記最終段中継装置の第３の送信器は、上記第３のメッセージ生成器で生成された復路メッセージを送信し、
上記送受信装置は、上記第４の受信器で受信された復路メッセージに含まれるダイジェストと、当該送受信装置の第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記第１の往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器、を更に備えた、
ことを特徴とする上記請求項３記載の通信システム。
【請求項１１】
複数の上記送受信装置で少なくとも構成され、
上記複数の送受信装置は、互いに異なる暗号鍵を用いて上記第１のメッセージ生成器で生成された第１の往路メッセージを暗号化する暗号化器、をそれぞれ更に備え、
上記複数の送受信装置がそれぞれ備える第１の送信器は、上記それぞれの暗号化器で暗号化された第１の往路メッセージを送信する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項１２】
上記最終段中継装置は、上記第２の往路メッセージに含まれるイベントデータを、上記送受信装置を管理する管理サーバに集積する、
ことを特徴とする上記請求項１記載の通信システム。
【請求項１３】
上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御装置、で更に構成され、
上記制御装置は、
・上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上から、動作状態を報告するステータスレポートを受信する第５の受信器と、
・上記第５の受信器で受信したステータスレポートに基づいて、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上に障害が生じたか否かを判別する障害発生判別器と、
・上記障害発生判別器で障害が生じたと判別した装置との通信を回復するように、上記送受信装置、上記初段中継装置、上記少なくとも１つの中段中継装置、及び上記最終段中継装置のいずれか１つ以上を制御する制御器と、を備えた、
ことを特徴とする上記請求項２記載の通信システム。
【請求項１４】
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから、リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置内の上記複数のエージェントは、
・第１の往路メッセージを生成する第１のメッセージ生成器と、
・上記第１のメッセージ生成器で生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信器と、をそれぞれ備え、
（２）．上記初段中継装置は、
・上記第１の往路メッセージを受信する第１の受信器と、
・上記第１の受信器が上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成器と、
・上記第２のメッセージ生成器で生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記第２の往路メッセージを受信する第２の受信器と、
・上記第２の受信器で受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．
上記初段中継装置の第１の受信器は、上記復路メッセージを受信し、
上記初段中継装置の第２の送信器は、上記第１の受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて上記復路メッセージを送信する、
ことを特徴とする通信システム。
【請求項１５】
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムにおいて、
（１）．上記送受信装置は、
・上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成器と、
・上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信器と、を備え、
（２）．上記初段中継装置は、
・上記往路メッセージを受信する第１の受信器と、
・上記第１の受信器で受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信器と、を備え、
（３）．上記最終段中継装置は、
・上記往路メッセージを受信する第２の受信器と、
・上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成器と、
・上記第２のダイジェスト生成器で生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成器と、
・上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信器と、を備え、
（４）．上記送受信装置は、
・上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信器と、
・上記第３の受信器で受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成器で生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別器と、を更に備えた、
ことを特徴とする通信システム。
【請求項１６】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする中継装置。
【請求項１７】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置において、
ポート番号がそれぞれ設定された複数のエージェントを有する送受信装置から、前記複数のエージェントのうち指定されたエージェントから送信された第１の往路メッセージを受信する往路受信器と、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器と、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器と、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器と、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器と、を備えた、
ことを特徴とする中継装置。
【請求項１８】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラム。
【請求項１９】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
ポート番号がそれぞれ設定された複数のエージェントを有する送受信装置から、前記複数のエージェントのうち指定されたエージェントから送信された第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラム。
【請求項２０】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２１】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置のコンピュータを、
ポート番号がそれぞれ設定された複数のエージェントを有する送受信装置から、前記複数のエージェントのうち指定されたエージェントから送信された第１の往路メッセージを受信する往路受信器、
上記往路受信器で受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成器、
上記往路メッセージ生成器で生成した第２の往路メッセージを送信する往路送信器、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信器、
上記復路受信器で受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信器、として機能させる、
ことを特徴とする中継プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２２】
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから、リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置内の上記指定されたエージェントが、上記送受信装置に割り当てられている自身のアドレスと、上記往路メッセージの送信に用いるポート番号と、が追加されたリストを含む第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置内の上記指定されたエージェントが、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに当該初段中継装置に割り当てられている自身のアドレスを追加することで第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成された第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする通信方法。
【請求項２３】
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから、リストを含む往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記復路メッセージと上記往路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置内の上記指定されたエージェントが、第１の往路メッセージを生成する第１のメッセージ生成ステップと、
・上記送受信装置内の上記指定されたエージェントが、上記第１のメッセージ生成ステップで生成した第１の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記第１の往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで上記第１の往路メッセージを受信すると、上記受信された第１の往路メッセージのリストに、上記往路メッセージの中継経路である往路において、上記送受信装置を起点として当該中段中継装置よりも前段に位置する送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する第２のメッセージ生成ステップと、
・上記初段中継装置が、上記第２のメッセージ生成ステップで生成した第２の往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記第２の往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信ステップで受信された第２の往路メッセージに含まれているリストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記復路メッセージのリストに追加されたアドレスに基づいて、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記初段中継装置が、上記復路メッセージを受信するステップと、
・上記初段中継装置が、上記受信した復路メッセージのリストに含まれるアドレスであって、上記往路において上記送受信装置を起点として当該初段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて上記復路メッセージを送信するステップと、を有する、
ことを特徴とする通信方法。
【請求項２４】
往路メッセージを送信する送受信装置と、上記往路メッセージの最終的な宛先であり、かつ上記往路メッセージに応じて復路メッセージを上記送受信装置に送信する最終段中継装置と、上記往路メッセージと上記復路メッセージとを中継する初段中継装置と、から少なくとも構成される通信システムが実行する方法において、
（１）．
・上記送受信装置が、上記往路メッセージに含まれるデータのダイジェストを生成する第１のダイジェスト生成ステップと、
・上記送受信装置が、上記最終段中継装置を最終的な宛先として上記往路メッセージを送信する第１の送信ステップと、
（２）．
・上記初段中継装置が、上記往路メッセージを受信する第１の受信ステップと、
・上記初段中継装置が、上記第１の受信ステップで受信した往路メッセージを、上記最終段中継装置を最終的な宛先として送信する第２の送信ステップと、
（３）．
・上記最終段中継装置が、上記往路メッセージを受信する第２の受信ステップと、
・上記最終段中継装置が、上記第２の受信機で受信された往路メッセージに含まれるデータのダイジェストを生成する第２のダイジェスト生成ステップと、
・上記最終段中継装置が、上記第２のダイジェスト生成ステップで生成されたダイジェストが追加された復路メッセージを生成する第３のメッセージ生成ステップと、
・上記最終段中継装置が、上記送受信装置を最終的な宛先として上記復路メッセージを送信する第３の送信ステップと、
（４）．
・上記送受信装置が、上記往路において上記送受信装置を起点として上記送受信装置よりも後段に位置する初段中継装置から上記復路メッセージを受信する第３の受信ステップと、
・上記送受信装置が、上記第３の受信ステップで受信した復路メッセージに含まれるダイジェストと、上記第１のダイジェスト生成ステップで生成したダイジェストと、が同一か否かに基づいて、上記最終段中継装置への上記往路メッセージに含まれるデータの送信が成功したか否かを判別する送信結果判別ステップと、を有する、
ことを特徴とする通信方法。
【請求項２５】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
ポート番号がそれぞれ設定された複数のエージェントを有し、前記複数のエージェントのうち指定されたエージェントから上記往路メッセージを送信した送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、が追加されたリストを含む第１の往路メッセージを受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記中継装置に割り当てられている自身のアドレスを追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする中継方法。
【請求項２６】
リストを含む往路メッセージと上記往路メッセージに応答する復路メッセージとを中継する中継装置が実行する方法において、
ポート番号がそれぞれ設定された複数のエージェントを有する送受信装置から、前記複数のエージェントのうち指定されたエージェントから送信された第１の往路メッセージを受信する往路受信ステップと、
上記往路受信ステップで受信された第１の往路メッセージに含まれるリストに、上記送受信装置に割り当てられているアドレスと、当該送受信装置において上記往路メッセージの送信を行ったエージェントが通信に用いたポート番号と、を追加することで、第２の往路メッセージを生成する往路メッセージ生成ステップと、
上記往路メッセージ生成ステップで生成した第２の往路メッセージを送信する往路送信ステップと、
上記往路メッセージのリストが追加された復路メッセージを受信する復路受信ステップと、
上記復路受信ステップで受信した復路メッセージのリストに含まれるアドレスであって、上記往路メッセージの中継経路である往路において上記送受信装置を起点として当該中段中継装置よりも前段に位置する上記送受信装置に対応する所定アドレスと、上記受信された復路メッセージのリストに含まれるポート番号の内で、上記前段に位置する上記送受信装置内の上記指定されたエージェントが通信に用いたポート番号と、に基づいて、上記復路メッセージを送信する復路送信ステップと、を有する、
ことを特徴とする中継方法。
【国際調査報告】
2013114670.tif 000043
2013114670.tif 000044
2013114670.tif 000045
2013114670.tif 000046