home bbs files messages ]

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    O  o   .   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca