ptpd version with kernel send time stamps

Patrick Ohly patrick.ohly at intel.com
Fri Jan 29 05:56:41 EST 2010


On Fr, 2010-01-29 at 09:07 +0000, "Sebastian Dölker" wrote:
> Hallo,
> Thank you for you quick reply! 
> Yes i think that's what i mean.
> I work with the orginal ptpd version from sourceforge and i am locking
> for options to improve the clock synchronisation (at the moment ca +-
> 300us)
> Currently ptpd does tx-timestamps in user space with the getTime()
> funktion in protocol.c.

Without having looked at the source again, there should also be a method
where time stamping is done entirely in the Linux kernel, using the loop
back functionality for multicasts.

That approach gives fairly good results, but they still suffer from
random delays in the network packet processing inside the kernel. I
don't think you'll get much better without hardware support.

> I heared of this methode, doing send timestamps in the nic driver and
> get it with a ioctl to userspace. My nic does not support
> hw-timestamping so i have to do the timestamping in the software stack
> of the nic driver. 
> 
> If i add your SOF_TIMESTAMPING_TX_SOFTWARE option to the ioctl
> interface of the nic driver by my self, can it work with your ptpd
> version?
>
> I have less experience in driver programming, so:
> Can it work in the explained way at all?

It might work.

> Is it a lot of effort to adapt the nic driver in that way?

Depends on your driver.

> Will it bring improvement?

Whether it is better than the loop back option remains to be seen.
Because the time stamp would be taken inside the driver, it might be
closer to the actual transmission.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





More information about the Ptpd mailing list