Subject: [Tsvwg] SCTP multi-homed fault-tolerance.

From: "Fairlie-Cuninghame, Robert" <[email-masked]>
Date: Thu, 22 Mar 2001 06:36:02 -0800

Hi everyone,

I'd like to hear your opinions on SCTP Association fault-tolerance w.r.t
multi-homed SCTP endpoints. I believe that the recommended ULP protocol
interface is making full fault-tolerance more difficult and in any case more
comment is needed in the spec (IMO). For this discussion, let us assume that
all transport addresses of a remote multi-homed SCTP endpoint are known in
advance.

The SCTP ULP interface recommends that the ASSOCIATE function accept only
one remote transport address in its arguments. Normally, the INIT ACK will
then contain the full set of transport addresses thereby enabling the
fault-tolerant behavior. However, if that interface happens to be
out-of-service at the time that the INIT is sent then fault-tolerance is not
achieved. [That is, the failure situation is induced if the association must
be established while the primary interface is out-of-service.]

Now the application can provide this redundancy itself but this is far from
optimal. For instance, the application can attempt to INIT
address-by-address. However, you don't want the SCTP stack to retry the INIT
'n' times before reporting failure to the application - you want to
round-robin the INIT addresses just as you would for a normal address. For
the application to be able to accomplish this properly, the implementation
must allow you to configure the retransmit of the initial INIT separately to
the retransmit value for other control chunks. The responsibilities of the
application for fault-tolerance should at least be discussed in the spec.

The application also has to handle the case where multiple or inconsistent
INIT ACK's are received (for instance if mis-configuration occurs and the
set of transport address actually refers to multiple SCTP endpoints).
[Whether or not to accept the association must be up to the application but
the SCTP stack can still assist.]

I think the API should be extended to remove a lot of this burden for fault
tolerance from the application. As it stands, SCTP is only providing full
fault-tolerance when the association is already established which in my
opinion is not sufficient. At the very least this needs to be discussed.

I'm sure this is not new but I am surprised that it is not addressed at all.

Robert.