Re: [Linuxptp-users] Issue when partner machine reboots
PTP IEEE 1588 stack for Linux
Brought to you by:
rcochran
From: Richard C. <ric...@gm...> - 2012-05-05 06:29:26
|
On Fri, May 04, 2012 at 08:39:36PM +0000, Keller, Jacob E wrote: > > Ok. For now I had validation try using the l2 ethernet packets. Reset doesn't > make these invalid. I believe the reason why UDP sockets go down is because the > IP address becomes invalid when the socket loses link. (Even if the same IP > address came back!) I like the idea of a netlink socket that could trigger a > proper port reset. Right now the default port reset doesn't appear to reset the > socket. (It does get a fault because it is unable to transmit,but the socket isn't ^^^^^^^^^^^^^^^^^^^^ > reset when it clears the fault.) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ / This surprises me. After a port fault, the clock waits 15 seconds and then clears the fault. This causes the port to open the transport (ie socket) again. So if the program faults after a failed transmission, then it should recover. Could it be that your network setup loses the default gateway after linkdown? (Without a default route, the UDP multicast does not work.) In any case, if your UDP socket does recover after a failed transmission, then there is a bug somewhere. I expect that ptp4l should reset (close, and then open) the UDP socket for that port every fifteen seconds, until the link recovers. If this isn't working, then I want to know why. There is _one_ case where I know that the port gets stuck, and that is when you have slave only mode. If the link does down when the port is in the listening state, the port never sends and thus never sees and error. For this case the netlink socket is needed. Thanks, Richard |