Blame ptp4l.8

Packit 9c3e7e
.TH PTP4l 8 "April 2018" "linuxptp"
Packit 9c3e7e
.SH NAME
Packit 9c3e7e
ptp4l - PTP Boundary/Ordinary/Transparent Clock
Packit 9c3e7e
Packit 9c3e7e
.SH SYNOPSIS
Packit 9c3e7e
.B ptp4l
Packit 9c3e7e
[
Packit 9c3e7e
.B \-AEP246HSLmqsv
Packit 9c3e7e
] [
Packit 9c3e7e
.BI \-f " config"
Packit 9c3e7e
] [
Packit 9c3e7e
.BI \-p " phc-device"
Packit 9c3e7e
] [
Packit 9c3e7e
.BI \-l " print-level"
Packit 9c3e7e
]
Packit 9c3e7e
[
Packit 9c3e7e
.BI \-i " interface"
Packit 9c3e7e
] [
Packit 9c3e7e
.I long-options
Packit 9c3e7e
]
Packit 9c3e7e
.I .\|.\|.
Packit 9c3e7e
Packit 9c3e7e
.SH DESCRIPTION
Packit 9c3e7e
.B ptp4l
Packit 9c3e7e
is an implementation of the Precision Time Protocol (PTP) according to IEEE
Packit 9c3e7e
standard 1588 for Linux. It implements Boundary Clock (BC), Ordinary Clock
Packit 9c3e7e
(OC), and Transparent Clock (TC).
Packit 9c3e7e
Packit 9c3e7e
.SH OPTIONS
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-A
Packit 9c3e7e
Select the delay mechanism automatically. Start with E2E and switch to P2P when
Packit 9c3e7e
a peer delay request is received.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-E
Packit 9c3e7e
Select the delay request-response (E2E) mechanism. This is the default
Packit 9c3e7e
mechanism. All clocks on single PTP communication path must use the same
Packit 9c3e7e
mechanism. A warning will be printed when a peer delay request is received on
Packit 9c3e7e
port using the E2E mechanism.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-P
Packit 9c3e7e
Select the peer delay (P2P) mechanism. A warning will be printed when a delay
Packit 9c3e7e
request is received on port using the P2P mechanism.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-2
Packit 9c3e7e
Select the IEEE 802.3 network transport.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-4
Packit 9c3e7e
Select the UDP IPv4 network transport. This is the default transport.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-6
Packit 9c3e7e
Select the UDP IPv6 network transport.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-H
Packit 9c3e7e
Select the hardware time stamping. All ports specified by the
Packit 9c3e7e
.B \-i
Packit 9c3e7e
option and in the configuration file must be attached to the same PTP hardware
Packit 9c3e7e
clock (PHC). This is the default time stamping.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-S
Packit 9c3e7e
Select the software time stamping.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-L
Packit 9c3e7e
Select the legacy hardware time stamping.
Packit 9c3e7e
.TP
Packit 9c3e7e
.BI \-f " config"
Packit 9c3e7e
Read configuration from the specified file. No configuration file is read by
Packit 9c3e7e
default.
Packit 9c3e7e
.TP
Packit 9c3e7e
.BI \-i " interface"
Packit 9c3e7e
Specify a PTP port, it may be used multiple times. At least one port must be
Packit 9c3e7e
specified by this option or in the configuration file.
Packit 9c3e7e
.TP
Packit 9c3e7e
.BI \-p " phc-device"
Packit 9c3e7e
(This option is deprecated.)
Packit 9c3e7e
Before Linux kernel v3.5 there was no way to discover the PHC device
Packit 9c3e7e
associated with a network interface.  This option specifies the PHC
Packit 9c3e7e
device (e.g. /dev/ptp0) to be used when running on legacy kernels.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-s
Packit 9c3e7e
Enable the slaveOnly mode.
Packit 9c3e7e
.TP
Packit 9c3e7e
.BI \-l " print-level"
Packit 9c3e7e
Set the maximum syslog level of messages which should be printed or sent to
Packit 9c3e7e
the system logger. The default is 6 (LOG_INFO).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-m
Packit 9c3e7e
Print messages to the standard output.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-q
Packit 9c3e7e
Don't send messages to the system logger.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B \-v
Packit 9c3e7e
Prints the software version and exits.
Packit 9c3e7e
.TP
Packit 9c3e7e
.BI \-h
Packit 9c3e7e
Display a help message.
Packit 9c3e7e
Packit 9c3e7e
.SH LONG OPTIONS
Packit 9c3e7e
Packit 9c3e7e
Each and every configuration file option (see below) may also appear
Packit 9c3e7e
as a "long" style command line argument.  For example, the slaveOnly
Packit 9c3e7e
option may be set using either of these two forms.
Packit 9c3e7e
Packit 9c3e7e
.RS
Packit 9c3e7e
\f(CW\-\-slaveOnly 1   \-\-slaveOnly=1\fP
Packit 9c3e7e
.RE
Packit 9c3e7e
Packit 9c3e7e
Option values given on the command line override values in the global
Packit 9c3e7e
section of the configuration file.
Packit 9c3e7e
Packit 9c3e7e
.SH CONFIGURATION FILE
Packit 9c3e7e
Packit 9c3e7e
The configuration file is divided into sections. Each section starts with a
Packit 9c3e7e
line containing its name enclosed in brackets and it follows with settings.
Packit 9c3e7e
Each setting is placed on a separate line, it contains the name of the
Packit 9c3e7e
option and the value separated by whitespace characters. Empty lines and lines
Packit 9c3e7e
starting with # are ignored.
Packit 9c3e7e
Packit 9c3e7e
There are three different section types.
Packit 9c3e7e
Packit 9c3e7e
.TP
Packit 9c3e7e
.B 1.
Packit 9c3e7e
The global section (indicated as
Packit 9c3e7e
.BR [global] )
Packit 9c3e7e
sets the program options, clock options and default port options. Other
Packit 9c3e7e
sections are port specific sections and they override the default port options.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B 2.
Packit 9c3e7e
Port sections give the name of the configured port (e.g.
Packit 9c3e7e
.BR [eth0] ).
Packit 9c3e7e
Ports specified in the configuration file don't need to be
Packit 9c3e7e
specified by the
Packit 9c3e7e
.B \-i
Packit 9c3e7e
option. An empty port section can be used to replace the command line option.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B 3.
Packit 9c3e7e
Tables for configuring unicast discovery begin with
Packit 9c3e7e
.B \%[unicast_master_table].
Packit 9c3e7e
Packit 9c3e7e
See UNICAST DISCOVERY OPTIONS, below.
Packit 9c3e7e
Packit 9c3e7e
.SH PORT OPTIONS
Packit 9c3e7e
Packit 9c3e7e
.TP
Packit 9c3e7e
.B delayAsymmetry
Packit 9c3e7e
The time difference in nanoseconds of the transmit and receive
Packit 9c3e7e
paths. This value should be positive when the master-to-slave
Packit 9c3e7e
propagation time is longer and negative when the slave-to-master time
Packit 9c3e7e
is longer. The default is 0 nanoseconds.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logAnnounceInterval
Packit 9c3e7e
The mean time interval between Announce messages. A shorter interval makes
Packit 9c3e7e
ptp4l react faster to the changes in the master-slave hierarchy. The interval
Packit 9c3e7e
should be the same in the whole domain. It's specified as a power of two in
Packit 9c3e7e
seconds.
Packit 9c3e7e
The default is 1 (2 seconds).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logSyncInterval
Packit 9c3e7e
The mean time interval between Sync messages. A shorter interval may improve
Packit 9c3e7e
accuracy of the local clock. It's specified as a power of two in seconds.
Packit 9c3e7e
The default is 0 (1 second).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logMinDelayReqInterval
Packit 9c3e7e
The minimum permitted mean time interval between Delay_Req messages. A shorter
Packit 9c3e7e
interval makes ptp4l react faster to the changes in the path delay. It's
Packit 9c3e7e
specified as a power of two in seconds.
Packit 9c3e7e
The default is 0 (1 second).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logMinPdelayReqInterval
Packit 9c3e7e
The minimum permitted mean time interval between Pdelay_Req messages. It's
Packit 9c3e7e
specified as a power of two in seconds.
Packit 9c3e7e
The default is 0 (1 second).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B announceReceiptTimeout
Packit 9c3e7e
The number of missed Announce messages before the last Announce messages
Packit 9c3e7e
expires.
Packit 9c3e7e
The default is 3.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B syncReceiptTimeout
Packit 9c3e7e
The number of sync/follow up messages that may go missing before
Packit 9c3e7e
triggering a Best Master Clock election. This option is used for
Packit 9c3e7e
running in gPTP mode according to the 802.1AS-2011 standard. Setting
Packit 9c3e7e
this option to zero will disable the sync message timeout.
Packit 9c3e7e
The default is 0 or disabled.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B transportSpecific
Packit 9c3e7e
The transport specific field. Must be in the range 0 to 255.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B ignore_transport_specific
Packit 9c3e7e
By default, incoming messages are dropped if their transportSpecific
Packit 9c3e7e
field does not match the configured value.  However, many of
Packit 9c3e7e
transports specified in the 1588 standard mandate ignoring this field.
Packit 9c3e7e
Moreover, some equipment is known to set the reserved bits.
Packit 9c3e7e
Configuring this option as 1 causes this field to be ignored
Packit 9c3e7e
completely on receive.  The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B path_trace_enabled
Packit 9c3e7e
Enable the mechanism used to trace the route of the Announce messages.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B follow_up_info
Packit 9c3e7e
Include the 802.1AS data in the Follow_Up messages if enabled.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B fault_reset_interval
Packit 9c3e7e
The time in seconds between the detection of a port's fault and the fault
Packit 9c3e7e
being reset. This value is expressed as a power of two. Setting this
Packit 9c3e7e
value to \-128 or to the special key word "ASAP" will let the fault be
Packit 9c3e7e
reset immediately.
Packit 9c3e7e
The default is 4 (16 seconds).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B fault_badpeernet_interval
Packit 9c3e7e
The time in seconds between the detection of a peer network misconfiguration
Packit 9c3e7e
and the fault being reset. The port is disabled for the duration of the
Packit 9c3e7e
interval. The value is in seconds and the special key word ASAP will let
Packit 9c3e7e
the fault be reset immediately.
Packit 9c3e7e
The default is 16 seconds.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B delay_mechanism
Packit 9c3e7e
Select the delay mechanism. Possible values are E2E, P2P and Auto.
Packit 9c3e7e
The default is E2E.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B hybrid_e2e
Packit 9c3e7e
Enables the "hybrid" delay mechanism from the draft Enterprise
Packit 9c3e7e
Profile. When enabled, ports in the slave state send their delay
Packit 9c3e7e
request messages to the unicast address taken from the master's
Packit 9c3e7e
announce message. Ports in the master state will reply to unicast
Packit 9c3e7e
delay requests using unicast delay responses. This option has no
Packit 9c3e7e
effect if the delay_mechanism is set to P2P.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B inhibit_multicast_service
Packit 9c3e7e
Some unicast mode profiles insist that no multicast message are ever
Packit 9c3e7e
transmitted.  Setting this option inhibits multicast transmission.
Packit 9c3e7e
The default is 0 (mutlicast enabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B net_sync_monitor
Packit 9c3e7e
Enables the NetSync Monitor (NSM) protocol. The NSM protocol allows a
Packit 9c3e7e
station to measure how well another node is synchronized. The monitor
Packit 9c3e7e
sends a unicast delay request to the node, which replies
Packit 9c3e7e
unconditionally with unicast delay response, sync, and follow up
Packit 9c3e7e
messages. If the monitor is synchronized to the GM, it can use the
Packit 9c3e7e
time stamps in the message to estimate the node's offset.  This option
Packit 9c3e7e
requires that the 'hybrid_e2e' option be enabled as well.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B unicast_listen
Packit 9c3e7e
When enabled, this option allows the port to grant unicast message
Packit 9c3e7e
contracts.  Incoming requests for will be granted limited only by the
Packit 9c3e7e
amount of memory available.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B unicast_master_table
Packit 9c3e7e
When set to a positive integer, this option specifies the table id to
Packit 9c3e7e
be used for unicast discovery.  Each table lives in its own section
Packit 9c3e7e
and has a unique, positive numerical ID.  Entries in the table are a
Packit 9c3e7e
pair of transport type and protocol address.  Tables may not be shared
Packit 9c3e7e
between ports, but nothing prevents table entries from appearing in
Packit 9c3e7e
more than table.
Packit 9c3e7e
The default is 0 (unicast discovery disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B unicast_req_duration
Packit 9c3e7e
The service time in seconds to be requested during unicast discovery.
Packit 9c3e7e
Note that the remote node is free to grant a different duration.
Packit 9c3e7e
The default is 3600 seconds or one hour.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B ptp_dst_mac
Packit 9c3e7e
The MAC address to which PTP messages should be sent.
Packit 9c3e7e
Relevant only with L2 transport. The default is 01:1B:19:00:00:00.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B p2p_dst_mac
Packit 9c3e7e
The MAC address to which peer delay messages should be sent.
Packit 9c3e7e
Relevant only with L2 transport. The default is 01:80:C2:00:00:0E.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B network_transport
Packit 9c3e7e
Select the network transport. Possible values are UDPv4, UDPv6 and L2.
Packit 9c3e7e
The default is UDPv4.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B neighborPropDelayThresh
Packit 9c3e7e
Upper limit for peer delay in nanoseconds. If the estimated peer delay is
Packit 9c3e7e
greater than this value the port is marked as not 802.1AS capable.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B masterOnly
Packit 9c3e7e
Setting this option to one (1) prevents the port from entering the
Packit 9c3e7e
SLAVE state. In addition, the local clock will ignore Announce
Packit 9c3e7e
messages received on this port. This option's intended use is to
Packit 9c3e7e
support the Telecom Profiles according to ITU-T G.8265.1, G.8275.1,
Packit 9c3e7e
and G.8275.2. The default value is zero or false.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B G.8275.portDS.localPriority
Packit 9c3e7e
The Telecom Profiles (ITU-T G.8275.1 and G.8275.2) specify an
Packit 9c3e7e
alternate Best Master Clock Algorithm (BMCA) with a unique data set
Packit 9c3e7e
comparison algorithm.  The value of this option is associated with
Packit 9c3e7e
Announce messages arriving on a particular port and is used as a tie
Packit 9c3e7e
breaker whenever clockClass, clockAccuracy, offsetScaledLogVariance,
Packit 9c3e7e
and priority2 are equal. This option is only used when
Packit 9c3e7e
"dataset_comparison" is set to "telecom".
Packit 9c3e7e
The default value is 128.
Packit 9c3e7e
Packit 9c3e7e
Warning: the BMCA is guaranteed to produce a spanning tree (that is, a
Packit 9c3e7e
timing network without loops) only when using the default values of
Packit 9c3e7e
G.8275.defaultDS.localPriority and G.8275.portDS.localPriority.
Packit 9c3e7e
Careful network engineering is needed when using non-default values.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B min_neighbor_prop_delay
Packit 9c3e7e
Lower limit for peer delay in nanoseconds. If the estimated peer delay is
Packit 9c3e7e
smaller than this value the port is marked as not 802.1AS capable.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B tsproc_mode
Packit 9c3e7e
Select the time stamp processing mode used to calculate offset and delay.
Packit 9c3e7e
Possible values are filter, raw, filter_weight, raw_weight. Raw modes perform
Packit 9c3e7e
well when the rate of sync messages (logSyncInterval) is similar to the rate of
Packit 9c3e7e
delay messages (logMinDelayReqInterval or logMinPdelayReqInterval). Weighting
Packit 9c3e7e
is useful with larger network jitters (e.g. software time stamping).
Packit 9c3e7e
The default is filter.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B delay_filter
Packit 9c3e7e
Select the algorithm used to filter the measured delay and peer delay. Possible
Packit 9c3e7e
values are moving_average and moving_median.
Packit 9c3e7e
The default is moving_median.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B delay_filter_length
Packit 9c3e7e
The length of the delay filter in samples.
Packit 9c3e7e
The default is 10.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B egressLatency
Packit 9c3e7e
Specifies the difference in nanoseconds between the actual transmission
Packit 9c3e7e
time at the reference plane and the reported transmit time stamp. This
Packit 9c3e7e
value will be added to egress time stamps obtained from the hardware.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B ingressLatency
Packit 9c3e7e
Specifies the difference in nanoseconds between the reported receive
Packit 9c3e7e
time stamp and the actual reception time at reference plane. This value
Packit 9c3e7e
will be subtracted from ingress time stamps obtained from the hardware.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B boundary_clock_jbod
Packit 9c3e7e
When running as a boundary clock (that is, when more than one network
Packit 9c3e7e
interface is configured), ptp4l performs a sanity check to make sure
Packit 9c3e7e
that all of the ports share the same hardware clock device. This
Packit 9c3e7e
option allows ptp4l to work as a boundary clock using "just a bunch of
Packit 9c3e7e
devices" that are not synchronized to each other. For this mode, the
Packit 9c3e7e
collection of clocks must be synchronized by an external program, for
Packit 9c3e7e
example phc2sys(8) in "automatic" mode.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B udp_ttl
Packit 9c3e7e
Specifies the Time to live (TTL) value for IPv4 multicast messages and the hop
Packit 9c3e7e
limit for IPv6 multicast messages. This option is only relevant with the IPv4
Packit 9c3e7e
and IPv6 UDP transports. The default is 1 to restrict the messages sent by
Packit 9c3e7e
.B ptp4l
Packit 9c3e7e
to the same subnet.
Packit 9c3e7e
Packit 9c3e7e
.SH PROGRAM AND CLOCK OPTIONS
Packit 9c3e7e
Packit 9c3e7e
.TP
Packit 9c3e7e
.B twoStepFlag
Packit 9c3e7e
Enable two-step mode for sync messages. One-step mode can be used only with
Packit 9c3e7e
hardware time stamping.
Packit 9c3e7e
The default is 1 (enabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B slaveOnly
Packit 9c3e7e
The local clock is a slave-only clock if enabled.
Packit 9c3e7e
This option is only for use with 1588 clocks and should not be enabled
Packit 9c3e7e
for 802.1AS clocks.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B gmCapable
Packit 9c3e7e
If this option is enabled, then the local clock is able to become grand master.
Packit 9c3e7e
This is only for use with 802.1AS clocks and has no effect on 1588 clocks.
Packit 9c3e7e
The default is 1 (enabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B priority1
Packit 9c3e7e
The priority1 attribute of the local clock. It is used in the best master
Packit 9c3e7e
selection algorithm, lower values take precedence. Must be in the range 0 to
Packit 9c3e7e
255.
Packit 9c3e7e
The default is 128.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B priority2
Packit 9c3e7e
The priority2 attribute of the local clock. It is used in the best master
Packit 9c3e7e
selection algorithm, lower values take precedence. Must be in the range 0 to
Packit 9c3e7e
255.
Packit 9c3e7e
The default is 128.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B clockClass
Packit 9c3e7e
The clockClass attribute of the local clock. It denotes the traceability of the
Packit 9c3e7e
time distributed by the grandmaster clock.
Packit 9c3e7e
The default is 248.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B clockAccuracy
Packit 9c3e7e
The clockAccuracy attribute of the local clock. It is used in the best master
Packit 9c3e7e
selection algorithm.
Packit 9c3e7e
The default is 0xFE.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B offsetScaledLogVariance
Packit 9c3e7e
The offsetScaledLogVariance attribute of the local clock. It characterizes the
Packit 9c3e7e
stability of the clock.
Packit 9c3e7e
The default is 0xFFFF.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B G.8275.defaultDS.localPriority
Packit 9c3e7e
The Telecom Profiles (ITU-T G.8275.1 and G.8275.2) specify an
Packit 9c3e7e
alternate Best Master Clock Algorithm (BMCA) with a unique data set
Packit 9c3e7e
comparison algorithm.  The value of this option is associated with the
Packit 9c3e7e
local clock and is used as a tie breaker whenever clockClass,
Packit 9c3e7e
clockAccuracy, offsetScaledLogVariance, and priority2 are equal. This
Packit 9c3e7e
option is only used when "dataset_comparison" is set to "telecom".
Packit 9c3e7e
The default value is 128.
Packit 9c3e7e
Packit 9c3e7e
Warning: the BMCA is guaranteed to produce a spanning tree (that is, a
Packit 9c3e7e
timing network without loops) only when using the default values of
Packit 9c3e7e
G.8275.defaultDS.localPriority and G.8275.portDS.localPriority.
Packit 9c3e7e
Careful network engineering is needed when using non-default values.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B domainNumber
Packit 9c3e7e
The domain attribute of the local clock.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B utc_offset
Packit 9c3e7e
The current offset between TAI and UTC.
Packit 9c3e7e
The default is 37.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B free_running
Packit 9c3e7e
Don't adjust the local clock if enabled.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B freq_est_interval
Packit 9c3e7e
The time interval over which is estimated the ratio of the local and
Packit 9c3e7e
peer clock frequencies. It is specified as a power of two in seconds.
Packit 9c3e7e
The default is 1 (2 seconds).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B assume_two_step
Packit 9c3e7e
Treat one-step responses as two-step if enabled. It is used to work around
Packit 9c3e7e
buggy 802.1AS switches.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B tc_spanning_tree
Packit 9c3e7e
When running as a Transparent Clock, increment the "stepsRemoved"
Packit 9c3e7e
field of Announce messages that pass through the switch.  Enabling
Packit 9c3e7e
this option ensures that PTP message loops never form, provided the
Packit 9c3e7e
switches all implement this option together with the BMCA.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B tx_timestamp_timeout
Packit 9c3e7e
The number of milliseconds to poll waiting for the tx time stamp from the kernel
Packit 9c3e7e
when a message has recently been sent.
Packit 9c3e7e
The default is 1.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B check_fup_sync
Packit 9c3e7e
Because of packet reordering that can occur in the network, in the
Packit 9c3e7e
hardware, or in the networking stack, a follow up message can appear
Packit 9c3e7e
to arrive in the application before the matching sync message. As this
Packit 9c3e7e
is a normal occurrence, and the sequenceID message field ensures
Packit 9c3e7e
proper matching, the ptp4l program accepts out of order packets. This
Packit 9c3e7e
option adds an additional check using the software time stamps from
Packit 9c3e7e
the networking stack to verify that the sync message did arrive
Packit 9c3e7e
first. This option is only useful if you do not trust the sequence IDs
Packit 9c3e7e
generated by the master.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B clock_servo
Packit 9c3e7e
The servo which is used to synchronize the local clock. Valid values
Packit 9c3e7e
are "pi" for a PI controller, "linreg" for an adaptive controller
Packit 9c3e7e
using linear regression, "ntpshm" for the NTP SHM reference clock to
Packit 9c3e7e
allow another process to synchronize the local clock (the SHM segment
Packit 9c3e7e
number is set to the domain number), and "nullf" for a servo that
Packit 9c3e7e
always dials frequency offset zero (for use in SyncE nodes).
Packit 9c3e7e
The default is "pi."
Packit 9c3e7e
.TP
Packit 9c3e7e
.B clock_type
Packit 9c3e7e
Specifies the kind of PTP clock.  Valid values are "OC" for ordinary
Packit 9c3e7e
clock, "BC" for boundary clock, "P2P_TC" for peer to peer transparent
Packit 9c3e7e
clock, and "E2E_TC" for end to end transparent clock.  An multi-port
Packit 9c3e7e
ordinary clock will automatically be configured as a boundary clock.
Packit 9c3e7e
The default is "OC".
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_proportional_const
Packit 9c3e7e
The proportional constant of the PI controller. When set to 0.0, the
Packit 9c3e7e
proportional constant will be set by the following formula from the current
Packit 9c3e7e
sync interval.
Packit 9c3e7e
The default is 0.0.
Packit 9c3e7e
Packit 9c3e7e
kp = min(kp_scale * sync^kp_exponent, kp_norm_max / sync)
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_integral_const
Packit 9c3e7e
The integral constant of the PI controller. When set to 0.0, the
Packit 9c3e7e
integral constant will be set by the following formula from the current
Packit 9c3e7e
sync interval.
Packit 9c3e7e
The default is 0.0.
Packit 9c3e7e
Packit 9c3e7e
ki = min(ki_scale * sync^ki_exponent, ki_norm_max / sync)
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_proportional_scale
Packit 9c3e7e
The kp_scale constant in the formula used to set the proportional constant of
Packit 9c3e7e
the PI controller from the sync interval. When set to 0.0, the value will be
Packit 9c3e7e
selected from 0.7 and 0.1 for the hardware and software time stamping
Packit 9c3e7e
respectively.
Packit 9c3e7e
The default is 0.0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_proportional_exponent
Packit 9c3e7e
The kp_exponent constant in the formula used to set the proportional constant of
Packit 9c3e7e
the PI controller from the sync interval.
Packit 9c3e7e
The default is \-0.3.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_proportional_norm_max
Packit 9c3e7e
The kp_norm_max constant in the formula used to set the proportional constant of
Packit 9c3e7e
the PI controller from the sync interval.
Packit 9c3e7e
The default is 0.7
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_integral_scale
Packit 9c3e7e
The ki_scale constant in the formula used to set the integral constant of
Packit 9c3e7e
the PI controller from the sync interval. When set to 0.0, the value will be
Packit 9c3e7e
selected from 0.3 and 0.001 for the hardware and software time stamping
Packit 9c3e7e
respectively.
Packit 9c3e7e
The default is 0.0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_integral_exponent
Packit 9c3e7e
The ki_exponent constant in the formula used to set the integral constant of
Packit 9c3e7e
the PI controller from the sync interval.
Packit 9c3e7e
The default is 0.4.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B pi_integral_norm_max
Packit 9c3e7e
The ki_norm_max constant in the formula used to set the integral constant of
Packit 9c3e7e
the PI controller from the sync interval.
Packit 9c3e7e
The default is 0.3.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B step_threshold
Packit 9c3e7e
The maximum offset the servo will correct by changing the clock
Packit 9c3e7e
frequency instead of stepping the clock. When set to 0.0, the servo will
Packit 9c3e7e
never step the clock except on start. It's specified in seconds.
Packit 9c3e7e
The default is 0.0.
Packit 9c3e7e
This option used to be called
Packit 9c3e7e
.BR pi_offset_const .
Packit 9c3e7e
.TP
Packit 9c3e7e
.B first_step_threshold
Packit 9c3e7e
The maximum offset the servo will correct by changing the clock
Packit 9c3e7e
frequency instead of stepping the clock. This is only applied on the first
Packit 9c3e7e
update. It's specified in seconds. When set to 0.0, the servo won't step
Packit 9c3e7e
the clock on start.
Packit 9c3e7e
The default is 0.00002 (20 microseconds).
Packit 9c3e7e
This option used to be called
Packit 9c3e7e
.BR pi_f_offset_const .
Packit 9c3e7e
.TP
Packit 9c3e7e
.B max_frequency
Packit 9c3e7e
The maximum allowed frequency adjustment of the clock in parts per billion
Packit 9c3e7e
(ppb). This is an additional limit to the maximum allowed by the hardware. When
Packit 9c3e7e
set to 0, the hardware limit will be used.
Packit 9c3e7e
The default is 900000000 (90%).
Packit 9c3e7e
This option used to be called
Packit 9c3e7e
.BR pi_max_frequency .
Packit 9c3e7e
.TP
Packit 9c3e7e
.B sanity_freq_limit
Packit 9c3e7e
The maximum allowed frequency offset between uncorrected clock and the system
Packit 9c3e7e
monotonic clock in parts per billion (ppb). This is used as a sanity check of
Packit 9c3e7e
the synchronized clock. When a larger offset is measured, a warning message
Packit 9c3e7e
will be printed and the servo will be reset. When set to 0, the sanity check is
Packit 9c3e7e
disabled. The default is 200000000 (20%).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B initial_delay
Packit 9c3e7e
The initial path delay of the clock in nanoseconds used for synchronization of
Packit 9c3e7e
the clock before the delay is measured using the E2E or P2P delay mechanism. If
Packit 9c3e7e
set to 0, the clock will not be updated until the delay is measured.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B ntpshm_segment
Packit 9c3e7e
The number of the SHM segment used by ntpshm servo.
Packit 9c3e7e
The default is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B udp6_scope
Packit 9c3e7e
Specifies the desired scope for the IPv6 multicast messages.  This
Packit 9c3e7e
will be used as the second byte of the primary address.  This option
Packit 9c3e7e
is only relevant with IPv6 transport.  See RFC 4291.  The default is
Packit 9c3e7e
0x0E for the global scope.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B uds_address
Packit 9c3e7e
Specifies the address of the UNIX domain socket for receiving local
Packit 9c3e7e
management messages. The default is /var/run/ptp4l.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B dscp_event
Packit 9c3e7e
Defines the Differentiated Services Codepoint (DSCP) to be used for PTP
Packit 9c3e7e
event messages. Must be a value between 0 and 63. There are several media
Packit 9c3e7e
streaming standards out there that require specific values for this option.
Packit 9c3e7e
For example 46 (EF PHB) in AES67 or 48 (CS6 PHB) in RAVENNA. The default
Packit 9c3e7e
is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B dscp_general
Packit 9c3e7e
Defines the Differentiated Services Codepoint (DSCP) to be used for PTP
Packit 9c3e7e
general messages. Must be a value between 0 and 63. There are several media
Packit 9c3e7e
streaming standards out there that recommend specific values for this option.
Packit 9c3e7e
For example 34 (AF41 PHB) in AES67 or 46 (EF PHB) in RAVENNA. The default
Packit 9c3e7e
is 0.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B dataset_comparison
Packit 9c3e7e
Specifies the method to be used when comparing data sets during the
Packit 9c3e7e
Best Master Clock Algorithm.  The possible values are "ieee1588" and
Packit 9c3e7e
"G.8275.x".  The default is "ieee1588".
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logging_level
Packit 9c3e7e
The maximum logging level of messages which should be printed.
Packit 9c3e7e
The default is 6 (LOG_INFO).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B message_tag
Packit 9c3e7e
The tag which is added to all messages printed to the standard output or system
Packit 9c3e7e
log.
Packit 9c3e7e
The default is an empty string (which cannot be set in the configuration file
Packit 9c3e7e
as the option requires an argument).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B verbose
Packit 9c3e7e
Print messages to the standard output if enabled.
Packit 9c3e7e
The default is 0 (disabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B use_syslog
Packit 9c3e7e
Print messages to the system log if enabled.
Packit 9c3e7e
The default is 1 (enabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B summary_interval
Packit 9c3e7e
The time interval in which are printed summary statistics of the clock. It is
Packit 9c3e7e
specified as a power of two in seconds. The statistics include offset root mean
Packit 9c3e7e
square (RMS), maximum absolute offset, frequency offset mean and standard
Packit 9c3e7e
deviation, and path delay mean and standard deviation. The units are
Packit 9c3e7e
nanoseconds and parts per billion (ppb). If there is only one clock update in
Packit 9c3e7e
the interval, the sample will be printed instead of the statistics. The
Packit 9c3e7e
messages are printed at the LOG_INFO level.
Packit 9c3e7e
The default is 0 (1 second).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B time_stamping
Packit 9c3e7e
The time stamping method. The allowed values are hardware, software and legacy.
Packit 9c3e7e
The default is hardware.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B productDescription
Packit 9c3e7e
The product description string. Allowed values must be of the form
Packit 9c3e7e
manufacturerName;modelNumber;instanceIdentifier and contain at most 64
Packit 9c3e7e
utf8 symbols. The default is ";;".
Packit 9c3e7e
.TP
Packit 9c3e7e
.B revisionData
Packit 9c3e7e
The revision description string which contains the revisions for node
Packit 9c3e7e
hardware (HW), firmware (FW), and software (SW). Allowed values are of
Packit 9c3e7e
the form HW;FW;SW and contain at most 32 utf8 symbols. The default is
Packit 9c3e7e
an ";;".
Packit 9c3e7e
.TP
Packit 9c3e7e
.B userDescription
Packit 9c3e7e
The user description string. Allowed values are of the form
Packit 9c3e7e
name;location and contain at most 128 utf8 symbols. The default is an
Packit 9c3e7e
empty string.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B manufacturerIdentity
Packit 9c3e7e
The manufacturer id which should be an OUI owned by the manufacturer.
Packit 9c3e7e
The default is 00:00:00.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B kernel_leap
Packit 9c3e7e
When a leap second is announced, let the kernel apply it by stepping the clock
Packit 9c3e7e
instead of correcting the one-second offset with servo, which would correct the
Packit 9c3e7e
one-second offset slowly by changing the clock frequency (unless the
Packit 9c3e7e
.B step_threshold
Packit 9c3e7e
option is set to correct such offset by stepping).
Packit 9c3e7e
Relevant only with software time stamping. The default is 1 (enabled).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B timeSource
Packit 9c3e7e
The time source is a single byte code that gives an idea of the kind
Packit 9c3e7e
of local clock in use. The value is purely informational, having no
Packit 9c3e7e
effect on the outcome of the Best Master Clock algorithm, and is
Packit 9c3e7e
advertised when the clock becomes grand master.
Packit Service 6593c5
.TP
Packit Service 6593c5
.B hwts_filter
Packit Service 6593c5
Select the hardware time stamp filter setting mode.
Packit Service 6593c5
Possible values are normal, check, full.
Packit Service 6593c5
Normal mode set the filters as needed.
Packit Service 6593c5
Check mode only check but do not set.
Packit Service 6593c5
Full mode set the receive filter to mark all packets with hardware time stamp,
Packit Service 6593c5
 so all applications can get them.
Packit Service 6593c5
The default is normal.
Packit 9c3e7e
Packit 9c3e7e
.SH UNICAST DISCOVERY OPTIONS
Packit 9c3e7e
Packit 9c3e7e
.TP
Packit 9c3e7e
.B table_id
Packit 9c3e7e
Each table must begin with a unique, positive table ID.  The port that
Packit 9c3e7e
claims a given table does so by including the ID as the value of
Packit 9c3e7e
its 'unicast_master_table' option.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B logQueryInterval
Packit 9c3e7e
This option configures the time to wait between unicast negotiation
Packit 9c3e7e
attempts.  It is specified as a power of two in seconds.
Packit 9c3e7e
The default is 0 (1 second).
Packit 9c3e7e
.TP
Packit 9c3e7e
.B peer_address
Packit 9c3e7e
This option specifies the unicast address of the peer for use with the
Packit 9c3e7e
peer to peer delay mechanism.  If specified, the port owning the table
Packit 9c3e7e
will negotiate unicast peer delay responses from the machine at the
Packit 9c3e7e
given remote address, otherwise the port will send multicast peer
Packit 9c3e7e
delay requests.
Packit 9c3e7e
.TP
Packit 9c3e7e
.B L2|UDPv4
Packit 9c3e7e
Each table entry specifies the transport type and network address of a
Packit 9c3e7e
potential remote master.  If multiple masters are specified, then
Packit 9c3e7e
unicast negotiation will be performed with each if them.
Packit 9c3e7e
Packit 9c3e7e
.SH TIME SCALE USAGE
Packit 9c3e7e
Packit 9c3e7e
.B ptp4l
Packit 9c3e7e
as domain master either uses PTP or UTC time scale depending on time stamping
Packit 9c3e7e
mode.  In software and legacy time stamping modes it announces Arbitrary time
Packit 9c3e7e
scale mode, which is effectively UTC here, in hardware time stamping mode it
Packit 9c3e7e
announces use of PTP time scale.
Packit 9c3e7e
Packit 9c3e7e
When
Packit 9c3e7e
.B ptp4l
Packit 9c3e7e
is the domain master using hardware time stamping, it is up to
Packit 9c3e7e
.B phc2sys
Packit 9c3e7e
to maintain the correct offset between UTC and PTP times. See
Packit 9c3e7e
.BR phc2sys (8)
Packit 9c3e7e
manual page for more details.
Packit 9c3e7e
Packit 9c3e7e
.SH SEE ALSO
Packit 9c3e7e
.BR pmc (8),
Packit 9c3e7e
.BR phc2sys (8)