在客户机之间定义的同一VMware ESX专用networking上运行两个Linux客户机时,VMXNET3适配器可以达到哪种性能? 我使用VMXNET3适配器在这些操作系统和E1000适配器之间进行通信,以便与外部世界交stream。
当我运行iperf TCP性能testing时,我在VMXNET3适配器上获得了3.7 Gbits / sec,在E1000适配器上获得了1.6 Gbits / sec。 我希望VMXNET3能够达到10+ Gbits / sec的范围。
OS客户端由Red Hat Enterprise Linux 6.5,64位内核2.6.32-431.el6.x86_64提供支持,由VMware vCenter Server Hypervisor 5.0.0 build 913577控制。用于基准testing的主机服务器是IBM x3950 M2服务器型号7233 -AC1,24核英特尔Zeon X7440 2.66 GHz,256 GB RAM和1GB以太网网卡。
安装在客户操作系统上的VMware工具是v8.6.10 build 913593(似乎是目前最新的)。
这是一个非常旧的版本的VMware ESXi。 新版本的performance似乎会变得更好,但是你所看到的对于这个年份来说可能是准确的。
有没有任何理由你的VMware环境尚未修补或更新 ? VMware工具通常与主机版本和修补程序绑定,因此您在2012年的ESXi安装上运行2012年代的VMware工具。 我有工具版本9.4.0 。
您可以通过利用VMware操作系统特定软件包(OSP)来独立于ESXi安装来更新这些工具。
请参阅: 如何确保VMware Tools已安装并正在运行?
在运行EL6.5的vmxnet3虚拟机之间的现代ESXi 5.5本地副本(相同的主机)上,我看到:
客户:
[root@xt ~]# iperf -t 30 -c mccartney ------------------------------------------------------------ Client connecting to mccartney_mirror, TCP port 5001 TCP window size: 23.2 KByte (default) ------------------------------------------------------------ [ 3] local 172.16.2.12 port 35543 connected with 172.16.2.159 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-30.0 sec 90.1 GBytes 25.8 Gbits/sec
服务器:
[root@McCartney ~]# iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 172.16.2.159 port 5001 connected with 172.16.2.12 port 35543 [ ID] Interval Transfer Bandwidth [ 4] 0.0-30.0 sec 90.1 GBytes 25.8 Gbits/sec
尝试更改以太网驱动程序设置。
/sbin/ethtool --offload eth0 gso off tso off sg off gro off
看到
如果使用半虚拟networking驱动程序的性能不佳,请validation主机系统上GSO和TSOfunction的设置。 半虚拟化networking驱动程序要求禁用GSO和TSO选项以获得最佳性能。“
这是关于virtio驱动程序,但我认为相同的可能适用于vmx驱动程序。
你也可以find很多关于VMWare的文章: https : //info.pleasantsolutions.com/Blog/VMware_Networking_Speed_Issue