home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.protocols.tcp-ip
- Path: sparky!uunet!snorkelwacker.mit.edu!vaxeline.ftp.com!cream.ftp.com!jbvb
- From: jbvb@vax.ftp.com (James B. VanBokkelen)
- Subject: Re: Detecting Dropped Sockets (Why is this hard on PC's?)
- Message-ID: <921112165655@cream.ftp.com>
- Nntp-Software: PC/TCP NNTP
- Lines: 43
- Sender: root@vaxeline.ftp.com (vaxeline.ftp.com root account)
- Nntp-Posting-Host: whipped-cream.ftp.com
- Reply-To: jbvb@ftp.com
- Organization: FTP Software, Inc., Wakefield, MA
- References: <1992Oct30.212442.119@novell.com> <49191@shamash.cdc.com>
- Distribution: na
- Date: Thu, 12 Nov 1992 16:56:55
-
- In article <49191@shamash.cdc.com> gsa@easyaspi.udev.cdc.com (gary s anderson) writes:
-
- I don't disagree with your statements, however, I was curious about
- the systems you execute on. Specifically, when a process is
- terminated, what happens to the open file descriptors? Aren't they
- typically "closed"? Doesn't TCP typically map this into a "normal
- connection close"?
-
- This is one of the places where attempts to "make network connections look
- just like files" start to get rocky. The "close on termination" happens
- because 1) close is an operation that already exists, thus it's easy,
- 2) close is most likely to preserve data and abet debugging, and 3)
- close is necessary for overall filesystem consistency. There are many
- times I've wished I could find out "file closed during program abort"
- from a directory listing, but OS designers haven't gotten that far. TCP
- can (and in my opinion, should) be more informative.
-
- ... Can you cite an RFC which gives guidelines as to when TCP should
- inject an RST on behalf of the application?
-
- As far as I know, none of the relevant RFCs attempt to say anything about
- the API to TCP (for fear of getting embroiled in OS Wars). This has
- always seemed to be a "goes without saying" issue to me, but maybe it
- will be mentioned in a future Host Requirements document.
-
- NOTE - this only works if the peer system does something meaningful
- with the receipt of the RST, and of course, the application would
- have to be in-sync with the propagation of the RST event.
-
- All "reasonable" TCPs let applications know they've been RST, since that's
- the only way to notice when the other system's crashed and rebooted.
-
- This option seems clean and straight-forward. The problem is
- I am not aware of implementations "providing and using" a
- similar capability.
-
- PC/TCP for DOS provides a "normal close" service to applications which
- exit without cleaning up all their connections. If we can detect that
- the application was aborted or ^C'ed, we generate RST segments. If
- the PC is powered off, we can't do anything.
-
- James B. VanBokkelen 2 High St., North Andover, MA 01845
- FTP Software Inc. voice: (508) 685-4000 fax: (508) 794-4488
-
-