NAME
statime.toml
- configuration file for the statime ptp-daemon
DESCRIPTION
Configuration of ntpd-rs happens in the statime.toml
configuration format. The
toml format is in lots of ways similar to a simple ini with several extensions
allowing a json-like syntax.
The statime configuration file consists of several sections, each of which configures a separate part of the ptp-daemon process. Each of the sections is described in the rest of this document. Many settings will have defaults, which will be indicated by each configuration setting shown.
CONFIGURATION
identity
= clock identity (unset)- The unique identity of this clock.
A clock identity is encoded as a 16-character hexadecimal string, for example
identity = "00FFFFFFFFFFFFFB"
. If unset the clock identity is derived from a MAC address. domain
= u8 (0)- The PTP domain of this instance. All instances in domain are synchronized to the Grandmaster Clock of the domain, but are not necessarily synchronized to PTP clocks in another domain.
sdo-id
= u12 (0)- The "source domain identity" of this PTP instance. Together with the
domain
it identifies a domain. priority1
= priority (128)- A tie breaker for the best master clock algorithm in the range
0..256
.0
being the highest priority and255
the lowest. priority2
= priority (128)- A tie breaker for the best master clock algorithm in the range
0..256
.0
being the highest priority and255
the lowest. path-trace
= bool- The instance uses the path trace option. This allows detecting clock loops when enabled on all instances in the network.
virtual-system-clock
= bool (false)- Use a virtual overlay clock instead of adjusting the system clock.
[[port]]
interface
= interface name- The network interface of this PTP port. For instance
"lo"
or"enp0s31f6"
announce-interval
= interval (1)- How often an announce message is sent by a master. Defined as an exponent of 2, so a value of 1 means every 2^1 = 2 seconds.
sync-interval
= interval (0)- How often sync message is sent by a master. Defined as an exponent of 2, so a value of 0 means every 2^0 = 1 seconds.
announce-receipt-timeout
= number of announce intervals (3)- Number of announce intervals to wait for announce messages from other masters before the port becomes master itself.
delay-asymmetry
= nanoseconds (0)- Correct for a difference between slave-to-master and master-to-slave propagation time. The value is positive when the slave-to-master propagation time is longer than the master-to-slave propagation time.
delay-mechanism
= mechanism (E2E)- Which delay mechanism to use on the port. Either
"E2E"
for end-to-end delay determination, or"P2P"
for the peer to peer delay mechanism. delay-interval
= interval (0)- How often delay request messages are sent by a slave in end-to-end mode. Currently the only supported delay mechanism is end-to-end (E2E). Defined as an exponent of 2, so a value of 0 means every 2^0 = 1 seconds
master-only
= bool (false)- The port is always a master instance, and will never become a slave instance.
hardware-clock
= index (unset)- Index of a hardware clock device, for instance
0
for/dev/ptp0
. acceptable-master-list
= [ clock identity, .. ] (unset)- List of clock identities that this port will accept as its master.
A clock identity is encoded as a 16-character hexadecimal string, for example
acceptable-master-list = ["00FFFFFFFFFFFFFB"]
. The default is to accept all clock identities.