[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Distributed reachability information



Thinking about a good way to turn my MILAR proposal into a draft, it
occurred to me that the following should probably be something separate.

In a multi-address multihoming environment, it helps a lot to have good
reachability information for the different addresses of a remote host.
Sending traffic immediately to the "best" address has many advantages over
choosing one more or less randomly and detect failures later.

Being able to pick a working address out of a set of addresses prior to
session establishment can even be considered a very basic form of
multihoming support.

This could be accomplished by using some kind of reachability cache,
storing information about whether an address or prefix is reachable (or
even how well, using RTT, bandwidth and packet loss statistics). As the
session is initiated, the possible addresses for the remote host are
checked against the reachability cache and the "best" address is selected.
Obviously the choice is limited when just one address is available: then
the system should try to connect to this address, whatever the cached
status.

The data for the cache can come from ICMP unreachables and protocols or
even applications that gather their own statistics. Sharing this
information with other hosts and routers (as Peter Tattam and myself
discussed earlier this week) makes a lot of sense. If one host discovers
an address is unreachable, other local hosts can benefit from this and
immediately contact one of the other addresses for this destination host
if they want to connect to it shortly after that.

The question is: how do we implement this?

One way would be to create a protocol from scratch.

Another would be to abuse RIP for this. I haven't really looked in to
this, but RIP does a lot of the same things in a somewhat different
manner, so it could be a good starting point.

Then there is the most dangerous way: integrate some or all of this into
the DNS. Name servers already gather a lot of statistics that could be
useful. Also, hosts continuously query the DNS, adding reachability
information to the answers seems like a logical extension. Or the DNS
could even hold back addresses it thinks are unreachable when replying to
queries.

Tell me what you think.

It would probably help to get some input from a DNS guru. That is, if they
didn't all faint upon reading this.

Iljitsch van Beijnum