From: Igor Gutorov <igootorov@gmail.com>
To: "Morten Brørup" <mb@smartsharesystems.com>
Cc: dev@dpdk.org
Subject: Re: RFC - Tap io_uring PMD
Date: Wed, 6 Nov 2024 03:52:51 +0300 [thread overview]
Message-ID: <CAL7bPf050D89d6qxgdYkye1ZJd+HpOBE0DqPM8WM6quWfBx+3w@mail.gmail.com> (raw)
In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35E9F886@smartserver.smartshare.dk>
On Wed, Nov 6, 2024 at 2:54 AM Morten Brørup <mb@smartsharesystems.com> wrote:
>
> > From: Stephen Hemminger [mailto:stephen@networkplumber.org]
> > Sent: Wednesday, 6 November 2024 00.26
> >
> > On Wed, 6 Nov 2024 00:22:19 +0100
> > Morten Brørup <mb@smartsharesystems.com> wrote:
> >
> > > From what I understand, the TAP io_uring PMD only supports one RX
> > queue per port and one TX queue per port (i.e. per TAP interface). We
> > can take advantage of this:
> >
> >
> > No kernel tap support multi queue and we need to use that.
>
> Maybe I got it wrong then... I thought you said fanout (of kernel->TAP packets) would affect all fds associated with the TAP interface.
> How can the application then use multiple queues?
>
> Another thing is:
> For which purposes do applications need multi queue support for TAP, considering the interface is for management traffic only?
I've previously used net_pcap as well as net_af_packet PMDs for
debugging/testing and even benchmarking purposes. I'd set up a
software interface, then feed test traffic via `tcpreplay`.
Some of the limitations I've encountered are:
- net_af_packet does not report received/missed packet counters
- net_pcap does not have multi queue support (AFAIK)
As an example, non symmetric RSS configurations may cause 2-way TCP
packets to be steered to different queues. If your application is a
worker-per-queue application with no shared state, you might want to
have these packets to be steered to the same queue instead. Without
multi queue, you can't easily test against scenarios like that.
Though, as you've said, if TAP is for management only, perhaps I was
trying to use the wrong tool for the wrong job.
In the end, I ended up getting a real two port NIC (feeding traffic
from one port to the other) because software PMDs are not similar
enough to the actual hardware.
--
Igor
next prev parent reply other threads:[~2024-11-06 0:53 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-30 21:56 Stephen Hemminger
2024-10-31 10:27 ` Morten Brørup
2024-11-01 0:34 ` Stephen Hemminger
2024-11-02 22:28 ` Morten Brørup
2024-11-05 18:58 ` Stephen Hemminger
2024-11-05 23:22 ` Morten Brørup
2024-11-05 23:25 ` Stephen Hemminger
2024-11-05 23:54 ` Morten Brørup
2024-11-06 0:52 ` Igor Gutorov [this message]
2024-11-07 16:30 ` Stephen Hemminger
2024-11-06 10:30 ` Konstantin Ananyev
2024-11-06 0:46 ` Varghese, Vipin
2024-11-06 7:46 ` Maxime Coquelin
2024-11-07 21:51 ` Morten Brørup
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=CAL7bPf050D89d6qxgdYkye1ZJd+HpOBE0DqPM8WM6quWfBx+3w@mail.gmail.com \
--to=igootorov@gmail.com \
--cc=dev@dpdk.org \
--cc=mb@smartsharesystems.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).