Scheduling of multiple RX/TX queues on a single port
Fengkai Sun
qcloud1014 at gmail.com
Fri Jun 2 12:14:00 CEST 2023
Hi Stephen,
Thank you very much for your reply!
After using 'transmit scheduling' as the keyword, much more useful results
now show up.
For others who are also interested in how queues are scheduled, I would
recommend reading this paper (it's open access):
https://www.usenix.org/system/files/nsdi19-stephens.pdf
--
Thanks,
Fengkai
On Wed, May 31, 2023 at 12:24 AM Stephen Hemminger <
stephen at networkplumber.org> wrote:
> On Mon, 29 May 2023 23:02:45 +0800
> Fengkai Sun <qcloud1014 at gmail.com> wrote:
>
> > Hi list,
> >
> > I'm curious how DPDK programs the NIC to receive/transmit packets when
> > there are multiple queues on a single port.
> >
> > As for RX, the answer might be clear.
> > The NIC can only receive a packet once at a time, since the cable only
> > outputs one signal (0 or 1) at a time (correct me if I'm wrong).
> > Therefore the NIC can receive a packet, check it's information, and
> finally
> > put in into the right queue via some policies, e.g. RSS, all
> sequentially.
> >
> > However, it confuses me when it comes to TX.
> > As there are multiple TX queues on the same port, the NIC must decide
> which
> > queue to get packets from when it's idle.
> > This is where scheduling lies. How does the NIC select the queue?
> > Round-Robin? Does it have to enforce fairness among the queues?
> >
> > I'm wondering where I can find some documentation on this issue. Thank
> you!
>
> Transmit scheduling is up to the hardware (not DPDK).
> Generally I assume it is round-robin
> but there maybe cases like priority queues (like DCB) or large packets
> with segment offload.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mails.dpdk.org/archives/users/attachments/20230602/9d410348/attachment.htm>
More information about the users
mailing list