All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Federico Parola <fede.parola@hotmail.it>, xdp-newbies@vger.kernel.org
Subject: Re: Lightweight packet timestamping
Date: Wed, 10 Jun 2020 23:09:34 +0200	[thread overview]
Message-ID: <87d0667hm9.fsf@toke.dk> (raw)
In-Reply-To: <DB7PR08MB31304BCD517885F0E1C063F69E830@DB7PR08MB3130.eurprd08.prod.outlook.com>

Federico Parola <fede.parola@hotmail.it> writes:

> 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.

Can you share more details on the platform you're running this on? I.e.,
CPU and chipset details, network driver, etc.

-Toke

  reply	other threads:[~2020-06-10 21:09 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <DB7PR08MB3130BDD01387627E7FAD775F9E890@DB7PR08MB3130.eurprd08.prod.outlook.com>
     [not found] ` <DB7PR08MB3130C02AB04133E07146F40D9E890@DB7PR08MB3130.eurprd08.prod.outlook.com>
2020-06-04 13:30   ` Lightweight packet timestamping Federico Parola
2020-06-05 23:34     ` David Ahern
2020-06-10 14:48       ` Federico Parola
2020-06-10 21:09         ` Toke Høiland-Jørgensen [this message]
2020-06-16 16:00           ` Jesper Dangaard Brouer
2020-06-16 16:07             ` David Ahern
2020-06-17  9:47               ` Federico Parola

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87d0667hm9.fsf@toke.dk \
    --to=toke@redhat.com \
    --cc=fede.parola@hotmail.it \
    --cc=xdp-newbies@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.