我有一台 CentOS KVM 主机,配有传统的 1Gbps NIC 用于一般网络,以及 Intel NC522SFP NIC,允许我的计算机进行 10Gbps 传输。我遇到了一个无法解决的问题,我已经为此困扰了将近一周。
当我在主机本身上为适配器设置 IP,然后执行 iperf3 测试时,我得到以下结果:
Connecting to host 192.168.11.203, port 5201
[ 4] local 192.168.11.100 port 1229 connected to 192.168.11.203 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 645 MBytes 5.41 Gbits/sec
[ 4] 1.00-2.00 sec 684 MBytes 5.74 Gbits/sec
[ 4] 2.00-3.00 sec 678 MBytes 5.69 Gbits/sec
[ 4] 3.00-4.00 sec 671 MBytes 5.63 Gbits/sec
[ 4] 4.00-5.00 sec 672 MBytes 5.64 Gbits/sec
[ 4] 5.00-6.00 sec 674 MBytes 5.65 Gbits/sec
[ 4] 6.00-7.00 sec 659 MBytes 5.53 Gbits/sec
[ 4] 7.00-8.00 sec 678 MBytes 5.69 Gbits/sec
[ 4] 8.00-9.00 sec 664 MBytes 5.57 Gbits/sec
[ 4] 9.00-10.00 sec 663 MBytes 5.56 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 6.53 GBytes 5.61 Gbits/sec sender
[ 4] 0.00-10.00 sec 6.53 GBytes 5.61 Gbits/sec receiver
这不是完全的 10Gbps,但我怀疑这是 PCIE 端口限制。我对这些结果感到满意,因为无论如何我的 P410 raid 控制器都无法输出超过这个值。
我的问题是,当我在主机上设置 CentOS VM 并简单地通过“直接连接”(virtio)传递此 NIC 时,我只能获得 1Gbps 的吞吐量。
Connecting to host 192.168.11.240, port 5201
[ 4] local 192.168.11.100 port 1138 connected to 192.168.11.240 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 128 MBytes 1.08 Gbits/sec
[ 4] 1.00-2.00 sec 128 MBytes 1.08 Gbits/sec
[ 4] 2.00-3.00 sec 129 MBytes 1.08 Gbits/sec
[ 4] 3.00-4.00 sec 128 MBytes 1.08 Gbits/sec
[ 4] 4.00-5.00 sec 130 MBytes 1.09 Gbits/sec
[ 4] 5.00-6.00 sec 126 MBytes 1.05 Gbits/sec
[ 4] 6.00-7.00 sec 125 MBytes 1.05 Gbits/sec
[ 4] 7.00-8.00 sec 128 MBytes 1.07 Gbits/sec
[ 4] 8.00-9.00 sec 126 MBytes 1.05 Gbits/sec
[ 4] 9.00-10.00 sec 124 MBytes 1.04 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 1.24 GBytes 1.07 Gbits/sec sender
[ 4] 0.00-10.00 sec 1.24 GBytes 1.07 Gbits/sec receiver
主机和虚拟机均使用 CentOS Stream 9。
有人能帮助我理解为什么虚拟机内部的性能与主机相比如此差吗?
非常感谢您的帮助。