[ntp:questions] Can or should the NTP protocol eventually serve timezone data?

Rob nomail at example.com
Thu Jun 18 09:40:04 UTC 2009

David J Taylor <david-taylor at blueyonder.not-this-part.nor-this.co.uk.invalid> wrote:
> Rob wrote:
> []
>> So your standpoint is that every system builder who wants to do
>> such localization should be on their own, providing their own update
>> mechanism, and there should not be a universal update mechanism for
>> timezone updates that is neutral to operating system?
> Initially, using something like NTP to distribute the information sounds 
> to have its good points, and some drawbacks.  How much information would 
> be involved - how many extra bytes per day would be needed?  How often 
> would the data be sent?

A compiled timezone info file is about 2-3 KB in size.
However, it might be that it is not the best option to send it in compiled
form, because this is dependent on issues like wordlength and byteorder.
A similar format but sent as XML could be better.  But it would of course
be several times bigger.

How often it needs to be sent is difficult to say.  Some countries change
those things, others don't.  You may need to send it to newly installed
systems or to devices that don't keep it in permanent storage.

> Having said that, I do feel that it's an OS issue, and not an NTP issue, 
> and if the data is readily available in the correct format, why not just 
> retrieve it with FTP or HTTP?  Bu then, how does one ensure that the 
> distribution workload is distributed amongst many servers, rather than 
> having all the world's PCs querying one server?  Make every NTP server 
> optionally an HTTP server on port 123?

It may well be the best option to use one of the available distributed
HTTP servers (like Google, Akamaitech and others offer) to host a directory
with the timezone files.
Just a fetch of a wellknown URL (like http://zoneinfo.ntp.org/zonename)
would be enough.  The fetch can be done with if-modified-since and the
timestamp of the version you already have.  This can be done e.g. once
a day.
Then no changes to NTP are required and the servers sending the data
are already setup to do such things efficiently.

Of course, it could also be implemented as a new request in NTP.  But that
would mean that servers that support it need to have a cache of the
uptodate zone info files.  Which they presumably update by getting them
from other servers in a tree with the authority at the top.

More information about the questions mailing list