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

Re: multihoming issues via SCTP



On Mon, 10 Sep 2001, Coene Lode wrote:

> This document describes issues of the Stream Control Transmission
> Protocol (SCTP)[RFC2960] in regard to multihoming on the Internet. It
> explores cases where through situations in the internet, single
> points-of-failure can occur even when using multihoming and what the
> impact is of multihoming on the host routing tables.

The main problem is the idea of paths from an interface on one host to an
interface on another host. This could work if the hosts are both connected
to two networks that are not interconnected, but not on anything
resembling the Internet.

For instance, consider host A having interface 1 connected to ISP X and
interface 2 to ISP Y. By coincidence host B it is communicating with, is
connected to the same ISPs, but the other way around: interface 1 to Y and
interface 2 to X. So now host A tries to connect to host B over interface
1, ISP X, ISP Y and interface 1 of host B (A1->X->Y-B1) and also
A2->Y->X->B2. This should work just fine, although two ISPs instead of one
in each path may not give the best possible performance.

But now there are three ways in which the connection can fail: either of
the ISPs may fail, or the connection between them.

This means there have to be more paths:

A1->X->Y->B1
A1->X->B2
A2->Y->B1
A2->Y->X->B2

However, this assumes both that the output interface stays the same over
the life time of a connection and that the end host is the one making the
decision how packets are routed to the outside. Both are unlikely. If an
output interface fails, hosts may simply reroute outgoing packets over the
other interface. And in most cases, routers will reroute packets over
another path if a connection to an ISP fails. So the other side will often
still see incoming traffic from a remote address that is no longer
reachable for outgoing packets.

Also, I don't like the idea of a protocol sending keepalives over a path
it is otherwise not using. This is a waste of resources and can trigger
inefficient use of different kinds of caches. Also, it won't do much good
unless there are three or more paths of which at least two fail, a
situation that is not likely to be very common.

Iljitsch van Beijnum