Path: utzoo!utgpu!watserv1!watmath!att!linac!pacific.mps.ohio-state.edu!zaphod.mps.ohio-state.edu!samsung!noose.ecn.purdue.edu!mentor.cc.purdue.edu!dls From: dls@mentor.cc.purdue.edu (David L Stevens) Newsgroups: comp.protocols.tcp-ip Subject: Re: Questions on TCP shutdown and RFC-793 Message-ID: <2452@mentor.cc.purdue.edu> Date: 8 Dec 90 11:52:13 GMT References: <36540017@hpindwa.cup.hp.com> Reply-To: dls@mentor.cc.purdue.edu (David L Stevens) Organization: PUCC UNIX Group Lines: 15 If you check in the beginning of the "SEGMENT ARRIVES" section of RFC 793, it says that they assume packets have already been sequenced in proper order for the rest of it. Re: shutdown(2) in BSD implementations. It corresponds roughly to the TCP ABORT function, but not quite. In particular, as the manual page says, any buffered data pending will be dropped. It isn't really the "half close" that RFC 793 wants, and it should only be used in programs that are aborting or, because of mechanisms in the application protocol, already know that the data has been delivered. It should *not* be used for applications that have done writes and just want to mark the end of data for the peer, since any data still pending in the local send buffers is discarded and never delivered. -- +-DLS (dls@mentor.cc.purdue.edu)