(57)【特許請求の範囲】
【請求項１】
サーバ装置とネットワークを介して接続可能な同期制御装置であって、
前記サーバ装置との間で時刻を同期する時刻同期処理で採用される前記サーバ装置との通信方式である所定通信方式、及び前記時刻同期処理で採用される前記サーバ装置で計時される基準時刻との同期方式である所定同期方式、を決定するための２つ以上の条件それぞれに関する２つ以上の条件値を取得する取得部と、
前記２つ以上の条件値に対する評価値の合計を用いて、複数の通信方式の中からの前記所定通信方式の決定、及び複数の同期方式の中からの前記所定同期方式の決定、を行う決定部と、
を備える同期制御装置。
【請求項２】
前記所定通信方式は、通信対象情報の形式を定める所定通信形式設定方式と、前記通信対象情報を交換する順番及び間隔を定めた所定通信手順制御方式と、を含み、
前記所定同期方式は、前記サーバ装置との時刻差の所定算出方式と、自身の時刻を前記サーバ装置で計時される時刻に補正する所定補正方式と、を含み、
前記２つ以上の条件値は、前記所定通信形式設定方式、前記所定通信手順制御方式、前記所定算出方式、及び前記所定補正方式、を決定するためのものであり、
前記決定部は、前記２つ以上の条件値に対する評価値の合計を用いて、複数の通信形式設定方式の中からの前記所定通信形式設定方式の決定、複数の通信手順制御方式の中からの前記所定通信手順制御方式の決定、複数の算出方式の中からの前記所定算出方式の決定、及び複数の補正方式の中からの前記所定補正方式の決定、を行う請求項１に記載の同期制御装置。
【請求項３】
前記決定部は、前記２つ以上の条件値それぞれが取り得る値と前記複数の通信方式及び前記複数の同期方式とに基づく決定テーブルと、前記２つ以上の条件値に対する評価値の合計と、を用いて、前記複数の通信方式の中からの前記所定通信方式の決定、及び前記複数の同期方式の中からの前記所定同期方式の決定、を行う請求項１に記載の同期制御装置。
【請求項４】
前記２つ以上の条件それぞれは、時刻の同期精度、前記サーバ装置と同期可能な端末数、前記サーバ装置との間の伝搬遅延時間、前記サーバ装置までの通信トラヒック量、自身の演算能力、自身のメモリ量、前記時刻同期処理開始から前記時刻同期処理終了までの制限時間、及び同期前の時刻と同期後の時刻との連続性の有無の少なくともいずれかである請求項１に記載の同期制御装置。
【請求項５】
決定された前記所定通信方式及び前記所定同期方式を採用して、前記時刻同期処理を行う同期部を更に備える請求項１に記載の同期制御装置。
【請求項６】
前記取得部は、入力部から前記２つ以上の条件値を取得する請求項１に記載の同期制御装置。
【請求項７】
前記ネットワークを介した通信を解析して、前記２つ以上の条件値を抽出する解析部を更に備え、
前記取得部は、前記解析部から前記２つ以上の条件値を取得する請求項１に記載の同期制御装置。
【請求項８】
前記２つ以上の条件は、前記サーバ装置と同期可能な端末数を示す値を少なくとも含み、
前記解析部は、前記サーバ装置と同期可能な１つ以上の端末から通知される同期参加通知を解析して、前記端末数の条件値を抽出する請求項７に記載の同期制御装置。
【請求項９】
前記２つ以上の条件は、前記サーバ装置との間の伝搬遅延時間を示す値を少なくとも含み、
前記解析部は、前記サーバ装置と通信の往復時間を解析して、前記伝搬遅延時間の条件値を抽出する請求項７に記載の同期制御装置。
【請求項１０】
前記２つ以上の条件は、前記サーバ装置までの通信トラヒック量を示す値を少なくとも含み、
前記解析部は、前記サーバ装置との通信を中継する中継装置との通信を解析して、前記通信トラヒック量の条件値を抽出する請求項７に記載の同期制御装置。
【請求項１１】
前記取得部は、前記ネットワークを介して接続される外部入力装置から前記２つ以上の条件を取得する請求項１に記載の同期制御装置。
【請求項１２】
同期制御装置と、当該同期制御装置とネットワークを介して接続可能なサーバ装置と、を備える同期システムであって、
前記同期制御装置は、
前記サーバ装置との間で時刻を同期する時刻同期処理で採用される前記サーバ装置との通信方式である所定通信方式、及び前記時刻同期処理で採用される前記サーバ装置で計時される基準時刻との同期方式である所定同期方式、を決定するための２つ以上の条件それぞれに関する２つ以上の条件値を取得する取得部と、
前記２つ以上の条件値に対する評価値の合計を用いて、複数の通信方式の中からの前記所定通信方式の決定、及び複数の同期方式の中からの前記所定同期方式の決定、を行う決定部と、
決定された前記所定通信方式及び前記所定同期方式を採用して、前記時刻同期処理を行う同期部と、を備え、
前記サーバ装置は、
前記基準時刻を計時する計時部と、
前記所定通信方式で前記基準時刻を前記同期制御装置に通知する通知部と、を備える同期システム。
【請求項１３】
サーバ装置とネットワークを介して接続可能な同期制御装置で実行される同期制御方法であって、
前記サーバ装置との間で時刻を同期する時刻同期処理で採用される前記サーバ装置との通信方式である所定通信方式、及び前記時刻同期処理で採用される前記サーバ装置で計時される基準時刻との同期方式である所定同期方式、を決定するための２つ以上の条件それぞれに関する２つ以上の条件値を取得する取得ステップと、
前記２つ以上の条件値に対する評価値の合計を用いて、複数の通信方式の中からの前記所定通信方式の決定、及び複数の同期方式の中からの前記所定同期方式の決定、を行う決定ステップと、
を含む同期制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、同期制御装置、同期システム及び同期制御方法に関する。
【背景技術】
【０００２】
従来から、装置外部で計時された基準時刻を取得し、装置内部で管理されている時刻を当該基準時刻と同期する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−６７０８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、基準時刻と同期した時刻の用途は様々考えられるため、基準時刻との時刻同期処理は、当該用途に応じた方式で行うことが一般的である。このため、上述したような従来技術では、予め定められた固定的な方式でしか基準時刻と同期できず、対応できる用途が限定されてしまう。
【０００５】
本発明が解決しようとする課題は、様々な用途に対応できる同期制御装置、同期システム及び同期制御方法を提供することである。
【課題を解決するための手段】
【０００６】
実施形態の同期制御装置は、サーバ装置とネットワークを介して接続可能な同期制御装置であって、取得部と、決定部と、を備える。取得部は、前記サーバ装置との間で時刻を同期する時刻同期処理で採用される前記サーバ装置との通信方式である所定通信方式、及び前記時刻同期処理で採用される前記サーバ装置で計時される基準時刻との同期方式である所定同期方式の少なくともいずれかを決定するための１つ以上の条件に関する条件値を取得する。決定部は、前記１つ以上の条件値を用いて、複数の通信方式の中からの前記所定通信方式の決定、及び複数の同期方式の中からの前記所定同期方式の決定の少なくともいずれかを行う。
【図面の簡単な説明】
【０００７】
【図１】第１実施形態の同期システムの例を示す構成図。
【図２】第１実施形態の同期装置の例を示す構成図。
【図３】第１実施形態の１つ以上の条件値の例を示す図。
【図４】第１実施形態の決定テーブルの例を示す図。
【図５】第１実施形態のサーバ装置の例を示す構成図。
【図６】第１実施形態の同期装置で行われる処理例を示すフローチャート。
【図７】図６のステップＳ１０３の処理例を示すフローチャート。
【図８】第１実施形態のサーバ装置で行われる処理例を示すフローチャート。
【図９】第２実施形態の同期装置の例を示す構成図。
【図１０】第３実施形態の同期システムの例を示す構成図。
【図１１】第３実施形態の同期装置の例を示す構成図。
【図１２】各実施形態の同期装置のハードウェア構成の例を示す図。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照しながら、実施形態を詳細に説明する。
【０００９】
（第１実施形態）
図１は、第１実施形態の同期システム１の一例を示す構成図である。図１に示すように、同期システム１は、同期装置１０（同期制御装置の一例）と、サーバ装置２０とを、備える。同期装置１０とサーバ装置２０とは、ネットワーク２を介して接続されている。ネットワーク２は、例えば、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）、専用回線、及びインターネットなどが挙げられる。なお、ネットワーク２は、有線ネットワークであっても無線ネットワークであってもよい。
【００１０】
サーバ装置２０は、時刻同期用の基準時刻を計時するコンピュータである。同期装置１０は、サーバ装置２０により計時された基準時刻を用いて、自身の時刻を同期するものであり、例えば、産業用機器などが挙げられるが、これに限定されるものではない。なお、図１に示す例では、１台の同期装置１０を例示しているが、実際には、１台以上の同期装置がネットワーク２に接続され、各同期装置が、サーバ装置２０により計時された基準時刻を用いて、自身の時刻を同期している。
【００１１】
図２は、第１実施形態の同期装置１０の一例を示す構成図である。図２に示すように、同期装置１０は、入力部１１と、取得部１２と、記憶部１３と、決定部１４と、同期部１５と、計時部１６とを、備える。同期部１５は、通信形式設定部１５Ａと、通信手順制御部１５Ｂと、時刻差算出部１５Ｃと、時刻補正部１５Ｄとを、含む。
【００１２】
入力部１１は、例えば、マウスやキーボードなどの入力装置により実現できる。取得部１２、決定部１４、同期部１５（通信形式設定部１５Ａ、通信手順制御部１５Ｂ、時刻差算出部１５Ｃ、及び時刻補正部１５Ｄ）、及び計時部１６は、例えば、ＣＰＵ（Central  Processing  Unit）などの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。記憶部１３は、例えば、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、メモリカード、光ディスク、ＲＡＭ（Random  Access  Memory）、及びＲＯＭ（Read  Only  Memory）などの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。
【００１３】
入力部１１は、ユーザ操作に基づいて、１つ以上の条件に関する条件値（以下、「１つ以上の条件値」と称する）を入力する。１つ以上の条件値は、サーバ装置２０との間で時刻を同期する時刻同期処理で採用されるサーバ装置２０との通信方式である所定通信方式、及び当該時刻同期処理で採用されるサーバ装置２０で計時される基準時刻との同期方式である所定同期方式の少なくともいずれかを決定するための条件値である。
【００１４】
第１実施形態では、所定通信方式は、通信対象情報の形式を定める所定通信形式設定方式と、通信対象情報を交換する順番及び間隔を定める所定通信手順制御方式と、を含み、所定通信方式が、所定通信形式設定方式及び所定通信手順制御方式で構成される場合を例に取り説明するが、これに限定されるものではない。所定通信方式は、細分化しなくてもよいし、上記のように細分化してもよいし、上記とは異な形態に細分化してもよい。
【００１５】
同様に、第１実施形態では、所定同期方式は、サーバ装置２０との時刻差の所定算出方式と、自身の時刻をサーバ装置２０で計時される時刻に補正する所定補正方式と、を含み、所定同期方式が、所定算出方式及び所定補正方式で構成される場合を例に取り説明するが、これに限定されるものではない。所定同期方式は、細分化しなくてもよいし、上記のように細分化してもよいし、上記とは異な形態に細分化してもよい。
【００１６】
従って、第１実施形態では、１つ以上の条件値は、所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式の少なくともいずれかを決定するための条件値であればよい。以下では、１つ以上の条件値が、所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式を決定するための条件値である場合を例に取り説明するが、これに限定されるものではない。また、以下では、所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式を各々区別する必要がない場合は、単に所定方式と称する場合がある。
【００１７】
第１実施形態では、１つ以上の条件は、時刻の同期精度、サーバ装置２０と同期可能な端末数（図１では図示を省略しているが、サーバ装置２０により計時された基準時刻を用いて、自身の時刻を同期する同期装置の総数）、サーバ装置２０との間の伝搬遅延時間、サーバ装置２０までの通信トラヒック量、自身（同期装置１０）の演算能力、自身（同期装置１０）のメモリ量、時刻同期処理開始から時刻同期処理終了までの制限時間、及び同期前の時刻と同期後の時刻との連続性の有無の少なくともいずれかが挙げられるが、これらに限定されるものではない。
【００１８】
図３は、第１実施形態の入力部１１により入力される１つ以上の条件値の一例を示す図である。図３に示すように、１つ以上の条件値は、実際には、条件値毎に当該条件値の条件に対応付けられて入力される。なお、図３に示す例では、１つ以上の条件値は、時刻の同期精度、サーバ装置２０と同期可能な端末数、サーバ装置２０との間の伝搬遅延時間、サーバ装置２０までの通信トラヒック量、自身の演算能力、自身のメモリ量、時刻同期処理開始から時刻同期処理終了までの制限時間、及び同期前の時刻と同期後の時刻との連続性の有無それぞれの条件値となっている。また、図３に示す例では、１つ以上の条件値の具体的な値については、図示を省略している。
【００１９】
取得部１２は、入力部１１により入力された１つ以上の条件値を取得する。
【００２０】
記憶部１３は、１つ以上の条件値それぞれが取り得る値と複数の通信方式及び複数の同期方式の少なくともいずれかの方式とに基づく決定テーブルとを記憶する。第１実施形態では、決定テーブルは、１つ以上の条件値それぞれが取り得る値と、複数の通信形式設定方式、複数の通信手順制御方式、複数の算出方式、及び複数の補正方式の少なくともいずれかの方式とに基づくテーブルである。
【００２１】
図４は、第１実施形態の決定テーブルの一例を示す図である。図４に示す例では、決定テーブルは、各条件値が取り得る値と各方式とのマトリクス図で表されている。また、方式は、当該方式を実行可能なモジュールに対応付けられている。
【００２２】
条件値は、時刻の同期精度、サーバ装置２０と同期可能な端末数、サーバ装置２０との間の伝搬遅延時間、サーバ装置２０までの通信トラヒック量、自身の演算能力、自身のメモリ量、時刻同期処理開始から時刻同期処理終了までの制限時間、及び同期前の時刻と同期後の時刻との連続性の有無それぞれの条件値である。
【００２３】
条件値が取り得る値は、同期前の時刻と同期後の時刻との連続性の有無を除き、条件値が取り得る最小値から最大値までの範囲を範囲Ａ〜範囲Ｃに３分割した範囲に区分けされている。例えば、時刻の同期精度であれば、Ｘマイクロ秒未満の条件値は範囲Ａ、Ｘマイクロ秒以上かつＹマイクロ秒未満の条件値は範囲Ｂ、Ｙマイクロ秒以上の条件値は範囲Ｃに区分けされる。但し区分け方法は、これに限定されるものではない。なお、同期前の時刻と同期後の時刻との連続性の有無の場合、条件値が取り得る値は、有か無である。
【００２４】
通信形式設定モジュールは、通信形式設定部１５Ａを実現するモジュールであり、通信形式設定方式である最小長方式と最大長方式とが対応付けられている。最小長方式は、時刻同期に要する最小限の情報を通信フレームに記載する方式であり、最大長方式は、通信フレームに空白の情報を挿入しフレームサイズを大きく設定する方式である。
【００２５】
通信手順制御モジュールは、通信手順制御部１５Ｂを実現するモジュールであり、通信手順制御方式であるマスタ督促型方式とスレーブ要求型方式とが対応付けられている。マスタ督促型方式は、マスタ（サーバ装置２０）からスレーブ（同期装置１０）にポーリングを行うことで、スレーブが１つ１つ順にマスタとの間で時刻同期プロセスを実施する方式であり、スレーブ要求型方式は、スレーブ（同期装置１０）が個々のタイミングでマスタ（サーバ装置２０）との間で時刻同期プロセスを実施する方式である。
【００２６】
時刻差算出モジュールは、時刻差算出部１５Ｃを実現するモジュールであり、算出方式である往復等分方式と片道最小遅延方式とが対応付けられている。往復等分方式は、複数回の往復遅延から時刻差（通信遅延）を算出する方法であり、片道最小遅延方式は、最も小さい往復遅延から、マスタ（サーバ装置２０）からスレーブ（同期装置１０）までの片道の時刻差（通信遅延）を算出する方法である。
【００２７】
時刻補正モジュールは、時刻補正部１５Ｄを実現するモジュールであり、補正方式である即補正方式と斜行補正方式とが対応付けられている。即補正方式は、一度の補正で時刻差を０にする方式であり、斜行補正方式は、時刻差を複数回にわたり少しずつ補正する方式である。
【００２８】
なお、図４に示す例では、マトリクスの各セルの値については、図示を省略しているが、実際には、条件値に対する方式の評価値（評価点）が記載されている。例えば、条件値が時刻の同期精度かつ範囲Ａ、方式がマスタ督促型方式で特定されるセルには、Ｚ点などと記載されている。条件値に対する方式の評価値は、ユーザが予め採点ルールに基づいて決めておけばよい。採点ルールは、ユーザ事前評価などに基づいて決定するものであり、どのようなルールであってもよい。
【００２９】
モジュールに対応付けられた複数の方式を比較すると、条件値に対し、それぞれ優劣がある。例えば、通信手順制御方式であるマスタ督促型方式とスレーブ要求型方式とを比較した場合、マスタ督促型方式の方が、スレーブ（同期装置）が複数存在する場合であっても時刻同期プロセスのタイミングが競合しにくいので、時刻差（通信遅延）の変動が発生しにくい。なお、時刻差（通信遅延）の変動が発生するほど、同期装置１０で正しい基準時刻（サーバ装置２０で計時された基準時刻にサーバ装置２０との通信時間を加味した基準時刻）を推測する際に誤差が生じ易くなる。従って、時刻の同期精度については、スレーブ要求型方式よりもマスタ督促型方式を優位に（評価値を高く）できる。
【００３０】
また例えば、通信形式設定方式である最小長方式と最大長方式を比較した場合、最小長方式の方が、フレームサイズを小さくできるので、通信トラヒック量については、最大長方式よりも最小長方式を優位に（評価値を高く）できる。同様に最小長方式と最大長方式を比較した場合、最大長方式の方が、フレームサイズが大きく通信遅延の変動が小さいので、時刻の同期精度については、最小長方式よりも最大長方式を優位に（評価値を高く）できる。
【００３１】
また例えば、算出方式である往復等分方式と片道最小遅延方式とを比較した場合、最も小さい往復遅延は往路も復路も他のフレームと競合が少なく、通信遅延変動が発生していない可能性が高いので、時刻の同期精度については、往復等分方式よりも片道最小遅延方式を優位に（評価値を高く）できる。但し、片道最小遅延方式は、複数回の時刻同期プロセスを試みる必要があり、往復等分方式よりも時間を要するため、時刻同期処理開始から時刻同期処理終了までの制限時間については、片道最小遅延方式よりも往復等分方式を優位に（評価値を高く）できる。
【００３２】
また例えば、補正方式である即補正方式と斜行補正方式とを比較した場合、斜行補正方式の方が時間を要するため、時刻同期処理開始から時刻同期処理終了までの制限時間については、斜行補正方式よりも即補正方式を優位に（評価値を高く）できる。但し、斜行補正方式は、同期前の時刻と同期後の時刻との連続性を保証できるため、同期前の時刻と同期後の時刻との連続性の有無については、即補正方式よりも斜行補正方式を優位に（評価値を高く）できる。
【００３３】
決定部１４は、取得部１２により取得された１つ以上の条件値を用いて、複数の通信方式の中からの所定通信方式の決定、及び複数の同期方式の中からの所定同期方式の決定の少なくともいずれかを行う。具体的には、決定部１４は、取得部１２により取得された１つ以上の条件値と、記憶部１３に記憶されている決定テーブルとを用いて、複数の通信方式の中からの所定通信方式の決定、及び複数の同期方式の中からの所定同期方式の決定の少なくともいずれかを行う。
【００３４】
第１実施形態では、決定部１４は、取得部１２により取得された１つ以上の条件値を用いて、複数の通信形式設定方式の中からの所定通信形式設定方式の決定、複数の通信手順制御方式の中からの所定通信手順制御方式の決定、複数の算出方式の中からの所定算出方式の決定、及び複数の補正方式の中からの所定補正方式の決定の少なくともいずれかを行う。具体的には、決定部１４は、取得部１２により取得された１つ以上の条件値と、記憶部１３に記憶されている決定テーブルとを用いて、複数の通信形式設定方式の中からの所定通信形式設定方式の決定、複数の通信手順制御方式の中からの所定通信手順制御方式の決定、複数の算出方式の中からの所定算出方式の決定、及び複数の補正方式の中からの所定補正方式の決定の少なくともいずれかを行う。
【００３５】
例えば、決定部１４は、取得部１２により取得された１つ以上の条件値を用いて、決定テーブルで定義されている方式毎に、条件値それぞれに対する評価値を特定し合算することで、評価値の合計を算出する。そして決定部１４は、決定テーブルで定義されているモジュール毎に、当該モジュールに対応付けられている複数の方式のうち評価値の合計が最も高い方式を所定方式に決定する。
【００３６】
図４に示す例の場合、通信形式設定モジュールであれば、通信形式設定方式である最小長方式及び最大長方式のうち評価値の合計が最も高い方式が所定通信形式設定方式に決定される。また、通信手順制御モジュールであれば、通信手順制御方式であるマスタ督促型方式及びスレーブ要求型方式のうち評価値の合計が最も高い方式が所定通信手順制御方式に決定される。また、時刻差算出モジュールであれば、算出方式である往復等分方式及び片道最小遅延方式うち評価値の合計が最も高い方式が所定算出方式に決定される。また、時刻補正モジュールであれば、補正方式である即補正方式及び斜行補正方式のうち評価値の合計が最も高い方式が所定補正方式に決定される。
【００３７】
同期部１５は、決定部１４により決定された所定通信方式及び所定同期方式を採用して、サーバ装置２０との時刻同期処理を行う。第１実施形態では、同期部１５は、決定部１４により決定された所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式を採用して、サーバ装置２０との時刻同期処理を行う。
【００３８】
なお、決定部１４が所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式の少なくともいずれかを決定する場合、決定部１４が決定しない所定方式はデフォルトの所定方式となるため、同期部１５は、決定部１４により決定された所定方式、及びデフォルトの所定方式を採用して、サーバ装置２０との時刻同期処理を行えばよい。
【００３９】
例えば、決定部１４が、所定通信形式設定方式及び所定補正方式を決定し、所定通信手順制御方式及び所定算出方式については決定しないとする。この場合、同期部１５は、決定部１４により決定された所定通信形式設定方式及び所定補正方式、並びにデフォルトの所定通信手順制御方式及びデフォルトの所定算出方式を採用して、サーバ装置２０との時刻同期処理を行えばよい。
【００４０】
サーバ装置２０との時刻同期処理は、具体的には、以下のように行われる。まず、通信形式設定部１５Ａが、決定部１４により決定された所定通信形式設定方式で、サーバ装置２０との通信形式を設定する。続いて、通信手順制御部１５Ｂが、決定部１４により決定された所定通信手順制御方式で、通信形式設定部１５Ａにより設定された設定された通信形式でのサーバ装置２０との通信手順を制御し、サーバ装置２０で計時された基準時刻を取得する。続いて、時刻差算出部１５Ｃが、決定部１４により決定された所定算出方式で、サーバ装置２０の基準時刻と計時部１６により計時される同期装置１０の時刻との時刻差を算出する。続いて、時刻補正部１５Ｄが、決定部１４により決定された所定補正方式で、時刻差算出部１５Ｃにより算出された時刻差を用いた計時部１６により計時される同期装置１０の時刻の補正を行う。
【００４１】
計時部１６は、同期装置１０の時刻を計時する。
【００４２】
図５は、第１実施形態のサーバ装置２０の一例を示す構成図である。図５に示すように、サーバ装置２０は、計時部２１と、通知部２３とを、含む。
【００４３】
計時部２１及び通知部２３は、例えば、ＣＰＵなどの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ＩＣなどのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。
【００４４】
計時部２１は、基準時刻を計時する。
【００４５】
通知部２３は、同期装置１０で採用される所定通信方式で、計時部２１により計時された基準時刻を同期装置１０に通知する。第１実施形態では、通知部２３は、同期装置１０で採用される所定通信形式設定方式及び所定補正方式で計時部２１により計時された基準時刻を同期装置１０に通知する。
【００４６】
なお、同期装置１０で採用される所定通信形式設定方式及び所定補正方式については、時刻同期処理の前処理として、同期装置１０から、採用された所定通信形式設定方式及び所定補正方式の情報を取得するようにしてもよいし、同期装置１０で説明した所定通信形式設定方式及び所定補正方式の決定手法を用いてサーバ装置２０で特定してもよい。後者の場合、サーバ装置２０は、１つ以上の条件値を同期装置１０から取得するとともに、同期装置１０（記憶部１３）に記憶されている決定テーブルと同一のテーブルを予め保持しておけばよい。
【００４７】
図６は、第１実施形態の同期装置１０で行われる処理の手順の流れの一例を示すフローチャートである。
【００４８】
まず、取得部１２は、入力部１１により入力された１つ以上の条件値を取得する（ステップＳ１０１）。
【００４９】
続いて、決定部１４は、取得部１２により取得された１つ以上の条件値と、記憶部１３に記憶されている決定テーブルとを用いて、各モジュールで採用する所定方式（通信形式設定部１５Ａで採用される所定通信形式設定方式、通信手順制御部１５Ｂで採用される所定通信手順制御方式、時刻差算出部１５Ｃで採用される所定算出方式、及び時刻補正部１５Ｄで採用される所定補正方式）を決定する（ステップＳ１０３）。
【００５０】
続いて、同期部１５（通信形式設定部１５Ａ、通信手順制御部１５Ｂ、時刻差算出部１５Ｃ、及び時刻補正部１５Ｄ）は、決定部１４により決定された所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式を採用して、サーバ装置２０との時刻同期処理を行う（ステップＳ１０５）。
【００５１】
図７は、図６のステップＳ１０３の処理の手順の流れの一例を示すフローチャートである。
【００５２】
まず、決定部１４は、取得部１２により取得された１つ以上の条件値から、次の（未処理の）条件ｉの条件値を取得する（ステップＳ１１１）。なお、ｉの初期値は、１である。また、条件値の取得順序は、どのような順序であってもよい。
【００５３】
続いて、決定部１４は、記憶部１３に記憶されている決定テーブルで定義された複数の方式から、次の（未処理の）方式ｊを取得する（ステップＳ１１３）。なお、ｊの初期値は、１である。また、方式の取得順序は、どのような順序であってもよい。
【００５４】
続いて、決定部１４は、記憶部１３に記憶されている決定テーブルで定義された評価値から、条件ｉの条件値に対する方式ｊの評価値を取得し、方式ｊの評価値の合計点に加算する（ステップＳ１１５）。なお、方式ｊの評価値の合計点の初期値は、０である。
【００５５】
続いて、決定部１４は、ｊの値が方式数であるか否か判定する（ステップＳ１１７）。ｊの値が方式数でなければ（ステップＳ１１７でＮｏ）、ステップＳ１１３へ戻る。なお、この際に、ｊの値がインクリメントされる。一方、ｊの値が方式数であれば（ステップＳ１１７でＹｅｓ）、ステップＳ１１９へ進む。
【００５６】
続いて、決定部１４は、ｉの値が条件数であるか否か判定する（ステップＳ１１９）。ｉの値が条件数でなければ（ステップＳ１１９でＮｏ）、ステップＳ１１１へ戻る。なお、この際に、ｉの値がインクリメントされる。一方、ｉの値が条件数であれば（ステップＳ１１９でＹｅｓ）、ステップＳ１２１へ進む。
【００５７】
続いて、決定部１４は、記憶部１３に記憶されている決定テーブルで定義された複数のモジュールから、次の（未処理の）モジュールｋを取得する（ステップＳ１２１）。なお、ｋの初期値は、１である。また、モジュールの取得順序は、どのような順序であってもよい。
【００５８】
続いて、決定部１４は、モジュールｋに属する（対応付けられた）方式のうち評価値の合計点が最も高い方式をモジュールｋで採用される所定方式に決定する（ステップＳ１２３）。
【００５９】
続いて、同期部１５（詳細には、通信形式設定部１５Ａ、通信手順制御部１５Ｂ、時刻差算出部１５Ｃ、及び時刻補正部１５Ｄのうちモジュールｋで実現される部）は、所定方式の変更が必要な場合（ステップＳ１２５でＹｅｓ）、現在の所定方式の方式をオフし（ステップＳ１２７）、モジュールｋで採用される方式をオンすることで（ステップＳ１２９）、所定方式をモジュールｋで採用される方式に変更する。
【００６０】
なお、ステップＳ１２５でＮｏの場合、ステップＳ１２５、Ｓ１２７の処理は行われない。
【００６１】
続いて、同期部１５は、ｋの値がモジュール数であるか否か判定する（ステップＳ１３１）。ｋの値がモジュール数でなければ（ステップＳ１３１でＮｏ）、ステップＳ１２１へ戻る。なお、この際に、ｋの値がインクリメントされる。一方、ｋの値がモジュール数であれば（ステップＳ１３１でＹｅｓ）、処理は終了となる。
【００６２】
図８は、第１実施形態のサーバ装置２０で行われる処理の手順の流れの一例を示すフローチャートである。
【００６３】
通知部２３は、同期装置１０から時刻同期処理要求（時刻同期処理の開始要求）があれば（ステップＳ１４１でＹｅｓ）、同期装置１０で採用される所定通信形式設定方式及び所定補正方式で計時部２１により計時された基準時刻を同期装置１０に通知する（ステップＳ１４３）。
【００６４】
なお、ステップＳ１４１でＮｏの場合、ステップＳ１４３の処理は行われない。
【００６５】
以上のように第１実施形態によれば、ユーザから入力される１つ以上の条件値に基づいて、時刻同期処理で採用される複数の所定方式を決定するため、同期後の時刻の用途を念頭に以上の条件値を入力することで、当該用途に適した方式で時刻同期処理が行われ、様々な用途に対応することができる。
【００６６】
（第２実施形態）
第２実施形態では、１つ以上の条件値を自動入力する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００６７】
図９は、第２実施形態の同期システム１０１の同期装置１１０の一例を示す構成図である。図９に示すように、第２実施形態の同期システム１０１の同期装置１１０では、入力部１１を備えず解析部１１７を備える点、及び取得部１１２が第１実施形態と相違する。
【００６８】
解析部１１７は、ネットワーク２を介した通信を解析して、１つ以上の条件それぞれの条件値を抽出する。
【００６９】
例えば、サーバ装置２０を用いて時刻同期を行う同期装置が複数存在する場合（同期装置１１０については、図示省略）、各同期装置は、サーバ装置２０だけでなく他の同期装置に対しても、サーバ装置２０を用いて時刻同期を行うことを示す同期参加通知を行う。
【００７０】
従って、解析部１１７は、サーバ装置２０と同期可能な端末数については、サーバ装置２０と同期可能な１つ以上の同期装置から通知される同期参加通知を解析し、同期参加通知の総数を、端末数の条件値として抽出すればよい。
【００７１】
また、解析部１１７は、サーバ装置２０との間の伝搬遅延時間については、サーバ装置２０と通信の往復時間を解析して、伝搬遅延時間の条件値を抽出すればよい。例えば、解析部１１７は、往復時間／２を伝搬遅延時間の条件値として抽出すればよい。
【００７２】
また、解析部１１７は、サーバ装置２０までの通信トラヒック量については、サーバ装置２０との通信を中継する中継装置（図示省略）との通信を解析して、通信トラヒック量の条件値を抽出すればよい。中継装置は、例えば、ルータやスイッチなどが挙げられる。例えば、解析部１１７は、中継装置から通知される通信トラヒック量をそのまま通信トラヒック量の条件値として抽出すればよい。
【００７３】
取得部１１２は、解析部１１７により抽出された１つ以上の条件値を取得する。
【００７４】
このように第２実施形態によれば、ネットワーク２を介した通信を解析して１つ以上の条件値を入力するので、１つ以上の条件値の入力を自動化できる。特に、定期的に、ネットワーク２を介した通信を解析して１つ以上の条件値を入力するようにすれば、環境（端末数、伝搬遅延時間、又は通信トラヒック量など）に変化が生じた場合であっても、用途に対して時刻同期処理をリアルタイムで最適化することができる。
【００７５】
なお、第２実施形態は、第１実施形態と組み合わせるようにしてもよい。例えば、同期システム１０１の運用開始時には、第１実施形態の手法を採用し、同期システム１０１の運用開始後には、第２実施形態の手法を採用するようにしてもよい。このようにすれば、用途に適した方式で時刻同期処理が行われ、様々な用途に対応することができつつ、環境（端末数、伝搬遅延時間、又は通信トラヒック量など）に変化が生じた場合であっても、用途に対して時刻同期処理をリアルタイムで最適化することができる。
【００７６】
また、第２実施形態は、第１実施形態で説明した条件を用いる必要はなく、通信を解析することで条件値が得られる条件を用いればよい。
【００７７】
（第３実施形態）
第３実施形態では、管理装置から１つ以上の条件値を入力する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００７８】
図１０は、第３実施形態の同期システム２０１の一例を示す構成図である。図１０に示すように、第３実施形態の同期システム２０１では、管理装置２３０（外部入力装置の一例）を備える点、及び同期装置２１０が第１実施形態と相違する。
【００７９】
管理装置２３０は、ユーザ操作に基づいて、１つ以上の条件値を入力し、当該１つ以上の条件値を、同期装置２１０、及び同期装置２１０以外にサーバ装置２０を用いて時刻同期を行う同期装置（図示省略）に通知する。
【００８０】
図１１は、第３実施形態の同期装置２１０の一例を示す構成図である。図１１に示すように、第３実施形態の同期装置２１０では、入力部１１を備えない点、及び取得部２１２が第１実施形態と相違する。
【００８１】
取得部２１２は、管理装置２３０から１つ以上の条件値を取得する。
【００８２】
第３実施形態によれば、各同期装置に同一の１つ以上の条件値を適用させることができる。
【００８３】
なお、記憶部１３及び決定部１４を管理装置２３０が備えるようにし、１つ以上の条件値ではなく、決定部１４により決定された所定通信形式設定方式、所定通信手順制御方式、所定算出方式、及び所定補正方式を各同期装置に通知するようにしてもよい。このようにすれば、各同期装置の時刻同期処理を同一方式に統一することができる。
【００８４】
（ハードウェア構成）
図１２は、各実施形態の同期装置のハードウェア構成の一例を示す図である。図１２に示すように、各実施形態の同期装置は、ＣＰＵなどの制御装置９０１と、ＲＯＭ（Read  Only  Memory）やＲＡＭ（Random  Access  Memory）などの主記憶装置９０２と、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）などの補助記憶装置９０３と、ディスプレイなどの表示装置９０４と、キーボードやマウスなどの入力装置９０５と、通信インタフェースなどの通信装置９０６と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００８５】
各実施形態の同期装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【００８６】
また、各実施形態の同期装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、各実施形態の同期装置で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、各実施形態の同期装置で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【００８７】
各実施形態の同期装置で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、ＣＰＵがＲＯＭやＨＤＤなどからプログラムをＲＡＭ上に読み出して実行することにより、上記各部がコンピュータ上で実現されるようになっている。
【００８８】
なお、上記各部の少なくとも一部をＩＣなどのハードウェアで実現する場合、各実施形態の同期装置は、当該ＩＣなどを更に備えればよい。
【００８９】
なお、本発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
【００９０】
例えば、上記第１実施形態のフローチャートにおける各ステップを、その性質に反しない限り、実行順序を変更し、複数同時に実施し、あるいは実施毎に異なった順序で実施してもよい。
【００９１】
以上のように、上記各実施形態によれば、様々な用途に対応することができる。
【符号の説明】
【００９２】
１、１０１、２０１  同期システム
２  ネットワーク
１０、１１０、２１０  同期装置
１１  入力部
１２、１１２、２１２  取得部
１３  記憶部
１４  決定部
１５  同期部
１５Ａ  通信形式設定部
１５Ｂ  通信手順制御部
１５Ｃ  時刻差算出部
１５Ｄ  時刻補正部
１６  計時部
２０  サーバ装置
２１  計時部
２３  通知部
１１７  解析部
２３０  管理装置
９０１  制御装置
９０２  主記憶装置
９０３  補助記憶装置
９０４  表示装置
９０５  入力装置
９０６  通信装置
【図１】
0006615470.tif 000002
【図２】
0006615470.tif 000003
【図３】
0006615470.tif 000004
【図４】
0006615470.tif 000005
【図５】
0006615470.tif 000006
【図６】
0006615470.tif 000007
【図７】
0006615470.tif 000008
【図８】
0006615470.tif 000009
【図９】
0006615470.tif 000010
【図１０】
0006615470.tif 000011
【図１１】
0006615470.tif 000012
【図１２】
0006615470.tif 000013