[time-nuts] Timing performance of servers

Sarah White kuzetsa at gmail.com
Sat Oct 27 19:06:31 UTC 2012


On 10/27/2012 9:47 AM, Magnus Danielson wrote:
> Dear Edgardo,
> 
> On 10/25/2012 02:04 AM, Edgardo Molina wrote:
>> Dear Mangus,
>>
>> I will allow myself to share a comment on your thread.
>>
>> Timing on windows servers is not one of their plausible strengths.
> 
> This comes as no surprise, but I wanted some hard fact to assist in
> raising the awareness.
> 
> The reason I raised it here is that I didn't have the hard facts at hand
> when I needed it, and I trust the time-nuts to have a diversity of facts
> laying around. :)
> 
>> It was clearly pointed out during the SIM conference last week at CENAM.
>> In fact there was an interesting discussion about the drawbacks when
>> using NTP Windows based servers and all kind of NTP appliances compared
>> to full size Linux based NTP servers.
> 
> Is there a presentation or even a paper to illustrate this?
> 
>> The example of what NIST is using nationwide for their servers set an
>> example of good server hardware and linux to provide the nation's NTP
>> pulse.
> 
> Interesting. I have however pointed out that a downside to their
> strategy is that wide-spread set of servers assist to keep network
> effects down. In Sweden SP (NMI) and NETNOD operates redundant servers
> in 4 different locations, at SP and at the three main internet
> exchange-points.
> 
>> I haven't done any experiments with Windows for NTP services, still it
>> could be interesting as to set a benchmark while comparing it to the
>> Linux boxes.
> 
> My gut feeling says that an undisciplined Windows can be anywhere,
> configuring a server for the SNTP brings it into decent shape for most
> workstation usages, shifting over to NTP is needed for many applications
> but even that won't compete with a Linux or BSD box.
> 
> Being able to show that in a paper is better than arm-waving, even if
> most people here most probably would believe me without much fact.
> 
>> I am currently trying out the Domain Time II NTP client from
>> Symmetricom for the thesis. I have to come back to Symmetricom's
>> Miguel García to decide on purchasing a Domain Time II NTP client kit.
>> How is the Mainberg NTP client different from the Symmetricom version?
>> Have you tried both?
> 
> I haven't tried either, as I rarely operate a Windows box.
> 
>> If not I will be more than glad to help comparing both if you can help
>> me pointing out the source for a demo version of Mainberg's software.
> 
> Meinberg's NTP is available in fullblown version from their website:
> http://www.meinberg.de/german/sw/ntp.htm
> (the link to that page is available on their front page under the
> dubious and hard to grasp title "NTP Software Sownload")
> 
> What they have done is essentially port the ntp.org NTP to Windows and
> gift-wrapped it a little in terms of installation.
> 
>> Maybe then an objective review of both clients will be in order,
>> I will be more than glad to do it or to test them against Windows
>> NTP services, appliances and/or Linux NTP boxes. I have at least an
>> example of those at the office.
> 
> Actually, doing this kind of measurement could be illustrative that your
> time may be quite dispersed. It helps to raise the question of what time
> is it really, how could I improve it and can there be an approval mark
> on the time I have.
> 
>>             -13
>> Just my  2x10    cents.
> 
> That's a large frequency deviation among time-nuts. :)
> 
>> Regards to you and the group,
> 
> Many thanks!
> 
> Cheers,
> Magnus

1) Meinberg technically hasn't done any porting, it's an installer for
ntp binaries themselves, which are simply compiled for a target other
than bsd / solaris / linux. There aren't any "under the hood" changes
required. I could just as easily compile a windows binary using:

1a) The copy of gcc shipped by microsoft in the "services for unix
applications / SUA" SDK.

1b) Or the one gentoo provides when using gentoo prefix (gentoo's own
package manager can be run "natively" on windows via microsoft's
compliant layer AKA interix)

1c) Or even bootstrap, compile my own windows-native posix-type gcc
compiler (newer version or otherwise), and build ntp from source with my
own compiler.

1d) alternatively, do what meinberg did, using a mingw gcc compile
target (mingw gcc compiler adjusts dependencies slightly by basically
just building against microsoft's C libraries and APIs which are already
installed because so mucch of the windows OS already needs them to be in
place)

1e) cygwin has been working well for many things for more than 10 years,
providing their own

1f) potentially, the NTP source itself compiles unmodified on some
version of microsoft's visual C compiler, or some other windows compiler

1x) In fact, other than compiling ntp from source, meinberg really only
made things more convenient by providing an installer and a separate
monitor tool. The underlying optimized code for synchronization of time
via NTP protocol comes from the open-source code you can get from ntp.org.

You can just as easily use meinberg's installer, and then drop-in a
different binary provided by someone other than meinberg (or compiled
yourself) ----> see reference: http://www.satsignal.eu/ntp/setup.html

2) For any version of NTP compiled from the ntp.org official source
(such as above) there is no distinction between client vs server.
Depending on settings in: ntp.conf ...

2a) often, the stratum 1 pool servers are peered with other stratum 1
servers (same for stratum 2) ... If any ntp server detects better time
from a peer, it will lower it's own stratum and treat the better peer as
a new synchronization source. (such as a failed refclock on stratum 1, etc.)

2b) Synchronization only mode, basically you are the closing off
yourself to traffic, will not share time with ntp running on downstream
stratum, don't have any peers: In this use case, even a local refclock
(stratum 0) is marked using a "server" line in the ntp.conf

2c) not using the reference implementation built from ntp.org source...
things stated in 2a and 2b no longer apply... consumer equipment such as
wifi routers, or even commercial standalone time servers often implement
ntp protocol ... however well or poorly the manufacturer chooses to do
so. Meinberg's ntp really is based on the source from ntp.org

-------

Sorry to post such a long thing on the subject. Most of the work I do
with accurate time involves network synchronization.

Really, the NTP / SNTP protocol isn't nearly as high performance as
"Precision time protocol" --- PTP is the latest technology to come out
of the "network time foundation", and NTP protocol has simply been
around longer and as such, it is better known:

http://networktimefoundation.org/projects/

regards,
Sarah White



More information about the time-nuts mailing list