Ethernet Products
Determine ramifications of Intel® Ethernet products and technologies
5287 Discussions

Can I use the intel i210 to measure software packet processing time

SShaw12
Beginner
2,144 Views

Hi, I need to measure the time it takes a packet to get processed through my application and the linux stack all the way to transmission (and would rather avoid editing kernel drivers). I have searched the web as well as this forum and do not see a similar post. Basically at some point in the application, I need to sample a reference time when I start packet processing, then again sample it as the packet is about to get transmitted via the intel i210 and calculate the difference. I am thinking that the best solution would be to sample the IEEE1588 timer as I am about to start processing the packet (which I can not find access to in the data sheet); and then when the packet is transmitted, the MAC can store the packet transmission time in TXSTMP register (0xB618/C) with status in (0xB614) and I can read that and subtract. Can anyone help me with the following questions

  1. Is there a way to read the IEEE1588 timestamp register so that I have a start time reference
  2. Will the MAC update the TXSTMP register for all packets? The description says for certain packets, but I can not find whether there is a filter to set for this.

Thank you in advance for your help. If there is another way to accomplish the same, I would appreciate your thoughts.

-sam

 

0 Kudos
9 Replies
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

Thank you for posting in Intel Ethernet Communities. 

 

We will help you to check on this and provide an update within 1-3 business days. But while we are checking on this, please share the exact model of the I210. We'd also like to check if the I210 is LAN on motherboard (LOM) or a PCIe NIC card for our record purposes? If it is LOM, please share the model of the board where the NIC is integrated to.

 

Looking forward to your response.

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
SShaw12
Beginner
1,941 Views

Hi, thank you for your response.

The card is: Intel I210-T1 Network Adapter E0X95AA, it is not LOM.

Ordered here: https://www.amazon.com/gp/product/B00ESFF2JC/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

Thank you

 

0 Kudos
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

We appreciate your reply.

 

Please allow us to continue to check on this request. Rest assured that we will provide an update within 1-3 business days.

 

We are also sharing the link below for Technical Library of Intel® Ethernet Controller I210 and I211 Series. The documentations on this link might be helpful on your request.

https://www.intel.com/content/www/us/en/design/products-and-solutions/networking-and-io/ethernet-controller-i210-i211/technical-library.html

 

Hoping for your patience.

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

Thank you for the patience on this matter.

 

The Intel Ethernet Controller I210 [Springville] Traffic Shaping and Time Synchronization Technical Brief could be helpful to your query. This documentation contains various features supported by the Intel I210 LAN controller to enable solutions to participate in time synchronization protocols and controls on the transmission timing and scheduling within the Intel I210 LAN controller.

 

However, this document requires CNDA. With this, we’d like to check if you have CNDA with Intel?

 

Looking forward to hear from you.

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
SShaw12
Beginner
1,941 Views

I do not but can sign it as necessary. How do I proceed on this?

Thank you

0 Kudos
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

Thank you for the response.

 

We have looked through the I210 datasheet link below. Please see the following details as this might be helpful on your request.

https://www.intel.com/content/www/us/en/embedded/products/networking/i210-ethernet-controller-datasheet.html

 

The IEEE 1588 timer is the SYSTIM register

See chapter 7.8.3.2 on page 348

 

There are 2 slightly different methods for TX packet timestamping.

All packet timestamping can be seen in chapter 7.2.2.3.1

 

IEEE 1588 timestamping 7.8.2.3 (more precise but 1588 only)

 

Please note that reading a register through the PCIe can add delay and jitter to this measurements.

 

Let us know if you have additional questions and clarification on this matter.

 

Awaiting to your reply.

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

Good day!

 

We'd like to check if you were able to visit the provided documentation above. In case you have additional questions and clarification on this request, please let us know and we will be glad to be of help.

 

Looking forward to hear from you.

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
SShaw12
Beginner
1,941 Views

The linux distribution file timestamping.c developed by intel has the solution coded.

Thank you for your help.

0 Kudos
Caguicla_Intel
Moderator
1,941 Views

Hello Sam,

 

You are welcome.

 

Please be informed that we will now proceed in closing this request. In case you have any other concerns or assistance needed in the future, feel free to post a new question and we will be glad to be of help.

 

Thank you for your time and effort on this matter!

 

Best regards,

Crisselle C

Intel Customer Support

A Contingent Worker at Intel

0 Kudos
Reply