KVM 总吞吐量限制为 1Gb – Virtio 队列限制因素?

KVM 总吞吐量限制为 1Gb – Virtio 队列限制因素?

我有一台带有三个 NIC 的 KVM 主机,无法使客户机(在同一子网中)之间的流量超过 1gbps 的总量。这是设计使然吗?这是实现 >1gbps 以使用多队列支持的唯一方法吗?

到目前为止,我已经尝试了所有bonding/macvtap/VLANs的组合(bond0->bond0.11/bond0.12->macvtap1/macvtap2->(VLAN11中的两台主机)/(VLAN12中的两台主机)。Macvtap处于桥接模式。

然后,我尝试在普通的 eth0-2 接口上创建 VLAN,并向这些 VLAN 设备添加网桥,但吞吐量没有差异。

我正在进行测试:

网络 10.10.10.0/24 中的主机 1 和 2

host1 > dd if=/dev/zero | ssh host2 “dd of=/dev/null”

上述代码本身就占用了 1GB

然后,在网络 10.10.11.0/24 中的主机 3 和 4 上

主机 3 > dd if=/dev/zero | ssh host4 "dd of=/dev/null"

每个吞吐量下降到 500mbps,总共 1gbps。

我唯一还没有尝试过的是使用直通模式的 macvtap 来强制交换机处理它。

有没有想过实现我可用的全部 3gbps 链接?更好的是,有没有办法用“假”接口超越我的聚合链接的容量?

答案1

您的 SSH 传输将受到 CPU 限制,并受到单线程加密的限制。请使用 iperf 或 netperf 或其他专为测试网络带宽而设计的工具。

相关内容