(57)【特許請求の範囲】
【請求項１】
複数のクライアント端末と、該クライアント端末から受信したデータを定期的に処理するサーバとが定期通信を行うネットワークシステムにおいて、
前記クライアント端末が、前記サーバへデータを送信する際に、前記データの送信時刻を前記データに添付した上で送信する手順と、
前記サーバが、前記クライアント端末の送信時刻が添付されたデータを受信し、前記データの受信時刻を記録する手順と、
前記サーバが、前記送信時刻と前記受信時刻から時間差を算定し、前記時間差が所定の時間差以上の場合に、前記クライアント端末に次回のデータの送信時刻を送信する手順とを備え、
前記次回のデータの送信時刻が、クライアント端末からのデータの受信件数がサーバの理想負荷範囲内に収まる時間帯に設定されていることを特徴とする定期通信の最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介したデータの転送に関するものであり、詳しくは、クライアント端末とサーバとが接続されたネットワークシステムにおいて、クライアント端末からサーバに向けて送信されたデータに添付された送信時刻、及び前記データのサーバの受信時刻に基づいて、クライアント端末の次のデータの送信までの時間を制御する技術に関するものである。
【背景技術】
【０００２】
複数のクライアント端末からネットワークを経由してサーバに定期的にデータを送信され、サーバにより前記データが定期的に処理される場合、サーバによる前記データの定期処理の開始時に、前記データが時間的に分散してサーバに受信されるのが理想的である。しかしながら、ネットワークの通信量が増加し、複数のクライアント端末からの前記データを送信するのに必要される時間が、ネットワーク的な距離により不規則に長時間となり、サーバに一時的に集中して着信し、前記データを定期処理するサーバに過度の負荷が掛るという問題が発生している。前記のデータのサーバへの偏った着信という状況を解消する手段が求められていた。
【０００３】
前記の問題を解決する手段として、図８に示すように、クライアント端末側にて、サービスを提供するサーバの負荷状況に応じた適切なタイムアウト時間を設定できるようにすることを目的とする処理サーバ５２、時間サーバ５１及びクライアント端末５３から構成されるネットワークシステムが知られている（たとえば、特許文献１参照）。前記公知のネットワークシステムの具体的な概要は、サーバからの応答を待つ待ち時間を任意に設定可能なクライアント端末５３と、クライアント端末５３にネットワーク５４を介して接続されているとともに、クライアント端末５３からの要求に応じて、所定のサービスをクライアント端末５３に提供する処理サーバ５２と、クライアント端末５３にネットワーク５４を介して接続されているとともに、クライアント端末５３からの要求に対する応答として、処理サーバ５２の状況に応じた前記待ち時間に係る時間情報をクライアント端末５３に送信する時間サーバ５１とを備え、クライアント端末５３は、時間サーバ５１から送信される前記時間情報に基づいて、前記待ち時間を設定するというものである。
【０００４】
【特許文献１】特開２００５−１６５６５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前記の公知のネットワークシステムの場合、２種類のサーバ（処理サーバ及び時間サーバ）が使用されているため、前記ネットワークシステムの構築時に開発すべきソフトウエアも多くなり、構築時の初期コスト及び管理コストが高価になるという欠点がある。
【課題を解決するための手段】
【０００６】
公知のネットワークシステムの欠点を解決すべく、鋭意検討した結果、１台のサーバにより、複数のクライアント端末の送信時刻をネットワークの通信状況に即して制御することにより、前記データの前記のサーバへの着信時刻を分散化し、かつ前記のデータを定期処理できるネットワークシステムを開発した。すなわち、本発明は、
複数のクライアント端末とサーバが定期的に通信を行うネットワークシステムにおいて、
前記クライアント端末が、前記サーバへデータを送信する際に、前記データの送信時刻を前記データに添付した上で送信する手段と、
前記サーバが、前記クライアント端末の送信時刻が添付されたデータを受信し、前記データの受信時刻を記録する手段と、
前記サーバが、前記送信時刻と前記受信時刻から時間差を算定し、前記時間差が所定の時間差以上の場合に、前記クライアント端末に次回のデータの送信時刻を送信する手段と
を備えることを特徴とする定期通信の最適化方法、並びに
サーバと複数のクライアント端末が定期通信を行うネットワークシステムにおいて、
前記サーバへのデータの送信時、送信時刻を前記データに添付して送信するクライアント端末と、
前記送信時刻と前記データのサーバの受信時刻から時間差を算定し、前記時間差が所定の時間差以上の場合に前記クライアント端末に、次回のデータの送信時刻を送信するサーバと、
を備えていることを特徴とするネットワークシステムに関するものである。
【発明の効果】
【０００７】
本発明のネットワークシステムは、１台のサーバと複数のクライアント端末から構成され、開発するソフトの本数が少ないため、ネットワーク構築時の初期コスト及び管理コストが安価である。
さらに、本発明のネットワークシステムでは、ネットワークの通信量の増加による混雑状況やクライアント端末／サーバ間のネットワーク的な距離の長さに伴う通信時間がより長くなることを、サーバでクライアント端末のデータの送信時刻と前記データのサーバの受信時刻との時間差として把握し、ついで前記時間差に基づいて、サーバからクライアント端末の次回の送信時刻を早めたり、遅くしたりして調節するように設定できる。したがって、本発明のネットワークシステムでは、ネットワークの通信状況に合わせてクライアント端末からサーバへのデータ送信を行い、サーバにおける前記データの受信時刻を分散できるので、前記データの処理にともなうサーバの負荷を適正に保つことができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態について、図面に基づいて説明する。
図１は、本発明の実施形態によるネットワークシステムの構成例を示すブロック図である。
【０００９】
本発明に使用されるネットワークは、クライアント−サーバ方式のネットワークならばいずれでもよく、具体的にはインターネットである。
【００１０】
図２は、本実施形態におけるサーバ１の機能構成の一例を示す機能ブロック図である。図２に示すように、サーバ１は、送受信部１１、クライアント端末送信時刻格納部１２、受信時刻格納部１３、クライアント端末送信時刻設定部１４、制御部１５及びサービス処理部１６から構成される。サービス処理部１６の具体的な処理機能としては、各クライアント端末２から送信されたデータがサーバ１に受信されると、サーバ１は、前記クライアント端末２がネットワークに接続されているものと判断し、サーバ１が提供するデータベースに各クライアント端末２からのデータを登録することである。
【００１１】
サーバ１の各部の機能について説明する。サーバ１は、ネットワーク３を経由して各クライアント端末２から送信されたからデータを送受信部１３で受信し、前記のデータの受信時刻を受信時刻格納部１３に格納し、前記のデータに添付されたクライアント端末の送信時刻をクライアント端末送信時刻格納部１２に格納し、そして、クライアント端末送信時刻設定部１４で前記両格納部１２及び１３の時刻データに基づき、所定の条件に合致する場合にクライアント端末２にデータの送信時刻の変更を送信する。一方、受信したデータをサービス処理部１６で定期的に処理する。
【００１２】
図３は、本実施形態における各クライアント端末２の機能構成の一例を示す機能ブロック図である。図３に示すように、各クライアント端末２は、表示部２１、入力部２２、制御部２３、送信時刻設定部２４、送信時刻格納部２５、サービス処理部２６及び送受信部２７から構成される。サービス処理部２６の具体的な処理機能としては、各クライアント端末２自体の状態（異常状態の有無など）に応じて、サーバ１に対して送信するデータの値を変化させたり、サーバから一定時間内に応答が得られなかった場合のリトライの処理などを実行したりすることである。
【００１３】
各クライアント端末２の各部の機能について説明する。各クライアント端末２は、作業者により表示部２１及び入力部２２から入力されたデータをサービス処理部２６で処理し、処理されたデータに送信時刻設定部２４で設定した送信時刻に前記送信時刻を添付した上、送受信部２７からネットワーク３を経由して、サーバ１に送信する。また、サーバ１からデータ送信時刻の変更を送受信部２７で受信した場合には、送信時刻格納部２５に格納した後、送信時刻設定部２４でデータの送信時刻を変更する。
【００１４】
本発明を実施する際の前提条件である、サーバ１と各クライアント端末２の時刻の調整は、サーバ１又はクライアント端末２ごとに、ＮＴＰ（ネットワーク・タイム・プロトコル）という既存の技術を用いて実施する。すなわち、サーバ１及び各クライアント端末２の時刻の調整は、たとえば仕様書ＲＦＣ１３０５のようなインターネット上で公開されているプロトコールに則った、市販のソフトウエア又は自作のソフトウエアをサーバ１及び各クライアント端末２に予め実装して、サーバ１又は各クライアント端末２のそれぞれが、別々に１日に１回の割合でインターネット上にあるＮＴＰサーバと協定世界時（ＵＴＣ）を使用して送受信を行い、時刻を協定世界時（ＵＴＣ）に合わせる。
【００１５】
図４は、本発明のネットワークシステムにおける、各クライアント端末２とサーバ１の間のデータの送受信に関する時刻の設定に関するフローチャートである。具体的には、以下のようなステップで構成される。
【００１６】
ステップＳ１にて、サーバ１は、各クライアント端末２からのデータの送信を受信するまで待機する。
【００１７】
ステップＳ２にて、サーバ１が、各クライアント端末２から送信時刻が添付されたデータを受信し、前記データのサーバ１の受信時刻及び各クライアント端末２の送信時刻を、それぞれ受信時刻格納部１３及びクライアント端末送信時刻格納部１２に格納する。
【００１８】
ステップＳ３にて、サーバ１が、クライアント端末送信時刻設定部１４で、格納されたクライアント端末送信時刻及び前記データの受信時刻の時間差を算定し、前記時間差が、すでに設定されている平均時間差に比べて所定の範囲内にある場合には、前記プログラムを終了する。なお、前記平均時間差は、各クライアント端末２の過去１０回の送信時刻及びサーバ１の前記データの受信時刻との時間差を平均することにより算定される。この時、前記平均時間差の算定の際には、他の通信時間に比べて極端に長い通信時間の場合は除外される。
【００１９】
ステップＳ４にて、ステップ３で算定された時間差が、前記平均時間差に比べ所定の範囲を超える場合（たとえば、前記時間差からサーバ１の定期処理に間に合わず、サーバ１において前記クライアント端末２からのデータの受信が集中と予測される場合）には、サーバ１は、前記時間差に基づき、各クライアント端末２のデータ送信時刻を算定して、前記データ送信時刻を各クライアント端末２に送信する。前記のデータ送信時刻を受信した各クライアント端末２は、前記データ送信時刻に合わせてデータを送信する。
【００２０】
次に、本発明のネットワークシステムの一つの実施態様を示して、通信ダイヤグラムの観点から本発明のネットワークシステムの有用性をさらに具体的に説明する。
図５は、クライアント端末２台（２Ａ及び２Ｂ）及びサーバ１から構成される本発明のネットワークシステムの一実施態様の通信ダイヤグラムである。Ｔ１乃至Ｔ６は、クライアント端末２Ａとサーバ１間のデータの通信ダイヤグラムであり、Ｔ７乃至Ｔ１１は、クライアント端末２Ｂとサーバ１間のデータの通信ダイヤグラムである。通信ダイヤグラムＴ１及びＴ７において、正常な通信状態にあることを示している。一方、通信ダイヤグラムＴ２及びＴ８では、ネットワークの通信量の増加から、クライアント端末２Ａ及び２Ｂから送信された、前記クライアント端末の送信時刻が添付されたデータがサーバ１に受信されるまでの時間が、正常な通信状態に比べて長時間となっている。この結果、通信ダイヤグラムＴ２のデータのサーバ１の受信時刻は、クライアント端末２Ｂからのデータのサーバの受信時刻と近接したものとなり（通信ダイヤグラムＴ２及びＴ９、並びにＴ４及びＴ１０参照）、前記クライアント端末２Ａ及び２Ｂから送信されたデータを処理するサーバ１に負荷が増す。
この時点において、サーバ１が、前記送信時刻とサーバ１の前記データの受信時刻の比較から、時間差を算定し、当信時間差が所定の範囲を超える場合には、サーバ１から、クライアント端末２Ａに対して、データの送信時刻を送信する（通信ダイヤグラムＴ３参照）。通常、混雑していないインターネットにおけるクライアント端末２から送信されたデータがサーバ１に到達するまでの時間は、大体１００ｍｓ以内（日本国内での通信の場合）であるが、通信量の増加による混雑が発生すると、前記時間はそれ以上になる。また、定期処理は３〜５分に１回である。
【００２１】
これを受信した各クライアント端末２は、サーバ１から送信された送信時刻にデータをサーバ１に送信する（通信ダイヤグラムＴ５参照）。この処理により、クライアント端末２Ａとクライアント端末２Ｂから送信されるデータが、サーバ１の受信時刻に分散され（通信ダイヤグラムＴ５及びＴ１１参照）、サーバ１の定期処理の過度な負荷が解消される。なお、サーバ１の定期処理の具体的な例としては、各クライアント端末２の死活（ネットワークに接続されているかどうか）の監視を行うための判断処理、及び連続した複数回の定期処理にクライアント端末２からの通信が来なかった場合、何らかの理由でネットワークから切り離されたものと判断する処理が挙げられる。
【００２２】
図６は、クライアント端末２台（Ａ及びＢ）及びサーバＣから構成される従来のネットワークシステムの通信ダイヤグラムである。Ｔ５１乃至Ｔ５４は、クライアント端末ＡとサーバＣ間のデータの通信ダイヤグラムであり、Ｔ５５乃至Ｔ５８は、クライアント端末ＢとサーバＣ間のデータの通信ダイヤグラムである。通信ダイヤグラムＴ５１及びＴ５５において、正常な通信状態にあることを示している。一方、通信ダイヤグラムＴ５２及びＴ６では、ネットワークの通信量の増加から、クライアント端末Ａ及びＢから送信されたデータがサーバＣに受信されるまでの時間が、正常な通信状態に比べて長時間となり、加えてサーバＣで受信される時刻が近接している。ネットワークの通信量の増加が続くかぎり、サーバＣでのデータの受信時刻が近接した状況が継続し（通信ダイヤグラムＴ５３及びＴ５７、並びにＴ５４及びＴ５８参照）、サーバＣの定期処理の過度の負荷がかかり続けることになってしまう。
【００２３】
図５及び図６を比較すると、本発明のネットワークシステムは、ネットワーク３の通信量の増加に対応して、各クライアント端末２から送信されたデータのサーバ１による受信時刻を分散させ、前記のデータのサーバ１による処理を適正に実行することができることが明らかである。さらに、図５及び図６の場合、クライアント端末２を２台としての説明から、次のようなことが明らかである。すなわち、クライアント端末２の台数がもっと多くなり、前記のデータのサーバ１への着信数が増加した場合、ネットワークが混雑した場合でも、本発明のネットワークシステムならば、前記のデータのサーバ１での受信が時間的に集中することなく、分散させることができるため、前記のデータの定期処理にともなうサーバの負荷を適正に保つことができる。
【００２４】
図５ではクライアント端末は２台であるが、さらにクライアント端末２の台数が増加した場合でも、本発明のネットワークシステムの場合サーバ１での各クライアント端末２からのデータの受信の集中を分散させることができる。すなわち、サーバ１は、各クライアント端末２の定期データ送信の時間間隔（ネットワークの通信の増加に伴うサーバ１の受信の遅延による補正を行わない時間）が、サーバ１のクライアント端末格納部に記憶されている。この格納された時間間隔のデータに基づき、各クライアント端末２からデータの受信がサーバ１に集中した場合に、クライアント端末２からデータの集中が発生する、次の受信時刻が算定される。そこで、サーバ１が、データの送信を集中させたクライアント端末２の内から無作為に選んだクライアント端末２に対して、次の送信時刻を早めたり若しくは遅くしたりすることで、徐々に各クライアント端末２からのデータの受信を分散させることが出来る。
【００２５】
図７は、本発明のネットワークシステムの一実施態様におけるサーバ１における、たとえば１００台くらいの多数の複数のクライアント端末２からのデータの受信件数の経時的な推移を示すグラフである。定期処理１において、ネットワークの通信量の増加から各クライアント端末２からのデータの、サーバ１における受信件数が集中している（Ｐ−２）時間帯があることを示している。ここにおいて、Ｐ−２の時点でサーバ１が受信したデータを送信したクライアント端末２のいくらかに対して、理想負荷には余裕がある時間帯（Ｐ−１）へデータを送信するようにクライアント端末２へデータの送信時刻をサーバ１から送信する。その結果、定期処理２に示されるように、サーバ１におけるデータの受信件数の集中が幾分か是正される（Ｐ−５及びＰ−６）。しかしながら、依然としてサーバ１の受信件数の集中が解消されていない時間帯（Ｐ−６）が存在する。このＰ−６への集中を解消するために、理想負荷であるクライアント端末２からのデータ受信件数には余裕がある時間帯（Ｐ−７に相当する時間帯、すなわちＰ−１１）へデータを送信するようにクライアント端末２へデータの送信時刻をサーバ１から送信する。この処理の結果、定期処理３の全時間帯において、サーバ１のクライアント端末２からのデータ１の受信件数が、理想負荷の受信件数以内に収めることができる（Ｐ−９、Ｐ−１０及びＰ−１１）。以上のような、本発明のネットワークシステムにより各クライアント端末２から送信されたデータのサーバ１の受信時刻を調整できるのは、サーバ１が、前記データの受信時刻から次回の前記データのサーバ１の受信時刻を予測して、各クライアント端末２のデータの次回の送信時刻を設定できるからである。なお、理想負荷（たとえば、図７では、点線で囲んだ部分）とは、は、サーバ１の能力によっても異なるが、サーバ１の通常の稼働状況を維持できる本発明のサーバ１における理想負荷のデータの受信件数の状態であり、加えて定期処理から次の定期処理へ移る場合には、クライアント端末２からの次回送信の遅延が発生した場合、サーバ１の次回定期処理に間に合わない可能性を考慮して、たとえば１０秒くらいの時間帯として、クライアント端末２からのデータの受信が１件もない時間帯（たとえば、Ｐ−４、Ｐ−８及びＰ−１２）を設定できることを意味する。
【００２６】
以上の本発明のネットワークシステムは、ネットワークにおける通信の混雑や各クライアント端末２／サーバ１の間の距離によるデータの送信にかかる時間が長くなると、サーバ１の定期処理の開始時刻に間にあわなかったり、さらにはサーバ１がクライアント端末２からのデータを受信できなかったり等の通信上のトラブルが発生した場合に応じて、各クライアント端末２のデータの送信時刻をサーバ１から調整することにより、前記トラブルの発生を未然に防ぐことができる。
【図面の簡単な説明】
【００２７】
【図１】図１は、本発明のネットワークシステムの概略を示すブロック図であ        る。
【図２】図２は、本発明に使用されるサーバのブロック図である。
【図３】図３は、本発明に使用されるクライアント端末のブロック図である。
【図４】図４は、本発明のネットワークシステムにおける、クライアント端末        とサーバの間のデータの送受信に関する時刻の設定に関するフローチ        ャートである。
【図５】図５は、クライアント端末２台及びサーバから構成される本発明のネ        ットワークシステムの通信ダイヤグラムである。
【図６】図６は、クライアント端末２台及びサーバから構成される従来のネッ        トワークシステムの通信ダイヤグラムである。
【図７】図７は、本発明のネットワークシステムにおけるサーバ１における多        数のクライアント端末２からのデータの受信件数の経時的な推移を示        すグラフである。
【図８】図８は、従来のネットワークシステムの概略図である。
【符号の説明】
【００２８】
１：サーバ
２：クライアント端末
３：ネットワーク
１１：送受信部
１２：クライアント端末送信時刻格納部
１３：受信時刻格納部
１４：クライアント端末送信時刻設定部
１５：制御部
１６：サービス処理部
２１：表示部
２２：入力部
２３：制御部
２４：送信時刻設定部
２５：送信時刻格納部
２６：サービス処理部
２７：送受信部
【図１】
0005150164.tif 000002
【図２】
0005150164.tif 000003
【図３】
0005150164.tif 000004
【図４】
0005150164.tif 000005
【図５】
0005150164.tif 000006
【図６】
0005150164.tif 000007
【図７】
0005150164.tif 000008
【図８】
0005150164.tif 000009