IoT機器にSNTPクライアント機能を内蔵する困難さを考えてみる
こんばんは。一昨日の続きになります。IoT機器に内蔵されている時計機能の時刻同期について書きました。(追記:上手くまとまりきってないので、後日リライトしてみます。<(_ _)>)
karasuma-kitaoji.hatenablog.com
NHK-FMの時報も標準電波受信もつらいとなると、GPS受信になるのでしょうが、コストが跳ね上がるのではないかという問題もありそうです。
ネット接続で時刻同期となると、やはりSNTPプロトコル一択でしょうね。そうなると、IoT機器にSNTPクライアント機能を内蔵させることになります。参照先NTPサーバをntp.nict.jpのようにホスト名で設定するとなると、DNSサーバの設定も必要になります。これはDHCPクライアント機能を持たせればいいのですが、LAN側にDHCPサーバ機能を持った機器が必要になります。いずれにせよ、IoT機器側に機能追加が必要になります。悩ましい問題でもありますね。
仮にDHCPクライアント機能を持たせられないとした場合、固定IPアドレス設定になります。DNSサーバとNTPサーバも別途設定することになります。設定項目を減らすためにDNSサーバを8.8.8.8、NTPサーバをntp.nict.jp固定にしてROMに焼きつけるというのはこれらの値が変わった際に対応出来ません。内部NTPサーバを指定するためにホスト名記述が出来ないことになります。いろいろ問題が多いですよね…。
DNSクエリを投げるためのソフトウエア対応がIoT機器側で出来ないとなると、参照先のNTPサーバをIPアドレス指定せざるを得なくなります。NTPサーバのIPアドレスが変わった場合に時刻同期出来なくなりますし、ROMに焼き付けたりすると、某社の無線LAN中継器のようなことが起きてしまいますしね…。
LAN内のSNTPサーバに問い合わせるようにして、トラフィックを抑えたいということを考えると、何らかのソフトウエア的追加対応は必要になります。IoT機器に追加リソースをどこまで割くことが出来るかが焦点になりそうです。時刻同期を行うためにはどうすれば最小限のリソースで対応出来るのかを真剣に検討する必要がありそうです。