Stream Control Transmission Protocol
Stream Transmission Control Protocol (SCTP) is a connection-oriented protocol, similar to TCP, but provides message-oriented data transfer, similar to UDP. The AIX® operating system is compliant with RFC 4960.
The following table highlights the general differences in behavior between SCTP and existing transport protocols, TCP and UDP.
|Data Delivery||Strictly Ordered||Unordered||Partially ordered|
In general, SCTP may provide more flexibility for certain applications, like Voice over IP (VoIP), that require the reliable but message-oriented data transfer. For this category of applications, SCTP is most likely better-suited than TCP or UDP.
- TCP provides reliable and strict order-of-transmission data delivery. For applications that need reliability, but can tolerate unordered or partially ordered data delivery, TCP may cause some unnecessary delay because of head-of-line blocking. With the concept of multiple streams within a single connection, SCTP can provide strictly ordered delivery within a stream while logically isolating data from different streams.
- SCTP is message-oriented, unlike TCP, which is byte-oriented. Because of the byte-oriented nature of TCP, the application has to add its own record marking to maintain message boundaries.
- SCTP provides some degree of fault tolerance by using the Multihoming feature. A host is considered multihomed when it has more than one network interface attached, either on the same or different networks. An SCTP association can be established between two multihomed hosts. In this case, all IP addresses of both endpoints are exchanged at association startup; this allows each endpoint to use any of these addresses over the life of the connection if one of the interfaces is down for any reason, as long as the peer is reachable through the alternate interfaces.
- SCTP provides additional security features that TCP and UDP do not. In SCTP, resource allocation during association setup is delayed until the client's identity can be verified using a cookie exchange mechanism, thus reducing the possibility of Denial of Service attacks.