lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] Slow release time of closed TCP PCBs


From: Kieran Mansley
Subject: Re: [lwip-users] Slow release time of closed TCP PCBs
Date: Thu, 18 Jun 2009 10:29:25 +0100

On Thu, 2009-06-18 at 11:00 +0200, Lou Cypher wrote:
> > What you are seeing is that the PCBs are remaining in a wait-state for
> > some time. This is to prevent packets from the old (closed) connection
> > being possibly accept on a new connection. The port stays known to the
> > stack and it can send RST packets when new packets for that port are
> > received. However, while these PCBs are not yet freed, they are *not* in
> > an active state any more, thus tcp_slowtmr is correct.
> 
> Everything is clear, does make sense to me.
> How long can be "some time"? :)

2 * TCP_MSL

See tcp_slowtmr() where it handles the "TIME-WAIT" pcbs

For the default TCP_MSL, that would be 2 minutes.


> > I guess you'll have to set MEMP_NUM_TCP_PCB higher so that the timeout
> > does not keep all PCBs open...
> 
> Well, provided I can't lower that time above, looks like the only way out 
> (...)

You can lower the time (in that it is configurable) but I would
recommend reading up on the TCP TIME WAIT state and understand what is
for before you do so.  It may be that in the environment your code
operates the 2 minutes is too conservative, but only you can judge that.

Kieran





reply via email to

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