Scheduling of multiple RX/TX queues on a single port

Fengkai Sun qcloud1014 at gmail.com
Mon May 29 17:02:45 CEST 2023


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!


Best Regards,
Fengkai
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mails.dpdk.org/archives/users/attachments/20230529/aaadcdb4/attachment.htm>


More information about the users mailing list