図1は、ネットワーク管理システム(データ管理システム)の一例を示す構成図である。ネットワーク管理システムは、ネットワーク3の各ノードN1〜N6に設けられたネットワーク(NW)機器(端末装置)2と、NW機器2のデータを管理する管理サーバ(A)〜(C)(管理装置)1と、管理サーバ1を操作するための操作端末(TRM)4とを含む。
ノードN1〜N6のNW機器2は、データベース(DB)に格納されたデータDT1〜DT6をそれぞれ保持する。データDT1〜DT6としては、例えば、通信に関する設定情報が挙げられる。各NW機器2は、管理サーバ(A)〜(C)1のうち、2つの管理サーバ1と通信回線を介して接続され、該2つの管理サーバ1からデータDT1〜DT6を管理される。
本例において、ノードN1,N4の各NW機器2のデータDT1,DT4は、管理サーバ(A),(C)1から管理され、ノードN2,N6の各NW機器2のデータDT2,DT6は、管理サーバ(A),(B)1から管理される。また、ノードN3,N5の各NW機器2のデータDT3,DT5は、管理サーバ(B),(C)1から管理される。なお、NW機器2としては、例えばコンピュータ、レイヤ2スイッチ、及びルータなどが挙げられるが、これに限定されない。
管理サーバ(A)〜(C)1は、それぞれ、ノードN1〜N6のうち、管理対象の各ノードのNW機器2に保持されたデータDT1〜DT6を管理する。管理サーバ(A)〜(C)1は、管理対象の各ノードのNW機器2から収集したデータDT1〜DT6を格納するデータベース(DB)を有する。なお、管理サーバ(A)〜(C)1は、互いに離れた地域に配置されており、共通のNW機器2を介して通信する場合を除き、通信することができない。
本例において、管理サーバ(A)1は、ノードN1,N2,N4,N6の各NW機器2のデータを管理するため、管理サーバ(A)1のDBには、データDT1,DT2,DT4,DT6が格納されている。管理サーバ(B)1は、ノードN2,N3,N5,N6の各NW機器2のデータを管理するため、管理サーバ(B)1のDBには、データDT2,DT3,DT5,DT6が格納されている。管理サーバ(C)1は、ノードN1,N3,N4,N5の各NW機器2のデータを管理するため、管理サーバ(C)1のDBには、データDT1,DT3,DT4,DT5が格納されている。
このように、各管理サーバ(A)〜(C)1は、他の管理サーバ1と共通する4つのNW機器2のデータDT1〜DT6を管理する。より具体的には、2つの管理サーバ1は、共通する2つのNW機器2のデータDT1〜DT6を管理する。このため、一方の管理サーバ1が故障しても、他方の管理サーバ1によりNW機器2のデータの管理が継続される。
操作端末4は、例えば、ネットワークの管理者が管理サーバ1を操作するために用いるパーソナルコンピュータである。ネットワークの管理者は、操作端末4を操作することにより、DB内のデータDT1〜DT6を更新する。
例えば、管理サーバ(A)1のDB内のデータDT2が更新された場合、管理サーバ(A)1は、更新後のデータDT2に基づいて、ノードN2のNW機器2のDB内のデータDT2を更新する。ノードN2のNW機器2のデータDT2を管理する他方の管理サーバ(B)1は、ノードN2のNW機器2から更新済みのデータDT2を取得し、自装置のDB内のデータDT2を更新する。
しかし、管理サーバ(A)1とノードN2を結ぶ通信回線(伝送経路)に障害が発生した場合(×印参照)、管理サーバ(A)は、ノードN2のNW機器2のデータDT2を更新できない。このため、管理サーバ(A)1のDBとノードN2のNW機器2のDBの間、及び管理サーバ(A)1のDBと管理サーバ(B)1のDBの間で、データDT2の不整合が生ずる。
そこで、他方の管理サーバ(B)1は、管理サーバ(A)1からノードN6のNW機器2を介して受信した更新通知に基づいて、該NW機器2を介して管理サーバ(A)1から更新データを取得し、自装置のDB内のデータDT2及びノードN2のNW機器2のデータDT2を更新する。これにより、管理サーバ(A)1のDBとノードN2のNW機器2のDBの間、及び管理サーバ(A)1のDBと管理サーバ(B)1のDBの間で、データDT2の整合(同期)が行われる。
次に、管理サーバ1及びNW機器2の構成を説明する。以降では、上述した管理サーバ(A),(B)1及びノードN2,N6のNW機器2が含まれる構成Mを例示して動作を説明するが、他の構成における動作についても同様に説明される。
図2は、管理サーバ1の一例を示す構成図である。管理サーバ1は、CPU(Central Processing Unit)10、ROM(Read Only Memory)11、RAM(Random Access Memory)12、HDD(Hard Disk Drive)13、ローカル通信処理部14、及びネットワーク通信処理部15を有する。
CPU10は、互いに信号の入出力ができるように、ROM11、RAM12、HDD13、ローカル通信処理部14、及びネットワーク通信処理部15と、データバス16を介して接続されている。ROM11は、CPU10を駆動するプログラムが格納されている。RAM12は、CPU10のワーキングメモリとして機能する。
HDD13には、データDT1〜DT6を格納するデータベース(DB)130、管理対象のノードN1〜N6に関するノード情報131、及びDB130の同期状態を示す同期状態情報132が記憶されている。図3(a)及び図3(b)には、ノード情報131及び同期状態情報132の一例がそれぞれ示されている。
ノード情報131は、管理対象のノードN1〜N6を示すノードID(識別子)(N1〜N6)と、該ノードN1〜N6のデータDT1〜DT6を示す管理対象データID(DT1〜DT6)とを含む。管理サーバ(A)1の場合、管理対象のノードは、ノードN1,N2,N4,N6であるので、ノード情報131には、ノードID及び管理対象データIDとして、N1,N2,N4,N6及びDT1,DT2,DT4,DT6が登録されている。
同期状態情報132は、DB130内のデータDT1〜DT6の同期状態(「済」または「未」)を示す同期状態と、DB130の最終の更新時刻(年月日及び時分)とを示す。管理サーバ1は、データDT1〜DT6の更新通知を受けた場合、同期状態情報132の更新時刻に基づいて更新データが最新であるか否かが判定される。同期状態は、「済」の場合、更新元の管理サーバ1との間において、DB130の同期が完了していることを示し、「未」の場合、DB130の同期が未完了であることを示す。同期状態は、更新通知の受信及びDB130の更新完了により更新される。
ローカル通信処理部14は、LAN(Local Area Network)などを介して操作端末4と通信する。また、ネットワーク通信処理部15は、例えば光ファイバなどの通信回線を介してNW機器2と通信する。ローカル通信処理部14及びネットワーク通信処理部15としては、例えばネットワークインターフェースカード(NIC: Network Interface Card)が挙げられる。
CPU10は、ROM11からプログラムを読み込むと、機能として、更新通知部100、更新要求処理部101、更新通知処理部102、更新要求部103、及びタイマ部104が形成される。更新通知部100は、DB130内のデータDT1〜DT6の何れかが操作端末4により更新されたとき、ネットワーク通信処理部15を介して、管理対象の各ノードN1〜N6に当該データの更新を通知する。
このとき、更新通知部100は、更新対象のノードN1〜N6だけでなく、更新対象以外のノードN1〜N6にも更新通知を送信する。図1の構成Mにおいて、更新元の管理サーバ(A)1は、ノードN2のNW機器2のデータDT2を更新する場合、ノードN2のNW機器2だけでなく、更新対象ではないノードN1,N4,N6のNW機器2にも更新通知を送信する。すなわち、管理サーバ(A)1は、管理サーバ(A),(B)1の共通の管理対象のノードN2のNW機器2に保持されたデータDT2を更新するとき、自装置の管理対象の全てノードN1,N2,N4,N6のNW機器2に更新通知を送信する。
図4(a)には、更新通知の一例が示されている。更新通知は、宛先、送信元、通知ID、更新元サーバID、更新対象ノードID、更新時刻を含む。宛先及び送信元は、例えば、更新通知の宛先及び送信元であるNW機器2または管理サーバ1のIP(Internet Protocol)アドレスをそれぞれ示す。なお、宛先及び送信元として、IPアドレスに代えて、ノードID(N1〜N6)及びサーバID(A〜C)が用いられてもよい。
通知IDは、更新データの識別子である。更新IDは、後述する更新要求にも含まれ、送信する更新データの特定に用いられる。
更新元サーバID(A〜C)は、操作端末4からのDB130の更新に応じてデータDT1〜DT6の更新処理を行う管理サーバ1を示す。例えば、更新元サーバIDが「A」である場合、NW機器2のデータの更新処理は、管理サーバ(A)1のDB130内のデータDT1,DT2,DT4,DT6に基づいて行われる。
更新対象ノードIDは、更新対象のNW機器2のノードID(N1〜N6)を示す。例えば、更新対象ノードIDが「N2」である場合、ノードN2のNW機器2のデータDT2が更新される。
更新時刻は、例えば、更新元の管理サーバ1において更新データが生成された時刻(年月日を含む)を示す。更新時刻は、更新データが最新であるか否かの判定に用いられる。
また、更新通知部100は、更新元以外の管理サーバ1の場合、更新元の管理サーバ1と更新対象のNW機器2の間の通信に障害が発生したとき、更新データの取得後、更新元の管理サーバ1に代わり、更新対象のNW機器2に更新通知を送信する。このとき、更新通知部100は、更新対象以外のNW機器2には更新通知を送信しない。図1の構成Mにおいて、更新元の管理サーバ(A)1と更新対象のノードN2のNW機器2の間の通信に障害が発生した場合(×印参照)、更新元以外の管理サーバ(B)1の更新通知部100は、更新データの取得後、ノードN2のNW機器2だけに更新通知を送信する。更新通知部100は、更新通知の送信後、送信完了を更新要求処理部101に通知する。
更新要求処理部101は、更新通知の送信完了の通知を受けた場合、更新対象のNW機器2から更新要求を受信したとき、DB130内から更新データを読み出し、ネットワーク通信処理部15を介して更新対象のノードN1〜N6のNW機器2に送信する。図1の構成Mにおいて、管理サーバ(A)1の更新要求処理部101は、更新対象のノードN2のNW機器2から更新要求を受信したとき、更新データをノードN2のNW機器2に送信する。また、管理サーバ(A)1とノードN2のNW機器2の間の通信に障害が発生した場合(×印参照)、更新元以外の管理サーバ(B)1の更新要求処理部101が、更新対象のノードN2のNW機器2から更新要求を受信したとき、更新データを該NW機器2に送信する。
図4(b)には、更新要求の一例が示されている。更新要求は、宛先、送信元、及び通知IDを含む。宛先及び送信元は、更新要求の宛先及び送信元のNW機器2または管理サーバ1のIPアドレスをそれぞれ示す。通知IDは、更新通知の通知IDに対応し、送信対象の更新データの特定に用いられる。
また、図4(c)には、更新データの一例が示されている。更新データは、宛先、送信元、通知ID、更新元サーバID、更新対象ノードID、及びデータを含む。宛先及び送信元は、更新データの宛先及び送信元のNW機器2または管理サーバ1のIPアドレスをそれぞれ示す。
通知ID、更新元サーバID、及び更新対象ノードIDは、更新通知内の通知ID、更新元サーバID、及び更新対象ノードIDにそれぞれ対応する。データは、DB130内のデータDT1〜DT6、またはデータDT1〜DT6の更新部分(一部)である。
更新通知処理部102は、更新元以外の管理サーバ1の場合、管理対象のノードN1〜N6のNW機器2から更新通知が転送されたとき、更新要求部103にNW機器2への更新要求の送信を指示する。図1の構成Mにおいて、ノードN2,N6のNW機器2は、更新元の管理サーバ(A)1から受信した更新通知を更新元以外の管理サーバ(B)1に転送する。管理サーバ(B)1の更新通知処理部102は、更新通知を受信したとき、更新通知の送信元のNW機器2への更新要求の送信を指示する。
管理サーバ(B)1の更新通知処理部102は、ノードN2,N6のNW機器2の両方から更新通知を受信したとき、更新対象のノードN2のNW機器2への更新要求の送信を指示する。管理サーバ(A)1とノードN2のNW機器2の間の通信に障害が発生した場合(×印参照)、ノードN2のNW機器2は、管理サーバ(A)1から更新通知を受信できないため、管理サーバ(B)1の更新通知処理部102は、ノードN6のNW機器2のみから更新通知を受信する。この場合、更新通知処理部102は、更新対象以外のノードN6のNW機器2への更新要求の送信を指示する。
更新通知処理部102は、タイマ部104により、更新対象のノードN1〜N6のNW機器2からの更新通知の受信の有無を判定する。更新通知処理部102は、更新対象以外のノードN1〜N6のNW機器2から更新通知を受信したとき、タイマ部104にタイマの起動、つまり計時(カウント)の開始を指示する。なお、更新通知処理部102は、更新通知内の更新対象ノードIDにより更新対象のNW機器2を識別する。
タイマ部104は、タイマの起動を指示されると、計時を開始する。タイマ部104は、タイマ値が所定値になると、更新通知処理部102にタイムアウトを通知する。
更新通知処理部102は、タイムアウトの通知前に、更新対象のノードN1〜N6のNW機器2から更新通知を受信したとき、タイマ部104にタイマの停止を指示し、更新対象のノードN1〜N6のNW機器2を更新要求の送信先として決定する。また、更新通知処理部102は、タイムアウトの通知前に、更新対象のNW機器2から更新通知を受信できなかったとき、更新対象以外のノードN1〜N6のNW機器2、つまり更新通知元のNW機器2を更新要求の送信先として決定する。
更新要求部103は、更新通知処理部102から指示された送信先に、ネットワーク通信処理部15を介して更新要求を送信する。図1の構成Mにおいて、管理サーバ(B)1の更新要求部103は、管理サーバ(A)1とノードN2のNW機器2の間に通信の障害がない場合、更新対象のノードN2のNW機器2から転送された更新通知に基づき、該NW機器2に更新要求を送信する。また、更新要求部103は、更新対象以外のノードN1〜N6のNW機器2に更新要求を送信した場合、該NW機器2から更新データを取得した後、更新対象のノードN1〜N6のNW機器2に更新通知を送信するように更新通知部100に指示する。
一方、管理サーバ(A)1とノードN2のNW機器2の間の通信に障害が発生した場合(×印参照)、管理サーバ(B)1の更新要求部103は、更新対象以外のノードN6のNW機器2から転送された更新通知に基づき、ノードN6のNW機器2に更新要求を送信する。更新要求部103は、NW機器2からネットワーク通信処理部15を介して更新データを受信したとき、更新データに基づいてDB130及び同期状態情報132を更新する。
図5は、NW機器2の一例を示す構成図である。NW機器2は、CPU20、ROM21、RAM22、HDD23、及び通信処理部24を有する。なお、NW機器2は、HDD23に代えて、メモリなどの他の記憶手段を有してもよい。
CPU20は、互いに信号の入出力ができるように、ROM21、RAM22、HDD23、及びネットワーク通信処理部24と、データバス25を介して接続されている。ROM21は、CPU20を駆動するプログラムが格納されている。RAM22は、CPU20のワーキングメモリとして機能する。
HDD23には、データDT1〜DT6を格納するデータベース(DB)230、各管理サーバ1の管理対象のノードN1〜N6を示すサーバ情報(管理情報)231、及びDB230の同期状態を示す同期状態情報232が記憶されている。同期状態情報232は、図3(b)を参照して述べた通りである。また、通信処理部24は、例えば、NICであり、光ファイバなどの通信回線を介して管理サーバ1と通信する。
図6には、サーバ情報231の一例が示されている。サーバ情報231には、サーバID(A〜C)及びノードID(N1〜N6)が対応付けられて登録されている。
NW機器2は、例えば、自装置のデータDT1〜DT6を管理する管理サーバ1からノード情報131を取得することにより、サーバ情報231の生成及び更新を行う。図1の構成Mにおいて、ノードN2,N6のNW機器2は、それぞれ、管理サーバ(A),(B)1からノード情報131を取得することにより、サーバ情報231の生成及び更新を行う。
本例において、管理サーバ(A)1は、ノードN1,N2,N4,N6のNW機器2のデータDT1,DT2,DT4,DT6を管理するため、ノードID「A」は、ノードID「N1」,「N2」,「N4」,「N6」に対応付けられて登録されている。同様に、ノードID「B」は、ノードID「N2」,「N3」,「N5」,「N6」に対応付けられて登録されている。つまり、サーバ情報231は、ノードN2,N6のNW機器2の場合、2つの管理装置(A),(B)の各々の管理対象のNW機器2を示す。
NW機器2は、サーバ情報231を参照することにより、自ノードN1〜N6に対応する各管理サーバ1間において共通する管理対象の他ノードN1〜N6を、「グループノード」として認識する。本例では、管理サーバ(A),(B)1間において、ノードID「N2」及び「N6」が共通するため(符号G1,G2参照)、ノードN2,N6は、管理サーバ(A),(B)1に共通する管理対象のグループノードである。このため、ノードN2,N6の各NW機器2は、サーバ情報231に基づいて、互いにグループノードとして認識する。
CPU20は、ROM21からプログラムを読み込むと、機能として、更新通知処理部200、更新要求部201、及び更新要求処理部202が形成される。更新通知処理部200は、更新元の管理サーバ1から通信処理部24を介して更新通知を受信したとき、更新通知を、通信処理部24を介して更新元以外の管理サーバ1に転送する。
より具体的には、更新通知処理部200は、更新元の管理サーバ1から通信処理部24を介して更新通知を受信したとき、更新通知内の更新対象ノードIDに基づいて、自ノードN1〜N6が更新対象のノードであるか否かを判定する。つまり、更新通知処理部200は、自装置が更新対象であるか否かを判定する。更新通知処理部200は、自装置が更新対象である場合、更新通知を、通信処理部24を介して他方の管理サーバ1に転送し、更新要求部201に、更新元の管理サーバ1への更新要求の送信を指示する。
また、更新通知処理部200は、自装置が更新対象ではない場合、サーバ情報231に基づいて、更新通知内の更新対象ノードIDが、グループノードのノードIDであるか否かを判定する。つまり、更新通知処理部200は、更新対象のNW機器2がグループノードのNW機器2であるか否かを判定する。更新対象のNW機器2がグループノードのNW機器2である場合、更新通知処理部200は、更新通知を、通信処理部24を介して更新元以外の管理サーバ1に転送する。
図1の構成Mにおいて、ノードN6のNW機器2の更新通知処理部200は、サーバ情報231に基づいて、自装置が、更新対象のノードN2のNW機器2と同様に、管理サーバ(A),(B)1の共通の管理対象であるか否かを判定する。更新通知処理部200は、該判定の結果、自装置が、管理サーバ(A),(B)1の共通の管理対象である場合、管理サーバ(B)1に更新通知を転送する。
つまり、ノードN2,N6のNW機器2の更新通知処理部200は、更新対象のノード及び更新対象のノードのグループノードにそれぞれ該当するため、更新元の管理サーバ(A)1から受信した更新通知を更新元以外の管理サーバ(B)1に転送する。また、ノードN2のNW機器2の更新通知処理部200は、更新元の管理サーバ(A)1に対する更新要求を指示する。
また、更新通知処理部200は、更新通知内の送信元が更新元サーバIDに一致しない場合、つまり、更新元以外の管理サーバ1から更新通知を受信した場合、自ノードN1〜N6が更新対象のノードであれば、該管理サーバ1への更新要求の送信を指示する。図1の構成Mにおいて、更新対象以外のノードN6のNW機器2の更新通知処理部200は、更新元以外の管理サーバ(B)1から更新通知を受信した場合、管理サーバ(B)1への更新要求の送信を更新要求部201に指示する。
更新要求部201は、更新通知処理部200または更新要求処理部202からの指示に従い、通信処理部24を介して管理サーバ1に更新要求を送信する。更新要求部201は、管理サーバ1から通信処理部24を介し、更新要求に応じた更新データを受信したとき、更新データに基づいてDB230及び同期状態情報232を更新する。
更新要求処理部202は、更新対象のNW機器2の場合、更新元以外の管理サーバ1から更新要求を受信すると、更新元の管理サーバ1から受信した更新データを、更新元以外の管理サーバ1に送信する。また、更新要求処理部202は、更新対象以外のNW機器2の場合、更新元以外の管理サーバ1から更新要求を受信すると、更新要求を更新元の管理サーバ1に転送する。この場合、更新要求部201は、更新元の管理サーバ1から受信した更新データを、通信処理部24を介して更新元以外の管理サーバ1に転送する。
図1の構成Mにおいて、更新対象のノードN2のNW機器2の更新要求処理部202は、更新元以外の管理サーバ(B)1から更新要求を受信した場合、更新元の管理サーバ(A)1から受信した更新データを管理サーバ(B)1に送信する。また、更新対象以外のノードN6のNW機器2の更新要求処理部202は、更新元以外の管理サーバ(B)1から更新要求を受信した場合、更新元の管理サーバ(A)1に転送する。さたに、更新対象以外のノードN6のNW機器2の更新要求処理部202は、更新元の管理サーバ(A)1から更新データを受信した場合、更新元以外の管理サーバ(B)1に転送する。
このように、更新元の管理サーバ1は、管理対象の各ノードN1〜N6のNW機器2に更新通知を送信し、NW機器2は、更新通知に応じて更新要求を管理サーバ1に送信することにより、更新データを取得する。以下にデータ更新処理の例を挙げて説明する。
図7は、管理サーバ1及びNW機器2の間におけるデータ更新処理の一例を示すラダーチャートである。本例では、図1の構成Mを例示して説明する。
管理サーバ(A)1は、操作端末4の操作によりDB130内のデータDT2が更新されると、更新元サーバIDを「A」とし、更新対象ノードIDを「N2」とする更新通知を、ノード情報131に基づいてノードN1,N2、N4,N6の各NW機器2に送信する(ステップSt1)。つまり、管理サーバ(A)1は、管理対象のNW機器2の何れかに保持されたデータDT2を更新するとき、各NW機器2に更新通知を送信する。なお、ノードN1,N4のNW機器2は、更新対象のノードN2が自ノードN1,N4または自ノードのグループノードではないため、更新通知を廃棄する。
ノードN2のNW機器2は、更新通知内の更新対象ノードID「N2」に基づいて、自ノードN2が更新対象であると判定する(ステップSt2)。ノードN2のNW機器2は、更新通知内の更新時刻が、同期状態情報232の更新時刻より後である場合、同期状態情報232の同期状態を「済」から「未」に更新する(ステップSt3)。
次に、ノードN2のNW機器2は、更新通知と同一の通知IDを含む更新要求を、更新元の管理サーバ(A)1に送信する(ステップSt4)。次に、ノードN2のNW機器2は、管理サーバ(A)1から受信した更新通知を、更新元以外の管理サーバ(B)1に転送する(ステップSt5)。なお、更新通知の転送(ステップSt5)は、更新要求の送信(ステップSt4)の前に行われてもよい。
更新元の管理サーバ(A)1は、ノードN2のNW機器2から更新要求を受信すると、更新要求内の通知IDに応じた更新データを該NW機器2に送信する(ステップSt6)。ノードN2のNW機器2は、管理サーバ(A)1から更新データを受信すると、更新データに基づいてDB230内のデータDT2を更新する(ステップSt7)。次に、ノードN2のNW機器2は、同期状態情報232の同期状態を「未」から「済」に更新する(ステップSt8)。
このように、更新対象のノードN2のNW機器2は、更新通知を受けたとき、更新元の管理サーバ(A)1から更新データを取得することによりデータDT2を更新して、更新元以外の管理サーバ(B)1に更新通知を転送する。
一方、管理対象ではないノードN6のNW機器2は、更新通知内の更新対象ノードID「N2」に基づいて、自ノードN6が更新対象以外であると判定する(ステップSt9)。次に、ノードN6のNW機器2は、サーバ情報231に基づいて、自ノードN6が、更新対象のノードN2のグループノードであると判定する(ステップSt10)。つまり、ノードN6のNW機器2は、サーバ情報231に基づいて、管理サーバ(A),(B)1の共通の管理対象であると判定する。次に、ノードN6のNW機器2は、更新元の管理サーバ(A)1から受信した更新通知を、更新元以外の管理サーバ(B)1に転送する(ステップSt11)。
更新元以外の管理サーバ(B)1は、ノードN6のNW機器2から更新通知を受信すると、更新通知内の更新対象ノードID「N2」が、該更新通知の送信元に一致しないので、更新対象以外のNW機器2からの更新通知と判定し、タイマ部104のタイマを起動する(ステップSt12)。管理サーバ(B)1は、更新対象のノードN2のNW機器2より先に、更新対象以外のノードN6のNW機器2から更新通知を受信した場合、タイマによりノードN2のNW機器2からの更新通知の受信の有無を監視する。
管理サーバ(B)1は、タイムアウト前に、更新対象のノードN2のNW機器2から更新通知を受信すると、タイマを停止する(ステップSt13)。このとき、管理サーバ(B)1は、更新対象以外のノードN6のNW機器2から受信した更新通知を廃棄する。なお、管理サーバ(B)1は、更新対象以外のノードN6のNW機器2より先に、更新対象のノードN2のNW機器2から更新通知を受信した場合、タイマを起動しない。
次に、管理サーバ(B)1は、更新通知内の更新時刻が、同期状態情報132の更新時刻より後である場合、同期状態情報132の同期状態を「済」から「未」に更新する(ステップSt14)。次に、管理サーバ(B)1は、更新対象のノードN2のNW機器2に、更新通知と同一の通知IDを含む更新要求を送信する(ステップSt15)。ノードN2のNW機器2は、更新要求を受信すると、通知IDに応じた更新データを管理サーバ(B)1に送信する(ステップSt16)。
次に、管理サーバ(B)1は、ノードN2のNW機器2から更新データを受信すると、更新データに基づいてDB130内のデータDT2を更新する(ステップSt17)。次に、管理サーバ(B)1は、同期状態情報132の同期状態を「未」から「済」に更新する(ステップSt18)。このようにして、データ更新処理は行われる。
このように、更新元以外の管理サーバ(B)1は、更新通知が更新対象のNW機器2から転送された場合、更新対象のNW機器2から更新データを取得する。更新対象のNW機器2は、更新元の管理サーバ(A)1から更新データを取得済みであるため、管理サーバ(B)1は、更新元の管理サーバ(A)1と通信することなく、容易に更新データを取得できる。
しかし、図1の構成Mにおいて、管理サーバ(A)1とノードN2のNW機器2の間の通信に障害が発生した場合(×印参照)、ノードN2のNW機器2は、管理サーバ(A)1から更新通知を受信できない。このため、更新元以外の管理サーバ(B)1は、更新対象以外のノードN6のNW機器2から転送された更新通知に基づき、更新元の管理サーバ(A)1からノードN6のNW機器2を介して更新データを取得し、ノードN2のNW機器2に転送する。
図8は、上記の場合の管理サーバ及びネットワーク機器の間におけるデータ更新処理の例を示すラダーチャートである。本例では、図1の構成Mを例示して説明する。
管理サーバ(A)1は、操作端末4の操作によりDB130内のデータDT2が更新されると、更新元サーバIDを「A」とし、更新対象ノードIDを「N2」とする更新通知を、ノード情報131に基づいてノードN1,N2、N4,N6の各NW機器2に送信する(ステップSt21)。しかし、管理サーバ(A)1とノードN2のNW機器2の間の通信に障害が発生しているため、ノードN2のNW機器2は、更新通知を受信できない(×印参照)。
更新対象以外のノードN6のNW機器2は、更新通知内の更新対象ノードID「N2」に基づいて、自ノードN6が更新対象以外であると判定する(ステップSt22)。次に、ノードN6のNW機器2は、サーバ情報231に基づいて、更新対象のノードN2が自ノードN6のグループノードであると判定する(ステップSt23)。次に、ノードN6のNW機器2は、管理サーバ(A)1から受信した更新通知を、更新元以外の管理サーバ(B)1に転送する(ステップSt24)。
このように、更新対象以外のノードN6のNW機器2は、更新元の管理サーバ(A)1から受信した更新通知を、更新元以外の管理サーバ(B)1に転送する。このため、管理サーバ(B)1は、更新対象のノードN2のNW機器2から更新通知を受信できない場合でも、データDT2の更新が行われることを認識できる。
管理サーバ(B)1は、ノードN6のNW機器2から更新通知を受信すると、タイマ部104のタイマを起動する(ステップSt25)。管理サーバ(B)1は、タイマにより、更新対象のノードN2のNW機器2からの更新通知の受信の有無を判定する。本例において、ノードN2のNW機器2は、障害のため、管理サーバ(A)1から更新通知を受信できない。このため、管理サーバ(B)1は、ノードN2のNW機器2から更新通知が転送されないので、タイマがタイムアウトする(ステップSt26)。これにより、管理サーバ(B)1は、更新対象のノードN2のNW機器2が、データ更新できない状態であることを認識し、以下の処理を行う。
管理サーバ(B)1は、更新通知内の更新時刻が、同期状態情報132の更新時刻より新しい場合、同期状態情報132の同期状態を「済」から「未」に更新する(ステップSt27)。次に、管理サーバ(B)1は、更新対象以外のノードN6のNW機器2を介して、更新元の管理サーバ(A)1に更新要求を送信する(ステップSt28)。このとき、ノードN6のNW機器2は、管理サーバ(B)1から受信した更新要求を管理サーバ(A)1に転送する。なお、更新要求には、更新通知と同じ通知IDが含まれる。
更新元の管理サーバ(A)1は、更新要求を受信すると、通知IDに応じた更新データを、ノードN6のNW機器2を介して更新元以外の管理サーバ(B)1に送信する(ステップSt29)。このとき、ノードN6のNW機器2は、管理サーバ(A)1から受信した更新データを管理サーバ(B)1に転送する。
管理サーバ(B)1は、更新元の管理サーバ(A)1から更新データを受信すると、更新データに基づいてDB130内のデータDT2を更新する(ステップSt30)。次に、管理サーバ(B)1は、同期状態情報132の同期状態を「未」から「済」に更新する(ステップSt31)。
このように、更新元以外の管理サーバ(B)1は、更新データを取得することにより、DB130に格納された更新対象のNW機器2のデータDT2を、更新元の管理サーバ(A)1のDB130に一致させるように更新する。したがって、管理サーバ(A),(B)1の間において、DB130が整合(同期)される。
次に、管理サーバ(B)1は、更新元サーバIDを「A」とし、更新対象ノードIDを「N2」とする更新通知を、更新対象のノードN2のNW機器2に送信する(ステップSt32)。つまり、管理サーバ(B)1は、更新対象以外のノードN6のNW機器2から受信した更新通知を、更新対象のノードN2のNW機器2に転送する。
ノードN2のNW機器2は、更新通知内の更新対象ノードID「N2」に基づいて、自ノードN2が更新対象であると判定する(ステップSt33)。次に、ノードN2のNW機器2は、更新通知内の更新時刻が、同期状態情報232の更新時刻より後である場合、同期状態情報232の同期状態を「済」から「未」に更新する(ステップSt34)。
次に、ノードN2のNW機器2は、更新通知と同一の通知IDを含む更新要求を、更新元以外の管理サーバ(B)1に送信する(ステップSt35)。なお、ノードN2のNW機器2は、更新通知内の更新元サーバIDが、更新通知の送信元に一致しないため、管理サーバ(A)1へ更新通知を転送しない。
管理サーバ(B)1は、更新要求を受信すると、通知IDに応じた更新データをノードN2のNW機器2に送信する(ステップSt36)。つまり、管理サーバ(B)1は、更新対象以外のノードN6のNW機器2を介して更新元の管理サーバ(A)1から取得した更新データを、更新対象のノードN2のNW機器に転送する。
ノードN2のNW機器2は、管理サーバ(B)1から更新データを受信すると、更新データに基づいてDB230内のデータDT2を更新する(ステップSt37)。次に、ノードN2のNW機器2は、同期状態情報232の同期状態を「未」から「済」に更新する(ステップSt38)。このようにして、データ更新処理は行われる。
上述したように、更新元以外の管理サーバ(B)1は、更新通知が、更新対象のノードN2のNW機器2から転送されず、更新対象以外のノードN6のNW機器2から転送された場合、更新対象以外のノードN6のNW機器2を介して更新元の管理サーバ(A)1から更新データを取得する。更新元以外の管理サーバ(B)1は、取得した更新データを、更新対象のノードN2のNW機器2に転送する。
したがって、更新対象のノードN2のNW機器2は、更新元の管理サーバ(A)1との通信に障害が発生した場合でも、更新対象以外のノードN6のNW機器2が転送した更新通知に基づいて、更新元以外の管理サーバ(B)1から更新データが転送されるので、データDT2を更新できる。よって、本実施例によると、データ更新の確実性が高められる。
次に、管理サーバ1及びNW機器2の各々における処理を説明する。
図9は、管理サーバ1の更新通知処理の一例を示すフローチャートである。管理サーバ1の更新通知部100は、操作端末4によりDB130が更新されたか否かを判定する(ステップSt51)。管理サーバ(A)1は、DB130が更新されていない場合(ステップSt51のNo)、処理を終了する。
更新通知部100は、DB130が更新された場合(ステップSt51のYes)、更新通知を生成し、ノード情報131に基づいて、管理対象のノードN1〜N6の各NW機器2に送信する(ステップSt52)。次に、更新要求処理部101は、NW機器2から更新要求を受信したか否かを判定する(ステップSt53)。
更新要求処理部101は、NW機器2から更新要求を受信していない場合(ステップSt53のNo)、再びステップSt53の判定処理を行う。更新要求処理部101は、NW機器2から更新要求を受信した場合(ステップSt53のYes)、更新要求内の通知IDに応じた更新データを要求元のNW機器2に送信する(ステップSt54)。このようにして、更新通知処理は行われる。
上述したように、管理サーバ(A)1は、更新要求を受けると、更新要求の送信元が、更新対象のノードN2のNW機器2及び更新対象以外のノードN6のNW機器2の何れであっても、更新データを送信する。このため、更新元以外の管理サーバ(B)1は、更新対象以外のノードN6のNW機器2を介して管理サーバ(A)1から更新データを取得できる。
図10は、管理サーバ1のデータ更新処理の一例を示すフローチャートである。管理サーバ1の更新通知処理部102は、更新通知を受信したか否かを判定する(ステップSt61)。更新通知処理部102は、更新通知を受信していない場合(ステップSt61のNo)、処理を終了する。
更新通知処理部102は、更新通知を受信した場合(ステップSt61のYes)、更新通知内の更新対象ノードIDに基づいて、更新通知の送信元が更新対象のノードN1〜N6のNW機器2であるか否かを判定する(ステップSt62)。すなわち、更新通知処理部102は、更新通知内の更新対象ノードIDが更新通知の送信元に一致するか否かを判定する。
更新通知の送信元が更新対象のノードN1〜N6のNW機器2である場合(ステップSt62のYes)、更新通知処理部102は、更新通知内の更新時刻に基づいて、更新データが最新であるか否かを判定する(ステップSt63)。このとき、更新通知処理部102は、更新通知内の更新時刻及び同期状態情報132の更新時刻の比較結果に基づいて、更新データが最新であるか否かを判定する。
更新通知処理部102は、更新データが最新ではない場合(ステップSt63のNo)、処理を終了する。更新通知処理部102は、更新データが最新である場合(ステップSt63のYes)、同期状態情報132の同期状態を「済」から「未」に更新する(ステップSt64)。
次に、更新要求部103は、更新要求を更新対象のノードN1〜N6のNW機器2に送信する(ステップSt65)。次に、更新要求部103は、更新対象のノードN1〜N6のNW機器2から更新データを受信したか否かを判定する(ステップSt66)。更新要求部103は、更新データを受信していない場合(ステップSt66のNo)、再びステップSt66の判定処理を行う。
更新要求部103は、更新データを受信した場合(ステップSt66のYes)、更新データに基づいてDB130を更新する(ステップSt67)。このとき、更新要求部103は、DB130に格納された更新対象のNW機器2のデータDT1〜DT6を、他方の管理サーバ1のDB130に一致させるように更新する。次に、更新要求部103は、同期状態情報132の同期状態を「未」から「済」に更新して(ステップSt68)、処理を終了する。
このように、更新元以外の管理サーバ(B)1は、更新通知が更新対象のNW機器2から転送された場合、更新対象のNW機器2から更新データを取得する。このため、管理サーバ(B)1は、更新元の管理サーバ(A)1と通信することなく、容易に更新データを取得できる。
一方、更新通知の送信元が更新対象のノードN1〜N6のNW機器2ではない場合(ステップSt62のNo)、更新通知処理部102は、更新通知の送信元が更新対象のノードN1〜N6のグループノードであるか否かを判定する(ステップSt71)。更新通知処理部102は、更新通知の送信元が更新対象のノードN1〜N6のグループノードではない場合(ステップSt71のNo)、処理を終了する。
更新通知処理部102は、更新通知の送信元が更新対象のノードN1〜N6のグループノードである場合(ステップSt71のYes)、タイマ部104のタイマを起動する(ステップSt72)。次に、更新通知処理部102は、更新対象のノードN1〜N6のNW機器2から更新通知を受信したか否かを判定する(ステップSt73)。
更新通知処理部102は、更新通知を受信した場合(ステップSt73のYes)、タイマを停止し(ステップSt84)、上記のステップSt63以降の処理を行う。更新通知処理部102は、更新通知を受信していない場合(ステップSt73のNo)、タイマがタイムアウトしたか否か、つまりタイマ値が所定値に達したか否かを判定する(ステップSt74)。タイマがタイムアウトしていない場合(ステップSt74のNo)、更新通知処理部102は、再びステップSt73の処理を行う。
更新通知処理部102は、タイマがタイムアウトした場合(ステップSt74のYes)、更新通知内の更新時刻に基づいて、更新データが最新であるか否かを判定する(ステップSt75)。更新通知処理部102は、更新データが最新ではない場合(ステップSt75のNo)、処理を終了する。更新通知処理部102は、更新データが最新である場合(ステップSt75のYes)、同期状態情報132の同期状態を「済」から「未」に更新する(ステップSt76)。
次に、更新要求部103は、更新通知と通知IDが同一である更新要求を、更新通知の送信元のNW機器2に送信する(ステップSt77)。すなわち、更新要求部103は、更新対象以外のノードN1〜N6のNW機器2に更新要求を送信する。更新要求は、送信先のNW機器2により更新元の管理サーバ1に転送される。
次に、更新要求部103は、更新対象以外のノードN1〜N6のNW機器2から更新データを受信したか否かを判定する(ステップSt78)。更新要求部103は、更新データを受信していない場合(ステップSt78のNo)、再びステップSt78の判定処理を行う。
更新要求部103は、更新データを受信した場合(ステップSt78のYes)、更新データに基づいてDB130を更新する(ステップSt79)。このとき、更新要求部103は、DB130に格納された更新対象のNW機器2のデータDT1〜DT6を、他方の管理サーバ1のDB130に一致させるように更新する。次に、更新要求部103は、同期状態情報132の同期状態を「未」から「済」に更新する(ステップSt80)。
このように、更新元以外の管理サーバ(B)1は、更新通知が、更新対象のノードN2のNW機器2から転送されず、更新対象以外のノードN6のNW機器2から転送された場合、更新対象以外のノードN6のNW機器2から更新データを取得する。このため、管理サーバ(B)1は、更新対象のNW機器2が通信障害により更新データを取得できない場合でも、更新元の管理サーバ(A)1と通信することなく、更新データを取得できる。
次に、更新通知部100は、更新対象以外のノードN1〜N6のNW機器2から転送された更新通知を、更新対象のノードN1〜N6のNW機器2に送信する(ステップSt81)。次に、更新要求処理部101は、更新対象のノードN1〜N6のNW機器2から更新要求を受信したか否かを判定する(ステップSt82)。更新要求処理部101は、更新要求を受信していない場合(ステップSt82のNo)、再びステップSt82の判定処理を行う。
更新要求処理部101は、更新要求を受信した場合(ステップSt82のYes)、更新データを要求元のNW機器2に送信する(ステップSt83)。すなわち、更新要求処理部101は、更新対象以外のノードN1〜N6のNW機器2から取得した更新データを、更新対象のノードN1〜N6のNW機器2に転送する。このようにして、データ更新処理は行われる。
このように、更新元以外の管理サーバ(B)1は、更新対象以外のノードN6のNW機器2から更新データを取得して、更新対象のノードN2のNW機器2に転送する。このため、更新対象のノードN2のNW機器2は、通信障害により更新元の管理サーバ(A)1から更新データを取得できない場合でも、更新元以外の管理サーバ(B)1から更新データを取得することにより、DB230内のデータDT2を更新できる。
図11は、NW機器2のデータ更新処理の一例を示すフローチャートである。NW機器2の更新通知処理部200は、更新通知を受信したか否かを判定する(ステップSt91)。更新通知処理部200は、更新通知を受信していない場合(ステップSt91のNo)、処理を終了する。
更新通知処理部200は、更新通知を受信した場合(ステップSt91のYes)、更新通知内の更新対象ノードIDに基づいて、更新対象のノードN1〜N6が自ノードであるか否かを判定する(ステップSt92)。更新対象のノードN1〜N6が自ノードである場合(ステップSt92のYes)、更新通知処理部200は、更新通知内の更新時刻に基づいて、更新データが最新であるか否かを判定する(ステップSt93)。
更新通知処理部200は、更新データが最新ではない場合(ステップSt93のNo)、処理を終了する。更新通知処理部200は、更新データが最新である場合(ステップSt93のYes)、同期状態情報232の同期状態を「済」から「未」に更新する(ステップSt94)。
次に、更新通知処理部200は、更新通知の送信元が、更新元の管理サーバ1であるか否かを判定する(ステップSt95)。すなわち、更新通知処理部200は、更新通知の送信元が、更新通知内の更新元サーバIDに一致するか否かを判定する。
更新通知の送信元が更新元の管理サーバ1である場合(ステップSt95のYes)、更新要求部201は、更新通知と同一の通知IDを含む更新要求を、更新元の管理サーバ1に送信する(ステップSt96)。次に、更新要求部201は、更新通知を更新元以外の管理サーバ1に転送する(ステップSt97)。なお、更新通知の転送(ステップSt97)は、更新要求の送信(ステップSt96)より先に行われてもよい。
一方、更新通知の送信元が更新元以外の管理サーバ1である場合(ステップSt95のNo)、更新要求部201は、更新通知と同一の通知IDを含む更新要求を、更新元以外の管理サーバ1に送信する(ステップSt109)。
次に、更新要求部201は、管理サーバ1から更新データを受信したか否かを判定する(ステップSt98)。更新要求部201は、更新データを受信していない場合(ステップSt98のNo)、再びステップSt98の判定処理を行う。
更新要求部201は、更新データを受信した場合(ステップSt98のYes)、更新データに基づいてDB230を更新する(ステップSt99)。次に、更新要求部201は、同期状態情報232の同期状態を「未」から「済」に更新する(ステップSt100)。
次に、更新要求部201は、更新元以外の管理サーバ1から更新要求を受信したか否かを判定する(ステップSt101)。更新要求部201は、更新要求を受信していない場合(ステップSt101のNo)、処理を終了する。更新要求部201は、更新要求を受信した場合(ステップSt101のYes)、更新データを要求元の管理サーバ1に送信し(ステップSt102)、処理を終了する。
一方、更新対象のノードN1〜N6が自ノードではない場合(ステップSt92のNo)、更新通知処理部200は、サーバ情報231に基づいて、更新対象のノードN1〜N6が自ノードのグループノードであるか否かを判定する(ステップSt103)。更新通知処理部200は、更新対象のノードN1〜N6が自ノードのグループノードではない場合(ステップSt103のNo)、処理を終了する。
更新通知処理部200は、更新対象のノードN1〜N6が自ノードのグループノードである場合(ステップSt103のYes)、更新元の管理サーバ1から受信した更新通知を、更新元以外の管理サーバ1に転送する(ステップSt104)。次に、更新要求処理部202は、更新元以外の管理サーバ1から更新要求を受信したか否かを判定する(ステップSt105)。更新要求処理部202は、更新要求を受信していない場合(ステップSt105のNo)、処理を終了する。
更新要求処理部202は、更新要求を受信した場合(ステップSt105のYes)、更新元以外の管理サーバ1から受信した更新要求を、更新元の管理サーバ1に転送する(ステップSt106)。次に、更新要求処理部202は、更新元の管理サーバ1から更新データを受信したか否かを判定する(ステップSt107)。更新要求処理部202は、更新データを受信していない場合(ステップSt107のNo)、再びステップSt107の判定処理を行う。
更新要求処理部202は、更新データを受信した場合(ステップSt107のYes)、更新データを更新元以外の管理サーバ1に転送する(ステップSt108)。このようにして、データ更新処理は行われる。
上述したように、NW機器2は、更新元の管理サーバ(A)1から受信した更新通知を、更新元以外の管理サーバ(B)1に転送する。このため、更新元以外の管理サーバ(B)1は、更新元の管理サーバ(A)1と通信することなく、データ更新が行われることを認識できる。
また、NW機器2は、更新対象のノードN1〜N6のグループノードに該当する場合、更新元以外の管理サーバ(B)1から受信した更新要求を更新元の管理サーバ(A)1に転送し、更新元の管理サーバ(A)1から受信した更新データを更新元以外の管理サーバ(B)1に転送する。このため、更新元以外の管理サーバ(B)1は、更新元の管理サーバ(A)1と通信することなく、更新データを取得できる。
これまで述べたように、実施例に係るデータ管理システムは、複数の端末装置(NW機器)2と、複数の端末装置2の各々に保持されたデータDT1〜DT6を管理する2つの管理装置(管理サーバ)1とを有する。2つの管理装置1の一方(更新元の管理サーバ(A))は、複数の端末装置2のうち、2つの管理装置1の共通の管理対象の端末装置の何れかに保持されたデータDT2を更新するとき、管理装置1の一方の管理対象の端末装置2の各々(N1,N2、N4,N6のNW機器2)に更新通知を送信する。
複数の端末装置2のうち、該更新対象の端末装置(ノードN2のNW機器2)は、更新通知を受けたとき、2つの管理装置の一方から更新データを取得することによりデータDT2を更新して、2つの管理装置1の他方(管理サーバ(B))に更新通知を転送する。複数の端末装置2のうち、該更新対象以外の端末装置(ノードN6のNW機器)2は、更新通知を受けたとき、2つの管理装置1の各々の管理対象の端末装置2を示す管理情報(サーバ情報)232に基づいて、更新対象以外の端末装置2が、2つの管理装置1の共通の管理対象であるか否かを判定する。更新対象以外の端末装置2は、該判定の結果、更新対象以外の端末装置が、2つの管理装置1の共通の管理対象である場合、2つの管理装置1の他方に更新通知を転送する。
2つの管理装置1の他方は、更新通知が、更新対象の端末装置2から転送されず、更新対象以外の端末装置2から転送された場合、更新対象以外の端末装置2を介して2つの管理装置1の一方から更新データを取得し、更新対象の端末装置2に転送する。
上記の構成によると、複数の端末装置2のうち、2つの管理装置1の共通の管理対象の端末装置2の各々は、管理装置1の一方から受信した更新通知を、管理装置1の他方に転送する。このため、管理装置1の他方は、管理装置1の他方の管理対象の端末装置2のデータDT1〜DT6の更新が行われることを認識できる。
また、管理装置1の他方は、更新通知が、更新対象の端末装置2から転送されず、更新対象以外の端末装置2から転送された場合、更新対象以外の端末装置2を介して2つの管理装置1の一方から更新データを取得し、更新対象の端末装置2に転送する。したがって、更新対象の端末装置2は、管理装置1の一方との通信の障害のために更新データを取得できない場合でも、更新対象以外の端末装置2が転送した更新通知に基づいて、2つの管理装置1の他方から更新データが転送されるので、データDT1〜DT6を更新できる。
よって、実施例に係るデータ管理システムによると、データ更新の確実性が高められる。
また、実施例に係るデータ管理方法は、複数の端末装置(NW機器)2の各々に保持されたデータDT1〜DT6を2つの管理装置(管理サーバ)1によりそれぞれ管理する方法であり、以下の工程を含む。
工程(1):2つの管理装置1の一方(更新元の管理サーバ(A))は、複数の端末装置2の何れかに保持されたデータDT1〜DT6を更新するとき、複数の端末装置2の各々に更新通知を送信する。
工程(2):複数の端末装置2のうち、該更新対象の端末装置(ノードN2のNW機器2)は、更新通知を受けたとき、2つの管理装置の一方から更新データを取得することによりデータDT2を更新して、2つの管理装置1の他方(管理サーバ(B))に更新通知を転送する。
工程(3):複数の端末装置2のうち、該更新対象以外の端末装置(ノードN6のNW機器)は、更新通知を受けたとき、2つの管理装置1の他方に更新通知を転送する。
工程(4):2つの管理装置1の他方は、更新通知が、更新対象の端末装置2から転送されず、更新対象以外の端末装置2から転送された場合、更新対象以外の端末装置2を介して2つの管理装置1の一方から更新データを取得し、更新対象の端末装置2に転送する。
実施例に係るデータ管理方法は、実施例に係るデータ管理システムと同様の構成を含むので、上述した内容と同様の作用効果を奏する。
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
なお、以上の説明に関して更に以下の付記を開示する。
(付記1) 複数の端末装置と、
前記複数の端末装置の各々に保持されたデータを管理する2つの管理装置とを有し、
前記2つの管理装置の一方は、前記複数の端末装置のうち、前記2つの管理装置の共通の管理対象の端末装置の何れかに保持されたデータを更新するとき、前記複数の端末装置の各々に更新通知を送信し、
前記複数の端末装置のうち、該更新対象の端末装置は、前記更新通知を受けたとき、前記2つの管理装置の一方から更新データを取得することによりデータを更新して、前記2つの管理装置の他方に前記更新通知を転送し、
前記複数の端末装置のうち、該更新対象以外の端末装置は、前記更新通知を受けたとき、前記複数の端末装置のうち、前記2つの管理装置の各々の管理対象の端末装置を示す管理情報に基づいて、前記更新対象以外の端末装置が、前記2つの管理装置の共通の管理対象であるか否かを判定し、該判定の結果、前記更新対象以外の端末装置が、前記2つの管理装置の共通の管理対象である場合、前記2つの管理装置の他方に前記更新通知を転送し、
前記2つの管理装置の他方は、前記更新通知が、前記更新対象の端末装置から転送されず、前記更新対象以外の端末装置から転送された場合、前記更新対象以外の端末装置を介して前記2つの管理装置の一方から前記更新データを取得し、前記更新対象の端末装置に転送することを特徴とするデータ管理システム。
(付記2) 前記2つの管理装置の他方は、前記更新通知が、前記更新対象の端末装置から転送された場合、前記更新対象の端末装置から前記更新データを取得することを特徴とする付記1に記載のデータ管理システム。
(付記3) 前記2つの管理装置は、それぞれ、前記複数の端末装置の各々に保持されたデータが格納されたデータベースを有し、
前記2つの管理装置の他方は、前記更新データを取得することにより、前記データベースに格納された前記更新対象の端末装置のデータを、前記2つの管理装置の一方の前記データベースに一致させるように更新することを特徴とする付記1または2に記載のデータ管理システム。
(付記4) 複数の端末装置の各々に保持されたデータを2つの管理装置により管理するデータ管理方法において、
前記2つの管理装置の一方は、前記複数の端末装置のうち、前記2つの管理装置の共通の管理対象の端末装置の何れかに保持されたデータを更新するとき、前記2つの管理装置の一方の管理対象の端末装置の各々に更新通知を送信し、
前記複数の端末装置のうち、該更新対象の端末装置は、前記更新通知を受けたとき、前記2つの管理装置の一方から更新データを取得することによりデータを更新して、前記2つの管理装置の他方に前記更新通知を転送し、
前記複数の端末装置のうち、該更新対象以外の端末装置は、前記更新通知を受けたとき、前記複数の端末装置のうち、前記2つの管理装置の各々の管理対象の端末装置を示す管理情報に基づいて、前記更新対象以外の端末装置が、前記2つの管理装置の共通の管理対象であるか否かを判定し、該判定の結果、前記更新対象以外の端末装置が、前記2つの管理装置の共通の管理対象である場合、前記2つの管理装置の他方に前記更新通知を転送し、
前記2つの管理装置の他方は、前記更新通知が、前記更新対象の端末装置から転送されず、前記更新対象以外の端末装置から転送された場合、前記更新対象以外の端末装置を介して前記2つの管理装置の一方から前記更新データを取得し、前記更新対象の端末装置に転送することを特徴とするデータ管理方法。
(付記5) 前記2つの管理装置の他方は、前記更新通知が、前記更新対象の端末装置から転送された場合、前記更新対象の端末装置から前記更新データを取得することを特徴とする付記4に記載のデータ管理方法。
(付記6) 前記2つの管理装置は、それぞれ、前記複数の端末装置の各々に保持されたデータが格納されたデータベースを有し、
前記2つの管理装置の他方は、前記更新データを取得することにより、前記データベースに格納された前記更新対象の端末装置のデータを、前記2つの管理装置の一方の前記データベースに一致させるように更新することを特徴とする付記4または5に記載のデータ管理方法。