lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] Timeout in LAST-ACK state


From: Mitani Hiroshi
Subject: Re: [lwip-users] Timeout in LAST-ACK state
Date: Tue, 20 Dec 2005 10:07:45 +0900
User-agent: Mozilla Thunderbird 1.0.7 (Windows/20050923)

Hi Leon,

I observed lwip stalling at passive-close. TCP state was LAST-ACK.
Maybe ack-packet was lost. It is not so often, but possible.
I want lwip to close connection after 2MSL timer expired.

Here is a patch(just cut&paste from other timeouts).

*** tcp.c.orig  Tue Dec 20 09:40:52 2005
--- tcp.c       Tue Dec 20 09:43:55 2005
***************
*** 561,566 ****
--- 561,573 ----
        }
      }

+     /* Check if this PCB has stayed too long in LAST-ACK */
+     if (pcb->state == LAST_ACK) {
+       if ((u32_t)(tcp_ticks - pcb->tmr) > 2 * TCP_MSL / TCP_SLOW_INTERVAL) {
+         ++pcb_remove;
+         LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: removing pcb stuck in 
LAST-ACK\n"));
+       }
+     }

      /* If the PCB should be removed, do it. */
      if (pcb_remove) {

Is this meaningless?

Leon Woestenberg wrote:
> Hello Mitrani Hiroshi,
> 
> Mitani Hiroshi wrote:
> 
>>Hi,
>>
>>In 1.1.0, the lwip waits ack forever in LAST-ACK state.
>>Isn't 2-MSL timer necessary to move to CLOSE state?
>>  
>>
> Please explain more thoroughly what is the problem and what is the fix?
> (Sorry, my knowledge of TCP is not in-detail).
> 
> Regards,
> 
> Leon.
> 
> 
> _______________________________________________
> lwip-users mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/lwip-users






reply via email to

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