JP2007004225A - Printer for processing two or more print jobs - Google Patents

Printer for processing two or more print jobs Download PDF

Info

Publication number
JP2007004225A
JP2007004225A JP2005180236A JP2005180236A JP2007004225A JP 2007004225 A JP2007004225 A JP 2007004225A JP 2005180236 A JP2005180236 A JP 2005180236A JP 2005180236 A JP2005180236 A JP 2005180236A JP 2007004225 A JP2007004225 A JP 2007004225A
Authority
JP
Japan
Prior art keywords
print
print job
printer
printing
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
JP2005180236A
Other languages
Japanese (ja)
Other versions
JP4438698B2 (en
Inventor
Toshihiro Shima
敏博 島
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005180236A priority Critical patent/JP4438698B2/en
Priority to US11/445,395 priority patent/US20060274370A1/en
Publication of JP2007004225A publication Critical patent/JP2007004225A/en
Application granted granted Critical
Publication of JP4438698B2 publication Critical patent/JP4438698B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To realize smooth distributed print processing by dividing a print job into two or more packets. <P>SOLUTION: This printer PRT is provided with a TCP/IP part 10 as a communication part, a print job receiving part 50, and a printer body PRB as a print executing part. This TCP/IP part 10 performs communication using a connection type protocol. The print job receiving part 50 receives a print job through connection. The number of print jobs which can be received by a print job receiving part 50 in parallel is m (m is a natural number). The printer body PRB executes print processing in parallel for the received print job. The number of connection which is simultaneously held by the TCP/IP part 10 is set to m or less. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、複数の印刷ジョブを処理可能な印刷装置に関し、特に、分散印刷の分散先として用いられる印刷装置に関する。   The present invention relates to a printing apparatus capable of processing a plurality of print jobs, and more particularly to a printing apparatus used as a distribution destination for distributed printing.

複数の印刷装置に接続された印刷制御装置が、複数の印刷装置に印刷ジョブを分散する分散印刷システムが知られている(例えば、特許文献1)。上記技術では、印刷すべき部数を複数の印刷装置に適切に配分し、並行して印刷を行うことにより、短時間で複数部数の印刷を完了することができる。   There is known a distributed printing system in which a print control apparatus connected to a plurality of printing apparatuses distributes a print job to the plurality of printing apparatuses (for example, Patent Document 1). In the above technique, printing of a plurality of copies can be completed in a short time by appropriately distributing the number of copies to be printed to a plurality of printing apparatuses and performing printing in parallel.

特開2001−273113号公報JP 2001-273113 A 特開2001−100963号公報JP 2001-1000096 A 特開平6−214920号公報JP-A-6-214920

ところで、このような分散印刷システムにおいて、印刷ジョブを複数のパケットに分けて分散する方法がある。この分散方法では、パケットを複数の分散先プリンタに分散する処理を、パケットごとに繰り返し実行することにより、印刷ジョブを分散する。こうすれば、例えば、クライアントとしての計算機からネットワークを介して印刷ジョブを受信し、受信された印刷ジョブを複数の印刷装置に分散する場合に、印刷制御装置が備えるバッファの容量が小さくクライアントとしての計算機から全ての印刷ジョブを一度に受信することができない場合でも、印刷制御装置は、印刷ジョブを分散することができる。   By the way, in such a distributed printing system, there is a method of distributing a print job by dividing it into a plurality of packets. In this distribution method, a print job is distributed by repeatedly executing a process of distributing packets to a plurality of destination printers for each packet. In this way, for example, when a print job is received from a computer as a client via a network and the received print job is distributed to a plurality of printing devices, the buffer capacity of the print control device is small and the client Even when all print jobs cannot be received from the computer at once, the print control apparatus can distribute the print jobs.

しかしながら、上記従来技術において、上述の分散方法を用いると、分散先の印刷装置によっては円滑な分散印刷が妨げられるおそれがあった。例えば、印刷装置が、印刷ジョブを受信するためのコネクションを複数個同時に保持できる一方で、印刷ジョブは1つずつしか処理できない場合、その印刷装置は、一般的に、先に確立されたコネクションから順番に印刷ジョブを受信し、その印刷ジョブの処理が終了してから次のコネクションからの印刷ジョブを受信する。このような、印刷装置を分散先として、上述した分散方法を用いると、順番待ちの状態にあるコネクションにパケットを送信した場合に、そのパケットが受信されるまで分散処理を停止せざるを得なくなる。   However, in the above prior art, when the above-described dispersion method is used, there is a possibility that smooth dispersion printing may be hindered depending on the printing apparatus that is the distribution destination. For example, if a printing device can simultaneously hold a plurality of connections for receiving a print job, but can only process one print job at a time, the printing device is typically connected from a previously established connection. The print job is received in order, and after the processing of the print job is completed, the print job from the next connection is received. When the above-described distribution method is used with such a printing apparatus as a distribution destination, when a packet is transmitted to a connection that is in a waiting state, distribution processing must be stopped until the packet is received. .

特に、複数の印刷制御装置が共通する複数の印刷装置を分散先として、上述した分散方法により印刷ジョブを分散すると、分散処理が完全に停止してしまうおそれがあった。   In particular, when a print job is distributed by the above-described distribution method using a plurality of printing apparatuses shared by a plurality of print control apparatuses as a distribution destination, there is a possibility that the distribution processing may be completely stopped.

本発明は、上記課題を解決するためになされたものであり、円滑な分散印刷処理を実現することを目的とする。   SUMMARY An advantage of some aspects of the invention is to realize a smooth distributed printing process.

上記課題の少なくとも一部を解決するために本発明は、印刷装置を提供する。本発明に係る印刷装置は、コネクション型のプロトコルを用いる通信を行う通信部であって、前記通信のためのコネクションを保持する通信部と、前記コネクションを介して印刷ジョブを受信する印刷ジョブ受信部であって、並行して受信可能な印刷ジョブの数はm(mは自然数)である印刷ジョブ受信部と、前記受信された印刷ジョブについて、並行して印刷処理を実行する印刷実行部と、を備え、前記通信部が同時に保持するコネクションの数は、m以下に設定されることを特徴とする。   In order to solve at least a part of the above problems, the present invention provides a printing apparatus. A printing apparatus according to the present invention is a communication unit that performs communication using a connection-type protocol, and includes a communication unit that holds a connection for the communication, and a print job reception unit that receives a print job via the connection A number of print jobs that can be received in parallel is m (m is a natural number), a print execution unit that executes print processing in parallel for the received print jobs, The number of connections simultaneously held by the communication unit is set to m or less.

本発明に係る印刷装置によれば、並行して受信可能な印刷ジョブの数mを超える数のコネクションが保持されることはないので、コネクションを介して印刷ジョブを送信する機器を待機状態にすることがない。特に、分散先印刷装置として用いられる場合には、分散印刷処理を円滑に進めることができる。   According to the printing apparatus of the present invention, since the number of connections exceeding the number m of print jobs that can be received in parallel is not held, the device that transmits the print job through the connection is put in a standby state. There is nothing. In particular, when used as a distribution destination printing apparatus, the distributed printing process can proceed smoothly.

本発明に係る印刷装置は、前記印刷ジョブを複数のパケットに分割し、前記パケットを2以上の分散先印刷装置に対してそれぞれ送信するパケット分散を、前記分割されたパケットごとに繰り返し実行することによって、前記印刷ジョブを2以上の前記分散先印刷装置に対してそれぞれ送信可能な印刷制御装置と接続されると共に、前記分散先印刷装置として用いられても良い。こうすれば、このような印刷制御装置による分散印刷処理において起こり得るデッドロックを防止することができる。   The printing apparatus according to the present invention divides the print job into a plurality of packets, and repeatedly executes packet distribution for transmitting the packets to two or more distribution destination printing apparatuses for each of the divided packets. Accordingly, the print job may be connected to a print control apparatus capable of transmitting the print job to two or more distribution destination printing apparatuses, and may be used as the distribution destination printing apparatus. By so doing, it is possible to prevent a deadlock that may occur in distributed printing processing by such a printing control apparatus.

本発明に係る印刷装置において、前記印刷実行部は、前記受信された印刷ジョブを解釈して印刷要求を発行する解釈処理を実行する解釈部であって、前記m個の印刷ジョブについて前記解釈処理を並行して実行可能な解釈部と、前記発行された印刷要求に基づいて前記印刷ジョブの印刷結果を出力する印刷部と、を有しても良い。こうすれば、並行して受信された印刷ジョブを並行して解釈するので、より円滑な印刷処理を実現できる。   In the printing apparatus according to the present invention, the print execution unit is an interpretation unit that interprets the received print job and issues a print request. The interpretation unit executes the interpretation process for the m print jobs. May be provided in parallel, and a printing unit that outputs a print result of the print job based on the issued print request. In this way, since print jobs received in parallel are interpreted in parallel, a smoother printing process can be realized.

本発明に係る印刷装置において、前記印刷部は、各印刷ジョブの印刷結果を所定枚数ずつ出力することを繰り返すことによって、複数の前記印刷ジョブの印刷結果を出力しても良い。こうすれば、印刷部がm個より少ない場合であっても、複数の印刷ジョブについて並行して印刷処理を進めることができる。   In the printing apparatus according to the present invention, the printing unit may output a plurality of print job print results by repeatedly outputting a predetermined number of print results of each print job. In this way, even if there are fewer than m printing units, the printing process can be performed in parallel for a plurality of print jobs.

本発明に係る印刷装置は、さらに、前記印刷部によって出力された印刷結果を、前記印刷ジョブごとに複数の収納部に分けて収納するソータ機構を備えても良い。かかる場合、前記並行して受信可能な印刷ジョブの数mは、前記ソータ機構が有する収容部の数であっても良い。こうすれば、並行して処理された印刷ジョブの印刷結果が混じり合う不都合を避けることできる。   The printing apparatus according to the present invention may further include a sorter mechanism that stores the print result output by the printing unit in a plurality of storage units for each print job. In this case, the number m of print jobs that can be received in parallel may be the number of storage units included in the sorter mechanism. In this way, it is possible to avoid the inconvenience of mixing print results of print jobs processed in parallel.

本発明に係る印刷装置において、前記並行して受信可能な印刷ジョブの数mは、前記印刷装置の状態に応じて変化しても良い。例えば、前記並行して受信可能な印刷ジョブの数mは、前記ソータ機構が有する収容部のうち印刷結果を収容できる状態にある収容部の数であっても良い。   In the printing apparatus according to the present invention, the number m of print jobs that can be received in parallel may vary depending on the state of the printing apparatus. For example, the number m of print jobs that can be received in parallel may be the number of storage units that are capable of storing print results among the storage units of the sorter mechanism.

本発明に係る印刷装置において、前記印刷部は、m個備えられていても良い。こうすれば、受信可能な印刷ジョブごとに印刷部を使用することができるので、複数の印刷ジョブを並行して円滑に進めることができる。   In the printing apparatus according to the present invention, m printing units may be provided. In this way, since the printing unit can be used for each receivable print job, a plurality of print jobs can be smoothly advanced in parallel.

なお、本発明は、上記した印刷装置としての構成の他、その印刷方法などの方法発明としての態様で実現することも可能である。さらには、それら方法や装置を構築するためのコンピュータプログラムとしての態様や、そのようなコンピュータプログラムを記録した記録媒体としての態様や、上記コンピュータプログラムを含み搬送波内に具現化されたデータ信号など、種々の態様で実現することも可能である。   In addition to the configuration as the printing apparatus described above, the present invention can be realized as a method invention such as a printing method thereof. Further, aspects as a computer program for constructing those methods and apparatuses, aspects as a recording medium recording such a computer program, data signals embodied in a carrier wave including the computer program, etc. It can also be realized in various ways.

以下、本発明に係る印刷装置について、図面を参照しつつ、実施例に基づいて説明する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, a printing apparatus according to the invention will be described based on examples with reference to the drawings.

A.実施例:
・分散印刷システムの構成:
図1および図2を参照して、本発明の実施例における分散印刷システムの構成について説明する。図1は、本発明の実施例における分散印刷システムの概略構成を示す説明図である。図2は、実施例における分散印刷システムを構成する各機器の内部構成を示すブロック図である。
A. Example:
・ Configuration of distributed printing system:
With reference to FIGS. 1 and 2, the configuration of the distributed printing system in the embodiment of the present invention will be described. FIG. 1 is an explanatory diagram showing a schematic configuration of a distributed printing system according to an embodiment of the present invention. FIG. 2 is a block diagram illustrating an internal configuration of each device included in the distributed printing system according to the embodiment.

この分散印刷システムは、図1に示すように、クライアントとしての複数の計算機(以下、単にクライアントという。)CLa、CLbと、複数のプリンタPRT1〜PRT4を含む。クライアントCLa、CLbと、プリンタPRT1〜PRT4は、ローカルエリアネットワーク(LAN)を介して互いに接続されている。各機器間の通信は、TCP/IPプロトコルを用いて行われるため、各機器にはそれぞれIPアドレスが割り振られる。説明の便宜上、クライアントCLa、CLbにはそれぞれ「IPa」「IPb」、プリンタPRT1〜PRT4には、それぞれ「IP1」〜「IP4」なるIPアドレスが設定されているものとする。なお、厳密に言えば、これらIPアドレスは、クライアントCLa、CLb、プリンタPRT1〜PRT4自体に設定されているわけではなく、TCP/IPのネットワークから見た場合のノード(すなわち、具体的には、TCP/IP通信を行うためにネットワークに接続されているネットワークボードなど)に設定されている。   As shown in FIG. 1, the distributed printing system includes a plurality of computers as clients (hereinafter simply referred to as clients) CLa and CLb, and a plurality of printers PRT1 to PRT4. The clients CLa and CLb and the printers PRT1 to PRT4 are connected to each other via a local area network (LAN). Since communication between devices is performed using the TCP / IP protocol, each device is assigned an IP address. For convenience of explanation, it is assumed that IP addresses “IPa” and “IPb” are set for the clients CLa and CLb, and IP addresses “IP1” to “IP4” are set for the printers PRT1 to PRT4, respectively. Strictly speaking, these IP addresses are not set in the clients CLa and CLb and the printers PRT1 to PRT4 themselves, but are nodes when viewed from the TCP / IP network (that is, specifically, For example, a network board connected to a network to perform TCP / IP communication).

これらプリンタのうち、プリンタPRT1およびPRT4には、カスタムネットワークボード100がそれぞれ取り付けられている。このカスタムネットワークボード100は、クライアントCLa、CLbから受信した印刷ジョブを他のプリンタに分散して、分散印刷を実行するための分散印刷制御機能を備えており、請求項における印刷制御装置に相当する。プリンタPRT2およびPRT3には、それぞれ、標準のネットワークボード200が取り付けられている。   Among these printers, the custom network boards 100 are respectively attached to the printers PRT1 and PRT4. The custom network board 100 has a distributed print control function for distributing print jobs received from the clients CLa and CLb to other printers and executing distributed printing, and corresponds to the print control device in the claims. . A standard network board 200 is attached to each of the printers PRT2 and PRT3.

図1において、実線で示す矢印は、クライアントCLaからプリンタPRT1のカスタムネットワークボード100に印刷ジョブが送信され、プリンタPRT1のカスタムネットワークボード100からプリンタPRT1〜PRT4にその印刷ジョブが分散される様子を概念的に示している。破線で示す矢印は、クライアントCLbからプリンタPRT4のカスタムネットワークボード100に印刷ジョブが送信され、プリンタPRT4のカスタムネットワークボード100からプリンタPRT1〜PRT4にその印刷ジョブが分散される様子を概念的に示している。このように、プリンタPRT1〜PRT4は、プリンタPRT1およびプリンタPRT2のカスタムネットワークボード100のいずれからも分散印刷の分散先とされ得る。以下において、各プリンタPRT1〜PRT4を区別する必要のない場合には、符号の末尾の数字を省略しプリンタPRTともいう。また、クライアントCLa、CLbを区別する必要のない場合には、符号の小文字の英字を省略しクライアントCLともいう。   In FIG. 1, arrows indicated by solid lines conceptually indicate that a print job is transmitted from the client CLa to the custom network board 100 of the printer PRT1, and the print jobs are distributed from the custom network board 100 of the printer PRT1 to the printers PRT1 to PRT4. Is shown. Arrows indicated by broken lines conceptually show that a print job is transmitted from the client CLb to the custom network board 100 of the printer PRT4, and the print jobs are distributed from the custom network board 100 of the printer PRT4 to the printers PRT1 to PRT4. Yes. As described above, the printers PRT1 to PRT4 can be distributed to any of the custom network boards 100 of the printer PRT1 and the printer PRT2. In the following, when it is not necessary to distinguish between the printers PRT1 to PRT4, the numerals at the end of the reference numerals are omitted and are also referred to as printers PRT. In addition, when it is not necessary to distinguish between the clients CLa and CLb, the lowercase alphabetic characters are omitted, and the client CLa is also referred to as a client CL.

プリンタPRT1は、図2に示すように、プリンタ本体PRBと、上述したカスタムネットワークボード100とを備えている。プリンタ本体PRBは、中央演算装置(CPU)60と、メモリ70と、プリンタエンジン80と、ソータ85とを備えている。CPU60は、プリンタ本体PRBの全体を制御するコントローラとして機能する。メモリ70は、CPU60が制御のためのプログラムやデータを一時的に格納するためのメモリである。プリンタエンジン80は、実際に印刷を行う機構部分であり、本実施例では、静電気によってトナー粉が付着する現象を利用して印刷用紙上に画像を形成するいわゆるレーザー式のプリンタエンジンである。ソータ85は、印刷された紙(以下、印刷紙という。)を収納しておく収納部として3つの排紙ビンを備え、プリンタエンジン80から送られてきた印刷紙を各排紙ビンに選択的に収納する機構を備える。   As shown in FIG. 2, the printer PRT1 includes a printer main body PRB and the custom network board 100 described above. The printer main body PRB includes a central processing unit (CPU) 60, a memory 70, a printer engine 80, and a sorter 85. The CPU 60 functions as a controller that controls the entire printer body PRB. The memory 70 is a memory for temporarily storing a program and data for control by the CPU 60. The printer engine 80 is a mechanism portion that actually performs printing. In this embodiment, the printer engine 80 is a so-called laser type printer engine that forms an image on printing paper by utilizing a phenomenon that toner powder adheres due to static electricity. The sorter 85 includes three paper discharge bins as storage units for storing printed paper (hereinafter referred to as “printed paper”), and print paper sent from the printer engine 80 is selectively selected for each paper discharge bin. It has a mechanism for storing it.

CPU60は、メモリ70より、プリンタ本体PRBを制御するためのソフトウェアなどのプログラムを読み出して、実行することにより、様々な制御機能をソフトウエア的に実現する。なお、各機能をハードウェア的に構築しても構わない。メモリ70によって実現される機能には、印刷ジョブ解釈部90が含まれる。印刷ジョブ解釈部90は、サブ機能ブロックとして複数のサブ解釈部を備える。本実施例では、3つのサブ解釈部が備えられており、それぞれ第1解釈部91、第2解釈部92、第3解釈部93と呼ぶこととする(図2参照)。3つの解釈部はそれぞれ、印刷ジョブを解釈して画像データを生成し、生成された画像データと共に印刷要求を発行する処理(以下、解釈処理ともいう。)を行う。これらの3つの解釈部は、それぞれ独立して機能する。この結果、印刷ジョブ解釈部90は、並行して3つの解釈処理を実行することができる。プリンタエンジン80は、印刷ジョブ解釈部90から画像データと印刷要求を受信し、これらに基づいて印刷を実行する。   The CPU 60 reads various programs such as software for controlling the printer main body PRB from the memory 70 and executes them, thereby realizing various control functions in software. Each function may be constructed in hardware. The functions realized by the memory 70 include a print job interpretation unit 90. The print job interpretation unit 90 includes a plurality of sub interpretation units as sub functional blocks. In this embodiment, three sub-interpretation units are provided, which are referred to as a first interpretation unit 91, a second interpretation unit 92, and a third interpretation unit 93, respectively (see FIG. 2). Each of the three interpreters interprets the print job, generates image data, and performs processing (hereinafter also referred to as interpretation processing) for issuing a print request together with the generated image data. These three interpretation units function independently of each other. As a result, the print job interpretation unit 90 can execute three interpretation processes in parallel. The printer engine 80 receives image data and a print request from the print job interpreter 90, and executes printing based on these.

カスタムネットワークボード100は、主として、CPU20と、メモリ30とを備えている。また、この他、実際にネットワーク通信を行うための通信用インタフェースなども備えているが、説明の便宜上、省略している。   The custom network board 100 mainly includes a CPU 20 and a memory 30. In addition, although a communication interface for actually performing network communication is also provided, it is omitted for convenience of explanation.

CPU20は、メモリ30より、分散印刷やデータ通信を実行するためのソフトウェアなどのプログラムを読み出して、実行することにより、図示した各機能をソフトウェア的に実現する。なお、各機能をハードウェア的に構築しても構わない。   The CPU 20 reads out and executes programs such as software for executing distributed printing and data communication from the memory 30, thereby realizing each function illustrated in software. Each function may be constructed in hardware.

CPU20によって実現される機能ブロックには、TCP/IP部10と、分散制御部40と、印刷ジョブ受信部50が含まれる。TCP/IP部10は、TCP/IPプロトコルを解釈して、主としてネットワークを介して外部との通信を行う。TCP/IPプロトコルにおいてトランスポート層の処理を行うプロトコルとして、TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)がある。TCPは、信頼性の高いコネクション型の通信を実現するプロトコルである。一方、UDPは、高速なコネクションレス型の通信を実現するプロトコルである。TCP/IP部10は、後述する印刷ジョブの通信をTCPを用いて行うと共に、後述するSNMPによる通信をUDPを用いて行う。   The functional blocks realized by the CPU 20 include a TCP / IP unit 10, a distribution control unit 40, and a print job reception unit 50. The TCP / IP unit 10 interprets the TCP / IP protocol and performs communication with the outside mainly via the network. TCP (Transmission Control Protocol) and UDP (User Datagram Protocol) are protocols that perform transport layer processing in the TCP / IP protocol. TCP is a protocol for realizing highly reliable connection-type communication. On the other hand, UDP is a protocol that realizes high-speed connectionless communication. The TCP / IP unit 10 performs communication of a print job to be described later using TCP, and performs communication by SNMP to be described later using UDP.

分散制御部40は、分散印刷を指定した印刷ジョブ(以下、分散印刷ジョブともいう。)を受信して、分散先に印刷ジョブを分散する。分散制御部40が実行する処理については、さらに後述する。   The distribution control unit 40 receives a print job designating distributed printing (hereinafter also referred to as a distributed print job), and distributes the print job to the distribution destination. The processing executed by the distribution control unit 40 will be further described later.

印刷ジョブ受信部50は、サブ機能ブロックとして複数のサブ受信部を備える。本実施例では、3つのサブ受信部が備えられており、それぞれ第1受信部51、第2受信部52、第3受信部53と呼ぶこととする(図2参照)。3つの受信部はそれぞれ、分散印刷を指定していない通常の印刷ジョブ(以下、通常印刷ジョブという。)を受信してプリンタ本体PRBに供給する。これらの3つの受信部は、それぞれ独立して機能する。この結果、印刷ジョブ受信部50は、並行して3つの印刷ジョブを並行して受信することができる。   The print job reception unit 50 includes a plurality of sub reception units as sub functional blocks. In this embodiment, three sub-reception units are provided, which are referred to as a first reception unit 51, a second reception unit 52, and a third reception unit 53, respectively (see FIG. 2). Each of the three receiving units receives a normal print job that does not designate distributed printing (hereinafter referred to as a normal print job) and supplies it to the printer main body PRB. These three receiving units function independently of each other. As a result, the print job receiving unit 50 can receive three print jobs in parallel.

メモリ30は、上述の機能を実現するためのプログラムを格納する他、主として印刷ジョブ受信部50により受信された印刷ジョブを一時的に格納する受信バッファとして機能する。   The memory 30 functions as a reception buffer that temporarily stores a print job received by the print job receiving unit 50 in addition to storing a program for realizing the above-described functions.

プリンタPRT2は、図2に示すように、プリンタ本体PRBおよび上述したネットワークボード200を備えている。プリンタ本体PRBの構成は、上述したプリンタPRT1のプリンタ本体PRBと同一の構成を有しているので、各構成要素にプリンタPRT1のプリンタ本体PRBの構成要素と同一の符号を付しその説明を省略する。ネットワークボード200は、上述したカスタムネットワークボード100が有する機能のうち、分散制御部40を除く構成要素を有している。すなわち、ネットワークボード200は、TCP/IP部10と、印刷ジョブ受信部50と、メモリ30を有している。ネットワークボード200の各構成要素は、カスタムネットワークボード100の同名の構成要素と同様の機能や構成を有しているのでその説明を省略する。   As shown in FIG. 2, the printer PRT2 includes a printer main body PRB and the network board 200 described above. The configuration of the printer main body PRB has the same configuration as that of the printer main body PRB of the printer PRT1 described above. Therefore, the same reference numerals as those of the printer main body PRB of the printer PRT1 are assigned to the respective components, and description thereof is omitted. To do. The network board 200 has components excluding the distributed control unit 40 among the functions of the custom network board 100 described above. That is, the network board 200 includes the TCP / IP unit 10, the print job receiving unit 50, and the memory 30. Since each component of the network board 200 has the same function and configuration as the component of the same name of the custom network board 100, the description thereof is omitted.

ここで、上記説明から解るように、プリンタPRT1およびPRT4に搭載されたカスタムネットワークボード100は、プリンタPRT2およびプリンタPRT3に搭載されたネットワークボード200の備える機能を全て備えている。すなわち、ネットワークボード200の分散制御部40からみて、プリンタPRT1〜プリンタPRT4は、全て等価であり、後述する分散印刷処理において全て分散先プリンタとして指定され得る。分散制御部40は、分散制御部40自体が内蔵されているプリンタPRT1についても、他のプリンタについても区別なく扱うことができる。   Here, as understood from the above description, the custom network board 100 mounted on the printers PRT1 and PRT4 has all the functions of the network board 200 mounted on the printers PRT2 and PRT3. That is, as seen from the distribution control unit 40 of the network board 200, the printers PRT1 to PRT4 are all equivalent and can all be designated as distribution destination printers in the distributed printing process described later. The distribution control unit 40 can handle the printer PRT1 including the distribution control unit 40 itself and other printers without distinction.

クライアントCLaは、図2に示すように、アプリケーション11の他、機能ブロックとして、TCP/IP部13と印刷ジョブ送信部12とを有している。TCP/IP部13は、TCP/IPプロトコルを解釈して、主としてネットワークを介して外部との通信を行う。印刷ジョブ送信部12は、アプリケーション11の印刷要求に応じて印刷ジョブを生成し、TCP/IP部13を介して生成された印刷ジョブをプリンタPRTに送信する。なお、分散印刷を指定する分散印刷ジョブは、カスタムネットワークボード100を備えるプリンタPRT1およびPRT4にのみ送信することができ、分散印刷を指定しない通常印刷ジョブは、プリンタPRT1〜PRT4のいずれにも送信することができる。   As shown in FIG. 2, the client CLa includes a TCP / IP unit 13 and a print job transmission unit 12 as functional blocks in addition to the application 11. The TCP / IP unit 13 interprets the TCP / IP protocol and performs communication with the outside mainly via the network. The print job transmission unit 12 generates a print job in response to a print request from the application 11 and transmits the print job generated via the TCP / IP unit 13 to the printer PRT. A distributed print job that designates distributed printing can be transmitted only to the printers PRT1 and PRT4 including the custom network board 100, and a normal print job that does not designate distributed printing is transmitted to any of the printers PRT1 to PRT4. be able to.

プリンタPRT4は、上述したプリンタPRT1と同様の構成を有し、プリンタPRT3は、上述したプリンタPRT2と同様の構成を有している。クライアントCLbは、上述したクライアントCLaと同様の構成を有している。これらについては、詳しい説明を省略する。   The printer PRT4 has the same configuration as the printer PRT1 described above, and the printer PRT3 has the same configuration as the printer PRT2 described above. The client CLb has the same configuration as the client CLa described above. Detailed description of these will be omitted.

なお、以上の説明からも解るように、本実施例におけるTCP/IP部10は、請求項における通信部に、プリンタ本体PRBは、請求項における印刷実行部に、プリンタエンジン80は、請求項における印刷部に、それぞれ相当する。   As can be understood from the above description, the TCP / IP unit 10 in this embodiment is the communication unit in the claims, the printer main body PRB is the print execution unit in the claims, and the printer engine 80 is in the claims. Each corresponds to a printing section.

・分散印刷処理:
次に、図3〜図5を参照して、分散印刷処理について詳細に説明する。図3は、印刷ジョブのデータ構造を示す概念図である。図4は、分散印刷処理の処理ルーチンを示すフローチャートである。図5は、印刷ジョブが複数の印刷ジョブ受信部50に送信される通信シーケンスの一例を示す説明図である。
・ Distributed printing processing:
Next, the distributed printing process will be described in detail with reference to FIGS. FIG. 3 is a conceptual diagram showing the data structure of a print job. FIG. 4 is a flowchart showing a processing routine of distributed printing processing. FIG. 5 is an explanatory diagram illustrating an example of a communication sequence in which a print job is transmitted to a plurality of print job receiving units 50.

分散印刷処理は、カスタムネットワークボード100のCPU20が備える分散制御部40によって実行される処理である。分散制御部40は、指定された印刷部数を、分散先のプリンタに配分して印刷する。分散制御部40は、印刷部数を100部とした分散印刷ジョブを受信した場合には、例えば、印刷部数を25部とした通常印刷ジョブをプリンタPRT1〜PRT4にそれぞれ送信する。これによって、分散印刷システム全体として100部の印刷が実行される。   The distributed printing process is a process executed by the distributed control unit 40 included in the CPU 20 of the custom network board 100. The distribution control unit 40 distributes and prints the designated number of copies to the distribution destination printer. When the distribution control unit 40 receives a distributed print job with 100 copies, for example, the distribution control unit 40 transmits normal print jobs with 25 print copies to the printers PRT1 to PRT4, respectively. As a result, 100 copies are printed as the entire distributed printing system.

印刷ジョブは、TCP/IPプロトコルに従った形式の通信データとして送信される。この通信データは、図3(a)に示すように、ヘッダ400と、データ部450とに分かれている。このうち、ヘッダ400には、その通信データの送信元である機器のIPアドレス(送信元IPアドレス)と、その機器内における送信元であるソフトウェアを特定するポート番号(送信元ポート番号)と、を含む他、その通信データの送信先である機器のIPアドレス(送信先IPアドレス)と、その機器内における送信先であるソフトウェアを特定するポート番号(送信先ポート番号)とを含んでいる。送信元である機器のソフトウェアから発信された通信データは、送信先IPアドレスに従って、そのIPアドレスを有する機器に送信され、さらに、受信したその機器内では、送信先ポート番号に従って、その番号のポートで待機しているソフトウェアに渡される。データ部450は、送受信の対象となるデータが格納される部分であり、本実施例では、後述する印刷ジョブデータ500が格納される。   The print job is transmitted as communication data in a format according to the TCP / IP protocol. The communication data is divided into a header 400 and a data part 450 as shown in FIG. Among these, the header 400 includes an IP address (source IP address) of a device that is a transmission source of the communication data, a port number (source port number) that identifies software that is a transmission source in the device, The IP address of the device that is the transmission destination of the communication data (transmission destination IP address), and the port number (transmission destination port number) that identifies the software that is the transmission destination in the device. Communication data transmitted from the software of the transmission source device is transmitted to the device having the IP address in accordance with the transmission destination IP address. Further, in the received device, the port of that number is transmitted in accordance with the transmission destination port number. Passed to the waiting software. The data part 450 is a part in which data to be transmitted / received is stored, and in this embodiment, print job data 500 to be described later is stored.

印刷ジョブデータ500は、図3(b)に示すように、ジョブ制御言語部501と、ページ記述言語部502を有している。ページ記述言語部502は、印刷内容が所定のページ記述言語を用いて記述されている部分である。ページ記述言語としては、ESC/PageやPostscriptなどが用いられ得る。ジョブ制御言語部501は、印刷部数、印刷用紙サイズ、ページ記述言語部502の記述に使用されているページ記述言語の種別を始め、ページ記述言語部502に記述された印刷内容を印刷するために必要な属性が記述されている。ジョブ制御言語部501は、所定のジョブ制御言語、本実施例ではEJL(Epson Job Language)を用いて記述されている。   The print job data 500 includes a job control language part 501 and a page description language part 502 as shown in FIG. The page description language part 502 is a part in which print contents are described using a predetermined page description language. As the page description language, ESC / Page, Postscript, or the like can be used. The job control language unit 501 prints the print contents described in the page description language unit 502, including the number of copies, the print paper size, and the type of page description language used to describe the page description language unit 502. Necessary attributes are described. The job control language unit 501 is described using a predetermined job control language, which is EJL (Epson Job Language) in this embodiment.

分散印刷を行う際には、ユーザは、クライアント(例えば、クライアントCLa(図1))におけるプリンタドライバにおいて、送信先ポート番号の設定を、通常の「9100」から特定の「59100」に変更する。すなわち、本実施例では、ここでのポート番号の設定を切り換えることにより、通常の「9100」では通常印刷を、特定の「59100」では分散印刷を、それぞれ選択することになる。ポート番号「9100」で待ち受けているのは、上述した印刷ジョブ受信部50である。一方、ポート番号「59100」で待ち受けているのは、上述した分散制御部40である。   When performing distributed printing, the user changes the setting of the transmission destination port number from the normal “9100” to a specific “59100” in the printer driver in the client (for example, the client CLa (FIG. 1)). That is, in this embodiment, by switching the setting of the port number, normal printing is selected for the normal “9100” and distributed printing is selected for the specific “59100”. The print job receiving unit 50 waits for the port number “9100”. On the other hand, the above-described distributed control unit 40 is waiting at the port number “59100”.

図4を参照しながら、分散印刷処理を順を追って説明していく。カスタムネットワークボード100が搭載されたプリンタ(例えば、プリンタPRT1)が印刷ジョブを受け付ける状態にあるとき、分散制御部40は、ポート番号「59100」に印刷ジョブが着信するまで待機している(ステップS102)。   The distributed printing process will be described step by step with reference to FIG. When the printer on which the custom network board 100 is mounted (for example, the printer PRT1) is in a state of accepting a print job, the distribution control unit 40 stands by until a print job arrives at the port number “59100” (step S102). ).

クライアントCLから送信先ポート番号として「59100」を指定した印刷ジョブ(分散印刷ジョブ)を含む通信データがプリンタPRT1に着信すると(ステップS102:YES)、TCP/IP部10は、ポート番号「59100」で待機している分散制御部40に印刷ジョブを渡す。分散制御部40は、受け取った印刷ジョブの最初の部分(後述するパケットP1)を、メモリ30に一時的に格納しておく(ステップS104)。   When communication data including a print job (distributed print job) specifying “59100” as the destination port number from the client CL arrives at the printer PRT1 (step S102: YES), the TCP / IP unit 10 determines that the port number “59100”. The print job is handed over to the distribution control unit 40 that is on standby. The distribution control unit 40 temporarily stores the first portion (packet P1 described later) of the received print job in the memory 30 (step S104).

ここで、印刷ジョブデータ500の大きさは、一部あたりの印刷量に応じて大きくなるのに対し、メモリ30において、印刷ジョブデータ500の格納に用いられる記憶領域の容量は限られているので、印刷ジョブデータ500は、その記憶領域の容量より小さなデータの固まり(以下、パケットという。)に分割して取得される。図3(c)では、印刷ジョブデータ500は、各パケットP1〜P8に分けられている。上述したステップS102で印刷ジョブが着信した時点では、パケットP1のみが取得され、メモリ30に格納されている。   Here, the size of the print job data 500 increases according to the amount of printing per part, whereas the memory 30 has a limited storage area capacity for storing the print job data 500. The print job data 500 is obtained by being divided into data chunks (hereinafter referred to as packets) smaller than the capacity of the storage area. In FIG. 3C, the print job data 500 is divided into packets P1 to P8. When the print job arrives in step S <b> 102 described above, only the packet P <b> 1 is acquired and stored in the memory 30.

図4に戻って、説明を続ける。次に、分散制御部40は、分散先プリンタを選択するための処理(ステップS106〜S114)を実行する。先ず、分散制御部40は、ネットワーク上に接続された機器のIPアドレスを取得する(ステップS106)。例えば、分散制御部40は、SNMPを用いてLANに対し、ブロードキャストでLANに接続されている各機器のIPアドレスを問い合わせ、応答されたIPアドレスを取得する。あるいは、分散制御部40は、分散先指定ファイルが設定されている場合には、分散先指定ファイルを参照して、IPアドレスを取得する。分散先指定ファイルには、例えば、分散先として使用したいプリンタのIPアドレスが列挙して記載されている。このような分散先指定ファイルは、例えば、サービスマンが、プリンタPRT1を設置して初期設定する際に、そのプリンタPRT1に設定用コンピュータなどを接続して、インストールすることにより、メモリ30に格納することができる。また、LANを介してインストールするようにしてもよい。なお、このような分散先指定ファイルを用いる場合、分散先として自己のプリンタPRT1も使用したい場合には、自己プリンタPRT1のIPアドレス「IP1」も、分散先指定ファイルに記載しておく必要がある。   Returning to FIG. 4, the description will be continued. Next, the distribution control unit 40 executes processing for selecting a distribution destination printer (steps S106 to S114). First, the distribution control unit 40 acquires the IP address of a device connected on the network (step S106). For example, the distributed control unit 40 inquires about the IP address of each device connected to the LAN by broadcast to the LAN using SNMP, and acquires the responded IP address. Alternatively, when a distribution destination designation file is set, the distribution control unit 40 refers to the distribution destination designation file and acquires an IP address. In the distribution destination designation file, for example, IP addresses of printers that are to be used as distribution destinations are listed and described. Such a distribution destination designation file is stored in the memory 30 by, for example, connecting a setting computer or the like to the printer PRT1 when the serviceman installs the printer PRT1 and performs initial setting. be able to. Further, it may be installed via a LAN. When such a distribution destination designation file is used, if it is desired to use its own printer PRT1 as the distribution destination, the IP address “IP1” of the self printer PRT1 must also be described in the distribution destination designation file. .

次に、分散制御部40は、取得されたIPアドレスを割り当てられた各機器に関する情報を取得する(ステップS108)。具体的には、分散制御部40は、SNMPを用いて、マルチキャストで各機器に対して問い合わせを行い、問い合わせの応答として機種名およびステータスを取得する。   Next, the distribution control unit 40 acquires information regarding each device to which the acquired IP address is assigned (step S108). Specifically, the distribution control unit 40 uses SNMP to make an inquiry to each device by multicast, and acquires the model name and status as a response to the inquiry.

分散制御部40は、取得された機種名およびステータスに基づいて、ネットワーク上に接続された機器の中から所定の条件を満たすプリンタを検索し、検索されたプリンタを分散先プリンタとして選択する(ステップS110)。本実施例では、分散先プリンタとして、上述したプリンタPRT1〜PRT4の一部または全部が分散先プリンタとして選択されるものとする。プリンタが分散先プリンタとして選択されるための条件を、以下に示す。
1.自己プリンタ(例えば、プリンタPRT1)と同一の機種であること。
2・電源が投入されていること。
3.トナー残量が所定の閾値以上であること。
4.オンライン状態にあること。
5.印刷中でないこと(プリンタエンジン80が駆動中でないこと)。
Based on the acquired model name and status, the distribution control unit 40 searches for a printer that satisfies a predetermined condition from the devices connected to the network, and selects the searched printer as a distribution destination printer (step). S110). In this embodiment, it is assumed that some or all of the above-described printers PRT1 to PRT4 are selected as distribution destination printers. The conditions for selecting a printer as a distribution destination printer are as follows.
1. The same model as the self printer (for example, printer PRT1).
2. The power is turned on.
3. The remaining amount of toner is not less than a predetermined threshold.
4). Be online.
5. The printer is not printing (the printer engine 80 is not being driven).

自己プリンタPRT1と同一機種であることを、分散先プリンタとして選択する条件とするのは、分散印刷を行う際に、各分散先プリンタにおいて、印刷ジョブのデータ変換などをすることなく、適正な印刷を行わせるためである。この結果、各分散先プリンタでの印刷物の品質、例えば、解像度やフォントなどを統一することができる。   The condition for selecting the same printer model as the self-printer PRT1 as a destination printer is that, when performing distributed printing, each destination printer does not perform data conversion of the print job and the like. This is to make it happen. As a result, it is possible to unify the quality of printed matter, for example, the resolution and font, at each distribution destination printer.

2〜5の条件は、すぐに印刷できないプリンタを分散先プリンタとして選択することを防ぐためである。オンライン状態とは、用紙切れや紙詰まりといったエラーを起こしている状態(オフライン状態)ではない正常な状態のことを指す。   The conditions 2 to 5 are for preventing a printer that cannot be printed immediately from being selected as a distribution destination printer. The online state refers to a normal state that is not a state in which an error such as running out of paper or a paper jam has occurred (offline state).

そして、分散制御部40は、1台以上の分散先プリンタが選択されたか否かを判断する(ステップS112)。一台の分散先プリンタも選択されていない場合(ステップS112:NO)には、分散制御部40は、所定期間待機して(ステップS114)、ステップS106〜ステップS112の処理を繰り返す。   Then, the distribution control unit 40 determines whether one or more distribution destination printers have been selected (step S112). When one distribution destination printer is not selected (step S112: NO), the distribution control unit 40 waits for a predetermined period (step S114), and repeats the processing from step S106 to step S112.

分散先プリンタが一台以上選択されると(ステップS112:YES)には、分散制御部40は、選択された各分散先プリンタとの間に、分散制御部40から分散先プリンタの印刷ジョブ受信部50に印刷ジョブを送信するためのコネクションを確立する(ステップS116)。具体的には、分散制御部40は、カスタムネットワークボード100のTCP/IP部10に、分散先プリンタのTCP/IP部10との間で、コネクションの確立処理を行わせる。カスタムネットワークボード100から分散先プリンタへの第1の確立要求を示すTCPパケット(SYNパケット)と、第1の確立要求に対する受信確認と分散先プリンタからカスタムネットワークボード100への第2の確立要求とを兼ねるTCPパケット(ACK/SYNパケット)と、第2の確立要求に対する受信確認を示すTCPパケット(ACKパケット)とが、2つのTCP/IP部10間において、順次やり取りされると、コネクションが確立される。   When one or more distribution destination printers are selected (step S112: YES), the distribution control unit 40 receives a print job of the distribution destination printer from the distribution control unit 40 with each selected distribution destination printer. A connection for transmitting a print job to the unit 50 is established (step S116). Specifically, the distribution control unit 40 causes the TCP / IP unit 10 of the custom network board 100 to perform connection establishment processing with the TCP / IP unit 10 of the distribution destination printer. A TCP packet (SYN packet) indicating a first establishment request from the custom network board 100 to the distribution destination printer, a reception confirmation for the first establishment request, and a second establishment request from the distribution destination printer to the custom network board 100 When a TCP packet (ACK / SYN packet) that also serves as a packet and a TCP packet (ACK packet) indicating receipt confirmation for the second establishment request are sequentially exchanged between the two TCP / IP units 10, a connection is established. Is done.

分散制御部40は、確立された各コネクションを介して、各分散先プリンタに印刷ジョブを送信する(ステップS118)。送信される印刷ジョブのジョブ制御言語部501には、分散先ごとに配分される印刷部数が記述される。また、送信される印刷ジョブは、送信先ポート番号を「9100」として送信される。ここで、図5を参照して分散印刷処理における分散制御部40から分散先プリンタ(印刷ジョブ受信部50)への印刷ジョブの送信について、さらに説明する。図5では、プリンタPRT1の分散制御部40がクライアントCLaから印刷ジョブを受信し、2つのプリンタPRT2およびプリンタPRT3の各印刷ジョブ受信部50に対して、その印刷ジョブを送信(分散)する様子を示している。   The distribution control unit 40 transmits a print job to each distribution destination printer via each established connection (step S118). The job control language portion 501 of the print job to be transmitted describes the number of print copies distributed for each distribution destination. The print job to be transmitted is transmitted with the destination port number as “9100”. Here, the transmission of a print job from the distribution control unit 40 to the distribution destination printer (print job receiving unit 50) in the distributed printing process will be further described with reference to FIG. In FIG. 5, the distribution control unit 40 of the printer PRT1 receives a print job from the client CLa, and transmits (distributes) the print job to the print job reception units 50 of the two printers PRT2 and PRT3. Show.

図3(c)を参照して上述したように、印刷ジョブデータ500は、所定のパケットに分けてクライアントから取得される。このため、分散制御部40から分散先プリンタの印刷ジョブ受信部50への印刷ジョブの送信は、パケット単位で複数回に分けて行う必要がある。図5に示す例では、図3(c)に示す8つのパケットP1〜P8に分けられた印刷ジョブデータ500が送信される場合を示している。   As described above with reference to FIG. 3C, the print job data 500 is acquired from the client in predetermined packets. For this reason, transmission of a print job from the distribution control unit 40 to the print job reception unit 50 of the distribution destination printer needs to be performed in a plurality of times for each packet. In the example shown in FIG. 5, the print job data 500 divided into eight packets P1 to P8 shown in FIG. 3C is transmitted.

分散制御部40が印刷ジョブの送信(ステップS118)を開始すると、まず、最初にメモリ30に格納されているパケットP1(ジョブ制御言語部501を含む印刷ジョブの最初のパケット)をプリンタPRT2およびプリンタPRT3の印刷ジョブ受信部50にそれぞれ送信する。以下、このようにパケットを複数の分散先プリンタの印刷ジョブ受信部50にそれぞれ送信することをパケット分散という。図5において、記号PDで示す破線で囲まれた矢印の集合は、1回のパケット分散に対応している。   When the distribution control unit 40 starts transmitting a print job (step S118), first, the packet P1 (the first packet of the print job including the job control language unit 501) stored in the memory 30 is first transferred to the printer PRT2 and the printer. The data is transmitted to the print job receiving unit 50 of PRT3. Hereinafter, such transmission of packets to the print job receiving units 50 of a plurality of distribution destination printers is referred to as packet distribution. In FIG. 5, a set of arrows surrounded by a broken line indicated by a symbol PD corresponds to one packet distribution.

最初のパケットP1のパケット分散PDの終了が確認されると、分散制御部40は、図5に示すようにクライアントCLaから次のパケットP2を受信する。パケット分散PDの終了の確認は、TCPプロトコルにしたがって送信元と送信先のTCP/IP部10が行う。分散制御部40は、メモリ30に格納されたパケットP1を消去して、新たに受信されたパケットP2をメモリ30に格納する。分散制御部40は、メモリ30に格納されたパケットP2について、パケットP1と同様にパケット分散PDを実行する。同様の処理を印刷ジョブデータ500を構成する残りのパケットP3〜P8について繰り返し実行することにより、印刷ジョブデータ500の全体が、最終的にプリンタPRT2およびプリンタPRT3の印刷ジョブ受信部50にそれぞれ送信される。   When the end of the packet distribution PD of the first packet P1 is confirmed, the distribution control unit 40 receives the next packet P2 from the client CLa as shown in FIG. Confirmation of the end of the packet distribution PD is performed by the TCP / IP unit 10 of the transmission source and the transmission destination according to the TCP protocol. The distribution control unit 40 erases the packet P1 stored in the memory 30 and stores the newly received packet P2 in the memory 30. The distribution control unit 40 executes packet distribution PD on the packet P2 stored in the memory 30 in the same manner as the packet P1. By repeating the same processing for the remaining packets P3 to P8 constituting the print job data 500, the entire print job data 500 is finally transmitted to the print job receiving units 50 of the printer PRT2 and the printer PRT3, respectively. The

・分散先プリンタにおける処理:
次に、図6〜図8を参照して、分散先プリンタとしてのプリンタPRTにおける処理について説明する。図6は、コネクション確立処理の処理ルーチンを示すフローチャートである。図7は、印刷処理の処理ルーチンを示す第1のフローチャートである。図8は、印刷処理の処理ルーチンを示す第2のフローチャートである。図9は、複数の印刷処理が並行して実行される様子を概念的に示す説明図である。
-Processing in the distribution destination printer:
Next, processing in the printer PRT as the distribution destination printer will be described with reference to FIGS. FIG. 6 is a flowchart showing a processing routine of connection establishment processing. FIG. 7 is a first flowchart showing the processing routine of the printing process. FIG. 8 is a second flowchart showing the processing routine of the printing process. FIG. 9 is an explanatory diagram conceptually showing a state in which a plurality of printing processes are executed in parallel.

先ず、プリンタPRTのTCP/IP部10が実行するコネクション確立処理について説明する。プリンタPRTに電源が投入されている場合には、常時、このコネクション確立処理が実行されている。TCP/IP部10は、現在、保持されているコネクションの数が3未満であるか否かを判断する(ステップS202)。コネクションが、既に3つ保持されていると判断すると(ステップS202:NO)、TCP/IP部10は、保持されているコネクションの数が3未満になるまで待機する。つまり、TCP/IP部10は、3つ以上のコネクションが同時に保持されないように、新たなコネクションの確立を行わない。コネクションの最大保持数(本実施例では、3)は、プリンタPRTが並行して受信して処理可能な印刷ジョブの数(本実施例では、3)に等しくなるように設定される。   First, connection establishment processing executed by the TCP / IP unit 10 of the printer PRT will be described. When the printer PRT is powered on, this connection establishment process is always executed. The TCP / IP unit 10 determines whether or not the number of currently held connections is less than 3 (step S202). If it is determined that three connections are already held (step S202: NO), the TCP / IP unit 10 waits until the number of held connections becomes less than three. That is, the TCP / IP unit 10 does not establish a new connection so that three or more connections are not simultaneously held. The maximum number of connections held (3 in this embodiment) is set to be equal to the number of print jobs (3 in this embodiment) that can be received and processed in parallel by the printer PRT.

一方、TCP/IP部10は、現在確立されているコネクションの数が3未満であると判断すると(ステップS202:YES)、TCP/IP部10は、コネクションの確立要求の有無を監視する(ステップS204)。印刷ジョブを送信しようとする機器(以下、送信機器ともいう。)は、印刷ジョブの送信に先立ってコネクションを確立する必要があるため、先ず、コネクションの確立要求(SYNパケット)を送信してくる。送信機器には、例えば、上述のカスタムネットワークボード100(分散制御部40)、あるいは、クライアントCLが該当する。TCP/IP部10は、コネクションの確立要求を受信すると(ステップS204:YES)、コネクションの確立要求を送信してきた機器から印刷ジョブを受信するためのコネクションを確立する(ステップS206)。TCP/IP部10は、その後、ステップS202にリターンする。   On the other hand, when the TCP / IP unit 10 determines that the number of currently established connections is less than 3 (step S202: YES), the TCP / IP unit 10 monitors the presence / absence of a connection establishment request (step S202). S204). Since a device that intends to transmit a print job (hereinafter also referred to as a transmitting device) needs to establish a connection prior to transmission of the print job, it first transmits a connection establishment request (SYN packet). . For example, the above-described custom network board 100 (distribution control unit 40) or client CL corresponds to the transmission device. When the TCP / IP unit 10 receives the connection establishment request (step S204: YES), the TCP / IP unit 10 establishes a connection for receiving a print job from the device that has transmitted the connection establishment request (step S206). Thereafter, the TCP / IP unit 10 returns to step S202.

図7〜8を参照して、上述したコネクション確立処理によってコネクションが確立された場合に実行される印刷処理について説明する。コネクションが確立されると、コネクションを介して送信機器から印刷ジョブが送信されてくる。第1受信部51〜第3受信部53の中で別の印刷ジョブの受信中でないサブ受信部は、印刷ジョブが送信されてくるのを待機しており(ステップS302)、印刷ジョブが送信されてくると、送信されてくる印刷ジョブを受信する(ステップS304)。以下、第1受信部51が印刷ジョブを受信するとして説明を続ける。第1受信部51は受信した印刷ジョブをメモリ30に格納しておく必要があるので、一度に受信できるデータ量は限られている。このため、第1受信部51は、一度に受信可能な所定データ量分だけ印刷ジョブを先頭から順次受信する。   With reference to FIGS. 7 to 8, a description will be given of a printing process executed when a connection is established by the above-described connection establishment process. When the connection is established, a print job is transmitted from the transmission device via the connection. The sub-reception unit that is not receiving another print job among the first reception unit 51 to the third reception unit 53 waits for the print job to be transmitted (step S302), and the print job is transmitted. Then, the received print job is received (step S304). Hereinafter, the description will be continued assuming that the first receiving unit 51 receives a print job. Since the first receiving unit 51 needs to store the received print job in the memory 30, the amount of data that can be received at one time is limited. For this reason, the first receiving unit 51 sequentially receives print jobs from the head for a predetermined amount of data that can be received at one time.

続いて、第1解釈部91は、受信された印刷ジョブを解釈して画像データを生成する(ステップS306)。生成された画像データは、メモリ70に格納される。次に、1ページ分の画像データが生成されたか否かが調べられる(ステップS308)。1ページ分の画像データが生成されたか否かは、改ページ要求まで印刷ジョブを解釈したか否かによって判断される。1ページ分の画像データが生成されていると(ステップS308:YES)、第1解釈部91は、生成された1ページ分の画像データについて印刷要求を発行する(ステップS310)。1ページ分の印刷要求が発行されるか、あるいは、1ページ分の画像データが生成されていない場合には(ステップS308:NO)、既に受信されていながら未処理の印刷ジョブが有るか否かが調べられる(ステップS312)。未処理の印刷ジョブが有る場合には(ステップS312:YES)、未処理の印刷ジョブを解釈するため、ステップS306に戻る。   Subsequently, the first interpretation unit 91 interprets the received print job and generates image data (step S306). The generated image data is stored in the memory 70. Next, it is checked whether image data for one page has been generated (step S308). Whether or not one page of image data has been generated is determined by whether or not the print job has been interpreted until a page break request. If image data for one page has been generated (step S308: YES), the first interpretation unit 91 issues a print request for the generated image data for one page (step S310). If a print request for one page is issued, or if image data for one page has not been generated (step S308: NO), whether there is an unprocessed print job that has already been received Is examined (step S312). If there is an unprocessed print job (step S312: YES), the process returns to step S306 to interpret the unprocessed print job.

一方、未処理の印刷ジョブがない場合には(ステップS312:NO)、送信機器からコネクションの終了要求が有るか否かが調べられる(ステップS314)。送信機器は、印刷ジョブを全て送信し終わると、コネクションの終了要求を送信してくる。従って、送信機器からコネクションの終了要求がない場合には(ステップS314:NO)、送信機器からさらに印刷ジョブが送信されてくるので、ステップS304に戻って上述のステップ(S304〜S312)を繰り返す。   On the other hand, if there is no unprocessed print job (step S312: NO), it is checked whether or not there is a connection termination request from the transmission device (step S314). When the sending device finishes sending all print jobs, it sends a connection termination request. Accordingly, if there is no connection termination request from the transmitting device (step S314: NO), a further print job is transmitted from the transmitting device, so the process returns to step S304 and the above steps (S304 to S312) are repeated.

一方で、送信機器からコネクションの終了要求が有った場合には(ステップS314:YES)、印刷ジョブは全て受信されたことになるので、コネクションは終了される(ステップS316)。その後、メモリ70に、まだ印刷要求が未発行の画像データが有るか否かが調べられる(ステップS318)。未発行の画像データがない場合には(ステップS318:NO)、本処理は終了される。一方、未発行の画像データが有る場合には(ステップS318:YES)、第1解釈部91は、未発行の画像データについて1ページ分の印刷要求を発行し(ステップS320)、本処理は終了される。ここで、ステップS318において、未発行の画像データの有無を調べるのは、印刷ジョブの最後に改ページ要求がある場合と、改ページ要求がない場合とがあるからである。印刷ジョブの最後に改ページ要求がある場合は、コネクションの終了後に未発行の画像データはないので(ステップS318:NO)、そのまま処理が終了される。一方、印刷ジョブの最後に改ページ要求がない場合には、コネクション終了後に未発行の画像データがメモリ70に残るので(ステップS318:YES)、上述のステップS320の処理が必要になる。   On the other hand, when there is a connection termination request from the transmitting device (step S314: YES), all the print jobs have been received, so the connection is terminated (step S316). Thereafter, it is checked whether or not there is image data for which no print request has been issued in the memory 70 (step S318). If there is no unissued image data (step S318: NO), this process is terminated. On the other hand, if there is unissued image data (step S318: YES), the first interpretation unit 91 issues a print request for one page for the unissued image data (step S320), and this process ends. Is done. Here, in step S318, the presence of unissued image data is checked because there is a page break request at the end of the print job and there is no page break request. If there is a page break request at the end of the print job, there is no unissued image data after the end of the connection (step S318: NO), and the process is terminated as it is. On the other hand, if there is no page break request at the end of the print job, unissued image data remains in the memory 70 after the end of the connection (step S318: YES), so the processing in step S320 described above is necessary.

以上のように、印刷ジョブを受信しながら、1ページ分の印刷要求を順次発行していく。画像データを格納するメモリ70には限界があるので、メモリ70の残容量がなくなると、本処理は一時中断される。後述する図8の処理によって、1ページ分の印刷要求に応じて印刷が実行されると印刷済みの画像データを消去して、本処理は再開される。   As described above, print requests for one page are sequentially issued while receiving a print job. Since the memory 70 for storing the image data has a limit, this process is temporarily suspended when the remaining capacity of the memory 70 is exhausted. When printing is executed in response to a print request for one page by the process shown in FIG. 8 to be described later, the printed image data is erased and this process is resumed.

図7に示す処理と並行して、図8に示すように印刷要求に応じて、印刷を実行する処理が行われる。本処理では、印刷要求が発行される(図7:ステップS312、S314)のを待ち受けており(ステップS402)、発行された印刷要求を受信すると(ステップS402:YES)、プリンタエンジン80が別の印刷ジョブの印刷中であるか否かが調べられる(ステップS404)。プリンタエンジン80が別の印刷ジョブの印刷中である場合には(ステップS404:YES)、直ちに印刷を実行できないため本処理における印刷ジョブの印刷順が来るまで待機する(ステップS406)。プリンタエンジン80が印刷中でない場合には(ステップS404:NO)、本処理のためにプリンタエンジン80が占有され(ステップS408)、プリンタエンジン80は、図7に示す処理において生成された画像データに基づいて1ページ分の印刷を実行する(ステップS410)。例えば、5ページを一部とする印刷物を10部印刷する印刷ジョブである場合において、1ページ目の印刷要求が受信されたとすると、本ステップにおいて1ページ目が10部印刷される。   In parallel with the process shown in FIG. 7, a process for executing printing is performed in response to a print request as shown in FIG. In this process, a print request is issued (FIG. 7: steps S312 and S314) (step S402). When the issued print request is received (step S402: YES), the printer engine 80 changes to another print request. It is checked whether the print job is being printed (step S404). When the printer engine 80 is printing another print job (step S404: YES), the printer engine 80 waits until the printing order of the print job in this process comes because printing cannot be executed immediately (step S406). If the printer engine 80 is not printing (step S404: NO), the printer engine 80 is occupied for this processing (step S408), and the printer engine 80 converts the image data generated in the processing shown in FIG. Based on this, printing for one page is executed (step S410). For example, in the case of a print job that prints 10 copies of a printed matter including a part of 5 pages, if a print request for the first page is received, 10 copies of the first page are printed in this step.

印刷された紙(印刷紙)はソータ85に送られ、ソータ85は印刷紙を複数の排紙ビンのうちの特定の排紙ビンに収納する(ステップS412)。特定の排紙ビンは、印刷ジョブごとに定められており、1の印刷ジョブに係る印刷紙は、1の排紙ビンに収納される。1ページ分の印刷が終了すると、プリンタエンジン80は、本処理による占有から解放される(ステップS414)。つまり、印刷順が来るまで待機している他の印刷処理が存在する場合には、他の印刷処理にプリンタエンジン80の占有を譲ることになる。   The printed paper (printing paper) is sent to the sorter 85, and the sorter 85 stores the print paper in a specific paper discharge bin among the plurality of paper discharge bins (step S412). A specific paper discharge bin is determined for each print job, and print paper for one print job is stored in one paper discharge bin. When the printing for one page is completed, the printer engine 80 is released from the occupation by this processing (step S414). That is, when there is another print process waiting until the printing order comes, the occupation of the printer engine 80 is transferred to the other print process.

続いて、印刷されたページが最終ページか否かが判断され(ステップS416)、最終ページではないと判断されると(ステップS416:NO)、ステップS402に戻って次ページの印刷要求が受信されるのを待つ。一方、印刷されたページが最終ページか最終ページであると判断されると(ステップS416:YES)、本処理は終了される。   Subsequently, it is determined whether or not the printed page is the last page (step S416). If it is determined that the printed page is not the last page (step S416: NO), the process returns to step S402 to receive a print request for the next page. Wait for it. On the other hand, if it is determined that the printed page is the last page or the last page (step S416: YES), this process is terminated.

プリンタPRTは、以上説明した印刷処理を、3つまで並行して処理することができる。上記の説明では、印刷ジョブの受信(ステップS302)と印刷ジョブの解釈処理(ステップS304)は、それぞれ第1受信部51と第1解釈部91により実行されている。複数の印刷処理が並行して処理される場合には、これらの処理は、第1受信部51と第1解釈部91、第2受信部52と第2解釈部92、あるいは、第3受信部53と第3解釈部93によって、それぞれ別々に処理されるので、互いに影響を与えることなく処理される。図9には、3つの送信機器(クライアントCLa、プリンタPRT4の分散制御部40、および、プリンタPRT1の分散制御部40)からそれぞれ送信された印刷ジョブがプリンタPRTにおいて並行して処理される様子が示されている。   The printer PRT can process up to three printing processes described above in parallel. In the above description, the print job reception (step S302) and the print job interpretation process (step S304) are executed by the first reception unit 51 and the first interpretation unit 91, respectively. When a plurality of printing processes are processed in parallel, these processes are the first receiving unit 51 and the first interpreting unit 91, the second receiving unit 52 and the second interpreting unit 92, or the third receiving unit. 53 and the third interpreter 93 are processed separately, so that they are processed without affecting each other. FIG. 9 shows that print jobs respectively transmitted from three transmission devices (client CLa, distribution control unit 40 of printer PRT4, and distribution control unit 40 of printer PRT1) are processed in parallel in the printer PRT. It is shown.

ただし、プリンタPRTのプリンタエンジン80は1つであるので、並行して処理される複数の印刷処理において、プリンタエンジン80を排他的に使用する必要がある。本実施例では、上述した図8に示す処理から解るように、各印刷処理は、一枚ずつ印刷を実行するごとに、プリンタエンジン80の占有を解放する。このようにして、各印刷処理が交代でプリンタエンジン80を順次占有することによって、並行して複数の印刷処理を進めることができる。言い換えれば、プリンタPRTは、複数の印刷ジョブについて一枚ずつ印刷することによって、複数の印刷ジョブを並行して処理することができる。   However, since the printer PRT has one printer engine 80, it is necessary to exclusively use the printer engine 80 in a plurality of print processes processed in parallel. In this embodiment, as can be understood from the processing shown in FIG. 8 described above, each printing process releases the occupation of the printer engine 80 every time printing is performed one by one. In this way, each print process takes turns and sequentially occupies the printer engine 80, so that a plurality of print processes can proceed in parallel. In other words, the printer PRT can process a plurality of print jobs in parallel by printing a plurality of print jobs one by one.

以上説明した本実施例におけるプリンタPRTによれば、印刷ジョブを受信するためのコネクションが同時に保持される数は、並行して受信可能な印刷ジョブの数(3つ)以下に制限される。この結果、送信機器とプリンタPRTとのコネクションが確立されれば、コネクションを介して送信された印刷ジョブは必ずプリンタPRTによって受信されるので、送信機器はいわゆる待機状態にされることがない。   According to the printer PRT in the present embodiment described above, the number of connections for receiving print jobs simultaneously is limited to the number of print jobs (three) that can be received in parallel. As a result, if the connection between the transmission device and the printer PRT is established, the print job transmitted through the connection is always received by the printer PRT, so that the transmission device is not put into a so-called standby state.

従って、実施例におけるプリンタPRTを分散印刷処理における分散先プリンタとして用いれば、分散印刷処理におけるデッドロックの発生を防止することができる。ここで、デッドロックとは、分散印刷処理が完全に停止してしまう不具合をいうものとする。例えば、2以上のカスタムネットワークボード100(分散制御部40)と、2以上のカスタムネットワークボード100のそれぞれが印刷ジョブの分散先として指定可能な2以上の分散先プリンタとを含む分散印刷システムがあるとする。このシステムにおいて、2以上のカスタムネットワークボード100が、分散印刷処理によって、ほぼ同時に2以上の分散先プリンタに対して印刷ジョブを送信しようとした場合に、従来はデッドロックが発生する場合があった。   Therefore, if the printer PRT in the embodiment is used as a distribution destination printer in the distributed printing process, it is possible to prevent the occurrence of deadlock in the distributed printing process. Here, deadlock means a problem that the distributed printing process is completely stopped. For example, there is a distributed printing system including two or more custom network boards 100 (distribution control unit 40) and two or more distribution destination printers each of which can be designated as a distribution destination of a print job. And In this system, when two or more custom network boards 100 try to send print jobs to two or more distribution destination printers almost simultaneously by distributed printing processing, a deadlock may occur conventionally. .

ここで、理解の容易のため、図10〜図12を参照して、デッドロックが発生するメカニズムについて説明する。図10は、従来のプリンタにおける印刷ジョブの受信を概念的に示す説明図である。図11は、デッドロックの発生する場合の通信シーケンスを示す説明図である。図12は、デッドロックが発生する場合を概念的に示す説明図である。   Here, for ease of understanding, a mechanism for causing a deadlock will be described with reference to FIGS. FIG. 10 is an explanatory diagram conceptually showing reception of a print job in a conventional printer. FIG. 11 is an explanatory diagram showing a communication sequence when a deadlock occurs. FIG. 12 is an explanatory diagram conceptually showing a case where a deadlock occurs.

先ず、図10を参照して、従来のプリンタによる印刷ジョブの受信について説明する。従来のプリンタは、同時に保持可能なコネクションの数は、並行して受信可能な印刷ジョブの数より多かった。例えば、図10に示す従来のプリンタPRは、同時に保持可能なコネクションの数は8つであり、並行して受信可能な印刷ジョブの数は1つである。   First, reception of a print job by a conventional printer will be described with reference to FIG. In the conventional printer, the number of connections that can be simultaneously held is larger than the number of print jobs that can be received in parallel. For example, in the conventional printer PR shown in FIG. 10, the number of connections that can be simultaneously held is eight, and the number of print jobs that can be received in parallel is one.

図10は、このようなプリンタPRに対して、3つのクライアントCLa〜CLcとが、並行して印刷ジョブを送信しようとする様子を概念的に示している。記号CN1〜CN3と、クライアントCLa〜CLcの各TCP/IP部13とプリンタPRのTCP/IP部1との間で確立されたコネクションを示しており、符号の末尾の数字は、コネクションが確立された時間的な順番を示している。すなわち、クライアントCLaのTCP/IP部13が1番先に、クライアントCLcのTCP/IP部13が2番目に、クライアントCLbのTCP/IP部13が3番目に、それぞれプリンタPRのTCP/IP部1とコネクションを確立したことを示している。   FIG. 10 conceptually shows a state in which the three clients CLa to CLc attempt to send print jobs in parallel to such a printer PR. Symbols CN1 to CN3, the connections established between the TCP / IP units 13 of the clients CLa to CLc and the TCP / IP unit 1 of the printer PR, the numbers at the end of the symbols indicate the connection established Shows the time sequence. That is, the TCP / IP unit 13 of the client CLa is first, the TCP / IP unit 13 of the client CLc is second, the TCP / IP unit 13 of the client CLb is third, and the TCP / IP unit of the printer PR. 1 indicates that a connection has been established.

上述したように、TCP/IP部1は複数のコネクションを保持できるのに対して、プリンタPRの受信部2は1つずつ印刷ジョブを受信するように構成されている。プリンタPRのプリンタ本体(図示せず。)が並行して複数の印刷ジョブを処理することができないからである。受信部2は、先に確立されたコネクションを介して送信される印刷ジョブを優先して受信する。図10に示す具体例では、受信部2は、最初に確立されたコネクションCN1を介して、クライアントCLaから送信される印刷ジョブを、最初に受信する(図10(a))。受信部2は、印刷プロトコルに従って、受信された印刷ジョブをプリンタ本体に供給する。受信部2がクライアントCLaから送信される印刷ジョブを受信している間、他のクライアントCLb、CLcは、コネクションCN3、2を保持したまま、待機させられる。さらに、詳しく説明するとTCPプロトコルを用いた通信では、データのフロー制御(データの流れを許可したり禁止したりする制御)がなされており、コネクションを介してTCP/IP部1の上位アプリケーションである受信部2が印刷ジョブを受信しない(TCP/IP部1から受け取らない)場合は、TCP/IP部1はフロー制御によりデータの流れを禁止する。すなわち、送信元のTCP/IP部(この例ではクライアントCLb、CLcのTCP/IP部13)に対して、データを送信しないように通知する。この状態では、クライアントCLb、CLcは、データを送信することができず、データの送信が許可されるまで待機することになる。以下、このような状態を待機状態という。   As described above, the TCP / IP unit 1 can hold a plurality of connections, whereas the receiving unit 2 of the printer PR is configured to receive a print job one by one. This is because the printer main body (not shown) of the printer PR cannot process a plurality of print jobs in parallel. The receiving unit 2 preferentially receives a print job transmitted via a previously established connection. In the specific example shown in FIG. 10, the receiving unit 2 first receives a print job transmitted from the client CLa via the connection CN1 established first (FIG. 10A). The receiving unit 2 supplies the received print job to the printer body according to the printing protocol. While the receiving unit 2 receives the print job transmitted from the client CLa, the other clients CLb and CLc are kept waiting while holding the connections CN3 and CN2. In more detail, in communication using the TCP protocol, data flow control (control to permit or prohibit data flow) is performed, which is a higher-level application of the TCP / IP unit 1 via a connection. When the receiving unit 2 does not receive a print job (not received from the TCP / IP unit 1), the TCP / IP unit 1 prohibits data flow by flow control. That is, it notifies the transmission source TCP / IP unit (in this example, the client CLb, the TCP / IP unit 13 of CLc) not to transmit data. In this state, the clients CLb and CLc cannot transmit data and wait until data transmission is permitted. Hereinafter, such a state is referred to as a standby state.

そして、受信部2がクライアントCLaから送信される印刷ジョブを全て受信すると、TCP/IP部1は、コネクションCN1を終了する。コネクションCN1が終了された後、図10(b)に示すように、受信部2は、2番目に確立されたコネクションCN2を介して、クライアントCLcから印刷ジョブを受信する。受信部2がコネクションCN2を介して送信されてきた印刷ジョブを受信する(TCP/IP部1から受け取る)ようになると、TCP/IP部1は上述したフロー制御によりデータの流れを許可する。すなわち、TCP/IP部1は、送信元(クライアントCLc)のTCP/IP部13に、データの送信を許可する。こうして、クライアントCLcは、待機状態から解放されて、印刷ジョブを送信できるようになる。   When the receiving unit 2 receives all the print jobs transmitted from the client CLa, the TCP / IP unit 1 ends the connection CN1. After the connection CN1 is terminated, as illustrated in FIG. 10B, the reception unit 2 receives a print job from the client CLc via the connection CN2 that is established second. When the receiving unit 2 receives a print job transmitted via the connection CN2 (receives from the TCP / IP unit 1), the TCP / IP unit 1 permits the data flow by the flow control described above. That is, the TCP / IP unit 1 permits the transmission of data to the TCP / IP unit 13 of the transmission source (client CLc). Thus, the client CLc is released from the standby state and can send a print job.

このように、受信部2が、コネクションが確立された順番に印刷ジョブを順次受信し、受信された印刷ジョブをプリンタ本体に順次供給することによって、クライアントのアクセス順に印刷が順次実行される。   As described above, the receiving unit 2 sequentially receives the print jobs in the order in which the connections are established, and sequentially supplies the received print jobs to the printer main body, whereby the printing is sequentially executed in the order of access by the clients.

以上の説明した従来のプリンタPRを2台(プリンタPR2とプリンタPR3と呼ぶ。)分散先プリンタとして用いて、例えば、プリンタPRT1の分散制御部40とプリンタPRT4の分散制御部40が、それぞれほぼ同時に分散印刷処理を実行する場合を考える。プリンタPRT1の分散制御部40とプリンタPRT4の分散制御部40は、2台のプリンタPR2、PR3に対して印刷ジョブを送信するためにそれぞれコネクションを確立したとする。上述したように、プリンタPR2、PR3のTCP/IP部1は、複数のコネクションを同時に保持することができるので、各コネクションの確立は成功する。図11において、白抜きの丸は、プリンタPRT1の分散制御部40とプリンタPR2およびプリンタPR3の各受信部2との間のコネクションが確立されたタイミングを示している。一方、黒塗りの丸は、プリンタPRT4の分散制御部40とプリンタPR2およびプリンタPR3の各受信部2との間のコネクションが確立されたタイミングを示している。   Using the above-described conventional printers PR (referred to as printer PR2 and printer PR3) as distribution destination printers, for example, the distribution control unit 40 of the printer PRT1 and the distribution control unit 40 of the printer PRT4 are almost simultaneously respectively. Consider a case where distributed printing processing is executed. Assume that the distribution control unit 40 of the printer PRT1 and the distribution control unit 40 of the printer PRT4 each establish a connection to transmit print jobs to the two printers PR2 and PR3. As described above, since the TCP / IP units 1 of the printers PR2 and PR3 can simultaneously hold a plurality of connections, the establishment of each connection is successful. In FIG. 11, white circles indicate the timing at which connections between the distribution control unit 40 of the printer PRT1 and the receiving units 2 of the printer PR2 and the printer PR3 are established. On the other hand, the black circles indicate the timing at which the connection between the distribution control unit 40 of the printer PRT4 and the receiving units 2 of the printer PR2 and the printer PR3 is established.

図11に示すように、プリンタPR2の受信部2とのコネクションは、プリンタPRT1の分散制御部40が先に確立している。従って、プリンタPR2の受信部2は、プリンタPRT1の分散制御部40から送信されてくる印刷ジョブを優先的に受信し、この印刷ジョブの受信が全て終了するまで、プリンタPRT4の分散制御部40は待機状態にされる。   As shown in FIG. 11, the connection with the receiving unit 2 of the printer PR2 is established first by the distribution control unit 40 of the printer PRT1. Accordingly, the receiving unit 2 of the printer PR2 receives the print job transmitted from the distribution control unit 40 of the printer PRT1 preferentially, and the distribution control unit 40 of the printer PRT4 does not receive the print job until the reception is completed. It will be in a waiting state.

一方、図11に示すように、プリンタPR3の受信部2とのコネクションは、プリンタPRT4の分散制御部40が先に確立している。従って、プリンタPR3の受信部2は、プリンタPRT4の分散制御部40から送信されてくる印刷ジョブを優先的に受信し、この印刷ジョブの受信が全て終了するまで、プリンタPRT1の分散制御部40は待機状態にされる。図11において、太い実線は、優先的に印刷ジョブを受信するコネクションCN12、CN43を示し、細い実線は、待機状態にされているコネクションC42、C13を示している。   On the other hand, as shown in FIG. 11, the connection with the receiving unit 2 of the printer PR3 is established first by the distribution control unit 40 of the printer PRT4. Accordingly, the receiving unit 2 of the printer PR3 preferentially receives the print job transmitted from the distribution control unit 40 of the printer PRT4, and the distribution control unit 40 of the printer PRT1 does not receive the print job until the reception is completed. It will be in a waiting state. In FIG. 11, thick solid lines indicate connections CN12 and CN43 that receive print jobs preferentially, and thin solid lines indicate connections C42 and C13 that are in a standby state.

このような状態から、プリンタPRT1の分散制御部40は、確立されたコネクションC12、C13を介して、上述したパケット分散PD(図5)を実行してプリンタPR2、PR3の各受信部2に印刷ジョブを送信しようとする。かかる場合には、プリンタPR2の受信部2に送信されるパケットP1は、コネクションCN12の優先順位が高いため直ちに受信されるが、プリンタPR3の受信部2に送信されるパケットP1は、コネクションCN13の優先順位が低いために受信されない。そのため、プリンタPRT1の分散制御部40は、1回目のパケット分散PDを終了することができず待機状態になる。   From such a state, the distribution control unit 40 of the printer PRT1 executes the above-described packet distribution PD (FIG. 5) via the established connections C12 and C13, and prints on each receiving unit 2 of the printers PR2 and PR3. Try to submit a job. In such a case, the packet P1 transmitted to the receiving unit 2 of the printer PR2 is received immediately because the priority of the connection CN12 is high, but the packet P1 transmitted to the receiving unit 2 of the printer PR3 is received by the connection CN13. Not received due to low priority. For this reason, the distribution control unit 40 of the printer PRT1 cannot complete the first packet distribution PD and enters a standby state.

同様にして、プリンタPRT4の分散制御部40は、確立されたコネクションC42、C43を介して、プリンタPR2、PR3の各受信部2に印刷ジョブを送信しようとする。かかる場合には、プリンタPR3の受信部2に送信されるパケットP1は、コネクションCN43の優先順位が高いため直ちに受信されるが、プリンタPR2の受信部2に送信されるパケットP1は、コネクションCN42の優先順位が低いために受信されない。そのため、プリンタPRT1の分散制御部40と同様に、プリンタPRT4の分散制御部40は、1回目のパケット分散PDを終了することができず待機状態になる。   Similarly, the distribution control unit 40 of the printer PRT4 tries to transmit a print job to the receiving units 2 of the printers PR2 and PR3 via the established connections C42 and C43. In such a case, the packet P1 transmitted to the receiving unit 2 of the printer PR3 is received immediately because the priority of the connection CN43 is high, but the packet P1 transmitted to the receiving unit 2 of the printer PR2 is received by the connection CN42. Not received due to low priority. Therefore, similarly to the distribution control unit 40 of the printer PRT1, the distribution control unit 40 of the printer PRT4 cannot complete the first packet distribution PD and enters a standby state.

この結果、プリンタPRT1の分散制御部40およびプリンタPRT4の分散制御部40による分散印刷処理は、両方とも完全に停止状態に陥ってしまう。プリンタPRT1の分散制御部40の待機状態は、プリンタPRT4の分散制御部40による分散印刷処理が終了するまで解消されず、一方でプリンタPRT4の分散制御部40の待機状態は、プリンタPRT1の分散制御部40による分散印刷処理が終了するまで解消されないためである。   As a result, both of the distributed printing processes by the distribution control unit 40 of the printer PRT1 and the distribution control unit 40 of the printer PRT4 are completely stopped. The standby state of the distribution control unit 40 of the printer PRT1 is not canceled until the distributed printing process by the distribution control unit 40 of the printer PRT4 is completed, while the standby state of the distribution control unit 40 of the printer PRT4 is the distribution control of the printer PRT1. This is because the problem cannot be resolved until the distributed printing process by the unit 40 is completed.

図11に示すようなデッドロックは、図12に示すような場合に起こる。概念的に説明すると、印刷ジョブの送信側である複数の分散制御部と、受信側である複数の受信部があり、分散制御部と受信部間の通信のためのコネクションによって、分散制御部と受信部とを交互に結ぶ閉じた環が形成され得るシステムにおいて、デッドロックが起きうる。上述したようにコネクションの環が確立され、環上にある全ての受信部に少なくとも待機状態になるコネクションが1つ以上ある状態で、分散印刷処理が実行されるとデッドロック状態になる。図12において、コネクションに付されている番号は、1が即時受信状態のコネクション、2が待機状態のコネクションを示している。   The deadlock as shown in FIG. 11 occurs in the case as shown in FIG. To explain conceptually, there are a plurality of distribution control units on the transmission side of the print job and a plurality of reception units on the reception side, and the connection between the distribution control unit and the reception unit depends on the connection for communication. Deadlocks can occur in systems where closed rings can be formed that alternately connect to the receiver. As described above, a ring of connections is established, and when the distributed printing process is executed in a state where all the receiving units on the ring have at least one connection that is in a standby state, a deadlock state occurs. In FIG. 12, the numbers assigned to the connections are 1 for a connection in an immediate reception state and 2 for a connection in a standby state.

本実施例に係るプリンタPRTを分散先プリンタとして上述したような分散印刷処理を実行すれば、印刷ジョブを送信しようとする分散制御部40が待機状態にされることはないので、上述したデッドロックの発生を防止することができる。例えば、図11に示すようなタイミングでコネクションの確立がおこなわれたとしても、プリンタPRT1の分散制御部40から送信される印刷ジョブとプリンタPRT4の分散制御部40から送信される印刷ジョブとを並行して受信し、並行して印刷処理を実行することができるからである。また、並行して受信可能な数(本実施例では3つ)を超える数のコネクションが確立されることはない(図6)。   If the distributed printing process as described above is executed by using the printer PRT according to the present embodiment as the distribution destination printer, the distribution control unit 40 to transmit the print job is not put into a standby state. Can be prevented. For example, even if the connection is established at the timing shown in FIG. 11, the print job transmitted from the distribution control unit 40 of the printer PRT1 and the print job transmitted from the distribution control unit 40 of the printer PRT4 are executed in parallel. This is because the printing process can be executed in parallel. Further, the number of connections exceeding the number that can be received in parallel (three in this embodiment) is never established (FIG. 6).

さらに、本実施例におけるプリンタPRTの印刷ジョブ解釈部90は、複数のサブ解釈部(第1解釈部91〜第3解釈部93)を備え、並行して印刷ジョブを解釈することができる。この結果、並行して受信されて複数の印刷ジョブを速やかに解釈して印刷処理を進めることができる。   Furthermore, the print job interpretation unit 90 of the printer PRT in this embodiment includes a plurality of sub-interpretations units (first interpretation unit 91 to third interpretation unit 93), and can interpret the print job in parallel. As a result, it is possible to proceed with the printing process by quickly interpreting a plurality of print jobs received in parallel.

また、各印刷ジョブについて1ページずつ印刷することを繰り返して、複数の印刷ジョブを処理していくので、プリンタPRTは全ての印刷ジョブを一度に受信する必要がない。この結果、プリンタPRTに搭載するメモリ30およびメモリ70の容量を低減することができる。   In addition, since a plurality of print jobs are processed by repeating printing one page at a time for each print job, the printer PRT does not need to receive all the print jobs at once. As a result, the capacity of the memory 30 and the memory 70 mounted on the printer PRT can be reduced.

さらに、複数の印刷ジョブ(最大3つ)を並行して処理する場合でも、印刷紙は3つの収容部を備えるソータ85によって印刷ジョブごとに分けて収納される。この結果、複数の印刷ジョブの印刷紙が混じり合う不都合は解消される。   Further, even when a plurality of print jobs (up to three) are processed in parallel, the print paper is stored separately for each print job by the sorter 85 including three storage units. As a result, the inconvenience that print papers of a plurality of print jobs are mixed is solved.

B.変形例:
プリンタPRTが並行して受信できる印刷ジョブの数mは、上記実施例で示した3に限られない。本実施例では、ソータ85の収容部(排紙ビン)の数3に合わせて設定されているが、さらに多数の収容部を備えるソータを用いる場合には収容部の数に応じてmの値も増加させても良い。また、プリンタPRTが受信できる印刷ジョブの数mは、プリンタPRTごとに常に一定値である必要はなく、プリンタPRTの状態に応じて動的に変化させても良い。例えば、ソータ85の排紙ビンのうち印刷紙を収容できる状態にある排紙ビンの数に応じてmの値を設定することができる。具体的には、ソータ85の排紙ビンごとに印刷紙が排紙ビンに収容されているか否かを検出するセンサを設け、印刷紙が収容されていない排紙ビンの数を、mの値としても良い。いずれにしても、その時に設定されているmの値に対して、同時に保持できるコネクション数nは、m以下の自然数に制限される。こうすることによって上述した作用・効果が得られる。
B. Variation:
The number m of print jobs that can be received in parallel by the printer PRT is not limited to 3 shown in the above embodiment. In this embodiment, the number is set in accordance with the number 3 of the accommodating portions (sheet discharge bins) of the sorter 85. However, when a sorter having a larger number of accommodating portions is used, the value of m depends on the number of accommodating portions. May also be increased. The number m of print jobs that can be received by the printer PRT does not always have to be a constant value for each printer PRT, and may be dynamically changed according to the state of the printer PRT. For example, the value of m can be set in accordance with the number of paper discharge bins that are in a state that can accommodate printing paper among the paper discharge bins of the sorter 85. Specifically, a sensor for detecting whether or not the printing paper is stored in the paper discharge bin is provided for each paper discharge bin of the sorter 85, and the number of paper discharge bins that do not contain the print paper is set to a value of m. It is also good. In any case, with respect to the value of m set at that time, the number n of connections that can be simultaneously held is limited to a natural number of m or less. By doing so, the above-described actions and effects can be obtained.

上記実施例では、プリンタPRTごとにプリンタエンジン80は1つであるが、プリンタPRTごとに複数のプリンタエンジン80を備えても良い。例えば、上記実施例において1つのプリンタPRTに3つのプリンタエンジン80がある場合には、3つのサブ解釈部(第1解釈部91〜第3解釈部93)ごとに1つのプリンタエンジン80を割り当てることができるので、より高速に印刷処理を実行することができる。   In the above embodiment, one printer engine 80 is provided for each printer PRT, but a plurality of printer engines 80 may be provided for each printer PRT. For example, in the above embodiment, when one printer PRT has three printer engines 80, one printer engine 80 is assigned to each of the three sub-interpretation units (first interpretation unit 91 to third interpretation unit 93). Therefore, the printing process can be executed at a higher speed.

上記実施例では、複数の印刷ジョブを並行して処理する場合、各印刷ジョブについて1ページずつ印刷することを繰り返しているが、繰り返しの単位は1ページずつに限られない。例えば、2ページずつあるいは3ページずつ繰り返すこととしても良い。これは、画像データを一時的に格納するためのメモリ70の容量などに応じて適宜変更することができる。   In the above embodiment, when a plurality of print jobs are processed in parallel, printing one page at a time for each print job is repeated, but the repeating unit is not limited to one page. For example, two pages or three pages may be repeated. This can be changed as appropriate according to the capacity of the memory 70 for temporarily storing image data.

上記実施例におけるプリンタエンジン80は、種々のタイプのものが用いられ得る。例えば、レーザー式に限らず、インクジェット式、昇華型、ドットインパクト式、熱転写型など、あらゆるタイプのプリンタエンジンが用いられ得る。   Various types of printer engine 80 in the above embodiment can be used. For example, not only a laser type but also any type of printer engine such as an ink jet type, a sublimation type, a dot impact type, and a thermal transfer type can be used.

以上、本発明の実施例および変形例について説明したが、本発明はこれらの実施例および変形例になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々の態様での実施が可能である。   As mentioned above, although the Example and modification of this invention were demonstrated, this invention is not limited to these Example and modification at all, and implementation in a various aspect is possible within the range which does not deviate from the summary. It is.

実施例における分散印刷システムの概略構成を示す説明図。1 is an explanatory diagram illustrating a schematic configuration of a distributed printing system in an embodiment. FIG. 分散印刷システムを構成する各機器の内部構成を示すブロック図。The block diagram which shows the internal structure of each apparatus which comprises a distributed printing system. 印刷ジョブのデータ構造を示す概念図。The conceptual diagram which shows the data structure of a print job. 分散印刷処理の処理ルーチンを示すフローチャート。9 is a flowchart showing a processing routine for distributed printing processing. 印刷ジョブが複数の印刷ジョブ受信部に送信される通信シーケンスの一例を示す説明図。FIG. 3 is an explanatory diagram illustrating an example of a communication sequence in which a print job is transmitted to a plurality of print job reception units. コネクション確立処理の処理ルーチンを示すフローチャート。The flowchart which shows the process routine of a connection establishment process. 印刷処理の処理ルーチンを示す第1のフローチャート。The 1st flowchart which shows the process routine of a printing process. 印刷処理の処理ルーチンを示す第2のフローチャート。FIG. 9 is a second flowchart showing a processing routine for printing processing. FIG. 複数の印刷処理が並行して実行される様子を概念的に示す説明図。Explanatory drawing which shows notionally a mode that several printing processing is performed in parallel. 従来のプリンタにおける印刷ジョブの受信を概念的に示す説明図。Explanatory drawing which shows notionally reception of the print job in the conventional printer. デッドロックの発生する場合の通信シーケンスを示す説明図。Explanatory drawing which shows the communication sequence in case a deadlock occurs. デッドロックが発生する場合を概念的に示す説明図。Explanatory drawing which shows notionally the case where a deadlock occurs.

符号の説明Explanation of symbols

10...TCP/IP部
11...アプリケーション
12...印刷ジョブ送信部
13...TCP/IP部
20...CPU
30...メモリ
40...分散制御部
50...印刷ジョブ受信部
51...第1受信部
51...第1受信部
52...第2受信部
53...第3受信部
60...CPU
70...メモリ
80...プリンタエンジン
85...ソータ
90...印刷ジョブ解釈部
91...第1解釈部
92...第2解釈部
93...第3解釈部
100...カスタムネットワークボード
200...ネットワークボード
400...ヘッダ
450...データ部
500...印刷ジョブデータ
501...ジョブ制御言語部
502...ページ記述言語部
PRT、PR...プリンタ
CLa〜CLc...クライアント
DESCRIPTION OF SYMBOLS 10 ... TCP / IP part 11 ... Application 12 ... Print job transmission part 13 ... TCP / IP part 20 ... CPU
DESCRIPTION OF SYMBOLS 30 ... Memory 40 ... Distributed control part 50 ... Print job receiving part 51 ... 1st receiving part 51 ... 1st receiving part 52 ... 2nd receiving part 53 ... 3rd Receiver 60 ... CPU
DESCRIPTION OF SYMBOLS 70 ... Memory 80 ... Printer engine 85 ... Sorter 90 ... Print job interpretation part 91 ... 1st interpretation part 92 ... 2nd interpretation part 93 ... 3rd interpretation part 100. .. Custom network board 200 ... Network board 400 ... Header 450 ... Data part 500 ... Print job data 501 ... Job control language part 502 ... Page description language part PRT, PR ... Printer CLa to CLc ... Client

Claims (11)

印刷装置であって、
コネクション型のプロトコルを用いる通信を行う通信部であって、前記通信のためのコネクションを保持する通信部と、
前記コネクションを介して印刷ジョブを受信する印刷ジョブ受信部であって、並行して受信可能な印刷ジョブの数はm(mは自然数)である印刷ジョブ受信部と、
前記受信された印刷ジョブについて、並行して印刷処理を実行する印刷実行部と、
を備え、
前記通信部が同時に保持するコネクションの数は、m以下に設定される印刷装置。
A printing device,
A communication unit that performs communication using a connection-type protocol, the communication unit holding a connection for the communication;
A print job receiving unit that receives a print job via the connection, wherein the number of print jobs that can be received in parallel is m (m is a natural number);
A print execution unit that executes print processing in parallel for the received print job;
With
The number of connections simultaneously held by the communication unit is a printing apparatus set to m or less.
前記印刷ジョブを複数のパケットに分割し、前記パケットを2以上の分散先印刷装置に対してそれぞれ送信するパケット分散を、前記分割されたパケットごとに繰り返し実行することによって、前記印刷ジョブを2以上の前記分散先印刷装置に対してそれぞれ送信可能な印刷制御装置と接続されると共に、前記分散先印刷装置として用いられる請求項1に記載の印刷装置。   The print job is divided into a plurality of packets, and packet distribution in which each of the packets is transmitted to two or more distribution destination printing apparatuses is repeatedly executed for each of the divided packets. The printing apparatus according to claim 1, wherein the printing apparatus is connected to a print control apparatus capable of transmitting to each of the distribution destination printing apparatuses and used as the distribution destination printing apparatus. 請求項1または請求項2に記載の印刷装置において、
前記印刷実行部は、
前記受信された印刷ジョブを解釈して印刷要求を発行する解釈処理を実行する印刷ジョブ解釈部であって、前記m個の印刷ジョブについて前記解釈処理を並行して実行可能な印刷ジョブ解釈部と、
前記発行された印刷要求に基づいて前記印刷ジョブの印刷結果を出力する印刷部と、
を有する印刷装置。
The printing apparatus according to claim 1 or 2,
The print execution unit
A print job interpretation unit that interprets the received print job and issues a print request, the print job interpretation unit capable of executing the interpretation process in parallel for the m print jobs; ,
A printing unit that outputs a print result of the print job based on the issued print request;
A printing apparatus.
請求項3に記載の印刷装置において、
前記印刷部は、各印刷ジョブの印刷結果を所定枚数ずつ出力することを繰り返すことによって、複数の前記印刷ジョブの印刷結果を出力する印刷装置。
The printing apparatus according to claim 3.
The printing unit is configured to output a plurality of print job print results by repeatedly outputting a predetermined number of print results of each print job.
請求項4に記載の印刷装置は、さらに、
前記印刷部によって出力された印刷結果を、前記印刷ジョブごとに複数の収納部に分けて収納するソータ機構を備える印刷装置。
The printing apparatus according to claim 4, further comprising:
A printing apparatus comprising a sorter mechanism that stores a print result output by the printing unit in a plurality of storage units for each print job.
請求項5に記載の印刷装置において、
前記並行して受信可能な印刷ジョブの数mは、前記ソータ機構が有する収容部の数である印刷装置。
The printing apparatus according to claim 5, wherein
The number m of print jobs that can be received in parallel is the number of storage units included in the sorter mechanism.
請求項1ないし請求項6のいずれかに記載の印刷装置において、
前記並行して受信可能な印刷ジョブの数mは、前記印刷装置の状態に応じて変化する印刷装置。
The printing apparatus according to any one of claims 1 to 6,
The number m of the print jobs that can be received in parallel varies according to the state of the printing apparatus.
請求項5に記載の印刷装置において、
前記並行して受信可能な印刷ジョブの数mは、前記ソータ機構が有する収容部のうち印刷結果を収容できる状態にある収容部の数である印刷装置。
The printing apparatus according to claim 5, wherein
The number m of print jobs that can be received in parallel is the number of storage units that are capable of storing a print result among the storage units of the sorter mechanism.
請求項3に記載の印刷装置において、
前記印刷部は、m個備えられている印刷装置。
The printing apparatus according to claim 3.
The printing apparatus includes m printing units.
印刷方法であって、
要求に応じて、コネクション型のプロトコルを用いる通信のためのコネクションをn個(nは自然数)まで同時に保持する第1の工程と、
前記保持されたコネクションを介して送信された印刷ジョブを、それぞれ並行して受信する第2の工程と、
前記並行して受信された印刷ジョブについて、並行して印刷処理を実行する第3の工程と、
を備え、
前記nは、前記第2の工程において並行して受信可能な印刷ジョブの数m(mは自然数)以下である印刷方法。
Printing method,
A first step of simultaneously holding up to n connections (n is a natural number) for communication using a connection-type protocol in response to a request;
A second step of receiving in parallel each print job transmitted via the held connection;
A third step of executing print processing in parallel for the print jobs received in parallel;
With
The printing method in which n is equal to or less than the number m (m is a natural number) of print jobs that can be received in parallel in the second step.
印刷装置を制御するためのコンピュータプログラムであって、
コネクション型のプロトコルを用いる通信を行う通信部であって、前記通信のためのコネクションを保持する第1の機能と、
前記コネクションを介して印刷ジョブを受信する第2の機能であって、並行して受信可能な印刷ジョブの数はm(mは自然数)である第2の機能と、
前記受信された印刷ジョブについて、並行して印刷処理を実行する第3の機能と、
前記通信部が同時に保持するコネクションの数を、m以下に設定する第4の機能と、
をコンピュータに実現させるコンピュータプログラム
A computer program for controlling a printing apparatus,
A communication unit that performs communication using a connection-type protocol, the first function holding a connection for the communication;
A second function for receiving a print job via the connection, wherein the number of print jobs that can be received in parallel is m (m is a natural number);
A third function for executing print processing in parallel for the received print job;
A fourth function for setting the number of connections simultaneously held by the communication unit to m or less;
Computer program that makes a computer realize
JP2005180236A 2005-06-03 2005-06-21 Distributed printing system, printing method, and computer program Expired - Fee Related JP4438698B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005180236A JP4438698B2 (en) 2005-06-21 2005-06-21 Distributed printing system, printing method, and computer program
US11/445,395 US20060274370A1 (en) 2005-06-03 2006-06-02 Control technology used in distributed printing for printing control device and printer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005180236A JP4438698B2 (en) 2005-06-21 2005-06-21 Distributed printing system, printing method, and computer program

Publications (2)

Publication Number Publication Date
JP2007004225A true JP2007004225A (en) 2007-01-11
JP4438698B2 JP4438698B2 (en) 2010-03-24

Family

ID=37689825

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005180236A Expired - Fee Related JP4438698B2 (en) 2005-06-03 2005-06-21 Distributed printing system, printing method, and computer program

Country Status (1)

Country Link
JP (1) JP4438698B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014030979A (en) * 2012-08-06 2014-02-20 Seiko Epson Corp Printing device, control system, control method for printing device, program and control method for control system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014030979A (en) * 2012-08-06 2014-02-20 Seiko Epson Corp Printing device, control system, control method for printing device, program and control method for control system

Also Published As

Publication number Publication date
JP4438698B2 (en) 2010-03-24

Similar Documents

Publication Publication Date Title
JP4650158B2 (en) Print control apparatus for executing distributed control, and printing apparatus
JP6065542B2 (en) Image processing apparatus and communication program
US20080170584A1 (en) Management device, management method, computer readable medium and computer data signal
JPH11184649A (en) System and method for printing, and printer
JP2004220565A (en) Distributed printing system, distributed printing method, distributed printing program, printer and printer management server
US20060274370A1 (en) Control technology used in distributed printing for printing control device and printer
JP2007276119A (en) Avoiding of error in printer
JP4285474B2 (en) Printing system, method and printer
US20050141018A1 (en) Network printer control system and data reception control method thereof
JP2005322054A (en) Distributed printing control device and print job distribution method
JP2006134043A (en) Printing system and control method therefor
JP3941794B2 (en) Distributed print control apparatus and print job distribution method
JP2006347110A (en) Image forming device and alternate printing control program
JP2008186271A (en) Server, printer, and network printing system
JP4438698B2 (en) Distributed printing system, printing method, and computer program
US20060282531A1 (en) Network interface apparatus for controlling image data forwarding according to performance function of each address and method thereof
JP6701116B2 (en) Printers and programs
JP2006277034A (en) Distributed printing controller and method for determining candidate for receiving printer
JP4453369B2 (en) Printing apparatus and printing method, computer program, and recording medium
JP2005346739A (en) Printer and printer job data transfer method
JP2006277501A (en) Distributed printing controller and its method
JP2007041754A (en) Printing control for executing distributed printing
JP2004221629A (en) Image processing apparatus, data communication method, and program
JP4404013B2 (en) Print control apparatus and printing apparatus for performing distributed printing
JP4269479B2 (en) Printer, printing system, and interface control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070606

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091124

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

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

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

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4438698

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140115

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees