Re: Lightweight packet timestamping

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 06/06/20 01:34, David Ahern wrote:
On 6/4/20 7:30 AM, Federico Parola wrote:
Hello everybody,
I'm implementing a token bucket algorithm to apply rate limit to traffic and I need the timestamp of packets to update the bucket. To get this information I'm using the bpf_ktime_get_ns() helper but I've discovered it has a non negligible impact on performance. I've seen there is work in progress to make hardware timestamps available to XDP programs, but I don't know if this feature is already available. Is there a faster way to retrieve this information?
Thanks for your attention.

bpf_ktime_get_ns should be fairly light. What kind of performance loss
are you seeing with it?
I've run some tests on a program forwarding packets between two interfaces and applying rate limit: using the bpf_ktime_get_ns() I can process up to 3.84 Mpps, if I replace the helper with a lookup on a map containing the current timestamp updated in user space I go up to 4.48 Mpps.
XDP does not support access to h/w timestamps at the moment.

I see, I think I'll keep the map solution for now, since I don't need nanoseconds precision. Thank you.


Federico




[Index of Archives]     [Linux Networking Development]     [Fedora Linux Users]     [Linux SCTP]     [DCCP]     [Gimp]     [Yosemite Campsites]

  Powered by Linux