JP2006164156A - Printer, network connecting device, print control method, and print control program - Google Patents

Printer, network connecting device, print control method, and print control program Download PDF

Info

Publication number
JP2006164156A
JP2006164156A JP2004358305A JP2004358305A JP2006164156A JP 2006164156 A JP2006164156 A JP 2006164156A JP 2004358305 A JP2004358305 A JP 2004358305A JP 2004358305 A JP2004358305 A JP 2004358305A JP 2006164156 A JP2006164156 A JP 2006164156A
Authority
JP
Japan
Prior art keywords
job
print
request
client
information
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.)
Withdrawn
Application number
JP2004358305A
Other languages
Japanese (ja)
Inventor
Takaharu Osawa
隆治 大澤
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 JP2004358305A priority Critical patent/JP2006164156A/en
Publication of JP2006164156A publication Critical patent/JP2006164156A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve a problem wherein, due to increase of a load to a print control system mounted on a network card, a request exceeding the performance of the network card is received, hence the processing time of the request becomes long, and finally a processing impossible situation occurs. <P>SOLUTION: In a processing impossible state, the interval (retry interval) at which the request to the busy response is re-fed is made variable according to the state of the network card. Thus, the vicious circle can be prevented, and the load state can be controlled. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、プリンタ装置に装着されるネットワークプリントサーバ及びプリンタ制御システムに関するものであり、特にその印刷制御システムに関するものである。   The present invention relates to a network print server and a printer control system mounted on a printer device, and more particularly to the print control system.

近年、クライアントコンピュータと印刷制御アプリケーションが連動して、ネットワークプリンタを管理する機能のほか、ネットワークの使用状態を監視する機能や、印刷データをスケジューリングする機能を有する印刷制御システムが考えられている(例えば、特許文献1)。   In recent years, a print control system having a function of monitoring a network usage state and a function of scheduling print data in addition to a function of managing a network printer in conjunction with a client computer and a print control application has been considered (for example, Patent Document 1).

この印刷制御システムは、クライアントコンピュータからの印刷要求の順番制御を行い、印刷要求の開始から印刷終了までのジョブ追跡を行い、ユーザに印刷状況を詳細に通知する。
特開2003−345566号公報
This print control system controls the order of print requests from client computers, performs job tracking from the start of a print request to the end of printing, and notifies the user of the print status in detail.
Japanese Patent Laid-Open No. 2003-345566

しかしながら、上述したような制御システムでは、複数のユーザからのリクエスト処理を1つのネットワークカードで同時に行うことを可能にする反面、ネットワークカード上に実装された印刷制御システムに対する負荷の増大から、ネットワークカードの性能以上のリクエストを受信してしまい、結果、リクエストの処理時間が長くなってしまったり、最終的には処理できない状況においこまれてしまうという問題点があった。   However, in the control system as described above, request processing from a plurality of users can be performed simultaneously with one network card, but on the other hand, the load on the print control system mounted on the network card is increased. As a result, there is a problem that the request processing time is received, and as a result, the processing time of the request becomes long, or finally, the request cannot be processed.

この問題点に対しては、受信側の状況に応じて、処理不能状態である場合にその旨を伝える(ビジーレスポンスを返す)ことが考えられているが、その場合にもネットワークカード側でのリクエスト処理よりも先に、ビジーを受け取ったクライアントがリトライ(再送)を実行してしまうと、さらにリクエストが増大してしまい悪循環を招いてしまうという問題点があった。
To deal with this problem, it is considered to notify that when processing is impossible (return a busy response) depending on the situation on the receiving side. Prior to request processing, if a client that has received busy executes a retry (retransmission), the number of requests further increases, resulting in a vicious circle.

本発明は上記従来技術の課題を解決するためになされたものであり、その目的とするところは、処理不能状態である場合に、そのビジーレスポンスに対するリクエストの再送を実行する間隔(リトライ間隔)をネットワークカードの状態に応じて可変にすることで、悪循環を防ぎ、負荷状態を制御することを可能にする印刷装置を提供することにある。   The present invention has been made in order to solve the above-described problems of the prior art. The object of the present invention is to set an interval (retry interval) for executing a retransmission of a request for the busy response when the processing is impossible. It is an object of the present invention to provide a printing apparatus that makes it possible to control a load state by preventing a vicious circle by making it variable according to the state of a network card.

上記目的を達成するため、本発明に係る他の装置は、印刷装置に装着可能な、前記印刷装置の制御モジュールと別個のCPUを備えるインテリジェント型ネットワークカードモジュールにあって、クライアントからの印刷要求を受信し、順番制御を行う印刷制御システムにおいて、クライアントからの印刷要求を受信する受信手段と、印刷要求にしたがって、印刷ジョブの登録管理を行う管理手段と、クライアントからのリクエスト要求を受信するリクエスト受信手段と、リクエスト受信時にリクエスト処理不能状態である場合にはその旨をクライアントに返信する返信手段と、リクエスト処理不能状態である際に、接続されているクライアント数を算出する算出手段と、接続されているクライアント数からリトライ時間を算出する手段と、前記返信手段において、前記リトライ時間算出手段で算出されたリトライ時間を含む返信パケットを送信する手段とを有することを特徴とする。   In order to achieve the above object, another apparatus according to the present invention is an intelligent network card module that can be mounted on a printing apparatus and has a CPU separate from the control module of the printing apparatus, and receives a print request from a client. In a print control system that receives and controls the order, a receiving unit that receives a print request from a client, a management unit that manages registration of a print job according to the print request, and a request reception that receives a request request from the client A means for replying to the client if the request cannot be processed when receiving the request, and a means for calculating the number of connected clients when the request cannot be processed. Means for calculating the retry time from the number of clients having In Shin means, characterized by having a means for transmitting a reply packet containing the retry times calculated by the retry time calculation means.

上記目的を達成するため、本発明に係る他の装置は、請求項1の印刷制御システムにおいてさらに、リクエスト処理不能状態である場合に、リクエスト処理不能である旨を通知しているクライアント数を記憶する記憶手段と、前記クライアント数を、前記リトライ時間に乗算した値を含む返信パケットを送信する手段とを有することを特徴とする。   In order to achieve the above object, another device according to the present invention further stores, in the print control system according to claim 1, the number of clients notifying that request processing is not possible when the request processing is impossible. Storage means for transmitting, and means for transmitting a reply packet including a value obtained by multiplying the retry time by the number of clients.

本発明によれば、クライアントからの要求を処理しながらも、処理能力の上限を超えることなく印刷要求の管理を行うことのできる印刷装置を提供することができる。   According to the present invention, it is possible to provide a printing apparatus capable of managing a print request without exceeding the upper limit of processing capacity while processing a request from a client.

以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。   Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the drawings. However, the constituent elements described in this embodiment are merely examples, and are not intended to limit the scope of the present invention only to them.

(第1実施形態)
<システム構成>
図1は、本発明の第1実施形態に係る印刷システムの全体構成を示すブロック図である。本印刷システムは、情報処理装置としてのクライアントコンピュータ101〜103と、印刷装置としてのネットワークプリンタ104、105とを含み、これらが互いに接続されていることにより、全体として印刷システムを構成している。
(First embodiment)
<System configuration>
FIG. 1 is a block diagram showing the overall configuration of a printing system according to the first embodiment of the present invention. This printing system includes client computers 101 to 103 as information processing apparatuses and network printers 104 and 105 as printing apparatuses, and these are connected to each other to constitute a printing system as a whole.

クライアントコンピュータ101〜103には、印刷制御プログラムが実行可能に格納されており、本印刷システムに含まれるネットワークプリンタ104、105を管理する機能のほか、ネットワークで使用されるファイルを蓄積したり、ネットワークの使用状態を監視したりする機能を有する。具体的には、クライアントコンピュータ101〜103は、自身により印刷ジョブを作成し、ネットワークプリンタ104、105のスケジューラにスケジュール要求を発行する機能、ネットワークプリンタ104、105のスケジューラからの指示により、印刷データの転送を開始する機能を有する。   The client computers 101 to 103 store a print control program so as to be executable. In addition to managing the network printers 104 and 105 included in the printing system, the client computers 101 to 103 accumulate files used in the network, It has a function to monitor the usage state of the. Specifically, the client computers 101 to 103 create a print job by themselves, issue a schedule request to the scheduler of the network printers 104 and 105, and print data in accordance with an instruction from the scheduler of the network printers 104 and 105. It has a function to start transfer.

ネットワークプリンタ104、105は、クライアントコンピュータ101〜103から、印刷データを含む印刷ジョブを受信し、受信した印刷ジョブを解析して印刷する物理的な装置としてのプリントデバイスである。ネットワークプリンタ104、105としては、電子写真方式を採用したレーザービームプリンタやインクジェット方式を採用したインクジェットプリンタや熱転写方式を利用したプリンタ等、あらゆる方式の印刷装置を採用することができる。   The network printers 104 and 105 are print devices as physical devices that receive print jobs including print data from the client computers 101 to 103, analyze the received print jobs, and print. As the network printers 104 and 105, any type of printing apparatus such as a laser beam printer employing an electrophotographic system, an inkjet printer employing an inkjet system, or a printer utilizing a thermal transfer system can be employed.

また、ネットワークプリンタ104、105は、複数のクライアントコンピュータ101〜103からの印刷要求を受け付け、受け付けた印刷要求の順序を決定し、印刷指示を発行する機能、ネットワークプリンタ104、105に転送された印刷ジョブ、ネットワークプリンタ104、105の状態を監視し、印刷の終了やプリンタ状態をクライアントコンピュータ101〜103に通知する機能を有する。   The network printers 104 and 105 accept print requests from a plurality of client computers 101 to 103, determine the order of the accepted print requests, and issue a print instruction. Print transferred to the network printers 104 and 105 It has a function of monitoring the status of jobs and network printers 104 and 105 and notifying the client computers 101 to 103 of the end of printing and printer status.

なお、本印刷システムに含まれる装置間の通信は、イーサネット(登録商標)ケーブルなどを利用した有線通信でもよいし、電波や光などを利用した無線通信でもよい。   Note that the communication between apparatuses included in the printing system may be wired communication using an Ethernet (registered trademark) cable or the like, or wireless communication using radio waves or light.

<クライアントコンピュータ101〜103の内部構成>
図2は、図1に示したクライアントコンピュータ101〜103のハードウェア構成を説明するブロック図である。
<Internal configuration of client computers 101-103>
FIG. 2 is a block diagram illustrating a hardware configuration of the client computers 101 to 103 illustrated in FIG.

図2において、CPU200は、HD(ハードディスク)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、オペレーションシステムや印刷制御プログラム等を読出して実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納するように制御を行うための制御手段である。   In FIG. 2, a CPU 200 reads and executes an application program, a printer driver program, an operation system, a print control program, and the like stored in an HD (hard disk) 205, and stores information, files, and the like necessary for executing the program in a RAM 202. It is a control means for performing control so as to store temporarily.

ROM201は、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する記憶手段である。RAM202は、CPU200の主メモリやワークエリア等として機能する一時記憶手段である。   The ROM 201 is a storage unit that stores programs such as a basic I / O program, various data such as font data and template data used for document processing. The RAM 202 is temporary storage means that functions as a main memory or work area of the CPU 200.

FD(フロッピー(登録商標)ディスク)ドライブ203は、後述する図5に示すように記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードするための記憶媒体読み込み手段である。なお、クライアントコンピュータ101〜103は、FDドライブ203に代えて、或いはFDドライブ203と共に、他の記憶媒体読込手段を備えてもよい。他の記憶媒体としては、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、コンピュータが読み取り可能なあらゆる記憶媒体が挙げられる。   The FD (floppy (registered trademark) disk) drive 203 is a storage medium reading means for loading a program or the like stored in the FD 204 as a storage medium into the computer system as shown in FIG. The client computers 101 to 103 may include other storage medium reading means instead of the FD drive 203 or together with the FD drive 203. Examples of the other storage medium include any computer-readable storage medium such as a CD-ROM, CD-R, CD-RW, PC card, DVD, IC memory card, MO, and memory stick.

HD205は、大容量メモリとして機能する外部記憶手段であり、アプリケーションプログラム、プリンタドライバプログラム、オペレーションシステム、印刷制御プログラム、及び関係プログラム等を格納している。なお、クライアントコンピュータ101〜103ではスプーラがここに確保される。キーボード206は、ユーザが制御コマンド等を入力指示するための指示入力手段である。ディスプレイ207は、キーボード206から入力したコマンドや、ネットワークプリンタ104、105の状態等を表示する表示手段である。   The HD 205 is an external storage unit that functions as a large-capacity memory, and stores an application program, a printer driver program, an operation system, a print control program, a related program, and the like. In the client computers 101 to 103, a spooler is secured here. The keyboard 206 is an instruction input unit for a user to input an instruction for a control command or the like. A display 207 is a display unit that displays commands input from the keyboard 206, the status of the network printers 104 and 105, and the like.

尚、実際にはクライアントコンピュータ101〜103上で稼動するオペレーティングシステムを介して表示手段に表示指示がなされ、このオペレーティングシステムに本印刷処理プログラムによりリソースファイルの表示指示が行われる。   In practice, a display instruction is given to the display means via an operating system running on the client computers 101 to 103, and a resource file display instruction is given to this operating system by the print processing program.

208はシステムバスであり、クライアントコンピュータ101〜103内のデータの流れを司るものである。またインタフェース209は、入出力手段であり、クライアントコンピュータ101〜103は、インタフェース209を介してネットワーク上の他の装置とのデータのやり取りを行う。   A system bus 208 controls the data flow in the client computers 101 to 103. The interface 209 is input / output means, and the client computers 101 to 103 exchange data with other devices on the network via the interface 209.

<メモリマップ等の説明>
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、印刷制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
<Explanation of memory map>
FIG. 3 is a diagram illustrating an example of a memory map of the RAM 202 illustrated in FIG. 2, and is a memory map in a state where the print control program is loaded into the RAM 202 and can be executed.

印刷制御プログラム及び関係データは、予めFD204からHD205にインストールされて、HD205からRAM202にロードするようにしてもよいしFD204から直接RAM202にロードして実行させてもよい。さらに、印刷制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。   The print control program and the related data may be installed in advance from the FD 204 to the HD 205 and loaded from the HD 205 into the RAM 202, or may be directly loaded from the FD 204 into the RAM 202 and executed. Furthermore, it is also possible to store the print control program in the ROM 201, configure it as a part of the memory map, and execute it directly by the CPU 200. In addition, software that realizes the same function as each of the above devices can be used as an alternative to a hardware device.

印刷制御プログラムは、クライアントコンピュータ101〜103においては、印刷データを転送したり、印刷ジョブの印刷先の変更を指示したり、印刷順序を変更したりする指示をするための制御を行う。   The print control program controls the client computers 101 to 103 to instruct to transfer print data, instruct to change the print destination of the print job, or to change the print order.

301は基本I/Oプログラムを記憶するための領域である。基本I/Oプログラムは、装置)の電源がONされたときに、HD205からオペレーションシステムがRAM202に読み込まれ、オペレーションシステムの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムである。   Reference numeral 301 denotes an area for storing a basic I / O program. The basic I / O program is a program having an IPL (Initial Program Loading) function for starting the operation of the operation system by reading the operation system from the HD 205 into the RAM 202 when the power of the apparatus is turned on. It is.

302はオペレーティングシステムを記憶する領域であり、303は印刷制御プログラムを記憶する領域である。304は、関係データを記憶する領域である。305はワークエリアで、CPU200が各種のプログラムを実行するための領域である。   An area 302 stores an operating system, and an area 303 stores a print control program. Reference numeral 304 denotes an area for storing related data. A work area 305 is an area for the CPU 200 to execute various programs.

図4は、図2に示したFD204のメモリマップの一例を示す図である。図4において、400はFD204のデータ内容であり、データの情報を示すボリューム情報401と、ディレクトリ情報402と、印刷制御プログラム403と、その関係データ404を含んでいる。   FIG. 4 is a diagram illustrating an example of a memory map of the FD 204 illustrated in FIG. In FIG. 4, reference numeral 400 denotes data contents of the FD 204, which includes volume information 401 indicating data information, directory information 402, a print control program 403, and related data 404.

図5は、プリンタ104、105のハードウェア構成を説明するブロック図である。プリンタ104、105は、独立した制御系を有するネットワークプリンタサーバ520とプリンタコントローラ519とを含む。   FIG. 5 is a block diagram illustrating the hardware configuration of the printers 104 and 105. The printers 104 and 105 include a network printer server 520 and a printer controller 519 having independent control systems.

ネットワークプリントサーバ520において、501はネットワークプリントサーバ用CPUである。ネットワークプリントサーバ520は、ローカルエリアネットワーク(LAN)512に接続されたホストコンピュータ等の複数の外部装置(不図示)と、所定のネットワーク通信プロトコルを用いて通信可能である。そのために、CPU501は、システムバス504に接続されるネットワークコントローラ(LANC)505を介して外部装置から送られる印刷データやプリンタ制御命令等の各種データ送受信要求を、書き換え可能なFlashROM503に記憶された制御プログラムに基づいて、統括的に制御する。また、CPU501は、拡張インタフェースコントローラ(EXPC)507を介して接続されるプリンタコントローラ519に対しても、適切なデータ転送制御を行なう。   In the network print server 520, reference numeral 501 denotes a network print server CPU. The network print server 520 can communicate with a plurality of external devices (not shown) such as a host computer connected to a local area network (LAN) 512 using a predetermined network communication protocol. For this purpose, the CPU 501 controls various data transmission / reception requests such as print data and printer control commands sent from an external device via a network controller (LANC) 505 connected to the system bus 504 and stored in a rewritable Flash ROM 503. Based on the program, control it centrally. The CPU 501 also performs appropriate data transfer control for the printer controller 519 connected via the expansion interface controller (EXPC) 507.

RAM502はCPU501の主メモリ、ワークエリア等の一時記憶領域として用いられる。LED506はネットワークプリントサーバの動作状態を示す表示部として用いられており、例えばネットワークコントローラ505とローカルエリアネットワーク512の電気的な接続状態(LINK)やネットワーク通信モード(10Baseや100Base、全二重、半二重)等の各種動作状態をLEDの点滅パターンや色で示すこと可能となっている。   A RAM 502 is used as a temporary storage area such as a main memory and work area of the CPU 501. The LED 506 is used as a display unit that indicates the operation state of the network print server. For example, the electrical connection state (LINK) between the network controller 505 and the local area network 512 and the network communication mode (10Base or 100Base, full duplex, half duplex) Various operating states such as double) can be indicated by the blinking pattern and color of the LED.

ネットワークプリントサーバ520は、ネットワーク接続装置としてのネットワークカードモジュールであって、拡張インタフェース517においてプリンタコントローラ519と分離可能になっている。つまり、ネットワークプリントサーバ520は、プリンタ104、105に対して着脱可能であり、同じ構成を持つ別のプリンタにネットワークプリントサーバ520を装着することも可能である。   The network print server 520 is a network card module as a network connection device, and can be separated from the printer controller 519 through an expansion interface 517. That is, the network print server 520 can be attached to and detached from the printers 104 and 105, and the network print server 520 can be attached to another printer having the same configuration.

プリンタコントローラ519において、508はプリンタコントローラ用CPUである。CPU508は、ROM509に記憶された制御プログラム等あるいはディスクコントローラ(DKC515)を介して接続された外部メモリ510に記憶された制御プログラムやリソースデータ(資源情報)等に基づいて動作する。CPU508は、システムバス511に接続される各種デバイスとのアクセスを統括的に制御する。ラスタコントローラ512は、ネットワークプリントサーバ520から受信した画像データに基づいて、印刷データを生成し、プリントエンジン516に対して印刷画像信号を出力する。   In the printer controller 519, reference numeral 508 denotes a printer controller CPU. The CPU 508 operates based on a control program or the like stored in the ROM 509 or a control program or resource data (resource information) stored in the external memory 510 connected via the disk controller (DKC 515). The CPU 508 comprehensively controls access to various devices connected to the system bus 511. The raster controller 512 generates print data based on the image data received from the network print server 520 and outputs a print image signal to the print engine 516.

514はCPU508の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。   Reference numeral 514 denotes a RAM that functions as a main memory, work area, and the like for the CPU 508. The RAM 514 can be expanded by an optional RAM connected to an expansion port (not shown).

518は操作パネル(操作部)でネットワークプリンタ104、105の動作モード等の設定や印刷データの取り消し等の操作を行なうためのボタンおよびネットワークプリンタ104、105の動作状態を示す液晶パネルやLED等の表示部が配されている。   Reference numeral 518 denotes an operation panel (operation unit) such as a button for setting an operation mode of the network printers 104 and 105, an operation for canceling print data, and a liquid crystal panel or LED indicating the operation state of the network printers 104 and 105. A display is arranged.

なお、プリンタエンジン516は既知の印刷技術を利用したものであれば良く、例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等を利用したものであればよい。   The printer engine 516 may be any printer that uses a known printing technique, such as an electrophotographic method (laser beam method), an inkjet method, a sublimation method (thermal transfer) method, or the like.

次に、クライアントコンピュータ101〜103のソフトウェア構成について説明する。図6は、クライアントコンピュータ101〜103におけるソフトウェア構成の一例を示す図である。それぞれの構成間の矢印は、アプリケーションから発行された描画コマンドを含む印刷ジョブが、どのように処理されるかを示したものである。また、各ブロックで示されたソフトウェア構成は、図2のCPU200によって実行され、所望の機能を実現する。   Next, the software configuration of the client computers 101 to 103 will be described. FIG. 6 is a diagram illustrating an example of a software configuration in the client computers 101 to 103. The arrows between the components indicate how a print job including a drawing command issued from an application is processed. The software configuration shown in each block is executed by the CPU 200 in FIG. 2 to realize a desired function.

通常、Microsoft Word(登録商標)などの一般的なアプリケーションプログラム601は印刷の指示を受け付けると、一連の描画コマンドを、オペレーションシステムを介して生成する。オペレーションシステムを介して生成された描画コマンドを受け取ったPDLドライバ602は、一連の描画コマンドに基づいてネットワークプリンタ104、105で解釈可能なPDLファイルを含む印刷ジョブを生成する。なお、以下の説明ではPDLドライバを例に説明を行うが、これに限定されるものではなく、例えば、BDL(Band description Language)や、圧縮ビットマップを作成するプリンタドライバ、或いは、アプリケーション及びオペレーションシステムによりプリンタドライバを介さずに印刷データを生成する形態などにも適用可能である。   In general, when a general application program 601 such as Microsoft Word (registered trademark) receives a printing instruction, it generates a series of drawing commands via the operation system. The PDL driver 602 that has received the drawing command generated via the operation system generates a print job including a PDL file that can be interpreted by the network printers 104 and 105 based on the series of drawing commands. In the following description, a PDL driver will be described as an example. However, the present invention is not limited to this. For example, a BDL (Band description Language), a printer driver that creates a compressed bitmap, or an application and an operation system Thus, the present invention can be applied to a form in which print data is generated without using a printer driver.

PDLドライバ602は、印刷ジョブをスプーラ603に渡す。ここではオペレーションシステムをウィンドウズ(登録商標)と仮定しているのでスプーラ603はウィンドウズ(登録商標)スプーラである。ただし、本発明を適用するコンピュータのオペレーションシステムはウィンドウズ(登録商標)に限定されるものではなく、描画命令を備えるものであればユニックスやリナックスなど他のオペレーションシステムも適用可能であることは言うまでもない。   The PDL driver 602 passes the print job to the spooler 603. Here, since the operation system is assumed to be Windows (registered trademark), the spooler 603 is a Windows (registered trademark) spooler. However, the operation system of the computer to which the present invention is applied is not limited to Windows (registered trademark), and it is needless to say that other operation systems such as Unix and Linux can be applied as long as they have drawing commands. .

スプーラ603は、ユーザがユーザインタフェースを介して指定したジョブ制御ポートモニタ604に印刷ジョブを渡す(矢印a)。また、プリンタドライバインタフェースを介して設定された用紙サイズ、ステープル指示等の印刷設定情報も、ジョブ制御ポートモニタ604に送信される。ジョブ制御ポートモニタ604はこれらの情報をジョブ制御プリントサービス605に送信する(矢印b)。   The spooler 603 passes the print job to the job control port monitor 604 designated by the user via the user interface (arrow a). In addition, print setting information such as a paper size and a staple instruction set via the printer driver interface is also transmitted to the job control port monitor 604. The job control port monitor 604 transmits these pieces of information to the job control print service 605 (arrow b).

ジョブ制御プリントサービス605は、転送された印刷ジョブ及びデバイスの状態を管理する機能を備える。また、ネットワークプリンタ104、105から通知されるデバイス状態やジョブの状態などの情報を管理する機能や、ネットワークプリンタ104、105に対して所定の命令をする機能も備える。これは、複数のネットワークプリンタ104、105のデバイス情報やジョブ情報を管理する機能に相当する。   The job control print service 605 has a function of managing the transferred print job and device status. In addition, a function of managing information such as a device state and a job state notified from the network printers 104 and 105 and a function of giving a predetermined command to the network printers 104 and 105 are also provided. This corresponds to a function for managing device information and job information of a plurality of network printers 104 and 105.

そして、印刷データをネットワークプリンタ104、105に送信する前に、ネットワークプリンタ104、105が持つ印刷ジョブの順序管理機能に印刷の要求を発行し、ネットワークプリンタ104、105からの印刷指示により、ネットワークプリンタ104、105に印刷データを送信する(矢印c、d、e)。   Before sending the print data to the network printers 104 and 105, a print request is issued to the print job order management function of the network printers 104 and 105. Print data is transmitted to 104 and 105 (arrows c, d, and e).

ネットワークプリンタ104、105は、印刷データの完了を確認すると印刷完了の通知をジョブ制御プリントサービス605に通知(矢印f)する。また、ネットワークプリンタ104、105の状態を通知する(矢印f)。   Upon confirming the completion of the print data, the network printers 104 and 105 notify the job control print service 605 of the completion of printing (arrow f). In addition, the status of the network printers 104 and 105 is notified (arrow f).

プリントマネージャ607は、ユーザが、ジョブ制御プリントサービス605内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインタフェースを提供するプログラムである。プリントマネージャ607は、ジョブ制御プリントサービス605のソフトウェアのインタフェース(API:Application Program Interface)を介して、ジョブ制御プリントサービス605と情報・指示をやり取りしている。   The print manager 607 is a program that provides a user interface for the user to check the state of the print job in the job control print service 605 and to operate the print job. The print manager 607 exchanges information and instructions with the job control print service 605 via a software interface (API: Application Program Interface) of the job control print service 605.

そして、主に、ジョブ制御プリントサービス605が管理するネットワークプリンタ104、105の状態情報をイベントとして取得する機能を備える。イベントの通知の種別としては、トナー残量が少なくなった警告、クライアントコンピュータ101〜103とデバイスとの通信障害、メモリ不足、排紙トレイ満載などのエラー/警告情報の通知や、エラー状態から正常状態に復帰した正常情報の通知などが想定される。ここでのジョブ制御プリントサービス605はネットワークを介して通信可能な各デバイス(印刷装置)の印刷実行中、電力制御状態、障害情報(紙ジャム)等のステータスの通知を受け付ける機能を備える。   It mainly has a function of acquiring status information of the network printers 104 and 105 managed by the job control print service 605 as an event. The type of event notification is normal from the error / warning information notification such as warning that the remaining toner amount is low, communication failure between the client computers 101 to 103 and the device, memory shortage, full discharge tray, etc. Notification of normal information that has returned to the state is assumed. The job control print service 605 has a function of receiving notification of statuses such as a power control state and failure information (paper jam) during printing of each device (printing apparatus) that can communicate via the network.

更に詳細な処理としては、プリントマネージャ609がジョブ制御プリントサービス605に対してデバイスを指定したイベントを発行し、ジョブ制御プリントサービス605は発行されたイベントに基づくデバイスのステータスを認識して、監視に基づく結果をプリントマネージャ609に通知する。   More specifically, the print manager 609 issues an event specifying a device to the job control print service 605, and the job control print service 605 recognizes the device status based on the issued event and performs monitoring. Based on the result, the print manager 609 is notified.

<印刷ジョブの流れ>
次に、図7を用いてアプリケーション601からネットワークプリンタ104、105までの印刷ジョブの流れについて説明する。ここで、図6と同じソフトウェア構成について同じ参照番号を付与しており、その機能については詳説しない。
<Print job flow>
Next, the flow of a print job from the application 601 to the network printers 104 and 105 will be described with reference to FIG. Here, the same reference numerals are assigned to the same software configurations as those in FIG. 6, and the functions thereof will not be described in detail.

図7に示すように、概念的には、PDLドライバ602、スプーラ603、ジョブ制御ポートモニタ604は、ネットワークプリンタ104、105ごとに用意されている。本実施形態ではオペレーションシステムがウィンドウズ(登録商標)であるから、これらをまとめてウィンドウズ(登録商標)プリントシステム700と称する。   As shown in FIG. 7, conceptually, a PDL driver 602, a spooler 603, and a job control port monitor 604 are prepared for each of the network printers 104 and 105. In this embodiment, since the operation system is Windows (registered trademark), these are collectively referred to as a Windows (registered trademark) print system 700.

ジョブ制御プリントサービス605には、ネットワークプリンタ104、105に対応する数のプリントキュー701a、701b及び出力ポート702a、702bが含まれている。   The job control print service 605 includes a number of print queues 701 a and 701 b and output ports 702 a and 702 b corresponding to the network printers 104 and 105.

印刷を行なう場合、アプリケーション601はプリンタを指定して印刷指示を発行する。この印刷指示に基づいてPDLドライバ602によって生成された印刷ジョブがジョブ制御ポートモニタ604からジョブ制御プリントサービス605に渡されると、その印刷ジョブ情報は、まずプリントキュー701a、bに保持され、出力ポート702aに印刷ジョブ受け付け指示を出す。出力ポート702a、bは、印刷するジョブを受け付けると、出力ポートに設定されたIPアドレスに該当する、ネットワークプリンタ104、105のスケジューラに対してスケジュールの要求を発行する。ネットワークプリンタ104、105のスケジューラは、複数のクライアントコンピュータ101〜103から受け付けたジョブのスケジューリング処理を行い、出力ポート702a、bに対して印刷指示を発行する。印刷指示を受け付けた出力ポート702はネットワークプリンタ104、105に印刷データを送信する。   When printing, the application 601 designates a printer and issues a print instruction. When a print job generated by the PDL driver 602 based on this print instruction is transferred from the job control port monitor 604 to the job control print service 605, the print job information is first held in the print queues 701a and 701b, and the output port. A print job reception instruction is issued to 702a. Upon receiving a job to be printed, the output ports 702a and 702b issue a schedule request to the scheduler of the network printer 104 or 105 corresponding to the IP address set for the output port. The schedulers of the network printers 104 and 105 perform scheduling processing for jobs received from the plurality of client computers 101 to 103, and issue print instructions to the output ports 702a and 702b. The output port 702 that has received the print instruction transmits print data to the network printers 104 and 105.

図8は、ネットワークプリントサーバ520およびプリンタコントローラ519の各記憶デバイスに記憶された制御プログラムの構成を説明するブロック図である。なお各制御プログラムは、ネットワークプリントサーバ520およびプリンタコントローラ519の各CPU501、508によって解析され処理される。   FIG. 8 is a block diagram illustrating the configuration of the control program stored in each storage device of the network print server 520 and the printer controller 519. Each control program is analyzed and processed by each of the CPUs 501 and 508 of the network print server 520 and the printer controller 519.

801はネットワークプリントサーバ520の基本的なデータの入出力制御を統括するオペレーティングシステムである。オペレーティングシステム801は、プログラム/データ記憶部509との入出力制御を行なうファイルシステム805と、プリンタコントローラ519と拡張インタフェース517を介して通信制御を行なう拡張インタフェースドライバ807と、LAN512を介して外部装置と通信を行なうネットワークインタフェースドライバ806とを内包している。   Reference numeral 801 denotes an operating system that controls basic data input / output control of the network print server 520. The operating system 801 includes a file system 805 that performs input / output control with the program / data storage unit 509, an expansion interface driver 807 that performs communication control via the printer controller 519 and the expansion interface 517, and an external device via the LAN 512. A network interface driver 806 that performs communication is included.

802はアプリケーションプログラムインタフェース(API)であり、ネットワークプリントサーバ520で動作するユーザアプリケーション803やネットワークプリンタ104、105やユーザアプリケーションの登録・管理を行う管理アプリケーション等のアプリケーションプログラムに対してオペレーティングシステムが備える各種機能を提供する。アプリケーションプログラムインタフェース802は、印刷データの送受信機能を提供するデータ転送API、ビットマップ画像や表示メッセージ等のリソースデータの入出力制御を行なうリソース制御API、ネットワークプリンタ104、105の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御API、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御API、ネットワークプリントサーバ520の再起動や設定値の初期化や設定、およびアプリケーションプログラムの起動、登録、削除を行なうプリントサーバ制御APIを備える。   Reference numeral 802 denotes an application program interface (API), which is provided in the operating system for application programs such as a user application 803 operating on the network print server 520, the network printers 104 and 105, and a management application for registering and managing user applications. Provide functionality. The application program interface 802 includes a data transfer API that provides a print data transmission / reception function, a resource control API that controls input / output of resource data such as bitmap images and display messages, restart of the network printers 104 and 105, and setting value setting. Printer control API for controlling initialization, settings, etc., job control API for controlling print job cancellation and reprint instructions, restarting the network print server 520, initializing and setting of setting values, and starting of application programs A print server control API for performing registration and deletion.

812はプリンタコントローラ519の各種処理制御を統括するオペレーティングシステムであり、内部にプリントエンジンとの通信制御を行なうプリントエンジン制御部814およびネットワークプリントサーバ520から参照されるビットマップ画像やエラーメッセージ等の機種依存リソースおよびネットワークプリントサーバ上で動作する機種依存アプリケーションプログラム等を記憶する機種依存リソース/プログラム記憶部との入出力制御を行なうファイルシステム815を内包している。   Reference numeral 812 denotes an operating system that supervises various processing controls of the printer controller 519. The print engine control unit 814 that controls communication with the print engine and models such as bitmap images and error messages that are referred to from the network print server 520 It includes a file system 815 that performs input / output control with a dependent resource and a model-dependent resource / program storage unit that stores a model-dependent application program that runs on the network print server.

813は拡張インタフェース制御部であり、拡張インタフェース517を介してネットワークプリントサーバ520との通信制御を行なう。さらに拡張インタフェース制御部は、制御種別毎に印刷データの入出力を制御するデータ転送論理インタフェース、機種依存リソース/プログラム記憶部509に記憶された各種データの入出力を制御するリソース制御論理インタフェース、ネットワークプリンタ104、105の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御論理インタフェース、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御論理インタフェースを備えており、各論理インタフェースを介してネットワークプリントサーバ520から要求された命令をオペレーティングシステム812に対して転送し、その処理結果をネットワークプリントサーバ520に対して返信する。   Reference numeral 813 denotes an extension interface control unit that controls communication with the network print server 520 via the extension interface 517. Further, the extended interface control unit includes a data transfer logical interface for controlling input / output of print data for each control type, a resource control logical interface for controlling input / output of various data stored in the model-dependent resource / program storage unit 509, a network A printer control logical interface that controls the restart of the printers 104 and 105, initialization of setting values, settings, and the like, and a job control logical interface that controls cancellation of a print job, reprint instruction, and the like are provided. The command requested from the network print server 520 is transferred to the operating system 812, and the processing result is returned to the network print server 520.

811は、ネットワークインタフェースドライバ806がLAN512を介してクライアントコンピュータ101〜103からの通知を受け付けると受信の通知を受け付けるネットワーク制御部であり、どのクライアントコンピュータから通信があったかを判断することや、通信の制御を行うことができるモジュールである。   A network control unit 811 receives a notification of reception when the network interface driver 806 receives a notification from the client computers 101 to 103 via the LAN 512. The network control unit 811 determines which client computer has communicated, and controls communication. It is a module that can perform.

810は、クライアントコンピュータ101〜103が送信する印刷データを受け付けるプロトコルを制御するモジュールであり、受け付けた印刷データをプリンタコントローラ519に渡すことができる。また、アプリケーション803はプリントコントローラ519のプログラム記憶部816またはネットワークプリントサーバ520のプログラム記憶部808に格納される。ネットワークプリンタ104、105が起動するとプログラム記憶部808または、に格納されたアプリケーションが持つライセンスと、ライセンス記憶部809やプログラム記憶部816やライセンス記憶部817が持つライセンスと比較し一致しているかどうかを判断する。一致していた場合は適正アプリケーションプログラムであると判断し、アプリケーションプログラムをネットワークプリントサーバ520のRAM514にロードする。   A module 810 controls a protocol for receiving print data transmitted by the client computers 101 to 103, and can pass the received print data to the printer controller 519. The application 803 is stored in the program storage unit 816 of the print controller 519 or the program storage unit 808 of the network print server 520. When the network printers 104 and 105 are activated, the license stored in the program storage unit 808 or in the application stored in the application is compared with the licenses stored in the license storage unit 809, the program storage unit 816, and the license storage unit 817. to decide. If they match, it is determined that the application program is appropriate, and the application program is loaded into the RAM 514 of the network print server 520.

次に、ネットワークプリントサーバ520が実行するアプリケーションであるデバイススケジューラ900のソフトウェア構成について説明する。   Next, a software configuration of the device scheduler 900 that is an application executed by the network print server 520 will be described.

901は、印刷するクライアントコンピュータ101〜103の接続状況や、クライアントコンピュータ101〜103に通知すべき情報を管理する通信接続管理部であり、接続しているクライアント情報をクライアント管理キューで管理する。通信接続管理部901は、プログラムアプリケーションインターフェース802のデータ転送API、ネットワークインタフェースドライバ806を経由してクライアントコンピュータ101〜103と通信を行う。   A communication connection management unit 901 manages the connection status of the client computers 101 to 103 to be printed and information to be notified to the client computers 101 to 103, and manages the connected client information in the client management queue. The communication connection management unit 901 communicates with the client computers 101 to 103 via the data transfer API of the program application interface 802 and the network interface driver 806.

902は、クライアントコンピュータ101〜103から受け付けた印刷ジョブのスケジューリングを行うスケジュール管理部であり、ジョブ管理部903、デバイス管理部904を持つ。   A schedule management unit 902 performs scheduling of print jobs received from the client computers 101 to 103, and includes a job management unit 903 and a device management unit 904.

903は、クライアントコンピュータ101〜103が発行したスケジュール要求や、クライアントコンピュータ101〜103が印刷したジョブを管理するジョブ管理部である。   A job management unit 903 manages schedule requests issued by the client computers 101 to 103 and jobs printed by the client computers 101 to 103.

904は、プリンタコントローラ519が持つプリンタの状態や受け付けた印刷ジョブの状態をイベントハンドラ905経由で受け付けるデバイス管理部であり、プリンタコントローラ519から受け付けたイベントを通信接続管理部901やジョブ管理部903に通知する。   A device management unit 904 receives the printer status of the printer controller 519 and the status of the received print job via the event handler 905. The event received from the printer controller 519 is sent to the communication connection management unit 901 and the job management unit 903. Notice.

図10は、通信接続管理部901が管理する情報を示す図である。   FIG. 10 is a diagram illustrating information managed by the communication connection management unit 901.

1002は、接続するクライアントコンピュータ毎に通信接続管理部901が割り振ったクライアントID、接続するクライアントコンピュータ101〜103のIPアドレス、接続するクライアントコンピュータ101〜103が登録したイベントの種類などの情報を持つクライアント情報である。イベントの種類とは、プリンタコントローラ519が発行するデバイス状態のイベントやジョブ状態のイベントの種類を表す。   Reference numeral 1002 denotes a client having information such as the client ID assigned by the communication connection management unit 901 for each connected client computer, the IP address of the connected client computers 101 to 103, and the type of event registered by the connected client computers 101 to 103. Information. The event type represents the type of device status event or job status event issued by the printer controller 519.

1001は、接続したクライアントコンピュータ101〜103のクライアント情報をキューの形式で保持するクライアント管理キューである。クライアントコンピュータ101〜103とのセッションが開始されると、該当するクライアントコンピュータ101〜103の情報が本管理キューに登録され、切断すると該当するクライアント情報が削除されるようになっている。   A client management queue 1001 holds client information of the connected client computers 101 to 103 in a queue format. When a session with the client computers 101 to 103 is started, the information of the corresponding client computers 101 to 103 is registered in this management queue, and when the session is disconnected, the corresponding client information is deleted.

図11は、クライアントコンピュータ101〜103が発行したスケジュール要求に付加するジョブ情報と、複数発生するジョブ情報を管理するジョブ管理キューを示す図である。これらの情報はジョブ管理部903において管理されている。   FIG. 11 is a diagram showing job information added to a schedule request issued by the client computers 101 to 103 and a job management queue for managing a plurality of generated job information. These pieces of information are managed by the job management unit 903.

1102は、クライアントコンピュータ101〜103が印刷を開始するために発行するスケジュール要求に付加される印刷ジョブの情報である。このジョブ情報1102は、印刷ジョブのドキュメント名、ジョブ管理部903が発行したジョブID、クライアントコンピュータ101〜103で印刷を開始したユーザ名、ジョブのページ数、印刷ジョブの状況を表すジョブ状態、クライアントコンピュータ101〜103が転送する印刷データに含まれるジョブデータID、印刷を指示したクライアントコンピュータ101〜103のIPアドレスが登録される。   Reference numeral 1102 denotes print job information added to a schedule request issued by the client computers 101 to 103 to start printing. The job information 1102 includes the document name of the print job, the job ID issued by the job management unit 903, the user name that started printing on the client computers 101 to 103, the number of job pages, the job status indicating the status of the print job, the client The job data ID included in the print data transferred by the computers 101 to 103 and the IP addresses of the client computers 101 to 103 that instructed printing are registered.

ジョブ状態は、クライアントコンピュータ101〜103が印刷のスケジュール要求を発行してからジョブがプリンタから無くなるまでの状態を表しており、印刷待機中、スケジュールアップ状態、転送中、転送済み、印刷完了などの状態が存在する。   The job status represents a status from when the client computer 101 to 103 issues a print schedule request until the job disappears from the printer, such as waiting for printing, schedule-up status, transferring, transferred, printing completed, etc. A state exists.

ジョブデータIDは、印刷データに含まれるジョブのIDで、プリンタコントローラ519内でのジョブ状態を通知するときなど、付加させるIDである。   The job data ID is an ID of a job included in the print data, and is an ID to be added when a job status in the printer controller 519 is notified.

1101は、複数のジョブ情報1102を管理する管理キューであり、クライアントコンピュータ101〜103からのスケジュール要求を受け付けるとジョブ情報1102が管理キューに登録され、印刷ジョブが印刷終了すると、該当するプリンタ情報が削除されるようになっている。   Reference numeral 1101 denotes a management queue for managing a plurality of job information 1102. When a schedule request from the client computers 101 to 103 is received, the job information 1102 is registered in the management queue. It is to be deleted.

図12では、クライアントコンピュータ101〜103のジョブ制御プリントサービス605が、ジョブを受け付け後、ネットワークプリンタ104、105にスケジュール要求を発行するところから、プリンタで印刷が終了するところまでのやり取りについて記載する。   FIG. 12 describes the exchange from when the job control print service 605 of the client computer 101 to 103 issues a schedule request to the network printers 104 and 105 after the job is received until the printer finishes printing.

ジョブ制御プリントサービス605は、印刷データを受け付けると、デバイススケジューラ900とセッション接続を開始する。そして、クライアントコンピュータ101〜103の情報を通知する接続要求コマンド、ジョブ/デバイス状態を通知してもらうためのイベント登録、デバイススケジューラ900がスケジュール管理するジョブの情報を取得するジョブリスト取得コマンドを発行する。   When receiving the print data, the job control print service 605 starts session connection with the device scheduler 900. Then, a connection request command for notifying information of the client computers 101 to 103, an event registration for notifying the job / device state, and a job list acquisition command for acquiring information of jobs managed by the device scheduler 900 are issued. .

デバイススケジューラ900は、接続要求を受け付けると、クライアント情報をクライアント管理キュー1001に登録し、イベントの登録を受け付けると該当するクライアント情報の登録イベントに設定する。ジョブリスト要求を受け付けると、ジョブ管理キュー1101に登録されているジョブ情報のリストを送信する。   When the device scheduler 900 accepts a connection request, the device scheduler 900 registers client information in the client management queue 1001, and when accepting event registration, the device scheduler 900 sets it as a registration event of the corresponding client information. When a job list request is received, a list of job information registered in the job management queue 1101 is transmitted.

次に、クライアントコンピュータ101〜103が印刷を予約するためのスケジュール要求のコマンドを発行する。デバイススケジューラ900はスケジュール要求を受け付けると、ジョブ管理キュー1101にジョブ情報を登録する。ジョブ情報には、ドキュメント名等の情報を設定する。デバイススケジューラ900は、ネットワークプリンタ104、105が印刷データを受け付け可能になるとスケジュールアップを発行し、ジョブ制御プリントサービス605に対して印刷データの送信を開始するように促す。   Next, the client computers 101 to 103 issue a schedule request command for reserving printing. When the device scheduler 900 receives a schedule request, the device scheduler 900 registers job information in the job management queue 1101. Information such as a document name is set in the job information. The device scheduler 900 issues a schedule up when the network printers 104 and 105 can accept print data, and prompts the job control print service 605 to start sending print data.

また、スケジュールアップを発行すると、ジョブ情報1102のジョブ状態をスケジュールアップ状態に更新する。   When the schedule up is issued, the job status of the job information 1102 is updated to the schedule up status.

ジョブ制御プリントサービス605は、スケジュールアップを受け付けるとネットワークプリントサーバ520の印刷データを受け付けるプロトコルを制御するモジュール810(LPD/RAW)に対して印刷データの転送を開始し、転送が始まるとデバイススケジューラ900に対して転送開始の通知を行う。デバイススケジューラ900は、転送開始通知を受けると、ジョブ情報1102のジョブ状態を転送中の状態に更新する。   When the job control print service 605 accepts the schedule up, the job control print service 605 starts transferring the print data to the module 810 (LPD / RAW) that controls the protocol for accepting the print data of the network print server 520. When the transfer starts, the device scheduler 900 Is notified of the transfer start. Upon receiving the transfer start notification, the device scheduler 900 updates the job status of the job information 1102 to a status that is being transferred.

LPD/RAWが印刷データを受け付けるとプリンタコントローラ519にデータを転送し、プリンタコントローラ519で印刷が開始される。プリンタコントローラ519は、印刷が開始されるとジョブの状態をデバイススケジューラ900に通知する。デバイススケジューラ900は、クライアント情報の登録イベントの情報を基に、クライアントコンピュータ101〜103にジョブの印刷状態を通知する。   When the LPD / RAW receives print data, the data is transferred to the printer controller 519, and printing is started by the printer controller 519. The printer controller 519 notifies the device scheduler 900 of the job status when printing is started. The device scheduler 900 notifies the print status of the job to the client computers 101 to 103 based on the registration information of the client information.

また、ジョブ制御プリントサービス605は印刷データの転送が終了するとデバイススケジューラ900に対して、転送終了通知を送信する。デバイススケジューラ900は、転送終了通知を受けると、ジョブ情報1102のジョブ状態に転送済の状態に更新する。   The job control print service 605 transmits a transfer end notification to the device scheduler 900 when transfer of the print data ends. Upon receiving the transfer end notification, the device scheduler 900 updates the job status in the job information 1102 to the transferred status.

プリンタコントローラ519で印刷処理が終了すると、ジョブの状態として印刷完了の通知をデバイススケジューラ900に通知する。デバイススケジューラ900は、クライアント情報の登録イベントの情報を基に、クライアントコンピュータ101〜103にジョブの印刷完了の状態を通知する。   When the printer controller 519 completes the printing process, it notifies the device scheduler 900 of a print completion notification as a job status. The device scheduler 900 notifies the client computers 101 to 103 of the job printing completion status based on the registration information of the client information.

ジョブ制御プリントサービス605は、上記通知により印刷が完了したことを確認すと、デバイスからの通知が必要なくなるので、デバイススケジューラ900からのイベント通知解除要求を発行する。イベント通知解除要求を受け付けた、デバイススケジューラ900は、クライアント情報の登録イベントにイベントを通知しない旨の情報を設定する。   When the job control print service 605 confirms that the printing is completed by the notification, the device control 900 issues a request for canceling the event notification from the device scheduler 900 because the notification from the device is not necessary. Upon receiving the event notification release request, the device scheduler 900 sets information indicating that the event is not notified to the registered event of the client information.

その後、ジョブ制御プリントサービス605は、デバイススケジューラ900との接続を終了するための切断要求を発行し、セッションを終了する。   Thereafter, the job control print service 605 issues a disconnection request for ending the connection with the device scheduler 900 and ends the session.

デバイススケジューラ900は、切断要求を受け付けると、クライアント管理キュー1001から該当するクライアント情報を削除し、クライアントコンピュータ101〜103との処理を終了する。   When the device scheduler 900 receives the disconnection request, the device scheduler 900 deletes the corresponding client information from the client management queue 1001 and ends the processing with the client computers 101 to 103.

図13では、クライアントからのリクエストパケットを受信したときのデバイススケジューラの処理の流れについて説明する。ここでは、デバイススケジューラがリクエスト処理を実行可能な状態にあるかどうかによっての処理の違いについても説明する。   FIG. 13 illustrates a process flow of the device scheduler when a request packet from a client is received. Here, differences in processing depending on whether the device scheduler is in a state where request processing can be executed will also be described.

ステップS1301では、デバイススケジューラ900はクライアントコンピュータ101〜103からのリクエスト要求を受け付ける。ここでリクエスト要求とは、クライアントコンピュータからデバイススケジューラ900に送信される、スケジュール要求やキャンセル要求などすべての要求パケットのことを示す。   In step S1301, the device scheduler 900 accepts request requests from the client computers 101-103. Here, the request request indicates all request packets such as a schedule request and a cancel request transmitted from the client computer to the device scheduler 900.

ステップS1302において、デバイススケジューラ900は、リクエスト受信が可能な状態かを判定し、受信可能な状態である場合には、ステップS1303に進む。受信可能な状態でない場合には、ステップS1304に進む。   In step S1302, the device scheduler 900 determines whether the request can be received. If the request is received, the process proceeds to step S1303. If it is not in a receivable state, the process proceeds to step S1304.

ステップS1303では、ステップS1301において受け付けたスケジュール要求に対してリクエスト処理を実行し、終了する。   In step S1303, request processing is executed for the schedule request received in step S1301, and the process ends.

ステップ1302でリクエスト受信不可能状態であると判断された場合には、ステップS1304において、そのときにデバイススケジューラに接続しているクライアント数の算出を行う。さらにステップS1305においてクライアント数に対応したリトライ時間を算出する。クライアント数とリトライ間隔の対応については図22を用いて後述する。さらに、ステップS1306において、算出したリトライ間隔を含めたリクエストビジーコールバックをクライアントに対して返信し、処理を終了する。   If it is determined in step 1302 that the request cannot be received, the number of clients connected to the device scheduler at that time is calculated in step S1304. In step S1305, a retry time corresponding to the number of clients is calculated. The correspondence between the number of clients and the retry interval will be described later with reference to FIG. In step S1306, a request busy callback including the calculated retry interval is returned to the client, and the process ends.

次に、図22を用いて、デバイススケジューラが受信不可能状態である場合に、接続しているクライアント数と、リトライ間隔の対応について説明する。   Next, the correspondence between the number of connected clients and the retry interval when the device scheduler is in an unreceivable state will be described with reference to FIG.

図22では、接続しているクライアント数に対応したリトライ間隔を示している。たとえば、接続クライアント数が、1から10までの間の場合には、リトライ間隔は1.5secとなり、11から20の場合には2.0secというように対応付けられている。このように、接続されているクライアントコンピュータ数を元に、リクエストビジーになったクライアントに対してリトライ間隔を通知する。   FIG. 22 shows the retry interval corresponding to the number of connected clients. For example, when the number of connected clients is between 1 and 10, the retry interval is 1.5 seconds, and when 11 to 20, the correspondence is 2.0 seconds. Thus, based on the number of connected client computers, the retry interval is notified to the request busy client.

図14では、デバイス管理からのジョブ状態通知イベントの受け付けからジョブ制御プリントサービス605からのジョブリスト要求の受け付けに対する、ジョブ管理部903の処理を示している。   FIG. 14 illustrates processing of the job management unit 903 from reception of a job status notification event from device management to reception of a job list request from the job control print service 605.

ステップS1401では、通信接続管理部901やデバイス管理部904からの通知を受け付けると、デバイス管理部904からのジョブ状態通知であるか、ジョブリスト要求であるかを判断する。   In step S1401, when a notification from the communication connection management unit 901 or the device management unit 904 is received, it is determined whether it is a job status notification from the device management unit 904 or a job list request.

デバイス管理部904からのジョブ状態通知であれば、ステップS1402に処理を移行し、該当するジョブ情報1102のジョブ状態を更新する。更にステップS1403に処理を移行し、印刷完了の通知であるかを判断する。印刷完了でなければ処理をステップS1404に移行し、接続管理部にジョブの状態のイベントをクライアントコンピュータ101〜103に発行するように通知する。   If it is a job status notification from the device management unit 904, the process proceeds to step S1402, and the job status of the corresponding job information 1102 is updated. Further, the process proceeds to step S1403, and it is determined whether it is a print completion notification. If the printing is not completed, the process proceeds to step S1404, and the connection management unit is notified to issue an event of the job status to the client computers 101 to 103.

ステップS1403で、印刷完了の通知であれば、ステップS1405に処理を移行し、ジョブ管理キュー1101から該当するジョブを削除し、ステップS1406で、接続管理部にジョブの完了イベントをクライアントコンピュータ101〜103に発行するように通知し、処理をステップS1401に移行する。   If it is a print completion notification in step S1403, the process proceeds to step S1405 to delete the corresponding job from the job management queue 1101. In step S1406, a job completion event is sent to the connection management unit in the client computers 101 to 103. And the process proceeds to step S1401.

ステップS1409で、ジョブ制御プリントサービス605からのジョブリスト要求の受け付けると、ステップS1409において、ジョブ管理キュー1101に登録されたジョブ情報のリストを要求元のクライアントコンピュータ101〜103に送信するように接続管理部にジョブ情報リストを通知する。   When a job list request is received from the job control print service 605 in step S1409, connection management is performed so that a list of job information registered in the job management queue 1101 is transmitted to the requesting client computers 101 to 103 in step S1409. Report the job information list to the job.

図15は、プリンタコントローラ519からのデバイス状態通知及びジョブ状態通知を、イベントハンドラを経由して受け付け、ジョブ管理部903や通信接続管理部901に通知するデバイス管理部904の処理について記載する。   FIG. 15 describes a process of the device management unit 904 that receives a device status notification and a job status notification from the printer controller 519 via an event handler and notifies the job management unit 903 and the communication connection management unit 901.

ステップS1501では、デバイススケジューラ900が起動すると、デバイス管理部904がイベントハンドラを経由してプリンタコントローラ519に対して、デバイスの状態が変更した場合や、プリンタコントローラ519が処理する印刷ジョブの状態が変更したばあいにそれらの状態を通知するようにイベント登録の処理を行う。   In step S1501, when the device scheduler 900 is activated, the device management unit 904 changes the device status to the printer controller 519 via the event handler, or the status of the print job processed by the printer controller 519 changes. If so, the event registration process is performed so that the status is notified.

ステップS1502では、プリンタコントローラ519で発生したイベントをイベントハンドラ経由で受け付けるとジョブのイベントであるかデバイスのイベントであるかを判断する。ジョブのイベントであれば、ステップS1503でジョブ管理部903にジョブイベントを通知し、ステップS1502に処理を移行する。デバイスのイベントであれば、処理をステップS1504に移行し、デバイスの状態をデバイス管理部904で保持した後、ステップS1505で通信接続管理部901にデバイスイベントを通知し、処理をステップS1502に移行する。   In step S1502, when an event generated in the printer controller 519 is received via an event handler, it is determined whether the event is a job event or a device event. If the event is a job event, the job management unit 903 is notified of the job event in step S1503, and the process proceeds to step S1502. If the event is a device event, the process proceeds to step S1504, the device state is held in the device management unit 904, the device event is notified to the communication connection management unit 901 in step S1505, and the process proceeds to step S1502. .

図16は、クライアントコンピュータ101〜103からの要求や通知、デバイス管理部904からの通知、ジョブ管理部903への要求や通知を処理する通信接続管理部901の処理の流れについて記載する。   FIG. 16 describes a processing flow of the communication connection management unit 901 that processes requests and notifications from the client computers 101 to 103, notifications from the device management unit 904, and requests and notifications to the job management unit 903.

ステップS1601では、クライアントコンピュータ101〜103やデバイス管理部904、ジョブ管理部903からの通知や要求を受け付け、どの通知や要求であるかを判断する。   In step S1601, notifications and requests from the client computers 101 to 103, the device management unit 904, and the job management unit 903 are received, and which notification or request is determined.

ステップS1601において受け付けた要求やイベントがクライアントコンピュータ101〜103からの接続要求であれば、ステップS1602に移行し、クライアント管理キュー1001に通信接続管理部901で発行したクライアントIDと、要求を発したクライアントコンピュータ101〜103のIPアドレスを設定し、クライアント管理キュー1001にクライアント情報を登録する。   If the request or event received in step S1601 is a connection request from the client computers 101 to 103, the process proceeds to step S1602, and the client ID issued by the communication connection management unit 901 to the client management queue 1001 and the client that issued the request The IP addresses of the computers 101 to 103 are set, and client information is registered in the client management queue 1001.

ステップS1601において受け付けた要求やイベントがクライアントコンピュータ101〜103からのイベント登録であれば、ステップS1603に処理を移行し、該当するクライアント情報の登録イベントに通知するイベントの種類を設定する。イベントの種類には、ジョブの状態の変化を通知するジョブイベント、デバイスの状態の変化を通知するデバイスイベントがある。   If the request or event received in step S1601 is event registration from the client computers 101 to 103, the process proceeds to step S1603, and the type of event notified to the registration event of the corresponding client information is set. The event types include a job event that notifies a change in the job state and a device event that notifies a change in the device state.

ステップS1601において受け付けた要求やイベントがデバイス管理部904からのデバイスイベントやジョブ管理部903からのジョブイベントであれば、ステップS1604において、これらのイベントを通知すべきクライアントコンピュータ101〜103を認識するために、クライアント管理キュー1001に登録された全てのクライアント情報から、クライアント情報の登録イベントの設定を参照し通知すべきかどうかを判断する。通知すべきであると判断した場合には、クライアントコンピュータ101〜103のIPアドレスを保持し、ステップS1705において通知すべき全てのクライアントコンピュータ101〜103に対してイベントを送信する。   If the request or event received in step S1601 is a device event from the device management unit 904 or a job event from the job management unit 903, in step S1604, the client computers 101 to 103 to be notified of these events are recognized. Then, from all the client information registered in the client management queue 1001, it is determined whether or not to notify by referring to the setting of the registration event of the client information. If it is determined that notification should be made, the IP addresses of the client computers 101 to 103 are held, and an event is transmitted to all the client computers 101 to 103 to be notified in step S1705.

ステップS1601において受け付けた要求やイベントがクライアントコンピュータ101〜103からの切断要求であればステップS1606に処理を移行し、クライアント管理キュー1001から、該当するクライアントコンピュータ101〜103のクライアント情報を削除する。   If the request or event received in step S1601 is a disconnection request from the client computers 101 to 103, the process proceeds to step S1606, and the client information of the corresponding client computers 101 to 103 is deleted from the client management queue 1001.

図17は、ジョブ制御プリントサービス605が管理する印刷ジョブの情報と、複数のジョブの情報を管理するジョブ管理キューを表している。   FIG. 17 shows print job information managed by the job control print service 605 and a job management queue for managing information on a plurality of jobs.

1702は、自クライアントコンピュータで印刷したジョブの情報とデバイススケジューラ900にジョブイベントと登録すると通知される他のクライアントコンピュータの印刷ジョブのジョブ情報である。ジョブ情報1702には、印刷ジョブのドキュメント名、ジョブID、クライアントコンピュータで印刷を開始したユーザ名、ジョブのページ数、印刷ジョブの状況を表すジョブ状態、印刷データに含まれるジョブデータIDが含まれる。   Reference numeral 1702 denotes job information printed by the own client computer and job information of a print job of another client computer notified when a job event is registered in the device scheduler 900. The job information 1702 includes the document name of the print job, the job ID, the name of the user who started printing on the client computer, the number of pages of the job, the job status indicating the status of the print job, and the job data ID included in the print data. .

ジョブ状態は、クライアントコンピュータ101〜103が印刷を開始してからジョブがプリンタから無くなるまでの状態を表しており、スプール中、印刷待機中、スケジュールアップ状態、転送中、転送済み、印刷完了などの状態が存在する。   The job status represents the status from when the client computers 101 to 103 start printing until the job disappears from the printer, such as spooling, waiting for printing, schedule-up status, transferring, transferring completed, printing completed, etc. A state exists.

ジョブデータIDは、印刷データに含まれるジョブのIDで、デバイススケジューラ900からのジョブイベントに設定される情報である。   The job data ID is an ID of a job included in the print data, and is information set in a job event from the device scheduler 900.

1701は、複数のジョブ情報1702を管理する管理キューであり、自クライアントコンピュータで印刷したジョブのジョブ情報とデバイススケジューラ900から通知される他クライアントコンピュータのジョブ情報が登録される。   Reference numeral 1701 denotes a management queue for managing a plurality of job information 1702, in which job information of jobs printed by the own client computer and job information of other client computers notified from the device scheduler 900 are registered.

図18は、ジョブ制御プリントサービス605が管理するプリンタキュー、出力ポートの情報を表している。   FIG. 18 shows information on printer queues and output ports managed by the job control print service 605.

1801は、ジョブ制御プリンタサービスが管理するそれぞれのプリンタキューの情報を表していて、プリンタ名などの情報が含まれている。   Reference numeral 1801 denotes information on each printer queue managed by the job control printer service, and includes information such as a printer name.

1802は、ジョブ制御プリンタサービスが管理するそれぞれの出力ポートの情報を表していて、印刷するデバイスのIPアドレスなどの情報が含まれている。   Reference numeral 1802 denotes information on each output port managed by the job control printer service, and includes information such as an IP address of a device to be printed.

図19は、図12で示される印刷処理の流れで、クライアントコンピュータ101〜103のジョブ制御プリントサービス605が印刷データを受け付けてから、印刷データを転送するまでの流れを示している。   FIG. 19 shows the flow of the printing process shown in FIG. 12 from when the job control print service 605 of the client computers 101 to 103 receives the print data until the print data is transferred.

ステップS1901では、ジョブ制御ポートモニタから印刷ジョブを受け付けるか、デバイススケジューラ900から印刷データの転送の開始を指示するスケジュールアップのコマンドを受け付けるか判断する。ジョブ制御ポートモニタから印刷ジョブを受け付けるステップS1902に処理を移行し、スケジュールアップのコマンドを受け付けるとステップS1906に処理を移行する。   In step S1901, it is determined whether a print job is received from the job control port monitor or a schedule up command for instructing start of print data transfer is received from the device scheduler 900. The process proceeds to step S1902 for receiving a print job from the job control port monitor, and when a schedule up command is received, the process proceeds to step S1906.

ステップS1902では、受け付けた印刷ジョブの情報をジョブ情報1702に設定し、ジョブ管理キュー1701に登録する。   In step S1902, the received print job information is set in the job information 1702 and registered in the job management queue 1701.

ジョブ情報1702に設定する情報は、プリントシステムから取得したり、印刷データを解析して取得したりすることができる。   Information set in the job information 1702 can be acquired from the print system or can be acquired by analyzing print data.

次に、ステップS1903では、デバイススケジューラ900に接続し、接続要求コマンドを発行する。クライアントコンピュータ101〜103が接続要求を発行すると、クライアントコンピュータ101〜103の情報がデバイススケジューラ900のクライアント管理キュー1001に登録され、以降、クライアントコンピュータ101〜103とデバイススケジューラ900間で情報のやり取りを行うことができる。   Next, in step S1903, connection is made to the device scheduler 900 and a connection request command is issued. When the client computers 101 to 103 issue connection requests, the information of the client computers 101 to 103 is registered in the client management queue 1001 of the device scheduler 900, and thereafter, information is exchanged between the client computers 101 to 103 and the device scheduler 900. be able to.

ステップS1904では、デバイススケジューラ900に対して、ジョブイベント、デバイスイベントを登録する。ジョブイベントを登録すると、自クライアントコンピュータが印刷したジョブや、他のクライアントコンピュータが印刷したジョブの状態の変化の通知がデバイススケジューラ900より通知されることになる。また、デバイスイベントを登録すると、ネットワークプリンタ104、105の状態の変化を通知されるようになる。   In step S1904, a job event and a device event are registered in the device scheduler 900. When a job event is registered, the device scheduler 900 notifies a change in the status of a job printed by the own client computer or a job printed by another client computer. When a device event is registered, a change in the status of the network printers 104 and 105 is notified.

ステップS1905では、デバイススケジューラ900で管理しているジョブ管理キュー1101に登録されているジョブのリストを取得する。このジョブリストとジョブイベントにより、デバイススケジューラ900が管理するジョブの印刷状況を把握することが可能となる。   In step S1905, a list of jobs registered in the job management queue 1101 managed by the device scheduler 900 is acquired. With this job list and job event, it is possible to grasp the print status of a job managed by the device scheduler 900.

以上の処理により、印刷する準備が整い、ステップS1906において印刷するジョブの登録をデバイススケジューラ900に登録し、ステップS1901で次の指示まで待機する。   With the above processing, preparation for printing is completed, registration of a job to be printed is registered in the device scheduler 900 in step S1906, and a next instruction is waited for in step S1901.

ステップS1901において、デバイススケジューラ900から印刷データの転送指示であるスケジュールアップのコマンドを受け付けると、ステップS1907に処理を移行する。ステップS1907では、印刷指示を受けたジョブの転送を開始しする。   In step S1901, when a schedule up command, which is a print data transfer instruction, is received from the device scheduler 900, the process proceeds to step S1907. In step S1907, transfer of a job that has received a print instruction is started.

印刷データの送信が開始されるとステップS1908において、デバイススケジューラ900に転送が開始されたことを通知するために、転送開始状態を通知する。   When transmission of print data is started, a transfer start state is notified in step S1908 to notify the device scheduler 900 that transfer has started.

ステップS1909で印刷データの転送が終了するとステップS1910においてデバイススケジューラ900に転送が終了したことを通知する。   When the transfer of the print data is completed in step S1909, the device scheduler 900 is notified that the transfer has been completed in step S1910.

図20は、デバイススケジューラ900からの通知やコマンドを受け付けた場合のジョブ制御プリントサービス605の処理の流れについて説明している。   FIG. 20 illustrates a processing flow of the job control print service 605 when a notification or command from the device scheduler 900 is received.

ステップS2001では、デバイススケジューラ900からジョブイベントの通知または、ジョブリストが返送されてくるかを判断しており、ジョブイベントが来ると、ステップS2002に処理を移行し、ジョブリストが来るとステップS2008に処理を移行する。   In step S2001, it is determined whether a job event notification or a job list is returned from the device scheduler 900. When a job event comes, the process proceeds to step S2002, and when a job list comes, the process goes to step S2008. Migrate processing.

ステップS2008では、ジョブリストが返送されてくるとジョブ制御プリントサービス605が管理するジョブ管理キュー1701にジョブリストから得られたジョブ情報を設定する。   In step S2008, when the job list is returned, the job information obtained from the job list is set in the job management queue 1701 managed by the job control print service 605.

ステップS2002では、デバイススケジューラ900から通知されたジョブイベント通知の内、ジョブ完了通知であるか、ジョブ状態変更通知であるかを判断し、ジョブ状態変更通知であれば、ステップS2009において、該当するジョブ情報のジョブ状態を更新する。   In step S2002, it is determined whether the job event notification notified from the device scheduler 900 is a job completion notification or a job status change notification. If the job status notification is a job status change notification, the corresponding job is determined in step S2009. Update job status in information.

ステップS2002において、受け付けたイベント通知がジョブ完了通知であれば、ステップS2003において、該当するジョブ情報を、ジョブ管理キュー1701から削除する。   If the received event notification is a job completion notification in step S2002, the corresponding job information is deleted from the job management queue 1701 in step S2003.

ステップS2004では、ジョブ管理キュー1701に、印刷が終了していない自クライアントコンピュータのジョブが残されているかを確認し、残されていれば、まだデバイススケジューラ900とのやり取りが必要であるため、デバイススケジューラ900との接続を継続するために、ステップS2001に処理を移行する。   In step S2004, it is checked whether a job of the client computer that has not finished printing remains in the job management queue 1701, and if it remains, it is still necessary to exchange with the device scheduler 900. In order to continue the connection with the scheduler 900, the process proceeds to step S2001.

ステップS2004で、自クライアントコンピュータのジョブがなければ、ステップS2005に処理を移行し、デバイススケジューラ900との接続を終了するための処理を開始する。   If there is no job of the own client computer in step S2004, the process proceeds to step S2005, and a process for terminating the connection with the device scheduler 900 is started.

ステップS2005では、接続を開始したときにデバイススケジューラ900に登録したジョブイベント、デバイスイベントの登録解除を依頼する。デバイススケジューラ900は、この依頼によりクライアント情報のイベント登録の内容を削除する。このイベント登録の情報がなければ、デバイススケジューラ900が管理するジョブの状態が変化されてもイベントが通知されてくることはない。   In step S2005, a request is made to cancel registration of the job event and device event registered in the device scheduler 900 when connection is started. In response to this request, the device scheduler 900 deletes the event registration contents of the client information. Without this event registration information, no event is notified even if the status of the job managed by the device scheduler 900 changes.

次にステップS2006において、デバイススケジューラ900に対して切断の要求を発行する。デバイススケジューラ900が切断要求を受け付けると、クライアント管理キュー1001から該当するクライアント情報を削除する。   In step S2006, a disconnection request is issued to the device scheduler 900. When the device scheduler 900 receives the disconnection request, the corresponding client information is deleted from the client management queue 1001.

ステップS2007では、デバイススケジューラ900とのセッションを切断する処理を行い、処理をステップS2001で待機する。   In step S2007, a process for disconnecting the session with the device scheduler 900 is performed, and the process waits in step S2001.

このように、クライアントコンピュータからリクエストを受信した場合、リクエスト受信可能状態かどうかを判断し、リクエストに対してリクエストビジーを返信し、返信パケットにリトライ間隔を指定することで、クライアントからのリトライ(再送)によりリクエストが増大する悪循環を防ぐことが可能になる。   In this way, when a request is received from a client computer, it is determined whether the request can be received, a request busy is returned in response to the request, and a retry interval (retransmission) is specified by specifying a retry interval in the reply packet. ) Can prevent a vicious circle in which requests increase.

なお、本実施形態では、ネットワークカードを着脱可能なネットワークプリンタについて説明したが、本発明はこれに限定されるものではなく、ネットワークカードの機能を実装したネットワークプリンタにも適用可能である。   In the present embodiment, the network printer to which the network card can be attached and detached has been described. However, the present invention is not limited to this, and can be applied to a network printer in which the function of the network card is installed.

(第2実施形態)
次に本発明の第2実施形態について説明する。上述した第1実施形態に、さらに、リクエストビジーのレスポンスを返信するクライアント数が複数になった場合の処理について説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described. In the first embodiment described above, a process when the number of clients to which a request busy response is returned becomes plural will be described.

図21は、クライアントからのリクエストパケットを受信したときのデバイススケジューラの処理の流れについて説明する。ここでは、リクエストビジーパケットを返信しているクライアントの数が複数になった場合の処理について説明する。   FIG. 21 describes the process flow of the device scheduler when a request packet from a client is received. Here, a process when the number of clients returning a request busy packet becomes plural will be described.

ステップS2101では、デバイススケジューラ900はクライアントコンピュータ101〜103からのリクエスト要求を受け付ける。ここでリクエスト要求とは、クライアントコンピュータからデバイススケジューラ900に送信される、スケジュール要求やキャンセル要求などすべての要求パケットのことを示す。   In step S2101, the device scheduler 900 accepts request requests from the client computers 101-103. Here, the request request indicates all request packets such as a schedule request and a cancel request transmitted from the client computer to the device scheduler 900.

ステップS2102において、リクエスト受信が可能な状態かを判定し、受信可能な状態である場合には、ステップS2103に進む。受信可能な状態でない場合には、ステップS2105に進む。   In step S2102, it is determined whether the request can be received. If the request can be received, the process proceeds to step S2103. If not, the process proceeds to step S2105.

ステップS2103では、ビジーレスポンスを返信しているクライアント数を初期化(0設定)し、ステップS2104に進み、受信したリクエストの処理を実行して、処理を終了する。   In step S2103, the number of clients returning a busy response is initialized (set to 0), the process proceeds to step S2104, the received request is processed, and the process ends.

ステップS2105では、ビジーレスポンスを返信しているクライアント数を1増やし(BusyClientNum++)、ステップS2106において、そのときにデバイススケジューラに接続しているクライアント数の算出を行う。さらにステップS2107においてクライアント数に対応したリトライ時間を算出する。さらに、ステップS2108において、算出したリトライ間隔にビジーレスポンスを返信して要るクライアント数(BusyClientNum)を乗算し、ステップS2109において、ステップS2108で求めた値を含めたリクエストビジーコールバックをクライアントに対して返信し、処理を終了する。   In step S2105, the number of clients returning a busy response is incremented by 1 (BusyClientNum ++), and in step S2106, the number of clients connected to the device scheduler at that time is calculated. In step S2107, a retry time corresponding to the number of clients is calculated. In step S2108, the calculated retry interval is multiplied by the number of clients (BusyClientNum) required by returning a busy response. In step S2109, a request busy callback including the value obtained in step S2108 is sent to the client. Reply and finish the process.

このように、クライアントコンピュータからリクエストを受信した場合、リクエスト受信可能状態かどうかを判断し、リクエストに対してリクエストビジーを返信し、返信パケットにリトライ間隔を指定することで、クライアントからのリトライ(再送)によりリクエストが増大する悪循環を防ぐことが可能になる。さらには、ビジーリクエストを返信しているクライアント数に応じて、リトライ間隔を乗算することで、より状況に適したリトライ間隔を指定することが可能となる。   In this way, when a request is received from a client computer, it is determined whether the request can be received, a request busy is returned in response to the request, and a retry interval (retransmission) is specified by specifying a retry interval in the reply packet. ) Can prevent a vicious circle in which requests increase. Furthermore, it is possible to specify a retry interval more suitable for the situation by multiplying the retry interval in accordance with the number of clients returning a busy request.

本発明の実施形態としての印刷システムの全体構成を示すブロック図である。1 is a block diagram illustrating an overall configuration of a printing system as an embodiment of the present invention. クライアントコンピュータ101〜103のハードウェア構成を説明するブロック図である。It is a block diagram explaining the hardware constitutions of the client computers 101-103. 図2に示したRAM202のメモリマップの一例を示す図である。It is a figure which shows an example of the memory map of RAM202 shown in FIG. 図2に示したFD204のメモリマップの一例を示す図である。FIG. 3 is a diagram illustrating an example of a memory map of the FD 204 illustrated in FIG. 2. プリンタのハードウェア構成を説明するブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of a printer. クライアントコンピュータ101〜103の印刷システムのソフトウェア構成の例を示す図である。2 is a diagram illustrating an example of a software configuration of a printing system of client computers 101 to 103. FIG. クライアントコンピュータ101〜103の印刷時の印刷ジョブの流れを示す図である。FIG. 3 is a diagram illustrating a flow of a print job when printing by client computers 101 to 103. プリンタのソフトウェア構成の例を示す図である。2 is a diagram illustrating an example of a software configuration of a printer. FIG. プリンタのユーザアプリケーションのソフトウェア構成の例を示す図である。FIG. 3 is a diagram illustrating an example of a software configuration of a user application of a printer. デバイススケジューラ900で管理するクライアント情報とクライアント管理キューを示す図である。6 is a diagram illustrating client information and a client management queue managed by a device scheduler 900. FIG. デバイススケジューラ900で管理するジョブ情報とジョブ管理キューを示す図である。6 is a diagram illustrating job information and a job management queue managed by a device scheduler 900. FIG. ジョブ制御プリントサービスとデバイススケジューラ900、LPD/RAW、プリンタコントローラ519間の印刷シーケンスを示す図である。5 is a diagram illustrating a print sequence between a job control print service, a device scheduler 900, an LPD / RAW, and a printer controller 519. FIG. クライアントからのリクエストパケットを受信したときのデバイススケジューラの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of a device scheduler when the request packet from a client is received. ジョブ管理部903のジョブ状態通知イベントの受け付けからジョブリスト要求の受け付けに対する処理を示すフローチャートである。10 is a flowchart illustrating processing from job status notification event reception to job list request reception by a job management unit 903; プリンタコントローラ519からのデバイス状態、ジョブ状態通知を受け付けた時のデバイス管理部の処理を示すフローチャートである。6 is a flowchart illustrating processing of a device management unit when a device status and job status notification from a printer controller 519 is received. クライアントコンピュータ101〜103からの要求や通知、デバイス管理部からの通知、ジョブ管理部903への要求や通知を処理する通信接続管理部901の処理を示すフローチャートである。10 is a flowchart illustrating processing of a communication connection management unit 901 that processes requests and notifications from client computers 101 to 103, notifications from a device management unit, and requests and notifications to a job management unit 903. ジョブ制御プリントサービスが管理する印刷ジョブの情報とジョブ管理キューを表す図である。FIG. 6 is a diagram illustrating print job information and a job management queue managed by a job control print service. ジョブ制御プリントサービスが管理するプリンタキュー、出力ポートの情報を表す図である。FIG. 6 is a diagram illustrating information on printer queues and output ports managed by a job control print service. ジョブ制御プリントサービスが印刷データを受け付けてから、印刷データの転送までの流れを示すフローチャートである。6 is a flowchart illustrating a flow from reception of print data by the job control print service to transfer of the print data. デバイススケジューラ900からの通知やコマンドを受け付けた場合のジョブ制御プリントサービスの処理の流れを示すフローチャートである。6 is a flowchart showing a flow of processing of a job control print service when a notification or command from a device scheduler 900 is received. クライアントからのリクエストパケットを受信したときのデバイススケジューラの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of a device scheduler when the request packet from a client is received. 接続されているクライアントコンピュータの数とそれに対応したリトライ間隔を示す表である。It is a table | surface which shows the number of connected client computers, and the retry interval corresponding to it.

Claims (2)

印刷装置に装着可能な、前記印刷装置の制御モジュールと別個のCPUを備えるインテリジェント型ネットワークカードモジュールにあって、クライアントからの印刷要求を受信し、順番制御を行う印刷制御システムにおいて、
クライアントからの印刷要求を受信する受信手段と、
印刷要求にしたがって、印刷ジョブの登録管理を行う管理手段と、
クライアントからのリクエスト要求を受信するリクエスト受信手段と、
リクエスト受信時にリクエスト処理不能状態である場合にはその旨をクライアントに返信する返信手段と、
リクエスト処理不能状態である際に、接続されているクライアント数を算出する算出手段と、
接続されているクライアント数からリトライ時間を算出する手段と、
前記返信手段において、前記リトライ時間算出手段で算出されたリトライ時間を含む返信パケットを送信する手段と
を有することを特徴とする印刷装置および印刷制御システム。
In an intelligent network card module equipped with a CPU separate from the control module of the printing apparatus that can be mounted on the printing apparatus, in a print control system that receives a print request from a client and performs order control,
Receiving means for receiving a print request from a client;
Management means for managing the registration of print jobs in accordance with the print request;
A request receiving means for receiving a request from a client;
If the request cannot be processed at the time of receiving the request, a reply means for returning that to the client,
A calculation means for calculating the number of connected clients when the request cannot be processed;
Means for calculating the retry time from the number of connected clients;
A printing apparatus and a print control system, characterized in that the reply means includes means for transmitting a reply packet including the retry time calculated by the retry time calculation means.
請求項1の印刷制御システムにおいてさらに、リクエスト処理不能状態である場合に、リクエスト処理不能である旨を通知しているクライアント数を記憶する記憶手段と、前記クライアント数を、前記リトライ時間に乗算した値を含む返信パケットを送信する手段と
を有することを特徴とする印刷装置および印刷制御システム。
The print control system according to claim 1, further comprising: a storage unit that stores the number of clients notifying that request processing is not possible when the request processing is impossible; and the retry time is multiplied by the number of clients. A printing apparatus and a printing control system.
JP2004358305A 2004-12-10 2004-12-10 Printer, network connecting device, print control method, and print control program Withdrawn JP2006164156A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004358305A JP2006164156A (en) 2004-12-10 2004-12-10 Printer, network connecting device, print control method, and print control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004358305A JP2006164156A (en) 2004-12-10 2004-12-10 Printer, network connecting device, print control method, and print control program

Publications (1)

Publication Number Publication Date
JP2006164156A true JP2006164156A (en) 2006-06-22

Family

ID=36666078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004358305A Withdrawn JP2006164156A (en) 2004-12-10 2004-12-10 Printer, network connecting device, print control method, and print control program

Country Status (1)

Country Link
JP (1) JP2006164156A (en)

Similar Documents

Publication Publication Date Title
KR101637894B1 (en) Pull-print system, print job management method, print server, control method therefor and computer-readable medium
JP4827615B2 (en) Information processing apparatus, printing system, monitoring method, program, and storage medium
US7583400B2 (en) Print controlling method and apparatus that prevents transmission of print data from clients until a predetermined time that is scheduled based on when the client registers with the managing section
US9274736B2 (en) Information processing apparatus, output system, information processing method, and recording medium storing information processing program
JP5791390B2 (en) Printing system, print server, printing management method, and program
JP4125044B2 (en) Information processing apparatus, information processing apparatus control method, program, and storage medium
JP2011232893A (en) Print data creation server, printing apparatus, and printing system
JP3833213B2 (en) Information processing apparatus, printing system, load distribution printing method, program, and storage medium
JP2005174210A (en) Information processor, printing system, load distribution printing method, and control program
US8072628B2 (en) Printing apparatus, network device, printing control method, and printing control program capable of transmitting print image data to printing hardware prior to registration of print job
JP2008059372A (en) Printing controller and its method
JP2014172394A (en) Printer, program and printing system
JP2009151467A (en) Distribution printing system
JP2008097226A (en) Information processing device and method
JP2003316545A (en) Information processor and information processing method
JP2009037488A (en) Method for controlling print job, its print system, information processor, and printer
JP2021192190A (en) Printing system
JP2007233555A (en) Print control program, device, and method
JP2008107921A (en) Pull print server and its control method
JP2006164156A (en) Printer, network connecting device, print control method, and print control program
JP2007025970A (en) Pull print system
JP2006164155A (en) Printer, network connecting device, print control method, and print control program
JP2005329620A (en) Image forming apparatus, method for controlling image forming apparatus, program, storing medium and image forming system
JP4401640B2 (en) Printer management method, information processing apparatus, program, and storage medium
JP2007004680A (en) Printing control device, printing control method and printing control program

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080304