NAME

  T4RtoRetrans.seq - ASCONF message is transmitted again if T4-RTO timer expires


PURPOSE

  To check that if the T4-RTO timer expires, the endpoint MUST retransmit ASCONF
  and restart the T4-RTO timer.


SYNOPSIS

  ./T4RtoRetrans.seq [-tooloption ...] -pkt ./T4RtoRetrans.def
    -tooloption : v6eval tool option
  See Also: ../common/STD_PKT_COMMON.def
            ../common/SCTP_COMMON.def


PRE-TEST CONDITION

  Association is established between endpoint A and B. Arrange the
  data in Endpoint A such that ASCONF-ACK is not sent in response
  to ASCONF message.


TEST PROCEDURE

  Endpoint A                           Endpoint B                ULP
  (ESTABLISHED)                        (ESTABLISHED)
                                                   <-----    Asconf
                <-----------------      ASCONF
  Don't send                            (Start T4-RTO timer)
  ASCONF-ACK message                        |
                                            |   T4-RTO timer expires
                                            |
                <----------------       ASCONF
                                        (Restart T4-RTO Timer)
  TEST DESCRIPTION:
  1. Sending ASCONF message from endpoint B to A. Do not send ASCONF-ACK
     to response the ASCONF message.
     Record the message sequence using a signal emulator.
  2. Check A: ASCONF message is sent again after expiry of T4-RTO timer.


NOTE

  None


REFERENCE

  RFC 5061
  5.1.  ASCONF Chunk Procedures
    If the T-4 RTO timer expires the endpoint MUST do the following:
    B1)  Increment the error counters and perform path failure detection
         on the appropriate destination address as defined in [RFC4960],
         Sections 8.1 and 8.2.
    B2)  Increment the association error counters and perform endpoint
         failure detection on the association as defined in [RFC4960],
         Sections 8.1 and 8.2.
    B3)  Backoff the destination address RTO value to which the ASCONF
         chunk was sent by doubling the RTO timer value.
         Note: The RTO value is used in the setting of all timer types
         for SCTP.  Each destination address has a single RTO estimate.
    B4)  Re-transmit the ASCONF Chunk last sent and if possible choose an
         alternate destination address (please refer to [RFC4960],
         Section 6.4.1).  An endpoint MUST NOT add new parameters to this
         chunk; it MUST be the same (including its Sequence Number) as
         the last ASCONF sent.  An endpoint MAY, however, bundle an
         additional ASCONF with new ASCONF parameters with the next
         Sequence Number.  For details, see Section 5.5.
    B5)  Restart the T-4 RTO timer.  Note that if a different destination
         is selected, then the RTO used will be that of the new
         destination address.
    Note: The total number of retransmissions is limited by B2 above.  If
    the maximum is reached, the association will fail and enter into the
    CLOSED state (see [RFC4960], Section 6.4.1 for details).