TCP Checksum errorsWhen analysing packet traces from ZXTMs with a program such as Ethereal, you may occasionally see outbound packets that have been flagged as having incorrect TCP checksums, although the IP checksum will be correct. One possible reason for this is if your network cards are capable of performing TCP Checksum Offload. Broadcom and Intel gigabit cards are among those that can offload TCP checksum calculation. Linux enabled TCP Checksum Offload automatically when it is available. With TCP Checksum Offload, the packets are captured before the card calculates the checksum -- so the checksums may not be correct. The checksum actually transmitted on the wire and received by the destination host will be correct. On Linux, it is possible to disable TCP checksum offload with the following command:
Taking another trace after running this command should give you packets where all the checksums are correct. Offload can be re-enabled with this command:
Martin
[Zeus Consultancy] 26 May 2006
|
Recent Articles
Other Resources
|


