説明

情報処理装置、その制御方法、および制御プログラム

【課題】通常電力モードへ復帰する復帰要因パケットで始まる通信の全データサイズに応じた適切な通信モードを選択して、受信完了までに要する時間を短くする。
【解決手段】画像処理装置200は、通常電力モードと該通常電力モードよりも消費電力が少ない省電力モードとを備え、ネットワークを介して少なくとも1つの外部機器に接続されて、通常電力モードの際に外部機器から受信した受信パケットに応じたジョブを実行する。通信制御部303は外部機器との通信速度を変更する。省電力モードである場合に、復帰要因パケットを受信すると、省電力制御部316は画像処理装置を省電力モードから通常電力モードに復帰させる。そして、通常電力モードへ復帰する際に、JOB制御部317は受信パケットのデータサイズと通信速度およびリンクダウン時間とに応じて通信速度を変更するか否かを決定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、その制御方法、および制御プログラムに関し、特に、ネットワークを介して外部装置から受信したパケットを処理する情報処理装置に関する。
【背景技術】
【0002】
一般に、情報処理装置の1つとして、複合機又は単機能プリンタ等の画像処理装置が知られている。そして、画像処理装置において、通常状態(スタンバイモード又は通常電力モードともいう)よりも消費電力が少ない省電力モード(スリープモードともいう)を備えるものがある。
【0003】
スリープモードにおいて、画像処理装置は、RAM(ランダムアクセスメモリ)、NIC(ネットワークインタフェースカード)、および操作部以外のユニットに対する電力供給をストップする。これによって、画像処理装置は、スリープ状態における消費電力を1W〜数W程度に抑えるようにしている。
【0004】
なお、スリープ状態においては、画像処理装置のプリンタ部に備えられた感光ドラム、定着器、CPU(中央処理装置)、およびHDD(ハードディスクドライブ)に対する電力供給はストップされる。このため、画像処理装置において、画像形成処理を実行することはできない。
【0005】
また、スリープ状態において、所定の条件が満たされると、画像処理装置はスリープ状態からスタンバイ状態に復帰する。上記の所定の条件とは、例えば、(1)操作部においてユーザによる操作が行われたこと。(2)NICがスリープ状態から復帰する復帰条件に適合するパケット(データ)を、ネットワークを介して受信すること等が挙げられる。
【0006】
従って、前述したように、スリープ状態においても操作部およびNICに対しては電力供給が行われており、画像処理装置においては、操作部に備えられたボタンの押下およびパケットの受信等が監視されている。
【0007】
上記のパケット受信を監視するため、スリープ状態においても画像処理装置に備えられたNICはネットワークにリンクする必要がある。例えば、ネットワークの規格がEthernet(登録商標)である場合には、NICは予め指定されている通信モードでリンクを行うか、又はIEEE802.1uにおいて定められたAuto Negotiationを用いて通信モードを決定してリンクを行う。ここで、通信モードとは、リンクスピード(通信スピード)又はDuplex(全二重/半二重通信)などをいう。
【0008】
ところで、近年、画像処理装置に備えられたNICには、通信スピードとして従来の10Mbps又は100Mbpsに加え、高速な通信モード(1000Mbps(1Gbps))を備えているものがある。
【0009】
ところが、10Mbpsや100Mbpsと比較して、1000Mbpsの通信モードにおいては、NICにおける消費電力が大きくなってしまう。このため、スタンバイ状態からスリープ状態に移行する際に、NICが恰も1000Mbpsをサポートしていないように振る舞って、10Mbps又は100Mbpsの通信スピードでネットワークに再リンクして、スリープ状態における電力消費を抑えるようにすることが知られている。
【0010】
さらに、1000Mbps以外の通信スピード(10Mbps又は100Mbps)においても、NICがネットワーク上のHUB(ハブ)の通信能力に合わせて、より低い通信スピードを選択して、さらに消費電力を抑制することも考えられている。
【0011】
例えば、画像処理装置がHUBに接続された状態でスリープ状態に移行する際、画像処理装置に備えられたMAC(Media Access Control)がHUBの通信能力に合わせて低い通信スピードを選択するようにしたものがある(特許文献1参照)。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2004−243533号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
特許文献1において、通信スピードが低い状態で復帰条件に適合するパケット(以下復帰要因パケットと呼ぶ)を受信すると、通信モード(つまり、通信スピード)を高速な通信モードに変更している。このため、通信モードの変更に伴って所謂リンクダウンが発生してしまい、復帰要因パケットを受信してから高速な通信モードで通信が可能になるまで(再リンクが完了するまで)の間、続くパケットを受信できない状態となってしまう。
【0014】
例えば、Auto Negotiationを用いて新しい通信モードで再度リンクするまでに要する時間(再リンク時間)は、接続先の機器との相性にもよるが、数秒から長いと5秒、6秒かかる場合がある。そして、当該再リンク時間の間にはおいては、リンクが確立していないため、NICはパケットを受信することができない状態となってしまう。
【0015】
このように、通信スピードが低い状態において、復帰要因パケットを受信したタイミングで、通信モードを高速な通信モードに変更すると、後続のパケットを受信できない時間が生じる。従って、復帰要因パケットに続くパケットのデータ量が小さい場合においても、通信モードを高速な通信モードに変更すると、通信モードを変更することなく通信を継続した場合に比べて受信完了するまでの時間が長くなってしまう場合がある。
【0016】
一方、復帰要因パケットを受信した際、復帰パケットに続くパケットの受信が完了するまで通信モードを変更することなく(すなわち、低い通信スピードのまま)通信を継続したとすると、後続のパケットにおけるデータ量が大きい場合には、今度は受信完了するまでの時間が長くなってしまう。
【0017】
従って、本発明の目的は、復帰要因パケットで始まる通信のデータサイズに応じた適切な通信モードを選択して、受信完了までに要する時間を短くすることのできる情報処理装置、その制御方法、および制御プログラムを提供することにある。
【課題を解決するための手段】
【0018】
上記の課題を解決するため、本発明による情報処理装置は、通常電力モードと該通常電力モードよりも消費電力が少ない省電力モードとを備え、ネットワークを介して少なくとも1つの外部機器に接続されて、前記通常電力モードの際に前記外部機器から前記ネットワークを介して受信した受信情報に応じたジョブを実行する情報処理装置において、前記外部機器との通信速度を変更する通信速度変更手段と、前記省電力モードである場合に、前記受信情報として、前記省電力モードから前記通常電力モードに復帰する要因である復帰要因情報を受信すると、前記情報処理装置を前記省電力モードから前記通常電力モードに復帰させる通常電力モード復帰手段と、前記省電力モードから前記通常電力モードへ復帰する際に、前記受信情報のデータサイズと前記通信速度および前記通信速度を変更する際に要する変更時間とに応じて前記通信速度を変更するか否かを決定する第1の制御手段とを有することを特徴とする。
【発明の効果】
【0019】
本発明によれば、省電力モードから通常電力モードに復帰する際に、受信情報のデータサイズと通信速度および通信速度を変更する際に要する変更時間とに応じて、通信速度を変更するか否かを決定するようにしたので、復帰要因パケットで始まる通信のデータサイズに応じた適切な通信モードを選択して、受信完了までに要する時間を短くすることができる。
【図面の簡単な説明】
【0020】
【図1】本発明の実施の形態による情報処理装置の一例が用いられたネットワークシステムを示す図である。
【図2】図1に示す画像処理装置の構成の一例を示すブロック図である。
【図3】図2で説明したNICおよびMFPにおけるソフトウェア構成を示す図である。
【図4】図2に示す画像処理装置においてスリープモードへの移行およびスリープモードからの復帰の際の通信スピード変更処理を説明するためのシーケンス図である。
【図5】図4に示す通信速度変更タイミング制御処理を詳細に説明するためのシーケンス図である。
【図6】図5に示すJOBデータサイズ推定処理を詳細に説明するためのフローチャートである。
【図7】図6に示すJOBヘッダ部の一例を示す図である。
【図8】図6で説明したJOBデータサイズ推定演算式選択テーブルの一例を示す図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施の形態による情報処理装置の一例について図面を参照して説明する。
【0022】
図1は本発明の実施の形態による情報処理装置の一例が用いられたネットワークシステムを示す図である。なお、以下の説明では、情報処理装置の1つである画像処理装置を例に挙げて説明する。本実施形態においては、画像処理装置以外の情報処理装置であっても、通信機能を備えるとともに、省電力モードと通常モード(スタンバイモード)との切り替えが行われる機器であれば、同様にして本発明を適用することができる。
【0023】
図1を参照して、画像処理装置100AはHUB102を介してネットワーク(例えば、LAN(ローカルエリアネットワーク)103に接続されている。図示の例では、HUB102には、パーソナルコンピュータ(PC)104およびサーバ105が接続されている。画像処理装置100Aは、MFP(マルチファンクションペリフェラル)100とネットワークインタフェース装置(例えば、ネットワークインタフェースカード(以下NICと呼ぶ))101を備えている。そして、MFP100はNIC101を介してHUB102に接続されている。なお、図示はしないが、LAN103には、PCなどの外部機器が接続されている。
【0024】
図示の画像処理装置は、印刷が可能な通常電力モード(スタンバイモード)と、スタンバイモードよりも消費電力が少ない省電力モード(スリープモード)とを有している。
【0025】
HUB102は、Ethernet(登録商標)等の集線装置であって、ここでは、10Mbps、100Mbps、および1000Mbpsの3種類の通信スピード(リンクスピード)で通信をサポートする。また、HUB102は、Duplexに関しては、10Mbps及び100Mbpsにおいては全二重および半二重通信をサポートし、1000Mbpsにおいて全二重通信をサポートする。
【0026】
HUB102は複数のポートを有しており、これらポートの各々には、使用される通信モードとして、リンクスピードおよびDuplexが予め指定されているものとする。なお、リンクスピードおよびDuplexを、固定的に各ポートに指定することなく、Auto Negotiationを実行するように設定しておくようにしてもよい。
【0027】
図2は、図1に示す画像処理装置200の構成の一例を示すブロック図である。
【0028】
図2を参照すると、NIC101は、インテリジェント型ネットワークカードモジュールによって実現され、MFP100に対して着脱可能なネットワークインタフェース装置である。NIC101は、CPU201、RAM202、ROM203、ネットワークI/F204、LED205、および拡張I/F206を有している。そして、これらCPU201、RAM202、ROM203、ネットワークI/F204、LED205、および拡張I/F206は相互にシステムバス207で接続されている。
【0029】
CPU201は、ROM203に格納された制御プログラムを読み出し、この制御プログラムに応じて各種制御処理を実行する。例えば、CPU201は、ネットワークI/F204を介してHUB102に接続し、HUB102を介してLAN103上の外部機器(図示せず)と所定の通信プロトコルに従って通信する処理を実行する。これによって、CPU201は、例えば、外部機器の1つである印刷データ生成装置から送信された印刷データおよびプリンタ制御命令等の各種データを受信する。そして、CPU201は拡張I/F206を介してMFP100に各種データを転送する。これによって、MFP100は各種データに応じた印刷処理を行う。
【0030】
RAM202は、CPU201の主メモリおよびワークエリア等の一時記憶領域として用いられる。LED205は、NIC101の動作状態を示す表示部として用いられている。LED205は、例えば、ネットワークI/F204とHUB102との電気的な接続状態および通信モード等の各種動作状態について、LEDの色又は点滅パターンで表示する。
【0031】
拡張I/F206は、NIC101とMFP100とを接続するためのI/Fであって、ローカルケーブル210を介してMFP100側の拡張I/F224に接続されている。
【0032】
なお、拡張I/F206は、不図示のコネクタを有しており、NIC101は、このコネクタによってプリンタMFP100に対して着脱が可能となってする。よって、同様の構成を備える他のMFPにこのNIC101を装着することができる。
【0033】
また、本実施形態では、ネットワークI/F204は、MFP100がスタンバイ状態である際には、10Mbps、100Mbps、および1000Mbpsのいずれかのリンクスピードで通信を行うとともに、全二重および半二重のいずれかで通信を行う機能を有している。一方、MFP100がスリープ状態である際には、ネットワークI/F204は、10Mbpsおよび100Mbpsのいずれかのリンクスピードで通信を行うとともに、全二重および半二重のいずれかで通信を行うように設定されている。つまり、ネットワークI/F204は、MFP100がスリープ状態である際には、10Mbpsおよび100Mbpsをサポートし、1000Mbpsについてはサポートしない。
【0034】
MFP100は、制御部220、操作部230、スキャナ240、およびプリンタ250を備えている。制御部220は、CPU221、RAM222、ROM223、拡張I/F224、操作部I/F225、およびデバイスI/F226を有しており、これらCPU221、RAM222、ROM223、拡張I/F224、操作部I/F225、およびデバイスI/F226は相互にシステムバス227で接続されている。そして、操作部230は、操作部I/F225に接続され、スキャナ240およびプリンタ250はデバイスI/F226に接続されている。
【0035】
CPU221は、ROM223に記憶された制御プログラムを読み出して、この制御プログラムに応じて各種制御処理を実行する。例えば、CPU221は、拡張I/F224を介してNIC101から転送される印刷データに基づいて出力画像データを生成する。そして、CPU221はデバイスI/F226を介して出力画像データをプリンタ250に与えて、プリンタ250によって印刷を実行させる。
【0036】
RAM222は、CPU221の主メモリおよびワークエリア等として機能する。また、RAM222は、図示しない増設ポートに接続されるオプションRAMによってそのメモリ容量を拡張することができる。
【0037】
操作部230は、MFP100の動作モード等の設定および印刷データの取り消し等の操作を行うためのボタンを備えている。さらに、操作部230は、MFP100の動作状態を示す液晶パネルおよびLED等の表示部を有している。そして、後述する通信モードの設定を、操作部230によって行うことができる。
【0038】
プリンタ250は、例えば、電子写真方式(レーザービーム方式)、インクジェット方式、又は昇華方(熱転写)方式等を用いたプリンタであり、出力画像データに応じて印刷を実行する。スキャナ240は原稿上の画像を読み取って画像データを生成し、この画像データをCPU221に与える。
【0039】
前述のように、MFP100は、スタンバイモードよりもその消費電力が少ないスリープモードを備えている。スリープモード、つまり、スリープ状態においては、特定のユニット(例えば、操作部230および拡張I/F224)を除くユニットに対する電力供給が停止されて、消費電力が抑制される。
【0040】
図3は、図2で説明したNIC101およびMFP100におけるソフトウェア構成を示す図である。なお、ここでは、NIC101における通信モードの設定、電力制御、およびジョブ(JOB)制御についてのみ説明するが、NIC101およびMFP100には、以下に説明するソフトウェア以外にも各種ソフトウェアが実装されている。
【0041】
図3において、図示のソフトウェアはNIC101又はMFP100のメモリ(例えば、図2に示すROM203又は223)に格納されている。そして、NIC101又はMFP100が起動されると、ソフトウェアはROM203又は223からRAM202又は222に読み出され、CPU201又は221によって実行される。
【0042】
NIC101において動作するオペレーティングシステム(OS)301には、ネットワークI/Fドライバ302及び通信制御部303が備えられている。ネットワークI/Fドライバ302は、ネットワークI/F204による通信処理の実行を制御する。通信制御部303は、後述する手法を用いてMFP100側からの指示に従って、ネットワークI/Fドライバ302に所定の通信モードを設定させる。
【0043】
MFP100において動作するオペレーティングシステム(OS)311には、NICドライバ312および通信モード設定部313が備えられている。NICドライバ312は、NIC101に対して各種指示を送信して、NIC101に各種指示に応じた各種動作を実行させる。通信モード設定部313は、後述する手法を用いて、NIC101がHUB102と通信する際の通信モードを決定して、当該決定した通信モードをNIC101に設定させる。
【0044】
なお、OS311で動作する各ソフトウェアのうち、NICドライバ312はOS311のカーネルスペースで動作するのに対して、通信モード設定部313はOS311のユーザスペースで動作するものとする。
【0045】
また、通信モード設定部313は、NICドライバ312のAPI(Application Program Interface)を利用して、NIC101から各種情報を取得するとともに、NIC101に対して各種設定を行わせる。
【0046】
ここで、NIC101の各種情報とは、例えば、NIC101にネットワークケーブルが接続されているか否か(NIC101とHUB102とが電気的に接続されているか否か)を示す情報、NIC101に現在設定されている通信モードを示す情報等である。
【0047】
さらに、通信モード設定部313は、HUB102の通信能力を示す能力情報を、NIC101から取得する。具体的には、通信モード設定部313は、NICドライバ312を介してNIC101のLink−Partner−Abilityのレジスタ(図示せず)を参照して、HUB102の通信能力を認識する。
【0048】
なお、HUB102の通信能力を示す能力情報とは、HUB102が対応可能な通信スピードおよびDuplexを示す情報又はAuto Negotiationが設定されているか否か等を示す情報である。
【0049】
通信モード設定記憶部314には、MFP100がスタンバイ状態である場合に、NIC101がHUB102と通信する際の通信モードを示すモード設定情報(スタンバイ設定情報)が記憶される。さらに、通信モード設定記憶部314には、MFP100がスリープ状態である場合に、NIC101がHUB102と通信する際の通信モードを示すモード設定情報(スリープ設定情報)が記憶される。
【0050】
CPU221は、通信モード設定部313によって決定された通信モードを示す情報を通信モード情報記憶部314に記憶させる。また、CPU221は、通信モード設定記憶部314に記憶されているモード設定情報に基づいてNIC101に対する指示を行う。
【0051】
NIC101に対して通信モードの変更設定を行った場合には、NIC101は一旦リンクダウン状態(通信できない状態)となる。そして、新しい通信モードでリンクが確立すると、リンクアップ状態になって、NIC101は新しい通信スピードによる通信可能な状態となる。
【0052】
通信モード設定部313は、通信モードの変更設定の際に発生したリンクダウン状態の期間(時間)を計測して、リンクダウン時間(変更時間)としてリンクダウン時間記憶部319に記憶する。リンクダウン時間記憶部319および通信モード設定記憶部314はRAM222上に確保される。
【0053】
OS311は、プロトコルスタック315、省電力制御部316、およびJOB制御部317を有している。省電力制御部316は、MFP100を、スリープモードに移行するとともに、スタンバイ状態に復帰させる際の制御を行うソフトウェアである。
【0054】
省電力制御部316は、操作部230の使用状況、そして、JOB制御部317の動作状況を監視して、MFP100において待機状態が続いていると判断すると、スタンバイ状態からスリープモードに移行する制御を行う。スリープモード移行の際には、省電力制御部316は特定のユニット(操作部230および拡張I/F224など)を除くユニットに対する電力供給をストップする制御を行って、消費電力を抑制する。
【0055】
さらに、省電力制御部316はCPU221を停止して、RAM222を低電力状態(セルフリフレッシュモード)として、MFP100で動作するソフトウェアを停止する制御も行う。また、省電力制御部316は、スリープ状態の際に、NIC101から起床割り込みが発生した場合又は操作部230のボタンなどが押されて割り込みが発生した場合には、CPU221を再稼動して各ユニットに対する電力供給を再開させるスタンバイ復帰制御を行う。
【0056】
JOB制御部317は、例えば、操作部230によってコピー(COPY)などの操作が行われた場合、当該操作に応じた作業(以下JOBと呼ぶ)をスキャナ240およびプリンタ250に指示して処理を行うJOB処理ソフトウェアを備えている。
【0057】
また、NIC101が受信した印刷要求およびその印刷データ(以下プリントJOBと呼ぶ)は、プロトコルスタック315を介してJOB制御部317に渡される。そして、JOB制御部317はプリントJOBの内容を解釈して、プリンタ250を制御して、印刷を実行する。
【0058】
なお、プロトコルスタック315は、TCP/IPなどの通信プロトコルを解釈するソフトウェアである。
【0059】
JOB制御部317は、プリントJOB(JOBデータ)の受信速度を計測しており、プリントJOBの受信を開始してから終了するまでの受信速度の平均値(受信速度平均値)をJOB受信速度記憶部318に格納する。JOB受信速度記憶部318は、例えば、ROM223上の記憶領域に確保される。
【0060】
図4は、図2に示す画像処理装置においてスリープモードへの移行およびスリープモードからの復帰の際の通信スピード変更処理を説明するためのシーケンス図である。
【0061】
図2〜図4を参照して、MFP100において、省電力制御部316は、MFP100をスリープモードに移行させる条件が揃っていたか否かについて監視する(ステップS401)。つまり、省電力制御部316は、通常電力モードから省電力モードに移行する移行要因があるか否かについて監視する。スリープモードに移行させる条件が揃わないと(ステップS401において、NO)、省電力制御部316は待機する。
【0062】
一方、スリープモードに移行させる条件が揃うと(ステップS401において、YES)、省電力制御部316は、スリープモード移行処理を行う(ステップS402)。スリープモード移行処理では、例えば、省電力制御部316は、操作部230に備えられた表示部に対する電力供給を停止するとともに、スキャナ240およびプリンタ250に対する電力供給を停止するなどの電力制御を行う。
【0063】
続いて、電力制御部316は、通信モード設定部313に対してスリープモード移行を指示する。当該指示に応答して、通信モード設定部313はNICドライバ312を制御して、NIC101に対して通信速度(通信スピード)変更指示を行う(ステップS403)。通信速度変更指示を受けると、NIC101では、通信制御部303は通信速度の変更を行うため、まずリンクダウンを行い(ステップS404)、次に通信速度変更指示で指示された通信モードに設定変更を行う(ステップS405)。そして、NIC101はリンクアップが完了するのを待つ(ステップS406)。
【0064】
一方、MFP100においては、NIC101に対して通信速度変更指示を行った後、省電力制御部316はRAM222を低電力モードに移行させた後、CPU221を停止して、スリープモード状態への移行を完了する(ステップS407)。
【0065】
スリープモードへの移行の後は、スリープ復帰要因であるイベントが発生するまで、MFP100では省電力状態が維持される。このスリープモードにおいては、NIC101は、画像処理装置200宛てのパケット(データ)を受信して、当該受信パケット(受信情報)がスリープモードから復帰する必要のある復帰要因パケット(復帰要因情報:起床対象パケットともいう)であるか否かについて判定する(ステップS408)。
【0066】
例えば、CPU201は、ネットワークI/F204で受信した受信パケットをRAM202に格納する。そして、CPU201は当該受信パケットが起床対象パケットであるか否かについて判定する。
【0067】
受信パケットが起床対象パケットはないと判定すると(ステップS408において、NO)、CPU201は待機する。一方、受信パケットが起床対象パケットであると判定すると(ステップS408において、YES)、CPU201は、拡張I/F206を介してMFP100に割り込み通知を通知して、MFP100に対して起床指示を行う(ステップS409)。
【0068】
MFP100は、NIC101から割り込みによって起床指示を受けると、スリープモード解除を行う(ステップS410)。具体的には、NIC101から割り込みによって起床指示を受けると、MFP100に備えられた電力制御回路(図示せず)は、制御部220において電力供給が停止されていたブロックに対して通電を開始する。これによって、CPU221が動作を再開する。
【0069】
CPU221が動作を再開すると、RAM222が低電力モードから通常モードに復帰して、図3に示す省電力制御部316(つまり、CPU221)はスリープ復帰処理を実行する。続いて、CPU201は起床対象パケットと当該起床対象パケットに続いて受信した受信パケットを、拡張I/F206を介してMFP100に転送する。
【0070】
起床対象パケットおよび当該起床対象パケットに続く受信パケットは、CPU221上で動作するプロトコルスタック315に送られる。そして、プロトコルスタック315は、後述するように後続の受信パケットをJOB制御部317に送る。例えば、JOB制御部317は、後続の受信パケットについて、そのJOBデータの先頭部分を解析する。そして、後述するように、この解析結果に応じて通信速度の変更タイミングを制御する通信速度変更タイミング制御処理が行われる(ステップS411)。その後、JOB制御部317は、これら起床対象パケットおよび受信パケットの内容に応じたJOB処理を実行する(ステップS412)。
【0071】
図5は、図4に示す通信速度変更タイミング制御処理を詳細に説明するためのシーケンス図である。
【0072】
図2、図3、および図5を参照して、通信速度変更タイミング制御処理が実行されると、前述のように、NIC101から起床対象パケットと起床対象パケットに続く受信パケット(JOBデータを含む)がMFP100に転送される(ステップS511)。そして、MFP100は起床対象パケットおよび後続の受信パケットパケットを受信する(ステップS512)。
【0073】
ところで、JOB通信を行う通信方式がTCP/IPである場合には、起床対象パケットはTCP/IPのセッションを確立するためのネゴシエーションパケットである。従って、当該ネゴシエーションパケット、つまり、起床対象パケットにはJOBデータは含まれていない。そして、セッション確立後に受信した後続の受信パケットには、JOBデータが含まれている。
【0074】
TCP/IPにおけるネゴシエーションは、CPU221上で動作するプロトコルスタック315で行われる。そして、JOB制御部317には、セッション確立後の受信パケットに含まれるJOBデータのみが送られる。
【0075】
JOB制御部317はJOBデータの先頭部分を解析して、当該解析結果に応じてJOBデータの全体サイズ(JS)を推定するJOBデータサイズ推定処理を行う(ステップS513)。このJOBデータサイズ推定処理については、後述する。
【0076】
続いて、JOB制御部317は、JOBデータサイズ推定処理によって推定されたJOBデータサイズ(JS)がJOB受信速度(RR)とリンクダウン時間(DT)との乗算結果(JOB受信速度(RR)×リンクダウン時間(DT))よりも大きいかについて判定する(ステップS514)。
【0077】
ここで、JOB受信速度(RR)×リンクダウン時間(DT)は、通信速度変更を行うと通信不能となるリンクダウン時間(DT)の間において、通信速度変更を行わないとした場合に受信可能なJOBデータの量を表している。JOB受信速度(RR)として、JOB受信速度記憶部318に格納された受信速度平均値が用いられる。
【0078】
なお、低速の通信モード(例えば、10Mbit/sec)において、通信速度の低下がなく理論値に近い受信速度で受信可能な画像処理装置であれば、10Mbit/secをJOB受信速度とするようにしてもよい。
【0079】
リンクダウン時間(DT)は、前述のように、リンクダウン時間記憶部319に記憶されており、例えば、低速の通信モード(10Mbit/sec)において、JOB受信速度(RR)が毎秒1MBであり、リンクダウン時間(DT)が4秒であるとすると、JOB受信速度(RR)×リンクダウン時間(DT)=4MBとなる。
【0080】
よって、JOBデータサイズ(JS)が4MB以下であれば、JOB制御部317は通信変更速度を変更することなく、低速の通信モードを維持してJOBデータの受信を継続する。つまり、JOBデータサイズ(JS)≦JOB受信速度(RR)×リンクダウン時間(DT)であると(ステップS514において、NO)、JOB制御部317は通信速度を変更することなく、後続の受信パケットにおけるJOBデータを受信する(ステップS520)。つまり、JOB制御部317は、スリープモードの際に設定された低速の速度を維持した状態でJOBデータを受信する。
【0081】
一方、JOBデータサイズ(JS)が4MBを超えるサイズであると、JOB制御部317は通信速度の変更を指示して、別の通信速度(ここでは、高速な通信モード)に切り換えた後、後続の受信パケットにおけるJOBデータを受信することになる。
【0082】
つまり、JOBデータサイズ(JS)>JOB受信速度(RR)×リンクダウン時間(DT)であると(ステップS514において、YES)、JOB制御部317は通信速度の変更をNIC101に対して指示する(ステップS515)。
【0083】
MFP100から通信速度変更指示を受けると、CPU201上で動作する通信制御部303は、通信速度変更を行うため、リンクダウン処理を行う(ステップS516)。そして、通信制御部303は通信速度変更指示によって指示された通信モードに設定変更を行う(ステップS517)。その後、通信制御部303はリンクアップ処理を実行する(ステップS518)。
【0084】
リンクアップが完了した後、CPU201は後続の受信パケットをMFP100に転送する(ステップS519)。そして、MFP100において、ステップS520でJOB制御部317は後続の受信パケットにおけるJOBデータを受信する。なお、ステップS515において通信速度変更指示が行われた場合には、JOB制御部317はJOBデータの受信を完了すると(ステップS521)、図4のステップS412に移行して、JOBデータに応じたJOB処理を実行する。
【0085】
一方、通信速度変更を行わない場合には(つまり、スリープモードの際に設定した低速の通信モードを維持した状態では)、JOB制御部317は別のJOBデータの受信があるか否かについて監視する(ステップS522)。そして、別の(新たな)JOBデータの受信があると(ステップS522において、YES)、JOB制御部317はステップS512に戻って新たなJOBデータに対して通信速度変更タイミング制御処理を実行する。
【0086】
つまり、低速な通信モードを維持した状態で、JOBデータの受信を完了する前に、新たなJOBデータを受信した場合には、低速な通信モードを継続するかについてタイミング制御を行う必要がある。なお、到着した順番にシーケンシャルにJOB処理を行う画像処理装置である場合、新たなJOBデータのサイズを推定する際には、上述のようにしてタイミング制御が行われる。一方、複数のJOB処理を並列して処理可能な画像処理装置である場合、前のJOBデータのうち未だ受信していない受信残りサイズと新たなJOBデータの推定サイズとを加算した合計サイズについて、低速な通信モードを継続するかの判定を行った方が効率的である。
【0087】
新たなJOBデータを受信しないで(ステップS522において、NO)、JOBデータ受信を完了すると(ステップS523)、JOB制御部317は通信速度変更指示をNIC101に対して行って(ステップS524)、図4のステップS412に移行して、JOBデータに応じたJOB処理を行う。
【0088】
通信速度変更指示を受けると、CPU201上で動作する通信制御部303は、通信速度変更を行うため、リンクダウン処理を行う(ステップS525)。そして、通信制御部303は通信速度変更指示によって指示された通信モード(つまり、変更後の通信速度)に設定変更を行う(ステップS526)。その後、通信制御部303はリンクアップ処理を実行する(ステップS527)。
【0089】
なお、ステップS523においてJOBデータの受信を完了した後、通信速度変更指示を行うが、これは、一旦JOBデータの受信が終了して通信が完結した状態で、通信モードを高速な通信モードに切り換えておけば、その後新たなJOBデータの受信があった場合に、高速でJOBデータの受信ができるからである。
【0090】
但し、スタンバイモードからスリープモードに移行するまでの時間が短いスリープ設定である場合には(直ぐに再度スリープモードに移行する場合)JOBデータの受信完了後においても通信速度変更指示を行わず、低速の通信モードを維持するようにしてもよい。
【0091】
図6は、図5に示すJOBデータサイズ推定処理を詳細に説明するためのフローチャートである。
【0092】
図2、図3、および図6を参照して、JOBデータサイズ推定処理が開始されると、CPU221上で動作するJOB制御部317はJOBデータの先頭部分にあたるJOBヘッダ部800を解析して、その解析結果に応じてJOBデータ種別を判定する(ステップS601)。ここで、JOBヘッダ部とは、受信パケットにおけるJOBデータの先頭部のことである。この際、JOB制御部317は、JOBデータサイズの推定に必要な情報をJOBヘッダ部800から取得して、JOBデータサイズ推定演算式選択テーブル700に格納する。このJOBデータサイズ演算式選択テーブル700は、例えば、図2に示すRAM222又はROM223に展開されている。
【0093】
図7は、図6に示すJOBヘッダ部800の一例を示す図である。
【0094】
図7には、画像データであるJOBデータのヘッダ部のデータ構造が示されている。図7において、イメージタイプ(Image Type)801にはイメージデータの種別を示す文字列が格納されている。JOB種別の判定の際には、JOB制御部317は、JOBデータの先頭部(JOBヘッダ部)の特徴を解析する。JOBデータがイメージデータである場合には、先頭の数バイトに画像フォーマットを特定する文字列が存在する。そして、当該特定の文字列からJOB種別を特定することができる。また、JOBデータがプリンタ記述言語(PDL)である場合には、PDLヘッダが先頭部に存在し、その先頭の文字列の特徴からPDLの種別を特定することができる。
【0095】
ファイルサイズ(file Size)801には、当該イメージデータの総サイズがバイト(Byte)サイズで格納されている。また、付加情報として、幅画素数(Width Pixes)803、高さ画素数(Height Pixels)804、およびピクセルディプス(Pixel Deps)805などがJOBヘッダ部800に埋め込まれている。そして、JOBデータのサイズを推定する際にこれらの情報を用いて推定が行われる。
【0096】
なお、図7に示すJOBヘッダ部は一例であって、JOB種別には様々な種類が存在している。図8に示す例以外にもスクリプト言語で記載されたJOBデータなど多数のJOB種別が存在するが、JOBヘッダ部のフォーマットについては、本発明とは直接的に関係ないので詳細な説明は省略する。
【0097】
図8は、図6で説明したJOBデータサイズ推定演算式選択テーブル700の一例を示す図である。
【0098】
図8において、JOBデータサイズ推定演算式選択テーブル700は、タイプ(Type)欄701、演算関数(Calc Func)欄702、データサイズ(Data size)欄703、Width Pixels欄704、Height Pixels欄705、Pixel Deps欄706、および頁数(Num of Pages)欄707が備えられている。
【0099】
Type欄701には、JOBデータの種別が登録され、Calc Func欄702には、当該JOBデータの種別に対応するJOBデータサイズ推定演算を行うための関数が登録されている。Data Size欄703には、JOBヘッダ部800に直接JOBデータサイズが存在する場合に、JOBヘッダ部800から取得したデータサイズが登録される。例えば、図7に示すJOBヘッダ部800においては、file Size801のデータサイズがData Size欄703に登録される。
【0100】
Width Pixels欄704には横幅ピクセル数(画素数)について、JOBヘッダ部800から取得したピクセル数が登録される。Height Pixels欄705には高さ方向のピクセル数について、JOBヘッダ部800から取得したピクセル数が登録される。Pixel Deps欄706にはピクセルのビット長について、JOBヘッダ部800から取得したビット長が登録される。そして、Num of Pages欄707には、JOBデータのページ数について、JOBヘッダ部800から取得した頁数が登録される。
【0101】
このように、JOBデータの種別によって登録される情報が異なっており、登録された情報に応じたJOBデータサイズ推定演算関数がCalc Func欄702に登録されることになる。
【0102】
例えば、横幅/高さ方向のピクセル数とピクセルのビット長が分かるJOBデータの種別の場合には、これらを掛け合わせてイメージサイズのByte数を求めることができる。そして、当該Byte数をJOBデータサイズとして扱うことができる。
【0103】
また、データサイズが登録されたJOBデータの種別の場合には、JOBデータサイズは当該データサイズである。また、ページ数のみが登録されたJOBデータの種別の場合には、1ページ当りのデータサイズを仮定して、当該仮定データサイズにページ数を掛け合わせてJOBデータサイズが推定される。
【0104】
再び、図2、図3、および図6を参照して、前述したように、JOB制御部317はJOBヘッダ部800から得られた情報をJOBデータサイズ推定演算式選択テーブル700に格納する。そして、JOB制御部317はJOBデータ種別に応じた演算関数をJOBデータサイズ推定演算式選択テーブルから選択して、JOBデータサイズの推定演算を行う(ステップS602)。JOB制御部317は推定演算の結果得られた演算結果をJOBデータサイズ(JS)として(ステップS603)、JOBデータサイズ推定処理を終了する。
【0105】
このようにして、JOBヘッダ部800から得られた情報に応じてJOBデータサイズの推定を行って、JOBデータサイズとJOB受信速度およびリンクダウン時間とに応じて通信速度、つまり、通信モードを変更するか否かについて決定する。
【0106】
なお、JOBデータサイズを推定する情報がJOBヘッダ部800に埋め込まれていないJOBデータの種別であった場合には、JOBデータサイズ(JS)として、十分大きい値をダミー値として設定して、通信速度の変更が必ず行われるようにする。
【0107】
このようにして、スリープモードからの復帰の要因となった復帰要因パケットを受信した際、当該復帰要因パケットに続く受信パケットのデータサイズに応じて通信モードの切り換えを判定するようにしたので、全受信パケットを受信するまでの時間を短縮することができる。
【0108】
上述の説明から明らかなように、図2および図3において、NIC101のCPU201上で動作する通信制御部303が通信速度変更手段として機能し、MFP100のCPU221上で動作する省電力制御部316が通常電力モード復帰手段および省電力モード移行手段として機能する。また、CPU221上で動作するJOB制御部317が第1の制御手段および第2の制御手段として機能する。加えて、JOB制御部317はダウン時間測定手段および受信速度測定手段として機能する。
【0109】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【0110】
例えば、上記の実施の形態の機能を制御方法として、この制御方法を、情報処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有する制御プログラムを、情報処理装置が備えるコンピュータに実行させるようにしてもよい。
【0111】
この際、制御方法及び制御プログラムの各々は、少なくとも通信速度変更ステップ、通常電力モード復帰ステップ、および制御ステップを有することになる。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【0112】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0113】
100 MFP(マルチファンクションペリフェラル)
101 NIC(ネットワークインタフェースカード)
302 ネットワークI/Fドライバ
303 通信制御部
312 NICドライバ
313 通信モード設定部
315 プロトコルスタック
316 省電力制御部
317 JOB制御部
314 通信モード設定記憶部
318 JOB受信速度記憶部
319 リンクダウン時間記憶部

【特許請求の範囲】
【請求項1】
通常電力モードと該通常電力モードよりも消費電力が少ない省電力モードとを備え、ネットワークを介して少なくとも1つの外部機器に接続されて、前記通常電力モードの際に前記外部機器から前記ネットワークを介して受信した受信情報に応じたジョブを実行する情報処理装置において、
前記外部機器との通信速度を変更する通信速度変更手段と、
前記省電力モードである場合に、前記受信情報として、前記省電力モードから前記通常電力モードに復帰する要因である復帰要因情報を受信すると、前記情報処理装置を前記省電力モードから前記通常電力モードに復帰させる通常電力モード復帰手段と、
前記省電力モードから前記通常電力モードへ復帰する際に、前記受信情報のデータサイズと前記通信速度および前記通信速度を変更する際に要する変更時間とに応じて前記通信速度を変更するか否かを決定する第1の制御手段とを有することを特徴とする情報処理装置。
【請求項2】
前記第1の制御手段は、前記受信情報のデータサイズが前記通信速度と前記変更時間との乗算結果よりも大きいと、前記通信速度を変更すると決定することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記変更時間は前記ネットワークとの接続を断とするリンクダウン時間であることを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記通信速度を変更する際に生じる前記リンクダウン時間を計測するダウン時間測定手段と、
前記受信情報の受信を開始してから終了するまでの時間を測定して、当該時間に応じて前記受信情報の受信速度を得る受信速度測定手段とを有し、
前記第1の制御手段は、前記通信速度として前記受信速度を用いるようにしたことを特徴とする請求項3記載の情報処理装置。
【請求項5】
前記第1の制御手段は、前記省電力モードから前記通常電力モードへ復帰する際に、前記通信速度を変更すると決定した場合には、変更後の通信速度を前記省電力モードにおける通信速度よりも高くすることを特徴とする請求項1〜4いずれか1項記載の情報処理装置。
【請求項6】
前記通常電力モードから前記省電力モードに移行する移行要因があると、前記情報処理装置を前記通常電力モードから前記省電力モードに移行させる省電力モード移行手段と、
前記通常電力モードから前記省電力モードに移行する際、前記通信速度変更手段を制御して前記通信速度を変更させる第2の制御手段とを有することを特徴とする請求項1〜5いずれか1項記載の情報処理装置。
【請求項7】
前記第2の制御手段は、前記通常電力モードから前記省電力モードに移行する際には、前記通信速度を前記通常電力モードにおける通信速度よりも低くすることを特徴とする請求項6記載の情報処理装置。
【請求項8】
通常電力モードと該通常電力モードよりも消費電力が少ない省電力モードとを備え、ネットワークを介して少なくとも1つの外部機器に接続されて、前記通常電力モードの際に前記外部機器から前記ネットワークを介して受信した受信情報に応じたジョブを実行する情報処理装置を制御するための制御方法において、
前記外部機器との通信速度を変更する通信速度変更ステップと、
前記省電力モードである場合に、前記受信情報として、前記省電力モードから前記通常電力モードに復帰する要因である復帰要因情報を受信すると、前記情報処理装置を前記省電力モードから前記通常電力モードに復帰させる通常電力モード復帰ステップと、
前記省電力モードから前記通常電力モードへ復帰する際に、前記受信情報のデータサイズと前記通信速度および前記通信速度を変更する際に要する変更時間とに応じて前記通信速度を変更するか否かを決定する制御ステップとを有することを特徴とする制御方法。
【請求項9】
通常電力モードと該通常電力モードよりも消費電力が少ない省電力モードとを備え、ネットワークを介して少なくとも1つの外部機器に接続されて、前記通常電力モードの際に前記外部機器から前記ネットワークを介して受信した受信情報に応じたジョブを実行する情報処理装置を制御するための制御プログラムにおいて、
前記情報処理装置が備えるコンピュータに、
前記外部機器との通信速度を変更する通信速度変更ステップと、
前記省電力モードである場合に、前記受信情報として、前記省電力モードから前記通常電力モードに復帰する要因である復帰要因情報を受信すると、前記情報処理装置を前記省電力モードから前記通常電力モードに復帰させる通常電力モード復帰ステップと、
前記省電力モードから前記通常電力モードへ復帰する際に、前記受信情報のデータサイズと前記通信速度および前記通信速度を変更する際に要する変更時間とに応じて前記通信速度を変更するか否かを決定する制御ステップとを実行させることを特徴とする制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−162022(P2012−162022A)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願番号】特願2011−25088(P2011−25088)
【出願日】平成23年2月8日(2011.2.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】