I have worked on some project with Hyper-V Network Virtualization and NVGRE, and today I have seen an issue with Encapsulated Task Offloading on some HP Broadcom Network adapters.
Issue
I have Hyper-V Hosts running with 10GbE Broadcom Network Adapters (HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter) with driver version 7.8.52.0 (released in 2014). I have created a new VM Network based on Hyper-V Network Virtualization using NVGRE. VM1 is running on Host1 and VM2 is running on Host2. You can ping VM2 from VM1 but there is no other connection possible like SMB, RDP, HTTP or DNS. If you are using a NVGRE Gateway you can no even resolve DNS inside those VMs. If VM1 and VM2 are running on the same Hyper-V host everything between those VMs works fine.
If you are using Server Core, which you should by the way, you can use the following command to check for those settings:
Get-NetAdapterAdvancedProperty -Name <NICNAME>
Resolution
The Broadcom Network adapters have a feature called Encapsulated Task Offloading which is enabled by default. If you disable Encapsulated Task Offloading everything works fine. You can disable it by using the following PowerShell cmdlet.
Set-NetAdapterEncapsulatedPacketTaskOffload -EncapsulatedPacketTaskOffloadEnabled $false -Name <NICNAME>
After that connection inside the VMs started to work immediately, no reboot needed.
Tags: Broadcom, Cloud, Driver, Encapsulated Task Offload, EncapsulatedPacketTaskOffloadEnabled, HP, Hyper-V, Issue, Microsoft, Network, Network Virtualization, Networking, NVGRE, SCVMM, SDN, Software Defined Networking, System Center, System Center 2012 R2, Virtual Machine Manager, Virtualization, VMM, WAP, Windows Azure, Windows Azure Pack, Windows Server, Windows Server 2012 R2 Last modified: March 19, 2014