Default Configuration Parameters

The following tables summarize the default configuration values found in default.cfg. Refer to ptp4l(8) for a complete listing of all configuration options.


Default Program and Clock Options

OptionDefault ValueDescription
clientOnly0The local clock is a client-only clock if enabled (1).
The default is disabled (0).
clockAccuracy0xFEUsed in the PTP server selection algorithm.
clockClass248Denotes the traceability of the time distributed by the grandmaster clock.
dataset_comparisonieee1588Specifies the method used when comparing data sets during the Best Master Clock Algorithm. Possible values are ieee1588 andG.8275.x.
domainNumber0The domain attribute of the local clock.
dscp_event0Defines the Differentiated Services Codepoint (DSCP) to be used for PTP event messages. Must be a value between 0 and 63. There are several media streaming standards that require specific values for this option.
dscp_general0Defines the Differentiated Services Codepoint (DSCP) to be used for PTP general messages. Must be a value between 0 and 63. There are several media streaming standards that recommend specific values for this option.
free_running01: Don’t adjust the local clock (enabled).
0: Disabled.
freq_est_interval1The time interval over which is estimated the ratio of the local and peer clock frequencies. It is specified as a power of two in seconds. The default is 2 seconds (1).
G.8275.defaultDS.localPriority128The Telecom profiles (ITU-T G.8275.1 and G.8275.2) specify an alternate Best Master Clock Algorithm with a unique data set comparison algorithm. The value of this option is associated with the local clock and is used as a tie breaker whenever clockClass, clockAccuracy, offsetScaledLogVariance, and priority2 are equal. This option is only used when dataset_comparison is set to G.8275.x.
maxStepsRemoved255When using this option, if the value of stepsRemoved of an Announce message is greater than or equal to the value of maxStepsRemoved the Announce message is not considered in the operation of the BMCA.
offsetScaledLogVariance0xFFFFCharacterizes the stability of the clock.
priority1128The priority1 attribute of the local clock used in the PTP server selection algorithm, lower values take precedence. Must be in the range 0 to 255.
priority2128The priority2 attribute of the local clock used in the PTP server selection algorithm, lower values take precedence. Must be in the range 0 to 255.
socket_priority0Configure the SO_PRIORITY of sockets to route ptp4l traffic using Linux qdiscs for traffic shaping. This option is only available with the IEEE 802.3 transport and is silently ignored when using UDP. Must be in the range of 0 to 15.
twoStepFlag11: Enable two-step mode for sync messages.
0: One-step mode can be used only with hardware time stamping.
utc_offset37The current offset between TAI and UTC.

Default Port Options

OptionDefault ValueDescription
announceReceiptTimeout3The number of missed Announce messages before the last Announce messages expires.
asCapableautotrue: all the checks which can unset asCapable variable (as described in Section 10.2.4.1 of 802.1AS) are skipped.
auto: asCapable is initialized to false and will be set to true after the relevant checks have passed.
BMCAptpEnables use of static roles for server and client devices instead of running the BMCA algorithm. This can speed up start time when you know the roles of the devices.
noop: the traditional BMCA algorithm used by 1588 is skipped. masterOnly and clientOnly will be used to determine the role for the device.
ptp: runs the BMCA-related state machines.
delayAsymmetry0The time difference in nanoseconds of the transmit and receive paths. This value should be positive when the server-to-client propagation time is longer and negative when the client-to-server time is longer.
delay_response_timeout0The number of delay response messages that may go missing before triggering a synchronization fault.
0: disable the delay response timeout.
fault_reset_interval4The time in seconds between the detection of a port’s fault and the fault being reset, expressed as a power of two. The default is 16 seconds (4).
-128 or ASAP: reset the fault immediately.
G.8275.portDS.localPriority128The value is associated with Announce messages arriving on a particular port and is used as a tie breaker whenever clockClass, clockAccuracy, offsetScaledLogVariance, and priority2 are equal. Only used when dataset_comparison is set to G.8275.x.
inhibit_announce0Disable the timer for announce messages and the announce message timeout timer. Used by the Automotive profile when switching over to a static BMCA.
1: If this option is enabled, ignore_source_id has to be enabled in the client because it has no way to identify the server in the Sync and Follow_Up messages.
inhibit_delay_req0Don’t send any delay requests.
1: will need the asCapable option to be set to true. This is useful when running as a designated server who does not need to calculate offset from client.
ignore_source_id01: disables source port identity checking for Sync and Follow_Up messages. This is useful when announce messages are disabled in the server and the client does not have any way to know the server’s identity.
logAnnounceInterval1The mean time interval between Announce messages, specified as a power of two in seconds. A shorter interval makes ptp4l react faster to changes in the client/server hierarchy. The interval should be the same in the whole domain. The default is 2 seconds (1).
logMinDelayReqInterval0The minimum permitted mean time interval between Delay_Req messages, specified as a power of two in seconds. A shorter interval makes ptp4l react faster to the changes in the path delay. The default is 1 second (0).
logMinPdelayReqInterval0The minimum permitted mean time interval between Pdelay_Req messages, specified as a power of two in seconds. The default is 1 second (0).
logSyncInterval0The mean time interval between Sync messages, specified as a power of two in seconds. A shorter interval may improve accuracy of the local clock. The default is 1 second (0).
neighborPropDelayThresh20000000Upper limit for peer delay in nanoseconds. If the estimated peer delay is greater than this value the port is marked as not 802.1AS capable.
operLogPdelayReqInterval0The Pdelay Request messages interval used once the clock enters the SERVO_LOCKED_STABLE state. If msg_interval_request is set, the local client port will adopt this rate when the local clock enters the locked stable state. This option is specified as a power of two in seconds, and the default value is 1 second (0).
operLogSyncInterval0The Sync message interval to be requested once the clock enters the SERVO_LOCKED_STABLE state. If msg_interval_request is set, the local client port will request the remote server to switch to the given message rate via a signaling message containing a Message interval request TLV. This option is specified as a power of two in seconds, and default value is 1 second (0).
serverOnly01: prevents the port from entering the client state and the local clock will ignore Announce messages received on this port. Supports the Telecom Profiles according to ITU-T G.8265.1, G.8275.1, and G.8275.2.
syncReceiptTimeout0The number of sync/follow up messages that may go missing before triggering a Best Master Clock election. Used for running in gPTP mode according to the 802.1AS-2011 standard.
0: disable the sync message timeout.

Default Run Time Options

OptionDefault ValueDescription
assume_two_step01: treat one-step responses as two-step. Used to work around buggy 802.1AS switches.
check_fup_sync01: adds an additional check using the software time stamps from the networking stack to verify the sync message arrived first. This is only useful if you do not trust the sequence IDs generated by the server.
clock_class_threshold248The maximum clock class value from master, acceptible to sub-ordinate clock beyond which it moves out of lock state.
follow_up_info01: include the 802.1AS data in the Follow_Up messages.
hybrid_e2e01: hybrid delay mechanism from the draft Enterprise Profile. When enabled, ports in the client state send their delay request messages to the unicast address taken from the server’s announce message. Ports in the server state will reply to unicast delay requests using unicast delay responses. This option has no effect if the delay_mechanism is set to P2P.
inhibit_multicast_service0Some unicast mode profiles insist that no multicast message are ever transmitted. Setting this option to 1 inhibits multicast transmission.
kernel_leap1When a leap second is announced, let the kernel apply it by stepping the clock instead of correcting the one-second offset with servo. Relevant only with software time stamping.
logging_level6The maximum logging level of messages which should be printed. The default is LOG_INFO (6).
net_sync_monitor01: enables the NetSync Monitor (NSM) protocol which allows a station to measure how well another node is synchronized. Requires hybrid_e2e to also be enabled.
path_trace_enabled01: Enable the mechanism used to trace the route of the Announce messages.
summary_interval0The time interval, specified as a power of two in seconds, in which are printed summary statistics of the clock at the LOG_INFO level. The default is 1 second (0).
tc_spanning_tree0When running as a Transparent Clock, increment the stepsRemoved field of Announce messages that pass through the switch. Enabling this option ensures that PTP message loops never form, provided the switches all implement this option together with the BMCA.
tx_timestamp_timeout10The number of milliseconds to poll waiting for the tx time stamp from the kernel when a message has recently been sent.
unicast_listen01: allows the port to grant unicast message contracts. Incoming requests for will be granted limited only by the amount of memory available.
unicast_master_table0When set to a positive integer, specifies the table id to be used for unicast discovery. The default is 0 (unicast discovery disabled).
unicast_req_duration3600The service time, in seconds, requested during unicast discovery. Note that the remote node is free to grant a different duration.
use_syslog11: print messages to the system log.
verbose01: print messages to the standard output.

Default Servo Options

OptionDefault ValueDescription
clock_servopiThe servo which is used to synchronize the local clock.
pi: PI controller
linreg: an adaptive controller using linear regression
ntpshm: NTP SHM reference clock to allow another process to synchronize the local clock (the SHM segment number is set to the domain number)
nullf: a servo that always dials frequency offset zero (for use in SyncE nodes).
first_step_threshold0.00002Maximum offset, specified in seconds, the servo will correct by changing the clock frequency instead of stepping the clock. This is only applied on the first update. When set to 0.0, the servo won’t step the clock on start. The default is 20 microseconds (0.00002).
max_frequency900000000Maximum allowed frequency adjustment of the clock in parts per billion. This is an additional limit to the maximum allowed by the hardware. When set to 0, the hardware limit will be used. The default is 900000000 90% (900000000).
msg_interval_request01: triggers an adjustment to the Sync and peer delay request message intervals when the clock servo transitions into the SERVO_LOCKED_STABLE state. The values to use for the new Sync and peer delay request intervals are specified by operLogSyncInterval and operLogPdelayReqInterval.
ntpshm_segment0he number of the SHM segment used by ntpshm servo.
pi_integral_const0.0The integral constant of the PI controller.
pi_integral_exponent0.4The ki_exponent constant in the formula used to set the integral constant of the PI controller from the sync interval.
pi_integral_norm_max0.3The ki_norm_max constant in the formula used to set the integral constant of the PI controller from the sync interval.
pi_integral_scale0.0The ki_scale constant in the formula used to set the integral constant of the PI controller from the sync interval.
pi_proportional_const0.0The proportional constant of the PI controller.
pi_proportional_exponent-0.3The kp_exponent constant in the formula used to set the proportional constant of the PI controller from the sync interval.
pi_proportional_norm_max0.7The kp_norm_max constant in the formula used to set the proportional constant of the PI controller from the sync interval.
pi_proportional_scale0.0The kp_scale constant in the formula used to set the proportional constant of the PI controller from the sync interval.
sanity_freq_limit200000000The maximum allowed frequency offset between uncorrected clock and the system monotonic clock in parts per billion. This is used as a sanity check of the synchronized clock. When a larger offset is measured, a warning message will be printed and the servo will be reset. When set to 0, the sanity check is disabled. The default is 20% (200000000).
servo_num_offset_values10The number of offset values considered in order to transition from the SERVO_LOCKED to the SERVO_LOCKED_STABLE state. The transition occurs once the last servo_num_offset_values offsets are all below the servo_offset_threshold value.
servo_offset_threshold0The offset threshold used to transition from SERVO_LOCKED to SERVO_LOCKED_STABLE. The transition occurs once the last servo_num_offset_values offsets are all below the threshold value. The default is disabled (0).
step_threshold0.0The maximum offset, in seconds, the servo will correct by changing the clock frequency instead of stepping the clock. 0.0: the servo will never step the clock except on start.
write_phase_mode01: enables the write phase feature of a PTP Hardware Clock. If supported by the device, this mode uses the hardware’s built in phase offset control instead of frequency offset control.

Default Transport Options

OptionDefault ValueDescription
p2p_dst_mac01:80:C2:00:00:0EThe MAC address to which peer delay messages should be sent. Relevant only with L2 transport.
ptp_dst_mac01:1B:19:00:00:00The MAC address to which PTP messages should be sent. Relevant only with L2 transport.
transportSpecific0x0The transport specific field. Must be in the range 0 to 255.
udp_ttl1Specifies the TTL value for IPv4 multicast messages and the hop limit for IPv6 multicast messages. Only relevant with IPv4/IPv6 UDP transports. The default (1) restricts messages sent by ptp4l to the same subnet.
udp6_scope0x0ESpecifies the scope for IPv6 multicast messages (RFC 4291). The default (0x0E) is for the global scope.
uds_address/var/run/ptp4lAddress of the UNIX domain socket for receiving local management messages.
uds_file_mode0660File mode of the UNIX domain socket used for receiving local management messages, specified as an octal number.
uds_ro_address/var/run/ptp4lroAddress of the second UNIX domain socket for receiving local management messages, which is restricted to GET actions and does not forward messages to other ports. Access to this socket can be given to untrusted applications for monitoring purposes.
uds_ro_file_mode0666File mode of the second (read-only) UNIX domain socket used for receiving local management messages, specified as an octal number.

Default Interface Options

OptionDefault ValueDescription
boundary_clock_jbod01: allows ptp4l to work as a boundary clock using “just a bunch of devices” that are not synchronized to each other. The collection of clocks must be synchronized by an external program, for example phc2sys(8) in automatic mode.
clock_typeOCSpecifies the kind of PTP clock.
OC: ordinary clock
BC: boundary clock
P2P_TC: peer to peer transparent clock
E2E_TC: end to end transparent clock. A multi-port ordinary clock will automatically be configured as a boundary clock.
delay_filtermoving_medianAlgorithm used to filter the measured delay and peer delay. Possible values are moving_average and moving_median.
delay_filter_length10Length of the delay filter in samples.
delay_mechanismE2EDelay mechanism. Possible values are E2E, P2P, and Auto.
egressLatency0Difference in nanoseconds between the actual transmission time at the reference plane and the reported transmit time stamp. This value is added to egress time stamps obtained from the hardware.
ingressLatency0Difference in nanoseconds between the reported receive time stamp and the actual reception time at reference plane. This value is subtracted from ingress time stamps obtained from the hardware.
network_transportUDPv4Possible values are UDPv4, UDPv6, and L2.
phc_index-1Index of the PHC used for synchronization with hardware timestamping. Useful with virtual clocks running on top of a free-running physical clock.
-1: index is set to the PHC associated with the interface or the device specified by the -p option.
time_stampinghardwareTime stamping method. Allowed values are hardware, software, legacy, onestep, and p2p1step.
tsproc_modefilterTime stamp processing mode used to calculate offset and delay. Possible values are filter, raw, filter_weight, and raw_weight. Raw modes perform well when the rate of sync messages is similar to the rate of delay messages. Weighting is useful with larger network jitters.

Default Clock Description

OptionDefault ValueDescription
productDescription;;Product description string. Allowed values must be of the form manufacturerName;modelNumber;instanceIdentifier and contain at most 64 utf8 symbols.
revisionData;;Revision description string which contains the revisions for node hardware (HW), firmware (FW), and software (SW). Allowed values are of the form HW;FW;SW and contain at most 32 utf8 symbols.
manufacturerIdentity00:00:00The manufacturer id which should be an OUI owned by the manufacturer.
userDescription;User description string. Allowed values are of the form name;location and contain at most 128 utf8 symbols.
timeSource0xA0A single byte code representing the kind of local clock in use. The value is purely informational, having no effect on the outcome of the Best Master Clock algorithm, and is advertised when the clock becomes grand master.