lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] TCP/UDP checksum offload in hardware


From: Sakhuja, Nitin
Subject: [lwip-users] TCP/UDP checksum offload in hardware
Date: Tue, 29 Mar 2022 16:44:51 +0000

Hello All,

 

From my understanding, lwIP supports an all-or-none approach for checksum generation in software vs hardware i.e. either the complete TCP/UDP checksum is generated in software or it is fully offloaded to hardware.

 

However there are platforms that support partial checksum offload where-in software is required to first generate the IP pseudo-header checksum. The packet with this partial checksum is sent to hardware which then checksums the rest of the L4 payload.

 

This may require the following support to be added in lwIP:

 

  1. Ability to generate only IP pseudo header checksum and populate it in the TCP/UDP header.
  2. Provide metadata in pbuf to assist the hardware in computing the partial checksum. This includes mainly byte start position and number of bytes to checksum. Some new fields will be needed in the pbuf structure to pass this information down to the Ethernet driver. The alternative to propagating this info in pbuf would be to extract it in the driver from the pbuf payload which seems inefficient for every single packet.   

 

Is the above understanding correct and has anyone explored the option of partial checksum generation?

 

Best regards

-Nitin


reply via email to

[Prev in Thread] Current Thread [Next in Thread]