I am trying to troubleshoot a performance issue with our application on a customer network. We do not support the network infrastructure, and the people that do have effectively washed their hands of the problem.
On examining the System log on the Windows Server 2008 R2 host I see that there are thousands of event id 28 logged for VMSMP - these are MAC address collision warnings. When I say multiple, I mean 40 or 50 per second.
So - this is obviously not good, but is it bad enough to adversely affect network performance?
Yes. This would definitely have negative effects on network performance. Switches use MAC addresses to learn which switch port to send traffic to. If the switch doesn't know what port to send traffic out on, it will send the frames out to all ports, causing a flooding situation. You'd likely also experience intermittent connectivity on the hosts with duplicate MACs, as the switch sends some traffic to one host, and some traffic to the other.
You really have to fix this. You don't want duplicate MAC addresses in the same collision domain.
Edit: VMSMP Event ID 28 appears to not be about MAC address collisions actually happening on the network though, but rather Hyper-V preventing the traffic from occurring in the first place because of a duplicate MAC address in the configuration.
I don't know if you're using NIC teaming on your Hyper-V hosts, and dynamic MACs for your VMs, but consider sorting things out by assigning static MACs that don't conflict.
http://blogs.technet.com/b/jhoward/archive/2008/07/15/hyper-v-mac-address-allocation-and-apparent-network-issues-mac-collisions-can-cause.aspx