Multihoming is the ability of an SCTP association to support multiple IP paths to its peer endpoint. The benefit of multihoming associations is that it makes the association more fault-tolerant against physical network failures and other issues on the interfaces. It allows re-routing of packets in the event of failure and also provides an alternate path for retransmissions. Every MP supports two XSI IP addresses; therefore, the SCTP multihomed Transport can have only two IP addresses.
When there are multiple IP addresses for an endpoint, one address is designated as the Primary IP Address to receive data.
A single port number is used across the entire address list at an endpoint.
Endpoints exchange lists of addresses during initiation of the connection. The client informs the server about all its IP addresses in the INIT address parameters. The server provides all its IP addresses to the client in INIT-ACK .
Both Local IP addresses will be sent in INIT to Adjacent Node.
Both of the Remote IP addresses will be used. If the Primary Peer IP Address is down, then the Transport will re-send INIT to the Secondary Peer IP Address.
For an SCTP Transport acting as either an Initiator or Listener, validation mode of remote IP Address(es) received in INIT-ACK will be controlled by User. Validation modes/rules are defined in Transport Validation.
Heartbeat chunks are used to monitor availability of alternate paths, with thresholds set to determine failure of alternate and primary paths.
With the multihoming association support, Transport Manager has potentially greater survivability of the sessions in case of network failures. There is no message loss if only a single path fails, the in-flight data will be retransmitted by SCTP using an alternate path .