JP6676587B2 - 印刷制御装置、制御方法、プログラム - Google Patents

印刷制御装置、制御方法、プログラム Download PDF

Info

Publication number
JP6676587B2
JP6676587B2 JP2017119068A JP2017119068A JP6676587B2 JP 6676587 B2 JP6676587 B2 JP 6676587B2 JP 2017119068 A JP2017119068 A JP 2017119068A JP 2017119068 A JP2017119068 A JP 2017119068A JP 6676587 B2 JP6676587 B2 JP 6676587B2
Authority
JP
Japan
Prior art keywords
priority
communication control
print
communication
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017119068A
Other languages
English (en)
Other versions
JP2019001107A5 (ja
JP2019001107A (ja
Inventor
和平 菅原
和平 菅原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017119068A priority Critical patent/JP6676587B2/ja
Priority to US15/996,318 priority patent/US10394498B2/en
Publication of JP2019001107A publication Critical patent/JP2019001107A/ja
Publication of JP2019001107A5 publication Critical patent/JP2019001107A5/ja
Application granted granted Critical
Publication of JP6676587B2 publication Critical patent/JP6676587B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1215Improving printing performance achieving increased printing speed, i.e. reducing the time between printing start and printing end
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1263Job scheduling, e.g. queuing, determine appropriate device based on job priority, e.g. re-arranging the order of jobs, e.g. the printing sequence

Description

本発明は、通信インターフェースを有する印刷制御装置及びその制御方法、プログラムに関するものである。
近年、ネットワーク環境において証明書を使用したSSL(Secure Sockets Layer)通信の利用が拡大している。印刷制御装置のような組み込み装置においても、装置状態の確認やセキュアプリント等の通信においてSSL通信を利用する機会が増えている。
SSL通信は、例えば鍵長の増加や、より複雑で多くのCPUリソースを必要とする暗号種別への変更により、SSL通信に関わる処理時間は年々増加する傾向にある。
なお、特許文献1では、印刷制御装置がSSL通信を実行することについて開示している。
特開2017−69756号公報
印刷制御装置が、SSL通信に関わる処理と印刷処理を並行して実行する場合、SSL通信に関わる処理の影響を受けて印刷処理が遅延するおそれがあった。しかしながら特許文献1は、SSL通信に関わる処理と印刷処理を並行して実行する場合の印刷処理の遅延を解決することについては考慮されていなかった。よって、本願発明は、SSL通信に関わる処理と印刷処理を並行して実行する場合における印刷処理の遅延を軽減することを目的とする。
上述の課題を解決するため、印刷制御装置は、暗号化通信を制御する通信制御手段と、印刷処理を制御する印刷制御手段と、を有し、前記通信制御手段が暗号化された共通鍵を復号する際の優先度は第1優先度であり、前記印刷制御手段の優先度は前記第1優先度よりも高い第2優先度であり、前記通信制御手段と前記印刷制御手段に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする。
本発明によると、SSL通信に関わる処理と印刷処理を並行して実行する場合における印刷処理の遅延を軽減することが可能となる。
SSL通信のシーケンス図である。 画像形成装置のH/Wのブロック図である。 画像形成装置のS/Wのブロック図である。 本発明による実施形態1の印刷処理のフローチャート図である。 本発明による実施形態1の印刷処理の他のフローチャート図である。 本発明による実施形態1の印刷処理の詳細なフローチャート図である。 本発明によるタスク優先度切替手段のフローチャート図である。
<実施形態1>
以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。また、実施例の要旨から逸脱しない範囲で、構成要素を変更してもよい。
まず、図1を用いてSSL通信に関する処理を説明する。ユーザによりSSLサーバ装置101(本実施形態では、印刷制御装置(画像形成装置ともいう)が相当)とSSLクライアント装置102とがそれぞれネットワーク経由で接続される。
そして、SSLクライアント装置102がSSLサーバ装置101に対して、SSL通信を開始する。処理103はSSL通信の接続要求であり、SSLクライアント装置102は、使用できる暗号方法一覧、使用できる圧縮方法一覧の通知を行う。SSLサーバ装置101は、処理104において公開鍵を含むサーバ証明書を送信する。なお、処理104では、使用するプロトコルバージョン、使用する暗号方法、使用する圧縮方法が通知されても良い。SSLクライアント装置102は、処理105においてSSL通信に用いる共通鍵を送信する。なお、処理105において、SSLクライアント装置102は、共通鍵を作成し、その共通鍵を処理104で受信した公開鍵で暗号化する。そして、SSLクライアント装置102は、暗号化された共通鍵を処理105で送信する。以下、処理103−105の一連の処理をSSLハンドシェークと呼ぶ。SSLサーバ装置101は処理105の後、暗号化された共通鍵を秘密鍵で復号する(処理106)。なお、本実施形態では、処理103−処理106をSSLハンドシェーク処理と呼ぶ。
SSLサーバ装置101とSSLクライアント装置102は、処理106の後、SSLの共通鍵を保持する状態となるので、データを共通鍵によって暗号化することにより、相互にSSLによる通信が可能となる(処理107)。SSLハンドシェーク処理では、上述した共通鍵の生成と暗号化、共通鍵の復号に多くのCPUリソースを使用する。
<システム構成>
まず、以下で説明する各実施形態を実現するためのシステム構成について、図2、図3を用いて説明する。図2は、本発明の一実施形態を示す画像形成装置を表した図である。CPU201は、ROM202に保存されているプログラムに従って装置全体の制御を行う。RAM203は、ROM202から読み出されたプログラムを実行する時のワークエリア、データ送受信時のバッファに用いられる。読取部204は原稿台に置かれた紙やフィルム等の原稿を読み取って画像データを生成する。読取部204は、読み取りセンサを含む読み取り可能な最大幅に相当する読み取り幅を持つスキャナヘッドを備えており、このスキャナヘッドを走査することにより、画像データ(スキャンデータ)を生成する。印刷部205は印刷ヘッドと各色のインクタンクを備えておりインクタンク内のインクを、印刷ヘッドを介して吐出することで印刷用紙などのシートに画像を印刷する。操作表示部206は、文字入力キー、カーソルキー、決定キー、取り消しキー等のキーと、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、ユーザによって画像形成装置としての各種機能の起動や各種設定を行うことができる。また、タッチパネルで構成されてもよい。ネットワークコントローラ207は、Ethernet等の有線LAN又は無線LANによって複数の機器と接続され通信可能なように構成されている。また、USBデバイスコントローラ208はUSBインターフェースの通信制御を行うものであり、USB通信規格に従って、USB機器との接続および通信制御を行う。上記構成要素201〜208は、CPUバス209を介して、相互に接続されている。
図3は、図2で示した本発明の一実施形態を示す画像形成装置のROM202に記憶されたプログラムのモジュール構成を表した図である。プログラムは装置のオペレーションシステム(OS)301、ミドルウェア層302、アプリケーション層303に分類される。ミドルウェア層302はOS301とアプリケーション層303のモジュール群の間に介在して通信制御を行う。ミドルウェア層302のLANドライバ306、TCP/IPモジュール307は、ネットワークコントローラ207を制御してTCP/IPの通信を行う。USBドライバ304、USBモジュール305は、USBデバイスコントローラ208を制御してUSBの通信を行う。アプリケーション層303には、HTTP(Hypertext Transfer Protocol)モジュール308、IPP(Internet Printing Protocol)モジュール309が含まれる。また、アプリケーション層303には、WSDモジュール310、SSLモジュール311、スキャンモジュール312、印刷モジュール313が含まれる。一般的に画像形成装置のIPアドレス等を含むネットワークの設定は、操作表示部206からだけではなく、ネットワーク経由で端末装置のWebブラウザを起動して、画像形成装置へアクセスすることで実行することができる。HTTPモジュール308は、ネットワーク経由で端末装置からWebブラウザを使った設定要求を受けることで、不図示のWebコンテンツを管理しているコンテンツ管理モジュールからWebコンテンツを取得して端末装置に送信する。その結果、端末装置のWebブラウザにネットワーク等の設定を行う設定画面が表示される。なお、端末装置のWebブラウザに表示される設定画面はリモートUIと呼ばれることもある。また、HTTPモジュール308は、WSDやIPP、その他のHTTPを利用するプロトコルで規定されたHTTP通信の目的で使用される。さらにHTTPモジュール308は、SSLモジュール311を利用して、データを暗号化して送受信できるトランスポート層のプロトコルSSLやTLSを介して通信を行うHTTPS通信に対応する。またHTTPモジュール308は、HTTPS(HTTPServer)タスクを複数起動することにより、複数のプロトコルやホストとの通信に対応する。SSLモジュール311は、SSLやTLSプロトコルでの認証、共通鍵交換、データの暗号化や復号を行う。HTTPS通信を使うことで、通信経路上に流れるWEBコンテンツデータやIPP、WSD等の制御用のデータを暗号化させ、機密性を向上することが可能となる。スキャンモジュール312は、USB通信またはネットワーク通信から受信したデータをHTTPモジュール308やIPPモジュール309、WSDモジュール310で解析した結果、スキャン要求と判断された場合にスキャン実行を制御する。印刷モジュール313は、USB通信またはネットワーク通信から受信したデータをHTTPモジュール308やIPPモジュール309、WSDモジュール310で解析した結果、印刷要求と判断された場合に印刷実行を制御する。
本実施形態では画像形成装置が端末装置(ホスト)からIPP要求を受信したときの処理について説明する。
本発明は、処理性能の限られたワンチップの組み込みプロセッサで、通信制御と印刷制御を行う画像形成装置にとって特に有効である。また、本発明は、例えば、印刷モジュールによる印刷処理とSSLモジュールによるSSL通信処理が並行して実行される場合に有効である。具体的には、SSL通信処理において暗号化された共通鍵の復号処理が複雑であるため、共通鍵の復号処理時間が長期化する可能性が高い。印刷モジュールの処理とSSLモジュールの処理のタスク優先度が同一であり、かつ、両者の処理が並行して実行される場合、SSLモジュールが共通鍵の復号処理を実行している間、印刷モジュールに割り当てられるCPUリソースが低くなるおそれがある。その結果、印刷処理が遅延するおそれがある。
また、以下の各実施形態において、画像形成装置200は、ネットワークコントローラ207を介してホストに接続されており、画像形成装置とホスト間の通信経路は全てSSLで暗号化されている。また、各タスクの制御はRTOSでのマルチタスク制御が行われ、タスク優先度は最高1〜最低10とする。また、印刷モジュール313が実行する印刷制御タスク群の最低優先度は7とする。SSLモジュール311内の暗号処理は、使用元であるHTTPモジュール308のコンテキスト上で動作する。HTTPSタスクの優先度は、タスク切り替え手段が、図7のフローに従い判定および変更する。また、HTTPSタスクの初期優先度は、8である。図7のフローは、機能特定手段およびシーケンス特定手段に応じて暗号処理実行タスクのタスク優先度を動的に切り替えるタスク切り替え手段の処理フローであり、詳細は後述する。HTTPSタスクが受信した印刷データは、IPPモジュール309を介して印刷制御タスク群へ送られる。
図4は、IPP通信における印刷データ受信時のセッションの処理の流れを示す図である。HTTPSタスク 402は、IPPプロトコルに割り当てられたポートへのアクセスを検知して、IPPセッションを開始する。まず、HTTPSタスク402は、ホストA403との間で、優先度8でSSLハンドシェーク処理404を行い、SSL通信を確立する。
処理404の終了後、ホストA403は、印刷データを送信する。(405)。処理405の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク402の優先度を4に変更する。処理405の終了後、ホストA403は、印刷ジョブの印刷データを送信し終わるまで、続けて印刷データを送信する。(406、407)。一連の印刷データの受信処理(405〜407)の間、HTTPSタスク402は優先度4で、受信した印刷データを復号するが、この復号処理は既に作成されている共通鍵を使って復号するのみである。つまり、処理405〜407のCPUの占有時間は、暗号化された共通鍵の復号処理が不要であるため、SSLハンドシェーク処理404と比べて短い。なお、HTTPSタスク402は、印刷データを受信するごとに印刷制御を印刷制御タスク群に要求する。
一連の印刷データの受信処理(405〜407)の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク402の優先度を8に変更する。
図5は、IPP通信におけるステータスデータ送信時のセッションのフローチャートを示す図である。HTTPSタスク502は、IPPプロトコルに割り当てられたポートへのアクセスを検知して、IPPセッションを開始する。まず、HTTPSタスク502は、ホストA503との間で、優先度8でSSLハンドシェーク処理504を行い、SSL通信を確立する。なお、ステータス要求が発生するタイミングの例として、ホストAが保持している画像形成装置の管理アプリケーションが起動されたタイミングや、管理アプリケーションが定期的に要求するタイミングが挙げられる。また、ホストが印刷データを送信することで実行される印刷処理の際にも、ホストは印刷データの送信と画像形成装置のステータスの確認を並行して行う。
処理504の終了後、ホストA503は、ハンドシェーク処理504において保持された共通鍵を使って暗号化されたステータス要求を送信する(505)。処理505の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク502の優先度を7に変更する。処理505の終了後、HTTPSタスク502は、ハンドシェーク処理504において保持された共通鍵を使って暗号化されたステータス応答を送信する(506)。
処理506の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク502の優先度を8に変更する。
図6は、IPP通信における印刷処理の詳細な処理の流れを示す図である。HTTPSタスク1(602)は、IPPプロトコルに割り当てられたポートへのアクセスを検知して、IPPセッションを開始する。まず、HTTPSタスク1(602)は、ホストA604との間で、優先度8でSSLハンドシェーク処理605を行い、SSL通信を確立する。処理605の終了後、ホストA604は、印刷データを送信する(606)。処理606の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク1(602)の優先度を4に変更する。処理606の終了後、ホストA604は、印刷ジョブの印刷データを送信し終わるまで、続けて印刷データを送信する(607、611)。
HTTPSタスク2(603)は、IPPプロトコルに割り当てられたポートへのアクセスを検知して、IPPセッションを開始する。まず、HTTPSタスク2(603)は、ホストA604との間で、優先度8でSSLハンドシェーク処理608を行い、SSL通信を確立する。なお、処理605において実行されるSSLハンドシェークで保持される共通鍵と、処理608において実行されるSSLハンドシェークで保持される共通鍵は異なる。
ホストが印刷データを送信することで実行される印刷処理の際に、ホストは印刷データの送信と画像形成装置のステータスの確認を並行して行う。そのため、印刷処理とSSLハンドシェーク処理が並行して実行される可能性が高まる。そこで、SSLハンドシェーク処理608を実行するHTTPSタスク2(603)の優先度として印刷制御タスク群の優先度(7)よりも低い優先度(8)を設定する。その結果、CPUリソースが、HTTPSタスク2(604)よりも印刷制御タスク群601に多く割り当てられる。つまり、画像形成装置のリソース配分は、優先度に従って決定されるため、HTTPSタスクの処理と印刷制御タスク群の処理とが並行して実行される場合に、CPUリソースは、HTTPSタスクの処理よりも印刷制御タスク群に多く割り当てられる。その結果、印刷処理の遅延を軽減することが可能となる。処理608の終了後、ホストA604は、ステータス要求を送信する(609)。処理609の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク2(603)の優先度を7に変更する。処理609の終了後、HTTPSタスク2(603)は、ステータス応答を送信する(610)。
処理610の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク2(603)の優先度を8に変更する。
一連の印刷データ受信処理(606、607、611)の間、HTTPSタスク1(602)は優先度4で、受信した印刷データの復号を行うが、暗号化された共通鍵の復号処理が不要であるため、CPUの占有時間はSSLハンドシェーク処理と比べて短い。一連の印刷データ受信処理(606、607、611)の終了後、タスク切り替え手段が、図7のフローに従い判定を行い、HTTPSタスク1(602)の優先度を8に変更する。
図7は、機能特定手段およびシーケンス特定手段に応じて暗号処理実行タスクのタスク優先度を動的に切り替えるタスク切り替え手段の処理を説明するフローチャートである。このフローチャートは、タスク優先度を動的に切り替え可能な通信プロトコルのポートへの通信リクエストが発生したときに起動する。また、本実施形態のフローチャートは、CPU201が、フローチャートに関係するプログラムをRAM203から読みだして実行することで実現される。
まず、CPU201は、例えば、画像形成装置200の起動時に、デフォルト値として、HTTPSタスクに対してタスク優先度として8を割り当て、印刷制御タスク群に対してタスク優先度7を割り当てる。なお、これらの値は一例であり、印刷制御タスク群が優先される値であれば、別のタスク優先度が設定されても良い。また、デフォルト値を割り当てるタイミングは、例えば、画像形成装置200の起動時ではなく、画像形成装置200が起動された後に通信処理が必要となることでHTTPSタスクが起動されたタイミングでも良い。
CPU201は、接続要求されたポート番号からプロトコルを特定する。(S701)。
IPP以外のプロトコルであった場合(S701:IPP以外)、HTTPSタスクの優先度を変更しない。一方、IPPのプロトコルであった場合(S701:IPP)、暗号処理で実行されるシーケンス(処理内容ともいう)を特定する。(S702)。具体的には、CPU201は、ホストからHTTPSタスクに要求される信号の内容を解析することで、実行される処理内容を特定することができる。
暗号処理で実行されるシーケンスが、ハンドシェークであった場合(S702:ハンドシェーク)、HTTPSタスクの優先度を変更しない。つまり、上述した初期設定のタスク優先度でHTTPSタスクはハンドシェーク処理を実行する。
暗号通信中であった場合(S702:暗号通信中)、CPU201は、送受信するデータ種別を特定する。(S703)。具体的には、CPU201は、ホストからHTTPSタスクに要求される信号の内容を解析することで、データ種別を判定できる。
送受信するデータ種別が、印刷データであった場合(S703:印刷データ)、CPU201は、HTTPSタスクの優先度を4に変更する。(S704)。つまり、S704が実行された場合、HTTPSタスクに割り当てられる優先度は4となる。
一方、ステータスデータであった場合(S703:ステータスデータ)、CPU201は、HTTPSタスクの優先度を7に変更する。(S705)。つまり、S705が実行された場合、HTTPSタスクに割り当てられる優先度は4となる。なお、データ種別が印刷データである場合の優先度が、データ種別がステータスである場合の優先度と異なる理由について説明する。データ種別が印刷データであった場合、HTTPSタスクが印刷データに対して復号処理を実行し、復号結果を印刷制御タスク群に送信する。つまり、HTTPSタスクの復号処理が遅れてしまうと、印刷処理が適切に進捗しない可能性が発生する。そのため、データ種別が印刷データである場合は、印刷制御タスク群よりも高い優先度がHTTPSタスクに設定される。その結果、印刷制御タスク群が、復号された印刷データを受け取れないため印刷処理を進めることができないという課題を解決できる。一方、データ種別がステータスである場合、HTTPSタスク群によって生成されるデータを印刷制御タスク群が使用するわけではないので、印刷データを処理する場合の優先度(4)よりも高い優先度を設定する必要はない。なお、HTTPSタスクにより実行されるステータス要求やステータス応答の処理時間は、印刷データの復号処理およびSSLハンドシェーク処理の処理時間よりも短い。よって、HTTPSタスクにより実行されるステータス要求やステータス応答が印刷制御タスクに与える影響は、HTTPSタスクにより実行されるステータス要求やステータス応答と比べる少ない。
続いて、S702により特定された処理内容がセッション終了であった場合(S702:セッション終了時)、CPU201は、HTTPSタスクの優先度を8に変更する。(S706)。つまり、S705が実行された場合、HTTPSタスクに割り当てられる優先度は8となる。
なお、図7のフローを実現するための起動および判定処理(S701、S702、S703)、優先度変更処理(S704、S705、S706)は、複数のタスクに分散していてもよく、単一のタスクに集約させてもよい。例えば、HTTPモジュール308にS701の条件判定を、IPPモジュール309にS703の条件判定を配置すればよい。その際、S701は、例えば、HTTPタスク起動時にリクエストが発生したポート番号に基づいて実行されても良い。また、S703は、例えば、IPPモジュールが送受信するデータからデータ種別を判断すればよい。また、実施例において挙げた優先度の値は一例を示したものであり、相対的な優先度の高低が維持される限りにおいて、どのような値をとっても構わない。
本実施形態の処理によって、印字制御タスク群の最低タスク優先度が、負荷の高いSSLハンドシェーク時のHTTPSタスクの優先度よりも高く設定される。その結果、SSLモジュールでの暗号処理がCPUリソースを占有しなくなり、印刷モジュール313上で動作する印刷制御タスク群、例えば画像形成装置の内部状態通知、印字制御の処理の遅れを軽減することが可能となる。
また、上述した印刷データ受信時の復号処理は優先度4で行うことにより、同様に印刷データ受信の遅れを低減する。これにより、印刷処理全体としてのスループットが向上する。本実施形態のように、機能及びシーケンスに応じて、優先度を動的に変更することで、暗号化通信に伴うオーバーヘッドを低減し、低スペック装置においてもエンジンパフォーマンスを発揮することが可能となる。
<その他の実施形態>
以上の説明は、本発明の実施形態を例示的に説明したものである。従って、実施例の要旨から逸脱しない範囲で、構成要素を変更してもよい。
例えば、画像形成装置200が端末装置からリモートスキャン要求を受信する場合に、本発明を適用するには、スキャンモジュール312が実行するタスク群の最低優先度を7とする。そして、実施形態1と同様のタスク優先度切り替え手段が、SSLハンドシェーク処理中のHTTPSタスクの優先度を8とすればよい。その結果、実施形態1と同様に、SSLモジュールでの暗号処理がCPUリソースを占有しなくなり、スキャンモジュール312上で動作するスキャン制御タスク群の処理の遅れを軽減し、全体としてのスループットが向上する。
また、例えば、画像形成装置が端末装置からIPP要求を受信したときに、並行して他の端末装置からリモートUI要求を受信する場合、リモートUI要求の処理のため複数のHTTPSタスクがSSLハンドシェーク処理を行う。リモートUI要求とは、Webブラウザ等を経由した画像形成装置へのHTTPリクエストを指す。暗号処理を実行するタスクの優先度が固定の場合は、複数回行われるSSLハンドシェーク処理時の暗号処理により、CPUリソースが占有され、エンジン処理の一部が滞りスループットの低下が生じる。この場合に、本発明を適用するには、印刷モジュール313が実行する印刷制御タスク群の最低優先度を7とする。そして、実施形態1と同様のタスク優先度切り替え手段が、機能とシーケンスを解析し、各SSLハンドシェーク処理中のHTTPSタスクの優先度を8とすればよい。その結果、実施形態1と同様に、SSLモジュールでの暗号処理がCPUリソースを占有しなくなり、印刷モジュール313上で動作する印刷制御タスク群の処理の遅れを低減し、全体としてのスループットが向上する。
また、例えば、画像形成装置が端末装置からIPP要求を受信したときに、同時に他の端末装置からリモートスキャン要求を受信する場合に、本発明を適用する。その場合には、スキャンモジュール312が実行するスキャン制御タスク群と印刷モジュール313が実行する印刷制御タスク群の最低優先度を7とする。そして、実施形態1と同様のタスク優先度切り替え手段が、機能とシーケンスを解析し、SSLハンドシェーク中のHTTPSタスクの優先度を8とすればよい。その結果、実施形態1と同様に、SSLモジュールでの暗号処理がCPUリソースを占有しなくなり、スキャン制御タスク群や印刷制御タスク群の処理の遅れを低減し、全体としてのスループットが向上する。
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(CPU、MPU、プロセッサ等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。
200 画像形成装置
201 CPU
202 ROM
203 RAM

Claims (17)

  1. 印刷制御装置であって、
    暗号化通信を制御する通信制御手段と、
    印刷処理を制御する印刷制御手段を有し、
    前記通信制御手段が暗号化された共通鍵を復号する際の優先度は第1優先度であり、前記印刷制御手段の優先度は前記第1優先度よりも高い第2優先度であり、
    前記通信制御手段と前記印刷制御手段に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする印刷制御装置。
  2. 前記通信制御手段が暗号化された共通鍵を復号する際の優先度として前記第1優先度が前記通信制御手段に割り当てられ、前記通信制御手段が前記共通鍵を使って暗号化された印刷データを復号する際の優先度として前記通信制御手段に前記第2優先度よりも高い第3優先度が割り当てられることを特徴とする請求項1に記載の印刷制御装置。
  3. 前記通信制御手段が暗号化された共通鍵を復号する際の優先度として前記第1優先度が前記通信制御手段に割り当てられ、前記通信制御手段が前記共通鍵を使って暗号化された前記印刷制御装置のステータスを応答する際の優先度として前記通信制御手段に前記第1優先度よりも高い第4優先度が割り当てられることを特徴とする請求項1に記載の印刷制御装置。
  4. 前記第4優先度は、前記第2優先度と同じであることを特徴とする請求項3に記載の印刷制御装置。
  5. 前記通信制御手段が起動されることに応じて前記第1優先度が割り当てられることを特徴とする請求項1乃至4のいずれか1項に記載の印刷制御装置。
  6. 前記通信制御手段により実行される前記暗号化通信は、SSL通信であることを特徴とする請求項1乃至5のいずれか1項に記載の印刷制御装置。
  7. 前記暗号化された共通鍵を復号する処理を含むハンドシェーク処理を実行する際の優先度として前記通信制御手段に前記第1優先度が割り当てられることを特徴とする請求項1乃至6のいずれか1項に記載の印刷制御装置。
  8. 前前記通信制御手段が暗号化された共通鍵を復号する処理と前記印刷制御手段による処理は並行して実行されることを特徴とする請求項1乃至7のいずれか1項に記載の印刷制御装置。
  9. 印刷制御装置の制御方法であって、
    暗号化通信を制御する通信制御工程と、
    印刷処理を制御する印刷制御工程を有し、
    前記通信制御工程において暗号化された共通鍵を復号する際の優先度として第1優先度で前記通信制御工程が実行され、前記印刷制御工程は前記第1優先度よりも高い第2優先度で実行され、
    前記通信制御工程と前記印刷制御工程に対する前記印刷制御装置のリソース配分は、前記優先度に従って決定されることを特徴とする制御方法。
  10. コンピュータを、
    暗号化通信を制御する通信制御工程と、
    印刷処理を制御する印刷制御工程として動作させ、前記通信制御工程において暗号化された共通鍵を復号する際の優先度として第1優先度で前記通信制御工程が実行され、前記印刷制御工程は前記第1優先度よりも高い第2優先度で実行され、
    前記通信制御工程と前記印刷制御工程に対する前記コンピュータのリソース配分は、前記優先度に従って決定されることを特徴とする前記コンピュータが読み取り可能なプログラム。
  11. 前記通信制御工程において暗号化された共通鍵を復号する際の優先度として前記第1優先度で前記通信制御工程が実行され、前記通信制御工程において前記共通鍵を使って暗号化された印刷データを復号する際の優先度として前記第2優先度よりも高い第3優先度で前記通信制御工程が実行されることを特徴とする請求項10に記載のプログラム。
  12. 前記通信制御工程において暗号化された共通鍵を復号する際の優先度として前記第1優先度で前記通信制御工程が実行され、前記通信制御工程において前記共通鍵を使って暗号化された前記画像形成装置のステータスを応答する際の優先度として前記第1優先度よりも高い第4優先度で前記通信制御工程が実行されることを特徴とする請求項10に記載のプログラム。
  13. 前記第4優先度は、前記第2優先度と同じであることを特徴とする請求項12に記載のプログラム。
  14. 前記通信制御工程が起動されることに応じて前記第1優先度が割り当てられることを特徴とする請求項10乃至13のいずれか1項に記載のプログラム。
  15. 前記通信制御工程において実行される暗号化通信は、SSL通信であることを特徴とする請求項10乃至14のいずれか1項に記載のプログラム。
  16. 前記暗号化された共通鍵を復号する処理を含むハンドシェーク処理を実行する際の優先度として前記第1優先度で前記通信制御工程が実行されることを特徴とする請求項10乃至15のいずれか1項に記載のプログラム。
  17. 前前記通信制御工程における暗号化された共通鍵を復号する処理と前記印刷制御工程における処理は並行して実行されることを特徴とする請求項10乃至16のいずれか1項に記載のプログラム。
JP2017119068A 2017-06-16 2017-06-16 印刷制御装置、制御方法、プログラム Active JP6676587B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017119068A JP6676587B2 (ja) 2017-06-16 2017-06-16 印刷制御装置、制御方法、プログラム
US15/996,318 US10394498B2 (en) 2017-06-16 2018-06-01 Print control apparatus, control method and storage medium for controlling encrypted communication and print processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017119068A JP6676587B2 (ja) 2017-06-16 2017-06-16 印刷制御装置、制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2019001107A JP2019001107A (ja) 2019-01-10
JP2019001107A5 JP2019001107A5 (ja) 2019-05-09
JP6676587B2 true JP6676587B2 (ja) 2020-04-08

Family

ID=64656843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017119068A Active JP6676587B2 (ja) 2017-06-16 2017-06-16 印刷制御装置、制御方法、プログラム

Country Status (2)

Country Link
US (1) US10394498B2 (ja)
JP (1) JP6676587B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6746826B1 (ja) * 2019-12-13 2020-08-26 株式会社日立産機システム 通信モジュール、通信システム及び通信方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3189269B2 (ja) * 1998-10-14 2001-07-16 セイコーエプソン株式会社 ネットワークプリンタ
JP4409104B2 (ja) * 2000-06-08 2010-02-03 株式会社リコー データ通信装置,画像形成装置管理システム,およびその給電制御方法
JP3764125B2 (ja) * 2002-04-26 2006-04-05 富士通株式会社 ゲートウェイ、通信端末装置、および通信制御プログラム
JP2009164996A (ja) * 2008-01-09 2009-07-23 Kyocera Mita Corp 情報処理装置
JP2015058651A (ja) * 2013-09-19 2015-03-30 キヤノン株式会社 処理装置及び処理方法、プログラム
US9614666B2 (en) * 2014-12-23 2017-04-04 Intel Corporation Encryption interface
JP6521640B2 (ja) * 2015-01-14 2019-05-29 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP6679867B2 (ja) * 2015-09-30 2020-04-15 ブラザー工業株式会社 通信システム、通信装置、および、コンピュータプログラム

Also Published As

Publication number Publication date
US10394498B2 (en) 2019-08-27
US20180364956A1 (en) 2018-12-20
JP2019001107A (ja) 2019-01-10

Similar Documents

Publication Publication Date Title
JP5995525B2 (ja) システム、画像形成装置、サーバー及びその制御方法
US9906581B2 (en) Information processing apparatus, control method, and storage medium
JP6386497B2 (ja) ユニバーサルシリアルバス(usb)上でのtcp/ipバイパスに関するシステム及び方法
JP2016189543A (ja) 多機能機
JP6676587B2 (ja) 印刷制御装置、制御方法、プログラム
US11194891B2 (en) Printer and non-transitory computer-readable recording medium storing computer-readable instructions for printer
JP2008181518A (ja) ドキュメント処理装置の設定をクローニングするシステムおよび方法
JP6191272B2 (ja) 印刷プログラム、情報処理装置および印刷システム
US8281124B2 (en) Network apparatus, IPsec setting method therein, and computer-readable recording medium storing a control program for executing the method
JP6238528B2 (ja) 印刷装置
JP6720767B2 (ja) サーバ装置
JP2006115379A (ja) 暗号通信装置
JP6444125B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2014150410A (ja) 画像形成装置及び暗号強度の切り替え方法
JP2006246402A (ja) 組み込み機器
JP6198511B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
WO2022185984A1 (ja) 情報処理装置および情報処理システム
JP2009177560A (ja) 画像形成装置、画像形成システム、セキュリティ設定プログラム及びセキュリティ設定方法
US20220353250A1 (en) Information processing apparatus, method of controlling the same, and storage medium
WO2022185985A1 (ja) 画像形成システムおよび情報処理装置
JP6728314B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP7139757B2 (ja) 情報処理装置、認証方法、プログラム
JP2017191412A (ja) システムおよびその制御方法
JP6217549B2 (ja) 画像形成装置及び画像形成システム
JP2016162445A (ja) IPP−USBデータのIPsecセキュリティのための方法およびシステム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190326

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190326

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200312

R151 Written notification of patent or utility model registration

Ref document number: 6676587

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151