(57)【要約】      （修正有）【課題】省電力モードから通常電力モードへの復帰処理中に発生する必要なパケットのロストの可能性を低減することができる情報処理装置、情報処理装置の制御方法及びプログラムを提供する。【解決手段】外部装置から受信したパケットをバッファリングできる通信制御部と、アプリケーションを実行する主制御部と、電力制御手段とを有する情報処理装置（画像形成装置）において、主制御部に供給する電力を制限する第１の電力モードと、主制御部に供給する電力を制限しない第２の電力モードのいずれかで、通信制御部と主制御部とに対する電力供給を制御する。通信制御部が、第１の電力モードにおいて、第１の電力モードから第２の電力モードへの遷移中において、受信したパケットのうちから、設定された選択パターンに基づいてパケットを選択し、選択されたパケットをバッファに格納する。【選択図】図３
2020167596.tif 000002
【特許請求の範囲】
【請求項１】
外部装置から受信したパケットをバッファリングできる通信制御部と、
アプリケーションを実行する主制御部と、
前記主制御部に供給する電力を制限する第１の電力モードと、前記主制御部に供給する電力を制限しない第２の電力モードのいずれかで、前記通信制御部と前記主制御部とに対する電力供給を制御する電源制御手段と
を有し、
前記通信制御部は、
前記第１の電力モードにおいて、および、前記第１の電力モードから前記第２の電力モードへの遷移中において、受信したパケットのうちから、設定された選択パターンに基づいてパケットを選択する選択手段と、
前記選択手段により選択されたパケットをバッファに格納するバッファリング手段と
を有することを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記選択手段は、受信したパケットのうちから、前記選択パターンに一致するポート番号を持つパケットを、破棄するパケットとして選択する
ことを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置であって、
前記選択手段は、受信したパケットのうちから、前記選択パターンに一致するポート番号を持つパケットを、前記バッファに格納するパケットとして選択する
ことを特徴とする情報処理装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の情報処理装置であって、
前記選択パターンは、前記パケットのあて先ポート番号を含む
ことを特徴とする情報処理装置。
【請求項５】
請求項１乃至４のいずれか一項に記載の情報処理装置であって、
前記主制御部が、前記選択パターンを前記通信制御部に設定する
ことを特徴とする情報処理装置。
【請求項６】
請求項１乃至５のいずれか一項に記載の情報処理装置であって、
前記選択手段はさらに、前記バッファに必要な空きがない場合には、前記受信したパケットを破棄する
ことを特徴とする情報処理装置。
【請求項７】
請求項１乃至５のいずれか一項に記載の情報処理装置であって、
前記選択手段はさらに、前記パケットに優先度を付し、前記バッファに必要な空きがない場合には、前記バッファに格納されたパケットのうち、前記受信したパケットよりも優先度の低いパケットを削除して空きを確保する
ことを特徴とする情報処理装置。
【請求項８】
請求項７に記載の情報処理装置であって、
前記優先度は、パケットのあて先の範囲に応じて、前記あて先の範囲が狭いほど当該パケットの優先度を高くする
ことを特徴とする情報処理装置。
【請求項９】
請求項８に記載の情報処理装置であって、
前記優先度は、ユニキャストパケット、マルチキャストパケット、ブロードキャストパケットの順で低くなる
ことを特徴とする情報処理装置。
【請求項１０】
請求項１乃至９のいずれか一項に記載の情報処理装置であって、
前記主制御部は、前記第１の電力モードから前記第２の電力モードへの遷移が完了した後、前記通信制御部の前記バッファ手段により格納された前記パケットを取得して処理する
ことを特徴とする情報処理装置。
【請求項１１】
請求項１乃至１０のいずれか一項に記載の情報処理装置であって、
前記主制御部により処理されたデータを印刷する印刷手段をさらに有する
ことを特徴とする情報処理装置。
【請求項１２】
請求項１乃至１１のいずれか一項に記載の情報処理装置としてコンピュータを機能させるためのプログラム。
【請求項１３】
外部装置から受信したパケットをバッファリングできる通信制御部と、アプリケーションを実行する主制御部と、電力制御手段とを有する情報処理装置の制御方法であって、
前記電力制御手段が、前記主制御部に供給する電力を制限する第１の電力モードと、前記主制御部に供給する電力を制限しない第２の電力モードのいずれかで、前記通信制御部と前記主制御部とに対する電力供給を制御し、
前記通信制御部が、
前記第１の電力モードにおいて、および、前記第１の電力モードから前記第２の電力モードへの遷移中において、受信したパケットのうちから、設定された選択パターンに基づいてパケットを選択し、
前記選択されたパケットをバッファに格納する
ことを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
プリンタやデジタル複合機などの情報処理装置において、消費電力を低減させたいという要求が高まっている。この要求に対して、例えば情報処理装置が所定時間動作していない場合に、情報処理装置の電力モードを通常電力モードから省電力モードに移行させる技術が知られている。通常電力モードでは、情報処理装置の主制御部と通信部の両方に電力が供給される。一方、省電力モードでは、情報処理装置の通信部への電力供給を継続されるが、情報処理装置の主制御部への電力供給は遮断される。従って、省電力モードでは、通常電力モードと比較して情報処理装置全体の消費電力が低減する。ただし、一般的には省電力モードにおいて機能する処理は限定的であり、省電力モードで処理が実行できないと判断した場合には省電力モードから通常電力モードを移行し、処理が実行される。なお、情報処理装置は、電力モードの移行中に受信したネットワークパケット（以下、パケット）を通信部がバッファリングし、通常電力モードへの遷移が完了後に主制御部で処理をする場合もある。例えば、特許文献１では、省電力モード中に受信したパケットに対して通信部で応答ができない場合には主制御部を復帰させてから応答する構成が説明されている。また、特許文献２では、電力モードの移行においても外部装置との通信を正常に維持することを目的として、通信部が受信したパケットに対して応答する機能を持っていた場合には、事前に通信部で応答を返したうえで省電力モードから通常電力モードへの復帰するような技術も存在する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２５９９０６号公報
【特許文献２】特開２０１７−１４９１１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１においては、情報処理装置が省電力モードから通常電力モードへと状態移行する要因となったパケット（以下、復帰パケット）を通常電力モードへの移行が完了後に主操作部へ受け渡すことが望ましい構成であることが述べられている。一方で、本来は情報処理装置が状態移行中に受信した受信パケットに対しても、主制御部へ引き継ぐことが最も望ましいと考えられる。しかしながら、情報処理装置がそのような構成にあった場合でも、移行処理中の受信パケットをバッファリングするためのバッファ領域は有限であるため、すべての受信パケットを必ずしもバッファリングできるとは限らない。
【０００５】
また、特許文献２の手段では、外部装置との接続を先立って確立しておくことで、前記状態移行中であっても通信を維持しておく効果があるが、バッファがフルの状態なった際にはそのパケットをロストするため、情報処理装置に後続するパケットが到達した場合情報処理装置が応答できない。
【０００６】
そのため、情報処理装置が短時間に大量のパケットを受信するような環境に設置された場合や、情報処理装置の移行処理に長い時間を要するような場合には、バッファがフルとなる状態が発生し、必要な後続の受信パケットが受け取れない可能性が高くなるという課題がある。例えば、ｍＤＮＳ（ｍｕｌｔｉｃａｓｔ Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）のように１つクエリが複数パケットに分割されて到達する可能性があるパケットでは、先頭に到達したパケットだけでなく、後続で到達するパケットも受け取らなければならない。
【０００７】
本発明はその課題を鑑み、電力モードの移行処理中の情報処理装置が受信したパケットを解析し、バッファリングする受信パケットを選択することで上述した課題の解決を目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、本発明が提供する情報処理装置は、以下の構成を有する。
本発明の一側面によれば、外部装置から受信したパケットをバッファリングできる通信制御部と、
アプリケーションを実行する主制御部と、
前記主制御部に供給する電力を制限する第１の電力モードと、前記主制御部に供給する電力を制限しない第２の電力モードのいずれかで、前記通信制御部と前記主制御部とに対する電力供給を制御する電源制御手段と
を有し、
前記通信制御部は、
前記第１の電力モードにおいて、および、前記第１の電力モードから前記第２の電力モードへの遷移中において、受信したパケットのうちから、設定された選択パターンに基づいてパケットを選択する選択手段と、
前記選択手段により選択されたパケットをバッファに格納するバッファリング手段と
を有することを特徴とする情報処理装置が提供される。
【発明の効果】
【０００９】
本発明によれば、情報処理装置が省電力モードから通常電力モードへの復帰処理中の受信パケットを選択してバッファリングすることにより、電力モードの復帰処理中に発生する必要なパケットのロストの可能性を低減できる。
【図面の簡単な説明】
【００１０】
【図１】画像形成装置１００が設置されるネットワーク環境を示す図である。
【図２】画像形成装置１００のハードウェア構成を示す図である。
【図３】画像形成装置１００のソフトウェア構成を示す図である。
【図４】画像形成装置１００の省電力モードに係る処理を示すフローチャートである。
【図５】実施例１に係る破棄パターンの動的な生成の処理を示すフローチャートである。
【図６】実施例２に係る破棄パターンの動的な生成の処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【００１２】
（実施形態１）
図１に、情報処理装置が設置されるネットワーク環境（あるいはネットワークシステムとも呼ぶ。）の一例を示す。図１のネットワーク環境においては、情報処理装置である画像形成装置１００とＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１０１が存在する。それぞれの装置はネットワーク１０２を介して互いに接続される。
【００１３】
プリンタ１００は、ＰＣ１０１から印刷データを受け取って印刷処理を実行したり、機器情報の要求を受け取って消耗品に関する情報などの機器情報を応答したりする。また、画像形成装置１００は、ＰＣ１０１がプリンタ１００以外の他の機器と通信するためのパケットをはじめ、ネットワーク１０２上を流れる様々なパケットを受け取る環境にある。
【００１４】
●画像形成装置のハードウエア
図２を用いて、まずは、情報処理装置である画像形成装置１００のハードウェア構成について説明する。画像形成装置１００は、プリント機能を備える画像形成装置である。なお、本実施形態ではプリンタを情報処理装置の例にして説明するが、情報処理装置はプリンタの限りではない。例えば、情報処理装置は、コピー機能やスキャン機能を備えるデジタル複合機などの画像形成装置であってもよいし、その他の機能を備えた機器であってもよい。
【００１５】
画像形成装置１００は、主制御部２００、プリンタ２１１、操作部２１２、通信部２２０、電源制御部２３０を備える。各ユニットの構成について説明する。  主制御部２００について説明する。主制御部２００は、ＣＰＵ２０１、拡張Ｉ／Ｆ２０２、ＲＯＭ２０３、ＲＡＭ２０４、電源制御Ｉ／Ｆ２０５、プリンタＩ／Ｆ２０６、操作部Ｉ／Ｆ２０７、ＮＶＲＡＭ２０８を備える。各ユニットは通信バスを介して他界に通信可能に接続される。
【００１６】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３に記憶された制御プログラムを読み出し、画像形成装置１００全体の動作を制御する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４は、ＣＰＵ２０１の主メモリやワークエリア等の一時記憶領域として用いたれる。ＮＶＲＡＭ（Ｎｏｎ  Ｖｏｌａｔｉｌｅ  ＲＡＭ）２０８は、不揮発性メモリであり、画像形成装置１００の設定情報など様々な情報を記憶するための記憶領域として用いられる。拡張Ｉ／Ｆ２０２は、通信部２２０との通信を行う。なお、画像形成装置１００の主制御部２００は１つのＣＰＵ２０１と１つのメモリ（ＲＡＭ２０４）を用いて後述のフローチャートに示す各処理を実施するものとするが、他の形態であっても構わない。例えば、複数のプロセッサや複数のＲＡＭまたは不図示のＨＤＤのような他の記憶媒体を協働させて処理を実行することもできる。
【００１７】
プリンタＩ／Ｆ（インタフェース）２０６は、主制御部２００とプリンタ２１１を接続する。プリンタ２１１は、印刷命令に基づいて印刷処理を実行する。プリンタ２１１で印刷される印刷データは、プリンタＩ／Ｆ２０６を介して主制御部２００からプリンタ２１１へ転送される。
【００１８】
操作部Ｉ／Ｆ２０７は、主制御部２００と操作部２１２とを接続する。操作部２１２にはタッチパネル機能を有する液晶表示部やキーボードなどが備えられている。操作部２１２を用いて利用者が入力した情報は、操作部Ｉ／Ｆ２０７を介して主制御部２００へ転送される。このように操作部２１２はユーザに情報を提示する表示部やユーザから情報を受け付ける受付部として機能する。
【００１９】
電源制御部Ｉ／Ｆ２０５は、主制御部２００と電源制御部２３０とを接続する。電源制御Ｉ／Ｆ２０５を介して、後述する省電力モードへの指示が、主制御部２００から電源制御部２３０へと転送される。
【００２０】
通信部２２０について説明する。通信部２００は、ＣＰＵ２２１、拡張Ｉ／Ｆ２２２、ＲＯＭ２２３、ＲＡＭ２２４、ネットワークＩ／Ｆ２２５、電源制御部Ｉ／Ｆ２２６、ＮＶＲＡＭ２２７を備える。各ユニットは、バスを介して通信可能に接続される。通信部２２０は独立したＡＳＩＣ（特定用途向集積回路）であることを想定するが、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）のような画像形成装置１００に着脱可能な構成であってもよい。主制御部２００は、通信部２２０を介してネットワーク１０２に接続され、ＰＣ１０１などの外部装置と通信可能である。なお通信部２２０は、通信を制御するユニットであり、主制御部に対して通信制御部と呼ぶこともある。
【００２１】
ＣＰＵ２２１は、ＲＯＭ２２３に記憶された制御プログラムを読み出し、通信部２２０の動作を制御する。ＲＡＭ２２４は、ＣＰＵ２２１の主メモリやワークエリア等の一時記憶領域として用いたれる。ＮＶＲＡＭ２２７は、不揮発性メモリであり、通信部２２０の設定情報など様々な情報を記憶するための記憶領域として用いられる。拡張Ｉ／Ｆ２２２は、主制御部２００との通信を行う。なお、通信部２２０は１つのＣＰＵ２２１と１つのメモリ（ＲＡＭ２２４）を用いて後述のフローチャートに示す各処理を実施するものとするが、他の形態であっても構わない。例えば、複数のプロセッサや複数のＲＡＭまたは不図示のＨＤＤのような他の記憶媒体を協働させて処理を実行することもできる。また、一部の処理はハードウェア回路やＤＳＰなどで実現することもできる。
【００２２】
ネットワークＩ／Ｆ２２５は、ネットワーク１０２に接続され、ＰＣ１０１などの外部装置との間でデータの送受信を行う。ネットワークＩ／Ｆ２２５で受信したデータは、ＣＰＵ２２１により処理され、主制御部２００へ転送される。
【００２３】
電源制御Ｉ／Ｆ２２６は、通信部２２０と電源制御部２３０とを接続する。電源制御Ｉ／Ｆ２２６を介して、後述する省電力モードから通常電力モードへの復帰指示が通信部２２０から電源制御部２３０へ転送される。
【００２４】
電源制御部２３０は、電源供給ライン２３２を介して電源２３１から供給される交流電源を直流電源に変換し、電力供給ライン２３３、２３４を介して主制御部２００と通信部２２０とに直流電源を供給する。なお、本実施形態では、プリンタ２１１と操作部２１３のそれぞれに対しても、不図示の電力供給ラインを介して電源制御部２３０が直流電源を供給する。電源制御部２３０は、電源制御部Ｉ／Ｆ２０５，２２６から受け付けた、電力モードを省電力モードへ移行させるための移行指示および通常電力モードへ復帰させるための復帰指示に基づいて画像形成装置１００の電力モードを制御する。
【００２５】
次に、画像形成装置１００が有する電力モードについて説明する。情報処理装置は通常電力モードと省電力モードの２つの電力モードを有する。
【００２６】
各ユニットに対して、それぞれの電力モードで電力供給がされるか否を表１に示す。画像形成装置１００が通常電力モードで動作する場合、主制御部２００と通信部２２０の両方に電源制御部２３０から電力が供給される。このとき、プリンタ２１１と操作部２１３の両方のユニットに対しては常に電力供給されていてもよいし、各ユニットが使用されていない場合には使用されていないユニットに対する電力の供給が遮断されてもよい。つまり、通常電力モードとは、少なくとも主制御部２００と通信部２２０の両方に対して、電源制御部２３０から電力が供給される電力モードである。
【００２７】
一方、画像形成装置１００が省電力モードで動作する場合、ＰＣ１０１などの外部装置から送信されたパケットの処理を、主制御部２００に代わり通信部２２０が実行する。このとき、通信部２２０は、破棄パターンに基づいて、受信パケットに対する処理を決定する。
【００２８】
画像形成装置１００が、省電力モードへの移行および通常電力モードへの復帰を実行する際の処理については図４にて詳細に説明する。なお、省電力モードにおいて主制御部２００は、基本的に電力の供給が停止される。そのため、ＲＡＭ２０４などの揮発性メモリの情報を保存するため、不揮発性メモリなどの一部の装置にのみ電力が供給された状態、もしくは一時的にＮＶＲＡＭ２２７やその他の不揮発性メモリへ退避される状態となる。本発明では省電力モードであっても一部の装置に電力供給がされる形態を想定して説明するが、本発明の解決手段としては不揮発性メモリに退避される形態であってもよい。
【００２９】
【表１】
2020167596.tif 000003
【００３０】
●画像形成装置のソフトウェア
図３を用いて、情報処理装置である画像形成装置１００のソフトウェアブロックの構成について説明する。なお、本実施形態に示すソフトウェア構成については一例であり、本発明を実現するソフトウェア構成はこの限りではない。
【００３１】
画像形成装置１００は、各ユニットを制御するための制御プログラムを各ユニット上に有する。まず、主制御部２００では、ＣＰＵ２０１が、ＲＯＭ２０３に記憶した制御プログラムをＲＡＭ２０４に読み出して制御処理を実行する。
【００３２】
主制御部２００の制御プログラムは、電源処理部３０１、ネットワーク制御部３０２、設定管理部３０３、アプリケーション部３１０を備える。さらに、アプリケーション部３１０は、電力モード制御アプリケーション３１１、プリンタ制御アプリケーション３１２、操作部制御アプリケーション３１３を有する。電源処理部３０１は、電源制御部２３０と通信を行い、省電力モードへの移行指示を電源制御部２３０へ転送する。ネットワーク制御部３０２は、主制御部２００と通信部２２０との通信の制御を行う。例えば、画像形成装置１００がＰＣ１０１などの外部装置と通信の際に使用するパケットの転送や、省電力モードにおける通信部２２０の制御プログラムが使用するＩＰアドレスや破棄パターンなどの設定情報の転送を行う。設定管理部３０３は、ＲＡＭ２０４やＮＶＲＡＭ２０８などの記憶装置に記憶された設定情報の読み出しや保存の処理を行う。例えば、ＩＰアドレスなどのネットワークに関する設定情報や、パケットの破棄パターンなどの省電力モードにおける動作設定などの設定情報を管理する。
【００３３】
アプリケーション部３１０は、画像形成装置１００の高級機能を実現するアプリケーション群である。電力モード制御アプリケーション３１１は、省電力モードへの移行の可否を判断し、電源制御部３０１に省電力モードへの移行を指示したり、ネットワーク制御部３０２に通信部２２０への動作設定を指示したりする。また、電力モード制御アプリケーション３１１は、省電力モードからの復帰要因となったパケットを解析する。画像形成装置１００が処理する必要がないパケットと判断された場合には、前記パケットの解析結果から破棄パターンを生成し、新たな破棄パターンとして設定管理部３０３へ記録するとともに、通信部２２０として破棄パターンの設定を行う。なお、本実施形態においては省電力モードから復帰要因となったパケットを解析し処理するがその限りではなく、通常電力モードにおいて受信したパケットや省電力モードからの復帰処理中に受信してバッファリングされたパケットなどを解析の対象としてもよい。プリンタ制御アプリケーション３１２は、ＰＣ１０１などの外部装置から受信した印刷データを通信部２２０からネットワーク制御部３０２を介して受け取り、プリンタ２１１が印刷可能となるように処理した上でプリンタ２１１へデータを転送する。これにより、外部装置から印刷処理を実行することが可能となる。また、プリンタ２１１のさまざま状態を取得し、印刷処理の実行状況や消耗品の残量などの情報を設定管理部３０３に記憶させる。操作部制御アプリケーション３１３は、操作部２１２に対して設定管理部３０３で記憶した設定情報などを表示する処理をしたり、利用者が操作部２１２を介して入力したデータを設定管理部３０３に記憶したり、入力されたデータを各制御部およびアプリケーションへ転送したりする。これにより、画像形成装置１００に対する入出力処理を実現できる。
【００３４】
次に、通信部２２０は、ＣＰＵ２０１が、ＲＯＭ２２３に記憶した制御プログラムをＲＡＭ２２４に読み出して制御処理を実行する。
【００３５】
通信部２２０の制御プログラムは、電源処理部３２１、設定管理部３２２、データバッファ部３２３、パケット処理３２４、通信制御部３２５を備える。電源処理部３２１は、電源制御部２３０と通信を行い、通常電力モードへの復帰指示を電源制御部２３０へ転送する。設定管理部３２２は、ＲＡＭ２２４やＮＶＲＡＭ２２７などの記憶装置とのデータの入出力を管理する。例えば、ネットワーク制御部３０２から転送されたＩＰアドレスやパケットの破棄パターンなどの情報をＲＡＭ２２４上に書き込んだり、ＭＡＣアドレスなどの情報をＮＶＲＡＭ２２７に記憶したりする。
【００３６】
データバッファ部３２３は、ネットワーク制御部３０２が、通信部２２０で受信したパケットを取得するまでにバッファリングされる記憶領域である。なお、データバッファ部３２３は、少なくとも１つ以上の記憶領域（ＲＡＭ２２４またはＮＶＲＡＭ２２７）のいずれかに存在し、受信した直後のパケットがハードウェア処理で一時的に格納される。それと同時に、通信部２２０の制御プログラムからは設定管理部３２３を介してもデータバッファ部３２３にアクセス可能である。また、画像形成装置１００が省電力モードからの復帰要因となったパケットをはじめ、復帰処理中であって即時にネットワーク制御部３０２へパケットの転送ができない場合のバッファリング処理も行う。
【００３７】
パケット処理部３２４は、通信制御部３２５を介してネットワーク１０２を介して受信したパケットの解析処理を実行する。省電力モードおよび省電力モードから通常電力モードへの復帰処理中に受信したパケットが破棄パターンに合致するか否かの判断は、パケット処理部３２４により実行される。パケット処理部３２４は、受信したパケットが破棄パターンに合致する場合には、受信パケットを破棄して省電力モードを維持する。一方、受信したパケットが破棄パターンに合致しない場合については、パケット処理部３２４は、省電力モードから通常電力モードへの復帰命令を電源処理部３２１に通知する。通信制御部３２５は、ネットワークＩ／Ｆ２２５からのパケットの入出力を制御する。ネットワークＩ／Ｆ２２５で受信したパケットをデータバッファ部３２３に格納すると同時にパケット処理部に対してパケットの受信を通知する。また、通常電力モードと省電力モードとに限らず、画像形成装置１００からネットワーク１０２上へ転送さえるパケットは、通信制御部３２５を介して送信される。なお、パターンに合致したパケットをバッファリングし、それ以外を破棄してもよい。この場合にはこのパターンを例えば選択パターンと呼んでもよい。また破棄パターンと選択パターンとをまとめてパターンあるいは選択パターンと呼んでもよい。
【００３８】
なお、プリンタ２１１、操作部２１２、電源制御部２３０においても、それぞれが有する制御プログラムにより、各ユニットの処理が実現されるものとする。
【００３９】
●電力モードの遷移
続けて、図４を用いて、省電力モードへの移行および通常電力モードへの復帰を実行する際の処理について説明する。この処理はＣＰＵ２０１およびＣＰＵ２２１、また各ユニットを制御する制御プログラムが実行する。実行主体が主制御部２００に属しているステップについてはＣＰＵ２０１が、通信部２２０に属しているステップについてはＣＰＵ２２１が実行する。
【００４０】
まず、通常電力モードにおいて、電力モード制御アプリケーション３１１は、設定管理部３０３から読み出したＩＰアドレスや破棄パターンの情報から、省電力モードにおいて通信処理部２００が使用する各種パラメータを、ネットワーク制御部３０２を介して通信部２００の設定管理部３２２に対して設定する（Ｓ４０１）。本実施例においては、破棄パターンとして、破棄されるべきパケットの宛先ポート番号を設定するものとする。但し、破棄パターンとして登録する情報は宛先ポート番号に限らず、受信パケットから判断することができるその他の情報であってもよい。例えば、受信ポートだけでなく、データペイロード部に特定文字列が含まれている場合など、
パケットから読み取れる情報の組み合わせを破棄パターンとして登録してもよい。具体的には、ＷＳＤ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  ｏｎ  Ｄｅｖｉｃｅ）のような機器の能力要求が可能なプロトコルにおいて、スキャナを備えない画像形成装置１００に対してスキャナの能力を要求するパケットは破棄パターンとするという形態などであってもよい。また、前記パラメータの設定処理は、省電力モードへの移行前であれば、画像形成装置１００の起動時や省電力移行モードへの移行直前など少なくとも１回以上実行されればよい。なおステップＳ４０１は、これにつづくステップとは非同期に実行されてもよい。
【００４１】
そして、電力モード制御アプリケーション３１１は、省電力モードへの移行条件が成立するのを待つ（Ｓ４０２）。移行条件は例えば明示的な指示や、一定時間にわたり外部装置からの印刷ジョブを受信しないことなどであってよい。またステップＳ４０２を繰り返し行っている間に、並行して他の処理を実行することもできる。この移行条件の判定を繰り返す状態で、操作部２１２から利用者の操作により省電力モードへの指示などによって省電力モードへの移行条件が満たされると、電力モード制御アプリケーション３１１は、電源処理制御部３０１に対して省電力モードへの移行指示を送信する（Ｓ４０３）。電源処理制御部３０１が省電力モードへの移行指示を受け取ると、電源制御部２３０に対して省電力モードへの移行指示が転送される。もし、揮発性のメモリのデータを不揮発性メモリへ退避する場合には、この電源制御部２３０に省電力モードへの移行指示が転送される前に、データの退避の処理を実装する。電力制御部２３０は、受信した電源モードの移行指示に応じた電源モードへと移行する。省電力モードが主制御部への電力供給の停止を伴う場合には、電力制御部２３０は、主制御部２００への電力供給を停止し、通信部２３０への電力供給は継続する。ただし、操作部２１２の操作に応じて通常モードへ復帰する場合には、例えば操作部２１２の特定の操作キーと操作部Ｉ／Ｆ２０７とに電力を供給し、操作があった場合には電源制御部２３０に対して割込み等により通知するように構成してもよい。このように局所的に電力供給を維持してもよい。また省電力モードであっても電力制御部２３０による主制御部２００への電力供給を継続し、主制御部２３０の電力制御部３０１が、再起動のために必要な回路に対して電力を供給し、そのほかの電力供給を停止してもよい。
【００４２】
次に、画像形成装置１００の省電力モードへの移行が完了すると、通信制御部３２５はパケットの受信を待ち受ける状態になる（Ｓ４０４）。この状態において、通信制御部３２５がパケットを受信するとデータバッファ部３２３にパケットのデータが一時格納される。パケット処理部３２４がこれを検知すると、受信パケットの宛先ポート番号と設定管理部３２２上に記憶された破棄パターンの宛先ポート番号との比較を行う（Ｓ４０５）。パケット処理部３２４が受信したパケットが破棄パターンに合致（あるいは一致）したと判断した場合、受信したパケットは破棄され、省電力モードを維持したままパケットの受信待ちの状態へと戻る（Ｓ４０６）。このときデータバッファ部３２３に一時格納したパケットのデータも削除する。一方でパケット処理部３２４が受信したパケットが破棄パターンと合致しないと判断した場合、改めて受信パケットをデータバッファ部３２３のバッファ領域へと格納（Ｓ４０７）し、省電力モードからの復帰処理を開始する。これは、通常電力モードへ復帰した際に復帰要因となったパケットを主制御部２００側で処理するための処理である。このとき、復帰要因となったパケットは受信直後に使用したバッファ領域と同じ領域に配置されても、復帰要因のパケットのための専用のバッファ領域に配置されてもよい。
【００４３】
省電力モードから復帰する処理（Ｓ４０８）において、パケット処理部３２４は、省電力モードから通常電力モードへの復帰命令を電源処理部３２１に通知する。電源処理部３２１は、電源制御部に当該通知に基づき主制御部２００の電力状態の変更を依頼する。その結果、電源制御部２３０から主制御部２００への電力供給が再開され、主制御部２００の電源制御部２３０へ復帰信号が送信され、主制御部２００が省電力モードへの復帰処理を実行する。
【００４４】
もし、不揮発性のメモリのデータを揮発性メモリへ退避していた場合には、この際に不揮発性メモリに退避していたデータを揮発性メモリへ書き戻す処理を行う。なお、この復帰処理中も、通信部２２０が受信したパケットは前記バッファ領域にパケット処理部３２４により、処理がされた上で前記バッファ領域に格納される。この際のパケット処理部３２４による処理については後述する図５を用いて詳細を説明する。また電源制御部２３０から主制御部２００への電力供給が継続され、主制御部２３０の電力制御部３０１が主制御部２３０内部で電力供給を制限している場合には、主制御部２３０の電力制御部３０１が電力供給を再開する。さらに通常電力モードに移行したなら、通信部２２０は破棄パターンを用いたパケットのフィルタリングも停止し、受信したパケットをすべてバッファリングする。このフィルタリング処理の切り替えは、この後のステップＳ４０９において、バッファ内のパケットを出力し、空き領域が確保されてからでもよい。
【００４５】
電源制御部３０１が電源制御部２３０からの復帰信号を検出すると、電源制御部３０１は電力モード制御アプリケーション３１１に対して復帰の通知をする。電力モード制御アプリケーション３１１は、復帰の通知の受信を契機として各アプリケーションに対して復帰処理に対して必要な処理を実行する。例えば、プリンタ制御部３１２に復帰処理の通知があった場合には、プリンタ２１１の起動処理などを実行する。そして、主制御部２００側の復帰処理が完了すると、ネットワーク制御部３０２は、データバッファ部３２３に配置されていた復帰要因のパケットおよび復帰処理中に受信しバッファされていたパケットを取得し、各パケットに対して応答するなどの処理を実行する（Ｓ４０９）。ステップＳ４０９の処理は、処理対象のデータに応じてアプリケーション３１０が行うこともある。なお、破棄パターンに登録がなかったにもかかわらず、画像形成装置１００が本来処理する必要がなかった場合には、例えばネットワーク制御部において受信ポートがオープンされていないパケットに関してはこのタイミングで破棄される。なお、後述するパケットのバッファ処理により、復帰処理中に受信した、処理に必要と思われるパケットはバッファされる。例えば、ｍＤＮＳのように１つのクエリが複数パケットに分割されて到達する可能性がある１群のパケットもバッファされる。したがって、省電力状態から復帰した主制御部２００は、当該１群のパケットをバッファから取得して処理することとなり、ｍＤＮＳなどの要求で復帰した場合であっても当該パケットを適切に処理できる。
【００４６】
●省電力モード中のパケット受信処理
図５を用いて、画像形成装置１００が省電力モードから通常電力モードへの復帰処理中に受信したパケットをバッファ領域に配置する処理について説明する。画像形成装置１００が省電力モードからの復帰処理中であっても、通信部２２０は受信したパケットをパケット処理部３２４で処理し、データバッファ部３２３へのバッファリング処理を行う。
【００４７】
まず、通信部２２０がパケットの受信を検知する（Ｓ５０１）と、パケット処理部２２０は、破棄パターンに基づいて受信パケットが破棄パターンに合致するか否かの判断は行う（Ｓ５０２）。受信したパケットが破棄パターンと合致すると判断した場合、通信部２２０はバッファリングを行わずに受信パケットを破棄する（Ｓ５０３）。一方、破棄パターンに合致しないと判断した場合、つまりは主制御部２００での処理が必要と判断した場合に限って、受信したパケットのバッファリングを実行する。破棄パターンは、図４のステップＳ４０５で用いたものと同じであってよい。
【００４８】
次に、パケット処理部３２４は、受信したパケットをバッファリングするための領域に空きがあるかの判断を行う（Ｓ５０４）。バッファ領域に空きがあった場合には、パケット処理部３２４は、受信したパケットをデータバッファ部３２３へ配置し、受信したパケットをバッファリングする（Ｓ５０５）。もし、バッファ領域に空きがなかった場合には、パケット処理部３２４は受信したパケットを破棄する（Ｓ５０６）。そして、パケット処理部は以上の処理を主制御部２００が前記復帰処理を完了し、ネットワーク制御部３０２からその旨の通知を受け取るまで繰り返す（Ｓ５０７）。
【００４９】
省電力モードの間に、および省電力モードから通常電力モードへの遷移中にバッファリングしたパケットは、通常電力モードへの復帰後に、主制御部２００によって順次取得されて処理される。その際に、たとえば主制御部２００がパケットの損失を知ることができたなら、送信元に対して再送を要求してもよい。
【００５０】
以上、本実施形態によれば、画像形成装置１００が省電力モードからの復帰処理を実行している際に受信したパケットであっても、画像形成装置１００が処理する必要のないパケットをバッファ領域に配置せずに済む。従って、前記復帰処理中に受信したパケットから必要な情報を適切に主制御部２００に受けたすことができるようになり、画像形成装置１００の復帰処理中に起因するパケットのロストの可能性を低減できる。
【００５１】
（実施形態２）
実施形態１では、バッファ領域がフルの場合には、受信したパケットが破棄パターンに合致しない場合には一律で破棄する構成について説明した。実施形態２では、バッファ領域がフルの場合において、省電力モードから復帰後の画像形成装置１００がより効果的に処理すべきパケットを選択するための手段について説明する。
【００５２】
まず、本実施例を実現するにあたって、画像形成装置１００が受信するパケットに対して、処理すべき優先度を決定する。例えば、優先度を決定するにあたっては受信パケットが示す宛先ＩＰアドレスを用いることができる。宛先ＩＰアドレスも用いた優先度の決定の一例を表２に示す。
【００５３】
【表２】
2020167596.tif 000004
【００５４】
優先度１が最も優先度の高いパケットであり、優先度４が最も優先度の低いパケットである。例えば、宛先アドレスにユニキャストアドレスを持つユニキャストパケットは、明示的に画像形成装置１００に対して何らかの処理が要求されるパケットである。そこで、優先度が最も高いと判断でき、その優先度として最も高い優先度１を割り当てる。次にマルチキャストアドレスを持つマルチキャストパケットは、画像形成装置１００のアプリケーション３１１が提供するサービスに対して特定の要求がされている可能性が高いため優先的に処理する必要がある。例えば、情報処理装置１００に関するサービスの探索などが上げられ、外部装置の明確な意図が含まれる要求である可能性がある。そこでマルチキャストパケットについては優先度２を割り当てている。なお、ブロードキャストアドレスを持つブロードキャストパケットもマルチキャストパケットと同じく、多数の宛先への到達を目的とするパケットではあるが、マルチキャストが少なかれ宛先を特定して送っているのに対して、ブロードキャストは不特定多数の機器を宛先としたものである。そのため、本実施形態においては、ブロードキャストアドレスに対しては、マルチキャストアドレスよりも優先度が低い優先度３を割り当てている。最後に優先度４として、優先度１から優先度３までのパケットに合致しなかったものとしている。なお、本実施形態において設定している優先度はこの順序に限りではなく、異なる順序で優先度を設定してもよい。
【００５５】
●省電力モード中のパケット受信処理（実施形態２）
次に、図６を用いて、画像形成装置１００が復帰処理中にバッファ領域がフルになった場合の処理について説明する。図６は実施形態１の図５に置き換わる処理手順であり、そのほかの構成や処理については、本実施形態は実施形態１と同様であってよい。画像形成装置１００が省電力モードからの復帰処理中であっても、通信部２２０は受信したパケットをパケット処理部３２４で処理し、データバッファ部３２３へのバッファリング処理を行う。
【００５６】
まず、通信部２２０がパケットの受信を検知する（Ｓ６０１）と、パケット処理部２２０は、破棄パターンに基づいて受信パケットが破棄パターンに合致するか否かの判断は行う（Ｓ６０２）。受信したパケットが破棄パターンと合致すると判断した場合、通信部２２０はバッファリングを行わずに受信パケットを破棄する（Ｓ６０３）。一方、破棄パターンに合致しないと判断した場合、受信したパケットのバッファリングを実行する。次に、パケット処理部３２４は、受信したパケットをバッファリングするための領域に空きがあるかの判断を行う（Ｓ６０４）。バッファ領域に空きがあった場合には、パケット処理部３２４は、受信したパケットをデータバッファ部３２３へ配置し、受信したパケットをバッファリングする（Ｓ６０５）。
【００５７】
もし、バッファ領域に空きがなかった場合には、パケット処理部３２４は、すでにバッファリングされているパケットと、これからバッファリングをしようとしていたパケットとで優先度の比較を実行する（Ｓ６０７）。優先度を比較する処理は、パケット処理部２２０がすでにバッファリングしているパケットをデータバッファ部３２３から読み出し、より低い優先度を持つパケットが存在するか否かを判断すること（Ｓ６０７）により実現する。例えば、これからバッファリングしようとしているパケットが優先度１のユニキャストアドレスのパケットである場合、優先度２以下のパケットの有無を確認する。もし、より低い優先度のパケットがすでにバッファリングされている場合、パケット処理部２２０は、その低い優先度のパケットを削除し、優先度の高いパケットを代わりにバッファ領域であるデータバッファ部３２３へ格納する（Ｓ６０８）。一方、バッファ領域により低い優先度のパケットがない場合には、バッファリングしようとしているパケットを破棄する（Ｓ６０９）。そして、パケット処理部は以上の処理を主制御部２００が前記復帰処理を完了し、ネットワーク制御部３０２からその旨の通知を受け取るまで繰り返す（Ｓ６１０）。
【００５８】
以上、本実施形態によれば、画像形成装置１００が省電力モードからの復帰処理を実行している際に受信したパケットをより効果的にバッファリングできる。従って、実施形態１に比べて前記復帰処理中に受信したパケットからより必要なパケットを適切に主制御部２００に受け渡すことを可能にしたうえ、画像形成装置１００の復帰処理中に起因するパケットのロストの可能性を低減できる。
【００５９】
なお受信パケットよりも低い優先度のパケットがバッファ内に複数あった場合には、そのうち最も低優先度のパケットを削除対象として選択してよい。たとえば、バッファフルの場合、受信パケットの優先度が４なら、バッファの内容を参照することなく受信パケットを廃棄する。受信パケットの優先度が３なら、たとえばバッファの末尾から優先度４のパケットを探し、最初に見つかった優先度４のパケットを削除して代わりに受信パケットをバッファリングする。受信パケットの優先度が１なら、たとえばバッファの末尾から優先度４のパケットを探し、最初に見つかった優先度４のパケットを削除して代わりに受信パケットをバッファリングする。なければ優先度３のパケットを探し、それもなければ優先度２のパケットを探す。このように、削除できるパケットを探す場合には、より低い優先度から順にバッファを走査してよい。
【００６０】
またバッファがキューの場合、キューの中間にあるパケットの置換によりパケットの順序が変わってしまう。そこで、キューを、パケット間をポインタによりリンクする構造で実現してもよい。この場合、バッファ中のパケットを削除して受信パケットを格納する際には、削除したパケットの前後のパケットをポインタで接続し直し、新たに格納したパケットはキューの末尾になるよう、ポインタを繋げばよい。
【００６１】
また、バッファ内に、受信パケットと置換できる最低の優先度のパケットが複数ある場合には、発見した順ではなく、さらに従属的な優先度に従って削除するパケットを選択してよい。たとえば従属的な優先度としてポート番号、すなわちポート番号が示すサービスを参照してもよい。この場合には、複数のパケットを受信するサービスよりも、単一のパケットの受信で済むサービスを低優先度とみなして、低優先度のパケットを優先的に削除するなどしてよい。もちろんそのほかの基準で削除対象のパケットを選択してよい。
【００６２】
さらに、バッファ内の優先度ごとのパケットの探索を容易にするために、バッファリングされているパケットの優先度ごとの数を、パケットをバファリングし、また削除するごとに記憶してもよい。このようにすれば、バッファフルの場合には、パケットの優先度ごとの数を参照することで、受信パケットで置き換えることができるパケットの有無を、バッファ内のパケットを探索するまでもなく知ることができる。またバッファ内から探索すべきパケットの優先度を、探索に先だって知っておくことができるので、無駄な探索を行う必要がなくなる。
【００６３】
（その他の実施形態）
前記それぞれの実施形態では、破棄パターンに合致するか否かの判断後にバッファ領域の空きがあるか否かの判断する構成について説明した。しかしながら、前記の判断処理については処理の順序が前後しても構わない。
【００６４】
また、実施形態２においては、優先度を決定する要素としては、宛先アドレスを用いた構成について説明した。しかしながら、優先度を決定する要素は宛先アドレスに限ったものではなく、受信したパケットから読み取れる情報であればよい。例えば、ＴＣＰやＵＤＰ、ＩＣＭＰなどのプロトコル種別であってもよいし、宛先アドレスなどの他の情報との組み合わせであってもよい。
【００６５】
さらに、実施形態２においては、バッファ領域に優先度のパケットが配置された状態でバッファがフルの状態となっていた場合には受信パケットが破棄される構成であるが、受信した時刻最も古いものなどの他の情報との組み合わせで同じ優先度のパケットを置き換える構成であっても構わない。
【００６６】
以上の他の実施形態により、通信部２２０のパケットの処理を効率化ができるとともに、バッファリングすべきパケットの優先度を細かく設定が可能になる。従って、実施形態１および実施形態２に比べて、帰処理中に受信したパケットからより必要なパケットを適切に主制御部２００に受け渡すことを可能にしたうえ、画像形成装置１００の復帰処理中に起因するパケットのロストの可能性を低減できる。
【００６７】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６８】
本発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【００６９】
１００  画像形成装置、１０１  ＰＣ、１０２  ネットワーク、２３２  電源供給ライン、２３３  電源供給ライン、２３４  電源供給ライン
【図１】
2020167596.tif 000005
【図２】
2020167596.tif 000006
【図３】
2020167596.tif 000007
【図４】
2020167596.tif 000008
【図５】
2020167596.tif 000009
【図６】
2020167596.tif 000010