For the last two weeks I have been playing with Hyper-V Server 2012 R2. My system is based on a Celeron 847, so I wasn't expecting stellar performance.
The mainboard has one integrated Realtek 1GB NIC.
I installed Windows 7 as a Guest and created an external virtual switch, which I connected to the onboard NIC and allowed the host to share the connection.
This lead to a very bad user experience when connecting to the guest system via remote desktop (freezes every few seconds). I searched for a solution and found a lot of recommendations to add a dedicated NIC for the guests.
The only thing I could get my hands on on a Sunday was an Apple 100MBit USB Ethenet Adapter which I sometimes use on my MacBook Air. I installed the drivers on the host and the freezes inside the guest system went away.
Because I didn't want to transfer files between the guests and the host via an external 100MBit connection, I added a second switch, set to internal. I configured both the host and the guest with static IPs on the internal switch so that I could be sure
which route the IP packets would take.
I mapped a share on the host as a network drive on the guest (using the IP address, not the host name) and transferred some large files between host and guest and noticed that I could only transfer 10MByte/s.
On a hunch, I installed a real 1GB NIC today and removed the USB Adapter. I reconfigured the external switch to use the new NIC and did some more tests. Transfer rates went up to 50MByte/s! That is the same rate I get when transferring files from an external
machine to the host, so I guess that this is the limit of what the CPU can handle, which is fine by me.
Is the internal speed of the virtual switches really limited by the slowest NIC connected to a virtual switch? Or am I missing something? I'm pretty sure that the IP packets aren't going through the external switch / adapter, because I can pull the network
cable and the transfer isn't interrupted. Besides, using Resource Monitor on the guest I can see that only the virtual NIC connected to the internal switch is registering any relevant traffic.
If anyone has any insight into this, please share. It might even help me to troubleshoot a seemingly similar problem we have at work on a 2008 R2 Server, which our Sysadmin hasn't been able to figure out.
Thanks
TomKraut