SCTP Programmer's Guide
Partial Bytes Acknowledged
(partial_byte_acked)
Adjusts of the cwnd parameter.
In an SCTP connection, the sender uses the slow start algorithm if the value of cwnd
is less than the ssthresh value. If the value of cwnd is greater than the ssthresh
value, the sender uses the congestion avoidance algorithm. If the values for cwnd and
ssthresh are same, the sender can use either the slow start or congestion avoidance
algorithm. Unlike TCP, an SCTP sender must store the cwnd, ssthresh, and
partial_bytes_acked congestion control variables for each destination address of
the peer. However, the sender needs to store only one rwnd value for the whole
association, irrespective of whether the peer is multihomed or contains only one address.
Fast Retransmit and Fast Recovery
The fast retransmit congestion control algorithm is used to intelligently retransmit
missing segments of information in an SCTP association. When a receiver in an SCTP
connection receives a DATA chunk out of sequence, the receiver sends a SACK packet
with the unordered TSN, to the sender. The fast retransmit algorithm uses four SACK
packets to indicate loss of data, and retransmits DATA without waiting for the
retransmission timer to timeout. After the fast retransmit algorithm sends the DATA
that appears to be missing, the fast recovery algorithm controls the transmission of
new data until all the lost segments are retransmitted.
SCTP Features
The Signaling Transport (SIGTRAN) Working Group in IETF developed SCTP to
address the limitations in TCP and UDP. Though the development of SCTP was directly
motivated by the need to transfer Public Switched Telephone Network (PSTN) signaling
messages across the IP network, SIGTRAN ensured that the design meets the
requirements of other applications with similar requirements.
Table 1-2 compares features of SCTP, TCP, and UDP.
Table 1-2 Comparison Between SCTP, TCP, and UDP
UDPTCPSCTPFeature
no
1
yesyesState required at each endpoint
noyesyesReliable data transfer
noyesyesCongestion control and avoidance
yesno
2
yesMessage boundary conservation
noyes
2
yesPath MTU discovery and message fragmentation
noyes
2
yesMessage bundling
nonoyesMulti-homed hosts support
SCTP Features 27