T3RtxTimeout.seq - Failure to receive SACK after retransmit times to 'Association.Max.Retrans'
To check that if DATA is retransmitted for 'Association.Max.Retrans' times then
the endpoint MUST abort the initialization process and report the error to the
SCTP user.
./T3RtxTimeout.seq [-tooloption ...] -pkt ./T3RtxTimeout.def
-tooloption : v6eval tool option
See Also: ../common/STD_PKT_COMMON.def
../common/SCTP_COMMON.def
Association is established between endpoint A and B. Arrange the
data in Endpoint A such that SACK is not sent in response to DATA
message.
Endpoint A Endpoint B ULP
(ESTABLISHED) (ESTABLISHED)
<---------------- DATA
(Start T3-rtx timer)
|
| T3-rtx timer expired
|
<---------------- DATA
.
. Retransmit x
. times
TEST DESCRIPTION:
1. Sending DATA message from endpoint B to A. Do not send SACK to response
the DATA message.
Record the message sequence using a signal emulator.
2. Check A: If DATA message is transmitted for ASSOCIATION.MAX.RETRANS
times without getting an SACK, Association is aborted and upper layers
are reported of this.
None
RFC 4960
6.3.3. Handle T3-rtx Expiration
Whenever the retransmission timer T3-rtx expires for a destination
address, do the following:
E1) For the destination address for which the timer expires, adjust
its ssthresh with rules defined in Section 7.2.3 and set the
cwnd <- MTU.
E2) For the destination address for which the timer expires, set RTO
<- RTO * 2 ("back off the timer"). The maximum value discussed
in rule C7 above (RTO.max) may be used to provide an upper bound
to this doubling operation.
E3) Determine how many of the earliest (i.e., lowest TSN)
outstanding DATA chunks for the address for which the T3-rtx has
expired will fit into a single packet, subject to the MTU
constraint for the path corresponding to the destination
transport address to which the retransmission is being sent
(this may be different from the address for which the timer
expires; see Section 6.4). Call this value K. Bundle and
retransmit those K DATA chunks in a single packet to the
destination endpoint.
E4) Start the retransmission timer T3-rtx on the destination address
to which the retransmission is sent, if rule R1 above indicates
to do so. The RTO to be used for starting T3-rtx should be the
one for the destination address to which the retransmission is
sent, which, when the receiver is multi-homed, may be different
from the destination address for which the timer expired (see
Section 6.4 below).