InitCwndNotChang.seq - The initial cwnd should not chang as flight_size is less than the cwnd
To check that when the data newly acknowledged by the SACK diminishes
the amount of data now in flight to less than cwnd, unchanged value of
cwnd now allows new data to be sent.
./InitCwndNotChang.seq [-tooloption ...] -pkt ./InitCwndNotChang.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
SACK ----------------->
<---------------- DATA 2
SACK ----------------->
<---------------- DATA 3
SACK ----------------->
<---------------- DATA 4
SACK ----------------->
TEST DESCRIPTION:
1. Check A: the initial cwnd before DATA transmission is set to 4380.
2. From endpoint B, send valid DATA message 4 times to endpoint B,
when there is association between them.
3. From endpoint A, send SACK immediately after received DATA message.
4. Check B: Congestion control window is not changed.
None
RFC 4960
7.2.1. Slow-Start
In instances where its peer endpoint is multi-homed, if an endpoint
receives a SACK that advances its Cumulative TSN Ack Point, then it
should update its cwnd (or cwnds) apportioned to the destination
addresses to which it transmitted the acknowledged data. However, if
the received SACK does not advance the Cumulative TSN Ack Point, the
endpoint MUST NOT adjust the cwnd of any of the destination
addresses.
Because an endpoint's cwnd is not tied to its Cumulative TSN Ack
Point, as duplicate SACKs come in, even though they may not advance
the Cumulative TSN Ack Point an endpoint can still use them to clock
out new data. That is, the data newly acknowledged by the SACK
diminishes the amount of data now in flight to less than cwnd, and so
the current, unchanged value of cwnd now allows new data to be sent.
On the other hand, the increase of cwnd must be tied to the
Cumulative TSN Ack Point advancement as specified above. Otherwise,
the duplicate SACKs will not only clock out new data, but also will
adversely clock out more new data than what has just left the
network, during a time of possible congestion.
o When the endpoint does not transmit data on a given transport
address, the cwnd of the transport address should be adjusted to
max(cwnd/2, 4*MTU) per RTO.