VHOST使用驱动程序是否确保多个RX队列之间的流量分布?

发布于 2025-02-06 06:30:06 字数 439 浏览 1 评论 0原文

我有一个问题要问你。我知道可以使用许多RX/TX队列配置Vhost-user NIC,但是VHOST驱动器驱动程序是否可以确保RX队列之间的流量分布?

我使用示例应用程序L3FDW在两个vhost user nics之间切换流量,每个vhost user nics都有4个队列。使用Trex(和TestPMD)生成流量,在VM内运行。当我追踪实验时,我注意到流量仅在队列“ 0”中收到,而其他RX队列是空的。

L3FDW应用告诉我,“端口0基于硬件支持的修改RSS哈希功能,请求:0xa38c配置:0”。对于卸载功能,TestPMD表示VHOST-USER NIC仅支持VLAN Strip(而不是RSS)!

感谢对此事的任何澄清。

谢谢,

PS:

  • DPDK版本:19.08
  • QEMU版本:4.2.1

Adele

I have a question for you. I know that vhost-user NICs can be configured with many RX/TX queues, but does the vhost-user driver ensures the distribution of traffic between RX queues?

I used the sample application l3fdw to switch traffic between two vhost-user NICs, each with 4 queues. The traffic was generated using TREX (and testpmd also), running inside a VM. When I traced my experiment, I noticed that the traffic was only received in queue "0", while the other RX queues were empty.

The l3fdw app tells me that "Port 0 modified RSS hash function based on hardware support,requested:0xa38c configured:0". For offloading capabilities, testpmd indicates that the vhost-user nic NIC has only support for VLAN STRIP (and not for RSS)!

I appreciate any clarification on this matter.

Thank you,

PS:

  • DPDK version: 19.08
  • Qemu version: 4.2.1

Adele

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撩心不撩汉 2025-02-13 06:30:06

原始问题的答案vhost-user驱动程序是否确保RX队列之间的流量分布?

没有来自DPDK库的RSS或RTE_FLOW的机制,可以确保在Vhost NIC的RX队列上的软件数据包分发。

@adelbelkhiri有多个方面需要澄清以更好地理解这一点。

  1. vhost pmd 在文件rte_eth_vhost.c /code> does not advertise RSS or RTE_FLOW capability

there is an

因此,在您的情况下,如果您拥有2个NIC端口的2个VM,则每个队列4个队列,请尝试在OVS上的8个PMD线程与队列之间同时使用FWD数据包。 Trex(TX)VM将确保将适当的数据包分开地放入每个队列中。

但是简单的答案是没有RSS或RTE_FLOW逻辑来分发流量

Answer for the original question does the vhost-user driver ensures the distribution of traffic between RX queues? is

There is no mechanism like RSS or RTE_FLOW from DPDK Libraries which will ensure software packet distribution on the RX queues of VHOST NIC.

@AdelBelkhiri there are multiple aspects to be clarified to understand this better.

  1. Features supported by VHOST PMD do not advertise either RTE_FLOW or RSS.
  2. Driver code for vhost pmd in file rte_eth_vhost.c does not advertise RSS or RTE_FLOW capability

there is an article which describes the use of OVS and Multiple queues. The RSS is configured on the Physical NIC with 2 RX queues. The RSS is done on the Physical NIC, 2 separate threads picks the packets from the Physical RX queue and puts the same in VHOST queues. Thus achieving pass-through RSS.

hence in your case where you have 2 VM with 2 NIC ports each having 4 queues, please try 8 PMD threads on OVS to concurrently fwd packets between queues. Where the TREX (TX) VM will ensure to put appropriate packets into each queue seperately.

But the simple answer is there is no RSS or RTE_FLOW logic to distribute traffic

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文