Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.protocols.tcp-ip    |    TCP and IP network protocols.    |    14,669 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 13,995 of 14,669    |
|    Jorgen Grahn to Rick Jones    |
|    Re: FIN flag set in TCP header of a data    |
|    02 May 13 22:14:11    |
      From: grahn+nntp@snipabacken.se              On Tue, 2013-04-30, Rick Jones wrote:       > Indeed, a FIN bit being set on a TCP segment also carrying data means       > either:       >       > *) The application called shutdown() or close() against the socket       > before the last bytes had sufficient classic or congestion window       > to be sent to the receiver, so the FIN was piggy backed onto the       > data.       >       > or perhaps       >       > *) Some of the last bytes of data had to be retransmitted, and the       > retransmission came after a "standalone" FIN was sent.              I'd call that "implies that one of the following conditions apply"       rather than "means".              For the benefit of the OP, what data + FIN /means/ is simply the last       N octets of data followed by the normal end-of-stream marker, FIN.       FIN (and SYN, and I guess RST) can be seen as being part of the       stream; they have sequence numbers just like the data octets.              And based on what people write in this thread[1], it seems that not       only does data+FIN have a meaning, but (a) it's not disallowed for       some other reason and (b) it can happen in reality with real stacks       and applications.              /Jorgen              [1] I didn't see anyone quote chapter and verse; someone referenced        RFC 1379, but that one describes a slightly different protocol.              --        // Jorgen Grahn |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca