On virtual machines using VMXNET3 virtual network devices and running a guest OS with Linux kernel 2.6.24 or later, use the ethtool
command to disable Large Receive Offload.
To disable Large Receive Offload using the ethtool
command:
ethtool
command to disable LRO for each VMXNET3 virtual network interface:# ethtool -K ethX lro off
# ethtool -K eth0 lro off
ethtool
command does not persist across reboots. To make the change persistent across reboots, add the ethtool
command to a startup script such as rc.local
.vmxnet
or vmxnet3
Linux driver to include disable_lro=1
./etc/modprobe.conf
file./etc/modules
or /etc/modules.conf
file used by the Linux distribution.alias eth0 vmxnet
alias eth0 vmxnet3
options
entry to disable LRO on a new line under the alias
.alias eth0 vmxnet
options vmxnet disable_lro=1
alias eth0 vmxnet3
options vmxnet3 disable_lro=1
/etc/rc.local
file and add the following two lines to the file for the VMXNET or VMXNET3 driver:rmmod vmxnet
modprobe vmxnet disable_lro=1
rmmod vmxnet3
modprobe vmxnet3 disable_lro=1
LRO can be disabled on ESXi/ESX hosts using this procedure:
Vmxnet
.Net.VmxnetSwLROSL
Net.Vmxnet3SwLRO
Net.Vmxnet3HwLRO
Net.Vmxnet2SwLRO
Net.Vmxnet2HwLRO
Using promiscuous mode in the Linux virtual machine leads to resolving the performance issue too because activating this mode leads to disabling LRO.
For more information, see Linux virtual machines using VMXNET3 driver experience network throughput degradation when connected to Traffic Shaping enabled Distributed vSwitch (2030927).