Views:

Summary



Bad backup performance could be caused by poor handling of LRO packets by the VMXNET x NIC drivers.

Symptoms



Poor performance of agent based backup jobs of Linux VMs with VMXNET x network interface cards.



Resolution



The following is an excerpt from a VMWARE Knowledge Base article explaining the problem and the suggested resolution. For full details please see the VMWare KB article (the link is provided below).

Large Receive Offload (LRO) functionality is enabled by default on VMXNET2 (Enhanced) and VMXNET3 devices. In some scenarios, Linux TCP/IP stack has a low performance when handling LRO-generated packets. As a result, having Large Receive Offload enabled for these devices in a virtual machine running a Linux guest operating system can cause poor TCP performance.

Disabling LRO in the Guest Operating System

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:

1. Run the ethtool command to disable LRO for each VMXNET3 virtual network interface:

# ethtool -K ethX lro off

For example:

# ethtool -K eth0 lro off

Note: The configuration change made with the 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.

For virtual machines running an earlier version of the Linux kernel or using VMXNET2 devices, disable Large Receive Offload by setting the module load time parameter for the vmxnet or vmxnet3 Linux driver to include disable_lro=1.

 

Comments (0)