mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-05 08:45:06 -05:00
ntp: add client support for network correction
If the network correction is known for both the request and response, and their sum is not larger that the measured peer delay, allowing the transparent clocks to be running up to 100 ppm faster than the client's clock, apply the corrections to the NTP offset and peer delay. Don't correct the root delay to not change the estimated maximum error.
This commit is contained in:
@@ -322,7 +322,9 @@ server implementations do not respond to requests containing an unknown
|
||||
extension field (*chronyd* as a server responded to such requests since
|
||||
version 2.0).
|
||||
+
|
||||
The following extension field can be enabled by this option:
|
||||
This option can be used multiple times to enable multiple extension fields.
|
||||
+
|
||||
The following extension fields are supported:
|
||||
+
|
||||
_F323_::::
|
||||
An experimental extension field to enable several improvements that were
|
||||
@@ -331,6 +333,14 @@ root delay and dispersion in higher resolution and a monotonic receive
|
||||
timestamp, which enables a frequency transfer between the server and client to
|
||||
significantly improve stability of the synchronisation. This field should be
|
||||
enabled only for servers known to be running *chronyd* version 4.2 or later.
|
||||
_F324_::::
|
||||
An experimental extension field to enable the use of the Precision Time
|
||||
Protocol (PTP) correction field in NTP-over-PTP messages updated by one-step
|
||||
end-to-end transparent clocks in network switches and routers to significantly
|
||||
improve accuracy and stability of the synchronisation. NTP-over-PTP can be
|
||||
enabled by the <<ptpport,*ptpport*>> directive and setting the *port* option to
|
||||
the PTP port. This field should be enabled only for servers known to be running
|
||||
*chronyd* version 4.5 or later.
|
||||
{blank}:::
|
||||
|
||||
[[pool]]*pool* _name_ [_option_]...::
|
||||
@@ -2727,8 +2737,10 @@ pidfile /run/chronyd.pid
|
||||
The *ptpport* directive enables *chronyd* to send and receive NTP messages
|
||||
contained in PTP event messages (NTP-over-PTP) to enable hardware timestamping
|
||||
on NICs which cannot timestamp NTP packets, but can timestamp unicast PTP
|
||||
packets. The port recognized by the NICs is 319 (PTP event port). The default
|
||||
value is 0 (disabled).
|
||||
packets, and also use corrections provided by PTP one-step end-to-end
|
||||
transparent clocks in network switches and routers. The port recognized by the
|
||||
NICs and PTP transparent clocks is 319 (PTP event port). The default value is 0
|
||||
(disabled).
|
||||
+
|
||||
The NTP-over-PTP support is experimental. The protocol and configuration can
|
||||
change in future. It should be used only in local networks.
|
||||
@@ -2738,12 +2750,14 @@ server or client. The directive does not change the default protocol of
|
||||
specified NTP sources. Each NTP source that should use NTP-over-PTP needs to
|
||||
be specified with the *port* option set to the PTP port. To actually enable
|
||||
hardware timestamping on NICs which can timestamp PTP packets only, the
|
||||
*rxfilter* option of the *hwtimestamp* directive needs to be set to _ptp_.
|
||||
*rxfilter* option of the *hwtimestamp* directive needs to be set to _ptp_. The
|
||||
extension field _F324_ needs to be enabled to use the corrections provided by
|
||||
the PTP transparent clocks.
|
||||
+
|
||||
An example of client configuration is:
|
||||
+
|
||||
----
|
||||
server foo.example.net minpoll 0 maxpoll 0 xleave port 319
|
||||
server foo.example.net minpoll 0 maxpoll 0 xleave port 319 extfield F324
|
||||
hwtimestamp * rxfilter ptp
|
||||
ptpport 319
|
||||
----
|
||||
|
||||
Reference in New Issue
Block a user