0

我有一个英特尔 82598EB 10GBE 网卡。

我需要在不丢失数据包的情况下接收流量。

数据速率为 4-5 Gbps,数据包大小为 1500-9600 字节。

我已经配置了 smb 和 irq 亲和力。我还尝试使用数据包套接字( PF_PACKET )。

这些都没有帮助。小损失总是存在的。

现在我计划通过禁用任何增加 sk_buff 大小的配置设置并禁用 IOMMU 来编译内核。

还有哪些其他方法可以提高 rx 性能?

4

3 回答 3

0

如果您的系统是 numa 节点设置,则 Rx 或 Tx 性能可能会下降。如果您的系统有 numa 节点,则在将 10G 卡放入 PCI_E 插槽时,检查您要放置的 CPU PCI-E 插槽,然后根据将 irq 分配给特定 CPU 内核,看看是否有帮助。

于 2014-01-04T17:55:33.633 回答
0

白天我正在更改驱动程序设置和网络子系统设置。发现只有 net.core.rmem_default 有影响(我使用的是 UDP)。

于 2013-04-21T19:05:26.170 回答
0

某些 nic 默认 rx 未默认设置为 max。可以使用 找到 rx/tx 的默认值和最大值ethtool -g <interface>,并使用 command 进行修改ethtool -G <interface> rx value

于 2020-10-16T14:57:04.823 回答