(57)【特許請求の範囲】
【請求項１】
ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態を監視するデバイス監視装置であって、
監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別手段と、
前記判別手段により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、
前記設定手段による設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御手段とを備えたことを特徴とするデバイス監視装置。
【請求項２】
前記判別手段は、前記デバイスに対して前記第１の情報取得要求を送信した後、一定時間経過しても返信がない状態を、前記デバイスが前記特定の状態であるとして判別することを特徴とする請求項１に記載のデバイス監視装置。
【請求項３】
前記第１の情報取得要求は、予め定められた標準ＭＩＢ及び任意のプライベートＭＩＢを含むデータベースの値を取得する要求であり、前記第２の情報取得要求は、前記データベースの一部の値を取得する要求であることを特徴とする請求項１または２に記載のデバイス監視装置。
【請求項４】
前記判別手段が前記複数のデバイスにおける一部のデバイスの状態に変化がないことを判別した場合には、状態に変化がないと判別されたデバイスに対して前記第２の情報取得要求を行う手段を有することを特徴とする請求項１乃至３のいずれか一項に記載のデバイス監視装置。
【請求項５】
監視対象となっているデバイスの状態が記憶されるテーブルを有し、
前記判別手段は、前記テーブルに記憶された内容に従って前記デバイスの状態を判別することを特徴とする請求項１乃至４のいずれか一項に記載のデバイス監視装置。
【請求項６】
ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置であって、
監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別手段と、
前記第２のデバイスから状態変化の通知を受信する手段と、
監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、
前記設定手段による設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御手段とを備えたことを特徴とするデバイス監視装置。
【請求項７】
監視対象となっているデバイスが第１のデバイスであるか第２のデバイスであるかを識別する手段と、
識別した内容を保持する手段とを有することを特徴とする請求項６に記載のデバイス監視装置。
【請求項８】
監視対象となっている前記第１及び第２のデバイスの状態が記憶されるテーブルを有し、
前記判別手段は、前記テーブルに記憶された内容に従って前記第１及び第２のデバイスの状態を判別することを特徴とする請求項６または７に記載のデバイス監視装置。
【請求項９】
前記第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、該通知を送信した第２のデバイスへの情報取得要求を停止する手段を有することを特徴とする請求項６乃至８のいずれか一項に記載のデバイス監視装置。
【請求項１０】
ネットワーク上の第１のデバイス監視装置または第２のデバイス監視装置が前記ネットワーク上の複数のデバイスの情報取得要求を送信し、前記デバイスが返信した情報を基に前記デバイスを監視するデバイス監視システムであって、
前記第１のデバイス監視装置は、
監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別手段と、
前記判別手段により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記第２のデバイス監視装置に対して、前記デバイスへの、前記第１の情報取得要求よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、
前記設定手段による設定後に前記第２のデバイス監視装置から割り込み通知を受けた場合、前記第２のデバイス監視装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御手段とを備え、
前記第２のデバイス監視装置は、
前記設定手段による設定の時における前記第１のデバイス監視装置からの指示によって前記デバイスへ前記第２の情報取得要求を送信し、その返信により該デバイスの状態変化を検知したときに、少なくとも前記第１のデバイス監視装置へ前記割り込み通知を発行する手段を備えたことを特徴とするデバイス監視システム。
【請求項１１】
ネットワーク上の第１のデバイス監視装置または第２のデバイス監視装置が、前記ネットワーク上に配置され、状態変化した時に外部の装置へ該状態変化を通知する機能を持たない第１のデバイスと該機能を持つ第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視システムであって、
前記第１のデバイス監視装置は、
監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別手段と、
前記第２のデバイスから状態変化の通知を受信する手段と、
監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記第２のデバイス監視装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、
前記設定手段による設定後に前記第２のデバイス監視装置から割り込み通知を受けた場合、前記第２のデバイス監視装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御手段とを備え、
前記第２のデバイス監視装置は、
前記設定手段の処理による設定の時における前記第１のデバイス監視装置からの指示によって前記第１のデバイスへ前記第２の情報取得要求を送信し、その返信により該第１のデバイスの状態変化を検知した場合、または前記第２のデバイスから状態変化の通知としてスリープ復帰もしくはパワーオンへ機器の状態が変化した旨の通知を受信した場合に、少なくとも前記第１のデバイス監視装置へ前記割り込み通知を発行する手段を備えたことを特徴とするデバイス監視システム。
【請求項１２】
ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態変化を監視するデバイス監視装置の制御方法であって、
監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別工程と、
前記判別工程により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定工程と、
前記設定工程による設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開ように制御する制御工程とを有することを特徴とするデバイス監視装置の制御方法。
【請求項１３】
ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置の制御方法であって、
監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別工程と、
前記第２のデバイスから状態変化の通知を受信する工程と、
監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定工程と、
前記設定工程による設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御工程とを備えたことを特徴とするデバイス監視装置の制御方法。
【請求項１４】
ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態を監視するデバイス監視装置の制御方法を実現するための、コンピュータで読み取り可能なプログラムであって、
監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別ステップと、
前記判別ステップにより、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定ステップと、
前記設定ステップによる設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御ステップとを有することを特徴とするプログラム。
【請求項１５】
ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置の制御方法を実現するための、コンピュータで読み取り可能なプログラムであって、
監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別ステップと、
前記第２のデバイスから状態変化の通知を受信するステップと、
監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定ステップと、
前記設定ステップによる設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御ステップとを備えたことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上の複写機やプリンタ等のデバイスを監視するデバイス監視装置及びその制御方法、前記デバイス監視装置を有するデバイス監視システム、並びに前記制御方法を実現するためのプログラムに関するものである。
【背景技術】
【０００２】
ネットワーク上の複写機やプリンタ等のデバイスの状態変化を監視するシステムは、従来より一般的に知られている。かかるシステムにおいて、監視を行う監視用デバイス（以下、親機と記す）は、監視対象となるネットワーク上のデバイス（以下、子機と記す）の状態を調べるために一定時間ごとに子機へ情報取得要求を送信する。例えば子機が複写機であった場合は、親機から、動作状況や、トナー量、給紙カセット段の設定情報のほか、印刷用紙詰まりや印刷用紙切れ等のエラー情報などを取得するための要求を送信すると、子機は要求のあった情報を親機に応答する。
【０００３】
このようにして親機は、子機の状態を把握し、例えば監視対象となっている子機でエラーが発生した時に、管理者へ電子メールを送付したりモニタに表示したりすることでデバイス監視を行っている。
【０００４】
上記システムにおいて、子機がスリープ状態（動作が一定時間以上行われなかったときに移行するモード）や電源オフ状態に移行した場合には、子機の状態は変化しないため監視する必要が無くなる。こうした場合に、デバイス監視を行っている親機のシステムコントローラの電力も適切に制御し消費電力を削減することが望ましい。
【０００５】
そこで、従来では、子機がスリープ移行時に親機に通知することで、親機が情報取得要求よるデバイス監視を行うことを停止し、子機がスリープ復帰時にデバイス監視を再開させるようにした手法が提案されている（例えば、特許文献１参照）。また、子機の状態に応じて情報取得要求を送信しデバイス監視する間隔を長くするような手法も提案されている（例えば、特許文献２参照）。このような手法によって、親機の負荷を下げ消費電力の削減を図るものである。
【特許文献１】特開２０００−１０３１４８号公報
【特許文献２】特開２００６−２１５６８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の手法では、子機が、スリープ状態から復帰したことを通知する手段を備えていない場合は、親機が情報取得要求を停止することができない。即ち、通常、子機がスリープ状態や電源オフ状態に移行した際には、子機は親機の情報取得要求に応答しなくなるが、その後において、親機は、子機がスリープ状態から復帰したことや電源オン状態に移行したことをネットワーク上で検知することができない。したがって、親機は、子機の状態変化（スリープ状態からの復帰や電源オン）を監視するために、子機のスリープ時や電源オフ時であっても情報取得要求を行う必要があった。
【０００７】
特許文献２の手法では、情報取得要求を送信して子機を監視する間隔を長くしても、親機の構成規模が大きな場合には、一定時間ごとに大きな負荷のかかる状態に入るため、監視を継続するための消費電力を効率的に削減できないといった問題がある。
【０００８】
本発明は上記従来の問題点に鑑み、次のような、デバイス監視装置及びその制御方法、デバイス監視システム、並びにプログラムを提供することを目的とする。即ち、デバイスがスリープ状態から復帰したことを通知する手段を備えていない場合であっても、デバイス監視システムにおける効率的な負荷の軽減及び消費電力の削減を可能にする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明のデバイス監視装置は、ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態を監視するデバイス監視装置であって、監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別手段と、前記判別手段により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、前記設定手段による設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御手段とを備えたことを特徴とする。
上記目的を達成するため、本発明のデバイス監視装置は、ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置であって、監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別手段と、前記第２のデバイスから状態変化の通知を受信する手段と、監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、前記設定手段による設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御手段とを備えたことを特徴とする。
上記目的を達成するため、本発明のデバイス監視システムは、ネットワーク上の第１のデバイス監視装置または第２のデバイス監視装置が前記ネットワーク上の複数のデバイスの情報取得要求を送信し、前記デバイスが返信した情報を基に前記デバイスを監視するデバイス監視システムであって、前記第１のデバイス監視装置は、監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別手段と、前記判別手段により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記第２のデバイス監視装置に対して、前記デバイスへの、前記第１の情報取得要求よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、前記設定手段による設定後に前記第２のデバイス監視装置から割り込み通知を受けた場合、前記第２のデバイス監視装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御手段とを備え、前記第２のデバイス監視装置は、前記設定手段による設定の時における前記第１のデバイス監視装置からの指示によって前記デバイスへ前記第２の情報取得要求を送信し、その返信により該デバイスの状態変化を検知したときに、少なくとも前記第１のデバイス監視装置へ前記割り込み通知を発行する手段を備えたことを特徴とする。
上記目的を達成するため、本発明のデバイス監視システムは、ネットワーク上の第１のデバイス監視装置または第２のデバイス監視装置が、前記ネットワーク上に配置され、状態変化した時に外部の装置へ該状態変化を通知する機能を持たない第１のデバイスと該機能を持つ第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視システムであって、前記第１のデバイス監視装置は、監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別手段と、前記第２のデバイスから状態変化の通知を受信する手段と、監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記第２のデバイス監視装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定手段と、前記設定手段による設定後に前記第２のデバイス監視装置から割り込み通知を受けた場合、前記第２のデバイス監視装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御手段とを備え、前記第２のデバイス監視装置は、前記設定手段の処理による設定の時における前記第１のデバイス監視装置からの指示によって前記第１のデバイスへ前記第２の情報取得要求を送信し、その返信により該第１のデバイスの状態変化を検知した場合、または前記第２のデバイスから状態変化の通知としてスリープ復帰もしくはパワーオンへ機器の状態が変化した旨の通知を受信した場合に、少なくとも前記第１のデバイス監視装置へ前記割り込み通知を発行する手段を備えたことを特徴とする。
上記目的を達成するため、本発明のデバイス監視装置の制御方法は、ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態変化を監視するデバイス監視装置の制御方法であって、監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別工程と、前記判別工程により、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定工程と、前記設定工程による設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開ように制御する制御工程とを有することを特徴とする。
上記目的を達成するため、本発明のデバイス監視装置の制御方法は、ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置の制御方法であって、監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別工程と、前記第２のデバイスから状態変化の通知を受信する工程と、監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定工程と、前記設定工程による設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御工程とを備えたことを特徴とする。
上記目的を達成するため、本発明のプログラムは、ネットワーク上の複数のデバイスに対して第１の情報取得要求を送信し、前記デバイスが返信した情報を基に該デバイスの状態を監視するデバイス監視装置の制御方法を実現するための、コンピュータで読み取り可能なプログラムであって、監視対象となっている前記デバイスが特定の状態であるか否かを判別する判別ステップと、前記判別ステップにより、監視対象となっているデバイスのうちの全てのデバイスが前記特定の状態であると判別されたときに、前記デバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記デバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定ステップと、前記設定ステップによる設定後に前記処理装置から、前記デバイスに対する前記第２の情報取得要求の返信に基づく割り込み通知を受けた場合、前記処理装置に、当該デバイスに対して前記第２の情報取得要求を送信することを停止させると共に、当該デバイスへの前記第１の情報取得要求の送信を再開するように制御する制御ステップとを有することを特徴とする。
上記目的を達成するため、本発明のプログラムは、ネットワーク上の１つ或いは複数の第１のデバイスと、状態変化した時に外部の装置へ該状態変化を通知することが可能な第２のデバイスとに第１の情報取得要求を送信し、前記第１及び第２のデバイスが返信した情報を基に、前記第１及び第２のデバイスの状態変化を監視するデバイス監視装置の制御方法を実現するための、コンピュータで読み取り可能なプログラムであって、監視対象となっている前記第１のデバイスが特定の状態であるか否かを判別する判別ステップと、前記第２のデバイスから状態変化の通知を受信するステップと、監視対象となっている全ての第１のデバイスが前記特定の状態であると判別し、且つ監視対象となっている全ての第２のデバイスから状態変化の通知としてスリープもしくはパワーオフへ機器の状態が変化した旨の通知を受信した場合に、前記第１及び第２のデバイスに対する第１の情報取得要求の送信を停止すると共に、前記ネットワーク上の処理装置に対して、前記第１のデバイスへの、前記第１の情報取得要求によって取得される情報よりも制限された情報を取得するための第２の情報取得要求の送信を開始することを設定する設定ステップと、前記設定ステップによる設定後に前記処理装置から割り込み通知を受けた場合、前記処理装置に、前記第１のデバイスに対して前記第２の情報取得要求を送信することを停止させると共に、前記第１及び第２のデバイスへの前記第１の情報取得要求の送信を再開させるように制御する制御ステップとを備えたことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、デバイス監視システムにおける効率的な負荷の軽減及び消費電力の削減が可能になる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１９】
［第１の実施の形態］
＜デバイス監視システムの構成＞
図１は、本発明の第１の実施の形態に係るデバイス監視装置を含むデバイス監視システムの一構成例を示すブロック図である。
【００２０】
このデバイス監視システムは、ネットワーク１を介して、ＭＦＰ１１に内蔵のコントローラ１００と、ＭＦＰ１１に内蔵のＬＡＮコントローラ２１と、プリンタ（ＳＦＰ）３１、３２とで構成されている。なお、本例では、コントローラ１００は第１のデバイス監視装置であり、ＬＡＮコントローラ２１は第２のデバイス監視装置であり、プリンタ（ＳＦＰ）３１、３２は監視対象となるデバイスである。第２のデバイス監視装置は、本発明における処理装置の一例である。
【００２１】
ＭＦＰ１１は、デバイス監視機能、原稿スキャン機能、プリント機能、ボックス機能、及びファックス機能を登載した（ＭＦＰ：複合機能周辺装置；  Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎａｌ  Ｐｅｒｉｐｈｅｒａｌ）である。
【００２２】
デバイス監視装置であるコントローラ１００は、ネットワーク１上のプリンタ３１，３２などへ情報取得要求（ポーリング）を行い、情報や状態を監視し管理を行う。また、スキャナ２００などから供給された画像データを処理し、プリンタ３００へ送信して印刷したり、ＰＤＬファイルを生成して送信したりすることができる。なお、デバイス監視装置は、パーソナルコンピュータやサーバーのようなデバイス監視機能を持った情報処理装置で構成しても良い。
【００２３】
デバイス監視装置であるＬＡＮコントローラ２１は、ネットワーク１上のプリンタ３１，３２などへ情報取得要求（ポーリング）を行い、情報や状態を監視し管理を行う。そして、コントローラ１００との間で画像ファイルなどのデータやメールを、内部バスを介して送受信することができる。なお、図１の例では、ＬＡＮコントローラとして、ＭＦＰ１１に内蔵されているＬＡＮコントローラ２１を例として説明しているが、ネットワーク１上にある別の装置である例えばＰＣなどの情報端末であっても良い。
【００２４】
プリンタであるプリンタ３１、３２は、プリント機能を搭載した（単機能周辺装置：Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎａｌ  Ｐｅｒｉｐｈｅｒａｌ）と呼ばれる装置である。ネットワークインターフェースを具備し、このネットワークインターフェースを介して印刷データや画像データを受信し、電子写真技術などの既知の印刷技術を用いて用紙などに印刷を行う出力機器である。
【００２５】
なお、本例では、プリンタ３１、３２がネットワーク１上に接続されているシステムの例を示すが、ネットワーク１上に配置されていない１台もしくは複数台のプリンタであっても構わない。さらには、ネットワーク１上にある別装置である例えばパーソナルコンピュータなどの情報端末が接続されるシステムにも適応可能であることは言うまでもない。
【００２６】
前述のようなシステム構成がなされた環境において、ネットワーク上の装置を管理するための方法がいくつか国際標準化機構（ＩＳＯ）で標準化されている。開放型システム間相互接続（Ｏｐｅｎ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ，  ＯＳＩ）モデルと呼ばれるコンピュータなどの通信機器の持つべき機能を階層構造に分割したモデルを制定している。
【００２７】
ＯＳＩ参照モデルにおいて第７層のアプリケーション層にあたるＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）は、インターネット上のシステム管理を行うためのプロトコルである。この規格化されたプロトコルを使い機器からの情報を集めて監視や制御を行うことができる。
【００２８】
ＳＮＭＰによるネットワーク管理技術によれば、ネットワーク管理システムには、少なくとも１つのネットワーク管理ステーション（ＮＭＳ）が含まれる。さらに、各々がエージェントを含むいくつかの管理対象ノード及び管理ステーションや、エージェントが管理情報を交換するために使用するネットワーク管理プロトコルも含まれる。
【００２９】
ユーザは、ＮＭＳ上でネットワーク管理ソフトウェアを用いて管理対象ノード上のエージェントソフトウェアと通信することにより、ネットワーク上のデータを得、またデータを変更することができる。
【００３０】
エージェントとは、各々のターゲット装置のバックグラウンドプロセスとして動作するソフトウェアである。ユーザがネットワーク上の装置に対して管理データを要求すると、ネットワーク管理ソフトウェアはオブジェクト識別情報を管理パケットまたはフレームに入れてターゲット装置のエージェントへ送り出す。エージェントは、そのオブジェクト識別情報を解釈して、そのオブジェクト識別情報に対応するデータを取り出し、そのデータをパケットに入れてユーザに返信する。エージェントは、自分の状態に関するデータをデータベースの形式で保持している。このデータベースのことを、ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）と呼ぶ。
【００３１】
エージェントの実装例として、次のようなものが考えられる。即ち、プリンタであるプリンタ３１，３２をネットワークに接続するためのネットワークボード上にエージェントを実装することである。これにより、プリンタであるプリンタ３１，３２をネットワーク管理ソフトウェアによる管理の対象とすることができる。
【００３２】
ユーザは、例えばデバイス監視装置（ＭＦＰ）１１内蔵のコントローラ１００上で実行中のネットワーク管理ソフトウェアを用いて制御対象のプリンタ３１、３２の情報を取得したり変更したりすることができる。例えばプリンタ３１においてジャム（紙詰まり）が発生した場合に、プリンタ３１からエラー情報を取得し、その情報を、予め設定した例えば管理者の情報端末装置（図示されていない）に対して電子メールで送信することも可能である。
【００３３】
＜デバイス監視装置の構成＞
（Ａ）コントローラ１００の構成
次に、デバイス監視装置であるコントローラ１００の構成について説明する。
【００３４】
図１において、コントローラ１００は、画像入力装置であるスキャナ２００や画像出力装置であるプリンタ３００と接続し、一方では公衆回線１２、ＬＡＮ１３などのネットワークと接続する。これによって、画像情報やデバイス情報の入出力を行うためのコントローラである。
【００３５】
コントローラ１００は、システムバス１０１上に、ＣＰＵ１０３、ＲＡＭ１０７、ＲＯＭ１０８、ＨＤＤ１０９、操作部Ｉ／Ｆ１０４、及びネットワークＩ／Ｆ１０５を配置している。
【００３６】
ＣＰＵ１０３は、ＭＦＰ１１全体を制御するコントローラとして機能する。また本実施の形態の特徴となるソフトウェアであるデバイス監視アプリケーションを実行する。なお、デバイス監視アプリケーションの詳細については後述する。ＲＡＭ１０７は、ＣＰＵ１０３が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリとしても利用される。ＲＯＭ１０８はブートＲＯＭとして利用され、ＭＦＰ１１のブートプログラムが格納されている。
【００３７】
ＨＤＤ１０９は、ハードディスクドライブであり、システムソフトウェア、画像データ、アドレス帳などの個人データを格納する。さらに、本実施の形態の特徴となるデバイス監視アプリケーションのプログラムコード、監視対象のデバイス（監視対象機と呼ぶ）を管理するためのテーブル、及び監視対象機から取得した情報を格納する。画像データは、後述の画像圧縮部１１５で符号化されて格納され、使用時には復元される。なお、ハードディスクドライブを具備していない機器は、他の記憶媒体（フラッシュメモリなど）に記憶するものとする。
【００３８】
操作部Ｉ／Ｆ１０４は、操作部４００とのインターフェース部であり、操作部４００に表示する画像データを操作部４００に対して出力する。また、操作部４００からユーザが入力した情報をＣＰＵ１０３に伝える役割をする。
【００３９】
ネットワークＩ／Ｆ１０５は、ＬＡＮコントローラ２１を介してＬＡＮ１３に接続し、ネットワーク１上の装置との間で情報の入出力を行う。ＬＡＮコントローラ２１の詳細については後述する。モデム１０６は公衆回線１２に接続し、データ送受信を行うための変調復調処理を行う。
【００４０】
そして、データ構造を変換するバスブリッジであるイメージバスＩ／Ｆ１１０が、システムバス１０１と画像データを高速で送信するイメージバス１０２を接続している。イメージバス１０２は、ＰＣＩバスまたはＩＥＥＥ１３９４などの高速バスで構成される。
【００４１】
イメージバス１０２上にはラスターイメージプロセッサ（アクセラレータ）１１１、デバイスＩ／Ｆ部１１２、スキャナ画像処理部７００、プリンタ画像処理部８００、及び画像圧縮部１１５が配置されている。
【００４２】
アクセラレータ１１１は、ＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ部１１２は、画像入出力デバイスであるスキャナ２００やプリンタ３００とコントローラ１００を接続し、画像データの同期系／非同期系の変換を行う。画像圧縮部１１５は、画像データの圧縮伸長処理を行う。圧縮或いは伸長する画像データはＨＤＤ１０９から読み出し圧縮、伸長処理後に再びＨＤＤ１０９に格納する。
【００４３】
電源制御部５００は、不図示の電源からコントローラ１００、スキャナ２００、プリンタ３００、及びＬＡＮコントローラ６００へ電源を供給する。電源制御部５００は４系統の電源供給ラインを備えており３系統は非常時電線（非常夜電線５０１，５０２，５０３）であり、１系統は常時電線（常夜電線５０４）である。例えばコントローラ１００、ＬＡＮコントローラ６００からの制御信号により非常夜電線５０１，５０２，５０３からの電源供給のオン／オフをすることができる。コントローラ１００、スキャナ２００、及びプリンタ３００で一定時間待機状態が続き、コントローラ１００からの省電力モード状態への移行を指示されると、非常夜電線５０１，５０２，５０３からの電源供給が停止される。
【００４４】
スキャナ画像処理部７００は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部８００は、プリント出力画像データに対して、プリンタに合わせた補正、解像度変換等を行う。
【００４５】
（Ｂ）ＬＡＮコントローラ２１の構成
次に、ＬＡＮコントローラ２１の構成について、図２を参照して説明する。
【００４６】
図２は、図１中のＬＡＮコントローラ２１の構成を示すブロック図である。
【００４７】
ＬＡＮコントローラ２１は、ＣＰＵ６０１、ＲＡＭ６０２、ＲＯＭ６０３、ＨＤＤ６０４、バスＩ／Ｆ６０５、ネットワークバスＩ／Ｆ６０６、及び電源制御部６０７を備えている。
【００４８】
ＣＰＵ６０１は、ＬＡＮコントローラ２１全体を制御するコントローラとして機能する。ローカルバス６０９、バスＩ／Ｆ６０５及びシステムバス１０１を介してコントローラ１００に対して割り込みを送信したり、コントローラ１００からの命令を受信したりする。つまり、双方向通信を行う。またＣＰＵ６０１は、ローカルバス６０９及びネットワークバスＩ／Ｆ６０６を介してＬＡＮ１３に接続され、ＬＡＮ１３やネットワーク１上のプリンタや情報処理端末に対してデータを送受信するための制御を行う。さらに、ＣＰＵ６０１は、コントローラ１００がスリープ状態の際には、コントローラ１００への特定のネットワークアクセスに対する処理を行う。例えばブロードキャストポーリングに対して代理応答したり、印刷ジョブに対しては電源制御信号６０８によりコントローラ１００への電源供給を開始したりする。
【００４９】
ＲＡＭ６０２は、ＣＰＵ６０１が動作するためのシステムワークメモリであり、ネットワークへ転送するデータを一時記憶するためのバッファメモリとしても利用される。ＲＯＭ６０３はブートＲＯＭとして利用され、ＬＡＮコントローラ２１のブートプログラムが格納されている。
【００５０】
ＨＤＤ６０４はハードディスクドライブであり、システムソフトウェア、転送データ等を格納する。また、本実施の形態の特徴となる、デバイス監視を実行するためのプログラムが格納されている。このＨＤＤ６０４には、ネットワーク１に接続されているノードに関するＭＩＢに存在する画像出力速度や設置位置などの情報がＩＰアドレスごとに保存される場合もある。
【００５１】
バスＩ／Ｆ６０５は、ローカルバス６０９とコントローラ１００のシステムバス１０１とを接続するためのバスインターフェースである。ネットワークバスＩ／Ｆ６０６は、ローカルバス６０９とＬＡＮ１３とを接続するためのバスインターフェースである。電源制御部６０７と電源制御信号６０８は、ＭＦＰ１１の電源制御部５００に対して制御を行うためのものである。
【００５２】
ローカルバス６０９は、ＬＡＮコントローラ２１内部のＣＰＵ６０１をはじめとする処理部を接続するためのシステムバスである。
【００５３】
（Ｃ）デバイス監視アプリケーション
次に、デバイス監視アプリケーションについて説明する。
【００５４】
デバイス監視アプリケーションは、デバイス監視装置であるコントローラ１００或いはＬＡＮコントローラ２１上で動作するソフトウェアである。ユーザは、監視対象となるデバイスのネットワークＩＰアドレスやＭＡＣアドレスを登録し、これらのエントリを、ＲＡＭもしくはＨＤＤなどの記憶装置内部にテーブル（デバイス監視テーブル）として格納する。
【００５５】
ユーザが登録設定を終えるとデバイス監視装置はデバイス監視動作を開始する。例えば、図３のように、デバイス監視装置であるＭＦＰ１１がプリンタ３１に対して情報取得要求（ＧｅｔＲｅｑｕｅｓｔ）を送信し、プリンタ３１からの応答（ＧｅｔＲｅｓｐｏｎｓｅ）を受信して格納する処理をする。要求した情報が全て格納されると一定時間が経過するのを待った後で前記処理を再開することを繰り返す。なお、図３は、デバイス監視装置と監視対象のデバイス間における通常ポーリング時の通信を示したシーケンス図であり、この通信は、例えばＳＮＭＰを使用して行われる。
【００５６】
このようにデバイス監視アプリケーションを実行することにより、デバイス監視装置は、監視対象となるデバイスからの情報を取得し内部の記憶装置に格納する。そして、取得した情報から監視対象となるデバイスの状態に応じて管理者にエラーメッセージを送信するなど、デバイスの管理を行うことが可能である。
【００５７】
＜デバイス監視システムの処理＞
次に、上記構成のデバイス監視システムのデバイス監視処理について説明する。
【００５８】
コントローラ１００が監視対象であるプリンタ３１，プリンタ３２の状態を監視している際に、プリンタ３１，３２のスリープ状態への移行に応じて、ＬＡＮコントローラ２１上のデバイス監視アプリケーションを有効にする。一方でコントローラ１００のデバイス監視アプリケーションを無効にする。
【００５９】
そして、プリンタ３１，プリンタ３２のいずれかがスリープ状態から通常状態に復帰した場合、ＬＡＮコントローラ２１が割り込みをコントローラ１００へ発行する。コントローラ１００は、この割り込みを受信するとコントローラ２１のデバイス監視アプリケーションを無効にし、コントローラ１００自身のデバイス監視アプリケーションを有効にする。
【００６０】
このような本実施の形態に係るデバイス監視処理の詳細について、以下、図４〜図９を参照して説明する。図４は、第１の実施の形態に係るデバイス監視テーブルを示したテーブル図である。
【００６１】
コントローラ１００は、図４に示すようなデバイス監視テーブルを備えており、このデバイス監視テーブルに監視対象機を登録する。デバイス監視アプリケーションを実行する前に、監視対象としてプリンタ（ＳＦＰ）３１，３２をデバイス監視テーブルに登録する。例えば図４に示すように、デバイス監視テーブルに、プリンタ（ＳＦＰ）３１，３２のネットワークＩＰアドレスとＭＡＣアドレスを登録する。また、デバイス監視テーブルには、各プリンタの状態レベルが格納される領域が設けられる。この状態レベルとは、コントローラ１００からの情報取得要求に対して応答可能か否かを示す情報である。即ち、監視対象であるプリンタ３１，３２は、スリープモードやパワーオフ状態に移行するとコントローラ１００からの情報取得要求に対して応答しなくなり、このことを、前記状態レベルの判断に用いるものである。
【００６２】
そして、コントローラ１００は、上記デバイス監視テーブルを作成後、デバイス監視アプリケーションを制御するプログラムを実行する。
【００６３】
（Ａ）コントローラ１００の動作
次に、本実施の形態に係る、ＭＦＰ１１のコントローラ１００の動作について、  図５及び図６を参照して説明する。
【００６４】
図５及び図６は、第１の実施の形態に係るコントローラ１００のデバイス監視処理を示すフローチャートである。このデバイス監視処理は、コントローラ１００のＣＰＵ１０３がデバイス監視アプリケーションを制御するプログラムを実行することにより処理されるものである。
【００６５】
コントローラ１００はまずポーリング間隔時間が経過するのを待つ（Ｓ１０１）。ポーリング間隔時間が経過するとコントローラ１００は、デバイス監視テーブルから監視対象であるプリンタ３１，プリンタ３２のいずれかを選択する（Ｓ１０２）。
【００６６】
Ｓ１０２で例えばプリンタ３１が選択された場合に、コントローラ１００は、監視対象であるプリンタ３１が応答可能か否か（つまりスリープモード、パワーオフ状態かどうか）をデバイス監視テーブルの状態レベルの内容によって検出する（Ｓ１０３）。
【００６７】
コントローラ１００は、監視対象であるプリンタ３１が応答可能の場合には、図３にあるようにプリンタ３１の情報を取得するためにパケットの送受信を複数回繰り返す通常ポーリングを行う（Ｓ１０４）。つまり、コントローラ１００は、通常ポーリングにおいて、ステータス情報とＭＩＢ情報を取得するための要求パケットを送信する。これは、本発明の第１の情報取得要求の一例である。
【００６８】
なお、コントローラ１００は、機種ごとに、ＭＩＢ情報を取得するための要求パケットを生成する。例えばプリンタ３１がプライベートなＭＩＢ情報を判別できるのであればオブジェクト識別子を該プライベートなＭＩＢ用に設定した情報取得要求のパケットを、それ以外のプリンタであれば標準ＭＩＢを取得するためのパケットを生成して送信する。即ち、通常ポーリングでの情報取得要求は、予め定められた標準ＭＩＢや任意のプライベートＭＩＢなどのデータベースの値を取得する要求である。
【００６９】
Ｓ１０２でプリンタ３２が選択され、プリンタ３２がスリープ中などで応答不可の場合には、コントローラ１００は、前記通常ポーリングよりも簡易な簡易ポーリング（第２の情報取得要求、図７参照）を行うためのパケットを生成して送信する（Ｓ１０５）。簡易ポーリングは、通常ポーリングによって取得される情報よりも制限された情報を取得するための情報取得要求である。
【００７０】
図７は、デバイス監視装置と監視対象のデバイス間における簡易ポーリング時の通信を示したシーケンス図である。簡易ポーリングでは、任意の単パケット（例えばステータス情報要求パケット）の送受信を例えばＳＮＭＰを使用して行う。簡易ポーリングでの情報取得要求は、予め定められた標準ＭＩＢや任意のプライベートＭＩＢなどのデータベースの一部のみの値を取得する要求である。
【００７１】
コントローラ１００はパケット送信後、一定時間の間に送信先からの応答があるかを待つ（Ｓ１０６）。応答があった場合は、コントローラ１００はデバイス監視テーブルの状態レベルを通常ポーリング（応答可能）に設定する（Ｓ１０７）。つまりデバイス監視テーブルの状態を起動状態にする。そして、この設定後、コントローラ１００は、図３で説明したように、情報取得要求と応答を繰り返す通常ポーリングを行い、受信した監視対象のプリンタ３１のＭＩＢ情報などを内部の記憶装置（ＲＡＭ１０７或いはＨＤＤ１０９）に格納する（Ｓ１０８）。
【００７２】
Ｓ１０６でパケット送信先である監視対象であるデバイスからの応答がなかった場合は、デバイス監視テーブルの状態レベルを簡易ポーリング（応答不可）に変更する（Ｓ１０９）。つまり、コントローラ１００がパケットを送信して一定時間経過後に、図８のようにコントローラ１００がタイムアウトを検知した場合には、デバイス監視テーブルの状態レベルを簡易ポーリング（応答不可）に変更する。なお、図８は、デバイス監視装置と監視対象であるデバイス間における簡易ポーリング時のＳＮＭＰ通信でタイムアウトが発生した場合を示したシーケンス図である。
【００７３】
その後、コントローラ１００は、デバイス監視テーブルの状態レベルから、監視対象機の全て（ここではプリンタ３１，プリンタ３２）が簡易ポーリング（応答不可）であるか否かを判定する（Ｓ１１０）。監視対象機の全てが簡易ポーリングであるわけではないと判定した場合には、Ｓ１１１へ進む。Ｓ１１１において、コントローラ１００は、デバイス監視テーブルに未選択の監視対象機が無ければＳ１０１へ戻り、未選択があればＳ１０２へ戻る。
【００７４】
Ｓ１１０において全ての監視対象機が簡易ポーリング（応答不可）であった場合、コントローラ１００は、負荷が小さくなったと判断して、Ｓ１１２以降の処理へ進む。
【００７５】
Ｓ１１２では、コントローラ１００は、コントローラ１００自身のデバイス監視アプリケーションを無効にする。これによって、コントローラ１００による全ての監視対象機に対するポーリングが停止する。
【００７６】
続くＳ１１３では、コントローラ１００は、ＬＡＮコントローラ２１からの割り込み（スリープ復帰通知）を待つ設定を行う。さらに、ＬＡＮコントローラ２１に対して簡易ポーリングすべき監視対象機の情報を通知し、デバイス監視アプリケーションを有効にする設定を行う。即ち、コントローラ１００は、自身のポーリングを停止して、代わりにＬＡＮコントローラ２１に簡易ポーリングさせるようにする。
【００７７】
その後、コントローラ１００はＬＡＮコントローラ２１からの割り込みを待つ（Ｓ１１４）。なお、ＬＡＮコントローラ２１が割り込みを発生する条件は、監視対象機のいずれかから、簡易ポーリングに対する応答を受信した場合である。
【００７８】
Ｓ１１４において、コントローラ１００は、ＬＡＮコントローラ２１からの割り込みを検知したら、ＬＡＮコントローラ２１のデバイス監視アプリケーションを無効にする設定を行う（Ｓ１１５）。つまり、ＬＡＮコントローラ２１のポーリングを停止する。
【００７９】
コントローラ１００は、Ｓ１０１からの動作を再開する（Ｓ１１６）。つまり、コントローラ１００自身のポーリングを再開してデバイス監視を復活させる。
【００８０】
（Ｂ）ＬＡＮコントローラ２１の動作
図９は、第１の実施の形態に係るＬＡＮコントローラ２１の動作を示すフローチャートである。この動作は、ＬＡＮコントローラ２１のＣＰＵ６０１がデバイス監視アプリケーションを制御するプログラムを実行することにより処理され、前述のコントローラ１００の動作に連動するものである。
【００８１】
ＬＡＮコントローラ２１が起動すると本処理が開始され、まずＬＡＮコントローラ２１は、コントローラ１００によってデバイス監視アプリケーションの設定が有効になったかどうかを検出する（Ｓ２０１）。
【００８２】
Ｓ２０１でデバイス監視アプリケーションの設定が有効になった場合、ＬＡＮコントローラ２１は予め決められたポーリング間隔時間の経過を待つ（Ｓ２０２）。そして、ＬＡＮコントローラ２１は、コントローラ１００から通知されたデバイス監視テーブルから監視対象機を選択する（Ｓ２０３）。
【００８３】
Ｓ２０３でプリンタ３１が選択された場合、ＬＡＮコントローラ２１はプリンタ３１に対して簡易ポーリングを行うためのパケットを送信する（Ｓ２０４）。そして、ＬＡＮコントローラ２１はパケット送信後、一定時間の間に送信先からの応答を待つ（Ｓ２０５）。
【００８４】
Ｓ２０５でタイムアウトを検知して応答がなかった場合は、ＬＡＮコントローラ２１はデバイス監視テーブルに未選択の監視対象機が無ければＳ２０２へ戻り、未選択の監視対象機があればＳ２０３へ戻る（Ｓ２０６）。
【００８５】
Ｓ２０５において、パケット送信した監視対象機からの応答があった場合は、ＬＡＮコントローラ２１はコントローラ１００に対して割り込みを発行する（Ｓ２０７）。そして、ＬＡＮコントローラ２１は、コントローラ１００による割り込み解除を待ち、解除されるとＳ２０１へ戻る（Ｓ２０８）。
【００８６】
＜第１の実施の形態に係る利点＞
本実施の形態によれば、コントローラ１００が、監視しているデバイスの状態に応じて監視を停止し、代わってＬＡＮコントローラ２１に監視を継続させることによって、システム全体の処理の負荷を軽減させ且つ消費電力を削減することが可能である。即ち、コントローラ１００は、全ての監視対象機が簡易ポーリング状態になったときに自身の負荷が小さくなったと判断し、自身による監視対象機に対するポーリングを停止し、ＬＡＮコントローラ２１に代わりに簡易ポーリングを実行させる。これにより、監視対象機がスリープ状態からの復帰を通知する手段を備えていない機種であっても、コントローラ１００はポーリングを停止することができる。そして、コントローラ１００は、コピー処理やプリント処理などのジョブがなければ一定時間の待機状態を経た後、省電力モードに移行することができる。
【００８７】
即ち、ＭＦＰ１１のコントローラ１００が、省電力モード中はＬＡＮコントローラ２１への電源しか消費しない。ＬＡＮコントローラ２１はコントローラ１００よりも処理が簡易であるため小規模なシステム構成でデバイス監視アプリケーションを実行することができる。そのため、システム全体としての消費電力量を抑えることが可能になる。また、簡易ポーリングのみを行うことで、コントローラ１００及びＬＡＮコントローラ２１の負荷を軽減させることが可能となる。
【００８８】
［第２の実施の形態］
デバイスの中には、スリープモード移行時に親機に対してスリープ移行通知を行うと共に、スリープモードからの復帰時にスリープ復帰通知を行う機能を有する機種が存在する。また、情報取得要求を受信するとスリープ状態であってもスリープ状態から復帰するような機種、つまり情報取得要求に対して常に反応することが可能な機種も存在する。第２の実施の形態では、このような機種が監視対象機の中に混在する場合のデバイス監視処理について、図１０〜図１４を参照して説明する。
【００８９】
＜デバイス監視システムの構成＞
図１０は、本発明の第２の実施の形態に係るデバイス監視システムの一構成例を示すブロック図であり、図１と共通の要素には同一の符号を付し、その説明を省略する。
【００９０】
このデバイス監視システムは、図１に示した構成において、監視対象機として、プリンタ３１，３２の他にプリンタ３３，３４が追加された構成を成している。プリンタ３１，３２は、本発明における第１のデバイスの一例であり、また、プリンタ３３，３４は、本発明における第２のデバイスの一例である。
【００９１】
プリンタ３３，３４は、プリンタ３１，３２の機能に加え、通常のデータ処理待機状態からスリープモード移行時にＭＦＰ１１に対してスリープ移行通知を行う機能を有する。さらに、スリープモード状態から通常のデータ処理待機状態への移行時にＭＦＰ１１に対してスリープ復帰通知を行う機能を有する。このようなスリープ移行通知とスリープ復帰通知を総称して状態遷移通知と呼ぶことにする。そして、コントローラ１００は、監視対象機が状態遷移通知行うことが可能な機種であるかを識別する機能を有している。この識別した結果は、後述するデバイス監視テーブルに保持される（図１１（ａ）のエントリ「簡易ポーリング対象機」を参照）。
【００９２】
＜デバイス監視システムの処理＞
図１１（ａ），（ｂ）は、第２の実施の形態に係るデバイス監視テーブルを示したテーブル図であり、同図（ａ）はデバイス監視テーブルの全体を示し、同図（ｂ）は、デバイス監視テーブルの状態レベルを示している。
【００９３】
コントローラ１００は、図１１（ａ），（ｂ）に示すようなデバイス監視テーブルを持っており、デバイス監視アプリケーションを実行する前に、監視対象機としてプリンタ３１〜３４をデバイス監視テーブルに登録する。例えば、図１１（ａ）に示すようにＩＰアドレスとＭＡＣアドレスとをテーブルに登録する。
【００９４】
そして、コントローラ１００は、監視対象となったプリンタ３１〜３４までのデバイスと通信して情報を取得した後、これらのデバイスが、状態遷移通知が可能な機種か否かを判別する。
【００９５】
図１１（ａ）に示すデバイス監視テーブル内の「簡易ポーリング対象機」のエントリは、状態遷移通知が可能な機種か否かを示している。つまり、状態遷移通知が可能な機種であれば、簡易ポーリング対象外のデバイスとしてテーブルに登録される（図１１（ａ）の×印）。図１１（ａ）の例では、プリンタ３３，３４が簡易ポーリング対象外のデバイスとしてテーブルに登録されている。さらに、監視対象機がこのような機種でなければ、簡易ポーリング対象のデバイスとしてテーブルに登録される（図１１（ａ）の○印）。図１１（ａ）の例では、プリンタ３１，３２が簡易ポーリング対象のデバイスとしてテーブルに登録されている。
【００９６】
なお、前述したように、デバイスの中には、情報取得要求（例えばＳＮＭＰ）を受信するとスリープ状態であってもスリープ状態から復帰するような機種、つまり情報取得要求に対して常に反応することが可能な機種も存在する。このような機種を、上記デバイス監視テーブルにおいて、簡易ポーリング対象外のデバイスとして登録しても良い。
【００９７】
また、図１１（ａ）に示す「状態レベル」のエントリは、図１１（ｂ）に詳細が記述されているように監視対象機に対してどのような処理をしているかを示している。
【００９８】
コントローラ１００は、上記のデバイス監視テーブルを作成した後、各々のデバイス情報を格納する記憶領域を確保する。そして、デバイス監視アプリケーションを制御するプログラムを実行する。
【００９９】
（Ａ）コントローラ１００の動作
次に、本実施の形態に係る、ＭＦＰ１１のコントローラ１００の動作について説明する。
【０１００】
まず、コントローラ１００が監視対象のデバイスをデバイス監視テーブルに登録する監視対象設定処理について、図１２を参照して説明する。
【０１０１】
図１２は、第２の実施の形態に係るコントローラ１００の監視対象設定処理を示すフローチャートである。
【０１０２】
コントローラ１００は、監視対象設定処理を実行すると、ＭＦＰ１１はネットワーク上から監視対象となるデバイスを探索し（Ｓ３０１）、監視対象となるデバイスがあったか否かを判断する。デバイスが見つからなかった場合は、終了する（Ｓ３０２）。
【０１０３】
Ｓ３０２において監視対象となるデバイスが見つかった場合は、コントローラ１００は管理者が選択したデバイスにアクセスして、該デバイスに関する情報を取得する（Ｓ３０３）。
【０１０４】
次いで、コントローラ１００は、取得した情報から、選択されたデバイスが状態遷移通知可能な機種か否かを判定する（Ｓ３０４）。そして、Ｓ３０４において状態遷移通知が可能な機種であった場合には、デバイス監視テーブルに簡易ポーリング対象外のデバイスとして登録する（Ｓ３０５）。本実施の形態においては、図１０におけるプリンタ３３とプリンタ３４が簡易ポーリング対象外のデバイスとして登録されたものとする。
【０１０５】
Ｓ３０４において、選択された監視対象機が状態遷移通知が不可能な機種であった場合、コントローラ１００はこのデバイスをデバイス監視テーブルに簡易ポーリング対象機として登録する（Ｓ３０６）。本実施の形態においては、図１０におけるプリンタ３１，３２が簡易ポーリング対象機として登録されたものとする。
【０１０６】
このようにして監視対象設定処理が終了すると、コントローラ１００はデバイス監視処理を開始する。
【０１０７】
次に、本実施の形態に係るコントローラ１００のデバイス監視処理について、図１３及び図１４を参照しつつ説明する。
【０１０８】
図１３及び図１４は、第２の実施の形態に係るコントローラ１００のデバイス監視処理を示すフローチャートである。このデバイス監視処理は、コントローラ１００のＣＰＵ１０３がデバイス監視アプリケーションを制御するプログラムを実行することにより処理されるものである。
【０１０９】
まず、コントローラ１００は、監視対象機から状態変化通知（スリープ移行通知／スリープ復帰通知、或いはパワーオフ通知／パワーオン通知）があったか否かを判定する（Ｓ４０１）。スリープ復帰通知またはパワーオン通知があった場合は、通知のあったデバイスのデバイス監視テーブルの状態レベルを  “１：起動中”に変更する（Ｓ４０２）。
【０１１０】
コントローラ１００は、監視対象機からスリープ移行通知／パワーオフ通知があった場合には、デバイス監視テーブルにおける、該通知のあったデバイスの状態レベルを“３：簡易ポーリング対象外”に変更する（Ｓ４０３）。
【０１１１】
前記Ｓ４０２またはＳ４０３の処理後、コントローラ１００は、ポーリング間隔時間が経過しているか否かを判定し（Ｓ４０４）、経過していなければＳ４０１へ戻る。ポーリング間隔時間が経過するとコントローラ１００は、デバイス監視テーブルから監視対象機であるプリンタ３１〜３４のいずれかを選択する（Ｓ４０５）。
【０１１２】
そして、コントローラ１００は、Ｓ４０５で選択した監視対象機の状態レベルを判別する（Ｓ４０６）。選択した監視対象機の状態レベルが“１；起動中”であるとＳ４０６で判別した場合は、図３にあるように監視対象となるデバイスの情報を取得するためにパケットの送受信を複数回繰り返す通常ポーリングを行う（Ｓ４０７）。なお、コントローラ１００は、第１の実施の形態と同様に、機種ごとに、ＭＩＢ情報を取得するための要求パケットを生成する。
【０１１３】
Ｓ４０６において、選択した監視対象機の状態レベルが“２：簡易ポーリング”であると判別した場合、コントローラ１００は、監視対象機に対して図７のような簡易ポーリングを行うためのパケット（第１の実施の形態と同様）を生成して送信する（Ｓ４０８）。
【０１１４】
Ｓ４０６において、選択した監視対象機の状態レベルが“３：簡易ポーリング対象外”であると判別した場合、コントローラ１００は、ポーリングを行わずにＳ４１４へ遷移する（Ｓ４０９）。即ち、監視対象機からコントローラ１００にスリープ移行通知／パワーオフ通知があった場合には、デバイス監視テーブルにおける当該デバイスの状態レベルが“３：簡易ポーリング対象外”に設定され、当該デバイスへのポーリングを行わない。
【０１１５】
前記Ｓ４０７またはＳ４０８においてパケットを送信した後、一定時間の間に監視対象機である送信先からの応答があるかを待つ（Ｓ４１０）。
【０１１６】
Ｓ４１０において応答があった場合、コントローラ１００は、デバイス監視テーブルの状態レベルを“１：起動中”に変更し（Ｓ４１１）、監視対象となるデバイスからの情報を内部の記憶装置に格納する（Ｓ４１２）。一方、Ｓ４１０において応答がなかった場合、コントローラ１００は、デバイス監視テーブルの状態レベルを“２：簡易ポーリング”に設定する（Ｓ４１３）。Ｓ４１２またはＳ４１３の処理後は、Ｓ４１４へ進む。
【０１１７】
Ｓ４１４では、コントローラ１００は、デバイス監視テーブルの状態レベルから全ての監視対象が“２：簡易ポーリング”もしくは“３：簡易ポーリング対象外”のいずれかのレベル、つまり全ての監視対象機がスリープもしくはパワーオフ状態であるかを判別する。
【０１１８】
Ｓ４１４においてデバイス監視テーブルに“１：起動中”の監視対象機があった場合、コントローラ１００は、デバイス監視テーブルに未選択の監視対象機が無ければＳ４０１へ、未選択の監視対象機があればＳ４０５へ戻る（Ｓ４１５）。
【０１１９】
一方、Ｓ４１４において全ての監視対象機がスリープもしくはパワーオフ状態であったと判別した場合、コントローラ１００は、コントローラ１００自身の負荷が小さくなったと判断して、Ｓ４１６以降の処理へ移行する。
【０１２０】
Ｓ４１６では、コントローラ１００は、自身のデバイス監視アプリケーションを無効にする。これによって、コントローラ１００による全ての監視対象機に対するポーリングが停止する。そして、次のＳ４１７において、コントローラ１００は、ＬＡＮコントローラ２１の割り込みを待つ設定を行う。さらにコントローラ１００は、ＬＡＮコントローラ２１に対して、簡易ポーリングすべき監視対象機の情報（例えば本例ではプリンタ３１，３２）と、スリープ復帰待ちすべき監視対象機の情報（例えば本例ではプリンタ３３，３４）を通知する。さらに次のＳ４１８において、コントローラ１００は、ＬＡＮコントローラ２１のデバイス監視アプリケーションを有効にする設定を行う。
【０１２１】
このようにして、コントローラ１００は、ＬＡＮコントローラ２１が簡易ポーリングすべき監視対象機にのみ簡易ポーリングを行うように設定することができる。
【０１２２】
そして、コントローラ１００は、ＬＡＮコントローラ２１からの割り込みを待つ（Ｓ４１９）。なお、ＬＡＮコントローラ２１が割り込みを発生する条件は、監視対象機のいずれかから簡易ポーリングの応答を受信した場合と、Ｓ４１７で通知されたスリープ復帰待ちすべき監視対象機からのスリープ復帰通知を受信した場合である。
【０１２３】
コントローラ１００は、Ｓ４１９においてＬＡＮコントローラ２１からの割り込みを検知したら、ＬＡＮコントローラ２１のデバイス監視アプリケーションを無効にする設定を行う（Ｓ４２０）。そして、コントローラ１００は、自身のデバイス監視アプリケーションを有効にし（Ｓ４２１）、Ｓ４０１からの動作を再開する。
【０１２４】
（Ｂ）ＬＡＮコントローラ２１の動作
上述したように、ＬＡＮコントローラ２１が割り込みを発生する条件が、監視対象機のいずれかから簡易ポーリングの応答を受信した場合に加えて、スリープ復帰待ちすべき監視対象機からのスリープ復帰通知を受信した場合となる。そのほか、本実施の形態に係るＬＡＮコントローラ２１の動作は、上記第１の実施の形態で説明したＬＡＮコントローラ２１の動作と同様である。
【０１２５】
＜第２の実施の形態に係る利点＞
本実施の形態によれば、監視対象機として、状態遷移通知が可能な機種、或いは外部装置からの情報取得要求に対して常に反応することが可能な機種については、監視対象設定処理時に「簡易ポーリング対象外」としてデバイス監視テーブルに登録する。これにより、状態遷移通知が可能なデバイスや、情報取得要求に対して常に反応することが可能な機種が混在したシステムにおいても、上記第１の実施の形態と同様なデバイス監視を実行することが可能である。
【０１２６】
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【０１２７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２８】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしても良い。
【０１２９】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１３０】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【図面の簡単な説明】
【０１３１】
【図１】第１の実施の形態に係るデバイス監視装置を含むデバイス監視システムの一構成例を示すブロック図である。
【図２】図１中のＬＡＮコントローラの構成を示すブロック図である。
【図３】デバイス監視装置と監視対象のデバイス間における通常ポーリング時の通信を示したシーケンス図である。
【図４】第１の実施の形態に係るデバイス監視テーブルを示したテーブル図である。
【図５】第１の実施の形態に係る第１のデバイス監視装置のデバイス監視処理を示すフローチャートである。
【図６】図５の続きのフローチャートである。
【図７】デバイス監視装置と監視対象のデバイス間における簡易ポーリング時の通信を示したシーケンス図である。
【図８】デバイス監視装置と監視対象であるデバイス間における簡易ポーリング時のＳＮＭＰ通信でタイムアウトが発生した場合を示したシーケンス図である。
【図９】第１の実施の形態に係る第２のデバイス監視装置の動作を示すフローチャートである。
【図１０】第２の実施の形態に係るデバイス監視システムの一構成例を示すブロック図である。
【図１１】第２の実施の形態に係るデバイス監視テーブルを示したテーブル図である。
【図１２】第２の実施の形態に係る第１のデバイス監視装置の監視対象設定処理を示すフローチャートである。
【図１３】第２の実施の形態に係る第１のデバイス監視装置のデバイス監視処理を示すフローチャートである。
【図１４】図１３の続きのフローチャートである。
【符号の説明】
【０１３２】
１      ネットワーク
１１    ＭＦＰ
１３    ＬＡＮ
２１    ＬＡＮコントローラ
３１〜３４    プリンタ
１００  コントローラ
１０３  ＣＰＵ
１０７  ＲＡＭ
１０８  ＲＯＭ
１０９  ＨＤＤ
６００  ＬＡＮコントローラ
６０１  ＣＰＵ
６０２  ＲＡＭ
６０３  ＲＯＭ
６０４  ＨＤＤ
【図１】
0005328225.tif 000002
【図２】
0005328225.tif 000003
【図３】
0005328225.tif 000004
【図４】
0005328225.tif 000005
【図５】
0005328225.tif 000006
【図６】
0005328225.tif 000007
【図７】
0005328225.tif 000008
【図８】
0005328225.tif 000009
【図９】
0005328225.tif 000010
【図１０】
0005328225.tif 000011
【図１１】
0005328225.tif 000012
【図１２】
0005328225.tif 000013
【図１３】
0005328225.tif 000014
【図１４】
0005328225.tif 000015