lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] Re-Transmission from PC is ignored due to sequence numb


From: Daniel L
Subject: Re: [lwip-users] Re-Transmission from PC is ignored due to sequence number
Date: Wed, 25 Apr 2018 00:14:49 -0700 (MST)

We still have the issues that some ethernet frames are getting lost.
However, this may be a hardware issue and we are investigating on this
(check MII with scope...).

This behaviour is bad, but we are now able to work around this.
lwip is now performing retransmission. This way, the PC finally gets its
response.
In our previous software, we didn't call tcp_tmr(), thus, lwip was not able
to perform timeout detection and send retransmissions.


> lwIP should retransmit the lost packet after a time between some 100ms 
> and some sconds. The capture is clearly not long enough. However, If the 
> packet that gets retransmitted got lost before, it could be a bug that 
> makes it get lost again... 

Now we have stable communication.
Everytime an ethernet frame is lost, lwip performs a retransmission.
However, the overall behaviour still looks weird.
Wireshark now reports "Spurious Retransmissions" because lwip retransmittes
a frame which was correctly acknowledged by PC.
Attached file shows the behaviour.

Our setup is now:
NO_SYS = 1
TCP_TMR_INTERVAL = 10  (I don't get the idea of this define...)
sys_check_timeouts() is called every 10ms (according to google search,
sys_check_timeouts() should be called instead of tcp_tmr(), right?)

Overall our behaviour looks good. But now we want to get rid of the
"Spurious retransmissions".
Is there something wrong with our timer setup?
Spurious_Retransmission.pcapng
<http://lwip.100.n7.nabble.com/file/t2047/Spurious_Retransmission.pcapng>  


>> Otherwise... We' found a bug in lwIP or in your driver/hardware. 
> 
> I'll vote for the driver. At least if it's a hardware vendor driver ;-) 

We have our own ethernet hardware driver, and for what we know everything
seems fine.
We get a Tx complete interrupt and no controller register shows any error
bits set.
I guess this is more a hardware issue, this is why we are now investingating
the MII interface (we have an external PHY) and the ethernet with scope.




--
Sent from: http://lwip.100.n7.nabble.com/lwip-users-f3.html



reply via email to

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