DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: Ivan Malov <ivan.malov@oktetlabs.ru>,
	Adrien Mazarguil <adrien.mazarguil@6wind.com>,
	dev@dpdk.org, Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
	orika@nvidia.com
Subject: Re: Understanding Flow API action RSS
Date: Tue, 4 Jan 2022 08:54:42 -0800	[thread overview]
Message-ID: <20220104085442.4e406f2a@hermes.local> (raw)
In-Reply-To: <4677833.GXAFRqVoOG@thomas>

On Tue, 04 Jan 2022 13:41:55 +0100
Thomas Monjalon <thomas@monjalon.net> wrote:

> +Cc Ori Kam, rte_flow maintainer
> 
> 29/12/2021 15:34, Ivan Malov:
> > Hi all,
> > 
> > In 'rte_flow.h', there is 'struct rte_flow_action_rss'. In it, 'queue' is
> > to provide "Queue indices to use". But it is unclear whether the order of 
> > elements is meaningful or not. Does that matter? Can queue indices repeat?

The order probably doesn't matter, it is like the RSS indirection table.

    rx queue = RSS_indirection_table[ RSS_hash_value % RSS_indirection_table_size ]

So you could play with multiple queues matching same hash value, but that
would be uncommon.

> > An ethdev may have "global" RSS setting with an indirection table of some
> > fixed size (say, 512). In what comes to flow rules, does that size matter?

Global RSS is only used if the incoming packet does not match any rte_flow
action. If there is a a RTE_FLOW_ACTION_TYPE_QUEUE or RTE_FLOW_ACTION_TYPE_RSS
these take precedence.

> > When the user selects 'RTE_ETH_HASH_FUNCTION_DEFAULT' in action RSS, does
> > that allow the PMD to configure an arbitrary, non-Toeplitz hash algorithm?

No the default is always Toeplitz.  This goes back to the original definition
of RSS which is in Microsoft NDIS and uses Toeplitz. 

DPDK should have more examples of using rte_flow, I have some samples
but they aren't that useful.


  reply	other threads:[~2022-01-04 16:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-29 14:34 Ivan Malov
2022-01-04 12:41 ` Thomas Monjalon
2022-01-04 16:54   ` Stephen Hemminger [this message]
2022-01-04 18:29     ` Ivan Malov
2022-01-04 21:56       ` Stephen Hemminger
2022-01-09 12:23         ` Ori Kam
2022-01-09 13:03           ` Ivan Malov
2022-01-10  9:54             ` Ori Kam
2022-01-10 15:04               ` Ivan Malov
2022-01-10 17:18                 ` Ori Kam

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=20220104085442.4e406f2a@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=adrien.mazarguil@6wind.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=dev@dpdk.org \
    --cc=ivan.malov@oktetlabs.ru \
    --cc=orika@nvidia.com \
    --cc=thomas@monjalon.net \
    /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).