[En-Nut-Discussion] Checksum problem
NGB
ngbmoreau at yahoo.com.au
Thu Mar 13 12:15:31 CET 2003
If it can help here is the packet:
Flags: 0x00
Status: 0x00
Packet Length:95
Timestamp: 20:10:17.675333 03/13/2003
Ethernet Header
Destination: FF:FF:FF:FF:FF:FF Ethernet Broadcast
Source: 10:20:30:40:50:60
Protocol Type:0x0800 IP
IP Header - Internet Protocol Datagram
Version: 4
Header Length: 5 (20 bytes)
Type of Service: %00000000
Precedence: Routine, Normal Delay, Normal Throughput, Normal Reliability
Total Length: 77
Identifier: 469
Fragmentation Flags: %000 May Fragment Last Fragment
Fragment Offset: 0 (0 bytes)
Time To Live: 64
Protocol: 17 UDP
Header Checksum: 0x64AE
Source IP Address: 10.10.10.20
Dest. IP Address: 255.255.255.255 IP Broadcast
No IP Options
UDP - User Datagram Protocol
Source Port: 3333
Destination Port: 3333
Length: 57
Checksum: 0x4843 Checksum invalid. Should be: 0x3425
UDP Data Area:
ESWD.. 0 at P`..... 45 53 57 44 01 10 20 30 40 50 60 09 00 00 00 00
@............... 40 FE FF FF FF FF FE FF FE FF 00 00 00 00 00 00
................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
. 00
Frame Check Sequence: 0x00000000
> There had been a problem with the original Liquorice checksum
> calculation using inline assembly. I assumed some kind of
> overflow, if too many bits in the data were set. I switched
> to the C version, which had been prepared during ICCAVR porting
> and the problem disappeared.
>
> What's mysterious: The problem never seem to appear in TCP,
> even after gigabytes of transfers.
>
> Harald
Quoting Harald Kipp <harald.kipp at egnite.de>:
-------------------------------------------------
More information about the En-Nut-Discussion
mailing list