説明

ネットワーク内の共用資源を使用する方法および構成

クライアントからネットワーク内の共用資源へのジョブの転送をサーバから制御する方法は、クライアントによって選択された共用資源にジョブを送信するための要求がクライアントから受信され、資源が利用可能であり、かつその時点でジョブを受信する能力を有するか否かが絶えず検査されることを含む。その資源が利用可能であり、かつその時点で能力を有する場合には、クライアントが資源にジョブを送信することができるという許可がクライアントに直ちに送信される。その資源が利用可能であるが、その時点で能力を欠いている場合には、その要求はその資源のためのキューに入れられ、そのキューは絶えず更新され、その要求がキュー内の先頭位置まで進んでおり、かつ資源が能力を有するときに、クライアントが資源にジョブを送信することができるという許可がクライアントに送信される。要求を受信するステップに続いて、ジョブに、クライアントに送信される識別情報が割り当てられ、その識別情報は、クライアントに送信される許可に含まれ、その識別情報からクライアントがジョブを特定できるようにする。資源によってジョブが首尾良く完了されたという確認、あるいは資源によってジョブが首尾よく完了されなかったという指標がクライアントから受信され、その後、その要求はキューから削除される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク内に接続されたクライアントが、そのネットワーク内の共用資源を使用するための技法に関する。その技法は特に、限定はしないが、クライアントからネットワーク内に接続されたプリンタに直にプリントジョブを転送するために設計される。
【0002】
具体的には、本発明は、ネットワーク内に接続されたクライアントによる共用資源の使用を、サーバから制御し、かつ監視する方法と、使用を制御し、かつ監視する該方法を実行するコンピュータプログラム製品と、共用資源の使用を制御し、かつ監視する該方法を実行する該コンピュータプログラム製品をインストールされたサーバと、クライアントがネットワーク内の共用資源を使用する方法と、共用資源を使用する該方法を実行するコンピュータプログラム製品と、共用資源を使用する該方法を実行する該コンピュータプログラム製品をインストールされたクライアント端末と、複数の該クライアント端末と、少なくとも1つの該サーバとを含むネットワークとに関する。
【背景技術】
【0003】
ネットワークのための従来の印刷システムは、サーバにおいてプリントジョブを記憶するという原理に基づいており、それは、ネットワーク内のクライアントが各プリントジョブをプリントサーバに送信することを含み、プリントサーバはプリントジョブを受信し、プリントジョブを処理し、さらにそのプリントジョブを印刷用のプリンタに送信する。
【0004】
図1には、そのようなネットワークの一例が示される。ネットワークは複数のクライアントあるいはユーザコンピュータ101を含み、それらのクライアントは複数のプリンタ103とともに、クライアントネットワーク105内に接続される。クライアントネットワーク105はさらにサーバネットワーク107に接続され、オプションとして、それらのネットワーク間にはルータ109が介在する。サーバネットワーク107は、とりわけ、複数の中央プリントサーバ111を含み、中央プリントサーバ111はクライアント101からのプリントジョブを監視および制御し、それらのプリントジョブをプリンタ103に送信する。
【0005】
クライアントはプリントサーバ111のうちの1つにプリントジョブを送信する。それが矢印113によって概略的に示される。送信されるデータの量は通常、対応するファイルがクライアントのローカルハードディスクドライブ上にあるときの3倍である。プリントジョブがプリントサーバ111に到達すると、そのプリントジョブはプリントサーバのハードディスクドライブにローカルにスプールされ、そのためサーバ上には記憶空間が必要とされる。プリントサーバ111がそのプリントジョブを適当なプリントキュー上(すなわち、選択されたプリンタのためのキュー内)にスプールしており、かつ現在のプリントジョブが印刷される時点になったときに、プリントサーバ111はそのプリントジョブを印刷用の選択されたプリンタに送信する。それが矢印115によって概略的に示される。
【0006】
図1に示されるように、プリントジョブはプリンタに最短距離で送信されるのではなく、プリントサーバ111を経由して遠回りする。
特許文献1は、プリントジョブのためのジョブトークンプリンタ割当てシステムを記載しており、クライアントがプリントサーバにトークンを送信し、そのトークンは、印刷されることになるプリントジョブのプロファイルを含む。プリントサーバはそのトークンを構文解析し、そのプリントジョブに相応しいプリンタを特定し、選択されたプリンタのネ
ットワークアドレスおよび名前を含む、選択プリンタトークンをクライアントに返送する。その後、クライアントは、選択プリンタトークンに付随するプリントジョブを適切なプリンタに送信する。このようにして、プリンタサーバによって、プリントジョブが、そのプリントジョブに適したプリンタに割り当てられる。
【特許文献1】PCT国際出願国際公開第99/38068号
【発明の開示】
【発明が解決しようとする課題】
【0007】
プリントサーバを使用する上記の概念が、各プリントサーバによって取り扱うことができるプリントキューの数およびプリントジョブの数がサーバのメモリ量、処理能力および記憶空間によって制限されるという問題を抱えていることを、本発明の発明者等は理解している。プリントサーバに高い負荷がかかるとき、プリントジョブの処理は遅くなる。
【0008】
大きなネットワークは多数のプリントサーバを必要とし、それはハードウエア、ソフトウエアならびに運用および保守の形で高いコストを伴う。
既知のプリントサーバの概念が抱える別の問題は、プリントジョブがネットワーク上で2度、すなわちコンピュータからプリントサーバに一度と、プリントサーバから印刷されることになるプリンタにもう一度、送信されることである。これは、帯域幅の需要が増加することを意味しており、大きなネットワーク、あるいは印刷の頻度が高いネットワークにおいて特に、需要が大きく、コストが高くなる可能性があることを意味する。
【0009】
特許文献1に記載されるジョブトークンプリンタ割当てシステムは実際に、ネットワーク上で2度、プリントジョブを送信するという上記の問題を解決する。そのプリントサーバは大きなプリントジョブをスプールする必要はなく、クライアントからのトークンに含まれる特徴(feature) を特定し、そのプリントジョブに相応しいプリンタを割り当てることしか必要としない。しかし、特許文献1に記載されるシステムは、書籍などの印刷が大量に実行され、印刷に関する柔軟性が不要であるような、編集などのためのシステムに関連するように思われる。特許文献1に記載されるシステムによれば、たとえば、クライアントは多くのプリンタの中からプリンタを選択できない上に、そのシステムは、選択されたプリンタがある時点で印刷能力を有するか否かを確認するために構文解析することもできない。システムは、種々のキューにおけるプリントジョブの進み具合に応じて、プリントキューをうまく処理しようとすることもなければ、印刷を制御することもない。さらに、クライアントからのいくつかのプリントジョブを同時に処理する能力がないばかりか、特にプリントジョブが完了した場合に、それらのプリントジョブが実際にどのように実行されるかを監視する能力もない。
【0010】
さらに、ネットワーク上で共用資源が用いられるときに、同様の問題が生じることを本発明の発明者等は理解している。たとえば、ネットワーク内のデータ記憶媒体上にデータを記憶するための装置、たとえばCDあるいはDVDレコーダ(ライタ)の場合、或るジョブが記録用の共用資源に送信されることになるときに、上記のプリントサーバに類似のサーバから制御および管理を実行する場合があり、その結果として同様の問題が生じる。別法では、共用資源は、或る時点で1人のユーザだけがその資源を使用できるようにし、キューが全く存在しないようにして、ネットワークに接続される。
【0011】
それゆえ、本発明の目的は、上記の問題および制約のない、ネットワーク内に接続されたクライアントから、そのネットワーク内に接続され、かつクライアントによって選択される共用資源、詳細にはプリンタ、ファクシミリ装置、プロジェクタあるいは記憶媒体上にデータを記憶するための装置に、ジョブを転送するための技法を提供することである。
【0012】
これに関して、本発明の或る特定の目的は、ジョブを失うという危険がない、ネットワ
ーク内に接続されたクライアントからジョブを直に、かつ柔軟に転送するための、そのような技法を提供することである。
【0013】
本発明のさらに別の目的は、単純で、頑強で、信頼性が高い、そのような技法を提供することである。
本発明のさらに別の目的は、最小限のハードウエアおよびソフトウエアを使用し、かつ大きなネットワーク、および上記共用資源の使用頻度が高いネットワークにおいて、ジョブを同時に取り扱うことができる、そのような技法を提供することである。
【0014】
本発明のさらに別の目的は、ネットワーク内に接続されたクライアントから、そのネットワーク内に接続され、かつクライアントによって選択される共用資源へのジョブの転送を、サーバから制御し、かつ監視する方法と、そのような方法を実行するためのコンピュータプログラム製品と、そのようなプログラム製品をインストールされたサーバおよびクライアント端末と、そのようなサーバおよびクライアント端末を含むネットワークとを用いることによって、そのような技法を提供することである。
【課題を解決するための手段】
【0015】
上記の目的は、添付の特許請求の範囲による方法、コンピュータプログラム製品、サーバ、クライアント端末およびネットワークを用いて、本発明に従って達成される。
チケットベース集中型サーバシステムを用いて、クライアント、およびクライアントが共用資源にジョブを転送するのを制御する。その技法は、ジョブのフローを制御するプログラムが、クライアントおよび集中型チケットサーバの両方に存在するので、独自である。そのプログラムはクライアントによる共用資源の使用を開始および停止し、ジョブのフローはチケットサーバによって制御される。
【0016】
サーバによって固有の識別情報がジョブに割り当てられ、その固有の識別情報はサーバによってクライアントに通知される。それにより、クライアントは、共用資源によって実行されることになるいくつかのジョブを、間をあけずに次々に開始することができ、これらのジョブはチケットサーバによって個別に取り扱われる。
【0017】
個々のジョブが共用資源によって首尾良く完了されたという確認、あるいは共用資源によってジョブが成功していないという指標が、クライアントからチケットサーバによって受信され、その後、対応する要求がキューから削除される。
【0018】
クライアントが共用資源を使用している間に、共用資源によるジョブの完了に関する更新ステータス情報が繰返し送信されることが好ましく、チケットサーバにおいてそのような更新ステータス情報が存在しない場合には、クライアントにおけるオペレーションエラー、あるいはクライアントとチケットサーバとの間の通信の通信エラーを示す。これは、チケットサーバが、その状態を検査し、その問題を処理するか、あるいはジョブおよび/または共用資源のためのステータスを変更するようにトリガするであろう。ジョブは、キューから削除されても、削除されなくてもよい。サーバにはタイマをインストールすることができ、種々の遅延によって異なる動作を起動することができる。
【0019】
ネットワークが2度用いられる場合とは対照的に、チケットベースシステムを用いることにより、ネットワーク利用度が大きく制限される。
本発明による技法は、クライアントがデータをサーバに送信し、その後、サーバがそれを共用資源に送信する代わりに、クライアントが使用を処理し、共用資源に任意のデータを直に送信するという事実によって、集中型サーバにかかる負荷も小さくしている。
【0020】
さらに、チケットベースの概念は、ジョブの優先順位を変更する能力を高めることに繋
がる。たとえば、ジョブが許可を与えられる前に中断された場合には、そのジョブはネットワーク上に全く送信される必要はない。これに対して、既知の技法では、プリントジョブは常にクライアントからプリントサーバに転送される。
【0021】
また提案される概念は、通常パーソナルコンピュータである最近のクライアント上に存在する、余剰能力および並列処理能力を利用する。より大きなオフィス環境の多くにおいて、電子メール処理、ワードプロセッシングおよびインターネットブラウジングのような処理を簡単にするために、高性能のパーソナルコンピュータが用いられる。これらのコンピュータは、チケットサーバとのバックグラウンド通信に非常に適しており、チケットサーバからの許可時に、共用資源へのジョブの転送を開始する。
【0022】
本発明のさらに別の利点、およびその特徴は、これ以降に与える本発明の好ましい実施形態の詳細な説明および添付の図面から明らかになるであろう。なお、それらは例示のために与えるにすぎず、それゆえ本発明の制限するものではない。
【0023】
[図面の簡単な説明]
図1は従来技術によるプリンティング技法が実施されるネットワークの概略図である。
図2は本発明の一実施形態が実施されるネットワークの概略図である。
図2の簡単な説明:
2−1:選択されたプリンタで印刷するために、クライアントがプリンタサーバにジョブIDの要求を送信する。
2−2:チケットサーバはリアルタイムデータベース内にプリンタのステータスに関する全ての情報を有し、選択されたプリンタがネットワーク上でアクティブである場合には、チケットサーバはクライアントにジョブIDを送信する。
2−3:クライアントがジョブIDを受信し、プリンタ上で印刷を実行する。
2−4:クライアントとチケットサーバとの間で多くて20kbのデータが送信される。
【0024】
図3−7は本発明の好ましい実施形態の種々の態様を示す流れ図である。
図3の簡単な説明:
3−1:シーケンス、DLLバージョン、プリントドライババージョン、プリンタ名、ユーザ名およびユーザドメインを送信する。
3−2:何か古すぎるものがないか、あるいはユーザが印刷するのを許されていないかを確認するために、ステップ1において受信された情報を検査し、ステップ4に進む。
3−3:ステップ1において受信されたデータをデータベースに入れ、SQLサーバによって生成された固有値を取り込み、それをクライアントに返送する。
3−4:エラーコードを読み出し、或る情報のバージョンが古い場合には、新しいバージョンを取り込むために処理されなければならないものを検査する。更新を実行した後に、ユーザに再び印刷するように要求する。ユーザが選択されたプリンタで印刷することを許されていない場合には、ユーザはインタラクティブな選択を実行しなければならない場合がある。その場合、ユーザは、その印刷に対処するためにすべきこと、すなわち印刷をキャンセルするか、あるいは別のプリンタに移ること、を選択することができる。
3−5:ジョブIDを受信する。
3−6:シーケンス、IPアドレス、ページ数、プリントジョブのサイズ、ジョブ識別情報、フロントエンド用紙バージョンおよび構成ファイルバージョンを送信する。
3−7:データを処理する。
3−8:データベース内のプリントジョブのための情報を更新し、クライアントに確認を送信する。
3−9:ユーザが許可されていないか?
3−10:ユーザがプリントジョブを別のプリンタに移すことができるようにするか、あるいはジョブを完全に削除できるようにする。ユーザがプリントジョブを別のプリンタに
移すことを選択する場合には、クライアントはステップ1からやり直さなければならない。
3−11:クライアントが古すぎたか?
3−12:クライアントの新しいバージョンを取り込み、クライアントが1つのサービスとして実行される場合には、クライアントは再起動されなければならない。
3−13:プリントドライババージョンが古すぎたので、プリントドライバを更新し、クライアントを起動する。
3−14:NATでない場合には、TCP/IP接続を閉じる。
図4の簡単な説明:
4−1:シーケンス、ジョブID、およびプリントジョブの削除を要求するためのエラーコードを送信する。
4−2:データを処理する。
4−3:データベースからプリントジョブを削除し、クライアントにジョブを削除するように命じる。
4−4:ディスク/メモリからジョブを削除する。
図5の簡単な説明:
5−1:サーバがプリントジョブを中断することを要求する。
5−2:データベース内のプリントジョブのステータスを「中断」に変更する。
5−3:プリントジョブの削除を要求するために、クライアントにシーケンスを送信する。
5−4:プリントジョブを削除し、クライアントからジョブが削除されたことをプリンタに通知する。
5−5:データを処理する。
5−6:データベースからプリントジョブを削除する。
図6の簡単な説明:
6−1:プリントキューから第1のジョブを取り込む(最も古いジョブ、そして次に優先順位に従ってソートされている)。
6−2:印刷するためのジョブをハイライトする。
6−3:印刷を開始することをクライアントに通知する。送信されるべき情報はシーケンス番号、ジョブID、プリンタIPアドレス、および印刷のために用いられるべき機能である。
6−4:印刷を開始することができたか?
6−5:データを処理する。
6−6:ジョブのステータスを「印刷中」に更新する。
6−7:許可された最大試行回数よりも多くの試行回数であるか?
6−8:所定の秒数だけ待ち、その後、ステップ4に進む。
6−9:サーバにエラーコードを送信する。たとえば、クライアントがプリンタに接続することができなかった。
6−10:データを処理する。
6−11:クライアントから受け取った情報に従ってデータベース内の情報を更新し、プリンタを制御するデーモンによってプリンタを検査する。
6−12:エラーを生じることなく、そのプリンタから印刷を実行することができたか?6−13:データを処理する。
6−14:プリントジョブの情報をデータベース内の個別のテーブルに移し、後にそれを用いて、統計値およびおそらくインボイシング情報を生成することができるようにする。6−15:サーバにエラーコードを送信する。
6−16:データを処理する。
6−17:データベース内の情報を更新し、ジョブを失敗としてハイライトし、プリンタを制御するデーモンによってプリンタを検査する。
図7の簡単な説明:
7−1:キューの動作は停止しているか?
7−2:支援機構に通知する。
7−3:そのプリンタで待機しているプリントジョブを有する全てのクライアントに、そのプリンタが動作していないことを通知する。
7−4:クライアントのためのダイアログウインドウを表示する。そのウインドウにおいて、クライアントはジョブを削除することが可能であること、ジョブを別のプリンタに移すことが可能であること、あるいはプリンタが再び動作するまで待つことが可能であることを受信する。
7−5:クライアントがジョブを削除することを望むか?
7−6:データを処理する。
7−7:データベースからジョブを削除する。
7−8:クライアントがジョブを別のプリンタに移すことを望むか?
7−9:クライアントが選択されたプリンタで印刷することを許可されたか?
7−10:選択されたプリンタが動作しているか?
7−11:クライアントが、プリンタが再び動作し始めるのを待つ。
7−12:プリントジョブを選択されたキューに移す。
7−13:ユーザが選択されたプリンタで印刷することを許可されなかったことをユーザに通知し、ステップ4からやり直す。
【発明を実施するための最良の形態】
【0025】
説明することを目的とし、限定することを目的としていない以下の説明では、本発明を完全に理解できるようにするために、特定の応用形態、技法、方法などの具体的な詳細が述べられる。しかしながら、本発明をこれらの具体的な詳細から逸脱する他の実施形態おいて実施できることは当業者には容易に明らかであろう。他の例では、既知の方法、プロトコル、装置あるいは回路の詳細な説明は、不要な詳細によって本説明を不明瞭にしないために省略する。
【0026】
以下の説明は5つの異なるセクションに分かれており、その最初のセクションでは、本発明の好ましい実施形態による、ネットワーク上で直に印刷するための技法の主な特性が包括的に説明する。その後、チケットサーバおよびクライアントの好ましい実施形態の詳細な説明をそれぞれ続ける。その後、本発明による、共用資源として用いるためのプリンタに対する種々の代替形態を説明する。最後に、その技法の複数の利点を列挙する。
【0027】
[1.本発明の好ましい実施形態による、ネットワークにおいて直に印刷するための技法の包括的な説明]
図2には、本発明によるプリンティング技法が実施されるネットワークの一例が示されている。ネットワークは、複数のクライアントあるいはユーザコンピュータ201を含み、それらは複数のプリンタ203とともにクライアントネットワーク205内に接続される。クライアントネットワーク205はさらに、サーバネットワーク207に接続され、オプションとしてそのネットワーク間にルータ209が介在する。サーバネットワーク207は、チケットサーバ211を含み、チケットサーバ211は、プリンタ203におけるクライアント201からの印刷を監視し、かつ制御する。
【0028】
印刷は以下のようにして実行される。選択されたプリンタで印刷することを望むクライアントは、チケットサーバ211に要求を送信し、そのプリンタでプリントジョブを印刷するために許可を得る。そのプリンタが利用可能であり、かつアクティブである、すなわちプリントジョブを受信することができる場合には、チケットサーバ211はクライアントに許可を送信し、それにより許可を受信したクライアントは、そのプリントジョブを、印刷するために選択されたプリンタに直に送信する。この目的を果たすために、チケットサーバ211はプリンタを監視しており、それゆえそのプリンタがアクティブであるか否
かに関する情報、およびそのプリンタがネットワーク上の同じあるいは別のクライアントからのプリントジョブで占有されているか否かに関する情報を有する。
【0029】
そのプリンタが占有されている場合には、チケットサーバ211によって、その要求はキューに入れられる。このキューは絶えず更新され、上記のプリントジョブが次に印刷されることになるときに、チケットサーバ211はクライアントに許可を送信し、クライアントはそのプリントジョブを、印刷するために選択されたプリンタに直に送信することができる。
【0030】
図2において、双方向の矢印213は、チケットサーバ211とクライアント201のうちの1つとの間のシグナリングを示しており、一方、矢印215は、クライアントから選択されたプリンタ201へのプリントジョブの転送を示す。
【0031】
プリントジョブは1つの識別情報を割り当てられており、それがクライアントに送信され、結果として、クライアントは識別情報をプリントジョブに関連付けることができる。その後、チケットサーバ211がクライアントに許可を送信するとき、その識別情報がその許可の中に含まれ、クライアントが正しいプリントジョブをプリンタに送信できる(クライアントがいくつかのプリントジョブをアクティブにしている場合)。クライアントは、割り当てられた識別情報を受信したという確認を、チケットサーバ211に返送することができる。
【0032】
さらに、クライアントが印刷するための許可を受信したときに、クライアントはチケットサーバ211に確認を送信することができる。この確認は、プリントジョブがクライアントによって送信されたか、あるいは送信されることになるという指標も含むことができる。プリントジョブが完了したときには、そのさらなる確認が、クライアントからチケットサーバ211に送信されることができるか、あるいはプリントジョブが首尾よく完了されなかった場合には、この指標がクライアントからサーバに送信され、その後、サーバはキューからその要求を削除することができる。
【0033】
プリンタがアクティブであるときに、プリントジョブの完了に関する更新ステータス情報がクライアントからチケットサーバ211に繰返し、詳細には定期的に送信されることが好ましく、そのような更新ステータス情報がチケットサーバ211に届かないことは(すなわち2つのステータス更新間の時間が超過していた場合には)、クライアントのオペレーションエラー、あるいはクライアントとチケットサーバ211との間の通信における通信エラーが発生したことを示す(プログラムエラーあるいはネットワークエラー)。これは、チケットサーバがその状態を検査し(たとえばプリンタを検査し)、その問題を処理するか、あるいはジョブおよび/またはプリンタのステータスを変更するようにトリガするだろう。ジョブはキューから削除されても、削除されなくてもよい。サーバにはタイマをインストールすることができ、種々の遅延によって種々の動作を起動することができる。エラーが示された場合には、システムの管理者に通知される。
【0034】
さらに、クライアントを常に更新しておくために、プリンタのステータスに関する情報を、チケットサーバ211からクライアントに送信することができる。これについては後にさらに説明される。
【0035】
クライアントとチケットサーバ211との間で送信されるデータの量は通常多くても20kbであり(本出願人によって開発されたバージョンの場合であり、後に詳細に説明される)、これは、ネットワークが大きな場合であっても、かなりの帯域幅を節約できると同時に、ネットワーク内の1つのサイトだけにチケットサーバ211を集中できる可能性を生じさせる。
【0036】
[2.チケットサーバの好ましい実施形態の詳細な説明]
本発明による、クライアントからプリンタへのプリントジョブの転送を制御し、かつ監視するためのチケットサーバの詳細な説明が以下に記載される。このセクションおよびそれに続くセクションの両方において、本発明の機能およびサーバとクライアントとの間の通信が説明されることに留意されたい。適当な場合には、図3〜図7の流れ図への参照が括弧で示される(流れ図内のステップを、図面の番号と、その後にダッシュと通し番号が続く数字によって与える)。
【0037】
チケットサーバは以下の構成要素を含む。
□コンピュータ
□データベース
□クライアントからのプリントジョブの要求を受信するプログラム
□プリントキューを取り扱うプログラム
□プリンタステータスを検査するためのプログラムあるいはサーバデーモン
□ファイルおよびプリンタをウインドウズ、OS/2およびDOSクライアントで共有できるようにするソフトウエア
□複数のチケットサーバ間でデータをコピーするためのプログラム
以下の説明では、ネットワークはTCP/IPベースのネットワークであると仮定される。変更した後に、本発明は明らかに、任意の種類のネットワークに適用することができる。
【0038】
[印刷:第1ステージ(図3)]
印刷の初期設定はクライアントによって実行される。チケットサーバがクライアントからプリントジョブの要求を含むメッセージを受信するとき、チケットサーバはクライアントから以下に記載されるデータを受信する(ステップ3−1)。
□シーケンス番号
□クライアントバージョン番号
□オペレーティングシステム
□プリンタドライババージョン
□プリンタ名
□ユーザドメイン
□ユーザ名
クライアントが送信した情報をサーバが読み出したとき、クライアントデータに不備がないかの検査が実行される。すなわち、その情報が以下の規則に従って検査され(ステップ3−2)、何らかの誤りがある場合には、エラーコードが生成される(ステップ3−4およびステップ3−9〜ステップ3−13)。
【0039】
受信されたデータが完全であるか否かが検査される。データが完全でない場合には、エラーコードがそのような情報を要求しているクライアントに送信される。クライアントソフトウエアが古い場合には、クライアントは強制的にクライアントソフトウエアをアップグレードすることができる。そのような場合には、このためのエラーコードが送信される。さらに、クライアントが使用しているプリンタドライバが、或る態様において適していないか否か、たとえば、そのドライバにおいてバグなどが見つかり、直ちに変更されるべきであるか否かが検査される。その場合には、このためのエラーコードが送信される。最後に、ユーザがそのプリンタで印刷することを許可されているか否かが検査される(ステップ3−9)。許可されていない場合には、エラーコードがクライアントに送信され、クライアントは別のプリンタを選択するように促される。
【0040】
エラーコードが送信されることになる場合には、以下の内容に従って送信される。
□シーケンス番号(送信されるエラーコードに対応する)
□エラーコード
そのエラーはログに記録され、その印刷試行において一般的には、サーバの構成要素からそれ以降の挙動が生じることはなく、新たな印刷試行がクライアントによって引き起こされなければならない。
【0041】
全ての情報が適切であった場合には、サーバはデータベースに情報を入力し、データベースから固有の識別子を受信する(ステップ3−3)。これは後にクライアントとサーバとの間の通信において用いられる。どのプリントジョブが関係しているかをクライアントが知るために、プリントジョブもこの識別子を「付される」(クライアントはいくつかのプリントジョブを同時に取り扱うことができなければならないので、クライアントはプリントジョブ毎に1つの識別子を有し、誤ったプリントジョブを誤ったプリンタに送信するのを防がなければならない)。
【0042】
識別子は、以下の内容に従って、1つのシーケンスにおいてクライアントに返送される。
□ シーケンス番号
□ジョブID(上記の識別子)
クライアントが上記のシーケンスを受信したとき(ステップ3−5)、クライアントは、プリントジョブをさらに詳細に記述するデータを返送する(ステップ3−6)。クライアントから受信される情報は以下の通りである。
□シーケンス番号
□クライアントのIPアドレス
□ページ数
□バイト数(プリントジョブのサイズ)
受信されたデータはサーバによって処理され(ステップ3−7)、データベース内のプリントジョブの情報が更新される(ステップ3−8)。
【0043】
そのクライアントがいわゆるNAT(ネットワークアドレス変換)ネットワーク上にあるか否かをサーバが判断するために、クライアントのIPアドレスが送信される。クライアントがNATネットワーク上にある場合には、異なる方向において、すなわちサーバからクライアントへの接続を再確立するのは多くの場合に非常に難しいので、これが行われる。その場合には、そのプリントジョブに関する全ての通信が完了するまで(すなわち、この説明における全てのステップが実行されるまで)、接続は開いたままにされるであろう。通常の例では、すなわちクライアントがNATネットワーク上にない場合には、不要なシグナリングオーバーヘッドが生じない最適なプリンティング技法を可能にするために、接続は異なるセッション間で閉じられる。
【0044】
一部では如何に大きなプリントジョブが送信されているかを或る程度確認するために、また、一部では統計的に記録する理由から、ページ数およびバイト数が収集される。
サーバは或るシーケンスを用いてクライアントに応答し、そのシーケンスは、サーバが作動可能状態であり、クライアントがサーバからのさらに多くの情報を待たなければならないことを伝える(ステップ3−8)。
【0045】
そのシーケンスは以下の通りである。
□シーケンス番号
先に示されたように、クライアントがNATネットワーク上にある場合を除いて、その後、クライアントとサーバとの間の接続は閉じられる。
【0046】
[印刷:第2ステージ(図6)]
サーバは新たなプリントジョブに関してデータベースに絶えず問い合わせを行う。これは、最初に、キュー内にプリントジョブを有する、ネットワーク上のプリンタを見つけるために探索を実行することにより実行され、その後、個々のプリンタのためのキュー内の全てのプリントジョブを見つけるために、各キューが構文解析される。その後、この情報は、タイムスタンプ、すなわちプリントジョブがサーバに到達した時刻によってソートされる。FIFO原理(FIFO、先入れ先出し)が用いられること、すなわち最も古いプリントジョブが最初に処理されることが好ましい。プリントジョブは他の種類の優先順位を用いてソートされることもできる。すなわち、或るプリントジョブが、以前にキュー内にあった他のプリントジョブよりも優先順位が高い場合には、そのキューにおいて、優先順位が高いプリントジョブが、優先順位が低いプリントジョブの前に動かされる。
【0047】
ネットワーク内のプリンタのステータスを監視するサーバデーモンについて、このセクションの最後に説明する。
サーバが、印刷されるべきプリントジョブを見つけると、そのプリントジョブはプリントキューから取り込まれ(ステップ6−1)、印刷のために選択される(ステップ6−2)。その後、サーバは、そのプリントジョブが印刷されることになるプリンタの情報を取り込む。サーバは、データベースの種々の部分から情報を取り込む。プリンタのためのIPアドレス、およびクライアントからプリンタにプリントジョブを送信するために用いられるべき仕組みの種類が収集される。またサーバは、プリンタのステータスが記憶される、データベースの別の部分からも情報を取り込む。ステータスはプリンタを管理するデーモンによって収集される。
【0048】
プリンタのステータスがOK以外のものである場合には、プリンタが動作していないことを伝えるシーケンスがクライアントに送信され、クライアントが、そのプリントジョブを削除するか、別のプリンタを選択するか、あるいはプリンタが再び動作し始めるのを待つことができるようにする。
【0049】
その際に送信されるシーケンスは以下の通りである。
□シーケンス番号
□エラーコード
プリンタがアクティブである、すなわち動作しており、かつアクセス可能である場合には、サーバは、以下の内容に従ってクライアントに情報を送信する(ステップ6−3)。□シーケンス番号
□ジョブID(固有識別子)
□プリンタのIPアドレス
□印刷の仕組み
その後、クライアントは、印刷が開始されていることを通知するシーケンスで応答することにより、印刷の開始を確認する(ステップ6−4)
プリンタに接続できなかった場合には、おそらく或る所定の回数だけ試行が失敗した後に(ステップ6−7〜ステップ6−8)、別のシーケンスが送信される(ステップ6−9)。
【0050】
印刷の開始に成功したとき、以下の内容に従ってシーケンスが送信される。
□シーケンス番号
一方、印刷を開始できなかった場合には、以下のシーケンスが送信される。
□シーケンス番号
□エラーコード(理由)
サーバは、クライアントからの応答を受信すると、それがどのシーケンスであるかを検査する(ステップ6−5およびステップ6−10)。印刷の開始に成功したとき、サーバは、データベース内のプリントジョブのステータスを「印刷中」に更新する(ステップ6
−6)。一方、プリントジョブを開始できなかった場合には、プリンタの情報を更新し、プリンタを監視するデーモンが、プリンタを直ちに検査すべきであることがわかるようにする(ステップ6−11)。サーバとクライアントとの間の接続が閉じられる。
【0051】
印刷中に、図2を参照して先に説明された、クライアントから更新ステータス情報を受信する方法が用いられる(ここでは示さない)。
印刷に成功した後に、クライアントから以下のシーケンスが受信される(ステップ6−12)。
□シーケンス番号
□ジョブID
受信されたデータがサーバにおいて処理され(ステップ6−13)、プリントジョブが首尾良く完了されたという情報がデータベース内の個別のテーブルに移されて、後に統計値、そしておそらくインボイシング情報を生成することができるようにする(ステップ6−14)。
【0052】
印刷が完了しなかった場合には、以下の内容に従ってクライアントからシーケンスが受信される(ステップ6−15)。
□シーケンス番号
□ジョブID
□エラーコード
サーバが受信データを処理し(ステップ6−16)、データベース内の情報を更新し、そのプリントジョブを失敗として印を付ける。さらに、プリンタのための情報が更新され、プリンタを監視するデーモンが、プリンタを直ちに検査すべきであることがわかるようにする(ステップ6−17)。
【0053】
プリントジョブのサイズ、および該当するプリンタのメモリあるいは記憶容量に応じて、サーバは、1つのプリンタ上で複数のプリントジョブを同時に印刷することを可能する。サーバは、或る特定のプリンタにおいてアクティブである、プリントジョブの数および/またはプリントジョブのバイト数を監視することができる。
【0054】
サーバはいつでもプリントジョブを中断する可能性がある(図5のステップ5−1)。その際、データベース内のプリントジョブのステータスは「削除中」に変更され(ステップ5−2)、サーバはクライアントに連絡を取り、プリントジョブを削除することを通知し、その後、それを確認する。以下のシーケンスがサーバからクライアントに送信される(ステップ5−3)。
□シーケンス番号
□ジョブID
クライアントがプリントジョブを削除したとき、以下の内容に従ってシーケンスを返送することにより応答する(ステップ5−4)。
□シーケンス番号
サーバはデータを処理し(ステップ5−5)、データベースからプリントジョブを削除する(ステップ5−6)。
【0055】
クライアントおよびそのプリントジョブの情報、プリントキューの処理および更新の情報、ならびにプリンタのステータスの情報は通常、先に説明されたものに従ってクライアントから受信されることに留意されたい。それにもかかわらず、これらのさらに多くの情報を得るために、そしておそらくクライアントから受け取った情報を確認するために、サーバはプリンタと直に通信する。これについてはさらに以下に説明される。
【0056】
[プリンタのステータス検査]
サーバデーモンは絶えずプリンタのステータスを検査する。これは、SNMP−質問(SNMP、簡易ネットワーク管理プロトコル)を個々のプリンタに転送することにより行われる。受信される情報は以下の通りである。
□プリンタのステータス
□トナー情報(レーザプリンタ)
□用紙情報
検査される情報は、プリンタモデルが対応するものによる。多くの場合に、さらに多くの情報、たとえば、レーザプリンタのプリンタドラムが交換されなければならないか、紙詰まりがあるかなどが取り込まれる場合がある。
【0057】
プリンタステータスがアクティブでない、すなわち「オフライン」である場合には、サーバデーモンは、紙詰まりがあるか否か、トナーが空であるか否か、ドラムが交換されなければならないか否かを検査することにより、この原因を検査しようとする。
【0058】
データベース内のプリンタのステータスが「オフライン」に更新され、プリントジョブを有するクライアントが、プリンタが動作していないので、クライアントがプリントジョブを移すことができるか、そのままキューに入れておくことができるか、あるいはそのプリントジョブを削除ことができることを、サーバデーモンによって通知される。
【0059】
またその情報は、プリンタの問題に対応することができる、ヘルプデスクあるいは類似の部門にも送信される場合がある。サーバデーモンが、用紙がないことを確認することができる場合には、その情報をたとえば、その職務(assignment)がプリンタにもう少し用紙を入れることである、或る特定の部門/人に送信することができる。
【0060】
プリンタを直に検査する必要がある場合には、そのシステムはデータベースも絶えず検査している。システムが直に検査されなければならないプリンタを見つけた場合には、プリンタが通常検査されることになる次の時点まで待つ代わりに、直ちに検査を実行する。これは、たとえば、クライアントがプリンタに接続できないことを報告した場合に行われる。
【0061】
図7には、キューが予定通りに動作していないことをサーバデーモンが検出する場合の、サーバとクライアントとの間の通信の流れ図が示される。
[冗長性]
チケットサーバのシャットダウンに対処するために、ネットワークは少なくとも2つのチケットサーバを備えることが好ましい。一方のサーバから別のサーバへのトランスペアレントな転送を達成するために、一方のサーバが或る理由によってシャットダウンされるとき、全てのデータがチケットサーバ間でコピーされる必要がある。これは、冗長技法によって実行することができる。
【0062】
クライアントはおそらく、連携して動作するチケットサーバのうちのいずれか一方を選択する可能性を与えられる。
[3.クライアントの詳細な説明]
そのシステムには、メインプログラムおよび複数のサブプログラムが含まれ、それらは合わせて、クライアントのオペレーティングシステムに応じたクライアントを形成する。メインプログラムはいくつかのプリントジョブを同時に取り扱い、かつ適切に印刷するための適切な情報を処理するように構成される。さらに、それらのプログラムは、1つあるいはいくつかのプリントジョブで何かが起こっている場合には、重要な情報を、そして個々のプリントジョブのステータスの情報をダイアログウインドウに表示するための機能を有する。
【0063】
クライアントがプリントジョブを開始する、すなわち印刷用にプレインストールされたプリンタにプリントジョブを送信するようにプログラムに要求するとき、メインプログラムがその役割を担う。その後、チケットサーバとの対話が行われる。
【0064】
クライアントプログラムは、チケットサーバから許可を得るための要求から開始する。これは、ブロッキングソケットあるいはノンブロッキングソケットを用いるRPCによって行われる。メッセージのサイズを最小限に抑えるために、データは16進法によって送信され、XORアルゴリズムによって変形される。
【0065】
サーバとの最初の対話において、以下の情報が送信される(図3のステップ3−1)。□シーケンス番号
□クライアントバージョン番号
□オペレーティングシステム
□プリンタドライババージョン
□プリンタ名
□ユーザドメイン
□ユーザ名
サーバからの応答が受信され(ステップ3−5)、それは以下のものを含む。
□シーケンス番号
□ジョブID
クライアントプログラムソフトウエアのプリンタドライバおよび/またはクライアントバージョンが古すぎる場合、あるいは認証されない場合には、上記のシーケンスの代わりにエラーコードシーケンスが用いられるであろう(ステップ3−4)。そのシーケンスは以下の情報を含む。
□シーケンス番号
□エラーコード
これが生じる場合には、クライアントソフトウエアは、サーバから、ドライバあるいはクライアントソフトウエアのいずれかの適切なバージョンをダウンロードするであろう。
【0066】
クライアントは、サイズに応じて、メモリに直に、あるいはコンピュータのローカルハードディスクドライブ上のカタログに、プリントジョブをスプールする。プリントジョブがメモリあるいはハードディスクドライブにスプールされると、プリントジョブのさらに多くの情報がサーバに送信される。プリントジョブは、サーバによって受信されているジョブIDに関連付けられており、それにより、印刷時に、プリントジョブを特定することができる。
【0067】
以下の情報がクライアントからサーバに送信される(ステップ3−6)。
□シーケンス番号
□IPアドレス
□ページ数
□バイト数
その後、サーバからの情報受信の確認が受信され、最初のダイアログ部分が完了する(ステップ3−8)。
【0068】
その後、クライアントのプリントジョブの印刷準備ができるまで、あるいはプリンタがもはやアクセスできなくなるまで、クライアントとサーバとの間で、それ以上のデータは送信されない。
【0069】
クライアントがNATネットワーク上にない場合には、クライアントはサーバへのTCP/IP接続を閉じる(ステップ3−14)。
印刷が開始されることになるとき、サーバはクライアントとの新たな対話を開始するであろう。この対話はサーバから以下の情報を受信することで開始される(図6のステップ6−3)。
□シーケンス番号
□ジョブID
□プリンタのIPアドレス
□プリンタ接続−プリントジョブが送信されることになる接続の種類
クライアントはサーバに対して、その情報を受信したという確認を返送し、プリンタに対して直に印刷を開始する(ステップ6−4)。シーケンス番号のみが送信される。
□シーケンス番号
クライアントがプリントジョブを送信できない場合、あるいは何かが起こっており、結果としてプリントジョブが完了できなかった場合には、適当なエラーコードを有する新たなシーケンスが送信される(ステップ6−9)。この情報は以下の通りである。
□シーケンス番号
□エラーコード
印刷中に、図2を参照して説明されたような、更新ステータス情報をクライアントから送信する方法を用いることができる(ここでは示さない)。
【0070】
印刷の準備ができたとき(あるいはこれから準備ができる場合には)、クライアントはチケットサーバにその印刷が完了したことを示す新たなシーケンスを送信する(ステップ6−12)。このシーケンスは以下の通りである。
□シーケンス番号
□ジョブID
クライアントがプリントジョブを中断する場合には、クライアントからサーバに以下のシーケンスが送信される(図4のステップ4−1)。
□シーケンス番号
□ジョブID
□エラーコード
そのデータはサーバによって処理され(ステップ4−2)、プリントジョブはデータベースから削除される。クライアントはサーバからプリントジョブを削除するための命令を受信し(ステップ4−3)、その後、クライアントはメモリあるいはハードディスクドライブからプリントジョブを削除する(ステップ4−4)。
【0071】
[4.本発明による、共用資源として用いられるプリンタの代替形態]
上記の好ましい実施形態はネットワーク内に接続されたプリンタを使用することに関連して説明されてきたが、本発明はこの点に限定されないことは理解されたい。より一般的には、ネットワーク内に接続された共用資源のために、プリンタ以外のものを用いることができる。この場合には、プリントキューは、共用資源を使用するためのキューと入れ替えられ、プリントジョブは共用資源に送信されることになるジョブと入れ替えられ、印刷はジョブを送信することと入れ替えられる。共用資源には、たとえば、ファクシミリ装置のようなネットワーク上で共有される送信装置、デジタル映写装置のようなネットワーク上で共有されるディスプレイユニット、あるいはCDまたはDVDレコーダのようなネットワーク上のデータ記憶媒体にデータを記憶するための共用資源を用いることができる。適当に修正した後に、上記の説明をそのような共用資源装置に当てはめることができる。
【0072】
[5.その技法の利点]
本発明の利点は、とりわけ以下のものを含む。
□ネットワークの負荷が低減される。本発明では、処理されたジョブが、共用資源に送信される前に、常にクライアントに記憶されるので、必要とされるネットワーク容量が小さくなる。ジョブは常に、共用資源に直に送信される。サーバ上に介在する記憶機構は不要
である。
□スケーラビリティ。本発明はスケーラブルであり、中企業から大企業にまで適合する。その製品は内部帯域幅に関する要求が小さいので、その製品は多国間にわたる団体において都合よく用いることができる。たとえば、各サーバは20000キューおよび100000ジョブを同時に取り扱う能力を有する。
□サーバへの負荷が小さいので、共用資源をより高速に使用することができる。
□サーバにおけるハードディスクドライブ空間の要求が小さい。
□集中管理および編成。集中化された解決手段によって、コスト効率かつ能動的な監視を達成できる可能性が大きくなり、共用資源を最大限に利用することができる。
□高い自由度。本発明は自由度が高く、共用資源の製造業者が対応することができる、今日の市場に存在する大部分のオペレーティングシステムによって用いられることができる。その解決手段は、何も混乱を生じることなく新たな状況に適合することができる。追加の別のモジュールが存在し、それを実装することができる。
□共用資源のための、特にドライバの自動化された配布および更新。新たな種類の共用資源が市場において購入できるようになるとき、あるいは新たなドライバが開示されるとき、これらが試験され、ネットワーク全体にわたって配布されるであろう。システム内の構成要素のパッチおよび更新も同じ手順に従う。
□認証および検査。全ての構成要素およびドライバが、クライアントの環境において実施される前に、認証され、試験される。
□アクセシビリティ。冗長性を用いることにより、高いアクセシビリティが与えられる。□遠隔監視およびサポート。共用資源、特に共用資源がプリンタである場合の用紙およびトナー補給品の監視が管理インターフェースにおいて利用可能である。これは、企業の共用資源においてシャットダウンタイムを最小限に抑えるために、共用資源の保守の計画を容易にし、特に共用資源がプリンタである場合のトナーおよび用紙を補給するのを容易にする。
□経済性。本発明は実施するのが簡単であり、ハードウエア、ソフトウエアおよびネットワーク容量に対する要求が低い。
□共用資源のコストおよび使用状況を全てのレベル、たとえばクライアント、部門、グループあるいは共用資源において監視することができる。
【0073】
本発明は、図面にも示されている、上記の好ましい実施形態には限定されないことは明らかであり、添付の特許請求の範囲内で変更することができる。
【図面の簡単な説明】
【0074】
【図1】従来技術によるプリンティング技法が実施されるネットワークの概略図。
【図2】本発明の一実施形態が実施されるネットワークの概略図。
【図3】本発明の好ましい実施形態の種々の態様を示す流れ図。
【図4】本発明の好ましい実施形態の種々の態様を示す流れ図。
【図5】本発明の好ましい実施形態の種々の態様を示す流れ図。
【図6】本発明の好ましい実施形態の種々の態様を示す流れ図。
【図7】本発明の好ましい実施形態の種々の態様を示す流れ図。

【特許請求の範囲】
【請求項1】
ネットワーク内に接続されたクライアントから該ネットワーク内に接続された共用資源へのジョブの転送をサーバから制御し、かつ監視する方法であって、
前記ネットワーク内に接続されたクライアントから、該ネットワーク内に接続された選択された共用資源にジョブを送信することの許可を得るための要求を受信するステップと、
前記ネットワーク内に接続された共用資源がアクセス可能であり、かつ現時点でジョブを受信する能力を有するか否かを絶えず検査するステップとを含み、
前記選択された共用資源がアクセス可能であり、かつ現時点でジョブを受信する能力を有する場合には、前記クライアントが前記選択された共用資源に直に前記ジョブを送信することができるという許可が、前記ネットワーク内に接続されたクライアントに直ちに送信され、
前記ネットワーク内に接続された共用資源がアクセス可能であるが、現時点ではジョブを受信する能力を欠いている場合には、前記要求は前記選択された共用資源のためのキューに入れられ、前記キューは絶えず更新され、前記要求が前記キュー内の先頭の位置まで進んでおり、かつ前記選択された共用資源がジョブを受信する能力を有するときに、前記クライアントが前記選択された共用資源に直に前記ジョブを送信することができるという許可が前記ネットワーク内に接続されたクライアントに送信され、
前記選択された共用資源がアクセス可能でない場合には、前記ネットワーク内に接続されたクライアントに通知され、
前記ネットワーク内に接続されたクライアントから要求を受信する前記ステップの後に、前記ジョブに識別情報を割り当てるステップを含み、前記ジョブは前記ネットワーク内に接続されたクライアントに通知され、前記識別情報は前記許可に含まれ、前記クライアントが前記選択された共用資源に直に前記ジョブを送信することができるという許可は前記ネットワーク内に接続されたクライアントに送信され、結果として、前記ネットワーク内に接続されたクライアントは前記識別情報に基づいて前記ジョブを特定することができ、
前記共用資源によって前記ジョブが首尾良く完了されたという事実の確認、あるいは前記共用資源によって前記ジョブが首尾よく完了されなかったという事実の指標が前記クライアントから受信され、その後、前記要求は前記キューから削除されることを特徴とする方法。
【請求項2】
前記共用資源による前記ジョブの完了に関する更新されたステータス情報が、前記許可が前記ネットワーク内に接続されたクライアントに送信されてから、前記共用資源によって前記ジョブが首尾良く完了されたという前記確認、あるいは前記共用資源によって前記ジョブが首尾よく完了されなかったという前記指標が受信されるまでの間に前記ネットワーク内に接続されたクライアントから繰返し受信され、そのような更新ステータス情報がないことは、前記ネットワーク内に接続されたクライアントのオペレーションエラー、あるいは前記クライアントと前記サーバとの間の通信における通信エラーを示す、請求項1に記載の方法。
【請求項3】
前記割り当てられた識別情報が前記ネットワーク内に接続されたクライアントによって受信されたという確認が受信される、請求項1または2に記載の方法。
【請求項4】
前記ネットワーク内に接続されたクライアントに送信される前記クライアントが前記ジョブを前記選択された共用資源に直に送信することができるという前記許可が、前記ネットワーク内に接続されたクライアントによって受信されたという確認が受信される、請求項1〜3のいずれか1項に記載の方法。
【請求項5】
前記ネットワーク内に接続されたクライアントに送信される前記クライアントが前記ジョブを前記共用資源に直に送信することができるという前記許可が、受信されたという前記確認は、前記ジョブが前記共用資源に直に送信されたか、あるいは送信されることになるという確認でもある、請求項4に記載の方法。
【請求項6】
前記共用資源はプリンタであり、前記ジョブはプリントジョブである、請求項1〜5のいずれか1項に記載の方法。
【請求項7】
前記共用資源は送信装置、詳細にはファクシミリ装置か、表示装置、詳細にはプロジェクタか、あるいはデータを記憶するための装置、詳細にはCDレコーダ、DVDレコーダなどであり、前記ジョブはデータを送信、表示あるいは記憶するためのジョブである、請求項6に記載の方法。
【請求項8】
前記共用資源のステータスに関する情報は、前記ネットワーク内に接続されたクライアントに送信される、請求項1〜7のいずれか1項に記載の方法。
【請求項9】
前記選択された共用資源と通信することに関連する、前記ネットワーク内に接続されたクライアントのためのクライアントソフトウエアのバージョンが記憶され、
前記ネットワーク内に接続されたクライアントが前記選択された共用資源との通信のために使用している前記クライアントソフトウエアの前記バージョンに関する情報が、前記ネットワーク内に接続されたクライアントから受信され、
前記クライアントソフトウエアの前記バージョンが比較され、
前記比較が、前記記憶されるクライアントソフトウエアが前記ネットワーク内に接続されたクライアントによって用いられる前記クライアントソフトウエアよりも新しいことを示す場合には、前記記憶されるクライアントソフトウエアのコピーが前記ネットワーク内に接続されたクライアントに転送されるか、あるいはインストールされる、請求項1〜8のいずれか1項に記載の方法。
【請求項10】
前記ネットワーク内に接続されたクライアントが使用している前記クライアントソフトウエアの前記バージョンに関する前記情報は、前記選択された共用資源にジョブを送信することの許可を得るための前記要求とともに受信される、請求項9に記載の方法。
【請求項11】
前記選択された共用資源にジョブを送信することの許可を得るための前記要求は、前記ネットワーク内に接続されたクライアントのためのユーザドメインおよびユーザ固有情報を含み、
前記ネットワーク内に接続されたクライアントが前記選択された共用資源にジョブを送信するための権限を有することが検査され、
前記ネットワーク内に接続されたクライアントが前記選択された共用資源にジョブを送信するための権限を持たない場合には、前記ネットワーク内に接続されたクライアントにエラーコードが送信される、請求項1〜10のいずれか1項に記載の方法。
【請求項12】
前記ネットワーク内に接続されたクライアントが前記選択された共用資源にジョブを送信することの許可を得るための権限を有する場合には、前記ネットワーク内に接続されたクライアントがどのユーザ優先順位を有するかが検査され、
前記要求は、前記ネットワーク内に接続されたクライアントの前記ユーザ優先順位に応じて前記キュー内に入れられる、請求項11に記載の方法。
【請求項13】
前記ジョブのサイズの情報が、前記ネットワーク内に接続されたクライアントから受信される、請求項1〜12のいずれか1項に記載の方法。
【請求項14】
前記ジョブのサイズの前記情報は、前記割り当てられた識別情報が受信されたという前記確認とともに受信される、請求項3に従属する時、請求項13に記載の方法。
【請求項15】
前記ネットワーク内の前記共用資源のステータスが絶えず検査される、請求項1〜14のいずれか1項に記載の方法。
【請求項16】
前記ネットワーク内の共用資源のステータスに関する情報、キューに関する情報ならびにクライアントおよびジョブに関する情報が、ジョブの転送を制御し、かつ監視するための第2のサーバに絶えずコピーされる、請求項1〜15のいずれか1項に記載の方法。
【請求項17】
サーバの内部メモリにダウンロード可能なコンピュータプログラム製品であって、該コンピュータプログラム製品が前記サーバ上で実行されるときに、請求項1〜16のいずれか1項に記載の方法を実行するソフトウエアコード部を含む、コンピュータプログラム製品。
【請求項18】
請求項17に記載のコンピュータプログラム製品をダウンロードされたサーバ。
【請求項19】
ネットワーク内に接続されたクライアントから、該ネットワーク内に接続されたいくつかの共用資源の中から前記クライアントによって選択された1つの共用資源にジョブを転送する方法であって、
前記ネットワーク内に接続された共用資源へのジョブの転送を制御し、かつ監視するためのサーバに、前記ネットワーク内に接続された選択された共用資源に直にジョブを送信することの許可を得るための要求を送信するステップであって、前記サーバは、前記ネットワーク内に接続されたクライアントに通信される識別情報を前記ジョブに割り当て、前記選択された共用資源のためにキューに前記要求を入れ、前記キューを絶えず更新し、前記クライアントが前記選択された共用資源に前記ジョブを次に送信するときに、前記ネットワーク内に接続されたクライアントに許可を与えるように構成されている、要求を送信するステップと、
前記サーバから前記識別情報のメッセージを受信するステップと、
前記ジョブを準備し、かつ記憶するステップと、
前記サーバから、前記ジョブを前記選択された共用資源に送信することができるという許可を受信するステップであって、該許可は前記識別情報を含み、前記識別情報に基づいて前記ジョブを特定することができる、許可を受信するステップと、
前記選択された共用資源に前記ジョブを直に送信するステップと、
前記選択された共用資源から、該共用資源によって前記ジョブが首尾良く完了されたという確認、あるいは前記共用資源によって前記ジョブが首尾よく完了されなかったという指標を受信するステップと、
前記確認あるいは指標を前記サーバに転送し、前記キューから前記要求を削除できるようにするステップとを含むことを特徴とする方法。
【請求項20】
前記共用資源による前記ジョブの完了に関する更新されたステータス情報が、前記許可が前記サーバから受信されてから、前記共用資源によって前記ジョブが首尾良く完了されたという前記確認、あるいは前記共用資源によって前記ジョブが首尾よく完了されなかったという前記指標が前記共用資源から受信され、前記サーバに転送されるまでの間に前記サーバに繰返し送信され、そのような更新ステータス情報がないことは、前記ネットワーク内に接続されたクライアントのオペレーションエラー、あるいは前記クライアントと前記サーバとの間の通信における通信エラーを示す、請求項19に記載の方法。
【請求項21】
前記割り当てられた識別情報の前記メッセージが受信されたという確認が前記サーバに送信される、請求項19または20に記載の方法。
【請求項22】
前記ジョブを前記選択された共用資源に送信することができるという前記許可が受信されたという確認が前記サーバに送信される、請求項19〜21のいずれか1項に記載の方法。
【請求項23】
前記許可が受信されたという前記確認は、前記ジョブが前記共用資源に送信されたか、あるいは送信されることになるという確認でもある、請求項22に記載の方法。
【請求項24】
前記共用資源はプリンタであり、前記ジョブはプリントジョブである、請求項19〜23のいずれか1項に記載の方法。
【請求項25】
前記共用資源は送信装置、詳細にはファクシミリ装置か、表示装置、詳細にはプロジェクタか、あるいはデータを記憶するための装置、詳細にはCDレコーダ、DVDレコーダなどであり、前記ジョブはデータを送信、表示あるいは記憶するためのジョブである、請求項24に記載の方法。
【請求項26】
前記ネットワーク内に接続されたクライアントが前記選択された共用資源と通信するために使用している前記クライアントソフトウエアのバージョンに関する情報が前記サーバに送信され、
前記サーバによって記憶されるクライアントソフトウエアのコピーが、前記ネットワーク内に接続されたクライアントが使用している前記クライアントソフトウエアのバージョン番号よりも後のバージョン番号を有する場合には、前記コピーが前記サーバから受信される、請求項19〜25のいずれか1項に記載の方法。
【請求項27】
前記ネットワーク内に接続されたクライアントが使用している前記クライアントソフトウエアの前記バージョンに関する前記情報は、前記選択された共用資源にジョブを送信することの許可を得るための前記要求とともに前記サーバに送信される、請求項26に記載の方法。
【請求項28】
前記選択された共用資源にジョブを送信することの許可を得るための前記要求は、前記ネットワーク内に接続されたクライアントのためのユーザドメインおよびユーザ固有情報を含み、
前記ネットワーク内に接続されたクライアントが前記選択された共用資源にジョブを送信するための権限を持たない場合には、前記サーバからエラーコードが受信される、請求項19〜27のいずれか1項に記載の方法。
【請求項29】
前記ジョブのサイズの情報が前記サーバに送信される、請求項19〜28のいずれか1項に記載の方法。
【請求項30】
前記ジョブのサイズの前記情報は、前記割り当てられた識別情報が受信されたという前記確認とともに前記サーバに送信される、請求項21に従属する時、請求項29に記載の方法。
【請求項31】
サーバの内部メモリにダウンロード可能なコンピュータプログラム製品であって、該コンピュータプログラム製品が前記サーバ上で実行されるときに、請求項19〜30のいずれか1項に記載の方法を実行するソフトウエアコード部を含む、コンピュータプログラム製品。
【請求項32】
請求項31に記載のコンピュータプログラム製品をダウンロードされたクライアント端末。
【請求項33】
請求項18に記載の少なくとも1つのサーバと、請求項32に記載の複数のクライアント端末とを含むネットワーク。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2006−504182(P2006−504182A)
【公表日】平成18年2月2日(2006.2.2)
【国際特許分類】
【出願番号】特願2004−546613(P2004−546613)
【出願日】平成15年10月28日(2003.10.28)
【国際出願番号】PCT/SE2003/001663
【国際公開番号】WO2004/038580
【国際公開日】平成16年5月6日(2004.5.6)
【出願人】(505158138)デブラブス アーベー (1)
【氏名又は名称原語表記】DEVLABS AB
【Fターム(参考)】