我正在为多个英特尔网卡(英特尔 EXPI9402PT,基于 82571EB 芯片)使用驱动程序 e1000e。问题是当我尝试在多个接口上使用最大速度(1GB)时,每个接口的速度开始下降。
对于一个接口,我得到:120435948 字节/秒。
对于两个接口,我得到:61080233 字节/秒和 60515294 字节/秒。
对于三个接口,我得到:28564020 字节/秒、27111184 字节/秒、27118907 字节/秒。
可能是什么原因?
编辑:/proc/interrupts 内容:
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
106: 17138 0 0 0 0 0 0 0 PCI-MSI eth0
114: 51 0 0 0 102193 0 20 23745467 PCI-MSI eth2
122: 51 290 15 271 0 9253 100 0 PCI-MSI eth3
130: 43 367 0 290 105 39 15 0 PCI-MSI eth4
138: 43 361 105 210 0 140 0 0 PCI-MSI eth5
146: 56 67625 100 0 0 17855245 0 0 PCI-MSI eth6
不会是司机
它很可能是物理上共享的组件,例如中断或 PCI 总线。
他们是否共享相同的中断(IRQ)?这可能是你的瓶颈。
您的 iperf 测试的终点是什么?如果您通过网络硬件路由或将所有输出组合到另一台机器上的单个 GBe NIC,那么您的瓶颈可能是远程的。
我在这里发布了一些 sysctl 魔法。你可以试试看有没有帮助
PS。你如何标杆速度?