Andrew Symington
2015-11-07 03:44:02 UTC
Hi there
Up until now I have used BeagleBone Black as ordinary clocks connected by a
Moxa EDS-405A-PTP switch as a transparent clock. Both of these devices only
support 2-step time stamping, and P2P over 802.3 works out of the box with
the following command: ./ptp4l -i eth0 -2 -H -P -m
I have now moved to using a Ruggedcom RSG2488 switch, which supports 1-step
time stamping. I configured this switch an 802.3 P2P transparent clock, but
there is no option to configure 1 or 2 step mode. Although path delays
between to each BeagleBone is calculated correctly by the switch (I can
confirm this with the management interface on the switch), my problem is
that the Sync / Follow_up packets sent between BeagleBones don't seem to be
received and/or processed by ptp4l.
On closer examination of the packets using wireshark I noticed that the
RSG2488 was modifying the correction field of the Sync message rather than
the Follow_Up message. By contrast, the Moxa switch rather modified the
correction field of the Follow_Up message. The same pattern is true for the
Path_Delay_Resp and Path_Delay_Resp_Follow_up messages. I'm not certain if
this was the reason ptp4l did not appear to receive any Sync messages from
Slave
Can anybody please confirm whether it is normal behaviour for ptp4l, or if
it is likely a configuration / firmware issue with my switch? I have
included some ptp4l traces below, and the packet dump is available here:
http://filebin.ca/2LgrZ4ShbY56
I am using linuxptp 1.6-00001-g6eec5a0.
Regards
Andrew Symington
// MASTER
/////////////////////////////////////////////////////////////////////////
ptp4l[70013.985]: port 1: LISTENING to MASTER on
ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[70013.985]: selected best master clock 6ceceb.fffe.ab03b4
ptp4l[70013.985]: assuming the grand master role
ptp4l[70013.986]: port 1: master tx announce timeout
ptp4l[70014.049]: port 1: new foreign master 6ceceb.fffe.aef74d-1
ptp4l[70014.460]: port 0: announce timeout
ptp4l[70014.657]: port 1: delay timeout
ptp4l[70014.985]: port 1: master sync timeout
ptp4l[70015.658]: port 1: delay timeout
ptp4l[70015.986]: port 1: master sync timeout
ptp4l[70015.987]: port 1: master tx announce timeout
// SLAVE
/////////////////////////////////////////////////////////////////////////
ptp4l[70015.920]: selected best master clock 6ceceb.fffe.ab03b4
ptp4l[70015.921]: port 1: MASTER to UNCALIBRATED on RS_SLAVE
ptp4l[70016.539]: port 1: delay timeout
ptp4l[70016.927]: port 0: announce timeout
ptp4l[70017.540]: port 1: delay timeout
ptp4l[70018.541]: port 1: delay timeout
ptp4l[70019.541]: port 1: delay timeout
ptp4l[70020.542]: port 1: delay timeout
ptp4l[70021.542]: port 1: delay timeout
ptp4l[70022.543]: port 1: delay timeout
ptp4l[70023.543]: port 1: delay timeout
/////////////////////////////////////////////////////////////////////////////////
Up until now I have used BeagleBone Black as ordinary clocks connected by a
Moxa EDS-405A-PTP switch as a transparent clock. Both of these devices only
support 2-step time stamping, and P2P over 802.3 works out of the box with
the following command: ./ptp4l -i eth0 -2 -H -P -m
I have now moved to using a Ruggedcom RSG2488 switch, which supports 1-step
time stamping. I configured this switch an 802.3 P2P transparent clock, but
there is no option to configure 1 or 2 step mode. Although path delays
between to each BeagleBone is calculated correctly by the switch (I can
confirm this with the management interface on the switch), my problem is
that the Sync / Follow_up packets sent between BeagleBones don't seem to be
received and/or processed by ptp4l.
On closer examination of the packets using wireshark I noticed that the
RSG2488 was modifying the correction field of the Sync message rather than
the Follow_Up message. By contrast, the Moxa switch rather modified the
correction field of the Follow_Up message. The same pattern is true for the
Path_Delay_Resp and Path_Delay_Resp_Follow_up messages. I'm not certain if
this was the reason ptp4l did not appear to receive any Sync messages from
Slave
Can anybody please confirm whether it is normal behaviour for ptp4l, or if
it is likely a configuration / firmware issue with my switch? I have
included some ptp4l traces below, and the packet dump is available here:
http://filebin.ca/2LgrZ4ShbY56
I am using linuxptp 1.6-00001-g6eec5a0.
Regards
Andrew Symington
// MASTER
/////////////////////////////////////////////////////////////////////////
ptp4l[70013.985]: port 1: LISTENING to MASTER on
ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[70013.985]: selected best master clock 6ceceb.fffe.ab03b4
ptp4l[70013.985]: assuming the grand master role
ptp4l[70013.986]: port 1: master tx announce timeout
ptp4l[70014.049]: port 1: new foreign master 6ceceb.fffe.aef74d-1
ptp4l[70014.460]: port 0: announce timeout
ptp4l[70014.657]: port 1: delay timeout
ptp4l[70014.985]: port 1: master sync timeout
ptp4l[70015.658]: port 1: delay timeout
ptp4l[70015.986]: port 1: master sync timeout
ptp4l[70015.987]: port 1: master tx announce timeout
// SLAVE
/////////////////////////////////////////////////////////////////////////
ptp4l[70015.920]: selected best master clock 6ceceb.fffe.ab03b4
ptp4l[70015.921]: port 1: MASTER to UNCALIBRATED on RS_SLAVE
ptp4l[70016.539]: port 1: delay timeout
ptp4l[70016.927]: port 0: announce timeout
ptp4l[70017.540]: port 1: delay timeout
ptp4l[70018.541]: port 1: delay timeout
ptp4l[70019.541]: port 1: delay timeout
ptp4l[70020.542]: port 1: delay timeout
ptp4l[70021.542]: port 1: delay timeout
ptp4l[70022.543]: port 1: delay timeout
ptp4l[70023.543]: port 1: delay timeout
/////////////////////////////////////////////////////////////////////////////////