ズブさんの
アイデア天体
写真館

もくじ

天文台のサーバーと時刻(まがたま72号より)

この文章は、「まがたま72号」(2008年5月発行)に書いた記事を一部なおしたものです。「またがま」とは、私が所属する天文同好会、さいたま☆天文同好会(旧SPGAS)の会報です。なお、さいたま☆天文同好会のサイト内にある「webまがたま」では、まがたま49号(2000年12月発行)以後の記事の一部が紹介されています。

パソコンを使う人はたいてい知っていると思いますが、コンピュータは内部に時計を持っています。この内部時計の時刻を使って、例えば「毎日○時になったらデータをバックアップする」などといった動作も可能です。ところがこの内部時計、あまり精度の良いものではありません。しかしインターネットの時代です。外部のサーバーから時刻情報を取得して時刻合わせをするという仕組みがあります。

私の職場では諸般の事情によりこの“時刻合わせをするための通信”を、インターネットを通してやり取りすることが許可されていませんでした。しかし、やはり諸般の事情で、コンピュータの内部時計の時刻を自動的に修正できるようにしたいと思いました。そこで、“ホームページを見るための通信”を使って時刻合わせをする方法を考えました。

ここで、サーバーに関する説明を簡単にしておきます。「サーバー」というのは文字通り何らかの「サービス」を提供するものです。いわゆるホームページを見せるサーバーは、一般に「Webサーバー」などと呼ばれています。また時刻情報を提供するサーバーは「NTPサーバー」と呼ばれています。NTPサーバーはもともと時刻情報を提供するのが目的ですから、正しい時刻情報をもらえることが期待できます。Webサーバーは、ホームページを見せることが本来の役割ですが、サーバーが持っている内部時計の現在時刻も一緒に教えてくれます。ですが、時刻情報を提供することが役割ではないので、その時刻が正しいという保証がありません。

このような仕組みになっているので、私は、

おそらくきちんと管理されているWebサーバーならば、正しい時刻を保持しているものがたくさんあるだろう。一方で時刻がずれているサーバーもあるだろう。ならば複数のWebサーバーから時刻情報を取得して、平均と分散を計算して時刻修正をするようにしたらより正確に時刻合わせができるのではないか。

と、考えました。そして、複数のWebサーバーから時刻情報を取得して時刻合わせをするプログラムを作りました。

さて実際にこのプログラムを使う場合、どのサーバーから時刻情報をもらったらよいのでしょうか。「きちんと時刻合わせをしていそうな機関」として頭に浮かんだのが「天文台」だったというのは、やはり私が天文屋だということなのかもしれません。とにかく、いくつかの天文台や大学、その他国立の研究機関などを対象にして時刻情報の取得をしました。そしてあれこれ試してみて分かったことは・・・。

大半のWebサーバーはよく管理されているようで、ほとんどピッタリの時刻を示していました。自分のパソコンの時刻を正しく合わせた直後にこのプログラムで様々な機関のWebサーバーとの時刻差を調べると、「差が0秒」になるサーバーばかりだったのです。

そんな中、いつ調べても時刻のずれが大きいサーバーが3つほどありました。と言っても数秒から大きくてもせいぜい2分程度のずれですが、多くのサーバーがいつでもほぼピッタリあっているのに比べると、ずれが大きいと言わざるをえません。3つのうち2つは天文台のWebサーバーでした。一つは○立天文台のWebサーバー、もうひとつは美○天文台のWebサーバーでした。残る一つ、天文台でないのは、東○大学のWebサーバーでした。

きっと天体観測のときには高い精度で時刻も合わせているであろう天文台が、Webサーバーの時刻をあまり気にしていないのは、必要な労力を正しく集中させているからなのでしょうか? 意外なような、なんとなく納得できてしまうような、そんな印象を受けました。

なお、このプログラムを作ったのは2007年の秋ごろです。そのときに上記のような結果が得られたのですが、まがたまの原稿を書くにあたって再度いろいろなサーバーについて時刻情報を調べてみました。しかし、この3つのサーバーの時刻のずれが大きいという結果は同じでした。下の図は、その結果を示したものです。

いろいろな機関のWebサーバーで時刻修正を実施した結果 いろいろな機関のWebサーバーで時刻修正を実施した結果

アップロード:2008.6.11