宮本 裕司 (〒00 東京都港区台場二丁目3番1号 株式会社富士通ビー・エス・シー内 Tokyo, 1358300, JP)
AKIYAMA, Ryota (3-1Daiba 2-chome Minato-k, Tokyo 00, 1358300, JP)
株式会社富士通ビー・エス・シー (〒00 東京都港区台場二丁目3番1号 Tokyo, 1358300, JP)
MIYAMOTO, Yuji (3-1Daiba 2-chome Minato-k, Tokyo 00, 1358300, JP)
宮本 裕司 (〒00 東京都港区台場二丁目3番1号 株式会社富士通ビー・エス・シー内 Tokyo, 1358300, JP)
| ネットワークで接続された複数の装置の時刻管理を行う時刻管理サーバにおいて、 時刻同期の基準となる時刻を発生させるサーバ側内部時計と、 管理対象の複数のクライアントが登録されたクライアント情報記憶手段と、 前記クライアント情報記憶手段に登録された前記クライアントそれぞれに対して時刻情報の取得要求を送信し、前記クライアントが有するクライアント側内部時計で示されたローカル時刻を取得し、前記取得要求の発信時の前記サーバ側内部時計の時刻である送出時刻、当該ローカル時刻、および当該ローカル時刻取得時の前記サーバ側内部時計の時刻である到着時刻を組にして前記クライアント情報記憶手段に格納する時刻情報収集手段と、 前記クライアント情報記憶手段に格納された前記クライアントそれぞれの前記送出時刻と前記到着時刻とから、前記時刻管理サーバと前記クライアントそれぞれとの間の一方向分の通信における遅延時間を算出する遅延時間算出手段と、 前記遅延時間算出手段で算出された前記遅延時間によって前記ローカル時刻を補正し、補正された前記ローカル時刻と前記送出時刻または前記到着時刻との差を前記サーバ側内部時計と前記クライアント側内部時計との誤差とし、前記クライアントごとの誤差が所定の閾値以内か否かを判断し、全ての前記クライアントの誤差が前記閾値を超えていた場合、前記サーバ側内部時計に障害があると判定し、誤差が前記閾値を超えている前記クライアントの数が所定の割合以下の場合、誤差が前記閾値を超えている前記クライアントの前記クライアント側内部時計に障害があると判定する障害検出手段と、 を有することを特徴とする時刻管理サーバ。 |
| 前記遅延時間算出手段は、前記クライアント情報記憶手段に格納された前記クライアントごとの前記送出時刻と前記到着時刻とから、前記時刻管理サーバと前記クライアントそれぞれとの間の一方向分の通信における遅延時間の平均値を算出し、算出された平均値を前記クライアントそれぞれとの通信における遅延時間とすることを特徴とする請求の範囲第1項記載の時刻管理サーバ。 |
| 前記障害検出手段により前記サーバ側内部時計が正常と判定された場合、前記クライアント側内部時計が正常と判定された前記クライアントとの間で、時刻を一致させるための時刻同期処理を実行することを特徴とする時刻同期手段をさらに有することを特徴とする請求の範囲第1項記載の時刻管理サーバ。 |
| 前記障害検出手段により前記クライアント側内部時計に障害があると判定された前記クライアントに対して、前記クライアント側内部時計を用いたサービスの停止を指示するサービス停止指示手段をさらに有することを特徴とする請求の範囲第1項記載の時刻管理サーバ。 |
| 前記障害検出手段は、誤差が前記閾値を超えている前記クライアントの数が所定の割合を超えている場合、正確な時刻が不明であると判定することを特徴とする請求の範囲第1項記載の時刻管理サーバ。 |
| 前記障害検出手段により正確な時刻が不明であると判定された場合、全ての前記クライアントに対して、前記クライアント側内部時計を用いたサービスの停止を指示するサービス停止指示手段をさらに有することを特徴とする請求の範囲第5項記載の時刻管理サーバ。 |
| ネットワークで接続された複数の装置の時刻管理を、時刻同期の基準となる時刻を発生させるサーバ側内部時計を有するコンピュータで行うための時刻管理プログラムにおいて、 前記コンピュータを、 管理対象の複数のクライアントが登録されたクライアント情報記憶手段、 前記クライアント情報記憶手段に登録された前記クライアントそれぞれに対して時刻情報の取得要求を送信し、前記クライアントが有するクライアント側内部時計で示されたローカル時刻を取得し、前記取得要求の発信時の前記サーバ側内部時計の時刻である送出時刻、当該ローカル時刻、および当該ローカル時刻取得時の前記サーバ側内部時計の時刻である到着時刻を組にして前記クライアント情報記憶手段に格納する時刻情報収集手段、 前記クライアント情報記憶手段に格納された前記クライアントそれぞれの前記送出時刻と前記到着時刻とから、前記時刻管理サーバと前記クライアントそれぞれとの間の一方向分の通信における遅延時間を算出する遅延時間算出手段、 前記遅延時間算出手段で算出された前記遅延時間によって前記ローカル時刻を補正し、補正された前記ローカル時刻と前記送出時刻または前記到着時刻との差を前記サーバ側内部時計と前記クライアント側内部時計との誤差とし、前記クライアントごとの誤差が所定の閾値以内か否かを判断し、全ての前記クライアントの誤差が前記閾値を超えていた場合、前記サーバ側内部時計に障害があると判定し、誤差が前記閾値を超えている前記クライアントの数が所定の割合以下の場合、誤差が前記閾値を超えている前記クライアントの前記クライアント側内部時計に障害があると判定する障害検出手段、 として機能させることを特徴とする時刻管理プログラム。 |
| ネットワークで接続された複数の装置の時刻管理を、時刻同期の基準となる時刻を発生させるサーバ側内部時計を有するコンピュータで行うための時刻管理方法において、 時刻情報収集手段が、管理対象の複数のクライアントが登録されたクライアント情報記憶手段に登録された前記クライアントそれぞれに対して時刻情報の取得要求を送信し、前記クライアントが有するクライアント側内部時計で示されたローカル時刻を取得し、前記取得要求の発信時の前記サーバ側内部時計の時刻である送出時刻、当該ローカル時刻、および当該ローカル時刻取得時の前記サーバ側内部時計の時刻である到着時刻を組にして前記クライアント情報記憶手段に格納し、 遅延時間算出手段が、前記クライアント情報記憶手段に格納された前記クライアントそれぞれの前記送出時刻と前記到着時刻とから、前記時刻管理サーバと前記クライアントそれぞれとの間の一方向分の通信における遅延時間を算出し、 障害検出手段が、前記遅延時間算出手段で算出された前記遅延時間によって前記ローカル時刻を補正し、補正された前記ローカル時刻と前記送出時刻または前記到着時刻との差を前記サーバ側内部時計と前記クライアント側内部時計との誤差とし、前記クライアントごとの誤差が所定の閾値以内か否かを判断し、 前記障害検出手段が、全ての前記クライアントの誤差が前記閾値を超えていた場合、前記サーバ側内部時計に障害があると判定し、 前記障害検出手段が、誤差が前記閾値を超えている前記クライアントの数が所定の割合以下の場合、誤差が前記閾値を超えている前記クライアントの前記クライアント側内部時計に障害があると判定する、 ことを特徴とする時刻管理方法。 |
本発明はネットワークで接続された複数 装置の時刻管理を行うための時刻管理サー 、時刻管理プログラム、および時刻管理方 に関し、特に内部時計に障害がある装置を 出可能な時刻管理サーバ、時刻管理プログ ム、および時刻管理方法に関する。
コンピュータを用いて処理を行う場合、 理を実行した時刻をタイムスタンプとして 録する場合がある。たとえば、文書の内容 承認した時刻を示すタイムスタンプを電子 名に付加する場合がある。これにより、タ ムスタンプの偽造等が困難となる。
このように、タイムスタンプによって文 内容の信頼性を確保する場合、その前提と て、コンピュータの内部時計が正確である とが望まれる。そこで、多くの場合、ネッ ワーク上に時刻を管理するサーバ(以下、時 刻管理サーバと呼ぶ)を設置する。その時刻 理サーバは、正確な時刻を通知する電波を 期的に受信して、内部の時計を正確な時刻 合わせる。時刻を通知する電波としては、 とえば、標準時報局から送信される標準電 (コールサイン:JJY)やGPS(Global positioning system) における衛星から送られる電波がある。時刻 管理サーバは正確な内部時計を有しており、 取得した時刻情報を基準として、正確な時刻 を管理する。そして、時刻管理サーバは他の コンピュータからの要求に応じて、時刻情報 を送信する。
時刻管理サーバにネットワークを介して 続された他のコンピュータは、NTP(Network Tim e Protocol)等の時刻合わせ用のプロトコルを用 い、時刻管理サーバから時刻情報を取得する 。時刻情報を取得したコンピュータは、自己 の内部時計を、時刻管理サーバから取得した 時刻に合わせる。
ところが、時刻管理サーバのような特定 サーバで時刻情報を集中管理すると、時刻 理サーバにおける内部時計の異常に対処で ない。すなわち、時刻管理サーバの内部時 に異常があっても、他のコンピュータでそ を検出することができない。その結果、ネ トワーク上の全てのコンピュータの時刻が ってしまう。
そこで、従来は、分散システムにおける ての通信局が自局の時刻を他の通信局へ送 し、多数決によってシステムの基準時刻を 択することが考えられている(たとえば、特 許文献1参照)。
また、外部接続された時計装置から外部時
データを入力し、外部時刻データを計算機
システム時刻の取り込み、あるいは異常警
等の異常処理を行う技術がある(たとえば、
特許文献2参照)。
しかし、特許文献1のような多数決方式で は、多数のコンピュータの内部時計が同じ特 性を有しているとき、過半数のコンピュータ の時刻が正確な時刻から同じようにずれる可 能性がある。たとえば、時刻が進みがちな内 部時計を有するコンピュータが多数ある場合 、多数決によって、正確な時刻よりも進んだ 時刻が基準時刻として選択される場合が有り 得る。
このように、コンピュータシステムの時 管理では、時刻管理サーバの時計が絶対に わないという保証が困難であるとともに、 数のコンピュータの多数決を取ったとして その時刻が正しいという保証はない。すな ち、サーバ時計の時刻がずれているか、ク イアント時計の時刻がずれているかの判断 困難であった。
しかも、コンピュータシステム全体での 刻情報の同期を頻繁に行っていたのでは、 ステムの処理効率を低下させてしまう。そ ため、各コンピュータがある一定間隔で時 情報の同期を行う場合、同期を行ってから の同期タイミングまでは、内部時計によっ 時刻を管理する必要がある。すると、コン ュータの内部時計が正常に動作していない 合、次の時刻情報の同期までの間に大きく 刻が狂うことがある。その間、そのコンピ ータで実行した処理のタイムスタンプは誤 た時刻となる。このような事態を回避する は、内部時計が正常に動作していないコン ュータを的確に見つけ出し、そのコンピュ タによる業務処理を停止する必要がある。
なお、コンピュータの内部時計が正常に 作していない場合、特許文献2に示したよう な外部の時計装置との比較により、異常処理 を行うことも可能である。ただし、この場合 、外部の時計装置が正確であることが前提と なっている。すなわち、外部の時計装置が異 常動作した場合については、その障害を検出 することができない。
このように、時刻情報の同期を取る前提 して、時刻同期の基準となる時刻が正確で ることの保証に加え、各コンピュータの内 時計が正常に機能していることが必要であ 。時刻同期の基準となる時刻が正確である との保証は、基準となる時刻を管理してい 時刻管理サーバの内部時計が正常に機能し いることを確認することで担保できる。従 て、誤った時刻のタイムスタンプが設定さ ることを防止するには、時刻管理サーバと ライアントとを含め、ネットワーク上の各 ンピュータのうち内部時計に障害があるコ ピュータを的確に検出することが必要とな 。
本発明はこのような点に鑑みてなされた のであり、内部時計に障害があるコンピュ タを的確に検出することができる時刻管理 ーバ、時刻管理プログラム、および時刻管 方法を提供することを目的とする。
本発明では上記課題を解決するために、 刻管理サーバが提供される。時刻管理サー は、ネットワークで接続された複数の装置 時刻管理を行うために、サーバ側内部時計 クライアント情報記憶手段、時刻情報収集 段、遅延時間算出手段、および障害検出手 を有している。サーバ側内部時計は、時刻 期の基準となる時刻を発生させる。クライ ント情報記憶手段は、管理対象の複数のク イアントが登録されている。時刻情報収集 段は、クライアント情報記憶手段に登録さ たクライアントそれぞれに対して時刻情報 取得要求を送信し、クライアントが有する ライアント側内部時計で示されたローカル 刻を取得し、取得要求の発信時のサーバ側 部時計の時刻である送出時刻、当該ローカ 時刻、および当該ローカル時刻取得時の前 サーバ側内部時計の時刻である到着時刻を にしてクライアント情報記憶手段に格納す 。遅延時間算出手段は、クライアント情報 憶手段にクライアントごとに格納された送 時刻と到着時刻とから、時刻管理サーバと ライアントとの間の一方向分の通信におけ 遅延時間を算出する。障害検出手段は、遅 時間算出手段で算出された遅延時間によっ ローカル時刻を補正し、補正されたローカ 時刻と送出時刻または到着時刻との差をサ バ側内部時計とクライアント側内部時計と 誤差とし、クライアントごとの誤差が所定 閾値以内か否かを判断し、全てのクライア トの誤差が閾値を超えていた場合、サーバ 内部時計に障害があると判定し、誤差が閾 を超えているクライアントの数が所定の割 以下の場合、誤差が閾値を超えているクラ アントのクライアント側内部時計に障害が ると判定する。
このような時刻管理サーバによれば、ま 、時刻情報収集手段により、クライアント 有するクライアント側内部時計で示された ーカル時刻が取得され、取得要求の送出時 、当該ローカル時刻、およびローカル時刻 到着時刻が組にしてクライアント情報記憶 段に格納される。次に、遅延時間算出手段 より、クライアントごとの送出時刻と到着 刻とから、時刻管理サーバとクライアント の間の一方向分の通信における遅延時間が 出される。そして、障害検出手段により、 延時間によってローカル時刻が補正され、 ライアントごとに、サーバ側内部時計とク イアント側内部時計との誤差が所定の閾値 内か否かが判断される。全てのクライアン の誤差が閾値を超えていた場合、障害検出 段により、サーバ側内部時計に障害がある 判定される。誤差が閾値を超えているクラ アントの数が所定の割合以下の場合、障害 出手段により、誤差が閾値を超えているク イアントのクライアント側内部時計に障害 あると判定される。
本発明では、全てのクライアントの誤差 閾値を超えていた場合、サーバ側内部時計 障害があると判定し、誤差が閾値を超えて るクライアントの数が所定の割合以下の場 、誤差が閾値を超えているクライアントの ライアント側内部時計に障害があると判定 るようにした。これにより、クライアント 内部時計に障害がある場合に加え、サーバ 内部時計に障害がある場合も、その障害を 出することが可能となる。
本発明の上記および他の目的、特徴およ 利点は本発明の例として好ましい実施の形 を表す添付の図面と関連した以下の説明に り明らかになるであろう。
以下、本発明の実施の形態を図面を参照し
説明する。
図1は、発明の概要を示す図である。時刻管
理サーバ1は、ネットワークを介して複数の
ライアント2,3,4に接続されている。各クライ
アント2,3,4は内部時計を有しており、内部時
で示される時刻を用いた処理を実行してい
。内部時計は、たとえばクライアント2,3,4
マザーボードに実装されたRTC(Real Time Clock)
呼ばれる時計専用の電子回路である。
時刻管理サーバ1は、ネットワークで接続 された複数の装置の時刻管理を行うために、 サーバ側内部時計1a、クライアント情報記憶 段1b、時刻情報収集手段1c、遅延時間算出手 段1d、障害検出手段1e、時刻同期手段1f、およ びサービス停止指示手段1gを有する。
サーバ側内部時計1aは、時刻同期の基準 なる時刻を発生させる。サーバ側内部時計1a は、たとえば、標準時報局から送信される標 準電波やGPSの衛星からの時刻を通知する電波 を定期的に受信して、時刻合わせをする機能 を有する。また、サーバ側内部時計1aは、ル ジウム発信器等の正確な発信器を内蔵した 度の高い時計である。
クライアント情報記憶手段1bは、管理対 の複数のクライアント2,3,4が登録されている 。たとえば、クライアント情報記憶手段1bに 、各クライアント2,3,4の識別情報として、IP (Internet Protocol)アドレスが設定される。
時刻情報収集手段1cは、クライアント情 記憶手段1bに登録されたクライアント2,3,4そ ぞれに対して時刻情報の取得要求を送信す 。その結果、時刻情報収集手段1cは、クラ アント2,3,4が有するクライアント側内部時計 で示されたローカル時刻を取得する。そして 、時刻情報収集手段1cは、取得要求発信時の ーバ側内部時計1aの時刻である送出時刻、 ーカル時刻、およびローカル時刻取得時の ーバ側内部時計の時刻である到着時刻を組 してクライアント情報記憶手段1bに格納する 。
遅延時間算出手段1dは、クライアント情 記憶手段1bにクライアント2,3,4ごとに格納さ た送出時刻と到着時刻とから、時刻管理サ バ1とクライアント2,3,4との間の一方向分の 信における遅延時間を算出する。遅延時間 、クライアント2,3,4が応答パケットを送出 てから、その応答パケットを時刻管理サー 1が受信するまでの時間である。クライアン 2,3,4それぞれに対する送出時刻から到着時 までの時間差の平均を2で割ることで、一方 分の通信の遅延時間をクライアント2,3,4ご に求めることができる。
なお、遅延時間算出手段1dは、クライア ト2,3,4ごとの遅延時間の平均値を求め、その 平均値を各クライアント2,3,4との間の通信に ける遅延時間とすることもできる。
障害検出手段1eは、遅延時間算出手段1dで 算出された遅延時間によってローカル時刻を 補正し、補正されたローカル時刻と送出時刻 または到着時刻との差をサーバ側内部時計1a クライアント側内部時計との誤差とする。
ここで、補正されたローカル時刻と送出 刻との差を取る場合、障害検出手段1eは、 ーカル時刻から遅延時間を減算することで 正を行う。また、補正されたローカル時刻 到着時刻との差を取る場合、障害検出手段1e は、ローカル時刻から遅延時間を減算するこ とで補正を行う。このような補正を行うこと により、ネットワーク上のパケット伝送時間 も考慮したうえで、サーバ側内部時計とクラ イアント側内部時計と誤差を正確に計算でき る。
さらに、障害検出手段1eは、クライアン 2,3,4ごとの誤差が所定の閾値以内か否かを判 断する。全てのクライアント2,3,4の誤差が閾 を超えていた場合、障害検出手段1eは、サ バ側内部時計1aに障害があると判定する。ま た、誤差が閾値を超えているクライアントの 数が所定の割合以下の場合、障害検出手段1e 、誤差が閾値を超えているクライアントの ライアント側内部時計に障害があると判定 る。
時刻同期手段1fは、障害検出手段1eにより サーバ側内部時計1aが正常と判定された場合 クライアント側内部時計が正常と判定され クライアントとの間で、時刻を一致させる めの時刻同期処理を実行する。図1の例では 、時刻同期手段1fは、クライアント2,3との間 時刻同期処理を行っている。
サービス停止指示手段1gは、障害検出手 1eによりクライアント側内部時計に障害があ ると判定されたクライアントに対して、クラ イアント側内部時計を用いたサービスの停止 を指示する。図1の例では、サービス停止指 手段1gは、クライアント4に対してサービス 止の指示を出している。
このような時刻管理サーバ1によれば、ま ず、時刻情報収集手段1cにより、クライアン 2,3,4が有するクライアント側内部時計で示 れたローカル時刻が取得される。そして、 刻情報収集手段1cにより、取得要求の送出時 刻、ローカル時刻、およびローカル時刻の到 着時刻が組にしてクライアント情報記憶手段 1bに格納される。
次に、遅延時間算出手段1dにより、クラ アント2,3,4ごとの送出時刻と到着時刻とから 、時刻管理サーバ1とクライアント2,3,4との間 の一方向分の通信における遅延時間が算出さ れる。そして、障害検出手段1eにより、遅延 間によってローカル時刻が補正され、クラ アント2,3,4ごとに、サーバ側内部時計1aとク ライアント側内部時計との誤差が所定の閾値 以内か否かが判断される。
全てのクライアント2,3,4の誤差が閾値を えていた場合、障害検出手段1eにより、サー バ側内部時計1aに障害があると判定される。 差が閾値を超えているクライアントの数が 定の割合以下の場合、障害検出手段1eによ 、誤差が閾値を超えているクライアントの ライアント側内部時計に障害があると判定 れる。
障害検出手段1eによりサーバ側内部時計1a が正常と判定された場合、時刻同期手段1fに って、クライアント側内部時計が正常と判 されたクライアントとの間で、時刻同期処 が実行される。また、障害検出手段1eによ クライアント側内部時計に障害があると判 された前記クライアントに対しては、サー ス停止指示手段1gにより、クライアント側内 部時計を用いたサービスの停止の指示が出さ れる。
このようにして、クライアント2,3,4の内部
計に障害がある場合に加え、サーバ側内部
計1aに障害がある場合も、その障害を検出す
ることが可能となる。
次に、本実施の形態の詳細を説明する。な
、以下の説明では、サーバの内部時計の略
をSTSとし、クライアントの内部時計の略称
STCとする。
図2は、本実施の形態のシステム構成例を 示す図である。本実施の形態に係るネットワ ークシステムでは、ネットワーク10を介して 刻管理サーバ100とクライアント200,200a,・・ ,200mが接続されている。
時刻管理サーバ100は、ネットワークにお る時刻を管理するコンピュータである。時 管理サーバ100は、GPSにおける衛星(GPS衛星)21 ,22,23,・・・から時刻情報を含む電波を受信 、正確な時刻を取得する機能を有する。ま 、時刻管理サーバ100は、クライアント200,200a ,・・・,200mから時刻情報(クライアントのロ カル時刻)を収集し、時刻管理サーバ100およ クライアント200,200a,・・・,200mにおける内 時計の障害の有無を判定する。
そして、時刻管理サーバ100は、時刻管理 ーバ100自身の内部時計が正常である場合、 部時計が正常であると判定されたクライア トとの間で時刻同期を行う。この時刻同期 理では、各クライアントの内部時計が、時 管理サーバ100の内部時計と同じ時刻に修正 れる。なお、時刻管理サーバ100は、内部時 に障害があると判定されたクライアントに しては、内部時計を利用したタイムスタン 機能のサービス停止を指示する。
クライアント200,200a,・・・,200mは、内部 計の時刻情報をタイムスタンプとして利用 たサービスを実行するコンピュータである 本実施の形態では、時刻情報を利用したサ ビスとして、ファイルに対する署名処理を っているものとする。なお、クライアント20 0,200a,・・・,200mの内部時計は、システム構築 時に時刻管理サーバ100の内部時計との間で時 刻同期が行われ、時刻管理サーバ100の内部時 計と同じ時刻に修正される。
さらに、クライアント200,200a,・・・,200m 、電源投入時に時刻管理サーバ100に対して 部時計の時刻情報を送信し、内部時計が正 であることの認証を受ける。クライアント20 0,200a,・・・,200mは、時刻管理サーバ100におい て内部時計が正常であると判定された場合、 時刻管理サーバ100との間で時刻同期を行い、 内部時計を時刻管理サーバ100から通知された 時刻情報に合わせる。また、クライアント200 ,200a,・・・,200mは、内部時計に障害がある場 、時刻管理サーバ100からタイムスタンプ機 のサービス停止指示を受け取り、タイムス ンプを利用した機能を停止する。
なお、本実施の形態では、時刻管理対象 クライアント200,200a,・・・,200mが全て起動 れたときに、内部時計の障害判定および時 同期が行われる。そのため、システムを運 する管理者は、毎朝、クライアント200,200a, ・・,200mの電源を投入するものとする。
このようなシステム構成において、本実 の形態では、複数のクライアント200,200a,・ ・,200mそれぞれに内部時計を準備し、シス ム構築時に時刻同期が行われる。これによ 、クライアント200,200a,・・・,200mの内部時計 が、時刻管理サーバ100の内部時計と同じ時刻 に修正される。
その後は、所定のタイミングで時刻管理 ーバ100から複数のクライアント200,200a,・・ ,200mに対して時刻情報(STS送出時刻)を含む時 刻情報の取得要求を送る。時刻管理サーバ100 は、応答されてきたクライアントの内部時計 の時刻(STCローカル時刻)を取得する。また、 刻管理サーバ100は、各クライアント200,200a, ・・,200mからSTCローカル時刻を取得したと の時刻情報の取得要求の送出時刻と応答の 着時刻から平均路遅延時間を計算する。さ に、平均遅延時間でSTCローカル時刻を補正 て、各クライアントの内部時計の時刻と時 管理サーバの内部時計の時刻との誤差を求 る。
そして、時刻管理サーバ100は、クライア トごとに求められた誤差が閾値以下か否か よって、時刻管理サーバおよび各クライア トの内部時計が正常か否かの判別処理を行 。全てのクライアントに関する内部時計の 差が一定の閾値内に収まるのであれば、時 管理サーバ100と各クライアント200,200a,・・ ,200mの内部時計が正常である。大多数のク イアントの内部時計の誤差が、一定の閾値 に収まらない場合、時刻管理サーバ100の内 時計に異常がある。この場合は、たとえば 時刻管理サーバ100の内部時計に異常がある の警告を出すことができる。また、少数の ライアントの内部時計の誤差が閾値内に収 らない場合、誤差が閾値を超えるクライア トの内部時計に異常がある。この場合は、 当するクライアントの内部時計に関し、時 異常と警告を出すことができる。
このようにして、本実施の形態では、複数
クライアント情報およびサーバ時刻情報を
って、信頼性の高い相互の時刻監視システ
が提供される。
以下、このような処理を実現するための時
管理サーバ100とクライアント200,200a,・・・,
200mとの機能について具体的に説明する。
図3は、本実施の形態に用いる時刻管理サ ーバのハードウェア構成例を示す図である。 時刻管理サーバ100は、CPU(Central Processing Unit) 101によって装置全体が制御されている。CPU101 には、バス108を介してRAM(Random Access Memory)102 、ハードディスクドライブ(HDD:Hard Disk Drive)1 03、グラフィック処理装置104、入力インタフ ース105、通信インタフェース106、および時 管理回路107が接続されている。
RAM102には、CPU101に実行させるOS(Operating Sy stem)のプログラムやアプリケーションプログ ムの少なくとも一部が一時的に格納される また、RAM102には、CPU101による処理に必要な 種データが格納される。HDD103には、OSやア リケーションプログラムが格納される。
グラフィック処理装置104には、モニタ11 接続されている。グラフィック処理装置104 、CPU101からの命令に従って、画像をモニタ11 の画面に表示させる。入力インタフェース105 には、キーボード12とマウス13とが接続され いる。入力インタフェース105は、キーボー 12やマウス13から送られてくる信号を、バス1 08を介してCPU101に送信する。
通信インタフェース106は、ネットワーク1 0に接続されている。通信インタフェース106 、ネットワーク10を介して、他のコンピュー タとの間でデータの送受信を行う。
時刻管理回路107は、誤差の少ない内部時 を有し、時刻情報を管理している。さらに 時刻管理回路107にはGPSアンテナ20が接続さ ている。時刻管理回路107は、定期的に、GPS21 ,22,23,・・・から送信された時刻を示す電波 、GPSアンテナ20を介して受信する。時刻管理 回路107は、受信した電波によって現在の時刻 を認識し、内部時計をその時刻に合わせる。
図4は、本実施の形態に用いるクライアン トのハードウェア構成例を示す図である。ク ライアント200は、CPU201によって装置全体が制 御されている。CPU201には、バス208を介してRAM 202、ハードディスクドライブ(HDD)203、グラフ ック処理装置204、入力インタフェース205、P Cカードインタフェース206、および通信イン フェース207が接続されている。
RAM202には、CPU201に実行させるOSのプログ ムやアプリケーションプログラムの少なく も一部が一時的に格納される。また、RAM202 は、CPU201による処理に必要な各種データが 納される。HDD203には、OSやアプリケーション プログラムが格納される。
グラフィック処理装置204には、モニタ31 接続されている。グラフィック処理装置204 、CPU201からの命令に従って、画像をモニタ31 の画面に表示させる。入力インタフェース205 には、キーボード32とマウス33とが接続され いる。入力インタフェース205は、キーボー 32やマウス33から送られてくる信号を、バス2 08を介してCPU201に送信する。
PCカードインタフェース206は、PCカード34 接続することができる。そして、PCカード ンタフェース206は、接続されたPCカード34と 間でデータの送受信を行う。本実施の形態 使用するPCカード34は、時計回路34aを内蔵し ている。時計回路34aは、内部時計によって現 在の時刻を管理している。PCカード34は、ク イアント200からの要求に応じて、時計回路34 aで示される時刻情報をクライアント200に渡 。
通信インタフェース207は、ネットワーク1 0に接続されている。通信インタフェース207 、ネットワーク10を介して、他のコンピュー タとの間でデータの送受信を行う。
以上のようなハードウェア構成によって 本実施の形態の処理機能を実現することが きる。なお、図4では、クライアント200のハ ードウェア構成のみを示したが、他のクライ アント200a,・・・,200mも同様のハードウェア 成で実現することができる。
次に、ネットワークを介した時計監視を行
ために時刻管理サーバ100と各クライアント2
00,200a,・・・,200mとが有する機能について説
する。
図5は、時刻管理サーバとクライアントとの
機能を示すブロック図である。時刻管理サー
バ100は、クライアント情報記憶部110、時刻情
報収集部120、平均遅延時間算出部130、障害判
定部140、署名管理部150、および時刻同期処理
部160を有している。
クライアント情報記憶部110は、時刻監視 処となるクライアントに関する情報が記憶 れている。具体的には、クライアント情報 憶部110には、時刻監視対象のクライアント IPアドレスが予め登録されている。そして クライアント情報記憶部110には、各クライ ントのIPアドレスに対応付けて時刻情報の登 録領域が設けられている。
時刻情報収集部120は、予め決められた時 になると、クライアント200,200a,・・・,200m らの時刻情報の収集を開始する。たとえば 時刻情報収集部120は、毎日午前7時になると クライアント200,200a,・・・,200mが起動され のを待ち、起動されたクライアントに対し 時刻情報の取得要求を送信する。この取得 求には、その取得要求を送信した時刻(STS送 時刻)が含まれる。そして、時刻情報収集部 120は、取得した時刻通知をクライアントから 受け取る。受け取った時刻通知には、STS送出 時刻、STCその時刻通知をクライアントが応答 した時刻(STCローカル時刻)、およびSTS送出時 が含まれる。時刻情報収集部120は、STS送出 刻、STCローカル時刻、および時刻通知を取 した時刻(STS到着時刻)を組にして、クライ ント情報記憶部110内の該当するクライアン のIPアドレスに対応付けて登録する。
平均遅延時間算出部130は、クライアント2 00,200a,・・・,200mから取得した時刻情報に基 いて、時刻管理サーバ100とクライアント200,2 00a,・・・,200mとの間の通信(一方向分)におけ 各平均遅延時間を算出する。具体的には、 均遅延時間算出部130は、クライアント情報 憶部110を参照し、全てのクライアントのIP ドレスに対応付けて、時刻情報が登録され いることを確認する。そして、平均遅延時 算出部130は、クライアント情報記憶部110に 録された情報に基づいて、時刻管理サーバ10 0とクライアント200,200a,・・・,200mとの間の一 方向分の通信における平均遅延時間を算出す る。平均遅延時間は、クライアントごとの遅 延時間を平均することで算出できる。具体的 には、クライアントごとにSTS送出時刻とSTS到 着時刻との差を2で除算し、クライアントご の遅延時間を求める。クライアントごとに められた遅延時間を合算し、時刻管理対象 なっているクライアントの総数で除算すれ 、通信の一方向分の平均遅延時間となる。
障害判定部140は、各クライアント200,200a, ・・,200mから取得した時刻情報に基づいて 時刻管理サーバ100自身、あるいはクライア ト200,200a,・・・,200mの中から、内部時刻に障 害があるコンピュータを検出する。具体的に は、障害判定部140は、各クライアント200,200a, ・・・,200mから取得したSTCローカル時刻に平 遅延時間を加算して、値を補正する。そし 、障害判定部140は、STS到着時刻と、平均遅 時間で補正したSTCローカル時刻との差(誤差 )をクライアントごと計算する。さらに、障 判定部140は、クライアントごとに計算した 差が所定の閾値以下か否かを判断する。閾 は、たとえば50ms程度とする。
障害判定部140は、全てのクライアントに いて誤差が閾値以下であれば、全てのコン ュータが正常であると判定する。障害判定 140は、全てのクライアントにおいて誤差が 値を超えている場合、時刻管理サーバ100の 部時計に障害があると判定する。障害判定 140は、所定の数以下のクライアントにおい 誤差が閾値を超えていれば、誤差が閾値を えたクライアントについては内部時計に障 があると判定する。それ以外のクライアン および時刻管理サーバ100については、内部 計が正常であると判断する。障害判定部140 、所定の数を超える数(全数の場合を除く) クライアントにおいて誤差が閾値を超えて れば、システム全体において保証できる正 な時刻が不明であると判断する。障害判定 140は、判定結果を署名管理部150に渡す。
署名管理部150は、障害判定部140において 部時計に障害有りと判定されたクライアン に対して、署名機能停止通知を送信する。 た、署名管理部150は、時刻管理サーバ100自 の内部時計に障害有りと判定された場合、 てのクライアント200,200a,・・・,200mに対し 、署名機能停止通知を送信する。すなわち 時刻管理サーバ100の内部時計が信用できな 場合、クライアント200,200a,・・・,200mが時刻 管理サーバ100と時刻同期を行っても、修正さ れた時刻が正しいとは限らない。そのため、 クライアント200,200a,・・・,200mの内部時計の 刻の正確性も保証できなくなる。そのため 時刻管理サーバ100の内部時計に障害がある 判定されたときには、全てのクライアント2 00,200a,・・・,200mにおいて、署名処理を停止 る必要がある。さらに、署名管理部150は、 ステム全体において保証できる正確な時刻 不明な場合にも、全てのクライアント200,200a ,・・・,200mに対して、署名機能停止通知を送 信する。
時刻同期処理部160は、障害判定部140にお て内部時計が正常である旨の判定を受けた ライアントとの間で時刻同期処理を行う。 体的には、時刻同期処理部160は、内部時計 正常であると判定されたクライアントに対 て、その旨を通知する(この通知を、時刻同 期許可通知とする)。なお、通知先となるク イアントのIPアドレスは、クライアント情報 記憶部110を参照して判断する。そして、時刻 同期処理部160は、時刻同期許可通知を送信し たクライアントからSTSの取得要求を受け取る と、時刻管理回路107で管理されている現在の 内部時刻を参照し、その内部時刻をSTSとして クライアントに送信する。なお、時刻同期処 理部160が行うクライアントとの通信は、たと えばNTPを用いて行うことができる。
クライアント200には、時刻情報送信部210、
名処理部220、および時刻同期処理部230を有
ている。
時刻情報送信部210は、時刻管理サーバ100か
時刻情報の取得要求を受け取ると、クライ
ント200自身の内部時計を参照し、STCを取得
る。本実施の形態では、PCカード34を用いた
タイムスタンプ処理を伴うサービスを提供す
るための時刻管理であるため、PCカード34内
時計回路34aで示される時刻がSTCとして扱わ
る。時刻情報送信部210は、STCを取得すると
そのSTCと時刻情報の取得要求に含まれるSTS
を含む応答を時刻管理サーバ100に対して送
する。
署名処理部220は、クライアント200内で作 される所定のファイルに電子署名を付与す 機能を有している。署名処理部220は、ファ ルに電子署名を付与する際に、電子署名に してタイムスタンプを施す。具体的には、 名処理部220は、操作入力等によりファイル の署名を付与する処理要求を受け取ると、 作を行ったユーザの電子署名の作成をPCカ ド34に指示する。この際、署名対象のファイ ルもPCカード34に渡される。すると、PCカード 34が、ファイルの内容とそのときの時刻(STC) 応じた電子署名を生成し、ファイルに付加 る。そして、署名処理部220は、電子署名が 加されたファイルをHDD203等に格納する。以 、署名処理部220は、PCカード34を利用して、 子署名が付加されたファイルの改ざんチェ ク行うことができる。
また、署名処理部220は、時刻管理サーバ1 00から署名機能停止通知を受け取ると、署名 理を停止する。すなわち、署名処理部220は 時刻管理サーバ100によって、PCカード34内蔵 の時計回路(STC)が異常と判定された場合、署 の付加、改ざんチェック機能を利用停止す 。
時刻同期処理部230は、時刻管理サーバ100 の間で時刻の同期処理を行う。具体的には 時刻同期処理部230は、時刻管理サーバ100に る障害判定により、クライアント200の内部 計が正常である旨の通知(時刻同期許可通知 )を受け取ると、時刻管理サーバ100と時刻同 処理を行う。時刻同期処理では、まず、時 同期処理部230から時刻管理サーバ100に内部 刻(STS)の取得要求を送信する。そして、時刻 同期処理部230は、取得したSTSを用いて、内部 時計の時刻を更新する。本実施の形態では、 PCカード34に内蔵された時計回路34aが示す時 を内部時計として取り扱っている。従って 時刻同期処理部230は、時計回路34aの時刻をST Sに合わせる。
なお、図5の例では、クライアント200の機能
のみを示したが、他のクライアント200a,・・
,200mも同様の機能を有している。
図6は、クライアント情報記憶部のデータ構
造例を示す図である。クライアント情報記憶
部110には、クライアントIPアドレスと時刻情
との欄が設けられている。クライアントIP
ドレスの欄には、管理対象のクライアント
IPアドレスが予め設定されている。
時刻情報の欄には、クライアントから取 した時刻情報が格納される。なお、時刻情 の欄は、時刻情報収集開始時点で、時刻情 収集部120によって全てクリア(無効なデータ に初期化)される。
時刻情報の欄は、STS送出時刻、STCローカ 時刻、およびSTS到着時刻の欄に細分化され いる。STS送出時刻の欄には、クライアント 対して時刻情報の取得要求を送信した時刻 設定される。STCローカル時刻の欄には、取 要求に対してクライアントが応答したとき 、クライアントの内部時計の時刻が設定さ る。STS到着時刻の欄には、取得要求に対す クライアントからの応答を、時刻管理サー 100が受信した時刻が設定される。
図6の例では、IPアドレスが「192.168.1.100」 のクライアントからは時刻情報の収集が完了 しているが、IPアドレスが「192.168.1.101」のク ライアントからの時刻情報の収集は未完了で ある。
次に、時刻管理処理の全体の手順を説明す
。
図7は、時刻管理処理の手順を示すシーケン
ス図である。なお、図7では、代表的に時刻
理サーバ100とクライアント200との間の処理
示しているが、他のクライアント200a,・・・
,200mと時刻管理サーバ100との間でも、同様の
理が行われる。以下、図7に示す処理をステ
ップ番号に沿って説明する。
[ステップS11]クライアント200が起動される
[ステップS12]時刻管理サーバ100の時刻情報
信部210は、クライアント200が起動されたこ
を検知する。たとえば、時刻管理サーバ100
、管理対象のクライアントのうち、まだ時
情報を収集していないクライアントに対し
定期的に所定のコマンド(たとえば、ping)を
信し、その応答の有無によって、該当する
ライアントが起動されたか否かを検知でき
。なお、クライアント200の起動時に、クラ
アント200から時刻管理サーバ100に対して起
した旨の情報を通知することにより、時刻
理サーバ100においてクライアント200の起動
認識することもできる。
[ステップS13]時刻情報送信部210は、STS送出
刻を含む時刻情報の取得要求をクライアン
200に送信する。
[ステップS14]クライアント200では、時刻情
の取得要求を時刻情報送信部210が受信する
[ステップS15]時刻情報送信部210は、クラ アント200の内部時計(本実施の形態では、PC ード34の時計回路34a)で示される時刻をSTCロ カル時刻として、STS送出時刻とSTCローカル 刻とを含む応答を、時刻管理サーバ100に対 て送信する。
[ステップS16]時刻管理サーバ100の時刻情 収集部120は、クライアント200から送られた 答を受け取ると、その応答に含まれるSTS送 時刻、STCローカル時刻、および応答受信時 内部時計の時刻(STS到着時刻)をクライアント 情報記憶部110に格納する。
[ステップS17]平均遅延時間算出部130は、管
対象の全てのクライアントから時刻情報を
得すると、平均遅延時間を計算する。
[ステップS18]障害判定部140は、時刻管理サ
バ100およびクライアント200の内部時計が正
か否かを判断する。正常か否かを判断する
めの障害判定処理の詳細は後述する(図10等
照)
[ステップS19]障害判定部140は、障害判定に
り、時刻管理サーバ100とクライアント200と
内部時計が共に正常か否かを判断する。時
管理サーバ100とクライアント200との内部時
が共に正常であれば、処理がステップS20に
められる。少なくとも一方に異常(システム
体の信用できる時刻情報が不明な場合も含
)が検出された場合、処理がステップS22に進
められる。
[ステップS20]時刻管理サーバ100とクライ ント200との内部時計が正常であれば、時刻 期処理部160は、クライアント200に対して現 の内部時計の時刻を送信する。
[ステップS21]クライアント200の時刻同期処
部230は、時刻管理サーバ100から送られた時
に自己の内部時計を合わせる。
[ステップS22]また、時刻管理サーバ100とク
イアント200との少なくとも一方の内部時計
異常であれば、署名管理部150からクライア
トに対して署名機能停止通知を送信する。
[ステップS23]クライアント200の署名処理部22
0は、時刻同期処理部160は、クライアント200
対して現在の内部時計の時刻を送信する。
図7に示した処理が、時刻管理サーバ100と他
のクライアント200a,・・・,200mとの間でも同
に行われる。その結果、時刻管理サーバ100
よび各クライアント200,200a,・・・,200mの内部
時計が正常か否かが判定される。そして、内
部時計に障害があるクライアントでの電子署
名の処理が停止する。また、時刻管理サーバ
100の内部時計に障害があるか、あるいは正し
い時刻が不明となったときは、全てのクライ
アント200,200a,・・・,200mにおいて、電子署名
処理が停止する。
次に、時刻情報の収集処理について詳細に
明する。
図8は、時刻情報収集処理を示す図である。
図8に示すように、時刻管理サーバ100の時刻
報収集部120から各クライアント200,200a,・・
,200mへ、時刻管理サーバ100の内部時計(STS)情
を含む時刻情報の取得要求が送信される。
8では、クライアント200,200a,・・・,200mに対
て1,2,・・・,n(nは、2以上の整数)の識別番号
を付与している。そして、i番目(i=1,2,・・・,
n)のクライアントに対して時刻情報の取得要
を送信したときの時刻管理サーバ100の内部
計の値(STS送出時刻)を「Tst i」とする。
時刻情報の取得要求を受け取った各クラ アント200,200a,・・・,200mは、クライアント 身の内部時計から時刻(STCローカル時刻)を取 得し、時刻管理サーバ100に応答する。その応 答には、STS送出時刻とSTCローカル時刻が含ま れる。ここで、i番目のクライアントのSTCロ カル時刻を「Tc i」とする。
時刻管理サーバ100の時刻情報収集部120で 、クライアント200,200a,・・・,200mからの応 を受け取ると、その応答の受信時の時刻管 サーバ100の内部時計の時刻(STS到着時刻)を取 得する。ここで、i番目のクライアントから 応答の受信時のSTS到着時刻を「Tsr i」とす 。
時刻管理サーバ100の時刻情報収集部120は、S
TS送出時刻、STCローカル時刻、およびSTS到着
刻を組にして、クライアント情報記憶部110
格納する。
図9は、時刻情報収集処理の手順を示すフロ
ーチャートである。以下、図9に示す処理を
テップ番号に沿って説明する。
[ステップS31]時刻情報収集部120は、時刻 報収集開始時刻か否かを判断する。時刻情 収集開始時刻は、予め時刻情報収集部120に 定され、RAM102等の記憶媒体に記憶されてい 。たとえば、月曜日から金曜日の間の毎日7 が、時刻情報収集開始時刻として設定され 。
時刻情報収集部120は、時刻情報収集開始 刻になった場合、処理をステップS32に進め 。時刻情報収集開始時刻になっていなけれ 、ステップS31の処理が繰り返され、時刻情 収集開始時刻になるのを待つ。
[ステップS32]時刻情報収集部120は、クラ アント情報記憶部110の時刻情報の欄を初期 する。具体的には、時刻情報収集部120は、 ライアント情報記憶部110の時刻情報の欄の てに、無効なデータを設定する。
[ステップS33]時刻情報収集部120は、処理 象クライアントが起動されたか否かを確認 る。たとえば、時刻情報収集部120は、クラ アント情報記憶部110のクライアントIPアドレ スの欄に登録されているIPアドレスのうち、 刻情報が未取得のクライアントのIPアドレ に対して、ネットワークの疎通を確認する マンド(ping)をマルチキャストで送信する。 刻情報収集部120は、送信したコマンドに対 て応答があった場合、管理対象のクライア トが起動されたと判断することができる。
[ステップS34]時刻情報収集部120は、時刻 報を未取得のクライアントが新たに起動さ たか否かを判断する。新たにクライアント 起動された場合、処理がステップS35に進め れる。新たに起動されたクライアントが無 場合、処理がステップS33に進められる。
[ステップS35]時刻情報収集部120は、新たに
動されたクライアントに対して、時刻情報
取得要求を送信する。
[ステップS36]時刻情報収集部120は、時刻情
の取得要求に対するクライアントからの応
により、クライアントの時刻情報(STCローカ
時刻)を取得する。
[ステップS37]時刻情報収集部120は、クラ アント情報記憶部110内の時刻情報の欄に、 たに起動されたクライアントのIPアドレスに 対応付けて時刻情報(STS発信時刻、STCローカ 時刻、STS到着時刻)を登録する。
[ステップS38]時刻情報収集部120は、全て 管理対象のクライアントから時刻情報を収 したか否かを判断する。全ての管理対象の ライアントからの時刻情報の収集が完了し いれば、処理が終了する。時刻情報の収集 完了していないクライアントがあれば、処 がステップS33に進められる。
このようにして、各クライアント200,200a,・ ・,200mから時刻情報を収集することができ 。このようにして収集した時刻情報に基づ て、平均遅延時間算出部130は以下の式によ 平均遅延時間τ AVE を算出する。
次に、障害判定部140が、時刻管理サーバ100
各クライアント200,200a,・・・,200mの内部時
が正常か否かを判定する。
障害判定部140は、STCローカル時刻を平均遅
時間τ AVE
で補正する。そして、障害判定部140は、全て
のクライアントに関して、補正されたSTCロー
カル時刻とSTS到着時刻との差(誤差)が、所定
閾値ε以下でれば、時刻管理サーバ100およ
全てのクライアント200,200a,・・・,200mの内部
時計が正常であると判定する。具体的には、
以下の条件が満たされたときには、各コンピ
ュータの内部時計が正常と判定される。
また、障害判定部140は、全てのクライア トに関して、補正されたSTCローカル時刻とS TS到着時刻との差(誤差)が、所定の閾値εを超 えていれば、時刻管理サーバ100の内部時計が 異常であると判定する。具体的には、以下の 条件が満たされたときには、各コンピュータ の内部時計が正常と判定される。
さらに、障害判定部140は、所定の割合(た とえば、数パーセント)以下のクライアント 関して、補正されたSTCローカル時刻とSTS到 時刻との差(誤差)が、所定の閾値εを超えて れば、誤差が閾値εを超えたクライアント 内部時計が異常であると判定する。具体的 は、以下の条件が満たされたときには、各 ンピュータの内部時計が正常と判定される
なお、式(4)における「Tsr k」および「Tc k
」の「k」は、1以上n以下の整数である。
次に、障害判定部140における障害判定処理
詳細に説明する。
図10は、障害判定処理の手順を示すフロ チャートである。以下、図10に示す処理をス テップ番号に沿って説明する。なお、以下の 処理は、平均遅延時間算出部130から平均遅延 時間を受け取ったときに実行される。
[ステップS41]障害判定部140は、クライアン
情報記憶部110から未処理のクライアントを1
選択する。
[ステップS42]障害判定部140は、選択したク
イアントのSTCローカル時刻を平均遅延時間
補正する。具体的には、STCローカル時刻に
均遅延時間を加算する。
[ステップS43]障害判定部140は、補正され STCローカル時刻と、対応するSTS到着時刻と 差を計算し、時刻管理サーバ100と該当する ライアントとの内部時刻の誤差とする。
[ステップS44]障害判定部140は、予め設定 れている閾値と、ステップS43で算出した誤 とを比較する。そして、障害判定部140は、 較結果をクライアントの識別情報(たとえば IPアドレス)に対応付けてRAM102内に記憶する 比較結果は、誤差が閾値以下か、あるいは 差が閾値を超えているかの二通りである。
[ステップS45]障害判定部140は、監視対象 全てのクライアントを選択したか否かを判 する。監視対象の全てのクライアントを選 した場合、処理がステップS46に進められる 未選択のクライアントがある場合、処理が テップS41に進められる。
[ステップS46]障害判定部140は、ステップS4 4での比較結果に基づいて、各クライアント 誤差が全て閾値以下か否かを判断する。全 のクライアントに関する誤差が閾値以下で れば、処理がステップS47に進められる。少 くとも1台のクライアントの誤差が閾値を超 ていれば、処理がステップS48に進められる
[ステップS47]障害判定部140は、クライア トの誤差が全て閾値以下の場合、時刻管理 ーバ100および監視対象の全てのクライアン の内部時計が正常であると判定する。その 、処理が終了する。
[ステップS48]障害判定部140は、少なくと 1台のクライアントの誤差が閾値を超えてい 場合、全てのクライアントの誤差が閾値を えているか否かを判断する。全てのクライ ントの誤差が閾値を超えている場合、処理 ステップS49に進められる。少なくとも1台の クライアントの誤差が閾値以下であれば、処 理がステップS50に進められる。
[ステップS49]障害判定部140は、全てのクラ
アントの誤差が閾値を超えている場合、サ
バの内部時計に障害があると判定する。そ
後、処理が終了する。
[ステップS50]障害判定部140は、少なくとも1
のクライアントの誤差が閾値以下であれる
合、誤差が閾値を超えるクライアント数が
定の割合以下か否かを判断する。所定の割
を超えるクライアントにおいて誤差が閾値
超えていた場合、処理がステップS51に進め
れる。誤差が閾値を超えたクライアント数
所定の割合以下の場合、処理がステップS52
進められる。
[ステップS51]障害判定部140は、誤差が閾 を超えるクライアント数が所定の割合を超 る場合、システム内での正確な時刻が不明 判定する。その後、処理が終了する。
[ステップS52]障害判定部140は、誤差が閾 を超えるクライアント数が所定の割合以下 場合、誤差が閾値を超えたクライアントの 部時計を異常と判定する。その後、処理が 了する。その後、処理が終了する。
以上のようにして、異常のある内部時計 有するコンピュータを的確に検出し、サー スを停止させることができる。その結果、 った時刻がタイムスタンプとして含まれた 子署名が生成されることを未然に防止でき 。
ところで、上記実施の形態では、平均遅 時間によってSTCローカル時刻を補正してい 。これは、時刻管理サーバ100とクライアン 200,200a,・・・,200mとの間の通信品質が良好 あることが前提となっている。たとえば、Vo IP(Voice over IP)に関しては、ネットワーク全 の遅延が150ms未満であれば、加入電話並みの 通話品質を保つことができる。本実施の形態 のネットワークも、原則として通信の遅延は 150ms未満であるものとする。このように、通 の遅延がある程度以下に抑えられているネ トワーク環境であれば、全てのクライアン について計算した遅延時間の平均を取った が現実の遅延時間に近くなる。
なお、上記の処理機能は、コンピュータ よって実現することができる。その場合、 刻管理サーバおよびクライアントが有すべ 機能の処理内容を記述したプログラムが提 される。そのプログラムをコンピュータで 行することにより、上記処理機能がコンピ ータ上で実現される。処理内容を記述した ログラムは、コンピュータで読み取り可能 記録媒体に記録しておくことができる。コ ピュータで読み取り可能な記録媒体として 、磁気記録装置、光ディスク、光磁気記録 体、半導体メモリなどがある。磁気記録装 には、ハードディスク装置(HDD)、フレキシ ルディスク(FD)、磁気テープなどがある。光 ィスクには、DVD(Digital Versatile Disc)、DVD-RAM CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordabl e)/RW(ReWritable)などがある。光磁気記録媒体に 、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、たと ば、そのプログラムが記録されたDVD、CD-ROM どの可搬型記録媒体が販売される。また、 ログラムをサーバコンピュータの記憶装置 格納しておき、ネットワークを介して、サ バコンピュータから他のコンピュータにそ プログラムを転送することもできる。
プログラムを実行するコンピュータは、 とえば、可搬型記録媒体に記録されたプロ ラムもしくはサーバコンピュータから転送 れたプログラムを、自己の記憶装置に格納 る。そして、コンピュータは、自己の記憶 置からプログラムを読み取り、プログラム 従った処理を実行する。なお、コンピュー は、可搬型記録媒体から直接プログラムを み取り、そのプログラムに従った処理を実 することもできる。また、コンピュータは サーバコンピュータからプログラムが転送 れる毎に、逐次、受け取ったプログラムに った処理を実行することもできる。
なお、本発明は、上述の実施の形態にのみ
定されるものではなく、本発明の要旨を逸
しない範囲内において種々の変更を加える
とができる。
上記については単に本発明の原理を示すも
である。さらに、多数の変形、変更が当業
にとって可能であり、本発明は上記に示し
説明した正確な構成および応用例に限定さ
るものではなく、対応するすべての変形例
よび均等物は、添付の請求項およびその均
物による本発明の範囲とみなされる。
1 時刻管理サーバ
1a サーバ側内部時計
1b クライアント情報記憶手段
1c 時刻情報収集手段
1d 遅延時間算出手段
1e 障害検出手段
1f 時刻同期手段
1g サービス停止指示手段
2,3,4 クライアント
Next Patent: CONTROLLER OF ELECTRIC VEHICLE
