Should you enable Network health check for your Distributed Virtual Switches

Network health check is a very useful feature that was introduced with vSphere 5.1 vDS.

What does it do?

The purpose is to test if the VLANs, MTU and Load Balancing settings you defined are actually working. The old way of doing this would be to disconnect all port except one, by either doing a shutdown on the switch port, or pulling out the cable, and then testing, with a VM, if every VLAN still works. This can be a very lengthy process if you have many adapters, but also a necessary step if you want a stable environment.

If you want to know more about how it check the different settings, Joseph Griffiths did a good article on this you can read here:

So why would you ever disable this feature?

Well the health check feature generates a lot of mac table entries as explained in VMware KB 2034795.

An example given is that you have 35 Hosts with 2 Network Adapters each, and 60 VLANs. This will generate (35 * 2 * 60) 4200 mac table entries in your physical switches. And as you can see, this quickly increases. Some switches only has room for 32.000 records or less.

VMware recommends that you check that the number of mac addresses generated is less then your switches mac table size, otherwise you could get network issues. The other side to this is of course the amount of traffic it generates.

This should apply to every version of Virtual Distributed Switch that includes the Health check feature, but I have not been able to confirm it for vSphere 6.x+.


A possible workaround, to avoid the overhead traffic, could be to only enable the Health check on large environments after making changes to networking or adding hosts. But you still have to make sure that you do not saturate your switches mac table memory.

Leave a Reply

Your email address will not be published. Required fields are marked *