JPH09212439A - 分散処理システム及び該分散処理システムのデータ転送方法 - Google Patents

分散処理システム及び該分散処理システムのデータ転送方法

Info

Publication number
JPH09212439A
JPH09212439A JP8017776A JP1777696A JPH09212439A JP H09212439 A JPH09212439 A JP H09212439A JP 8017776 A JP8017776 A JP 8017776A JP 1777696 A JP1777696 A JP 1777696A JP H09212439 A JPH09212439 A JP H09212439A
Authority
JP
Japan
Prior art keywords
processor
client
block
fep
data
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.)
Pending
Application number
JP8017776A
Other languages
English (en)
Inventor
Takayoshi Hamano
隆芳 濱野
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP8017776A priority Critical patent/JPH09212439A/ja
Publication of JPH09212439A publication Critical patent/JPH09212439A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】スループットの低下及びネットワーク上のトラ
フィックの増加を低減することができる分散処理システ
ム及び該分散処理システムのデータ転送方法を提供する
こと。 【解決手段】クライアント110が印刷ジョブの一部を
M−FEP120に送信すると、このM−FEP120
は該印刷ジョブを処理するS−FEP130を選択する
とともに、該選択したS−FEP130に対して印刷ジ
ョブの他の部分の受取りを指示する指示データを送信
し、該指示情報を受けたS−FEP130の要求に応答
してクライアント110は印刷ジョブの他の部分をS−
FEP130に送信する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、クライアントが出
力した複数ブロックからなるデータを複数のプロセッサ
で処理する分散処理システム及び該分散処理システムの
データ転送方法に関し、特にクライアントと複数のプロ
セッサとの間で複数のセッションを確立してデータを処
理する分散処理システムに関する。
【0002】
【従来の技術】従来、クライアントのジョブを複数のプ
ロセッサで処理する分散処理システムが知られている。
【0003】例えば、特開昭57−146367号公報
(以下「第1の先行技術」と言う。)には、処理待ち時
間と通信遅れ時間との和が最小となるプロセッサを割り
当てる処理割当装置を用いて、クライアントの各ジョブ
を各プロセッサに割り当てるよう構成した分散処理シス
テムが開示されている。
【0004】すなわち、この第1の先行技術のものは、
各クライアントが出力したジョブを一旦処理割当装置に
おいて受け付け、該受け付けたジョブを最も早く処理で
きるプロセッサに出力する。
【0005】また、特開平2−54338号公報(以下
「第2の先行技術」と言う。)には、クライアントのジ
ョブをジョブ記述情報とともに複数のプロセッサが共有
できる2次記憶装置上に複写し、各プロセッサのジョブ
起動手段が2次記憶装置上に保持されたジョブ記述情報
に基づいて実行可能なジョブを選択して起動するよう構
成したジョブ実行システム自動選択方式が開示されてい
る。
【0006】すなわち、この第2の先行技術のものは、
各クライアントのジョブを各プロセッサが共有できる2
次記憶装置に格納し、該格納したジョブのうち各プロセ
ッサが実行可能なジョブをジョブ記述情報に基づいて選
択する。
【0007】このように、上記第1の先行技術及び第2
の先行技術に代表される従来の分散処理システムでは、
クライアント及び各プロセッサの間に一旦ジョブを保持
する記憶機構を有するプロセッサを介在させている。
【0008】
【発明が解決しようとする課題】しかしながら、クライ
アント及び各プロセッサの間に一旦ジョブを保持する記
憶機構を有するプロセッサを介在させると、システムの
スループットが低下するとともに、ネットワーク上のト
ラフィックが増加するという問題がある。
【0009】具体的には、かかる記憶機構を有するプロ
セッサを介在させる構成を用いると、クライアント及び
上記記憶機構間と、該記憶機構及びプロセッサ間とで2
度に亘るジョブの転送が必要となるため、システムの生
産性及び回線使用効率が低下する。
【0010】特に、大容量の画像イメージデータがジョ
ブ内に存在する場合には、上記スループットの低下及び
ネットワーク上のトラフィックの増加が大きな問題とな
ってくることから、かかる問題を解消しつつ分散処理を
いかに効率良く行うかが重要な課題となっている。
【0011】なお、特開平7−89144号公報(以下
「第3の先行技術」と言う。)には、印刷データを構成
する画像データと印刷制御データとを印刷装置に別々に
送信するよう構成した印刷制御方法が開示されているた
め、この先行技術を用いてトラフィックを分散すること
ができる。
【0012】しかしながら、この第3の先行技術を用い
て印刷データを画像データと印刷制御データに分割した
としても、この画像データ及び印刷制御データを上記記
憶機構を介してプロセッサに出力する場合には、上記ス
ループットの低下及びネットワーク上のトラフィックの
増加を本質的に解決することはできない。
【0013】また、送信側が所定の場所に格納されたデ
ータのポインタすなわちリファレンスを送信し、受信側
がこのリファレンスに基づいてデータをアクセスするリ
ファレンス方式と呼ばれる従来技術が知られている。
【0014】しかしながら、このリファレンス方式は、
一定期間存続するパーマネントな性格を有するデータに
は適用できるが、クライアント上でユーザが作成する印
刷ジョブに適用したとしても、リファレンス機構の採用
に伴うオーバヘッドが増えることとなるため実益がな
い。
【0015】そこで、本発明では、上記課題を解決すべ
く、クライアントと該クライアントのジョブを処理する
プロセッサとの間に記憶機構を有するプロセッサが介在
することに起因して生ずるスループットの低下及びネッ
トワーク上のトラフィックの増加を低減することができ
る分散処理システム及び該分散処理システムのデータ転
送方法を提供することを目的とする。
【0016】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、クライアントが出力する複数ブロックか
らなるデータを複数のプロセッサで処理する分散処理シ
ステムにおいて、各プロセッサは、前記クライアントが
出力したブロックを受信する受信手段と、前記受信手段
が所定のブロックを受信した際に、該所定のブロック以
外の他のブロックの受取りを所定のプロセッサに対して
指示する指示手段と、他のプロセッサによるブロックの
受取り指示に応答して、該受取り指示を受けたブロック
を前記クライアントに要求する要求手段とをそれぞれ具
備することを特徴とする。
【0017】また、本発明は、前記指示手段は、前記受
信手段が所定のブロックを受信した際に、前記他のブロ
ックを処理すべき1又は複数のプロセッサを選択する選
択手段を具備し、該選択手段が選択した1又は複数のプ
ロセッサに対して前記他のブロックの受取りを指示する
ことを特徴とする。
【0018】また、本発明は、他のプロセッサからブロ
ックの受取り指示を受信した際に、該受取り指示を他の
プロセッサに転送するか否かを判断する判断手段と、他
のプロセッサから受け付けたブロックの受取り指示を所
定のプロセッサに転送する転送手段とをさらに具備し、
前記要求手段は、前記判断手段が受取り指示を転送しな
いと判断した場合に、該受取り指示を受けたブロックを
前記クライアントに要求することを特徴とする。
【0019】また、本発明は、複数のブロックからなる
データを出力するクライアントと、前記クライアントが
出力したデータを処理する複数のスレーブプロセッサ
と、前記クライアントから前記データを受取り、該デー
タを処理すべきスレーブプロセッサを前記複数のスレー
ブプロセッサから選択するメインプロセッサとを具備
し、前記メインプロセッサが所定のブロックを受け付け
た際に、該データを転送するスレーブプロセッサを決定
した後、該決定されたスレーブプロセッサによる前記ク
ライアントへのデータ転送要求により、前記クライアン
トは該所定のブロック以外のブロックを当該スレーブプ
ロセッサに転送することを特徴とする。
【0020】また、本発明は、クライアントが出力する
複数のブロックからなるデータを第1のプロセッサを介
して第2のプロセッサで処理する分散処理システムのデ
ータ転送方法において、前記クライアントは、前記第1
のプロセッサに対して所定のブロックを出力し、前記第
1のプロセッサは、前記クライアントから所定のブロッ
クを受け付けた際に、該所定のブロック以外の他のブロ
ックの受取りを前記第2のプロセッサに指示し、前記第
2のプロセッサは、前記第1のプロセッサの指示に応答
して前記クライアントに前記他のブロックを要求し、前
記クライアントは、前記第2のプロセッサからの要求に
応答して該第2のプロセッサに前記他のブロックを出力
することを特徴とする。
【0021】また、本発明は、クライアントが出力する
複数のブロックからなるジョブを第1のプロセッサを介
して複数の第2のプロセッサで処理する分散処理システ
ムにおけるデータ転送方法において、前記クライアント
は、前記第1のプロセッサに対して所定のブロックを出
力し、前記第1のプロセッサは、前記クライアントから
所定のブロックを受け付けた際に、該所定のブロック以
外の他のブロックを処理する第2のプロセッサを前記複
数の第2のプロセッサの中から選択して、該選択した第
2のプロセッサに対して前記他のブロックの受取りを指
示し、前記他のブロックの受取りを指示された第2のプ
ロセッサは、前記第1のプロセッサの指示に応答して前
記クライアントに前記他のブロックを要求し、前記クラ
イアントは、前記第2のプロセッサからの要求に応答し
て該第2のプロセッサに前記他のブロックを出力するこ
とを特徴とする。
【0022】
【発明の実施の形態】まず、本発明の第1の実施の形態
について説明する。
【0023】図1は、第1の実施の形態で用いる印刷シ
ステムの全体構成と、マスタFEP(Front End Proces
sor:以下「M−FEP」と言う。)及びスレーブFE
P(以下「S−FEP」と言う。)の細部構成を示すブ
ロック図である。
【0024】図1に示す印刷システムでは、M−FEP
120はクライアント110又は111が出力した印刷
ジョブの一部をネットワーク100を介して受け取った
ならば、この印刷ジョブの他の部分を処理すべきS−F
EPを選択する。そして、このM−FEP120が選択
したS−FEPは、印刷要求元のクライアントに対して
印刷ジョブの他の部分の転送要求を行い、該クライアン
トから直接印刷ジョブの他の部分を受け取る。
【0025】すなわち、クライアント110及び111
は、印刷ジョブの処理要求を行う際に該印刷ジョブ全体
をM−FEP120に送信するのではなく、まず最初に
印刷ジョブの一部のみをM−FEP120に送信する。
【0026】そして、かかる印刷ジョブの一部を受信し
たM−FEP120は、該印刷ジョブを処理すべきS−
FEPを選択して、該選択したS−FEPに対して印刷
ジョブの他の部分の受取りを指示する。
【0027】そして、この指示を受けたS−FEPは、
あらためて要求元のクライアントに印刷ジョブの他の部
分を要求し、該要求に応答してクライアントから送信さ
れる印刷ジョブの他の部分を受信して処理する。
【0028】したがって、この実施の形態に示す印刷シ
ステムでは、従来の印刷システムのようにM−FEP1
20が印刷ジョブ全体を受信してスプール等の一時記憶
装置に格納する必要がなく、またM−FEP120が該
印刷ジョブを処理すべきS−FEPに対して印刷ジョブ
の全体を送信する必要もない。
【0029】すなわち、本実施の形態によると、上記従
来の印刷システムに比して、システムのスループットが
向上し、またネットワーク100上のトラフィックが減
少する。
【0030】次に、本実施の形態で用いる印刷システム
の全体構成について説明する。
【0031】この実施の形態に示す印刷システムは、図
1に示すように、ネットワーク100にクライアント1
10及び111と、M−FEP120と、S−FEP1
30、140及び160とが接続される構成となる。
【0032】クライアント110及び111は、印刷デ
ータを記憶するデータファイルと該データファイルに対
応するジョブ情報ファイルとを少なくとも有する印刷ジ
ョブを作成する。
【0033】ここで、このジョブ情報ファイルとは、例
えばデータファイルのファイル名等の印刷データの識別
情報を保持するファイルであり、該ファイルに記憶した
データは、M−FEP120に最初に送信する印刷ジョ
ブの一部となる。
【0034】なお、このジョブ情報ファイルには、M−
FEP120が印刷ジョブを処理するS−FEPを選択
するために必要となる情報を含めることができ、例えば
M−FEP120が、ジョブの処理時間予測に基づく各
S−FEPの待ち時間管理を行う場合には、印刷ジョブ
の処理時間予測に必要となるデータ量等をジョブ情報フ
ァイルに含めることとなり、また、クライアントがプリ
ンタ機種を指定できるようにする場合には、プリンタ種
別を示す情報をジョブ情報ファイルに含めることとな
る。
【0035】ところで、各クライアントが上記構成を有
する印刷ジョブの印刷依頼を行う場合には、まず最初の
セッションでM−FEP120に対して上記ジョブ情報
ファイルに保持したデータ(以下「ジョブ情報」と言
う。)を送信する。
【0036】そして、各クライアントは、S−FEPか
らデータ転送要求を受け付けたならば、印刷ジョブの他
の部分すなわちデータファイルの内容を当該S−FEP
に対して送信する。
【0037】このように、各クライアントは、複数のセ
ッションを用いて印刷ジョブをM−FEP120及びS
−FEPに送信する。
【0038】一方、M−FEP120は、ネットワーク
100を介してクライアント110及び111が送信し
たジョブ情報を受け付けたならば、当該ジョブ情報に対
応するデータファイル内の印刷データを処理すべきS−
FEPを選択し、該選択したS−FEPに対して印刷デ
ータの受取りを指示する。
【0039】なお、本実施の形態では、このM−FEP
120は、各S−FEPに滞留するジョブを管理してお
き、S−FEP内に滞留する印刷ジョブの数が最も少な
いS−FEPを選択することとする。
【0040】各S−FEP130、140及び160
は、受信した印刷ジョブデータから印刷イメージデータ
を作成し、該イメージデータを圧縮、フレーミングした
データを対応するプリンタに出力する。
【0041】ここで、各S−FEPは、M−FEP12
0による受取り指示に応答して、印刷要求元のクライア
ントに対する印刷データのデータ転送要求を能動的に行
い、このデータ転送要求に応答して送信される印刷デー
タを受信する。
【0042】すなわち、各S−FEPは、M−FEP1
20を介して印刷データを受け取るのではなく、M−F
EP120の指示に基づいて直接クライアントから受け
取ることになる。
【0043】このため、M−FEP120がS−FEP
を選択する際に印刷ジョブを一旦スプール等の記憶装置
に滞留させる必要がなく、またクライアント〜M−FE
P120間及びM−FEP120〜S−FEP間での2
度にわたるデータ転送を行う必要がなくなる。
【0044】次に、上記M−FEP120及び各S−F
EPの細部構成について説明する。
【0045】図1に示すように、このM−FEP120
は、入出力部120aと、S−FEP選択部120b
と、FEP状態管理部120cと、データ受取指示部1
20dとからなる。
【0046】入出力部120aは、ネットワーク100
とのインターフェースを司る処理部であり、具体的に
は、クライアントが出力したジョブ情報をネットワーク
100から受信してS−FEP選択部120bに出力す
るとともに、データ受取指示部120eから受け付けた
指示データをネットワーク100に送信する。
【0047】S−FEP選択部120bは、FEP状態
管理部120cが管理する各S−FEPの状態に基づい
て印刷データを処理すべきS−FEPを選択し、該選択
したS−FEPの番号、印刷ジョブの識別情報及び要求
元のクライアントの番号をデータ受取指示部120dに
出力する。
【0048】FEP状態管理部120cは、各S−FE
Pにそれぞれ滞留する印刷ジョブを管理する管理部であ
り、具体的には、S−FEP選択部120bから各S−
FEPについての状態の問い合わせを受けた際に、各S
−FEPに滞留する印刷ジョブの数を出力する。
【0049】データ受取指示部120dは、S−FEP
選択部120bが選択したS−FEPに対して印刷デー
タの受取り指示を行う処理部であり、具体的には、S−
FEP選択部120bから受け取った印刷ジョブの識別
情報及び要求クライアントの番号に基づいて指示データ
を作成して該当するS−FEPに送信する。
【0050】上記構成を有するM−FEP120を用い
ることにより、クライアントからジョブ情報を受け取っ
た際に、該ジョブ情報に対応する印刷データを処理すべ
きS−FEPを選択し、この選択したS−FEPに対し
て印刷データの受取り指示を行うことができる。
【0051】次に、各S−FEPの細部構成について説
明する。なお、ここでは説明の便宜上、S−FEP13
0を用いて細部構成を示すこととするが、他のS−FE
P140及び160についてもこのS−FEP130と
同様に構成される。
【0052】図1に示すように、このS−FEP130
は、入出力部130aと、データ要求部130bと、デ
ータ処理部130cとからなる。
【0053】入出力部130aは、M−FEP120の
入出力部120aと同様に、ネットワーク100とのイ
ンターフェースを司る処理部である。
【0054】データ要求部130bは、M−FEP12
0による指示データを受信した際に、該指示データに基
づいて印刷要求元のクライアントに対して印刷データを
要求する。
【0055】すなわち、この指示データには、印刷要求
元のクライアントの番号と印刷ジョブの識別情報が含ま
れているため、このクライアントに対して当該識別情報
に対応する印刷データを要求する。
【0056】データ処理部130cは、クライアントか
ら受信した印刷ジョブデータから印刷イメージデータを
作成し、該イメージデータを圧縮、フレーミングしたデ
ータを対応するプリンタ150に出力する。すなわち、
このデータ処理部130cは、本来S−FEPが行うべ
き処理を行う機能部である。
【0057】上記構成を有する各S−FEPを用いるこ
とにより、印刷データの受取り指示を受け付けたなら
ば、指示データが示すクライアントに対して印刷データ
を直接要求することができる。
【0058】以上、この印刷システムの全体構成と、M
−FEP120及び各S−FEPの細部構成について説
明した。
【0059】次に、上記印刷システムの概念図を用いて
本実施の形態の処理概念を説明する。
【0060】図2は、図1に示す印刷システムの処理概
念を示す概念図である。
【0061】図2に示すように、この印刷システムで
は、クライアント110がM−FEP120に対して印
刷ジョブの一部(部分’a’)を送信する(ステップ2
01)。
【0062】そして、M−FEP120は、印刷ジョブ
の部分’a’を受信したならば、3つのS−FEP13
0、140及び160の中からこの印刷ジョブの他の部
分(部分’b’)を印刷処理するS−FEPを選択す
る。
【0063】そして、このM−FEP120が例えばS
−FEP130を選択した場合には、このS−FEP1
30に対して指示データを送信し、当該印刷ジョブの部
分’b’を処理すべき旨の指示をS−FEP130に対
して行う(ステップ202)。
【0064】そして、この指示を受けたS−FEP13
0は、この指示データに基づいてクライアント110に
対して印刷ジョブの部分’b’を要求し(ステップ20
3)、この要求を受けたクライアント110は、印刷ジ
ョブの部分’b’をS−FEP130に送信する(ステ
ップ204)。
【0065】このように、このM−FEP120は、印
刷ジョブの部分’a’のみに関与し、部分’b’には何
等関与しないため、スループットの低下及びネットワー
ク上のトラフィックの増加を防ぎつつ、印刷ジョブの印
刷処理を行うことができる。
【0066】次に、クライアント110及びM−FEP
120間とクライアント110及びS−FEP130間
のデータ転送手順とそのデータ構造の一例についてさら
に具体的に説明する。
【0067】図3は、図1に示すクライアント110間
及びM−FEP120とクライアント110及びS−F
EP130間のデータ転送手順を示すシーケンス図であ
る。
【0068】ただし、ここでは、印刷ジョブが、ジョブ
情報ファイル(Job Info. File)、データファイル(Da
ta File)、制御ファイル(Control File)及び属性フ
ァイル(Attribute List File)からなるものとする。
【0069】図3に示すように、クライアント110
は、まず最初にリクエストデータ(<Request>)をM−
FEP120に対して送信し(ステップ301)、M−
FEP120から受けた応答(<answerOK>|<answerRec
ieveError>)が正常終了を示す応答(<answerOK>)であ
れば(ステップ302)、次にジョブ情報ファイル送信
コマンドライン(<Job info. File>)を送信し(ステッ
プ303)、引き続き送信コマンドラインに対応するフ
ァイルデータをヌル(Null)でターミネイトしたデータ
(<fileDataWithNull>)を送信し(ステップ304)、
M−FEP120から応答(<answerOK>|<answerRecie
veError>|<answerMemError>)を受信する(ステップ3
05)。
【0070】このように、クライアント110は上記シ
ーケンスを用いてM−FEP120に対するジョブ情報
ファイルの送信を行う。
【0071】そして、M−FEP120は、このジョブ
情報ファイルに基づいてジョブを処理すべきS−FEP
を選択し、該選択したS−FEPに対して印刷ジョブの
受取りを指示する。ここでは、この選択されたS−FE
PがS−FEP130であるものとする。
【0072】そして、この受取り指示を受けたS−FE
P130は、クライアント110に対してジョブ送信要
求(<requestToSendJob>)を行い(ステップ306)、
この要求に応答してクライアント110は、制御ファイ
ル送信コマンドライン(<Control File>)をS−FEP
130に送信し(ステップ307)、引き続き送信コマ
ンドラインに対応するファイルデータをヌル(Null)で
ターミネイトしたデータ(<fileDataWithNull>)を送信
し(ステップ308)、S−FEP130からステップ
305と同様に応答(<answerOK>|<answerRecieveErro
r>|<answerMemError>)を受信する(ステップ30
9)。
【0073】そして、S−FEP130から正常終了を
示す応答(<answerOK>)を返信されたならば、クライア
ント110は、次に属性ファイル送信コマンドライン
(<Attribute List File>)を送信し(ステップ31
0)、引き続き送信コマンドラインに対応するファイル
データをヌル(Null)でターミネイトしたデータ(<fil
eDataWithNull>)を送信し(ステップ311)、S−F
EP130からステップ305と同様に応答(<answerO
K>|<answerRecieveError>|<answerMemError>)を受信
する(ステップ312)。
【0074】このように、制御ファイル及び属性ファイ
ルは、S−FEP130から要求され、クライアント1
10は要求元のS−FEP130に対してこれらのファ
イルを直接送信する。
【0075】なお、上記手順では、属性ファイルよりも
制御ファイルを先に送信することとしたが、ファイル送
信順を変更して制御ファイルを先に送信することも可能
である。
【0076】そして、これらの制御ファイル及び属性フ
ァイルの送信が終了したならば、S−FEP130は上
記セッションと同一又は別セッションでデータファイル
を要求する(<requestToSendData>)(ステップ31
3)。
【0077】そして、この要求を受けたクライアント1
10は、S−FEP130に対してデータファイル送信
コマンドライン(<Data File>)を送信し(ステップ3
14)、引き続き送信コマンドラインに対応するファイ
ルデータをヌル(Null)でターミネイトしたデータ(<f
ileDataWithNull>)を送信し(ステップ315)、S−
FEP130からステップ305と同様に応答(<answe
rOK>|<answerRecieveError>|<answerMemError>)を受
信する(ステップ316)。
【0078】このように、データファイルについても、
上記制御ファイル及び属性ファイルと同様に、S−FE
P130の要求に応答してクライアント110から送信
される。
【0079】なお、ここでは制御ファイル及び属性ファ
イルをともに転送する場合について示したが、制御ファ
イルのみを転送するよう構成することもできる。
【0080】また、各データのシンタックス及びセマン
ティクスは下記のようになる。
【0081】 <Request> ::= <requestFlag><printer><SP><jobID><Host><LF> <Job info. File> ::= <ikind><size><SP>ifA<jobID><Host><LF> <Control File> ::= <ckind><size><SP>cfA<jobID><Host><LF> <Attribute List File> ::= <akind><size><SP>cfA<jobID><Host><LF> <Data File> ::= <dkind><size><SP>cfA<jobID><Host><LF> <answerOK> ::= <recieveOKFlag><jobID><LF> <answerRecieveError> ::= <recieveErrorFlag><jobID><LF> <answerMemError> ::= <memErrorFlag><jobID><LF> <requestToSendJob> ::= <jobReadyFlag><jobID><LF> <requestToSendData> ::= <dataReadyFlag><jobID><LF> <fileDataWithNull> ::= <fileData><EOT> <fileData> ::= <BYTE><fileData>|<BYTE> <printer> ::= <NameChar><printer>|<NameChar> <Host> ::= <Host><NameChar>|<ALPHA> <jobID> ::= <DIGIT><DIGIT><DIGIT> <requestFlag> ::= (character6) (=6) <recieveOKFlag> ::= (character0) (=0) <recieveErrorFlag> ::= (character1) (=1) <memErrorFlag> ::= (character2) (=2) <jobReadyFlag> ::= (character7) (=7) <dataReadyFlag> ::= (character8) (=8) <ckind> ::= (character2) (=2) ;制御ファイル <dkind> ::= (character3) (=3) ;データファイル <akind> ::= (character4) (=4) ;属性ファイル <ikind> ::= (character5) (=5) ;ジョブ情報ファイル <EOT> ::= (character0) (=0) ;ヌル <LF> ::= #\Linefeed (=10) <SP> ::= #\Space (=32) <NameChar> ::= <ALPHA>|<SpecialNameChar> <SpecialNameChar> ::= _|<DIGIT> <ALPHA> ::= a|b|…|z|A|B|…|Z <DIGIT> ::= 0|1|2|3|4|5|6|7|8|9 <BYTE> ::= αByte ;αBye:0..255 ただし、”ifA”はジョブ情報ファイルの接頭語を示
し、”characteri”は値iを有する文字を示すものと
する。
【0082】上述してきたように、第1の実施の形態で
は、クライアント110又は111が印刷ジョブの一部
をM−FEP120に送信する第1のセッションと、こ
のM−FEP120により選択されたS−FEPの要求
に応答して、クライアント110又は111が当該印刷
ジョブの他の部分をS−FEPに送信する第2のセッシ
ョンを用いて印刷データをS−FEPに転送するよう構
成したので、システムのスループットが向上するととも
に、ネットワーク100上のトラフィックの低減を図る
ことができる。
【0083】以上、第1の実施の形態について説明し
た。
【0084】ところで、上記第1の実施の形態では、M
−FEP120が選択したS−FEPが全ての印刷デー
タをクライアントから受信して印刷処理を行うこととし
たが、システムのスループットを向上するためには、複
数のS−FEPが1つの印刷ジョブを分散処理する場合
もある。
【0085】そこで次に、本発明を複数のS−FEPを
用いて印刷ジョブの分散処理を行う場合に適用した第2
の実施の形態について説明する。
【0086】図4は、第2の実施の形態で用いるシステ
ムの全体構成と各S−FEPの細部構成を示すブロック
図である。
【0087】図4に示すように、この実施の形態に示し
た印刷システムは、上述した図1に示すものと同様に構
成されるが、各S−FEPにデータ制御部401及びデ
ータ受取指示部402を設けた点が異なる。
【0088】データ制御部401は、S−FEP410
及び420を用いて印刷ジョブを分散処理する場合に、
この印刷ジョブをS−FEP410に処理を依頼する部
分(以下「第1部分」と言う。)とS−FEP420に
処理を依頼する部分(以下「第2部分」と言う。)に区
分して、第1部分の依頼指示をS−FEP410に行う
とともに第2部分の依頼指示をS−FEP420に行う
ようデータ受取指示部402に命じる。
【0089】例えば、このデータ制御部401が、10
0ページからなる印刷ジョブのうちの第1ページ〜第5
0ページを第1部分とし、また第51ページ〜第100
ページを第2部分に区分した場合には、印刷ジョブの第
1ページ〜第50ページの受取りをS−FEP410に
指示するとともに、印刷ジョブの第51ページ〜第10
0ページの受取りをS−FEP420に指示するようデ
ータ受取指示部402に命ずる。
【0090】データ受取指示部402は、1又は複数の
S−FEPに対して印刷ジョブの特定の部分をクライア
ントから受け取って処理するよう指示する指示部であ
り、図1に示すM−FEP120に設けたデータ受取指
示部120dと同様のものである。
【0091】したがって、このデータ制御部401及び
データ受取指示部402を有するS−FEP400がM
−FEP120から指示データを受信したならば、デー
タ制御部401ではこの印刷ジョブを第1部分及び第2
部分に分割し、データ受取指示部402が第1部分の受
取り指示をS−FEP410に対して行い、第2部分の
受取り指示をS−FEP420に対して行う。
【0092】このように、第2の実施の形態に示す印刷
システムでは、第1の実施の形態で説明した印刷システ
ムのように、M−FEP120によって選択されたS−
FEPが単に印刷要求元のクライアントから印刷データ
を受信して処理するだけでなく、他のS−FEPに対し
て印刷ジョブの受取り指示を行うことができる機能を有
している。
【0093】次に、この第2の実施の形態に示す印刷シ
ステムの処理概念について説明する。
【0094】図5は、図4に示す印刷システムの処理概
念を示す概念図である。
【0095】図5に示すように、この印刷システムで
は、図2に示す概念図と同様に、まず最初にクライアン
ト110がM−FEP120に対して印刷ジョブの一部
(部分’a’)を送信する(ステップ501)。
【0096】そして、M−FEP120は、印刷ジョブ
の部分’a’を受信したならば、複数のS−FEPの中
からこの印刷ジョブの他の部分(部分’b’及び’
c’)を印刷処理するS−FEPを選択する。
【0097】そして、このM−FEP120が例えばS
−FEP400を選択した場合には、このS−FEP4
00に対して指示データを送信し、当該印刷ジョブの部
分’b’及び’c’を処理すべき旨の指示をS−FEP
400に対して行う(ステップ502)。
【0098】そして、この指示を受けたS−FEP40
0は、さらに該印刷ジョブをS−FEP410及び42
0で分散処理すべきと判断した場合には、当該印刷ジョ
ブを2つの部分に区分する。
【0099】例えば、このS−FEP410が処理すべ
き部分を印刷ジョブの部分’b’とし、S−FEP42
0が処理すべき部分を該印刷ジョブの部分’c’とした
場合には、S−FEP410に部分’b’を受け取るよ
う指示するとともに、S−FEP420に対して部分’
c’を受け取るよう指示する(ステップ503)。
【0100】そして、この指示を受けたS−FEP41
0は、クライアント110に対して印刷ジョブの部分’
b’を要求するとともに(ステップ504)、この要求
を受けたクライアント110は、印刷ジョブの部分’
b’をS−FEP410に送信する(ステップ50
5)。
【0101】また、この指示を受けたS−FEP420
は、クライアント110に対して印刷ジョブの部分’
c’を要求するとともに(ステップ506)、この要求
を受けたクライアント110は、印刷ジョブの部分’
c’をS−FEP420に送信する(ステップ50
7)。
【0102】このように、かかる概念を有する印刷シス
テムを用いた場合には、各S−FEPがさらに複数のS
−FEPを選択して受取り指示を与え、該受取り指示を
受けた各S−FEPが直接クライアントから自装置に関
与する印刷ジョブの部分のみを受信することになるた
め、スループットの低下及びネットワーク上のトラフィ
ックの増加を防ぎつつ、印刷ジョブの分散処理を効率良
く行うことができる。
【0103】ところで、この印刷システムでは、各S−
FEPがさらに複数のS−FEPを選択して受取り指示
を与えることとしたが、この受取り指示を所定のS−F
EPに転送することもできる。
【0104】例えば、図4に示すM−FEP120がS
−FEP420に対して受取り指示を行った場合に、こ
のS−FEP420がかかる受取り指示に対応する処理
を実行する機能を有しなければ、プリンタ421を共有
するS−FEP410に対して受取り指示を転送するこ
とになる。
【0105】図6は、図4に示すS−FEPによる受取
り指示の転送を伴う場合の印刷システムの処理概念を示
す図である。
【0106】図6に示すように、この印刷システムで
は、まず最初にクライアント110がM−FEP120
に対して印刷ジョブの一部(部分’a’)を送信する
(ステップ601)。
【0107】そして、M−FEP120は、印刷ジョブ
の部分’a’を受信したならば、複数のS−FEPの中
からこの印刷ジョブの他の部分(部分’b’)を印刷処
理するS−FEPを選択する。
【0108】そして、このM−FEP120が例えばS
−FEP420を選択した場合には、このS−FEP4
20に対して指示データを送信し、当該印刷ジョブの部
分’b’を処理すべき旨の指示をS−FEP420に対
して行う(ステップ602)。
【0109】そして、この指示を受けたS−FEP42
0は、この指示に対応する処理を自装置内で実行できる
か否かを判断し、実行できないと判断した場合には該印
刷ジョブをS−FEP410に転送する(ステップ60
3)。
【0110】そして、この指示の転送を受けたS−FE
P410は、クライアント110に対して印刷ジョブの
部分’b’を要求し(ステップ604)、該要求を受け
たクライアント110は、印刷ジョブの部分’b’をS
−FEP410に送信する(ステップ605)。
【0111】このように、各S−FEPに指示データの
転送機能を付与することもできる。
【0112】上述してきたように、第2の実施の形態で
は、クライアント110が印刷ジョブの一部をM−FE
P120に送信し、M−FEP120が選択したS−F
EP400がさらにS−FEP410及び420を選択
し、該S−FEP410及び420がそれぞれクライア
ント110にデータを要求するよう構成したので、印刷
ジョブを分散処理する際のシステムのスループットが向
上するとともに、ネットワーク100上のトラフィック
の低減を図ることができる。
【0113】また、M−FEP120により選択された
S−FEP420が印刷ジョブを処理する機能を有しな
ければ、このS−FEP420が、M−FEP120か
ら受け付けた指示データをS−FEP410に転送する
よう構成したので、印刷ジョブを処理する際の柔軟性が
向上する。
【0114】以上、第2の実施の形態について説明し
た。
【0115】なお、上記第1及び第2の実施の形態で
は、クライアントと各S−FEP間にM−FEPを介在
させる場合について説明したが、このM−FEPをS−
FEPと同様に構成することもできる。ただし、この場
合には、各FEPが図4に示すS−FEP400の構成
を有し、また各クライアントはいずれかのFEPに印刷
依頼を行うことになる。
【0116】また、上記第1及び第2の実施の形態で
は、M−FEP120が単一のS−FEPを選択する場
合を示したが、複数のS−FEPを選択して各S−FE
Pに印刷データの受取りを指示することも可能である。
【0117】
【発明の効果】以上詳細に説明したように、本発明で
は、クライアントの所定のブロックをプロセッサが受信
した際に、該所定のブロック以外の他のブロックの受取
りを他のプロセッサに指示し、当該他のプロセッサは、
このブロックの受取り指示に応答して該ブロックをクラ
イアントに要求するよう構成したので、システムのスル
ープットが向上するとともに、ネットワーク100上の
トラフィックの低減を図ることが可能となる。
【0118】また、本発明では、所定のブロックを受信
したプロセッサが、他のブロックを処理すべき1又は複
数のプロセッサを選択し、該選択したプロセッサに他の
ブロックの受取りを指示するよう構成したので、他のブ
ロックの処理に適したプロセッサを選択して処理の効率
化を図ることが可能となる。
【0119】また、本発明では、他のプロセッサからブ
ロックの受取り指示を受信した際に、該受取り指示を他
のプロセッサに転送するか否かを判断し、受取り指示を
転送すべきと判断した場合には、この受取り指示を所定
のプロセッサに転送し、それ以外の場合には、該受取り
指示を受けたブロックを前記クライアントに要求するよ
う構成したので、印刷ジョブの柔軟な処理が可能とな
る。
【図面の簡単な説明】
【図1】第1の実施の形態で用いる印刷システムの全体
構成と、M−FEP及びS−FEPの細部構成を示すブ
ロック図。
【図2】図1に示す印刷システムの処理概念を示す概念
図。
【図3】図1に示すクライアント、M−FEP及びS−
FEPの間のデータ転送手順を示すシーケンス図。
【図4】第2の実施の形態で用いるシステムの全体構成
とS−FEPの細部構成を示すブロック図。
【図5】図4に示す印刷システムの処理概念を示す図。
【図6】図4に示すS−FEPによる受取り指示の転送
を伴う場合の印刷システムの処理概念を示す図。
【符号の説明】
100…ネットワーク、 110,111…クライアン
ト、120…M−FEP、 120a…入出力部、12
0b…S−FEP選択部、 120c…FEP状態管理
部、120d…データ受取指示部、130,140,1
60…S−FEP、 130a…入出力部、130b…
データ要求部、 130c…データ処理部、150,1
70…プリンタ、400,410,420…S−FE
P、401…データ制御部、 402…データ受取指示

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 クライアントが出力する複数ブロックか
    らなるデータを複数のプロセッサで処理する分散処理シ
    ステムにおいて、 各プロセッサは、 前記クライアントが出力したブロックを受信する受信手
    段と、 前記受信手段が所定のブロックを受信した際に、該所定
    のブロック以外の他のブロックの受取りを所定のプロセ
    ッサに対して指示する指示手段と、 他のプロセッサによるブロックの受取り指示に応答し
    て、該受取り指示を受けたブロックを前記クライアント
    に要求する要求手段とをそれぞれ具備することを特徴と
    する分散処理システム。
  2. 【請求項2】 前記指示手段は、 前記受信手段が所定のブロックを受信した際に、前記他
    のブロックを処理すべき1又は複数のプロセッサを選択
    する選択手段を具備し、 該選択手段が選択した1又は複数のプロセッサに対して
    前記他のブロックの受取りを指示することを特徴とする
    請求項1記載の分散処理システム。
  3. 【請求項3】 他のプロセッサからブロックの受取り指
    示を受信した際に、該受取り指示を他のプロセッサに転
    送するか否かを判断する判断手段と、 他のプロセッサから受け付けたブロックの受取り指示を
    所定のプロセッサに転送する転送手段とをさらに具備
    し、 前記要求手段は、 前記判断手段が受取り指示を転送しないと判断した場合
    に、該受取り指示を受けたブロックを前記クライアント
    に要求することを特徴とする請求項2記載の分散処理シ
    ステム。
  4. 【請求項4】 複数のブロックからなるデータを出力す
    るクライアントと、 前記クライアントが出力したデータを処理する複数のス
    レーブプロセッサと、 前記クライアントから前記データを受取り、該データを
    処理すべきスレーブプロセッサを前記複数のスレーブプ
    ロセッサから選択するメインプロセッサとを具備し、 前記メインプロセッサが所定のブロックを受け付けた際
    に、該データを転送するスレーブプロセッサを決定した
    後、該決定されたスレーブプロセッサによる前記クライ
    アントへのデータ転送要求により、前記クライアントは
    該所定のブロック以外のブロックを当該スレーブプロセ
    ッサに転送することを特徴とする分散処理システム。
  5. 【請求項5】 クライアントが出力する複数のブロック
    からなるデータを第1のプロセッサを介して第2のプロ
    セッサで処理する分散処理システムのデータ転送方法に
    おいて、 前記クライアントは、前記第1のプロセッサに対して所
    定のブロックを出力し、 前記第1のプロセッサは、前記クライアントから所定の
    ブロックを受け付けた際に、該所定のブロック以外の他
    のブロックの受取りを前記第2のプロセッサに指示し、 前記第2のプロセッサは、前記第1のプロセッサの指示
    に応答して前記クライアントに前記他のブロックを要求
    し、 前記クライアントは、前記第2のプロセッサからの要求
    に応答して該第2のプロセッサに前記他のブロックを出
    力することを特徴とする分散処理システムのデータ転送
    方法。
  6. 【請求項6】 クライアントが出力する複数のブロック
    からなるジョブを第1のプロセッサを介して複数の第2
    のプロセッサで処理する分散処理システムにおけるデー
    タ転送方法において、 前記クライアントは、前記第1のプロセッサに対して所
    定のブロックを出力し、 前記第1のプロセッサは、前記クライアントから所定の
    ブロックを受け付けた際に、該所定のブロック以外の他
    のブロックを処理する第2のプロセッサを前記複数の第
    2のプロセッサの中から選択して、該選択した第2のプ
    ロセッサに対して前記他のブロックの受取りを指示し、 前記他のブロックの受取りを指示された第2のプロセッ
    サは、前記第1のプロセッサの指示に応答して前記クラ
    イアントに前記他のブロックを要求し、 前記クライアントは、前記第2のプロセッサからの要求
    に応答して該第2のプロセッサに前記他のブロックを出
    力することを特徴とする分散処理システムのデータ転送
    方法。
JP8017776A 1996-02-02 1996-02-02 分散処理システム及び該分散処理システムのデータ転送方法 Pending JPH09212439A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8017776A JPH09212439A (ja) 1996-02-02 1996-02-02 分散処理システム及び該分散処理システムのデータ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8017776A JPH09212439A (ja) 1996-02-02 1996-02-02 分散処理システム及び該分散処理システムのデータ転送方法

Publications (1)

Publication Number Publication Date
JPH09212439A true JPH09212439A (ja) 1997-08-15

Family

ID=11953127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8017776A Pending JPH09212439A (ja) 1996-02-02 1996-02-02 分散処理システム及び該分散処理システムのデータ転送方法

Country Status (1)

Country Link
JP (1) JPH09212439A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000172464A (ja) * 1998-12-07 2000-06-23 Seiko Epson Corp プリントシステム、プリンタおよびプリントサーバ
JP2002251274A (ja) * 2000-11-30 2002-09-06 Seiko Epson Corp 著作物の印刷管理システム、方法及び記録媒体
US7362457B1 (en) 1998-07-22 2008-04-22 Seiko Epson Corporation Printing system and printer which sends job requests for printing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7362457B1 (en) 1998-07-22 2008-04-22 Seiko Epson Corporation Printing system and printer which sends job requests for printing
JP2000172464A (ja) * 1998-12-07 2000-06-23 Seiko Epson Corp プリントシステム、プリンタおよびプリントサーバ
JP2002251274A (ja) * 2000-11-30 2002-09-06 Seiko Epson Corp 著作物の印刷管理システム、方法及び記録媒体

Similar Documents

Publication Publication Date Title
US6043898A (en) Method and system for concurrently executing multiple spooling systems in a networked computer system
US6502147B2 (en) Centralized queue in network printing systems
US5781711A (en) Document server for processing a distribution job in a document processing system
EP0704791B1 (en) Method of processing a job, in a printing system, with a composite job ticket
US5903733A (en) Multifunction peripheral controller
JP2002501247A (ja) ジョブトークンプリンタ割当システム
US6301011B1 (en) Dynamic plug and play interface for output device
JP2553220B2 (ja) データの転送方法及びシステム
US6757741B1 (en) System and method for network printing using a peer hybrid printing protocol
JP3591251B2 (ja) プリンタ制御方法および装置
JPH09212439A (ja) 分散処理システム及び該分散処理システムのデータ転送方法
JP2004341728A (ja) 印刷装置、印刷システム及びキャンセル方法
JPH04227524A (ja) 印刷システム
JPH06242893A (ja) 出力制御システム
JP2943710B2 (ja) バッファのビジー制御方式
JP2809270B2 (ja) プリントジョブ制御方式
JP2752696B2 (ja) ネットワーク環境下におけるプリンタ制御方式
JPH08123637A (ja) 印刷制御装置
KR20010011078A (ko) 네트워크 프린터의 인쇄방법
JP2000039977A (ja) プリントシステム
JP2859208B2 (ja) 印刷装置
JPH05250112A (ja) プリント出力制御方式
JPH05108582A (ja) 計算機システム
JP3121183B2 (ja) プリンタ制御装置
JP2002215365A (ja) 印刷システム