インターネットの立ち上がりの時期は、まだまだ一部の研究者の道具という時代だった。この頃は、ネットでつながった仲間が、いろんなリソースを出し合って、より高度な、より便利なネットワーク機能を実現していこうという機運があった。開発したソフトウエアツールやデバイスドライバを公開したり、インターネット接続の相談に乗ったり、各研究者、各研究機関が、提供できるものを出し合っていた時代であった。
私の所属する研究所は、これらの恩恵にあずかっているばかりであまり貢献ができていない、さて何か喜ばれることはないか、と考えたとき、まっさきに思い浮かんだのは時刻の供給。最初は、Web
で時刻を表示するページを掲載した。当時は、まだ電波時計も携帯電話もない時代で、時刻を知るには有料の時報サービスに電話することも多かったので、無料でいつも時刻が見られると喜ばれた。時刻の表示には、当時使われ始めたばかりの
JavaScript を使い、ブラウザ側で時刻表示が自走する仕組みとした。当時は、デバック環境もなかったため、短いプログラムではあったが、その開発はなかなか大変だった。この
Web 時刻表示は、その後、JSONP 方式、さらには Ajax 方式と発展し、現在も提供されている。(https://www.nict.go.jp/JST/JST5.html)
しばらくすると、NTPによる時刻供給への要望も感じるようになってきた。国内でもNTPサーバを公開するサイトもパラパラと出現していたが、それらの時刻源の確度はさまざまで、信頼して良いのか疑問符が付く。この頃、アメリカのNTPサービス(Wisconsin Internet time server)で、過負荷によるアクセス不能事件が発生した。これは、家庭用ルータの時刻合わせに、その時刻サーバが IP アドレス直打ちで指定され、さらに時刻情報が得られなかった場合には、1秒間隔で無限にアクセスを試みるという、とんでもない実装がされていた。あわれサーバは過負荷でサービス不能に陥り、それによって、大量のルータから1秒ごとにパケットが飛んできて、収拾がつかなくなった。そういった例もあり、公的な機関で ntp サービスを実施するのは、なかなかリスクが高い。我々の研究所でNTPサービスを実施しようという動きもあったが、こういったリスクの問題、運用コストの問題、セキュリティー攻撃に対する対策など、問題は山積していた。