T1InitRetrans.seq - INIT message is transmitted again if T1-Init timer expires
To check that if the T1-init timer expires, the endpoint MUST retransmit INIT and restart the T1-init timer without changing state.
./T1InitRetrans.seq [-tooloption ...] -pkt ./T1InitRetrans.def -tooloption : v6eval tool option See Also: ../common/STD_PKT_COMMON.def ../common/SCTP_COMMON.def
Association is not established between endpoint A and B. Arrange the data in Endpoint A such that INIT-ACK is not sent in response to INIT message.
Endpoint A Endpoint B ULP (CLOSED) (CLOSED)
<----- Associate <---------------- INIT Don't send Start T1-Init timer INIT-ACK | | T1-INIT timer Expires | <---------------- INIT Restart T1-Init timer
TEST DESCRIPTION:
1. Try to make an association from endpoint B to endpoint A by sending INIT message from endpoint B. Don't send INIT-ACK in response to INIT message. Record the message sequence using a signal emulator. 2. Check A: INIT message is sent again after expiry of T1-Init timer. 3. Check B: In the retransmitted message, Init-Tag value is same as was in the previous INIT message. 4. Check C: Was the message sequence as above.
None
RFC 4960
4. SCTP Association State Diagram
Notes:
1) If the State Cookie in the received COOKIE ECHO is invalid (i.e., failed to pass the integrity check), the receiver MUST silently discard the packet. Or, if the received State Cookie is expired (see Section 5.1.5), the receiver MUST send back an ERROR chunk. In either case, the receiver stays in the CLOSED state.
2) If the T1-init timer expires, the endpoint MUST retransmit INIT and restart the T1-init timer without changing state. This MUST be repeated up to 'Max.Init.Retransmits' times. After that, the endpoint MUST abort the initialization process and report the error to the SCTP user.