(57)【特許請求の範囲】
【請求項１】
複数台の管理装置が接続された通信ネットワークを有し、少なくとも１台の管理装置に通信ネットワークとは別に被管理機器が接続された機器管理システムであって、各管理装置は、階層化された第１プロトコルおよび第２プロトコルを用いて他の管理装置と通信する通信部と、第１プロトコルより上位層である第２プロトコルまでの通信が可能な他の管理装置を問い合わせる生存確認パケットを送出させ、生存確認パケットを受信したときには生存確認パケットの送信元に第１プロトコルで用いる第１アドレスと第２プロトコルで用いる第２アドレスとを含む回答パケットを返送させる通信状態確認部と、第１アドレスと第２アドレスと通信の可否を表す通信状態とが対応付けて登録される状態管理テーブルと、第１アドレスと第２アドレスと状態管理テーブルの各データと関係付ける管理インデックスとが対応付けて登録されるアドレステーブルと、状態管理テーブルに登録された管理装置のうち通信状態において通信可能である第１アドレスおよび第２アドレスを抽出してアドレステーブルに記憶させるテーブル管理部とを有し、通信部は、他の管理装置と通信する際にアドレステーブルに登録された第１アドレスおよび第２アドレスを用いることを特徴とする機器管理通信システム。
【請求項２】
前記通信状態確認部は、前記通信部を通して受信したパケットに含まれる第１アドレスに対応する管理インデックスが前記アドレステーブルにおいて未登録であるときに、前記通信部を通して生存確認パケットを送出させることを特徴とする請求項１記載の機器管理通信システム。
【請求項３】
前記テーブル管理部は、前記通信部を通して受信した回答パケットに含まれる第１アドレスと第２アドレスとの少なくとも一方が前記アドレステーブルにおいて既登録であり、かつ管理インデックスにより関係付けられた前記状態管理テーブルの通信状態が通信不可であるときにのみ、前記状態管理テーブルおよび前記アドレステーブルの該当データの内容を回答パケットの内容に置き換えることを特徴とする請求項１または請求項２記載の機器管理通信システム。
【請求項４】
前記テーブル管理部は、前記通信部を通して受信した回答パケットに含まれる第１アドレスと第２アドレスとの少なくとも一方が前記アドレステーブルにおいて既登録であり、かつ管理インデックスにより関係付けられた前記状態管理テーブルの通信状態が保留であるときに、前記状態管理テーブルに回答パケットの内容を追加することを特徴とする請求項１ないし請求項３のいずれか１項に記載の機器管理通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークを介して接続された管理装置に通信ネットワークとは別に被管理機器を接続し、被管理機器の監視と制御との少なくとも一方を通信ネットワークを介して行うことを可能にした機器管理通信システムに関するものである。
【背景技術】
【０００２】
従来より、通信ネットワークを用いて多数台の被管理機器を管理（監視と制御との少なくとも一方）する場合において、被管理機器の種類や配置場所を単位として下位の通信ネットワークを構築し、下位の通信ネットワークを上位の通信ネットワークにより管理することが考えられている。このような階層化された通信ネットワークを構築するには、図８に示すように、下位の通信ネットワーク（以下では、「下位ネット」という）Ｎｓａ，Ｎｓｂにローカル管理装置１ａ〜１ｃを設けてローカル管理装置１ａ〜１ｃにより被管理機器２ａ，２ｂを管理している。上位の通信ネットワーク（以下では、「上位ネット」という）Ｎｍではローカル管理装置１ａ〜１ｃが端末になり、グローバル管理装置３がローカル管理装置１ａ〜１ｃを管理する。
【０００３】
図示例では、照明器具やスイッチのような被管理機器２ａがローカル管理装置１ａとともに下位ネットＮｓａを構築し、計量計測のための計測器のような被管理機器２ｂがローカル管理装置１ｂとともに下位ネットＮｓｂを構築している。下位ネットＮｓａ，Ｎｓｂは自律的に動作し、たとえば、被管理機器２ａを設けた下位ネットＮｓａでは、上位ネットＮｍを用いることなくスイッチの操作に応じて照明器具の点灯・消灯を制御することが可能になっている。
【０００４】
また、図示例では、複数の下位ネットＮｓａ，Ｎｓｂを含むエリアＥ１，Ｅ２を単位として被管理機器２ａ，２ｂを管理するために、各エリアＥ１，Ｅ２ごとに被管理装置２ａ，２ｂの接続されないローカル管理装置１ｃを設けてある。ローカル管理装置１ｃは、各エリアＥ１，Ｅ２内のローカル管理装置１ａ，１ｂと通信が可能であり、エリアＥ１，Ｅ２内のローカル管理装置１ａ，１ｂが管理している情報を統合して管理する。
【０００５】
一方、上位ネットＮｍに設けたグローバル管理装置３は、ローカル管理装置１ａ〜１ｃを端末として扱い、グローバル管理装置３ではローカル管理装置１ａ〜１ｃを仲介として被管理機器２ａ，２ｂの情報を授受する。グローバル管理装置３は、１ないし複数台のコンピュータにより構成される。
【０００６】
各ローカル管理装置１ａ〜１ｃは、動作が異なるものの基本的な構成は同様であるから、以下ではとくに区別する必要がなければ、ローカル管理装置１として説明する。
【０００７】
ローカル管理装置１では、下位ネットＮｓａ，Ｎｓｂから取得した情報を上位ネットＮｍを介してグローバル管理装置３に伝送し、またグローバル管理装置３から上位ネットＮｍを通して取得した指示を下位ネットＮｓａ，Ｎｓｂに反映させる。さらに、ローカル管理装置１同士の間でも上位ネットＮｍを用いて情報を授受する。
【０００８】
ところで、上位ネットＮｍで用いる通信プロトコルは、ＯＳＩ参照モデルと同様に階層化されており、ネットワーク層としてＩＰプロトコルを用い、上位層のプロトコルとしてＢＡＣｎｅｔ（A Data Communication Protocol for Building Automation and Control Networks）プロトコルを用いることが提案されている（たとえば、特許文献１参照）。ＢＡＣｎｅｔプロトコルで用いるＢＡＣｎｅｔパケットは、図９に示すように、Ｅｔｈｅｒ（登録商標）ヘッダＨＤ１、ＩＰヘッダＨＤ２、ＵＤＰヘッダＨＤ３、ＢＶＬＬヘッダＨＤ４、ＢＡＣｎｅｔ領域ＢＡＣを有し、それぞれ物理層、ネットワーク層、トランスポート層、セッション層、上位層（ＢＡＣｎｅｔプロトコル）に対応する。ＢＡＣｎｅｔ領域ＢＡＣは、ＢＡＣｎｅｔプロトコルのデータを格納する領域であり、ＢＡＣｎｅｔ領域ＢＡＣには、各ローカル管理装置１を識別するためのデバイスＩＤが含まれる。
【特許文献１】特開２００７−９６５３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところで、上位ネットＮｍにおいてローカル管理装置１の間で通信を行うには、上位ネットＮｍにおいて通信可能なローカル管理装置１を互いに把握している必要があるが、ローカル管理装置１の追加や削除によって上位ネットＮｍ内のＩＰアドレスやデバイスＩＤは動的に変化する。大規模の機器管理通信システムでは、ローカル管理装置１の台数が多くなるから、このような動的変化に対して人手で対応するのは困難である。
【００１０】
これに対して、ＢＡＣｎｅｔを採用した通信ネットワークでは、ＷｈｏＩｓとＩＡｍと称するパケットを送受することにより、通信可能か否かを確認するとともに、通信可能なローカル管理装置１のＩＰアドレスおよびデバイスＩＤを取得することができるから、通信可能なローカル管理装置１に関してＩＰアドレスとデバイスＩＤと通信状態（通信の可否）とを動的に管理することが可能である。
【００１１】
しかしながら、各ローカル管理装置１はＩＰアドレスとデバイスＩＤと通信状態とを登録する１つの状態管理テーブルしか備えていないものであるから、他のローカル管理装置１と通信しようとすると、当該ローカル管理装置１のＩＰアドレスおよびデバイスＩＤについて通信の可否を判断した後でなければ通信を開始することができず、通信のたびに無駄な判断を行うことになるという問題を有している。
【００１２】
本発明は上記事由に鑑みて為されたものであり、その目的は、通信が可能な管理装置のみを登録しておくことにより通信開始時の無駄な処理を防止した機器管理通信システムを提供することにある。
【課題を解決するための手段】
【００１３】
請求項１の発明は、複数台の管理装置が接続された通信ネットワークを有し、少なくとも１台の管理装置に通信ネットワークとは別に被管理機器が接続された機器管理システムであって、各管理装置は、階層化された第１プロトコルおよび第２プロトコルを用いて他の管理装置と通信する通信部と、第１プロトコルより上位層である第２プロトコルまでの通信が可能な他の管理装置を問い合わせる生存確認パケットを送出させ、生存確認パケットを受信したときには生存確認パケットの送信元に第１プロトコルで用いる第１アドレスと第２プロトコルで用いる第２アドレスとを含む回答パケットを返送させる通信状態確認部と、第１アドレスと第２アドレスと通信の可否を表す通信状態とが対応付けて登録される状態管理テーブルと、第１アドレスと第２アドレスと状態管理テーブルの各データと関係付ける管理インデックスとが対応付けて登録されるアドレステーブルと、状態管理テーブルに登録された管理装置のうち通信状態において通信可能である第１アドレスおよび第２アドレスを抽出してアドレステーブルに記憶させるテーブル管理部とを有し、通信部は、他の管理装置と通信する際にアドレステーブルに登録された第１アドレスおよび第２アドレスを用いることを特徴とする。
【００１４】
請求項２の発明では、請求項１の発明において、前記通信状態確認部は、前記通信部を通して受信したパケットに含まれる第１アドレスに対応する管理インデックスが前記アドレステーブルにおいて未登録であるときに、前記通信部を通して生存確認パケットを送出させることを特徴とする。
【００１５】
請求項３の発明では、請求項１または請求項２の発明において、前記テーブル管理部は、前記通信部を通して受信した回答パケットに含まれる第１アドレスと第２アドレスとの少なくとも一方が前記アドレステーブルにおいて既登録であり、かつ管理インデックスにより関係付けられた前記状態管理テーブルの通信状態が通信不可であるときにのみ、前記状態管理テーブルおよび前記アドレステーブルの該当データの内容を回答パケットの内容に置き換えることを特徴とする。
【００１６】
請求項４の発明では、請求項１ないし請求項３のいずれかの発明において、前記テーブル管理部は、前記通信部を通して受信した回答パケットに含まれる第１アドレスと第２アドレスとの少なくとも一方が前記アドレステーブルにおいて既登録であり、かつ管理インデックスにより関係付けられた前記状態管理テーブルの通信状態が保留であるときに、前記状態管理テーブルに回答パケットの内容を追加することを特徴とする。
【発明の効果】
【００１７】
請求項１の発明の構成によれば、各管理装置が生存確認パケットを用いて上位層の第２プロトコルまでの通信の可否を検証しているから、各管理装置において通信が可能な管理装置を把握することができる。しかも、各管理装置では、通信状態を管理する状態管理テーブルに加えて、通信可能な管理装置についてのみ第１アドレスおよび第２アドレスをアドレステーブルに登録しているから、アドレステーブルに登録された第１アドレスおよび第２アドレスは通信可能な管理装置のものであることが保証されており、通信開始前に通信の可否を検証する処理が不要になる。また、アドレステーブルに登録されたデータは、管理インデックスにより状態管理テーブルのデータと関係付けられているから、他の管理装置の第１アドレスや第２アドレスに変更が生じたときや、通信ネットワークに新規な管理装置が参入したときなどに、管理インデックスの有無により既登録か未登録かを容易に判別でき、データを上書きするか追加するかなどの判断が可能になる。
【００１８】
請求項２の発明の構成によれば、受信パケットをアドレステーブルに照合したときに管理インデックスが未登録であれば、通信ネットワークに新規に管理装置が参入したと判断できるから、生存確認パケットを送出することにより、新規に参入した管理装置に関して第１アドレスおよび第２アドレスを取得することができる。
【００１９】
請求項３の発明の構成によれば、第１アドレスと第２アドレスとの一方しか一致する状態は、管理装置の設定を変更した場合などに生じるが、該当する一組のデータを置き換えるだけであり他のデータに影響しないから、他の管理装置との通信に影響を与えることなく設定変更が可能になる。
【００２０】
請求項４の発明の構成によれば、システム構築時にすぐには使用しない管理装置を、設置工事などの関係であらかじめ通信ネットワークに接続しておいても、他の管理装置に関する設定内容を変更する必要がないから、システムに障害を生じることがなく、施工工事の自由度を高めることができる。
【発明を実施するための最良の形態】
【００２１】
本実施形態では、図８に示した構成の機器管理システムを例として説明する。通信ネットワークにおける管理装置としてのローカル管理装置１は、図１に示すように、上位ネットＮｍの伝送路Ｌｍに接続される第１通信部１１と、下位ネットＮｓの伝送路Ｌｓに接続される第２通信部１２とを備える。第１通信部１２で用いるプロトコルはＯＳＩ参照モデルのように階層化されている。
【００２２】
上位ネットＮｍで伝送するパケットには、図９に示したフォーマットを有するＢＡＣｎｅｔパケットを用いる。ＢＡＣｎｅｔパケットのうちＩＰヘッダはネットワーク層のプロトコル（第１プロトコル）に対応し、ＢＡＣｎｅｔ領域はアプリケーション層のプロトコル（第２プロトコル）に対応する。そして、ＩＰヘッダにはＩＰアドレス（第１アドレス）が含まれ、ＢＡＣｎｅｔ領域にはＢＡＣｎｅｔにおける装置を個別に識別するためのデバイスＩＤ（第２アドレス）が含まれる。したがって、上位ネットＮｍ内においてＩＰアドレスとデバイスＩＤとは重複しないように設定することが要求される。なお、本実施形態では、ＩＰアドレスを第１アドレスに対応付け、デバイスＩＤを第２アドレスに対応付けているが、第１アドレスおよび第２アドレスを他の階層のアドレスに対応付けてもよい。
【００２３】
ローカル管理装置１には通信状態確認部１３が設けられ、通信状態確認部１３は、上位ネットＮｍに接続された他のローカル管理装置１と通信可能か否かを確認するための「ＷｈｏＩｓ」と称するＢＡＣｎｅｔパケット（以下、「生存確認パケット」という）を所定のタイミング（通常は、１分程度の一定時間間隔）で第１通信部１１に送出させる。なお、通信可能とは第１プロトコルによる通信だけではなく、第２プロトコルによる通信も含む。要するに、生存確認パケットでは上位層までの通信の可否を問い合わせる。
【００２４】
また、通信状態確認部１３は、他のローカル管理装置１からの生存確認パケットを受信すると、生存確認パケットを送出したローカル管理装置１に自己の通信状態を通知するための「ＩＡｍ」と称するＢＡＣｎｅｔパケット（以下、「回答パケット」という）を第１通信部１１に送出させる。生存確認パケットは同報（ブロードキャスト）で送信され、回答パケットはユニキャストで送信される。回答パケットのＢＡＣｎｅｔ領域には少なくともデバイスＩＤと通信状態との情報を有するＩＡｍデータが含まれる。
【００２５】
通信状態確認部１３が回答パケットとして返送する自己の通信状態は、通信可能な状態を示す「生存」である。ローカル管理装置１は、テーブル管理部１４を備え、生存確認パケットを送出したローカル管理装置１のテーブル管理部１４では、過去に「生存」であったローカル管理装置１から回答パケットが得られなかった場合には、当該ローカル管理装置１の通信状態を「離脱」と判断する。通信状態が「離脱」であるローカル管理装置１は通信不能であって、当該ローカル管理装置１が上位ネットＮｍから取り外されたか故障して通信できない場合に相当する。なお、ローカル管理装置１が上位ネットＮｍから意図的に離脱する場合には、「離脱」を示すパケットをブロードキャストで送信して各ローカル管理装置１に通知する。
【００２６】
ローカル管理装置１は、上位ネットＮｍに含まれるローカル管理装置１のＩＰアドレスとデバイスＩＤと通信状態とを対応付けて格納する配列構造の状態管理テーブルＴｂ１と、上位ネットＮｍに含まれるローカル管理装置１のうち通信可能なローカル管理装置１についてのみＩＰアドレスとデバイスＩＤとを対応付けて登録したリスト構造のアドレステーブルＴｂ２とを備える。状態管理テーブルＴｂ１におけるデバイスＩＤおよび通信状態は、回答パケットに含まれるＩＡｍデータと同様に一括して扱われる（つまり、デバイスＩＤ＋通信状態の形で１項目になる）。状態管理テーブルＴｂ１とアドレステーブルＴｂ２との内容は、システムの起動時にはデバイス設定ファイルに基づいて生成されるが、システムの運用中には生存確認パケットに対する回答パケットの有無と内容とにより更新される。
【００２７】
デバイス設定ファイルは、グローバル管理装置３に設定されている。つまり、各ローカル管理装置１のＩＰアドレスおよびデバイスＩＤをあらかじめ設定してデバイス設定ファイルを生成することにより、グローバル管理装置３から各ローカル管理装置１にデバイス設定ファイルを配信し、各ローカル管理装置１において状態管理テーブルＴｂ１とアドレステーブルＴｂ２とを生成する。また、デバイス設定ファイルは、グローバル管理装置３から配信する形態のほか、ローカル管理装置にあらかじめ仮のデバイス設定ファイルを持たせるようにしてもよい。
【００２８】
生存確認パケットに対する回答パケットの有無と内容とにより状態管理テーブルＴｂ１およびアドレステーブルＴｂ２の内容を更新する手順については後述する。
【００２９】
状態管理テーブルＴｂ１は、図２（ａ）に示すように、ＩＡｍデータ（デバイスＩＤ＋通信状態）とＩＰアドレスとの項目を含んでいる。状態管理テーブルＴｂ１のＩＡｍデータにおいて「ｄｅｖ−＊」（＊は数字）の形式で記述しているのがデバイスＩＤである。上位ネットＮｍの伝送路Ｌｍは有線であって、原則として上位ネットＮｍに接続されたすべてのローカル管理装置１は相互に通信可能である。したがって、各ローカル管理装置１の状態管理テーブルＴｂ１およびアドレステーブルＴｂ２には、上位ネットＮｍに含まれるすべてのローカル管理装置１のＩＰアドレスが含まれる。
【００３０】
ただし、上位ネットＮｍに新規にローカル管理装置１が参入する場合や、上位ネットＮｍからローカル管理装置１が除去されたり、ローカル管理装置１が故障したりする場合がある。前者の場合には状態管理テーブルＴｂ１およびアドレステーブルＴｂ２に通信可能なローカル管理装置１を追加する必要があり、後者の場合には状態管理テーブルＴｂ１では通信不能になったことを示するとともに、アドレステーブルＴｂ２では通信不能になったローカル管理装置１を削除することが必要になる。新規に参入した場合の通信状態は「生存」であり、通信不能になった場合の通信状態は「離脱」になる。
【００３１】
なお、後述するように状態管理テーブルＴｂ１の各一組のデータについて状態管理テーブルＴｂ１の中での位置を特定するために、状態管理テーブルＴｂ１は配列構造を採用しているから、状態管理テーブルＴｂ１を構築するために必要な容量はあらかじめ余裕を見込んで確保しておく。
【００３２】
アドレステーブルＴｂ２は、図２（ｂ）に示すように、ＩＰアドレス、デバイスＩＤ、管理インデックス、送信回数、送信時間の各項目を含んでいる。管理インデックスは、状態管理テーブルＴｂ１の各一組のデータを参照するためのインデックスであって、関係付けるデータが状態管理テーブルＴｂ１の何番目に含まれているかを示している。たとえば、アドレステーブルＴｂ２において管理インデックスが「２」であるデータは、状態管理テーブルＴｂ１の２番目（図示例では２行目）のデータと関係付けられる。
【００３３】
送信回数と送信時間とは、それぞれ生存確認パケットを送信する回数の上限回数と、生存確認パケットを送信する時間間隔を指定する値であり、通信状態確認部１３では、送信回数が設定値以下の場合または送信時間が前回の生存確認パケットの送信から設定値以上になっている場合に生存確認パケットを送信する。したがって、通信状態確認部１３は、送信回数を計数するカウンタ機能および送信時間を時限する時計機能を備える。なお、図では省略しているが、アドレステーブルＴｂ１はリスト構造であるから、各一組のデータの前後の連結を表すデータも含まれる。アドレステーブルＴｂ２にリスト構造を採用していることにより、アドレステーブルＴｂ２ではデータの加除が容易になる。
【００３４】
テーブル管理部１４は、状態管理テーブルＴｂ１に格納されたローカル管理装置１のうち通信状態が「生存」であるローカル管理装置１のみについて、ＩＰアドレスとデバイスＩＤとをアドレステーブルＴｂ２に登録する。また、このとき管理インデックスも付与される。
【００３５】
第１通信部１１は、他のローカル管理装置１と通信する際には、アドレステーブルＴｂ２に登録されたＩＰアドレスおよびデバイスＩＤを用いる。アドレステーブルＴｂ２には通信状態が「離脱」であるデータは含まれていないから、通信状態が「離脱」であるローカル管理装置１との間で無駄な通信を行うことがなく、処理や通信に関する無駄がなくなる。逆に言えば、アドレステーブルＴｂ２に登録されているローカル管理装置１は通信可能であるから、アドレステーブルＴｂ２に登録されているローカル管理装置１を選択して通信を行えば、通信不能のローカル管理装置１を指定するという無駄な処理が生じない。このことは、多数台のローカル管理装置１を設けている場合にとくに有効であり、不要な処理や通信を行わないことにより上位ネットＮｍのトラフィックの低減になる。
【００３６】
図３を参照してローカル管理装置１の動作を説明する。各ローカル管理装置１では、第１通信部１１を通してＢＡＣｎｅｔパケット（生存確認パケットまたは回答パケット）を受信すると（Ｓ１）、アドレステーブルＴｂ２からＢＡＣｎｅｔパケット（以下、単に「パケット」という）の送信元のＩＰアドレスに対応するデバイスＩＤを検索する（Ｓ２）。アドレステーブルＴｂ２において、受信したＩＰアドレスに対応するデバイスＩＤが登録されていないときには（Ｓ３：Ｎｏ）、取得したＩＰアドレスをアドレステーブルＴｂ２に格納するが、デバイスＩＤは未知デバイスであることを示す仮デバイスＩＤとし、また、管理インデックスも未登録に対応する適宜の値を付与する（Ｓ４）。仮デバイスＩＤは、デバイスＩＤとして用いていない値のうち未使用のものを充てる。その後、受信したパケットが「生存」を示しているか否かを判断する（Ｓ５）。
【００３７】
アドレステーブルＴｂ２に新規にデータを登録する場所は、アドレステーブルＴｂ２の末尾とすればよいが、アドレステーブルＴｂ２はリスト構造であるからＩＰアドレスやデバイスＩＤなどが昇順に並ぶように適宜の箇所に挿入することも可能である。
【００３８】
ステップＳ３においてデバイスＩＤが登録済みであるときには（Ｓ３：Ｙｅｓ）、デバイスＩＤが仮デバイスＩＤか否かを確認し（Ｓ８）、さらに、受信したパケットが「生存」を示しているか否かを確認する（Ｓ５、Ｓ９）。ステップＳ５、Ｓ９のいずれの場合も、受信パケットが「生存」を示しているときには（Ｓ５：Ｙｅｓ，Ｓ９：Ｙｅｓ）、デバイス登録チェック処理に移行し（Ｓ６）、その後、登録更新処理に移行する（Ｓ７）。デバイス登録チェック処理および登録更新処理については後述する。
【００３９】
要するに、アドレステーブルＴｂ２にデバイスＩＤ（仮デバイスＩＤの場合もある）が存在した状態であり、かつ受信パケットが「生存」を示すときには、デバイス登録チェック処理（Ｓ６）と登録更新処理（Ｓ７）とを行う。
【００４０】
一方、受信パケットが「生存」を示しておらず（つまり、生存確認パケットである場合）、しかもデバイスＩＤが仮デバイスＩＤであって（Ｓ５：Ｎｏ）、さらには以下のような生存確認パケットを送信する条件が成立していれば、生存確認パケットを送信する（Ｓ１０）。生存確認パケットの送信条件は、ＩＰアドレスとデバイスＩＤとがアドレステーブルＴｂ２に登録されているにもかかわらず管理インデックスが未登録であるデータが存在する場合、生存確認パケットの送信回数がアドレステーブルＴｂ２に設定した値以下である場合、生存確認パケットを送信してから送信時間の設定値以上の時間が経過している場合のいずれかが成立することである。
【００４１】
ステップＳ１０では、受信したパケットが回答パケットで「生存」を示すものではなく、しかもアドレステーブルに管理インデックスが存在しないときには、上位ネットＮｍに新規のローカル管理装置１が参入したと考えられるから、生存確認パケットをブロードキャストで送信し、新規に参入したローカル管理装置１に回答パケットを送信させるのである。この動作により、新規に参入したローカル管理装置１についてＩＰアドレスおよびデバイスＩＤを検出することができる。なお、図３では生存確認パケットを受信したときに回答パケットを返送する処理は省略している。
【００４２】
ところで、上述したように、デバイスＩＤがアドレステーブルＴｂ２に存在し、かつ受信パケットが「生存」を示すときには、回答パケットにより取得したＩＰアドレスとＩＡｍデータを用いて図３のステップＳ６であるデバイス登録チェック処理を行う。デバイス登録チェック処理では、図４に示すように、アドレステーブルＴｂ２に登録された全データに対して以下の処理を順に行う。すなわち、以下の処理はアドレステーブルＴｂ２の各一組のデータに対して行う。
【００４３】
まず、ＩＰアドレスおよびデバイスＩＤについて、受信した回答パケットのデータとアドレステーブルＴｂ２に登録されたデータとの一致を判断し（Ｓ１）、両方が一致しているか一方が一致している場合には、管理インデックスが登録されているか否かを判定する（Ｓ２、Ｓ３）。ＩＰアドレスとデバイスＩＤとがともに一致し、管理インデックスが登録されていれば（Ｓ２：Ｙｅｓ）、アドレステーブルＴｂ２に登録済みのデータであるから、デバイス登録チェック処理を終了する。
【００４４】
また、ＩＰアドレスおよびデバイスＩＤについて、受信した回答パケットのデータとアドレステーブルＴｂ２に登録されたデータとが一致するが、管理インデックスが登録されていない場合には（Ｓ２：Ｎｏ）、登録更新処理（図３のステップＳ７）に移行する。この動作は、上述したデバイス設定ファイルがグローバル管理装置３から配信された直後であって、状態管理テーブルＴｂ１とアドレステーブルＴｂ２との関係付けが行われていない状態に対応する。状態管理テーブルＴｂ１とアドレステーブルＴｂ２との関係付けは、以後の生存確認パケットと回答パケットとの授受により行われる。
【００４５】
アドレステーブルＴｂ２の着目するデータにおいて、受信した回答パケットに含まれるＩＰアドレスとデバイスＩＤとの一方だけが一致する場合で、管理インデックスが登録されているときには（Ｓ３：Ｙｅｓ）、ＩＰアドレスとデバイスＩＤとのいずれかが重複して登録されている可能性があるから、管理インデックスを用いて状態管理テーブルＴｂ１から通信状態を獲得する（Ｓ４）。
【００４６】
ここで、取得した通信状態が「生存」であれば（Ｓ５：Ｙｅｓ）、アドレステーブルＴｂ２の着目している一組のデータの更新を禁止し（Ｓ６）、デバイス登録チェック処理を終了する。また、取得した通信状態が「離脱」であれば（Ｓ５：Ｎｏ）、登録更新処理（図３のステップＳ７）に移行する。
【００４７】
なお、ステップＳ３において管理インデックスが登録されていないとき（Ｓ３：Ｎｏ）、あるいは、受信した回答パケットに含まれるＩＰアドレスとデバイスＩＤとの両方がともにアドレステーブルＴｂ２の着目するデータと一致しない場合には（Ｓ１）、回答パケットのＩＰアドレスとデバイスＩＤとの照合をアドレステーブルＴｂ２の次のデータについて行う。なお、回答パケットに含まれるＩＰアドレスとデバイスＩＤとがともにアドレステーブルＴｂ２に登録されていない場合には、回答パケットの送信元であるローカル管理装置１が上位ネットＮｍに新規に参加した場合と考えられる。
【００４８】
上述の動作は、デバイス登録チェック処理が終了するか登録更新処理に移行するまでは、アドレステーブルＴｂ２の最後のデータまで繰り返し行う。上述の条件でデバイス登録チェック処理が終了する場合には、登録更新処理を行わずに次のパケットを受信待機する。
【００４９】
次に、図３のステップＳ７に対応する登録更新処理について説明する。登録更新処理では、回答パケットの内容に基づいて状態管理テーブルＴｂ１にデータを登録するか状態管理テーブルＴｂ１のデータを更新する。その後、アドレステーブルＴｂ２のデータを更新する。
【００５０】
登録更新処理では、図５に示すように、まず状態管理テーブルＴｂ１に登録された全データに対して以下の処理を順に行う。登録更新処理においては、まず回答パケットのＩＰアドレスおよびデバイスＩＤと状態管理テーブルＴｂ１に登録されたＩＰアドレスおよびデバイスＩＤとを比較する（Ｓ１）。ここで、少なくとも一方が一致したのか両方とも一致しなかったのかに応じて以後の処理が異なる。
【００５１】
少なくとも一方が一致した場合、通信状態が「離脱」か否かが判定され（Ｓ２）、「離脱」であれば（Ｓ２：Ｙｅｓ）、一致したのが１回目か２回目以降かを判断する（Ｓ３）。１回目であるときには（Ｓ３：Ｙｅｓ）、これを優先的に用い、状態管理テーブルＴｂ１の該当データを更新する（Ｓ４）。しかし、一致したのが２回目以降であるときには（Ｓ２：Ｎｏ）、状態管理テーブルＴｂ１の該当データを削除する（Ｓ５）。この処理により、状態管理テーブルＴｂ１に登録された順番で上位のデータのみが残り、他のデータは削除されるから、ＩＰアドレスまたはデバイスＩＤが重複している場合には重複のない１個のデータのみが残ることになる。
【００５２】
次に、ステップＳ１での一致の有無にかかわらず、状態管理テーブルＴｂ１の着目している領域（管理インデックスが付与される単位の領域）が空き領域か否かが判断され（Ｓ６）、空き領域であれば（Ｓ６：Ｙｅｓ）当該場所が記憶される（Ｓ７）。
【００５３】
上述の処理を状態管理テーブルＴｂ１に登録されているすべてのデータについて行った後、ＩＰアドレスとデバイスＩＤとの一致を再度確認し（Ｓ８）、一度も一致していない場合であって状態管理テーブルＴｂ１の空き領域が記憶されているときには、当該空き領域に回答パケットで得られたＩＰアドレスおよびＩＡｍデータを登録し、状態管理テーブルＴｂ１に空き領域が存在していなければ状態管理テーブルＴｂ１の末尾に回答パケットで得られたＩＰアドレスおよびＩＡｍデータを登録する（Ｓ９）。
【００５４】
図５のステップＳ５、Ｓ９のように状態管理テーブルＴｂ１において、ＩＰアドレスまたはデバイスＩＤに重複があれば削除し、削除により空き領域が生じると、当該空き領域に新たなデータが書き込まれる。なお、状態管理テーブルＴｂ１においてＩＡｍデータに含まれる通信状態が「離脱」になっている場合には、空き領域と同等に扱われる。このように、配列構造を有する状態管理テーブルＴｂ１で空き領域を利用してデータを上書きすることにより、状態管理テーブルＴｂ１として用いる記憶領域の有効利用が図れる。
【００５５】
ここまでの処理によって、状態管理テーブルＴｂ１には、回答パケットの送信元に関して通信状態が「生存」として登録される。このように状態管理テーブルＴｂ１にデータが登録された後に、アドレステーブルＴｂ２の内容が更新される。つまり、アドレステーブルＴｂ２について、先頭から末尾まで各データが順に抽出され、各データに対して以下の処理が行われる。
【００５６】
すなわち、状態管理テーブルＴｂ１に登録されたＩＡｍデータおよびＩＰアドレスと、アドレステーブルＴｂ２の各データのＩＰアドレスおよびデバイスＩＤとの一致が検証され（Ｓ１０）、少なくとも一方が一致しているときには、一致したのが１回目か２回目以降を判断する（Ｓ１１）。一致したのが１回目であれば（Ｓ１１：Ｙｅｓ）、アドレステーブルＴｂ２において着目している一組のデータを更新する（Ｓ１２）。一方、２回目以降であるときには、アドレステーブルＴｂ２において着目しているデータを削除する（Ｓ１３）。つまり、アドレステーブルＴｂ２においてＩＰアドレスまたはデバイスＩＤが重複している場合には重複のない１個のデータのみが残る。要するに、状態管理テーブルＴｂ１と同様にＩＰアドレスとデバイスＩＤとはそれぞれ重複しないように整理される。
【００５７】
次に、ステップＳ９での一致の有無にかかわらず、アドレステーブルＴｂ２の着目している領域が空き領域か否かが判断され（Ｓ１４）、空き領域であれば当該場所が記憶される（Ｓ１５）。
【００５８】
上述の処理をアドレステーブルＴｂ２に登録されているすべてのデータについて行った後、ＩＰアドレスとデバイスＩＤとの一致を再度確認し（Ｓ１６）、一度も一致していない場合であってアドレステーブルＴｂ２の空き領域が記憶されているときには、当該空き領域にＩＰアドレスおよびデバイスＩＤを登録し、アドレステーブルＴｂ２に空き領域が存在していなければアドレステーブルＴｂ２の末尾にＩＰアドレスおよびデバイスＩＤを登録する（Ｓ１７）。
【００５９】
一方、ステップＳ２で「離脱」であれば、通信状態を「保留」にして登録し、さらに通信状態が「保留」になっているものがあれば（Ｓ１９：Ｙｅｓ）、そのデバイスＩＤと重複するデバイスＩＤを再チェックする（Ｓ２０）。再チェックしたデバイスＩＤの通信状態が「離脱」になっていれば（Ｓ２１：Ｙｅｓ）、「離脱」のものに上書き（置換）した後（Ｓ２２）、ステップＳ６の後の処理に進む。なお、ステップＳ１９で「保留」がないか、ステップＳ２１で「離脱」がない場合もステップＳ６の後の処理に進む。
【００６０】
以上の手順によれば、回答パケットを受信した場合には、状態管理テーブルＴｂ１に登録される通信状態が「生存」になり、「生存」である場合には、同じＩＰアドレスおよびデバイスＩＤがアドレステーブルＴｂ２にも登録される。言い換えると、アドレステーブルＴｂ２にＩＰアドレスおよびデバイスＩＤが登録されていれば、状態管理テーブルＴｂ１では通信状態が「生存」であることを意味する。
【００６１】
上述したように、ローカル管理装置１のＩＰアドレスやデバイスＩＤを変更したりローカル管理装置１を交換したりした場合であっても、状態管理テーブルＴｂ１とアドレステーブルＴｂ２とが自動的に更新されるから、新たな設定を行う必要がなく、上位ネットＮｍの動作に支障を与えることなく変更に速やかに対応することが可能になる。
【００６２】
上述した動作を踏まえて、受信した回答パケットの内容に応じた状態管理テーブルＴｂ１およびアドレステーブルＴｂ２の内容変化の変化を例示する。いま、図６（ａ）に示す情報を含む回答パケットを受信し、そのときのアドレステーブルＴｂ２が図６（ｂ）のような内容である場合を想定する。
【００６３】
まず、新規に接続されたローカル管理装置１が回答パケットの送信元である場合について説明する。この場合、回答パケットのＩＰアドレスおよびデバイスＩＤは、状態管理テーブルＴｂ１とアドレステーブルＴｂ２とのいずれにも存在しない。したがって、図３に示した処理により、図６（ｃ）のように、まずアドレステーブルＴｂ２の末尾に回答パケットから得られたＩＰアドレス（２００１：：３）が登録され、このＩＰアドレスに対しては仮デバイスＩＤ（０ｘ３ＦＦＦＦＦ）が付与される。また、アドレステーブルＴｂ２に登録されていなかった情報であるから、管理インデックスにも未登録を示す値（０ｘＦＦＦＦ）が登録される（図３のＳ２→Ｓ３→Ｓ４）。
【００６４】
次にデバイス登録チェック処理に移行すると、回答パケットのＩＰアドレスとデバイスＩＤとに対して、アドレステーブルＴｂ２には一致するＩＰアドレスが登録されているが、デバイスＩＤは仮デバイスＩＤであって不一致であり、さらに管理インデックスは未登録の値が登録されているから、登録更新処理に移行する（図４のＳ１→Ｓ３）。
【００６５】
また、回答パケットの内容に一致するデータが状態管理テーブルＴｂ１に存在しないから、図５のステップＳ１で「不一致」の判断がなされ、状態管理テーブルＴｂ１に回答パケットにより受信したＩＡｍデータ（デバイスＩＤおよび通信状態）およびＩＰアドレスが登録され、図６（ｄ）のような内容になる。図示例では、回答パケットの内容に対応するデータが状態管理テーブルＴｂ１の末尾に登録されている。
【００６６】
登録更新処理では、状態管理テーブルＴｂ１へのデータの登録後に、状態管理テーブルＴｂ１に登録したデータがアドレステーブルＴｂ２の内容と再度照合され（図５のＳ１０）、ＩＰアドレスとデバイスＩＤとの少なくとも一方が一致すれば、重複が検証される（図５のＳ１１）。ここで重複が見つかればアドレステーブルＴｂ１から当該情報が削除されるが（図５のＳ１３）、図６の例では、新規に接続されたローカル管理装置１からの回答パケットであるから重複はなく、図６（ｅ）のように、ＩＰアドレスが一致する領域において仮デバイスＩＤが本来のデバイスＩＤ（図示例では「３」）に書き換えられる。また、このとき状態管理テーブルＴｂ１のどのデータに対応するかがわかるから、アドレステーブルＴｂ２の管理インデックス（図示例では「３」）が状態管理テーブルＴｂ１に関係付けて登録される。
【００６７】
次に、ＩＰアドレスに対応するデバイスＩＤが変更された場合を例示する。送信元であるローカル管理装置１からの回答パケットの内容において、図７（ａ）のように、ＩＰアドレスが「２００１：：２」、デバイスＩＤが「３」であるものとし、このときアドレステーブルＴｂ２では図７（ｂ）のように、ＩＰアドレスが「２００１：：２」であるデータに対応付けてデバイスＩＤが「２」と登録され、また状態管理テーブルＴｂ１では図７（ｃ）のように、ＩＰアドレスが「２００１：：２」であるデータが存在し、ＩＡｍデータがデバイス２の「離脱」を示しているものとする。「離脱」は生存確認パケットの送信時に応答がないか、「離脱」の際にブロードキャストで送信された「離脱」を示すパケットによって検出される。
【００６８】
この条件において回答パケットを受信すると、アドレステーブルＴｂ２に登録されているデータの中にＩＰアドレスの一致するものがあり、当該ＩＰアドレスに対するデバイスＩＤが存在するから、図３のＳ３→Ｓ８→Ｓ９：Ｙｅｓの経路でデバイス登録チェック処理に移行する。さらに、アドレステーブルＴｂ２には当該ＩＰアドレスに対応する管理インデックスも存在するから、デバイス登録チェック処理では、図４のステップＳ３→Ｓ４→Ｓ５と進み、ここで、状態管理テーブルＴｂ１のＩＡｍデータでは該当するＩＰアドレスの通信状態が「離脱」になっているから、ステップＳ５で「Ｙｅｓ」が選択され、登録更新処理に移行する。
【００６９】
登録更新処理では、図５のステップＳ１において、状態管理テーブルＴｂ１のデータに回答パケットの内容に一致するＩＰアドレスが存在し、図７に図示する条件では１回目だけ一致するから、図５のステップＳ３→Ｓ４と進み、図７（ｄ）のように状態管理テーブルＴｂ１において通信状態が「離脱」であった一組のデータの内容が回答パケットの内容で上書きされて更新される。
【００７０】
その後、図５のステップＳ１０において、状態管理テーブルＴｂ１で更新されたＩＰアドレスおよびデバイスＩＤと、アドレステーブルＴｂ２のＩＰアドレスおよびデバイスＩＤとが照合され（図５のＳ１０）、状態管理テーブルＴｂ１に登録されたＩＰアドレスと一致するＩＰアドレスを持つデータが更新される（図５のステップＳ１１→Ｓ１２）。そして、図７（ｅ）のように、アドレステーブルＴｂ２のＩＰアドレス「２００１：：２」に対応するローカル管理装置１のデバイスＩＤが「３」に変更される。
【００７１】
図７に示した例は、デバイスＩＤが変更された場合であるが、ＩＰアドレスに変更が生じた場合も同様の動作になる。このような動作により、上位ネットＮｍに接続されるローカル管理装置１のＩＰアドレスやデバイスＩＤの変更に容易に対応することができる。
【図面の簡単な説明】
【００７２】
【図１】実施形態を示すブロック図である。
【図２】（ａ）は同上に用いる状態管理テーブルを示す図、（ｂ）は同上に用いるアドレステーブルを示す図である。
【図３】同上の全体の動作説明図である。
【図４】同上におけるデバイス登録チェック処理の動作説明図である。
【図５】同上における登録更新処理の動作説明図である。
【図６】同上の動作例を説明する図である。
【図７】同上の他の動作例を説明する図である。
【図８】機器管理通信システムの構成例を示す図である。
【図９】同上に用いる信号のフォーマットを示す図である。
【符号の説明】
【００７３】
１  ローカル管理装置（管理装置）
１ａ〜１ｃ  ローカル管理装置
２ａ，２ｂ  被管理機器
３  グローバル管理装置
１１  第１通信部
１２  第２通信部
１３  通信状態確認部
１４  テーブル管理部
Ｌｍ  伝送路
Ｌｓ  伝送路
Ｎｍ  上位ネット（通信ネットワーク）
Ｎｓ  下位ネット
Ｔｂ１  状態管理テーブル
Ｔｂ２  アドレステーブル
【図１】
0004821715.tif 000002
【図２】
0004821715.tif 000003
【図３】
0004821715.tif 000004
【図４】
0004821715.tif 000005
【図５】
0004821715.tif 000006
【図６】
0004821715.tif 000007
【図７】
0004821715.tif 000008
【図８】
0004821715.tif 000009
【図９】
0004821715.tif 000010