1.2 What Is SCTP?
Similar to TCP and UDP, the Stream Control Transmission Protocol (SCTP) is another general-purpose transport protocol for IP network data communications. It was published as RFC2960 (Stewart et al. 2000) by the IETF in October 2000 as a Proposed Standard.
The primary purpose of SCTP is to provide a reliable end-to-end message transportation service over IP-based networks.
1.2.1 Where Does SCTP Fit in the IP Architecture?
Both SCTP and TCP provide a reliable data transportation service between two communication nodes or endpoints that are connected to each other by an IP-based network. However, the SCTP data transportation service is message-oriented, while the TCP's is byte-oriented.
This means that a sending application can construct a message out of a block of data bytes and then instruct SCTP to transport the message to a receiving application. SCTP will not only guarantee the delivery of this data block (message) in its entirety to the receiver; it will also indicate to the receiver both the beginning and end of the data block. This is sometimes also termed conservation of message boundaries.
Figure 14 SCTP in the IP reference model
TCP operates very differently in this regard; it simply treats all the data passed to it from the sending application as a sequence or stream of data bytes. It will deliver all the data bytes to the receiver in the same sequential order as they were passed down from the application. However, there will be no conservation of any data block boundaries by TCP.
SCTP is also richer in functionality and more tolerant to network and component failures than TCP. In Section 1.3.3 and in Chapter 12 we will compare TCP and SCTP in more detail.