SCTP Programmer's Guide

1 Introduction
This chapter introduces Stream Control Transmission Protocol (SCTP). It also discusses
the SCTP architecture, the features that SCTP supports, the security features that SCTP
offers, and error handling.
This chapter addresses the following topics:
“SCTP Overview” (page 17)
“Limitations of TCP and UDP” (page 18)
“SCTP Architecture” (page 19)
“SCTP Features” (page 27)
“Error Handling in SCTP” (page 37)
“SCTP Security” (page 38)
SCTP Overview
SCTP is a connection-oriented transport layer protocol that enables reliable transfer of
data over IP-based networks. In an IP stack, it exists at a level equivalent to that of
Transmission Control Protocol (TCP) and User Datagram Protocol (UDP). SCTP offers
all the features that are supported by TCP and UDP. It also overcomes certain limitations
in TCP and adopts the beneficial features of UDP.
SCTP offers the following features:
Network-level fault tolerance through support for multihoming
Minimized delay in data delivery by sending data in multiple streams
Acknowledged, error-free non-duplicated transfer of data
Data fragmentation to conform to discovered maximum transmission unit (MTU)
size
Sequenced delivery of user messages within multiple streams
Optional bundling of multiple user messages into an SCTP packet
Improved SYN-flood protection
Preservation of message boundaries
SCTP also includes mechanisms, such as checksums, sequence numbers, and selective
retransmission of data, to detect data corruption, loss of data, and duplication of data.
In addition, it contains different congestion control algorithms to minimize data loss
in an unstable network. SCTP supports improved error handling methods to avoid
unnecessary retransmission of data. The security methods implemented in SCTP enable
the endpoints of an association to avoid SYN-flooding, and to identify stale or unwanted
data packets.
Initially, the features of SCTP were designed to transport telephone signaling messages
over IP networks. Other applications that require similar features can also use SCTP.
SCTP Overview 17