home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!usc!sdd.hp.com!think.com!barmar
- From: barmar@think.com (Barry Margolin)
- Newsgroups: comp.unix.programmer
- Subject: Re: Socket breaking in mid transmission.
- Date: 13 Aug 1992 09:47:29 GMT
- Organization: Thinking Machines Corporation, Cambridge MA, USA
- Lines: 29
- Message-ID: <16db3hINNn2e@early-bird.think.com>
- References: <749@jahangir.UUCP>
- NNTP-Posting-Host: gandalf.think.com
- Keywords: TCP/IP sockets
-
- In article <749@jahangir.UUCP> wayne@jahangir.UUCP (wayne) writes:
- > The problem being... The mac tends to crash in the
- >middle of a transmission. When this happens the sun
- >takes a *long* time to recognize that the connection is
- >broken. I suspect it's the mac's fault. Not closing it's
- >device drivers when it goes south.
-
- If the Mac has crashed, then it has no opportunity to close device drivers,
- since it just stops dead in its tracks.
-
- If the Sun is transmitting when this happens, it will eventually time out
- waiting for an acknowledgement. However, this takes a long time, because
- TCP connections are supposed to be resilient to temporary network problems
- (for instance, if a router goes down, it can sometimes take a couple of
- minutes for routing tables to stabilize with an alternate route). There's
- no way to tell whether the ack timed out because the destination is dead or
- the network is disconnected, so it must make a conservative assumption.
-
- If the Mac was transmitting when it crashed, then it's even harder to
- detect it, since there's no way to know why it isn't transmitting (unless
- your application is designed so that you can expect the Mac to send
- something periodically). You could try turning SO_KEEPALIVE on, though;
- this causes the Sun to send an empty packet periodically, which should
- elicity an ack if the Mac is still up.
- --
- Barry Margolin
- System Manager, Thinking Machines Corp.
-
- barmar@think.com {uunet,harvard}!think!barmar
-