当前位置:   article > 正文

VMWare ESXi接口_esxi api

esxi api

在上个实验中,我们已经初步实现了通过DPDK纳管主机网卡。

不知道大家注意到没有,我们在查看主机网卡的主线信息时,后面的描述信息是不一样的,可以理解为是主机的网卡信息,一个是VMXNET3类型,另一个是82574L类型。

 

其实这个是和配置主机时选择的适配器类型相对应的,适配器类型选择VMXNET3,在主机上看到的就是VMXNET3;如果选择的是E1000e,显示就成了82574L了。

 

当然,还有一个SR-IOV直通,指的就是Single Root I/O Virtualization了,据说是将一个物理网卡虚拟出来多个轻量化的PCI-e物理设备,再分配给虚拟机使用。启用SR-IOV直通之后,将大大减轻宿主机的CPU负荷,提高网络性能,降低网络时延等。

但是很不幸,我的服务器网卡(型号BCM5719)不支持。

 

那E1000e和VMXNET3这两种类型有什么区别呢?

E1000e虚拟网络适配器模拟的是千兆网卡,而VMXNET3则模拟的是万兆网卡,而且VMXNET3虚拟网络适配器可以没有物理网卡对应,也就是不需要借助底层的硬件网卡,并且通过对虚拟机中的性能进行优化,使得虚拟机之间的网络交换不受底层网卡的限制。比如我的服务器,底层都是千兆电口网卡,而主机转发却可以达到万兆,就是这个原因。

所以,VMware ESXi的最佳实践是使用VMXNET3虚拟NIC,除非存在无法使用特定驱动程序或兼容性等原因,建议使用VMXNET3来替换掉E1000e,以有效提升网络性能。

所以今天的主要任务是测试一下这两种网卡的性能差距主要有多大。

测试1:VMXNET3直连

将两台主机的适配器类型都配置为VMXNET3,并连接在同一个端口组下。

 

用iperf3打流测试,带宽竟然不止万兆,达到了11.6 Gbps。

 

测试2:E1000e直连

将两台主机的适配器类型都配置为E1000e,并连接在同一个端口组下。

 

用iperf3打流测试,带宽比千兆好一些,达到了4.24 Gbps,相比VMXNET3,只有三分之一的性能。

 

测试3:E1000e和VMXNET3对接1

将一台主机142的适配器类型配置为E1000e,另一台主机141的适配器类型配置为VMXNET3,并将两台主机连接在同一个端口组下。

先用适配器类型为E1000e的主机142作为服务器,打流测试,带宽为6.12 Gbps,介于前两次测试之间。

 

再用适配器类型为VMXNET3的主机141作为服务器,打流测试,带宽为7.01 Gbps,优于使用主机使用E1000e作为服务器的场景。

 

测试4:E1000e和VMXNET3对接2

为了避免主机的影响,我将两台主机的网卡配置对调了一下,并将两台主机连接在同一个端口组下。

同样的,先用适配器类型为E1000e的主机141作为服务器,打流测试,带宽为7.01 Gbps。

 

再用适配器类型为VMXNET3的主机142作为服务器,打流测试,带宽为6.71 Gbps,比6.12 Gbps这个值稍好一点。

 

总结

通过本次的4个测试可知,VMWare ESXi通过对虚拟机的性能进行优化,使得虚拟机之间的网络交换不受底层网卡的限制。虽然E1000e模拟的是千兆网卡,但实际性能仍然不止千兆;虽然VMXNET3模拟的是万兆网卡,实际性能也可以超出万兆。两者底层都不需要对应物理网卡,这点是SR-IOV直通所不支持的。

通过组合对比,E1000e网卡的转发性能最差,只有VMXNET3网卡的三分之一,当两者组合使用时,转发性能大概能达到VMXNET3网卡的三分之二左右。

所以,最起码我们可以确认,VMware ESXi 6.7的最佳实践就是配置虚拟机的网络适配器类型为VMXNET3,相比于E1000e,能大幅提升网络性能。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/130352
推荐阅读
相关标签
  

闽ICP备14008679号