|
From: George Neville-N. <gn...@ne...> - 2013-05-27 01:37:00
|
On May 26, 2013, at 18:33 , Wojciech Owczarek <woj...@ow...> wrote: > George, All, > > I just submitted some minor fixes to the PCAP code - tested on Linux: RHEL6 and Ubuntu. Hybrid and unicast modes should be working OK with PCAP now [ only slave mode tested! ] > Great, I'll check them on FreeBSD in the next day or so. > Naturally PCAP works fine on Linux. I don't think there is a more portable solution in userspace. > > Observations so far: > > - accuracy improved by approx 5us straight away, precision improved as well due to lower jitter > - unfortunately servo output will be a little jittery (short-term jitter in smaller scale - "thicker" plots basically), reason being that pcap we're back to microsecond timestamp resolution - not much can be done about it it seems, even with the latest libpcap > - need to double check socket initialisation and handling when using pcap: ptpd is currently bounding back ICMP unreachables in reaction to unicast delay responses. Doesn't break anything on the slave side but shouldn't be happening. So one thing that will happen on FreeBSD, but I"m not sure on Linux is that with BPF we take the timestamp right above the network driver, before any other part of the system sees the packet. That was one of my main motivations for doing that. The other thing that will eventually go into the code is that BPF/PCAP on FreeBSD can now have nanosecond timestamps, as of FreeBSD 10 (CURRENT). Once I test that I'll add those switches to the code. Best, George |