(57)【要約】  【課題】多数の機器を対象として状態確認などを実用的な時間で行うことができ、機器の負荷も低く抑えられるネットワークシステムを提供する。  【解決手段】複数の対象装置がグループ化の繰返しによりツリー型の階層構造を構築する。マルチキャストで送られたコマンドの応答が、各々の階層の各々のグループを代表する中継サーバーを介して受け取られる。最下層中継サーバーは、最下層グループを構成する対象装置から選定優先度に基づいて選定される。任意の上位層グループとその下の下位層グループについては、上位層中継サーバーが、下位層グループの下位層中継サーバーから選定優先度に基づいて選定される。選定優先度に応じて設定される待ち時間を利用することにより、選定優先度の高い対象装置が自動的に中継サーバーに選定される。【選択図】  図１
2007201984.tif 000002
【特許請求の範囲】
【請求項１】
複数の対象装置がネットワークで接続されるネットワークシステムであって、
前記複数の対象装置がグループ化の繰返しによりツリー型の階層構造を構築し、各々の最下層グループが一以上の対象装置で構成され、各々の上位層グループがその下の一以上の下位層グループで構成され、
前記複数の対象装置にマルチキャストで送られたコマンドの応答が、各々の階層の各々のグループを代表する中継サーバーを介して受け取られ、
各最下層グループの最下層中継サーバーは、該最下層グループを構成する対象装置から、各対象装置に付与された前記最下層中継サーバーの選定優先度に基づいて選定され、
任意の上位層グループとその下の下位層グループについては、該上位層グループの上位層中継サーバーが、該上位層グループを構成する下位層グループの下位層中継サーバーから、各下位層グループに付与された前記上位層中継サーバーの選定優先度に基づいて選定されることを特徴とするネットワークシステム。
【請求項２】
前記複数の対象装置と前記ネットワークで接続される管理装置を含み、
前記管理装置は、
各最下層グループに固有のグループマルチキャストアドレスを割り当て、該最下層グループに属するべき各対象装置に前記最下層中継サーバーの選定優先度と共に該最下層グループへの参加を指示するグループ参加コマンドを送信するグループ化処理部と、
前記グループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信する中継サーバー確認コマンド送信部と、を有し、
前記複数の対象装置の各々は、
前記グループ参加コマンドを受信して前記選定優先度を保持するとともに前記グループマルチキャストアドレスにジョインするグループ参加コマンド処理部と、
前記中継サーバー確認コマンドを受信して処理する中継サーバー確認コマンド処理部と、を有し、
前記中継サーバー確認コマンド処理部は、
前記対象装置自身が前記最下層中継サーバーであるときは所定の中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記最下層中継サーバーでなくとも、前記中継サーバー確認コマンドの受信から前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記最下層中継サーバーとして認識することを特徴とする請求項１に記載のネットワークシステム。
【請求項３】
前記管理装置の前記グループ化処理部は、任意の上位層グループとその下に属すべき複数の下位層グループについては、該上位層グループに固有のグループマルチキャストアドレスを割り当て、該上位層グループに属すべき各下位層グループに前記上位層中継サーバーの選定優先度と共に該上位層グループへの参加を指示するグループ参加コマンドを送信し、
前記管理装置の前記中継サーバー確認コマンド送信部は、前記上位層グループのグループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信し、
前記対象装置の前記グループ参加コマンド処理部は、前記上位層グループの前記グループ参加コマンドを受信して前記上位層グループのグループマルチキャストアドレスにジョインし、
前記対象装置の前記中継サーバ確認コマンド処理部は、
前記対象装置自身が前記上位層中継サーバーであるときは中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記上位層中継サーバーでなくとも、前記中継サーバー確認コマンドを受信してから前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記上位層中継サーバーとして認識することを特徴とする請求項２に記載のネットワークシステム。
【請求項４】
前記中継サーバー確認コマンド処理部は、前記対象装置自身が前記上位層中継サーバーになったとき、前記下位層中継サーバーを辞退するために、前記対象装置自身に付与された前記下位層中継サーバーの選定優先度を下方に変更すると共に、前記下位層グループの前記グループマルチキャストアドレスに前記中継サーバー確認コマンドを送信することを特徴とする請求項３に記載のネットワークシステム。
【請求項５】
前記管理装置は、マルチキャストでヘルスチェックコマンドを発行するヘルスチェックコマンド発行部を有し、
前記対象装置は、前記ヘルスチェックコマンドを処理するヘルスチェックコマンド処理部を有し、
前記ヘルスチェックコマンド処理部は、
前記対象装置自身が前記中継サーバーでないときは、前記ヘルスチェックコマンドに対する応答を前記中継サーバーに送り、
前記対象装置自身が前記中継サーバーであるときは、配下の前記対象装置または前記中継サーバーから送られてくる応答を統合して上位層の中継サーバーまたは前記管理装置に送信することを特徴とする請求項３または４に記載のネットワークシステム。
【請求項６】
前記ヘルスチェックコマンドに対する応答メッセージは、それぞれ異なる故障要因に対応した複数ビットのデータを含み、前記上位層中継サーバーは、配下の下位層中継サーバーからの複数の応答メッセージにそれぞれ含まれる前記複数ビットのデータをＯＲ演算によって統合することを特徴とする請求項５に記載のネットワークシステム。
【請求項７】
前記ヘルスチェックコマンド処理部は、前記対象装置自身が前記中継サーバーである場合は、配下の前記対象装置または前記中継サーバーからの所定の応答待ち時間内の無応答を検出し、前記無応答検出の前記応答待ち時間が、前記最下層グループから上位のグループに行くほど長く設定されていることを特徴とする請求項５または６に記載のネットワークシステム。
【請求項８】
前記管理装置の前記ヘルスチェックコマンド発行部は、定期的にヘルスチェックコマンドを送信し、
前記対象装置の前記ヘルスチェックコマンド処理部は、前記対象装置自身が前記中継サーバーである場合に、所定のチェック待ち時間が経過しても前記ヘルスチェックコマンドが受信されないときに、自ら前記ヘルスチェックコマンドを発行し、前記チェック待ち時間が、上位層から下位層に行くほど長く設定されていることを特徴とする請求項５ないし７のいずれかに記載のネットワークシステム。
【請求項９】
前記対象装置の前記中継サーバー確認コマンド処理部は、前記対象装置自身が前記上位層中継サーバーであり、かつ、配下の下位層中継サーバーの無応答を検出したとき、該下位層グループの前記グループマルチキャストアドレスに前記中継サーバー確認コマンドを送信することを特徴とする請求項３ないし８のいずれかに記載のネットワークシステム。
【請求項１０】
前記対象装置は、マルチキャストで送信されたコマンドに応答するコマンド応答処理部を有し、
前記コマンド応答処理部は、
前記対象装置自身が前記中継サーバーでないときは、前記コマンドに対する応答を前記中継サーバーに送り、
前記対象装置自身が前記中継サーバーであるときは、配下の前記対象装置または前記中継サーバーから送られてくる応答を統合して上位層の中継サーバーまたは前記管理装置に送信することを特徴とする請求項１ないし９のいずれかに記載のネットワークシステム。
【請求項１１】
複数の他の対象装置とネットワークで接続され、前記複数の他の対象装置と共にグループ化によって階層構造を構築する対象装置であって、
前記対象装置自身が属するべき最下層グループに固有のグループマルチキャストアドレスを含むグループ参加コマンドを、前記対象装置自身に付与された最下層中継サーバーへの選定優先度と共に受信し、前記選定優先度を保持し、前記グループマルチキャストアドレスにジョインするグループ参加コマンド処理部と、
前記対象装置自身の前記最下層グループのグループマルチキャストアドレスに送られた所定の中継サーバー確認コマンドを受信して処理する中継サーバー確認コマンド処理部と、を有し、
前記中継サーバー確認コマンド処理部は、
前記対象装置自身が前記最下層中継サーバーであるときは所定の中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記最下層中継サーバーでなくとも、前記中継サーバー確認コマンドの受信から前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記最下層中継サーバーとして認識することを特徴とする対象装置。
【請求項１２】
前記グループ参加コマンド処理部は、任意の上位層グループとその下に属すべき複数の下位層グループについては、前記上位層グループに固有のグループマルチキャストアドレスを含むグループ参加コマンドを、前記対象装置自身が属する前記下位層グループに付与された上位層中継サーバーへの選定優先度と共に受信し、前記選定優先度を保持し、前記上位層グループのグループマルチキャストアドレスにジョインし、
前記中継サーバ確認コマンド処理部は、
前記上位層グループのグループマルチキャストアドレスに送られた前記中継サーバーコマンドを受信し、
前記対象装置自身が前記上位層中継サーバーであるときは中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記上位層中継サーバーでなくとも、前記中継サーバー確認コマンドを受信してから前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記上位層中継サーバーとして認識することを特徴とする請求項１１に記載の対象装置。
【請求項１３】
複数の対象装置とネットワークで接続され、前記複数の対象装置のグループ化により階層構造を構築する管理装置であって、
前記複数の対象装置を複数の最下層グループに分け、各最下層グループに固有のグループマルチキャストアドレスを割り当て、該最下層グループに属するべき各対象装置に最下層中継サーバーの選定優先度と共に該最下層グループへの参加を指示するグループ参加コマンドを送信するグループ化処理部と、
前記グループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信する中継サーバー確認コマンド送信部と、
を有することを特徴とする管理装置。
【請求項１４】
前記グループ化処理部は、任意の上位層グループとその下に属すべき複数の下位層グループについては、該上位層グループに固有のグループマルチキャストアドレスを割り当て、該上位層グループに属すべき各下位層グループに上位層中継サーバーの選定優先度と共に該上位層グループへの参加を指示するグループ参加コマンドを送信し、
前記中継サーバー確認コマンド送信部は、前記上位層グループのグループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信することを特徴とする請求項１３に記載の管理装置。
【請求項１５】
複数の対象装置がネットワークで接続されるネットワークシステムの階層構造構築方法であって、
前記複数の対象装置がグループ化の繰返しによりツリー型の階層構造を構築し、各々の最下層グループが一以上の対象装置で構成され、各々の上位層グループがその下の一以上の下位層グループで構成され、
前記複数の対象装置にマルチキャストで送られたコマンドの応答が、各々の階層の各々のグループを代表する中継サーバーを介して受け取られ、
各最下層グループの最下層中継サーバーは、該最下層グループを構成する対象装置から、各対象装置に付与された前記最下層中継サーバーの選定優先度に基づいて選定され、
任意の上位層グループとその下の下位層グループについては、該上位層グループの上位層中継サーバーが、該上位層グループを構成する下位層グループの下位層中継サーバーから、各下位層グループに付与された前記上位層中継サーバーの選定優先度に基づいて選定されることを特徴とする階層構造構築方法。
【請求項１６】
前記複数の対象装置に前記ネットワークで管理装置が接続され、
前記管理装置は、各最下層グループに固有のグループマルチキャストアドレスを割り当て、該最下層グループに属するべき各対象装置に前記最下層中継サーバーの選定優先度と共に該最下層グループへの参加を指示するグループ参加コマンドを送信し、
前記対象装置は、前記グループ参加コマンドを受信して前記選定優先度を保持するとともに前記グループマルチキャストアドレスにジョインし、
前記管理装置は、前記グループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信し、
前記対象装置は、
前記対象装置自身が前記最下層中継サーバーであるときは所定の中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記最下層中継サーバーでなくとも、前記中継サーバー確認コマンドの受信から前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記最下層中継サーバーとして認識することを特徴とする請求項１５に記載の階層構造構築方法。
【請求項１７】
前記管理装置は、任意の上位層グループとその下に属すべき複数の下位層グループについては、該上位層グループに固有のグループマルチキャストアドレスを割り当て、該上位層グループに属すべき各下位層グループに前記上位層中継サーバーの選定優先度と共に該上位層グループへの参加を指示するグループ参加コマンドを送信し、
前記対象装置は、前記上位層グループの前記グループ参加コマンドを受信して前記上位層グループのグループマルチキャストアドレスにジョインし、
前記管理装置は、前記上位層グループのグループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信し、
前記対象装置は、
前記対象装置自身が前記上位層中継サーバーであるときは中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記上位層中継サーバーでなくとも、前記中継サーバー確認コマンドを受信してから前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記上位層中継サーバーとして認識することを特徴とする請求項１６に記載の階層構造構築方法。
【請求項１８】
複数の他の対象装置とネットワークで接続され、前記複数の他の対象装置と共にグループ化によって階層構造を構築する対象装置で実行されるプログラムであって、
前記対象装置自身が属するべき最下層グループに固有のグループマルチキャストアドレスを含むグループ参加コマンドを、前記対象装置自身に付与された最下層中継サーバーへの選定優先度と共に受信し、前記選定優先度を保持し、前記グループマルチキャストアドレスにジョインするグループ参加コマンド処理と、
前記対象装置自身の前記最下層グループのグループマルチキャストアドレスに送られた所定の中継サーバー確認コマンドを受信して処理する中継サーバー確認コマンド処理と、を前記対象装置に実行させ、
前記中継サーバー確認コマンド処理は、
前記対象装置自身が前記最下層中継サーバーであるときは所定の中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記最下層中継サーバーでなくとも、前記中継サーバー確認コマンドの受信から前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記最下層中継サーバーとして認識する処理であることを特徴とするプログラム。
【請求項１９】
前記グループ参加コマンド処理は、任意の上位層グループとその下に属すべき複数の下位層グループについては、前記上位層グループに固有のグループマルチキャストアドレスを含むグループ参加コマンドを、前記対象装置自身が属する前記下位層グループに付与された上位層中継サーバーへの選定優先度と共に受信し、前記選定優先度を保持し、前記上位層グループのグループマルチキャストアドレスにジョインする処理であり、
前記中継サーバ確認コマンド処理は、
前記上位層グループのグループマルチキャストアドレスに送られた前記中継サーバーコマンドを受信し、
前記対象装置自身が前記上位層中継サーバーであるときは中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、
前記対象装置自身が前記上位層中継サーバーでなくとも、前記中継サーバー確認コマンドを受信してから前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記上位層中継サーバーとして認識する処理であることを特徴とする請求項１８に記載のプログラム。
【請求項２０】
複数の対象装置とネットワークで接続され、前記複数の対象装置のグループ化により階層構造を構築する管理装置で実行されるプログラムであって、
前記複数の対象装置を複数の最下層グループに分け、各最下層グループに固有のグループマルチキャストアドレスを割り当て、該最下層グループに属するべき各対象装置に最下層中継サーバーの選定優先度と共に該最下層グループへの参加を指示するグループ参加コマンドを送信するグループ化処理と、
前記グループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信する中継サーバー確認コマンド送信処理と、
を前記管理装置に実行させることを特徴とするプログラム。
【請求項２１】
前記グループ化処理は、任意の上位層グループとその下に属すべき複数の下位層グループについては、該上位層グループに固有のグループマルチキャストアドレスを割り当て、該上位層グループに属すべき各下位層グループに上位層中継サーバーの選定優先度と共に該上位層グループへの参加を指示するグループ参加コマンドを送信する処理であり、
前記中継サーバー確認コマンド送信処理は、前記上位層グループのグループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信する処理であることを特徴とする請求項２０に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の装置がネットワークで接続されるネットワークシステムに関し、特に、状態確認やコマンド同報送信を短時間に行う技術に関する。
【背景技術】
【０００２】
従来より、ネットワーク技術が発展し、その用途が広がっている。例えば、建物や大規模商業施設などの放送システムにおいても、従来のアナログ伝送に代わり、ネットワークを介するデジタル伝送が採用されつつある。典型的には、多数のスピーカーの各々がネットワークの端末装置を備える。デジタル音声データがＩＰ網を介して送信され、各端末装置でアナログ信号に変換されて、各スピーカーから出力される。
【０００３】
複数の機器がネットワークに接続される場合、状態を監視したり、共通のコマンドを送信するのに、従来はポーリング技術が適用されていた。この場合、図１８に示されるように、監視装置は各機器毎に個別に状態を要求し、報告を受ける。また、コマンド送信機は、複数の機器に個別にコマンドを送信し、受領応答を受ける。
【０００４】
別の従来技術では、ＩＰマルチキャストが状態確認やコマンド送信に利用される。この場合、図１９に示されるように、特定のＩＰアドレス（マルチキャストアドレス）が事前に各機器へ通知され、各機器はそのマルチキャストアドレスに「ジョイン」しておく。監視装置またはコマンド送信機はこのマルチキャストアドレスに対し、１回だけ状態要求またはコマンドを送る。状態要求またはコマンドは、ジョインしている全機器に受け取られる。そして、全機器から監視装置またはコマンド送信機へ受領応答（ＡＣＫ（Acknowledge）応答）が返される。
【０００５】
さらに別の従来技術では、マルチキャストに階層構造が導入される（例えば、特許文献１、非特許文献１）。非特許文献１はＲＭＴＰ（A Reliable Multicast Transport Protocol）技術を開示している。ＲＭＴＰでは、図２０に示されるように、特定の端末がＤＲ（Designated Receiver）として指定されて、ツリー型の階層構造が形成される。各機器は、状態確認やその他のコマンドをマルチキャストで受信すると、卑近の下位層ＤＲへとＡＣＫ応答を送信する。下位層のＤＲは、配下の機器からＡＣＫ応答を受け取り、上位層のＤＲへとＡＣＫ応答を送る。これが繰り返され、最上層のＤＲから監視装置またはコマンド送信機へとＡＣＫ応答が送られる。
【特許文献１】特開平１１−３４０９９１号公報
【非特許文献１】J. C. Lin他、"RMTP: A Reliable Multicast Transport Protocol", Proceeding of IEEE INFOCAM '96, 1414-1424
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のネットワークシステムには、下記のような問題がある。まず、ポーリングでは、機器の数が増大した場合に実用的な時間で処理が終わらないという問題がある。ポーリングでは、台数ｎのオーダーの時間が必要なので、例えば、１台当たり１００ｍｓで状態確認を行うとすると、１０，０００台の状態確認には１０００秒かかってしまう。コマンド送信の場合も同様である。例えば、前出の放送システムでは、多数のスピーカーに緊急放送コマンドを送るといった場合には短時間での処理が要求される。しかし、このような要求をポーリングで満足するのは困難である。
【０００７】
マルチキャストは、ポーリングよりも大幅に早く、状態確認やその他のコマンドを多数の機器に同時に送信でき、この点でポーリングより有利である。しかしながら、図２１に示されるように、多数の受領応答が管理装置に殺到してしまい、管理装置の受信バッファがオーバーフローしてしまう（ＡＣＫエクスプロージョン）。
【０００８】
ＡＣＫエクスプロージョンを回避するためには、前述のＲＭＴＰが有効である。ＲＭＴＰは、階層構造を導入することにより、ＡＣＫエクスプロージョンを起こすことなく１対多の通信を行うことができるマルチキャストプロトコルを提案している。また、ＲＭＴＰでは、短時間で応答を受け取ることができる。応答時間は、機器台数をｎとすると、log n のオーダーの値になる。例えば１階層の機器台数が１６だとする。この場合、機器台数が１０，０００台でも、階層数が４にしかならないので、応答時間は相当に短い。
【０００９】
しかしながら、ＲＭＴＰでは、ＤＲが固定されているために、ＤＲが壊れると、上位のＤＲの負荷が増大するという問題がある。例えば、図２２の例では、機器Ｃ、Ｆ、Ｇがすべて壊れると、監視装置へ多数の応答が殺到することになる。
【００１０】
また、ＲＭＴＰは、ファイル等の長大なデータを転送するようにつくられており、そのために各機器にかかる負荷の大きいプロトコルになっている。より詳細には、ＲＭＴＰでは、応答メッセージに、受信に失敗したパケットの情報が含められる。ＤＲは、このような応答メッセージを受信してパケットデータを再送しなければならず、そのためにデータを長時間保持する必要があり、メモリの負担が大きい。また、各機器は、他の処理と並行して、パケット受信の成否を記憶し、応答メッセージを送信しなければならない。このように、ＲＭＴＰは、応答や再送についての負荷が重いプロトコルである。
【００１１】
上記のように、ＲＭＴＰは、故障の発生や、再送および応答の処理内容を考えると、実際に機器にかかる負荷が大きくなる。このような負荷に耐えるためには、豊富な資源と高い処理能力や高い記憶能力を各機器にもたせることが考えられる。しかしながら、機器台数が増大すると、各機器の資源はコストなどの面で制約されてしまい、高い能力を持つ機器の採用は現実的でない。例えば、前述の放送システムにおいて、多数のスピーカー（例えば１０，０００台）の一つ一つに端末機器を備える場合、それら多数の端末機器に高い能力を持たせることは難しい。むしろ、放送システムの各端末機器は、状態確認のコマンドや、「放送を開始せよ」といったような単純なコマンドの処理を、低い能力と少ない資源の範囲内で、音声データ処理と並行して迅速に遂行することを求められる。
【００１２】
本発明は、従来の問題を解決するためになされたもので、その目的は、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができ、機器の負荷も低く抑えられるネットワークシステムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明のネットワークシステムは、複数の対象装置がネットワークで接続されるシステムであって、前記複数の対象装置がグループ化の繰返しによりツリー型の階層構造を構築し、各々の最下層グループが一以上の対象装置で構成され、各々の上位層グループがその下の一以上の下位層グループで構成され、前記複数の対象装置にマルチキャストで送られたコマンドの応答が、各々の階層の各々のグループを代表する中継サーバーを介して受け取られ、各最下層グループの最下層中継サーバーは、該最下層グループを構成する対象装置から、各対象装置に付与された前記最下層中継サーバーの選定優先度に基づいて選定され、任意の上位層グループとその下の下位層グループについては、該上位層グループの上位層中継サーバーが、該上位層グループを構成する下位層グループの下位層中継サーバーから、各下位層グループに付与された前記上位層中継サーバーの選定優先度に基づいて選定される。
【００１４】
この構成により、複数の対象装置が階層構造を構築し、各階層の各グループの中継サーバーが対象装置群から選定されるので、状態確認などのコマンドに対する応答が迅速に伝えられる。また、最下層およびその他の各階層における各グループの中継サーバーが、選定優先度に基づいて選定される。選定優先度が最も高い対象装置が中継サーバーに選定され、その対象装置が故障すれば、選定優先度が次に高い対象装置が中継サーバーに選定される。一つの中継サーバーが故障しても、他の対象装置が代わりに中継サーバーになるので、ネットワーク内での負荷の集中を回避できる。こうして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【００１５】
また、本発明のネットワークシステムは、前記複数の対象装置と前記ネットワークで接続される管理装置を含み、前記管理装置は、各最下層グループに固有のグループマルチキャストアドレスを割り当て、該最下層グループに属するべき各対象装置に前記最下層中継サーバーの選定優先度と共に該最下層グループへの参加を指示するグループ参加コマンドを送信するグループ化処理部と、前記グループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信する中継サーバー確認コマンド送信部と、を有し、前記複数の対象装置の各々は、前記グループ参加コマンドを受信して前記選定優先度を保持するとともに前記グループマルチキャストアドレスにジョインするグループ参加コマンド処理部と、前記中継サーバー確認コマンドを受信して処理する中継サーバー確認コマンド処理部と、を有し、前記中継サーバー確認コマンド処理部は、前記対象装置自身が前記最下層中継サーバーであるときは所定の中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身が前記最下層中継サーバーでなくとも、前記中継サーバー確認コマンドの受信から前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記最下層中継サーバーとして認識する。
【００１６】
この構成により、最下層の中継サーバーが故障すると、その中継サーバーが中継サーバー通知メッセージを送信しないので、他の対象装置で通知待ち時間が経過し、他の対象装置が新たに中継サーバーになる。このとき、通知待ち時間が選定優先度に応じて設定されているので、優先度がより高い対象装置が新たな中継サーバーになる。例えば、通知待ち時間は選定優先度に比例した値に設定される。このようにして、中継サーバーの故障時に他の対象装置が自動的に中継サーバーになるので、ネットワーク内での負荷の集中を回避できる。しかも、中継サーバーの自動選定を、選定優先度に応じた通知待ち時間を用いる簡単な処理で実現できる。こうして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【００１７】
また、本発明のネットワークシステムにおいて、前記管理装置の前記グループ化処理部は、任意の上位層グループとその下に属すべき複数の下位層グループについては、該上位層グループに固有のグループマルチキャストアドレスを割り当て、該上位層グループに属すべき各下位層グループに前記上位層中継サーバーの選定優先度と共に該上位層グループへの参加を指示するグループ参加コマンドを送信し、前記管理装置の前記中継サーバー確認コマンド送信部は、前記上位層グループのグループマルチキャストアドレスに所定の中継サーバー確認コマンドを送信し、前記対象装置の前記グループ参加コマンド処理部は、前記上位層グループの前記グループ参加コマンドを受信して前記上位層グループのグループマルチキャストアドレスにジョインし、前記対象装置の前記中継サーバ確認コマンド処理部は、前記対象装置自身が前記上位層中継サーバーであるときは中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身が前記上位層中継サーバーでなくとも、前記中継サーバー確認コマンドを受信してから前記選定優先度に応じた所定通知待ち時間が経過しても前記中継サーバー通知メッセージを受信しないときは、前記中継サーバー通知メッセージを前記グループマルチキャストアドレスに送信し、前記対象装置自身を前記上位層中継サーバーとして認識する。
【００１８】
この構成により、上位層の中継サーバーが故障したときに、下位層中継サーバーの中から新たな上位層サーバーが選定される。ここでも、選定優先度に応じた通知待ち時間を用いた簡単な処理で中継サーバーが自動的に選定される。しかも、最下層中継サーバーの選定と同様の処理で上位の各階層の中継サーバーを選定でき、この点でも処理が簡単である。このようにして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【００１９】
また、本発明のネットワークシステムにおいて、前記中継サーバー確認コマンド処理部は、前記対象装置自身が前記上位層中継サーバーになったとき、前記下位層中継サーバーを辞退するために、前記対象装置自身に付与された前記下位層中継サーバーの選定優先度を下方に変更すると共に、前記下位層グループの前記グループマルチキャストアドレスに前記中継サーバー確認コマンドを送信する。
【００２０】
この構成により、下位層中継サーバーが上位層中継サーバーになったとき、下位層中継サーバーは、自分の選定優先度を下げてから中継サーバー確認コマンドを送信し、これにより下位層中継サーバーから辞退する。選定優先度が高い他の対象装置または他のグループから新しい下位層中継サーバーが選ばれる。一つの対象装置が同時に下位層中継サーバーと上位層中継サーバーになることを回避でき、したがって、負荷増大を抑えられる。
【００２１】
また、本発明のネットワークシステムにおいて、前記管理装置は、マルチキャストでヘルスチェックコマンドを発行するヘルスチェックコマンド発行部を有し、前記対象装置は、前記ヘルスチェックコマンドを処理するヘルスチェックコマンド処理部を有し、前記ヘルスチェックコマンド処理部は、前記対象装置自身が前記中継サーバーでないときは、前記ヘルスチェックコマンドに対する応答を前記中継サーバーに送り、前記対象装置自身が前記中継サーバーであるときは、配下の前記対象装置または前記中継サーバーから送られてくる応答を統合して上位層の中継サーバーまたは前記管理装置に送信する。
【００２２】
この構成により、中継サーバーで複数の応答が統合されるので、ＡＣＫエクスプロージョンを起こすことなく、多数の機器を対象として状態確認を実用的な時間で行うことができる。
【００２３】
また、本発明のネットワークシステムにおいて、前記ヘルスチェックコマンドに対する応答メッセージは、それぞれ異なる故障要因に対応した複数ビットのデータを含み、前記上位層中継サーバーは、配下の下位層中継サーバーからの複数の応答メッセージにそれぞれ含まれる前記複数ビットのデータをＯＲ演算によって統合する。
【００２４】
この構成により、簡単な処理によって状態確認を行うことができる。故障要因毎にビットを割り当てた複数ビットデータを応答メッセージが含み、複数ビットデータ同士のＯＲ演算が行われ、これにより、どのような故障要因の故障が発生したかを把握することができる。
【００２５】
また、本発明のネットワークシステムにおいて、前記ヘルスチェックコマンド処理部は、前記対象装置自身が前記中継サーバーである場合は、配下の前記対象装置または前記中継サーバーからの所定の応答待ち時間内の無応答を検出し、前記無応答検出の前記応答待ち時間が、前記最下層グループから上位のグループに行くほど長く設定されている。
【００２６】
この構成により、無応答が検出されるので、状態確認に応答できない故障も検出することができる。無応答検出の応答待ち時間が最下層グループから上位のグループに行くほど長く設定されており、これにより、適切に設定された応答待ち時間を使った簡単な処理によって無応答を検出できる。
【００２７】
また、本発明のネットワークシステムにおいて、前記管理装置の前記ヘルスチェックコマンド発行部は、定期的にヘルスチェックコマンドを送信し、前記対象装置の前記ヘルスチェックコマンド処理部は、前記対象装置自身が前記中継サーバーである場合に、所定のチェック待ち時間が経過しても前記ヘルスチェックコマンドが受信されないときに、自ら前記ヘルスチェックコマンドを発行し、前記チェック待ち時間が、上位層から下位層に行くほど長く設定されている。
【００２８】
この構成により、管理装置が故障したときでも、中継サーバーが代理でヘルスチェックコマンドを発行するので、中継サーバーの故障が放置された状態になるのを回避できる。チェック待ち時間が、上位層から下位層に行くほど長く設定されており、これにより、適切に設定されたチェック待ち時間を使った簡単な処理によってヘルスチェックの機能を好適に維持できる。
【００２９】
また、本発明のネットワークシステムにおいて、前記対象装置の前記中継サーバー確認コマンド処理部は、前記対象装置自身が前記上位層中継サーバーであり、かつ、配下の下位層中継サーバーの無応答を検出したとき、該下位層グループの前記グループマルチキャストアドレスに前記中継サーバー確認コマンドを送信する。
【００３０】
この構成により、下位層中継サーバーの故障が無応答によって検出されて、下位層グループに上位層グループから中継サーバー確認コマンドが送信される。これにより、下位層グループの新たな中継サーバーを自動的に選定することができる。
【００３１】
また、本発明のネットワークシステムにおいて、前記対象装置は、マルチキャストで送信されたコマンドに応答するコマンド応答処理部を有し、前記コマンド応答処理部は、前記対象装置自身が前記中継サーバーでないときは、前記コマンドに対する応答を前記中継サーバーに送り、前記対象装置自身が前記中継サーバーであるときは、配下の前記対象装置または前記中継サーバーから送られてくる応答を統合して上位層の中継サーバーまたは前記管理装置に送信する。
【００３２】
この構成により、中継サーバーで複数の応答が統合されるので、ＡＣＫエクスプロージョンを起こすことなく、多数の機器を対象としてコマンド受領応答を実用的な時間で行うことができる。
【００３３】
本発明は、上述のネットワークシステムの態様に限定されない。本発明の別の態様は、例えば、上述のネットワークシステムを構成する各々の対象装置である。また、本発明の別の態様は、上述のネットワークシステムを構成する管理装置である。また、さらに、本発明の別の態様は、上述のネットワークシステム、各対象装置または管理装置の動作を実現する方法であり、例えば階層構造構築方法といったネットワーク制御方法である。また、本発明の別の態様は、上述のいずれかの装置または方法をコンピュータに実現させるプログラムである。これらの態様によっても、上述した本発明の利点が得られる。
【発明の効果】
【００３４】
本発明は、最下層中継サーバーを最下層グループの対象装置から選定優先度に基づいて選定し、上位層中継サーバーを下位層グループの下位層中継サーバーから選定優先度に基づいて選定するので、機器の負荷を低く抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供できる。
【発明を実施するための最良の形態】
【００３５】
以下、本発明の実施の形態に係るネットワークシステムについて、図面を用いて説明する。
【００３６】
本発明の実施の形態に係るネットワークシステムを図１に示す。図１に示すように、ネットワークシステムでは、管理装置Ｍが多数の対象装置Ｔと接続されている。図１では一部の対象装置Ｔが示されているが、実際には多数の対象装置Ｔ（例えば１０，０００台）がネットワークに接続されてよい。以下の説明では、適宜、対象装置Ｔを単に装置と呼ぶ。また、図１に示すように、装置間の識別を表現するために、適宜、Ａ、Ｂ、Ｃなどの符号を付す。
【００３７】
ネットワークシステムは、例えば放送システムである。この場合、各対象装置Ｔはネットワークの端末として機能する。各々の対象装置Ｔにはスピーカー（図示せず）が接続される。管理装置Ｍまたは他の音源から音声のデジタルデータが送られ、このデジタルデータが対象装置Ｔでアナログ音声信号に変換され、スピーカーから出力される。
【００３８】
ネットワークシステムにおいて、多数の対象装置Ｔは、ツリー型の階層構造を構築している。図１の例では、装置Ａ、Ｂ、Ｃの上位に最下層中継サーバーが位置し、最下層中継サーバーの上位に第２層中継サーバーが位置し、その上に最上層中継サーバーが位置し、その上に管理装置Ｍが位置している中継サーバーは、ＲＭＴＰのＤＲに相当する。図の例では、一つの最下層グループ（ａ）のみが示されている。しかし、実際にはより多くの最下層グループがあることはもちろんである。上位の階層も同様である。
【００３９】
図２は、ネットワークシステムの階層構造を示している。階層構造はグループ化の繰り返しにより構築されている。複数の対象装置Ｔによって最下層グループが形成され、最下層グループが集まって第２層グループが形成され、複数の第２層グループが集まって最上層グループが形成される。このように、各々の上位層グループがその下の複数の下位層グループで構成されて、図示の階層構造が形成される。
【００４０】
最下層中継サーバーは、最下層グループを代表する中継サーバーであり、同様に、第２層中継サーバーは第２層グループを代表する中継サーバーであり、最上層中継サーバーは最上層グループを代表する中継サーバーである。本実施の形態において、多数の対象装置は同様の構成を有しており、それら多数の対象装置の中から各階層の中継サーバーが選定されている。
【００４１】
図１および図２のネットワークシステムは、概略的には以下のように動作する。管理装置Ｍは、全部の装置へマルチキャストでヘルスチェックを送る。最下層グループの装置Ａ、Ｂ、Ｃは、最下層中継サーバーにＡＣＫメッセージ（受領応答または応答メッセージともいう）を送る。最下層中継サーバーは、対象装置Ａ、Ｂ、ＣからのＡＣＫメッセージと自身のＡＣＫメッセージを統合して、統合したＡＣＫメッセージを第２層中継サーバーに送る。同様の処理が繰り返されて、最上層中継サーバーから管理装置ＭにＡＣＫメッセージが送られる。
【００４２】
図１および図２の例では、ネットワークシステムが、最下層、第２層および最上層で構成されている。以下の説明では、主としてこの例の図が参照される。しかし、本発明の範囲内で、階層の数は上記例に限定されないことはもちろんである。階層数はより多くてもよく、より少なくてもよい。また、ツリー構造では、ツリーの枝によって階層数が異なってもよい。
【００４３】
適当な階層数の一例を挙げると、機器台数が１０，０００であり、１つの対象装置の下に１６個の対象装置が配置されるとする。この場合、階層の数は４になる（１６の４乗＞１０，０００）。
【００４４】
また、以下の説明では、適宜、本実施の形態のネットワークシステムが上述した放送システムに適用される。
【００４５】
また、以下の説明では、上下関係にある２つの階層を、それぞれ、「上位層」および「下位層」という。したがって、第２層と最下層では、前者が上位層であり、後者が下位層である。一方、最上層と第２層では、前者が上位層であり、後者が下位層である。
【００４６】
また、以下の説明では、上位層の中継サーバーを上位層中継サーバーといい、下位層の中継サーバーを下位層中継サーバーという。上記の説明から明らかなように、第２層中継サーバーは、最下層中継サーバーの上位層中継サーバーであり、同時に、最上層中継サーバーの下位層中継サーバーである。
【００４７】
図３は、管理装置Ｍおよび対象装置Ｔの構成を示すブロック図である。管理装置Ｍは、ネットワーク接続機能を備えたコンピュータ装置である。管理装置Ｍのコンピュータには、以下に説明する管理装置Ｍの各種機能を実現するプログラムが搭載されており、このプログラムがコンピュータで実行される。管理装置Ｍは、キーボード、ディスプレイなどの入出力機能を有するコンピュータであり、パーソナルコンピュータであってもよい。一方、対象装置Ｔも、ＣＰＵやメモリを有し、ネットワーク接続機能を備えるコンピュータ装置である。対象装置Ｔのコンピュータには、以下に説明する対象装置Ｔの各種機能を実現するプログラムが搭載されており、このプログラムがコンピュータで実行される。ただし、対象装置Ｔは、ネットワーク用の端末機器であり、比較的小規模な装置でよい。例えば放送システムにおいては、対象装置Ｔがスピーカーユニットに内蔵されてもよい。
【００４８】
管理装置Ｍは、グループ化処理部１１、中継サーバー確認コマンド送信部１２、ヘルスチェックコマンド発行部１３および同報コマンド発行部１４を備える。グループ化処理部１１は、グループ参加コマンドをネットワークシステムに送信して、グループ化とそれにより階層構造を構築するための処理を行う。中継サーバー確認コマンド送信部１２は、中継サーバー確認コマンドを送信して、中継サーバー選定のための処理を行う。ヘルスチェックコマンド発行部１３は、ヘルスチェックコマンドを発行して受領応答を受け取り、これによりネットワークシステムの状態確認の処理を行う。同報コマンド発行部１４は、同報コマンドを発行してネットワークシステムから受領応答を受け取る。
【００４９】
対象装置Ｔは、グループ参加コマンド処理部２１、中継サーバー確認コマンド処理部２２、上下層アドレス記憶部２３、ヘルスチェックコマンド処理部２４および同報コマンド応答処理部２５を備える。グループ参加コマンド処理部２１は、管理装置Ｍから受信したグループ参加コマンドを処理して、グループ化のための処理を行う。中継サーバー確認コマンド処理部２２は、管理装置Ｍから送られてくる中継サーバー確認コマンドを処理して、中継サーバーの選定に関する処理を行う。上下層アドレス記憶部２３は、階層構造に関する情報として、上位の中継サーバーのアドレスと、管理対象となる下位層の対象装置または中継サーバーのアドレスを記憶する。例えば、数バイトから数十バイトのアドレスが確保され、数台から十数台程度のアドレスが記憶される。ヘルスチェックコマンド処理部２４は、受信したヘルスチェックコマンドを処理して応答メッセージを送信する。同報コマンド応答処理部２５は、受信した同報コマンドを処理して応答メッセージを送信する。
【００５０】
前述したように、対象装置Ｔは、ＣＰＵ等を備えたコンピュータ装置である。ただし、対象装置の数は膨大である。そのため、現実的には対象装置が備えられる資源は限られ、対象装置に高い能力を与えることもできない。例えば上述の放送システムでは、各々対象装置の能力は、音声デジタルデータおよびその他の比較的単純なコマンドを処理できる程度に制限される。このような能力の下で、上記の図３の各種機能も実現される。
【００５１】
以下、ネットワークシステムの各部構成の機能と処理について説明する。以下では、まず、ネットワークシステムの階層構造を構築する機能について説明し、それから、状態確認処理および故障時の処理を説明し、さらにコマンド同報送信の処理を説明する。既に述べたように、本実施の形態では、図３の対象装置Ｔのことを単に装置と呼ぶことがある。
【００５２】
「階層構造の構築（最下層）」（図４）
まず、最下層グループを形成する機能について説明する。本実施の形態では、下記のように、最下層グループが形成され、そして、順次上位のグループが形成され、というようにボトムアップで階層構造が形成される。
【００５３】
管理装置Ｍのグループ化処理部１１は、全装置を所定台数（例えば１６台）以内の装置で構成される複数のグループに分ける。グループの指定は、ユーザにより入力装置から入力されて管理装置Ｍに受け付けられてもよい。また、一定のルールで機械的にグループが形成されてもよい。例えば、全装置のＩＰアドレスが参照されて、ＩＰアドレスの昇順で自動的にグループが決定されてよい。
【００５４】
グループ化処理部１１は、更に、各装置に「優先度」を示すユニークな値を割り当てる。一つのグループ内では、各装置にユニークな優先度が割り当てられる。優先度も、ＩＰアドレス昇順等の簡単なルールで自動的に付与される。優先度は、本発明の選定優先度に相当する。
【００５５】
また、グループ化処理部１１は、各グループ単位でユニークなマルチキャストアドレスを割り当てる。このマルチキャストアドレスは、本発明のグループマルチキャストアドレスに相当する。
【００５６】
そして、グループ化処理部１１は、各装置に、優先度Ｋと共にそのグループへの参加を指示するグループ参加コマンドを送信する。
【００５７】
各対象装置Ｔは、自身の優先度Ｋと共にグループ参加コマンドを受信する。そして、対象装置Ｔのグループ参加コマンド処理部２１が、優先度Ｋを保持すると共に、グループ参加コマンドに従って、受信されたマルチキャストアドレスへとジョインする。
【００５８】
このようにして、全部の対象装置の各々が、複数の最下層グループのいずれかに振り分けられ、そのグループ内での優先度Ｋを受け取り、自分のグループのマルチキャストアドレスにジョインする。
【００５９】
「中継サーバーの選定（最下層）」（図５）
次に、各々の最下層グループで、一つの対象装置が中継サーバーに設定される。ここでは、一つのグループの処理を説明する。
【００６０】
管理装置Ｍの中継サーバー確認コマンド送信部１２は、最下層グループの構築時に指定したマルチキャストアドレスで、中継サーバー確認コマンドを全グループ構成員へマルチキャスト送信する。中継サーバー確認コマンドには、管理装置Ｍにより、各グループ構成員のＩＰアドレスがパラメータとして付与される。
【００６１】
中継サーバー確認コマンドを受領した各装置では、中継サーバー確認コマンド処理部２２が以下の動作を行う。
（Ａ）装置自身がそのマルチキャストアドレスで指定されたグループの中継サーバーである場合、中継サーバー確認コマンド処理部２２は即座に中継サーバー通知メッセージを該マルチキャストアドレスでマルチキャスト送信する。
（Ｂ）装置自身が現在中継サーバーでない装置では、グループ参加コマンド処理部２１が、上記のグループ参加コマンドで指定された優先度Ｋに応じた通知待ち時間だけ待つ。本実施の形態の例では、通知待ち時間は、優先度Ｋに応じて単調増加する時間である。例えば、通知待ち時間は、優先度Ｋの値に比例しする。具体例としては、通知待ち時間は＝５０×Ｋ[ｍｓ]）（Ｋ＝１、２、３・・・）である。
（ａ）通知待ち時間の間に他の装置から中継サーバー通知メッセージを受信した場合は、中継サーバー確認コマンド処理部２２はその送信元を中継サーバーとして記憶し、ＡＣＫメッセージを送信元へ返送する。
（ｂ）通知待ち時間の間に中継サーバー通知メッセージを受信しなかった場合は、自ら中継サーバー通知メッセージをマルチキャスト送信してＡＣＫメッセージを待つ。
【００６２】
（Ａ）または（Ｂ）−（ｂ）ですべての装置からＡＣＫメッセージを受信した場合（または応答タイムアウトの場合）、中継サーバー確認コマンド処理部２２は、装置自身が中継サーバーであると認識して、管理装置Ｍへ、中継サーバー確認コマンドに対するＡＣＫメッセージを返す。
【００６３】
上記の処理により、中継サーバーが既にあれば、その中継サーバーが中継サーバー通知メッセージを送信し、その立場を維持する。中継サーバーが居ない場合、通知待ち時間が最も短い対象装置が中継サーバー通知メッセージを最初に送信し、新しい中継サーバーになる。優先度が高いほど通知待ち時間は短い。したがって、上記の処理により、優先度が最も高い対象装置が新しい中継サーバーになる。階層構造の構築時もこの処理が行われる。
【００６４】
図６に示すように、何らかの理由（ネットワーク障害など）で「中継サーバー通知」を複数の装置が発行した場合は、適当なルールにより競合相手との比較が行われ、どの装置が優位かが判断される。例えば、ＩＰアドレス昇順等のルールで優位な装置が判断される。優位に立った側の装置の中継サーバー確認コマンド処理部２２は、競合相手にＮＡＫ(Not Acknowledge、否定応答）を返す。一つでもＮＡＫを受領した装置では、中継サーバー確認コマンド処理部２２が中継サーバーとしての機能を断念する。
【００６５】
上記の例は、ＩＰアドレスの全く同じ装置は存在しないものと仮定している。そのような場合はイーサネット（登録商標）としてアドレス競合が検出されるはずである。また、ＡＣＫメッセージのフォーマット、無応答の判定、再送等は後述の故障検出処理に準じて行われる。
【００６６】
以上に階層構造の最下層の構築について、より詳細には最下層グループの形成と、最下層中継サーバーの選定について説明した。
【００６７】
次に、最下層より上の階層構造の構築について説明する。ここでは、任意の下位層グループからその上の上位層グループを形成する処理と、上位層グループを代表する上位層中継サーバーを選定する処理を説明する。こうした処理は、最下層の上に第２階層を構築するときにも、第２階層からその上の階層をつくるときにも、さらに上の任意の階層を作るときにも、同様に行われる。すなわち、以下に説明する処理が繰り返されて、多段の階層が形成される。
【００６８】
「階層構造の構築（上位層）」（図７）
まず、下位層グループから上位層グループを形成する処理を説明する。この処理は、分類対象が装置から下位層グループに変わった点を除き、前述の最下層グループの形成処理と概ね同様である。
【００６９】
管理装置Ｍのグループ化処理部１１は、全部の下位層グループを、所定数（例えば１６）以内の下位層グループで構成される上位層グループに分類する。例えば、第２層グループを生成するときは、前述の手順で生成された最下層グループから第２層グループが生成される。
【００７０】
ここでも、上位層グループの指定は、ユーザにより入力装置から入力されて管理装置Ｍに受け付けられてもよい。また、一定のルールで機械的にグループが形成されてもよい。例えば、各々の下位層グループに与えられたマルチキャストアドレスが参照されて、マルチキャストアドレスの昇順で自動的にグループが決定されてよい。
【００７１】
グループ化処理部１１は、各上位層グループを構成すべき複数の下位層グループの各々に、「優先度」を示すユニークな値を割り当てる。この優先度も、マルチキャストアドレスの昇順等の簡単なルールで自動的に付与される。
【００７２】
また、グループ化処理部１１は、各上位層グループに、下位層グループとは別のユニークなマルチキャストアドレスを割り当てる。
【００７３】
そして、グループ化処理部１１は、各下位層グループへ、優先度Ｋと共にグループ参加コマンドをマルチキャスト送信する。このマルチキャスト送信は、各下位層グループに割り当てられているマルチキャストアドレスに対して行われる。
【００７４】
グループ参加コマンドは下位層グループへマルチキャスト送信されて、下位層中継サーバーおよびその他の構成員に受信される。下位層中継サーバーでない下位層グループ構成員は、下位層中継サーバーへＡＣＫ応答する。下位層中継サーバーは、全構成員からのＡＣＫ応答を受領すると（または応答タイムアウトが生じたとき）、下位層グループ構成員を代表して管理装置ＭへＡＣＫ応答する。また、下位層グループの中継サーバーおよびその他の全構成員は、グループ参加コマンドを受信すると、優先度Ｋを保持し、上位層グループのマルチキャストアドレスにジョインする。
【００７５】
「中継サーバーの選定（上位層）」（図８）
続いて、上述の上位層グループの中継サーバーが、下位層グループの中継サーバーの中から選定される。管理装置Ｍの中継サーバー確認コマンド送信部１２は、中継サーバー確認コマンドを上位層グループのマルチキャストアドレスでマルチキャスト送信する。
【００７６】
最下層に対する中継サーバー確認コマンドと違い、上位層では、構成員のアドレスが下位層グループのマルチキャストアドレスになる。このようにマルチキャストアドレス指定で中継サーバー確認コマンドを受領した場合、下位層中継サーバーだけが上位層中継サーバーの選定対象となる。
【００７７】
上位層中継サーバーの選定手続きおよび競合解消は、候補者が下位層中継サーバーに限定される点を除いて、最下層の処理と同様であり、主として中継サーバー確認コマンド処理部２２により行われる。すなわち、各装置で中継サーバー確認コマンドが受信されたとき、装置自身が既に上位層中継サーバー（マルチキャストアドレスに対応する上位層グループの上位層中継サーバー）であったとする。この場合、中継サーバー確認コマンド処理部２２は、中継サーバー確認コマンドの受信に応じて、即座に中継サーバー通知メッセージを同じマルチキャストアドレスで、マルチキャスト送信する。そして、配下の下位層中継サーバーからＡＣＫメッセージが集まると、中継サーバー確認コマンド処理部２２は、中継サーバー確認コマンドに対するＡＣＫメッセージを管理装置Ｍへ返す。
【００７８】
中継サーバー確認コマンド処理部２２は、装置自身が上位層中継サーバーではないが、その下の下位層中継サーバーである場合、優先度Ｋに応じた通知待ち時間だけ待つ。ここでも通知待ち時間は、優先度Ｋに応じて単調増加する値であり、典型的には優先度Ｋに比例し、具体的としては５０Ｋ[ｍｓ] （Ｋ＝１、２、３・・・）である。ただし、ここで使用される優先度Ｋは、前述の説明で用いられた最下層中継サーバー選定用の優先度ではない。優先度Ｋは、上位層中継サーバーを選定するための優先度であり、上位層グループの形成処理過程で各下位層グループに指定された値であり、上位層グループへのグループ参加コマンドと共に送られてきた値である。
【００７９】
下位層中継サーバーである各装置では、中継サーバー確認コマンド処理部２２は、通知待ち時間の間に他の装置から中継サーバー通知メッセージを受信した場合は、その送信元を上位層中継サーバーとして記憶し、ＡＣＫメッセージを送信元へ返送する。
【００８０】
下位層中継サーバーである各装置では、中継サーバー確認コマンド処理部２２は、通知待ち時間の間に中継サーバー通知メッセージを受信しなかった場合は、自ら中継サーバー通知メッセージをマルチキャスト送信してＡＣＫメッセージを待つ。ＡＣＫメッセージが集まると、当該装置の中継サーバー確認コマンド処理部２２は、装置自身が上位層中継サーバーであると認識して、管理装置Ｍへ、中継サーバー確認コマンドに対するＡＣＫメッセージを返す。
【００８１】
上記の処理により、上位層中継サーバーが既にあれば、その上位層中継サーバーが中継サーバー通知メッセージを送信し、その立場を維持する。上位層中継サーバーが居ない場合、通知待ち時間が最も短い下位層中継サーバーが中継サーバー通知メッセージを最初に送信し、新しい中継サーバーになる。優先度が高いほど通知待ち時間は短い。したがって、上記の処理により、優先度が最も高い下位層中継サーバーが新しい上位層中継サーバーになる。階層構造の構築時もこの処理が行われる。
【００８２】
また、複数の中継サーバー通知メッセージが競合した場合は、最下層の場合と同様に、装置同士の優劣が比較され、優位に立った側の装置が競合相手にＮＡＫを送る。
【００８３】
以上のように、上位層中継サーバーの選定は、最下層中継サーバーの選定と概ね同様である。ただし、上位層中継サーバーの選定では、それ伴って下記の辞退処理が行われる。
【００８４】
上位層中継サーバーとなった装置（以前の（これまでの）下位層中継サーバー）は、そのままでは下位・上位の両中継サーバーを兼任しなければならず、通常の倍の負荷を強いられる。このため下記手順により、以前の下位層中継サーバーは、その地位を辞退する。
【００８５】
図９に示すように、以前の下位層中継サーバーは、通常は管理装置が発行していた中継サーバー確認コマンドを自ら発行して再選定状態に持ち込む。この処理は中継サーバー確認コマンド処理部２２により行われる。前述の説明では管理装置Ｍが中継サーバー確認コマンドを発行したのに対し、ここでは以前の中継サーバーが中継サーバー確認コマンドを発行する。中継サーバー確認コマンドは、装置自身が中継サーバーになっていた下位層グループのマルチキャストアドレスに対してマルチキャスト送信される。
【００８６】
これにより、中継サーバーの選定手続きおよび競合解消が行われる。このとき、以前の中継サーバーは、現在の優先度を下方に変化させる。本実施の形態では、以前の中継サーバーは、現在の優先度にグループ構成員数（以前の中継サーバー確認コマンドで通知されている）を加え、グループ内で優先度が最低となるよう優先度を操作する。グループの構成員素が１６台の場合、優先度Ｋは１７（＝１＋１６）になる。これにより、優先度が次に高い装置がアドレス中継サーバーになる。図９の例では、優先度２の装置Ｂが新しい中継サーバーになる。
【００８７】
なお、グループ構成員が極端に少ない場合などは、結局、上位層中継サーバーが下位層中継サーバーを兼任しなければならない場合もあり得る。その場合は交代ができないほど構成員が少ないはずなので、極端な負荷増大とはならないと考えられる。
【００８８】
上述してきた上位層グループの形成と上位層中継サーバーの選定とが繰り返し適用され、最終的に全装置が１つのグループへ含まれるまでグルーピングが行われる。こうして、階層構造のネットワークシステムが形成される。
【００８９】
以上に、ネットワークの階層構造の構築について説明した。次に、上記のようにして構築されたネットワークシステムの動作を説明する。ここでは、まず、ネットワークシステムにおける状態確認の動作を説明する。この処理は、管理装置Ｍのヘルスチェックコマンド発行部１３および各対象装置Ｔのヘルスチェックコマンド処理部２４によって行われる。
【００９０】
「状態監視（ヘルスチェック）」
図１０に示されるように、管理装置Ｍのヘルスチェックコマンド発行部１３は、最上層グループ（＝全装置が含まれる）に対し、ヘルスチェックコマンドを発行する。ヘルスチェックコマンドは所定の間隔で定期的に発行される。
【００９１】
ヘルスチェックコマンドは、最上層グループのマルチキャストアドレスへ、マルチキャスト送信される。階層構造の形成過程で全装置が最上層のマルチキャストアドレスにジョインしているので、ヘルスチェックコマンドは全装置に伝えられる。より詳細に説明すると、最下層の形成時、全装置がいずれかの最下層グループのマルチキャストアドレスにジョインする。第２層の形成時、第２層グループのマルチキャストアドレスが、最下層グループのマルチキャストアドレスに向けて伝えられると、全装置がいずれかの第２層グループのマルチキャストアドレスを受信してジョインする。同様に、最上層の形成時、最上層グループのマルチキャストアドレスが、第２層グループのマルチキャストアドレスに向けて伝えられると、全装置が最上層グループのマルチキャストアドレスを受信してジョインする。このようにして、全装置が、自分が属するサブツリーに沿った各階層のマルチキャストアドレスにジョインしている。そして、全装置は、最上層のマルチキャストアドレスにもジョインしており、ヘルスチェックコマンドを同時に受信する。
【００９２】
図１１に示すように、最下層の全装置（中継サーバーでない装置）では、ヘルスチェックコマンド処理部２４が、ヘルスチェックコマンドを受信して、ＡＣＫメッセージを利用して装置状態を最下層中継サーバーへ報告する。
【００９３】
図１２は、ＡＣＫメッセージの例を示している。このＡＣＫメッセージは、各装置が中継サーバーでなくても、中継サーバーであっても同様に使用される。図中のＮＵＭは、管理対象の装置／グループ数である。装置が中継サーバーでない場合は（図１１の装置Ａ等）、ＮＵＭは、固定的に１である。ＩＰＡＤＤＲｘは、装置／グループのＩＰアドレスである。ＳＴＳｘ（ステータス）は、その装置／グループの現在の状態を示すビット列である。ＳＴＳｘは、例えば、図示の８ビットのデータである。図の例では、最初のビットは、ＯＫかＮＧかを示す（ＯＫ：０、ＮＧ：１）。他の各ビットは、各々異なるＮＧ要因に対応する。このようにステータスでは、異なるＮＧ要因がビット列の各ビットに割り当てられる。
【００９４】
最下層グループの各装置では、上述のようにＮＵＭが１であり、ＳＴＳｘも一つである。そして、装置に特に問題がない場合、その装置は、ＳＴＳｘの最上位ビットを０にして、ＡＣＫメッセージを送る。図１１の例では、装置Ａに問題がなく、装置ＡのＳＴＳｘでは、全ビットが０である。
【００９５】
装置に何らかの問題がある場合、その装置は、最上位ビットを１にし、また、ＮＧ要因に該当するビットを１にして、ＡＣＫメッセージを送る。図１１の例では、装置Ｂに問題があり、ＮＧ要因は「その他」である。装置ＢのＳＴＳｘでは、最上位ビットが１であり、第２ビットが１である。
【００９６】
また、装置の通信系に支障がある場合、また、装置が完全に壊れた場合、装置は応答できない。そして、タイムアウトが発生し、無応答が中継サーバーに検出される。図１１の例では、装置Ｃが無応答である。この場合、最下層中継サーバーが、装置ＣのＳＴＳｘを処理し、最上位ビットを１にし、また、タイムアウトに対応する最下位ビットを１にする。
【００９７】
上記の無応答（タイムアウト）を検出するため、中継サーバーは、所定の応答待ち時間だけ待つ。この応答待ち時間は、ネットワークシステム全体で同一ではない、応答待ち時間は、上位階層に行くほど長く設定されている。これは、下位層の無応答検出が終わらないうちに上位層でタイムアウトが発生するのを防ぐためである。
【００９８】
各階層の応答待ち時間Ｔｎ（最下層：Ｔ１，第２層：Ｔ２，・・・）は、例えば以下のような数列に従って決定されている。
Ｔ１＝Ｔ
Ｔｎ＝Ｔn-1×（ｒ＋１）＋Ｔ
Ｔ：各階層での処理時間・伝送遅延を見込んだ猶予時間
ｒ：再送回数
【００９９】
応答待ち時間Ｔｎだけ待っても応答のない装置／グループへは、中継サーバーがヘルスチェックコマンドを再送し、再度Ｔｎだけ待つ。ｒ回再送しても応答のない装置は、無応答とみなされる。
【０１００】
次に、最下層から上の応答処理を説明する。
図１３は、最下層中継サーバーから第２層中継サーバーへの応答処理を示している。最下層中継サーバーは、すべての装置から応答を受領した場合、または、上記の手順で無応答を検出した場合に、状態確認の結果を統合して、第２層中継サーバーへＡＣＫ応答する。この処理は、図３のヘルスチェックコマンド処理部２４によって行われる。
【０１０１】
ＡＣＫメッセージは、図１２のフォーマットに従って生成され、装置Ａ、Ｂ、Ｃ等のアドレスとステータスが配列されて、応答が統合される。図１３に示すように、ヘルスチェックコマンド処理部２４は、ＡＣＫメッセージに、最下層中継サーバー本人のステータスも含める。図１３の例は、図１１の例と対応している。したがって、装置ＡのステータスはＯＫであり、装置Ｂ、ＣのステータスはＮＧである。装置Ｃは無応答なので、装置Ｃのステータスは中継サーバーで処理される。
【０１０２】
図１４に示すように、第２層以上の中継サーバーも同様にして、上位層中継サーバーへＡＣＫメッセージを送る。ただし、第２層以上では、中継サーバーは、各々下位層グループ構成員の全ステータスをＯＲ演算してステータスを統合する。最後に管理装置は最上層の中継サーバーからＡＣＫを受領する。
【０１０３】
図１４の例では、第２層中継サーバーは、３つの最下層グループａ、ｂ、ｃから報告を受ける。最下層グループａについては、最下層中継サーバーと装置Ａ、Ｂ、Ｃのステータス（図１２の８ｂｉｔのビット列）がＯＲ演算によって統合される。図１３にて装置ＢがＮＧ（11000000）であり、装置Ｃがタイムアウト（10000001）であった。この結果に対応して、図１４の最下層グループａについては、ＯＲ演算結果が、「11000001」であり、「一部がＮＧであり、一部がタイムアウトである」という意味を持つ。
【０１０４】
最下層グループｂ、ｃについても同様にステータスが統合される。図の例では、グループｂ、ｃの全装置が正常なので、これらのグループの統合結果では、全ビットが０である。統合されたステータスが、図１２のフォーマットに従って配列されて、ＡＣＫメッセージが生成される。このようなＡＣＫメッセージが第２層中継サーバーから最上層中継サーバーに送られる。最上層中継サーバーでも同様の処理が行われ、最上層中継サーバーから管理装置ＭへＡＣＫメッセージが送られる。
【０１０５】
上記のＯＲ演算によりメッセージが統合されるので、管理装置Ｍが受領したＡＣＫメッセージには、階層構造のサブツリー単位で異常の有無が報告されることになる。ＳＴＳのの最上位ビットが０ならば、そのサブツリー内の全装置は正常動作している。ＳＴＳの最上位ビットが１ならば、そのサブツリー内で異常が発生しており、その要因はその他のビットで示される（一部重複する）。異常が発生している装置／要因を特定するには、管理装置Ｍは、上記過程と逆順で中継サーバーにステータスを問い合わせて行けばよい。
【０１０６】
「中継サーバー故障時の対処」（図１５）
次に、中継サーバーが故障したときのネットワークシステムの動作を説明する。
中継サーバーの故障は、その上位層の中継サーバーによって検出される。上位層中継サーバーが、下位層中継サーバーの無応答を検出したときに、その下位層中継サーバーの故障が発生したと判定する。上位層中継サーバーは、直下層の下位層中継サーバーの故障を検出した場合、中継サーバー確認コマンドを送信する。この中継サーバー確認コマンドは、前述の階層構造の構築過程で利用されたコマンドである。ただし、前述の説明では管理装置が中継サーバー確認コマンドを発行したのに対して、ここでは上位層中継サーバーが中継サーバー確認コマンドを発行する。中継サーバー確認コマンドは、中継サーバー確認コマンド処理部２２により、無応答が検出された下位層中継サーバーが属する下位層グループのマルチキャストアドレスへ向けてマルチキャスト送信される。
【０１０７】
中継サーバー確認コマンドを受信した各装置は、前述の中継サーバー選定手順に従って中継サーバー再選定の動作を行う。そして、新しく中継サーバーとして選定された装置が、以降の中継サーバーの動作を引き継ぐ。
【０１０８】
「管理装置や上位層中継サーバー故障時の対応」（図１６）
上述のように、本実施の形態では、中継サーバーの再選定によって階層構造が好適に維持される。このような階層構造の維持機能は、管理装置Ｍから定期的にヘルスチェックコマンドが送られることを前提にしている。そのため、管理装置Ｍが故障してヘルスチェックコマンドを送らなくなると、中継サーバーの故障が放置された状態となり、コマンド同報通信等に影響が出てくる。
【０１０９】
これを解決するため、本実施の形態では、各中継サーバーは、前回のヘルスチェックコマンドの受信から所定のチェック待ち時間が経過しても次のヘルスチェックコマンドを受信しなかった場合に、自ら率先してヘルスチェックコマンドを発行するように構成されている。この処理は、ヘルスチェックコマンド処理部２４によって行われる。これにより、管理装置Ｍなどの故障に好適に対処できる。
【０１１０】
図１６（ａ）の例では、管理装置Ｍが故障し、最上層中継サーバーがヘルスチェックコマンドを発行している。また、図１６（ｂ）の例では、管理装置Ｍと最上層中継サーバーが故障し、第２層中継サーバーがヘルスチェックコマンドを発行している。このように、本実施の形態によれば、管理装置や上位層中継サーバー故障に好適に対応できる。
【０１１１】
ここで、前述のヘルスチェックにおいて、タイムアウト検出のための応答待ち時間（ＡＣＫ応答待ち時間）は、上位層ほど長く設定されていた。これとは逆に、チェック待ち時間は、上位層から下位層に行くほど長く設定される。また、チェック待ち時間は、最上層の応答待ち時間よりも十分に長く設定される。このような設定の結果として、図１６（ａ）および図１６（ｂ）の例でも、より上位の中継サーバーがヘルスチェックコマンドを送信している。具体的なチェック待ち時間の設定例は後述する。
【０１１２】
「コマンドの同報送信」（図１７）
次に、本実施の形態のネットワークシステムによるコマンド同報送信について説明する。
これまでの説明では、ネットワークシステムを利用して状態確認が行われた。しかし、その他のコマンド同報送信にも上記のネットワークシステム技術を同様に適用できる。この点は、状態確認のヘルスチェックコマンドがコマンドの一種であることからも理解される。言い換えれば、ヘルスチェックコマンドの代わりに他のコマンドが同報送信されてよい。この場合も、中継サーバーを介することにより、コマンドの受領応答が迅速に取得される。
【０１１３】
ここでは、具体例として前出の放送システムを取り上げて、本実施の形態によるコマンド同報送信を説明する。この場合、スピーカー群が、コマンドによる一括制御が必要な集団である。
【０１１４】
図１７の例では、特定のフロアに属するスピーカー群にコマンドが同報送信される。各スピーカーに、本実施の形態の対象装置Ｔ（ネットワーク端末機器）が備えられている。そして、例えば、「放送を開始せよ」といった簡単なコマンドが送出されて、その受領応答が返される。コマンドは、図３の管理装置Ｍの同報コマンド発行部１４から送出され、各装置の同報コマンド応答処理部２５で受信および処理される。
【０１１５】
図１７において、スピーカー群は階層構造を構築しており、各スピーカーは適当なグループに割り当てられ、各階層の中継サーバーも自動的に選定されている。図の例では、部屋ごとに「エリア」が定義される。各エリアの中に配置された全スピーカが一つの最下層グループに割り当てられ、これにより最下層グループＡ〜Ｇが作られている。部屋が更に統合されて、上位層グループα〜γが作られている。各グループの中継サーバーも選定されている。
【０１１６】
同報送信したいコマンドは、その場所に対応したグループのマルチキャストアドレスへマルチキャスト送信される。例えば、グループαへコマンドを送信するために、コマンドが「239.128.0.10」へマルチキャスト送信される。応答は、前述のヘルスチェックと同様に、ステータスのビットを付加・統合することによって、順次上位層の中継サーバーへ送られる。そして、最終的に、送信先マルチキャストアドレスで指定されるグループの中継サーバーが、送信元へ対してＡＣＫメッセージを送る。
【０１１７】
このように、本実施の形態のコマンド同報送信では、マルチキャスト送信が行われるので、全装置がほぼ同時にコマンドを受信でき、「動作の同時性」が実現できる。
【０１１８】
また、ＡＣＫ応答のない装置へは中継サーバーがコマンドを再送してくれるので、信頼性の高い送信が実現できる。コマンド再送は、前述のヘルスチェックコマンドの再送と同様に行われてよい。
【０１１９】
また、送信者は各装置のコマンド受領結果を得ることができ、したがって、受領できなかった装置の特定・事後処置等を講じることができる。
【０１２０】
なお、ここでは、制御コマンド等が同報送信された。このコマンド同報送信のグルーピング（例えば図１７）とその階層構造は、前述の故障検出用のグルーピングおよび階層構造と同じでもよく、また、異なっていてもよい。すなわち、ここで説明しているコマンド同報送信用に、グルーピングと階層構造が別途定められてもよい。
【０１２１】
「故障検知等の動作に要する時間の例」
既に説明したように、従来のポーリング技術では、実用的な時間での多数の装置の状態確認は困難である。本実施の形態では、この問題が解決される。この点について、以下に例を用いて説明する。
【０１２２】
まず、故障検知に要する時間は、例えば、下記の通りである。故障検知の時間は、主としてＡＣＫ応答の待ち時間に依存する。各階層の応答待ち時間は、前述の通り、下記の式に従って設定されている。
Ｔ１＝Ｔ
Ｔｎ＝Ｔn-1×（ｒ＋１）＋Ｔ
Ｔ：各階層での処理時間・伝送遅延を見込んだ猶予時間
ｒ：再送回数
【０１２３】
例えば、Ｔ＝１ｓ、ｒ＝１とした場合、第５層までの応答待ち時間は以下の通りとなる。Ｔ１＝１ｓ、Ｔ２＝３ｓ、Ｔ３＝７ｓ、Ｔ４＝１５ｓ、Ｔ５＝３１ｓ
【０１２４】
また、各階層の構成員数を仮に１６とした場合、第５層を管理装置とする階層構造では、最大で６５，６３６台（１６の４乗）の装置を管理できる。
【０１２５】
以上より、装置台数が６５，５３６台以下であれば、再送処理も含めて、およそ１分で故障検知を行えることが分かる。ここでは、故障検知（状態確認）に要する時間について説明したが、コマンド同報の時間も同様に考えられる。
【０１２６】
次に、上述の階層構造の特徴の一つである中継サーバー再構築に要する時間を検討する。既に説明したように、管理装置故障時にも階層構造を保証するために、本実施の形態は、チェック待ち時間（ヘルスチェックコマンドの受信待ち時間）を導入した。
【０１２７】
このチェック待ち時間は、「上位層ほど短く設定されており」、かつ、「チェック待ち時間は、最上層のＡＣＫ応答待ち時間より十分大きく設定されている」という２つの条件を満たす必要がある。
【０１２８】
上記の例の応答待ち時間を前提にした場合、チェック待ち時間τｎ（ｎは、最下位層を１とする下位層のレベル数）は、例えば下記のように設定される。τ１＝５ｍｉｎ、τ２＝４ｍｉｎ、τ３＝３ｍｉｎ、τ４＝２ｍｉｎ、τ１＝１ｍｉｎ
【０１２９】
このような設定によれば、仮にすべての中継サーバーが故障したとしても、およそ５分で階層構造が自動的に再構築されることが分かる。
【０１３０】
「各装置の負荷量について」
以上に本実施の形態のネットワークシステムについて説明してきた。上記のネットワークシステムにおいては、各々の対象装置に要求される機能は、概ね下記の通りである。
（１）「グループ参加」コマンドの処理・・・マルチキャストアドレスに「ジョイン」する。
（２）「中継サーバー確認」コマンドに対する処理・・・指定された時間だけ待ち、それまでに「中継サーバー通知」コマンドが到着しなければ、「中継サーバー通知」コマンドを送信する。また、複数の「中継サーバー通知」コマンドが競合した場合、例えばＩＰアドレスの大小比較でどちらが勝つかを決め、勝てばＮＡＫを返す。
（３）上位の中継サーバーのアドレス、および中継サーバーになったとき管理対象となる装置／グループのアドレス記憶・・・数バイト〜数十バイトのアドレスを、数台〜十数台程度記憶できるＲＡＭがあればよい（図３の上下層アドレス記憶部２３）。
（４）中継サーバーになったときの、下位からのＡＣＫメッセージの受信、受信タイムアウト処理、統合処理・・・統合処理では、各ＡＣＫメッセージの内容を単に並べたり、ＯＲ演算すればよい。
（５）「ヘルスチェック」コマンドが一定時間到着しないときの、「ヘルスチェック」コマンド代理発行。
【０１３１】
上記のうちで、ネットワークに関する各機能（コマンド送受信、マルチキャスト「ジョイン」等）はシステム構成からして当然に各装置に備わっているはずである。その他の処理も、比較演算やＯＲ演算、タイムアウトといった処理であり、多少のＲＡＭが使えれば実現できる。
【０１３２】
このように、本実施の形態の各対象装置に要求される機能は、少ない資源で実装できる。したがって、資源の乏しい装置でも本実施の形態のネットワークシステムの処理を実現でき、このような軽い方法が本実施の形態によって好適に提供される。
【０１３３】
前出の例では、大規模商業システムなどの放送システムにて、ネットワークを介してデジタル音声データが伝送される。スピーカー数が膨大なので、ネットワーク端末の数も膨大になる。この場合、各端末に豊富な資源を与えられない。このような場合に本実施の形態は特に有利である。
【０１３４】
以上に本発明の実施の形態に係るネットワークシステムについて説明した。本実施の形態によれば、下記のような利点が得られる。
【０１３５】
本実施の形態によれば、複数の対象装置Ｔが階層構造を構築し、各階層の各グループの中継サーバーが対象装置群から選定されるので、状態確認などのコマンドに対する応答が迅速に伝えられる。また、最下層およびその他の各階層における各グループの中継サーバーが、選定優先度に基づいて選定される。選定優先度が最も高い対象装置Ｔが中継サーバーに選定され、その対象装置Ｔが故障すれば、選定優先度が次に高い対象装置Ｔが中継サーバーに選定される。一つの中継サーバーが故障しても、他の対象装置Ｔが代わりに中継サーバーになるので、ネットワーク内での負荷の集中を回避できる。こうして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【０１３６】
また、本実施の形態によれば、最下層中継サーバーが、配下の対象装置Ｔから選定優先度に基づいて選定される。中継サーバーが故障すると、その中継サーバーが中継サーバー通知メッセージを送信しないので、他の対象装置Ｔで通知待ち時間が経過し、他の対象装置Ｔが新たに中継サーバーになる。このとき、通知待ち時間が選定優先度に応じて設定されているので、優先度がより高い対象装置Ｔが新たな中継サーバーになる。中継サーバーの故障時に他の対象装置Ｔが自動的に中継サーバーになるので、ネットワーク内での負荷の集中を回避できる。しかも、中継サーバーの自動選定を、選定優先度に応じた通知待ち時間を用いる簡単な処理で実現できる。こうして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【０１３７】
また、本実施の形態によれば、上位層中継サーバーも、配下の下位層中継サーバーから選定優先度に基づいて選定される。上位層中継サーバーが故障したときに、下位層中継サーバーの中から新たな上位層サーバーが選定される。ここでも、選定優先度に応じた通知待ち時間を用いた簡単な処理で中継サーバーが自動的に選定される。しかも、最下層中継サーバーの選定と同様の処理で上位の各階層の中継サーバーを選定でき、この点でも処理が簡単である。このようにして、負荷増大を抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるネットワークシステムを提供することができる。
【０１３８】
また、本実施の形態によれば、下位層中継サーバーが上位層中継サーバーになったとき、下位層中継サーバーは、自分の選定優先度を下げてから中継サーバー確認コマンドを送信し、これにより下位層中継サーバーから辞退する。選定優先度が高い他の対象装置または他のグループから新しい下位層中継サーバーが選ばれる。一つの対象装置が同時に下位層中継サーバーと上位層中継サーバーになることを回避でき、したがって、負荷増大を抑えられる。
【０１３９】
また、本実施の形態によれば、中継サーバーで複数の応答が統合されるので、ＡＣＫエクスプロージョンを起こすことなく、多数の機器を対象として状態確認を実用的な時間で行うことができる。
【０１４０】
また、本実施の形態によれば、それぞれ異なる故障要因に対応した複数ビットのデータを応答メッセージが含み、複数の応答メッセージが上述のように複数ビットデータ同士のＯＲ演算（上記の例ではステータスのビット列のＯＲ演算）によって統合される。したがって、簡単な処理によって状態確認を行うことができる。ＯＲ演算を利用することで、どのような故障要因の故障が発生したかを把握することができる。
【０１４１】
また、本実施の形態によれば、応答待ち時間を利用して無応答が検出されるので、状態確認に応答できない故障も検出することができる。無応答検出の応答待ち時間が最下層グループから上位のグループに行くほど長く設定されており、これにより、適切に設定された応答待ち時間を使った簡単な処理によって無応答を検出できる。
【０１４２】
また、本実施の形態によれば、管理装置などが故障したときでも、中継サーバーが代理でヘルスチェックコマンドを発行するので、中継サーバーの故障が放置された状態になるのを回避できる。チェック待ち時間が、上位層から下位層に行くほど長く設定されており、これにより、適切に設定されたチェック待ち時間を使った簡単な処理によってヘルスチェックの機能を好適に維持できる。
【０１４３】
また、本実施の形態によれば、下位層中継サーバーの故障が無応答によって検出されて、そして、下位層グループに上位層グループから中継サーバー確認コマンドが送信される。これにより、下位層グループの新たな中継サーバーを自動的に選定することができる。
【０１４４】
また、本実施の形態によれば、対象装置にコマンド応答処理部が設けられ、コマンドが同報送信されて、その応答が階層構造を使って返される。中継サーバーでは応答が統合される。このようにして、ＡＣＫエクスプロージョンを起こすことなく、多数の機器を対象としてコマンド受領応答を実用的な時間で行うことができる。
【０１４５】
以上に本発明の好適な実施の形態を説明した。しかし、本発明は上述の実施の形態に限定されず、当業者が本発明の範囲内で上述の実施の形態を変形可能なことはもちろんである。
【産業上の利用可能性】
【０１４６】
以上のように、本発明にかかるネットワークシステムは、機器の負荷を低く抑えつつ、多数の機器を対象として状態確認やコマンド受領応答を実用的な時間で行うことができるという効果を有し、デジタル伝送型放送システム等として有用である。
【図面の簡単な説明】
【０１４７】
【図１】本発明の実施の形態に係るネットワークシステムを示す図
【図２】ネットワークシステムの階層構造を示す図
【図３】ネットワークシステムの管理装置および対象装置の構成を示すブロック図
【図４】最下層グループの形成処理を示す図
【図５】最下層中継サーバーの選定処理を示す図
【図６】複数の中継サーバー通知コマンドが競合した場合の処理を示す図
【図７】上位層グループの形成処理を示す図
【図８】上位層中継サーバーの選定処理を示す図
【図９】上位層中継サーバーが下位層中継サーバーを辞退する処理を示す図
【図１０】状態監視におけるヘルスチェックコマンド送信の動作を示す図
【図１１】状態監視における最下層中継サーバーへのＡＣＫ応答動作を示す図
【図１２】ＡＣＫメッセージの構成を示す図
【図１３】状態監視における第２層中継サーバーへのＡＣＫ応答動作を示す図
【図１４】状態監視におけるＡＣＫ応答動作を示す図
【図１５】中継サーバー故障検出時の動作を示す図
【図１６】（ａ）管理装置の故障時の動作を示す図  （ｂ）管理装置および最上層中継サーバーの故障時の動作を示す図
【図１７】コマンド同報送信におけるグルーピングの例を示す図
【図１８】従来のポーリングによる状態監視およびコマンド送信を示す図
【図１９】従来のマルチキャストによる状態監視およびコマンド送信を示す図
【図２０】従来のＲＭＴＰに従った状態監視およびコマンド送信を示す図
【図２１】従来のマルチキャストにおけるＡＣＫエクスプロージョンを示す図
【図２２】従来のＲＭＴＰにおけるＤＲ故障を示す図
【符号の説明】
【０１４８】
１１  グループ化処理部
１２  中継サーバー確認コマンド送信部
１３  ヘルスチェックコマンド発行部
１４  同報コマンド発行部
２１  グループ参加コマンド処理部
２２  中継サーバー確認コマンド処理部
２３  上下層アドレス記憶部
２４  ヘルスチェックコマンド処理部
２５  同報コマンド応答処理部
【図１】
2007201984.tif 000003
【図２】
2007201984.tif 000004
【図３】
2007201984.tif 000005
【図４】
2007201984.tif 000006
【図５】
2007201984.tif 000007
【図６】
2007201984.tif 000008
【図７】
2007201984.tif 000009
【図８】
2007201984.tif 000010
【図９】
2007201984.tif 000011
【図１０】
2007201984.tif 000012
【図１１】
2007201984.tif 000013
【図１２】
2007201984.tif 000014
【図１３】
2007201984.tif 000015
【図１４】
2007201984.tif 000016
【図１５】
2007201984.tif 000017
【図１６】
2007201984.tif 000018
【図１７】
2007201984.tif 000019
【図１８】
2007201984.tif 000020
【図１９】
2007201984.tif 000021
【図２０】
2007201984.tif 000022
【図２１】
2007201984.tif 000023
【図２２】
2007201984.tif 000024