MaxBurstLimit.seq - Protocol parameter Max.Burst limits the number of new data chunks that can be sent
To check that when the time comes for the sender to transmit new DATA chunks, the protocol parameter Max.Burst SHOULD be used to limit the number of packets sent.
./MaxBurstLimit.seq [-tooloption ...] -pkt ./MaxBurstLimit.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 data in endpoint B such that DATA chunk is sent to endpoint A.
Endpoint A Endpoint B ULP (ESTABLISHED) (ESTABLISHED)
<----- Send <---------------- DATA 1 Don't Send SACK <---------------- DATA 2 Don't Send SACK <---------------- DATA 3 Don't Send SACK <---------------- DATA 4 Don't Send SACK SACK -----------------> (To DATA 1) SACK -----------------> (To DATA 2) SACK -----------------> (From DATA 3 to DATA 4) <---------------- DATA 5
SACK ----------------->
<---------------- DATA 6
SACK ----------------->
<---------------- DATA 7
SACK ----------------->
DATA ----------------->
<---------------- SACK
<----- Send <---------------- DATA 1 Don't Send SACK <---------------- DATA 2 Don't Send SACK <---------------- DATA 3 Don't Send SACK <---------------- DATA 4 Don't Send SACK <---------------- DATA 5
SACK -----------------> (From DATA 1 to DATA 5)
<---------------- DATA 6
SACK ----------------->
<---------------- DATA 7
SACK ----------------->
TEST DESCRIPTION:
1. Check A: the initial cwnd before DATA transmission is set to 4380. 2. From endpoint B, send valid DATA message 7 times to endpoint A, when there is association between them. 3. From endpoint A, after received 4 DATA message, send SACK of the first DATA to endpoint B. 4. Check B: Congestion control window is 5732 now. 5. Send SACK of the second DATA to endpoint B. 6. Check C: Congestion control window is 7084 now. 7. Received and SACK the rest DATA messages. 8. Send DATA message to endpoint B, and then endpoint B will send SACK. 9. From endpoint B, send valid DATA message 7 times to endpoint A. 10.From endpoint A, after received 5 DATA message, send SACK of all the five DATA to endpoint B. 11.Received and SACK the rest DATA messages. 12.Check D: Congestion control window is 6000 now. 13.Received and SACK the rest DATA messages.
None
RFC 4960
6.1. Transmission of DATA Chunks
D) When the time comes for the sender to transmit new DATA chunks, the protocol parameter Max.Burst SHOULD be used to limit the number of packets sent. The limit MAY be applied by adjusting cwnd as follows:
if((flightsize + Max.Burst*MTU) < cwnd) cwnd = flightsize + Max.Burst*MTU
Or it MAY be applied by strictly limiting the number of packets emitted by the output routine.