This article addresses issues where VMware ESXi running on Cisco UCS servers experiences receive (RX) packet drops on physical vmnic adapters. These drops can often lead to Windows Failover Cluster heartbeat failures and service disruptions.
esxcli network nic stats get -n vmnicX command shows high counts for Receive packets dropped.(hostd.log) contain warnings similar to:Wa(164) Hostd[2099472]: --> droppedRx: 1712724rx_no_bufs incrementing: vsish -e get /net/pNics/vmnicX/stats | grep rx_no_bufs rx_no_bufsThe rx_no_bufs statistic increments when the physical network interface (vmnic) exhausts its available receive ring buffers. This condition occurs when incoming packet bursts arrive faster than the ESXi kernel and network driver can process and dequeue them, leading to active packet drops at the ingress layer. The Windows Failover Clusters's use UDP for heartbeats, which lacks a retry mechanism, therefore, these drops lead to immediate cluster failovers.
The ESXi host needs to be rebooted for these changes to take effect after updating the Cisco configuration. After increasing the Rx queues in the Cisco UCS Manager, the following command can be run to validate whether the values are reflected on the ESXi host.