(57)【要約】【課題】ネットワーク負荷を軽減する装置を提供すること。【解決手段】ネットワーク機器３００が提供する機能に関連する複数の関連情報のうち所望の関連情報の取得要求を複数のクライアントＰＣ２００から受信する通信制御部１１１と、受信した複数の取得要求に含まれる関連情報それぞれを、ネットワーク機器３００から一括して取得すべき関連情報として決定する項目決定部１１４と、決定された関連情報をネットワーク機器３００から一括して取得する機器情報取得部１１５と、を備えた。【選択図】        図２
2008310472.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント装置と、前記クライアント装置に機能を提供する通信装置とにネットワークを介して接続されたサーバ装置であって、
前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を複数の前記クライアント装置から受信する受信手段と、
受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、
決定された前記関連情報を前記通信装置から取得する取得手段と、
取得された前記関連情報を前記クライアント装置に送信する送信手段と、
を備えたことを特徴とするサーバ装置。
【請求項２】
前記受信手段は、階層構造で分類された前記関連情報のうち所望の階層の前記関連情報の前記取得要求を複数の前記クライアント装置から受信し、
前記決定手段は、受信した複数の前記取得要求に含まれる第１取得要求で要求される第１関連情報が、受信した複数の前記取得要求に含まれる第２取得要求で要求される第２関連情報の上位階層の前記関連情報であるか否かを判断し、上位階層である場合に、前記第１関連情報を取得すべき前記関連情報として決定すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記受信手段は、さらに、所望の前記関連情報が追加された前記取得要求を前記クライアント装置から受信し、
前記決定手段は、さらに、前記取得手段が前記関連情報を取得後の経過時間が予め定められた期間を超えたか否かを判断し、超えていない場合に、追加された前記関連情報を取得すべき前記関連情報として決定すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項４】
前記送信手段は、取得された前記関連情報のうち、前記取得要求で要求された前記関連情報を、前記取得要求の送信元である前記クライアント装置に送信すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項５】
前記取得手段は、予め定められた期間の経過ごとに、決定された前記関連情報を前記通信装置から取得すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項６】
前記受信手段は、さらに、取得する前記関連情報と前記関連情報を取得する時間間隔とを定める前記関連情報の取得方法の指定を前記クライアント装置から受信し、
前記取得手段は、指定された前記取得方法で定められる前記関連情報を、指定された前記取得方法で定められる前記時間間隔で取得すること、
を特徴とする請求項５に記載のサーバ装置。
【請求項７】
前記受信手段は、さらに、前記クライアント装置に前記関連情報を送信する条件の指定を含む前記取得要求を前記クライアント装置から受信し、
前記送信手段は、指定された前記条件で前記クライアント装置に前記関連情報を送信すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項８】
前記決定手段は、さらに、取得された前記関連情報が予め定められた特定値であるか否かを判断し、前記特定値である場合に、取得された前記関連情報に関連する予め定められた第３関連情報を、取得すべき前記関連情報として決定すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項９】
前記取得手段は、さらに、前記機能の種類を表す機能情報を前記通信装置から取得し、
前記決定手段は、さらに、取得された前記機能情報に応じて予め定められた第５関連情報を、取得すべき前記関連情報として決定すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項１０】
前記取得手段は、さらに、前記通信装置の種類を表す装置情報を前記通信装置から取得し、
前記決定手段は、さらに、取得された前記装置情報に応じて予め定められた第６関連情報を、取得すべき前記関連情報として決定すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項１１】
前記通信装置のアドレス情報を記憶する記憶手段と、
前記アドレス情報が前記記憶手段に記憶されているか否かによって、前記アドレス情報の前記通信装置が新たに前記ネットワークに接続されたか否かを判断する判断手段と、をさらに備え、
前記受信手段は、さらに、前記アドレス情報を含むメッセージを前記通信装置から受信し、
前記判断手段は、受信された前記メッセージに含まれる前記アドレス情報が前記記憶手段に記憶されていない場合に、前記アドレス情報の前記通信装置が新たに前記ネットワークに接続されたと判断し、
前記送信手段は、さらに、前記通信装置が新たに前記ネットワークに接続されたと判断された場合に、前記通信装置が新たに前記ネットワークに接続されたことを表す通知情報を前記クライアント装置に送信すること、
を特徴とする請求項１に記載のサーバ装置。
【請求項１２】
前記受信手段は、さらに、前記アドレス情報を含むメッセージを、前記ネットワークを介して接続された外部装置から受信すること、
を特徴とする請求項１１に記載のサーバ装置。
【請求項１３】
複数のクライアント装置と、前記クライアント装置に機能を提供する通信装置とにネットワークを介して接続されたサーバ装置における情報取得方法であって、
受信手段によって、前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を複数の前記クライアント装置から受信する受信ステップと、
決定手段によって、受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定ステップと、
取得手段によって、決定された前記関連情報を前記通信装置から取得する取得ステップと、
送信手段によって、取得された前記関連情報を前記クライアント装置に送信する送信ステップと、
を備えたことを特徴とする情報取得方法。
【請求項１４】
請求項１３に記載の情報取得方法をコンピュータに実行させる情報取得プログラム。
【請求項１５】
コンピュータに実行させる請求項１４に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１６】
機能を提供する通信装置と、前記機能に関連する関連情報を前記通信装置から取得するサーバ装置とにネットワークを介して接続されたクライアント装置であって、
前記関連情報のうち、所望の前記関連情報を前記通信装置から取得することを要求する複数のアプリケーションと、
複数の前記アプリケーションが要求した前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、
決定された前記関連情報の取得要求を前記サーバ装置に送信する送信手段と、
を備えたことを特徴とするクライアント装置。
【請求項１７】
複数のクライアント装置と、前記クライアント装置にネットワークを介して接続され、前記クライアント装置に機能を提供する通信装置から前記機能に関連する関連情報を取得するサーバ装置と、を備えた通信システムであって、
前記クライアント装置は、
前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を前記サーバ装置に送信する送信手段を備え、
前記サーバ装置は、
前記取得要求を複数の前記クライアント装置から受信する受信手段と、
受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、
決定された前記関連情報を前記通信装置から取得する取得手段と、
取得された前記関連情報を前記クライアント装置に送信する送信手段と、を備えたこと、
を特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワーク機器に関する情報を取得するサーバ装置、情報取得方法、情報取得プログラム、記録媒体、クライアント装置、および通信システムに関するものである。
【背景技術】
【０００２】
近年、ネットワークに接続されたパーソナルコンピュータなどのクライアント装置と通信して各種機能（サービス）を提供するネットワーク機器（通信装置）が広く利用されている。このような通信装置としては、例えば、プリンタ装置、コピー機、ファクシミリ装置、スキャナ装置、および、プリンタ、コピー、ファクシミリ、スキャナなどの各サービスを１つの筐体内に収納した、いわゆるＭＦＰ（Multi Function Peripheral）と呼ばれる画像形成装置（複合機）などが挙げられる。
【０００３】
通常、このような通信装置のサービスを利用するクライアント装置上のアプリケーションは、利用しているサービスの処理状態を監視し、処理状態に応じて各種処理を制御する。このため、例えば、各ネットワーク機器の機器情報を取得して管理するサーバ装置を用いたネットワーク機器管理システムなどが用いられる。このようなネットワーク機器管理システムでは、クライアント装置に各ネットワーク機器の機器情報を提供するために、サーバ装置が定期的に各ネットワーク機器の機器情報（全情報）を取得し、取得した機器情報をサーバ装置のＨＤＤ（Hard Disk Drive）等にキャッシュし、キャッシュされた機器情報をクライアント装置に提供する仕組みになっている。
【０００４】
また、一般にこのような仕組みのネットワーク機器管理システムは、即時性が求められるため、（１）クライアント装置が求める機器情報をリアルタイムに提供する、（２）クライアント装置が求める機器情報の内容が変更されても、変更後の機器情報をリアルタイムに提供する、といった機能を備えている。
【０００５】
また、特許文献１では、デバイスに問い合わせを行うシステムに関して、複数の問い合わせポリシーの中から選択した問い合わせポリシーに応じた方法を用いて、クライアントから受け取った問い合わせを送り出すことにより、最適な方法で問い合わせを行う技術が提案されている。
【０００６】
【特許文献１】特開２００５−７８６３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１などの従来の方法では、クライアント装置の増加や即時性の要求のため、機器情報の問い合わせに関連するパケットが増大し、その結果ネットワーク負荷が増大するという問題があった。
【０００８】
特に、最近のネットワーク機器やルータなどでは、パケットのアクセス攻撃停止機能が導入されるようになっている。アクセス攻撃停止機能とは、ネットワーク機器へアクセスするパケット数が一定量を超えると、一時的にネットワーク機器へのアクセスを停止する機能である。このような機能により、ネットワーク機器へのアクセスが停止され、機器情報の問い合わせが不可能になるという問題が懸念される。
【０００９】
本発明は、上記に鑑みてなされたものであって、ネットワーク機器の機器情報の問い合わせに関連するネットワーク負荷を軽減することができるサーバ装置、情報取得方法、情報取得プログラム、記録媒体、クライアント装置、および通信システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、複数のクライアント装置と、前記クライアント装置に機能を提供する通信装置とにネットワークを介して接続されたサーバ装置であって、前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を複数の前記クライアント装置から受信する受信手段と、受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、決定された前記関連情報を前記通信装置から取得する取得手段と、取得された前記関連情報を前記クライアント装置に送信する送信手段と、を備えたことを特徴とする。
【００１１】
また、請求項２にかかる発明は、請求項１にかかる発明において、前記受信手段は、階層構造で分類された前記関連情報のうち所望の階層の前記関連情報の前記取得要求を複数の前記クライアント装置から受信し、前記決定手段は、受信した複数の前記取得要求に含まれる第１取得要求で要求される第１関連情報が、受信した複数の前記取得要求に含まれる第２取得要求で要求される第２関連情報の上位階層の前記関連情報であるか否かを判断し、上位階層である場合に、前記第１関連情報を取得すべき前記関連情報として決定すること、を特徴とする。
【００１２】
また、請求項３にかかる発明は、請求項１にかかる発明において、前記受信手段は、さらに、所望の前記関連情報が追加された前記取得要求を前記クライアント装置から受信し、前記決定手段は、さらに、前記取得手段が前記関連情報を取得後の経過時間が予め定められた期間を超えたか否かを判断し、超えていない場合に、追加された前記関連情報を取得すべき前記関連情報として決定すること、を特徴とする。
【００１３】
また、請求項４にかかる発明は、請求項１にかかる発明において、前記送信手段は、取得された前記関連情報のうち、前記取得要求で要求された前記関連情報を、前記取得要求の送信元である前記クライアント装置に送信すること、を特徴とする。
【００１４】
また、請求項５にかかる発明は、請求項１にかかる発明において、前記取得手段は、予め定められた期間の経過ごとに、決定された前記関連情報を前記通信装置から取得すること、を特徴とする。
【００１５】
また、請求項６にかかる発明は、請求項５にかかる発明において、前記受信手段は、さらに、取得する前記関連情報と前記関連情報を取得する時間間隔とを定める前記関連情報の取得方法の指定を前記クライアント装置から受信し、前記取得手段は、指定された前記取得方法で定められる前記関連情報を、指定された前記取得方法で定められる前記時間間隔で取得すること、を特徴とする。
【００１６】
また、請求項７にかかる発明は、請求項１にかかる発明において、前記受信手段は、さらに、前記クライアント装置に前記関連情報を送信する条件の指定を含む前記取得要求を前記クライアント装置から受信し、前記送信手段は、指定された前記条件で前記クライアント装置に前記関連情報を送信すること、を特徴とする。
【００１７】
また、請求項８にかかる発明は、請求項１にかかる発明において、前記決定手段は、さらに、取得された前記関連情報が予め定められた特定値であるか否かを判断し、前記特定値である場合に、取得された前記関連情報に関連する予め定められた第３関連情報を、取得すべき前記関連情報として決定すること、を特徴とする。
【００１８】
また、請求項９にかかる発明は、請求項１にかかる発明において、前記取得手段は、さらに、前記機能の種類を表す機能情報を前記通信装置から取得し、前記決定手段は、さらに、取得された前記機能情報に応じて予め定められた第５関連情報を、取得すべき前記関連情報として決定すること、を特徴とする。
【００１９】
また、請求項１０にかかる発明は、請求項１にかかる発明において、前記取得手段は、さらに、前記通信装置の種類を表す装置情報を前記通信装置から取得し、前記決定手段は、さらに、取得された前記装置情報に応じて予め定められた第６関連情報を、取得すべき前記関連情報として決定すること、を特徴とする。
【００２０】
また、請求項１１にかかる発明は、請求項１にかかる発明において、前記通信装置のアドレス情報を記憶する記憶手段と、前記アドレス情報が前記記憶手段に記憶されているか否かによって、前記アドレス情報の前記通信装置が新たに前記ネットワークに接続されたか否かを判断する判断手段と、をさらに備え、前記受信手段は、さらに、前記アドレス情報を含むメッセージを前記通信装置から受信し、前記判断手段は、受信された前記メッセージに含まれる前記アドレス情報が前記記憶手段に記憶されていない場合に、前記アドレス情報の前記通信装置が新たに前記ネットワークに接続されたと判断し、前記送信手段は、さらに、前記通信装置が新たに前記ネットワークに接続されたと判断された場合に、前記通信装置が新たに前記ネットワークに接続されたことを表す通知情報を前記クライアント装置に送信すること、を特徴とする。
【００２１】
また、請求項１２にかかる発明は、請求項１１にかかる発明において、前記受信手段は、さらに、前記アドレス情報を含むメッセージを、前記ネットワークを介して接続された外部装置から受信すること、を特徴とする。
【００２２】
また、請求項１３にかかる発明は、複数のクライアント装置と、前記クライアント装置に機能を提供する通信装置とにネットワークを介して接続されたサーバ装置における情報取得方法であって、受信手段によって、前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を複数の前記クライアント装置から受信する受信ステップと、決定手段によって、受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定ステップと、取得手段によって、決定された前記関連情報を前記通信装置から取得する取得ステップと、送信手段によって、取得された前記関連情報を前記クライアント装置に送信する送信ステップと、を備えたことを特徴とする。
【００２３】
また、請求項１４にかかる発明は、請求項１３に記載の情報取得方法をコンピュータに実行させる情報取得プログラムである。
【００２４】
また、請求項１５にかかる発明は、コンピュータに実行させる請求項１４に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体である。
【００２５】
また、請求項１６にかかる発明は、機能を提供する通信装置と、前記機能に関連する関連情報を前記通信装置から取得するサーバ装置とにネットワークを介して接続されたクライアント装置であって、前記関連情報のうち、所望の前記関連情報を前記通信装置から取得することを要求する複数のアプリケーションと、複数の前記アプリケーションが要求した前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、決定された前記関連情報の取得要求を前記サーバ装置に送信する送信手段と、を備えたことを特徴とする。
【００２６】
また、請求項１７にかかる発明は、複数のクライアント装置と、前記クライアント装置にネットワークを介して接続され、前記クライアント装置に機能を提供する通信装置から前記機能に関連する関連情報を取得するサーバ装置と、を備えた通信システムであって、前記クライアント装置は、前記機能に関連する複数の関連情報のうち所望の前記関連情報の取得要求を前記サーバ装置に送信する送信手段を備え、前記サーバ装置は、前記取得要求を複数の前記クライアント装置から受信する受信手段と、受信した複数の前記取得要求に含まれる前記関連情報それぞれを、前記通信装置から取得すべき前記関連情報として決定する決定手段と、決定された前記関連情報を前記通信装置から取得する取得手段と、取得された前記関連情報を前記クライアント装置に送信する送信手段と、を備えたこと、を特徴とする。
【発明の効果】
【００２７】
本発明によれば、各クライアントからの問い合わせ要求を統合して問合せることにより、ネットワーク機器の機器情報の問い合わせに関連するネットワーク負荷を軽減することができるという効果を奏する。
【００２８】
また、本発明によれば、簡易かつネットワーク負荷を増大させない方法でネットワーク機器のアドレス情報を取得することができるため、ネットワーク機器の機器情報の問い合わせに関連するネットワーク負荷を軽減することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２９】
以下に添付図面を参照して、この発明にかかるサーバ装置、情報取得方法、情報取得プログラム、記録媒体、クライアント装置、および通信システムの最良な実施の形態を詳細に説明する。
【００３０】
（第１の実施の形態）
第１の実施の形態にかかる通信システムは、各種機能を提供するネットワーク機器を備え、複数のクライアントＰＣ（Personal Computer）から送信された各ネットワーク機器の機能に関連する関連情報（以下、機器情報という）の取得要求を参照して取得すべき機器情報を最適化し、必要最小限の機器情報を一括して取得するものである。
【００３１】
まず、第１の実施の形態による情報取得処理の概要について図１を用いて説明する。図１は、第１の実施の形態にかかる通信システムのネットワーク構成を示す説明図である。同図に示すように、通信システムは、サーバＰＣ１００と、複数のクライアントＰＣ２００ａ〜２００ｃと、複数のネットワーク機器３００ａ〜３００ｃとがネットワークで接続された構成となっている。
【００３２】
サーバＰＣ１００は、各クライアントＰＣ２００からの機器情報の取得要求に基づき、取得する機器情報を最適化する。最適化とは、要求された複数の機器情報を統合し、必要最小限の機器情報を求めることをいう。そして、サーバＰＣ１００は、最適化された機器情報のみを、各ネットワーク機器３００から取得する。これにより、機器情報取得時のネットワーク負荷を軽減することができる。
【００３３】
次に、第１の実施の形態にかかる通信システムの構成について図２を用いて説明する。図２は、第１の実施の形態にかかる通信システムの構成を示すブロック図である。同図に示すように、通信システムは、サーバＰＣ１００と、クライアントＰＣ２００ａ〜２００ｃと、ネットワーク機器３００ａ〜３００ｃとが、ネットワークの一形態としてＬＡＮ（Local Area Network）４００で接続された構成となっている。
【００３４】
なお、クライアントＰＣ２００およびネットワーク機器３００の台数は上記に限られるものではなく、それぞれ１台以上が含まれていればよい。また、ネットワークはＬＡＮ４００に限られるものではなく、インターネット、無線ＬＡＮなどを含む従来から用いられているあらゆるネットワーク形態を適用できる。
【００３５】
ネットワーク機器３００は、例えば、プリンタ、ファクシミリ、コピー、スキャナなどのネットワークを介して機器情報を提供可能な機器である。
【００３６】
次に、サーバＰＣ１００の詳細構成について説明する。サーバＰＣ１００は、クライアントＰＣ２００およびネットワーク機器３００に関する情報を管理する装置であり、記憶部１３０と、通信Ｉ／Ｆ１２０と、通信制御部１１１と、クライアント管理部１１２と、サーバ制御部１１３と、項目決定部１１４と、機器情報取得部１１５と、を備えている。
【００３７】
記憶部１３０は、クライアントＰＣ２００およびネットワーク機器３００のアドレス情報や、取得した機器情報などを記憶するものであり、ＨＤＤ、光ディスク、メモリカードなどの一般的に利用されているあらゆる記憶媒体により構成することができる。図３は、記憶部１３０に記憶される機器情報のデータ構造の一例を示す説明図である。図３に示すように、機器情報には、各機器情報を分類するためのカテゴリと、機器情報の名称を表す機器情報名と、機器情報の値とが対応づけられて格納されている。
【００３８】
通信Ｉ／Ｆ１２０は、クライアントＰＣ２００等の外部機器との間で通信を行うインターフェースである。
【００３９】
通信制御部１１１は、通信Ｉ／Ｆ１２０を介して、クライアントＰＣ２００、ネットワーク機器３００との間でアドレス情報や機器情報を送受信する処理を制御するものである。
【００４０】
クライアント管理部１１２は、各クライアントＰＣ２００のＩＰアドレスなどのアドレス情報の管理、および各クライアントＰＣ２００からの機器情報の取得要求の管理を行うものである。
【００４１】
サーバ制御部１１３は、サーバＰＣ１００全体の処理を制御するものである。
【００４２】
項目決定部１１４は、各クライアントＰＣ２００から受信した機器情報の取得要求を参照し、実際にネットワーク機器３００から取得すべき項目（機器情報）を決定するものである。
【００４３】
機器情報取得部１１５は、項目決定部１１４により決定された機器情報を定期的に、一括してネットワーク機器３００から取得するものである。なお、一括して取得とは、複数のクライアントＰＣ２００から重複して要求された機器情報のそれぞれを、１回の取得処理でネットワーク機器３００から取得することをいう。すなわち、決定された機器情報のすべてを１回の取得処理で取得することを意味するものではない。
【００４４】
例えば、クライアントＰＣ２００ａおよび２００ｂから機器情報Ａの取得が要求され、クライアントＰＣ２００ｂおよび２００ｃから機器情報Ｂの取得が要求された場合、機器情報Ａおよび機器情報Ｂの両方を１回の取得処理で取得する必要はない。少なくとも、機器情報Ａを１回の取得処理で取得し、機器情報Ｂを１回の取得処理で取得すればよい。
【００４５】
また、機器情報取得部１１５は、機器情報をグループ化し、ネットワーク機器３００からグループごとに１回の取得処理で機器情報を取得するように構成してもよい。例えば、プリンタに関する機器情報、およびファクシミリに関する機器情報の２つにグループ化し、２回に分けてネットワーク機器３００から機器情報を取得するように構成することができる。これにより、ネットワーク機器３００の内部では、プリンタまたはファクシミリなどのアプリケーション単位で機器情報の取得処理を実行できるため、ネットワーク機器３００の処理を効率化することができる。
【００４６】
次に、クライアントＰＣ２００の詳細構成について説明する。図２に示すように、クライアントＰＣ２００は、アプリケーション２０１ａ、２０１ｂと、監視制御部２０２と、通信Ｉ／Ｆ２０３とを備えている。
【００４７】
アプリケーション２０１は、ネットワーク機器３００の監視を行う機器管理機能、またはネットワーク機器３００に対する印刷指示機能などを備えたアプリケーションである。アプリケーション２０１は、次に説明する監視制御部２０２を用いて、ネットワーク機器３００の機器情報を監視する。
【００４８】
監視制御部２０２は、サーバＰＣ１００と通信することによりネットワーク機器３００の機器情報の監視処理を制御するものである。具体的には、監視制御部２０２は、クライアントＰＣ２００を機器情報の通知対象としてサーバＰＣ１００に登録するためのクライアント登録要求、および機器情報の取得要求をサーバＰＣ１００に送信する。また、監視制御部２０２は、各要求に応じてサーバＰＣ１００から送信された処理結果や機器情報をアプリケーション２０１に通知する。
【００４９】
通信Ｉ／Ｆ２０３は、サーバＰＣ１００等の外部機器との間で通信を行うインターフェースである。
【００５０】
なお、監視制御部２０２が、本実施の形態の監視処理のためにＰＣ２００に追加される構成部であり、ＳＤＫ（Software Development Kit）などのようなプログラムとして提供され、クライアントＰＣ２００内にインストールされるように構成することができる。
【００５１】
次に、このように構成された第１の実施の形態にかかる通信システムの処理シーケンスについて説明する。本実施の形態の通信システムでは、各クライアントＰＣ２００から、取得を要求する機器情報をサーバＰＣ１００に通知する要求登録処理、サーバＰＣ１００がネットワーク機器３００から機器情報を定期的に取得して保存する定期情報取得処理、および各クライアントＰＣ２００からサーバＰＣ１００に保存された機器情報を取得する機器情報取得処理が実行される。
【００５２】
最初に、要求登録処理の処理シーケンスについて図４を用いて説明する。図４は、第１の実施の形態における要求登録処理の全体の流れを示すシーケンス図である。
【００５３】
まず、クライアントＰＣ２００の監視制御部２０２は、サーバＰＣ１００に対する要求情報を通信Ｉ／Ｆ２０３を介してサーバＰＣ１００に通知する（ステップＳ４０１）。要求情報には、各クライアントＰＣ２００のアプリケーション２０１で必要なネットワーク機器３００の機器情報名、およびクライアントＰＣ２００のアドレス情報（ＩＰアドレスなど）が含まれる。
【００５４】
例えば、印刷を実行するアプリケーション２０１が指示した印刷ジョブのステータスを監視する場合、監視制御部２０２は、アプリケーション２０１の指示を受けて印刷ジョブステータス監視のために必要な機器情報名を含む要求情報を作成する。監視制御部２０２は、例えば、プリンタステータス、給紙トレイのステータス、トナーのステータス、ジョブステータスの４つの機器情報名を含む要求情報を作成する。
【００５５】
次に、サーバＰＣ１００の通信制御部１１１は、受信したパケット内容を分析し、パケットがクライアントＰＣ２００からの要求情報である場合は、クライアント管理部１１２に要求情報を送信する（ステップＳ４０２）。
【００５６】
次に、クライアント管理部１１２は、要求情報の内容を解析し、解析した内容を記憶部１３０に登録するとともに、サーバ制御部１１３に取得すべき機器情報の最適化指示を送信する（ステップＳ４０３）。サーバ制御部１１３は、最適化指示を受け付けると、項目決定部１１４に最適化指示を送信する（ステップＳ４０４）。
【００５７】
次に、項目決定部１１４は、最適化指示を受け付けると、すべてのクライアントＰＣ２００が要求する機器情報を取得するため、各クライアントの要求情報の取得指示をクライアント管理部１１２に送信する（ステップＳ４０５）。
【００５８】
クライアント管理部１１２は、各クライアントの要求情報の取得指示を受け付けると、記憶部１３０から、クライアントＰＣ２００それぞれの要求情報を取り出し、取り出した要求情報を項目決定部１１４に送信する（ステップＳ４０６）。
【００５９】
次に、項目決定部１１４は、要求情報を受信すると、受信した要求情報から、機器情報の最適化処理を実行し、ネットワーク機器３００から取得すべき機器情報を決定する（ステップＳ４０７）。最適化処理の詳細については後述する。
【００６０】
最適化処理の後、項目決定部１１４は、決定した項目を、ネットワーク機器３００に対して通信する内容を表す情報（以下、通信内容という）として記憶部１３０に記録し、サーバ制御部１１３に最適化完了を通知する（ステップＳ４０８）。サーバ制御部１１３は、最適化完了の通知を受け付けると、クライアント管理部１１２に最適化完了を通知する（ステップＳ４０９）。
【００６１】
クライアント管理部１１２は、最適化完了の通知を受け付けると、通信制御部１１１に最適化完了を通知する（ステップＳ４１０）。通信制御部１１１は、最適化完了の通知を受け付けると、クライアントＰＣ２００の監視制御部２０２に、要求登録処理が完了したことを通知する（ステップＳ４１１）。
【００６２】
次に、ステップＳ４０７の最適化処理の詳細について説明する。図５は、第１の実施の形態における最適化処理の全体の流れを示すシーケンス図である。
【００６３】
まず、項目決定部１１４は、ネットワーク機器３００から取得すべき機器情報を表す取得情報項目を初期化する（ステップＳ５０１）。次に、項目決定部１１４は、クライアント管理部１１２から通知された各クライアントＰＣ２００の要求情報から、１つの要求情報を選択し、選択した要求情報に含まれる機器情報を取得する（ステップＳ５０２）。
【００６４】
次に、項目決定部１１４は、取得した機器情報が取得情報項目のいずれかの項目と一致するか、または、取得した機器情報が取得情報項目のいずれかの項目の下位階層の機器情報に相当するかを判断する（ステップＳ５０３）。
【００６５】
機器情報が、取得情報項目と一致せず、かつ、取得情報項目の下位階層でない場合は（ステップＳ５０３：ＮＯ）、項目決定部１１４は、さらに、機器情報が取得情報項目のいずれかの項目の上位階層の機器情報に相当するかを判断する（ステップＳ５０４）。
【００６６】
上位階層の機器情報に相当する場合は（ステップＳ５０４：ＹＥＳ）、項目決定部１１４は、当該機器情報を取得情報項目として追加するとともに、その下位階層に相当する追加済みの取得情報項目を削除する（ステップＳ５０５）。
【００６７】
上位階層の機器情報でない場合は（ステップＳ５０４：ＮＯ）、項目決定部１１４は、取得した機器情報を取得情報項目として追加する（ステップＳ５０６）。
【００６８】
ステップＳ５０３で、機器情報が、取得情報項目と一致するか、または取得情報項目の下位階層であると判断された場合（ステップＳ５０３：ＹＥＳ）、およびステップＳ５０５またはステップＳ５０６の後、項目決定部１１４は、すべての機器情報を処理したか否かを判断する（ステップＳ５０７）。
【００６９】
すべての機器情報を処理していない場合は（ステップＳ５０７：ＮＯ）、項目決定部１１４は、次の機器情報を取得して処理を繰り返す（ステップＳ５０２）。すべての機器情報を処理した場合は（ステップＳ５０７：ＹＥＳ）、最適化処理を終了する。
【００７０】
このような処理により、項目決定部１１４は、各クライアントＰＣ２００が要求した機器情報を漏れなく含むように、取得すべき機器情報を決定することができる。
【００７１】
ここで、最適化処理の具体例について説明する。例えば、図３に示すような機器情報が取得可能であることを前提とし、３つのクライアントＰＣ２００ａ〜２００ｃのそれぞれから、以下のような機器情報の取得を要求する要求情報を受信したとする。
（１）クライアントＰＣ２００ａ：
プリンタステータス、給紙トレイのステータス、トナーのステータス、ジョブステータス
（２）クライアントＰＣ２００ｂ：
機器のステータス、給紙トレイ情報、トナー情報、排紙トレイ情報
（３）クライアントＰＣ２００ｃ：
機器のステータス、サポートされている機能、オプション、ネットワーク情報
【００７２】
なお、この例のように、各クライアントＰＣ２００は、図３のような機器情報のカテゴリを指定することにより、当該カテゴリに含まれるすべての機器情報を取得することを要求できる。
【００７３】
この場合、項目決定部１１４は、各クライアントＰＣ２００から要求された機器情報を最適化し、機器のステータス、給紙トレイ情報、トナー情報、排紙トレイ情報、ジョブステータス、サポートされている機能、オプション、およびネットワーク情報を、ネットワーク機器３００から取得する必要のある機器情報として決定する。
【００７４】
例えば、クライアントＰＣ２００ａが要求した「プリンタステータス」は、クライアントＰＣ２００ｂおよび２００ｃが要求した「機器のステータス」カテゴリの中に含まれるため、項目決定部１１４は、「機器のステータス」を取得すべき機器情報として決定する。
【００７５】
同様に、クライアントＰＣ２００ａが要求した「給紙トレイのステータス」は、クライアントＰＣ２００ｂが要求した「給紙トレイ情報」カテゴリの中に含まれるため、項目決定部１１４は、「給紙トレイ情報」を取得すべき機器情報として決定する。
【００７６】
また、クライアントＰＣ２００ａが要求した「トナーのステータス」は、クライアントＰＣ２００ｂが要求した「トナー情報」カテゴリの中に含まれるため、項目決定部１１４は、「トナー情報」を取得すべき機器情報として決定する。
【００７７】
一方、クライアントＰＣ２００ａが要求した「ジョブステータス」は、「ジョブ情報」カテゴリに含まれる項目であるが、「ジョブ情報」の取得を要求した他のクライアントＰＣ２００が存在しない。このため、項目決定部１１４は、「ジョブステータス」を取得すべき機器情報として決定する。
【００７８】
このようにして、項目決定部１１４は、階層構造で分類された機器情報の階層関係を判定することにより、必要最小限の機器情報を取得すべき機器情報として決定することができる。なお、階層構造は図３に示すように２階層に限られるものではなく、３階層以上の階層構造で機器情報を表すように構成してもよい。
【００７９】
次に、定期情報取得処理の処理シーケンスについて図６を用いて説明する。図６は、第１の実施の形態における定期情報取得処理の全体の流れを示すシーケンス図である。
【００８０】
まず、サーバ制御部１１３は、予め定められた一定期間ごとに、定期情報取得処理を開始し、機器情報取得部１１５に機器情報取得指示を送信する（ステップＳ６０１）。
【００８１】
機器情報取得部１１５は、機器情報取得指示を受け付けると、項目決定部１１４に通信内容取得指示を送信する（ステップＳ６０２）。ここで、通信内容取得指示とは、項目決定部１１４が決定して記憶部１３０に保存した通信内容の取得を指示する命令をいう。
【００８２】
項目決定部１１４は、通信内容取得指示を受け付けると、記憶部１３０から通信内容を取り出して機器情報取得部１１５に送信する（ステップＳ６０３）。
【００８３】
機器情報取得部１１５は、通信内容を受け付けると、記憶部１３０から各ネットワーク機器３００のアドレスを取り出し、取り出したアドレスと、受付けた通信内容とを、通信制御部１１１に送信する（ステップＳ６０４）。なお、機器情報取得部１１５は、クライアントＰＣ２００の監視制御部２０２から機器登録指示を受けた場合や、サーバＰＣ１００による機器検索処理で機器を発見した場合に、ネットワーク機器３００のアドレスを記憶部１３０に予め記録しておく。
【００８４】
次に、通信制御部１１１は、各ネットワーク機器３００のアドレスと通信内容とを受け付けると、通信内容に従って、各ネットワーク機器３００に対して機器情報の取得要求を送信する（ステップＳ６０５）。すなわち、通信制御部１１１は、受付けたアドレスのネットワーク機器３００に対して、受付けた通信内容が表す機器情報の取得を要求する。
【００８５】
ネットワーク機器３００は、機器情報の取得要求を受け付けると、自装置内で管理する機器情報を取得し、サーバＰＣ１００の通信制御部１１１に送信する（ステップＳ６０６）。
【００８６】
通信制御部１１１は、ネットワーク機器３００から機器情報を受け付けると、機器情報取得部１１５にネットワーク機器３００のアドレスと機器情報とを送信する（ステップＳ６０７）。
【００８７】
機器情報取得部１１５は、ネットワーク機器３００のアドレスと機器情報とを受け付けると、記憶部１３０に受け付けた機器情報を記録する。そして、すべてのネットワーク機器３００からの機器情報の取得が完了した場合、機器情報取得部１１５は、サーバ制御部１１３に機器情報取得完了を送信する（ステップＳ６０８）。なお、サーバ制御部１１３は、機器情報取得完了の通知を受け付けると、一定期間が経過するまで待機する。
【００８８】
このようにして、サーバＰＣ１００は、一定期間経過ごとに、各クライアントＰＣ２００から要求された必要最小限の機器情報をネットワーク機器３００から一括して取得して記憶部１３０に記録することができる。
【００８９】
次に、機器情報取得処理の処理シーケンスについて図７を用いて説明する。図７は、第１の実施の形態における機器情報取得処理の全体の流れを示すシーケンス図である。
【００９０】
まず、クライアントＰＣ２００の監視制御部２０２は、機器情報取得要求を、サーバＰＣ１００の通信制御部１１１に送信する（ステップＳ７０１）。監視制御部２０２は、例えば、印刷を実行したアプリケーション２０１から最新の印刷ジョブのステータスを取得する指示を受けて、機器情報取得要求を生成してサーバＰＣ１００に送信する。
【００９１】
サーバＰＣ１００の通信制御部１１１は、機器情報取得要求を受信すると、受信した機器情報取得要求と、要求元のクライアントＰＣ２００のアドレスとを、クライアント管理部１１２に送信する（ステップＳ７０２）。
【００９２】
クライアント管理部１１２は、クライアントＰＣ２００のアドレスと機器情報取得指示とを受け付けると、クライアントＰＣ２００のアドレスが記憶部１３０に登録されているかどうかをチェックし、登録されている場合に、サーバ制御部１１３に機器情報取得指示を送信する（ステップＳ７０３）。
【００９３】
サーバ制御部１１３は、機器情報取得指示を受け付けると、機器情報取得部１１５に機器情報取得指示を送信する（ステップＳ７０４）。機器情報取得部１１５は、機器情報取得指示を受け付けると、記憶部１３０から機器情報を取得し、サーバ制御部１１３に取得した機器情報を送信する（ステップＳ７０５）。
【００９４】
サーバ制御部１１３は、機器情報を受け付けると、受付けた機器情報をクライアント管理部１１２に送信する（ステップＳ７０６）。クライアント管理部１１２は、機器情報を受け付けると、通信制御部１１１に機器情報を送信する（ステップＳ７０７）。また、通信制御部１１１は、受付けた機器情報を、クライアントＰＣ２００の監視制御部２０２送信する（ステップＳ７０８）。
【００９５】
このようにして、クライアントＰＣ２００は、サーバＰＣ１００によって定期的に一括して取得された機器情報から、必要な機器情報を取得することができる。したがって、一定の期間を適切に設定すれば、クライアントＰＣ２００はほぼ最新の機器情報をリアルタイムで取得することができる。
【００９６】
一方、従来のように各クライアントＰＣ２００からの要求に応じて逐次ネットワーク機器３００にアクセスして機器情報を取得するのではなく、一定期間ごとにサーバＰＣ１００が一括して機器情報を取得するため、機器情報の問い合わせに関連するネットワーク負荷を軽減することが可能となる。
【００９７】
（変形例１）
上記実施の形態では、複数のクライアントＰＣ２００から要求された機器情報をサーバＰＣ１００上で最適化していた。これに対し、クライアントＰＣ２００内に複数のアプリケーション２０１が存在する場合に、複数のアプリケーション２０１から要求された機器情報を、クライアントＰＣ２００の監視制御部２０２内で最適化してからサーバＰＣ１００に取得要求を送信するように構成してもよい。
【００９８】
例えば、監視制御部２０２が、図２に示すような２つのアプリケーション２０１ａおよびアプリケーション２０１ｂのそれぞれから、以下のような機器情報の取得を要求する要求情報を受信したとする。
（１）アプリケーション２０１ａ：
プリンタステータス、給紙トレイのステータス、トナーのステータス、ジョブステータス
（２）アプリケーション２０１ｂ：
機器のステータス、給紙トレイ情報、トナー情報、排紙トレイ情報
【００９９】
この場合、監視制御部２０２は、各アプリケーション２０１から要求された機器情報を最適化し、機器のステータス、給紙トレイ情報、トナー情報、排紙トレイ情報、およびジョブステータスを、取得すべき機器情報として決定する。
【０１００】
このようにして最適化された機器情報の取得要求をサーバＰＣ１００に送信することで、取得要求の送信回数を減らし、ネットワーク負荷をさらに低減することができる。
【０１０１】
（変形例２）
上記実施の形態では、例えば、あるクライアントＰＣ２００が要求する機器情報が変更された場合は、当該クライアントＰＣ２００から再度要求情報が通知され（ステップＳ４０１）、再度最適化処理が実行される（ステップＳ４０７）。
【０１０２】
ここで、再度要求情報が通知されたときに、前回の機器情報取得処理から一定期間が経過したかを判定し、経過していないときは、変更によって追加された不足分の機器情報だけで最適化処理を実行し、この最適化処理で決定された機器情報のみをネットワーク機器３００から取得するように構成してもよい。
【０１０３】
これにより、クライアントＰＣ２００からの要求にリアルタイムに応答しつつ、ネットワークパケット量の増加を最小限に抑止することができる。
【０１０４】
なお、一定期間の値は、クライアントＰＣ２００ごとに指定可能とし、指定された期間経過ごとに定期情報取得処理を実行するように構成してもよい。また、指定された期間の値などの要求情報は、ＲＡＭ（Random Access Memory）に保存してもよいし、ＨＤＤなどにファイルとして保存してもよい。
【０１０５】
（変形例３）
上記実施の形態では、クライアントＰＣ２００がネットワーク機器３００の機器情報を取得する時、サーバＰＣ１００の記憶部１３０に記憶されているすべての機器情報を取得していた。しかし、記憶部１３０には、他のクライアントＰＣ２００のみが要求する機器情報も含まれうるため、不要な情報を送信する可能性があった。
【０１０６】
そこで、記憶部１３０に記憶されている機器情報から、個々のクライアントＰＣ２００の要求に合わせた機器情報をピックアップし、ピックアップされた機器情報のみを、要求元のクライアントＰＣ２００に返信するように構成してもよい。これにより、無駄なパケットの送信を減らすことができる。
【０１０７】
（変形例４）
例えば、印刷のジョブ監視システムの場合、印刷ジョブを開始した後（印刷時）は、ジョブの状態変化に追従できるように短期の時間間隔でジョブの状態を監視することが望ましい。一方、印刷ジョブを開始していないとき（通常時）は、一般に変動の少ないプリンタのステータス等を監視すれば十分であるため、長期の時間間隔で状態監視を行えばよい。
【０１０８】
そこで、各クライアントＰＣ２００が、サーバＰＣ１００がネットワーク機器３００の機器情報を取得するときの時間間隔の指定を含む取得方法を指定し、指定された取得方法に応じた所定の時間間隔で、所定の項目を取得するように構成してもよい。
【０１０９】
例えば、印刷のジョブ監視の時は、以下のような指定を可能とする。
（通常時）：プリンタステータス、給紙トレイのステータス、トナーのステータスを長期の時間間隔で取得する方法（長期定期指示）
（印刷時）：プリンタステータス、給紙トレイのステータス、トナーのステータス、ジョブ情報を、印刷開始から印刷終了まで１秒間隔で取得する方法（短期定期指示）
【０１１０】
印刷時は、クライアントＰＣ２００から、サーバＰＣ１００に対して、監視対象となるネットワーク機器３００について短期定期指示を送信する。サーバＰＣ１００のサーバ制御部１１３は、短期定期指示を受け付けた場合、所定の時間間隔である１秒ごとに、図６のような定期情報取得処理を実行する。一方、クライアントＰＣ２００から長期定期指示を受付けた場合は、長期時間間隔として定められた所定の間隔で、図６のような定期情報取得処理を実行する。
【０１１１】
このように、取得方法を指定することで、必要なタイミングで必要な項目だけを取得することが可能となり、送受信されるパケット数を適切にコントロールすることができる。
【０１１２】
（変形例５）
各クライアントＰＣ２００から、機器情報を返信する条件を要求可能とし、要求された条件で機器情報を送信するように構成してもよい。
【０１１３】
条件としては、例えば、ステータスが変更された場合にのみ通知することなどを指定できる。また、すべての機器情報を一括して通知するか、要求した機器情報のみを通知するかなどを指定できるように構成してもよい。
【０１１４】
これにより、クライアントＰＣ２００の要求に応じて必要な情報のみを送信可能となり、無駄なパケット数を減らすことができる。
【０１１５】
（変形例６）
上記実施の形態では、複数のクライアントＰＣ２００から要求された機器情報を統合することにより最適化する例を説明した。機器情報を最適化する方法はこれに限られず、以下のような方法を適用してもよい。
【０１１６】
変形例６では、各種ステータスを表す複数の機器情報間の関係に着目して機器情報を最適化する方法について説明する。例えば、図３に示す機器情報のうち、機器のステータスには、システムステータス、プリンタステータス、ファクシミリステータス、コピーステータス、スキャナステータスの５種類が含まれる。これらのステータスは、機器の機能単位のステータスを表すものであるため、以下では簡略ステータスと呼ぶ。
【０１１７】
一方、図３に示す機器情報のうち、給紙トレイ、トナーなどの部品に対して定められた部品ごとの機器情報には、部品単位のステータスが含まれる。例えば、給紙トレイ情報には給紙トレイステータスが含まれ、トナー情報にはトナーステータスが含まれ、排紙トレイ情報には排紙トレイステータスが含まれ、ジョブ情報にはジョブステータスが含まれる。以下では、このような部品ごとのステータスを詳細ステータスと呼ぶ。
【０１１８】
簡略ステータスと詳細ステータスとは、簡略ステータスが表す情報に、詳細ステータスが表す情報が含まれる場合があるという関係を有する。
【０１１９】
例えば、あるトレイ（トレイ１という）が給紙なしとなった場合、簡略ステータスであるプリンタステータスには、「給紙なしエラー」が格納され、詳細ステータスである給紙トレイステータスには、「トレイ１に給紙なしエラー」が格納される。
【０１２０】
また、例えば排紙トレイ付近で用紙詰まりが発生した場合、プリンタステータスには、「用紙詰まりエラー」が格納され、排紙トレイステータスには、「排紙トレイの○○部分で用紙詰まりエラー」が格納される。
【０１２１】
さらに、例えば黒色トナー残量なしの場合、プリンタステータスには、「トナー残量なし」が格納され、トナーステータスには、「黒トナー残量なし」が格納される。
【０１２２】
変形例６では、このような関係を用いて、必要な場合のみ詳細ステータスを取得するように機器情報を最適化する。図８は、変形例６における最適化処理の流れを示すフローチャートである。
【０１２３】
まず、項目決定部１１４は、機器情報取得部１１５を用いて、ネットワーク機器３００から簡略ステータスを取得する（ステップＳ８０１）。次に、項目決定部１１４は、取得した簡略ステータスがエラーか否かを判断する（ステップＳ８０２）。エラーの場合は（ステップＳ８０２：ＹＥＳ）、項目決定部１１４は、エラーの内容に対応する詳細ステータスを、取得すべき機器情報を表す取得情報項目に追加する（ステップＳ８０３）。
【０１２４】
エラーでない場合（ステップＳ８０２：ＮＯ）、またはステップＳ８０３で取得情報項目を追加後、項目決定部１１４は、その他の共通で取得すべき機器情報を表す共通項目を、取得情報項目に追加する（ステップＳ８０４）。
【０１２５】
このように、簡略ステータスの値を参照して詳細ステータスを取得するか否かを切り分けることができる。すなわち、必要な場合のみ詳細ステータスを取得することにより、ネットワークアクセスの無駄を省くことができる。
【０１２６】
（変形例７）
変形例７では、ネットワーク機器３００が備える機能に応じて機器情報を最適化する方法について説明する。例えば、ネットワーク機器３００には、プリンタ、ファクシミリ、コピー、およびスキャナの全機能を備える機器や、コピー機能のみを備える機器が存在しうる。変形例７では、このような機器ごとの構成に合わせて取得すべき機器情報を最適化する。
【０１２７】
図９は、変形例７における最適化処理の流れを示すフローチャートである。まず、項目決定部１１４は、ネットワーク機器３００が備える機能名を含む機器機能情報をネットワーク機器３００から取得する（ステップＳ９０１）。
【０１２８】
次に、項目決定部１１４は、取得した機器機能情報にプリンタ機能が含まれるか否か、すなわち、ネットワーク機器３００がプリンタ機能を備えているか否かを判断する（ステップＳ９０２）。機器機能情報にプリンタ機能が含まれている場合は（ステップＳ９０２：ＹＥＳ）、項目決定部１１４は、プリンタに関する機器情報を取得情報項目として追加する（ステップＳ９０３）。
【０１２９】
機器機能情報にプリンタ機能が含まれていない場合（ステップＳ９０２：ＮＯ）、またはステップＳ９０３で取得情報項目を追加した後、項目決定部１１４は、取得した機器機能情報にコピー機能が含まれるか否かを判断する（ステップＳ９０４）。
【０１３０】
機器機能情報にコピー機能が含まれる場合は（ステップＳ９０４：ＹＥＳ）、項目決定部１１４は、コピーに関する機器情報を取得情報項目として追加する（ステップＳ９０５）。
【０１３１】
項目決定部１１４は、以下同様に、機器機能情報にスキャナ機能およびＦＡＸ機能が含まれるか否かを判断して含まれる場合に、対応する機器情報を取得情報項目に追加する（ステップＳ９０６〜ステップＳ９０９）。
【０１３２】
次に、項目決定部１１４は、取得情報項目に機器情報が含まれるか否かを判断し（ステップＳ９１０）、含まれる場合は（ステップＳ９１０：ＹＥＳ）、さらに共通項目を取得情報項目に追加する（ステップＳ９１１）。なお、項目決定部１１４が、各クライアントＰＣ２００から受信した要求情報に応じて、第１の実施の形態と同様の方法でさらに機器情報の最適化を行うように構成してもよい。
【０１３３】
ステップＳ９１０で取得情報項目に機器情報が含まれない場合は（ステップＳ９１０：ＮＯ）、送信すべき機器情報が存在しないため、最適化処理を終了する。
【０１３４】
このような処理により、例えば、コピー機能のみを備えた機器については、システムステータス、コピーステータス、給紙トレイ情報、トナー情報、排紙トレイ情報のみを取得すべき機器情報として決定できる。
【０１３５】
（変形例８）
変形例８では、ネットワーク機器３００が拡張的に備える機能に応じて機器情報を最適化する方法について説明する。例えば、ネットワーク機器３００の標準的な構成としてプリンタ、コピー、およびスキャナが用意され、オプションとしてファクシミリが用意されているものとする。変形例８では、標準構成を識別するためのモデル名と、オプション構成とを含む機器特有情報を取得し、取得した機器特有情報を参照して機器情報を最適化する。
【０１３６】
図１０は、変形例８における最適化処理の流れを示すフローチャートである。まず、項目決定部１１４は、ネットワーク機器３００の機器特有情報をネットワーク機器３００から取得する（ステップＳ１００１）。
【０１３７】
次に、項目決定部１１４は、機器特有情報に含まれるモデル名に対応する機器情報を取得情報項目として追加する（ステップＳ１００２）。例えば、項目決定部１１４は、モデル名ごとの標準機能を定めた情報を記憶部１３０等に保存しておき、この情報を参照してモデル名に対応する標準の機能を取得する。そして、項目決定部１１４は、変形例７で述べたような方法により、取得された機能に応じた機器情報を取得情報項目として追加する。
【０１３８】
次に、項目決定部１１４は、機器特有情報にオプション構成が含まれるか否かを判断し（ステップＳ１００３）、含まれる場合は（ステップＳ１００３：ＹＥＳ）、オプション構成に関する機器情報を取得情報項目としてさらに追加する（ステップＳ１００４）。オプション構成に関する機器情報は、オプション構成ごとの機器情報を定めた情報を記憶部１３０等に保存しておき、この情報を参照することにより取得できる。
【０１３９】
例えば、ネットワーク機器３００のモデル名が「ＡＢＣ」であり、モデル名「ＡＢＣ」の標準的な機器構成はコピー、スキャナ、プリンタであるものとする。また、このモデルで拡張できる機器構成はファクシミリ、拡張トレイであるとする。
【０１４０】
この場合は、上記のような最適化処理により、例えば、機器のステータス情報（ファクシミリステータスを含むすべてのステータスを取得することを意味する）、給紙トレイ情報、トナー情報、および排紙トレイ情報を取得すべき機器情報として決定することができる。
【０１４１】
なお、項目決定部１１４が、各クライアントＰＣ２００から受信した要求情報に応じて、第１の実施の形態と同様の方法でさらに機器情報の最適化を行うように構成してもよい。
【０１４２】
このように、第１の実施の形態にかかる通信システムでは、クライアントＰＣから送信されたネットワーク機器の機器情報の取得要求を参照して取得すべき機器情報を最適化し、必要最小限の機器情報を一括して取得することができる。これにより、ネットワーク機器の機器情報の問い合わせに関連するネットワーク負荷を軽減することができる。
【０１４３】
（第２の実施の形態）
第２の実施の形態は、機器情報を取得しうるネットワーク機器を、サーバＰＣが検知し、クライアントＰＣに通知可能とするものである。
【０１４４】
なお、サーバＰＣからネットワーク上に接続されているネットワーク機器を検索する方法としては、ブロードキャスト方式またはＰｉｎｇＳｗｅｅｐ方式が知られている。
【０１４５】
ブロードキャスト方式はパケット送信が１回で済むため、無駄なパケットが発生することはない。しかし、他のネットワークへのブロードキャスト方式による機器検索を受け付けないようにルータを設定する場合が多い。
【０１４６】
ＰｉｎｇＳｗｅｅｐ方式は、検索するＩＰアドレスの範囲を決め、ＩＰアドレスごとにＰｉｎｇなどの機能で機器を確認する方法である。ＰｉｎｇＳｗｅｅｐ方式は、パケット量が増加する要因になるので、あまり好ましくない。
【０１４７】
これらの方式の問題を解決する方法として、ネットワーク機器からサーバＰＣに機器情報を登録する方法が存在する。例えば、ＤＤＮＳ（Dynamic Domain Name System）サーバへホスト登録する方法や、ＵＰｎＰ（Universal Plug and Play）によって通知する方法などが知られている。しかし、このような方法では、ネットワーク機器側に独自のプロトコルを搭載しなければならないという問題がある。
【０１４８】
一方、ネットワーク機器には、定期的にブロードキャストのパケットが流れていることがある。例えば、ＤＤＮＳサーバへのホスト登録のパケット、電源ＯＮした時のＵＰｎＰによるホストへの通知、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバへのＩＰアドレス取得要求やリリース確認、Ａｒｐ（Address Resolution Protocol）プロトコルによる問い合わせなどなどが挙げられる。
【０１４９】
そこで、第２の実施の形態では、このようなパケットを受信したときに、パケットのヘッダから機器のアドレス情報を抽出して機器情報を登録することにより、ブロードキャスト方式やＰｉｎｇＳｗｅｅｐ方式で生じる無駄な通信を回避する。
【０１５０】
図１１は、第２の実施の形態にかかる通信システムの構成を示すブロック図である。同図に示すように、通信システムは、サーバＰＣ１１００と、クライアントＰＣ１２００ａ〜１２００ｃと、ネットワーク機器３００ａ〜３００ｃとが、ＬＡＮ４００で接続された構成となっている。
【０１５１】
第２の実施の形態では、クライアントＰＣ１２００およびサーバＰＣ１１００の詳細構成が第１の実施の形態と異なっている。まず、サーバＰＣ１１００の構成について説明する。
【０１５２】
第２の実施の形態のサーバＰＣ１１００は、記憶部１３０と、通信Ｉ／Ｆ１２０と、通信制御部１１１１と、クライアント管理部１１１２と、サーバ制御部１１１３と、項目決定部１１４と、機器情報取得部１１５と、を備えている。
【０１５３】
第２の実施の形態では、通信制御部１１１１、クライアント管理部１１１２、およびサーバ制御部１１１３の機能が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるサーバＰＣ１００の構成を表すブロック図である図２と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１５４】
通信制御部１１１１は、ネットワーク機器３００から送信されているブロードキャストパケットを受信した場合に、受信したパケットからネットワーク機器３００のアドレス情報（機器アドレス）を抽出して登録のために通知する機能が追加された点が、第１の実施の形態の通信制御部１１１と異なっている。具体的には、通信制御部１１１１は、ネットワーク機器３００から受信したパケットのヘッダからＭＡＣアドレスとＩＰアドレスとを抽出する。
【０１５５】
クライアント管理部１１１２は、新たなネットワーク機器３００が発見された場合に、発見したことを伝えるための機器発見通知を、通信制御部１１１１を介してクライアントＰＣ１２００に送信する機能が追加された点が、第１の実施の形態のクライアント管理部１１２と異なっている。
【０１５６】
サーバ制御部１１１３は、通信制御部１１１１が抽出した機器アドレスの登録処理を制御する機能が追加された点が、第１の実施の形態のサーバ制御部１１３と異なっている。
【０１５７】
次に、クライアントＰＣ１２００の構成について説明する。図１１に示すように、クライアントＰＣ１２００は、アプリケーション２０１ａ、２０１ｂと、監視制御部１２０２と、通信Ｉ／Ｆ２０３とを備えている。
【０１５８】
第２の実施の形態では、監視制御部１２０２の機能が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるクライアントＰＣ２００の構成を表すブロック図である図２と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１５９】
監視制御部１２０２は、サーバＰＣ１１００から機器発見通知を受信する点が、第１の実施の形態の監視制御部２０２と異なっている。なお、監視制御部１２０２は、受信した機器発見通知をアプリケーション２０１に通知するか、アプリケーション２０１から参照可能に保持する。
【０１６０】
次に、このように構成された第２の実施の形態にかかる機器情報登録処理の処理シーケンスについて図１２を用いて説明する。機器情報登録処理とは、パケットの解析によりネットワーク機器３００を発見して関連する情報を登録する処理をいう。図１２は、第２の実施の形態における機器情報登録処理の全体の流れを示すシーケンス図である。
【０１６１】
まず、ネットワーク機器３００が定期的なブロードキャストの送信を行う（ステップＳ１２０１）。サーバＰＣ１１００の通信制御部１１１１は、ネットワーク上に流れるパケットを受信すると、受信したパケットから機器アドレスを抽出し、抽出した機器アドレスをサーバ制御部１１１３に送信する（ステップＳ１２０２）。なお、機器アドレスとしては、例えば、ＩＰアドレスとＭＡＣ（Media Access Control）アドレスとを抽出する。
【０１６２】
次に、サーバ制御部１１１３は、機器アドレスを受け付けると、機器情報取得部１１５に機器アドレスと機器情報取得指示とを送信する（ステップＳ１２０３）。
【０１６３】
機器情報取得部１１５は、機器アドレスと機器情報取得指示を受け付けると、項目決定部１１４に通信内容取得指示を送信する（ステップＳ１２０４）。項目決定部１１４は、通信内容取得指示を受け付けると、記憶部１３０から通信内容を取り出し、機器情報取得部１１５に送信する（ステップＳ１２０５）。
【０１６４】
機器情報取得部１１５は、通信内容を受け付けると、機器アドレスと、受付けた通信内容とを、通信制御部１１１１に送信する（ステップＳ１２０６）。
【０１６５】
次に、通信制御部１１１１は、機器アドレスと通信内容とを受け付けると、通信内容に従って、ネットワーク機器３００に対して機器情報の取得要求を送信する（ステップＳ１２０７）。
【０１６６】
ネットワーク機器３００は、機器情報の取得要求を受け付けると、自装置内で管理する機器情報を取得し、サーバＰＣ１１００の通信制御部１１１１に送信する（ステップＳ１２０８）。
【０１６７】
通信制御部１１１１は、ネットワーク機器３００から機器情報を受け付けると、機器情報取得部１１５にネットワーク機器３００のアドレスと機器情報とを送信する（ステップＳ１２０９）。
【０１６８】
機器情報取得部１１５は、ネットワーク機器３００のアドレスと機器情報とを受け付けると、記憶部１３０に受け付けた機器情報を記録し、サーバ制御部１１１３に機器情報取得完了を送信する（ステップＳ１２１０）。
【０１６９】
次に、サーバ制御部１１１３は、機器情報取得完了の通知を受け付けると、クライアント管理部１１１２に機器発見通知を送信する（ステップＳ１２１１）。なお、既に記憶部１３０に登録済みであった場合には機器発見通知は送信しない。
【０１７０】
次に、クライアント管理部１１１２は、機器発見通知を受け付けると、記憶部１３０から各クライアントＰＣ２００の要求情報を取り出し、要求情報に合致したクライアントＰＣ２００にのみ、通信制御部１１１１を介して機器発見通知を送信する（ステップＳ１２１２、ステップＳ１２１３）。
【０１７１】
このように、第２の実施の形態では、ネットワーク機器から定期的なブロードキャストを含む全パケットを受け付ける仕組みと、パケットのヘッダから機器アドレスを取得する仕組みを設け、機器アドレスからネットワーク機器であると判断した場合に、機器情報を取得して登録するができる。すなわち、ネットワーク機器から送信される既存のパケットを再利用することにより、サーバＰＣからネットワーク機器へ機器検索用のパケットを送信せずに、機器を検索することが可能となる。したがって、ネットワーク負荷を増加させずに機器の検索を行うことができる。
【０１７２】
（変形例）
上記第２の実施の形態では、サーバＰＣ１１００が接続されたネットワーク上に流れるパケットしか取得することができない。したがって、他のネットワークに接続されたネットワーク機器の情報を取得するためには、当該他のネットワーク上に流れるパケットを取得する必要がある。
【０１７３】
図１３は、第２の実施の形態の変形例にかかる通信システムのネットワーク構成例を示す説明図である。図１３に示すように、本変形例にかかる通信システムは、複数のサーバＰＣ１１００ａ、１１００ｂを備え、それぞれ異なるネットワーク４００ａ、４００ｂに接続された構成となっている。
【０１７４】
ネットワーク４００ａには、ネットワーク機器３００ａが接続され、ネットワーク４００ｂには、ネットワーク機器３００ｚが接続されている。また、各ネットワークは、ルータ１２５０を介して接続されている。
【０１７５】
このように、本変形例は、ネットワークごとにサーバＰＣ１１００を設置し、他のネットワークのサーバＰＣ１１００から、他のネットワークで発見されたネットワーク機器３００ｚの機器アドレスを送信する構成となっている。なお、サーバＰＣ１１００を通常のＰＣとして構成する代わりに、同様の機能を備えた組み込み機器として実現してもよい。
【０１７６】
次に、本変形例における機器情報登録処理の処理シーケンスについて図１４を用いて説明する。図１４は、第２の実施の形態の変形例における機器情報登録処理の全体の流れを示すシーケンス図である。なお、同図は、図１３のサーバＰＣ１１００ａが実行する機器情報登録処理を表している。
【０１７７】
まず、サーバＰＣ１１００ａが接続されたネットワーク４００ａと異なるネットワークであるネットワーク４００ｂに接続されたネットワーク機器３００ｚが、ネットワーク４００ｂ内にブロードキャストパケットを送信する（ステップＳ１４０１）。
【０１７８】
ネットワーク４００ｂ内のサーバＰＣ１１００ｂは、通信制御部１１１１によってブロードキャストパケットを受信し、受信したパケットから機器アドレスを抽出し、抽出した機器アドレスをサーバＰＣ１１００ａに送信する（ステップＳ１４０２）。
【０１７９】
サーバＰＣ１１００ａの通信制御部１１１１は、受信した機器アドレスをサーバ制御部１１１３に送信する（ステップＳ１４０３）。
【０１８０】
ステップＳ１４０４からステップＳ１４１４までは、第２の実施の形態の機器情報登録処理を表す図１２のステップＳ１２０３からステップＳ１２１３までと同様の処理なので、その説明を省略する。
【０１８１】
このように、本変形例によれば、他のネットワークに接続されたネットワーク機器も対象として、ネットワーク負荷を増加させずに機器の検索を行うことができる。
【０１８２】
次に、第１および第２の実施の形態にかかるサーバＰＣのハードウェア構成について図１５を用いて説明する。図１５は、サーバＰＣのハードウェア構成を示す説明図である。
【０１８３】
第１および第２の実施の形態にかかるサーバＰＣは、ＣＰＵ（Central Processing Unit）５１などの制御装置と、ＲＯＭ（Read Only Memory）５２やＲＡＭ５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ１２０と、ＨＤＤ（Hard Disk Drive）、ＣＤドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバス６１を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【０１８４】
第１および第２の実施の形態にかかるサーバＰＣで実行される情報取得プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital Versatile Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０１８５】
また、第１および第２の実施の形態にかかるサーバＰＣで実行される情報取得プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、第１および第２の実施の形態にかかるサーバＰＣで実行される情報取得プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【０１８６】
また、第１および第２の実施の形態の情報取得プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【０１８７】
第１および第２の実施の形態にかかるサーバＰＣで実行される情報取得プログラムは、上述した各部（通信制御部、クライアント管理部、サーバ制御部、項目決定部、機器情報取得部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体から情報取得プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上記各部が主記憶装置上に生成されるようになっている。
【産業上の利用可能性】
【０１８８】
以上のように、本発明にかかるサーバ装置、情報取得方法、情報取得プログラム、記録媒体、クライアント装置、および通信システムは、プリンタ、ファクシミリ、コピー、スキャナなどの機能を備えたネットワーク機器の機器情報を取得して管理する装置、方法、およびプログラムに適している。
【図面の簡単な説明】
【０１８９】
【図１】第１の実施の形態にかかる通信システムのネットワーク構成を示す説明図である。
【図２】第１の実施の形態にかかる通信システムの構成を示すブロック図である。
【図３】機器情報のデータ構造の一例を示す説明図である。
【図４】第１の実施の形態における要求登録処理の全体の流れを示すシーケンス図である。
【図５】第１の実施の形態における最適化処理の全体の流れを示すシーケンス図である。
【図６】第１の実施の形態における定期情報取得処理の全体の流れを示すシーケンス図である。
【図７】第１の実施の形態における機器情報取得処理の全体の流れを示すシーケンス図である。
【図８】変形例６における最適化処理の流れを示すフローチャートである。
【図９】変形例７における最適化処理の流れを示すフローチャートである。
【図１０】変形例８における最適化処理の流れを示すフローチャートである。
【図１１】第２の実施の形態にかかる通信システムの構成を示すブロック図である。
【図１２】第２の実施の形態における機器情報登録処理の全体の流れを示すシーケンス図である。
【図１３】第２の実施の形態の変形例にかかる通信システムのネットワーク構成例を示す説明図である。
【図１４】第２の実施の形態の変形例における機器情報登録処理の全体の流れを示すシーケンス図である。
【図１５】サーバＰＣのハードウェア構成を示す説明図である。
【符号の説明】
【０１９０】
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
６１  バス
１００  サーバＰＣ
１１１  通信制御部
１１２  クライアント管理部
１１３  サーバ制御部
１１４  項目決定部
１１５  機器情報取得部
１３０  記憶部
２０１  アプリケーション
２０２  監視制御部
２０３  通信Ｉ／Ｆ
３００  ネットワーク機器
４００  ネットワーク
１１００  サーバＰＣ
１１１１  通信制御部
１１１２  クライアント管理部
１１１３  サーバ制御部
１２００  クライアントＰＣ
１２０２  監視制御部
１２５０  ルータ
【図１】
2008310472.tif 000003
【図２】
2008310472.tif 000004
【図３】
2008310472.tif 000005
【図４】
2008310472.tif 000006
【図５】
2008310472.tif 000007
【図６】
2008310472.tif 000008
【図７】
2008310472.tif 000009
【図８】
2008310472.tif 000010
【図９】
2008310472.tif 000011
【図１０】
2008310472.tif 000012
【図１１】
2008310472.tif 000013
【図１２】
2008310472.tif 000014
【図１３】
2008310472.tif 000015
【図１４】
2008310472.tif 000016
【図１５】
2008310472.tif 000017