(57)【要約】【課題】  省電力状態の装置が、パケットを受信した場合に通常状態へ復帰すべきか否かの判断をより正確に行えるようにし、装置の省電力の効率を向上させる。【解決手段】  通常状態よりも消費電力が小さい省電力状態で動作可能な情報処理装置は、省電力状態においてネットワークを介して送信されたパケットを受信すると、当該パケットが特定のプロトコルに基づくパケットであるか否かを判定する。判定の結果、特定のプロトコルに基づくパケットであると判定された場合、データ記述言語で記述された後続のパケットのデータを解析し、解析結果に応じて、前記省電力状態から通常状態への復帰を指示する。【選択図】  図１０
2010239193.tif 000002
【特許請求の範囲】
【請求項１】
通常状態よりも消費電力が小さい省電力状態で動作可能な情報処理装置であって、
前記省電力状態において、ネットワークを介して送信されたパケットを受信する受信手段と、
前記受信手段によって受信されたパケットが特定のプロトコルに基づくパケットであるか否かを判定する判定手段と、
前記判定手段によって前記パケットが前記特定のプロトコルに基づくパケットであると判定された場合、データ記述言語で記述された後続のパケットのデータを解析する解析手段と、
前記解析手段による解析結果に応じて、前記省電力状態から通常状態への復帰を指示する指示手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記判定手段は、前記受信手段によって受信されたパケットが予め定められた第一の固定パターンに合致した場合、当該パケットが前記特定のプロトコルに基づくパケットであると判定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記受信手段によって受信されたパケットが前記第一の固定パターンとは異なる第二の固定パターンに合致した場合、前記解析手段による解析を行うことなく、前記省電力状態から通常状態への復帰を指示することを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記解析手段による解析は、前記後続のパケットが固定のパターンに合致するか否かを解析することなく、前記データ記述言語で記述されたデータによって示されるサービスを自装置が提供できるか否かを判断することを特徴とする請求項１乃至３の何れかに記載の情報処理装置。
【請求項５】
前記サービスを自装置が提供できる場合、前記指示手段は前記省電力状態から通常状態への復帰を指示し、前記サービスを自装置が提供できない場合、前記指示手段は前記省電力状態から通常状態への復帰を指示しないことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記通常状態において前記情報処理装置を制御する主制御部と、
前記ネットワークに接続された副制御部と、
前記通常状態では、前記主制御部と副制御部に電力を供給し、前記省電力状態では、前記主制御部に電力を供給せず前記副制御部に電力を供給する電源制御手段とを更に有することを特徴とする請求項１乃至５の何れかに記載の情報処理装置。
【請求項７】
前記主制御部は、通常状態から省電力状態に移行する際に、通常状態に復帰する際の条件を示す復帰情報を前記副制御部に送信することを特徴とする請求項６記載の情報処理装置。
【請求項８】
前記主制御部は、通常状態から省電力状態に移行する際に、前記情報処理装置が提供することができるサービスを示す情報を前記副制御部に送信することを特徴とする請求項６又は７記載の情報処理装置。
【請求項９】
通常状態よりも消費電力が小さい省電力状態で動作可能な情報処理装置の制御方法であって、
前記省電力状態において、ネットワークを介して送信されたパケットを受信する受信ステップと、
前記受信ステップによって受信されたパケットが特定のプロトコルに基づくパケットであるか否かを判定する判定ステップと、
前記判定ステップによって前記パケットが前記特定のプロトコルに基づくパケットであると判定された場合、データ記述言語で記述された後続のパケットのデータを解析する解析ステップと、
前記解析ステップによる解析結果に応じて、前記省電力状態から通常状態への復帰を指示する指示ステップと、
を有することを特徴とする制御方法。
【請求項１０】
通常状態よりも消費電力が小さい省電力状態で動作可能な情報処理装置に以下のステップを実行させるためのコンピュータプログラムであって、
前記省電力状態において、ネットワークを介して送信されたパケットを受信する受信ステップと、
前記受信ステップによって受信されたパケットが特定のプロトコルに基づくパケットであるか否かを判定する判定ステップと、
前記判定ステップによって前記パケットが前記特定のプロトコルに基づくパケットであると判定された場合、データ記述言語で記述された後続のパケットのデータを解析する解析ステップと、
前記解析ステップによる解析結果に応じて、前記省電力状態から通常状態への復帰を指示する指示ステップと、
を有することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続され、省電力制御を行う情報処理装置に関する。
【背景技術】
【０００２】
近年の環境問題への取り組みとして、プリンタや複合機といった情報処理装置における省電力化が進められている。その実現方法の一つとして、情報処理装置上の操作パネルの操作やネットワークを介した印刷ジョブ投入などが一定時間行われなかった場合に、通常状態よりも消費電力が小さい省電力（待機）状態に移行し、消費電力を抑えることが一般に行われている。特許文献１においては、通常動作時の動作制御を行う通常動作制御手段とは別に、省電力状態での動作制御を行う省電力制御手段を備えた通信制御装置が提案されている。この省電力制御手段は、ネットワーク上のパケットを監視し、あらかじめ定められた条件を満たすパケットを受信した場合に、通信制御装置を省電力状態から通常状態に復帰させる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２５９９０６
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ネットワークから受信したパケットを監視して省電力状態から復帰させる上述の従来技術においては、通常状態へ復帰させるべきかどうかを、受信したパケットが予め決められた固定のパケットパターンに一致するかどうかで判定していた。そのためネットワークから受信したパケットの構造が複雑になると、省電力状態から復帰させるべきかどうかの判定を正しく行うことが難しかった。従来技術では固定のパターンに合致しさえすればいつでも通常状態へ復帰させていたため、パケットの後続部分を解析した結果実際は通常状態に復帰する必要がなかった場合でも装置は通常状態へと復帰してしまっていた。このように、従来技術では、装置が通常状態への無駄な復帰をしてしまうことにより、無駄な電力を消費し、省電力の効率が悪くなってしまうという課題があった。
【０００５】
本発明はこのような課題に対してなされたものであり、省電力状態の装置が、パケットを受信した場合に通常状態へ復帰すべきか否かの判断をより正確に行えるようにし、装置の省電力の効率を従来よりも著しく向上させることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の情報処理装置は、通常状態よりも消費電力が小さい省電力状態で動作可能な情報処理装置であって、前記省電力状態において、ネットワークを介して送信されたパケットを受信する受信手段と、前記受信手段によって受信されたパケットが特定のプロトコルに基づくパケットであるか否かを判定する判定手段と、前記判定手段によって前記パケットが前記特定のプロトコルに基づくパケットであると判定された場合、データ記述言語で記述された後続のパケットのデータを解析する解析手段と、前記解析手段による解析結果に応じて、前記省電力状態から通常状態への復帰を指示する指示手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、省電力状態の装置が、パケットを受信した場合に通常状態へ復帰すべきか否かの判断をより正確に行えるようになり、装置の省電力の効率を従来よりも著しく向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明を適用した情報処理装置を使用したネットワークシステムの構成を示す図
【図２】情報処理装置１０１のハードウェア構成を示すブロック図
【図３】（ａ）は情報処理装置１０１の主制御部２００のソフトウェア構成を示すブロック図、（ｂ）は情報処理装置１０１の副制御部２１０のソフトウェア構成を示すブロック図
【図４】ＳＬＰによる復帰パケットパターンを示した図
【図５】ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットの固定パターンを示した図
【図６】Ｒｅｓｏｌｖｅコマンドの例
【図７】Ｐｒｏｂｅコマンドの例
【図８】スリープ制御部３０２の処理を示すフローチャート
【図９】復帰情報の例
【図１０】復帰判定部３１３が行う処理を示すフローチャート
【図１１】処理結果の例
【図１２】ＸＭＬ処理部３１４の処理を示すフローチャート
【図１３】スリープ制御部３０２の処理を示すフローチャート
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１０】
（第一の実施例）
図１は本発明を適用した情報処理装置を使用したネットワークシステムの構成を示す図である。情報処理装置１０１とホストコンピュータ１０２がネットワーク１０３を介して接続され、相互に通信可能となっている。ネットワーク１０３はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に限らずＷＡＮやインターネットであってもよい。又は有線の通信ネットワークに限らず無線によるネットワークであっても構わない。また、このネットワーク１０３上には情報処理装置１０１やホストコンピュータ１０２以外のその他の装置が接続されていてもよい。
【００１１】
図２は情報処理装置１０１のハードウェア構成を示すブロック図である。本実施例では、情報処理装置１０１がスキャナやプリンタを備えた複合機である場合を例に説明するが、情報処理装置１０１は単体のプリンタやスキャナ、ファクシミリ装置であってもよく、又はＰＣ等の装置であっても構わない。
【００１２】
情報処理装置１０１はＭａｉｎＣＰＵ２０１が制御する主制御部２００と、ＳｕｂＣＰＵ２１１が制御する副制御部２１０を持ち、主制御部２００と副制御部２１０は不図示のＰＣＩインターフェースを介してＰＣＩバスにより接続されている。主制御部２００は読取制御部２０４や印刷制御部２０５を制御し、情報処理装置としてスキャン、プリント、コピーといった機能を実現する。即ち情報処理装置１０１は不図示のスキャナ部やプリンタ部を備えており、これらはそれぞれ読取制御部２０４、印刷制御部２０５に接続されている。これらの機能を制御するプログラムはＲＯＭ２０２やＨＤＤ２０６に格納されており、情報処理装置が起動した際にＲＡＭ２０３に読み込まれ、ＭａｉｎＣＰＵ２０１により実行される。このように、情報処理装置１０１は、スキャンやプリントといった機能をネットワーク上にサービスとして提供し、ネットワーク上のホストコンピュータ１０２は、情報処理装置１０１が提供するサービスをネットワーク１０３を介して利用することができる。
【００１３】
副制御部２１０はＬＡＮ制御部２１４を介してネットワークパケットの送受信を制御するＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。また、副制御部２１０は、情報処理装置が省電力状態に移行した後に通常状態への復帰制御を行うための最低限の機能を実現する。これらの機能を制御するプログラムはＲＯＭ２１２に格納されており、情報処理装置が起動した際にＲＡＭ２１３に読み込まれ、ＳｕｂＣＰＵ２１１により実行される。後述するように、情報処理装置を省電力状態から復帰させるための条件となる情報は主制御部２００から副制御部２１０に送信され、ＲＡＭ２０３に格納される。
【００１４】
電源制御部２２０は、情報処理装置１０１の各ブロックへの電力供給を制御し、特に、主制御部２００への電力供給を停止し省電力状態に移行させることにより装置全体としての消費電力を抑えることが可能である。即ち、本実施例の情報処理装置において、通常状態とは電源制御部２２０によって主制御部２００と副制御部２１０の両方に電力が供給されている状態である。省電力状態とは電源制御部２２０によって主制御部２００には電力が供給されず、副制御部２１０のみに電力が供給されている状態である。
【００１５】
図３（ａ）は情報処理装置１０１の主制御部２００のソフトウェア構成を示すブロック図である。各ブロックに示すソフトウェアはすべてＭａｉｎＣＰＵ２０１により並行して実行される。
【００１６】
通常制御部３０１は、情報処理装置が通常状態（省電力状態ではない状態）の際に各種動作を制御する。即ち、情報処理装置が提供するスキャンやプリント、コピーといった機能の動作を制御する。復帰情報管理部３０３は省電力状態から通常状態へ復帰する条件についての情報をＲＯＭ２０２又はＨＤＤ２０６に保持し、管理する。スリープ制御部３０２は、復帰情報管理部３０３によって管理された復帰条件情報を取得しＭａｉｎ−ＳｕｂＣＰＵ通信部３０４に送信した後、電源制御部２２０に省電力状態への移行を指示する。Ｍａｉｎ−ＳｕｂＣＰＵ通信部３０４は、Ｓｕｂ−Ｍａｉｎ通信部３１１と通信を行い、副制御部２１０との情報の送受信を行う。
【００１７】
図３（ｂ）は情報処理装置１０１の副制御部２１０のソフトウェア構成を示すブロック図である。各ブロックに示すソフトウェアはすべてＳｕｂＣＰＵ２１１により並行して実行される。
【００１８】
Ｓｕｂ−ＭａｉｎＣＰＵ通信部３１１はＭａｉｎ−Ｓｕｂ通信部３０４と通信を行い、主制御部２００との情報の送受信を行う。復帰情報保持部３１２は復帰情報管理部３０３からＳｕｂ−ＭａｉｎＣＰＵ通信部３１１を介して復帰条件情報を受信し、ＲＯＭ２１２又はＲＡＭ２１３上に保持する。復帰判定部３１３はネットワーク送受信部３１５から受信したパケットを解析し、復帰情報保持部３１２によって保持されている情報に基づき、情報処理装置を通常状態へ復帰させるかどうかを判定する。また復帰判定部３１３は後述するように、復帰判定にＸＭＬデータの解析が必要であった場合には受信したパケットをＸＭＬ処理部３１４に送信し、その処理結果をもとに判定を行う。ＸＭＬ処理部３１４はＸＭＬデータを解析し、解析結果を復帰判定部３１３に送信する。ＸＭＬ処理部３１４はＸＭＬパーサ機能を持っており、ＸＭＬデータから、ＸＭＬ名前空間名や要素名で指定された値を取り出すことが可能である。
【００１９】
通常状態においては、ネットワーク送受信部３１５が受信したパケットはそのままＳｕｂ−ＭａｉｎＣＰＵ通信部３１１を介して主制御部２００に渡される。一方省電力状態においてはネットワーク送受信部３１５が受信したパケットは、復帰判定部３１３に渡される。
【００２０】
次に、情報処理装置１０１が省電力状態から復帰するためのパケットについて説明する。本実施例では、情報処理装置はＳＬＰ（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）とＷＳ−Ｄｉｓｃｏｖｅｒｙの２種類のネットワーク通信プロトコル（以下、プロトコル）によって送信されたパケットを受信すると通常状態に復帰するものとする。
【００２１】
尚、ＳＬＰの仕様はＲＦＣ２６０８、ＷＳ−Ｄｉｓｃｏｖｅｒｙの仕様は「ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ｘｍｌｓｏａｐ．ｏｒｇ／ｗｓ／２００５／０４／ｄｉｓｃｏｖｅｒｙ／」で定義されている。どちらもＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）パケットをマルチキャスト送信することによって送信され、ネットワーク上の装置を検索するために使用することができる。ＵＤＰパケットは、Ｅｔｈｅｒヘッダに続いてＩＰヘッダ、ＵＤＰヘッダが存在し、その後ろにアプリケーションデータが続く構造となっている。
【００２２】
本実施例において情報処理装置１０１は、省電力状態においてネットワーク送受信部３１５が受信したパケットが、省電力状態から復帰する必要があるパケットか否かを判断する。そこで情報処理装置１０１は、予め決められた固定のパケットパターン（固定パターン）を保持する。この固定パターンは復帰情報管理部３０３によって管理され、情報処理装置１０１が省電力状態に移行する際に副制御部２１０に渡され、復帰情報保持部３１２によって保持される。復帰情報保持部３１２は、複数の固定パターンを保持する。複数の固定パターンの中には、受信したパケットがＳＬＰによる復帰パケットであるか否かを判断するための固定パターン、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであるか否かを判断するための固定パターンが含まれる。後述するように、副制御部２１０の復帰判定部３１３は、受信したパケットとこれらの固定パターンとを比較し、そのパケットがＳＬＰによる復帰パケットであるか否かや、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであるか否かを判断する。
【００２３】
図４は、ＳＬＰによる復帰パケットを示す固定パターンを表した図である。まず、図中４０１〜４０５は、ＳＬＰパケットであることを示すパターンである。ＳＬＰパケットであれば、宛先ＭＡＣアドレス４０１のデータは「０１  ００  ５ｅ  ７ｆ  ｆｆ  ｆｄ」となる。またフレームタイプ４０２のデータは「０８  ００」となる。またプロトコル番号４０３のデータは「１７」となる。また宛先ＩＰアドレス４０４のデータは「２３９．２５５．２５５．２５３」となる。また宛先ポート番号４０５のデータは「４２７」となる。
【００２４】
宛先ＭＡＣアドレス４０１のデータは、受信パケットの先頭から１〜６Ｂｙｔｅ目に表される。フレームタイプ４０２のデータは、受信パケットの先頭から１３〜１４Ｂｙｔｅ目に表される。プロトコル番号４０３のデータは、受信パケットの先頭から２４Ｂｙｔｅ目に表される。宛先ＩＰアドレス４０４のデータは、受信パケットの先頭から３１〜３４Ｂｙｔｅ目に表される。宛先ポート番号４０５のデータは、受信パケットの先頭から３７〜３８Ｂｙｔｅ目に表される。従って復帰判定部３１３は、受信パケットの各項目についての先頭からの位置に存在するデータがこの固定パターンのデータと一致した場合は、そのパケットはＳＬＰパケットであると判断する。
【００２５】
更に、図中４０６〜４０８は、ＳＬＰによる復帰パケットであることを示すパターンである。ＳＬＰ復帰パケットであれば、ｖｅｒｓｉｏｎ４０６のデータは「２」となる。またｓｅｒｖｉｃｅ  ｔｙｐｅ４０７のデータは「ｗａｋｅｕｐ」となる。またｓｃｏｐｅ４０８のデータは「ａｂｃｄｅ」となる。
【００２６】
ｖｅｒｓｉｏｎ４０６のデータは、受信パケットの先頭から４３Ｂｙｔｅ目に表される。ｓｅｒｖｉｃｅ  ｔｙｐｅ４０７のデータは、受信パケットの先頭から６３〜６８Ｂｙｔｅ目に表される。ｓｃｏｐｅ４０８のデータは、受信パケットの先頭から７１〜７５Ｂｙｔｅ目に表される。従って、復帰判定部３１３は、受信パケットの各項目（４０１〜４０８）についての先頭からの位置に存在するデータがこの固定パターンのデータと一致した場合は、そのパケットはＳＬＰによる復帰パケットであると判断する。
【００２７】
このように、情報処理装置１０１が省電力状態において図４の固定パターンと一致するパケットを受信した場合には、情報処理装置１０１は通常状態に復帰することになる。なお、このＳＬＰによる復帰パケットパターンは、単に省電力状態の情報処理装置を通常状態に復帰させるために使用するものであり、情報処理装置は受信したＳＬＰパケットに対してなんらかの応答を返す必要はない。
【００２８】
次にＷＳ−Ｄｉｓｃｏｖｅｒｙパケットを示す固定パターンについて説明する。図５は、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットを示す固定パターンを表した図である。まず、図中５０１〜５０５は、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであることを示すパターンである。ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであれば、宛先ＭＡＣアドレス５０１のデータは「０１  ００  ５ｅ  ７ｆ  ｆｆ  ｆａ」となる。またフレームタイプ５０２のデータは「０８  ００」となる。またプロトコル番号５０３のデータは「１７」となる。また宛先ＩＰアドレス５０４のデータは「２３９．２５５．２５５．２５０」となる。また宛先ポート番号５０５のデータは「３７０２」となる。
【００２９】
宛先ＭＡＣアドレス５０１のデータは、受信パケットの先頭から１〜６Ｂｙｔｅ目に表される。フレームタイプ５０２のデータは、受信パケットの先頭から１３〜１４Ｂｙｔｅ目に表される。プロトコル番号５０３のデータは、受信パケットの先頭から２４Ｂｙｔｅ目に表される。宛先ＩＰアドレス５０４のデータは、受信パケットの先頭から３１〜３４Ｂｙｔｅ目に表される。宛先ポート番号５０５のデータは、受信パケットの先頭から３７〜３８Ｂｙｔｅ目に表される。従って復帰判定部３１３は、受信パケットの各項目についての先頭からの位置に存在するデータがこの固定パターンのデータと一致した場合は、そのパケットはＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであると判断する。
【００３０】
上述したように、受信パケットがＳＬＰパケットであった場合には、図４の固定パターンに基づいて４０１〜４０８のデータが比較される。しかしながら、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットの場合、ＳＬＰパケットと異なり、後続のパケットのデータはＸＭＬで記述されたデータであり、先頭からの位置を特定することはできない。つまり、後続のパケットに関して固定パターンを用いて判断することができない。そのため、受信したパケットがＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであると判断された場合には、後続のパケットのデータは後述するようにＸＭＬパーサに渡してからその内容を解析し、情報処理装置を省電力状態から復帰させるべきか否かの最終判断を行う。
【００３１】
ＷＳ−Ｄｉｓｃｏｖｅｒｙのプロトコルで規定されるコマンドの中で、本実施例で使用するのは「Ｒｅｓｏｌｖｅ」コマンドと「Ｐｒｏｂｅ」コマンドである。Ｒｅｓｏｌｖｅコマンドはネットワーク上で特定のＵＵＩＤ  （Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）を持つ装置を検索する際に使用される。Ｒｅｓｏｌｖｅコマンドを受信した装置は、指定されたＵＵＩＤを自装置が持っていた場合にはＲｅｓｏｌｖｅＭａｔｃｈ応答をユニキャストで返す必要がある。なおＵＵＩＤが重複することはないため、Ｒｅｓｏｌｖｅコマンドに対して応答する装置は１個だけである。
【００３２】
Ｐｒｏｂｅコマンドはネットワーク上で特定のサービスタイプを持つ装置を検索する際に使用される。サービスタイプの例としてはプリントサービスを示す「Ｐｒｉｎｔｅｒ」やスキャンサービスを示す「Ｓｃａｎｎｅｒ」等である。Ｐｒｏｂｅコマンドを受信した装置は指定されたサービスタイプを自装置が持っていた場合にはＰｒｏｂｅＭａｔｃｈ応答をユニキャストで返す必要がある。Ｐｒｏｂｅコマンドに対しては指定されたサービスタイプを持つすべての装置が応答する。
【００３３】
図６は本実施例におけるＷＳ−Ｄｉｓｃｏｖｅｒｙパケットに含まれるＲｅｓｏｌｖｅコマンドの例である。図６の中で、＜ｗｓｄ：Ｒｅｓｏｌｖｅ＞という要素６０２がＲｅｓｏｌｖｅコマンドであることを示している。なおＸＭＬの規定に従い、空白や改行はあってもなくても意味は同じである。同様にプレフィックスの「ｗｓｄ：」という文字列は名前空間宣言６０１で定義されるものであり、名前空間が同じである限り任意の文字列が使用可能である。つまり、ＷＳ−Ｄｉｓｃｏｖｅｒｙで規定されるＲｅｓｏｌｖｅコマンドであるかどうかはＸＭＬの名前空間宣言を解釈してからでないと判断ができず、事前に固定で文字列を記憶しておくことはできない。また、検索対象となるデバイスのＵＵＩＤは＜ｗｓａ：ＥｎｄｐｏｉｎｔＲｅｆｅｒｅｎｃｅ＞要素６０３で指定される。この要素の値が、自装置が持つＵＵＩＤと一致した場合には、情報処理装置１０１は省電力状態から復帰すると判断する。
【００３４】
図７は本実施例におけるＷＳ−Ｄｉｓｃｏｖｅｒｙパケットに含まれるＰｒｏｂｅコマンドの例である。図７の中で、＜ｗｓｄ：Ｐｒｏｂｅ＞という要素７０１がＰｒｏｂｅコマンドであることを示している。なおもちろん上述したＸＭＬとしての規定はＰｒｏｂｅコマンドでも適用される。即ち、空白や改行はあってもなくても意味は同じである。同様にプレフィックスの「ｗｓｄ：」という文字列は名前空間宣言で定義されるものであり、名前空間が同じである限り任意の文字列が使用可能である。つまり、ＷＳ−Ｄｉｓｃｏｖｅｒｙで規定されるＰｒｏｂｅコマンドであるかどうかはＸＭＬの名前空間宣言を解釈してからでないと判断ができず、事前に固定で文字列を記憶しておくことはできない。また、検索対象となるサービスタイプは＜ｗｓｄ：Ｔｙｐｅｓ＞要素７０２で指定される。この要素の値が、自装置が持つサービスタイプと一致した場合には、情報処理装置１０１は省電力状態から復帰すると判断する。
【００３５】
次に、主制御部２００が通常状態から省電力状態に移行する際のスリープ制御部３０２の処理について図８のフローチャートを用いて説明する。図８の各ステップは、ＲＯＭ２０２に格納されたプログラムに従って、情報処理装置１０１のＭａｉｎＣＰＵ２１０によって実行される。
【００３６】
スリープ制御部３０２はＳ８０１において、情報処理装置１０１上の操作パネル（不図示）の操作やネットワークを介した印刷ジョブ投入などが行われてから経過した時間を監視し、一定時間経過したか否かを判定する。一定時間経過する前に次の操作やジョブの投入が行われた場合にはタイマーをリセットし、再び時間の経過を監視する。一方、Ｓ８０１において一定時間が経過したと判定された場合にはＳ８０２に進む。Ｓ８０２において、スリープ制御部３０２は復帰条件管理部３０３によって保持されている復帰情報を取得し、Ｍａｉｎ−ＳｕｂＣＰＵ通信部３０４に送信する。ここで使用する復帰情報については後述する。その後Ｓ８０３において、スリープ制御部３０２は電源制御部２２０に省電力状態に移行するよう指示を送信し、処理を終了する。そして電力制御部２２０は、主制御部２００への給電を停止する。
【００３７】
図９はスリープ制御部３０２が図８のフローチャートのＳ８０２においてＭａｉｎ−ＳｕｂＣＰＵ通信部３０４に送信する復帰情報を示した図である。９０１は情報処理装置１０１のＩＰアドレスである。９０２はＳＬＰによる復帰パケットを受信した際に復帰を行うかどうかを示す情報である。９０３はＷＳ−Ｄｉｓｃｏｖｅｒｙパケットを受信した際に復帰を行うかどうかを示す情報である。本実施例では、どちらのパケットを受信した場合でも省電力状態からの復帰を行う設定のため、９０２と９０３は「ＯＮ」となっている。９０２と９０３の値は、情報処理装置１０１の管理者などのユーザが任意に変更できたり設定できてもよい。９０４は情報処理装置１０１が持つＵＵＩＤの値である。ＵＵＩＤは機器固有の値であり、電源ＯＦＦ／ＯＮで変化することはない。９０５は情報処理装置１０１が提供するサービスのタイプである。本実施例の情報処理装置１０１は、プリントサービスとスキャンサービスを提供可能であるため、９０５には「Ｐｒｉｎｔｅｒ」「Ｓｃａｎｎｅｒ」が記述されている。９０６は固定パターンであり、情報処理装置１０１を省電力状態から復帰させるか否かを判定するために用いられる。本実施例の復帰情報には、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであるか否かを判断するための固定パターンと、ＳＬＰによる復帰パケットであるか否かを判断するための固定パターンの２種類の固定パターン（第一の固定パターン、第二の固定パターン）が含まれている。Ｍａｉｎ−ＳｕｂＣＰＵ通信部３０４は、スリープ制御部３０２から受信した復帰情報をＳｕｂ−ＭａｉｎＣＰＵ通信部３１１に送信し、復帰情報保持部３１２は、受信した復帰情報をＲＡＭ２１３（又はＲＯＭ２１２）上に保持する。
【００３８】
情報処理装置１０１が省電力状態にある場合に復帰判定部３１３が行う処理について図１０のフローチャートを用いて説明する。図１０の各ステップは、ＲＯＭ２１２に格納されたプログラムに従って、情報処理装置１０１のＳｕｂＣＰＵ２１０によって実行される。
【００３９】
復帰判定部３１３はＳ１００１において、ネットワーク送受信部３１５がネットワーク１０３から受信したパケットを取得する。そしてＳ１００２において、復帰判定部３１３はＳＬＰによる復帰パケットでの復帰を行う設定になっているか否かを判断する。即ち、復帰情報保持部３１２によって保持されている復帰情報（図９）の９０２を参照し、ＯＮになっている場合にはＳＬＰによる復帰パケットでの復帰を行うと判断し、ＯＦＦになっている場合には復帰を行わないと判断する。判断の結果、ＳＬＰによる復帰パケットでの復帰はしないと判断した場合はＳ１００４に進む。ＳＬＰによる復帰パケットでの復帰をすると判断した場合はＳ１００３に進む。
【００４０】
Ｓ１００３において、復帰判定部３１３はＳ１００１で受信したパケットと、図４で示したＳＬＰによる復帰パケットの固定パターンとを比較し、受信したパケットがＳＬＰによる復帰パケットの固定パターンと一致するかどうか判定する。即ち、上述したように、受信したパケットが図４の４０１〜４０８のデータを含んでいるか否かを判定する。Ｓ１００３における判定の結果、一致すると判定された場合はＳ１０１３に進み、復帰判定部３１３は電源制御部２２０に復帰指示を送信する。そしてＳ１０１０において復帰判定部３１３はＳ１００１で受信したパケットを破棄して処理を終了する。
【００４１】
Ｓ１００３の判定の結果、一致しないと判定された場合はＳ１００４に進み、復帰判定部３１３はＷＳ−Ｄｉｓｃｏｖｅｒｙパケットでの復帰を行うかどうかを判断する。即ち、復帰情報保持部３１２によって保持されている復帰情報（図９）の９０３を参照し、ＯＮになっている場合にはＷＳ−Ｄｉｓｃｏｖｅｒｙパケットでの復帰を行うと判断し、ＯＦＦになっている場合には復帰を行わないと判断する。判定の結果、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットでの復帰はしないと判断された場合はＳ１０１０に進みＳ１００１で受信したパケットを破棄して処理を終了する。Ｓ１００４の判断の結果、ＷＳ−Ｄｉｓｃｏｖｅｒｙパケットでの復帰を行うと判定した場合はＳ１００５に進む。
【００４２】
Ｓ１００５において、復帰判定部３１３は、Ｓ１００１で受信したパケットがＷＳ−Ｄｉｓｃｏｖｅｒｙパケットであるか否かを判定する。即ち復帰判定部３１３は、Ｓ１００１で受信したパケットと図５で示したＷＳ−Ｄｉｓｃｏｖｅｒｙパケットの固定パターンとを比較し、受信したパケットがＷＳ−Ｄｉｓｃｏｖｅｒｙパケットの固定パターンと一致するかどうかを判定する。具体的には受信したパケットが図５の５０１〜５０５のデータを含んでいるか否かを判定する。Ｓ１００５における判定の結果、一致しないと判定された場合はＳ１０１０に進みＳ１００１で受信したパケットを破棄して処理を終了する。一方、一致すると判定された場合はＳ１００６に進み、復帰判定部３１３は、後続のパケットのデータをＸＭＬ処理部３１４に送信する。受信したパケットがＷＳ−Ｄｉｓｃｏｖｅｒｙパケットである場合、後続のパケットはＸＭＬデータであり、ＸＭＬ処理部３１４において解析する処理を行う必要があるからである。
【００４３】
その後Ｓ１１０７において、復帰判定部３１３はＸＭＬ処理部３１４からＸＭＬデータの解析処理の結果を受信する。図１１は、ＸＭＬ処理部３１４から受信する解析処理の結果の例を示した図である。１１０１は解析されたＷＳ−Ｄｉｓｃｏｖｅｒｙのコマンドであり、Ｒｅｓｏｌｖｅ／Ｐｒｏｂｅ／不明の３種類のいずれかが記述される。１１０２は自装置のＵＵＩＤを検索するＲｅｓｏｌｖｅであった場合と、自装置が持つサービスタイプを検索するＰｒｏｂｅであった場合にＹｅｓとなり、それ以外はＮｏとなる。
【００４４】
Ｓ１１０８において、復帰判定部３１３は受信した解析処理結果を参照し、ＸＭＬデータが自装置を検索するＲｅｓｏｌｖｅコマンドであったかどうかを判定する。具体的には、復帰判定部３１３は、受信した解析処理結果の１１０１に「Ｒｅｓｏｌｖｅ」が記述されていればＲｅｓｏｌｖｅコマンドであったと判定する。更に、１１０２に「Ｙｅｓ」が記述されていれば自装置がＸＭＬデータに記述された検索条件に合致したと判定する。即ち、解析処理結果の１１０１に「Ｒｅｓｏｌｖｅ」が記述され、尚且つ１１０２に「Ｙｅｓ」が記述されていれば、ＸＭＬデータが自装置を検索するＲｅｓｏｌｖｅコマンドであったと判定される。
【００４５】
Ｓ１１０８の判定の結果、自装置を検索するＲｅｓｏｌｖｅコマンドであった場合はＳ１０１１に進み、復帰判定部３１３は電源制御部２２０に復帰指示を送信する。そしてＳ１０１２において復帰判定部３１３は、受信したパケット全体をＳｕｂ−ＭａｉｎＣＰＵ通信部３１１に送信し、処理を終了する。この結果、受信したパケット全体が主制御部２００へ送られ、主制御部２００においてＸＭＬデータの解析処理が再び行われる。そしてＸＭＬデータに対する応答データ（応答ＸＭＬデータ）が生成される。尚、ここで副制御部２１０において受信したＸＭＬデータに対する応答データ（応答ＸＭＬデータ）を生成しない理由は、副制御部２１０が備えるＸＭＬ処理部３１４がＸＭＬデータを生成する機能を備えないからである。即ち、副制御部２１０には、ＸＭＬを解釈する機能のみを有する簡易なソフトウェアを実装することで、省電力状態時に必要な電力を少なくしている。
【００４６】
Ｓ１１０８の判定の結果、自装置を検索するＲｅｓｏｌｖｅではないと判定した場合はＳ１００９に進む。Ｓ１００９において復帰判定部３１３は、解析処理結果が、自装置が持つサービスを検索するＰｒｏｂｅコマンドであったかどうかを判定する。具体的には、復帰判定部３１３は、受信した解析処理結果の１１０１に「Ｐｒｏｂｅ」が記述されていればＰｒｏｂｅコマンドであったと判定する。更に、１１０２に「Ｙｅｓ」が記述されていれば自装置がＸＭＬデータに記述された検索条件に合致したと判定する。即ち、解析処理結果の１１０１に「Ｐｒｏｂｅ」が記述され、尚且つ１１０２に「Ｙｅｓ」が記述されていれば、ＸＭＬデータが自装置を検索するＰｒｏｂｅコマンドであったと判定される。
【００４７】
Ｓ１１０９判定の結果、自装置のサービスを検索するＰｒｏｂｅコマンドであった場合はＳ１０１１に進み、復帰判定部３１３は電源制御部２２０に復帰指示を送信する。そしてＳ１０１２において復帰判定部３１３は、受信したパケット全体をＳｕｂ−ＭａｉｎＣＰＵ通信部３１１に送信し、処理を終了する。
【００４８】
Ｓ１０１２の処理の後、Ｓｕｂ−ＭａｉｎＣＰＵ通信部３１１はＭａｉｎ−ＳｕｂＣＰＵ通信部３０４に受信したパケット全体を送信し、その結果、受信したパケット全体が主制御部２００において処理されることになる。
【００４９】
図１２は、ＸＭＬ処理部３１４の処理を示すフローチャートである。図１２のフローチャートは、図１０のＳ１００６において復帰判定部３１３から送られたＸＭＬデータをＸＭＬ処理部３１４が受信した際に実行される。図１２の各ステップは、情報処理装置１０１のＳｕｂＣＰＵ２１０によって実行される。
【００５０】
ＸＭＬ処理部３１４はＳ１２０１において、復帰判定部３１３からＸＭＬデータを受信する。次にＳ１２０２において、ＸＭＬ処理部３１４は復帰情報保持部３１２から復帰情報を取得する。その後Ｓ１２０３において、ＸＭＬ処理部３１４は受信したＸＭＬデータを解析し、ＸＭＬデータの中にＲｅｓｏｌｖｅ要素が存在するかを判定する。その際名前空間名としては、「ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ｘｍｌｓｏａｐ．ｏｒｇ／ｗｓ／２００５／０４／ｄｉｓｃｏｖｅｒｙ」を指定する。Ｒｅｓｏｌｖｅ要素が存在した場合はＳ１２０４に進み、ＸＭＬ処理部３１４は処理結果のコマンドの値を「Ｒｅｓｏｌｖｅ」とする。
【００５１】
その後Ｓ１２０５において、ＸＭＬ処理部３１４はＸＭＬデータの中のＥｎｄｐｏｉｎｔＲｅｆｅｒｅｎｃｅ要素の値を取得する。その際名前空間名としては、「ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ｘｍｌｓｏａｐ．ｏｒｇ／ｗｓ／２００４／０８／ａｄｄｒｅｓｓｉｎｇ」を指定する。そしてＳ１２０６において、ＸＭＬ処理部３１４は取得したＥｎｄｐｏｉｎｔＲｅｆｅｒｅｎｃｅの値と復帰情報のＵＵＩＤの値９０４が一致するかどうか判定する。一致した場合は、Ｓ１２０７において処理結果の自機情報の値を「Ｙｅｓ」とする。一致しない場合は、Ｓ１２０８において処理結果の自機情報の値を「Ｎｏ」とする。その後Ｓ１２０９に進み、ＸＭＬ処理部３１４は処理結果を復帰判定部３１３に送信して処理を終了する。
【００５２】
Ｓ１２０３の判定において、Ｒｅｓｏｌｖｅ要素が存在しなかった場合はＳ１２１０に進み、ＸＭＬ処理部３１４はＸＭＬデータの中にＰｒｏｂｅ要素が存在するかを判定する。その際名前空間名としては、「ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ｘｍｌｓｏａｐ．ｏｒｇ／ｗｓ／２００５／０４／ｄｉｓｃｏｖｅｒｙ」を指定する。Ｐｒｏｂｅ要素が存在した場合はＳ１２１１に進み、ＸＭＬ処理部３１４は処理結果のコマンドの値を「Ｐｒｏｂｅ」とする。その後Ｓ１２１２において、ＸＭＬ処理部３１４はＸＭＬデータの中のＴｙｐｅｓ要素の値を取得する。その際名前空間名としては、「ｈｔｔｐ：／／ｓｃｈｅｍａｓ．ｘｍｌｓｏａｐ．ｏｒｇ／ｗｓ／２００５／０４／ｄｉｓｃｏｖｅｒｙ」を指定する。そしてＳ１２１３において、ＸＭＬ処理部３１４は取得したＴｙｐｅｓの値の中に復帰情報のサービスタイプの値９０５と一致するものがあるかどうか判定する。一致するものがあった場合は、Ｓ１２０７において処理結果の自機情報の値を「Ｙｅｓ」とする。一致するものがなかった場合は、Ｓ１２０８において処理結果の自機情報の値を「Ｎｏ」とする。その後Ｓ１２０９に進み、ＸＭＬ処理部３１４は処理結果を復帰判定部３１３に送信して処理を終了する。
【００５３】
Ｓ１２１０においてＰｒｏｂｅ要素が存在しなかった場合はＳ１２１４に進み、ＸＭＬ処理部３１４は処理結果のコマンドの値を「不明」とする。その後Ｓ１２０９に進み、ＸＭＬ処理部３１４は処理結果を復帰判定部３１３に送信して処理を終了する。
【００５４】
以上説明したように、本実施例によれば、情報処理装置が省電力状態においてパケットを受信した際に、パケットが送信されたプロトコルの種類に応じて必要な処理を行う。即ち、必要に応じて後続のＸＭＬデータを解析して、解析結果に応じて通常状態に復帰させるか否かを切り替える。つまり、従来のように特定のパターンに一致するパケットかどうかのみをチェックするだけでは判断できないようなパケットに対しても、通常状態に復帰するか否かの判断が行えるようになる。従って、パケットを受信した場合に通常状態へ復帰すべきか否かの判断をより正確に行えるようになり、情報処理装置の省電力の効率が従来よりも著しく向上する。また、ＸＭＬデータの解析が必要ないパケット、即ち特定のパターンに一致するか否かのみによって判断することができるパケットについては、余計な処理は行わず、効率よく通常状態に復帰するか否かの判断を行うことができる。
【００５５】
（第二の実施例）
次に第二の実施例について説明する。本実施例においては、情報処理装置１０１は縮退動作が可能であるものとする。縮退動作とは一般に、一部の機能が動作不可能になった場合であっても全体の動作は停止せずに、動作可能な機能のみで動作を継続することである。本情報処理装置１０１は、例えば不図示のスキャナが故障し原稿の読取動作ができなくなった場合でも装置全体を停止せず、ネットワークを介してホストコンピュータ１０２から印刷データを受信し、印刷を行うことが可能となっている。
【００５６】
そして、省電力状態に移行する際に現在の縮退状況を確認し、動作可能であるサービスタイプを検索するＰｒｏｂｅのみに反応して通常状態へ復帰するようにすることにより、省電力状態を維持できる可能性をさらに高めることができる。
【００５７】
なお、以降の説明においては第一の実施例との差分のみ説明し、同じ動作を行う部分については説明を省略する。
【００５８】
まず、本実施例における情報処理装置１０１は、主制御部２００のソフトウェア構成が第一の実施例の情報処理装置１０１と異なる。即ち、本実施例における情報処理装置１０１の主制御部２００は更に、縮退状況管理部を備える。縮退状況管理部はＭａｉｎＣＰＵ２０１により実行される。縮退状況管理部１４０１は情報処理装置１０１の現在の縮退状況を保持する。
【００５９】
次に本実施例において、主制御部２００が省電力状態に移行する際のスリープ制御部３０２の処理について図１３のフローチャートを用いて説明する。図１３の各ステップは、ＭａｉｎＣＰＵ２０１によって実行される。
【００６０】
スリープ制御部３０２はＳ１３０１において、情報処理装置１０１上の操作パネル（不図示）の操作やネットワークを介した印刷ジョブ投入などが行われてから経過した時間を監視し、一定時間経過したか否かを判定する。一定時間経過する前に次の操作やジョブの投入が行われた場合にはタイマーをリセットし、再び時間の経過を監視する。一方、Ｓ１３０１において一定時間が経過したと判定された場合にはＳ１３０２に進む。Ｓ１３０２において、スリープ制御部３０２は縮退状況管理部から現在の縮退状況を取得する。つまり、現在情報処理装置１０１が提供可能なサービスのタイプを示す情報を取得する。次にＳ１３０３において、スリープ制御部３０２は復帰条件管理部３０３から復帰情報を取得し、Ｓ１３０２で取得した縮退状況に応じて復帰情報を修正し、Ｍａｉｎ−ＳｕｂＣＰＵ通信部３０４に送信する。一例として、本来プリントサービスとスキャンサービスが利用可能であり復帰条件管理部３０３にその２つが保持されていたとしても、スキャナ故障中には、復帰情報として図１０の１００５にはＰｒｉｎｔｅｒのみが記述される。その後Ｓ１３０４において、スリープ制御部３０２は電源制御部２２０に省電力状態に移行するよう指示を送信し処理を終了する。
【００６１】
以上説明したように、本実施例によれば、第一の実施例に比べて更に情報処理装置１０１の現在の状態を考慮した上で、通常状態に復帰すべきか否かを判断することができる。つまり、情報処理装置１０１が現在提供可能なサービスが何であるかを省電力状態に移行する度にチェックし、その内容を副制御部に保持させるようにする。これにより、より効率的に省電力状態を維持することができるようになり、情報処理装置の省電力の効率が更に向上する。
【００６２】
（その他の実施例）
上記実施例におけるＳＬＰやＷＳ−Ｄｉｓｃｏｖｅｒｙは、情報処理装置が処理可能な複数のプロトコル（第一のプロトコル、第二のプロトコル）の一例であり、これ以外のプロトコルであってもよい。例えば、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）等であってもよい。また、上記実施例におけるＸＭＬデータは、データ記述言語の一例であり、ＨＴＭＬデータ等のその他のデータ記述言語であってもよい。
【００６３】
更に、上記実施例では、主制御部と副制御部が１つの情報処理装置内に物理的に内蔵されている場合を例に説明したが、主制御部と副制御部が物理的に別の筐体に内蔵されていてもよい。この場合、主制御部と副制御部は所定のインターフェース（ＵＳＢ、セントロニクスＩ／Ｆ、ＬＡＮ等）によって直接接続され、主制御部と副制御部によって１つの情報処理システムを形成するように構成される。
【００６４】
また、本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（コンピュータプログラム）を画像処理装置や情報処理装置等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【符号の説明】
【００６５】
２００  主制御部
２１０  副制御部
２０１  ＭａｉｎＣＰＵ
２１１  ＳｕｂＣＰＵ
２２０  電源制御部
【図１】
2010239193.tif 000003
【図２】
2010239193.tif 000004
【図３】
2010239193.tif 000005
【図４】
2010239193.tif 000006
【図５】
2010239193.tif 000007
【図６】
2010239193.tif 000008
【図７】
2010239193.tif 000009
【図８】
2010239193.tif 000010
【図９】
2010239193.tif 000011
【図１０】
2010239193.tif 000012
【図１１】
2010239193.tif 000013
【図１２】
2010239193.tif 000014
【図１３】
2010239193.tif 000015