我使用多个英特尔网卡(Intel 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)吗? 这可能是你的瓶颈。
你的iperftesting的终点是什么? 如果您通过networking硬件进行路由或将所有输出组合到另一台机器上的单个GBe NIC,则您的瓶颈可能是远程的。
我已经在这里发布了一些sysctl魔法。 你可以尝试一下,看看是否有帮助
PS。 你如何基准速度?