Hi,

I recently encountered a problem on my Server 2008 R2 machine which is running Server 2008 R2 with Hyper-V installed. After creating a Virtual Network, when i connected via RDP to the server the performance was unbearable and was very unusable. After a little playing about i managed to find the problem. I disabled IPv4 Checksum Offload on the Virtual Network Adapter and bingo, performance was back to normal again :)

image

  1. Palle says:

    Good Find – Thanks!

  2. Eric says:

    Worked for me too. Thanks! I was about to give up on R2, the remote desktop was practically unusable.

  3. Rudi says:

    Are you supposed to change this on the Hyper-V server or the Virtual machines you are running on the server?

  4. neil says:

    Hello Rudi. You need to change it on the Hyper-V server

  5. Ed says:

    I just had to say thank you. I had the problem for months and everywhere it said was vista or tcp fix. Your solution worked perfectly thank you again

  6. miodio says:

    does it need a reboot for it works?

  7. neil says:

    Hi Miodio. I cant remember if if it needed a reboot but i would guess no it doesnt.

  8. miodio says:

    nevermind, it works without reboot, just need to wait 1min.Thanks for this great solution

  9. Floyd says:

    it worked fine. thank you very much

  10. NicMic says:

    I had another situation: Remote Desktop to the host worked fine, but was unusable when connecting to guests OSes.
    Disabling IPv4 Checksum offload — in the guest OS — fixed it.

  11. BrianEh says:

    This is technically not a Hyper-V problem but a NIC driver problem that goes back to the NIC manufacturer – and the problem has been around since the days of NT4 as well as the first 3Com NICs that supported offloading.
    This gets discussed in the Hyper-V forums quite a bit, as the only place to set the driver behavior is in the NIC settings at the Hyper-V level – the VMs just get whatever NIC driver features are turned on at the physical NIC.

  12. Giacomo says:

    Thanks for sharing!
    It also worked on my servers. Bye

  13. nso says:

    Excellent, solved my problem, I’ve been searching for a solution for some time now and this did it! Thanks!

  14. Jay says:

    This solved my problem, but I had to do some detective work due to multiple NICs and Hyper-V Virtual Networking:
    Tip: open Network Connections and be sure to use ‘Details’ view.
    Configuration:
    2 on-board Intel NICs > Teamed NIC > Virtual LAN
    add-in Realtek RTL8169/8110 NIC > Virtual WAN

    If you look carefully at the “Name” column and “Device Name” columns, and then in Hyper-V Virtual Network Manager you should be able to figure out the chain of adapter usage (physical and virtual).

    Note that when I have multiple NICs, I rename the objects in the “Network Connection” window so I can easily differentiate between the LAN and WAN NICs.

    For me, the LAN side worked fine, but I had problems with the WAN connection (2 different servers, identical problem). Through trial and error, I needed to change the “Virtual WAN” adapter – this would be the adapter that actually has the WAN IPv4 address (as Neil describes: the virtual adpater). From some other threads, I disabled anything to do with Offload, then re-enabled all except the IPv4 Checksum Offload property – problem *finally* solved!

    This applies to the host server, but I suspect if I had a VM using the Realtek I would have to make a similar change in the VM.

  15. maarten says:

    excellent fix. this did it for me, even when setting while remotely connected. Thanx man!

  16. Marc says:

    Seemed to work when I first set this, but then pretty quickly reverted to the super sloooowness. I have checked that this setting is stil set to Disable and it is :(