Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!cbatt!ucbvax!CCV.BBN.COM!brescia From: brescia@CCV.BBN.COM.UUCP Newsgroups: mod.protocols.tcp-ip Subject: Re: UDP vs. ICMP dest unreachable messages Message-ID: <8702111436.AA06857@ucbvax.Berkeley.EDU> Date: Wed, 11-Feb-87 09:22:20 EST Article-I.D.: ucbvax.8702111436.AA06857 Posted: Wed Feb 11 09:22:20 1987 Date-Received: Thu, 12-Feb-87 06:38:45 EST References: <8702110804.AA27296@topaz.rutgers.edu> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 28 Approved: tcp-ip@sri-nic.arpa > (you can ignore an 'unreachable' because it may indicate a transient > routing problem) [paraphrased - mb] You really need to be advocating to look at the subcodes returned by ICMP destiination unreachable, because you can usually trust the 'host dead' type returned from some gateways when trying to talk to hosts on arpanets. Yes, you would do well to ignore ICMP net unreachable if you suspect routing flurries (often the case nowadays). With UDP domain lookups however, could you not use that as an indication to try another address, even if you keep retransmitting to the original one? You need not worry about "bothering" too many servers in this case, because the 'unreachable' is a response which tells you that you did not reach that server. Also, you should be explicit in your reasoning about the 'port unreachable' subcode. Do you mean to try again because the server too busy and did not get another server listen up again, or give up because there is not now nor will there ever be a server at that host (because the service host changed). I think you should use the broadcast approach for connection setup, since you supposedly don't care which of the equivalent servers you reach. If, for example, you try to contact one from the set { A, B, C }, and you get an unreachable from A, try B next, and only forget A if the reply code was 'host dead'. Of course, your implementation on the arpanet (AHIP) interface does recognize arpanet host-dead messages, doesn't it? mike