JP2008312094A - 通信装置およびプログラム - Google Patents

通信装置およびプログラム Download PDF

Info

Publication number
JP2008312094A
JP2008312094A JP2007159943A JP2007159943A JP2008312094A JP 2008312094 A JP2008312094 A JP 2008312094A JP 2007159943 A JP2007159943 A JP 2007159943A JP 2007159943 A JP2007159943 A JP 2007159943A JP 2008312094 A JP2008312094 A JP 2008312094A
Authority
JP
Japan
Prior art keywords
communication
application
hardware
software
unit
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.)
Granted
Application number
JP2007159943A
Other languages
English (en)
Other versions
JP4964683B2 (ja
Inventor
Tomochika Aikawa
智慎 相川
Takashi Kubota
隆司 久保田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007159943A priority Critical patent/JP4964683B2/ja
Priority to US12/128,051 priority patent/US8972595B2/en
Publication of JP2008312094A publication Critical patent/JP2008312094A/ja
Application granted granted Critical
Publication of JP4964683B2 publication Critical patent/JP4964683B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0485Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】通信全体における通信性能向上を実現する。
【解決手段】通信割り当て部51は、同時に実行される複数のアプリケーション通信について、TOE(TCP/IP offload Engine)40を備えるハード通信手段53によるハードウェア通信またはソフト通信手段52によるソフトウェア通信への割り当て処理を、各アプリケーション通信にかかる基準情報に基づいて実行する。これにより、各アプリケーション通信にかかる基準情報を通信装置の使用環境に応じて適宜選択することで、通信全体における通信性能の向上を実現することができる。
【選択図】 図5

Description

本発明は、通信装置およびプログラムに関する。
インターネットやイントラネットにおいて標準的に用いられるプロトコルであるTCP/IP通信において、そのプロトコル処理はネットワークデータを扱うネットワークサーバなどのCPUによって行われている。このようなプロトコル処理は、CPUに大きな負荷をかけるものである。
近年、ネットワークの高速化が進んでおり、ネットワークサーバにおいては、CPUが処理できる速度をネットワークの速度が上回りつつあるという問題が生じている。
そこで、上述したようなネットワークサーバにおけるネットワーク処理の負荷低減のために、TOE(TCP/IP offload Engine)というソリューションが提案されている(例えば、特許文献1参照)。TOEは、ネットワーク処理において多くのCPU処理時間を必要とするネットワークプロトコル処理、またはネットワークプロトコルのチェックサム処理などをハードウェア化したものである。より詳細には、TOEは、OSI(Open Systems Interconnection)7階層参照モデルにおけるTCPより上位の層で作られたパケットに対し、TCP/UDPヘッダ処理・IPヘッダ処理を一貫して行うハードウェアである。このようなハードウェアであるTOEがネットワーク処理(TCP/IP処理)の一部もしくは全部を行うことにより、ネットワークサーバのCPU負荷を低減させることが可能となる。また、ハードウェア処理された通信は、一般に、ソフトウェア処理よりも高速に動作するため、システムのスループットを向上させることが可能となる。
特開2006−014143号公報
しかしながら、上述したようなTOEは、ハードウェアによる実装となるため、通信能力がメモリ容量などハードウェア制約に大きく依存するという特徴がある。具体的には、セッション数への影響が大きく、通信上限が数セッション〜数十セッション程度に限られる場合がある。必要な通信に十分な能力を持ったハードウェア構成とすれば問題ないが、小型化や低廉化のためにそれができない状況も多い。
このような状況の解決法として、TOEによるハードウェア通信と、ソフトウェア通信を併用し使い分ける方法が考えられる。TOEに割り当てることのできない通信は従来通りのソフトウェア通信を用いることで、セッション数の上限などの問題を回避することができる。
ただし、上述したような方法を採用する場合、ハードウェア通信とソフトウェア通信の使い分け方が、トータルの通信性能に大きく影響することとなる。例えば、簡単な使い分け方として「早く開始された通信から順にTOEを割り当てる」ようにした場合、後発の通信で通信量・通信頻度ともに多いものがあったとしても、それはソフトウェア通信に割り当てられることとなる。そのような通信を優先的にTOEに割り当てことができれば、通信トータルで見た際の通信性能を高めることができる。通信性能の向上とは、単に平均通信速度を上げるという意味ではなく、平均通信速度を下げるとしても必要な通信にはTOEを割り当てた上での、全体最適化を指す。例えば、通信量・頻度ともに少なくとも、通信速度のためにどうしてもTOEを使いたい通信があれば、それにTOEが割り当てられるべきである。
すなわち、通信装置の使用環境によって、求められる通信性能も異なることになる。ある環境では、通信性能として平均通信速度が求められるだろうし、別の環境では特定の通信に通信速度が求められるだろうし、また別の環境ではセキュリティ通信に通信速度が求められることになる。
本発明は、上記に鑑みてなされたものであって、通信全体における通信性能向上を実現することを目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、ネットワークで並行に実行される複数のアプリケーション通信を処理する通信装置において、ソフトウェアによるTCP/IP制御により前記アプリケーション通信を実行するソフト通信手段と、TOE(TCP/IP offload Engine)によるTCP/IP制御により前記アプリケーション通信を実行するハード通信手段と、同時に実行される前記複数のアプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を、前記各アプリケーション通信にかかる基準情報に基づいて実行する通信割り当て手段と、を備える。
また、請求項2にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)であり、前記通信割り当て手段は、SAを抽出した場合にはIPsecの確立に前記ソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立に前記ハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みの前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる。
また、請求項3にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信の通信量に関係する情報であり、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信のそれぞれの前記通信量に関係する情報について、相対的に数値が大きい前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる。
また、請求項4にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信毎に予め定められた優先度であり、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信毎に予め定められた優先度を参照し、優先度が高い前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる。
また、請求項5にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度であり、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度を参照し、優先度が高いユーザにかかる前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる。
また、請求項6にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信の通信対象の使用傾向であり、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信の通信対象の使用傾向を参照し、通信に負荷の掛かる使用傾向がある前記通信対象への前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる。
また、請求項7にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)と、前記複数のアプリケーション通信の通信量に関係する情報と、前記複数のアプリケーション通信毎に予め定められた優先度と、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、前記複数のアプリケーション通信の通信対象の使用傾向との少なくとも2以上を用いたものであり、前記通信割り当て手段は、少なくとも2以上の前記基準情報に対して予め定められた優先度に従い、前記複数のアプリケーション通信を前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる。
また、請求項8にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかる前記基準情報を自ら解析して、前記各アプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を実行する。
また、請求項9にかかる発明は、請求項1記載の通信装置において、前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかる前記基準情報を外部から受け取り、前記各アプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を実行する。
また、請求項10にかかる発明は、ネットワークで並行に実行される複数のアプリケーション通信処理をコンピュータに実行させるプログラムであって、同時に実行される前記複数のアプリケーション通信について、ソフトウェアによるTCP/IP制御により前記アプリケーション通信を実行するソフト通信手段によるソフトウェア通信またはTOE(TCP/IP offload Engine)によるTCP/IP制御により前記アプリケーション通信を実行するハード通信手段によるハードウェア通信への割り当て処理を、前記各アプリケーション通信にかかる基準情報に基づいて実行する通信割り当て機能を、前記コンピュータに実行させる。
また、請求項11にかかる発明は、請求項10記載のプログラムにおいて、前記通信割り当て機能が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)であり、前記通信割り当て機能は、SAを抽出した場合にはIPsecの確立に前記ソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立に前記ハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みの前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる。
また、請求項12にかかる発明は、請求項10記載のプログラムにおいて、前記通信割り当て機能が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)と、前記複数のアプリケーション通信の通信量に関係する情報と、前記複数のアプリケーション通信毎に予め定められた優先度と、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、前記複数のアプリケーション通信の通信対象の使用傾向との少なくとも2以上を用いたものであり、前記通信割り当て機能は、少なくとも2以上の前記基準情報に対して予め定められた優先度に従い、前記複数のアプリケーション通信を前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる。
請求項1にかかる発明によれば、同時に実行される複数のアプリケーション通信について、TOE(TCP/IP offload Engine)を備えるハード通信手段によるハードウェア通信またはソフト通信手段によるソフトウェア通信への割り当て処理を、各アプリケーション通信にかかる基準情報に基づいて実行することにより、各アプリケーション通信にかかる基準情報を通信装置の使用環境に応じて適宜選択することで、通信全体における通信性能向上を実現することができる、という効果を奏する。
また、請求項2にかかる発明によれば、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(基準情報)を抽出した場合にはIPsecの確立にソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立にハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みのソフト通信手段によるソフトウェア通信またはハード通信手段によるハードウェア通信に対して割り当てるようにしたことにより、「TOE利用によるIPsec SA再利用が可能なアプリケーション通信」にTOEを割り当てることによって、通信全体における通信性能向上(IPsec処理に必要な時間の短縮)を実現することができる、という効果を奏する。
また、請求項3にかかる発明によれば、同時に実行される複数のアプリケーション通信のそれぞれの通信量に関係する情報(基準情報)について、相対的に数値が大きいアプリケーション通信に対してハード通信手段によるハードウェア通信を優先的に割り当てることにより、より「通信量」の多いものにTOEを割り当てることによって、通信全体における通信性能向上(平均通信速度の向上)を実現することができる、という効果を奏する。ここで、同時に実行される複数のアプリケーション通信のそれぞれの通信量に関係する情報(基準情報)とは、例えば、アプリケーションごとの過去のトータルの通信量、アプリケーションごとの過去のトータルの通信量を通信回数で割ったアプリケーションごとの一回当りの平均通信量、通信頻度などである。
また、請求項4にかかる発明によれば、同時に実行される複数のアプリケーション通信毎に予め定められた優先度(基準情報)を参照し、優先度が高いアプリケーション通信に対してハード通信手段によるハードウェア通信を優先的に割り当てることにより、より「アプリケーションの優先度」の高いものにTOEを割り当てることによって、通信全体における通信性能向上(各アプリケーションへの通信速度の必要性に応じた、通信速度配分)を実現することができる、という効果を奏する。
また、請求項5にかかる発明によれば、同時に実行される複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度(基準情報)を参照し、優先度が高いユーザにかかるアプリケーション通信に対してハード通信手段によるハードウェア通信を優先的に割り当てることにより、より「通信利用ユーザの優先度」の高いものにTOEを割り当てることによって、通信全体における通信性能向上(各ユーザの通信速度の必要性に応じた、通信速度配分)を実現することができる、という効果を奏する。
また、請求項6にかかる発明によれば、同時に実行される複数のアプリケーション通信の通信対象の使用傾向(基準情報)を参照し、通信に負荷の掛かる使用傾向がある通信対象へのアプリケーション通信に対してハード通信手段によるハードウェア通信を優先的に割り当てることにより、通信全体における通信性能向上(平均通信速度の向上)を実現することができる、という効果を奏する。ここで、同時に実行される複数のアプリケーション通信の通信対象の使用傾向(基準情報)とは、通信対象であるクライアントの使用傾向や、通信対象ユーザの使用傾向などである。
また、請求項7にかかる発明によれば、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSAと、複数のアプリケーション通信の通信量に関係する情報と、複数のアプリケーション通信毎に予め定められた優先度と、複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、複数のアプリケーション通信の通信対象の使用傾向とを基準情報とし、少なくとも2以上の基準情報に対して予め定められた優先度に従い、複数のアプリケーション通信をソフト通信手段によるソフトウェア通信またはハード通信手段によるハードウェア通信に対して割り当てることにより、TOEの割り当ての選択に複数の基準情報を組み合わせて使用することで、その通信装置の使用環境に合わせた柔軟な形での、通信全体における通信性能向上を実現することができる、という効果を奏する。
また、請求項8にかかる発明によれば、同時に実行される複数のアプリケーション通信にかかる基準情報を自ら解析して、各アプリケーション通信について、ハード通信手段によるハードウェア通信またはソフト通信手段によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる、という効果を奏する。
また、請求項9にかかる発明によれば、同時に実行される複数のアプリケーション通信にかかる基準情報を外部から受け取り、各アプリケーション通信について、ハード通信手段によるハードウェア通信またはソフト通信手段によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる、という効果を奏する。
また、請求項10にかかる発明によれば、同時に実行される複数のアプリケーション通信について、TOE(TCP/IP offload Engine)を備えるハード通信手段によるハードウェア通信またはソフト通信手段によるソフトウェア通信への割り当て処理を、各アプリケーション通信にかかる基準情報に基づいて実行することにより、各アプリケーション通信にかかる基準情報を通信装置の使用環境に応じて適宜選択することで、通信全体における通信性能向上を実現することができる、という効果を奏する。
また、請求項11にかかる発明によれば、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(基準情報)を抽出した場合にはIPsecの確立にソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立にハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みのソフト通信手段によるソフトウェア通信またはハード通信手段によるハードウェア通信に対して割り当てるようにしたことにより、「TOE利用によるIPsec SA再利用が可能なアプリケーション通信」にTOEを割り当てることによって、通信全体における通信性能向上(IPsec処理に必要な時間の短縮)を実現することができる、という効果を奏する。
また、請求項12にかかる発明によれば、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSAと、複数のアプリケーション通信の通信量に関係する情報と、複数のアプリケーション通信毎に予め定められた優先度と、複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、複数のアプリケーション通信の通信対象の使用傾向とを基準情報とし、少なくとも2以上の基準情報に対して予め定められた優先度に従い、複数のアプリケーション通信をソフト通信手段によるソフトウェア通信またはハード通信手段によるハードウェア通信に対して割り当てることにより、TOEの割り当ての選択に複数の基準情報を組み合わせて使用することで、その通信装置の使用環境に合わせた柔軟な形での、通信全体における通信性能向上を実現することができる、という効果を奏する。
以下に添付図面を参照して、この発明にかかる通信装置およびプログラムの最良な実施の形態を詳細に説明する。
本発明を実施するための最良の形態について図面を参照して説明する。以下では、TOE(TCP/IP offload Engine)について簡単に説明し、その後、本実施の形態の通信装置を含む情報処理システムについて説明する。
[TOEの概要]
TOE(TCP/IP offload Engine)とは、ネットワークデータを扱うネットワークサーバなどのCPUの代わりにTCP/IPのプロトコル処理を行う機能、あるいはそのような機能を持ったネットワークアダプタのことである。TOEは、主に、NIC(Network Interface Card)やHBA(Host Bus Adapter)、iSCSI(internet SCSI)などのプリント基板に実装される。
TOEは、OSI参照モデルにおけるTCPより上位の層で作られたパケットに対し、TCP/UDPヘッダ処理・IPヘッダ処理を一貫して行うハードウェアである。このようなハードウェアであるTOEがネットワーク処理(TCP/IP処理)の一部もしくは全部を行うことにより、CPU負荷を低減させることが可能となる。また、ハードウェア処理された通信は、一般に、ソフトウェア処理よりも高速に動作するため、システムのスループットを向上させることが可能となる。
図1は、本発明の前提となるTOEによるデータ移動例を示す模式図である。図1に示すように、まず、パケットがNIC(Network Interface Card)によって受信されると、パケットはTOEにロードされる(1)。TOEは、TCP/IPヘッダを処理した後(2)、データをNICメモリからユーザメモリスペースにコピーする(3)。その後、NICがCPUに割り込んで、パケットがユーザから利用可能であることを指示する(4)。
ここで、比較のために、従来のネットワーク移動について図2を参照して説明する。図2に示すように、パケットがNICによって受信されると、パケットはドライバ/カーネルメモリスペースに移される(11)。次いで、ネットワークコントローラがCPUに割り込んで、パケットの着信をシグナル通知する(12)。その後、CPUは、TCP/IPヘッダを処理した後(13)、DMAエンジンによってカーネルメモリスペースからユーザメモリスペースにコピーする(14)。
図2に示すように、従来はCPUによる複数のデータ移動が必要となっている。いずれの場合も、CPUは、データを読取り、必要に応じて修正し、メモリに書き込んで戻す必要がある。このようなCPUによる複数のデータ移動は、メモリアクセスの障害となる可能性があり、CPU負荷が増大する要因となっている。一方、図1に示すTOEによるデータ移動においては、メモリの読み取り/修正/書込みというシーケンスをCPUが実行する必要がなくなるので、CPU負荷の低減が可能になる。
すなわち、TOEは、従来ホスト側のCPUリソースが費やされていたTCP/IP処理の一部あるいは全部を負担することで、CPUの負担を軽減し、処理を高速化させ、システムのスループットを向上させる役割を担っている。これにより、ホスト側は、CPUリソースを本来のアプリケーション処理だけに割り当てることが可能になる。
[第1の実施の形態]
本発明の第1の実施の形態を図3ないし図6に基づいて説明する。本実施の形態は通信装置としてMFP(Multi Function Peripheral)と称される複合機を適用した例である。
図3は、本発明の第1の実施の形態にかかる情報処理システム1のネットワーク構成を示すブロック図である。図3に示すように、本実施の形態の情報処理システム1は、通信装置2と、通信装置2と通信を行う複数台のクライアントコンピュータ(以下、クライアントという)4とがネットワーク3を介して接続されたシステムを想定する。また、ネットワーク3には、通信機器同士の接続を中継するルータ5が接続されており、例えばインターネット上にあるクライアント(図示せず)などとの通信を経由する。本実施の形態の通信装置2は、コピー機能、ファクシミリ(FAX)機能、プリント機能、スキャナ機能及び入力画像(スキャナ機能による読み取り原稿画像やプリンタあるいはFAX機能により入力された画像)を配信する機能等を複合したいわゆるMFP(Multi Function Peripheral)と称される複合機を適用した例である。また、図3においては、IPv4ネットワークでの構成を記載しているが、本発明はIPのバージョンによらないため、IPv4/IPv6を問わずに構成可能である。
ここで、図4は通信装置2の構成を示すブロック図である。図4に示すように、通信装置2は、この通信装置2の各部の制御処理および画像形成処理などの各種制御処理を行うコントローラ11を備えている。コントローラ11には、通信装置2の動作制御を行うCPU(Central Processing Unit)12が備えられている。CPU12には、所定の機能を発揮するASIC(Application Specific Integrated Circuit)13、CPU12やASIC13が実行するプログラムや必要なデータ等を記憶するためのROM(Read Only Memory)14と、CPU12のワークエリア等を構成するためのRAM(Random Access Memory)15とが内部バス16を介して接続されている。
さらに、CPU12には、NIC(Network Interface Card)17、HDD(Hard Disk Drive)18、プリンタエンジン31のインタフェースであるプリンタI/F19、スキャナ32のインタフェースであるスキャナI/F20、FCU(Fax Control Unit)33のインタフェースであるFAX I/F21が、内部バス16を介して接続されており、これらの各要素間のデータのやりとりは、主としてこの内部バス16を介して行われる。
NIC17は、通信装置2をネットワーク3に接続するために組み込まれたインタフェース・カードである。例えば、NIC17は、ネットワーク3を介してクライアント4を接続し、クライアント4から印刷データ等を受信したり、クライアント4へ印刷結果情報等を送信する等の動作を行う。また、本実施の形態においては、NIC17は、上述したようなTOE(TCP/IP offload Engine)40を備えている。
HDD18は、文書データ情報、文書データ、印刷データ等の種々のデータを記憶するためのものである。
次に、本実施の形態の通信装置2のコントローラ11のCPU12がプログラムに従って実現する機能の内、特徴的な機能である通信制御処理について説明する。
ここで、図5は通信制御処理を実行する通信制御部55の構成を示すブロック図である。通信制御処理は、その処理の多くをプログラムである通信制御ソフトウェアを用いて実現するものであるが、本実施の形態では、通信制御ソフトウェアをハードウェア化して処理の高速化を図ったものも、通信制御ソフトウェアの一部として扱っている。
図5に示すように、通信制御部55は、大きく分けて次の4つの部位から構成されている。より具体的には、アプリケーション部50と、ソフトTCP/IP制御部52と、ハードTCP/IP制御部53と、ネットワーク通信ドライバ54とを備えている。なお、上述の構成は必要最小限の構成要素であり、他の装置やモジュールを追加することで、より高機能な通信制御処理を実行することができる。例えば、各制御部52,53にログ取得用モジュールを組み込むことによって、中継したパケット情報を記録し、ログ出力や、統計情報を得ることが可能となる。
アプリケーション部50は、通信装置2のユーザに対して提供するアプリケーションに関する処理を行う。
ソフトTCP/IP制御部52は、ソフト通信手段として機能するものであって、ソフトウェアによってTCP/IP制御を行う部位であり、TCP/UDP制御部・IP制御部・IPsec制御部を有している。
ハードTCP/IP制御部53は、ハード通信手段として機能するものであって、ハードウェアであるTOE(TCP/IP offload Engine)40によってTCP/IP制御を行う部位である。
ネットワーク通信ドライバ54は、ネットワーク通信のためのハードウェア制御を行う部位である。具体的には、ネットワーク通信ドライバ54は、OSI7階層参照モデルにおけるデータリンク層のプロトコルにあたる。
また、図5に示すように、アプリケーション部50には、ハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との何れかに割り当てる処理を専任で行うモジュールである通信割り当て手段として機能する通信割り当て部51が設けられている。全てのアプリケーションは通信割り当て部51を介して通信されることになることから、通信割り当て部51は、複数のアプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との何れかに割り当てる処理を行うことが可能となる。
上述したような通信割り当て部51と、ソフトTCP/IP制御部52と、ハードTCP/IP制御部53と、ネットワーク通信ドライバ54とにより、通信制御部55が構成されている。
ここで、図6は通信制御部55の通信制御処理の流れを示すフローチャートである。図6に示すように、通信制御部55は、通信依頼に待機し(ステップS1)、アプリケーションからの通信依頼を受信すると(ステップS2)、通信情報を抽出する(ステップS3)。ここで、ステップS3で抽出される通信情報(基準情報)は、複数のアプリケーション通信の通信量に関係する情報であり、例えばアプリケーション部50のアプリケーションごとの過去の通信量である。アプリケーションごとの過去の通信量は、RAM15やHDD18に記録されている。
続いて通信制御部55は、通信割り当て部51により、ステップS3で抽出した過去の通信情報からハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS4)。
選択処理は、複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、どのアプリケーション通信にハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てるか否かを決定するものである。具体的には、同時に通信を行う可能性のある他のアプリケーションの通信量と比較して、所定のアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てるか否かを決定するものである。本実施の形態においては、単純に過去の通信量の多いものに対して、ハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てる。これは過去の通信量の多いアプリケーションは、今後も通信量が多くなることが予想されるため、そのようなアプリケーションの通信には優先的にハードウェア通信を割り当てるようにしたものである。本実施の形態では、通信割り当て部51がアプリケーションごとの通信量をHDD18などの記録装置に記録しておき、その通信量をハードTCP/IP制御部53の割り当ての基準に用いる。
その後、通信制御部55は、所定のアプリケーションからデータを選択されたハードウェア通信またはソフトウェア通信により送信する通信処理を実行し(ステップS5)、当該アプリケーション通信の通信量を通信情報としてRAM15やHDD18に記録し(ステップS6)、次の通信依頼に待機する(ステップS1)。
例えば、ソフトTCP/IP制御部52によるソフトウェア通信へ割り当てられてきたWeb通信の通信量が他のアプリケーション通信に比べて相対的に多くなってきたような場合には、受信待ちで新たに起きたセッションでハードTCP/IP制御部53によるハードウェア通信に動的に割り当てるようにする。
なお、本実施の形態においては、複数のアプリケーション通信の通信量に関係する通信情報をアプリケーション部50のアプリケーションごとの過去のトータルの通信量としたが、これに限るものではない。例えば、アプリケーションごとの過去のトータルの通信量を通信回数で割ったアプリケーションごとの一回当りの平均通信量を通信情報としても良い。また、通信情報は通信量に限るものではなく、通信頻度などであっても良い。さらに、通信量をアプリケーションの単位以外でも記録しておき(通信ユーザなど)、割り当てにその情報を用いるようにしても良い。
このように本実施の形態によれば、同時に実行される複数のアプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信への割り当て処理を、各アプリケーション通信にかかる基準情報に基づいて実行することにより、各アプリケーション通信にかかる基準情報を通信装置の使用環境に応じて適宜選択することで、通信全体における通信性能向上を実現することができる。
より具体的には、同時に実行される複数のアプリケーション通信のそれぞれの過去のトータルの通信量に関係する情報(基準情報)について、相対的に数値が大きいアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てることにより、より「通信量」の多いものにTOE40を割り当てることによって、通信全体における通信性能向上(平均通信速度の向上)を実現することができる。
また、本実施の形態においては、通信割り当て部51は、同時に実行される複数のアプリケーション通信の通信量に関係する情報(基準情報)を自ら解析して、各アプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる。
[第2の実施の形態]
次に、本発明の第2の実施の形態を図7に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
第1の実施の形態では、通信割り当て部51は複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、ハードウェア通信とソフトウェア通信との割り当て処理を行うようにしたが、本実施の形態は、予め決定しておいたアプリケーション通信の優先度(基準情報)に応じてハードウェア通信とソフトウェア通信との割り当て処理を行うようにした点で異なるものとなっている。
本実施の形態においては、クライアント4が通信装置2に対して「設定」と「印刷」とについてのアプリケーション通信をそれぞれ行う例を示す。なお、本実施の形態においては、受信の例を示しているが、送信も同様に構成することができることは言うまでもない。
ここで、図7は通信制御部55の通信制御処理の流れを示すフローチャートである。図7に示すように、通信制御部55は、まず、アプリケーション毎の優先度の設定を受け付ける(ステップS11)。例えば、「印刷」のためのデータ量は「設定」のために通信すべきデータ量よりも多いことから、本実施の形態では、「設定」にかかるアプリケーション通信の優先度を低く、「印刷」にかかるアプリケーション通信の優先度を高くする。このようなアプリケーション毎の優先度は、RAM15やHDD18に記録される。
その後、通信依頼に待機し(ステップS12)、アプリケーションから「受信待機」という通信依頼を受信すると(ステップS13)、通信情報を抽出する(ステップS14)。ここで、ステップS14で抽出される通信情報は、通信を行うアプリケーションの優先度である。
続いて通信制御部55は、通信割り当て部51により、ステップS14で抽出した通信情報(アプリケーションの優先度)に基づいてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS15)。
選択処理は、同時に通信を行う可能性のある他のアプリケーションの優先度と比較して、所定のアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てるか否かを決定するものである。本実施の形態においては、「印刷」にかかるアプリケーション通信が「設定」にかかるアプリケーション通信よりも優先度が高く設定されているので、「印刷」にかかるアプリケーション通信に優先的にハードTCP/IP制御部53によるハードウェア通信を割り当てる。なお、アプリケーションの粒度を落とすことで、より細かい機能単位で優先度設定することも可能となる。
その後、通信制御部55は、優先度を低いとした「設定」のための受信待機をソフトウェア通信で行い、優先度を高いとした「印刷」のための受信待機をハードウェア通信で行う通信処理を実行し(ステップS16)、次の通信依頼に待機する(ステップS12)。
これにより、クライアント4から「設定」のアプリケーション通信の受信があった場合、通信装置2は、ネットワーク通信ドライバ54を通して受けた受信パケットをソフトTCP/IP制御部52で受けて処理し、アプリケーション部50へ渡す。すなわち、クライアント4から「設定」のアプリケーション通信の受信があった場合には、ソフトウェア処理による低速通信になる。一方、クライアント4から「印刷」のアプリケーション通信の受信があった場合は、ネットワーク通信ドライバ54を通して受けた受信パケットをハードTCP/IP制御部53のTOE40で受けて処理し、アプリケーション部50へ渡すことができる。すなわち、クライアント4から「印刷」のアプリケーション通信の受信があった場合には、ハードウェア処理による高速通信になる。
このように本実施の形態によれば、同時に実行される複数のアプリケーション通信毎に予め定められた優先度(基準情報)を参照し、優先度が高いアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てることにより、より「アプリケーションの優先度」の高いものにTOE40を割り当てることによって、通信全体における通信性能向上(各アプリケーションへの通信速度の必要性に応じた、通信速度配分)を実現することができる。
なお、通信割り当て部51は、同一のアプリケーション内でも「プリント制御情報」送信と「プリントデータ」受信とのように、優先度が高いアプリケーション通信(「プリントデータ」受信)に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当て、優先度が低いアプリケーション通信(「プリント制御情報」送信)に対してソフトTCP/IP制御部52によるソフトウェア通信を割り当てることもできる。
また、本実施の形態においては、通信割り当て部51は、同時に実行される複数のアプリケーション通信毎に予め定められた優先度(基準情報)を外部から受け取り、各アプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる。
なお、通信を受け付けたら新たなソケットを作って受信を始めるようなアプリケーション(例えば、Web通信やプリント受信など)の場合には、通信割り当て部51は、ある程度の個数を受け付けた場合、セッションの占有率により、ハードTCP/IP制御部53によるハードウェア通信からソフトTCP/IP制御部52によるソフトウェア通信に割り当てを変更することもできる。この場合、通信割り当て部51は、同時に実行される複数のアプリケーション通信の通信量に関係する情報(基準情報)を自ら解析して、各アプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる。
[第3の実施の形態]
次に、本発明の第3の実施の形態を図8に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
第1の実施の形態では、通信割り当て部51は複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、ハードウェア通信とソフトウェア通信との割り当て処理を行うようにしたが、本実施の形態は、アプリケーション通信にかかるユーザ毎の優先度(基準情報)に応じてハードウェア通信とソフトウェア通信との割り当て処理を行うようにした点で異なるものとなっている。
本実施の形態においては、通信装置2から一般ユーザが利用するクライアント4と課金ユーザが利用するクライアント4に対してアプリケーション通信を行う例を示している。なお、本実施の形態においては、スキャンデータ送信の例を示しているが、その他のデータの送信や受信も同様に構成することができることは言うまでもない。また、ユーザの優先度の判定は必ずしも課金によって行う必要はなく、事前に設定したユーザ情報によって行うなど、さまざまな方法で行う方法が考えられる。
ここで、図8は通信制御部55の通信制御処理の流れを示すフローチャートである。図8に示すように、通信制御部55は、まず、ユーザ毎の優先度の設定を受け付ける(ステップS21)。このようなユーザ毎の優先度は、アプリケーションが有しているアカウントリストなどから受け取ることが可能である。本実施の形態においては、例えば、課金ユーザのアプリケーション通信の優先度を高く、一般(課金していない)ユーザのアプリケーション通信の優先度を低くする。このようなユーザ毎の優先度は、RAM15やHDD18に記録される。
その後、通信制御部55は、通信依頼に待機し(ステップS22)、アプリケーションからの通信依頼を受信すると(ステップS23)、通信情報を抽出する(ステップS24)。ここで、ステップS24で抽出される通信情報は、アプリケーション通信にかかるユーザの優先度である。
続いて通信制御部55は、通信割り当て部51により、ステップS24で抽出した通信情報(ユーザの優先度)に基づいてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS25)。
選択処理は、同時に通信を行う可能性のある他のユーザの優先度と比較して、所定のユーザによるアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てるか否かを決定するものである。本実施の形態においては、課金ユーザのアプリケーション通信の方が、一般(課金していない)ユーザのアプリケーション通信よりも優先度が高く設定されているので、課金ユーザとのアプリケーション通信に優先的にハードTCP/IP制御部53によるハードウェア通信を割り当てる。
その後、通信制御部55は、通信処理を実行し(ステップS16)、次の通信依頼に待機する(ステップS12)。
これにより、一般(課金していない)ユーザのクライアント4に対するアプリケーション通信の依頼(例えば、スキャンデータ送信)があった場合、通信装置2は、送信パケットをソフトTCP/IP制御部52で処理し、ネットワーク通信ドライバ54へ渡す。すなわち、一般(課金していない)ユーザのクライアント4との通信は、ソフトウェア処理による低速通信になる。一方、課金ユーザのクライアント4に対するアプリケーション通信の依頼(例えば、スキャンデータ送信)があった場合、通信装置2は、送信パケットをハードTCP/IP制御部53のTOE40で受けて処理し、ネットワーク通信ドライバ54へ渡す。すなわち、課金ユーザのクライアント4との通信は、ハードウェア処理による高速通信になる。
このように本実施の形態によれば、同時に実行される複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度(基準情報)を参照し、優先度が高いユーザにかかるアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てることにより、より「通信利用ユーザの優先度」の高いものにTOE40を割り当てることによって、通信全体における通信性能向上(各ユーザの通信速度の必要性に応じた、通信速度配分)を実現することができる。
なお、本実施の形態においては、一般(課金していない)ユーザまたは課金ユーザによってユーザの優先度(基準情報)を決めるようにしたが、これに限るものではなく、管理者やゲストの別によってユーザの優先度(基準情報)を決めるようにしても良い。このような管理者やゲストの別は、アカウントリストやアドレス帳から受け取ることができる。
また、本実施の形態においては、通信割り当て部51は、同時に実行される複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度(基準情報)を外部から受け取り、各アプリケーション通信について、ハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信への割り当て処理を実行することにより、通信全体における通信性能向上を実現することができる。
[第4の実施の形態]
次に、本発明の第4の実施の形態を図9および図10に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
第1の実施の形態では、通信割り当て部51は複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、ハードウェア通信とソフトウェア通信との割り当て処理を行うようにしたが、本実施の形態は、通信対象であるクライアント4の使用傾向(基準情報)に応じてハードウェア通信とソフトウェア通信との割り当て処理を行うようにした点で異なるものとなっている。ここで、通信対象であるクライアント4の使用傾向とは、例えば、印刷枚数、印刷頻度、継続して印刷を行うか、印刷やスキャンのデータの傾向などである。
ここで、図9は通信制御部55の通信制御処理の流れを示すフローチャートである。図9に示すように、通信制御部55は、通信依頼に待機し(ステップS31)、アプリケーションから「受信待機」という通信依頼を受信すると(ステップS32)、通信情報を抽出する(ステップS33)。ここで、ステップS33で抽出される通信情報は、通信対象であるクライアント4を選別し、その通信対象であるクライアント4の過去の使用傾向(印刷枚数、印刷頻度、継続して印刷を行うか、印刷やスキャンのデータの傾向など)に関する情報である。
続いて通信制御部55は、通信割り当て部51により、ステップS33で抽出した通信情報(通信対象であるクライアント4の過去の使用傾向)に基づいてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS34)。
選択処理は、通信対象であるクライアント4の使用傾向を分析し、分析結果に基づいて通信の全体の最適化が図れる方向で選択を行う。本実施の形態においては、同時に通信を行う可能性のある他のクライアント4の使用傾向と比較して、所定のクライアント4に対するアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てるか否かを決定するものである。
例えば、図10に示すように、クライアント4(PC1)とクライアント4(PC2)とがあるとする。クライアント4(PC1)は、
・印刷時は、複数回継続して印刷することが多い。
・印刷データは、容量が大きいものが多い。
という使用傾向がある。一方、クライアント4(PC2)は、
・印刷時は、毎回単発である。
・印刷データは、容量が小さいものが多い。
という使用傾向がある。したがって、図10に示す例においては、クライアント4(PC1)の方が通信に負荷の掛かる使い方をする傾向があるため、クライアント4(PC1)のアプリケーション通信に優先的にハードTCP/IP制御部53によるハードウェア通信を割り当てる。
その後、通信制御部55は、クライアント4(PC2)の受信待機をソフトウェア通信で行い、通信に負荷の掛かる使い方をする傾向があるクライアント4(PC1)の受信待機をハードウェア通信で行う通信処理を実行し(ステップS35)、今回の通信による、通信対象であるクライアント4の使用内容を通信情報としてRAM15やHDD18に記録し(ステップS36)、次の通信依頼に待機する(ステップS31)。
これにより、ある対象との通信に対して、その対象との過去の通信内容の分析から、その通信内容を予測することができる。その予測を基に、ハードTCP/IP制御部53によるハードウェア通信を割り当てることによって、通信の全体最適が可能となる通信に対して優先的にハードTCP/IP制御部53によるハードウェア通信を割り当てる処理を行うことができる。
なお、本実施の形態においては、通信対象であるクライアント4の使用傾向に応じてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行うようにしたが、これに限るものではなく、通信対象ユーザで割り当てるようにしても良い。この場合は、ユーザが別の機クライアント4器から画像形成装置を使用する場合にも、ユーザの使用傾向に沿ったTOE40の割り当てを行うことができる。
このように本実施の形態によれば、同時に実行される複数のアプリケーション通信の通信対象の使用傾向(基準情報)を参照し、通信に負荷の掛かる使用傾向がある通信対象へのアプリケーション通信に対してハードTCP/IP制御部53によるハードウェア通信を優先的に割り当てることにより、通信全体における通信性能向上(平均通信速度の向上)を実現することができる。
[第5の実施の形態]
次に、本発明の第5の実施の形態を図11および図12に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
第1の実施の形態では、通信割り当て部51は複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、ハードウェア通信とソフトウェア通信との割り当て処理を行うようにしたが、本実施の形態は、複数のアプリケーション通信の通信量に関係する情報である通信量(基準情報)と、ユーザ毎の優先度(基準情報)に応じてハードウェア通信とソフトウェア通信との割り当て処理を行うようにした点で異なるものとなっている。
ここで、図11は通信制御部55の通信制御処理の流れを示すフローチャートである。図11に示すように、まず、通信制御部55は、各基準の優先度や基準で用いられる設定値の設定を受け付ける(ステップS41)。例えば、図12に示す例では、2つの基準には優先度が付けられており、過去のアプリケーション通信量はアプリケーションBが最大だが、ユーザ優先度はユーザAが最大であり、優先度間の優先度はユーザ優先度の方が高いため、TOE40(ハードTCP/IP制御部53)の割り当て優先度としては「アプリケーションAとユーザAの通信」が最高となっている。このような各基準の優先度や基準で用いられる設定値は、RAM15やHDD18に記録される。
その後、通信制御部55は、通信依頼に待機し(ステップS42)、アプリケーションからの通信依頼を受信すると(ステップS43)、通信情報を抽出する(ステップS44)。ここで、ステップS44で抽出される通信情報は、各基準で用いられる優先度や設定値である。本実施の形態では、アプリケーションごとの通信量と、使用ユーザごとのTOE40の割り当て優先度である。
続いて通信制御部55は、通信割り当て部51により、ステップS44で抽出した通信情報(アプリケーションごとの通信量と、使用ユーザごとのTOE40の割り当て優先度)に基づいてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS45)。
選択処理は、各基準の判定結果と、基準間の優先度の違いによって選択する。より具体的には、所定の通信に対して、基準ごとにTOE40の割り当て優先度を判定し、判定したそれぞれのTOE40の割り当て優先度から、各基準間の優先度を基にしての一つのTOE40の割り当て優先度を求め、それが高い通信ほど優先的にTOE40を割り当てる処理を行う。
その後、通信制御部55は、通信処理を実行し(ステップS46)、情報を記録しておく必要のある基準がある場合はその情報を通信情報としてRAM15やHDD18に記録し(ステップS47)、次の通信依頼に待機する(ステップS42)。
これにより、アプリケーションの新たな通信時には、これまでのアプリケーションの通信量と、ユーザごとの優先度を基に、TOE40(ハードTCP/IP制御部53)の割り当てを行うことができる。
このように本実施の形態によれば、少なくとも2以上の基準情報に対して予め定められた優先度に従い、複数のアプリケーション通信をソフト通信手段によるソフトウェア通信またはハード通信手段によるハードウェア通信に対して割り当てることにより、TOE40の割り当ての選択に複数の基準情報を組み合わせて使用することで、その通信装置の使用環境に合わせた柔軟な形での、通信全体における通信性能向上を実現することができる。
[第6の実施の形態]
次に、本発明の第6の実施の形態を図13に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
第1の実施の形態では、通信割り当て部51は複数のアプリケーション通信の通信量に関係する情報の相対的関係を基に、ハードウェア通信とソフトウェア通信との割り当て処理を行うようにしたが、本実施の形態は、IPsec通信がハードウェア通信とソフトウェア通信とのいずれで確立されているかに応じてハードウェア通信とソフトウェア通信との割り当て処理を行うようにした点で異なるものとなっている。
IPsecは、暗号通信のための標準プロトコルであり、認証や暗号のプロトコル、鍵交換のプロトコル、ヘッダ構造など、複数のプロトコルを総称するものである。IPsecでは、実際にやり取りするデータの暗号化は処理の軽い共通鍵方式を利用する。また、IPsecでは、共通鍵でデータをやりとりする前の手続きとして、論理的コネクションを張る。このような論理的コネクションは、SA(Security Association)と呼ばれている。このようなSA(Security Association)には、有効期間が設定されている。
本実施の形態においては、通信装置2がクライアント4に対して通信を行う例を示している。なお、本実施の形態においては、スキャンデータ送信の例を示しているが、その他のデータの送信や受信も同様に構成することができることは言うまでもない。
ここで、図13は通信制御部55の通信制御処理の流れを示すフローチャートである。図13に示すように、通信制御部55は、通信依頼に待機し(ステップS51)、通信装置2のアプリケーションからのクライアント4に対する通信依頼を受信すると(ステップS52)、通信情報を抽出する(ステップS53)。ここで、ステップS53で抽出される通信情報は、IPsec通信において作成されているSA(Security Association)である。SAは、IPsecを利用した暗号化通信において、通信に先立って暗号化方式や暗号鍵などの暗号化情報を交換・共有し、安全な通信路を確立するために作成される。このようにIPsec通信において作成されているSAは、IPsecの確立にソフトTCP/IP制御部52によるソフトウェア通信が使われた場合には、RAM15やHDD18に記録されている。一方、IPsecの確立にハードTCP/IP制御部53によるハードウェア通信が使われた場合には、SAはTOE40に記録されている。
ここで、ソフトウェアによるSAの抽出は、IPsecの確立にソフトTCP/IP制御部52によるソフトウェア通信が使われた場合に限られている。そこで、本実施の形態においては、SAが抽出された場合には、IPsecの確立にソフトTCP/IP制御部52によるソフトウェア通信が使われたことがわかる。なお、TOE40に記録されているSAをチェック可能なAPI(Application Program Interface)があれば、IPsecの確立にハードTCP/IP制御部53によるハードウェア通信が使われたことがわかるようにしても良い。
続いて通信制御部55は、ステップS53で作成済みのSAが抽出され、かつ、SAが有効期間内であって使用できる場合には、通信割り当て部51を用いて、当該SAに基づいてハードTCP/IP制御部53によるハードウェア通信とソフトTCP/IP制御部52によるソフトウェア通信との選択処理を行う(ステップS54)。
選択処理は、ステップS53で作成済みのSAが抽出され、かつ、SAが有効期間内であって使用できる場合には、通信装置2とクライアント4とのIPsecの確立にソフトTCP/IP制御部52によるソフトウェア通信が使われたと判定する。一方、ステップS53で抽出されたSAが有効期間外である場合、または、ステップS53でSAが抽出されなかった場合には、通信装置2とクライアント4とのIPsecの確立にハードTCP/IP制御部53によるハードウェア通信が使われたと判定する。そして、IPsec SA再利用が可能なアプリケーション通信については、既にSAが構築済みのハードTCP/IP制御部53によるハードウェア通信またはソフトTCP/IP制御部52によるソフトウェア通信に割り当てる。
その後、通信制御部55は、通信処理を実行し(ステップS55)、SAを作成した場合はその情報を通信情報としてRAM15やHDD18に記録し(ステップS56)、次の通信依頼に待機する(ステップS51)。
これにより、ユーザから通信の要求があった場合、通信装置2は、アプリケーションから通信割り当て部51を通して、送信パケットをソフトTCP/IP制御部52で送るか、ハードTCP/IP制御部53で送るかを決めて、ネットワーク通信ドライバ54を通して送信することができる。
このように本実施の形態によれば、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(基準情報)を抽出した場合にはIPsecの確立にソフトTCP/IP制御部52によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立にハードTCP/IP制御部53によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みのソフトTCP/IP制御部52によるソフトウェア通信またはハードTCP/IP制御部53によるハードウェア通信に対して割り当てるようにしたことにより、「TOE利用によるIPsec SA再利用が可能なアプリケーション通信」にTOE40を割り当てることによって、通信全体における通信性能向上(IPsec処理に必要な時間の短縮)を実現することができる。
なお、第5の実施の形態で説明したように、少なくとも2以上の基準情報に対して予め定められた優先度に従い、複数のアプリケーション通信をソフトTCP/IP制御部52によるソフトウェア通信またはハードTCP/IP制御部53によるハードウェア通信に対して割り当てるようにした場合であって基準情報としてSAを適用する場合に、SAが抽出されなかった場合には、他の基準情報との優先度に拘わらず、強制的にハードTCP/IP制御部53によるハードウェア通信が割り当てられることになる。そこで、このような場合には、IPsec通信であるかどうかをアプリケーションで確認できるようにする。そうすれば、IPsec通信である場合に限り、SAが抽出されなかった場合には、他の基準情報との優先度に拘わらず、強制的にハードTCP/IP制御部53によるハードウェア通信が割り当てられる。
本発明の前提となるTOEによるデータ移動例を示す模式図である。 従来のデータ移動例を示す模式図である。 本発明の第1の実施の形態にかかる情報処理システムのネットワーク構成を示すブロック図である。 通信装置の構成を示すブロック図である。 通信制御部の構成を示すブロック図である。 通信制御処理の流れを示すフローチャートである。 本発明の第2の実施の形態にかかる通信制御処理の流れを示すフローチャートである。 本発明の第3の実施の形態にかかる通信制御処理の流れを示すフローチャートである。 本発明の第4の実施の形態にかかる通信制御処理の流れを示すフローチャートである。 割り当て例を示す説明図である。 本発明の第5の実施の形態にかかる通信制御処理の流れを示すフローチャートである。 割り当て例を示す説明図である。 本発明の第6の実施の形態にかかる通信制御処理の流れを示すフローチャートである。
符号の説明
2 通信装置
51 通信割り当て手段
52 ソフト通信手段
53 ハード通信手段

Claims (12)

  1. ネットワークで並行に実行される複数のアプリケーション通信を処理する通信装置において、
    ソフトウェアによるTCP/IP制御により前記アプリケーション通信を実行するソフト通信手段と、
    TOE(TCP/IP offload Engine)によるTCP/IP制御により前記アプリケーション通信を実行するハード通信手段と、
    同時に実行される前記複数のアプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を、前記各アプリケーション通信にかかる基準情報に基づいて実行する通信割り当て手段と、
    を備えることを特徴とする通信装置。
  2. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)であり、
    前記通信割り当て手段は、SAを抽出した場合にはIPsecの確立に前記ソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立に前記ハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みの前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  3. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信の通信量に関係する情報であり、
    前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信のそれぞれの前記通信量に関係する情報について、相対的に数値が大きい前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  4. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信毎に予め定められた優先度であり、
    前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信毎に予め定められた優先度を参照し、優先度が高い前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  5. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度であり、
    前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度を参照し、優先度が高いユーザにかかる前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  6. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、前記複数のアプリケーション通信の通信対象の使用傾向であり、
    前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信の通信対象の使用傾向を参照し、通信に負荷の掛かる使用傾向がある前記通信対象への前記アプリケーション通信に対して前記ハード通信手段によるハードウェア通信を優先的に割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  7. 前記通信割り当て手段が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)と、前記複数のアプリケーション通信の通信量に関係する情報と、前記複数のアプリケーション通信毎に予め定められた優先度と、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、前記複数のアプリケーション通信の通信対象の使用傾向との少なくとも2以上を用いたものであり、
    前記通信割り当て手段は、少なくとも2以上の前記基準情報に対して予め定められた優先度に従い、前記複数のアプリケーション通信を前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる、
    ことを特徴とする請求項1記載の通信装置。
  8. 前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかる前記基準情報を自ら解析して、前記各アプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を実行する、
    ことを特徴とする請求項1記載の通信装置。
  9. 前記通信割り当て手段は、同時に実行される前記複数のアプリケーション通信にかかる前記基準情報を外部から受け取り、前記各アプリケーション通信について、前記ハード通信手段によるハードウェア通信または前記ソフト通信手段によるソフトウェア通信への割り当て処理を実行する、
    ことを特徴とする請求項1記載の通信装置。
  10. ネットワークで並行に実行される複数のアプリケーション通信処理をコンピュータに実行させるプログラムであって、
    同時に実行される前記複数のアプリケーション通信について、ソフトウェアによるTCP/IP制御により前記アプリケーション通信を実行するソフト通信手段によるソフトウェア通信またはTOE(TCP/IP offload Engine)によるTCP/IP制御により前記アプリケーション通信を実行するハード通信手段によるハードウェア通信への割り当て処理を、前記各アプリケーション通信にかかる基準情報に基づいて実行する通信割り当て機能を、
    前記コンピュータに実行させることを特徴とするプログラム。
  11. 前記通信割り当て機能が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)であり、
    前記通信割り当て機能は、SAを抽出した場合にはIPsecの確立に前記ソフト通信手段によるソフトウェア通信が使われたものと判定し、SAを抽出しない場合にはIPsecの確立に前記ハード通信手段によるハードウェア通信が使われたものと判定して、IPsec SA再利用が可能なアプリケーション通信については既にSAが構築済みの前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる、
    ことを特徴とする請求項10記載のプログラム。
  12. 前記通信割り当て機能が割り当て処理の基準に用いる前記基準情報は、IPsec通信を利用した暗号化通信に先立って暗号化情報を交換・共有して通信路を確立するために作成されるSA(Security Association)と、前記複数のアプリケーション通信の通信量に関係する情報と、前記複数のアプリケーション通信毎に予め定められた優先度と、前記複数のアプリケーション通信にかかるユーザ毎に予め定められた優先度と、前記複数のアプリケーション通信の通信対象の使用傾向との少なくとも2以上を用いたものであり、
    前記通信割り当て機能は、少なくとも2以上の前記基準情報に対して予め定められた優先度に従い、前記複数のアプリケーション通信を前記ソフト通信手段によるソフトウェア通信または前記ハード通信手段によるハードウェア通信に対して割り当てる、
    ことを特徴とする請求項10記載のプログラム。
JP2007159943A 2007-06-18 2007-06-18 通信装置およびプログラム Expired - Fee Related JP4964683B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007159943A JP4964683B2 (ja) 2007-06-18 2007-06-18 通信装置およびプログラム
US12/128,051 US8972595B2 (en) 2007-06-18 2008-05-28 Communication apparatus, application communication executing method, and computer program product, configured to select software communication or hardware communication, to execute application communication, based on reference information for application communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007159943A JP4964683B2 (ja) 2007-06-18 2007-06-18 通信装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2008312094A true JP2008312094A (ja) 2008-12-25
JP4964683B2 JP4964683B2 (ja) 2012-07-04

Family

ID=40133401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007159943A Expired - Fee Related JP4964683B2 (ja) 2007-06-18 2007-06-18 通信装置およびプログラム

Country Status (2)

Country Link
US (1) US8972595B2 (ja)
JP (1) JP4964683B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011228947A (ja) * 2010-04-20 2011-11-10 Ricoh Co Ltd 通信装置
US8943214B2 (en) 2009-09-16 2015-01-27 Kabushiki Kaisha Toshiba Communication apparatus
JP2017174432A (ja) * 2011-11-10 2017-09-28 マイクロソフト テクノロジー ライセンシング,エルエルシー アプリケーションごとのリソース使用情報の提供
JP2021027398A (ja) * 2019-07-31 2021-02-22 日本電気株式会社 コンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105191219B (zh) * 2013-05-09 2017-06-23 三菱电机株式会社 Fa网络用lsi以及通信装置
US10412177B2 (en) * 2016-03-30 2019-09-10 Konica Minolta Laboratory U.S.A., Inc. Method and system of using IPV6 neighbor discovery options for service discovery

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002354064A (ja) * 2001-05-29 2002-12-06 Sony Corp 送信装置、受信装置、及び送受信装置
JP2005085284A (ja) * 2003-09-10 2005-03-31 Microsoft Corp フェイルオーバーイベントをサポートするネットワーク状態オブジェクトの多重オフロード
JP2006191537A (ja) * 2004-11-12 2006-07-20 Microsoft Corp 統合ホストプロトコルスタック管理を使用するセキュアなインターネットプロトコル(ispec)オフロードのための方法および装置
JP2006319971A (ja) * 1999-01-08 2006-11-24 Telefon Ab L M Ericsson ハンドオーバーの性能を改良するセキュリティアソシエーションの再利用
JP2007201785A (ja) * 2006-01-26 2007-08-09 Murata Mach Ltd 通信装置
JP2007249851A (ja) * 2006-03-17 2007-09-27 Sony Corp 情報処理装置および方法、並びにプログラム
JP2008061223A (ja) * 2006-08-04 2008-03-13 Canon Inc 通信装置及び通信方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005279A1 (en) * 2001-06-29 2003-01-02 Moshe Valenci Synchronizing the exchange of cryptography information between kernel drivers
US7644188B2 (en) * 2002-02-25 2010-01-05 Intel Corporation Distributing tasks in data communications
US7535913B2 (en) * 2002-03-06 2009-05-19 Nvidia Corporation Gigabit ethernet adapter supporting the iSCSI and IPSEC protocols
US7007103B2 (en) * 2002-04-30 2006-02-28 Microsoft Corporation Method to offload a network stack
US7783035B2 (en) * 2002-08-30 2010-08-24 Adaptec, Inc. Systems and methods for implementing host-based security in a computer network
US20040249957A1 (en) * 2003-05-12 2004-12-09 Pete Ekis Method for interface of TCP offload engines to operating systems
US20050188074A1 (en) * 2004-01-09 2005-08-25 Kaladhar Voruganti System and method for self-configuring and adaptive offload card architecture for TCP/IP and specialized protocols
JP3966307B2 (ja) 2004-06-29 2007-08-29 日本電気株式会社 通信下位プロトコルの実行及び受信データストリームのデータ分割機能を有するオフロードエンジンを備える通信システム
US7929442B2 (en) * 2004-06-30 2011-04-19 Intel Corporation Method, system, and program for managing congestion in a network controller
JP2006293983A (ja) 2005-03-18 2006-10-26 Ricoh Co Ltd ネットワーク通信装置、画像形成装置、ネットワーク通信方法、およびプログラム
US7639715B1 (en) * 2005-09-09 2009-12-29 Qlogic, Corporation Dedicated application interface for network systems
US20070162631A1 (en) * 2005-12-28 2007-07-12 International Business Machines Corporation Method for selectable software-hardware internet SCSI
JP4980627B2 (ja) 2006-03-02 2012-07-18 株式会社リコー ネットワーク機器
JP4704247B2 (ja) 2006-03-03 2011-06-15 株式会社リコー ネットワーク機器
US8006297B2 (en) * 2007-04-25 2011-08-23 Oracle America, Inc. Method and system for combined security protocol and packet filter offload and onload

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006319971A (ja) * 1999-01-08 2006-11-24 Telefon Ab L M Ericsson ハンドオーバーの性能を改良するセキュリティアソシエーションの再利用
JP2002354064A (ja) * 2001-05-29 2002-12-06 Sony Corp 送信装置、受信装置、及び送受信装置
JP2005085284A (ja) * 2003-09-10 2005-03-31 Microsoft Corp フェイルオーバーイベントをサポートするネットワーク状態オブジェクトの多重オフロード
JP2006191537A (ja) * 2004-11-12 2006-07-20 Microsoft Corp 統合ホストプロトコルスタック管理を使用するセキュアなインターネットプロトコル(ispec)オフロードのための方法および装置
JP2007201785A (ja) * 2006-01-26 2007-08-09 Murata Mach Ltd 通信装置
JP2007249851A (ja) * 2006-03-17 2007-09-27 Sony Corp 情報処理装置および方法、並びにプログラム
JP2008061223A (ja) * 2006-08-04 2008-03-13 Canon Inc 通信装置及び通信方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8943214B2 (en) 2009-09-16 2015-01-27 Kabushiki Kaisha Toshiba Communication apparatus
JP2011228947A (ja) * 2010-04-20 2011-11-10 Ricoh Co Ltd 通信装置
JP2017174432A (ja) * 2011-11-10 2017-09-28 マイクロソフト テクノロジー ライセンシング,エルエルシー アプリケーションごとのリソース使用情報の提供
US10154153B2 (en) 2011-11-10 2018-12-11 Microsoft Technology Licensing, Llc Application resource usage information
JP2021027398A (ja) * 2019-07-31 2021-02-22 日本電気株式会社 コンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラム
JP7363167B2 (ja) 2019-07-31 2023-10-18 日本電気株式会社 コンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラム

Also Published As

Publication number Publication date
US8972595B2 (en) 2015-03-03
US20080313343A1 (en) 2008-12-18
JP4964683B2 (ja) 2012-07-04

Similar Documents

Publication Publication Date Title
JP3786152B2 (ja) 印刷システム、印刷方法及びプリンタ
JP4196732B2 (ja) データ転送装置及びプログラム
JP4964683B2 (ja) 通信装置およびプログラム
US7610389B2 (en) Application programming interface and generalized network address translation for translation of transport layer sessions
EP2107762B1 (en) Session management system and method of controlling the same
US7587476B2 (en) Peripheral device with a centralized management server, and system, computer program product and method for managing peripheral devices connected to a network
US9083671B2 (en) Image forming apparatus, method for controlling the same, and storage medium
WO2011096307A1 (ja) プロキシ装置とその動作方法
US20150188986A1 (en) Information processing apparatus, control method, and storage medium
JP4363404B2 (ja) 受信装置および方法、並びにプログラム
JP2005198298A (ja) ネットワーク画像形成装置の制御システムおよびそのデータ受信制御方法
JP6099958B2 (ja) 画像形成装置及びその制御方法とプログラム
JP2009196124A (ja) 情報処理装置、情報処理システム及び情報処理方法
JP6343913B2 (ja) 画像形成装置及び画像形成装置の制御方法
US20060282531A1 (en) Network interface apparatus for controlling image data forwarding according to performance function of each address and method thereof
JP4389881B2 (ja) 通信装置
JP2012060571A (ja) 画像処理装置、ジョブ処理方法及びプログラム
JP2009015716A (ja) 複数ipアドレスによる画像形成装置
JP6492865B2 (ja) 情報処理装置、プログラム及び情報処理方法
CN1773914A (zh) 数据处理装置、通信方法以及计算机程序
JP4438698B2 (ja) 分散印刷システム,印刷方法,及び,コンピュータプログラム
KR101831785B1 (ko) 복수의 호스트들과 연결 가능한 화상형성장치 및 화상형성장치에서 화상형성 작업을 제어하는 방법
JP2019001107A (ja) 印刷制御装置、制御方法、プログラム
JP2006172292A (ja) 画像処理装置及び印刷要求処理方法
JP2016177376A (ja) プログラム、情報処理装置及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110809

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: 20120321

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120328

R150 Certificate of patent or registration of utility model

Ref document number: 4964683

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150406

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees