(57)【要約】【課題】  画像形成装置が、ＳＳＬ通信に関わる処理と印刷処理を並行して実行する場合、ＳＳＬ通信に関わる処理の影響を受けて印刷処理が遅延するおそれがあった。【解決手段】  画像形成装置は、通信制御手段が暗号化された共通鍵を復号する際の優先度として前記通信制御手段に第１優先度を割り当て、印刷制御手段のために第１優先度よりも高い第２優先度を割り当てる。そして、通信制御手段と印刷制御手段に対する画像形成装置のリソース配分は、優先度に従って決定される。【選択図】  図６
2019001107.tif 000002
【特許請求の範囲】
【請求項１】
印刷制御装置であって、
暗号化通信を制御する通信制御手段と、
印刷処理を制御する印刷制御手段を有し、
前記通信制御手段が暗号化された共通鍵を復号する際の優先度は第１優先度であり、前記印刷制御手段の優先度は前記第１優先度よりも高い第２優先度であり、
前記通信制御手段と前記印刷制御手段に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする印刷制御装置。
【請求項２】
前記通信制御手段が暗号化された共通鍵を復号する際の優先度として前記第１優先度が前記通信制御手段に割り当てられ、前記通信制御手段が前記共通鍵を使って暗号化された印刷データを復号する際の優先度として前記通信制御手段に前記第２優先度よりも高い第３優先度が割り当てられることを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記通信制御手段が暗号化された共通鍵を復号する際の優先度として前記第１優先度が前記通信制御手段に割り当てられ、前記通信制御手段が前記共通鍵を使って暗号化された前記印刷制御装置のステータスを応答する際の優先度として前記通信制御手段に前記第１優先度よりも高い第４優先度が割り当てられることを特徴とする請求項１に記載の印刷制御装置。
【請求項４】
前記第４優先度は、前記第２優先度と同じであることを特徴とする請求項３に記載の印刷制御装置。
【請求項５】
前記通信制御手段が起動されることに応じて前記第１優先度が割り当てられることを特徴とする請求項１乃至４のいずれか１項に記載の印刷制御装置。
【請求項６】
前記通信制御手段により実行される前記暗号化通信は、ＳＳＬ通信であることを特徴とする請求項１乃至５のいずれか１項に記載の印刷制御装置。
【請求項７】
前記暗号化された共通鍵を復号する処理を含むハンドシェーク処理を実行する際の優先度として前記通信制御手段に前記第１優先度が割り当てられることを特徴とする請求項１乃至６のいずれか１項に記載の印刷制御装置。
【請求項８】
印刷制御装置の制御方法であって、
暗号化通信を制御する通信制御工程と、
印刷処理を制御する印刷制御工程を有し、
前記通信制御工程において暗号化された共通鍵を復号する際の優先度として第１優先度で前記通信制御工程が実行され、前記印刷制御工程は前記第１優先度よりも高い第２優先度で実行され、
前記通信制御工程と前記印刷制御工程に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする制御方法。
【請求項９】
コンピュータを、
暗号化通信を制御する通信制御工程と、
印刷処理を制御する印刷制御工程として動作させ、  前記通信制御工程において暗号化された共通鍵を復号する際の優先度として第１優先度で前記通信制御工程が実行され、前記印刷制御工程は前記第１優先度よりも高い第２優先度で実行され、
前記通信制御工程と前記印刷制御工程に対する前記コンピュータのリソース配分は、前記優先度に従って決定されることを特徴とする前記コンピュータが読み取り可能なプログラム。
【請求項１０】
前記通信制御工程において暗号化された共通鍵を復号する際の優先度として前記第１優先度で前記通信制御工程が実行され、前記通信制御工程において前記共通鍵を使って暗号化された印刷データを復号する際の優先度として前記第２優先度よりも高い第３優先度で前記通信制御工程が実行されることを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記通信制御工程において暗号化された共通鍵を復号する際の優先度として前記第１優先度で前記通信制御工程が実行され、前記通信制御工程において前記共通鍵を使って暗号化された前記画像形成装置のステータスを応答する際の優先度として前記第１優先度よりも高い第４優先度で前記通信制御工程が実行されることを特徴とする請求項９に記載のプログラム。
【請求項１２】
前記第４優先度は、前記第２優先度と同じであることを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記通信制御工程が起動されることに応じて前記第１優先度が割り当てられることを特徴とする請求項９乃至１２のいずれか１項に記載のプログラム。
【請求項１４】
前記通信制御工程において実行される暗号化通信は、ＳＳＬ通信であることを特徴とする請求項９乃至１３のいずれか１項に記載のプログラム。
【請求項１５】
前記暗号化された共通鍵を復号する処理を含むハンドシェーク処理を実行する際の優先度として前記第１優先度で前記通信制御工程が実行されることを特徴とする請求項９乃至１４のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信インターフェースを有する印刷制御装置及びその制御方法、プログラムに関するものである。
【背景技術】
【０００２】
近年、ネットワーク環境において証明書を使用したＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）通信の利用が拡大している。印刷制御装置のような組み込み装置においても、装置状態の確認やセキュアプリント等の通信においてＳＳＬ通信を利用する機会が増えている。
【０００３】
ＳＳＬ通信は、例えば鍵長の増加や、より複雑で多くのＣＰＵリソースを必要とする暗号種別への変更により、ＳＳＬ通信に関わる処理時間は年々増加する傾向にある。
【０００４】
なお、特許文献１では、印刷制御装置がＳＳＬ通信を実行することについて開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−６９７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
印刷制御装置が、ＳＳＬ通信に関わる処理と印刷処理を並行して実行する場合、ＳＳＬ通信に関わる処理の影響を受けて印刷処理が遅延するおそれがあった。しかしながら特許文献１は、ＳＳＬ通信に関わる処理と印刷処理を並行して実行する場合の印刷処理の遅延を解決することについては考慮されていなかった。よって、本願発明は、ＳＳＬ通信に関わる処理と印刷処理を並行して実行する場合における印刷処理の遅延を軽減することを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決するため、印刷制御装置は、暗号化通信を制御する通信制御手段と、印刷処理を制御する印刷制御手段と、を有し、前記通信制御手段が暗号化された共通鍵を復号する際の優先度は第１優先度であり、前記印刷制御手段の優先度は前記第１優先度よりも高い第２優先度であり、前記通信制御手段と前記印刷制御手段に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする。
【発明の効果】
【０００８】
本発明によると、ＳＳＬ通信に関わる処理と印刷処理を並行して実行する場合における印刷処理の遅延を軽減することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】ＳＳＬ通信のシーケンス図である。
【図２】画像形成装置のＨ／Ｗのブロック図である。
【図３】画像形成装置のＳ／Ｗのブロック図である。
【図４】本発明による実施形態１の印刷処理のフローチャート図である。
【図５】本発明による実施形態１の印刷処理の他のフローチャート図である。
【図６】本発明による実施形態１の印刷処理の詳細なフローチャート図である。
【図７】本発明によるタスク優先度切替手段のフローチャート図である。
【発明を実施するための形態】
【００１０】
＜実施形態１＞
以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。また、実施例の要旨から逸脱しない範囲で、構成要素を変更してもよい。
【００１１】
まず、図１を用いてＳＳＬ通信に関する処理を説明する。ユーザによりＳＳＬサーバ装置１０１（本実施形態では、印刷制御装置（画像形成装置ともいう）が相当）とＳＳＬクライアント装置１０２とがそれぞれネットワーク経由で接続される。
【００１２】
そして、ＳＳＬクライアント装置１０２がＳＳＬサーバ装置１０１に対して、ＳＳＬ通信を開始する。処理１０３はＳＳＬ通信の接続要求であり、ＳＳＬクライアント装置１０２は、使用できる暗号方法一覧、使用できる圧縮方法一覧の通知を行う。ＳＳＬサーバ装置１０１は、処理１０４において公開鍵を含むサーバ証明書を送信する。なお、処理１０４では、使用するプロトコルバージョン、使用する暗号方法、使用する圧縮方法が通知されても良い。ＳＳＬクライアント装置１０２は、処理１０５においてＳＳＬ通信に用いる共通鍵を送信する。なお、処理１０５において、ＳＳＬクライアント装置１０２は、共通鍵を作成し、その共通鍵を処理１０４で受信した公開鍵で暗号化する。そして、ＳＳＬクライアント装置１０２は、暗号化された共通鍵を処理１０５で送信する。以下、処理１０３−１０５の一連の処理をＳＳＬハンドシェークと呼ぶ。ＳＳＬサーバ装置１０１は処理１０５の後、暗号化された共通鍵を秘密鍵で復号する（処理１０６）。なお、本実施形態では、処理１０３−処理１０６をＳＳＬハンドシェーク処理と呼ぶ。
【００１３】
ＳＳＬサーバ装置１０１とＳＳＬクライアント装置１０２は、処理１０６の後、ＳＳＬの共通鍵を保持する状態となるので、データを共通鍵によって暗号化することにより、相互にＳＳＬによる通信が可能となる（処理１０７）。ＳＳＬハンドシェーク処理では、上述した共通鍵の生成と暗号化、共通鍵の復号に多くのＣＰＵリソースを使用する。
【００１４】
＜システム構成＞
まず、以下で説明する各実施形態を実現するためのシステム構成について、図２、図３を用いて説明する。図２は、本発明の一実施形態を示す画像形成装置を表した図である。ＣＰＵ２０１は、ＲＯＭ２０２に保存されているプログラムに従って装置全体の制御を行う。ＲＡＭ２０３は、ＲＯＭ２０２から読み出されたプログラムを実行する時のワークエリア、データ送受信時のバッファに用いられる。読取部２０４は原稿台に置かれた紙やフィルム等の原稿を読み取って画像データを生成する。読取部２０４は、読み取りセンサを含む読み取り可能な最大幅に相当する読み取り幅を持つスキャナヘッドを備えており、このスキャナヘッドを走査することにより、画像データ（スキャンデータ）を生成する。印刷部２０５は印刷ヘッドと各色のインクタンクを備えておりインクタンク内のインクを、印刷ヘッドを介して吐出することで印刷用紙などのシートに画像を印刷する。操作表示部２０６は、文字入力キー、カーソルキー、決定キー、取り消しキー等のキーと、ＬＥＤ（発光ダイオード）やＬＣＤ（液晶ディスプレイ）などから構成され、ユーザによって画像形成装置としての各種機能の起動や各種設定を行うことができる。また、タッチパネルで構成されてもよい。ネットワークコントローラ２０７は、Ｅｔｈｅｒｎｅｔ等の有線ＬＡＮ又は無線ＬＡＮによって複数の機器と接続され通信可能なように構成されている。また、ＵＳＢデバイスコントローラ２０８はＵＳＢインターフェースの通信制御を行うものであり、ＵＳＢ通信規格に従って、ＵＳＢ機器との接続および通信制御を行う。上記構成要素２０１〜２０８は、ＣＰＵバス２０９を介して、相互に接続されている。
【００１５】
図３は、図２で示した本発明の一実施形態を示す画像形成装置のＲＯＭ２０２に記憶されたプログラムのモジュール構成を表した図である。プログラムは装置のオペレーションシステム（ＯＳ）３０１、ミドルウェア層３０２、アプリケーション層３０３に分類される。ミドルウェア層３０２はＯＳ３０１とアプリケーション層３０３のモジュール群の間に介在して通信制御を行う。ミドルウェア層３０２のＬＡＮドライバ３０６、ＴＣＰ／ＩＰモジュール３０７は、ネットワークコントローラ２０７を制御してＴＣＰ／ＩＰの通信を行う。ＵＳＢドライバ３０４、ＵＳＢモジュール３０５は、ＵＳＢデバイスコントローラ２０８を制御してＵＳＢの通信を行う。アプリケーション層３０３には、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）モジュール３０８、ＩＰＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｔｏｃｏｌ）モジュール３０９が含まれる。また、アプリケーション層３０３には、ＷＳＤモジュール３１０、ＳＳＬモジュール３１１、スキャンモジュール３１２、印刷モジュール３１３が含まれる。一般的に画像形成装置のＩＰアドレス等を含むネットワークの設定は、操作表示部２０６からだけではなく、ネットワーク経由で端末装置のＷｅｂブラウザを起動して、画像形成装置へアクセスすることで実行することができる。ＨＴＴＰモジュール３０８は、ネットワーク経由で端末装置からＷｅｂブラウザを使った設定要求を受けることで、不図示のＷｅｂコンテンツを管理しているコンテンツ管理モジュールからＷｅｂコンテンツを取得して端末装置に送信する。その結果、端末装置のＷｅｂブラウザにネットワーク等の設定を行う設定画面が表示される。なお、端末装置のＷｅｂブラウザに表示される設定画面はリモートＵＩと呼ばれることもある。また、ＨＴＴＰモジュール３０８は、ＷＳＤやＩＰＰ、その他のＨＴＴＰを利用するプロトコルで規定されたＨＴＴＰ通信の目的で使用される。さらにＨＴＴＰモジュール３０８は、ＳＳＬモジュール３１１を利用して、データを暗号化して送受信できるトランスポート層のプロトコルＳＳＬやＴＬＳを介して通信を行うＨＴＴＰＳ通信に対応する。またＨＴＴＰモジュール３０８は、ＨＴＴＰＳ（ＨＴＴＰＳｅｒｖｅｒ）タスクを複数起動することにより、複数のプロトコルやホストとの通信に対応する。ＳＳＬモジュール３１１は、ＳＳＬやＴＬＳプロトコルでの認証、共通鍵交換、データの暗号化や復号を行う。ＨＴＴＰＳ通信を使うことで、通信経路上に流れるＷＥＢコンテンツデータやＩＰＰ、ＷＳＤ等の制御用のデータを暗号化させ、機密性を向上することが可能となる。スキャンモジュール３１２は、ＵＳＢ通信またはネットワーク通信から受信したデータをＨＴＴＰモジュール３０８やＩＰＰモジュール３０９、ＷＳＤモジュール３１０で解析した結果、スキャン要求と判断された場合にスキャン実行を制御する。印刷モジュール３１３は、ＵＳＢ通信またはネットワーク通信から受信したデータをＨＴＴＰモジュール３０８やＩＰＰモジュール３０９、ＷＳＤモジュール３１０で解析した結果、印刷要求と判断された場合に印刷実行を制御する。
【００１６】
本実施形態では画像形成装置が端末装置（ホスト）からＩＰＰ要求を受信したときの処理について説明する。
【００１７】
本発明は、処理性能の限られたワンチップの組み込みプロセッサで、通信制御と印刷制御を行う画像形成装置にとって特に有効である。また、本発明は、例えば、印刷モジュールによる印刷処理とＳＳＬモジュールによるＳＳＬ通信処理が並行して実行される場合に有効である。具体的には、ＳＳＬ通信処理において暗号化された共通鍵の復号処理が複雑であるため、共通鍵の復号処理時間が長期化する可能性が高い。印刷モジュールの処理とＳＳＬモジュールの処理のタスク優先度が同一であり、かつ、両者の処理が並行して実行される場合、ＳＳＬモジュールが共通鍵の復号処理を実行している間、印刷モジュールに割り当てられるＣＰＵリソースが低くなるおそれがある。その結果、印刷処理が遅延するおそれがある。
【００１８】
また、以下の各実施形態において、画像形成装置２００は、ネットワークコントローラ２０７を介してホストに接続されており、画像形成装置とホスト間の通信経路は全てＳＳＬで暗号化されている。また、各タスクの制御はＲＴＯＳでのマルチタスク制御が行われ、タスク優先度は最高１〜最低１０とする。また、印刷モジュール３１３が実行する印刷制御タスク群の最低優先度は７とする。ＳＳＬモジュール３１１内の暗号処理は、使用元であるＨＴＴＰモジュール３０８のコンテキスト上で動作する。ＨＴＴＰＳタスクの優先度は、タスク切り替え手段が、図７のフローに従い判定および変更する。また、ＨＴＴＰＳタスクの初期優先度は、８である。図７のフローは、機能特定手段およびシーケンス特定手段に応じて暗号処理実行タスクのタスク優先度を動的に切り替えるタスク切り替え手段の処理フローであり、詳細は後述する。ＨＴＴＰＳタスクが受信した印刷データは、ＩＰＰモジュール３０９を介して印刷制御タスク群へ送られる。
【００１９】
図４は、ＩＰＰ通信における印刷データ受信時のセッションの処理の流れを示す図である。ＨＴＴＰＳタスク  ４０２は、ＩＰＰプロトコルに割り当てられたポートへのアクセスを検知して、ＩＰＰセッションを開始する。まず、ＨＴＴＰＳタスク４０２は、ホストＡ４０３との間で、優先度８でＳＳＬハンドシェーク処理４０４を行い、ＳＳＬ通信を確立する。
【００２０】
処理４０４の終了後、ホストＡ４０３は、印刷データを送信する。（４０５）。処理４０５の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク４０２の優先度を４に変更する。処理４０５の終了後、ホストＡ４０３は、印刷ジョブの印刷データを送信し終わるまで、続けて印刷データを送信する。（４０６、４０７）。一連の印刷データの受信処理（４０５〜４０７）の間、ＨＴＴＰＳタスク４０２は優先度４で、受信した印刷データを復号するが、この復号処理は既に作成されている共通鍵を使って復号するのみである。つまり、処理４０５〜４０７のＣＰＵの占有時間は、暗号化された共通鍵の復号処理が不要であるため、ＳＳＬハンドシェーク処理４０４と比べて短い。なお、ＨＴＴＰＳタスク４０２は、印刷データを受信するごとに印刷制御を印刷制御タスク群に要求する。
【００２１】
一連の印刷データの受信処理（４０５〜４０７）の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク４０２の優先度を８に変更する。
【００２２】
図５は、ＩＰＰ通信におけるステータスデータ送信時のセッションのフローチャートを示す図である。ＨＴＴＰＳタスク５０２は、ＩＰＰプロトコルに割り当てられたポートへのアクセスを検知して、ＩＰＰセッションを開始する。まず、ＨＴＴＰＳタスク５０２は、ホストＡ５０３との間で、優先度８でＳＳＬハンドシェーク処理５０４を行い、ＳＳＬ通信を確立する。なお、ステータス要求が発生するタイミングの例として、ホストＡが保持している画像形成装置の管理アプリケーションが起動されたタイミングや、管理アプリケーションが定期的に要求するタイミングが挙げられる。また、ホストが印刷データを送信することで実行される印刷処理の際にも、ホストは印刷データの送信と画像形成装置のステータスの確認を並行して行う。
【００２３】
処理５０４の終了後、ホストＡ５０３は、ハンドシェーク処理５０４において保持された共通鍵を使って暗号化されたステータス要求を送信する（５０５）。処理５０５の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク５０２の優先度を７に変更する。処理５０５の終了後、ＨＴＴＰＳタスク５０２は、ハンドシェーク処理５０４において保持された共通鍵を使って暗号化されたステータス応答を送信する（５０６）。
【００２４】
処理５０６の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク５０２の優先度を８に変更する。
【００２５】
図６は、ＩＰＰ通信における印刷処理の詳細な処理の流れを示す図である。ＨＴＴＰＳタスク１（６０２）は、ＩＰＰプロトコルに割り当てられたポートへのアクセスを検知して、ＩＰＰセッションを開始する。まず、ＨＴＴＰＳタスク１（６０２）は、ホストＡ６０４との間で、優先度８でＳＳＬハンドシェーク処理６０５を行い、ＳＳＬ通信を確立する。処理６０５の終了後、ホストＡ６０４は、印刷データを送信する（６０６）。処理６０６の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク１（６０２）の優先度を４に変更する。処理６０６の終了後、ホストＡ６０４は、印刷ジョブの印刷データを送信し終わるまで、続けて印刷データを送信する（６０７、６１１）。
【００２６】
ＨＴＴＰＳタスク２（６０３）は、ＩＰＰプロトコルに割り当てられたポートへのアクセスを検知して、ＩＰＰセッションを開始する。まず、ＨＴＴＰＳタスク２（６０３）は、ホストＡ６０４との間で、優先度８でＳＳＬハンドシェーク処理６０８を行い、ＳＳＬ通信を確立する。なお、処理６０５において実行されるＳＳＬハンドシェークで保持される共通鍵と、処理６０８において実行されるＳＳＬハンドシェークで保持される共通鍵は異なる。
【００２７】
ホストが印刷データを送信することで実行される印刷処理の際に、ホストは印刷データの送信と画像形成装置のステータスの確認を並行して行う。そのため、印刷処理とＳＳＬハンドシェーク処理が並行して実行される可能性が高まる。そこで、ＳＳＬハンドシェーク処理６０８を実行するＨＴＴＰＳタスク２（６０３）の優先度として印刷制御タスク群の優先度（７）よりも低い優先度（８）を設定する。その結果、ＣＰＵリソースが、ＨＴＴＰＳタスク２（６０４）よりも印刷制御タスク群６０１に多く割り当てられる。つまり、画像形成装置のリソース配分は、優先度に従って決定されるため、ＨＴＴＰＳタスクの処理と印刷制御タスク群の処理とが並行して実行される場合に、ＣＰＵリソースは、ＨＴＴＰＳタスクの処理よりも印刷制御タスク群に多く割り当てられる。その結果、印刷処理の遅延を軽減することが可能となる。処理６０８の終了後、ホストＡ６０４は、ステータス要求を送信する（６０９）。処理６０９の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク２（６０３）の優先度を７に変更する。処理６０９の終了後、ＨＴＴＰＳタスク２（６０３）は、ステータス応答を送信する（６１０）。
【００２８】
処理６１０の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク２（６０３）の優先度を８に変更する。
【００２９】
一連の印刷データ受信処理（６０６、６０７、６１１）の間、ＨＴＴＰＳタスク１（６０２）は優先度４で、受信した印刷データの復号を行うが、暗号化された共通鍵の復号処理が不要であるため、ＣＰＵの占有時間はＳＳＬハンドシェーク処理と比べて短い。一連の印刷データ受信処理（６０６、６０７、６１１）の終了後、タスク切り替え手段が、図７のフローに従い判定を行い、ＨＴＴＰＳタスク１（６０２）の優先度を８に変更する。
【００３０】
図７は、機能特定手段およびシーケンス特定手段に応じて暗号処理実行タスクのタスク優先度を動的に切り替えるタスク切り替え手段の処理を説明するフローチャートである。このフローチャートは、タスク優先度を動的に切り替え可能な通信プロトコルのポートへの通信リクエストが発生したときに起動する。また、本実施形態のフローチャートは、ＣＰＵ２０１が、フローチャートに関係するプログラムをＲＡＭ２０３から読みだして実行することで実現される。
【００３１】
まず、ＣＰＵ２０１は、例えば、画像形成装置２００の起動時に、デフォルト値として、ＨＴＴＰＳタスクに対してタスク優先度として８を割り当て、印刷制御タスク群に対してタスク優先度７を割り当てる。なお、これらの値は一例であり、印刷制御タスク群が優先される値であれば、別のタスク優先度が設定されても良い。また、デフォルト値を割り当てるタイミングは、例えば、画像形成装置２００の起動時ではなく、画像形成装置２００が起動された後に通信処理が必要となることでＨＴＴＰＳタスクが起動されたタイミングでも良い。
【００３２】
ＣＰＵ２０１は、接続要求されたポート番号からプロトコルを特定する。（Ｓ７０１）。
【００３３】
ＩＰＰ以外のプロトコルであった場合（Ｓ７０１：ＩＰＰ以外）、ＨＴＴＰＳタスクの優先度を変更しない。一方、ＩＰＰのプロトコルであった場合（Ｓ７０１：ＩＰＰ）、暗号処理で実行されるシーケンス（処理内容ともいう）を特定する。（Ｓ７０２）。具体的には、ＣＰＵ２０１は、ホストからＨＴＴＰＳタスクに要求される信号の内容を解析することで、実行される処理内容を特定することができる。
【００３４】
暗号処理で実行されるシーケンスが、ハンドシェークであった場合（Ｓ７０２：ハンドシェーク）、ＨＴＴＰＳタスクの優先度を変更しない。つまり、上述した初期設定のタスク優先度でＨＴＴＰＳタスクはハンドシェーク処理を実行する。
【００３５】
暗号通信中であった場合（Ｓ７０２：暗号通信中）、ＣＰＵ２０１は、送受信するデータ種別を特定する。（Ｓ７０３）。具体的には、ＣＰＵ２０１は、ホストからＨＴＴＰＳタスクに要求される信号の内容を解析することで、データ種別を判定できる。
【００３６】
送受信するデータ種別が、印刷データであった場合（Ｓ７０３：印刷データ）、ＣＰＵ２０１は、ＨＴＴＰＳタスクの優先度を４に変更する。（Ｓ７０４）。つまり、Ｓ７０４が実行された場合、ＨＴＴＰＳタスクに割り当てられる優先度は４となる。
【００３７】
一方、ステータスデータであった場合（Ｓ７０３：ステータスデータ）、ＣＰＵ２０１は、ＨＴＴＰＳタスクの優先度を７に変更する。（Ｓ７０５）。つまり、Ｓ７０５が実行された場合、ＨＴＴＰＳタスクに割り当てられる優先度は４となる。なお、データ種別が印刷データである場合の優先度が、データ種別がステータスである場合の優先度と異なる理由について説明する。データ種別が印刷データであった場合、ＨＴＴＰＳタスクが印刷データに対して復号処理を実行し、復号結果を印刷制御タスク群に送信する。つまり、ＨＴＴＰＳタスクの復号処理が遅れてしまうと、印刷処理が適切に進捗しない可能性が発生する。そのため、データ種別が印刷データである場合は、印刷制御タスク群よりも高い優先度がＨＴＴＰＳタスクに設定される。その結果、印刷制御タスク群が、復号された印刷データを受け取れないため印刷処理を進めることができないという課題を解決できる。一方、データ種別がステータスである場合、ＨＴＴＰＳタスク群によって生成されるデータを印刷制御タスク群が使用するわけではないので、印刷データを処理する場合の優先度（４）よりも高い優先度を設定する必要はない。なお、ＨＴＴＰＳタスクにより実行されるステータス要求やステータス応答の処理時間は、印刷データの復号処理およびＳＳＬハンドシェーク処理の処理時間よりも短い。よって、ＨＴＴＰＳタスクにより実行されるステータス要求やステータス応答が印刷制御タスクに与える影響は、ＨＴＴＰＳタスクにより実行されるステータス要求やステータス応答と比べる少ない。
【００３８】
続いて、Ｓ７０２により特定された処理内容がセッション終了であった場合（Ｓ７０２：セッション終了時）、ＣＰＵ２０１は、ＨＴＴＰＳタスクの優先度を８に変更する。（Ｓ７０６）。つまり、Ｓ７０５が実行された場合、ＨＴＴＰＳタスクに割り当てられる優先度は８となる。
【００３９】
なお、図７のフローを実現するための起動および判定処理（Ｓ７０１、Ｓ７０２、Ｓ７０３）、優先度変更処理（Ｓ７０４、Ｓ７０５、Ｓ７０６）は、複数のタスクに分散していてもよく、単一のタスクに集約させてもよい。例えば、ＨＴＴＰモジュール３０８にＳ７０１の条件判定を、ＩＰＰモジュール３０９にＳ７０３の条件判定を配置すればよい。その際、Ｓ７０１は、例えば、ＨＴＴＰタスク起動時にリクエストが発生したポート番号に基づいて実行されても良い。また、Ｓ７０３は、例えば、ＩＰＰモジュールが送受信するデータからデータ種別を判断すればよい。また、実施例において挙げた優先度の値は一例を示したものであり、相対的な優先度の高低が維持される限りにおいて、どのような値をとっても構わない。
【００４０】
本実施形態の処理によって、印字制御タスク群の最低タスク優先度が、負荷の高いＳＳＬハンドシェーク時のＨＴＴＰＳタスクの優先度よりも高く設定される。その結果、ＳＳＬモジュールでの暗号処理がＣＰＵリソースを占有しなくなり、印刷モジュール３１３上で動作する印刷制御タスク群、例えば画像形成装置の内部状態通知、印字制御の処理の遅れを軽減することが可能となる。
【００４１】
また、上述した印刷データ受信時の復号処理は優先度４で行うことにより、同様に印刷データ受信の遅れを低減する。これにより、印刷処理全体としてのスループットが向上する。本実施形態のように、機能及びシーケンスに応じて、優先度を動的に変更することで、暗号化通信に伴うオーバーヘッドを低減し、低スペック装置においてもエンジンパフォーマンスを発揮することが可能となる。
【００４２】
＜その他の実施形態＞
以上の説明は、本発明の実施形態を例示的に説明したものである。従って、実施例の要旨から逸脱しない範囲で、構成要素を変更してもよい。
【００４３】
例えば、画像形成装置２００が端末装置からリモートスキャン要求を受信する場合に、本発明を適用するには、スキャンモジュール３１２が実行するタスク群の最低優先度を７とする。そして、実施形態１と同様のタスク優先度切り替え手段が、ＳＳＬハンドシェーク処理中のＨＴＴＰＳタスクの優先度を８とすればよい。その結果、実施形態１と同様に、ＳＳＬモジュールでの暗号処理がＣＰＵリソースを占有しなくなり、スキャンモジュール３１２上で動作するスキャン制御タスク群の処理の遅れを軽減し、全体としてのスループットが向上する。
【００４４】
また、例えば、画像形成装置が端末装置からＩＰＰ要求を受信したときに、並行して他の端末装置からリモートＵＩ要求を受信する場合、リモートＵＩ要求の処理のため複数のＨＴＴＰＳタスクがＳＳＬハンドシェーク処理を行う。リモートＵＩ要求とは、Ｗｅｂブラウザ等を経由した画像形成装置へのＨＴＴＰリクエストを指す。暗号処理を実行するタスクの優先度が固定の場合は、複数回行われるＳＳＬハンドシェーク処理時の暗号処理により、ＣＰＵリソースが占有され、エンジン処理の一部が滞りスループットの低下が生じる。この場合に、本発明を適用するには、印刷モジュール３１３が実行する印刷制御タスク群の最低優先度を７とする。そして、実施形態１と同様のタスク優先度切り替え手段が、機能とシーケンスを解析し、各ＳＳＬハンドシェーク処理中のＨＴＴＰＳタスクの優先度を８とすればよい。その結果、実施形態１と同様に、ＳＳＬモジュールでの暗号処理がＣＰＵリソースを占有しなくなり、印刷モジュール３１３上で動作する印刷制御タスク群の処理の遅れを低減し、全体としてのスループットが向上する。
【００４５】
また、例えば、画像形成装置が端末装置からＩＰＰ要求を受信したときに、同時に他の端末装置からリモートスキャン要求を受信する場合に、本発明を適用する。その場合には、スキャンモジュール３１２が実行するスキャン制御タスク群と印刷モジュール３１３が実行する印刷制御タスク群の最低優先度を７とする。そして、実施形態１と同様のタスク優先度切り替え手段が、機能とシーケンスを解析し、ＳＳＬハンドシェーク中のＨＴＴＰＳタスクの優先度を８とすればよい。その結果、実施形態１と同様に、ＳＳＬモジュールでの暗号処理がＣＰＵリソースを占有しなくなり、スキャン制御タスク群や印刷制御タスク群の処理の遅れを低減し、全体としてのスループットが向上する。
【００４６】
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（ＣＰＵ、ＭＰＵ、プロセッサ等）がプログラムを読み出して実行する処理である。また、プログラムは、１つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をＡＳＩＣ等のハードウェアで実現するようにしてもよい。また、ＣＰＵも１つのＣＰＵで全ての処理を行うものに限らず、複数のＣＰＵが適宜連携をしながら処理を行うものとしてもよい。
【符号の説明】
【００４７】
２００  画像形成装置
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
【図１】
2019001107.tif 000003
【図２】
2019001107.tif 000004
【図３】
2019001107.tif 000005
【図４】
2019001107.tif 000006
【図５】
2019001107.tif 000007
【図６】
2019001107.tif 000008
【図７】
2019001107.tif 000009