2.2.17 Stuck TCP ESTABLISHED sessions

From: Philippe Troin (phil@fifi.org)
Date: Fri Sep 22 2000 - 15:50:47 EST


I've seen that in the past, but never had time to investigate. For
some reasons, TCP sessions get stuck.

Here'an example with a ssh session:

  1) Netstat says on tantale (note the non-zero Send-Q):
      tcp 0 38364 tantale:ssh neptune:1022 ESTABLISHED

     Netstat says on neptune:
      tcp 0 0 neptune:1022 tantale:22 ESTABLISHED

  2) At this point the session is stuck in the tantale->neptune
     direction although the other direction is still active.

  3) Here's what tcpdump says when I send data (type in one character
     at the ssh session):

      neptune.1022 > tantale.ssh: P 560:580(20) ack 1 win 32120
           <nop,nop,timestamp 298659790 51387478> (DF) [tos 0x10]
      tantale.ssh > neptune.1022: . ack 580 win 32120
           <nop,nop,timestamp 51434902 298659790> (DF) [tos 0x10]

Both tantale and neptune are configured as firewalls. Both tantale and
neptune are configured to always defragment.
Neptune also does masquerading, but in that particular case the
session is not masqueraded (since started on neptune).

I fail to understand why tantale does not send back what's in its
outgoing queue since neptune reports an open window of 32120 bytes.

Or am I missing something ?

Phil.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 21:00:27 EST