Stream Control Transmission Protocol (SCTP)

  • Stream Control Transmission Protocol (SCTP) is a reliable, message-oriented transport layer protocol.
  • SCTP has  mixed features of TCP and UDP.
  • SCTP  maintains the message boundaries and detects the lost data, duplicate data as well as out-of-order data.
  • SCTP provides the Congestion control as well as Flow control.
  • SCTP is especially designed for internet applications.

SCTP Services

Some important services provided by SCTP are as stated below:

1. Process-to- Process communication
SCTP  uses all important ports of TCP.

2. Multi- Stream Facility
SCTP provides multi-stream service to each connection, called as association. If one stream gets blocked, then the other stream can deliver the data.
  
3.Full- Duplex Communication
SCTP provides full-duplex service ( the data can flow in both directions at the same time).

4. Connection- Oriented Service
The SCTP is a connection oriented protocol, just like TCP with the only difference that, it is called association in SCTP. If User1 wants to send and receive message from user2, the steps are :

Step1: The two SCTPs establish the connection with each other.
Step2: Once the connection is established, the data gets exchanged in both the directions.
Step3: Finally, the association is terminated.

5. Reliability
SCTP uses an acknowledgement mechanism to check the arrival of data.

Features of SCTP

Some important features of SCTP are as stated below:

1. Transmission Sequence Number (TSN)
The unit of data in SCTP is a data chunk. Data transfer in SCTP is controlled by numbering the data chunks. In SCTP, TSN is used to assign the numbers to  different data chunks.

2. Stream Identifier (SI)
The SI is a 16 bit number and starts with 0. In SI, there are several streams in each association and it is needed to identify them. Each data chunk needs to carry the SI in the header, so that it is properly placed in its stream on arrival.

3. Packets
In SCTP, the data is carried out in the form of data chunks and control information is carried as control chunks. Data chunks and control chunks are packed together in the packet.

4. Multihoming
Multihoming allows both ends (sender and receiver) to define multiple IP addresses for communication. But, only one of these can be defined as primary address and the remaining can be used as alternative addresses.