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 _______________________________________________ lwip-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lwip-users
