c++ - How good is NTP for distributed time synchronization? -
how accurate ntp keeping set of servers time synchronized?
i'm writing service requires set of servers (some acting clients, servers) synchronized second level granularity. i'm wondering if ntp best thing use, or if there's better?
should run ntp server on 1 of them, , have others use source? other recommendations/horror stories ntp?
all servers linux.
update: service levels:
i'd 1 server accurate utc(second level, not microsecond or such), , i'd other servers same ts 1 server, regardless of whether accurate utc or not (events received 1 server multiple locations @ various intervals, require events @ same "relative" ts. no, can't have main server ts events come in, because that'll require storing offset (when event happened , when logged, requires whole lot of work), , complicates matters needlessly.
i've set 1 server stratum 2 timeserver, using startum 1 gps sources servers in ntp.conf, on other servers, i've set server sole server in ntp.conf.
i hope enough. thank you!
first off, might have @ wikipedia ntp page.
basically, start (i preach regularly) state service levels want might be. need accurate utc? tolerance? is, need know time is?
or want precise synchronization among systems?
how many machines talking about, , geographically distributed?
some options:
accurate time: set @ least 1 server stratum 2, , have reference @ least 3 stratum 1 servers. if have lots of servers, make more one; more reliability having no single point of failure.
precise synchronization: set ntp peers.
accurate time , geographical distribution: more 1 stratum 2 server, above, 1 "near" each cluster; can peer @ stratum 2 improve voting.
i don't think there's known better ntp that's available.
update question mentions ptp precision time protocol (ieee 1588) excellent precise synchronization, depends on multicast.
also, it's worth considering getting gps time source.
Comments
Post a Comment