Discussion:
[Linuxptp-users] Announce timeouts using ptp4l as a slave
Alexander Perry
2017-06-15 18:38:02 UTC
Permalink
Hello,

I am trying to configure ptp4l as a slave on a server and having issues with announce timeouts. I believe this to be a configuration issue as ptpd2 works as expected.
I am using Mellanox Connect-X3 NICs with the latest firmware and kernel 4.6. The server is connected directly to a boundary clock that I know to be working normally.
eth4 on this server is in an active-passive bond.
Tcpdump shows that announce messages are coming in as expected, however the daemon appears to not recognise them. I initially thought it was looking at the wrong domain, however the output shows that it is correctly configured for domain 11.

Contents of ptp4l.conf is:
[global]
domainNumber 11


Below is the output I get from starting the daemon:

$ sudo /usr/local/sbin/ptp4l -i eth4 -s -4 -A -l 7 -m -f ~aperry/ptp4l.conf

ptp4l[764714.619]: config item (null).assume_two_step is 0
ptp4l[764714.619]: config item (null).check_fup_sync is 0
ptp4l[764714.619]: config item (null).tx_timestamp_timeout is 1
ptp4l[764714.619]: config item (null).clock_servo is 0
ptp4l[764714.619]: config item (null).time_stamping is 1
ptp4l[764714.619]: config item (null).clock_servo is 0
ptp4l[764714.619]: config item (null).clockClass is 248
ptp4l[764714.619]: config item (null).clockAccuracy is 254
ptp4l[764714.619]: config item (null).offsetScaledLogVariance is 65535
ptp4l[764714.619]: config item (null).productDescription is ';;'
ptp4l[764714.619]: config item (null).revisionData is ';;'
ptp4l[764714.619]: config item (null).userDescription is ''
ptp4l[764714.619]: config item (null).manufacturerIdentity is '00:00:00'
ptp4l[764714.619]: config item (null).domainNumber is 11
ptp4l[764714.619]: config item (null).slaveOnly is 1
ptp4l[764714.619]: config item (null).twoStepFlag is 1
ptp4l[764714.619]: config item (null).priority1 is 128
ptp4l[764714.619]: config item (null).priority2 is 128
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).free_running is 0
ptp4l[764714.619]: selected /dev/ptp3 as PTP clock
ptp4l[764714.619]: config item (null).uds_address is '/var/run/ptp4l'
ptp4l[764714.619]: section item /var/run/ptp4l.announceReceiptTimeout now 0
ptp4l[764714.619]: section item /var/run/ptp4l.delay_mechanism now 0
ptp4l[764714.619]: section item /var/run/ptp4l.network_transport now 0
ptp4l[764714.619]: section item /var/run/ptp4l.delay_filter_length now 1
ptp4l[764714.619]: config item (null).free_running is 0
ptp4l[764714.619]: config item (null).freq_est_interval is 1
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).kernel_leap is 1
ptp4l[764714.619]: config item (null).utc_offset is 37
ptp4l[764714.619]: config item (null).timeSource is 160
ptp4l[764714.619]: config item (null).pi_proportional_const is 0.000000
ptp4l[764714.619]: config item (null).pi_integral_const is 0.000000
ptp4l[764714.619]: config item (null).pi_proportional_scale is 0.000000
ptp4l[764714.619]: config item (null).pi_proportional_exponent is -0.300000
ptp4l[764714.619]: config item (null).pi_proportional_norm_max is 0.700000
ptp4l[764714.619]: config item (null).pi_integral_scale is 0.000000
ptp4l[764714.619]: config item (null).pi_integral_exponent is 0.400000
ptp4l[764714.619]: config item (null).pi_integral_norm_max is 0.300000
ptp4l[764714.619]: config item (null).step_threshold is 0.000000
ptp4l[764714.619]: config item (null).first_step_threshold is 0.000020
ptp4l[764714.619]: config item (null).max_frequency is 900000000
ptp4l[764714.619]: config item (null).delay_filter_length is 10
ptp4l[764714.619]: config item (null).delay_filter is 1
ptp4l[764714.619]: config item (null).tsproc_mode is 0
ptp4l[764714.619]: config item (null).summary_interval is 0
ptp4l[764714.619]: config item (null).sanity_freq_limit is 200000000
ptp4l[764714.619]: PI servo: sync interval 1.000 kp 0.700 ki 0.300000
ptp4l[764714.619]: config item /var/run/ptp4l.boundary_clock_jbod is 0
ptp4l[764714.619]: config item /var/run/ptp4l.network_transport is 0
ptp4l[764714.619]: config item /var/run/ptp4l.delayAsymmetry is 0
ptp4l[764714.619]: config item /var/run/ptp4l.follow_up_info is 0
ptp4l[764714.619]: config item /var/run/ptp4l.freq_est_interval is 1
ptp4l[764714.619]: config item /var/run/ptp4l.hybrid_e2e is 0
ptp4l[764714.619]: config item /var/run/ptp4l.path_trace_enabled is 0
ptp4l[764714.619]: config item /var/run/ptp4l.ingressLatency is 0
ptp4l[764714.619]: config item /var/run/ptp4l.egressLatency is 0
ptp4l[764714.619]: config item /var/run/ptp4l.delay_mechanism is 0
ptp4l[764714.619]: config item /var/run/ptp4l.fault_badpeernet_interval is 16
ptp4l[764714.619]: config item /var/run/ptp4l.fault_reset_interval is 4
ptp4l[764714.619]: config item /var/run/ptp4l.delay_filter_length is 1
ptp4l[764714.619]: config item /var/run/ptp4l.delay_filter is 1
ptp4l[764714.620]: config item /var/run/ptp4l.tsproc_mode is 0
ptp4l[764714.620]: config item eth4.boundary_clock_jbod is 0
ptp4l[764714.620]: config item eth4.network_transport is 1
ptp4l[764714.620]: config item eth4.delayAsymmetry is 0
ptp4l[764714.620]: config item eth4.follow_up_info is 0
ptp4l[764714.620]: config item eth4.freq_est_interval is 1
ptp4l[764714.620]: config item eth4.hybrid_e2e is 0
ptp4l[764714.620]: config item eth4.path_trace_enabled is 0
ptp4l[764714.620]: config item eth4.ingressLatency is 0
ptp4l[764714.620]: config item eth4.egressLatency is 0
ptp4l[764714.620]: config item eth4.delay_mechanism is 0
ptp4l[764714.620]: config item eth4.fault_badpeernet_interval is 16
ptp4l[764714.620]: config item eth4.fault_reset_interval is 4
ptp4l[764714.620]: config item eth4.delay_filter_length is 10
ptp4l[764714.620]: config item eth4.delay_filter is 1
ptp4l[764714.620]: config item eth4.tsproc_mode is 0
ptp4l[764714.620]: config item eth4.logMinDelayReqInterval is 0
ptp4l[764714.620]: config item eth4.logAnnounceInterval is 1
ptp4l[764714.620]: config item eth4.announceReceiptTimeout is 3
ptp4l[764714.620]: config item eth4.syncReceiptTimeout is 0
ptp4l[764714.620]: config item eth4.transportSpecific is 0
ptp4l[764714.620]: config item eth4.logSyncInterval is 0
ptp4l[764714.620]: config item eth4.logMinPdelayReqInterval is 0
ptp4l[764714.620]: config item eth4.neighborPropDelayThresh is 20000000
ptp4l[764714.620]: config item eth4.min_neighbor_prop_delay is -20000000
ptp4l[764714.620]: config item eth4.udp_ttl is 1
ptp4l[764714.620]: driver changed our HWTSTAMP options
ptp4l[764714.620]: tx_type 1 not 1
ptp4l[764714.620]: rx_filter 1 not 12
ptp4l[764714.620]: config item (null).dscp_event is 0
ptp4l[764714.620]: config item (null).dscp_general is 0
ptp4l[764714.620]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[764714.620]: config item /var/run/ptp4l.logMinDelayReqInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logAnnounceInterval is 1
ptp4l[764714.620]: config item /var/run/ptp4l.announceReceiptTimeout is 0
ptp4l[764714.620]: config item /var/run/ptp4l.syncReceiptTimeout is 0
ptp4l[764714.620]: config item /var/run/ptp4l.transportSpecific is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logSyncInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logMinPdelayReqInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.neighborPropDelayThresh is 20000000
ptp4l[764714.620]: config item /var/run/ptp4l.min_neighbor_prop_delay is -20000000
ptp4l[764714.620]: config item (null).uds_address is '/var/run/ptp4l'
ptp4l[764714.620]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[764714.620]: interface index 1 is up
ptp4l[764714.620]: interface index 2 is down
ptp4l[764714.620]: interface index 3 is down
ptp4l[764714.620]: interface index 4 is up
ptp4l[764714.620]: interface index 5 is down
ptp4l[764714.620]: interface index 6 is up
ptp4l[764714.620]: port 1: link up
ptp4l[764714.620]: interface index 7 is down
ptp4l[764714.620]: interface index 8 is up
ptp4l[764714.620]: interface index 9 is down
ptp4l[764721.435]: port 1: announce timeout
ptp4l[764721.435]: config item eth4.udp_ttl is 1
ptp4l[764721.435]: driver changed our HWTSTAMP options
ptp4l[764721.435]: tx_type 1 not 1
ptp4l[764721.435]: rx_filter 1 not 12
ptp4l[764721.435]: config item (null).dscp_event is 0
ptp4l[764721.435]: config item (null).dscp_general is 0
ptp4l[764721.435]: selected best master clock 0002c9.fffe.2446a0
ptp4l[764728.989]: port 1: announce timeout
ptp4l[764728.989]: config item eth4.udp_ttl is 1
ptp4l[764728.989]: driver changed our HWTSTAMP options
ptp4l[764728.989]: tx_type 1 not 1
ptp4l[764728.989]: rx_filter 1 not 12
ptp4l[764728.989]: config item (null).dscp_event is 0
ptp4l[764728.989]: config item (null).dscp_general is 0
ptp4l[764728.989]: selected best master clock 0002c9.fffe.2446a0
ptp4l[764735.996]: port 1: announce timeout
ptp4l[764735.996]: config item eth4.udp_ttl is 1
ptp4l[764735.996]: driver changed our HWTSTAMP options
ptp4l[764735.996]: tx_type 1 not 1
ptp4l[764735.996]: rx_filter 1 not 12
ptp4l[764735.996]: config item (null).dscp_event is 0
ptp4l[764735.996]: config item (null).dscp_general is 0
ptp4l[764735.996]: selected best master clock 0002c9.fffe.2446a0


Alexander Perry
Linux Systems Engineer

Flow Traders US, LLC

***@us.flowtraders.com
T: +1 917 210-5038
M: +1 646 617-7299

1140 Avenue of the Americas
4th Floor
NY 10036 New York
United States
www.flowtraders.com

Flow Traders US, LLC has its principal place of business at 1140 Avenue of the Americas - 4th floor, New York 10036, USA.
This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. This message may not be forwarded or published to any other person than its addressees without Flow Traders US, LLC’s prior consent. Flow Traders US, LLC accepts no liability for damage of any kind resulting from the risks inherent in the electronic transmission of messages.
Brian Olson
2017-06-15 22:47:49 UTC
Permalink
Any chance you need to change the MAC addresses in ptp4l.conf? With a spectracom secureSync, using network_transport L2, I had to use these MAC addresses to get ptp4l to receive the messages:

ptp_dst_mac 01:00:5e:00:01:81
p2p_dst_mac 01:00:5e:00:01:81

if you can see the announce MAC address in your tcpdump, make sure the MAC matches ptp4l.conf. I’m not sure whether spectracom or ptp4l is correct, but they didn’t match and I couldn’t change the spectracom end. Spectracom uses the same broadcast MAC for both IPV4 and L2.

Brian Olson
Post by Alexander Perry
Hello,
I am trying to configure ptp4l as a slave on a server and having issues with announce timeouts. I believe this to be a configuration issue as ptpd2 works as expected.
I am using Mellanox Connect-X3 NICs with the latest firmware and kernel 4.6. The server is connected directly to a boundary clock that I know to be working normally.
eth4 on this server is in an active-passive bond.
Tcpdump shows that announce messages are coming in as expected, however the daemon appears to not recognise them. I initially thought it was looking at the wrong domain, however the output shows that it is correctly configured for domain 11.
[global]
domainNumber 11
$ sudo /usr/local/sbin/ptp4l -i eth4 -s -4 -A -l 7 -m -f ~aperry/ptp4l.conf
ptp4l[764714.619]: config item (null).assume_two_step is 0
ptp4l[764714.619]: config item (null).check_fup_sync is 0
ptp4l[764714.619]: config item (null).tx_timestamp_timeout is 1
ptp4l[764714.619]: config item (null).clock_servo is 0
ptp4l[764714.619]: config item (null).time_stamping is 1
ptp4l[764714.619]: config item (null).clock_servo is 0
ptp4l[764714.619]: config item (null).clockClass is 248
ptp4l[764714.619]: config item (null).clockAccuracy is 254
ptp4l[764714.619]: config item (null).offsetScaledLogVariance is 65535
ptp4l[764714.619]: config item (null).productDescription is ';;'
ptp4l[764714.619]: config item (null).revisionData is ';;'
ptp4l[764714.619]: config item (null).userDescription is ''
ptp4l[764714.619]: config item (null).manufacturerIdentity is '00:00:00'
ptp4l[764714.619]: config item (null).domainNumber is 11
ptp4l[764714.619]: config item (null).slaveOnly is 1
ptp4l[764714.619]: config item (null).twoStepFlag is 1
ptp4l[764714.619]: config item (null).priority1 is 128
ptp4l[764714.619]: config item (null).priority2 is 128
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).free_running is 0
ptp4l[764714.619]: selected /dev/ptp3 as PTP clock
ptp4l[764714.619]: config item (null).uds_address is '/var/run/ptp4l'
ptp4l[764714.619]: section item /var/run/ptp4l.announceReceiptTimeout now 0
ptp4l[764714.619]: section item /var/run/ptp4l.delay_mechanism now 0
ptp4l[764714.619]: section item /var/run/ptp4l.network_transport now 0
ptp4l[764714.619]: section item /var/run/ptp4l.delay_filter_length now 1
ptp4l[764714.619]: config item (null).free_running is 0
ptp4l[764714.619]: config item (null).freq_est_interval is 1
ptp4l[764714.619]: config item (null).gmCapable is 1
ptp4l[764714.619]: config item (null).kernel_leap is 1
ptp4l[764714.619]: config item (null).utc_offset is 37
ptp4l[764714.619]: config item (null).timeSource is 160
ptp4l[764714.619]: config item (null).pi_proportional_const is 0.000000
ptp4l[764714.619]: config item (null).pi_integral_const is 0.000000
ptp4l[764714.619]: config item (null).pi_proportional_scale is 0.000000
ptp4l[764714.619]: config item (null).pi_proportional_exponent is -0.300000
ptp4l[764714.619]: config item (null).pi_proportional_norm_max is 0.700000
ptp4l[764714.619]: config item (null).pi_integral_scale is 0.000000
ptp4l[764714.619]: config item (null).pi_integral_exponent is 0.400000
ptp4l[764714.619]: config item (null).pi_integral_norm_max is 0.300000
ptp4l[764714.619]: config item (null).step_threshold is 0.000000
ptp4l[764714.619]: config item (null).first_step_threshold is 0.000020
ptp4l[764714.619]: config item (null).max_frequency is 900000000
ptp4l[764714.619]: config item (null).delay_filter_length is 10
ptp4l[764714.619]: config item (null).delay_filter is 1
ptp4l[764714.619]: config item (null).tsproc_mode is 0
ptp4l[764714.619]: config item (null).summary_interval is 0
ptp4l[764714.619]: config item (null).sanity_freq_limit is 200000000
ptp4l[764714.619]: PI servo: sync interval 1.000 kp 0.700 ki 0.300000
ptp4l[764714.619]: config item /var/run/ptp4l.boundary_clock_jbod is 0
ptp4l[764714.619]: config item /var/run/ptp4l.network_transport is 0
ptp4l[764714.619]: config item /var/run/ptp4l.delayAsymmetry is 0
ptp4l[764714.619]: config item /var/run/ptp4l.follow_up_info is 0
ptp4l[764714.619]: config item /var/run/ptp4l.freq_est_interval is 1
ptp4l[764714.619]: config item /var/run/ptp4l.hybrid_e2e is 0
ptp4l[764714.619]: config item /var/run/ptp4l.path_trace_enabled is 0
ptp4l[764714.619]: config item /var/run/ptp4l.ingressLatency is 0
ptp4l[764714.619]: config item /var/run/ptp4l.egressLatency is 0
ptp4l[764714.619]: config item /var/run/ptp4l.delay_mechanism is 0
ptp4l[764714.619]: config item /var/run/ptp4l.fault_badpeernet_interval is 16
ptp4l[764714.619]: config item /var/run/ptp4l.fault_reset_interval is 4
ptp4l[764714.619]: config item /var/run/ptp4l.delay_filter_length is 1
ptp4l[764714.619]: config item /var/run/ptp4l.delay_filter is 1
ptp4l[764714.620]: config item /var/run/ptp4l.tsproc_mode is 0
ptp4l[764714.620]: config item eth4.boundary_clock_jbod is 0
ptp4l[764714.620]: config item eth4.network_transport is 1
ptp4l[764714.620]: config item eth4.delayAsymmetry is 0
ptp4l[764714.620]: config item eth4.follow_up_info is 0
ptp4l[764714.620]: config item eth4.freq_est_interval is 1
ptp4l[764714.620]: config item eth4.hybrid_e2e is 0
ptp4l[764714.620]: config item eth4.path_trace_enabled is 0
ptp4l[764714.620]: config item eth4.ingressLatency is 0
ptp4l[764714.620]: config item eth4.egressLatency is 0
ptp4l[764714.620]: config item eth4.delay_mechanism is 0
ptp4l[764714.620]: config item eth4.fault_badpeernet_interval is 16
ptp4l[764714.620]: config item eth4.fault_reset_interval is 4
ptp4l[764714.620]: config item eth4.delay_filter_length is 10
ptp4l[764714.620]: config item eth4.delay_filter is 1
ptp4l[764714.620]: config item eth4.tsproc_mode is 0
ptp4l[764714.620]: config item eth4.logMinDelayReqInterval is 0
ptp4l[764714.620]: config item eth4.logAnnounceInterval is 1
ptp4l[764714.620]: config item eth4.announceReceiptTimeout is 3
ptp4l[764714.620]: config item eth4.syncReceiptTimeout is 0
ptp4l[764714.620]: config item eth4.transportSpecific is 0
ptp4l[764714.620]: config item eth4.logSyncInterval is 0
ptp4l[764714.620]: config item eth4.logMinPdelayReqInterval is 0
ptp4l[764714.620]: config item eth4.neighborPropDelayThresh is 20000000
ptp4l[764714.620]: config item eth4.min_neighbor_prop_delay is -20000000
ptp4l[764714.620]: config item eth4.udp_ttl is 1
ptp4l[764714.620]: driver changed our HWTSTAMP options
ptp4l[764714.620]: tx_type 1 not 1
ptp4l[764714.620]: rx_filter 1 not 12
ptp4l[764714.620]: config item (null).dscp_event is 0
ptp4l[764714.620]: config item (null).dscp_general is 0
ptp4l[764714.620]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[764714.620]: config item /var/run/ptp4l.logMinDelayReqInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logAnnounceInterval is 1
ptp4l[764714.620]: config item /var/run/ptp4l.announceReceiptTimeout is 0
ptp4l[764714.620]: config item /var/run/ptp4l.syncReceiptTimeout is 0
ptp4l[764714.620]: config item /var/run/ptp4l.transportSpecific is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logSyncInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.logMinPdelayReqInterval is 0
ptp4l[764714.620]: config item /var/run/ptp4l.neighborPropDelayThresh is 20000000
ptp4l[764714.620]: config item /var/run/ptp4l.min_neighbor_prop_delay is -20000000
ptp4l[764714.620]: config item (null).uds_address is '/var/run/ptp4l'
ptp4l[764714.620]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[764714.620]: interface index 1 is up
ptp4l[764714.620]: interface index 2 is down
ptp4l[764714.620]: interface index 3 is down
ptp4l[764714.620]: interface index 4 is up
ptp4l[764714.620]: interface index 5 is down
ptp4l[764714.620]: interface index 6 is up
ptp4l[764714.620]: port 1: link up
ptp4l[764714.620]: interface index 7 is down
ptp4l[764714.620]: interface index 8 is up
ptp4l[764714.620]: interface index 9 is down
ptp4l[764721.435]: port 1: announce timeout
ptp4l[764721.435]: config item eth4.udp_ttl is 1
ptp4l[764721.435]: driver changed our HWTSTAMP options
ptp4l[764721.435]: tx_type 1 not 1
ptp4l[764721.435]: rx_filter 1 not 12
ptp4l[764721.435]: config item (null).dscp_event is 0
ptp4l[764721.435]: config item (null).dscp_general is 0
ptp4l[764721.435]: selected best master clock 0002c9.fffe.2446a0
ptp4l[764728.989]: port 1: announce timeout
ptp4l[764728.989]: config item eth4.udp_ttl is 1
ptp4l[764728.989]: driver changed our HWTSTAMP options
ptp4l[764728.989]: tx_type 1 not 1
ptp4l[764728.989]: rx_filter 1 not 12
ptp4l[764728.989]: config item (null).dscp_event is 0
ptp4l[764728.989]: config item (null).dscp_general is 0
ptp4l[764728.989]: selected best master clock 0002c9.fffe.2446a0
ptp4l[764735.996]: port 1: announce timeout
ptp4l[764735.996]: config item eth4.udp_ttl is 1
ptp4l[764735.996]: driver changed our HWTSTAMP options
ptp4l[764735.996]: tx_type 1 not 1
ptp4l[764735.996]: rx_filter 1 not 12
ptp4l[764735.996]: config item (null).dscp_event is 0
ptp4l[764735.996]: config item (null).dscp_general is 0
ptp4l[764735.996]: selected best master clock 0002c9.fffe.2446a0
Alexander Perry
Linux Systems Engineer
Flow Traders US, LLC
T: +1 917 210-5038
M: +1 646 617-7299
1140 Avenue of the Americas
4th Floor
NY 10036 New York
United States
www.flowtraders.com
Flow Traders US, LLC has its principal place of business at 1140 Avenue of the Americas - 4th floor, New York 10036, USA.
This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. This message may not be forwarded or published to any other person than its addressees without Flow Traders US, LLC’s prior consent. Flow Traders US, LLC accepts no liability for damage of any kind resulting from the risks inherent in the electronic transmission of messages.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linuxptp-users mailing list
https://lists.sourceforge.net/lists/listinfo/linuxptp-users
Loading...