今年の7月1日は「うるう秒」として、24時間より1秒だけ長くなる。NTTの時報では、午前8時59分59秒と午前9時00分00秒の間に1秒挿入することでカバーするようだが、スマートフォンではどのように時間が合わせられるのだろうか?

内蔵時計は「NITZ」で合わせる

ほとんどの人は、そもそもスマートフォンで時刻調整をしたことがないのではないだろうか。その仕組みはスマートフォンの時刻設定を開いてみるとわかる。通常は「自動設定」にチェックマークが付いているはずだ。この自動設定のおかげで、スマートフォンは非常に正確な時間を維持できている。

iOSもAndroidも、基本的に時計の調整は自動で行われる。電源を入れてから定期的にチェックがかかる仕組みだ

時刻の自動設定というと、パソコン用OSにも付いているが、パソコン用OSの場合は「NTP」(Network Time Protocol)という仕組みを使って時間を合わせている。NTPでは、電波時計などで非常に正確に合わせられた時計と連動したサーバー(NTPサーバー)に問い合わせ、その時のネットの伝達速度の差を考慮してできるだけ正確な時間に合わせる。

OS Xの「日付と時刻」ではNTPサーバーを参照している。ちなみに初期設定されているアップルのNTPサーバーより、独立行政法人情報通信研究機構(NICT)の公開NTPサービスなど、国内のサーバーを指定したほうがより正確な時刻に設定できる

それでは携帯電話やスマートフォンではどうするかというと、「NITZ」(Network Identity and Time Zone)という仕組みを使う。NITZではキャリアが基地局から電波を通じて現在日時とタイムゾーン、DST(夏時間などの時間調整ぶん)といった情報を提供する仕組みだ。以前(2011年半ば頃まで)はソフトバンクはNITZを提供していなかったのだが、現在は3大キャリアは全部NITZに対応している。iOSもAndroidも、基本的にはNITZを使っていると考えればいい。

NITZは反射などで複雑に伝達し、遅延のあるネットワークを通じて情報を配信するため、原子時計や電波時計のような正確性は持たず、あくまで秒単位での正確性が保証されるレベルだが、SIMカードを挿して電源を入れたときから定期的にチェックして調整するため、全体としてはかなり高い正確性を維持できる。

ちなみにアップルが正確性をやたらと喧伝しているApple WatchもiPhoneの時計をチェックして時刻を調整しているため、iPhoneが近くにある限り時計は狂わないが、iPhoneと通信できない状態にした場合はその限りではない(もっとも、気になるほど時計がズレる前にバッテリーが切れるだろうが)。

NITZを扱っていなかった時代のソフトバンクでは、iPhoneの時計はiTunesで同期するパソコンから取得していた。このため一度ズレると、手動で調整するか、再度パソコンと同期するまでズレたままだった。また、筆者も確認は取れていないのだが、古い(Android 2.x時代の)Android端末ではそもそもNITZを参照していないものもあったようだ。