[ntpwg] Updated NTPv4 Protocol Specification/timestamp location

STUART VENTERS stuart.venters at adtran.com
Tue Jan 22 21:04:35 UTC 2008


>> Dave said:
>> There may be a fundamental disconnect happening here. 

Dave,

We appear to be in agreement that in order to interoperate, a client and host must implement 'capture point' such that the end to end reciprocal delays match.  (Or in other words, if the client and server clocks are aligned then T2-T1 must match T4-T3).

I think I see the disconnect.

In your last paragraph, there appear to be 2 meanings to the term 'capture point'.
  CP1 = Which bit transition in the packet to strike timestamps against.  Like SOF or NTP header.  
  CP2 = The location in the host where the packet time is measured.  Like near the Phy or not.

(These 2 issues are so tightly coupled that one might want to keep them together, but I think to doing so clouds things.)

Also, your first 2 paragraphs say to me that CP1 and CP2 don't matter as long as the reciprocal delays match.  I agree with this if you goal is to build client/server pair that work together.  I disagree if the goal is to make a spec so anybody can build either end.

I agree that the fundamental constraint is that the reciprocal delays match, but there are many non-interoperable ways for a working client/server pair to skin this cat.  The NTP spec needs to further limit the choices so that any combination of complying implementations will interoperate. On the other hand the spec does not need to unnecessarily constrain or burden the implementation.  (Simple rules would also be nice.)

I don't pretend to know the best way to do this, but one way might be to state the fundamental constraint so everybody knows what we are trying to accomplish, then specify choices for CP1 and CP2 as the chosen way to achieve the constraint, and then add a sentence which says that any host which has equivalent behavior (except maybe with a different symmetric link delay added) is also ok.

For CP1, I disagree that "this is not an NTP issue at all".  Nailing down CP1 will go a long way towards satisfying the fundamental constraint.

For CP2, we could choose at the external media connector on the host.  (Which is of course non-implementable, but still useful with the equivalent behavior clause.)


Regards,

Stuart Venters


My agenda:
The NTP spec needs to set tight enough rules so that any 2 implementations, meeting the rules will interoperate.  (I.E. transfer accurate time.)


More information about the ntpwg mailing list