TCP Three-Way Handshake: Purpose of the SYN / SYN+ACK / ACK Exchange
The exchange you listed—Client sends SYN, Server replies SYN+ACK, and Client responds with ACK—is the TCP three-way handshake. Its purpose is to establish a TCP connection by synchronizing initial sequence numbers, confirming reachability, and preparing both endpoints to send and receive data reliably over the newly formed connection.2
Key terms to recognize:
- TCP handshake
- SYN
- ACK
- Initial sequence number
Footnotes
-
The TCP/IP Guide — TCP Connection Establishment (Three-Way Handshake): https://www.tcpipguide.com/free/t_TCPConnectionEstablishmentTheThreeWayHandsh.htm - Explains SYN → SYN/ACK → ACK as TCP three-way handshake for connection establishment and sequence number synchronization. ↩
-
RFC 793 - Transmission Control Protocol (TCP): https://www.rfc-editor.org/rfc/rfc793 - Defines TCP behavior including control flags (SYN/ACK) and establishes connection state transitions. ↩
TCP Three-Way Handshake Explained
Why this exchange exists (what it accomplishes)
At a protocol level, the handshake ensures both sides agree on:
- That the peer is reachable (the other endpoint can receive packets).
- The starting sequence numbers for ordered delivery and acknowledgment tracking.
- That each side is prepared to proceed with the TCP connection state machine (before sending data).2
This is fundamentally connection establishment, not fragmentation and not termination.
Footnotes
-
The TCP/IP Guide — TCP Connection Establishment (Three-Way Handshake): https://www.tcpipguide.com/free/t_TCPConnectionEstablishmentTheThreeWayHandsh.htm - Explains SYN → SYN/ACK → ACK as TCP three-way handshake for connection establishment and sequence number synchronization. ↩ ↩2
-
RFC 793 - Transmission Control Protocol (TCP): https://www.rfc-editor.org/rfc/rfc793 - Defines TCP behavior including control flags (SYN/ACK) and establishes connection state transitions. ↩
TCP Connection Establishment (Three-Way Handshake)
- 1Step 1
The client initiates connection setup and includes an initial sequence number (ISN).
- 2Step 2
The server acknowledges the client’s SYN and sends its own ISN, indicating readiness to establish the connection.
- 3Step 3
The client acknowledges the server’s SYN; after this, both sides have confirmed each other’s sequence parameters.
- 4Step 4
Once the handshake completes, the TCP connection is established and the endpoints transition to data transfer behavior.
Eliminating the answer choices
Your options map to distinct TCP/UDP behaviors:
| Choice | Meaning | Correct? |
|---|---|---|
| (i) IP fragmentation | A network-layer process for splitting datagrams that exceed MTU | No |
| (ii) TCP connection termination | Done with FIN/ACK (and related handshake variants) to close a TCP session | No |
| (iii) UDP connection establishment | UDP is connectionless; there is no built-in handshake like TCP’s | No |
| (iv) TCP connection establishment | Three-way handshake establishes sequence synchronization and readiness | Yes |
The SYN / SYN+ACK / ACK sequence is explicitly the TCP connection establishment mechanism (three-way handshake).2
Footnotes
-
The TCP/IP Guide — TCP Connection Establishment (Three-Way Handshake): https://www.tcpipguide.com/free/t_TCPConnectionEstablishmentTheThreeWayHandsh.htm - Explains SYN → SYN/ACK → ACK as TCP three-way handshake for connection establishment and sequence number synchronization. ↩
-
RFC 793 - Transmission Control Protocol (TCP): https://www.rfc-editor.org/rfc/rfc793 - Defines TCP behavior including control flags (SYN/ACK) and establishes connection state transitions. ↩
Pro Tip: Recognize TCP by its flags
If you see SYN → SYN+ACK → ACK, think “TCP connection setup.” If you see FIN/ACK, think “TCP teardown/termination.”
Common confusion: UDP doesn’t “connect”
UDP may use an application-level concept of “session,” but TCP’s SYN/SYN+ACK/ACK is not a UDP mechanism. UDP has no standardized handshake to establish a reliable connection.
Footnotes
-
RFC 768 - User Datagram Protocol (UDP): https://www.rfc-editor.org/rfc/rfc768 - Describes UDP as connectionless, contrasting with TCP’s connection-oriented behavior. ↩
TCP Session Lifecycle (High-Level)
Connection establishment
StartThree-way handshake: SYN → SYN+ACK → ACK.2"
Footnotes
-
The TCP/IP Guide — TCP Connection Establishment (Three-Way Handshake): https://www.tcpipguide.com/free/t_TCPConnectionEstablishmentTheThreeWayHandsh.htm - Explains SYN → SYN/ACK → ACK as TCP three-way handshake for connection establishment and sequence number synchronization. ↩
-
RFC 793 - Transmission Control Protocol (TCP): https://www.rfc-editor.org/rfc/rfc793 - Defines TCP behavior including control flags (SYN/ACK) and establishes connection state transitions. ↩
Reliable data transfer
MiddleOrdered delivery with acknowledgments and retransmission as needed."
Connection termination
EndTypically uses FIN (plus ACK), closing the connection statefully."
FAQ
Knowledge Check
In the TCP exchange SYN → SYN+ACK → ACK, what is the purpose?