Or, with some 3Com cards (see 3c59x vortex docs): Offload of UDP-based tunnel protocols is still supported. To disable: ethtool -offload ethX rx off tx off. Checksum offloading can be enabled and disabled with the ethtool command. In this case, you may want to check and disable checksum offload for the adapter, if possible. Can i disable UDP checksum in kernel and if yes then how? You can disable UDP checksums on a per-socket basis.
This is to detect corruption in the packet while it is in transit across the Internet. The kernel is supposed to hash the packet and compare the hash to the checksum in the UDP header. The above command will capture packets towards port number 80 and then write the output to a file called tcp-out.pcap. sudo tcpdump -vvv -s 0 -l -n port 80 -w tcp-out.pcap. If you capture network traffic on your system for few minutes, then you can see TCP/UDP checksum value in tools like wireshark.Comparing RHEL5 to RHEL6 show that tx checksumming is switched on across the 'vnet' interfaces. Description of problem: While running an Ubuntu Lucid virtual server under kvm on RHEL6, the DHCP system reports 'bad udp checksum' in response to DHCP offer packets coming from the libvirt launched dnsmasq process on the Host.And run the netcat transfer again and look at the tcpdump output this time: So now lets turn Generic Segmentation Offloading off using ethtool : $ sudo ethtool -K eth0 gso off. This is Generic Segmentation Offloading going to work: the OS is sending large segments, as captured above, and letting the NIC do the real segmentation.