Patrick Klos wrote:
> > [..]
> > Is lwip acting correct?
> 
> Based on your description, yes, LwIP is acting properly.  You need to 
> find out why the payload packet isn't making it to the PC?  How big is 
> the payload packet?  Can you share a file with the packets from Wireshark?
> 
> > Are there possibilities to handle this problem?
> 
> First let's figure out where the payload packet went.  Maybe you can add 
> debug output in your ethernet output routine?

No, testing retransmission works is really fine for product development :-)

Let's instead start with explaining *why* lwIP is acting properly:
TCP is a "reliable stream" protocol. All bytes have a sequence number at
transmission. Delivering the retransmitted bytes again to the application
would double them (there's no information about the sequence numbers in the
application API).

Being like that, lwIP is only saying: "it's OK, I already got those bytes"
by sending its empty ACK.

How come your PC retransmits with the same sequence number after 300ms? The
Modbus implementations I know are retransmitting the application data (i.e.
Modbus frame), not the TCP seqnos.

Simon

_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to