There is an increasing need for internetworking between telephone and computer networks. Applications such as Voice over IP (VoIP) and the deployment of the 3rd Generation mobile telephony networks, make this integration a necessity. The Signaling Transport (SIGTRAN) working group of the Internet Engineering Task Force (IETF) is the one in charge of the design of the standards needed to make this internetworking possible. The primary purpose of this working group is addressing the transport of packet-based Public Switched Telephone Networks (PSTN) signaling over IP networks, taking into account functional and performance requirements of the PSTN signaling.
Among the multiple standards that have been defined by SIGTRAN there is one new reliable transport protocol, the Stream Control Transmission Protocol (SCTP). SCTP is the evolution of a previous transport protocol, called the Multi-Network Datagram Transmission Protocol (MDTP), highly based on TCP. SCTP has several new features that make it more suitable for PSTN signaling transport than TCP. SCTP can take advantage of a multihomed host using all the IP addresses the host owns. SCTP avoids a very simple attack that affects TCP, the so called SYN attack. This new protocol also provides a mechanism to prevent an application using SCTP from the so-called Head-Of-Line (HOL) blocking by using streams. Moreover, many features that are optional in TCP have been including in the basic specifications of SCTP, such as the Selective Acknowledgements, the ability to tell about the receipt of Duplicate Datagrams or the support for Explicit Congestion Notification (ECN).
On the whole, SCTP has many advantages over TCP and very few drawbacks, and we can expect that, apart from being used for signaling transport, SCTP will replace TCP in the Internet in the future. However, that will not happen overnight. Moreover, SCTP and TCP implementations share resources equally (as they have the same congestion avoidance algorithms). This behavior is highly desired to facilitate a gradual conversion of applications to use SCTP instead of TCP, making easier the co-existence of both protocols.