tcpdump mailing list archives

Re: [RFC PATCH 0/2]: hw timestamp support


From: Darren Reed <darren.reed () oracle com>
Date: Wed, 26 May 2010 10:29:34 -0700

Scott,

Thanks for the brief. Timestamping of only PTP packets is not particularly interesting, so it may be that the '580 is the first interesting chip for packet capture purposes. I'll have to do some further reading though.

Darren

On 26/05/10 09:18 AM, Mcmillan, Scott A wrote:
Darren,

Various flavors of timestamping are available on Intel NICs.  For example, the 82576 can timestamp PTP packets in hw, but 
not general purpose packets.  My guess is that the 82575 behaves like the 82576 with respect to hw timestamping, but 
I'm not sure.  Please refer to the product docs.

In the Linux driver, the PTP hw timestamping and general purpose packet timestamping paths have much in common. (see 
IGB_PER_PKT_TIMESTAMP in the Linux igb stable driver, http://sourceforge.net/projects/e1000/files/).

Scott

-----Original Message-----
From: Darren Reed [mailto:darren.reed () oracle com]
Sent: Tuesday, May 25, 2010 7:37 PM
To: Mcmillan, Scott A
Cc: tcpdump-workers () lists tcpdump org
Subject: Re: [tcpdump-workers] [RFC PATCH 0/2]: hw timestamp support

Scott,

Is it just the 82580 or others too?

If I look in the source code for OpenSolaris, I see:

igb_82575.h:#define    E1000_SRRCTL_TIMESTAMP     0x40000000
igb_82575.h:#define    E1000_RXDADV_STAT_TS       0x10000 /* Pkt was
time stamped */
igb_82575.h:#define    E1000_RXDADV_STAT_TSIP     0x08000 /* timestamp
in packet */
igb_82575.h:#define    E1000_ADVTXD_MAC_TSTAMP    0x00080000 /* IEEE1588
Timestamp packet */
igb_82575.h:#define    E1000_FTQF_1588_TIME_STAMP 0x08000000

I'm not sure how much to read into the filename here,
but the macro names suggest that it is also present
on other chips, such as the 8254x and 82571 chips.

I had no idea this feature was present and now that I do,
I'd like to see OpenSolaris support it. I imagine that
all of the details will be in the relevant documents
that describe the NICs?

Darren

On 25/05/10 07:58 AM, Mcmillan, Scott A wrote:
Yon,

I assume you're asking about commodity NICs, not something like Endace.

The NIC I'm most familiar with that supports general hw timestamping is the Intel 82580 Gigabit Ethernet Controller.  
It can timestamp all RX packets in hardware, but only PTP TX packets.

Scott

-----Original Message-----
From: tcpdump-workers-owner () lists tcpdump org [mailto:tcpdump-workers-owner () lists tcpdump org] On Behalf Of yon ar 
c'hall
Sent: Tuesday, May 25, 2010 4:41 AM
To: tcpdump-workers () lists tcpdump org
Subject: Re: [tcpdump-workers] [RFC PATCH 0/2]: hw timestamp support

Hello Scott,

By the way, do you know which NICs/network controllers support HW
timestamping for all packets (not only the PTP datagrams -- IEEE 1588) ?

Yon

On Mon, May 24, 2010 at 4:26 PM, Mcmillan, Scott A<
scott.a.mcmillan () intel com>   wrote:

[My apologies if this double posts.  The mail server didn't care for the
first submission.]

This patch adds the capability to select the packet timestamp source.  It
also adds support for the PACKET_TIMESTAMP Linux kernel setting to specify
the source of packet timestamps.  The corresponding Linux kernel patch is
being submitted concurrently.

A new command line option was added to tcpdump, -j, to specify the source
of the packet timestamp.  Valid options are 'raw' to use the raw NIC HW
timestamp and 'nic' to use the NIC HW timestamp transformed into the system
clock basis.  If the option is not specified, or OS or the NIC do not
support HW timestamping, a software timestamp is used (identical to the
current behavior.)

[Note: As a RFC, I'm posting this to the mailing list before submitting the
patches to SourceForge.]

Thanks,
Scott
-
This is the tcpdump-workers list.
Visit https://cod.sandelman.ca/ to unsubscribe.

-
This is the tcpdump-workers list.
Visit https://cod.sandelman.ca/ to unsubscribe.
-
This is the tcpdump-workers list.
Visit https://cod.sandelman.ca/ to unsubscribe.

-
This is the tcpdump-workers list.
Visit https://cod.sandelman.ca/ to unsubscribe.


Current thread: