Saturday 15 August 2009

Very slow network performance - Windows 2008 R2 and Hyper-V

Last night I had the opportunity to set up a server with Windows 2008 R2 (RTM) from MSDN and a Windows 7 client (RTM, from MSDN). On the server, one goal was to install Hyper-V.

The server has two NICs and both were connected to the LAN. IPs were .20 and .21.

When I installed Hyper-V I opted to have the .21 NIC used as a "Virtual Network" for Hyper-V.

All went well, except performance copying large files across the LAN from Win 7 to 2008 (and reverse) was dire - 30 KB/s on a gigabit LAN! This was whilst copying to a drive mapped to the .20 address, e.g. the the one not associated with Hyper-V.

After several hours of tinkering with tcp autotuning, remote differential compression etc, I tried one last thing - disable the NIC associated with the Virtual Network. Voila! Perforfance is now up to 80MB/s sustained and the VMs running in Hyper-V still have full network access.

So, what was happening there then? I choose to copy to a NIC that's NOT associated with Hyer-V and performance is slow. I then disable the NIC that IS associated with Hyper-V and performance shoots up whilst still allowing network access to the Hyper-V VMs.

Hmmm.....bleeding-edge software? You bet!

And the reason for this post? Twofold: 1) help others if they hit the same problem, and 2) help me, when I reinstall the server in 12 months and forget what the solution was....