[dpdk-dev] Accurate timestamps in received packets

Montorsi, Francesco fmontorsi at empirix.com
Fri Oct 9 17:30:19 CEST 2015


Hi all,
I'm using rte_eth_rx_burst() to successfully retrieve packets from a DPDK-enabled port. I can process the packet and everything works fine. My only issue is that I cannot find any mean to retrieve a timestamp for every single packet. As a dirty-workaround I'm using gettimeofday() to timestamp incoming packets but I would rather like to retrieve a more accurate and realistic timestamp from the Ethernet PHY layer instead. For example if I receive 32 packets in a single burst I'm just assigning the packets timestamp with 1ns of difference (using gettimeofday() for the initial time offset).

Is there a way to retrieve a realistic timestamp from the Ethernet PHY layer?

I found this patch searching on the web:  
       http://www.wand.net.nz/trac/libtrace/browser/Intel%20DPDK%20Patches/hardware_timestamp.patch
that is however related to an older DPDK version and works only for INTEL 82580 controllers... do you know if that simple patch linked above could be similarly ported to Intel 82599 and 82571 controllers? Is there any better/easier way to do that?

Thanks a lot,

Francesco Montorsi





More information about the dev mailing list