[Top][All Lists]

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

Re: [lwip-users] TCP keeps re-transmitting but no ACK packet after SYN,

From: Mohsin
Subject: Re: [lwip-users] TCP keeps re-transmitting but no ACK packet after SYN, SYN+ACK
Date: Tue, 17 Mar 2015 03:47:44 -0700 (MST)

Sergio R. Caprile wrote
> My best guesses
> 1) Are you calculating IP checksums in software and in your hardware
> (driver)? Please check
> 2) I remember there were some changes on the checksum functions, perhaps
> something in your port collides with those changes or exposes a defect
> in them.

For ethernet packets, I'm claculating checksum in hardware but for TCP and
IP, its is in software only.

> My suggestions:
> 1) Check for this
>      #define CHECKSUM_GEN_IP                 1

I checked above Macro in my opt.h and it is set to 1.

> 2 and 3) Check for these anywhere in your port and please post what you
> find
>  * #define LWIP_CHKSUM 
> <your_checksum_routine>
>  *
>  * Or you can select from the implementations below by defining
>  * LWIP_CHKSUM_ALGORITHM to 1, 2 or 3.

There is no implementation of above LWIP_CHKSUM routine in my ports. I could
find it only in "lwip/sr/core/inet_checksum.c" file of my project which is
mentioned in the file attached below:

One more think I wanted to ask about IP Checksum is that, for all those
packets transmitted from my box having IP checksum error, I analyzed those
packets in wireshark and found that there is error of only one bit for all
IP checksum. I mean for one TCP packet, wireshark gives error as follows:
"Header checksum: 0x065e [incorrect, should be 0x065d]". 
For another TCP packet, error was:
"Header checksum: 0x065c [incorrect, should be 0x065b]" 
So I think there is difference of only one bit for every checksum calculated
by my box and actual correct checksum. Hence for work around, can I decrease
1-bit at the end of every IP checksum calculation?

lwip-users mailing list

View this message in context: 
Sent from the lwip-users mailing list archive at Nabble.com.

reply via email to

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