SCTP Programmer's Guide

1. Host A sends a Synchronize (SYN) packet to Host B.
2. Upon receiving the SYN packet, Host B allocates resources for the connection and
sends a Synchronize-Acknowledge (SYN-ACK) packet to Host A.
3. Host A sends an ACK packet to confirm the receipt of the SYN-ACK packet.
The connection is set up between Host A and Host B, and Host A can now start
sending data to Host B.
Figure 1-3 illustrates the four-way handshake in SCTP.
Figure 1-3 Four-Way Handshake in SCTP
The following steps describe the four-way handshake in SCTP:
1. Host A initiates an association by sending an INIT packet to Host B.
2. Host B responds with an INIT-ACK packet that contains the following fields:
A Verification tag
A Cookie
The TCP SYN-ACK packet does not contain these fields. The cookie contains the
necessary state information, which the server uses to allocate resources for the
association. The cookie field includes a signature for authenticity and a timestamp
to prevent replay attacks using old cookies. Unlike TCP, Host B in SCTP does not
allocate resources at this point in the connection. The verification tag provides a
key that enables Host A to verify that the SCTP packet belongs to the current
association.
3. Host A sends the COOKIE-ECHO packet to Host B. If Host A has a forged IP address,
it never receives the INIT-ACK chunk. This prevents Host A from sending the
22 Introduction