1ptpd2.conf(5)                  PTPd config file                  ptpd2.conf(5)
2
3
4

NAME

6       ptpd2.conf - Precision Time Protocol daemon config file
7
8

CONFIGURATION FILE FORMAT

10       Settings  in  the PTPd configuration file are grouped into sections and
11       take the form of section:key="value" variables. The configuration  file
12       can  either  be  formatted  that way (preferred) or  in .ini file style
13       where a series of key="value" variables is grouped into sections  using
14       [section]  headers.  Every setting listed here can also be specified as
15       a command line parameter  (--section:key=value).  Quotation  marks  are
16       optional.  NOTE: the configuration file must end with a newline.
17
18

RELOADING CONFIGURATION

20       Only  a  small  number  of configuration file settings (SNMP, lock file
21       configuration) requires a restart of the PTPd process to  take  effect.
22       All other settings can be changed while ptpd is running - configuration
23       file is reloaded and checked for changes when PTPd receives the  SIGHUP
24       signal.  When reloading configuration, PTPd will always attempt to test
25       settings before applying them and once running, will never  exit  as  a
26       result  of configuration errors. If it does exit during config refresh,
27       this is most likely a bug.
28
29

COMMAND-LINE PRIORITY

31       Any setting passed as a command line parameter will always take  prior‐
32       ity  over  the  configuration file, so once ptpd is running, those set‐
33       tings cannot be changed - a warning will be logged on every attempt  to
34       change those settings using the configuration file.
35
36

CONFIGURATION SECTIONS

38       ptpengine PTP protocol specific configuration
39
40       clock  Clock related settings
41
42       servo  Clock control PI servo configuration
43
44       global Global configuration - logging, etc.
45
46       ntpengine
47              NTP control configuration
48
49       variables
50              User-defined variables
51
52

USER-DEFINED VARIABLES

54       To  allow  for easier management and automated generation of configura‐
55       tion, PTPd supports user variables, which can be defined in the config‐
56       uration   file   or   in  command  line.  They  are  defined  as  vari‐
57       ables:[name]=[value], or if using .ini style format, in the [variables]
58       section.  Once  defined, a variable can be referred to in the remaining
59       configuration settings as @name@, and is substituted with the value  of
60       the variable
61
62       Example:
63
64       variables:instance=server15
65
66       global:status_file=/var/run/ptpd2.@instance@.status
67
68       global:log_file=/var/run/ptpd2.@instance@.status
69
70       Note:  for  the same effect, ptpd can be run from command line, such as
71       --config=/path/to/file --variables:instance=server15
72
73

BUILT_IN VARIABLES

75       PTPd includes suppport for built-in variables,  automatically  defined.
76       The following variables are automatically substituted:
77
78       @pid@ - current PTPd process ID @hostname@ - current host name
79
80
81

CONFIGURATION TEMPLATES AND TEMPLATE FILES

83       As of version 2.3.1.1, ptpd enables the user to minimise the configura‐
84       tion effort for common scenarios, using built-in templates and template
85       files.  A  template  is  a  named  set of pre-defined settings whic are
86       prepended before any other settings, so user can still  overwrite  set‐
87       tings  provided  by  the template. To use this feature, set global:con‐
88       fig_templates=[name],[name],... in the configuration file, or run  ptpd
89       with  --global:config_templates=[name],[name],....  Multiple  templates
90       can be specified, separated by comma, space or tab; they are applied in
91       the order they are provided, so template settings override any overlap‐
92       ping settings from previous templates specified. Templates can  include
93       user-defined variables.
94
95       A  number  of  template files can also be supplied with the global:tem‐
96       plate_files setting (comma, space or tab separated lis of file  paths).
97       The template files will be processed in the order they are provided in,
98       so for overlapping settings, the last template applied  overrides  set‐
99       tings  applied  by any previous templates. PTPd will also try to load a
100       default template file on startup: templates.conf from the default  data
101       directory: /usr/share/ptpd/templates.conf
102
103       The  template file is formatted in .ini style - each template is a sec‐
104       tion defined as [template-name], followed by a number of settings spec‐
105       ified as section:setting.
106
107       Example:
108
109       [my-template]
110
111       global:verbose_foreground=Y
112
113       ptpengine:preset=slaveonly
114
115
116       To  see  the  list of available built-in templates, run ptpd with -T or
117       --show-templates
118
119

CONFIGURATION VARIABLES

121       ptpengine:interface [STRING]
122
123               usage   Network interface to use - eth0, igb0 etc.  (required).
124                       See also ptpengine:backup_interface.
125
126               default [none]
127
128
129       ptpengine:backup_interface [STRING]
130
131               usage   Backup  network interface to use - eth0, igb0 etc. When
132                       no GM available, slave will  keep  alternating  between
133                       primary and secondary until a GM is found.
134
135               default [none]
136
137
138       ptpengine:preset [SELECT]
139
140               options none slaveonly masteronly masterslave
141
142               usage   PTP engine preset:
143
144                           none        Defaults, no clock class restrictions
145
146                           slaveonly   Slave only (clock class 255 only)
147
148                           masteronly  Master,  passive  when  not best master
149                                       (clock class 0..127)
150
151                           masterslave Full IEEE 1588 implementation:  Master,
152                                       slave when not best master (clock class
153                                       128..254)
154
155               default slaveonly
156
157               NOTE:   Presets     affect     the     following      settings:
158                       ptpengine:slave_only,        clock_no_adjust        and
159                       ptpengine:clock_class (range and  default  value).   To
160                       see all preset settings, run ptpd2 -H (--long-help)
161
162
163       ptpengine:transport [SELECT]
164
165               options ipv4 ethernet
166
167               usage   Transport  type  for PTP packets. NOTE: Ethernet trans‐
168                       port requires building with libpcap  and  is  not  sup‐
169                       ported on Solaris as of 2.3.1, and cannot be enabled on
170                       those systems unless ptpd is  compiled  with  --enable-
171                       experimental-options.
172
173               default ipv4
174
175
176       ptpengine:dot1as [BOOLEAN]
177
178               usage   Enable  IEEE 802.1AS / AVB compatibility (transportSpe‐
179                       cific field in PTP message headers).  Requires Ethernet
180                       transport  as  this is the only mapping used by 802.1AS
181                       that PTP supports
182
183               default N
184
185
186       ptpengine:ip_mode [SELECT]
187
188               options multicast unicast hybrid
189
190               usage   IP transmission mode (requires IP transport):
191
192                           multicast   uses multicast for all messages
193
194                           hybrid      uses  multicast for sync and  announce,
195                                       and   unicast  for  delay  request  and
196                                       response
197
198                           unicast     uses unicast for all transmission. When
199                                       unicast  mode  is selected, destination
200                                       IP(s) (ptpengine:unicast_ destinations)
201                                       must be configured depending on unicast
202                                       negotiation   setting   (ptpengine:uni‐
203                                       cast_negotiation)  and  master or slave
204                                       role  (see:  ptpengine:unicast_destina‐
205                                       tions)
206
207               default multicast
208
209
210       ptpengine:disabled [BOOLEAN]
211
212               usage   Disable  PTP port. Causes the PTP state machine to stay
213                       in PTP_DISABLED state indefinitely,  until  it  is  re-
214                       enabled via configuration change or ENABLE_PORT manage‐
215                       ment message.
216
217               default N
218
219
220       ptpengine:unicast_negotiation [BOOLEAN]
221
222               usage   Enable unicast negotiation support using signaling mes‐
223                       sages   -   as  used  by  the  Telecom  profile  (ITU-T
224                       G.8265.1).
225
226               default N
227
228
229       ptpengine:unicast_grant_duration [INT: 30 .. 604800]
230
231               usage   Duration (seconds) for which the transmission  of  uni‐
232                       cast messages is granted by a master, or requested by a
233                       slave when unicast negotiation is used  (ptpengine:uni‐
234                       cast_negotiation).   When  using  PTPd  with  other PTP
235                       implementations, PTPd will never refuse to grant a mes‐
236                       sage based on the requested duration: it will grant for
237                       30 seconds if requested for any less than  30  seconds,
238                       and will grant for 7 days (604800) if requested for any
239                       longer.
240
241               default 300
242
243
244       ptpengine:disable_bmca [BOOLEAN]
245
246               usage   Disable Best Master Clock Algorithm  for  unicast  mas‐
247                       ters.  Only  effective  for  masteronly  preset  -  all
248                       Announce messages will be ignored  and  the  cock  will
249                       transition  directly  into  MASTER  state and remain an
250                       active master. This behaviour is required  for  Telecom
251                       profile operation.
252
253               default N
254
255
256       ptpengine:unicast_any_master [BOOLEAN]
257
258               usage   When using unicast negotiation (slave), accept PTP mes‐
259                       sages from any grandmaster.  By default, only  messages
260                       from   acceptable  masters  (ptpengine:unicast_destina‐
261                       tions) are  accepted,  and  only  if  transmission  was
262                       granted by the GM. This setting can be used when mixing
263                       GMs supporting G.8265.1 and manual unicast (no negotia‐
264                       tion),  or to assist with interoperability issues where
265                       signaling messages and timing messages come  from  dif‐
266                       ferent port identities.
267
268               default N
269
270
271       ptpengine:unicast_port_mask [INT: 0 .. 65535 (0xFFFF)]
272
273               usage   PTP  port  number  wildcard  mask (16-bit) applied onto
274                       port  identities  when  running  unicast   negotiation:
275                       allows  multiple  port  identities (with the same clock
276                       ID) to be accepted as coming from the same port.   This
277                       option  can  be used as a workaround where a node sends
278                       signaling messages and timing messages  with  different
279                       port  identities.  NOTE:  This  can  also be entered in
280                       hexadecimal notation (0xNNNN).
281
282               default 0
283
284
285       ptpengine:disable_udp_checksums [BOOLEAN]
286
287               usage   Disable UDP checksum validation on UDP  sockets  (Linux
288                       only).  Workaround  for  situations  where a node (like
289                       Transparent Clock) does not rewrite checksums.  Enabled
290                       by default.
291
292               default Y
293
294
295       ptpengine:use_libpcap [BOOLEAN]
296
297               usage   Use libpcap for sending and receiving traffic (automat‐
298                       ically enabled in Ethernet  mode).   Requires  building
299                       with  libpcap  - builds made with --disable-pcap cannot
300                       use this feature, and as of 2.3.1, Solaris systems will
301                       not   attempt  to  use  libpcap  unless  compiled  with
302                       --enable-experimental-options
303
304               default N
305
306
307       ptpengine:delay_mechanism [SELECT]
308
309               options E2E P2P DELAY_DISABLED
310
311               usage   Delay detection mechanism used - use DELAY_DISABLED for
312                       syntonisation only (no synchronisation). E2E uses Delay
313                       Request messages, P2P uses Peer Delay Request messages.
314
315               default E2E
316
317
318       ptpengine:domain [INT: 0 .. 127]
319
320               usage   PTP domain number.
321
322               default 0
323
324
325       ptpengine:any_domain [BOOLEAN]
326
327               usage   Usability extension: if  enabled,  a  slave-only  clock
328                       will  accept  masters from any domain, while preferring
329                       the configured domain, and preferring lower domain num‐
330                       ber.  This  option should be used for slave-only clocks
331                       and should not be used with unicast negotiation.  NOTE:
332                       this behaviour is not part of the standard.
333
334               default N
335
336
337       ptpengine:port_number [INT: 1 .. 65534]
338
339               usage   PTP  port  number  (part of PTP Port Identity - not UDP
340                       port).  For ordinary clocks (single port), the  default
341                       should  be used, but when running multiple instances to
342                       simulate a boundary  clock,  The  port  number  can  be
343                       changed.
344
345               default 1
346
347
348       ptpengine:port_description [STRING: 64 characters max]
349
350               usage   User  description  of  the  PTP  port  -  this value is
351                       returned in  response  to  USER_DESCRIPTION  management
352                       message and CLOCK_DESCRIPTION management message.
353
354               default [ptpd]
355
356
357       ptpengine:slave_only [BOOLEAN]
358
359               usage   Slave  only  mode  (sets clock class to 255, overriding
360                       value from preset).
361
362               default Y
363
364
365       ptpengine:inbound_latency [INT]
366
367               usage   Specify latency correction (nanoseconds)  for  incoming
368                       packets.
369
370               default 0
371
372
373       ptpengine:outbound_latency [INT]
374
375               usage   Specify  latency  correction (nanoseconds) for outgoing
376                       packets.
377
378               default 0
379
380
381       ptpengine:offset_shift [INT]
382
383               usage   Apply an arbitrary shift (nanoseconds) to  offset  from
384                       master  when  in  slave state. Value can be positive or
385                       negative - useful for correcting for of antenna  laten‐
386                       cies, delay assymetry and IP stack latencies. This will
387                       not be visible in the offset from master value  -  only
388                       in the resulting clock correction.
389
390               default 0
391
392
393       ptpengine:always_respect_utc_offset [BOOLEAN]
394
395               usage   Compatibility  option:  In  slave state, always respect
396                       UTC offset announced by best master, even if the the
397                        currrentUtcOffsetValid flag is announced FALSE.  NOTE:
398                       this behaviour is not part of the standard.
399
400               default N
401
402
403       ptpengine:prefer_utc_offset_valid [BOOLEAN]
404
405               usage   Compatibility extension to BMC algorithm: when enabled,
406                       BMC for both master and save clocks will prefer masters
407                       announcing currrentUtcOffsetValid as TRUE.
408                        NOTE: this behaviour is not part of the standard.
409
410               default N
411
412
413       ptpengine:require_utc_offset_valid [BOOLEAN]
414
415               usage   Compatibility  option:  when enabled, ptpd2 will ignore
416                       Announce messages from  masters  announcing  currentUt‐
417                       cOffsetValid as FALSE. NOTE: this behaviour is not part
418                       of the standard.
419
420               default N
421
422
423       ptpengine:log_announce_interval [INT: -4 .. 7]
424
425               usage   PTP announce message interval  in  master  state.  When
426                       using  unicast  negotiation (ptpengine:unicast_negotia‐
427                       tion), for slaves this is the initial (minimum)  inter‐
428                       val  requested  and  for  masters  this  is the minimum
429                       interval granted.  (expressed as log  2  i.e.  -1=0.5s,
430                       0=1s, 1=2s etc.)
431
432               default 1
433
434
435       ptpengine:log_announce_interval_max [INT: -1 .. 7]
436
437               usage   When  using unicast negtiation (ptpengine:unicast_nego‐
438                       tiation), this is the maximum announce interval granted
439                       by  a  master,  and  the  maximum interval a slave will
440                       attempt to request.  (expressed as log 2 i.e.  -1=0.5s,
441                       0=1s, 1=2s etc.)
442
443               default 5
444
445
446       ptpengine:announce_receipt_timeout [INT: 2 .. 255]
447
448               usage   PTP announce receipt timeout announced in master state.
449
450               default 6
451
452
453       ptpengine:announce_receipt_grace_period [INT: 0 .. 20]
454
455               usage   PTP  announce  receipt  timeout  grace  period in slave
456                       state: when announce receipt timeout occurs, disqualify
457                       current best GM,
458                        then  wait  n  times  announce  receipt timeout before
459                       resetting. Allows  for  a  seamless  GM  failover  when
460                       standby GMs are slow
461                        to react. When set to 0, this option is not used.
462
463               default 0
464
465
466       ptpengine:log_sync_interval [INT: -7 .. 7]
467
468               usage   PTP  sync  message interval in master state. When using
469                       unicast  negotiation   (ptpengine:unicast_negotiation),
470                       for  slaves  this  is  the  initial  (minimum) interval
471                       requested and for masters this is the minimum  interval
472                       granted.        (expressed as log 2 i.e. -1=0.5s, 0=1s,
473                       1=2s etc.)
474
475               default 0
476
477
478       ptpengine:log_sync_interval_max [INT: -1 .. 7]
479
480               usage   When using unicast negtiation  (ptpengine:unicast_nego‐
481                       tiation),  this is the maximum sync interval granted by
482                       a master, and the maximum interval a slave will attempt
483                       to  request.   (expressed  as log 2 i.e. -1=0.5s, 0=1s,
484                       1=2s etc.)
485
486               default 5
487
488
489       ptpengine:log_delayreq_override [BOOLEAN]
490
491               usage   Override the Delay Request interval  provided  by  best
492                       master.
493
494               default N
495
496
497       ptpengine:log_delayreq_auto [BOOLEAN]
498
499               usage   Automatically override the Delay Request interval (with
500                       ptpengine:log_delayreq_interval) if the received  value
501                       is  127  (0X7F),  such  as  in unicast messages, unless
502                       using unicast  negotiation  (ptpengine:unicast_negotia‐
503                       tion)
504
505               default Y
506
507
508       ptpengine:log_delayreq_interval_initial [INT: -7 .. 7]
509
510               usage   Delay  request  interval  used  before  receiving first
511                       delay response      (expressed as log 2  i.e.  -1=0.5s,
512                       0=1s, 1=2s etc.)
513
514               default 0
515
516
517       ptpengine:log_delayreq_interval [INT: -7 .. 7]
518
519               usage   Minimum delay request interval announced when in master
520                       state, in slave state overrides the master interval.
521                        (expressed as log 2 i.e. -1=0.5s,  0=1s,  1=2s  etc.).
522                       When using unicast negotiation (ptpengine:unicast_nego‐
523                       tiation), for slaves  this  is  the  initial  (minimum)
524                       interval  requested and for masters this is the minimum
525                       interval granted.
526
527               default 0
528
529
530       ptpengine:log_delayreq_interval_max [INT: -1 .. 7]
531
532               usage   When using unicast negtiation  (ptpengine:unicast_nego‐
533                       tiation),  this  is  the maximum delay request interval
534                       granted by a master, and the maximum interval  a  slave
535                       will attempt to request.
536                        (expressed as log 2 i.e. -1=0.5s, 0=1s, 1=2s etc.).
537
538               default 5
539
540
541       ptpengine:log_peer_delayreq_interval [INT: -7 .. 7]
542
543               usage   Minimum  peer delay request message interval in peer to
544                       peer delay mode (expressed as log 2 i.e. -1=0.5s, 0=1s,
545                       1=2s    etc.).    When    using   unicast   negotiation
546                       (ptpengine:unicast_negotiation), this  is  the  initial
547                       (minimum)  interval  requested  by a node from its peer
548                       and this is the minimum interval granted for a peer.
549
550               default 1
551
552
553       ptpengine:log_peer_delayreq_interval_max [INT: -1 .. 7]
554
555               usage   When using unicast negtiation  (ptpengine:unicast_nego‐
556                       tiation), this is the maximum peer delay request inter‐
557                       val granted by a node, and the maximum interval a  node
558                       will attempt to request from its peer.
559                        (expressed as log 2 i.e. -1=0.5s, 0=1s, 1=2s etc.).
560
561               default 5
562
563
564       ptpengine:foreignrecord_capacity [INT: 5 .. 10]
565
566               usage   Foreign  master  record size (Maximum number of foreign
567                       masters).
568
569               default 5
570
571
572       ptpengine:ptp_allan_variance [INT: 0 .. 65535]
573
574               usage   Specify Allan variance announced in master state.
575
576               default 28768
577
578
579       ptpengine:ptp_clock_accuracy [SELECT]
580
581               options ACC_25NS ACC_100NS ACC_250NS ACC_1US ACC_2.5US ACC_10US
582                       ACC_25US ACC_100US ACC_250US ACC_1MS ACC_2.5MS ACC_10MS
583                       ACC_25MS ACC_100MS ACC_250MS ACC_1S ACC_10S ACC_10SPLUS
584                       ACC_UNKNOWN
585
586               usage   Clock accuracy range announced in master state.
587
588               default ACC_UNKNOWN
589
590
591       ptpengine:utc_offset [INT]
592
593               usage   Underlying  time  source UTC offset announced in master
594                       state.
595
596               default 0
597
598
599       ptpengine:utc_offset_valid [BOOLEAN]
600
601               usage   Underlying time source UTC offset validity announced in
602                       master state.
603
604               default N
605
606
607       ptpengine:time_traceable [BOOLEAN]
608
609               usage   Underlying  time  source time traceability announced in
610                       master state.
611
612               default N
613
614
615       ptpengine:frequency_traceable [BOOLEAN]
616
617               usage   Underlying time source frequency traceability announced
618                       in master state.
619
620               default N
621
622
623       ptpengine:ptp_timescale [SELECT]
624
625               options PTP ARB
626
627               usage   Time  scale  announced  in  master state (with ARB, UTC
628                       properties are ignored by slaves). When clock class  is
629                       set to 13 (application specific), this value is ignored
630                       and ARB is used.
631
632               default ARB
633
634
635       ptpengine:ptp_timesource [SELECT]
636
637               options ATOMIC_CLOCK GPS  TERRESTRIAL_RADIO  PTP  NTP  HAND_SET
638                       OTHER INTERNAL_OSCILLATOR
639
640               usage   Time source announced in master state.
641
642               default INTERNAL_OSCILLATOR
643
644
645       ptpengine:clock_class [INT: 0 .. 255]
646
647               usage   Clock class - announced in master state. Always 255 for
648                       slave-only.  Minimum, maximum and  default  values  are
649                       controlled  by presets.  If set to 13 (application spe‐
650                       cific time source), announced time scale is always  set
651                       to  ARB.   This  setting controls the states a PTP port
652                       can be in. If below 128, port will only be in MASTER or
653                       PASSIVE  states  (master only). If above 127, port will
654                       be in MASTER or SLAVE states.
655
656               default 255
657
658
659       ptpengine:priority1 [INT: 0 .. 248]
660
661               usage   Priority 1 announced in master state,used for Best Mas‐
662                       ter       Clock selection.
663
664               default 128
665
666
667       ptpengine:priority2 [INT: 0 .. 248]
668
669               usage   Priority  2  announced  in  master state, used for Best
670                       Master       Clock selection.
671
672               default 128
673
674
675       ptpengine:max_listen [INT: min: 1 ]
676
677               usage   Number of  consecutive  protocol  resets  to  LISTENING
678                       before full network reset.
679
680               default 5
681
682
683       ptpengine:unicast_destinations [STRING]
684
685               usage   An IPv4 address or list of IPv4 addresses to be used as
686                       unicast   destinations.    When   unicast   negotiation
687                       (ptpengine:unicast_negotiation)   is  enabled,  setting
688                       this is mandatory for slaves as they must be  aware  of
689                       which GMs to request messages from.  When unicast nego‐
690                       tiation is disabled, setting this is mandatory for GMs,
691                       as they must deliver messages to a pre-configured group
692                       of slaves.
693
694               default [none]
695
696
697       ptpengine:unicast_domains [STRING]
698
699               usage   Specify PTP domain number for each  configured  unicast
700                       destination  (ptpengine:unicast_destinations).  This is
701                       only used by slave-only clocks using  multiple  unicast
702                       destinations  to allow for each master to be in a sepa‐
703                       rate domain, such as with Telecom Profile.  The  number
704                       of  entries should match the number of unicast destina‐
705                       tions, otherwise unconfigured domains or domains set to
706                       0  are  set  to  domain configured in ptpengine:domain.
707                       The format is a comma, tab or space-separated  list  of
708                       8-bit unsigned integers (0 .. 255).
709
710               default [none]
711
712
713       ptpengine:unicast_local_preference [STRING]
714
715               usage   Specify  a local preference for each configured unicast
716                       destination (ptpengine:unicast_destinations).  This  is
717                       only  used  by slave-only clocks using multiple unicast
718                       destinations to allow for each master's  BMC  selection
719                       to  be  influenced  locally  by the slave, such as with
720                       Telecom Profile. The number of entries should match the
721                       number  of unicast destinations, otherwise unconfigured
722                       preference is set to 255 (lowest), so that  the  uncon‐
723                       figurest   entries   do  not  pre-empt  the  configured
724                       entries. The format is a comma, tab or  space-separated
725                       list of 8-bit unsigned integers (0 .. 255).
726
727               default [none]
728
729
730       ptpengine:unicast_peer_destination [STRING]
731
732               usage   When  using IP unicast mode (ptpengine:ip_mode=unicast)
733                       and Peer to Peer delay mechanism (ptpengine:delay_mech‐
734                       anism=P2P),  a peer unicast destination must be config‐
735                       ured to request the peer delay from. Format is a single
736                       unicast IPv4 address.
737
738               default [none]
739
740
741
742       ptpengine:management_enable [BOOLEAN]
743
744               usage   Enable  handling  of  PTP management messages. Only GET
745                       messages are processed by default.  See  ptpengine:man‐
746                       agement_set_enable.
747
748               default Y
749
750
751       ptpengine:management_set_enable [BOOLEAN]
752
753               usage   Accept SET and COMMAND management messages.
754
755               default N
756
757
758       ptpengine:igmp_refresh [BOOLEAN]
759
760               usage   Send  explicit  IGMP  joins  between  engine resets and
761                       periodically       in master state.
762
763               default Y
764
765
766       ptpengine:master_igmp_refresh_interval [INT: 0 .. 255]
767
768               usage   Periodic IGMP join interval (seconds) in  master  state
769                       when  running IPv4 multicast: when set below 10 or when
770                       ptpengine:igmp_refresh is disabled, this setting has no
771                       effect.
772
773               default 60
774
775
776       ptpengine:multicast_ttl [INT: 1 .. 64]
777
778               usage   Multicast  time  to  live  for  multicast  PTP  packets
779                       (ignored and set to 1 for peer to peer messages).
780
781               default 64
782
783
784       ptpengine:ip_dscp [INT: 0 .. 63]
785
786               usage   DiffServ CodepPoint for  packet  prioritisation  (deci‐
787                       mal). When set to zero, this option is not used. Use 46
788                       for Expedited Forwarding (0x2e).
789
790               default 0
791
792
793       ptpengine:sync_stat_filter_enable [BOOLEAN]
794
795               usage   Enable statistical filter for Sync messages
796
797               default N
798
799
800       ptpengine:sync_stat_filter_type [SELECT]
801
802               options none mean min max absmin absmax median
803
804               usage   Type of filter used for Sync message filtering:
805
806                           none        no filtering - pass-through
807
808                           mean        mean (average)  -  smooth  results  but
809                                       influenced by outliers
810
811                           min         minimal  value - useful for high packet
812                                       delay variation ("lucky packets")
813
814                           max         maximal  value  -  useful  for  testing
815                                       worst case scenarios
816
817                           absmin      absolute  minimum  -  value  closest to
818                                       zero. Also useful for test purposes.
819
820                           absmax      absolute maximun  value  farthest  away
821                                       from zero
822
823                           median      median  (middle  value)  -  more robust
824                                       than mean, not influenced by outliers
825
826               default min
827
828
829       ptpengine:sync_stat_filter_window [INT: 3 .. 128]
830
831               usage   Number of samples used for the Sync statistical filter
832
833               default 4
834
835
836       ptpengine:sync_stat_filter_window_type [SELECT]
837
838               options sliding interval
839
840               usage   Sampling window behaviour for the Sync statistical fil‐
841                       ter:
842
843                           sliding     sliding  window  -  a  value  is output
844                                       every time the filter runs,  which  can
845                                       result in duplicates
846
847                           interval    only  output  a value every n-th sample
848                                       (full window)  -  independent  sampling
849                                       periods
850
851               default sliding
852
853
854       ptpengine:delay_stat_filter_enable [BOOLEAN]
855
856               usage   Enable statistical filter for Delay messages
857
858               default N
859
860
861       ptpengine:delay_stat_filter_type [SELECT]
862
863               options none mean min max absmin absmax median
864
865               usage   Type of filter used for Delay message filtering:
866
867                           none        no filtering - pass-through
868
869                           mean        mean  (average)  -  smooth  results but
870                                       influenced by outliers
871
872                           min         minimal value - useful for high  packet
873                                       delay variation ("lucky packets")
874
875                           max         maximal  value  -  useful  for  testing
876                                       worst case scenarios
877
878                           absmin      absolute minimum  -  value  closest  to
879                                       zero. Also useful for test purposes.
880
881                           absmax      absolute  maximun  value  farthest away
882                                       from zero
883
884                           median      median (middle  value)  -  more  robust
885                                       than mean, not influenced by outliers
886
887               default min
888
889
890       ptpengine:delay_stat_filter_window [INT: 3 .. 128]
891
892               usage   Number of samples used for the Delay statistical filter
893
894               default 4
895
896
897       ptpengine:delay_stat_filter_window_type [SELECT]
898
899               options sliding interval
900
901               usage   Sampling  window  behaviour  for  the Delay statistical
902                       filter:
903
904                           sliding     sliding window  -  a  value  is  output
905                                       every  time  the filter runs, which can
906                                       result in duplicates
907
908                           interval    only output a value every  n-th  sample
909                                       (full  window)  -  independent sampling
910                                       periods
911
912               default sliding
913
914
915
916       ptpengine:delay_outlier_filter_enable [BOOLEAN]
917
918               usage   Enable outlier filter for the Delay Response  component
919                       in slave state
920
921               default N
922
923
924       ptpengine:delay_outlier_filter_action [SELECT]
925
926               options discard filter
927
928               usage   Delay  Response  outlier filter action. If set to 'fil‐
929                       ter', outliers are       replaced with moving average.
930
931               default discard
932
933
934       ptpengine:delay_outlier_filter_capacity [INT: 4 .. 60]
935
936               usage   Number of samples in the Delay Response outlier  filter
937                       buffer
938
939               default 20
940
941
942       ptpengine:delay_outlier_filter_threshold     [FLOAT:     0.001000    ..
943       1000.000000]
944
945               usage   Delay Response outlier filter threshold: multiplier for
946                       Peirce's  maximum         standard  deviation. When set
947                       below 1.0, filter is tighter, when set above       1.0,
948                       filter is looser than standard Peirce's test.
949
950               default 1.000000
951
952
953       ptpengine:delay_outlier_filter_always_filter [BOOLEAN]
954
955               usage   Always  run  the Delay Response outlier filter, even if
956                       clock is being slewed at maximum rate
957
958               default N
959
960
961       ptpengine:delay_outlier_filter_autotune_enable [BOOLEAN]
962
963               usage   Enable automatic threshold control for  Delay  Response
964                       outlier filter.
965
966               default Y
967
968
969       ptpengine:delay_outlier_filter_autotune_minpercent [INT: 0 .. 99]
970
971               usage   Delay  Response outlier filter autotune low watermark -
972                       minimum percentage of discarded samples in  the  update
973                       period  before filter is tightened by the autotune step
974                       value
975
976               default 20
977
978
979       ptpengine:delay_outlier_filter_autotune_maxpercent [INT: 1 .. 100]
980
981               usage   Delay Response outlier filter autotune high watermark -
982                       maximum  percentage  of discarded samples in the update
983                       period before filter is loosened by the  autotune  step
984                       value
985
986               default 95
987
988
989       ptpengine:delay_outlier_filter_autotune_step    [FLOAT:   0.010000   ..
990       10.000000]
991
992               usage   The value the Delay Response outlier  filter  threshold
993                       is increased or decreased by when auto-tuning
994
995               default 0.100000
996
997
998       ptpengine:delay_outlier_filter_autotune_minthreshold  [FLOAT:  0.010000
999       .. 10.000000]
1000
1001               usage   Minimum Delay Response filter threshold value used when
1002                       auto-tuning
1003
1004               default 0.100000
1005
1006
1007       ptpengine:delay_outlier_filter_autotune_maxthreshold  [FLOAT:  0.010000
1008       .. 10.000000]
1009
1010               usage   Maximum Delay Response filter threshold value used when
1011                       auto-tuning
1012
1013               default 5.000000
1014
1015
1016       ptpengine:delay_outlier_weight [FLOAT: 0.010000 .. 2.000000]
1017
1018               usage   Delay   Response  outlier  weight:  if  an  outlier  is
1019                       detected, determines       the amount of its  deviation
1020                       from  mean  that  is  used  to build the standard
1021                       deviation  statistics  and  influence  further  outlier
1022                       detection.         When set to 1.0, the outlier is used
1023                       as is.
1024
1025               default 1.000000
1026
1027
1028       ptpengine:delay_outlier_filter_stepdetect_enable [BOOLEAN]
1029
1030               usage   Enable Delay Response filter step  detection  (delaySM)
1031                       to block when certain level exceeded
1032
1033               default N
1034
1035
1036       ptpengine:delay_outlier_filter_stepdetect_threshold   [INT:   50000  ..
1037       999999999]
1038
1039               usage   Delay step detection threshold. Step detection is  per‐
1040                       formed  only  when  delaySM  is  below  this  threshold
1041                       (nanoseconds)
1042
1043               default 1000000
1044
1045
1046       ptpengine:delay_outlier_filter_stepdetect_level    [INT:    50000    ..
1047       999999999]
1048
1049               usage   Delay step level. When step detection enabled and oper‐
1050                       ational, delaySM above this level (nanoseconds) is con‐
1051                       sidered a clock step and updates are paused
1052
1053               default 500000
1054
1055
1056       ptpengine:delay_outlier_filter_stepdetect_credit [INT: 50 .. 1000]
1057
1058               usage   Initial  credit  (number  of  samples)  the  Delay step
1059                       detection  filter  can  block  for.   When  credit   is
1060                       exhausted,  filter  stops blocking. Credit is gradually
1061                       restored  (see   ptpengine:delay_outlier_filter_stepde‐
1062                       tect_credit_increment)
1063
1064               default 200
1065
1066
1067       ptpengine:delay_outlier_filter_stepdetect_credit_increment  [INT:  1 ..
1068       100]
1069
1070               usage   Amount of credit for the Delay  step  detection  filter
1071                       restored every full sample window
1072
1073               default 10
1074
1075
1076       ptpengine:sync_outlier_filter_enable [BOOLEAN]
1077
1078               usage   Enable  outlier  filter for the Sync component in slave
1079                       state.
1080
1081               default N
1082
1083
1084       ptpengine:sync_outlier_filter_action [SELECT]
1085
1086               options discard filter
1087
1088               usage   Sync outlier filter action. If set  to  'filter',  out‐
1089                       liers are replaced       with moving average.
1090
1091               default discard
1092
1093
1094       ptpengine:sync_outlier_filter_capacity [INT: 4 .. 60]
1095
1096               usage   Number of samples in the Sync outlier filter buffer.
1097
1098               default 20
1099
1100
1101       ptpengine:sync_outlier_filter_threshold     [FLOAT:     0.001000     ..
1102       1000.000000]
1103
1104               usage   Sync  outlier  filter  threshold:  multiplier  for  the
1105                       Peirce's  maximum  standard         deviation. When set
1106                       below 1.0, filter is tighter, when set above 1.0,
1107                       filter is looser than standard Peirce's test.
1108
1109               default 1.000000
1110
1111
1112       ptpengine:sync_outlier_filter_always_filter [BOOLEAN]
1113
1114               usage   Always  run  the  Sync outlier filter, even if clock is
1115                       being slewed at maximum rate
1116
1117               default N
1118
1119
1120       ptpengine:sync_outlier_filter_autotune_enable [BOOLEAN]
1121
1122               usage   Enable automatic threshold  control  for  Sync  outlier
1123                       filter.
1124
1125               default Y
1126
1127
1128       ptpengine:sync_outlier_filter_autotune_minpercent [INT: 0 .. 99]
1129
1130               usage   Sync  outlier  filter  autotune low watermark - minimum
1131                       percentage of discarded samples in  the  update  period
1132                       before filter is tightened by the autotune step value
1133
1134               default 20
1135
1136
1137       ptpengine:sync_outlier_filter_autotune_maxpercent [INT: 1 .. 100]
1138
1139               usage   Sync  outlier  filter autotune high watermark - maximum
1140                       percentage of discarded samples in  the  update  period
1141                       before filter is loosened by the autotune step value
1142
1143               default 95
1144
1145
1146       ptpengine:sync_outlier_filter_autotune_step    [FLOAT:    0.010000   ..
1147       10.000000]
1148
1149               usage   The  value  the  Sync  outlier  filter   threshold   is
1150                       increased or decreased by when auto-tuning
1151
1152               default 0.100000
1153
1154
1155       ptpengine:sync_outlier_filter_autotune_minthreshold [FLOAT: 0.010000 ..
1156       10.000000]
1157
1158               usage   Minimum Sync filter threshold value used when auto-tun‐
1159                       ing
1160
1161               default 0.100000
1162
1163
1164       ptpengine:sync_outlier_filter_autotune_maxthreshold [FLOAT: 0.010000 ..
1165       10.000000]
1166
1167               usage   Maximum Sync filter threshold value used when auto-tun‐
1168                       ing
1169
1170               default 5.000000
1171
1172
1173       ptpengine:sync_outlier_weight [FLOAT: 0.010000 .. 2.000000]
1174
1175               usage   Sync  outlier  weight:  if an outlier is detected, this
1176                       value determines the
1177                        amount of its deviation from  mean  that  is  used  to
1178                       build the standard
1179                        deviation  statistics  and  influence  further outlier
1180                       detection.
1181                        When set to 1.0, the outlier is used as is
1182
1183               default 1.000000
1184
1185
1186       ptpengine:sync_outlier_filter_stepdetect_enable [BOOLEAN]
1187
1188               usage   Enable Sync filter step detection  (delayMS)  to  block
1189                       when certain level exceeded
1190
1191               default N
1192
1193
1194       ptpengine:sync_outlier_filter_stepdetect_threshold   [INT:   50000   ..
1195       999999999]
1196
1197               usage   Sync step detection threshold. Step detection  is  per‐
1198                       formed  only  when  delayMS  is  below  this  threshold
1199                       (nanoseconds)
1200
1201               default 1000000
1202
1203
1204       ptpengine:sync_outlier_filter_stepdetect_level    [INT:    50000     ..
1205       999999999]
1206
1207               usage   Sync step level. When step detection enabled and opera‐
1208                       tional, delayMS above this level (nanoseconds) is  con‐
1209                       sidered a clock step and updates are paused
1210
1211               default 500000
1212
1213
1214       ptpengine:sync_outlier_filter_stepdetect_credit [INT: 50 .. 1000]
1215
1216               usage   Initial credit (number of samples) the Sync step detec‐
1217                       tion filter can block for.  When credit  is  exhausted,
1218                       filter  stops  blocking.  Credit  is gradually restored
1219                       (see              ptpengine:sync_outlier_filter_stepde‐
1220                       tect_credit_increment)
1221
1222               default 200
1223
1224
1225       ptpengine:sync_outlier_filter_stepdetect_credit_increment  [INT:  1  ..
1226       100]
1227
1228               usage   Amount of credit for the  Sync  step  detection  filter
1229                       restored every full sample window
1230
1231               default 10
1232
1233
1234       ptpengine:sync_sequence_checking [BOOLEAN]
1235
1236               usage   When  enabled,  Sync  messages will only be accepted if
1237                       sequence ID is increasing.  note: This  can  cause  the
1238                       slave  to  temporarily  lock  up  if GM restarts before
1239                       announce timeout, so this is limited to 50  consecutive
1240                       sequence             errors.             Alternatively,
1241                       ptpengine:clock_update_timeout can be used to reset the
1242                       slave beforehand.
1243
1244               default N
1245
1246
1247       ptpengine:clock_update_timeout [INT: 0 .. 3600]
1248
1249               usage   If  set  to  non-zero,  time  (seconds) before slave is
1250                       reset back into PTP_LISTENING, if thetre were no  clock
1251                       updates.  This  is useful for situations where slave is
1252                       in SLAVE state (receiving Announce) but is not  receiv‐
1253                       ing or not accepting Sync messages.
1254
1255               default 0
1256
1257
1258       ptpengine:calibration_delay [INT: 0 .. 300]
1259
1260               usage   Delay  between moving to slave state and enabling clock
1261                       updates (seconds).  This allows mean path delay to sta‐
1262                       bilise  before  starting clock updates.  Activated when
1263                       going into slave state and during slave's GM  failover.
1264                       0 - not used.
1265
1266               default 0
1267
1268
1269       ptpengine:idle_timeout [INT: 10 .. 3600]
1270
1271               usage   PTP  idle  timeout (seconds): if PTPd is in SLAVE state
1272                       and there have been no clock updates for this amout  of
1273                       time, PTPd releases clock control.
1274
1275               default 0
1276
1277
1278       ptpengine:offset_alarm_threshold [INT: 0 .. 999999999]
1279
1280               usage   PTP  Slave Offset from Master alarm threshold (nanosec‐
1281                       onds) - absolute value. When set to non-zero, an  alarm
1282                       is  raised  when PTP slave's offset from master crosses
1283                       this value. The alarm is logged, indicated in the  sta‐
1284                       tus  file,  and SNMP traps are sent if SNMP is enabled.
1285                       Similar notifications are created when  offset  returns
1286                       within  the  threshold.   When  zet to 0, offset is not
1287                       checked against the threshold.
1288
1289               default 0
1290
1291
1292       ptpengine:panic_mode [BOOLEAN]
1293
1294               usage   Enable panic mode: when offset from master is  above  1
1295                       second,  stop  updating  the clock for a period of time
1296                       and then step the clock if offset remains above 1  sec‐
1297                       ond.
1298
1299               default N
1300
1301
1302       ptpengine:panic_mode_duration [INT: 1 .. 60]
1303
1304               usage   Duration  (minutes)  of the panic mode period (no clock
1305                       updates) when offset above 1 second detected.
1306
1307               default 2
1308
1309
1310       ptpengine:panic_mode_release_clock [BOOLEAN]
1311
1312               usage   When entering panic mode, release clock  control  while
1313                       panic mode lasts.  If not set, PTP will hold clock con‐
1314                       trol  during  panic  mode.   If   set   together   with
1315                       ntpengine:* configured, this will fail over to NTP.
1316
1317               default N
1318
1319
1320       ptpengine:panic_mode_exit_threshold [INT: 0 .. 999999999]
1321
1322               usage   Do  not  exit  panic mode until offset drops below this
1323                       value (nanoseconds).  0 = not used.
1324
1325               default 0
1326
1327
1328       ptpengine:pid_as_clock_identity [BOOLEAN]
1329
1330               usage   Use PTPd's process ID as the middle  part  of  the  PTP
1331                       clock ID - useful for running multiple instances.
1332
1333               default N
1334
1335
1336       ptpengine:ntp_failover [BOOLEAN]
1337
1338               usage   Fail  over  to  NTP  when PTP time sync not available -
1339                       requires ntpengine:enabled, but does  not  require  the
1340                       rest of NTP configuration: will warn instead of failing
1341                       over if cannot control ntpd.
1342
1343               default N
1344
1345
1346       ptpengine:ntp_failover_timeout [INT: 0 .. 1800]
1347
1348               usage   NTP failover timeout in seconds: time between PTP slave
1349                       going  into LISTENING state, and failing over to NTP. 0
1350                       = fail over immediately.   This  setting  controls  the
1351                       time provider election hold time.
1352
1353               default 60
1354
1355
1356       ptpengine:prefer_ntp [BOOLEAN]
1357
1358               usage   Prefer  NTP time synchronisation. Only use PTP when NTP
1359                       not available.  Could be used  when  NTP  runs  with  a
1360                       local GPS receiver or another hardware reference.
1361
1362               default N
1363
1364
1365       ptpengine:panic_mode_ntp [BOOLEAN]
1366
1367               usage   Deprecated  as  of 2.3.1, but still supported: see ptp‐
1368                       pengine:panic_mode_release_clock.
1369
1370               default N
1371
1372
1373       ptpengine:sigusr2_clears_counters [BOOLEAN]
1374
1375               usage   Clear counters after  dumping  all  counter  values  on
1376                       SIGUSR2.
1377
1378               default N
1379
1380
1381       ptpengine:timing_acl_permit [STRING]
1382
1383               usage   Permit  access  control  list  for timing and signaling
1384                       messages. Format is a series of network prefixes and/or
1385                       IP addresses separated by commas, spaces, tabs or semi‐
1386                       colons.  Accepted format is CIDR notation (a.b.c.d/mm),
1387                       single  IP  address  (a.b.c.d),  or  full  network/mask
1388                       (a.b.c.d/m.m.m.m). Shortcuts can be used: 172.16/12  is
1389                       expanded  to 172.16.0.0/12; 192.168/255.255 is expanded
1390                       to 192.168.0.0/255.255.0.0, etc. The match is performed
1391                       on  the  source IP address of the incoming messages. IP
1392                       access lists are  only  supported  when  using  the  IP
1393                       transport.
1394
1395               default [none]
1396
1397
1398       ptpengine:timing_acl_deny [STRING]
1399
1400               usage   Deny  access control list for timing and signaling mes‐
1401                       sages. Format is a series of network prefixes and/or IP
1402                       addresses  separated  by  commas, spaces, tabs or semi‐
1403                       colons.  Accepted format is CIDR notation (a.b.c.d/mm),
1404                       single  IP  address  (a.b.c.d),  or  full  network/mask
1405                       (a.b.c.d/m.m.m.m). Shortcuts can be used: 172.16/12  is
1406                       expanded  to 172.16.0.0/12; 192.168/255.255 is expanded
1407                       to 192.168.0.0/255.255.0.0, etc. The match is performed
1408                       on  the  source IP address of the incoming messages. IP
1409                       access lists are  only  supported  when  using  the  IP
1410                       transport.
1411
1412               default [none]
1413
1414
1415       ptpengine:management_acl_permit [STRING]
1416
1417               usage   Permit  access  control  list  for management messages.
1418                       Format is  a  series  of  network  prefixes  and/or  IP
1419                       addresses  separated  by  commas, spaces, tabs or semi‐
1420                       colons.  Accepted format is CIDR notation (a.b.c.d/mm),
1421                       single  IP  address  (a.b.c.d),  or  full  network/mask
1422                       (a.b.c.d/m.m.m.m). Shortcuts can be used: 172.16/12  is
1423                       expanded  to 172.16.0.0/12; 192.168/255.255 is expanded
1424                       to 192.168.0.0/255.255.0.0, etc. The match is performed
1425                       on  the  source IP address of the incoming messages. IP
1426                       access lists are  only  supported  when  using  the  IP
1427                       transport.
1428
1429               default [none]
1430
1431
1432       ptpengine:management_acl_deny [STRING]
1433
1434               usage   Deny  access control list for management messages. For‐
1435                       mat is a series of network prefixes and/or IP addresses
1436                       separated   by  commas,  spaces,  tabs  or  semicolons.
1437                       Accepted format is CIDR notation  (a.b.c.d/mm),  single
1438                       IP    address    (a.b.c.d),    or   full   network/mask
1439                       (a.b.c.d/m.m.m.m). Shortcuts can be used: 172.16/12  is
1440                       expanded  to 172.16.0.0/12; 192.168/255.255 is expanded
1441                       to 192.168.0.0/255.255.0.0, etc. The match is performed
1442                       on  the  source IP address of the incoming messages. IP
1443                       access lists are  only  supported  when  using  the  IP
1444                       transport.
1445
1446               default [none]
1447
1448
1449       ptpengine:timing_acl_order [SELECT]
1450
1451               options permit-deny deny-permit
1452
1453               usage   Order  in which permit and deny access lists are evalu‐
1454                       ated for timing and signaling messages, the  evaluation
1455                       process   is   the  same  as  for  Apache  httpd.  See:
1456                       http://httpd.apache.org/docs/cur
1457                       rent/mod/mod_access_compat.html#order
1458
1459               default deny-permit
1460
1461
1462       ptpengine:management_acl_order [SELECT]
1463
1464               options permit-deny deny-permit
1465
1466               usage   Order  in which permit and deny access lists are evalu‐
1467                       ated for management messages, the evaluation process is
1468                       the     same     as     for    Apache    httpd.    See:
1469                       http://httpd.apache.org/docs/cur
1470                       rent/mod/mod_access_compat.html#order
1471
1472               default deny-permit
1473
1474
1475       clock:no_adjust [BOOLEAN]
1476
1477               usage   Do not adjust the clock.
1478
1479               default N
1480
1481
1482       clock:no_reset [BOOLEAN]
1483
1484               usage   Do not reset the clock - only slew.
1485
1486               default N
1487
1488
1489       clock:step_startup_force [BOOLEAN]
1490
1491               usage   Force clock step on first sync after startup regardless
1492                       of offset and clock:no_reset
1493
1494               default N
1495
1496
1497       clock:step_startup [BOOLEAN]
1498
1499               usage   Step clock on startup  only  if  offset  >=  1  second,
1500                       ignoring panic mode and clock:no_reset
1501
1502               default N
1503
1504
1505       clock:set_rtc_on_step [BOOLEAN]
1506
1507               usage   Attempt setting the RTC when stepping clock (Linux only
1508                       - FreeBSD does this for us. WARNING: this  will  always
1509                       set the RTC to OS clock time, regardless of time zones,
1510                       so this assumes that RTC runs in UTC  or  otherwise  in
1511                       the  same  timescale as PTP. True at least on most sin‐
1512                       gle-boot x86 Linux systems.
1513
1514               default N
1515
1516
1517       clock:drift_handling [SELECT]
1518
1519               options reset preserve file
1520
1521               usage   Observed drift handling method between servo restarts:
1522
1523                           reset       set to zero (not recommended)
1524
1525                           preserve    use kernel value
1526
1527                           file        load/save    to    drift    file     on
1528                                       startup/shutdown,   use   kernel  value
1529                                       inbetween.  To specify drift file,  use
1530                                       the clock:drift_file setting.
1531
1532               default preserve
1533
1534
1535       clock:drift_file [STRING]
1536
1537               usage   Specify drift file
1538
1539               default /etc/ptpd2_kernelclock.drift
1540
1541
1542       clock:leap_seconds_file [STRING]
1543
1544               usage   Specify  leap  second file location (up to date version
1545                       can  be  downloaded   from:   http://www.ietf.org/time
1546                       zones/data/leap-seconds.list).   When  configured,  PTP
1547                       master will use data from this file  to  announce  leap
1548                       flags  and  UTC  offset, overriding OS information, and
1549                       PTP slave will use data  from  this  file  as  well  as
1550                       information  supplied  by  the  GM. If configured, this
1551                       file  is  always  reloaded  on   configuration   reload
1552                       (SIGHUP),  reloaded  on clock step and reloaded after a
1553                       leap second event to ensure the information  is  up  to
1554                       date.  As  of ptpd 2.3.1, the file is bundled with ptpd
1555                       and  is  installed  into  (prefix)/share/ptpd/leap-sec‐
1556                       onds.list.ddMMMyyyy where ddMMMyyyy is the leap seconds
1557                       file expiry date.
1558
1559               default [none]
1560
1561
1562       clock:leap_second_pause_period [INT: 5 .. 600]
1563
1564               usage   Time (seconds) before and  after  midnight  that  clock
1565                       updates  should  be  suspended for during a leap second
1566                       event. The total duration of the  pause  is  twice  the
1567                       configured  duration.  Clock updates are suspended when
1568                       there is a leap second event pending and time  to  mid‐
1569                       night  is  less than or equal to this value and resumed
1570                       no earlier  than  this  value  after  midnight.   Clock
1571                       updates  are  resumed  in a controlled manner - after a
1572                       control message, such as  PTP  announce.  This  ensures
1573                       that the updated UTC offset is received before any fur‐
1574                       ther clock updates.
1575
1576               default 5
1577
1578
1579       clock:leap_second_notice_period [INT: 3600 .. 86400]
1580
1581               usage   Time  (seconds)  before  midnight  that   PTPd   starts
1582                       announcing  the  leap second if it's running as master.
1583                       The IEEE 1588 standard suggests  12  hours  notice  and
1584                       this  is  the  default,  but it may be changed to allow
1585                       more flexibility.
1586
1587               default 43200
1588
1589
1590       clock:leap_second_handling [SELECT]
1591
1592               options accept ignore step smear
1593
1594               usage   Clock sync behaviour during leap second events:
1595
1596                           accept      Inform OS kernel about the leap  second
1597                                       and let the kernel insert or delete the
1598                                       leap second
1599
1600                           ignore      Do not inform the kernel  -  this  ends
1601                                       with a +/-1-second offset which is then
1602                                       slewed back down
1603
1604                           step        Do not inform the kernel and  step  the
1605                                       clock immediately after the leap second
1606                                       event
1607
1608                           smear       Gradually  introduce  an  extra  offset
1609                                       over  a  period of time before the leap
1610                                       second event, which accumulates to +/-1
1611                                       second       (see       clock:leap_sec‐
1612                                       ond_smear_period). Once the clock  sta‐
1613                                       bilises,  this  results in a clock fre‐
1614                                       quency shift which is taken  off  after
1615                                       the  event.  Once the leap second event
1616                                       is  over,  the  extra  offset  is  also
1617                                       removed  and  time is back in line with
1618                                       master time.
1619
1620               default accept
1621
1622
1623       clock:leap_second_smear_period [INT: 3600 .. 86400]
1624
1625               usage   When clock:leap_second_handling is set to  smear,  this
1626                       setting defines the period (in seconds) before the leap
1627                       second event, over which  the  leap  second  offset  is
1628                       gradually added. Example: when set to 24 hours (86400),
1629                       an extra +/-11.5 microseconds  is  added  every  second
1630                       (11.5 ppm clock frequency offset).
1631
1632               default 86400
1633
1634
1635
1636       clock:max_offset_ppm [INT: 500 .. 1000]
1637
1638               usage   Maximum  absolute  frequency shift which can be applied
1639                       to the  clock  servo         when  slewing  the  clock.
1640                       Expressed  in parts per million (1 ppm = shift of
1641                       1 us per second. Values above 512  will  use  the  tick
1642                       duration correction       to allow even faster slewing.
1643                       Default maximum is 512 without using tick.
1644
1645               default 500
1646
1647
1648       servo:delayfilter_stiffness [INT]
1649
1650               usage   Mean Path Delay filter stiffness.
1651
1652               default 6
1653
1654
1655       servo:kp [FLOAT: min: 0.000001 ]
1656
1657               usage   Clock servo PI controller proportional  component  gain
1658                       (kP).
1659
1660               default 0.100000
1661
1662
1663       servo:ki [FLOAT: min: 0.000001 ]
1664
1665               usage   Clock servo PI controller integral component gain (kI).
1666
1667               default 0.001000
1668
1669
1670       servo:dt_method [SELECT]
1671
1672               options none constant measured
1673
1674               usage   How servo update interval (delta t) is calculated:
1675
1676                           none        servo not corrected for update interval
1677                                       (dt always 1),
1678
1679                           constant    constant  value  (target  servo  update
1680                                       rate) - sync interval for PTP,
1681
1682                           measured    servo  measures  how often it's updated
1683                                       and uses this interval.
1684
1685               default constant
1686
1687
1688       servo:dt_max [FLOAT: 1.500000 .. 100.000000]
1689
1690               usage   Maximum servo update interval (delta t) when using mea‐
1691                       sured  servo  update  interval  (servo:dt_method = mea‐
1692                       sured), specified as sync interval multiplier
1693
1694               default 5.000000
1695
1696
1697       servo:stability_detection [BOOLEAN]
1698
1699               usage   Enable clock synchronisation servo stability  detection
1700                       (based  on  standard  deviation  of  the observed drift
1701                       value) - drift will be saved to  drift  file  /  cached
1702                       when  considered  stable,  also  clock stability status
1703                       will be logged.
1704
1705               default N
1706
1707
1708       servo:stability_threshold [FLOAT: 1.000000 .. 10000.000000]
1709
1710               usage   Specify the observed drift standard deviation threshold
1711                       in  parts  per  billion (ppb) - if stanard deviation is
1712                       within the threshold, servo is considered stable.
1713
1714               default 5.000000
1715
1716
1717       servo:stability_period [INT: 1 .. 100]
1718
1719               usage   Specify for how many statistics  update  intervals  the
1720                       observed  drift  standard  deviation has to stay within
1721                       threshold to be considered stable.
1722
1723               default 3
1724
1725
1726       servo:stability_timeout [INT: 1 .. 60]
1727
1728               usage   Specify after how many  minutes  without  stabilisation
1729                       servo  is  considered  unstable.  Assists  with logging
1730                       servo stability  information  and  allows  to  preserve
1731                       observed drift if servo cannot stabilise.
1732
1733               default 10
1734
1735
1736       servo:max_delay [INT: 0 .. 999999999]
1737
1738               usage   Do  not  accept  master  to slave delay (delayMS - from
1739                       Sync message) or slave to master delay (delaySM -  from
1740                       Delay  Response  message)  if  greater  than this value
1741                       (nanoseconds). 0 = not used.
1742
1743               default 0
1744
1745
1746       servo:max_delay_max_rejected [INT: min: 0 ]
1747
1748               usage   Maximum number of consecutive rejected  delay  measure‐
1749                       ments      exceeding     the     maxDelay     threshold
1750                       (servo:max_delay), before  slave  is  reset.  0  =  not
1751                       checked.
1752
1753               default 0
1754
1755
1756       servo:max_delay_stable_only [BOOLEAN]
1757
1758               usage   If  servo:max_delay  is  set, perform the check only if
1759                       clock servo has stabilised.
1760
1761               default N
1762
1763
1764       servo:max_offset [INT: 0 .. 999999999]
1765
1766               usage   Do not reset the clock if offset from master is greater
1767                       than this value (nanoseconds). 0 = not used.
1768
1769               default 0
1770
1771
1772       global:config_templates [STRING]
1773
1774               usage   Comma, space or tab-separated list of template names to
1775                       be applied to the configuration (see CONFIGURATION TEM‐
1776                       PLATES  AND  TEMPLATE  FILES  section).  Templates  are
1777                       applied in the order they are specified, so  any  over‐
1778                       lapping  settings from one template are overridden with
1779                       settings from the following template(s). PTPd  provides
1780                       some  built-in  templates  -  see the templates section
1781                       above; to see the built-in templates, run ptpd with  -T
1782                       or --show-templates.
1783
1784               default [none]
1785
1786
1787       global:template_files [STRING]
1788
1789               usage   Comma,  space  or  tab-separated  list of template file
1790                       paths to be loaded  (see  CONFIGURATION  TEMPLATES  AND
1791                       TEMPLATE FILES section). Template files are also loaded
1792                       in the order they are provided,  so  templates  in  one
1793                       file  can be extended by templates in the next file(s);
1794                       any overlapping settings are  overridden  by  following
1795                       files.  PTPd  will  not  exit when one or more template
1796                       files cannot be opened.  PTPd will always try  to  load
1797                       /usr/share/ptpd/templates.conf on startup.
1798
1799               default [none]
1800
1801
1802       global:enable_alarms [BOOLEAN]
1803
1804               usage   Enable  support  for alarm and event notifications (see
1805                       ALARMS section). Alarms enable self-diagnosing of  com‐
1806                       mon  error  conditions and events such as master change
1807                       or time properties change. When SNMP support is enabled
1808                       (global:enable_snmp)  and  SNMP trap support is enabled
1809                       (global:enable_snmp_traps), alarms trigger SNMP traps.
1810
1811               default N
1812
1813
1814       global:alarm_timeout [INT: 0 .. 3600]
1815
1816               usage   Mininmum alarm age (seconds)  -  minimal  time  between
1817                       alarm  set  and clear notifications.  The condition can
1818                       clear while alarm lasts, but notification (log or SNMP)
1819                       will  only  be triggered after the timeout. This option
1820                       prevents from alarms flapping (repeated set  and  clear
1821                       notifications).
1822
1823               default 30
1824
1825
1826       global:alarm_initial_delay [INT: 0 .. 3600]
1827
1828               usage   Delay  the  start  of  alarm processing (seconds) after
1829                       ptpd startup. This option allows to  avoid  unnecessary
1830                       alarms  before  PTPd starts synchronising, which should
1831                       happen after a few seconds, but could  take  longer  in
1832                       cases where multicast has to converge upstream, or when
1833                       there is a mismatch in message  intervals  and  unicast
1834                       signaling has to negotiate them down (or up) to accept‐
1835                       able values. This also prevents from alerting on offset
1836                       from  master too soon after startup (see ptpengine:off‐
1837                       set_alarm_threshold) - delay can be increased to  cover
1838                       the  initial  sync  period,  however this is not recom‐
1839                       mended as an offset alarm after startup can indicate  a
1840                       slave cold start.
1841
1842               default 10
1843
1844
1845       global:enable_snmp [BOOLEAN]
1846
1847               usage   Enable SNMP agent (if compiled with PTPD_SNMP).
1848
1849               default N
1850
1851
1852       global:enable_snmp_traps [BOOLEAN]
1853
1854               usage   Enable  reporting  of  alarms and events as SNMP traps.
1855                       Requires  PTPd  to  be  compiled  with  PTPD_SNMP,  and
1856                       requires alarms to be enabled (global:enable_alarms)
1857
1858               default N
1859
1860
1861       global:use_syslog [BOOLEAN]
1862
1863               usage   Send  log  messages to syslog. Disabling this sends all
1864                       messages to stdout (or speficied log file).
1865
1866               default N
1867
1868
1869       global:lock_file [STRING]
1870
1871               usage   Lock file location
1872
1873               default [none]
1874
1875
1876       global:auto_lockfile [BOOLEAN]
1877
1878               usage   Use mode specific  and  interface  specific  lock  file
1879                       (overrides global:lock_file).
1880
1881               default N
1882
1883
1884       global:lock_directory [STRING]
1885
1886               usage   Lock  file directory: used with automatic mode-specific
1887                       lock files, also used when no lock file  is  specified.
1888                       When  lock  file  is  specified, it's expected to be an
1889                       absolute path.
1890
1891               default /var/run
1892
1893
1894       global:ignore_lock [BOOLEAN]
1895
1896               usage   Skip lock file checking and locking.
1897
1898               default N
1899
1900
1901       global:quality_file [STRING]
1902
1903               usage   File used to record data about  sync  packets.  Enables
1904                       recording when set.
1905
1906               default [none]
1907
1908
1909       global:quality_file_max_size [INT: min: 0 ]
1910
1911               usage   Maximum  sync  packet  record  file size (in kB) - file
1912                       will be truncated if size exceeds the  limit.  0  -  no
1913                       limit.
1914
1915               default 0
1916
1917
1918       global:quality_file_max_files [INT: 0 .. 100]
1919
1920               usage   Enable  log  rotation of the sync packet record file up
1921                       to n files.  0 - do not rotate.
1922
1923               default 0
1924
1925
1926       global:quality_file_truncate [BOOLEAN]
1927
1928               usage   Truncate the sync packet record file every time  it  is
1929                       (re) opened: startup and SIGHUP.
1930
1931               default N
1932
1933
1934       global:status_file [STRING]
1935
1936               usage   File used to log ptpd2 status information.
1937
1938               default /var/run/ptpd2.status
1939
1940
1941       global:log_status [BOOLEAN]
1942
1943               usage   Enable / disable writing status information to file.
1944
1945               default N
1946
1947
1948       global:status_update_interval [INT: 1 .. 30]
1949
1950               usage   Status file update interval in seconds.
1951
1952               default 1
1953
1954
1955       global:log_file [STRING]
1956
1957               usage   Specify log file path (event log). Setting this enables
1958                       logging to file.
1959
1960               default [none]
1961
1962
1963       global:log_file_max_size [INT: min: 0 ]
1964
1965               usage   Maximum log file size (in kB) - log file will be  trun‐
1966                       cated if size exceeds the limit. 0 - no limit.
1967
1968               default 0
1969
1970
1971       global:log_file_max_files [INT: 0 .. 100]
1972
1973               usage   Enable  log  rotation of the sync packet record file up
1974                       to n files.  0 - do not rotate.
1975
1976
1977               default 0
1978
1979
1980       global:log_file_truncate [BOOLEAN]
1981
1982               usage   Truncate the log file every time  it  is  (re)  opened:
1983                       startup and SIGHUP.
1984
1985               default N
1986
1987
1988       global:log_level [SELECT]
1989
1990               options LOG_ERR LOG_WARNING LOG_NOTICE LOG_INFO LOG_ALL
1991
1992               usage   Specify  log  level  (only messages at this priority or
1993                       higer will be logged).  The minimal level  is  LOG_ERR.
1994                       LOG_ALL  enables  debug  output  if  compiled with RUN‐
1995                       TIME_DEBUG.
1996
1997               default LOG_ALL
1998
1999
2000       global:statistics_file [STRING]
2001
2002               usage   Specify statistics log file path. Setting this  enables
2003                       logging  of  statistics,  but  can  be  overriden  with
2004                       global:log_statistics.
2005
2006               default [none]
2007
2008
2009       global:statistics_log_interval [INT: min: 0 ]
2010
2011               usage   Log timing statistics every  n  seconds  for  Sync  and
2012                       Delay messages (0 - log all).
2013
2014               default 0
2015
2016
2017       global:statistics_file_max_size [INT: min: 0 ]
2018
2019               usage   Maximum  statistics  log  file  size (in kB) - log file
2020                       will be truncated if size exceeds the  limit.  0  -  no
2021                       limit.
2022
2023               default 0
2024
2025
2026       global:statistics_file_max_files [INT: 0 .. 100]
2027
2028               usage   Enable  log  rotation  of  the  statistics file up to n
2029                       files. 0 - do not rotate.
2030
2031               default 0
2032
2033
2034       global:statistics_file_truncate [BOOLEAN]
2035
2036               usage   Truncate the statistics file  every  time  it  is  (re)
2037                       opened: startup and SIGHUP.
2038
2039               default N
2040
2041
2042       global:dump_packets [BOOLEAN]
2043
2044               usage   Dump the contents of every PTP packet.
2045
2046               default N
2047
2048
2049       global:verbose_foreground [BOOLEAN]
2050
2051               usage   Run  in  foreground  with  statistics  and all messages
2052                       logged to stdout. Overrides  log  file  and  statistics
2053                       file settings and disables syslog.
2054
2055
2056               default N
2057
2058
2059       global:foreground [BOOLEAN]
2060
2061               usage   Run  in  foreground - ignored when global:verbose_fore‐
2062                       ground is set.
2063
2064               default N
2065
2066
2067       global:log_statistics [BOOLEAN]
2068
2069               usage   Log timing statistics for every  PTP  packet  received.
2070                       Output  is  in  CSV format and field headers are always
2071                       printed when starting or refreshing the statistics log.
2072
2073               default N
2074
2075
2076       global:statistics_timestamp_format [SELECT]
2077
2078               options datetime unix both
2079
2080               usage   Timestamp format used when  logging  timing  statistics
2081                       (when global:log_statistics is enabled):
2082
2083                           datetime    Formatted  date  and  time:  YYYY-MM-DD
2084                                       hh:mm:ss.uuuuuu
2085
2086                           unix        Unix timestamp with nanoseconds: s.ns
2087
2088                           both        Formatted date  and  time  followed  by
2089                                       unix  timestamp  (adds  one extra field
2090                                       to the log)
2091
2092               default datetime
2093
2094
2095       global:periodic_updates [BOOLEAN]
2096
2097               usage   Log a status update every time statistics  are  updated
2098                       (global:statistics_update_interval).   This  update  is
2099                       written to the main  log  target.  Status  updates  are
2100                       logged  even  if ptpd is configured without support for
2101                       statistics.
2102
2103               default N
2104
2105
2106       global:cpuaffinity_cpucore [INT: -1 .. 255]
2107
2108               usage   Bind ptpd2 process to a selected CPU core number.  0  =
2109                       first CPU core, etc. -1 = do not bind to a single core.
2110
2111               default 0
2112
2113
2114       global:statistics_update_interval [INT: 1 .. 60]
2115
2116               usage   Clock  synchronisation  statistics  update  interval in
2117                       seconds. Also controls how often periodic status infor‐
2118                       mation    is    logged   (when   using   global:statis‐
2119                       tics_update_interval).
2120
2121               default 30
2122
2123
2124       global:timingdomain_election_delay [INT: 0 .. 3600 ]
2125
2126               usage   Delay (seconds) before releasing a time service (NTP or
2127                       PTP)  and  electing  a  new one to control a clock. 0 =
2128                       elect immediately
2129
2130               default 15
2131
2132
2133       ntpengine:enabled [BOOLEAN]
2134
2135               usage   Enable NTPd integration
2136
2137               default N
2138
2139
2140       ntpengine:control_enabled [BOOLEAN]
2141
2142               usage   Enable control over local NTPd daemon
2143
2144               default N
2145
2146
2147       ntpengine:check_interval [INT: 5 .. 600]
2148
2149               usage   NTP control check interval in seconds
2150
2151               default 15
2152
2153
2154       ntpengine:key_id [INT: 0 .. 65535]
2155
2156               usage   NTP key number - must be configured as a  trusted  con‐
2157                       trol   key   in  ntp.conf,  and  be  non-zero  for  the
2158                       ntpengine:control_enabled setting to take effect.
2159
2160               default 0
2161
2162
2163       ntpengine:key [STRING]
2164
2165               usage   NTP key (plain text, max. 20 characters) -  must  match
2166                       the  key  configured  in  ntpd's keys file, and must be
2167                       non-zero for the ntpengine:control_enabled  setting  to
2168                       take effect.
2169
2170               default [none]
2171
2172
2173

BUGS

2175       Configuration  file  support  has  only been introduced in version 2.3.
2176       There may still be some inconsistencies in the way  some  settings  are
2177       parsed and while order should not make any difference, for some complex
2178       behaviours it may still be the case.
2179
2180       Please report any bugs using the bug tracker on the  SourceForge  page:
2181       http://sourceforge.net/projects/ptpd/
2182
2183

SEE ALSO

2185       ptpd2(8)
2186
2187

AUTHORS

2189       Steven Kreuzer <skreuzer@freebsd.org>
2190
2191       Gael Mace <gael_mace@users.sourceforge.net>
2192
2193       George Neville-Neil <gnn@freebsd.org>
2194
2195       Wojciech Owczarek <wojciech@owczarek.co.uk>
2196
2197       Alexandre Van Kempen
2198
2199       ptpd2.conf(5)  man  page  first  written  by Wojciech Owczarek for ptpd
2200       2.3.0 in November 2013
2201
2202
2203
2204version 2.3.2                    October, 2015                   ptpd2.conf(5)
Impressum