Setting Path Failure Detection

As described in Monitoring, Failure Detection and Recovery, when its peer endpoint is multi-homed, an SCTP endpoint maintains a count for each of the peer’s destination transport addresses.

Each time the T3-rtx timer expires on any address, or when a HEARTBEAT sent to an idle address is not acknowledged within an RTO, the count for that specific address is incremented. If the value of a specific address count exceeds the SCTP protocol parameter Path.Max.Retrans, the endpoint marks that destination transport address as inactive.

The endpoint resets the counter when (1) a DATA chunk sent to that peer endpoint is acknowledged by a SACK, or (2) a HEARTBEAT ACK is received from the peer endpoint.

When the primary path is marked inactive (due to excessive retransmissions, for instance), the sender can automatically transmit new packets to an alternate destination address if one exists and is active. If more than one alternate address is active when the primary path is marked inactive, a single transport address is chosen and used as the new destination transport address.

Use the following procedure to configure path failure detection.

  1. From superuser mode, use the following command sequence to access network-parameters configuration mode.
    ORACLE# configure terminal
    ORACLE(configure)# system
    ORACLE(system)# network-parameters
    ORACLE(network-parameters)#
  2. Use the sctp-path-max-retrans parameter to assign a value to the SCTP protocol parameter Path.Max.Retrans.

    Allowable values are integers within the range 0 through 4294967295 that specify the maximum number of RTOs and unacknowledged HEARTBEATS. In the absence of an explicitly configured integer value, sctp-path-max-retrans defaults to 5 (RTO and/or HEARTBEAT errors per transport address, the recommended default value from RFC 4960).

    When configuring endpoint and path failure detection, ensure that the value of the sctp-assoc-max-retrans parameter is smaller than the sum of the sctp-path-max-retrans values for all the remote peer’s destination addresses. Otherwise, all the destination addresses can become inactive (unable to receive traffic) while the endpoint still considers the peer endpoint reachable.

    ORACLE(network-parameters)# sctp-path-max-retrans 5
    ORACLE(network-parameters)#
  3. Use done, exit, and verify-config to complete path failure detection configuration.
    ORACLE(network-parameters)# done
    ORACLE(system)# exit
    ORACLE(configure)# exit
    ORACLE(configure)# exit
    ORACLE# verify-config
    ---------------------------------------------------------------------
    Verification successful! No errors nor warnings in the configuration
    ORACLE#