DPDK usage discussions
 help / color / mirror / Atom feed
From: Pawel Wodkowski <pawelwod@gmail.com>
To: Filip Janiszewski <contact@filipjaniszewski.com>,
	Tom Barbette <barbette@kth.se>, "users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] Round-robin packet distribution
Date: Tue, 18 Aug 2020 15:50:09 +0200	[thread overview]
Message-ID: <ccf135b4-485a-81e9-a940-b8020fca68de@gmail.com> (raw)
In-Reply-To: <2f9d3b69-4fef-b179-6510-2d2d4c23ec02@filipjaniszewski.com>

Flexible payload matching (aka RAW in flow API) works up to first 64b of the
packet - at least in e1000, ixgbe and i40e.

It will be easier if you can provide some details about you network
traffic.

Paweł

On 18.08.2020 14:40, Filip Janiszewski wrote:
> Hi,
>
> We had a look at that, and decided that it might be a bit too
> complicated to implement in our SW and will not work in a performant way
> as we might wish, ideally we're looking for a simple approach even if
> not ideal..
>
> So, I was wondering if we can get at least a "fair" distribution (no
> round robin) using rte flow? And BTW, is it even possible to access the
> checksum from this API using for example the pattern matching with an
> offset that points to the proper byte location in the packet? (It seems
> it can't be done without modification to the driver..)
>
> Thanks
>
> Il 7/25/20 10:28 AM, Tom Barbette ha scritto:
>> Hi Filip,
>>
>> This is not possible, but you may use the idea of Sprayer
>> (http://www.gta.ufrj.br/ftp/gta/TechReports/SCC18d.pdf) to dispatch
>> packets randomly (use RSS on the checksum).
>>
>> However, in our paper RSS++
>> (https://www.diva-portal.org/smash/get/diva2:1371780/FULLTEXT01.pdf) we
>> show it's nearly always a bad idea because you'll have to share state,
>> and even for "stateless" function, that leads to a very bad locality in
>> a firewall as the same rules have to be fetched to L1 to all cores at
>> the same time when you receive a burst of similar packets.
>>
>> Tom
>>
>> Le 24/07/2020 à 12:05, Filip Janiszewski a écrit :
>>> Hi,
>>>
>>> Is there a way in DPDK to configure the NIC to distribute the incoming
>>> packets to multiple queues in a round robin fashion? Without taking into
>>> account the payload/headers or type of packet, just plain round robin
>>> distribution to multiple queues.
>>>
>>> I'm struggling to obtain a fair mechanism using RSS, perhaps the
>>> rte_flow API can do the trick? Any other suggestion?
>>>
>>> Thanks
>>>


  reply	other threads:[~2020-08-18 13:50 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-24 10:05 Filip Janiszewski
2020-07-25  8:35 ` Tom Barbette
     [not found] ` <8c8034d8-4cd5-bd0b-0958-14d08f5ae6e3@kth.se>
2020-08-18 12:40   ` Filip Janiszewski
2020-08-18 13:50     ` Pawel Wodkowski [this message]
2020-08-18 14:27       ` Filip Janiszewski
2020-08-24 10:08         ` Tom Barbette
     [not found]         ` <09498ac1-672d-a1e5-f917-d5720e1c90a7@kth.se>
2020-08-25 12:17           ` Pawel Wodkowski
2020-08-31 14:56             ` Filip Janiszewski

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=ccf135b4-485a-81e9-a940-b8020fca68de@gmail.com \
    --to=pawelwod@gmail.com \
    --cc=barbette@kth.se \
    --cc=contact@filipjaniszewski.com \
    --cc=users@dpdk.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).