(57)【特許請求の範囲】
【請求項１】
複数のクライアント装置と、複数のネットワークデバイスと、複数のクライアント装置及び複数のネットワークデバイスを管理するネットワーク管理装置とを含むシステムであって、
複数のネットワークデバイスの中の１のネットワークデバイスが、
前記複数のクライアント装置及びネットワーク管理装置を含むネットワーク上の装置に対して、ネットワーク接続メッセージを送信する送信手段を備え、
前記ネットワーク管理装置が、
前記複数のクライアント装置それぞれが、複数のクライアントグループのいずれに属するかを示すクライアントグループ情報、前記複数のネットワークデバイスそれぞれが、複数のデバイスグループのいずれに属するかを示すデバイスグループ情報を記憶管理すると共に、クライアントグループとデバイスグループとの論理的な接続関係を示す接続情報を記憶する記憶管理手段と、
ネットワークを介して、ネットワークデバイスからのネットワーク接続メッセージを受信する受信手段と、
前記記憶管理手段で記憶管理されるデバイスグループ情報を参照することで、前記受信手段により受信したネットワーク接続メッセージを発信したネットワークデバイスが属するデバイスグループを特定する第１の特定手段と、
前記記憶管理手段で記憶される接続情報を参照することで、前記第１の特定手段により特定されたデバイスグループと論理的な接続関係にあるクライアントグループのクライアントグループ情報を特定する第２の特定手段と、
前記第２の特定手段により特定され、前記記憶管理手段により記憶管理されたクライアントグループ情報を参照することで、当該クライアントグループの構成メンバである各クライアント装置に対し、前記ネットワーク接続メッセージを発信したネットワークデバイスに対応するデバイスドライバのセットアップ要求メッセージを送信する送信手段とを備え、
複数のクライアント装置の中の１のクライアント装置が、
ネットワークを介して、ネットワークからのメッセージの受信を監視する常駐プログラムの機能として前記ネットワークデバイスからのネットワーク接続メッセージを受信した際には当該ネットワーク接続メッセージに応じてセットアップ処理が開始されないよう制御し、前記ネットワーク管理装置からのセットアップ要求メッセージを受信した際にはドライバインストールのセットアップ処理の開始を制御する制御手段とを備える
ことを特徴とするシステム。
【請求項２】
前記第１の特定手段は、構成に変化があったことを示すメッセージを発信したネットワークデバイスが属するデバイスグループを特定し、
前記第２の特定手段は、前記第１の特定手段により特定されたデバイスグループと論理的な接続関係にあるクライアントグループのクライアントグループ情報を特定することを特徴とする請求項１に記載のシステム。
【請求項３】
前記ネットワーク管理装置は、更に、前記送信手段による前記セットアップ要求メッセージの送信を、前記第２の特定手段で特定された直後に実行するのか、或いは、日時を指定し、当該指定された日時になった場合に実行するのかのシナリオを、各クライアントグループに設定するシナリオ設定手段を備えることを特徴とする請求項１又は２に記載のシステム。
【請求項４】
前記ネットワーク管理装置は、
前記ネットワークデバイスに設定するための設定情報を格納するデバイス設定情報格納手段と、
前記受信手段が前記ネットワークを介して前記ネットワーク接続メッセージを受信した場合、当該ネットワーク接続メッセージの発信したネットワークデバイスに対する設定情報を前記デバイス設定情報格納手段より読出し、当該ネットワークデバイスに送信し、設定させる設定手段を更に備え、
前記ネットワークデバイスはＦＡＸデバイス或いはプリンタであって、
前記設定情報は、ＦＡＸデバイスにおける宛て先を記述したアドレス帳、或いは、プリンタの印刷の際に利用するカラープロファイルであることを特徴とする請求項１に記載のシステム。
【請求項５】
複数のクライアント装置と、複数のネットワークデバイスと、並びに、前記複数のクライアント装置及び前記複数のネットワークデバイスを管理するため、前記複数のクライアント装置それぞれが、複数のクライアントグループのいずれに属するかを示すクライアントグループ情報、前記複数のネットワークデバイスそれぞれが、複数のデバイスグループのいずれに属するかを示すデバイスグループ情報を記憶管理すると共に、クライアントグループとデバイスグループとの論理的な接続関係を示す接続情報を記憶する記憶管理手段を有するネットワーク管理装置とを含むシステムの制御方法であって、
複数のネットワークデバイスの中の１のネットワークデバイスが、
前記複数のクライアント装置及びネットワーク管理装置を含むネットワーク上の装置に対して、ネットワーク接続メッセージを送信する送信工程を備え、
前記ネットワーク管理装置が、
ネットワークを介して、ネットワークデバイスからのネットワーク接続メッセージを受信する受信工程と、
前記記憶管理手段で記憶管理されるデバイスグループ情報を参照することで、前記受信工程により受信したネットワーク接続メッセージを発信したネットワークデバイスが属するデバイスグループを特定する第１の特定工程と、
前記記憶管理手段で記憶される接続情報を参照することで、前記第１の特定工程により特定されたデバイスグループと論理的な接続関係にあるクライアントグループのクライアントグループ情報を特定する第２の特定工程と、
前記第２の特定工程により特定され、前記記憶管理手段により記憶管理されたクライアントグループ情報を参照することで、当該クライアントグループの構成メンバである各クライアント装置に対し、前記ネットワーク接続メッセージを発信したネットワークデバイスに対応するデバイスドライバのセットアップ要求メッセージを送信する送信工程とを備え、
複数のクライアント装置の中の１のクライアント装置が、
ネットワークを介して、ネットワークからのメッセージの受信を監視する常駐プログラムの機能として前記ネットワークデバイスからのネットワーク接続メッセージを受信した際には当該ネットワーク接続メッセージに応じてセットアップ処理が開始されないよう制御し、前記ネットワーク管理装置からのセットアップ要求メッセージを受信した際にはドライバインストールのセットアップ処理の開始を制御する制御工程とを備える
ことを特徴とするシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワーク上のクライアントやネットワークデバイスを管理する技術に関するものである。
【背景技術】
【０００２】
従来から、ネットワークデバイスを管理する方法として、ＳＮＭＰ／ＭＩＢを用いる方法が知られている。ＳＮＭＰ(Simple Network Management Protocol)とは、ネットワークに接続された機器類をネットワーク経由で管理するためのプロトコルである。ＳＮＭＰによるネットワーク管理は、マネージャと、管理対象機器に常駐するエージェントの間のＵＤＰ通信により実現され、マネージャからのリクエストに対してエージェントはレスポンスを返す。ＭＩＢ(Management Information Base)は、ＳＮＭＰに対応したネットワークデバイスに存在する、そのネットワーク機器についての管理情報のデータベースである。マネージャからのリクエストに対して、エージェントはＭＩＢ内の情報を返すことで、マネージャは、着目ネットワークデバイスが如何なる装置であり、如何なる機能を有するのかを検出することが可能になる。
【０００３】
昨今では、ネットワーク機器が小規模のイントラネット環境から、ルータ等でポート制御を行っている大規模なイントラネット環境になってきている。また、社外の環境と接続するインターネット環境に接続されるようにもなってきておる。これに伴い、ＳＮＭＰ／ＭＩＢを用いたネットワークデバイス管理から、Ｗｅｂサービスを用いたデバイス管理に移り変わっている。
【０００４】
Ｗｅｂサービスの普及に伴い、これまでこれらネットワーク対応型デバイスを利用する上での利便性、簡易性を高める必要がある。そのため、サービスを提供するネットワークデバイスの探索・検索手段、ネットワーク対応型デバイスを制御するためのアプリケーションソフトウエア、ユーティリティソフトウエア、オペレーティングシステム等の自動セットアップ手段(プラグアンドプレイ)を有するさまざまなプロトコル、アーキテクチャが提案されている(特許文献１)。
【０００５】
また、複数の企業、標準化団体が、ローカルＩ／Ｏ接続デバイス対して適用されてきたプラグアンドプレイをネットワークデバイスに対して拡張対応すべく、仕様策定作業を進めている。
【０００６】
例えば、米国Ｍｉｃｒｏｓｏｆｔ社が主体となって策定を進めるＵＰｎＰ（登録商標）、およびＷＳＤ（Web Services for Devices（WS-Discovery/WS-MetadataExchange））、ビジネス機械・情報システム産業協会（ＪＢＭＩＡ）が推進するＢＭＬｉｎｋｓ、或いは、米国Ａｐｐｌｅ社が開発したＯＳ  ＸでサポートされるＲｅｎｅｄｚｖｏｕｓなどがその一例である。
【特許文献１】特開２００４−３０３２５２公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ネットワーク対応のＵＰｎＰ等のネットワークデバイスがネットワークに接続されると、ＰＣにはそのネットワークデバイスに対応するデバイスドライバが自動インストールされ非常に有益であると考えられる。
【０００８】
しかしながら、エンタープライス環境、すなわち、多数のＰＣやプリンタ等のネットワークデバイスを有するネットワーク環境では、逆に、不都合が面が発生することが予想される。なぜなら、ネットワーク上に同一機能のネットワークデバイスが多数存在する場合、それら多数のネットワークデバイス用のデバイスドライバが各ＰＣにインストールされてしまい、そのＰＣの有限なメモリを無駄に消費してしまうからである。通常、印刷を行なう場合には、ネットワークデバイスとしてのプリンタはせいぜい１台か２台程度であるから、上記の問題は容易に想像できよう。
【０００９】
また、デバイスドライバのインストールする場合には、多少とも時間を要する。ネットワーク上に新規にデバイスを何台も接続した場合には、このインストール処理が何回も行われることになり、そのインストールに要する時間はもはや無視できないものとなり、ＰＣを利用した業務に支障を来すことにもなろう。
【００１０】
また、エンタープライズ環境等では、部署や部屋、或いはフロア毎等、或る単位毎に、ＦＡＸ機能を有するデバイスを設置することが行われている。この場合にはそれぞれの単位毎に、異なるアドレス情報（送信先ファクシミリ番号）を設定する必要がある。また、企業内では、デザインを主な業務とする部門も存在し、そのような部門にネットワークカラープリンタを新設した場合には、その部門での望ましいカラープロファイルをそのプリンタに設定することになる。かかるネットワークデバイスへの各種設定は、これまでＩＴ管理者等が手作業で行なっており、その負担は増えるばかりである。
【００１１】
本発明はかかる問題点に鑑みなされたものである。その目的は、ネットワーク上にクライアント及びデバイスが多数存在する大規模ネットワーク環境であっても、デバイスドライバのセットアップについては、論理的な小規模ネットワークの集合体として機能させることを可能にする。そして、その論理的小規模ネットワーク内で、デバイスドライバのセットアップを自動化させる技術を提供することにある。
【課題を解決するための手段】
【００１２】
かかる課題を解決するため、例えば本発明のシステムは以下の構成を備える。すなわち、
複数のクライアント装置と、複数のネットワークデバイスと、複数のクライアント装置及び複数のネットワークデバイスを管理するネットワーク管理装置とを含むシステムであって、
複数のネットワークデバイスの中の１のネットワークデバイスが、
前記複数のクライアント装置及びネットワーク管理装置を含むネットワーク上の装置に対して、ネットワーク接続メッセージを送信する送信手段を備え、
前記ネットワーク管理装置が、
前記複数のクライアント装置それぞれが、複数のクライアントグループのいずれに属するかを示すクライアントグループ情報、前記複数のネットワークデバイスそれぞれが、複数のデバイスグループのいずれに属するかを示すデバイスグループ情報を記憶管理すると共に、クライアントグループとデバイスグループとの論理的な接続関係を示す接続情報を記憶する記憶管理手段と、
ネットワークを介して、ネットワークデバイスからのネットワーク接続メッセージを受信する受信手段と、
前記記憶管理手段で記憶管理されるデバイスグループ情報を参照することで、前記受信手段により受信したネットワーク接続メッセージを発信したネットワークデバイスが属するデバイスグループを特定する第１の特定手段と、
前記記憶管理手段で記憶される接続情報を参照することで、前記第１の特定手段により特定されたデバイスグループと論理的な接続関係にあるクライアントグループのクライアントグループ情報を特定する第２の特定手段と、
前記第２の特定手段により特定され、前記記憶管理手段により記憶管理されたクライアントグループ情報を参照することで、当該クライアントグループの構成メンバである各クライアント装置に対し、前記ネットワーク接続メッセージを発信したネットワークデバイスに対応するデバイスドライバのセットアップ要求メッセージを送信する送信手段とを備え、
複数のクライアント装置の中の１のクライアント装置が、
ネットワークを介して、ネットワークからのメッセージの受信を監視する常駐プログラムの機能として前記ネットワークデバイスからのネットワーク接続メッセージを受信した際には当該ネットワーク接続メッセージに応じてセットアップ処理が開始されないよう制御し、前記ネットワーク管理装置からのセットアップ要求メッセージを受信した際にはドライバインストールのセットアップ処理の開始を制御する制御手段とを備える。
【発明の効果】
【００１３】
本発明によれば、ネットワーク上にクライアント装置及びデバイスが多数存在する大規模ネットワーク環境であっても、デバイスドライバのセットアップについては、論理的な小規模ネットワークの集合体として機能させることが可能にする。また、その論理的小規模ネットワーク内で、デバイスドライバのセットアップを自動化させることが可能になる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面に従って本発明にかかる実施の形態を詳細に説明する。
【００１５】
図１は本実施形態のネットワークシステム全体の接続形態を表す構成図である。
【００１６】
本実施形態では、図示のように、組織体系（部門）やロケーション（フロアや部屋）毎に、それらに属するクライアントをまとめたクライアントグループを定義する。またクライアントが利用する各ネットワークデバイスについても、いずれかのデバイスグループを定義する。図示の場合、クライアントグループ及びデバイスグループがそれぞれ２つのグループＡ，Ｂに分けられていることを示している。
【００１７】
本実施形態の目的は、例えば、クライアントグループＡとデバイスグループＡとを対応づけ、クライアントグループＢとデバイスグループＢとを対応づける。そして、同一グループに属する各クライアントは、対応づけられたデバイスグループに属するネットワークデバイスのみを利用させるため、そのデバイスドライバのインストールを行なう。そして、これを各クライアントのユーザが格別な操作無しに、自動化させるものである。この一連の操作を行なうのが、図示のネットワークデバイス管理サーバ（以下、単に管理サーバという）５００で行なう。
【００１８】
なお、この管理サーバ５００は、必要に応じて、ネットワークデバイスに資産番号を割り当てる処理、並びに、その状態を監視し、その情報を販売管理会社が設置したメンテナンスサーバ６００に通知する機能を有する。この結果、用紙やトナー等の補充、更には、故障に対する修理等のｅメンテナンスサービスが実現する。
【００１９】
また、実施形態におけるネットワークデバイスは印刷機能（プリントサーバ）、原稿読み取り機能（スキャナサーバ）、複写機能を有する複合機とする。また、この複合機はオプションとしてＦＡＸ機能を実現する拡張ＦＡＸボード（プリント基板）を装着できるものとして説明する。
【００２０】
また、ネットワークデバイスの探索・検索する技術としては、米国マイクロソフト社が主体となって策定を進めるＵＰｎＰ（登録商標）、およびＷＳＤ（Web Services for Devices）を例にする。ただし、同様の技術として、ビジネス機械・情報システム産業協会（ＪＢＭＩＡ）が推進するＢＭＬｉｎｋｓ、米国Ａｐｐｌｅ社が開発したＯＳ  ＸでサポートされるＲｅｎｅｄｚｖｏｕｓなどでも構わない。
【００２１】
また、各クライアントはパーソナルコンピュータ（ＰＣ）として説明するが、ＰＤＡ等の携帯端末でも良い。また、説明を簡単にするため、クライアントに搭載されるＯＳ（オペレーティングシステム）は、米国マイクロソフト社が提供するＷｉｎｄｏｗｓ（登録商標）を例に説明する。
【００２２】
ここで、クライアントとネットワーク対応デバイス間のＷＳＤの仕様に基づく探索及びそのネットワーク対応デバイス用のデバイスドライバの一般的なインストールの手順を図２に従って簡単に説明する。
【００２３】
図２（ａ）は、クライアント端末１００がネットワークに接続する際、もしくはユーザによるネットワークデバイスの探索の指示入力がなされた場合の手順を示している。
【００２４】
クライアント端末１００は、ネットワークにデバイス検索要求であるＰｒｏｂｅメッセージをマルチキャスト（ブロードキャスト）送信する。このＰｒｏｂｅメッセージを受信したネットワークデバイス２００は、それに応じるべくクライアント端末１００に向けて応答メッセージ（ＰｒｏｂｅＭａｔｃｈ）をユニキャスト送信する。これ以降、通信相手先が互いに判明しているので、送受信はユニキャストになる。
【００２５】
クライアント端末１００は、上記の応答メッセージを受信することで、ネットワーク上にネットワークデバイス２００の存在することが検出できる。従って、次の段階に進み、そのネットワーク対応デバイスに対してデバイス情報要求メッセージ（ＧｅｔＭｅｔａＤａｔａ）を送信（ユニキャスト）し、デバイス情報（ＭｅｔａＤａｔａ ｆｏｒ  Ｄｅｖｉｃｅ）を取得する。この後、クライアント端末１００は、サービス情報要求メッセージ（ＧｅｔＭａｔａＤａｔａ）を送信し、サービス情報（ＭｅｔａＤａｔａ ｆｏｒ Ｓｅｒｖｉｃｅ）を取得する。
【００２６】
以上の結果、クライアント端末１００は、ネットワークデバイス２００の機種名、属性情報（プリンタであることを示す情報）を得ることができる。従って、ＯＳに対し、該当するデバイスドライバ（上記の場合にはプリンタドライバ）のインストールのセットアップ処理の実行を要求することになる。なお、このセットアップ処理において、既に該当するデバイスドライバがインストール済みであれば、そのインストール処理は行われない。
【００２７】
図２（ｂ）は、クライアント端末１００は既にネットワークに接続が完了した後、ネットワークデバイス２００をネットワークに参加させた場合の手順を示している。なお、ネットワークデバイス２００のネットワークへの参加とは、そのネットワークデバイス２００の電源が投入された場合と考えると分かりやすい。また、新規にネットワークデバイスを設置した場合や、拡張ボードを装着して電源投入した場合にもあてはまる。
【００２８】
先ず、ネットワークデバイスはネットワークに参加するための参加メッセージ（Ｈｅｌｌｏ）をマルチキャスト送信する。クライアント端末１００は、この参加メッセージを受信することで、ネットワーク対応デバイス２００の存在を検出するので、デバイス情報要求メッセージを送信する。この後の手順は、図２（ａ）と同じである。
【００２９】
さて、上記のようにして、クライアント端末１００が未知のネットワーク対応デバイスを検出して、デバイスドライバが自動インストールされるので、ユーザにかかる負担は少なくなる。しかしながら、ネットワーク上に多数のネットワークデバイスが存在する場合、図２（ａ）、（ｂ）のいずれの場合においても、多数のデバイスが検索されてしまい、結局のところ、多数のデバイスドライバが次々とインストールされてしまう。１つのデバイスドライバのインストールに要する時間も数十秒乃至数分になるわけであるから、クライアント端末１００を利用した本来の作業を行えるまでに多くの時間を必要とする。なにより不必要なデバイスドライバのためにメモリが消費され、本来の作業に支障を来すことにもなりかねない。
【００３０】
そこで、本実施形態では、先に説明したように、図１のようなグループ分けがなされた状況では、クライアントグループＡに属する各クライアントは、デバイスグループＡに属するネットワークデバイスのみのデバイスドライバをインストールさせる。これにより、上記問題を解決すると共に、ＩＴ管理者の負担を軽減させるものである。
【００３１】
先ず、前提として、実施形態における各クライアントは、ネットワーク上に上記Ｐｒｏｂｅメッセージの送信を行なわないか、行なえないようにする。また。各クライアントはＨｅｌｌｏメッセージに対しても無応答（受信したＨｅｌｌｏメッセージを破棄）する設定されているものとする。ただし、各クライアントは、管理サーバ１からの要求に対してのみ応答するように設定されているものとする。この処理は、各クライアントに後述するソフトウェア（メモリ常駐アプリケーションプログラム）をインストールすることで対処する。
【００３２】
＜装置構成の説明＞
先ず、クライアント、ネットワークデバイス、及び、管理サーバそれぞれの構成について説明する。
【００３３】
［ネットワークデバイス（複合機）の構成］
図１に示した複数のネットワークデバイスを示した。図３はその１つのネットワークデバイス（複合機）のブロック構成図である。他のネットワークデバイスも同様の構成である。
【００３４】
コントローラユニット（Controller Unit）２０００は、装置本体にプリント基板として実行される。このコントローラユニット２０００は、画像入力デバイスであるスキャナ２０７０（原稿画像を読み取る装置）や画像出力デバイスであるプリンタ２０９５と接続している。また、コントローラユニット２０００には、ネットワークと接続するためのネットワークＩ／Ｆ２０１０、公衆回線（ＦＡＸ通信）と接続するためのＭＯＤＥＭ２０５０を備える。
【００３５】
ＣＰＵ２００１は、ネットワークデバイス全体を制御するコントローラである。ＲＡＭ２００２はＣＰＵ２００１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３は、電源投入時にＣＰＵ２００１が実行するブートプログラム、及び周辺回路、装置をアクセスするためのＢＩＯＳを記憶している。ＨＤＤ２００４は、本装置が複合機として機能するための各種システムソフトウェア（プログラム）を記憶すると共に、ネットワークから受信したジョブを一時的に格納するバッファとして使用される。複数のジョブを受信した場合には、このＨＤＤ２００４に順に記憶し、キューを構成することになる。
【００３６】
操作部Ｉ／Ｆ２００６は、各種スイッチ、液晶表示器、タッチパネル等で構成される操作部２０１２とのインターフェース部であり、操作部２０１２で入力された情報をＣＰＵ２００１に伝えたり、ＣＰＵ２００１からの指示に従って各種メニューの画像を操作部２０１２に伝える処理を行なう。
【００３７】
以上のデバイスがシステムバス２００７上に配置される。
【００３８】
イメージバス（Image Bus）Ｉ／Ｆ２００５はシステムバス２００７と画像データを高速で転送する画像バス２００８を接続し、データ構造を変換するバスブリッジである。画像バス２００８は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。画像バス２００８上には以下のデバイスが配置される。
【００３９】
ラスターイメージプロセッサ(RIP)２０６０はＰＤＬコード（ネットワークから受信した印刷データ）をビットマップイメージに展開する。デバイスＩ／Ｆ２０２０は、画像入出力デバイスであるスキャナ２０７０やプリンタ２０９５とコントローラ２０００を接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部２０８０は、入力された画像データに対し補正、加工、編集を行う。プリンタ画像処理部は、プリント出力すべき画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部２０３０は画像データの回転を行う。画像圧縮部２０４０は、多値画像データはＪＰＥＧ、２値画像画像データはＪＢＩＧ、ＭＭＲ、ＭＨ等の圧縮伸張処理を行う。
【００４０】
図４は、ネットワークデバイスの外観図である。画像入力デバイスであるスキャナ部２０７０は、原稿面を照明し、ＣＣＤラインセンサ(図示せず)でその反射光を受光・走査することで、画像を読み取る。読取った画像はラスターイメージデータとしてデバイスＩ／Ｆ２０２０を介してコントローラユニット２０００に取込まれる。読取対象の原稿は原稿フィーダ２０７２のトレイ２０７３にセットすることになる。そして、使用者が操作部２０１２から読み取り起動指示することにより、コントローラユニット２０００のＣＰＵ２００１が、スキャナ２０７０に指示を与えることで、フィーダ２０７２は原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００４１】
画像出力デバイスであるプリンタ部２０９５は、電気的なラスターイメージデータ２０９６を用紙上に可視画像を形成する。その画像形成方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、ＣＰＵ２００１からの指示２０９６によって開始する。プリンタ部２０９５には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット２１０１、２１０２、２１０３、２１０４が設けられている。また、排紙トレイ２１１１は印字し終わった用紙を受けるものである。
【００４２】
図５はネットワークデバイスのソフトウェア構成図である。同図は、ネットワークデバイスに電源を投入し、ＣＰＵ２００１がＨＤＤ２００４からＲＡＭ２００２にロードした際の各種ソフトウェアの関係を示すものである。
【００４３】
図中、１５０１はＵＩ即ちユーザインターフェイスを司るものであり、オペレータが本ネットワークデバイスの各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータの操作に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。
【００４４】
１５０２はAddress-Book即ちデータの送付先、通信先等を管理するデータベースモジュールである。Address-Bookの内容は、ＵＩ１５０１からの操作情報によりデータの追加、削除、取得が行われ、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与えるものとして使用されるものである。このAddress-Bookには、宛先の情報と対応付けてその宛先に送信する際のデータの形式、及び送信可能な画像の形態、解像度の情報等が記憶されている。
【００４５】
１５０３はWeb-Serverモジュールであり、ネットワーク上のＷｅｂクライアントからの要求により、本画像処理装置の管理情報を通知するために使用される。管理情報は、後述のControll-API１５１８を介して読み取られ、後述のHTTPモジュール１５１２、TCP/IPモジュール１５１６、Network−Driver１５１７を介してWebクライアントに通知される。WSDコンポーネントは本ブロック内に属し、HTTP/SOAPを使用してデバイス情報の送受信を行う。
【００４６】
１５０４はUniversal-Sendモジュール、即ち、各種データの配信を司るモジュールであり、ＵＩ１５０１によりオペレータに指示されたデータを、同様に指示された通信（出力）先に配布するものである。また、オペレータにより、本画像処理装置のスキャナ機能を使用し配布データの生成が指示された場合は、後述のControll-API１５１８を介して機器を動作させ、データの生成を行う。
【００４７】
１５０５はプリンタモジュールであり、Universal-Sendモジュール１５０４内で出力先にプリンタが指定された際に実行されるモジュールである。１５０６はE-mailモジュールであり、Universal-Sendモジュール１５０４内で通信先にE-mailアドレスが指定された際に実行されるモジュールである。１５０７はデータベースモジュールであり、Universal-Send１５０４内で出力先にデータベースが指定された際に実行されるモジュールである。
【００４８】
１５０８はDPモジュールであり、Universal-Sendモジュール１５０４内で出力先に本画像処理装置と同機能を持った装置が指定された際に実行されるモジュールである。１５０９はRemote-Copy-Scanモジュールであり、本画像処理装置のスキャナ機能を使用し、ネットワーク等で接続された他の装置を出力先とし、本画像処理装置単体で実現しているCopy機能と同等の処理を行うモジュールである。１５１０はRemote-Copy-Printモジュールであり、本画像処理装置のプリンタ機能を使用し、ネットワーク等で接続された他の装置を入力先とし、本画像処理装置単体で実現しているCopy機能と同等の処理を行うモジュールである。
【００４９】
１５１１はWeb-Pull-Printモジュール即ちインターネットまたはイントラネット上の各種ホームページの情報を読み出し、印刷するモジュールである。１５１２は本画像処理装置がHTTPにより通信する際に使用されるモジュールであり、後述のTCP/IP１５１６モジュールにより前述のWeb-Server１５０３、Web-Pull-Print１５１１モジュールに通信を提供するものである。１５１３はlprモジュールであり、後述のTCP/IP１５１６モジュールにより前述のUniversal-Sendモジュール１５０４内のプリンタモジュール１５０５にlprによる通信を提供するものである。
【００５０】
１５１４はSMTPモジュールであり、後述のTCP/IP１５１６モジュールにより前述のUniversal-Sendモジュール１５０４内のE-mailモジュール１５０６にSMTPによる通信を提供するものである。
【００５１】
１５１５はSLM即ちSalutation-Managerモジュールであり、後述のTCP/IP１５１６モジュールにより前述のUniversal-Sendモジュール１５０４内のデータベースモジュール１５１７、DPモジュール１５１８、及びRemote-Copy-Scan１５０９モジュール、Remote-Copy-Print１５１０モジュールにsalutationアーキテクチャによる通信を提供するものである。
【００５２】
１５１６はTCP/IP通信モジュールであり、前述の各種モジュールに後述のNetwork-DriverによりTCP/IPに準拠したネットワーク通信を提供するものである。１５１７はネットワークドライバであり、ネットワークに物理的に接続される部分を制御するものである。１５１８はControll-APIであり、Universal-Sendモジュール１５０４等の上流モジュールに対し、後述のJob-Manager１５１９等の下流モジュールとのインターフェイスを提供するものであり、上流、及び下流のモジュール間の依存関係を軽減しそれぞれの流用性を高めるものである。
【００５３】
１５１９はJob-Managerであり、前述の各種モジュールよりControll-API１５１８を介して指示される処理内容を解釈し、後述の各モジュールに指示を与えるものである。また、本モジュールは、本画像処理装置内で実行されるハード的な処理を一元管理するものである。
【００５４】
１５２０はCODEC-Managerであり、Job-Manager１５１９が指示する処理の中でデータの各種圧縮・伸長を管理・制御するものである。
【００５５】
１５２１はFBE-Encoderであり、Job-Manager１５１９、Scan-Manager１５２４により実行されるスキャン処理により読み込まれたデータをFBEフォーマットにより圧縮するものである。１５２２はJPEG-CODECであり、Job-Manager１５１９、Scan-Manager１５２４により実行される読取スキャン処理、及びPrint-Manager１５２６により実行される印刷処理において、読み込まれたデータのJPEG圧縮及び印刷データのJPEG展開処理を行うものである。１５２３はMMR-CODECであり、Job-Manager１５１９、Scan-Manager１５２４により実行される読取スキャン処理、及びPrint-Manager１５２６により実行される印刷処理において、読み込まれたデータのMMR圧縮及び印刷データのMMR伸長処理を行うものである。
【００５６】
１５２４はScan-Managerであり、Job-Manager１５１９が指示する読取スキャン処理を管理・制御するものである。１５２５はSCSIドライバであり、Scan-Manager１５２４と本画像処理装置が内部的に接続しているスキャナ部との通信を行うものである。
【００５７】
１５２６はPrint-Managerであり、Job-Manager１５１９が指示する印刷処理を管理・制御するものである。１５２７はEngine-I/Fドライバであり、Print-Manager１５２６と印刷部とのI/Fを提供するものである。
【００５８】
１５２８はパラレルポートドライバであり、Web-Pull−Printモジュール１５１１がパラレルポートを介して図外の出力機器にデータを出力する際のI/Fを提供するものである。
【００５９】
なお、上記のものは、使用すべき装置に必要なもののみ設定し、利用することも可能である。
【００６０】
［クライアント（ＰＣ）の構成］
図１には、複数のクライアントが示されている。図６はその１つのクライアントのブロック構成図である。他のクライアントも同様の構成であるものとする。
【００６１】
図中、１０１は、クライアント１００の装置全体の制御を司るＣＰＵであり、１０２はＢＩＯＳやブートプログラムを格納しているＲＯＭである。１０３はＣＰＵ１０１のワークエリアとして使用されるＲＡＭであり、ＯＳ並びに各種ドライバ、アプリケーションもこのＲＡＭにロードされて実行されることになる。１０４はシステムバスである。１０５はキーボードコントローラであって、キーボード１０９ａ、マウス等のポインティングデバイス１０９ｂを接続する。１０６はＣＲＴコントローラ（ＣＲＴＣ）であり、内部にはビデオメモリと、そのビデオメモリへの描画処理、並びに、ビデオメモリから読出し映像信号として外部（ＣＲＴ１１０）に出力するビデオコントローラが内蔵されている。１０７はディスクコントローラであり、ＨＤＤ（ハードディスクドライブ）１１１、ＦＤＤ（フレキシブルディスクドライブ）のアクセスを制御する。ＨＤＤ１１１には、ＯＳ（オペレーティングシステム）、実施形態における管理クライアントアプリケーションプログラムが格納されている。なお、このＨＤＤ１１１には、上記以外にも文書編集用のアプリケーションや、各アプリケーションで作成されたファイルも格納されることになる。１０８はＮＩＣ（ネットワークインタフェースカード）であり、本クライアントの装置をネットワークと接続するためのものである。
【００６２】
上記構成において、クライアントの電源をＯＮにすると、ＣＰＵ１０１はＲＯＭ１０２のプログラムを実行し、ＨＤＤ１１１からＲＡＭ１０３にＯＳをロードし、ネットワークに接続されたクライアントとして機能する。この際、管理クライアントプログラム（詳細後述）もＲＡＭ１０３にロードし、ＲＡＭ１０３に常駐させる。この後、ユーザは必要に応じて各種アプリケーションを起動し、編集や印刷と行った作業を行なうことになる。
【００６３】
［管理サーバ１の構成］
図７は実施形態における管理サーバ５００のブロック構成図である。基本的に、この管理サーバ５００はクライアント１００と同様にＰＣで構築されるので、ハードウェア構成は図６と実質的に同じである。すなわち、図７における符号５０１乃至５１２は、図６の符号１０１乃至１１２に対応する。ただし、管理サーバ５００は、サーバとして機能するためのＯＳ、並びに、ネットワーク上のクライアント及びネットワークデバイスの管理を行なうための管理サーバプログラム５５０を実行する。これらＯＳ、及び管理サーバプログラム５５０はＨＤＤ５１１に格納されていて、装置の電源が投入されると、これらプログラムがＲＡＭ５０２にロードされ実行されることになる。なお、ＨＤＤ５１１内のデータベース５６０は管理サーバプログラム５５０を実行中にアクセスするためのデータベース（ＤＢ）群である。
【００６４】
図８は、管理サーバ５００の管理サーバプログラム５５０を実行中のソフトウェアのモジュール構成図である。本管理サーバプログラム５５０は、複数のＷｅｂ  ＵＩを持つＵＩプラグイン及びロジック部であるプラグインプロセスから構成される。
【００６５】
デバイス探索プラグインは、ネットワーク上にあるデバイスを探索する。ＷＳＤで規定されたＨｅｌｌｏメッセージの受信、Ｍｅｔａｄａｔａの送受信は探索プラグインが行う。プラグアンドプレイされたデバイスの情報は、データベースに格納されるとともに他のプラグインへ通知される。デバイス管理プラグインは、デバイスのネットワーク情報、機器情報を取得、設定するプラグインである。アドレス帳配信プラグインは、FAXの宛先情報を持つアドレス帳を管理、配信するプラグインである。カラーリソース配信プラグインは、デバイスにダウンロードするカラープロファイルを管理、配信するプラグインである。フォント・フォーム配信プラグインは、デバイスにダウンロードするフォント・フォームを管理、配信するプラグインである。Eメンテプラグインは、eメンテナンスサービスを行うプラグインである。デバイスから消耗品情報のログを取得して、販売会社に情報を送信する。その情報に基づき販売会社はメンテナンスサービスを行う。ドライバ配信プラグインは、ドライバをクライアントに配信するプラグインである。
【００６６】
本デバイス管理ソフトウェアは、複数のデバイスに対して一括してデバイスの設定等を行うために、複数のデバイスをデバイスグループに登録して管理を行う。また、クライアントも同様に管理し、クライアントグループを作成し複数のクライアントの管理を行う。これらのデバイスのグループ情報、クライアントのグループ情報はデータベース５５１に格納される。また、デバイスの資産管理番号もデータベースに格納される。
【００６７】
以上実施形態におけるネットワークデバイス、クライアント、及び、管理サーバについて説明した。次に、実施形態におけるネットワークの処理の例を説明する。
【００６８】
＜管理サーバの説明＞
［グループ化の説明］
実施形態における管理サーバ５００は、図１を参照して説明したように、ネットワーク上の各クライアント、各ネットワークデバイスをそれぞれいずれかのグループに属するようにして管理する。そこで先ず、このグループ化について説明する。
【００６９】
図９は実施形態における管理サーバ５００のＤＢ５６０の構造を示している。ＤＢ５６０は、クライアントＤＢ５６１、ネットワークデバイスＤＢ５６２、グループ化ＤＢ５６３、シナリオＤＢ５６４、デバイスドライバＤＢ５６５、及び、デバイス設定情報ＤＢ５６６を含んでいる。
【００７０】
このうち、デバイスドライバＤＢ５６５は、ネットワークデバイスを各クライアントが利用する際に必要なデバイスドライバ（プリンタドライバ等）を記憶しているデータベースであるので、その詳述は不要であろう。なお、各ネットワークデバイスのメーカは適当にデバイスドライバのバージョンアップを行なっている。従って、ＩＴ管理者は適当なタイミングで最新バージョンのデバイスドライバを、該当するサイトからダウンロードし、ネットワークデバイスと対応づけて、このデバイスドライバＤＢ５６５に格納する処理を行なうことになる。
【００７１】
デバイス設定情報５６６は、次の通りである。
【００７２】
先に説明したように、実施形態におけるネットワークデバイスは、複合機であり、且つ、拡張ボード（カード）を装着することで、その拡張ボードに従った機能を追加することができる。ＦＡＸボードがその代表例である。ＦＡＸボードを追加すると、それを搭載したネットワークデバイスを利用するクライアントが、ＦＡＸボードを利用したＦＡＸ送信用のドライバがインストールされるが、同一部署では、同じアドレス帳を利用することが多い。そこで、このアドレス帳を対象となるクライアントグループに用意しておき、必要に応じて該当するネットワークデバイスにダウンロードし、登録させる。デバイス設定ＤＢ５６６は、このようなネットワークデバイスに対してクライアントグループ毎に特有の情報を設定するための情報を記憶する。なお、ここでは、拡張ボードの追加した場合の説明を行なったが、例えば製品デザインをメインとする部署では、印刷色が意図した通りになることが望まれる。従って、そのようなクライアントグループが利用するネットワークデバイスに対しては、カラープロファイルをダウンロードさせる必要がある。このデバイス設定ＤＢ５６６には、このようなカラープロファイルも含まれる。
【００７３】
さて、クライアントＤＢ５６１は、ネットワーク上に存在するクライアント（ＰＣ）を管理するデータベースである。この管理サーバ５００内では、各クライアントを特定するため、それぞれユニークな識別番号ＣｌｉｅｎｔＩＤ番号で管理する。各クライアントに関する情報には、そのクライアント端末のネットワーク上の名前（ＰＣＮａｍｅ）、ネットワークカードのＭＡＣアドレス（Media Access Control Address; ＭａｃＡｄｄｒｅｓｓ）、ＩＰアドレス（ＩＰＡｄｄｒｅｓｓ）、及び、ネットワークにログインするログインユーザ名のフィールドが設けられている。また、クライアントがどこのクライアントグループに属しているか示す情報（ＣＧｒｏｕｐＩＤ）のフィールドも設けられている。クライアントを新規に登録した際には、ＣＧｒｏｕｐＩＤは空白（ｎｕｌｌ）であるが、ＩＴ管理者の操作で適当なクライアントグループに属するように設定すると、そのクライアントグループを特定する情報がこのＣＧｒｏｕｐＩＰに格納されることになる。
【００７４】
ネットワークデバイスＤＢ５６２は、ネットワーク上に存在するネットワークデバイスを管理するデータベースである。各ネットワークデバイスは、クライアントと同様、それぞれを特定するため、それぞれユニークな識別番号ＤｅｖｉｃｅＩＤ番号で管理する。各ネットワークデバイスに関する情報は、そのデバイスを分かりやすくするため、例えば「総務部の田中氏の脇のプリンタ」等の名前（ＤｅｖｉｃｅＮａｍｅ）、そのネットワークデバイスの製品名（ＰｒｏｄｕｃｔＮａｍｅ）、ＭＡＣアドレス（ＭａｃＡｄｄｒｅｓｓ）、ＩＰアドレス（ＩＰＡｄｄｒｅｓｓ）、及び、その所在情報（Ｌｏｃａｔｉｏｎ；フロア番号や部屋番号、部門を示す情報等の文字列）、ｅメンテナンス対象とするか否かの情報（ＥｎａｂｌｅＥｍａｉｎｔｅ）、資産管理番号（ＡｓｓｅｔＮｕｍｂｅｒ）、及び、印刷色がカラーかモノクロかを示す情報（Ｃｏｌｏｒ）の各フィールドが含まれている。また、そのデバイスがどこのデバイスグループに属しているか示す情報（ＤＧｒｏｕｐＩＤ）のフィールドも設けられている。ネットワークデバイスを新規に登録した際には、ＤＧｒｏｕｐＩＤは空白（ｎｕｌｌ）であるが、ＩＴ管理者の操作で適当なデバイスグループに属するように設定すると、そのデバイスグループを特定する情報がこのＤＧｒｏｕｐＩＰに格納されることになる。
【００７５】
ネットワークに新規にクライアントを設置する場合、ＩＴ管理者は管理サーバ５００を操作し、上記の各フィールドに入力する情報をキー入力し、クライアントＤＢ５６１に登録することになる。新規にネットワークデバイスを登録する場合にも、同様にしてネットワークデバイスＤＢ５６２に登録することになる。
【００７６】
次にグループＤＢ５６３について説明する。
【００７７】
図１０はグループＤＢの構造を示している。グループＤＢ５６３はクライアントグループＤＢ９０と、デバイスグループＤＢ９１の２つのＤＢで構成される。１つのクライアントグループは、そのクライアントグループを一意に特定するためのクライアントグループ識別情報（ＣＧｒｏｕｐＩＤ）で管理される。また、１つのデバイスグループも、そのデバイスグループを一意に特定するためのデバイスグループ識別情報（ＤＧｒｏｕｐＩＤ）で管理されている。
【００７８】
また、それぞれのグループは、ＩＴ管理者が容易にそのグループを識別できるようにするためのグループ名（ＧｒｏｕｐＮａｍｅ）を備える。このグループ名は、例えば「特許部￥特許第１課」や、「７Ｆ￥７１０号室」等のように、区切り子（デリミタ文字「￥」）で階層構造に記述することができる。エンタープライズ（大企業）等のように、多数の部署や部屋があっても、それらを効率良く管理することを可能にしている。
【００７９】
クライアントグループとデバイスグループとの関連付けは、それぞれが相手方のグループ識別情報（ＤＧｒｏｕｐＩＤ、ＣＧｒｏｕｐＩＤ）を格納することで行われる。
【００８０】
また、クライアントグループに属する各クライアント識別情報（ＣｌｉｅｎｔＩＤ；クライアントＤＢ参照）は、図示のＭｅｍｂｅｒＩＤ１、ＭｅｍｂｅｒＩＤ２、…に格納される。これにより、クライアントグループＤＢからもそれに属するクライアント群を特定できるようになっている。これは、デバイスグループについても同様である。
【００８１】
なお、クライアントグループ（或いは、デバイスグループも同様）を新規に作成した場合には、関連づけるデバイスグループは不明であるので、その関連づけ操作をＩＴ管理者が行なうことになる。
【００８２】
図１１、図１２は、実施形態における管理サーバ５００における管理サーバプログラム５５０の設定ウインドウ１０００を示している。
【００８３】
この設定ウインドウ１０００は、クライアントグループとデバイスグループの両方に関して各種設定するため、図示のようにタブ形式になっている。図１１はタブ「クライアントグループ」がアクティブになっている状態、図１２はタブ「デバイスグループ」がアクティブになっている状態を示している。これらいずれのタブをアクティブするかは、ポインティングデバイスに連動し表示されるカーソルを、該当するタブに移動させ、ポインティングデバイスに備えられたスイッチを操作することで行われる。以下、この一連の操作を単にクリックという。また、図１２における符号１０２２乃至１０３０は、図１１の符号１００２乃至１０１０と実質的に同じ機能を示している。異なる点は、図１１はクライアントに関するタブスクリーンであり、各ボタンはクライアントもしくはクライアントグループに対する処理ボタンであるのに対し、図１２はデバイスに関するタブスクリーンであり、各ボタンはデバイスもしくはデバイスグループに対する処理ボタンである点である。従って、以下では、図１１のクライアントグループに対するタブスクリーンに従って説明する。デバイスグループについては、以下に説明する「クライアント」を「デバイス」と読み替え、「デバイス」を「クライアント」として読み替えられたい。
【００８４】
１００２は、クライアントグループの一覧を表示するクライアントグループ表示エリアであって、先に説明したようにグループＤＢのグループ名（ＧｒｏｕｐＮａｍｅ；図１０参照）の区切り子「￥」による階層構造で表示している。
【００８５】
図示で「特許部」の左側の「記号「−」は、特許部の直下の階層が全て展開されたことを示している。また、この記号「−」は、この記号位置に、ポインティングデバイスに連動するカーソルで移動しポインティングデバイスに設けられたボタンを押下すると、直下の階層表示を止めることも意味する。「総務部」の左側の記号「＋」は「総務部」の直下に階層があることを示すと共に、それがクリックされた場合に、その直下の階層を表示することを示している。
【００８６】
また、いずれのグループにも属していないクライアントは、「グループ未登録クライアント」１００２ａの層に配置される。
【００８７】
また、マーク１００２ｂは、そのクライアントグループには、既にデバイスグループが関連づけられていることを示している。図９で言えば、クライアントグループデータ中のフィールドＤＧｒｏｕｐＩＤには、デバイスグループ識別情報が格納されている場合に相当する。マーク１００２ｃは、そのクライアントグループには、未だデバイスグループが関連づけられていないことを示している。新規にクライアントグループを作成した場合がこれに該当するが、デバイスグループとの関連づけを解除した場合も同様である。
【００８８】
なお、クライアントグループ表示エリア１００２において「特許部￥特許第１課」は、現在選択中であることを示すためハイライト表示されている。この選択は、該当するグループ名をクリックすることで行われる。
【００８９】
１００３は、選択中のグループ（図示の場合にはグループ名「特許部￥第１課」）に含まれるクライアント一覧を表示すクライアント表示エリアである。
【００９０】
１００４は選択中のクライアントグループにデバイスグループを関連づけを指示するための関連づけボタンである。なお、選択中のクライアントグループが既にデバイスグループと関連づけられている場合には、この関連づけボタン１００４は機能しない。
【００９１】
例えば、図１１においては、クライアントグループ「特許部￥第３課」が選択状態にし、この関連づけボタン１００４をクリックすると、図１３に示すようなウインドウが表示される。ＩＴ管理者はクライアントグループに関連づけていないデバイスグループの１つを選択し、ＯＫボタンをクリックすることで、クライアントグループとデバイスグループとの関連づけがなされる。図１３の場合には、デバイスグループ「２Ｆ￥１０２号室」が選択されているので、結局の所、クライアントグループ「特許部￥第３課」とデバイスグループ「２Ｆ￥１０２号室」とが互いに関連づけられることになる。
【００９２】
１００５は選択中のクライアントグループに対して、デバイスグループを関連づけを解除の指示するための関連づけ解除ボタンである。選択中のクライアントグループが未だ関連づけしていない場合には、この関連づけ解除ボタン１００５は機能しない。
【００９３】
１００６は新規にクライアントグループの作成を指示するボタンである。このクライアント作成ボタン１０６がクリックされると、図９に示したクライアントグループの各フィールドに情報を入力するための登録ウインドウ（不図示）を表示される。そして、その登録ウインドウにて登録指示を与えることで、クライアントグループの登録が行われ、クライアントグループ表示エリア１００２も更新される。
【００９４】
１００７はクライアントグループを削除するボタンである。このグループ削除ボタン１００７がクリックされた場合、選択中のクライアントグループが削除される。もし、そのクライアントグループに関連づけられたデバイスグループが存在した場合には、そのデバイスグループの関連づけも解除する。
【００９５】
１００８は新規にクライアントを作成するボタンである。このクライアント作成ボタン１００８をクリックすると、クライアントＤＢ（図９参照）に新規に登録するためのウインドウが表示され、ＩＴ管理者は必要項目にキー入力して登録することになる。
【００９６】
１００９は、クライアントの削除を指示するボタンである。クライアント表示エリア１００３中の所望とするクライアントを選択、或いは、クライアントグループ表示エリア１００２の表示された「グループ未登録クライアント」中の所望とするクライアントを選択した状態で、この削除ボタン１００９をクリックすると、該当するクライアントはクライアントＤＢから削除される。
【００９７】
１０１０は選択中のクライアントグループに対し、デバイスドライバＤＢ５６５に格納されたデバイスドライバのインストールに関するシナリオの作成、編集を行なうためのボタンである。なお、図１２におけるデバイスグループのタブスクリーンにおけるシナリオ作成＆編集ボタン１０３０は、ネットワークデバイスグループに対し、デバイス設定情報ＤＢ内の情報のダウンロードに関するシナリオの作成、編集を行なうためのボタンである。これらボタン１０１０、及び１０３０によって設定されたシナリオ情報はシナリオＤＢ５６４に格納・管理されることになるが、その詳細について後述する。
【００９８】
さて、いずれのグループにも属していないクライアントを、所望とするクライアントグループに追加させる場合、ＩＴ管理者はドラッグ操作を行なう。このドラッグ操作とは、対象となるアイテムの位置にカーソルを移動し、ポインティングデバイスのスイッチ（ボタンでも良い）を押下した状態のまま、別の所望とする位置にカーソルを移動し後、ポインティングデバイスのスイッチの押下を解除する操作を言う。
【００９９】
図１１の場合には、クライアントグループを選択した後、「グループ未登録クライアント」中の所望とするクライアント名を、クライアント表示エリア１００３内にドラッグ操作を行なう。この結果、選択したクライアントが選択中のクライアントグループのメンバとして登録される。逆に、クライアント表示エリア１００３に表示されたクライアントを、「グループ未登録クライアント」の位置にドラッグすることで、そのクライアントを該当するクライアントグループから除籍させることも可能である。また同様のドラッグ操作によって、或るクライアントグループに属しているクライアントを別のグループに移動することもできる。
【０１００】
以上、クライアントグループのタブスクリーンについて説明したが、図１２のデバイスグループのタブスクリーンにおける操作方法も実質的に図１１と同様であるので、その詳述は省略する。
【０１０１】
上記管理サーバ５００のＧＵＩに関する処理は、図１４のフローチャートに従って行われる。この処理は、管理サーバ５００のＣＰＵ５０１によって実行されるものである。
【０１０２】
先ず、ＩＴ管理者より、管理サーバプログラム５５０の１つである設定アプリケーションを起動の指示が与えられると、ステップＳ１において図１１又は図１２のウインドウを表示する。次いで、ステップＳ２では、タブ「クライアントグループ」、タブ「デバイスグループ」の何れがアクティブになっているかを判断する。タブ「クライアントグループ」がアクティブであると判断した場合には、ステップＳ４に進み、ＩＴ管理者からの指示入力について判別し、ステップＳ５乃至１３のいずれかの処理を行なう。これらの処理は、上記説明から明らかであるので、その説明は省略する。
【０１０３】
なお、ステップＳ２において、タブ「クライアントグループ」が非アクティブであると判断した場合、すなわち、タブ「デバイスグループ」がアクティブになっていると判断した場合には、ステップＳ３に進む。このステップＳ３の処理は、処理対象がデバイス、或いはデバイスグループに関する以外は、ステップＳ４乃至Ｓ１３と同じであるので、その詳細についても省略する。
【０１０４】
＜クライアントグループのドライバセットアップの説明＞
次に、実施形態におけるクライアントグループに対するデバイスドライバのインストール、或いは、デバイスグループ中の特定のネットワークデバイスへの設定情報のダウンロードを行なうまで処理を説明する。
【０１０５】
ネットワークデバイス（実施形態ではプリンタや複合機を例にしている）に電源が投入されると、そのネットワークデバイスはネットワークへの参加を示すＨｅｌｌｏメッセージをブロードキャスト送信する。ネットワーク上の各クライアントには、ネットワークからのメッセージ受信を監視するプログラムが常駐していて、管理サーバ５００からのメッセージのみを応答する処理を行なう。換言すれば、管理サーバ５００以外からのＨｅｌｌｏメッセージ等を受信した場合には、それをＯＳには渡さず（ＯＳへの通知を遮断する）破棄する。従って、管理者は、新規にクライアントをネットワークに接続する場合には、該当するプログラムをインストールする等の作業を行なうことになる。かかる点を踏まえ、実施形態におけるドライバセットアップについて説明する。
【０１０６】
図１５は実施形態における管理サーバ５００とネットワークデバイス２００との通信手順を示している。
【０１０７】
ネットワークデバイス２００に電源が投入されると、そのネットワークからＨｅｌｌｏメッセージがブロードキャスト送信されるので、管理サーバ５００は、これを受信する（ステップＳ２１）。管理サーバ５００は、Ｈｅｌｌｏメッセージの発信元のＩＰアドレスを知ることができる。従って管理サーバ５００は、そのＩＰアドレスのネットワークデバイス２００に対して、デバイスサービス情報取得要求メッセージ（ＧｅｔＭｅｔａｄａｔａメッセージ）をユニキャスト送信し、ネットワークデバイス２００はこれを受信する（ステップＳ２２）。
【０１０８】
ネットワークデバイス２００は、この要求メッセージのＩＰアドレスから要求元（管理サーバ５００）を知ることができる。そして、その要求に応答する情報を作成し（ステップＳ２３）、デバイスサービス情報として管理サーバ５００にユニキャスト送信する（ステップＳ２４）。
【０１０９】
上記の処理を行なうことで、管理サーバ５００は、Ｈｅｌｌｏメッセージを発信したネットワークデバイスのＩＰアドレス、並びに、ネットワークデバイスの構成（新規に拡張ボード（ＦＡＸボード等）が追加されたのかどうか等）を知ることができる。
【０１１０】
従って、管理サーバ５００は、Ｈｅｌｌｏメッセージを発行したネットワークデバイスがどのデバイスグループに属しているのかをネットワークデバイスＤＢ５６２を検索し、関連づけられたクライアントグループを特定する。そして、その特定されたクライアントグループのメンバである各クライアントに対して、ドライバインストール要求メッセージを送信する。また、ネットワークデバイス２００に、新規に機能拡張ボード（ＦＡＸボード）が装着されると、その機能拡張に合わせてデバイスドライバのインストール要求も行なうことになる。また、場合によっては、ネットワークデバイスがＦＡＸボード等を装着した場合や、ネットワークデバイスが新規購入したカラー複合機である場合、ＦＡＸ送信のアドレス帳や、カラーマッチングのためのカラープロファイルをそのデバイスにダウンロードする。
【０１１１】
上記ドライバインストール要求メッセージや、ネットワークデバイスへの各種情報のダウンロードのタイミングは、該当するクライアントグループやデバイスグループに対して設定されたシナリオに従う。この処理を示すが、図示のステップＳ２５である。
【０１１２】
ここで、実施形態における各クライアントの処理を図１６のフローチャートに従って説明する。同図のフローチャートに対応するプログラムは、ネットワークからのメッセージの受信を監視するプログラムであって、ＯＳが起動した際にメモリ（ＲＡＭ）に常駐するプログラムでもある。
【０１１３】
ステップＳ３１では、ネットワークからの受信があったか否かを判断する。否の場合には、これ以降の処理には進まない。
【０１１４】
ネットワークから何らかの受信があったと判断した場合、処理はステップＳ３２に進み、ネットワークデバイスからのＨｅｌｌｏメッセージであるか否かを判断する。ネットワークデバイスからのＨｅｌｌｏメッセージであると判断した場合にはステップＳ３１に戻る。従って、Ｈｅｌｌｏメッセージ受信に対しては無応答とすることができる。
【０１１５】
受信したメッセージがＨｅｌｌｏメッセージではないと判断した場合には、ステップＳ３３に進み、管理サーバ５００からのドライバインストール要求であるか否かを判断する。管理サーバ５００以外からのメッセージであると判断した場合には、ステップＳ３４に進み、通常の受信処理を行なうため、受信した情報をＯＳに与える。この結果、クライアントがＷｅｂブラウザを利用した閲覧、メール受信、更には、ネットワーク上のファイルサーバ等に対するアクセスすることを可能にしている。
【０１１６】
さて、管理サーバ５００からのドライバインストール要求であると判断した場合、処理はステップＳ３５に進み、要求されたデバイスドライバはＯＳにインストールされているか否かを判断する。
【０１１７】
なお、管理サーバ５００からのドライバインストール要求メッセージには、該当するドライバ名、ドライバのバージョン、ドライバプログラムファイル、ネットワークデバイス名、該当するネットワークデバイスのＩＰアドレスが含まれるものとする。
【０１１８】
ステップＳ３５では、かかる情報に基づき判断する。要求されたデバイスドライバが未インストール状態であると判断した場合には、ステップＳ３６に進んで、ドライバインストールのセットアップ処理を開始する。
【０１１９】
また、ステップＳ３５において、要求されたデバイスドライバが既にＯＳにインストール済みであると判断した場合には、ステップＳ３７に進む。ここでは、既にインストールされているデバイスドライバのバージョンと、管理サーバ５００から要求されたデバイスドライバのバージョンとを比較し、要求されたデバイスドライバのバージョンが新しいか否かを判断する。要求されたデバイスドライバの方が新しいと判断した場合には、ステップＳ３８に進んで、インストールされているデバイスドライバを更新する。また、インストール済みのドライバのバージョンの方が、要求されたデバイスドライバより新しいか、同じである場合には、ドライバの更新は行なわない。
【０１２０】
従って、ドライバのバージョンアップがなく、終業時にネットワークデバイスの電源をＯＦＦにし、始業時に電源をＯＮにするような場合には、各クライアントは実質的に何もしないことになる。
【０１２１】
次に、実施形態における管理サーバ５００がネットワークからＨｅｌｌｏメッセージを受信した場合の処理プログラムの処理手順を、図１７のフローチャートに従って説明する。
【０１２２】
先ず、ステップＳ５１において、ネットワークからＨｅｌｌｏメッセージを受信したか否かを判断する。ＨｅｌｌｏメッセージはＸＭＬ形式のテキストデータであり、その記述例は図１８に示すものである。
【０１２３】
Ｈｅｌｌｏメッセージを受信した場合、その発信元のネットワークデバイスに電源がＯＮになった等の理由で、ネットワークに接続されたことを示すので、ステップＳ５２に進み、デバイスサービス情報を要求するため、図１９に示すようなＸＭＬ形式のＧｅｔＭｅｔｅｄａｔａＥｘｃｈａｎｇｅメッセージを生成し、発信元のネットワークデバイスのＩＰアドレスに向けて送信（ユニキャスト）する。
【０１２４】
この結果、該当するネットワークデバイスから、そのデバイスサービス情報は送信されるので、ステップＳ５３にてそれを受信する。このとき受信するデバイスサービス情報もＸＭＬ形式のテキストデータであり、その記述例を示すのであれば図２０に示す通りである。
【０１２５】
以上の結果、Ｈｅｌｌｏメッセージを送信元のネットワークデバイスのＩＰアドレス、並びに、そのネットワークデバイスの構成情報を得ることができるようになる。
【０１２６】
次いで、ステップＳ５４に進み、Ｈｅｌｌｏメッセージの発行元のネットワークデバイスのＩＰアドレスをキーにし、ネットワークデバイスＤＢ５６２を検索することで、そのネットワークデバイスが属するデバイスグループを特定する。
【０１２７】
デバイスグループが特定できると、そのデバイスグループに関連づけられたクライアントグループも特定できることになる。そこで、ステップＳ５６では、そのクライアントグループに属している各クライアントに対し、デバイスドライバのセットアップ要求メッセージを送信する。この送信処理は、該当するクライアントグループに対して設定したシナリオに従って行われる（詳細後述）。
【０１２８】
次に、ステップＳ５７に進み、Ｈｅｌｌｏメッセージの発信元のネットワークデバイスに対して、以前の構成（ネットワークデバイスＤＢに、別途、最新の構成を格納するものとする）に、何らかの構成が追加されたか否かを判断する。また、以前の構成に関する情報が存在しない場合、つまり、新規ネットワークデバイスをネットワークに接続した場合も、変化有りと判断する。
【０１２９】
変化有りと判断した場合には、ステップＳ５８に進み、該当するネットワークデバイスに対して設定されたシナリオに従った処理を行なう（詳細後述）。
【０１３０】
上記の処理におけるステップＳ５６、Ｓ５８の処理を説明する前に、実施形態におけるシナリオの設定について説明する。このシナリオは、シナリオＤＢ５６４に格納されるものであるが、そのシナリオＤＢ５６４に格納する際に、ＩＴ管理者が指示することで実行されるプログラムのＧＵＩの例を図２１、図２２に示す。図２１はクライアントグループに対するシナリオ設定ウインドウ１１００を示し、図２２はデバイスに対するシナリオ設定ウインドウ１２００を示している。
【０１３１】
例えば、ＩＴ管理者はクライアントシナリオ設定ウインドウ１１００にて、コンボボックス１１０１をポインティングデバイスで指定することで、所望とするクライアントグループを選択する。そして、選択エリア１１０２の中の、「すぐ実行する」、「指定した日時に実行する」、「デバイスがＰｎＰしたときに実行する」のいずれか１つのラジオボタンをクリックすることで選択する。なお、実施形態では、コンボボックス、ラジオボタンの例を示しているが、図示はその一例であり、如何なるＧＵＩでも構わない。また、設定内容で決定する場合には、ＯＫボタンをクリックする。
【０１３２】
「すぐ実行する」の意味は、選択中のクライアントグループに属する各クライアントに対し、そのクライアントグループに関連づけられたデバイスグループに属する各ネットワークデバイス用のデバイスドライバのインストール要求を発信することを意味する。また、この場合、ネットワークデバイスの電源がＯＮになっているか否かは問わない。
【０１３３】
これは、新規にクライアント（ＰＣ）を幾つも設置し、且つ、それらに対して、使用するネットワークデバイスのデバイスドライバをインストールする場合と考えると分かりやすい。一度の操作で、対象となるクライアントグループに属する全クライアントに対し、使用可能な全ネットワークデバイスのインストールが行なえることになるので、ＩＴ管理者の負担は軽減させることが可能である。
【０１３４】
「指定した日時に実行する」、「デバイスがＰｎＰしたときに実行する」は、先のステップＳ５６に関連するものである。
【０１３５】
「指定した日時に実行する」は、例えば、クライアントＰＣのユーザの業務の妨げにならないように、例えば深夜とか、休業日を指定することで、無人状態でデバイスドライバのインストールを行なうためのものである。勿論、クライアントには電源が投入されている必要がある。
【０１３６】
「デバイスがＰｎＰしたときに実行する」は、ネットワークデバイスがＨｅｌｌｏメッセージを発信した際に、即座に、そのネットワークデバイスに対するデバイスドライバのインストール要求を該当するクライアントグループに属する各クライアントに発信するためのものである。従って、通常は、これが選択されることになる。
【０１３７】
一方、同一デバイスグループに属する各ネットワークデバイスには、カラー印刷、モノクロ印刷の違いや、ＦＡＸボード等の拡張ボードを装填可能なもの、そうでないもの等多種多様であるので、個々のネットワークデバイス毎にシナリオを設定する必要がある。
【０１３８】
そこで、図２２に示すように、デバイスグループを選択するコンボボックス１２０１、選択されたデバイスグループに属する１つのネットワークデバイスを選択するコンボボックス１２０２を設けた。選択エリア１２０３の意味は、図２１の選択エリア１１０２と同じである。
【０１３９】
また、条件エリア１２０４内に表示される選択項目は、選択されたデバイスの機種に応じて変化するものであり、図示の場合には、ＦＡＸボードがオプションとして追加できることを示している。また、この条件エリア１２０４には、その条件に一致する構成の追加があった場合に、設定情報をそのネットワークデバイスに設定（ダウンロード）することを示している。「無条件」は、例えば、最初からＦＡＸボードを装着した状態で、新規ネットワークデバイスを購入した場合に対処するためである。
【０１４０】
コンボボックス１２０５は、該当するネットワークデバイスに設定（ダウンロード）するデバイス情報を選択するためのもので、デバイス設定ＤＢ５６６の中から選択することになる。図示の場合には、ネットワークデバイスに」ＦＡＸボードが追加された場合、そのネットワークデバイスに対して「特許部用アドレス帳（ファクシミリ電話番号帳）」をダウンロードするようにしている例を示している。
【０１４１】
なお、カラー印刷機能を有するネットワークデバイスの場合には、それを利用するクライアントが利用するカラープロファイルを設定しておけば良いことになる。
【０１４２】
以上の設定により、クライアントグループ、及び、デバイスグループにおける個々のネットワークデバイスに対するシナリオ情報を作成し、シナリオＤＢ５６４に登録される。なお、登録したシナリオについては、再度編集することも可能である。
【０１４３】
さて、図１７におけるステップＳ５６の処理を図２３のフローチャートに従って説明する。
【０１４４】
先ず、ステップＳ６１では、注目クライアントグループ（図１７のステップＳ５５で特定されたクライアントグループ）に対するシナリオ情報を、シナリオＤＢ５６４から読み込み、デバイスドライバのセットアップ要求メッセージを発行するタイミングが、ＰｎＰ時か、それとも指定された日時になった時かを判断する。
【０１４５】
ＰｎＰ時であると判断した場合には、ステップＳ６２に進んで、該当するネットワークデバイス用のデバイスドライバセットアップメッセージを作成し、それを注目クライアントグループに属する各クライアントに送信する。
【０１４６】
また、日時が指定されている場合には、ステップＳ６２と同様に、各クライアント毎のデバイスドライバセットアップメッセージを作成すると共に、それを設定された日時になった場合に発行するためのタイマーキューに登録し、本処理を終えることになる。
【０１４７】
なお、図１７のステップＳ５８の処理も、図２３とほぼ同じになる。異なるのは、送信先がネットワークデバイスになる点と、そのネットワークデバイスに向けて設定情報（ＦＡＸアドレス帳やカラープロファイル等）が異なる点である。従って。ステップＳ５８の処理については省略する。
【０１４８】
以上説明した実施形態によると、ＩＴ管理者は、予めネットワーク上の複数のクライアント、複数のネットワークデバイスそれぞれを、部門や物理的な設置位置等に応じて、グループ化させ、且つ、クライアントグループとデバイスグループを関連づけておく。この結果、クライアントグループを構成する各クライアントは、そのグループに関連づけられたデバイスグループ内のネットワークデバイス用のデバイスドライバのみセットアップ処理が実行されることになる。
【０１４９】
つまり、関連づけされていないネットワークデバイスのデバイスドライバがセットアップされることが無くなり、クライアントの有限なメモリを圧迫することも無くなる。また、デバイスドライバのセットアップ処理を行なうタイミングはＩＴ管理者が適宜設定することもできる。従って、例えば多数のクライアントや多数のネットワークデバイスを新規購入した場合等においては、業務に無関係な時間帯を設定しさえすれば、デバイスドライバのセットアップ処理を無人にて行なわせることが可能になる。
【０１５０】
また、実施形態によれば、ネットワークデバイスに対しても、そのネットワークデバイスを利用するクライアント環境に適した設定情報のみが設定できることになり、ネットワークデバイスの有するメモリの使用効率を上げることが可能になる。
【０１５１】
上記を別な言い方にすれば次の通りである。今、クライアントグループＣ１、Ｃ２、Ｃ３、…、デバイスグループＤ１、Ｄ２、Ｄ３が存在する大規模なネットワークについて考察する。本実施形態によると、クライアントグループＣ１とデバイスグループＤ１が関連づけられてると、クライアントグループＣ１に属する各クライアントは、デバイスグループＤ１にのみ属するネットワークデバイス用デバイスドライバのセットアップ処理を行なう。つまり、デバイスドライバのセットアップに関しては言えば、既存の大規模なネットワーク上に、あたかもクライアントグループＣ１とデバイスグループＤ１で構成される論理的な小規模のネットワークを構築することができることを意味する。しかも、デバイスドライバではなく、通常のファイルサーバへのアクセス等に関しては、大規模ネットワークの利点をそのまま活用できることにもなる。
【０１５２】
＜他の実施形態＞
上記実施形態では、管理サーバ５００をＩＴ管理者が直接操作するものとして説明したが、管理サーバ５００がＷｅｂサーバとして機能するのであれば、ＩＴ管理者はネットワーククライアントから管理サーバ５００にアクセスし、Ｗｅｂブラウザを用いて上記各種設定を行なうようにしても構わない。
【０１５３】
また、実施形態では、クライアント、ネットワークデバイスをＩＰアドレスで管理する例を説明したが、例えば、ＤＨＣＰを利用している場合には、ＩＰアドレスは電源が投入される度に、以前とは異なるＩＰアドレスを持つ可能性がある。
【０１５４】
このようなネットワーク環境にあっては、例えば、ネットワークデバイスに対し、ＩＴ管理者が設定した名前、例えば「特許１課プリンタ０１」の文字列を含むＨｅｌｌｏメッセージを発信するように、管理者がそのネットワークデバイスに設定するようにすれば、管理サーバ５００は上記実施形態の処理を遂行することができよう。
【０１５５】
また、実施形態では、Ｈｅｌｌｏメッセージをトリガにして、管理サーバ５００が処理を介する例を説明した。つまり、ネットワークデバイスが電源断から電源投入する場合を前提にして説明した。これは、通常、ネットワークデバイスに拡張ボードを装着する場合には、電源断の状態での作業であるのがその理由である。しかし、昨今、ＵＳＢインタフェースに代表されるインタフェースでは、電源がＯＮの状態でも、外部機器（オプションハードウェア）を接続することが可能になってきている。これに対処する場合には、ネットワークデバイスが、ハードウェアの変更イベント(WS-Event)発生時に、装備情報の変更が通知するようにしても良い。管理サーバは、この通知を受けた場合にも、同様の処理を行なえば良い。
【０１５６】
また、上記説明から明らかなように、本実施形態における特徴的な部分は管理サーバ５００の処理にその特徴がある。管理サーバ５００は、先に説明したように、それ上で実行するアプリケーションプログラムによって実現しているわけであるから、本発明はコンピュータプログラムをその範疇とするのは明らかである。また、通常、コンピュータプログラムは、ＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体に格納されていて、それをコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能になるわけであるから、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇にある。
【図面の簡単な説明】
【０１５７】
【図１】実施形態におけるネットワークシステム構成図である。
【図２】ＵＰｎＰネットワークデバイスの発見からそのデバイスドライバのインストールされるまでの一般的なシーケンスを示す図である。
【図３】実施形態におけるネットワークデバイスのブロック構成図である。
【図４】実施形態におけるネットワークデバイスの外観図である。
【図５】実施形態におけるネットワークデバイスのソフトウェア構成図である。
【図６】実施形態におけるクライアントのブロック構成図である。
【図７】実施形態における管理サーバのブロック構成図である。
【図８】実施形態における管理サーバのソフトウェア構成図である。
【図９】実施形態における管理サーバが管理するデータベースの種類を示す図である。
【図１０】実施形態におけるクライアントグループとデバイスグループのデータ構造と、関連づけを説明するための図である。
【図１１】実施形態における管理サーバにおけるＧＵＩの例を示す図である。
【図１２】実施形態における管理サーバにおけるＧＵＩの例を示す図である。
【図１３】実施形態におけるクライアントグループとデバイスグループの関連づけを設定するためのＧＵＩを示す図である。
【図１４】実施形態における管理サーバの設定操作にかかる処理手順を示すフローチャートである。
【図１５】実施形態におけるネットワークデバイスと管理サーバとの通信のシーケンスを示す図である。
【図１６】実施形態におけるクライアントの処理手順を示すフローチャートである。
【図１７】実施形態における管理サーバの処理手順を示すフローチャートである。
【図１８】ネットワークデバイスが発信するＨｅｌｌｏメッセージの一例を示す図である。
【図１９】管理サーバがネットワークデバイスに要求するデバイスサービス要求メッセージの一例を示す図である。
【図２０】ネットワークデバイスが返信するデバイスサービス情報の一例を示す図である。
【図２１】実施形態における管理サーバにおける、クライアントグループに対するシナリオ作成のためのＧＵＩを示す図である。
【図２２】実施形態における管理サーバにおける、デバイスグループに対するシナリオ作成のためのＧＵＩを示す図である。
【図２３】図１７のステップＳ５６の詳細を示すフローチャートである。
【図１】
0004836237.tif 000002
【図２】
0004836237.tif 000003
【図３】
0004836237.tif 000004
【図４】
0004836237.tif 000005
【図５】
0004836237.tif 000006
【図６】
0004836237.tif 000007
【図７】
0004836237.tif 000008
【図８】
0004836237.tif 000009
【図９】
0004836237.tif 000010
【図１０】
0004836237.tif 000011
【図１１】
0004836237.tif 000012
【図１２】
0004836237.tif 000013
【図１３】
0004836237.tif 000014
【図１４】
0004836237.tif 000015
【図１５】
0004836237.tif 000016
【図１６】
0004836237.tif 000017
【図１７】
0004836237.tif 000018
【図１８】
0004836237.tif 000019
【図１９】
0004836237.tif 000020
【図２０】
0004836237.tif 000021
【図２１】
0004836237.tif 000022
【図２２】
0004836237.tif 000023
【図２３】
0004836237.tif 000024