説明

画像処理装置、及びその制御方法

【課題】省電力モード時に動作する制御部のリソースが、通常電力モード時に動作する制御部のリソースよりも少ない場合であっても、好適に省電力モードを維持するとともに、省電力モードにおいてセキュリティ通信を実現する画像処理装置、及びその制御方法を提供する。
【解決手段】本画像処理装置は、第1の電力モード及び該第1の電力モードよりも消費電力の小さい第2の電力モードを有し、装置全体を制御する第1制御部と、第1の電力モード及び第2の電力モードにおいて電力が供給される第2制御部とを備え、外部装置とセキュリティ通信を実行する。また、第1制御部は、第1の電力モードから第2の電力モードへ移行する際に、セキュリティ通信に関連する複数のセキュリティ関連情報を記憶する記憶部に記憶された複数のセキュリティ関連情報から第2制御部に通知するセキュリティ関連情報を選定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電力制御を行う画像処理装置、及びその制御方法に関するものである。
【背景技術】
【0002】
近年、機器が消費する電力を低減するため、稼動していない状態が一定時間以上経過した場合は、電力の供給を機器の一部に限定することにより低電力で動作する「スリープ状態(省電力モード)」へ遷移する省電力機能が進歩している。また、ネットワーク技術の普及に伴い、ネットワークを利用して機器とホスト間で定期的にデータのやり取りを行う状況が想定される。機器が「スリープ状態」のときにネットワーク経由のデータ処理を行うためには、機器を「非スリープ状態(通常電力モード)」に遷移する必要があった。結果、頻繁にネットワーク上でデータのやり取りが行われる環境では「スリープ状態」時間が短くなり、効果的に消費電力を低減することができていなかった。
【0003】
これを解決する手法として、従来技術では、機器に複数のCPUを搭載し、非スリープ時にはメインCPUで処理を行うが、スリープ時には、電力消費の小さいサブCPUでメインCPUの処理を代替させ、スリープ状態からの復帰を低減する手法が提案されている。また、ネットワークプロトコルの多様化、複雑化に伴いサブCPUが代替できる処理を拡充するために、サブCPUにプロトコルスタックを搭載する手法も考えられている。
【0004】
一方、近年、ネットワーク上を流れるデータの改ざん、盗聴を防ぐためのセキュリティ機能の普及に伴い、機器は、通信相手と複雑なネゴシエーションを行い、その結果に基づいて暗号処理、復号化処理を行う方式が用いられている。これに伴い、機器とホスト間で定期的にやり取りされるネットワークデータのやり取りにも、セキュリティ通信が利用される機会が増えている。特許文献1には、このようなセキュリティ通信時にも、サブCPUにセキュリティ機能を搭載し、メインCPUとサブCPU間において、セキュリティ通信に必要な情報を交換することで、メインCPUの処理を代替させる方法が提案されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−191537号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来技術には以下に記載する問題がある。一般に組込みソフトウェア製品等では部品コスト等の制約上、メインCPU側とサブCPU側の両方に豊富なRAM領域等のリソースを構成することは困難である。特に電力消費の小さいサブCPU側で使用するリソースは、省電力状態で動作することを考慮するとメインCPU側で使用するリソースと比べ小さい領域となってしまう。これによって、メインCPUとサブCPU間で交換するセキュリティ通信情報が全て渡せない場合が発生する。
【0007】
例えば、メインCPU側においてセキュリティ通信セッション数に対して保持している情報をサブCPU側に渡す場合、サブCPU側の情報格納領域が小さいために全ての通信セッション数分の情報を渡すことができない問題が生じる。この場合、メインCPU側で保持しているセキュリティ通信セッション情報の一部のみをサブCPU側へ渡すことになる。そのため、省電力モードの間にサブCPU側で保持していないセキュリティ通信セッションを用いて外部装置からデータを受信するとサブCPU側では処理することができない。結果として、省電力状態から復帰してセキュリティ通信セッション情報の全てを管理しているメインCPU側で処理を行うことになり、省電力状態を長時間保てなくなってしまう。
【0008】
本発明は、上述の問題に鑑みて成されたものであり、省電力モード時に動作する制御部のリソースが、通常電力モード時に動作する制御部のリソースよりも少ない場合であっても、好適に省電力モードを維持するとともに、省電力モードにおいてセキュリティ通信を実現する画像処理装置、及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明は、第1の電力モード及び該第1の電力モードよりも消費電力の小さい第2の電力モードを有し、装置全体を制御する第1制御手段と、前記第1の電力モード及び前記第2の電力モードにおいて電力が供給される第2制御手段とを備え、外部装置とセキュリティ通信を実行する画像処理装置として実現できる。前記第1制御手段は、セキュリティ通信に関連する複数のセキュリティ関連情報を記憶する記憶手段と、前記第1の電力モードから前記第2の電力モードへ移行する際に前記記憶手段に記憶された複数のセキュリティ関連情報から前記第2制御手段に通知するセキュリティ関連情報を選定する選定手段と、前記選定手段によって選定された前記セキュリティ関連情報を前記第2制御手段に通知する通知手段と、前記通知手段による通知が完了すると、前記第1の電力モードから前記第2の電力モードに移行する移行手段とを備え、前記第2制御手段は、前記通知手段によって通知された前記セキュリティ関連情報を保持する保持手段と、前記外部装置からパケットを受信する受信手段と、前記第2の電力モードの間に前記受信手段によって前記外部装置からパケットを受信した場合に、前記保持手段に保持されている前記セキュリティ関連情報に従って、前記第1制御手段で応答するか、又は、前記第2制御手段で代理応答するかを判定する判定手段と、前記判定手段によって前記第1制御手段で応答すると判定した場合に前記第1制御手段を前記第2の電力モードから復帰させるとともに、該パケットを前記第1制御手段に転送し、前記判定手段によって前記第2制御手段で代理応答すると判定した場合に該パケットを処理し前記セキュリティ関連情報に従ったセキュリティ通信を介して前記外部装置に代理応答する処理手段とを備えることを特徴とする。
【発明の効果】
【0010】
本発明は、第2の電力モード時に動作する制御部のリソースが、第1の電力モード時に動作する制御部のリソースよりも少ない場合であっても、好適に第2の電力モードを維持するとともに、第2の電力モードにおいてセキュリティ通信を実現する画像処理装置、及びその制御方法を提供できる。
【図面の簡単な説明】
【0011】
【図1】画像処理装置101を含むシステム全体の構成例を示す図である。
【図2】画像処理装置101のハードウェア構成を示すブロック図である。
【図3】画像処理装置101のソフトウェア構成を示すブロック図である。
【図4】SADの詳細な情報を示す図である。
【図5】スリープ移行時におけるシステム制御部210の処理フローを示すフローチャートである。
【図6】SAの選定処理を行う上での基となるSA選定テーブルを示す図である。
【図7】SA選定処理の詳細フローを示すフローチャートである。
【図8】スリープ復帰時のSA受け渡しとSA選定テーブルの更新フローを示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態について図面を用いて説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0013】
<システム構成>
本実施形態では、画像処理装置が暗号化通信を実行する場合の処理について説明する。なお、ここでは暗号化通信の一例としてIPsec(Internet Protocol Security)を用いて通信する場合について説明する。しかしながら、本発明は、他の暗号化通信が適用されてもよい。IPsecは、特定の認証アルゴリズムや暗号アルゴリズムを用いて、ネットワーク上を流れるデータの盗聴や改ざんを防ぐためのプロトコルである。IPsecは、AH(Authentication Header)とESP(Encapsulations Security Payload)の2つのプロトコルで構成され、AHでは認証のみを、ESPでは認証と暗号化を行う。どちらのプロトコルを利用するか、また、その際利用する認証アルゴリズムの種別や暗号アルゴリズムの種別は、IPsec通信を開始する前のネゴシエーションで決定される。さらに、暗号アルゴリズムで使用する鍵についても、IKE(Internet Key Exchange)を利用することによって、IPsec通信を開始する前に、通信端末間で交換することが定義されている。パケットフォーマットを含むIPsec及びIKEの詳細については、RFC(Request For Comment)に定義されている。
【0014】
まず、図1を参照して、画像処理装置101を含むシステム全体の構成例について説明する。本画像処理システムでは、画像処理装置101とPC102とがネットワークを介して接続され、相互に通信可能となっている。画像処理装置101及びPC102には、それぞれIPsec通信を実行するための構成が備えられており、画像処理装置101とPC102との通信は、全てIPsecが適用されているものとする。なお、ここでは、画像処理装置と、PCとをそれぞれ1台づつ設けた画像処理システムについて説明するが、本発明はこれに限定されず、複数台の画像処理装置及び複数台のPCが接続された画像処理システムにも適用できる。
【0015】
<画像処理装置のハードウェア構成>
次に、図2を参照して、画像処理装置101のハードウェア構成例について説明する。画像処理装置101は、システム制御部210、NIC220、操作部230、スキャナ240、及びプリンタ250を備える。システム制御部210は、第1制御手段として機能し、NIC220を介してネットワークに接続されている。システム制御部210は、CPU211、拡張I/F212、ROM213、RAM214、HDD215、NVRAM216、操作部I/F217、スキャナI/F218、及びプリンタI/F219を備え、画像処理装置101を統括的に制御する。NIC220は、第2制御手段として機能し、CPU221、拡張I/F222、ROM223、RAM224、ネットワークI/F225を備え、一部の処理のみを制御する。
【0016】
システム制御部210について説明する。CPU211は、システム制御部210のソフトウェアプログラムを実行し、装置全体の制御を行う。RAM214は、ランダムアクセスメモリであり、CPU211が装置を制御する際に、一時的なデータの格納などに使用される。ROM213は、リードオンリーメモリであり、装置のブートプログラムや固定パラメータ等が格納されている。
【0017】
HDD215は、ハードディスクドライブであり、様々なデータの格納に使用される。NVRAM216は、不揮発性のメモリであり、システム制御部210の各種設定値を保存するためのものである。操作部I/F(インタフェース)217は、操作部230を制御し、操作部230に備えられた液晶パネルに各種操作画面を表示させるとともに、操作画面を介して入力されるユーザからの指示をCPU211に伝達する。
【0018】
スキャナI/F218は、スキャナ240を制御する。スキャナ240は、原稿上の画像を読み取って画像データを生成し、出力する。プリンタI/F219は、プリンタ250を制御する。プリンタ250は、画像データに基づく画像を記録媒体上に印刷する。拡張I/F212は、NIC220側の拡張I/F222と接続され、NIC220を介してネットワーク上の外部装置(PC102など)とのデータ通信を制御する。
【0019】
次にNIC220について説明する。CPU221は、NIC220のソフトウェアプログラムを実行し、装置全体の制御を行う。RAM224は、ランダムアクセスメモリであり、CPU221が装置を制御する際に、一時的なデータの格納などに使用される。ROM223は、リードオンリーメモリであり、装置のブートプログラムや固定パラメータ等が格納されている。
【0020】
拡張I/F222は、システム制御部210側の拡張I/F212と接続され、システム制御部210とNIC220との間のデータ通信を制御する。ネットワークI/F225は、ネットワークに接続され、NIC220(システム制御部210、画像処理装置101)とネットワーク上の外部装置(PC102)との間のデータ通信を制御する。
【0021】
本実施形態によれば、システム制御部210は、通常電力モード(第1の電力モード)と、通常電力モードよりも消費電力が小さい省電力モード(第2の電力モード)のいずれかを切り替えて動作することができる。通常電力モードから省電力モードに移行する場合は、CPU211、HDD215、NVRAM216などに対する電力供給が停止される。一方、NIC220側は、システム制御部210とは別のASIC(Application Specific Integrated Circuit)で動作している。このため、システム制御部210が省電力モードに移行した状態においてもNIC220に対しては電力供給が継続され、後述する代理応答機能を実現する。即ち、本実施形態では、通常電力モードにおいては、全てのコンポーネントに電力が供給され、省電力モードにおいてはNIC220に対してのみ電力が供給される。
【0022】
<画像処理装置のソフトウェア構成>
次に、図3を参照して、画像処理装置101のソフトウェア構成を示すブロック図である。図3に示すように、システム制御部210は、ソフトウェア構成として、CPU間通信部307、IPsec制御部308、IPsec処理部309、及びスリープ制御部310を備える。NIC220は、代理応答処理部301、IPsec送受信処理ライブラリ302、IPsec制御部303、IPsec処理部304、ネットワークI/F制御部305、及びCPU間通信部306を備える。
【0023】
まず、システム制御部210のソフトウェア構成について説明する。スリープ制御部310は、通常電力モードと省電力モードの切り替え制御を行う。IPsec処理部309は、IPsec通信の実行に必要な情報を取得するためのネゴシエーション処理や、外部装置との間で送受信するパケットの暗号化/復号化処理を行う。
【0024】
IPsec制御部308は、IPsec処理部309を制御するとともに、IPsec処理部309がIPsecに関する処理を行う際に必要となる情報を保持する。CPU間通信部307は、拡張I/F212及び拡張I/F222を介して、NIC220上で動作するソフトウェアコンポーネントとのデータ送受信を行う。また、CPU間通信部306は、拡張I/F222及び拡張I/F212を介して、システム制御部210上で動作するソフトウェアコンポーネントとのデータ送受信を行う。
【0025】
次に、NIC220のソフトウェア構成について説明する。IPsec処理部304は、外部装置との間で送受信するパケットの暗号化/復号化処理を行う。なお、ここでは、IPsec処理部304は、IPsec処理部309とは異なり、IPsec通信の実行に必要な情報を取得するためのネゴシエーションを行う構成は備えていないものとするが、IPsec処理部309と同一の構成であってもよい。IPsec制御部303は、IPsec処理部304を制御するとともに、IPsec処理部304がIPsecに関する処理を行う際に必要となる情報を保持する。
【0026】
ネットワークI/F制御部305は、ネットワークI/F225によるパケットの送受信を制御する。なお、ネットワークI/F制御部305は、システム制御部210が通常電力モードと省電力モードのどちらで動作しているかを常に把握している。そして、ネットワークI/F制御部305は、システム制御部210が通常電力モードで動作している場合は、ネットワークから受信するパケットをシステム制御部210に転送する。また、ネットワークI/F制御部305は、システム制御部210が省電力モードで動作している場合は、ネットワークから受信するパケットをIPsec処理部304に転送する。
【0027】
代理応答処理部301は、IPsec処理部304から転送される受信パケットを受け取る。IPsec処理部304がパケットを受信するのは、システム制御部210が省電力モードで動作している場合のみであるため、代理応答処理部301も、この場合にのみ動作する。IPsec送受信処理ライブラリ302は、代理応答処理部301から渡されたパケットに対して、必要に応じて暗号化及び復号化処理を施す。そして、暗号化及び復号化したパケットを出力する。
【0028】
代理応答処理部301は、受信したパケットを3種類に分類する。この3種類とは、「破棄すべきパケット」、「システム制御部210に転送すべきパケット」及び「代理で応答すべきパケット」である。「破棄すべきパケット」とは、自装置宛てのパケットではない場合など、無視してもよい(応答する必要がない)パケットであり、これに分類された場合、受信したパケットは破棄される。
【0029】
「システム制御部210に転送すべきパケット」とは、受信したパケットに対して何らかの処理が必要であるが、NIC220だけでは必要な処理を行うことができないパケットである。このようなパケットを受信した場合、代理応答処理部301は、システム制御部210を省電力モードから通常電力モードに復帰させ、受信したパケットをシステム制御部210に転送する。「代理で応答すべきパケット」とは、システム制御部210の代わりにNIC220が応答を行うパケットである。この場合、代理応答処理部301は、IPsec送受信処理ライブラリ302を利用して、応答として送信するパケットを暗号化してから送信する。
【0030】
<セキュリティ関連データベース>
次に、図4を参照して、システム制御部210のRAM214上及びNIC220のRAM224上に保存されるSAD(Security Association Database:セキュリティ関連データベース)について説明する。SADは、SA情報(Security Association:セキュリティ関連情報)を保持するデータベースであり、SA情報とは、所定の相手先(外部装置)とのIPsec通信(セキュリティ通信)の単方向トラフィックの情報を示す。SADは、各IPsec制御部によって生成され、IPsec制御部が外部装置とネゴシエーションを行うことによって決定されたSA情報が設定される。
【0031】
図4に示すように、SAD400には、SPI401、暗号アルゴリズム402、認証アルゴリズム403、暗号化鍵404、認証鍵405、ライフタイム種別406、ライフタイム407、SA作成時刻408、送信データ量409、シーケンス番号410、送信元アドレス411、送信先アドレス412、送信元ポート番号413、送信先ポート番号414、及びプロトコル種別415の情報が定義されている。SPI(Security Parameter Index)401は、SA情報を識別するための値である。暗号アルゴリズム402は、このトラフィックで利用する暗号アルゴリズムの種別を示す。認証アルゴリズム403は、このトラフィックで利用する認証アルゴリズムの種別を示す。
【0032】
暗号化鍵404は、このトラフィックを暗号化する際に利用する鍵情報を示す。認証鍵405は、このトラフィックの認証を行う際に利用する鍵情報を示す。ライフタイム種別406は、SA情報の有効期間として、SA情報を作成してからの時間(秒単位)もしくは、送信するデータ量(キロバイト単位)のどちらを利用するかを示している。ライフタイム407は、SAライフタイムの実値を示す。
【0033】
SA作成時刻408は、SA情報が作成された時刻(システム起動からの秒)を示し、SAライフタイム種別406に時間が設定された際、SA情報の有効性を判断するために用いられる。送信データ量409は、SA情報の生成から送信したデータ量を示し、SAライフタイム種別406にデータ量が設定された際、SA情報の有効性を判断するために用いる。シーケンス番号410は、リプレイ攻撃から防御するための値で、IPsecヘッダに設定され、パケットを送信するたびに、1ずつ加算される。
【0034】
送信元アドレス411は、このSA情報に対応付けられるIPsecトラフィックの送信元IP(IPv6)アドレスを示す。送信先アドレス412は、このSA情報に対応付けられるIPsecトラフィックの送信先IP(IPv6)アドレスを示す。送信元ポート番号413は、このSA情報に対応付けられるIPsecトラフィックの送信元ポート番号を示す。送信先ポート番号414は、このSA情報に対応付けられるIPsecトラフィックの送信先ポート番号を示す。プロトコル種別415は、このSA情報に対応付けられるIPsecトラフィックのプロトコル種別を示す。
【0035】
<スリープ移行処理>
次に、図5を参照して、スリープ移行時におけるシステム制御部210の処理手順について説明する。以下で説明する処理は、CPU211がROM213、HDD215等から制御プログラムをRAM214に読み出して実行することにより実現される。
【0036】
まず、S501において、IPsec制御部308は、定期的にスリープ制御部310からスリープ移行通知があるかを監視する。スリープ移行通知とは、システム制御部210が通常電力モードから省電力モードへ移行した際にスリープ制御部310から発行される通知である。スリープ制御部310からスリープ移行通知があった場合S502に進み、IPsec制御部308は、RAM214に格納している全てのIPsecセッションに対するSA情報を取得する。
【0037】
次に、S503において、IPsec制御部308は、取得したSA情報の数とNIC220が保持できるSA情報の最大数を比較する。取得SA数よりNIC220が保持できるSA情報の最大数の方が大きい場合、IPsec制御部308は処理をS505に進める。一方、取得SA数よりNIC220が保持できるSA情報の最大数の方が小さい場合、システム制御部210側で保持するSA情報の全てをNIC220側に渡すことはリソースの制約上不可能である。そこでS504において、IPsec制御部308は、取得SA情報からNIC220に渡すSA情報を選定し、S505に進む。SA情報の選定処理の詳細については、図6及び図7を用いて後述する。
【0038】
S505において、IPsec制御部308は、CPU間通信部307を介して全てのSA情報或いは選定したSA情報をNIC220側へ送信する。続いて、S506において、IPsec制御部308は、上記スリープ移行通知に対してスリープ制御部310へ応答することにより、スリープ制御部310がスリープ移行処理を実行し、処理を終了する。
【0039】
<SA情報の選定処理>
以下では、図6及び図7を参照して、SA情報の選定処理について説明する。まず、図6を参照して、図5のS504においてIPsec制御部308がSA情報の選定処理を行う上で判断材料となるSA選定テーブルについて説明する。当該SA選定テーブル600は、例えば、HDD215に格納されている。IPsec制御部303とIPsec制御部308はスリープ復帰時とスリープ移行時にSA選定テーブルを更新することによってこれを管理し、SA選定処理の判断材料として利用する。
【0040】
図6に示す601は401と同じSPIデータである。IPsec制御部308はSPI毎に個々のSA情報とSA選定テーブルを管理する。SA選定テーブルは、各SPI601に関連付けて以下で説明する情報を定義する。602は、スリープ中(省電力モード中)にNIC220が代理応答をサポートしている要求を外部装置から受信した回数を示すカウント情報である。IPsec制御部303は、SPI毎にスリープ中における代理応答サポート要求の受信回数602をカウントする。
【0041】
603は、スリープ復帰後、つまり通常動作中(通常電力モード中)にNIC220が代理応答をサポートしている要求を外部装置から受信した回数を示すカウント情報である。IPsec制御部308は、SPI毎に通常動作中における代理応答サポート要求受信回数603をカウントする。604は、602と603の値の合計値である。IPsec制御部308は、スリープ復帰時にスリープ中における代理応答サポート要求受信回数602をIPsec制御部303から取得する。またIPsec制御部308は、スリープ移行時に自身が保持している通常動作中における代理応答サポート要求受信回数603と取得したスリープ中における代理応答サポート要求受信回数602を足し合わせることで604を得ることもできる。この受信回数604の値が大きいSPIほど外部装置からの代理応答サポート要求を受信する回数が多いと判断することができる。
【0042】
605は、外部装置からの代理応答サポート要求を受信した最新の時刻情報を示す。スリープ中にはIPsec制御部303が、通常動作中にはIPsec制御部308が、外部装置からの代理応答サポート要求受信時にこの値を随時更新していく。606は、個々のSPI601毎にスリープ復帰の要因となるパケットを受信した回数を示すカウント情報である。この復帰要因回数606が多いほど、そのSPI601に基づくIPSec通信において省電力モードから通常電力モードへのスリープ復帰する可能性が高いと判断できる。
【0043】
次に、図7を参照して、図5のS504で示したSA選定処理の詳細な処理手順について説明する。以下で説明する処理は、CPU211がROM213、HDD215等から制御プログラムをRAM214に読み出して実行することにより実現される。
【0044】
まずS701において、IPsec制御部308は、SA選定テーブルからスリープ中における代理応答サポート要求受信回数602と、通常運用中における代理応答サポート要求受信回数603から受信回数604をSPI601毎に算出する。続いてS702において、IPsec制御部308は、自身が管理しているSA情報から代理応答をサポートしている要求を受信するSA情報を全て取得する。S703において、IPsec制御部308は、S702で取得したSA数がNIC220の保持可能なSA最大数を超えているか否かを判定する。
【0045】
S702で取得したSA数がNIC220の保持可能なSA最大数を超えている場合にはS704に進み、IPsec制御部308は、S702にて取得したSA情報を受信回数604の降順にソートし、受信回数604が大きいSA情報を優先的に選定する。ここで、受信回数604の値が同じSA情報が存在する場合は、スリープ復帰要因回数606の値の小さいSA情報を優先的に選定する。さらに、受信回数604、スリープ復帰要因回数606ともに同じ値の場合は代理応答サポート要求の最新受信時刻605が新しい時刻となっているSA情報を優先的に選定する。S705において、IPsec制御部308は、S704でソートした値の降順にNIC220の最大保持可能SA数の分をNIC220へ送信するSA情報として選定し、処理を終了する。
【0046】
上記S704の処理は一例であり本発明を限定する意図はない。IPsec制御部308は、以下で説明する選定条件を組み合わせて、或いは、個別に適用してSA情報を選定してよい。具体的には、IPsec制御部308は、受信回数602と受信回数604との合計値が大きいSA情報から優先的に選定してもよい。また、IPsec制御部308は、受信回数602が大きいSA情報から優先的に選定してもよい。また、IPsec制御部308は、スリープ復帰要因回数606が小さいSA情報から優先的に選定してもよい。また、IPsec制御部308は、最新受信時刻605が新しい時刻となっているSA情報を優先的に選定してもよい。或いは、IPsec制御部308は、上記選定条件を組み合わせて、SA情報を選定してもよい。さらに、このような選定条件は、操作者によって、操作部230を介して設定できるようにしてもよい。
【0047】
一方、S703でS702で取得したSA数がNIC220の保持可能なSA最大数より少ない場合にはS706に進み、IPsec制御部308は、S702にて取得した全てのSA情報をNIC220へ送信するSA情報として選定する。S707において、IPsec制御部308は、S702で取得した以外の残SA情報をスリープ復帰要因回数606の昇順にソートする。ここで、スリープ復帰要因回数606の値が同じSA情報が存在する場合は、代理応答サポート要求の最新受信時刻605が新しい時刻となっているSA情報を優先的に選定する。S708において、IPsec制御部308は、S707でソートした値の昇順に、NIC220の最大保持可能SA数からS706で選定したSA数を引いた差の数分をNIC220へ送信するSA情報として追加で選定する。
【0048】
これにより、代理応答をサポートしている要求をより多く受信し、かつスリープ復帰する要求をより少なく受信し、かつ代理応答をサポートしている要求をより最近に受信したSA情報を優先してNIC220へ送信することが可能となる。スリープ中、IPsec制御部303は、代理応答サポート要求を受信した場合、SPI601毎に代理応答サポート要求受信回数602と最新受信時刻605を随時更新する。また、IPsec制御部303は、スリープ復帰要因となる要求を受信した場合、スリープ復帰の要因となったSPI601を特定し、スリープ復帰要因回数606を更新する。
【0049】
<スリープ復帰処理>
次に、図8を参照して、スリープ復帰時における処理手順について説明する。スリープからの復帰のトリガはいくつか種類があるが、ここではネットワークを介してスリープ復帰パケットを受信した場合やIPsecのSA情報に該当しないパケットを受信してスリープから復帰する場合についての実施例について説明する。以下で説明する処理は、CPU221がROM223等から制御プログラムをRAM224に読み出して実行することにより実現される。
【0050】
NIC220がスリープ復帰パケットを受信した場合、S801において、IPsec制御部303は、IPsec処理部304やIPsec送受信処理ライブラリ302を利用して外部装置から受信したIPsecパケットを復号化する。IPsec制御部303は、復号化したパケットがスリープ復帰要因パケットかどうかをチェックする。スリープ復帰要因パケットでない場合、代理応答処理部301が代理応答処理を行ったり、受信パケットを破棄したりする処理を行うが、その詳細については本特許と関連がないため省略する。またNIC220がIPsecのSA情報に該当しないパケットを受信した場合にスリープ復帰する場合は、復号処理は行わない。
【0051】
次に、S802において、IPsec制御部303は、IPsec処理部304へIPsec通信の終了を要求する。この要求を受けたIPsec処理部304は、以降のIPsec通信処理を完了させる。これにより、IPsec処理部304は、NIC220において暗号処理、復号処理途中のパケットが存在しない状態にする。S803において、IPsec制御部303は、今回スリープ復帰の要因となった要求がどのSA情報に対する通信で受信したかを判別し、そのSPI601に対するスリープ復帰要因回数606の値を更新する。
【0052】
次に、S804において、IPsec制御部303は、SA情報毎に管理しているスリープ中の代理応答サポート要求受信回数602と最新受信時刻605とスリープ復帰要因回数606とを更新情報として作成し、システム制御部210側へCPU間通信部306を介して送信する。システム制御部210側では、IPsec制御部308がこれらの情報を受信し、SA選定テーブルのデータを個々のSPI毎に更新する。
【0053】
S805において、IPsec制御部303は、自身が保持、管理している全てのSA情報をシステム制御部210側へCPU間通信部306を介して送信する。システム制御部210側では、IPsec制御部308が受信した全てのSA情報を自身が保持しているSA情報に対して更新する。これによって、スリープ中に行われたIPsec通信に対するSAの情報をスリープ復帰後に引き継いでIPsec通信を再開することが可能となる。スリープ復帰処理以降、通常運用中においてIPsec制御部308は、SA毎に代理応答をサポートするパケットを受信した場合に代理応答サポート要求受信回数603を随時更新し、併せて最新受信時刻605を更新する処理を行う。
【0054】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
第1の電力モード及び該第1の電力モードよりも消費電力の小さい第2の電力モードを有し、装置全体を制御する第1制御手段と、前記第1の電力モード及び前記第2の電力モードにおいて電力が供給される第2制御手段とを備え、外部装置とセキュリティ通信を実行する画像処理装置であって、
前記第1制御手段は、
セキュリティ通信に関連する複数のセキュリティ関連情報を記憶する記憶手段と、
前記第1の電力モードから前記第2の電力モードへ移行する際に前記記憶手段に記憶された複数のセキュリティ関連情報から前記第2制御手段に通知するセキュリティ関連情報を選定する選定手段と、
前記選定手段によって選定された前記セキュリティ関連情報を前記第2制御手段に通知する通知手段と、
前記通知手段による通知が完了すると、前記第1の電力モードから前記第2の電力モードに移行する移行手段と
を備え、
前記第2制御手段は、
前記通知手段によって通知された前記セキュリティ関連情報を保持する保持手段と、
前記外部装置からパケットを受信する受信手段と、
前記第2の電力モードの間に前記受信手段によって前記外部装置からパケットを受信した場合に、前記保持手段に保持されている前記セキュリティ関連情報に従って、前記第1制御手段で応答するか、又は、前記第2制御手段で代理応答するかを判定する判定手段と、
前記判定手段によって前記第1制御手段で応答すると判定した場合に前記第1制御手段を前記第2の電力モードから復帰させるとともに、該パケットを前記第1制御手段に転送し、前記判定手段によって前記第2制御手段で代理応答すると判定した場合に該パケットを処理し前記セキュリティ関連情報に従ったセキュリティ通信を介して前記外部装置に代理応答する処理手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記選定手段は、前記保持手段の保持可能な数のセキュリティ関連情報を選定することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記選定手段は、
前記第2の電力モードの間に前記第2制御手段によって代理応答した回数、前記第1の電力モードの間に前記第1制御手段によって応答した回数、及び、前記第1制御手段を前記第2の電力モードから復帰する要因となった回数を含むカウント情報と、最新のパケットを受信した時刻情報と、各セキュリティ関連情報を識別するための情報とを関連付けて定義したテーブルを用いて、前記記憶手段に記憶された複数のセキュリティ関連情報から前記第2制御手段に通知するセキュリティ関連情報を選定することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記選定手段は、
前記記憶手段に記憶されているセキュリティ関連情報の数が、前記保持手段による保持可能なセキュリティ関連情報の数を超える場合に、前記カウント情報のうち、前記第2の電力モードの間に前記第2制御手段によって代理応答した回数と、前記第1の電力モードの間に前記第1制御手段によって応答した回数との合計値が大きいセキュリティ関連情報から優先的に選定することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記選定手段は、
前記記憶手段に記憶されているセキュリティ関連情報の数が、前記保持手段による保持可能なセキュリティ関連情報の数を超える場合に、前記カウント情報のうち、前記第2の電力モードの間に前記第2制御手段によって代理応答した回数が大きいセキュリティ関連情報から優先的に選定することを特徴とする請求項3又は4に記載の画像処理装置。
【請求項6】
前記選定手段は、
前記記憶手段に記憶されているセキュリティ関連情報の数が、前記保持手段による保持可能なセキュリティ関連情報の数を超える場合に、前記カウント情報のうち、前記第1制御手段を前記第2の電力モードから復帰する要因となった回数が小さいセキュリティ関連情報から優先的に選定することを特徴とする請求項3乃至5の何れか1項に記載の画像処理装置。
【請求項7】
前記選定手段は、
前記記憶手段に記憶されているセキュリティ関連情報の数が、前記保持手段による保持可能なセキュリティ関連情報の数を超える場合に、前記カウント情報のうち、前記時刻情報が新しいセキュリティ関連情報から優先的に選定することを特徴とする請求項3乃至6の何れか1項に記載の画像処理装置。
【請求項8】
前記第1制御手段は、
前記外部装置からパケットを受信した際に、前記テーブルの値を更新する更新手段をさらに備えることを特徴とする請求項3乃至7の何れか1項に記載の画像処理装置。
【請求項9】
前記第2制御手段は、
前記第1制御手段を前記第2の電力モードから復帰させる際に、該第2の電力モードの間に応答したパケットに関する情報であって、かつ、前記テーブルを更新するための更新情報を前記第1制御手段に通知する手段をさらに備え、
前記更新手段は、前記第2の電力モードから復帰した際に前記第2制御手段からの前記更新情報に従って前記テーブルを更新し、前記第1の電力モードの間に前記外部装置からのパケットを処理するごとに前記テーブルを更新することを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記判定手段は、前記外部装置からパケットを受信した際に、該パケットに対応するセキュリティ関連情報が前記保持手段に保持されていない場合は、前記第1制御手段で応答すると判定することを特徴とする請求項1乃至9の何れか1項に記載の画像処理装置。
【請求項11】
前記判定手段は、さらに、受信した前記パケットに応答する必要がなければ、該パケットを破棄すると判定し、
前記処理手段は、前記判定手段によって前記パケットを破棄すると判定された場合に、該パケットを破棄することを特徴とする請求項1乃至10の何れか1項に記載の画像処理装置。
【請求項12】
前記セキュリティ関連情報とは、IPsec(Internet Protocol Security)に基づくセキュリティ通信を実行する際に用いられる情報であることを特徴とする請求項1乃至11の何れか1項に記載の画像処理装置。
【請求項13】
第1の電力モード及び該第1の電力モードよりも消費電力の小さい第2の電力モードを有し、装置全体を制御する第1制御手段と、前記第1の電力モード及び前記第2の電力モードにおいて電力が供給される第2制御手段とを備え、外部装置とセキュリティ通信を実行する画像処理装置の制御方法であって、
前記第1制御手段は、
選定手段が、前記第1の電力モードから前記第2の電力モードへ移行する際に、セキュリティ通信に関連する複数のセキュリティ関連情報を記憶する記憶手段に記憶された複数のセキュリティ関連情報から前記第2制御手段に通知するセキュリティ関連情報を選定する選定ステップと、
通知手段が、前記選定ステップにおいて選定された前記セキュリティ関連情報を前記第2制御手段に通知する通知ステップと、
移行手段が、前記通知ステップによる通知が完了すると、前記第1の電力モードから前記第2の電力モードに移行する移行ステップと
を実行し、
前記第2制御手段は、
受信手段が、前記外部装置からパケットを受信する受信ステップと、
判定手段が、前記第2の電力モードの間に前記受信ステップにおいて前記外部装置からパケットを受信した場合に、前記通知ステップにおいて通知された前記セキュリティ関連情報を保持する保持手段に保持されている前記セキュリティ関連情報に従って、前記第1制御手段で応答するか、又は、前記第2制御手段で代理応答するかを判定する判定ステップと、
処理手段が、前記判定ステップにおいて前記第1制御手段で応答すると判定した場合に前記第1制御手段を前記第2の電力モードから復帰させるとともに、該パケットを前記第1制御手段に転送し、前記判定ステップにおいて前記第2制御手段で代理応答すると判定した場合に該パケットを処理し前記セキュリティ関連情報に従ったセキュリティ通信を介して前記外部装置に代理応答する処理ステップと
を実行することを特徴とする画像処理装置の制御方法。
【請求項14】
請求項13に記載の画像処理装置の制御方法における各ステップをコンピュータに実行させるためのプログラム。

【図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−227829(P2012−227829A)
【公開日】平成24年11月15日(2012.11.15)
【国際特許分類】
【出願番号】特願2011−95279(P2011−95279)
【出願日】平成23年4月21日(2011.4.21)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】