(57)【要約】【課題】より好適に通信を最適化することができるサーバクライアントシステム及び通信制御方法を提供する。【解決手段】サーバと、サーバとネットワークを介して接続されるクライアント端末２と、を備えるサーバクライアントシステムであって、クライアント端末２は、リクエストをサーバに対して送信するとともに、サーバから送信されるレスポンスを受信する通信部２１と、サーバがリクエストを受信してからレスポンスを送信するまでの時間であるレスポンス保留時間を調整するレスポンス調整部２２２と、を備え、通信部２１は、リクエストとともにレスポンス調整部２２２により調整したレスポンス保留時間をサーバに送信するように構成した。【選択図】図２
2009065349.tif 000002
【特許請求の範囲】
【請求項１】
サーバと、前記サーバとネットワークを介して接続されるクライアント端末と、を備えるサーバクライアントシステムであって、
前記クライアント端末は、
リクエストを前記サーバに対して送信するとともに、前記サーバから送信されるレスポンスを受信する通信手段と、
前記サーバがリクエストを受信してからレスポンスを送信するまでの時間であるレスポンス保留時間を調整するレスポンス調整手段と、
を備え、
前記通信手段は、リクエストとともに前記レスポンス調整手段により調整した前記レスポンス保留時間を前記サーバに送信するサーバクライアントシステム。
【請求項２】
前記クライアント端末は、
前記サーバに対してリクエストを送信してから、前記サーバから送信されたレスポンスを受信するまでの時間であるポーリング周期を計時する計時手段を備え、
前記レスポンス調整手段は、前記計時手段により計時されたポーリング周期に応じて前記レスポンス保留時間を調整する請求項１に記載のサーバクライアントシステム。
【請求項３】
前記レスポンス調整手段は、
前記ポーリング周期が、前記レスポンス保留時間と所定のタイムアウトマージン時間との第１の和より大きい場合には、前記レスポンス保留時間を短縮し、
前記ポーリング周期が、前記第１の和以下である場合には、前記レスポンス保留時間を延長する請求項２に記載のサーバクライアントシステム。
【請求項４】
前記クライアント端末は、
前記ポーリング周期が前記第１の和より大きい場合に、前記サーバに対してリクエストを送信してから前記第１の和の時間内に前記サーバからレスポンスを受信できなかった回数を表すタイムアウト回数を加算するとともに、
前記ポーリング周期が前記第１の和以下である場合に、前記タイムアウト回数を減算するタイムアウト調整手段を備える請求項３に記載のサーバクライアントシステム。
【請求項５】
前記タイムアウト調整手段は、
減算した前記タイムアウト回数が所定値以下となった場合に、前記タイムアウト回数を前記所定値より大きい所定の回数値に設定し、
加算した前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記タイムアウト回数を加算前の前記タイムアウト回数に戻す請求項４に記載のサーバクライアントシステム。
【請求項６】
前記レスポンス調整手段は、
前記ポーリング周期が前記第１の和より大きく、且つ、前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記レスポンス保留時間を短縮し、
前記ポーリング周期が、前記第１の和以下であり、且つ、前記タイムアウト回数が所定値以下となった場合に、前記レスポンス保留時間を延長する請求項５に記載のサーバクライアントシステム。
【請求項７】
前記レスポンス調整手段は、
前記レスポンス保留時間を延長した際に、調整後の前記レスポンス保留時間が最大保留時間より大きい場合には、前記レスポンス保留時間を前記最大保留時間と同じ長さに調整し、
前記レスポンス保留時間を短縮した際に、調整後の前記レスポンス保留時間が最小保留時間より小さい場合には、前記レスポンス保留時間を前記最小保留時間と同じ長さに調整する請求項３乃至６の何れか一項に記載のサーバクライアントシステム。
【請求項８】
前記レスポンス調整手段は、
前記レスポンス保留時間とレスポンスマージン時間との第２の和より、前記最大保留時間が小さいか否かを判断し、
前記最大保留時間が前記第２の和より小さい場合には、前記最大保留時間を前記レスポンス保留時間と同じ長さに調整し、
前記最大保留時間が前記第２の和以上である場合には、前記最大保留時間を当該最大保留時間と前記レスポンス保留時間との平均値と同じ長さに調整する請求項７に記載のサーバクライアントシステム。
【請求項９】
サーバと、前記サーバとネットワークを介して接続されるクライアント端末と、を備えるサーバクライアントシステムにおける通信制御方法であって、
前記クライアント端末により、
リクエストを前記サーバに対して送信するとともに、前記サーバから送信されるレスポンスを受信する通信工程と、
前記サーバが前記クライアント端末から送信されたリクエストを受信してからレスポンスを送信するまでの時間であるレスポンス保留時間を調整するレスポンス調整工程と、
を備え、
前記通信工程において、前記クライアント端末は、リクエストとともに前記レスポンス調整工程において調整した前記レスポンス保留時間を前記サーバに送信する通信制御方法。
【請求項１０】
前記クライアント端末により、前記サーバに対してリクエストを送信してから、前記サーバから送信されたレスポンスを受信するまでの時間であるポーリング周期を計時する計時工程を備え、
前記レスポンス調整工程において、前記クライアント端末は、計時したポーリング周期に応じて前記レスポンス保留時間を調整する請求項９に記載の通信制御方法。
【請求項１１】
前記レスポンス調整工程において、前記クライアント端末は、
前記ポーリング周期が、前記レスポンス保留時間と所定のタイムアウトマージン時間との第１の和より大きい場合には、前記レスポンス保留時間を短縮し、
前記ポーリング周期が、前記第１の和以下である場合には、前記レスポンス保留時間を延長する請求項１０に記載の通信制御方法。
【請求項１２】
前記クライアント端末により、
前記ポーリング周期が前記第１の和より大きい場合に、前記サーバに対してリクエストを送信してから前記第１の和の時間内に前記サーバからレスポンスを受信できなかった回数を表すタイムアウト回数を加算するとともに、
前記ポーリング周期が前記第１の和以下である場合に、前記タイムアウト回数を減算するタイムアウト調整工程を備える請求項１１に記載の通信制御方法。
【請求項１３】
前記タイムアウト調整工程において、前記クライアント端末は、
減算した前記タイムアウト回数が所定値以下となった場合に、前記タイムアウト回数を前記所定値より大きい所定の回数値に設定し、
加算した前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記タイムアウト回数を加算前の前記タイムアウト回数に戻す請求項１２に記載の通信制御方法。
【請求項１４】
前記レスポンス調整工程において、前記クライアント端末は、
前記ポーリング周期が前記第１の和より大きく、且つ、前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記レスポンス保留時間を短縮し、
前記ポーリング周期が、前記第１の和以下であり、且つ、前記タイムアウト回数が所定値以下となった場合に、前記レスポンス保留時間を延長する請求項１３に記載の通信制御方法。
【請求項１５】
前記レスポンス調整工程において、前記クライアント端末は、
前記レスポンス保留時間を延長した際に、調整後の前記レスポンス保留時間が最大保留時間より大きい場合には、前記レスポンス保留時間を前記最大保留時間と同じ長さに調整し、
前記レスポンス保留時間を短縮した際に、調整後の前記レスポンス保留時間が最小保留時間より小さい場合には、前記レスポンス保留時間を前記最小保留時間と同じ長さに調整する請求項１１乃至１４の何れか一項に記載の通信制御方法。
【請求項１６】
前記レスポンス調整工程において、前記クライアント端末は、
前記レスポンス保留時間とレスポンスマージン時間との第２の和より、前記最大保留時間が小さいか否かを判断し、
前記最大保留時間が前記第２の和より小さい場合には、前記最大保留時間を前記レスポンス保留時間と同じ長さに調整し、
前記最大保留時間が前記第２の和以上である場合には、前記最大保留時間を当該最大保留時間と前記レスポンス保留時間との平均値と同じ長さに調整する請求項１５に記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバクライアントシステム及び通信制御方法に関する。
【背景技術】
【０００２】
サーバクライアントシステムでは、通常、１つのサーバに対して複数のクライアント端末がネットワークを介して接続されている。そして、サーバクライアントシステムにおける通信を円滑に行うため、ポーリングという通信方式を用いる場合がある。ポーリングとは、サーバが順番にクライアント端末に対してリクエストがあるか否かを確認し、リクエストがある場合に、クライアント端末に送信権を与えて通信を行う通信方式である。
【０００３】
しかし、クライアント端末からリクエストを送信して、サーバからレスポンスを送信する頻度が高くなると、通信負荷が大きくなってしまう。そのため、ポーリング方式を用いた通信では、ポーリング周期に関するパラメータを最適な値に調節する必要がある。ここで、ポーリング周期とは、クライアント端末がサーバへリクエストを送信してから、サーバから送信されたレスポンスを受信するまでの時間である。例えば、特許文献１には、サーバにおいて、ポーリング周期を調整する技術が記載されている。具体的には、特許文献１には、サーバから同期情報をクライアント端末に送信することにより同期を制御するサーバクライアントシステムが記載されている。そして、サーバにおいて管理している同期情報と、リクエストを送信したクライアント端末に記憶されている同期情報とが同じ場合には、サーバからクライアント端末への同期情報の送信を保留する。これにより、ポーリング周期の最適化を図っている。
【特許文献１】特開２００２−０３３７８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、クライアント端末によって通信環境が異なる。そのため、サーバはポーリング周期に関するパラメータを、さらにクライアント端末毎に微調整しなくてはならならない。これにより、手間と工数がかかってしまうという問題があった。
また、サーバに接続されるクライアント端末の増減などによっても、その都度、全てのクライアント端末について調整を行わなければならず、手間がかかるという問題もある。
【０００５】
本発明は、このような問題点を解決するためになされたものであり、より好適に通信を最適化することができるサーバクライアントシステム及び通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明にかかるサーバクライアントシステム及び通信制御方法は、サーバと、前記サーバとネットワークを介して接続されるクライアント端末と、を備えるサーバクライアントシステム及び当該サーバクライアントシステムにおける通信制御方法であって、前記クライアント端末は、リクエストを前記サーバに対して送信するとともに、前記サーバから送信されるレスポンスを受信する通信手段（通信工程）と、前記サーバがリクエストを受信してからレスポンスを送信するまでの時間であるレスポンス保留時間を調整するレスポンス調整手段（レスポンス調整工程）と、を備え、前記通信手段は、リクエストとともに前記レスポンス調整手段により調整した前記レスポンス保留時間を前記サーバに送信する。
このような構成により、クライアント端末側でポーリング周期に関するパラメータの１つであるレスポンス保留時間を調整することができる。そのため、クライアント端末の通信環境に最適となるようにレスポンス保留時間をクライアント端末側で自動調整することができる。従って、サーバ側でクライアント端末毎の通信環境の違いに合わせてポーリング周期を微調整する場合に必要な手間と工数を削減できる。よって、より好適に通信を最適化することができる。
【０００７】
好ましくは、前記クライアント端末は、前記サーバに対してリクエストを送信してから、前記サーバから送信されたレスポンスを受信するまでの時間であるポーリング周期を計時する計時手段（計時工程）を備え、前記レスポンス調整手段は、前記計時手段により計時されたポーリング周期に応じて前記レスポンス保留時間を調整する。
これにより、クライアント端末の通信環境によって変動するポーリング周期に応じてレスポンス保留時間を調整する。そのため、クライアント端末の通信環境に最適となるようにレスポンス保留時間を調整することができる。
【０００８】
また、好ましくは、前記レスポンス調整手段は、前記ポーリング周期が、前記レスポンス保留時間と所定のタイムアウトマージン時間との第１の和より大きい場合には、前記レスポンス保留時間を短縮し、前記ポーリング周期が、前記第１の和以下である場合には、前記レスポンス保留時間を延長する。
このような構成により、クライアント端末の通信環境が比較的悪い場合には、レスポンス保留時間を短縮することができ、クライアント端末の通信環境が比較的良い場合には、レスポンス保留時間を延長することができる。
【０００９】
さらに好ましくは、前記クライアント端末は、前記ポーリング周期が前記第１の和より大きい場合に、前記サーバに対してリクエストを送信してから前記第１の和の時間内に前記サーバからレスポンスを受信できなかった回数を表すタイムアウト回数を加算するとともに、前記ポーリング周期が前記第１の和以下である場合に、前記タイムアウト回数を減算するタイムアウト調整手段（タイムアウト調整工程）を備える。
このような構成により、ポーリング周期が第１の和より大きい場合、即ち、タイムアウトした場合には、タイムアウト回数を加算し、ポーリング周期が第１の和以下である場合、即ち、タイムアウトしなかった場合には、タイムアウト回数を減算する。従って、クライアント端末における通信環境が良くなく、タイムアウトした場合には、タイムアウト回数が加算される。一方、通信環境が良く、タイムアウトしなかった場合には、タイムアウト回数が減算される。これにより、タイムアウト回数に、クライアント端末における通信環境を反映させることができる。
【００１０】
また、前記タイムアウト調整手段は、減算した前記タイムアウト回数が所定値以下となった場合に、前記タイムアウト回数を前記所定値より大きい所定の回数値に設定し、加算した前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記タイムアウト回数を加算前の前記タイムアウト回数に戻す。
これにより、タイムアウト回数が所定値以下となる程クライアント端末の通信環境が良い場合には、タイムアウト回数を当該所定値より大きい所定の回数値に更新することができる。そして、タイムアウト回数が所定値以下となってしまって不具合が生じるのを防ぐことができる。また、タイムアウト回数がタイムアウト回数最大値となる程クライアント端末の通信環境が悪い場合には、タイムアウト回数をタイムアウト回数最大値以下に設定することができる。
【００１１】
さらに、前記レスポンス調整手段は、前記ポーリング周期が前記第１の和より大きく、且つ、前記タイムアウト回数が前記タイムアウト回数最大値以上となった場合に、前記レスポンス保留時間を短縮し、前記ポーリング周期が、前記第１の和以下であり、且つ、前記タイムアウト回数が所定値以下となった場合に、前記レスポンス保留時間を延長する。
これにより、タイムアウト回数がタイムアウト回数最大値以上となる程クライアント端末の通信環境が悪い場合には、レスポンス保留時間を短縮することができる。また、タイムアウト回数が所定値以下となる程クライアント端末の通信環境が良い場合には、レスポンス保留時間を延長することができる。
【００１２】
また、前記レスポンス調整手段は、前記レスポンス保留時間を延長した際に、調整後の前記レスポンス保留時間が最大保留時間より大きい場合には、前記レスポンス保留時間を前記最大保留時間と同じ長さに調整し、前記レスポンス保留時間を短縮した際に、調整後の前記レスポンス保留時間が最小保留時間より小さい場合には、前記レスポンス保留時間を前記最小保留時間と同じ長さに調整する。
これにより、レスポンス保留時間を最大保留時間以下、最小保留時間以上に保つことができる。そのため、レスポンス保留時間が極端に短くなったり長くなったりして、通信に弊害をもたらすことを防ぐことができる。
【００１３】
さらにまた、前記レスポンス調整手段は、前記レスポンス保留時間とレスポンスマージン時間との第２の和より、前記最大保留時間が小さいか否かを判断し、前記最大保留時間が前記第２の和より小さい場合には、前記最大保留時間を前記レスポンス保留時間と同じ長さに調整し、前記最大保留時間が前記第２の和以上である場合には、前記最大保留時間を当該最大保留時間と前記レスポンス保留時間との平均値と同じ長さに調整する。
これにより、最大保留時間が第２の和より小さくなる場合に、最大保留時間を微調整することができる。具体的には、最大保留時間が第２の和より小さい場合には、最大保留時間をレスポンス保留時間と同じ長さ、即ち、最小保留時間と同じ長さにする。また、最大保留時間が第２の和より大きい場合には、最大保留時間を当該最大保留時間とレスポンス保留時間との平均値、即ち、当該最大保留時間と最小保留時間との平均値と同じ長さにする。従って、どちらの場合においても、最大保留時間と最小保留時間との差が小さくなる。これにより、クライアント端末の通信環境によるレスポンス保留時間の変動を小さくすることができる。
【発明の効果】
【００１４】
本発明によれば、サーバクライアントシステムにおける通信をより好適に最適化することができる。
【発明を実施するための最良の形態】
【００１５】
以下に、本発明を実施するための最良の形態について図を参照して説明する。なお、本発明は、以下の実施の形態に限定されるものではない。
図１は、本発明の実施の形態にかかるサーバクライアントシステム１０の構成の一例を示すブロック図である。サーバクライアントシステム１０は、図１に示すように、サーバ１、複数のクライアント端末２、・・・、ネットワークＮ等を備えている。複数のクライアント端末２、・・・は、ネットワークＮを介してサーバ１と接続されている。そして、サーバ１と複数のクライアント端末２、・・・との間の通信方式として、ポーリング方式が用いられている。
【００１６】
サーバ１は、通信部（図示省略）、データ記憶部（図示省略）等を備えている。通信部は、ネットワークＮに接続され、サーバ１とクライアント端末２との間の通信を行う。また、データ記憶部は、クライアント端末２へ送信する各種データ等を記憶している。
【００１７】
クライアント端末２は、図２に示すように、通信部２１（通信手段）、通信制御部２２等を備えている。
【００１８】
通信部２１は、ネットワークＮに接続され、サーバ１とクライアント端末２との間の通信を行う。具体的には、通信部２１は、サーバ１へリクエストを送信し、サーバ１から送信されるレスポンスを受信する。ここで、リクエスト及びリクエストとともに送信されるデータの内容を図３（ａ）に示す。また、レスポンス及びレスポンスの内容を図３（ｂ）に示す。図３（ａ）に示すように、クライアント端末２からサーバ１へと、送信元ＩＤ、送信日時、コマンド、データ、チェックサム等を含むリクエストとともに、レスポンス保留時間が送信される。また、図３（ｂ）に示すように、サーバ１からクライアント端末２へと、送信先ＩＤ、送信日時、コマンド、データ、チェックサム等を含むレスポンスが送信される。
【００１９】
通信制御部２２は、パラメータ記憶部２２１、レスポンス調整部２２２（レスポンス調整手段）、計時部２２３（計時手段）、タイムアウト調整部２２４（タイムアウト調整手段）等を備えている。
【００２０】
パラメータ記憶部２２１は、ポーリング方式に用いられる各種パラメータを記憶している。具体的には、パラメータ記憶部２２１は、各種パラメータの初期値と、当該パラメータの調整値とを対応付けて記憶している。より具体的には、パラメータ記憶部２２１は、ポーリング時間初期値（６０ｓｅｃ）、タイムアウト時間（６０ｓｅｃ）、レスポンス保留時間（６０ｓｅｃ）、レスポンス保留時間最大値（１８０ｓｅｃ；最大保留時間）、タイムアウト回数（０）、レスポンス保留時間最小値（３ｓｅｃ；最小保留時間）、ポーリング時間最大値（３００ｓｅｃ）、タイムアウトマージン時間（１０ｓｅｃ）、レスポンス許容時間（１ｓｅｃ）、保留時間増加率（１．１）、保留時間減少率（０．８）、タイムアウト回数最大値（１０）、タイムアウトカウンタ加算値（２）、タイムアウトカウンタ減算値（１）等のパラメータの初期値を記憶している。なお、当該パラメータの初期値は、プロトコルにより予め定められている。
【００２１】
レスポンス調整部２２２は、ポーリング方式に用いられるパラメータの１つであるレスポンス保留時間を調整する。ここで、レスポンス保留時間とは、サーバ１がリクエストを受信してからレスポンスを送信するまでの時間である。
具体的には、レスポンス調整部２２２は、計時部２２３により計時されたポーリング周期に応じてレスポンス保留時間を調整する。ここで、ポーリング周期とは、クライアント端末２がサーバ１にリクエストを送信してから、サーバ１から送信されたレスポンスを受信するまでの時間である。
そして、レスポンス調整部２２２は、ポーリング周期が、レスポンス保留時間とタイムアウトマージン時間との和（以下、第１の和と称する。）より大きい場合には、レスポンス保留時間を短縮する。また、レスポンス調整部２２２は、ポーリング周期が第１の和以下である場合には、レスポンス保留時間を延長する。レスポンス調整部２２２は、レスポンス保留時間を延長する場合には、レスポンス保留時間に保留時間増加率をかける。また、レスポンス調整部２２２は、レスポン保留時間を短縮する場合には、レスポンス保留時間に保留時間減少率をかける。
【００２２】
より具体的には、レスポンス調整部２２２は、ポーリング周期が第１の和より大きく、且つ、タイムアウト回数がタイムアウト回数最大値以上となった場合に、レスポンス保留時間を短縮する。また、レスポンス調整部２２２は、ポーリング周期が第１の和以下であり、且つ、タイムアウト回数が０以下（所定値以下）となった場合に、レスポンス保留時間を延長する。ここで、タイムアウト回数とは、サーバ１に対してリクエストを送信してから第１の和の時間内にサーバ１からレスポンスを受信できなかった（タイムアウトした）回数である。
換言すれば、レスポンス調整部２２２は、タイムアウト回数がタイムアウト回数最大値以上となる程、クライアント端末２における通信環境が悪い場合には、レスポンス保留時間を短縮する。一方、レスポンス調整部２２２は、タイムアウト回数が０以下となる程、クライアント端末２における通信環境が良い場合には、レスポンス保留時間を延長する。そして、レスポンス調整部２２２は、レスポンス保留時間の長さを調整することにより、ポーリング周期を調整する。
【００２３】
クライアント端末２の通信環境が悪い場合には、サーバ１から送信されたレスポンスがクライアント端末２に受信されるのに時間がかかる。そのため、クライアント端末２からリクエストが送信されたら、サーバ１はレスポンスをなるべく早めにクライアント端末２へ送信する方がよい。そのため、レスポンス保留時間は短いほうがよい。
一方、クライアント端末２の通信環境が良い場合には、サーバ１から送信されたレスポンスはすぐにクライアント２に受信される。そのため、クライアント端末２からリクエストが送信されても、サーバ１はすぐにレスポンスをクライアント端末２に送信しなくてもよい。そのため、レスポンス保留時間は長いほうが良い。
よって、レスポンス調整部２２２は、ポーリング周期が第１の和より大きく、且つ、タイムアウト回数がタイムアウト回数最大値以上となった場合、即ち、クライアント端末２の通信環境が悪い場合には、レスポンス保留時間を短縮する。
また、レスポンス調整部２２２は、ポーリング周期が第１の和以下であり、且つ、タイムアウト回数が０以下となった場合、即ち、クライアント端末２の通信環境が良い場合には、レスポンス保留時間を延長する。
【００２４】
また、レスポンス調整部２２２は、レスポンス保留時間を延長した際に、調整後のレスポンス保留時間がレスポンス保留時間最大値より大きい場合には、レスポンス保留時間をレスポンス保留時間最大値と同じ長さに調整する。また、レスポンス調整部２２２は、レスポンス保留時間を短縮した際に、レスポンス保留時間がレスポンス保留時間最小値より小さい場合には、レスポンス保留時間をレスポンス保留時間最小値と同じ長さに調整する。
【００２５】
さらに、レスポンス調整部２２２は、レスポンス保留時間をレスポンス保留時間最小値と同じ長さに調整した場合に、調整後のレスポンス保留時間とレスポンスマージン時間（３ｓｅｃ）との和（以下、第２の和と称する。）よりレスポンス保留時間最大値が小さいか否かを判断する。そして、レスポンス調整部２２２は、レスポンス保留時間最大値が第２の和より小さいと判断した場合には、レスポンス保留時間最大値を、レスポンス保留時間と同じ長さに調整する。一方、レスポンス調整部２２２は、レスポンス保留時間最大値が第２の和以上であると判断した場合には、レスポンス保留時間最大値を、当該レスポンス保留時間最大値とレスポンス保留時間との平均値と同じ長さに調整する。
【００２６】
ここで、レスポンス保留時間はレスポンス保留時間最小値と同じ長さに調整されている。そのため、レスポンス調整部２２２は、レスポンス保留時間最大値が第２の和より小さい場合には、レスポンス保留時間最大値を、レスポンス保留時間最小値と同じ長さに調整するということになる。また、レスポンス調整部２２２は、レスポンス保留時間最大値が第２の和以上である場合には、レスポンス保留時間最大値を、当該レスポンス保留時間最大値とレスポンス保留時間最小値との平均値と同じ長さに調整する。
従って、レスポンス保留時間をレスポンス保留時間最小値と同じ長さに調整した際、どちらの場合であっても、レスポンス調整部２２２は、レスポンス保留時間最大値とレスポンス保留時間最小値との差を小さくする。
【００２７】
計時部２２３は、ポーリング周期を計時する。具体的には、計時部２２３は、通信部２１がサーバ１に対してリクエストを送信した場合に計時を開始し、通信部２１がサーバ１から送信されたレスポンスを受信した場合に計時を終了する。
【００２８】
タイムアウト調整部２２４は、ポーリング周期が第１の和より大きい場合に、タイムアウト回数を加算する。また、タイムアウト調整部２２４は、ポーリング周期が第１の和以下であった場合に、タイムアウト回数を減算する。
具体的には、タイムアウトした場合に、タイムアウト調整部２２４は、タイムアウト回数にタイムアウトカウンタ加算値を加算する。また、タイムアウト調整部２２４は、タイムアウトしなかった場合に、タイムアウト回数からタイムアウト減算値を減算する。
【００２９】
さらに、タイムアウト調整部２２４は、タイムアウト回数を減算した結果、タイムアウト回数が０以下となった場合に、タイムアウト回数を所定の回数値に設定する。具体的には、タイムアウト調整部２２４は、タイムアウト回数を減算した結果、タイムアウト回数が０以下となった場合に、タイムアウト回数をタイムアウト回数最大値の１／２に更新する。
また、タイムアウト調整部２２４は、タイムアウト回数を加算した結果、タイムアウト回数がタイムアウト回数最大値以上となった場合に、当該タイムアウト回数を加算前のタイムアウト回数に戻す。
【００３０】
次に、本発明の実施の形態にかかるサーバクライアントシステム１０の通信制御方法について、図４、図５に示すフローチャートを参照しながら説明する。
まず、クライアント端末２の通信部２１がリクエストをサーバ１に送信する（ステップＳ１；通信工程）。
また、計時部２２３は、ポーリング周期を計時する（ステップＳ２；計時工程）。
次に、レスポンス調整部２２２は、ポーリング周期は第１の和以下か否かを判断する（ステップＳ３）。
ステップＳ３において、ポーリング周期が第１の和以下であった場合には（ステップＳ３；Ｙｅｓ）、タイムアウト調整部２２４は、タイムアウト回数を減算する（ステップＳ４；タイムアウト調整工程）。
【００３１】
次に、レスポンス調整部２２２は、ステップＳ４において減算された結果、タイムアウト回数が０以下となったか否かを判断する（ステップＳ５）。
ステップＳ５において、タイムアウト回数が０より大きい場合には（ステップＳ５；Ｎｏ）、ステップＳ１に戻る。
ステップＳ５において、タイムアウト回数が０以下である場合には（ステップＳ５；Ｙｅｓ）、タイムアウト調整部２２４は、タイムアウト回数を当該タイムアウト回数最大値の１／２に更新する。同時に、レスポンス調整部２２２は、レスポンス保留時間に保留時間増加率をかけて延長する（ステップＳ６；タイムアウト調整工程、レスポンス調整工程）。
【００３２】
次に、レスポンス調整部２２２は、ステップＳ６において延長したレスポンス保留時間がレスポンス保留時間最大値以上か否かを判断する（ステップＳ７）。
ステップＳ７において、レスポンス保留時間がレスポンス保留時間最大値以下である場合には（ステップＳ７；Ｎｏ）、ステップＳ１に戻る。
ステップＳ７において、レスポンス保留時間がレスポンス保留時間最大値より大きい場合には（ステップＳ７；Ｙｅｓ）、レスポンス調整部２２２は、レスポンス保留時間をレスポンス保留時間最大値と同じ長さに調整し（ステップＳ８）、ステップＳ１に戻る。
【００３３】
一方、ステップＳ３において、ポーリング周期が第１の和より大きかった場合には（ステップＳ３；Ｎｏ）、タイムアウト調整部２２４は、タイムアウト回数を加算する（ステップＳ９；タイムアウト調整工程）。
【００３４】
次に、レスポンス調整部２２２は、ステップＳ９において加算された結果、タイムアウト回数がタイムアウト回数最大値以上となったか否かを判断する（ステップＳ１０）。
ステップＳ１０において、タイムアウト回数がタイムアウト回数最大値未満である場合には（ステップＳ１０；Ｎｏ）、ステップＳ１に戻る。
ステップＳ１０において、タイムアウト回数がタイムアウト回数最大値以上である場合には（ステップＳ１０；Ｙｅｓ）、タイムアウト調整部２２４は、タイムアウト回数からタイムアウトカウント加算値を減算する。同時に、レスポンス調整部２２２は、レスポンス保留時間に保留時間減少率をかけて短縮する（ステップＳ１１；タイムアウト調整工程、レスポンス調整工程）。
【００３５】
次に、レスポンス調整部２２２は、ステップＳ１１において短縮したレスポンス保留時間がレスポンス保留時間最小値未満か否かを判断する（ステップＳ１２）。
ステップＳ１２において、レスポンス保留時間がレスポンス保留時間最小値以上である場合には（ステップＳ１２；Ｎｏ）、ステップＳ１４に進む。
ステップＳ１２において、レスポンス保留時間がレスポンス保留時間最小値未満である場合には（ステップＳ１２；Ｙｅｓ）、レスポンス調整部２２２は、レスポンス保留時間をレスポンス保留時間最小値と同じ長さに調整する（ステップＳ１３；レスポンス調整工程）。
【００３６】
次に、レスポンス調整部２２２は、レスポンス保留時間最大値が第２の和未満か否かを判断する（ステップＳ１４）。
ステップＳ１４において、レスポンス保留時間最大値が第２の和未満である場合には（ステップＳ１４；Ｙｅｓ）、レスポンス調整部２２２は、レスポンス保留時間最大値をステップＳ１３において調整したレスポンス保留時間と同じ長さに調整し（ステップＳ１５；レスポンス調整工程）、ステップＳ１に戻る。
ステップＳ１４において、レスポンス保留時間最大値が第２の和以上である場合には（ステップＳ１４；Ｎｏ）、レスポンス調整部２２２は、レスポンス保留時間最大値を、当該レスポンス保留時間最大値とレスポンス保留時間との平均値と同じ長さに調整し（ステップＳ１６；レスポンス調整工程）、ステップＳ１に戻る。
【００３７】
以上、説明したように、本発明の実施の形態にかかるサーバクライアントシステム１０及び通信制御方法によれば、クライアント端末２は、リクエストをサーバ１に対して送信するとともに、サーバ１から送信されるレスポンスを受信する通信部２１（通信工程）と、サーバ１がリクエストを受信してからレスポンスを送信するまでの時間であるレスポンス保留時間を調整するレスポンス調整部２２２（レスポンス調整工程）と、を備え、通信部２１は、リクエストとともにレスポンス調整部２２２により調整したレスポンス保留時間をサーバ１に送信する。
このような構成により、クライアント端末２側でポーリング周期に関するパラメータの１つであるレスポンス保留時間を調整することができる。そのため、クライアント端末２の通信環境に最適となるようにレスポンス保留時間をクライアント端末２側で自動調整することができる。従って、サーバ１側でクライアント端末２毎の通信環境の違いに合わせてポーリング周期を微調整する場合に必要な手間と工数を削減できる。よって、より好適に通信を最適化することができる。
【００３８】
また、クライアント端末２は、サーバ１に対してリクエストを送信してから、サーバ１から送信されたレスポンスを受信するまでの時間であるポーリング周期を計時する計時部２２３（計時工程）を備え、レスポンス調整部２２２は、計時部２２３により計時されたポーリング周期に応じてレスポンス保留時間を調整する。
これにより、クライアント端末２の通信環境によって変動するポーリング周期に応じてレスポンス保留時間を調整する。そのため、クライアント端末２の通信環境に最適となるようにレスポンス保留時間を調整することができる。
【００３９】
具体的には、レスポンス調整部２２２は、ポーリング周期が、レスポンス保留時間と所定のタイムアウトマージン時間との第１の和より大きい場合には、レスポンス保留時間を短縮し、ポーリング周期が、第１の和以下である場合には、レスポンス保留時間を延長する。
このような構成により、クライアント端末２の通信環境が比較的悪い場合には、レスポンス保留時間を短縮することができ、クライアント端末２の通信環境が比較的良い場合には、レスポンス保留時間を延長することができる。
【００４０】
また、クライアント端末２は、ポーリング周期が第１の和より大きい場合に、サーバ１に対してリクエストを送信してから第１の和の時間内にサーバ１からレスポンスを受信できなかった回数を表すタイムアウト回数を加算するとともに、ポーリング周期が第１の和以下である場合に、タイムアウト回数を減算するタイムアウト調整部２２４（タイムアウト調整工程）を備える。
このような構成により、ポーリング周期が第１の和より大きい場合、即ち、タイムアウトした場合には、タイムアウト回数を加算し、ポーリング周期が第１の和以下である場合、即ち、タイムアウトしなかった場合には、タイムアウト回数を減算する。従って、クライアント端末２における通信環境が良くなく、タイムアウトした場合には、タイムアウト回数が加算される。一方、通信環境が良く、タイムアウトしなかった場合には、タイムアウト回数が減算される。これにより、タイムアウト回数に、クライアント端末２における通信環境を反映させることができる。
【００４１】
また、タイムアウト調整部２２４は、減算したタイムアウト回数が０以下となった場合に、タイムアウト回数をタイムアウト最大値の１／２に設定し、加算したタイムアウト回数がタイムアウト回数最大値以上となった場合に、タイムアウト回数を加算前のタイムアウト回数に戻す。
これにより、タイムアウト回数が０以下となる程クライアント端末２の通信環境が良い場合には、タイムアウト回数をタイムアウト最大値の１／２に更新することができる。そして、タイムアウト回数が０以下となってしまって不具合が生じるのを防ぐことができる。また、タイムアウト回数がタイムアウト回数最大値となる程クライアント端末２の通信環境が悪い場合には、タイムアウト回数をタイムアウト回数最大値以下に設定することができる。
【００４２】
さらに、レスポンス調整２２２は、ポーリング周期が第１の和より大きく、且つ、タイムアウト回数がタイムアウト回数最大値以上となった場合に、レスポンス保留時間を短縮し、ポーリング周期が、第１の和以下であり、且つ、タイムアウト回数が０以下となった場合に、レスポンス保留時間を延長する。
これにより、タイムアウト回数がタイムアウト回数最大値以上となる程クライアント端末２の通信環境が悪い場合には、レスポンス保留時間を短縮することができる。また、タイムアウト回数が０以下となる程クライアント端末２の通信環境が良い場合には、レスポンス保留時間を延長することができる。
【００４３】
また、レスポンス調整部２２２は、レスポンス保留時間を延長した際に、調整後のレスポンス保留時間がレスポンス保留時間最大値より大きい場合には、レスポンス保留時間をレスポンス保留時間最大値と同じ長さに調整し、レスポンス保留時間を短縮した際に、調整後のレスポンス保留時間がレスポンス保留時間最小値より小さい場合には、レスポンス保留時間を前記レスポンス保留時間最小値と同じ長さに調整する。
これにより、レスポンス保留時間をレスポンス保留時間最大値以下、レスポンス保留時間最小値以上に保つことができる。そのため、レスポンス保留時間が極端に短くなったり長くなったりして、通信に弊害をもたらすことを防ぐことができる。
【００４４】
さらにまた、レスポンス調整部２２２は、レスポン保留時間をレスポンス保留時間最小値と同じ長さに調整した場合に、調整後のレスポンス保留時間とレスポンスマージン時間との第２の和より、レスポンス保留時間最大値が小さいか否かを判断し、レスポンス保留時間最大値が第２の和より小さい場合には、レスポンス保留時間最大値をレスポンス保留時間と同じ長さに調整し、レスポンス保留時間最大値が第２の和以上である場合には、レスポンス保留時間最大値を当該レスポンス保留時間最大値とレスポンス保留時間との平均値と同じ長さに調整する。
これにより、レスポンス保留時間最大値が第２の和より小さくなる場合に、レスポンス保留時間最大値を微調整することができる。具体的には、レスポンス保留時間最大値が第２の和より小さい場合には、レスポンス保留時間最大値をレスポンス保留時間と同じ長さ、即ち、レスポンス保留時間最小値と同じ長さにする。また、レスポンス保留時間最大値が第２の和より大きい場合には、レスポンス保留時間最大値を当該レスポンス保留時間最大値とレスポンス保留時間との平均値、即ち、当該レスポンス保留時間最大値とレスポンス保留時間最小値との平均値と同じ長さにする。従って、どちらの場合においても、レスポンス保留時間最大値とレスポンス保留時間最小値との差が小さくなる。これにより、クライアント端末２の通信環境によるレスポンス保留時間の変動を小さくすることができる。
【００４５】
なお、各パラメータの値は実施例に限られるものではなく、適宜、最適な値に設定されるものである。また、タイムアウト回数が０以下となった場合、タイムアウト調整部２２４は、タイムアウト回数をタイムアウト回数最大値の１／２倍に設定するとしたが、１／２倍に限られるものではなく、１／３倍であってもよいし、他の倍数であってもよい。また、タイムアウト調整部２２４は、タイムアウト回数が０以下となった場合に、タイムアウト回数を０以上の所定の回数値に更新すればよく、当該所定の回数値はタイムアウト回数最大値と関係のない数値であってもよい。また、タイムアウト調整部２２４によりタイムアウト回数が更新されるタイムアウト回数の値を０以下としたが、これに限られるものではなく、他の数値であってもよい。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施の形態にかかるサーバクライアントシステムの構成の一例を示すブロック図である。
【図２】本発明の実施の形態にかかるクライアント端末の構成の一例を示すブロック図である。
【図３】本発明の実施の形態にかかるリクエストを示す図（図３（ａ））、レスポンスを示す図（図３（ｂ））である。
【図４】本発明の実施の形態にかかる通信制御方法の一例を示すフローチャートである。
【図５】本発明の実施の形態にかかる通信制御方法の一例を示すフローチャートである。
【符号の説明】
【００４７】
１  サーバ
２  クライアント端末
２１  通信部（通信手段）
２２２  レスポンス調整部（レスポンス調整手段）
２２３  計時部（計時手段）
２２４  タイムアウト調整部（タイムアウト調整手段）
１０  サーバクライアントシステム
Ｎ  ネットワーク
【図１】
2009065349.tif 000003
【図２】
2009065349.tif 000004
【図３】
2009065349.tif 000005
【図４】
2009065349.tif 000006
【図５】
2009065349.tif 000007