[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lwip-users] TCP Out-Of-Order/Retransmission/Connection closed issue
From: |
David Belohrad |
Subject: |
Re: [lwip-users] TCP Out-Of-Order/Retransmission/Connection closed issue |
Date: |
Mon, 28 Aug 2017 10:56:24 +0200 |
Hi Axel,
I experience the same issues(lwip1.4.1 from git). I have found that mine were
caused by improper calling of tcp_tmr. In lwipopts.h one declares a variable
(TCP_TMR_INTERVAL), which tells in what milliseconds 'distance' you call
tcp_tmr. If this constant does not reflect the real situation, you'll get lots
of disconnects and retransmissions. In my case i have set TCP_TMR_INTERVAL to
100ms, but I was calling tcp_tmr() each 200ms, this causes the algorithms in
tcp_tmr not to work correctly and causes for example retransmission, because
tcp_tmr 'thinks' that the timer for retransmission has already expired. And
then you find in captured packets weird thing like 'tcp previous segment not
captured', but if you follow the seq/ack numbers, you'll find that it was
indeed captured correctly. Another example of retransmission is of course lossy
line, but I guess this is unlikely to happen. These I can see as well in my
capture list, but they rarely finish by closing the line, and their occurence
is not as high as occurence of retransmissions caused by improper call to
tcp_tmr.
note: of course it depends on your system. I call tcp_tmr manually from my IRQ
on embedded system (NO_SYS=1). I believe if you have some sort of RTOS, it is
up to scheduler to call tcp_tmr in a correct time....
I still did not resolve my retransmission issue on 100% (last count i have is
18 connections closed because of the retransmission fail happening during last
weekend)
if you find some other reasons for this, i'd be glad to hear them as i might
encounter them as well. I use beaglebone baremetal app, no operating system....
cheers
.d.
----------------------------------------------
Dr. David Belohrad, Div. BE-BI
C.E.R.N. Site de Prevessin, F-01631 CERN CEDEX
http://www.cern.ch
address@hidden
Tel +41.22.76.76318 Fax +41.22.76.69056
GSM +41.75.411.3455
----------------------------------------------
Axel Lin <address@hidden> writes:
> Hi,
> I'm using lwIP git tree (47f55b02bf9f889eb38379a68de9d765c163b89a).
> Sometimes I found the connection will be reset, and I found a couple
> of TCP Out-Of-Order/Retransmission before connection reset.
>
> Many dup-ack e.g. No110, 112, 190, 191, 330,...
>
> Below is the log can be opened by wireshark.
> https://www.dropbox.com/s/55cnyapc0l7oy6p/sim-pppos.pcapng?dl=0
>
> Is there anything wrong in the log? (lwip+pppos)
>
> Thanks.
>
> _______________________________________________
> lwip-users mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/lwip-users