FIN_WAIT_2

Robert Gogolok robertgogolok at web.de
Mon Mar 21 10:52:31 PST 2005


Charles Swiger wrote:
> FIN_WAIT_2 is a name describing the state of a TCP connection.  It's 
> defined in a state diagram in RFC-793.  But otherwise, your description 
> is pretty good:
> [ ... ]
>    |  CLOSE                   +---------+
>    | -------                  |  ESTAB  |
>    | snd FIN                  +---------+
>    |                   CLOSE    |     |    rcv FIN
>    V                  -------   |     |    -------
>  +---------+          snd FIN  /       \   snd ACK          +---------+
>  |  FIN    |<-----------------           ------------------>|  CLOSE  |
>  | WAIT-1  |------------------                              |   WAIT  |
>  +---------+          rcv FIN  \                            +---------+
>    | rcv ACK of FIN   -------   |                            CLOSE  |
>    | --------------   snd ACK   |                           ------- |
>    V        x                   V                           snd FIN V
>  +---------+                  +---------+                   +---------+
>  |FINWAIT-2|                  | CLOSING |                   | LAST-ACK|
>  +---------+                  +---------+                   +---------+
>    |                rcv ACK of FIN |                 rcv ACK of FIN |
>    |  rcv FIN       -------------- |    Timeout=2MSL -------------- |
>    |  -------              x       V    ------------        x       V
>     \ snd ACK                 +---------+delete TCB         +---------+
>      ------------------------>|TIME WAIT|------------------>| CLOSED  |
>                               +---------+                   +---------+
> 
>                       TCP Connection State Diagram
>                                Figure 6.
I've looked at the "Closing a Connection" chapter from the RFC and tried 
to understand it. The state diagram above shows that from the FINWAIT-2 
state there is only one possible way to reach TIME WAIT. So FreeBSD must 
be using another extension of the RFC-793, when it's sending ACK 
messages in the FINWAIT-2 state?

Wow, I'm confused at this point, I have a linux box here which was the 
previous webserver, and I can't remember seeing ACK's hitting the 
firewall logs as it is now with the FreeBSD webserver.

Greetings,
Robert!


More information about the freebsd-questions mailing list