(57)【要約】【課題】  処理完了の間際にタイムアウトが発生する可能性を低くする。【解決手段】  クライアント装置１は、サーバ装置２への処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長する。クライアント装置１は、サーバ装置へ処理要求とともにタイムアウト時間情報を送信し、サーバ装置２からタイムアウト時間延長要求を受信した場合、タイムアウト時間内に処理が完了しないと判定しタイムアウト時間を延長する。一方、サーバ装置２は、クライアント装置１から処理要求とタイムアウト時間情報を受信し、タイムアウト時間情報に基づく基準処理時間が経過したときに処理が完了していない場合、タイムアウト時間延長要求をクライアント装置１へ送信する。【選択図】 図２
2009098908.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置がサーバ装置へ処理要求を発行した際のクライアント装置のタイムアウト時間を制御するタイムアウト制御システムにおいて、
前記クライアント装置は、前記サーバ装置への前記処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合に前記タイムアウト時間を延長すること、
を特徴とするタイムアウト制御システム。
【請求項２】
前記クライアント装置は、前記サーバ装置へ前記処理要求とともにタイムアウト時間情報を送信し、前記サーバ装置からタイムアウト時間延長要求を受信した場合、前記タイムアウト時間内に処理が完了しないと判定し前記タイムアウト時間を延長し、
前記サーバ装置は、前記クライアント装置から前記処理要求とともに前記タイムアウト時間情報を受信し、前記タイムアウト時間情報により特定される前記タイムアウト時間より短い所定の時間が経過したときに前記処理が完了していない場合、前記タイムアウト時間延長要求を前記クライアント装置へ送信すること、
を特徴とする請求項１記載のタイムアウト制御システム。
【請求項３】
前記クライアント装置は、前記サーバ装置へ前記処理要求を送信し、前記サーバ装置から前記処理の実行中のイベント発生を通知するイベント発生通知を受信し、前記タイムアウト時間より短い所定の時間が経過したときに前記イベント発生通知に基づき前記タイムアウト時間内に処理が完了しないと判定した場合には前記タイムアウト時間を延長し、
前記サーバ装置は、前記クライアント装置から前記処理要求を受信し、前記処理中にイベントが発生するたびに前記イベント発生通知を前記クライアント装置へ送信すること、
を特徴とする請求項１記載のタイムアウト制御システム。
【請求項４】
サーバ装置へ処理要求の発行後にタイムアウト時間が経過するとその処理要求に対する応答の取得を諦めるクライアント装置において、  
前記処理要求を発行する処理要求手段と、
前記タイムアウト時間を計測するタイマと、
前記処理要求の発行後に、前記タイムアウト時間内に処理が完了しないと判定した場合に前記タイムアウト時間を延長するタイムアウト時間延長手段と、
を備えることを特徴とするクライアント装置。
【請求項５】
前記処理要求手段は、前記処理要求とともに前記タイムアウト時間に関するタイムアウト時間情報を送信し、
前記タイムアウト時間延長手段は、前記タイムアウト時間情報に基づき前記サーバ装置内で前記タイムアウト時間より短い所定の時間が経過したときに前記処理が完了していない場合に送信されてくるタイムアウト時間延長要求を受信すると、前記タイムアウト時間内に処理が完了しないと判定し前記タイムアウト時間を延長すること、
を特徴とする請求項４記載のクライアント装置。
【請求項６】
前記タイムアウト時間延長手段は、前記サーバ装置から前記処理の実行中のイベント発生を通知するイベント発生通知を受信し、前記タイムアウト時間より短い所定の時間が経過したときに前記イベント発生通知に基づきタイムアウト時間内に処理が完了しないと判定した場合には前記タイムアウト時間を延長することを特徴とする請求項４記載のクライアント装置。
【請求項７】
前記タイムアウト時間の初期値は、過去の前記処理要求に対する前記処理の所要時間を示す履歴に基づいて決定されることを特徴とする請求項４記載のクライアント装置。
【請求項８】
前記タイムアウト時間延長手段は、前記タイムアウト時間を延長した後に、前記サーバ装置から前記イベント発生通知を受信し、延長後の前記タイムアウト時間より短い所定の時間が経過したときに前記イベント発生通知に基づき前記処理の進行状況を判定し、延長前の前記進行状況と延長後の前記進行状況とが一致しない場合には前記タイムアウト時間を再延長し、延長前の前記進行状況と延長後の前記進行状況とが一致する場合には前記タイムアウト時間を再延長しないことを特徴とする請求項６記載のクライアント装置。
【請求項９】
クライアント装置から処理要求を受信しその処理を実行するサーバ装置において、  
前記クライアント装置から前記処理要求とともに、前記クライアント装置のタイムアウト時間に関するタイムアウト時間情報を受信しその処理要求で指定されている処理を実行する処理実行手段と、
前記タイムアウト時間情報により特定される前記タイムアウト時間より短い所定の時間を計測するタイマと、
前記所定の時間が経過したときに前記処理が完了していない場合、前記クライアント装置のタイムアウト時間を延長させるタイムアウト時間延長要求を前記クライアント装置へ送信する延長要求手段と、
を備えることを特徴とするサーバ装置。
【請求項１０】
クライアント装置がサーバ装置へ処理要求を発行した際のクライアント装置のタイムアウト時間を制御するタイムアウト制御方法において、
前記クライアント装置は、前記サーバ装置への前記処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合に前記タイムアウト時間を延長すること、
を特徴とするタイムアウト制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タイムアウト制御システム、クライアント装置、サーバ装置およびタイムアウト制御方法に関するものである。
【背景技術】
【０００２】
タイムアウト時間を動的に変更するシステムとして、例えば、ネットワーク上のファイルシステムについての処理要求に対して動的にタイムアウト時間を最適に設定するシステムがある（例えば特許文献１参照）。
【０００３】
特許文献１記載のシステムでは、以前に得られた要求に対する応答時間に基づき、タイムアウト時間が決定される。
【特許文献１】特開平９−１５３８９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
タイムアウト時間は、正常時にはタイムアウトが発生せず、異常時には可能な限り早めにタイムアウトが発生するように設定されることが望ましい。
【０００５】
しかしながら、従来の技術では、過去の応答時間に基づきタイムアウト時間が決定されるため、今回の処理要求に対して実際に適切なタイムアウト時間が設定されるとは限らない。このため、処理完了の間際にタイムアウトが発生してしまう可能性がある。
【０００６】
本発明は、上記の問題に鑑みてなされたものであり、処理完了の間際にタイムアウトが発生する可能性を低くすることができるタイムアウト制御システムおよびタイムアウト制御方法、並びにそのシステムおよび／または方法に使用可能なクライアント装置およびサーバ装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明では以下のようにした。
【０００８】
本発明に係るタイムアウト制御システムは、クライアント装置がサーバ装置へ処理要求を発行した際のクライアント装置のタイムアウト時間を制御するタイムアウト制御システムである。そして、クライアント装置は、サーバ装置への処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長する。
【０００９】
また、本発明に係るタイムアウト制御システムは、上記のタイムアウト制御システムに加え、次のようにしてもよい。この場合、クライアント装置は、サーバ装置へ処理要求とともにタイムアウト時間情報を送信し、サーバ装置からタイムアウト時間延長要求を受信した場合、タイムアウト時間内に処理が完了しないと判定しタイムアウト時間を延長する。また、サーバ装置は、クライアント装置から処理要求とともにタイムアウト時間情報を受信し、タイムアウト時間情報により特定されるタイムアウト時間より短い所定の時間が経過したときに処理が完了していない場合、タイムアウト時間延長要求をクライアント装置へ送信する。
【００１０】
また、本発明に係るタイムアウト制御システムは、上記のタイムアウト制御システムのいずれかに加え、次のようにしてもよい。この場合、クライアント装置は、サーバ装置へ処理要求を送信し、サーバ装置から処理の実行中のイベント発生を通知するイベント発生通知を受信し、タイムアウト時間より短い所定の時間が経過したときにイベント発生通知に基づきタイムアウト時間内に処理が完了しないと判定した場合には、タイムアウト時間を延長する。また、サーバ装置は、クライアント装置から処理要求を受信し、処理中にイベントが発生するたびにイベント発生通知をクライアント装置へ送信する。
【００１１】
本発明に係るクライアント装置は、処理要求を発行する処理要求手段と、タイムアウト時間を計測するタイマと、処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長するタイムアウト時間延長手段とを備える。
【００１２】
また、本発明に係るクライアント装置は、上記のクライアント装置に加え、次のようにしてもよい。この場合、処理要求手段は、処理要求とともにタイムアウト時間に関するタイムアウト時間情報を送信する。タイムアウト時間延長手段は、タイムアウト時間情報に基づきサーバ装置内でタイムアウト時間より短い所定の時間が経過したときに処理が完了していない場合に送信されてくるタイムアウト時間延長要求を受信すると、タイムアウト時間内に処理が完了しないと判定しタイムアウト時間を延長する。
【００１３】
また、本発明に係るクライアント装置は、上記のクライアント装置のいずれかに加え、次のようにしてもよい。この場合、タイムアウト時間延長手段は、サーバ装置から処理の実行中のイベント発生を通知するイベント発生通知を受信し、タイムアウト時間より短い所定の時間が経過したときにイベント発生通知に基づきタイムアウト時間内に処理が完了しないと判定した場合にはタイムアウト時間を延長する。
【００１４】
また、本発明に係るクライアント装置は、上記のクライアント装置のいずれかに加え、次のようにしてもよい。この場合、タイムアウト時間の初期値は、過去の処理要求に対する処理の所要時間を示す履歴に基づいて決定される。
【００１５】
また、本発明に係るクライアント装置は、上記のクライアント装置のいずれかに加え、次のようにしてもよい。この場合、タイムアウト時間延長手段は、タイムアウト時間を延長した後に、サーバ装置からイベント発生通知を受信し、延長後のタイムアウト時間より短い所定の時間が経過したときにイベント発生通知に基づき処理の進行状況を判定し、延長前の進行状況と延長後の進行状況とが一致しない場合にはタイムアウト時間を再延長し、延長前の進行状況と延長後の進行状況とが一致する場合にはタイムアウト時間を再延長しない。
【００１６】
本発明に係るサーバ装置は、クライアント装置から処理要求とともに、クライアント装置のタイムアウト時間に関するタイムアウト時間情報を受信しその処理要求で指定されている処理を実行する処理実行手段と、タイムアウト時間情報により特定されるタイムアウト時間より短い所定の時間を計測するタイマと、所定の時間が経過したときに処理が完了していない場合、クライアント装置のタイムアウト時間を延長させるタイムアウト時間延長要求をクライアント装置へ送信する延長要求手段とを備える。
【００１７】
本発明に係るタイムアウト制御方法は、クライアント装置がサーバ装置へ処理要求を発行した際のクライアント装置のタイムアウト時間を制御するタイムアウト制御方法である。この方法では、クライアント装置が、サーバ装置への処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長する。
【００１８】
以上のようにすることで、クライアント装置において、サーバ装置における今回の処理の進行に応じてタイムアウト時間が延長されるため、処理完了の間際にタイムアウトが発生する可能性を低くすることができる。
【発明の効果】
【００１９】
本発明によれば、クライアント装置において、処理完了の間際にタイムアウトが発生する可能性を低くすることができる。
【発明を実施するための最良の形態】
【００２０】
以下、図に基づいて本発明の実施の形態を説明する。
実施の形態１．
図１は、本発明の実施の形態１に係るタイムアウト制御システムの構成を示すブロック図である。図１において、クライアント装置１は、サーバ装置２に対して、通信路３を介して所定の処理の実行を要求し、サーバ装置２から実行結果または処理完了通知を取得する端末装置である。サーバ装置２は、クライアント装置１からの処理要求を受信すると、要求された処理を実行し、通信路３を介して実行結果または処理完了通知をクライアント装置１へ送信する装置である。
【００２１】
クライアント装置１において、通信装置１１は、通信路３を介してサーバ装置２とデータ通信可能な装置である。通信路３としては、ＬＡＮ、その他のコンピュータネットワーク、各種通信回線などがあり、通信装置１１としては、ネットワークインタフェースカード、モデムなどが使用される。
【００２２】
また、クライアント装置１内の図示せぬコンピュータで各種プログラムが実行されることにより、通信処理部１２、処理要求部１３、タイマ１４およびタイムアウト設定部１５が実現される。
【００２３】
通信処理部１２は、通信装置１１を制御し、所定の通信プロトコルで、通信路３に接続された他の装置との間でデータ通信を行う処理部である。
【００２４】
処理要求部１３は、ユーザ操作などの所定のイベントが発生すると、サーバ装置３に対して所定の処理の実行を要求する処理要求を発行する処理部である。処理要求部１３は、処理要求を発行する処理要求手段として機能する。
【００２５】
タイマ１４は、タイムアウト時間を計測する処理部である。タイマ１４は、タイムアウト時間を計測するタイマとして機能する。
【００２６】
タイムアウト設定部１５は、タイムアウト時間の値を決定する処理部である。また、タイムアウト設定部１５は、処理が完了する前に、サーバ装置２からタイムアウト時間延長要求が受信されると、タイムアウト時間を延長する。タイムアウト設定部１５は、処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長するタイムアウト時間延長手段として機能する。つまり、タイムアウト設定部１５は、処理要求時に使用されるタイムアウト時間の初期値と、延長要求の受信時の延長後のタイムアウト時間の値を決定する。なお、タイムアウト時間の初期値を、同一の処理に対する処理時間履歴データ１６ｂに基づいて決定するようにしてもよい。
【００２７】
また、データ格納装置１６は、タイムアウト時間データ１６ａおよび処理時間履歴データ１６ｂを格納する装置である。データ格納装置１６としては、ハードディスクドライブ、不揮発性メモリなどが適宜使用される。処理時間履歴データ１６ｂは、過去の処理要求に対する応答時間を処理要求の種別ごとに分類して保存するデータである。処理時間履歴データ１６ｂは、過去の各処理要求についての、タイムアウトの発生の有無、タイムアウト発生時のタイムアウト時間、処理要求から処理完了通知までの処理時間などを含む。
【００２８】
サーバ装置２において、通信装置２１は、通信路３を介してクライアント装置１とデータ通信可能な装置である。通信装置２１としては、ネットワークインタフェースカード、モデムなどが使用される。
【００２９】
サーバ装置２内の図示せぬコンピュータで各種プログラムが実行されることにより、通信処理部２２、処理実行部２３、タイマ２４および延長要求部２５が実現される。
【００３０】
通信処理部２２は、通信装置２１を制御し、所定の通信プロトコルで、通信路３に接続された他の装置との間でデータ通信を行う処理部である。
【００３１】
処理実行部２３は、処理要求およびクライアント装置１のタイムアウト時間情報を受け取ると、処理要求により指定された処理を実行する処理実行手段として機能する処理部である。また、処理実行部２３は、タイムアウト時間情報から基準処理時間を計算する。基準処理時間は、タイムアウト時間より短い所定の時間とされる。
【００３２】
タイマ２４は、その基準処理時間を計測するタイマとして機能する処理部である。
【００３３】
延長要求部２５は、基準処理時間の経過前に、処理要求により指定された処理が完了していない場合に、クライアント装置１に対するタイムアウト時間延長要求を発行する延長要求手段として機能する処理部である。
【００３４】
次に、上記システムにおける各装置の動作について説明する。図２は、実施の形態１に係るタイムアウト制御システムでのタイムアウト制御について説明する図である。
【００３５】
クライアント装置１において、サーバ装置２またはサーバ装置２を内蔵する装置の機能による処理の要求が発生した場合、処理要求部１３は、その処理を指定する処理要求を、その処理に対するタイムアウト時間の初期値を示すタイムアウト時間データ１６ａとともに、サーバ装置２に送信する（ステップＳ１）。処理要求部１３は、処理時間履歴データ１６ｂに基づいてタイムアウト時間の初期値を決定するようにしてもよい。このとき、処理要求およびタイムアウト時間データ１６ａは、通信処理部１２、通信装置１１および通信路３を介してサーバ装置２へ伝送され、通信装置２１および通信処理部２２を介して処理実行部２３により受信される。処理要求部１３は、処理要求およびタイムアウト時間データの送信後、直ちに、タイマ１４を起動させ、タイムアウト時間の計測を開始させる（ステップＳ２）。
【００３６】
一方、サーバ装置２において、処理実行部２３は、処理要求およびタイムアウト時間データを受信すると、その処理要求により指定されている処理の実行を開始する。また、処理実行部２３は、タイムアウト時間データに基づきタイムアウト時間より短くなるように基準処理時間を計算し、処理の開始後、直ちに、タイマ２４を起動させ、基準処理時間の計測を開始させる（ステップＳ３）。
【００３７】
その後、タイマ２４により基準処理時間の経過が検出されると、延長要求部２５は、処理要求により指定された処理が完了しているか否かを判定する（ステップＳ５）。基準処理時間の経過時に処理要求により指定された処理が完了していない場合、延長要求部２５は、処理実行部２３により出力される図示せぬ処理状態情報に基づきその処理の進行状況を特定し（ステップＳ６）、その進行状況に応じてタイムアウト時間の延長時間を決定する（ステップＳ７）。
【００３８】
そして、基準処理時間の経過時に処理が完了していない場合、延長要求部２５は、タイムアウト時間延長要求および延長時間情報を、クライアント装置１へ送信する（ステップＳ８）。このとき、タイムアウト時間延長要求および延長時間情報は、通信処理部２２、通信装置２１および通信路３を介してクライアント装置１へ伝送され、通信装置１１および通信処理部１２を介してタイムアウト設定部１５により受信される。タイムアウト設定部１５は、タイムアウト時間延長要求および延長時間情報を受信すると、その延長時間情報だけタイムアウト時間を延長させる（ステップＳ９）。なお、このときに、次回使用されるタイムアウト時間の初期値は、変更されない。
【００３９】
タイムアウト時間延長要求の送信後、処理実行部２３は、処理の実行を完了すると（ステップＳ１０）、処理完了通知をクライアント装置１へ送信する（ステップＳ１１）。このとき、処理完了通知は、通信処理部２２、通信装置２１および通信路３を介してクライアント装置１へ伝送され、通信装置１１および通信処理部１２を介して処理要求部１３により受信される。処理要求部１３は、処理完了通知を受信すると、タイマ１４を停止させる（ステップＳ１２）。このとき、処理要求部１３は、タイムアウトの発生の有無、およびタイマ１４により計測された処理要求の送信から処理完了通知の受信までの時間を、処理時間履歴データ１６ｂに追加する。
【００４０】
このようにして、サーバ装置２において、基準処理時間の経過時に処理が完了していない場合には、クライアント装置１のタイムアウト時間が延長される。基準処理時間の経過時に既に処理が完了している場合には、サーバ装置２は、タイムアウト時間延長要求等をクライアント装置１へ送信しない。このため、この場合、クライアント装置１のタイムアウト時間は延長されない。なお、延長されたタイムアウト時間が経過しても、クライアント装置１が処理完了通知を受信していない場合にはタイムアウトが発生する。
【００４１】
なお、この実施の形態１では、サーバ装置２がクライアント装置１のタイムアウト時間の延長時間を決定しているが、サーバ装置２が延長時間情報を送信せずにタイムアウト時間延長要求のみを送信し、クライアント装置１が予め決定されている延長時間だけタイムアウト時間を延長するようにしてもよい。
【００４２】
以上のように、上記実施の形態１によれば、クライアント装置１は、サーバ装置２への処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長する。クライアント装置１は、サーバ装置２へ処理要求とタイムアウト時間情報を送信し、サーバ装置２からタイムアウト時間延長要求を受信した場合、タイムアウト時間内に処理が完了しないと判定しタイムアウト時間を延長する。一方、サーバ装置２は、クライアント装置１から処理要求とタイムアウト時間情報を受信し、タイムアウト時間情報に基づく基準処理時間が経過したときに処理が完了していない場合、タイムアウト時間延長要求をクライアント装置１へ送信する。この場合、サーバ装置２がタイムアウト時間を延長させるか否かを決定するため、クライアント装置１はタイムアウト時間延長についての判定処理を行わずに済む。
【００４３】
これにより、処理の実行中に必要に応じてタイムアウト時間が延長されるため、処理完了の間際にタイムアウトが発生する可能性を低くすることができる。
【００４４】
また、処理時間履歴データ１６ｂに基づきタイムアウト時間の初期値が決定される場合、タイムアウトしにくい適切なタイムアウト時間が設定される。
実施の形態２．
実施の形態２に係るタイムアウト制御システムでは、サーバ装置２から送信されるイベント通知に基づき処理の進行状況がクライアント装置１により特定され、クライアント装置１によりタイムアウト時間を延長するか否かが判定される。
【００４５】
図３は、本発明の実施の形態２に係るタイムアウト制御システムの構成を示すブロック図である。実施の形態２では、クライアント装置１内の図示せぬコンピュータで各種プログラムが実行されることにより、通信処理部１２、処理要求部３１、タイマ１４およびタイムアウト設定部３２が実現される。また、サーバ装置２内の図示せぬコンピュータにより各種プログラムが実行されることにより、通信処理部２２および処理実行部４１が実現される。
【００４６】
クライアント装置１の処理要求部３１は、処理要求を発行する処理要求手段として機能する処理部である。なお、処理要求部３１は、タイムアウト時間データを送信しない。
【００４７】
クライアント装置１のタイムアウト設定部３２は、サーバ装置２から処理の実行中のイベント発生を通知するイベント発生通知を受信し、基準処理時間が経過したときにイベント発生通知に基づき処理の進行状況を判定し、その進行状況に基づきタイムアウト時間内に処理が完了しないと判定した場合にはタイムアウト時間を延長する処理部である。
【００４８】
サーバ装置２の処理実行部４１は、実施の形態１における処理実行部２３と同様の処理部である。ただし、処理実行部４１は、処理要求で指定された処理の実行中にイベントが発生すると、そのイベントについてのイベント発生通知を送信するイベント発生通知部４１ａを有する。
【００４９】
なお、図３におけるその他の構成要素は、実施の形態１（図１）のものと同様であるので、その説明を省略する。
【００５０】
次に、上記システムにおける各装置の動作について説明する。図４は、実施の形態２に係るタイムアウト制御システムでのタイムアウト制御について説明する図である。
【００５１】
クライアント装置１において、サーバ装置２またはサーバ装置２を内蔵する装置の機能による処理の要求が発生した場合、処理要求部３１は、その処理を指定する処理要求をサーバ装置２に送信する（ステップＳ２１）。このとき、処理要求は、通信処理部１２、通信装置１１および通信路３を介してサーバ装置２へ伝送され、通信装置２１および通信処理部２２を介して処理実行部４１により受信される。処理要求部３１は、処理要求の送信後、直ちに、タイマ１４を起動させ、タイムアウト時間および基準処理時間の計測を開始させる（ステップＳ２２）。基準処理時間は、タイムアウト時間より短い所定の時間である。なお、このとき使用されるタイムアウト時間の初期値は、処理時間履歴データ１６ｂから計算されるようにしてもよい。
【００５２】
一方、サーバ装置２において、処理実行部４１は、処理要求を受信すると、その処理要求により指定されている処理の実行を開始する（ステップＳ２３）。
【００５３】
その後、処理実行部４１は、処理の実行途中でイベントが発生するごとに（ステップＳ２４）、各イベントについてのイベント発生通知をクライアント装置１へ送信する（ステップＳ２５）。このとき、イベント発生通知は、通信処理部２２、通信装置２１および通信路３を介してクライアント装置１へ伝送され、通信装置１１および通信処理部１２を介してタイムアウト設定部３２により受信される。
【００５４】
そして、クライアント装置１において、タイマ１４により基準処理時間の経過が検出されると（ステップＳ２６）、タイムアウト設定部３２は、処理完了通知が受信されているか否かに基づいて、処理要求により指定した処理が完了しているか否かを判定する（ステップＳ２７）。基準処理時間の経過時に処理要求により指定した処理が完了していない場合、タイムアウト設定部３２は、基準処理時間の経過時までにサーバ装置２から受信されているイベント発生通知に基づきその処理の進行状況を特定し（ステップＳ２８）、その進行状況に応じてタイムアウト時間の延長時間を決定する（ステップＳ２９）。
【００５５】
一方、サーバ装置２において、処理実行部４１は、処理の実行を完了すると（ステップＳ３０）、処理完了通知をクライアント装置１へ送信する（ステップＳ３１）。このとき、処理完了通知は、通信処理部２２、通信装置２１および通信路３を介してクライアント装置１へ伝送され、通信装置１１および通信処理部１２を介して処理要求部３１により受信される。処理要求部３１は、処理完了通知を受信すると、タイマ１４を停止させる（ステップＳ３２）。また、処理要求部３１は、タイムアウトの発生の有無、およびタイマ２４により計測された処理要求の送信から処理完了通知の受信までの時間を、処理時間履歴データ１６ｂに追加する。
【００５６】
このようにして、クライアント装置１は、基準処理時間の経過時における処理の進行状況に応じて、タイムアウト時間を延長する。基準処理時間の経過時に既に処理が完了している場合には、クライアント装置１は、タイムアウト時間を延長しない。なお、延長されたタイムアウト時間が経過しても、クライアント装置１が処理完了通知を受信していない場合にはタイムアウトが発生する。
【００５７】
ここで、クライアント装置１がパーソナルコンピュータであり、サーバ装置２がスキャナに内蔵されている場合の具体例について説明する。図５は、図４に示すタイムアウト制御の具体例を示す図である。
【００５８】
この場合、処理要求として、イメージデータ送信要求がクライアント装置１からサーバ装置２へ送信され（ステップＳ２１）、タイムアウト時間（例えば３０秒）の計測が開始される（ステップＳ２２）。そして、サーバ装置２は、イメージデータ送信要求を受信すると、スキャナ内の画像読取装置を制御して画像読取処理を開始させる（ステップＳ２３）。
【００５９】
画像読取処理では、ジョブ生成、画像読取開始、データ変換（読み取りデータのファイル化）開始、ファイル送信開始などのイベントが発生する（ステップＳ２４）。このため、各イベントが発生するたびにイベント発生通知がサーバ装置２からクライアント装置１へ送信される（ステップＳ２５）。
【００６０】
クライアント装置では、データ変換の開始後であってファイル送信開始前の時点で基準処理時間（例えば２５秒）が経過すると（ステップＳ２７）、まだ処理は完了していないため（ステップＳ２７）、タイムアウト設定部３２は、イベント発生通知から、処理の進行状況がデータ変換の開始後であってファイル送信開始前であることを特定し（ステップＳ２８）、残りの処理部分（つまり、データ変換およびファイル送信）に応じた延長時間（例えば２０秒）だけタイムアウト時間を延長する（ステップＳ２９）。
【００６１】
その後、サーバ装置２からクライアント装置１へのイメージデータファイル送信が完了しジョブが完了すると（ステップＳ３１）、処理完了通知がサーバ装置２からクライアント装置１へ送信される。
【００６２】
このようにして、スキャナでの画像読取処理の場合でも、タイムアウト時間が経過する間際でのクライアント装置１のタイムアウトを回避することができる。
【００６３】
以上のように、上記実施の形態２によれば、クライアント装置１は、サーバ装置２への処理要求の発行後に、タイムアウト時間内に処理が完了しないと判定した場合にタイムアウト時間を延長する。クライアント装置１は、サーバ装置２へ処理要求を送信し、サーバ装置２からイベント発生通知を受信し、タイムアウト時間に基づく基準処理時間が経過したときにイベント発生通知に基づき処理の進行状況を判定し、その進行状況に基づきタイムアウト時間内に処理が完了しないと判定した場合にはタイムアウト時間を延長する。この場合、クライアント装置１がタイムアウト時間を延長するか否かを決定するため、サーバ装置２はタイムアウト時間延長についての判定処理を行わずに済む。
【００６４】
これにより、処理の実行中に必要に応じてタイムアウト時間が延長されるため、処理完了の間際にタイムアウトが発生する可能性を低くすることができる。
【００６５】
また、処理時間履歴データ１６ｂに基づきタイムアウト時間の初期値が決定される場合、タイムアウトしにくい適切なタイムアウト時間が設定される。
【００６６】
なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００６７】
例えば、実施の形態１において、クライアント装置１は、タイムアウト時間をサーバ装置２へ送信しているが、その代わりに、クライアント装置１は、タイムアウト時間から基準処理時間を計算し、その基準処理時間をサーバ装置２へ送信するようにしてもよい。その場合、サーバ装置２は、受信したその基準処理時間をそのままタイマ２４に計測させる。
【００６８】
また、上記各実施の形態において、タイムアウト時間の延長時間は、例えば、延長前のタイムアウト時間の４分の１〜２分の１程度の時間とされる。
【００６９】
また、上記各実施の形態において、基準処理時間としては、例えば、タイムアウト時間から５秒程度短い時間、タイムアウト時間の８０％の時間などとされる。
【００７０】
また、上記実施の形態１において、サーバ装置１の延長要求部２５は、タイムアウト時間延長要求を送信した後に、基準処理時間を延長時間だけ延長し、延長後の基準処理時間の経過時に進行状況を再度判定し、延長前の基準処理時間経過時の進行状況と延長後の基準処理時間経過時の進行状況とが一致しない場合にはタイムアウト時間延長要求を再度送信し、延長前の進行状況と延長後の進行状況とが一致する場合にはタイムアウト時間延長要求を再度送信しないようにしてもよい。この場合、クライアント装置１のタイムアウト設定部３２は、タイムアウト時間延長要求を受信するたびにタイムアウト時間延長要求を行う。つまり、クライアント装置１は、延長後に処理の状態が進めばタイムアウト時間を再延長し、延長後に処理の状態が進まなければそのままタイムアウトする。
【００７１】
また、上記実施の形態２において、タイムアウト設定部３２は、タイムアウト時間を延長した際に基準処理時間も同一時間だけ延長し、タイムアウト時間を延長した後に、サーバ装置２からイベント発生通知を引き続き受信し、延長後の基準処理時間が経過したときにイベント発生通知に基づき処理の進行状況を再度判定し、延長前の基準処理時間経過時の進行状況と延長後の基準処理時間経過時の進行状況とが一致しない場合にはタイムアウト時間を再延長し、延長前の進行状況と延長後の進行状況とが一致する場合にはタイムアウト時間を再延長しないようにしてもよい。つまり、クライアント装置１は、延長後に処理の状態が進めばタイムアウト時間を再延長し、延長後に処理の状態が進まなければそのままタイムアウトする。
【産業上の利用可能性】
【００７２】
本発明は、例えば、プリンタなどの画像形成装置とパーソナルコンピュータとを有するシステムに適用可能である。特に、サーバ装置が所要時間の変動し易い処理を行う場合に好適である。
【図面の簡単な説明】
【００７３】
【図１】本発明の実施の形態１に係るタイムアウト制御システムの構成を示すブロック図である。
【図２】実施の形態１に係るタイムアウト制御システムでのタイムアウト制御について説明する図である。
【図３】本発明の実施の形態２に係るタイムアウト制御システムの構成を示すブロック図である。
【図４】実施の形態２に係るタイムアウト制御システムでのタイムアウト制御について説明する図である。
【図５】図４に示すタイムアウト制御の具体例を示す図である。
【符号の説明】
【００７４】
１  クライアント装置
２  サーバ装置
１３，３１  処理要求部（処理要求手段）
１４，２４  タイマ
１５，３２  タイムアウト設定部（タイムアウト時間延長手段）
２３，４１  処理実行部（処理実行手段）
２５  延長要求部（延長要求手段）
【図１】
2009098908.tif 000003
【図２】
2009098908.tif 000004
【図３】
2009098908.tif 000005
【図４】
2009098908.tif 000006
【図５】
2009098908.tif 000007