Hi,

I'm wondering how would an ideal support for pools implemented in NTP
clients look like and how should it be configured for pool.ntp.org to
allow vendors to use it in their default configuration.

The current practice seems to be that three or four servers are
specified in the client's configuration file by the {0,1,2,3}* names,
the client resolves the names on start, adds only one source for each
name and sticks to the addresses until it's restarted.

The obvious problem is that the servers can be removed from the pool
at any time or be unreachable for other reasons. Until the clients are
restarted they are missing time sources which reduces the reliability
of the timekeeping and the servers are still receiving NTP traffic
even if they have stopped the service long time ago.

Some NTP implementations now have special directives that can be used
to specify a pool of servers and allow replacement of unreachable
sources, but it's not clear to me if they are ready for a large-scale
deployment.

Here are some requirements that I thought would be important to not
waste the resources of the pool.ntp.org project and some questions
on details:

- the number of concurrently used servers is limited
  - should it be a fixed configurable limit? per pool name or global?
  - can the client use more sources than number of addresses returned
    in one DNS query?
  - how should the client find IPv6 servers? they are currently returned
    only for the 2*pool.ntp.org name (4 IPv4 + 4 IPv6 addresses)

- the client replaces unreachable pool servers with newly resolved
  addresses
  - should be the initial polling interval for the new server same as
    was used by the replaced source to avoid frequent polling when the
    sources are replaced frequently? (e.g. when NTP traffic is
    blocked)
  - can be sources marked as falsetickers replaced too?
  - should the client also check if reachable servers are still in
    the pool and replace them if not? any recommendations on that?

- the client doesn't make DNS requests too frequently
  - should that be based on the DNS TTL (assuming the client can get
    that information)?
  - should there be a fixed minimum interval? or an exponentially
    increasing interval?

What do you think?

Thanks,

-- 
Miroslav Lichvar
_______________________________________________
pool mailing list
[email protected]
http://lists.ntp.org/listinfo/pool

Reply via email to