locked
Checksum offload capabilities for IPv4 header and UDP in Windows XP RRS feed

  • Question

  • Hi,

    I have a query on Windows XP's offloading capabilities for UDP and IPv4 header checksum.

    I'm intimating NDIS that I support checksum offload for TCP/UDP/IPv4 header in the query OID,OID_TCP_TASK_OFFLOAD.In the TCP traffic scenario,the NDIS is sending the TCP traffic without calculating the checksum,which is offloaded to NIC's hardware,which is expected.

    But with UDP and IPv4 traffic the NDIS is not offloading the checksum calculation to miniport.In the MiniportSetInformation,in OID_TCP_TASK_OFFLOAD the bits for UDP checksum are not been set,whereas for IPv4 the bits are set but the NDIS is not offloading still.

    Do I need to change any registry parameters under HKLM\SYSTEM\CurrentControlSet\Services\Tcpip to get the UDP as well as IPv4 header checksum offloads?

    One more query is, does NDIS offloads the ICMP checksum even? If yes,how do I need to set it?

    Please have a look at the below thread ,to have the further details.

    http://social.technet.microsoft.com/Forums/en-US/w7itpronetworking/thread/d19277b8-3e7a-4b9d-bc66-2c5d31564bb5

    Any sort of help would be great.

    Thanks.



    • Edited by devSree Tuesday, March 13, 2012 6:53 AM
    Monday, March 12, 2012 9:49 AM

Answers

  • The TCPIP implementation in Windows XP SP3 does not use UDP checksum offload.  A third-party protocol might theoretically request UDP checksum offload, but nothing built into the OS will enable it.  There is no "secret registry key" to enable it, because it simply isn't implemented.

    Later versions of Windows do use UDP checksum offload, of course.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:38 AM
    Wednesday, March 14, 2012 8:04 AM
  • No - the implementation of TCPIP in Windows XP SP3 can use IPv4 header checksum offload (send and receive), TCPv4 header checksum offload (send and receive), TCP large send offload (LSO), and a whole pile of IPsec offloads.  The only task offload that NDIS supports but TCPIP doesn't use is UDPv4 checksum offload (send and receive).
    • Marked as answer by devSree Wednesday, March 21, 2012 9:38 AM
    Wednesday, March 14, 2012 6:33 PM
  • Quite honestly, I'm not sure what all the conditions are for TCPIP to enable IP header checksum offloads in Windows XP.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:37 AM
    Friday, March 16, 2012 7:59 PM
  • You are right.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:37 AM
    Wednesday, March 21, 2012 9:21 AM

All replies

  • The TCPIP implementation in Windows XP SP3 does not use UDP checksum offload.  A third-party protocol might theoretically request UDP checksum offload, but nothing built into the OS will enable it.  There is no "secret registry key" to enable it, because it simply isn't implemented.

    Later versions of Windows do use UDP checksum offload, of course.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:38 AM
    Wednesday, March 14, 2012 8:04 AM
  • Thank you for the response,Jeffrey.

    May I assume the same is true with IPv4 header checksum offload?

    Wednesday, March 14, 2012 11:10 AM
  • No - the implementation of TCPIP in Windows XP SP3 can use IPv4 header checksum offload (send and receive), TCPv4 header checksum offload (send and receive), TCP large send offload (LSO), and a whole pile of IPsec offloads.  The only task offload that NDIS supports but TCPIP doesn't use is UDPv4 checksum offload (send and receive).
    • Marked as answer by devSree Wednesday, March 21, 2012 9:38 AM
    Wednesday, March 14, 2012 6:33 PM
  • What else factors drive TCPIP to offload the IPV4 header checksum to NIC?

    I have an Intel NIC,even with it, the IPv4 header checksum is not being offloaded,all I can see is only the TCP checksum offload in Windows XP.


    Thursday, March 15, 2012 7:03 AM
  • Quite honestly, I'm not sure what all the conditions are for TCPIP to enable IP header checksum offloads in Windows XP.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:37 AM
    Friday, March 16, 2012 7:59 PM
  • Thank you,Jeffrey.

    I appreciate your valuable time.

    Monday, March 19, 2012 9:56 AM
  • There is one more thing...

    Windows XP does n't support IPv6 checksum offload for the IP,TCP and UDP.Am I right?



    • Edited by devSree Wednesday, March 21, 2012 9:18 AM
    Wednesday, March 21, 2012 9:17 AM
  • You are right.

    • Marked as answer by devSree Wednesday, March 21, 2012 9:37 AM
    Wednesday, March 21, 2012 9:21 AM