Follow the steps below to get the VMXNET3 stats:
Run the command "net-stats -l" in an SSH session to the ESXi host managing the VM that has the issue:
From the output of the above command, get the PortNum and SwitchName values that correlate with your VM, and substitute their values in the below command:
vsish -e get /net/portsets/<SwitchName>/ports/<PortNum>/vmxnet3/rxSummary
VMware vSphere ESXI 7.x
VMware vSphere ESXi 8.x
When multiple NetPoll worlds are able to deliver packets to the same vNIC, the wait time increases, resulting in higher latency.
In version 7.0, packets are queued initially and retried in the next attempt. This can cause contention either at the vNIC level or the queue level, which may lead to the dropping of other incoming packets. As a result, we observe an increase in the "packets receive error" counter.
Currently, there is no resolution.
Workaround:
The two workarounds below may help to resolve the issue and can be tried out, but these are just workarounds; the issue could be because of other reasons as well.
Vmxnet3RxQueueLimit - maximum number of packets to queue in the backend if unable to hold the lock.Vmxnet3RxQueueLimit is 1024 and maximum value is 4096Vmxnet3RxQueueLimit, place ESXi host into Maintenance Mode.esxcfg-advcfg -g /Net/Vmxnet3RxQueueLimit
esxcfg-advcfg -s 2048 /Net/Vmxnet3RxQueueLimit
ethernetX.pnicFeatures = "4" This setting will avoid the contention at vnic level.ethernetX.pNicFeatures = "4" , ("X" here is the number of virtual network cards to which the feature should be added)