Não será o motorista.
É mais provável que seja um componente compartilhado fisicamente, como interrupções ou o barramento PCI.
Estou usando o driver e1000e para várias placas de rede Intel (Intel EXPI9402PT, com base no chip 82571EB). O problema é que quando eu estou tentando utilizar a velocidade máxima (1GB) em mais de uma interface, a velocidade em cada interface começa a cair.
Para uma interface eu recebo: 120435948 bytes / seg.
Para duas interfaces eu recebo: 61080233 bytes / seg e 60515294 bytes / seg.
Por três interfaces eu recebo: 28564020 bytes / seg, 27111184 bytes / seg, 27118907 bytes / seg.
Qual pode ser a causa?
EDIT: / proc / interrompe o conteúdo:
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
Não será o motorista.
É mais provável que seja um componente compartilhado fisicamente, como interrupções ou o barramento PCI.
Eles estão compartilhando a mesma interrupção (IRQ)? Este é provavelmente o seu gargalo.
Qual é o endpoint do seu teste de iperf? Se você estiver roteando através de hardware de rede ou combinando toda a saída para uma única placa de rede GBe em outra máquina, seu gargalo pode ser remoto.
Eu postei algumas mágicas sysctl aqui . Você pode tentar, ver se ajuda
PS. Como você avalia a velocidade?
Tags networking drivers intel ethernet linux