(57)【要約】【課題】  デバイス管理サーバがデバイスから大量のデータを参照する場合、ネットワークに対して非常に大きな負荷をかけてしまう、または、処理実行に長時間かかってしまう。【解決手段】  デバイス１０２，１０３とデバイス管理サーバ１０１はそれぞれ独立にデータベースを持つ。データベースの構成はｎｂｙｔｅのブロックに分割して管理する。全データＮ（ｂｙｔｅ）＝ｎ（ｂｙｔｅ）×全ブロック数ｂ（個）となる。電源ＯＮ時にデバイス管理サーバはデバイスから全データを吸い上げ、デバイス管理サーバのデータベースへコピーする。デバイス管理者によりデータの登録・削除を要求されたデバイス管理サーバは、デバイス管理サーバが持つデータベースと照合し、仮結果を決定する。【選択図】        図１
2005259002.tif 000002
【特許請求の範囲】
【請求項１】
デバイスとデバイス管理サーバがネットワークにより接続されており、前記デバイスと前記サーバはデータベースをそれぞれ独立に持っているシステムにおいて、ユーザからデータ登録・削除を要求された前記サーバは、前記要求に従って前記デバイスに登録・削除要求を行い、前記サーバ内のデータベースに登録・削除を行い、前記デバイスの持つデータベースと前記サーバが持つデータベースとが一致していることを特徴とするネットワークデバイス管理システム。
【請求項２】
請求項１に記載のネットワークデバイス管理システムにおいて、
ユーザやデバイス管理者からの要求等によりデータが必要となった前記サーバは、前記デバイスとの通信を行わず、前記サーバが持つデータベースを使用することを特徴とするネットワークデバイス管理システム。
【請求項３】
請求項１に記載のネットワークデバイス管理システムにおいて、
前記デバイスが持つデータベースと、前記サーバが持つデータベースとにずれが発生した場合、前記ずれを検出することを特徴とするネットワークデバイス管理システム。
【請求項４】
請求項３に記載のネットワークデバイス管理システムにおいて、
前記ずれを検出した場合に、ネットワークによる通信を使用して、前記デバイスが持つデータベースに一致させるように前記サーバのデータベースを更新することを特徴とするネットワークデバイス管理システム。
【請求項５】
請求項４に記載のネットワークデバイス管理システムにおいて、
大量のデータベースをブロック毎に分割して管理することにより、前記ネットワークによる通信を使用したデータベースの更新量を少なくし、使用するネットワークのトラヒック量を抑え、更新を短時間で行うことを可能とすることを特徴とするネットワークデバイス管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つ以上のデバイスを、ネットワークを介して管理するネットワークデバイス管理システムに関する。
【背景技術】
【０００２】
デバイスをリモート管理するためには、デバイス管理サーバはネットワークを介してデバイスの持つデータベース（例えば、Ｓｉｍｅｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  ＰｒｏｔｏｃｏｌにおけるＭａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）にアクセスしデータを取得することによって実現していた（例えば、特許文献１）。
【特許文献１】特開２０００−１３２４７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし前記従来例には、
（１）大量のデータをデバイス管理サーバがデバイスから参照する場合、ネットワークに対して非常に大きな負荷をかけてしまう。
（２）大量のデータをデバイス管理サーバがデバイスから参照する場合、ネットワークを介してデータを取得するため、処理実行に長時間かかってしまう、という問題があった。
【０００４】
また、前記問題を解消するためにデバイスとデバイス管理サーバにそれぞれ独立にデータベースを持つようにすると、
（３）ネットワーク通信エラー等により、デバイスの持つデータベースとデバイス管理サーバが持つデータベースに食い違いが生じる。
（４）食い違いを解消するために、デバイス管理サーバはネットワークを使用して大量のデータをデバイスから取り出さなくてはならず、その処理時間は大きなものとなる、という問題が発生する。
【０００５】
本発明は、このような状況のもとでなされたもので、ネットワークの負荷を低減し、かつユーザからの要求処理時間を短縮することを課題とするものである。
【課題を解決するための手段】
【０００６】
（１）デバイスとデバイス管理サーバはそれぞれ独立にデータベースを持つ。
（２）データベースの構成はｎｂｙｔｅのブロックに分割して管理する。全データＮ（ｂｙｔｅ）＝ｎ（ｂｙｔｅ）×全ブロック数ｂ（個）となる。
（３）電源ＯＮ時にデバイス管理サーバはデバイスから全データを吸い上げ、デバイス管理サーバのデータベースへコピーする。
（４）デバイス管理者によりデータの登録・削除を要求されたデバイス管理サーバは、デバイス管理サーバが持つデータベースと照合し、仮結果を決定する。登録要求時にデータが既に存在していれば「登録済みエラー（仮）」、存在していなければ「登録完了（仮）」とする。登録削除時にデータが存在していれば「削除完了（仮）」、存在していなければ「未登録エラー（仮）」とする。
（５）デバイス管理サーバは、デバイスに対してデータ登録・削除の要求をネットワークを介して行う。
（６）データ登録・削除の要求を受信したデバイスは、デバイスが保持するデータベースと照合し、次の処理を行う。登録要求時にデータが既に存在していれば「登録済みエラー」、存在していなければデータをデータベースへ登録して「登録完了」とする。登録削除時にデータが存在していればデータをデータベースから削除して「削除完了」、存在していなければ「未登録エラー」とする。その後、その結果をデバイス管理サーバへ返信（応答）する。
（７）デバイスから応答を受信したサーバは、仮結果とデバイスからの応答結果とが一致している場合、データベースは一致と判定する。仮結果とデバイスからの応答結果とが不一致の場合、データベースは不一致と判定する。
（８）（７）で一致を検出すれば、デバイス管理サーバのデータベースをデバイス管理者の要求通りに更新する。
（９）（７）で不一致を検出すれば、該当するデータブロックをデバイスから吸い上げ、デバイス管理サーバのデータブロックへコピーする。デバイス管理者へは、デバイスが持っていたデータベースに基づいて結果を決定し、通知する。
（１０）デバイス管理サーバにおいて、データベースに登録されたデータを使用する処理を行う場合、デバイス管理サーバはネットワークを介してデバイスからデータを取得すること無く、デバイス管理サーバが持つデータベースに基づいて処理を行う。
【０００７】
前記手段により次の作用が選られる。
（１）データベースをデバイスとデバイス管理サーバにそれぞれ独立に持つことによって、ネットワークを使用せずとも、データの変更以外の要求はすべてデバイス管理サーバのデータベースで行うことにより、ネットワークの負荷を低減し、処理時間を短縮することが出来る。
（２）データベースの食い違いを検出した場合、データベースの更新をブロック単位で行うため、ネットワークの負荷を低減し、更新処理の短縮が図れる。
【発明の効果】
【０００８】
本発明によれば、データベースをデバイスとサーバにそれぞれ独立に持つことにより、ユーザからのデータベースに対する要求において、データの変更以外の要求は、ネットワークを使用してデバイスのデータベースにアクセスする必要が無く、サーバのデータベースで行うことが出来るため、ネットワークの負荷を低減し、かつユーザからの要求処理時間を短縮することが可能となる。また、デバイスのデータベースとサーバのデータベースの食い違いを検出した場合、データベースの更新をブロック単位で行うため、ネットワークの負荷を低減し、かつ更新処理の短縮が図ることが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下本発明を実施するための最良の形態を、実施例により詳しく説明する。
【実施例１】
【００１０】
本発明は以下に詳述するように、ネットワークを介してデバイスを管理するためのシステムである。本実施例ではユーザ情報をデータベースのコンテンツとして説明するが、本発明はユーザ情報に限って適用されるものではなく、デバイスの機能、特徴、課金情報、使用状況など、ユーザ情報以外のデータに対しても適用されるものである。
【００１１】
図１は、本実施例のネットワークデバイス管理システムが動作可能な構成を示す図である。
【００１２】
図１において、１０１はサーバコンピュータ、１０２、１０３はデバイスであり、それぞれ１０２はコピー機、１０３はプリンタである。サーバコンピュータ１０１、コピー機１０２、プリンタ１０３はＬＡＮ１００に接続されている。
【００１３】
サーバコンピュータ１０１はコピー機１０２、プリンタ１０３をリモート管理しており、コピー機１０２に対してユーザ登録・削除要求を行う場合は要求を送信し、前記コピー機１０２から応答を待つ。プリンタ１０３に対してユーザ登録・削除要求を行う場合は前記プリンタ１０３に対して要求を送信し、前記プリンタ１０３から応答を待つ。コピー機１０２、プリンタ１０３に対してユーザ確認要求を行う場合も同様に、コピー機１０２、プリンタ１０３にそれぞれ要求を送信し、その応答を待つ。その後、デバイスからの応答を受信したサーバコンピュータ１０１は、応答にしたがって受信処理を行い、ユーザ登録・削除・確認処理を完了させる。
【００１４】
コピー機１０２、プリンタ１０３はそれぞれサーバコンピュータ１０１よりユーザ登録・削除要求を受信した場合、要求にしたがって処理を行い、サーバコンピュータ１０１に対してそれぞれ応答を送出し、サーバコンピュータ１０１からのユーザ登録・削除要求に対する処理を完了させる。
【００１５】
サーバコンピュータ１０１、およびコピー機１０２は二階に設置されており、プリンタ１０３は一階に設置されている。さらに、これらの機器を相互に接続するＬＡＮ１００は、ファイアウォール１２０を介してインターネット１３０に接続されており、インターネット１３０を介して他のネットワーク１４０とも接続されている。
【００１６】
図２は、一般的なパーソナルコンピュータの内部構成を示した図であり、図１におけるサーバコンピュータ１０１の内部構成はこのようになっている。
【００１７】
図２において、２００は、データベース管理サーバソフトウェア（以下、プリンタ、コピー機上に実装されるデバイスデータベース管理ソフトウェアとを合わせてネットワークデータベース管理ソフトウェアと呼ぶ）が稼動するＰＣであり、図１における１０１と同等である。ＰＣ２００は、ＲＯＭ２０２もしくはハードディスク（ＨＤ）２１１に記憶された、あるいはフロッピー（登録商標）ディスクドライブ（ＦＤ）２１２より供給されるデータベース管理サーバソフトウェアを実行するＣＰＵ２０１を備え、システムバス２０４に接続される各機器を総括的に制御する。２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。２０５はキーボードコントローラ（ＫＢＣ）で、キーボード（ＫＢ）２０９や不図示のポインティングデバイス等からの指示入力を制御する。２０６はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）２１０の表示を制御する。２０７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理プログラム等を記憶するハードディスク（ＨＤ）２１１およびフロッピー（登録商標）ディスクコントローラ（ＦＤ）２１２とのアクセスを制御する。２０８はネットワークインタフェースカード（ＮＩＣ）で、ＬＡＮ２２０を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のＰＣと双方向にデータをやりとりする。
【００１８】
なお、本実施例においては、ＬＡＮ２２０は図１におけるＬＡＮ１００と同じものである。
【００１９】
図３において、３００は、デバイスデータベース管理ソフトウェアが稼動し印刷を実行するプリンタ、またはコピー機の内部構成の一例であり、図１における１０２、１０３と同等である。デバイス３００は、ＲＯＭ３０２もしくはハードディスク（ＨＤ）３１１に記憶された、あるいはフロッピー（登録商標）ディスクドライブ（ＦＤ）３１２より供給されるデバイスデータベース管理ソフトウェアを実行するＣＰＵ３０１を備え、システムバス３０４に接続される各機器を総括的に制御する。３０３はＲＡＭで、ＣＰＵ３０１の主メモリ、ワークエリア等として機能する。３０５はユーザインタフェースコントローラ（ＵＩＣ）で、ユーザインタフェース（ＵＩ）３０９への表示、３０９からの指示入力を制御する。ファンクションコントローラ（ＦＵＮＣＣ）３０６は各デバイス毎の特有の機能であるファンクション（ＦＵＮＣ）３１０を実現／制御する。モノクロプリンタであればモノクロプリントエンジンコントローラとモノクロプリントエンジン、カラープリンタであればカラープリントエンジンコントローラとカラープリントエンジン、コピー機であればデバイス３００はスキャナ機能、プリンタ機能毎にファンクションコントローラ（ＦＵＮＣＣ）３０６とファンクション（ＦＵＮＣ）３１０をそれぞれ持つ。３０７はディスクコントローラ（ＤＫＣ）で、種々のアプリケーション、データファイルそしてネットワーク管理プログラム等を記憶するハードディスク（ＨＤ）３１１およびフロッピー（登録商標）ディスクコントローラ（ＦＤ）３１２とのアクセスを制御する。３０８はネットワークインタフェースカード（ＮＩＣ）で、ＬＡＮ３２０を介して、他のネットワーク機器あるいは他のＰＣと双方向にデータをやりとりする。
【００２０】
図４は、本実施例のモデル図である。サーバＰＣ４１０とデバイス４２０、４３０が、ＬＡＮ４００に接続されている。サーバＰＣ４１０は、図１における１０１と同等である。デバイス４２０、４３０は、図１における１０２、１０３と同等である。ＬＡＮ４００は、図１におけるＬＡＮ１００と同等である。
【００２１】
サーバＰＣ４１０のプロキシエージェント４１２、４１３はそれぞれ、デバイス４２０、４３０のエージェント４２１、４３１のプロキシとして動作するものとする。サーバＰＣ４１０のプロキシデータベース４１４、１４５はそれぞれ、デバイス４２０、４３０のデータベース４２２、４３２のプロキシとして動作するものとする。サーバＰＣ４１０のマネージャ４１１はデバイス４２０のエージェント４２１に対してユーザ登録・削除を行う場合、プロキシエージェント４１２に対してユーザ登録・削除の要求を出し、前記要求を受信したプロキシエージェント４１２は、デバイス４２０のエージェント４２１に対してユーザ登録・削除の要求を送信する。ユーザ登録・削除の要求を受信したエージェント４２１はデータベース４２２に対してユーザ登録・削除の操作を行い、プロキシエージェント４１２に対してデータベース４２２に対する操作の結果を応答として返信する。エージェント４２１の応答を受信したプロキシエージェント４１２は、データベース４２２に対する操作の結果にしたがってプロキシデータベース４１４に対してユーザ登録・削除またはデータベース４２２からコピーの操作を行い、デバイス４２０の保持するデータベース４２２に対する操作の結果を応答としてマネージャ４１１へ返信する。
【００２２】
サーバＰＣ４１０のマネージャ４１１はデバイス４２０に対してユーザ確認を行う場合、プロキシエージェント４１２に対してユーザ確認の要求を送信し、前記要求を受信したプロキシエージェント４１２は、プロキシデータベース４１４を検索し、その結果をデバイス４２０の保持するデータベース４２２に対する検索の応答としてマネージャ４１１へ返信する。
【００２３】
サーバＰＣ４１０のマネージャ４１１はデバイス４３０のエージェント４３１に対してユーザ登録・削除を行う場合、プロキシエージェント４１３に対してユーザ登録・削除の要求を出し、前記要求を受信したプロキシエージェント４１３は、デバイス４３０のエージェント４３１に対してユーザ登録・削除の要求を送信する。ユーザ登録・削除の要求を受信したエージェント４３１はデータベース４３２に対してユーザ登録・削除の操作を行い、プロキシエージェント４１３に対してデータベース４３２に対する操作の結果を応答として返信する。エージェント４３１の応答を受信したプロキシエージェント４１３は、データベース４３２に対する操作の結果にしたがってプロキシデータベース４１５に対してユーザ登録・削除またはデータベース４３２からコピーの操作を行い、デバイス４３０の保持するデータベース４３２に対する操作の結果を応答としてマネージャ４１１へ返信する。
【００２４】
サーバＰＣ４１０のマネージャ４１１はデバイス４３０に対してユーザ確認を行う場合、プロキシエージェント４１３に対してユーザ確認の要求を送信し、前記要求を受信したプロキシエージェント４１３は、プロキシデータベース４１５を検索し、その結果をデバイス４３０の保持するデータベース４３２に対する検索の応答としてマネージャ４１１へ返信する。
【００２５】
なお、データベース４２２、４３２、およびプロキシデータベース４１４、４１５は既知のデータベース機構を使用するものであり、その詳細は本発明の範囲外である。
【００２６】
図５は、サーバＰＣ４１０のマネージャ４１１の動作を記述したものである。ステップ５０１で初期化処理を行い、ステップ５０２にて外部からの要求を待つ。外部からの要求があった場合、その要求の種別ししたがって、ステップ５１０、ステップ５２０、ステップ５３０に処理が分岐する。ステップ５０２にて受信した要求が終了要求であった場合、ステップ５１０へ進み、終了処理を行い、マネージャ処理５００を終了する。ステップ５０２にて受信した要求がユーザ登録要求、ユーザ削除要求、またはユーザ確認要求であった場合、ステップ５２０へ進み、ユーザ登録・削除・確認要求処理を行う。その後、ステップ５０２へ戻り、再び外部からの要求を待つ。ステップ５０２にて受信した要求が終了要求、ユーザ登録要求、ユーザ削除要求、ユーザ確認要求以外の要求であった場合、ステップ５３０へ進み、前記要求に対応する処理を行った後、ステップ５０２へ戻り、再度外部からの要求待ちを行う。
【００２７】
図６は、図５のステップ５２０の詳細を記述したものである。ステップ６０１にて要求の種別を判定し、登録要求であればステップ６１０へ進み、プロキシエージェントへユーザ登録要求を送出し、ステップ６４０へ進む。ステップ６０１にて判定した要求が削除要求であれば、ステップ６２０へ進み、プロキシエージェントへユーザ削除要求を送出し、ステップ６４０へ進む。ステップ６０１にて確認要求と認識すれば、ステップ６３０へ進み、プロキシエージェントへユーザ確認要求を送出し、ステップ６４０へ進む。ステップ６４０では、プロキシエージェントからの応答を待ち、応答を受信すれば、ステップ６４１へ進む。ステップ６４１では、前記要求に対応する処理がプロキシエージェントにて実行され、正常に完了したかを判定する。正常に完了したと判定した場合は、ステップ６６０へ進み、ユーザ登録・削除・確認要求処理６００を終了する。正常に完了しなかった場合は、ステップ６５０へ進み、エラー処理を行い、その後ステップ６６０へ進み、ユーザ登録・削除・確認要求処理６００を終了する。
【００２８】
図７は、サーバＰＣ４１０のプロキシエージェント４１２の動作を示したものである。ステップ７０１では初期化処理を行い、ステップ７０２でマネージャからの要求を待つ。ユーザ登録要求を受信した場合はステップ７１０へ進み、ユーザ登録処理を行い、ステップ７５０へ進む。ステップ７０２でユーザ削除要求を受信した場合は、ステップ７２０へ進みユーザ削除処理を行い、ステップ７５０へ進む。ステップ７０２でユーザ確認要求を受信した場合は、ステップ７３０へ進みユーザ確認処理を行い、ステップ７５０へ進む。ステップ７０２にてユーザ登録、ユーザ削除、ユーザ確認要求以外であるその他の要求を受信した場合、ステップ７４０へ進みその他の要求に対する処理を行い、ステップ７５０へ進む。ステップ７５０では外部から終了要求があった場合は、ステップ７５１へ進み終了処理を行い、ステップ７６０にてプロキシエージェント処理７００を終了する。ステップ７５０にて終了要求が無いと判断された場合は、再びステップ７０２へ進み、マネージャからの要求待ちの処理に入る。
【００２９】
図８は、図７のステップ７０１の詳細を記述したものであり、初期化時にプロキシデータベースの情報を、デバイスのデータベースと一致させるための処理である。まずプロキシデータベースをステップ８０１で初期化し、その後ステップ８０２でプロキシデータベースの設定が終了したかを判断する。設定が終了した場合は、ステップ８２０へ進みプロキシエージェント初期化処理８００を終了する。ステップ８０２にてプロキシデータベースの設定が終了していない場合は、ステップ８１０へ進み、設定するべき情報をデバイスのデータベースから獲得する。その後ステップ８１１にて、獲得した設定情報をプロキシデータベースに設定し、再びステップ８０２に戻る。
【００３０】
図９は、図７のステップ７１０の詳細を記述したものである。ステップ９０１で、登録要求されたユーザをプロキシデータベースにて検索する。ステップ９０２では、ステップ９０１の結果にしたがって、処理を分岐させる。登録要求されたユーザがプロキシデータベースにおいて発見できなければステップ９１０へ進む。ステップ９１０では、データベースに追加登録するための空きエリア有無を判定し、追加登録が可能であればステップ９３０へ進み、登録処理を行い、ステップ９５０へ進む。追加登録が不可能であればステップ９４０へ進み、登録数超過処理を行い、ステップ９５０へ進む。ステップ９０２にて、登録要求されたユーザが既にプロキシデータベースに登録済みであればステップ９２０へ進み、重複登録処理を行い、ステップ９５０へ進む。ステップ９５０へ進んだ場合は、プロキシエージェントのユーザ登録処理９００を終了させる。
【００３１】
図１０は、図７のステップ７２０の詳細を記述したものである。ステップ１００１では、削除要求されたユーザがプロキシデータベースに登録されているかを検索する。ステップ１００２では、削除要求されたユーザが登録されている場合、ステップ１０１０へ進み、削除処理を行い、ステップ１０３０へ進む。削除要求されたユーザがプロキシデータベースに未登録であった場合、ステップ１００２からステップ１０２０へ進み、未登録削除処理を行い、ステップ１０３０へ進む。ステップ１０３０では、プロキシエージェントのユーザ削除処理１０００を終了させる。
【００３２】
図１１は、図７のステップ７３０の詳細を記述したものである。まずステップ１１０１で、ユーザ確認要求をされたユーザが、プロキシデータベースに登録されているかを検索する。ステップ１１０２では、ステップ１１０１の結果により、処理を分岐させる。ユーザ確認要求に該当するユーザがプロキシデータベースに登録されていた場合、ステップ１１１０へ進み、ユーザ確認要求を送出してきたマネージャに対して、確認ＯＫを返信し、ステップ１１３０へ進む。プロキシデータベースにユーザ確認要求に該当するユーザが登録されていない場合は、ステップ１１０２では処理をステップ１１２０へ進め、要求を送信してきたマネージャに対して確認ＮＧを返信し、ステップ１１３０へ進む。ステップ１１３０では、プロキシエージェントのユーザ確認要求処理１１００を終了させる。
【００３３】
図１２は、図９のステップ９３０の詳細を記述したものである。まずステップ１２０１では、エージェントに対してユーザ登録要求を送出する。その後、エージェントからの応答をステップ１２０２にて待ち、受信すればその応答の種類により、処理を振り分ける。エージェントからの応答が登録完了応答であれば、ステップ１２１０へ進み、マネージャから登録を要求されたユーザを、プロキシデータベースへ登録する。その後ステップ１２１１では、マネージャへ登録完了を応答し、ステップ１２４０へ進む。ステップ１２０２にて受信した応答が登録済み応答であれば、ステップ１２２０でマネージャへ登録済みを応答し、ステップ１２２１へ進み、登録済み応答のデータベース不一致解消処理を行う。その後、ステップ１２４０へ進む。ステップ１２０２にて受信した応答が登録数超過応答であった場合、ステップ１２３０へ進み、マネージャへ登録数超過を応答する。その後ステップ１２３１にて登録数超過応答のデータベース不一致解消処理を行い、ステップ１２４０へ進む。ステップ１２４０ではプロキシエージェントの登録処理１２００を終了させる。
【００３４】
図１３は、図９のステップ９２０の詳細を記述したものである。ステップ１３０１ではエージェントへユーザ登録要求を送出し、ステップ１３０２にて前記要求に対するエージェントからの応答を待つ。登録完了応答を受信すれば、ステップ１３１０へ進み、マネージャへ登録完了を応答し、ステップ１３１１で重複登録時登録完了応答のデータベース不一致解消処理を行い、ステップ１３４０へ進む。ステップ１３０２にて登録済み応答を受信すれば、ステップ１３２０へ進み、マネージャへ登録済みを応答し、ステップ１３４０へ進む。ステップ１３０２にて登録数投下応答を受信した場合、ステップ１３３０へ進みマネージャへ登録数超過を応答し、ステップ１３３１にて登録数超過応答のデータベース不一致解消処理を行う。その後、ステップ１３４０へ進む。ステップ１３４０では、プロキシエージェントの重複登録処理１３００を終了させる。
【００３５】
図１４は、図９のステップ９４０の詳細を記述したものである。ステップ１４０１では、エージェントへユーザ登録要求を送出し、ステップ１４０２で前記要求に対する応答を待つ。前記応答が登録完了応答であった場合、ステップ１４１０へ進み、マネージャへ登録完了を応答し、ステップ１４１１にて登録数超過時登録完了応答のデータベース不一致解消処理を行う。その後、ステップ１４４０へ進む。ステップ１４０２で登録済み応答を受信した場合、ステップ１４２０へ進みマネージャへ登録済みを応答し、ステップ１４４０へ進む。ステップ１４０２で登録数超過応答を受信した場合、ステップ１４３０へ進みマネージャへ登録数超過を応答し、ステップ１４４０へ進む。ステップ１４４０では、プロキシエージェントの登録数超過処理１４００を終了させる。
【００３６】
図１５は、図１０のステップ１０１０の詳細を記述したものである。ステップ１５０１でエージェントに対してユーザ削除要求を送出し、ステップ１５０２にて前記要求に対する応答を待つ。削除完了応答を受信した場合、ステップ１５１０へ進み、プロキシデータベースからユーザを削除し、ステップ１５１１にてマネージャへ削除完了の応答を行う。その後、ステップ１５３０へ進む。ステップ１５０２にて未登録応答を受信した場合、ステップ１５２０へ進み、マネージャへ未登録を応答し、ステップ１５２１では未登録応答のデータベース不一致解消処理を行い、ステップ１５３０へ進む。ステップ１５１３０では、プロキシエージェントの削除処理１５００を終了させる。
【００３７】
図１６は、図１０のステップ１０２０の詳細を記述したものである。ステップ１６０１でエージェントへユーザ削除要求を送出し、ステップ１６０２にてエージェントから前記要求に対する応答を待つ。削除完了応答を受信した場合、ステップ１６１０へ進み、プロキシデータベースから、エージェントへ削除要求を行ったユーザを削除し、ステップ１６１１へ進む。ステップ１６１１では削除完了応答のデータベース不一致解消処理を行い、ステップ１６３０へ進む。ステップ１６０２にてエージェントから未登録応答を受信した場合、ステップ１６２０へ進み、マネージャへ未登録を応答する。その後ステップ１６３０へ進む。ステップ１６３０では、プロキシエージェントの未登録削除処理１６００を終了させる。
【００３８】
図１７は、図１２のステップ１２２１の詳細を記述したものである。ステップ１７０１ではエージェントのデータベースにおいて、マネージャに登録を要求されたユーザが登録されているブロックＮｏ．（Ｎｒ）を獲得する。その後ステップ１７０２では、ステップ１７０１で獲得したブロックＮｏ．の値Ｎｒを使用してブロックコピー処理を行い、ステップ１７１０にて登録済み応答のデータベース不一致解消処理１７００を終了させる。
【００３９】
図１８は、図１２のステップ１２３１、および図１３の１３３１の詳細を記述したものである。ステップ１８０１ではプロキシエージェントのプロキシデータベースにおいて、空きのあるブロックのブロックＮｏ．（Ｎｐ）を獲得する。ステップ１８０２では、ステップ１８０１で獲得したブロックＮｏ．の値Ｎｐを使用してブロックコピー処理を行う。その後ステップ１８１０へ進み、登録数超過応答のデータベース不一致解消処理１８００を終了させる。
【００４０】
図１９は、図１３のステップ１３１１の詳細を記述したものである。ステップ１９０１で、プロキシエージェントのプロキシデータベースにおいて、マネージャから登録されたユーザが登録されているブロックのブロックＮｏ．（Ｎｐ）を獲得する。ステップ１９０２では、ステップ１９０１で獲得したブロックＮｏ．の値Ｎｐを使用してブロックコピー処理を行う。その後、エージェントのデータベースにおいて、前記ユーザが登録されたブロックのブロックＮｏ．（Ｎｒ）を獲得し、ステップ１９０４でＮｐとＮｒの値を比較する。Ｎｐ＝Ｎｒであれば、ステップ１９３０へ進む。Ｎｐ≠Ｎｒであればステップ１９１０へ進み、プロキシデータベースに対して前記ユーザを登録し、ステップ１９３０へ進む。ステップ１９３０では、重複登録時登録完了応答のデータベース不一致処理１９００を終了させる。
【００４１】
図２０は、図１４のステップ１４１１の詳細を記述したものである。ステップ２００１では、マネージャが登録を要求したユーザが、エージェントのデータベースにおいて登録されたブロックＮｏ．（Ｎｒ）を獲得する。ステップ２００２ではステップ２００１で獲得したブロックＮｏ．の値Ｎｒを使用してブロックコピー処理を行う。その後ステップ２０１０へ進み、登録数超過時登録完了応答のデータベース不一致解消処理２０００を終了させる。
【００４２】
図２１は、図１６のステップ１６１１の詳細を記述したものである。ステップ２１０１では、マネージャが削除を要求したユーザが、エージェントのデータベースにおいて登録されたブロックＮｏ．（Ｎｒ）を獲得する。ステップ２１０２ではステップ２１０１で獲得したブロックＮｏ．の値Ｎｒを使用してブロックコピー処理を行う。その後ステップ２１１０へ進み、削除完了応答のデータベース不一致解消処理２１００を終了させる。
【００４３】
図２２は、図１５のステップ１５２１の詳細を記述したものである。ステップ２２０１では、マネージャが削除を要求したユーザが、プロキシエージェントのプロキシデータベースにおいて登録されているブロックＮｏ．（Ｎｐ）を獲得する。ステップ２２０２ではステップ２２０１で獲得したブロックＮｏ．の値Ｎｐを使用してブロックコピー処理を行う。その後ステップ２２１０へ進み、未登録応答のデータベース不一致解消処理２２００を終了させる。
【００４４】
図２３は、図１７のステップ１７０２、図１８のステップ１８０２、図１９のステップ１９０２、図２０のステップ２００２、図２１のステップ２１０２、および図２２のステップ２２０２の詳細を記述したものである。ステップ２３０１にて、ブロックＮｏ．で指定されたブロックのデータを、エージェントのデータベースに対して獲得要求を送出する。ステップ２３０２では、エージェントのデータベースからの応答待ちを行い、応答を受信した後にステップ２３１０へ進む。ステップ２３１０ではエージェントから獲得したブロックのデータを、プロキシデータベースの同一ブロックＮｏ．のブロックにコピーする。その後２３２０に進み、ブロックコピー処理２３００を終了させる。
【００４５】
図２４は、デバイス４２０のエージェント４２１、デバイス４３０のエージェント４３１の動作を記述したものである。まずステップ２４０１にて初期化処理を行い、その後ステップ２４０２にてサーバからの要求を待つ。サーバからの要求を受信し、その要求の種別がユーザ確認要求であった場合、ステップ２４２０へ進みユーザ確認処理を行い、ステップ２４０２へ戻り再びサーバからの要求を待つ。ステップ２４０２にて受信した要求がユーザ登録要求であった場合、ステップ２４３０へ進みユーザ登録処理を行った後、ステップ２４０２へ戻り再度サーバからの要求を待つ。ステップ２４０２で受信した要求がユーザ削除要求であった場合、ステップ２４４０へ進みユーザ削除処理を行った後、ステップ８０２へ戻り、再度サーバからの要求を待つ。ステップ２４０２にて受信した要求が、ブロックデータ獲得要求であった場合、ステップ２４６０へ進みブロックデータ獲得処理を行った後、ステップ２４０２へ戻り、再度サーバからの要求を待つ。ステップ２４０２で受信した要求が終了要求であった場合、ステップ２４１０にて終了処理を行った後、ステップ２４７０に進みエージェント処理２４００を終了する。ステップ２４０２にて受信した要求が、前記要求以外の要求であった場合、ステップ２４５０へ進み要求に対応した処理を行い、その後ステップ２４０２へ戻り、再度サーバからの要求を待つ。
【００４６】
図２５は、図２４のステップ２４３０の詳細を記述したものである。ステップ２５０１でデータベースに対して、プロキシエージェントから登録要求されたユーザを検索し、その結果によりその後ステップ２５０２にて処理を振り分ける。要求されたユーザがデータベースに登録されていない場合はステップ２５１０へ進み、登録済みの場合はステップ２５２０へ進む。ステップ２５１０では、データベースに空きがあり、追加登録が可能かを判定し、可能であればステップ２５３０へ進み、不可能であればステップ２５４０へ進む。ステップ２５３０ではデータベースにユーザを登録し、ステップ２５３１にてユーザ登録要求を送信したプロキシエージェントに対して登録完了として応答し、その後ステップ２５５０へ進みユーザ登録処理２５００を終了する。ステップ２５１０にてデータベースに追加登録が不可能と判定された場合はステップ２５４０へ進み、ユーザ登録要求を送信したプロキシエージェントに対して登録数超過を返信し、その後ステップ２５５０へ進みユーザ登録処理２５００を終了する。ステップ２５０２にてデータベースに登録を要求されたユーザが既に登録されている場合、ステップ２５２０へ進み、登録要求を送信したプロキシエージェントに対して登録済みを返信し、ステップ２５５０にてユーザ登録処理２５００を終了する。
【００４７】
図２６は、図２６のステップ２４４０の詳細を記述したものである。ステップ２６０１では、プロキシエージェントから削除を要求されたユーザについて、データベースを検索する。その結果にしたがってステップ２６０２において処理を分岐させる。プロキシエージェントより削除を要求されたユーザが、データベースに登録済みであれば、ステップ２６１０へ進み、データベースから削除要求をされたユーザを削除し、ステップ２６１１にてプロキシエージェントへ削除完了の応答を行い、ステップ２６３０にてユーザ削除処理２６００を終了する。プロキシエージェントより削除を要求されたユーザが、データベースに登録されていなければ、ステップ２６０２は処理をステップ２６２０へ分岐させ、プロキシエージェントへ未登録の応答を行い、ステップ２６３０にてユーザ削除処理２６００を終了する。
【００４８】
図２７は、図２４のステップ２４２０の詳細を記述したものである。ステップ２７０１では、プロキシエージェントから確認を要求されたユーザについて、データベースを検索する。その結果にしたがってステップ２７０２において処理を分岐させる。プロキシエージェントより確認を要求されたユーザが、データベースに登録済みであれば、ステップ２７１０へ進み、プロキシエージェントへ確認ＯＫの応答を行い、ステップ２７３０にてユーザ確認処理２７００を終了する。プロキシエージェントより確認を要求されたユーザが、データベースに登録されていなければ、ステップ２７０２は処理をステップ２７２０へ分岐させ、プロキシエージェントへ確認ＮＧの応答を行い、ステップ２７３０にてユーザ確認処理２７００を終了する。
【００４９】
図２８は、図２４のステップ２４６０の詳細を記述したものである。ステップ２８０１で、要求されたブロックデータをデータベースから獲得する。その後、ステップ２８０２にて獲得したブロックデータを載せたブロックデータ獲得応答を、プロキシエージェントへ送信し、ステップ２８１０にてブロックデータ獲得処理２８００を終了する。
【００５０】
図２９はデータベースに登録されたユーザ情報の一例である。データベース２９００は、図４の４１４、４１５、４２２、４３２と同一のものである。図２９の例ではデータベース２９００には情報２９０１、２９０２、２９０３が蓄積され、ユーザ情報は２９０１に蓄積されている。ユーザ情報はブロック毎に管理されており、図２９の例ではブロック数は３である。ブロック２９１０はブロックＮｏ．＝０、ブロック２９１１はブロックＮｏ．＝１、ブロック２９１２はブロックＮｏ．＝２、ユーザ情報２９２０は、ブロックＮｏ．＝１であるブロック２９１１の詳細を示している。ユーザ情報２９２０の列はユーザに関連する情報要素を表わす。列２９３０はＵｓｅｒＩＤ、列２９３１はユーザ名称、列２９３２はパスワード、列２９３３はアクセス権、列２９３４はブロックＮｏ．をそれぞれ表わしている。ユーザ情報２９２０の行は１ユーザを表現している。例えば、行２９４０は、ＵｓｅｒＩＤは８７であり、そのユーザのユーザ名称はＩＣＨＩＲＯ、パスワードは４ＷＡＲＩ、アクセス権は一般ユーザ、ブロックＮｏ．は１であることを表わしている。図２９のユーザ情報はあくまでも例であり、例えばブロック数がｎとなっても良い。また、ユーザ情報の情報要素は、パスワード有効期間など、他の情報要素が加えられていても良い。データベース２９００の操作は既存のデータベースを使用するものとし、本発明の言及するところでは無い。
【００５１】
図３０は、記憶媒体の一例であるＣＤ−ＲＯＭのメモリマップを示す図である。９９９９はディレクトリ情報を記憶してある領域で、以降のインストールプログラムを記憶してある領域９９９８およびネットワークデータベース管理ソフトウェアのプログラムを記憶してある領域９９９７の位置を示している。９９９８は、インストールプログラムを記憶してある領域である。９９９７は、ネットワークデータベース管理ソフトウェアのプログラムを記憶してある領域である。本発明のデータベース管理サーバソフトウェアのプログラムがパーソナルコンピュータ２００にインストールされる際には、まずインストールプログラムを記憶してある領域９９９８に記憶されているインストールプログラムがシステムにロードされ、ＣＰＵ２０１によって実行される。次に、ＣＰＵ２０１によって実行されるインストールプログラムが、ネットワークデータベース管理ソフトウェアのプログラムを記憶してある領域９９９７からネットワークデータベース管理ソフトウェアのプログラムを読み出して、ハードディスク２１１に格納する。
【００５２】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダなど）から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【００５３】
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ，ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００５４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００５５】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【図面の簡単な説明】
【００５６】
【図１】本実施例のネットワークデバイス管理システムが動作可能なネットワークの構成を示す図。
【図２】一般的なパーソナルコンピュータの内部構成を示した図。
【図３】デバイスの内部構成の一例を示した図。
【図４】サーバＰＣとデバイスのモデル図。
【図５】マネージャの動作を表わすフローチャート。
【図６】マネージャの動作を表わすフローチャート。
【図７】プロキシエージェントの動作を表わすフローチャート。
【図８】プロキシエージェントの動作を表わすフローチャート。
【図９】プロキシエージェントの動作を表わすフローチャート。
【図１０】プロキシエージェントの動作を表わすフローチャート。
【図１１】プロキシエージェントの動作を表わすフローチャート。
【図１２】プロキシエージェントの動作を表わすフローチャート。
【図１３】プロキシエージェントの動作を表わすフローチャート。
【図１４】プロキシエージェントの動作を表わすフローチャート。
【図１５】プロキシエージェントの動作を表わすフローチャート。
【図１６】プロキシエージェントの動作を表わすフローチャート。
【図１７】プロキシエージェントの動作を表わすフローチャート。
【図１８】プロキシエージェントの動作を表わすフローチャート。
【図１９】プロキシエージェントの動作を表わすフローチャート。
【図２０】プロキシエージェントの動作を表わすフローチャート。
【図２１】プロキシエージェントの動作を表わすフローチャート。
【図２２】プロキシエージェントの動作を表わすフローチャート。
【図２３】プロキシエージェントの動作を表わすフローチャート。
【図２４】エージェントの動作を表わすフローチャート。
【図２５】エージェントの動作を表わすフローチャート。
【図２６】エージェントの動作を表わすフローチャート。
【図２７】エージェントの動作を表わすフローチャート。
【図２８】エージェントの動作を表わすフローチャート。
【図２９】ユーザ情報の構成の一例を示す図。
【図３０】本発明のネットワークデータベース管理ソフトウェアの記憶媒体におけるメモリマップを示す図
【符号の説明】
【００５７】
１００、２２０、３２０、４００    ネットワーク
１０１、２００、４１０    サーバＰＣ
１０２、１０３、３００、４２０、４３０    デバイス
４１１    マネージャ
４２１、４３１    エージェント
４１２、４１３    プロキシエージェント
４２２、４３２    データベース
４１４、４１５    プロキシデータベース
【図１】
2005259002.tif 000003
【図２】
2005259002.tif 000004
【図３】
2005259002.tif 000005
【図４】
2005259002.tif 000006
【図５】
2005259002.tif 000007
【図６】
2005259002.tif 000008
【図７】
2005259002.tif 000009
【図８】
2005259002.tif 000010
【図９】
2005259002.tif 000011
【図１０】
2005259002.tif 000012
【図１１】
2005259002.tif 000013
【図１２】
2005259002.tif 000014
【図１３】
2005259002.tif 000015
【図１４】
2005259002.tif 000016
【図１５】
2005259002.tif 000017
【図１６】
2005259002.tif 000018
【図１７】
2005259002.tif 000019
【図１８】
2005259002.tif 000020
【図１９】
2005259002.tif 000021
【図２０】
2005259002.tif 000022
【図２１】
2005259002.tif 000023
【図２２】
2005259002.tif 000024
【図２３】
2005259002.tif 000025
【図２４】
2005259002.tif 000026
【図２５】
2005259002.tif 000027
【図２６】
2005259002.tif 000028
【図２７】
2005259002.tif 000029
【図２８】
2005259002.tif 000030
【図２９】
2005259002.tif 000031
【図３０】
2005259002.tif 000032