(57)【要約】【課題】ネットワーク上のクライアントコンピュータが、ネットワークデバイスを利用する際の利便性を向上する。【解決手段】ネットワークに接続されるネットワークデバイスは、第１のインターフェースと要求受信部と応答作成部と応答送信部とを備える。第１のインターフェースは、ネットワークを介してクライアントコンピュータと通信する。要求受信部は、ネットワーク上のクライアントコンピュータから第１のインターフェースを介して、ネットワークデバイスによってクライアントコンピュータに提供される機能またはネットワークデバイスを介してクライアントコンピュータに提供される機能に関する機能情報の送信を要求する機能要求を受信する。応答作成部は、機能要求に応じて機能情報を含む機能応答を作成する。応答送信部は、ネットワーク上のクライアントコンピュータに対して作成された機能応答を送信する。【選択図】図９
2007128215.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されるネットワークデバイスであって、
ネットワークを介して、クライアントコンピュータと通信するための第１のインターフェースと、
前記ネットワーク上のクライアントコンピュータから前記第１のインターフェースを介して、前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能、に関する機能情報の送信を要求する機能要求を受信する要求受信部と、
前記機能要求に応じて、前記機能情報を含む機能応答を作成する応答作成部と、
前記ネットワーク上のクライアントコンピュータに対して前記作成された機能応答を送信する応答送信部と、
を備えるネットワークデバイス。
【請求項２】
請求項１に記載のネットワークデバイスは、さらに、
１または複数の他のデバイスと通信するためのインターフェースであって、前記第１のインターフェースとは異なる第２のインターフェースを備え、
前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能は、前記第２のインターフェースと前記第１のインターフェースを介して、前記他のデバイスにより提供される機能である、ネットワークデバイス。
【請求項３】
請求項２に記載のネットワークデバイスは、さらに、
前記他のデバイスにより提供される機能に関する機能情報を収集する収集部を備え、
前記応答作成部は、前記収集された機能情報を含む機能応答を作成する、ネットワークデバイス。
【請求項４】
請求項２または請求項３に記載のネットワークデバイスにおいて、
前記他のデバイスは、前記第２のインターフェースと直接接続されているデバイスと、１または複数の他のデバイスを介して、前記第２のインターフェースと間接に接続されているデバイスとを含むデバイス管理装置。
【請求項５】
請求項２ないし請求項４のいずれかに記載のネットワークデバイスにおいて、
前記他のデバイスは、異なる機能を提供する複数種類のデバイスを含むネットワークデバイス。
【請求項６】
請求項１ないし請求項５のいずれかに記載のネットワークデバイスにおいて、
前記機能応答は、含むべき複数の機能に関する機能情報のうち、前記各機能に共通する機能情報が重複しないように作成されるデバイス管理装置。
【請求項７】
請求項１ないし請求項６のいずれかに記載のネットワークデバイスにおいて、
前記機能要求は、不特定の種類の機能に関する前記機能情報を要求し、
前記応答作成部は、前記ネットワークデバイスによって、または、前記ネットワークデバイスを介して、前記クライアントコンピュータに提供される全ての機能についての前記機能情報を含む前記機能応答を作成する、ネットワークデバイス。
【請求項８】
請求項１ないし請求項７のいずれかに記載のネットワークデバイスにおいて、
前記機能要求は、特定の種類の機能を指定する機能指定情報を含み、
前記応答作成部は、前記ネットワークデバイスによって、または、前記ネットワークデバイスを介して、前記クライアントコンピュータに提供される機能のうち、前記機能指定情報に対応する前記特定の種類の機能についての機能情報を含む前記機能応答を作成する、ネットワークデバイス。
【請求項９】
請求項１ないし請求項８のいずれかに記載のネットワークデバイスにおいて、
前記ネットワークデバイスは、
１）単一の機能を提供する単機能デバイス、
２）複数の機能を提供する複合デバイス、
３）自身は提供する機能を有しない管理デバイス、
のうちのいずれかである、ネットワークデバイス。
【請求項１０】
ネットワークに接続されたネットワークデバイスと、前記ネットワークに接続されたクライアントコンピュータとを含むネットワークシステムであって、
前記クライアントコンピュータは、
前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能、に関する機能情報の送信を要求する機能要求を、前記ネットワークを介して前記ネットワークデバイスに対して送信する要求送信部を、備え、
前記ネットワークデバイスは、
前記機能要求に応じて、前記機能情報を含む機能応答を作成する応答作成部と、
前記作成された機能応答を、前記ネットワークを介して前記クライアントコンピュータに対して送信する応答送信部と、
を備える、ネットワークシステム。
【請求項１１】
ネットワークを介して、クライアントコンピュータと通信するための第１のインターフェースを備えるネットワークデバイスにおける方法であって、
前記ネットワーク上のクライアントコンピュータから前記第１のインターフェースを介して、前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能に関する機能情報の送信を要求する機能要求を受信し、
前記機能要求に応じて、前記機能情報を含む機能応答を作成し、
前記ネットワーク上のクライアントコンピュータに対して前記作成された機能応答を送信する、方法。
【請求項１２】
ネットワークを介して、クライアントコンピュータと通信するための第１のインターフェースを備えるネットワークデバイスを制御するためのコンピュータプログラムであって、
前記ネットワーク上のクライアントコンピュータから前記第１のインターフェースを介して、前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能に関する機能情報の送信を要求する機能要求を受信する第１の機能と、
前記機能要求に応じて、前記機能情報を含む機能応答を作成する第２の機能と、
前記ネットワーク上のクライアントコンピュータに対して前記作成された機能応答を送信する第３の機能と、
をコンピュータに実現させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークデバイスに関する情報収集に関し、特に、クライアントからの要求に応じてネットワークデバイスの情報を応答する技術に関する。
【背景技術】
【０００２】
プリンタ等のデバイスを、ローカルエリアネットワーク（ＬＡＮ）をはじめとするネットワークに接続して使用する形態が普及しつつある。このようなネットワークに接続されたデバイス（ネットワークデバイス）をネットワーク上のクライアントコンピュータ（以下、単にクライアントという。）を用いて管理する技術が知られている。例えば、クライアントからネットワークデバイスを探索する探索パケットを送信し、探索パケットに対する応答として、ネットワークデバイスからＭＡＣアドレスを記録した応答パケットを受信する技術が知られている（特許文献１）。この技術では、応答パケットを元に、ネットワークデバイスのリストを表示し、リストから選択されたネットワークデバイスに対し、ネットワーク設定を行っている。
【０００３】
【特許文献１】特開２０００−１２２９４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、クライアントコンピュータは、ネットワークデバイスの存在を認識することよりも、ネットワークを介して利用できる機能を認識することが重要であることも多い。このような場合に、上記技術では、ネットワークデバイスの存在を認識した後、そのネットワークデバイスの機能を認識する必要があり、処理が複雑になるという問題があった。特に、多数のネットワークデバイスを含むネットワークシステムや、多数の機能を有するネットワークデバイスを含むネットワークシステムでは、上述の問題が顕著になるおそれがあった。
【０００５】
本発明は、上記課題を解決するためになされたものであり、ネットワーク上のクライアントコンピュータが、ネットワークデバイスを利用する際の利便性を向上することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題の少なくとも一部を解決するため、本発明の第１の態様は、ネットワークに接続されるネットワークデバイスを提供する。本発明の第１の態様に係るネットワークデバイスは、第１のインターフェースと、要求受信部と、応答作成部と、応答送信部と、を備える。前記第１のインターフェースは、ネットワークを介して、クライアントコンピュータと通信するためのインターフェースである。前記要求受信部は、前記ネットワーク上のクライアントコンピュータから前記第１のインターフェースを介して、機能情報の送信を要求する機能要求を受信する。前記機能情報は、前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能、に関する情報である。前記応答作成部は、前記機能要求に応じて、前記機能情報を含む機能応答を作成する。前記応答送信部は、前記ネットワーク上のクライアントコンピュータに対して前記作成された機能応答を送信する。
【０００７】
本発明の第１の態様に係るネットワークデバイスによれば、クライアントコンピュータは、機能要求を送信することにより、クライアントコンピュータがネットワーク上で利用できる機能に関する機能情報を容易に取得することができる。この結果、ネットワーク上のクライアントコンピュータが、ネットワークデバイスを利用する際の利便性が向上する。
【０００８】
本発明の第１の態様に係るネットワークデバイスは、さらに、１または複数の他のデバイスと通信するためのインターフェースであって、前記第１のインターフェースとは異なる第２のインターフェースを備え、前記ネットワークデバイスを介して前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能は、前記第２のインターフェースと前記第１のインターフェースを介して、前記他のデバイスにより提供される機能であっても良い。こうすれば、クライアントコンピュータは、ネットワークデバイスを介して、ネットワークデバイスに接続されている他のデバイスに関する機能情報を取得することができる。
【０００９】
本発明の第１の態様に係るネットワークデバイスは、さらに、前記他のデバイスにより提供される機能に関する機能情報を収集する収集部を備え、前記応答作成部は、前記収集された機能情報を含む機能応答を作成しても良い。こうすれば、ネットワークデバイスは、他のデバイスに関する機能情報を含む機能応答を容易に作成することができる。
【００１０】
本発明の第１の態様に係るネットワークデバイスにおいて、前記他のデバイスは、前記第２のインターフェースと直接接続されているデバイスと、１または複数の他のデバイスを介して、前記第２のインターフェースと間接に接続されているデバイスとを含んでも良い。こうすれば、クライアントは、ネットワークデバイスに直接接続されているデバイスに加えて、間接に接続されているデバイスの機能に関する機能情報を取得することができる。
【００１１】
本発明の第１の態様に係るネットワークデバイスにおいて、前記他のデバイスは、異なる機能を提供する複数種類のデバイスを含んでも良い。かかる場合には、クライアントは、複数種類のデバイスに関する機能情報を、ネットワークデバイスを介して取得することができる。
【００１２】
本発明の第１の態様に係るネットワークデバイスにおいて、前記機能応答は、含むべき複数の機能に関する機能情報のうち、前記各機能に共通する機能情報が重複しないように作成されても良い。こうすれば、機能応答のデータ量を低減することができる。
【００１３】
本発明の第１の態様に係るネットワークデバイスにおいて、前記属性要求は、不特定の種類の機能に関する前記機能情報を要求し、前記応答作成部は、前記ネットワークデバイスによって、または、前記ネットワークデバイスを介して、前記クライアントコンピュータに提供される全ての機能についての前記機能情報を含む前記機能応答を作成しても良い。こうすれば、クライアントは、１つの機能要求を送信することによって、提供を受けることができる全ての機能に関する機能情報を取得することができる。
【００１４】
本発明の第１の態様に係るネットワークデバイスにおいて、前記機能要求は、特定の種類の機能を指定する機能指定情報を含み、前記応答作成部は、前記ネットワークデバイスによって、または、前記ネットワークデバイスを介して、前記クライアントコンピュータに提供される機能のうち、前記機能指定情報に対応する前記特定の種類の機能についての機能情報を含む前記機能応答を作成しても良い。こうすれば、クライアントは、特定の種類の機能に関する機能情報を、選択的に取得することができる。
【００１５】
本発明の第１の態様に係るネットワークデバイスにおいて、前記ネットワークデバイスは、１）単一の機能を提供する単機能デバイス、２）複数の機能を提供する複合デバイス、３）自身は提供する機能を有しない管理デバイス、のうちのいずれかであっても良い。
【００１６】
本発明の第２の態様は、ネットワークに接続されたネットワークデバイスと、前記ネットワークに接続されたクライアントコンピュータとを含むネットワークシステムを提供する。本発明の第２の態様に係るネットワークシステムにおいて、前記クライアントコンピュータは、要求送信部を備える。前記要求送信部は、機能情報の送信を要求する機能要求を、前記ネットワークを介して前記ネットワークデバイスに対して送信する。前記機能情報は、前記ネットワークデバイスによって前記クライアントコンピュータに提供される機能、または、前記ネットワークデバイスを介して前記クライアントコンピュータに提供される機能に関する情報である。さらに、前記ネットワークデバイスは、応答作成部と、応答送信部とを備える。前記応答作成部は、前記機能要求に応じて、前記機能情報を含む機能応答を作成する。前記応答送信部は、前記作成された機能応答を、前記ネットワークを介して前記クライアントコンピュータに対して送信する。
【００１７】
本発明の第２の態様に係るネットワークシステムによれば、本発明の第１の態様に係るネットワークデバイスと同様の作用・効果を得ることができる。また、本発明の第２の態様に係るネットワークシステムは、本発明の第１の態様に係るネットワークデバイスと同様にして種々の態様にて実現され得る。
【００１８】
なお、本発明は、種々の態様で実現することが可能であり、例えば、ネットワークを介して、クライアントコンピュータと通信するための第１のインターフェースを備えるネットワークデバイスにおける方法のような方法発明として実現することができる。あるいは、かかる装置または方法を構築するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の態様で実現することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明について、図面を参照しつつ、実施例に基づいて説明する。
【００２０】
Ａ．実施例：
・ネットワークシステムの構成：
図１は、本発明の実施例におけるネットワークシステムの概略構成図である。ネットワークシステム１０００は、図１に示すように、クライアントコンピュータ（以下、単にクライアントという。）ＣＬと、デバイス管理装置１００と、デバイス管理装置１００に接続された複数のデバイスを含む。クライアントＣＬと、デバイス管理装置１００とは、ローカルエリアネットワーク（ＬＡＮ）に、それぞれ接続されている。デバイス管理装置１００に接続されている複数のデバイスは、プリンタＰＲＴ１と、複合機ＭＦＤ１と、スキャナＳＣＮである。プリンタＰＲＴ１と、複合機ＭＦＤ１と、スキャナＳＣＮは、それぞれ、ＵＳＢ（Universal Serial Bus）ケーブルＣＶを用いて直接にデバイス管理装置１００に接続されている。
【００２１】
ネットワークシステム１０００は、さらに、ＬＡＮに接続された複合機ＭＦＤ２と、複合機ＭＦＤ２に接続されている複数のデバイスと、ＬＡＮに接続されたプリンタＰＲＴ４を含む。複合機ＭＦＤ２に接続されている複数のデバイスは、プリンタＰＲＴ２と、プリンタＰＲＴ３である。プリンタＰＲＴ２は、ＵＳＢケーブルＣＶを用いて直接に複合機ＭＦＤ２に接続されている。一方、プリンタＰＲＴ３は、ＵＳＢケーブルＣＶを用いてプリンタＰＲＴ２と、直接接続され、複合機ＭＦＤ２は、プリンタＰＲＴ２を介して、プリンタＰＲＴ３と通信可能に構成されている。すなわち、複合機ＭＦＤ２とプリンタＰＲＴ３は、プリンタＰＲＴ２を介して間接に接続されている。ネットワークシステム１０００に含まれる機器のうち、ＬＡＮに直接接続されているデバイス管理装置１００、複合機ＭＦＤ２、プリンタＰＲＴ４を、ネットワークデバイスとも呼ぶ。一方、これらのネットワークデバイスに、ＵＳＢケーブルＣＶを介して接続されているプリンタＰＲＴ１〜ＰＲＴ３、スキャナＳＣＮ、複合機ＭＦＤ１を、ＵＳＢデバイスとも呼ぶ。ネットワークデバイスのうち、複合機ＭＦＤ２や、プリンタＰＲＴ４のように、ネットワークデバイス自身が複数または単一の機能（プリンティング機能など）を有するものは、その機能をクライアントＣＬに提供する。一方、ＵＳＢデバイスは、その機能を、ネットワークデバイス（例えば、デバイス管理装置１００）を介して、クライアントＣＬに提供する。
【００２２】
図２〜図４を参照してネットワークシステム１０００に含まれる各機器の構成について説明する。ネットワークデバイスについては、代表して、デバイス管理装置１００を説明する。図２は、クライアントＣＬの内部構成を示す説明図である。図３は、デバイス管理装置１００の内部構成を示す説明図である。図４は、ＵＳＢデバイスの内部構成を示す説明図である。
【００２３】
クライアントＣＬは、周知の計算機であり、図２に示すように、中央演算装置（ＣＰＵ）２１０と、メモリ２２０と、表示装置２４０を備えている。また、クライアントＣＬは、ネットワークインターフェースカード（ＮＩＣ）２３０を備えており、ＮＩＣ２３０を介してＬＡＮに接続されている。ＣＰＵ２１０は、メモリ２２０に格納された各種プログラムを実行することによりクライアントＣＬとしての機能を実現する。ＮＩＣ２３０は、ネットワークに接続するための通信インターフェースであり、具体的には、イーサネット（登録商標）の仕様に対応したケーブルを介して、ＬＡＮと接続される。
【００２４】
メモリ２２０には、種々のプログラムやデータが格納されており、図２においては、本実施例における処理に必要な構成を選択的に図示し、本明細書においては、図示された構成について説明する。メモリ２２０には、ネットワーク管理プログラム２２１と、ネットワーク管理テーブル２２２と、通信プロトコルプログラム２２３とが、格納されている。ネットワーク管理プログラム２２１は、ＬＡＮに接続された機器等を管理するために用いられ、要求送信モジュール２２１１と、応答受信モジュール２２１２とを含んでいる。要求送信モジュール２２１１は、ＬＡＮ上に接続されたネットワークデバイスに対して、機能情報の送信を要求する機能要求を送信する。機能情報は、ネットワークデバイスによってクライアントＣＬに提供される機能、または、ネットワークデバイスを介して、ＵＳＢデバイスにより提供される機能に関する情報を含む。応答受信モジュール２２１２は、ＬＡＮ上に接続されたネットワークデバイスから上述した機能要求に対する応答（機能応答）を受信する。ネットワーク管理テーブル２２２は、ネットワーク管理プログラム２２１が作成・更新するテーブルであり、上述した機能応答に含まれる機能情報を記録しておくためのテーブルである。通信プロトコルプログラム２２３は、ネットワーク管理プログラム２２１の下位層にある通信プロトコルの機能を実現するプログラムであり、ネットワーク管理プログラム２２１が行う通信処理を実現する。具体的には、通信プロトコルプログラム２２３は、ＳＬＰ（Service Location Protocol）のクライアント側プロトコル（ユーザエージェント）、および、ＳＬＰの下位プロトコルであるＵＤＰ／ＩＰプロトコルを実装しており、上述した機能要求の送信や機能応答の受信を実現する。
【００２５】
デバイス管理装置１００は、図３に示すように、ＣＰＵ１１０と、メモリ１２０と、ＮＩＣ１３０と、ＵＳＢホストＩ／Ｆ部１４０を備えている。ＣＰＵ１１０は、メモリ１２０に格納されている各種プログラムを実行することにより、デバイス管理装置１００としての機能を実現する。ＮＩＣ１３０は、ＬＡＮを介して、クライアントＣＬをはじめとするネットワーク上の機器と通信するためのインターフェースであり、具体的には、イーサネットの仕様に対応したケーブルを介して、ＬＡＮと接続される。デバイス管理装置１００は、ＮＩＣ１３０をＬＡＮ上のクライアントＣＬと通信するために用いる。ＵＳＢホストＩ／Ｆ部１４０は、ＵＳＢケーブルＣＶを接続するためのＵＳＢホストコネクタ１４１〜１４３を備え、ＵＳＢケーブルＣＶを介して、ＵＳＢデバイス（例えば、プリンタＰＲＴ１や、スキャナＳＣＮ）と接続される。ＵＳＢホストＩ／Ｆ部１４０は、ＵＳＢデバイスと通信するためのインターフェースであり、ＵＳＢ規格に従ったデータ通信を、接続されたＵＳＢデバイスとの間で実行する。
【００２６】
メモリ１２０には、種々のプログラムやデータが格納されており、図３においては、本実施例における処理に必要な構成を選択的に図示し、本明細書においては、図示された構成について説明する。メモリ１２０には、デバイス管理プログラム１２１と、通信プロトコルプログラム１２３と、属性情報管理データベース１２２とが、格納されている。デバイス管理プログラム１２１は、属性情報収集モジュール１２１１と、要求受信モジュール１２１２と、応答作成モジュール１２１３と、応答送信モジュール１２１４とを含んでいる。属性情報収集モジュール１２１１は、ＵＳＢホストＩ／Ｆ部１４０を介してデバイス管理装置１００と接続された各ＵＳＢデバイスに関する属性情報を収集する。属性情報には、上述した機能情報が含まれる。要求受信モジュール１２１２は、ＮＩＣ１３０を介してＬＡＮ上のクライアントから送信された機能要求を受信する。応答作成モジュール１２１３は、機能要求に応じて、後述する機能応答を作成する。応答送信モジュール１２１４は、作成された機能応答を、機能要求を送信したＬＡＮ上のクライアントに対して送信する。属性情報管理データベース１２２は、属性情報収集モジュール１２１１によって収集された属性情報（機能情報を含む）を記録しておくためのデータベースであるが、詳細については後述する。通信プロトコルプログラム１２３は、デバイス管理プログラム１２１の下位層にある通信プロトコルの機能を実現するプログラムであり、デバイス管理プログラム１２１が行う通信処理を実現する。具体的には、通信プロトコルプログラム１２３は、ＵＳＢホストＩ／Ｆ部１４０を介してＵＳＢデバイスと通信するためのプロトコル（ドライバ）を実装しており、上述した属性情報の収集を実現する。また、通信プロトコルプログラム１２３は、ＳＬＰのサーバー側プロトコル（サーバーエージェント）、および、ＳＬＰの下位プロトコルであるＵＤＰ／ＩＰプロトコルを実装しており、上述した機能要求の受信や機能応答の送信を実現する。
【００２７】
デバイス管理装置１００と接続されるＵＳＢデバイスについて、プリンタＰＲＴ１〜３を例にして説明する。以下の説明において、各プリンタＰＲＴ１〜ＰＲＴ３を区別する必要がない場合には、符号の末尾の数字を省略し、プリンタＰＲＴと表記する。プリンタＰＲＴは、図４に示すように、コントローラ３１０と、プリントエンジン３２０と、ＵＳＢデバイスＩ／Ｆ部３４０とを備えている。コントローラ３１０は、プリンタ全体を制御する計算機であり、ＣＰＵ３１１と、メモリ３１２を備えている。メモリ３１２には、プリンタＰＲＴの制御プログラム３１３と共に、属性情報テーブル３１５が格納されている。属性情報テーブル３１５は、プリンタＰＲＴ（ＵＳＢデバイス）の属性情報が記録されているが、その詳細は後述する。制御プログラム３１３は、プリンタＰＲＴの制御に必要な各種モジュール（図示省略）と共に、属性情報テーブル３１５に記録された属性情報をデバイス管理装置１００に送信する属性情報送信モジュール３１４を含んでいる。プリントエンジン３２０は、実際に印刷を行う機構部分であり、本実施例では、静電気によってトナー粉が付着する現象を利用して印刷用紙上に画像を形成するいわゆるレーザー式のプリントエンジンである。ＵＳＢデバイスＩ／Ｆ部３４０は、デバイス管理装置１００と接続するためのＵＳＢデバイスコネクタ３４５を備え、ＵＳＢケーブルＣＶを介して、デバイス管理装置１００と接続される。ＵＳＢデバイスＩ／Ｆ部３４０は、デバイス管理装置１００と通信するためのインターフェースであり、ＵＳＢ（Universal Serial Bus）規格に従ったデータ通信を、デバイス管理装置１００との間で実行する。
【００２８】
なお、スキャナＳＣＮの構成は、プリントエンジン３２０に代えて、図４に破線で示すスキャナエンジン３３０を備える以外は、基本的にプリンタＰＲＴと同一である。スキャナエンジン３３０は、用紙等の媒体の画像を光学的に読み取り、画像データを生成する処理を行なう機構部分である。また、複合機ＭＦＤ１は、プリントエンジン３２０と共に、図４に破線で示すスキャナエンジン３３０と、ファクシミリエンジン３６０を備えている以外は、基本的にプリンタＰＲＴと同一である。ただし、制御プログラム３１３等の仕様は、スキャナ、複合機など、そのＵＳＢデバイスの種類に応じて異なることは、当然である。例えば、複合機ＭＦＤ１の制御プログラム３１３は、スキャナエンジン３３０により生成された画像データを、プリントエンジン３２０を用いて印刷することにより、コピー機能を実現するモジュールを含んでいる。
【００２９】
なお、プリンタＰＲＴ１〜ＰＲＴ３のうちの、少なくともプリンタＰＲＴ２は、さらに、図４において破線で示すように、ＵＳＢホストＩ／Ｆ部３５０を備えている。ＵＳＢホストＩ／Ｆ部３５０は、デバイス管理装置１００におけるＵＳＢホストＩ／Ｆ部１４０と同様の機能・構成を備えており、ＵＳＢホストコネクタ３５５、３５６およびＵＳＢケーブルＣＶを介して、他のＵＳＢデバイス（図１におけるプリンタＰＲＴ３）と接続可能である。プリンタＰＲＴ２は、デバイス管理装置１００と、プリンタＰＲＴ２のＵＳＢホストＩ／Ｆ部３５０に接続された他のＵＳＢデバイスとの通信を仲介する機能を備えている。すなわち、プリンタＰＲＴ２は、デバイス管理装置１００から他のＵＳＢデバイス宛に送信されたデータをＵＳＢデバイスＩ／Ｆ部３４０を介して受信すると、そのデータをＵＳＢホストＩ／Ｆ部３５０を介して他のＵＳＢデバイスに転送する。また、逆に他のＵＳＢデバイスからデバイス管理装置１００宛に送信されたデータをＵＳＢホストＩ／Ｆ部３５０を介して受信すると、そのデータをＵＳＢデバイスＩ／Ｆ部３４０を介してデバイス管理装置１００に転送する。
【００３０】
図５〜図７を参照して、各ＵＳＢデバイスのメモリ３１２に格納されている属性情報テーブル３１５について、さらに説明する。図５は、プリンタＰＲＴ１が備える属性情報テーブル３１５ａの具体例を概念的に示す説明図である。図６は、スキャナＳＣＮが備える属性情報テーブル３１５ｂの具体例を概念的に示す説明図である。図７は、複合機ＭＦＤ１が備える属性情報テーブル３１５ｃの具体例を概念的に示す説明図である。各ＵＳＢデバイスの属性情報テーブル３１５ａ〜３１５ｃには、そのＵＳＢデバイスに関する多数の属性情報が記録されている。属性情報テーブル３１５に記録されている属性情報は、デバイスタイプ、機種名等、と共に、そのＵＳＢデバイスが有する機能に関する情報（機能情報）を含む。機能情報は、まず、機能の種類を表す情報を含む。機能の種類を表す情報は、例えば、ＵＳＢデバイスがプリンタＰＲＴである場合には、「プリンティング」とされ（図５：項目名「機能１」）、ＵＳＢデバイスがスキャナＳＣＮである場合には、「スキャニング」とされる（図６：項目名「機能１」）。また、機能の種類を表す情報は１つに限られず、例えば、ＵＳＢデバイスが複合機ＭＦＤ１である場合には、それぞれ、「プリンティング」「スキャニング」「ファクシミリ」という３つの情報が含まれる（図７：項目名「機能１」「機能２」）。また、機能情報は、機能の詳細に関する情報を含んでも良い。例えば、ＵＳＢデバイスがプリンタＰＲＴである場合、機能の詳細に関する情報は、モノクロ印刷の可否、カラー印刷の可否、サポートする用紙サイズを含んでも良いし（図５）、さらに、印刷解像度、印刷速度等、機能の性能に関する情報を含んでも良い（図示省略）。同様にして、ＵＳＢデバイスがスキャナＳＣＮである場合には、機能の詳細に関する情報は、例えば、モノクロスキャンの可否、カラースキャンの可否、スキャンサイズを含み得る。また、ＵＳＢデバイスが複合機ＭＦＤ１である場合には、機能の詳細に関する情報は、「プリンティング」と「スキャニング」と「ファクシミリ」の各機能について、それぞれ、記録されている（図７）。
【００３１】
さらに、機能情報は、その機能の動作状況によって、動的に変化する情報を含んでも良い。例えば、ＵＳＢデバイスがプリンタＰＲＴである場合、動的に変化する情報は、図５に示すように、プリンティング機能の状態を含んでも良い。プリンティング機能の状態の値は、例えば、「印刷中」「ジョブ受信中」「エラー状態」を取り得る。さらに、動的に変化する情報は、その機能がエラー状態にある場合における具体的なエラーの内容、例えば、「用紙切れ」「トナー切れ」「紙詰まり」等を含んでも良い。ＵＳＢデバイスの機能情報に、動的に変化する情報が含まれる場合には、コントローラ３１０（ＣＰＵ３１１）は、ＵＳＢデバイスの動作状況の変化に応じて、随時、これらの機能情報を更新する。
【００３２】
これらの属性情報は、例えば、ＭＩＢ(Management Information Base)として記録されても良い。ＭＩＢには、属性情報がオブジェクトごとに記録される。このオブジェクトは、ツリー構造で管理され、それぞれにオブジェクトＩＤが割り振られ、識別できるようになっている。このオブジェクトＩＤは、「１．４．２．２．１．３」のようにピリオドで区切られた数字となっている。
【００３３】
図８を参照して、デバイス管理装置１００のメモリ１２０に格納されている属性情報管理データベース１２２について、さらに、説明する。図８は、属性情報管理データベース１２２の具体例を概念的に示す説明図である。属性情報管理データベース１２２には、ＵＳＢホストＩ／Ｆ部１４０を介してデバイス管理装置１００と接続されている各ＵＳＢデバイスに関する属性情報が、ＵＳＢデバイスごとに記録されている。図８に示す属性情報管理データベース１２２において、デバイス１、デバイス２、デバイス３の欄に記録されている属性情報は、それぞれ、図１におけるプリンタＰＲＴ１、スキャナＳＣＮ、複合機ＭＦＤ１の属性情報である。
【００３４】
各デバイスの欄に記録される属性情報は、各ＵＳＢデバイスに格納されている上述した属性情報テーブル３１５に記録されている属性情報の全部または一部を含み、少なくとも属性情報テーブル３１５に記録されている機能情報の一部を含んでいる。さらに、各デバイスの欄に記録される機能情報には、デバイスの機能を利用するために必要となる情報が含まれる。機能を利用するために必要となる情報は、例えば、ＩＰアドレス、ＭＡＣアドレス、インデックス、ポート番号が含まれ得る。ＩＰアドレスおよびＭＡＣアドレスは、デバイス管理装置１００に割り当てられているアドレスである。ＬＡＮ上のクライアントＣＬが各ＵＳＢデバイスの機能を利用する場合、例えば、印刷ジョブ等のデータを送信する場合には、デバイス管理装置１００を介してアクセスする必要があるため、デバイス管理装置１００のＩＰアドレスおよびＭＡＣアドレスも、各ＵＳＢデバイスの機能に関する情報として、属性情報管理データベース１２２に記録されている。なお、デバイス管理装置１００にＩＰアドレスが割り当てられていない場合には、「未設定」である旨がＩＰアドレスの項目の値として記録される。インデックスは、デバイス管理装置１００に接続されている各ＵＳＢデバイスに割り当てられる番号であり、例えば、各ＵＳＢデバイスを識別するために用いられる。図１において、各ＵＳＢデバイスに接続されているＵＳＢケーブルＣＶ上に付した数値は、インデックスの値を示している。
【００３５】
・ネットワークシステム１０００における処理：
図９を参照して、ネットワークシステム１０００における処理について説明する。図９は、ネットワークシステム１０００における処理の一例を示すシーケンス図である。デバイス管理装置１００の属性情報収集モジュール１２１１は、定期的に、デバイス管理装置１００に接続されている各ＵＳＢデバイスを監視し、各ＵＳＢデバイスから上述した機能情報を含む属性情報を収集する。具体的には、属性情報収集モジュール１２１１は、各ＵＳＢデバイスに対して、定期的に、各デバイスに格納されている属性情報テーブル３１５に格納されている属性情報を送信するように要求する定期要求を送信する（ステップ［１］）。各ＵＳＢデバイスの属性情報送信モジュール３１４は、定期要求に応じて、要求された属性情報が記述された定期応答をデバイス管理装置１００に対して送信する（ステップ［２］）。デバイス管理装置１００の属性情報収集モジュール１２１１は、各ＵＳＢデバイスから送信されてきた定期応答に記録されている属性情報を用いて、属性情報管理データベース１２２を更新する（ステップ［３］）。上述したステップ［１］〜ステップ［３］が所定間隔おきに繰り返されることにより、属性情報管理データベース１２２は、常に、各ＵＳＢデバイスにおける比較的新しい状態を反映した状態に維持される。
【００３６】
次に、図９と共に、図１０〜図１２を参照して、クライアントＣＬが、デバイス管理装置１００から機能情報を取得するための一連の処理について説明する。図１０は、機能要求のデータ構造を概略的に示す図である。図１１は、機能応答のデータ構造を概略的に示す図である。図１２は、機能応答作成処理の処理ルーチンを示すフローチャートである。本処理は、例えば、ユーザが、ＬＡＮを介して、どのような機能を利用することができるかを知りたい場合に、クライアントＣＬを用いて、ＬＡＮ上に直接または間接に接続されているデバイスにより提供される機能を探索する場合に実行される。かかる場合には、まず、クライアントＣＬの要求送信モジュール２２１１は、機能要求５００を送信する（ステップ［４］）。未知のネットワークデバイスの機能の探索であるので、クライアントＣＬは、機能要求５００をブロードキャストにより、送信する。
【００３７】
機能要求５００は、図１０に示すように、ヘッダ部５０１と、ボディ部５０２とを備えている。機能要求５００は、例えば、ＵＤＰプロトコルに従ったＵＤＰパケットであり、ヘッダ部５０１は、ＵＤＰ／ＩＰヘッダ、および、ＵＤＰ／ＩＰプロトコルの上位プロトコルであるＳＬＰプロトコルに従ったＳＬＰヘッダを含んでいる。ボディ部５０２は、コマンド記述部５０３および項目記述部５０４を含んでいる。コマンド記述部５０３には、このパケットが、ネットワーク上に接続されたネットワークデバイスに対する機能要求であることを示すコマンド文が記述されている。コマンド文は、例えば、「ｓｅｒｖｉｃｅ−メーカ識別子」とされる。このコマンド文は、メーカ識別子により特定されたメーカ製のデバイスの機能情報を要求する機能要求であることを示している。このコマンド文では、機能の種類（例えば、プリンティング、スキャニング、ファクシミリ）を特定していない。従って、このコマンド文を含む機能要求５００は、不特定の種類の機能に対する属性要求である。項目記述部５０４は、クライアントＣＬが取得したい機能情報の項目を指定するために記述され、例えば、取得したい機能情報の項目名が記述される。項目記述部５０４は、その記述を省略されることができる。項目記述部５０４に何も記述されていない場合には、後述するように、その機能要求５００は、予め定められた項目について、機能情報を要求するものと解釈される。
【００３８】
クライアントＣＬから送信された機能要求５００は、デバイス管理装置１００の要求受信モジュール１２１２によって受信される。要求受信モジュール１２１２が機能要求５００を受信すると、デバイス管理装置１００の応答作成モジュール１２１３は、機能応答作成処理を実行する（ステップ［５］）。図１２を参照して、機能応答作成処理について、さらに、説明する。機能応答作成処理が開始されると、応答作成モジュール１２１３は、コマンド記述部５０３に記述されたコマンド文を取得する（ステップＳ１０２）。応答作成モジュール１２１３は、取得されたコマンド文に基づいて、対象となる機能を特定する。対象となる機能は、後のステップＳ１１４において作成される機能応答に、その機能情報が含められる機能である。例えば、コマンド文が、上述したように、メーカ名のみを特定している場合には、そのメーカ製のデバイスが提供する機能は、全て対象となる機能である。
【００３９】
次に、応答作成モジュール１２１３は、項目記述部５０４に機能情報の項目を指定する記述があるか否かを判断する（ステップＳ１０６）。応答作成モジュール１２１３は、項目記述部５０４に記述があると判断すると（ステップＳ１０６：ＹＥＳ）、項目記述部５０４の記述に基づいて、機能情報を取得すべき項目（取得項目）を特定する（ステップＳ１１０）。一方、応答作成モジュール１２１３は、項目記述部５０４に記述がないと判断すると（ステップＳ１０６：ＮＯ）、予め定められた優先項目を取得項目として特定する（ステップＳ１０８）。予め定められた優先項目には、例えば、クライアントＣＬがデバイスの機能を利用するために最低限必要な項目が定められる。具体的には、例えば、「機能名」、「ＩＰアドレス」「ポート番号」が、優先項目として設定される。
【００４０】
応答作成モジュール１２１３は、続いて、属性情報管理データベース１２２から必要な機能情報を取得する（ステップＳ１１２）。具体的には、応答作成モジュール１２１３は、ステップＳ１０４において特定された対象となる機能について、ステップＳ１０８において特定された項目に対応する機能情報を、属性情報管理データベース１２２から選択的に取得する。必要な機能情報が取得されると、応答作成モジュール１２１３は、取得された機能情報を含む機能応答を作成する（ステップＳ１１４）。
【００４１】
図１１には、具体例として、デバイス管理装置１００において、不特定の種類の機能に関する機能情報を要求する機能要求５００が受信された場合に作成される機能応答５５０の一例が示されている。なお、本具体例において、受信された機能要求５００の項目記述部５０４には何も記述されていないものとする。図１１に示すように、作成される機能応答５５０は、機能要求５００と同様に、ヘッダ部５５１と、ボディ部５５２とを備えている。ボディ部５５２には、機能情報記述部５５３が含まれている。図１１下側に示すように、機能情報記述部５５３にステップＳ１１２において取得された機能情報が、対象となる機能ごとに記述される。ここで、対象となる機能の全てについて、値が共通する項目がある場合には、図１１に示すように、その項目に対応する機能情報は、共通項目の欄に記述される。共通項目の欄に記述された属性情報は、機能ごとに記述される欄には記述されない。こうすることによって、機能応答５５０は、対象となる複数の機能に関する機能情報のうち各機能に共通する情報が重複しないように作成される。上述したようにデバイス管理装置１００に割り当てられたＩＰアドレスやＭＡＣアドレスは、デバイス管理装置１００に接続されたデバイスの全ての機能において共通の情報である。従って、図１１に示す例では、「ＩＰアドレス」は、共通項目の欄に記述される。機能応答が作成されると機能応答作成処理は、終了される。
【００４２】
図９に戻って、説明を続ける。機能応答作成処理（ステップ［５］）が終了されると、デバイス管理装置１００の応答送信モジュール１２１４は、作成された機能応答５５０を、機能要求５００を送信したクライアントＣＬに対して、送信する（ステップ［６］）。
【００４３】
クライアントＣＬにおいて、応答受信モジュール２２１２が、デバイス管理装置１００から送信された機能応答５５０を受信すると、機能応答５５０の機能情報記述部５５３に記述された機能情報に基づいて、ネットワーク管理テーブル２２２が更新される（ステップ［７］。以上説明したステップ［４］〜ステップ［７］までの一連の処理によって、クライアントＣＬは、未知のデバイス（ネットワークデバイスおよびネットワークデバイスに接続されたＵＳＢデバイス）に関する機能情報を取得することができる。この結果、例えば、クライアントＣＬのユーザは、ＬＡＮを介して利用できる機能（例えば、プリンティング、スキャニング、ファクシミリ）を認識することができる。
【００４４】
クライアントＣＬのユーザは、取得された機能情報を用いて、認識した機能を利用することができる。例えば、ユーザは、クライアントＣＬを操作して、「プリンティング」機能を利用するために、機能情報として取得されたＩＰアドレスとポート番号を送信先に指定して印刷ジョブを送信することができる（ステップ［８］）。デバイス管理装置１００は、印刷ジョブを受信すると、印刷ジョブのヘッダに含まれる送信先ポート番号から、その機能を実行するためのＵＳＢデバイスを割り出し、受信された印刷ジョブを、割り出されたＵＳＢデバイスに対してＵＳＢケーブルＣＶを介して送信する（ステップ［９］）。印刷ジョブを受信したＵＳＢデバイスは、印刷ジョブに従って印刷を実行する（ステップ［１０］）。
【００４５】
以上説明した実施例におけるネットワークデバイスとしてのデバイス管理装置１００を含むネットワークシステム１０００によれば、クライアントＣＬは、機能要求５００をＬＡＮ上の機器にブロードキャストすることにより、機能要求５００に対する応答としてデバイス管理装置１００を介して利用できる機能（デバイス管理装置１００に接続されているＵＳＢデバイスの機能）に関する機能情報を取得することができる。クライアントＣＬ（および、そのユーザ）にしてみれば、ＬＡＮ上にどのようなデバイス（例えば、プリンタ、スキャナ、複合機）が接続されているかを認識することより、ＬＡＮを介してどのような機能（例えば、プリンティング、スキャニング）を利用できるかを認識することが重要である場合も多い。例えば、クライアントＣＬのユーザが、ＬＡＮ上のどの機器かにこだわらず、ともかく印刷を実行したいような場合である。このような場合に、本実施例によれば、クライアントＣＬは、一度機能要求をブロードキャストするのみで、ＬＡＮ上において利用できる機能を認識することができると共に、当該機能を利用するために必要な機能情報を同時に取得することができる。
【００４６】
さらに、デバイス管理装置１００は、デバイス管理装置１００に接続された複数のデバイスから機能情報を含む属性情報を収集し、クライアントＣＬからの機能要求に応じて、動的に必要な機能情報を含めた機能応答を作成するので、クライアントＣＬは、効率良く、機能情報を取得することができる。例えば、クライアントＣＬは、デバイスの種類を特定しない機能要求５００を１つ送信するだけで、デバイス管理装置１００に接続された複数種類のデバイスの機能情報をまとめて取得することができる。
【００４７】
さらに、デバイス管理装置１００の応答作成モジュール１２１３は、含むべき複数の機能に関する機能情報のうち各機能に共通する情報が重複しないように、機能応答５５０を作成するので、機能応答５５０のデータ量を低減することができる。
【００４８】
Ｂ．変形例：
・第１変形例：
上記実施例では、クライアントＣＬが送信する機能要求５００において、機能情報を要求する機能の種類を特定していないが、特定の種類の機能について機能情報を要求することとしても良い。例えば、クライアントＣＬは、コマンド記述部５０３に記述されるコマンド文に、機能情報を要求する機能の種類を特定する情報を含めても良い。具体例としては、クライアントＣＬは、プリンティング機能だけを探索したい場合、コマンド文に、「ｓｅｒｖｉｃｅ−メーカ識別子−ｐｒｉｎｔｉｎｇ」と記述する。
【００４９】
さらに、上述した機能要求５００の項目記述部５０４に、取得すべき機能情報の項目を指定する情報を記述できることとしても良い。具体例としては、クライアントＣＬは、項目記述部５０４に、取得したい項目名「ＩＰアドレス」「機能名」「ポート番号」「カラー印刷」「用紙」と記述することができる。図１３は、機能情報記述部の内容の一例を概略的に示す第１の図である。図１３には、具体例として上述した機能要求５００（コマンド文：「ｓｅｒｖｉｃｅ−メーカ識別子−ｐｒｉｎｔｉｎｇ」、項目記述部５０４：「ＩＰアドレス」「機能名」「ポート番号」「カラー印刷」「用紙」）に対する機能応答５５０の機能情報記述部５５３ａが示されている。図１３から解るように、機能要求５００において、要求する機能を「プリンティング」と指定しているので、機能応答５５０において対象となる機能は、「プリンティング」（プリンタＰＲＴ１のプリンティング機能と、複合機ＭＦＤ１のプリンティング機能）となる。「スキャニング」は、対象となる機能に含まれない。また、機能情報記述部５５３ａに含められる機能情報は、機能要求５００の項目記述部５０４における記述によって指定された項目「ＩＰアドレス」「機能名」「ポート番号」「カラー印刷」「用紙」に対応する情報である。クライアントＣＬは、図１３に示す機能情報記述部５５３ａを含む機能応答５５０を受信することによって、例えば、「Ａ３サイズのカラー印刷機能」を、ＬＡＮ上で容易に探索することができる。このように、クライアントＣＬは、必要に応じて、機能の種類や機能情報の項目を特定した機能要求５００を送信することによって、必要な機能情報を選択的に取得することができる。
【００５０】
なお、クライアントＣＬは、さらに、機能の種類を細かく特定した機能要求５００を送信できることとしても良い。具体的例としては、クライアントＣＬは、カラー印刷可能なプリンティング機能だけを探索したい場合、コマンド文に、「ｓｅｒｖｉｃｅ−メーカ識別子−ｐｒｉｎｔｉｎｇ−ｃｏｌｏｒ」と記述する。図１４は、機能情報記述部の内容の一例を概略的に示す第２の図である。図１４には、上述の具体例のコマンド文を含む機能要求５００に対する機能応答５５０の機能情報記述部５５３ｂが示されている。なお、具体例における機能要求５００の項目記述部５０４には、何も記述されていないものとする。機能要求５００において、要求する機能を「カラー印刷可能なプリンティング」と指定しているので、図１４から解るように、機能応答５５０において対象となる機能は、「複合機ＭＦＤ１のプリンティング」だけとなる。「スキャニング」や、「プリンタＰＲＴ１のプリンティング」は、対象となる機能に含まれない。かかる場合には、クライアントＣＬは、カラー印刷機能を、ＬＡＮ上で容易に探索することができる。
【００５１】
・第２変形例：
上記実施例では、デバイス管理装置１００の属性情報収集モジュール１２１１は、定期的に各デバイスに要求を送信して問い合わせることによって、機能情報を含む属性情報を収集しているが、属性情報の収集方法は、これに限られない。図１５を参照して、他の属性情報の収集方法を第２変形例として説明する。図１５は、第２変形例におけるネットワークシステム１０００における処理を示すシーケンス図である。本変形例では、クライアントＣＬから機能要求５００が送信され（ステップ［１］）、デバイス管理装置１００が機能要求５００を受信した後に、属性情報収集モジュール１２１１は、各ＵＳＢデバイスに対して、必要な属性情報（例えば、機能応答５５０の作成に必要な機能情報）の送信を要求する属性要求を送信する（ステップ［２］）。属性情報収集モジュール１２１１は、送信した属性要求に対する応答を受信する（ステップ［３］）。図１５におけるその他のステップは、図９における同名のステップと同一の処理であるので、その説明を省略する。本変形例によれば、属性情報収集モジュール１２１１は、機能応答５５０の作成に必要な機能情報を選択的に各ＵＳＢデバイスから取得することができる。また、属性情報収集モジュール１２１１は、定期的に属性情報を収集する必要がなく、クライアントＣＬから機能要求５００を受信した場合のみ属性情報を収集するので、デバイス管理装置１００の処理負荷が低減される。
【００５２】
さらに、属性情報収集モジュール１２１１は、機能情報を含む属性情報の性質に応じて収集方法を使い分けても良い。例えば、ＵＳＢデバイス固有の情報であって変化することがない機能情報、例えば、機能名、カラー印刷の可否については、属性情報収集モジュール１２１１は、ＵＳＢデバイスがデバイス管理装置１００に接続された時に、これらの属性情報を収集することとしても良い。そして、機能の動作状況によって、動的に変化する属性情報、例えば、プリンティング機能の状態、エラー状態時におけるエラーの内容については、属性情報収集モジュール１２１１は、実施例に示すように定期的に収集することとしても良い。こうすれば、属性情報収集モジュール１２１１は、効率良く機能情報を含む属性情報を収集することができる。
【００５３】
・第３変形例：
上記実施例では、図１に示すネットワークデバイスのうち、代表してデバイス管理装置１００を説明したが、その他のネットワークデバイスである複合機ＭＦＤ２およびプリンタＰＲＴ４を、第３変形例として説明する。図１６は、複合機ＭＦＤ２の内部構成を示す説明図である。図１７は、プリンタＰＲＴ４の内部構成を示す説明図である。
【００５４】
複合機ＭＦＤ２は、デバイス管理装置１００と同一の構成（図３）に加えて、プリントエンジン１５０と、スキャナエンジン１６０を備えている。他の構成は、デバイス管理装置１００と同一であるので、図１６において、図３と同一の符号を付し、その説明を省略する。複合機ＭＦＤ２のメモリ１２０に格納されている属性情報管理データベース１２２には、複合機ＭＦＤ２に接続されているＵＳＢデバイス（図１の例では、プリンタＰＲＴ２およびプリンタＰＲＴ３）の属性情報に加えて、ＭＦＤ自身の属性情報、例えば、プリントエンジン１５０によって実現されるプリンティング機能に関する機能情報や、スキャナエンジン１６０により実現されるスキャニング機能の機能情報が記録されている。
【００５５】
複合機ＭＦＤ２の応答作成モジュール１２１３は、機能要求５００に対する応答として、複合機ＭＦＤ２に接続されているＵＳＢデバイスに関する機能情報に加えて、複合機ＭＦＤ２自身に関する機能情報も含む機能応答５５０を作成する。この結果、クライアントＣＬは、機能要求５００を送信することによって、複合機ＭＦＤ２により提供される機能と、複合機ＭＦＤ２を介してＵＳＢデバイスにより提供される機能の両方について、機能情報を取得することができる。
【００５６】
一方、プリンタＰＲＴ４は、デバイス管理装置１００と比較して、ＵＳＢデバイスを接続するためのＵＳＢホストＩ／Ｆ部１４０を備えていない。この結果、プリンタＰＲＴ４は、ＵＳＢデバイスを接続できないため、ＵＳＢデバイスの属性情報を収集する属性情報収集モジュール１２１１、および、収集されて属性情報を記録するための属性情報管理データベース１２２を備えていない。しかし、プリンタＰＲＴ４は、属性情報管理データベース１２２に代えて、ＵＳＢデバイス（図４）と同様に、プリンタＰＲＴ４自身の属性情報を記録した属性情報テーブル１２５を備えている。他の構成は、デバイス管理装置１００と同一であるので、図１７において、図３と同一の符号を付し、その説明を省略する。
【００５７】
プリンタＰＲＴ４の応答作成モジュール１２１３は、機能要求５００に対する応答として、プリンタＰＲＴ４に関する機能情報を含む機能応答５５０を作成する。この結果、クライアントＣＬは、機能要求５００を送信することによって、プリンタＰＲＴ４により提供される機能に関する機能情報を取得することができる。
【００５８】
・その他の変形例：
上記実施例では、デバイス管理装置１００と、接続されるデバイス（例えば、プリンタＰＲＴ１）は、別体として構成されているが、デバイス管理装置１００は、一または複数の機能を有するデバイス（例えば、プリンタや、複合機）と同一の筐体に収容されていても良い。かかる場合には、デバイス管理装置１００と、デバイスとの間は、ＵＳＢ接続に代えて、例えば、内部シリアルバスにより接続され得る。
【００５９】
上記実施例では、デバイス管理装置１００とＵＳＢデバイスとの間は、ＵＳＢケーブルＣＶにより接続され、ＵＳＢ規格に従った通信が行われるが、デバイス管理装置１００とデバイスとの間は、クライアントＣＬとデバイス管理装置１００とを接続するＮＩＣ１３０とは異なるインターフェースを用いて接続されていれば良い。例えば、ＩＥＥＥ１３９４バス接続、パラレル接続、シリアル接続などの有線接続や、ブルートゥース接続，赤外線接続などの無線接続で接続するようにしてもよい。
【００６０】
上記実施例では、ＵＳＢデバイスとしてプリンタＰＲＴ１〜３、スキャナＳＣＮ、複合機ＭＦＤ１が用いられているが、他の種類のデバイスを用いることもできる。例えば、ファクシミリ、コピー機を、ＵＳＢデバイスとして用いても良い。
【００６１】
上記実施例において、ハードウエアによって実現されていた構成の一部をソフトウエアに置き換えても良く、逆にソフトウエアによって実現されていた構成の一部をハードウエアに置き換えても良い。
【００６２】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施例におけるネットワークシステムの概略構成図。
【図２】クライアントＣＬの内部構成を示す説明図。
【図３】デバイス管理装置１００の内部構成を示す説明図。
【図４】ＵＳＢデバイスの内部構成を示す説明図。
【図５】プリンタＰＲＴ１が備える属性情報テーブル３１５ａの具体例を概念的に示す説明図。
【図６】スキャナＳＣＮが備える属性情報テーブル３１５ｂの具体例を概念的に示す説明図。
【図７】複合機ＭＦＤ１が備える属性情報テーブル３１５ｃの具体例を概念的に示す説明図。
【図８】属性情報管理データベース１２２の具体例を概念的に示す説明図。
【図９】ネットワークシステム１０００における処理の一例を示すシーケンス図。
【図１０】機能要求５００のデータ構造を概略的に示す図。
【図１１】機能応答５５０のデータ構造を概略的に示す図。
【図１２】機能応答作成処理の処理ルーチンを示すフローチャート。
【図１３】機能情報記述部の内容の一例を概略的に示す第１の図。
【図１４】機能情報記述部の内容の一例を概略的に示す第２の図。
【図１５】第２変形例におけるネットワークシステム１０００における処理を示すシーケンス図。
【図１６】複合機ＭＦＤ２の内部構成を示す説明図。
【図１７】プリンタＰＲＴ４の内部構成を示す説明図。
【符号の説明】
【００６４】
１００…デバイス管理装置
１１０…ＣＰＵ
１２０…メモリ
１２１…デバイス管理プログラム
１２１１…属性情報収集モジュール
１２１２…要求受信モジュール
１２１３…応答作成モジュール
１２１４…応答送信モジュール
１２２…属性情報管理データベース
１２３…通信プロトコルプログラム
１２５…属性情報テーブル
１３０…ＮＩＣ
１４０…ＵＳＢホストＩ／Ｆ部
１５０…プリントエンジン
１６０…スキャナエンジン
２１０…ＣＰＵ
２２０…メモリ
２２１…ネットワーク管理プログラム
２２１１…要求送信モジュール
２２１２…応答受信モジュール
２２２…ネットワーク管理テーブル
２２３…通信プロトコルプログラム
２４０…表示装置
３１０…コントローラ
３１１…ＣＰＵ
３１２…メモリ
３１３…制御プログラム
３１４…属性情報送信モジュール
３１５、３１５ａ〜３１５ｃ…属性情報テーブル
３２０…プリントエンジン
３３０…スキャナエンジン
３４０…ＵＳＢデバイスＩ／Ｆ部
３５０…ＵＳＢホストＩ／Ｆ部
５００…機能要求
５０１…ヘッダ部
５０２…ボディ部
５０３…コマンド記述部
５０４…項目記述部
５５０…機能応答
５５１…ヘッダ部
５５２…ボディ部
５５３、５５３ａ、５５３ｂ…機能情報記述部
１０００…ネットワークシステム
ＰＲＴ１〜ＰＲＴ４…プリンタ
ＭＦＤ１、ＭＦＤ２…複合機
ＣＬ…クライアント
ＳＣＮ…スキャナ
【図１】
2007128215.tif 000003
【図２】
2007128215.tif 000004
【図３】
2007128215.tif 000005
【図４】
2007128215.tif 000006
【図５】
2007128215.tif 000007
【図６】
2007128215.tif 000008
【図７】
2007128215.tif 000009
【図８】
2007128215.tif 000010
【図９】
2007128215.tif 000011
【図１０】
2007128215.tif 000012
【図１１】
2007128215.tif 000013
【図１２】
2007128215.tif 000014
【図１３】
2007128215.tif 000015
【図１４】
2007128215.tif 000016
【図１５】
2007128215.tif 000017
【図１６】
2007128215.tif 000018
【図１７】
2007128215.tif 000019