RFC Errata
Found 4 records.
Status: Verified (2)
RFC 4330, "Simple Network Time Protocol (SNTP) Version 4 for IPv4, IPv6 and OSI", January 2006
Note: This RFC has been obsoleted by RFC 5905
Source of RFC: INDEPENDENT
Errata ID: 2263
Status: Verified
Type: Technical
Publication Format(s) : TEXT
Reported By: Scott Barnes
Date Reported: 2010-05-15
Verifier Name: Nevil Brownlee
Date Verified: 2013-05-23
Section 5 says:
4. The server reply should be discarded if any of the LI, Stratum, or Transmit Timestamp fields is 0 or the Mode field is not 4 (unicast) or 5 (broadcast).
It should say:
4. The server reply should be discarded if any of the VN, Stratum, or Transmit Timestamp fields is 0 or the Mode field is not 4 (unicast) or 5 (broadcast).
Notes:
Zero is a legal value for the LI field under normal conditions. Zero is not legal for VN field, however.
Errata ID: 2480
Status: Verified
Type: Technical
Publication Format(s) : TEXT
Reported By: Dave Higton
Date Reported: 2010-08-20
Verifier Name: Nevil Brownlee
Date Verified: 2013-03-20
Section 4 says:
MSF Rugby (UK) Radio 60 kHz
It should say:
MSF Anthorn (UK) Radio 60 kHz
Notes:
The MSF transmitter was relocated from Rugby to Anthorn, in Cumbria, on 2007 March 31. See http://www.npl.co.uk/science-+-technology/time-and-frequency/npl-ensures-accurate-uk-time-for-the-next-15-years
http://www.npl.co.uk/educate-explore/what-is-time/what-is-msf confirms this.
Status: Rejected (2)
RFC 4330, "Simple Network Time Protocol (SNTP) Version 4 for IPv4, IPv6 and OSI", January 2006
Note: This RFC has been obsoleted by RFC 5905
Source of RFC: INDEPENDENT
Errata ID: 5895
Status: Rejected
Type: Technical
Publication Format(s) : TEXT
Reported By: Daniel Loffgren
Date Reported: 2019-11-07
Rejected by: Adrian Farrel
Date Rejected: 2019-11-07
Section 4 says:
Root Delay: This is a 32-bit signed fixed-point number indicating the total roundtrip delay to the primary reference source, in seconds with the fraction point between bits 15 and 16. Note that this variable can take on both positive and negative values, depending on the relative time and frequency offsets. This field is significant only in server messages, where the values range from negative values of a few milliseconds to positive values of several hundred milliseconds.
It should say:
Root Delay: This is a 32-bit unsigned fixed-point number indicating the total roundtrip delay to the primary reference source, in seconds with the fraction point between bits 15 and 16. This field is significant only in server messages.
Notes:
RFC 4330 claims the root delay is a number indicating the "total roundtrip delay to the primary reference source". As the minimum amount of time it can take to reach the other server is zero, the delay must be greater than or equal to zero. A sign should never be necessary for root delay alone.
NTPv3 (RFC 1305) defines the root delay type to be "…a signed fixed-point number indicating the total roundtrip delay to the primary reference source at the root of the synchronization subnet, in seconds. Note that this variable can take on both positive and negative values, depending on clock precision and skew."
While NTPv3 clearly indicates that it should be signed, it should still never be possible to populate this with a negative value since it is still a total roundtrip delay.
NTPv4 (RFC 5905) changes the root delay type to be the NTP Short Format, which "…includes a 16-bit unsigned seconds field and a 16-bit fraction field."
RFC 5905's Code Skeleton also has implementations that treat the root delay field as entirely unsigned:
/*
* Timestamp conversion macroni
*/
#define FRIC 65536. /* 2^16 as a double */
#define D2FP(r) ((tdist)((r) * FRIC)) /* NTP short */
#define FP2D(r) ((double)(r) / FRIC)
…
p->rootdelay = FP2D(r->rootdelay);
…
x.rootdelay = D2FP(s.rootdelay);
--VERIFIER NOTES--
RFC 4330 has been obsoleted by RFC 5905, an IETF standards track document. It is, therefore, inappropriate to continue to make errata reports against RFC 4330.
It may be worth noting that in RFC 5905, the 'Root Delay' field of the NTP message is described as:
Total round-trip delay to the reference clock, in NTP short format.
Errata ID: 6436
Status: Rejected
Type: Technical
Publication Format(s) : TEXT
Reported By: Ellen Marie Dash
Date Reported: 2021-02-22
Rejected by: Adrian Farrel
Date Rejected: 2021-02-24
Section 5 says:
The roundtrip delay d and system clock offset t are defined as: d = (T4 - T1) - (T3 - T2) t = ((T2 - T1) + (T3 - T4)) / 2.
It should say:
The roundtrip delay d and system clock offset t are defined as: d = (T4 - T1) - (T3 - T2) t = ((T2 - T1) + (T4 - T3)) / 2.
Notes:
In the equation for "t", the values T3 and T4 are swapped. This can cause the value to be off by over 120 years.
--VERIFIER NOTES--
Note that:
- RFC 4330 has been obsoleted by RFC 5905 so raising errata reports against it is no longer
valuable
- RFC 5905 contains the same text as reported here
- There is already an errata report (https://www.rfc-editor.org/errata_search.php?eid=5020)
against RFC 5905 reporting this problem.