DPDK patches and discussions
 help / color / mirror / Atom feed
From: elevran <elevran@gmail.com>
To: Michael Quicquaro <michael.quicquaro@gmail.com>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] generic load balancing
Date: Wed, 4 Dec 2013 22:48:33 +0200	[thread overview]
Message-ID: <CAGNKSKcs=0G5qFYkRJHLoDwnrTEW6qBPo7+F_qwroMY5OCqrMw@mail.gmail.com> (raw)
In-Reply-To: <CAAD-K94YUY6aUPzvJyqJ7w4W2_81d0Fq7EvwJ1xKOzzd3Ld4Lw@mail.gmail.com>

Hi Michael,

As far as I know, RSS is used to distribute packets between cores based on
hashing the packets' initial bytes, so round robin distribution is not
possible in hardware. You can configure the hash seed and which fields to
use in the hash. If the input packets have same or very similar bytes, the
hash distribution won't be good, as you had observed.

The Intel network card manuals provide the details.

You may want to consider distributing packets from the PMD queue into
secondary rings/queues using software policy running on the first core.
Look at the multiprocessor samples in the dpdk for reference. Performance
depends on your HW.

Regards,
Etai
בתאריך 4 בדצמ 2013 19:53, "Michael Quicquaro" <michael.quicquaro@gmail.com>
כתב:

> Hi all,
> I am writing a dpdk application that will receive packets from one
> interface and process them.  It does not forward packets in the traditional
> sense.  However, I do need to process them at full line rate and therefore
> need more than one core.  The packets can be somewhat generic in nature and
> can be nearly identical (especially at the beginning of the packet).  I've
> used the rxonly function of testpmd as a model.
>
> I've run into problems in processing a full line rate of data since the
> nature of the data causes all the data to be presented to only one core.  I
> get a large percentage of dropped packets (shows up as Rx-Errors in "port
> stats") because of this.  I've tried modifying the data so that packets
> have different UDP ports and that seems to work when I use --rss-udp
>
> My questions are:
> 1) Is there a way to configure RSS so that it alternates packets to all
> configured cores regardless of the packet data?
>
> 2)  Where is the best place to learn more about RSS and how to configure
> it? I have not found much in the DPDK documentation.
>
> Thanks for the help,
> - Mike
>

  reply	other threads:[~2013-12-04 20:47 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-04 17:53 Michael Quicquaro
2013-12-04 20:48 ` elevran [this message]
2013-12-04 21:04 ` François-Frédéric Ozog
2013-12-05  4:31   ` Prashant Upadhyaya
2013-12-05  4:54     ` Stephen Hemminger
2013-12-05  5:29       ` Prashant Upadhyaya
2013-12-05  7:44         ` Benson, Bryan
2013-12-05 14:16           ` Prashant Upadhyaya
2013-12-05 18:33             ` Benson, Bryan
2013-12-05  8:45         ` François-Frédéric Ozog
2013-12-05 14:29           ` Prashant Upadhyaya
2013-12-05 15:42             ` Michael Quicquaro
2013-12-05 16:21               ` Thomas Monjalon
2013-12-06  2:16                 ` 吴亚东
2013-12-06  4:03                   ` Prashant Upadhyaya
2013-12-06  7:53                     ` François-Frédéric Ozog

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='CAGNKSKcs=0G5qFYkRJHLoDwnrTEW6qBPo7+F_qwroMY5OCqrMw@mail.gmail.com' \
    --to=elevran@gmail.com \
    --cc=dev@dpdk.org \
    --cc=michael.quicquaro@gmail.com \
    /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).