Time sync with milliseconds with Windows XP

  • Follow


We have some servers that are sending data to each other 10 times per
second. They need to be time synced and my question is if the NTP
client in Windows are sufficient exact for the application.

If no, how can I get time sync with milliseconds in Windows XP?

0
Reply olm (12) 9/6/2005 12:52:44 PM

And if the computers a under an Active Directory domain that are used
to do the sync, is it the same with the precision?

0
Reply Magnus 9/6/2005 1:03:37 PM


At 5:52 AM -0700 2005-09-06, Magnus wrote:

>  We have some servers that are sending data to each other 10 times per
>  second. They need to be time synced and my question is if the NTP
>  client in Windows are sufficient exact for the application.
>
>  If no, how can I get time sync with milliseconds in Windows XP?

	To the single millisecond level?  You can't.  Beyond typical 
hardware configuration problems, the OS itself loses too many 
interrupts on a busy machine.  If the machine is doing absolutely 
nothing else, and you've configured the hardware correctly, you might 
get it into the single millisecond range, but that kind of defeats 
your purpose.

	If the machine is doing anything at all, even with the hardware 
configured correctly, the best you can hope for is to get accuracy in 
the 10-100ms range, most likely closer to the middle or top end of 
that range.

	And that's with "real" NTP on the machine.  Running w32time or 
whatever crap Microsoft ships, you're not going to get anywhere close 
to that.

-- 
Brad Knowles, <brad@stop.mail-abuse.org>

"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."

     -- Benjamin Franklin (1706-1790), reply of the Pennsylvania
     Assembly to the Governor, November 11, 1755

   SAGE member since 1995.  See <http://www.sage.org/> for more info.
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply brad 9/6/2005 1:06:26 PM

Magnus wrote:
> We have some servers that are sending data to each other 10 times per
> second. They need to be time synced and my question is if the NTP
> client in Windows are sufficient exact for the application.
>
> If no, how can I get time sync with milliseconds in Windows XP?

I see well within 100ms under normal circumstances:

  http://www.david-taylor.myby.co.uk/mrtg/daily_ntp.html

> And if the computers a under an Active Directory domain that are
> used to do the sync, is it the same with the precision?

No idea.

David 


0
Reply David 9/6/2005 1:23:52 PM

At 6:03 AM -0700 2005-09-06, Magnus wrote:

>  And if the computers a under an Active Directory domain that are used
>  to do the sync, is it the same with the precision?

	If you use Active Directory to sync them, then they're going to 
have the same problems as if you had used w32time.  It's the same 
underlying code, and has the same problems.

	The best time sync you can get is from "real" NTP, and that's 
only going to be able to do so much under Windows.

-- 
Brad Knowles, <brad@stop.mail-abuse.org>

"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."

     -- Benjamin Franklin (1706-1790), reply of the Pennsylvania
     Assembly to the Governor, November 11, 1755

   SAGE member since 1995.  See <http://www.sage.org/> for more info.
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply brad 9/6/2005 1:26:28 PM

The data are transferred with a frequency of 10 Hz so I need a
precision of 100 ms (of course). And I can accept 500 ms. Can w32time
handle that?

If w32time isn't so good, what do you recommend?

0
Reply Magnus 9/6/2005 1:28:16 PM

Magnus wrote:
> The data are transferred with a frequency of 10 Hz so I need a
> precision of 100 ms (of course). And I can accept 500 ms. Can w32time
> handle that?
>
> If w32time isn't so good, what do you recommend?

These are NTP ports you can try, which should give the best performance 
possible:

  http://norloff.org/ntp/

  http://www.meinberg.de/english/sw/ntp.htm

  http://ntp.isc.org/bin/view/Main/ExternalTimeRelatedLinks

If serialisation of the data is critical, then perhaps you need to look at 
timestamping the data from a single source of time?

David 


0
Reply David 9/6/2005 1:41:05 PM

At 6:28 AM -0700 2005-09-06, Magnus wrote:

>  The data are transferred with a frequency of 10 Hz so I need a
>  precision of 100 ms (of course). And I can accept 500 ms. Can w32time
>  handle that?

	It might be able to, but then again it might not.

>  If w32time isn't so good, what do you recommend?

	I recommend "real" NTP.  E.g., the Reference Implementation, 
available via <http://ntp.isc.org/bin/view/Main/SoftwareDownloads>.

-- 
Brad Knowles, <brad@stop.mail-abuse.org>

"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."

     -- Benjamin Franklin (1706-1790), reply of the Pennsylvania
     Assembly to the Governor, November 11, 1755

   SAGE member since 1995.  See <http://www.sage.org/> for more info.
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply brad 9/6/2005 1:56:19 PM

How bad is w32Time? What precision can I expect if I use it?

0
Reply Magnus 9/6/2005 2:03:04 PM

In article <p06200779bf434442c598@[10.0.1.210]>,
Brad Knowles <brad@stop.mail-abuse.org> wrote:
>At 5:52 AM -0700 2005-09-06, Magnus wrote:
>
>>  We have some servers that are sending data to each other 10 times per
>>  second. They need to be time synced and my question is if the NTP
>>  client in Windows are sufficient exact for the application.
>>
>>  If no, how can I get time sync with milliseconds in Windows XP?
>
>	To the single millisecond level?  You can't.  Beyond typical 
>hardware configuration problems, the OS itself loses too many 
>interrupts on a busy machine.  If the machine is doing absolutely 
>nothing else, and you've configured the hardware correctly, you might 
>get it into the single millisecond range, but that kind of defeats 
>your purpose.
>
>	If the machine is doing anything at all, even with the hardware 
>configured correctly, the best you can hope for is to get accuracy in 
>the 10-100ms range, most likely closer to the middle or top end of 
>that range.
>
>	And that's with "real" NTP on the machine.  Running w32time or 
>whatever crap Microsoft ships, you're not going to get anywhere close 
>to that.
>


What about getting a WWV receiver that generates a PPS serial signal
and usuing a Y cable to connect it to both machines running real ntp.

This depends, of course, on being in a location where you can get a
WWV (or GPS) signal and have some money to spend on a receiver. 


-- 
a d y k e s @ p a n i x . c o m 

Don't blame me. I voted for Gore.
0
Reply adykes 9/6/2005 2:25:06 PM

At 10:25 AM -0400 2005-09-06, Al Dykes wrote:

>  What about getting a WWV receiver that generates a PPS serial signal
>  and usuing a Y cable to connect it to both machines running real ntp.
>
>  This depends, of course, on being in a location where you can get a
>  WWV (or GPS) signal and have some money to spend on a receiver.

	It doesn't matter how good the time source is.  The problem is 
within the OS and the Microsoft screwed-up time sync code.  You can 
get around part of that by using "real" NTP on the box, but you can't 
get around the OS issues of dropping excessive interrupts under load 
-- not without replacing the OS, which obviously is not suitable in 
many cases.

-- 
Brad Knowles, <brad@stop.mail-abuse.org>

"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."

     -- Benjamin Franklin (1706-1790), reply of the Pennsylvania
     Assembly to the Governor, November 11, 1755

   SAGE member since 1995.  See <http://www.sage.org/> for more info.
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply brad 9/6/2005 3:01:53 PM

* "Magnus" <olm@home.se>
| How bad is w32Time? What precision can I expect if I use it?

http://download.microsoft.com/download/2/0/f/20f61625-7b2a-4531-b007-1c714f1e51b7/wintimeserv.doc

<quote>
    Because the design goal behind W32Time was operability with
    Kerberos�V5 authentication, and not keeping time accurate to the
    microsecond (as provided by the NTP protocol), developers chose to
    incorporate SNTP into the W32Time service running on primary
    servers and clients in Windows�2000. By using the SNTP protocol,
    W32Time meets the requirement of "loose synchronization" with
    other hosts on the network as specified in RFC 1510. The SNTP
    protocol ensures that all clocks in an enterprise are within 20
    seconds of one another, and all clocks in a site are within two
    seconds of one another.
</quote>

HTH
R'
0
Reply Ralf 9/6/2005 6:15:57 PM

In article <p06200780bf435f782665@[10.0.1.210]>, brad@stop.mail-
abuse.org says...
> 	It doesn't matter how good the time source is.  The problem is 
> within the OS and the Microsoft screwed-up time sync code.  You can 
> get around part of that by using "real" NTP on the box, but you can't 
> get around the OS issues of dropping excessive interrupts under load 
> -- not without replacing the OS, which obviously is not suitable in 
> many cases.

Yeah. 
I recently demonstrated this to myself when we installed a local stratum 
1 server.  I have two machines in a rack about 2 ft apart. Same hardware 
(motherboard, CPU, disk, memory, etc.), roughly similar activity. 
Plugged into the same ethernet switch. One of them is running Windows 
2000, the other Fedora Core. I set up NTP on both of them and the Linux 
system is much more stable with smaller offsets and jitter from the 
master servers.


-- 
Joe Matuscak
Rohrer Corporation
717 Seville Road
Wadsworth, OH 44281

0
Reply Joe 9/6/2005 9:06:55 PM

Magnus wrote:

>How bad is w32Time? What precision can I expect if I use it?
>
>  
>
W32Time is not the problem!  Windows is the problem!!!!!   Windows masks 
or disables clock (and other) interrupts far too freely.   When Windows 
is busy it loses clock interrupts.   When it's very busy it loses lots 
of clock interrupts!

On an idle system W32Time should be able to keep the clock within 50ms 
of the correct time.  On a very busy system there are no guarantees!  It 
might stay within 100 milliseconds or it might not!!!!!
0
Reply Richard 9/6/2005 9:47:26 PM

At 5:47 PM -0400 2005-09-06, Richard B. Gilbert wrote:

>  W32Time is not the problem!  Windows is the problem!!!!!

	Not quite true.  Both Windows and W32TIME are problems.  You can 
solve the W32TIME problem by running "real" NTP, but you can't solve 
the Windows problem without replacing Windows, which probably won't 
work for the OP.

-- 
Brad Knowles, <brad@stop.mail-abuse.org>

"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."

     -- Benjamin Franklin (1706-1790), reply of the Pennsylvania
     Assembly to the Governor, November 11, 1755

   SAGE member since 1995.  See <http://www.sage.org/> for more info.
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply brad 9/6/2005 10:06:20 PM

In article <1126013296.374844.3040@z14g2000cwz.googlegroups.com>,
 "Magnus" <olm@home.se> wrote:

> The data are transferred with a frequency of 10 Hz so I need a
> precision of 100 ms (of course). And I can accept 500 ms. Can w32time
> handle that?
> 
> If w32time isn't so good, what do you recommend?

I suspect you will find that you have a deeper problem than time 
accuracy - windows will simply stall from time to time, and all motion 
will stop, causing lost data, et al.  Not to mention lost clock 
interrupts.  Will your application tolerate this?  Will anybody die?  

If these stalls cannot be permitted, you will need to replace Windows 
with either Linux (if the realtime constraints aren't too stringent) or 
with a real RTOS.

You might consider posing a question on comp.realtime.

Joe Gwinn
0
Reply Joseph 9/7/2005 2:56:27 AM

Brad Knowles wrote:
> At 6:03 AM -0700 2005-09-06, Magnus wrote:
> 
>>  And if the computers a under an Active Directory domain that are used
>>  to do the sync, is it the same with the precision?
> 
> 
>     If you use Active Directory to sync them, then they're going to have 
> the same problems as if you had used w32time.  It's the same underlying 
> code, and has the same problems.
> 

That's not an accurate statement. w32time IS what is being used to 
synchronize the time in active directory domains. It's not just the same 
code.

>     The best time sync you can get is from "real" NTP, and that's only 
> going to be able to do so much under Windows.
> 

And that works fine for all nodes including the domain controllers.

Danny
_______________________________________________
questions mailing list
questions@lists.ntp.isc.org
https://lists.ntp.isc.org/mailman/listinfo/questions

0
Reply mayer 9/7/2005 1:11:30 PM

Abandoning the right to remain silent, Brad Knowles at Tue, 06 Sep 2005
22:06:20 +0000 said:

> At 5:47 PM -0400 2005-09-06, Richard B. Gilbert wrote:
> 
>>  W32Time is not the problem!  Windows is the problem!!!!!
> 
> 	Not quite true.  Both Windows and W32TIME are problems.  You can 
> solve the W32TIME problem by running "real" NTP, but you can't solve 
> the Windows problem without replacing Windows, which probably won't 
> work for the OP.

You could run Windows under Linux VmWare and leave the clock sync to
ntpd in Linux.

-- 
Avoid reality at all costs.
$email =~ s/n(.)a(.)n(.)a(.)e(.+)invalid/$1$2$3$4$5au/;
icbm: 33.43.46S 150.59.27E

0
Reply You 9/22/2005 8:51:23 AM

17 Replies
458 Views

(page loaded in 0.134 seconds)

Similiar Articles:


















7/23/2012 6:42:24 PM


Reply: