説明

通信端末、該通信端末の制御方法、及びプログラム

【課題】時刻情報の取得先として、時刻精度の高いタイムサーバを選択することができ、且つ、この選択のために、ユーザに手間を要しない通信端末を提供する。
【解決手段】通信端末100は、ネットワーク300を通じて、応答要求パケットを送信し、これに応じてタイムサーバ200〜206から返信される応答パケットを受信する。そして、通信端末100は、応答パケットから取得されるデータを用いて、タイムサーバ200〜206の中から、時刻情報の取得先となる候補を選択する。応答パケットから取得されるデータとして、サーバ200〜206の時刻合わせの参照元を示す参照元識別子があり、参照元識別子に基づき、時刻情報の取得先となる候補が選択される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク通信により時刻合わせを行う通信端末、該通信端末の制御方法、及びプログラムに関する。
【背景技術】
【0002】
近年、NTP(Network Time Protocol)を用いたネットワーク通信により、タイムサーバから通信端末に時刻情報を提供して、通信端末の時刻合わせを行うシステムがある。
【0003】
このようなシステムでは、通常、タイムサーバはネットワーク上で階層化されて、下層のタイムサーバは、上層のタイムサーバを参照することで、内部時計の時刻合わせを行う。例えば、第2層のタイムサーバは、第1層のタイムサーバを参照して時刻合わせを行う。第1層のタイムサーバは、全地球測位システム(以下、GPS)等を参照することで、内部時計の時刻合わせを行う。
【0004】
通信端末は、上記階層化されたタイムサーバのいずれかから、時刻情報を取得して、時刻合わせを行う。特許文献1,2には、時刻情報の取得先となるタイムサーバを選択する方法が開示される。
【0005】
特許文献1では、通信端末に、タイムサーバのIPアドレスや優先順位が登録される。
通信端末は、優先順位に従って、時刻情報の取得先となるタイムサーバを選択する。なお、特許文献1では、タイムサーバの優先順位を設定する具体的な方法については開示されていない。
【0006】
特許文献2では、通信端末は、ネットワークに対して、ブロードキャスト送信で応答要求を行い、応答が早いタイムサーバを、時刻情報の取得先として選択する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2000−50004号公報
【特許文献2】特開2008−79008号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
時間の経過とともに、タイムサーバの内部時計が計時する時刻には、遅れや進みが生じる。上記タイムサーバが階層化されたシステムでは、第1層のタイムサーバは、GPS等を参照することで正確な時刻に時刻合わせが行われ、時刻合わせの後に時間経過による時刻の狂いが生じる。第2層のタイムサーバは、第1層のタイムサーバを参照することで、時刻合わせを行った時刻に第1層のタイムサーバに生じた狂いがある。さらに第2層のタイムサーバでは、時刻合わせの後、時間経過による時刻の狂いが生じる。以上のように、各階層のタイムサーバでは時間経過による時刻の狂いが生じ、この狂いが下層のタイムサーバに引き継がれていくことで、下層のタイムサーバほど、時刻精度が低くなる虞れがある。
【0009】
しかしながら特許文献1,2では、上記時刻精度の差が考慮されることなく、時刻情報の取得先となるタイムサーバが選択される。このため、時刻精度の低いタイムサーバが参照されて、通信端末の時刻合わせが行われる虞れがある。
【0010】
また、特許文献1では、タイムサーバの優先順位やIPアドレスを、通信端末に予め登録する必要があるため、ユーザに手間を要する。
【0011】
本発明は、上記事情に鑑みなされたものであり、その目的は、時刻情報の取得先として、時刻精度の高いタイムサーバを選択することができ、且つ、この選択のために、ユーザに手間を要しない通信端末、該通信端末の制御方法、及びプログラムを提供することである。
【課題を解決するための手段】
【0012】
本発明の第1の観点に係る通信端末は、
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信部と、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信部と、
前記応答パケット受信部が前記応答パケットを受信するたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納部と、
前記応答パケットデータ格納部が格納したデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択部と、を有し、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択部は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とする。
【0013】
好ましくは、前記応答要求パケット送信部は、ブロードキャスト送信で、前記ネットワークに対して前記応答要求パケットを送信することを特徴とする。
【0014】
好ましくは、前記サーバ選択部は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする。
【0015】
好ましくは、前記応答パケットから取得されるデータとして、前記サーバが時刻同期を行っているか否かを示す同期識別子があり、
前記サーバ選択部は、前記参照元識別子に基づき、前記時刻合わせの参照元が異なるサーバの優先順位を設定し、前記同期識別子に基づき、前記時刻合わせの参照元が同一であるサーバの優先順位を設定することを特徴とする。
【0016】
好ましくは、前記複数のサーバは、下層のサーバが上層のサーバを参照して時刻合わせを行うように、前記ネットワーク上で階層化され、
前記応答パケットから取得されるデータとして、前記サーバが位置する階層を示す階層値があり、
前記サーバ選択部は、前記階層値に基づき、前記時刻情報の取得先として前記上層のサーバが前記下層のサーバよりも優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする。
【0017】
好ましくは、前記応答要求パケット送信部が前記応答要求パケットを送信してから、前記応答パケット受信部が前記応答パケットを受信するまでに要する時間と、前記サーバが前記応答要求パケットを受信してから前記応答パケットを送信するまでに要する時間との差分を示す遅延時間を算出する遅延時間算出部をさらに有し、
前記サーバ選択部は、前記時刻情報の取得先として前記遅延時間が短いサーバが優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする。
【0018】
好ましくは、前記サーバが、前記応答要求パケットを受信してから、前記応答パケットを送信するまでに要する内部処理時間を算出する内部処理時間算出部をさらに有し、
前記サーバ選択部は、前記時刻情報の取得先として前記内部処理時間が短いサーバが優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする。
【0019】
本発明の第2の観点に係る通信端末の制御方法は、
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信ステップと、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信ステップと、
前記応答パケット受信ステップで前記応答パケットが受信されるたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納ステップと、
前記応答パケットデータ格納ステップで格納されたデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択ステップと、を有し、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択ステップでは、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とする。
【0020】
本発明の第3の観点に係るプログラムは、
コンピュータを、
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信手段、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信手段、
前記応答パケット受信手段が前記応答パケットを受信するたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納手段、
前記応答パケットデータ格納手段が格納したデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択手段として機能させ、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択手段は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とする。
【発明の効果】
【0021】
本発明によれば、時刻情報の取得先となる候補が、サーバの時刻参照元を示す識別子等に基づき、複数のサーバの中から選択される。このため、時刻情報の取得先として、時刻精度の高いサーバを選択することが可能である。よって、サーバから取得される時刻情報に基づき通信端末の時刻合わせが行われることで、通信端末が計時する時刻は、正確になる。
【0022】
また、時刻情報の取得先となる候補は、サーバから返信される応答パケットのデータが用いられて選択される。よって、時刻情報の取得先を選択するため、通信端末に予めデータを入力する必要がない。このため、ユーザに手間を要しない。
【図面の簡単な説明】
【0023】
【図1】本発明の実施の形態に係る通信端末が適用された通信システムを示すブロック図である。
【図2】通信端末の物理的構成を示すブロック図である。
【図3】通信端末の機能構成例を示すブロック図である。
【図4】応答要求パケットの例を示す図である。
【図5】時刻情報の取得先を選択するために用いられるデータを示す図である。
【図6】応答パケットテーブルの例を示す図である。
【図7】サーバ選択部により、図6に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図8】サーバ選択部により、図7に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図9】サーバ選択部により、図8に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図10】サーバ選択テーブルの例を示す図である。
【図11】通信端末の動作の一例を示すフローチャートである。
【図12】応答パケットテーブル格納処理の一例を示すフローチャートである。
【図13】応答パケットテーブル並び替え処理の一例を示すフローチャートである。
【図14】サーバ選択テーブル格納処理の一例を示すフローチャートである。
【図15】応答パケットテーブルの他の例を示す図である。
【図16】サーバ選択部により、データが並び替えられた応答パケットテーブルを示す図である。
【図17】サーバ選択テーブルの他の例を示す図である。
【図18】サーバ選択テーブルの他の例を示す図である。
【図19】本発明の通信端末が適用される他の通信システムを示すブロック図である。
【図20】応答パケットテーブルの他の例を示す図である。
【図21】サーバ選択部により、図20に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図22】サーバ選択部により、図21に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図23】サーバ選択テーブルの他の例を示す図である。
【図24】応答パケットテーブルの他の例を示す図である。
【図25】サーバ選択部により、図24に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図26】サーバ選択部により、図25に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図27】サーバ選択部により、図26に示すデータが並び替えられた応答パケットテーブルを示す図である。
【図28】サーバ選択部により、図27に示すデータが並び替えられた応答パケットテーブルを示す図である。
【発明を実施するための形態】
【0024】
以下、本発明を実施するための形態について図面を参照して詳細に説明する。なお、図中同一または相当する部分には同じ符号を付す。
【0025】
図1は、本発明の実施の形態に係る通信端末が適用された通信システム1を示すブロック図である。通信システム1は、通信端末100と、複数のタイムサーバ200〜206と、ネットワーク300とを含む。
【0026】
ネットワーク300は、LAN(Local Area Network)であり、通信端末100やタイムサーバ200〜206は、ネットワーク300を通じて、情報の送受信を行うことができる。上記の情報として、ネットワークタイムプロトコル(以下、NTP)を用いた時刻情報がある。
【0027】
タイムサーバ200〜206は、他装置を定期的に参照して、内部時計が計時する現在時刻を補正する(以下、内部時計の時刻を補正することを、「時刻合わせ」と適宜記す)。タイムサーバ200〜206は、ネットワーク300上で階層化されており、下層のタイムサーバは、上層のタイムサーバを参照して時刻合わせを行う。
【0028】
タイムサーバ200〜202は、第1層のタイムサーバである。タイムサーバ200は、国家基準で校正された原子時計400を定期的に参照して時刻合わせを行う(原子時計は1秒ごとのパルス信号(Pulse-Per-Second(PPS))を発信する。図1では、原子時計を「PPS」で示す)。タイムサーバ201は、全地球測位システム(Global Positioning System、以下、GPS)401を定期的に参照して時刻合わせを行う。タイムサーバ202は、電話回線による標準時供給システム(以下、テレホンJJY)402を定期的に参照して時刻合わせを行う。
【0029】
タイムサーバ203〜205は、第2層のタイムサーバである。タイムサーバ203〜205は、第1層のタイムサーバ200〜202のいずれかに対して、ネットワーク300を通じて、定期的に時刻情報を要求し、この要求に応じて返信された時刻情報に基づき、時刻合わせを行う。例えば、タイムサーバ203は、タイムサーバ200に時刻情報を要求し、タイムサーバ200から返信された時刻情報に基づき時刻合わせを行う。
【0030】
タイムサーバ206は、第3層のタイムサーバである。タイムサーバ206は、ネットワーク300を通じて、第2層のタイムサーバ203に時刻情報を要求し、この要求に応じて返信された時刻情報に基づき時刻合わせを行う。
【0031】
タイムサーバ200〜206は、時間の経過とともに、内部時計が計時する時刻に遅れや進みが生じる。第2層のタイムサーバ203〜205は、第1層のタイムサーバ200〜202を参照した時刻合わせにより、第1層のタイムサーバ200〜202に生じた時刻の狂いが引き継がれ、さらに時刻合わせの後に、時間経過による時刻の狂いが生じる。また、第3層のタイムサーバ206は、第2層のタイムサーバ203を参照した時刻合わせにより、第2層のタイムサーバ203で生じた時刻の狂いが引き継がれ、さらに時刻合わせの後に、時間経過による時刻の狂いが生じる。以上のことから、タイムサーバ200〜206は、下層のタイムサーバほど時刻精度が低い。
【0032】
また、第1層のタイムサーバ200〜202の時刻精度は、時刻参照元の正確さから、テレホンJJY402を参照するタイムサーバ202→GPS401を参照するタイムサーバ201→原子時計400を参照するタイムサーバ200の順に高くなる。
【0033】
図2は、通信端末100の物理的構成例を示すブロック図である。通信端末100は、制御部110と、記憶部120と、入力部130と、出力部140と、通信制御部150と、計時部160とを備える。
【0034】
記憶部120は、例えば、ROM(Read Only Memory)やRAM(Random Access Memory)やハードディスク等から構成される。記憶部120には、時刻同期ソフトウェアであるNTPデーモンのプログラム等、制御部110の動作プログラムが記憶される。また、記憶部120は、制御部110のワークエリアとして機能する。
【0035】
入力部130は、例えば、キーボード、マウス等から構成される。入力部130は、ユーザによる操作を受け付け、操作情報を制御部110に供給する。
【0036】
出力部140は、例えば、表示装置等から構成される。出力部140は、制御部110の制御に従い、出力情報をユーザに提供する。
【0037】
通信制御部150は、LANポートや通信回路等から構成される。通信制御部150は、ネットワーク300に接続されて、他装置との間でデータの送受信を行う。
【0038】
計時部160は、水晶発振器を内蔵し、水晶発振器の発振周波数に同期したクロックパルスを生成し、クロックパルスに同期して、現在時刻を計時して出力する。
【0039】
制御部110は、CPU(Central Processing Unit)等から構成され、記憶部120に格納されたプログラムに従って、通信端末100全体の動作を制御する。例えば、制御部110は、記憶部120に格納されたプログラムに従って、ソフトウェア的に動作する時計であるシステムクロックとして機能し、現在時刻を計時して出力する。また、制御部110は、NTPデーモンのプログラムに従って、タイムサーバ200〜206のいずれかから時刻情報を取得して、計時部160やシステムクロックが計時する現在時刻を補正する。
【0040】
図3は、通信端末100の機能構成例を示すブロック図である。通信端末100では、制御部110がプログラムに従って処理を実行し、応答要求パケット送信部500と、応答パケット受信部510と、遅延時間計算部520と、内部処理時間計算部530と、応答パケットデータ格納部540と、サーバ選択部550とが構成される。
【0041】
応答要求パケット送信部500は、初期設定時に、ネットワーク300に対してブロードキャスト送信で応答要求パケットを送信する。
【0042】
図4は、応答要求パケットの例を示す図である。応答要求パケットは、NTP及びSNTPのメッセージフォーマットで表現される。このメッセージフォーマットは、RFC1305で記述されるNTPメッセージフォーマットと、ほぼ同一である。図4において、()内の数字は、応答要求パケットに含まれる各コードのビット数を示す。例えば、LI(2)の数字「2」は、同期識別子「LI(Leap Indicator)」のビット数を示す。LI(2)〜精度(8)のコードは、直下の欄に示す値である。ルート遅延(32)以下のコードは、特に後述しない場合、各ビットの値が「0」である。
【0043】
応答要求パケットは、ブロードキャスト送信のため、宛先がブロードキャストアドレスに設定される。ブロードキャストアドレスは、ネットワーク300に接続した全ての機器にデータを送信するために使われるアドレスである。例えば、クラスBでは、ネットワーク300のプライベートIPアドレスとして、172.16.XXX.XXXを設定でき、172.31.255.255がブロードキャストアドレスとなる。また、クラスCでは、ネットワーク300のプライベートIPアドレスとして、192.168.48.XXXを設定でき、192.168.48.255がブロードキャストアドレスとなる。本実施の形態では、クラスCのブロードキャストアドレスを用いる。また、応答要求パケットでは、UDP(User Datagram Protocol)のポート番号が、123番に設定される。
【0044】
タイムサーバ200〜206は、応答要求パケットを受信することに応じて、ネットワーク300を通じて、応答パケットを通信端末100に返信する。応答要求パケットがブロードキャスト送信されることで、タイムサーバ200〜206は、応答パケットを一斉に返信する。応答パケット受信部510(図3)は、応答要求パケット送信部500が応答要求パケットを送信してから所定時間が経過するまでの間に、ネットワーク300を通じて返信された応答パケットを受信する。応答パケットは、応答要求パケットと同様、図4に示すメッセージフォーマットで表現される。
【0045】
図4に示すフォーマットにおいて、同期識別子「LI(Leap Indicator)」は、当日の最終分に、閏秒の挿入や削除があるか否かを示すために用いられる領域である。閏秒の挿入や削除がある場合、「LI」には、それぞれ、2ビット整数「01」、「10」が記される。閏秒の挿入や削除が無い通常の場合、「LI」には、2ビット整数「00」が記される。また、「LI」は、時刻の同期が行われていないことを警告するために使用される領域でもある。時刻の同期が行われていない場合、「LI」には、時刻の同期が行われていないことを示す2ビット整数「11」が記される。
【0046】
通信端末100から送信される応答要求パケットでは、図4に示すように、「LI」は、「00」の値に設定されている。タイムサーバ200〜206のうち、時刻の同期を行っているタイムサーバからは、「LI」の値が「00」のままである応答パケットが返信される。
【0047】
一方、時刻の同期を行っていないタイムサーバからは、「LI」の値が、「11」に変更された応答パケットが返信される。この「LI」値の変更により、タイムサーバで時刻の同期が行われていないことが通信端末100に通知される。
【0048】
「モード」は、パケットの送信元を示す領域である。応答要求パケットでは、図4に示すように、「モード」は、クライアントを示す3ビット整数「011」の値に設定される。応答パケットでは、「モード」は、サーバを示す3ビット整数「100」の値に変更される。
【0049】
「階層」は、ローカル時計の階級レベルを示す領域である。タイムサーバ200〜206から返信される応答パケットでは、タイムサーバ200〜206が位置するネットワーク300上の階層に対応する8ビット整数が「階層」に示される。例えば、タイムサーバ200〜202から返信される応答パケットでは、第1階層に対応する8ビット整数が示される。
【0050】
「参照元識別子(Reference Identifier)」は、タイムサーバ200〜206の時刻参照元に対応する32ビット整数が示される領域である。例えば、タイムサーバ201から返信される応答パケットでは、GPS401に対応する32ビット整数が示される。
【0051】
「開始タイムスタンプ」は、通信端末100が応答要求パケットを送信した時刻T1が示される領域である。
【0052】
「受信タイムスタンプ」は、タイムサーバ200〜206が応答要求パケットを受信した時刻T2が示される領域である。
【0053】
「送信タイムスタンプ」は、タイムサーバ200〜206が応答パケットを送信した時刻T3が示される領域である。
【0054】
なお、「開始タイムスタンプ」、「受信タイムスタンプ」、及び「送信タイムスタンプ」では、時刻T1,T2,T3は、64ビットタイムスタンプ形式で表現される。時刻T1は、例えば通信端末100の計時部160が計時した時刻である。時刻T2,T3は、タイムサーバ200〜206の内部時計が計時した時刻である。
【0055】
図5は、時刻情報の取得先を選択するために用いられるデータを示す図である。(A)は、タイムサーバ203の応答パケットから取得されるデータを示す。(B)は、タイムサーバ201の応答パケットから取得されるデータを示す。(C)は、タイムサーバ202の応答パケットから取得されるデータを示す。(D)は、タイムサーバ200の応答パケットから取得されるデータを示す。
【0056】
本実施の形態では、タイムサーバ200〜206の中から時刻情報の取得先を選択するために、応答パケットからデータが取得される。このデータとして、タイムサーバ200〜206のIPアドレスや、タイムサーバ200〜206が位置する階層の値(以下、階層値)がある。
【0057】
(A)のデータには、階層値「2」が含まれる。階層値「2」は、タイムサーバ203が位置する第2層を示す。(B),(C),(D)のデータには、階層値「1」が含まれる。階層値「1」は、タイムサーバ201,202,200が位置する第1層を示す。階層値は、応答パケットの「階層」に示される8ビット整数から得られる。
【0058】
また、応答パケットから取得されるデータには、タイムサーバ200〜206の時刻参照元を示す参照元識別子も含まれる。(A)のデータには、タイムサーバ203の時刻参照元(タイムサーバ200)を示す参照元識別子として、タイムサーバ200のIPアドレス「192.168.48.110」が含まれる。(B)のデータには、タイムサーバ201の時刻参照元(GPS401)を示す参照元識別子「GPS」が含まれる。(C)のデータには、タイムサーバ202の時刻参照元(テレホンJJY402)を示す参照元識別子「TJJY」が含まれる。(D)のデータには、タイムサーバ200の時刻参照元(原子時計400)を示す参照元識別子「PPS」が含まれる。これら参照元識別子は、応答パケットの「参照元識別子」に示される32ビット整数から得られる。
【0059】
また、応答パケットから取得されるデータには、通信端末100が応答要求パケットを送信した時刻T1や、タイムサーバ200〜206が応答要求パケットを受信した時刻T2や、タイムサーバ200〜206が応答パケットを送信した時刻T3も含まれる。時刻T1,T2,T3は、開始タイムスタンプ・受信タイムスタンプ・送信タイムスタンプに示される64ビット整数から得られる。
【0060】
遅延時間計算部520(図3)は、応答パケット受信部510が応答パケットを受信するたびに、遅延時間Pを算出する。遅延時間Pは、応答パケットから取得される時刻T1,T2,T3と、通信端末100に応答パケットが受信された時刻T4とを用いて、式1により算出される。なお、時刻T4は、応答パケット受信の際に、通信端末100の計時部160から取得される。
【0061】
遅延時間Pは、応答要求パケット送信部500が応答要求パケットを送信してから、応答パケット受信部510が応答パケットを受信するまでに要する時間(T4−T1)と、タイムサーバ200〜206が、応答要求パケットを受信してから、応答パケットを送信するまでに要する時間(T2−T3)との差分を示す時間である。
【0062】
【数1】

【0063】
内部処理時間計算部530は、応答パケット受信部510が応答パケットを受信するたびに、内部処理時間Pを算出する。内部処理時間Pは、応答パケットから取得される時刻T2,T3を用いて、式2により算出される。内部処理時間Pは、タイムサーバ200〜206が、応答要求パケットを受信してから、応答パケットを送信するまでに要する時間(T3−T2)である。
【0064】
【数2】

【0065】
応答パケットデータ格納部540は、応答パケット受信部510が応答パケットを受信するたびに、応答パケットからIPアドレス・階層値・参照元識別子(図5)を取得し、これらのデータに遅延時間dや内部処理時間Pを対応付けて、記憶部120に格納する。
【0066】
図6は、応答パケットテーブルの例を示す図である。応答パケットテーブルは、応答パケットデータ格納部540が、応答パケットを受信するたびに、データを格納することで作成される。応答パケットテーブルでは、各応答パケットに含まれるデータ(IPアドレス・階層値・参照元識別子)が受信順に並べられて、これらデータの各々に、遅延時間dや内部処理時間Pが対応付けられている。
【0067】
サーバ選択部550は、応答パケットテーブルを用いて、タイムサーバ200〜206の中から、時刻情報の取得先となる候補を選択して、これら候補の優先順位を設定する。この処理は、後述の第1〜4の手順により行われる。以下、図6の応答パケットテーブルが作成された場合を例に説明する。
【0068】
第1〜3の手順では、応答パケットテーブルのデータが並び替えられる。第1の手順では、階層値の小さいデータが上位となるように、データが並べ替えられる。
【0069】
図7は、サーバ選択部550の第1の手順により、図6に示すデータが並び替えられた応答パケットテーブルを示す。図7のテーブルでは、階層値が「1」であるタイムサーバ201,202,200のデータ(B,C,D)が上位に並び、その下位に階層値が「2」であるタイムサーバ203,205,204のデータ(A,E,G)が並んでいる。また、その下位に階層値が「3」であるタイムサーバ206のデータ(F)が並んでいる。
【0070】
ついで、第2の手順では、参照元識別子に基づき、階層値が「1」であるデータ(B,C,D)が並び替えられる。
【0071】
図8は、サーバ選択部550の第2の手順により、図7に示すデータが並び替えられた応答パケットテーブルを示す。第2の手順では、参照元識別子が「PPS」であるデータ(D)を最も上位にして、その下に参照元識別子が「GPS」であるデータ(B)が位置し、その下に参照元識別子が「TJJY」であるデータ(C)が位置するように、データが並び替えられる。
【0072】
ついで、第3の手順では、遅延時間dや内部処理時間Pに基づき、応答パケットテーブルのデータが並び替えられる。
【0073】
図9は、サーバ選択部550の第3の手順により、図8に示すデータが並び替えられた応答パケットテーブルを示す。第3の手順は、階層値及び参照元識別子が同一であるデータを並び替えるものであり、遅延時間dが小さいデータが上位になるように、データが並び替えられる。図9のテーブルを、図8のテーブルと比較すると、データE,Gの順位が逆転している。これは、データE,Gは、いずれも階層値が「2」であり、且つ参照元識別子が「192.168.48.5」であるため並び替えの対象とされ、また、データEが、データGに比して、遅延時間dが長いことで、順位が逆転されたものである。また、遅延時間dによるデータの並び替えが行われた後、必要に応じて、内部処理時間Pが小さいデータが上位になるように、データの並べ替えが行われる。この並べ替えを要する場合は、データの順位を定めるために、内部処理時間Pを遅延時間dよりも重視する必要が生じた場合である。具体的には、応答要求パケットを受信したタイムサーバの処理能力に関連して、応答パケットテーブルの中に、内部処理時間Pが極端に長いデータが存在する場合や、階層値及び参照元識別子が同一である他のデータに比べて、内部処理時間Pが、μ秒単位で一桁以上異なるデータが存在する場合が該当する。このような場合、上記の内部処理時間Pによるデータの並べ替えを行うことで、内部処理時間Pが極端に長いデータの優先順位を下げること等が可能になる。例えば、応答パケットテーブルが図9の状態のときに、内部処理時間Pが小さいデータが上位となるよう、データを並べ替えると、応答パケットテーブルは、図8の状態に戻る。
【0074】
また、図8のテーブルでは、遅延時間dが1900μ秒であるデータCが、遅延時間dが1800μ秒であるデータAよりも上に位置している。そして、図9のテーブルでは、図8のテーブルから順序が変更されることなく、データC,Aが並んでいる。これは、データCのように、階層値が「1」であり、且つ参照元識別子が「TJJY」である他のデータが存在しなかったため、データCは、第3の手順で並び替えの対象から除外されたことによる。
【0075】
ついで、第4の手順では、第1〜3の手順により並び替えが行われた応答パケットテーブルを用いて、サーバ選択テーブルが作成されて、記憶部120に記憶される。
【0076】
図10は、サーバ選択テーブルの例を示す図である。サーバ選択テーブルには、応答パケットテーブルの上位n件のデータに含まれるIPアドレスが記される。図10の例では、図9の応答パケットテーブルで上位6件のデータに含まれるIPアドレスが記される。また、これらIPアドレスは、図9の応答パケットテーブルの順序に従って並んでいる。図10のサーバ選択テーブルは、時刻情報の取得先として、タイムサーバ200〜205が選択可能であることを示す。また、サーバ選択テーブルは、タイムサーバを選択する優先順位を、IPアドレスの並び順により示す。図10のテーブルでは、タイムサーバ205→タイムサーバ204→タイムサーバ203→タイムサーバ202→タイムサーバ201→タイムサーバ200の順に、優先順位が高くなることを示す。この優先順位は、第1〜3の手順によるデータの並び替えが行われた結果、設定されたものである。
【0077】
つまり、サーバ選択テーブルでは、第2の手順が実行されたことで、タイムサーバの優先順位が、参照元識別子に基づき設定されている。図10の例は、第2の手順により、参照元識別子が「IPアドレス」である第2層のタイムサーバ203〜205→参照元識別子が「TJJY」であるタイムサーバ202→参照元識別子が「GPS」であるタイムサーバ201→参照元識別子が「PPS」であるタイムサーバ200の順に、優先順位が高くなるよう設定されている。
【0078】
また、サーバ選択テーブルでは、第1の手順が実行されたことで、上層のタイムサーバが下層のタイムサーバよりも優先して選択されるように、階層値に基づき優先順位が設定されている。図10の例は、第1の手順により、第2層のタイムサーバ203〜205、→第1層のタイムサーバ200〜202の順に、優先順位が高くなるよう設定されている。
【0079】
また、サーバ選択テーブルでは、第3の手順が実行されたことで、遅延時間dや内部処理時間Pが短いタイムサーバが優先して選択されるように、優先順位が設定されている。図10の例は、第3の手順により、遅延時間dが4900μ秒(図9のG)であるタイムサーバ204が、遅延時間dが5000μ秒(図9のE)であるタイムサーバ205よりも、優先順位が高くなるよう設定されている。
【0080】
サーバ選択部550による処理の後では、NTPデーモンが起動して、計時部160やシステムクロックの時刻合わせが行われる。具体的には、図10のサーバ選択テーブルに示されるアドレス宛に、時刻要求パケットが送信される。この送信により、タイムサーバ200〜206から内部時計の時刻を示す時刻情報が返信されて、該時刻情報が示す時刻に、通信端末100の計時部160等の時刻が修正される。
【0081】
なお図10のように、サーバ選択テーブルに複数のIPアドレスが含まれる場合には、例えば、サーバ選択テーブルで最も上位に記されるIPアドレス宛に、時刻要求パケットが送信され、これに応じて返信される時刻情報に基づき、計時部160等の時刻が修正される。図10の例では、「192.168.48.110」宛に時刻要求パケットが送信されることで、タイムサーバ200から時刻情報が返信され、この時刻情報に基づき時刻が修正される。このようにすることで、最も時刻精度の高いタイムサーバ200から送信される時刻情報に基づき、通信端末100の時刻合わせが行われる。
【0082】
あるいは、サーバ選択テーブルの全てのIPアドレス宛、又は上位n件のIPアドレス宛に、時刻要求パケットが送信されてもよい。この場合、複数のタイムサーバから時刻情報が返信されることになり、これら時刻情報の示す時刻の平均値が、RFC1305に詳述されるNTPに則った手順で算出されて、該平均値に計時部160等の時刻が修正される。図10の例で、全てのIPアドレス宛に時刻要求パケットが送信された場合、タイムサーバ200〜205から時刻情報が返信され、これら時刻情報から得られる平均値に、時刻が修正される。
【0083】
図11は、通信端末100の動作の一例を示すフローチャートである。図11に示す処理は、例えば、ユーザが入力部130(図2)を操作することで開始される。なお、NTPデーモンが起動中である際には、上記ユーザの操作により、NTPデーモンは一旦停止される。
【0084】
まず、応答要求パケット送信部500は、ネットワーク300に対して、ブロードキャスト送信で、応答要求パケットを送信する(ステップS101)。
【0085】
ついで、応答パケット受信部510は、タイムサーバ200〜206から応答パケットを受信したか否かを判断する(ステップS102)。
【0086】
応答パケットを受信したと判断された場合には(ステップS102でYES)、応答パケットテーブル格納処理が実行される(ステップS103)。
【0087】
図12は、応答パケットテーブル格納処理の一例を示すフローチャートである。
【0088】
この処理では、まず、遅延時間計算部520が、上記式1により、時刻T1〜4を用いて遅延時間dを算出する(ステップS201)。
【0089】
ついで、内部処理時間計算部530が、上記式2により、時刻T2,T3を用いて内部処理時間Pを算出する(ステップS202)。
【0090】
ついで、応答パケットデータ格納部540は、応答パケットのデータ(IPアドレス・階層値・参照元識別子)に、遅延時間dや内部処理時間Pを対応付けて(ステップS203)、記憶部120に記憶する(ステップS204)。
【0091】
図11に戻り、ステップS103が実行された後、或いは、ステップS102で応答パケットが受信されていないと判定された場合には(ステップS102でNO)、応答パケット受信部510は、ステップS101で応答要求パケットが送信されてから、所定の時間が経過したか否かを判断する(ステップS104)。
【0092】
所定の時間が経過してないと判断された場合(ステップS104でNO)、応答パケット受信部510は、処理をステップS102に戻す。
【0093】
この復帰により、タイムサーバ200〜206から応答パケットが受信されるたび、ステップS103が実行される。この結果、応答パケットのデータが受信順に記憶部120に記憶されることで、図6に示す応答パケットテーブルが作成される。
【0094】
ステップS104で、所定の時間が経過したと判断された場合には(ステップS104でYES)、応答パケットテーブルの並び替え処理が実行される(ステップS105)。
【0095】
図13は、応答パケットテーブルの並び替え処理の一例を示すフローチャートである。このテーブル並び替え処理では、上述したサーバ選択部550による第1〜3の手順が実行される(ステップS301〜S305)。ステップS301〜S305により、応答パケットテーブルのデータが、階層値、参照元識別子、遅延時間d、及び内部処理時間Pに基づき並べ替えられる。
【0096】
図11に戻り、ステップS105の実行後では、サーバ選択テーブル格納処理が実行される(ステップS106)。
【0097】
図14は、サーバ選択テーブル格納処理の一例を示すフローチャートである。サーバ選択テーブル格納処理では、上述したサーバ選択部550による第4〜5の手順が実行される。まず、第1〜3の手順でデータの並び替えが行われた応答パケットテーブルにおいて、上位n件のデータに含まれるIPアドレスが取得される(ステップS401)。ついで、ステップS401で取得されたIPアドレスが記憶部120に記憶されることで(ステップS402)、図10に示すサーバ選択テーブルが作成・記憶される。
【0098】
図11に戻り、ステップS106の後では、NTPデーモンが再起動される(ステップS107)。このNTPデーモンの起動により、サーバ選択テーブル(図10)に示されるアドレス宛に、時刻要求パケットが送信される。ついで、これに応じて返信された時刻情報に基づき、計時部160の時刻が修正される。
【0099】
本実施の形態によれば、タイムサーバ200〜206の中から、時刻情報の取得先となる候補が、タイムサーバ200〜206の時刻参照元を示す識別子等に基づき選択される。このため、時刻情報の取得先として、原子時計400、GPS401、及びテレホンJJY402等を参照元とする時刻精度の高いタイムサーバを選択することが可能であり、これらタイムサーバが送信する時刻情報に基づき通信端末100の時刻合わせが行われることで、通信端末100が計時する時刻は、正確になる。
【0100】
また、時刻情報の取得先となる候補は、タイムサーバ200〜206から返信される応答パケットのデータが用いられて選択される。よって、時刻情報の取得先を選択する処理を行うために、通信端末100に予めデータを入力しておく必要がない。このため、ユーザに手間を要しない。
【0101】
応答要求パケットがブロードキャスト送信でネットワーク300に対して送信されることで、ネットワーク300に接続されたタイムサーバ200〜206の全てが、応答パケットを通信端末100に送信する。よって、時刻精度の高いタイムサーバが、応答パケットの未送信(応答要求パケットの未受信)により、時刻情報の取得先の候補から除外されることを防止できる。
【0102】
また、時刻情報の取得先を選択するための優先順位が、参照元識別子等に基づき設定される。よって、この優先順位に従い時刻情報の取得先が選択されることで、確実に時刻精度の高いタイムサーバ200が参照されて、通信端末100の時刻合わせが行われる。このため、通信端末100が計時する時刻は、より一層正確になる。
【0103】
また、上層のタイムサーバが下層のタイムサーバよりも優先して選択されるように、階層値に基づき優先順位が設定される。よって、時刻精度の高い上層のタイムサーバが参照されて、通信端末100の時刻合わせが行われる。
【0104】
また、内部処理時間Pや遅延時間dが短いタイムサーバが優先して選択されるように、優先順位が設定される。これにより、時刻情報の取得先として応答の早いタイムサーバが選択されるため、通信端末100がタイムサーバを参照して時刻合わせを行う時間間隔は短くなる。よって、通信端末100の計時部160が計時する時刻は、時間経過による狂いが小さく抑えられたものになり、計時部160の時刻を、常時、正確にする上で有利になる。
【0105】
本発明は、上述の実施の形態に限定されず、特許請求の範囲において種々改変することができる。
【0106】
例えば、通信端末100は、他の装置に時刻情報を提供するタイムサーバとして機能するように構成されてもよい。
【0107】
また、応答要求パケットは、初期設定時以外にも適当な時間間隔で定期的に、ネットワーク300に対してブロードキャスト送信で送信されるようにしてもよい。この場合、新たな応答パケットが受信されるたびに、サーバ選択テーブルのデータが更新される。
【0108】
また、時刻情報の取得先となる候補や、時刻情報の取得先を選択するための優先順位は、参照元識別子のみに基づき設定されてもよい。この場合、遅延時間d及び内部処理時間Pは算出されず、応答パケットデータ格納部540により作成される応答パケットテーブルは、例えば図15に示すようになる。
【0109】
そして、サーバ選択部550により、応答パケットテーブルのデータが、参照元識別子に基づき並べ替えられる。この結果、応答パケットテーブルのデータは、例えば図16に示すようになる。図16では、データの順位が、参照元識別子が「IPアドレス」であるデータA,E,F,G→参照元識別子が「TJJY」であるデータC→参照元識別子が「GPS」であるデータB→参照元識別子が「PPS」であるデータDの順に高くなるよう、データが並べ替えられている。
【0110】
そして、サーバ選択部550により、応答パケットテーブルの上位n件のIPアドレスが取得される。この結果、例えば図17に示すサーバ選択テーブルが作成される。図17のテーブルは、応答パケットテーブルの上位3件のIPアドレスが取得されたものである。図17のテーブルによれば、原子時計400・GPS401・テレホンJJY402を参照元とするタイムサーバ200〜202が、時刻情報の取得先として選択可能とされる。また、タイムサーバ200〜202の優先順位が、タイムサーバ202→タイムサーバ201→タイムサーバ200の順に高くなるように設定される。
【0111】
また、サーバ選択テーブルのデータは、図18に示す形式に変形され得る。図18の例では、データがntp.confファイル形式で記されている。ntp.confファイルは、NTPデーモンの設定ファイルであり、参照するタイムサーバの指定やポーリング間隔、アクセス制御の設定などが記述され、minpoll,maxpoll,preferなどのオプションパラメータが付加される。
【0112】
また、図19は、本発明の通信端末が適用される他の通信システム2を示すブロック図である。通信システム2は、図1の通信システム1とは、タイムサーバ200の時刻参照元が異なり、タイムサーバ200は、タイムサーバ201と同様に、GPS401を参照して定期的に時刻合わせを行う。
【0113】
図19の通信システム2のように、時刻参照元が共通する複数のタイムサーバ200,201が存在する場合には、応答パケットデータ格納部540により作成される応答パケットテーブルは、例えば図20に示すようになる。
【0114】
図20のテーブルでは、タイムサーバ200,201のデータD,Bに、参照元識別子「GPS」が示される。
【0115】
また、IPアドレス・参照元識別子には、同期識別子が対応付けられている。同期識別子は、応答パケットの「LI」(図4)の2ビット整数が取得されたものであり、タイムサーバ200〜206で、時刻の同期が行われているか否かを示す。
【0116】
タイムサーバ201のデータBでは、同期識別子「11」が示される。これは、タイムサーバ201が、応答パケットを送信する際に、一時的に時刻の同期を行っていなかったことを意味する。
【0117】
一方、他のタイムサーバのデータ(B以外のデータ)では、同期識別子「00」が示される。これは、他のタイムサーバが、応答パケットを送信する際に、時刻の同期を行っていたことを意味する。
【0118】
応答パケットテーブルが作成された後では、サーバ選択部550により、以下の第1,2の手順により、応答パケットテーブルのデータが並べ替えられる。
【0119】
まず、第1の手順では、応答パケットテーブルのデータが、参照元識別子に基づき並べ替えられる。この結果、応答パケットテーブルは、例えば、図21に示すようになる。図21では、データの順位が、参照元識別子が「IPアドレス」であるデータA,E,F,G→参照元識別子が「TJJY」であるデータC→参照元識別子が「GPS」であるデータD→参照元識別子が「GPS」であるデータBの順に高くなっている。
【0120】
図21のテーブルは、上記データの並びにより、時刻合わせの参照元が異なるタイムサーバの優先順位が、設定されたものとなっている。つまり、タイムサーバ203〜205は、他のタイムサーバを時刻の参照元とし、タイムサーバ202、タイムサーバ201,200は、テレホンJJY402、GPS401,400を時刻の参照元にすることで、それぞれ時刻の参照元が異なるが、図21のテーブルでは、タイムサーバ203〜206→タイムサーバ202→タイムサーバ200,201の順に、優先順位が高くなるよう設定されている。
【0121】
なお、参照元識別子が「GPS」であるデータB,Dでは、図20の上下の位置関係が継承されて、図20と同様、データBが、データDよりも上位に並んでいる。
【0122】
ついで、第2の手順では、サーバ選択部550は、同期識別子に基づきデータを並べ替える。この並べ替えは、参照元識別子が同一であるデータB,Dを対象とするものであり、同期識別子が「00」であるデータDが、同期識別子が「11」であるデータBよりも上位とされる。この結果、応答パケットテーブルのデータは、図22に示すようになる。
【0123】
図22のテーブルは、データの並びにより、時刻合わせの参照元が同一であるタイムサーバの優先順位が設定されたものである。すなわち、時刻合わせの参照元がGPS401であるタイムサーバ200,201の優先順位が、タイムサーバ201→タイムサーバ200の順に高くなるよう設定されている。
【0124】
ついで、サーバ選択部550は、応答パケットテーブルの上位n件のIPアドレスを取得する。この結果、例えば図23に示すサーバ選択テーブルが作成される。図23のテーブルは、応答パケットテーブルの上位3件のIPアドレスが取得されたものである。図23のテーブルによれば、GPS401やテレホンJJY402を参照元とするタイムサーバ200〜202が、時刻情報の取得先として選択可能とされる。また、タイムサーバ200〜202を選択する優先順位が、タイムサーバ202→タイムサーバ201→タイムサーバ200の順に、高くなるように設定される。
【0125】
以上の処理によれば、時刻合わせの参照元が同一であるタイムサーバの優先順位が、同期識別子に基づき設定される。このため、時刻同期を行っているタイムサーバが、時刻同期を行っていないタイムサーバよりも、優先して選択される。
【0126】
また、時刻合わせの参照元が同一であるタイムサーバの優先順位と、時刻合わせの参照元が異なるタイムサーバの優先順位とが合わせて設定されることで、時刻精度の高いタイムサーバの優先順位が、低く設定されることを回避できる。つまり図20〜図22の例では、第1の手順の並べ替えにより、図21に示すように、データA,E,F,G→データC→データB→データB,Dの順に、優先順位が高くなるよう設定される。そして、第2の手順では、参照元識別子が同一であるデータB,Dのみが並べ替えの対象とされて、同期識別子に基づき並べ替えられる。よって図22に示すように、参照元識別子が「GPS」であるデータB,Dは、参照元識別子が「TJJY」や「IPアドレス」であるデータC,A,E,F,Gよりも、下位にならない。以上により、時刻精度の高いタイムサーバが、時刻の同期を行っていないことで、時刻情報の取得先の候補から除外されることを防止できる。
【0127】
また、同期識別子によるデータの並び替え(図15〜図16に示すデータの並び替え)と、階層値、参照元識別子、及び遅延時間によるデータの並び替え(図6〜図9に示すデータの並び替え)とを組み合わせて実行することも可能である。この場合、応答パケットデータ格納部540により作成される応答パケットテーブルは、例えば、図24に示すようになる。図24の応答パケットテーブルでは、IPアドレス、階層値、同期識別子、参照元識別子、遅延時間d、及び内部処理時間Pが対応付けられている。
【0128】
まず、サーバ選択部550は、応答パケットテーブルのデータを、階層値に基づき並び替える。この結果、応答パケットテーブルは、図25に示すようになる。図25では、階層値2のデータA,E,Gが階層値1のデータB,C,Dの下位になり、階層値3のデータFが階層値2のデータA,E,Gの下位になるよう、データが並び替えられている。
【0129】
ついで、サーバ選択部550は、階層値が「1」であるデータを、参照元識別子に基づき並び替える。この結果、応答パケットテーブルは、図26に示す状態になる。図26では、参照元識別子が「TJJY」であるデータCが、参照元識別子が「GPS」であるデータDの下位に並び替えられている。
【0130】
ついで、サーバ選択部550は、階層値及び参照元識別子が同一であるデータを、同期識別子に基づき並び替える。この結果、応答パケットテーブルは、図27に示す状態になる。図27では、同期識別子が「11」であるデータBが、同期識別子が「00」であるデータDの下位に並び替えられている。
【0131】
ついで、サーバ選択部550は、応答パケットテーブルのデータを、遅延時間dに基づき並び替える。この結果、応答パケットテーブルは、図28に示す状態になる。図28では、遅延時間dが「5000μ秒」であるデータEが、遅延時間dが「4900μ秒」であるデータGの下位に並び替えられている。
【0132】
この後、上述したように、データの順位を定めるために、内部処理時間Pを遅延時間dよりも重視する必要が生じている場合には、内部処理時間Pに基づき、データの並べ替えが行われる。
【0133】
また、本実施の形態の通信端末100における各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プログラムは、たとえばフレキシブルディスクやCD−ROMなどのコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に伝送されて記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、装置の一機能としてその装置のソフトウェアに組み込まれてもよい。
【符号の説明】
【0134】
1,2 通信システム
100 通信端末
110 制御部
120 記憶部
130 入力部
140 出力部
150 通信制御部
160 計時部
200,201,202,203,
204,205,206 タイムサーバ
300 ネットワーク
400 原子時計(PPS)
401 GPS
402 テレホンJJY
500 応答要求パケット送信部
510 応答パケット受信部
520 遅延時間計算部
530 内部処理時間計算部
540 応答パケットデータ格納部
550 サーバ選択部

【特許請求の範囲】
【請求項1】
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信部と、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信部と、
前記応答パケット受信部が前記応答パケットを受信するたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納部と、
前記応答パケットデータ格納部が格納したデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択部と、を有し、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択部は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とする通信端末。
【請求項2】
前記応答要求パケット送信部は、ブロードキャスト送信で、前記ネットワークに対して前記応答要求パケットを送信することを特徴とする請求項1に記載の通信端末。
【請求項3】
前記サーバ選択部は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする請求項1又は2に記載の通信端末。
【請求項4】
前記応答パケットから取得されるデータとして、前記サーバが時刻同期を行っているか否かを示す同期識別子があり、
前記サーバ選択部は、前記参照元識別子に基づき、前記時刻合わせの参照元が異なるサーバの優先順位を設定し、前記同期識別子に基づき、前記時刻合わせの参照元が同一であるサーバの優先順位を設定することを特徴とする請求項3に記載の通信端末。
【請求項5】
前記複数のサーバは、下層のサーバが上層のサーバを参照して時刻合わせを行うように、前記ネットワーク上で階層化され、
前記応答パケットから取得されるデータとして、前記サーバが位置する階層を示す階層値があり、
前記サーバ選択部は、前記階層値に基づき、前記時刻情報の取得先として前記上層のサーバが前記下層のサーバよりも優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする請求項1乃至4のいずれか1項に記載の通信端末。
【請求項6】
前記応答要求パケット送信部が前記応答要求パケットを送信してから、前記応答パケット受信部が前記応答パケットを受信するまでに要する時間と、前記サーバが前記応答要求パケットを受信してから前記応答パケットを送信するまでに要する時間との差分を示す遅延時間を算出する遅延時間算出部をさらに有し、
前記サーバ選択部は、前記時刻情報の取得先として前記遅延時間が短いサーバが優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする請求項1乃至5のいずれか1項に記載の通信端末。
【請求項7】
前記サーバが、前記応答要求パケットを受信してから、前記応答パケットを送信するまでに要する内部処理時間を算出する内部処理時間算出部をさらに有し、
前記サーバ選択部は、前記時刻情報の取得先として前記内部処理時間が短いサーバが優先して選択されるように、前記時刻情報の取得先となる候補の優先順位を設定することを特徴とする請求項1乃至6のいずれか1項に記載の通信端末。
【請求項8】
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信ステップと、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信ステップと、
前記応答パケット受信ステップで前記応答パケットが受信されるたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納ステップと、
前記応答パケットデータ格納ステップで格納されたデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択ステップと、を有し、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択ステップでは、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とする通信端末の制御方法。
【請求項9】
コンピュータを、
複数のサーバが接続されたネットワークに対して、応答要求パケットを送信する応答要求パケット送信手段、
前記応答要求パケットを受信した前記サーバから、前記ネットワークを通じて、応答パケットを受信する応答パケット受信手段、
前記応答パケット受信手段が前記応答パケットを受信するたびに、該応答パケットから取得されるデータを格納する応答パケットデータ格納手段、
前記応答パケットデータ格納手段が格納したデータを用いて、前記複数のサーバの中から、時刻情報の取得先となる候補を選択するサーバ選択手段として機能させ、
前記応答パケットから取得されるデータとして、前記サーバの時刻合わせの参照元を示す参照元識別子があり、
前記サーバ選択手段は、前記参照元識別子に基づき、前記時刻情報の取得先となる候補を選択することを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate


【公開番号】特開2012−113504(P2012−113504A)
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願番号】特願2010−261795(P2010−261795)
【出願日】平成22年11月24日(2010.11.24)
【出願人】(396004981)セイコープレシジョン株式会社 (481)
【Fターム(参考)】