(57)【特許請求の範囲】
【請求項１】
通信部、内蔵時計、中央演算装置、外部記憶装置、およびアプリケーションを実装した複数のクライアント端末と、サーバコンピュータと、これらを接続する公衆回線およびクライアント端末間直接通信無線回線とで構成されるクライアント・サーバ型システムにおいて、距離や遮蔽物の存在等によりクライアント端末間直接通信が不能な場合でもサーバコンピュータと各クライアント端末の時刻同期を可能とする方法であって、
サーバコンピュータが、クライアント端末間直接通信無線回線、公衆回線、および通信中継器を利用してクライアント端末を順番に繋げていくデータ配信経路を、距離や遮蔽物の存在等によりクライアント端末間直接通信が不能な場合には、公衆回線または通信中継器を利用し、且つ、通信料ができるだけ少なくなるよう設定する第１ステップ、
サーバコンピュータがデータ配信経路に設定された一のクライアント端末に時刻修正指令を送信することで一のクライアント端末のアプリケーションを起動し、該アプリケーションがサーバコンピュータに時刻同期要求を送信し、現在時刻情報およびデータ配信経路を受信し、自分がもつ内蔵時計の時刻を修正する第２ステップ、
一のクライアント端末がデータ配信経路に設定された他のクライアント端末に線時刻修正指令を送信することで他のクライアント端末のアプリケーションを起動し、該アプリケーションが一のクライアント端末に時刻同期要求を送信し、現在時刻情報およびデータ配信経路を受信し、自分がもつ内蔵時計の時刻を修正する第３ステップ、
データ配信経路に設定された全てのクライアント端末の時刻同期が終了するまで、第３ステップを繰り返す第４ステップを有することを特徴とする方法。
【請求項２】
第３ステップにおいて、一のクライアント端末がデータ配信経路に設定された他のクライアント端末から時刻同期要求を受信しない場合には、サーバコンピュータに異常情報を送信し、これを受信したサーバコンピュータが新たなデータ配信経路を設定し、続いて（Ａ）サーバコンピュータが該新たなデータ配信経路を一のクライアント端末に送信し、これを受信した一のクライアント端末が該新たなデータ配信経路に設定された他のクライアント端末に時刻修正指令を送信すること、または、（Ｂ）サーバコンピュータが該新たなデータ配信経路に設定された他のクライアント端末に時刻修正指令を送信すること、
それにより他のクライアント端末のアプリケーションを起動し、該アプリケーションが一のクライアント端末またはサーバコンピュータから現在時刻情報および該新たなデータ配信経路を受信し、自分がもつ内蔵時計の時刻を修正することを特徴とする請求項１のサーバコンピュータと各クライアント端末の時刻同期を可能とする方法。
【請求項３】
通信部、内蔵時計、中央演算装置、外部記憶装置、およびアプリケーションを実装した複数のクライアント端末と、サーバコンピュータと、これらを接続する公衆回線およびクライアント端末間直接通信無線回線とから構成され、距離や遮蔽物の存在等によりクライアント端末間直接通信が不能な場合でもサーバコンピュータと各クライアント端末の時刻同期を可能とするクライアント・サーバ型システムであって、
サーバコンピュータは、クライアント端末間直接通信無線回線、公衆回線、および通信中継器を利用してクライアント端末を順番に繋げていくデータ配信経路を、距離や遮蔽物の存在等によりクライアント端末間直接通信が不能な場合には、公衆回線または通信中継器を利用し、且つ、通信料ができるだけ少なくなるよう設定する機能と、データ配信経路に設定された一のクライアント端末に時刻修正指令を送信する時刻修正指令機能と、常駐待機状態にあり、時刻要求情報を受信すると自分がもつ現在時刻情報を返信する時刻返信機能とを有し、
クライアント端末のアプリケーションは、時刻修正指令を受信すると起動され、時刻修正指令を送信したサーバコンピュータまたはクライアント端末に時刻同期要求を送信し、時刻修正指令を送信したサーバコンピュータまたはクライアント端末から現在時刻情報を受信し、自分がもつ内蔵時計の時刻を修正する時刻修正機能と、常駐待機状態にあり、時刻要求情報を受信すると自分がもつ現在時刻情報を返信する時刻返信機能と、データ配信経路に設定された他のクライアント端末に時刻修正指令を送信する時刻修正指令機能とを有することを特徴とするシステム。
【請求項４】
前記クライアント端末は、データ配信経路に設定された他のクライアント端末に時刻修正指令を送信しても時刻同期要求を受信しない場合には、サーバコンピュータに異常情報を送信する機能を有し、
前記サーバコンピュータは、クライアント端末から異常情報を受信した際は、新たなデータ配信経路を設定し、該新たなデータ配信経路を異常情報を送信したクライアント端末に送信する、または、該新たなデータ配信経路に設定された他のクライアント端末に時刻修正指令を送信する機能を有することを特徴とする請求項３のサーバコンピュータと各クライアント端末の時刻同期を可能とするクライアント・サーバ型システム。
【発明の詳細な説明】
【０００１】
【産業の属する技術分野】
本発明は、サーバコンピュータと各クライアント端末の時刻同期を可能とする方法およびシステムに関する。
【０００２】
【従来の技術】
多数のクライアント端末とサーバで構成されたシステムにおいて、多数のクライアント端末（以下、単に「クライアント」という場合がある）が同時刻に一斉に動作する必要がある場合、各クライアントの時刻を同期させておく必要がある。これを行おうとすれば、通常は、ＦＭ放送や人工衛星から送られてくる時刻情報を各クライアントが受信し、時刻を同期させる方法や、サーバから通信回線を活用して、各クライアントの時刻を同期させていく方法、逆に各クライアントからサーバへ時刻を合わせにいく方法がある。
【０００３】
【発明が解決しようとする課題】
この場合、クライアントが屋根や庇などにより覆われている場合は、ＦＭ電波や衛星からの電波を受信できないことがあり、時刻同期ができないことがあった。このとき、一部のクライアントが、何らかの原因で電波を受信できず、他のクライアントと時刻同期ができていない状態になったとしても、発見する手段がなかった。
また、クライアントが多数存在した場合、サーバから個別にクライアントに公衆回線等を使用して時刻同期をさせようとすると、クライアントの数だけ通信料が必要であり、サーバからクライアントの数だけ公衆回線を用いて発信する必要があった。逆に、各クライアントからサーバに対して時刻を合わせにいく方法においても同様である。
【０００４】
本発明は、多数のクライアントとサーバで構成され、クライアント端末間のデータ送受信のために、サーバコンピュータが、各クライアント間のデータの送受信のためのデータ配信経路を設定し、公衆および子機間直接通信機能を用いてデータを渡り歩きさせることができるクライアント・サーバ型システムにおいて、確実に時刻同期を行うことを課題とする。
【０００５】
【課題を解決するための手段】
本発明は、通信機能を実装した複数のクライアント端末とサーバコンピュータとで構成され、クライアント端末間のデータの送受信のために、サーバコンピュータが、各クライアント間のデータ配信経路を設定し、通信機能を用いてデータを渡り歩きをさせることができるクライアント・サーバ型システムにおいて、各クライアント端末には、時刻返信機能および時刻修正機能の両方を実装することによって、サーバコンピュータと各クライアント端末の時刻同期を可能とする方法を要旨としている。
【０００６】
上記の通信機能が、公衆および子機間直接通信機能であり、その場合、本発明は、公衆および子機間直接通信機能を実装した複数のクライアント端末とサーバコンピュータとで構成され、クライアント端末間のデータの送受信のために、サーバコンピュータが、各クライアント間のデータ配信経路を設定し、公衆および子機間直接通信機能を用いてデータを渡り歩きをさせることができるクライアント・サーバ型システムにおいて、各クライアント端末には、時刻返信機能および時刻修正機能の両方を実装することによって、サーバコンピュータと各クライアント端末の時刻同期を可能とする方法である。
【０００７】
上記の時刻返信機能が、自分以外のクライアント端末からの時刻要求電文を受信すると、自分が持つ現在時刻のデータを該時刻要求電文発信クライアント端末に返信するという機能であり、その場合、本発明は、通信機能、より具体的には公衆および子機間直接通信機能を実装した複数のクライアント端末とサーバコンピュータとで構成され、クライアント端末間のデータの送受信のために、サーバコンピュータが、各クライアント間のデータ配信経路を設定し、該通信機能を用いてデータの渡り歩きをさせることができるクライアント・サーバ型システムにおいて、各クライアント端末には、自分以外のクライアント端末からの時刻要求電文を受信すると、自分が持つ現在時刻のデータを該時刻要求電文発信クライアント端末に返信するという時刻返信機能および時刻修正機能の両方を実装することによって、サーバコンピュータと各クライアント端末の時刻同期を可能とする方法である。
【０００８】
上記の時刻修正機能が、時刻要求電文を自分以外のクライアント端末および／またはサーバコンピュータへ送信して、送信先のクライアント端末やサーバコンピュータが持つ現在時刻データの返信を受けて、該時刻要求電文送信クライアント端末自身が持つ内蔵時計を自動的に修正するという機能であり、その場合、本発明は、通信機能、より具体的には公衆および子機間直接通信機能を実装した複数のクライアント端末とサーバコンピュータとで構成され、クライアント端末間のデータの送受信のために、サーバコンピュータが、各クライアント間のデータ配信経路を設定し、該通信機能を用いてデータを渡り歩きをさせることができるクライアント・サーバ型システムにおいて、各クライアント端末には、時刻返信機能、より具体的には自分以外のクライアント端末からの時刻要求電文を受信すると、自分が持つ現在時刻のデータを該時刻要求電文発信クライアント端末に返信するという時刻返信機能、および時刻要求電文を自分以外のクライアント端末および／またはサーバコンピュータへ送信して、送信先のクライアント端末やサーバコンピュータが持つ現在時刻データの返信を受けて、該時刻要求電文送信クライアント端末自身が持つ内蔵時計を自動的に修正するという時刻修正機能の両方を実装することによって、サーバコンピュータと各クライアント端末の時刻同期を可能とする方法である。
【０００９】
すなわち、上記課題を解決するために、本発明の好ましい態様は、クライアント・サーバシステムにおける各クライアントに、公衆や子機間直接通信機能をもった通信部を実装し、各クライアント間のデータの送受信用経路を設定し、公衆あるいは子機間直接通信を用いてデータを渡り歩き配送させることができるクライアント・サーバ型システムにおいて、
各クライアントには、自分以外のクライアントからの時刻要求電文を受信すると、自分が持つ現在時刻のデータを該時刻要求電文発信クライアントに返信するという時刻返信機能、および時刻要求電文を自分以外のクライアントやサーバコンピュータに送信して、送信先のクライアントやサーバが持つ現在時刻データの返信を受けて、該時刻要求電文送信クライアント自身が持つ内蔵時計を自動的に修正するという時刻修正機能の両方を実装することによって、システムを構成するサーバコンピュータと各クライアントの時刻同期を行うことを特徴とする。
【００１０】
【発明の実施の形態】
図１、図２、図３および図４に記載された実施例にもとづいて、本発明の実施形態を説明するが、細部の構成は、実施例に限定されるものではない。
【００１１】
図１においては、各クライアントのハードウエア概略ブロック図、図２は時刻同期のシーケンス、図３はクライアント・サーバシステムを構成する要素として位置付けた、複数のクライアントとサーバのシステム構成図の例である。また、図４は、サーバからデータを末端のクライアントまで伝送していくデータ配送経路の例を示している。
【００１２】
本発明の請求項１におけるクライアントは、例えば、図１で示す通り３つのシリアルポート１、２および３、Ｅｔｈｅｒｎｅｔ（米国ＸＥＲＯＸ社の登録商標）ポート４、マイクロコンピュータ５、外部記憶装置６、時計回路７、異常監視回路８、バックアップ回路９、デジタル入力インターフェース１０、アイソレータ１１、制御用通信ポート１２、これらを実装した基板１３、収納した筺体１４、ＰＨＳや携帯電話モデムなどの通信装置１５、ソフトウエア入力スイッチ１６、ハードウエアリセットスイッチ１７を備えている。
【００１３】
シリアルポート１は通信装置１５を接続するポートであり、例えばＰＨＳは筺体１４に取付可能であり、通信装置が外部に接続される場合は、通信規格ＲＳ２３２Ｃに切り替えることにより接続できる構造としている。また、同装置は、子機間直接通信を行う機能も備えている。シリアルポート２は、標準搭載している通信規格ＲＳ２３２ＣとＲＳ４２２のいずれかを切替によって用いて通信を行うシリアルポートである。
【００１４】
シリアルポート３は、保守用またはソフトウエアの入力等に使用するコンソール装置を接続する専用のシリアルポートである。
【００１５】
Ｅｔｈｅｒｎｅｔポート４は、例えばＴＣＰ／ＩＰプロトコルにより外部との通信を行うためのものであり、１０ＢａｓｅＴのインターフェースとなっている。
【００１６】
マイクロコンピュータ５は、リアルタイムオペレーティングシステムおよびＪａｖａ（Ｊａｖａ：米国Ｓｕｎ  Ｍｉｃｒｏｓｙｓｔｅｍｓ社の登録商標）実行環境などのシステムやアプリケーションを実行・制御するための中央演算装置である。外部記憶装置６は、不揮発性メモリなどで構成されており、必要なデータ、プログラムなどを保存し、また停電時にはバックアップ回路９でデータを保護することができる。
【００１７】
時計回路７は、マイクロコンピュータ５とは独立に動作しており、時計データおよび内部システム動作に必要な割り込みタイマーや定周期タイマーを実現している。
【００１８】
デジタル入力インターフェース１０は、例えば監視・制御対象機器などの情報を直接取り込むものであり、マイクロコンピュータ５等の内部システムとは、電気的に絶縁するアイソレータ１１を介して、情報が取り込まれる。
制御用通信ポート１２は、監視・制御対象装置との通信を行うポートであり、例えばＬＯＮＷＯＲＫＳ（米国ＥＣＨＥＬＯＮ社の登録商標）などを使用して通信を行うことができる。
【００１９】
筺体１４は、サーバ基板１３などを保護するとともに、サーバの設置場所等の制約を受けないコンパクトな形状となっている。
【００２０】
次に図２は、クライアント６１とクライアント６２の間で時刻修正を行うシーケンスを示している。
【００２１】
クライアント６１は、クライアント６２に対して、通信部４１０を介して回線を接続し、時刻修正指令メッセージ１１０をクライアント６２の通信部４２０へ送信する。時刻修正指令メッセージ１１０を受けたクライアント６２は、内部の記憶装置３２０に保持している例えばＪａｖａ言語で記述されたアプリケーション２００を起動させる。Ｊａｖａアプリケーション２００は、クライアント６２の通信部４２０を介して、時刻同期要求を送信し、送信先のクライアント等が持つ現在時刻情報を受信したら、自分がもつ内蔵時計６２０の時刻を修正する時刻修正機能５２０を起動させ、通信部４２０を介してクライアント６１に時刻同期要求１２０を送信する。クライアント６２からの時刻同期要求１２０を受信したクライアント６１は、記憶装置３１０に保持し、常に自分以外のクライアントからの時刻要求に備え、常駐待機状態にあり、時刻要求電文を受信したら、時刻要求伝文送信クライアントに自分がもつ現在時刻データを返信する時刻返信機能５１０を起動し、クライアント６１が持つ内蔵時計６１０から時刻情報を得て、通信部４１０を介し、クライアント６２に現在時刻１３０を返信する。
【００２２】
クライアント６１からの現在時刻１３０を受信したクライアント６２は、時刻修正機能５２０により、内蔵時計６２０の時刻を修正する。時刻修正が終われば、通信部４２０は回線を切断する。これにより、クライアント６１と６２は、時刻同期をかなり高い精度で行うことができる。
【００２３】
なお、内蔵時計６１０、６２０は、図１のハードウエア概略図でいえば、それぞれのクライアントの中の時計回路７にある。
【００２４】
また、クライアント６１は、クライアント６２に実装されているＪａｖａアプリケーション２００および時刻修正機能５２０と同じ機能を有するＪａｖａアプリケーション２１０および時刻修正機能５２１を、時刻返信機能５１０と同時に実装している。逆に、クライアント６２には、クライアント６１に実装させている時刻返信機能５１０と同じ機能を有する時刻返信機能５１１を、時刻修正機能５２０と同時に実装している。
【００２５】
さらに図３は、センター装置に位置づけたサーバと複数のクライアントで構成されたクライアント・サーバシステムを示したシステム構成図の一例である。
これを用いて、サーバと複数のクライアントの時刻同期をさせる方法を説明する。本事例では、サーバ８１は、例えば、公衆回線で二以上のクライアント（図３では、クライアント７４、７５、７６、７７の四台の例を示している。）と結ばれている。
【００２６】
図３のデータ配信経路Ａでは、クライアント７４と７５の間は、例えば、ＰＨＳの公衆通信で、クライアント７５と７６の間はＰＨＳの子機間直接通信で、また、クライアント７６と７７の間は、ＰＨＳの子機間直接通信でデータの送受信を行う例を示している。
【００２７】
図３におけるサーバと複数のクライアント間の時刻を同期させる場合、まず、時刻修正指令メッセージやデータ等を送受信する順番を定めた経路を策定する。図３の場合においては、図４のとおり、サーバ８１からデータ等を最初に送受信するクライアントは、クライアント７４と定めている。次にクライアント７４はクライアント７５へ、クライアント７５はクライアント７６へ、クライアント７６はクライアント７７へという順番で、データを送受信するように経路を定めている。
【００２８】
これらの経路を定める場合、例えばクライアントが屋根や庇などに隠れており、ある方向からの無線通信が不可能な場合は、無線通信が可能な方向からデータを送受信できるようにデータの送受信経路を定めておく。経路Ａの場合は、クライアント７５とクライアント７７の間に遮蔽物があるため、クライアント７５は、クライアント７７との通信に問題のないクライアント７６との間で時刻同期を行った後、クライアント７６とクライアント７７が時刻同期を行う。
【００２９】
また、クライアント間の距離が遠方にあったり、遮蔽物があって一定の方向からしか子機間直接通信機能が通じない場合は、公衆回線を利用したり、通信中継器を利用することもある。この場合、クライアントを中継器として利用してもよい。経路Ｂでは、クライアント７５が遠方にあり、クライアント７７からの通信に通信中継器を利用する例を示している。
【００３０】
このように通信可能なクライアントを順番に繋げていく経路を設定し、子機間直接通信を利用することにより、通信料をできるだけ少なくし、データの送受信を確実に行うことができる。
【００３１】
次に、サーバ８１が各クライアントと時刻同期を行う際には、まず、最初のデータ送受信先であるクライアント７４と時刻同期を行う。この場合、サーバ８１とクライアント７４は、図２を用いて説明した時刻同期に必要な時刻修正指令メッセージや現在時刻情報等を、公衆通信を用いて送受信し、時刻を同期させる。次にクライアント７４は、通信部を介して、クライアント７５に対して公衆通信を用いて通信し、図２を用いて説明した時刻同期に必要な時刻修正指令メッセージや現在時刻情報等を送受信し、時刻を同期させる。さらにクライアント７５はクライアント７６と子機間直接通信を用いて、クライアント７６はクライアント７７と子機間直接通信を用いてと、時刻修正指令メッセージや現在時刻情報等を予め設定した経路に沿って渡り歩き配送させることによって、サーバ８１とクライアント７４、７５、７６、７７は時刻同期を行うことができる。
【００３２】
なお、時刻修正指令メッセージの中に、送信先のクライアントが応答しない場合、指令発信クライアントがサーバに対してその旨を連絡するプログラムを含ませて、システム自身の異常診断を行ってもよい。また、このときに、連絡を受けたサーバから該指令発信クライアントに対し、応答しないクライアントを飛ばし、別の送信先であるクライアントを指示してもよいし、サーバが新たなルートを設定して、別の送信先に時刻修正指令メッセージを送信し、渡り歩き通信を再開してもよい。
【００３３】
【発明の効果】
多数のクライアントが存在するクライアント・サーバシステムにおいて、通信が可能なクライアント間でデータ配信経路を設定し、子機間直接通信を利用することで、精度の高い、時刻同期を少額の通信料で行うことができる。
【００３４】
また、サーバからのデータ配信を渡り歩きさせることにより、サーバや各クライアントの負荷が最小限度で済むが、他のデータ配信に併せて、時刻修正指令を配信することで、時刻同期を行うこともできる。
【００３５】
あるクライアントが自己の時刻データを他のクライアントに送信して相手先の時刻データを修正すること、および、他のクライアントの時刻データを要求・受信し、自己の時刻データを修正することにより、システムの自律分散機能を補強することができる。
【００３６】
さらに、時刻修正指令メッセージの中に、送信先のクライアントが応答しない場合には、指令発信クライアントがサーバに対してその旨を連絡するというプログラムを含ませておくことにより、システム自身の異常をタイムリーに発見することができる。
【図面の簡単な説明】
【図１】各クライアントのハードウエア概略ブロック図である。
【図２】時刻修正のシーケンス説明図である。
【図３】時刻同期ネットワーク説明図である。
【図４】  サーバからデータを末端のクライアントまで伝送していくデータ配送経路の例を示す図面である。
【図１】
0003963699.tif 000002
【図２】
0003963699.tif 000003
【図３】
0003963699.tif 000004
【図４】
0003963699.tif 000005