Drag steps to the numbered slots on the right, or tap a step then tap a slot.
CCNA Network Infrastructure and Connectivity Practice Question
Drag and drop the following steps into the correct order to describe the TCP three-way handshake process between a client and a server.
⚠ Common exam trap
The most common trap is confusing the order of the handshake or thinking the server sends a plain ACK instead of a SYN-ACK. Remember: the client always initiates with SYN, the server replies with SYN-ACK, and the client finishes with ACK.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
Client sends SYN (seq=x)
The TCP three-way handshake begins with the client sending a SYN (A) to initiate the connection. The server replies with a SYN-ACK (B) to acknowledge the client's SYN and provide its own sequence number. Finally, the client sends an ACK (C) to confirm the server's SYN, completing the handshake. Option D, "Server sends ACK (ack=x+1)," is not part of the three-way handshake; an ACK from the server would be redundant at this stage and actually occurs during the four-way connection termination, not establishment.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Client sends SYN (seq=x)
Why this is correct
The client initiates the TCP connection by sending a segment with the SYN (synchronize) flag set and an initial sequence number (seq=x) chosen at random. This segment carries no payload, but it consumes one sequence number in the client's send window, meaning the next data byte will use sequence x+1. This is the first step of the three-way handshake, requesting that the server synchronize its own sequence numbers with the client's stream.
- ✓
Server sends SYN-ACK (seq=y, ack=x+1)
Why this is correct
The server responds to the client's SYN by sending a segment with both the SYN and ACK flags set, using its own initial sequence number (seq=y) and acknowledging the client's sequence number with ack=x+1. This single segment efficiently accomplishes two tasks: confirming receipt of the client's SYN and simultaneously initiating the server's own synchronization. It is a mandatory step in the three-way handshake, and its combined nature reduces the handshake to three messages rather than four, which is why a standalone server ACK is incorrect.
- ✓
Client sends ACK (ack=y+1)
Why this is correct
In the final step of the three-way handshake, the client sends an ACK segment acknowledging the server's sequence number by setting the acknowledgment field to y+1, where y is the server's initial sequence number. This ACK often carries no data and does not consume a sequence number itself, but it completes the connection establishment, allowing both sides to begin sending data. Without this final ACK, the server would remain uncertain whether the client received its SYN-ACK, so the handshake would be incomplete.
- ✗
Server sends ACK (ack=x+1)
Why it's wrong here
A standalone ACK from the server, with acknowledgment x+1 but no SYN flag, would incorrectly suggest that the server is merely acknowledging the client's SYN without establishing its own sequence number. In TCP's three-way handshake, the server must respond to the client's SYN with a combined SYN-ACK segment that carries both the ACK for x+1 and its own initial sequence number y. A separate ACK would not synchronize the server's send sequence, leaving the connection in an invalid state and violating the TCP state machine.
Option-by-option analysis
Why each answer is right or wrong
Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The 200-301 exam frequently reuses these exact scenarios with slightly different constraints.
✓Client sends SYN (seq=x)Correct answer▾
Why this is correct
The client initiates the TCP connection by sending a segment with the SYN (synchronize) flag set and an initial sequence number (seq=x) chosen at random. This segment carries no payload, but it consumes one sequence number in the client's send window, meaning the next data byte will use sequence x+1. This is the first step of the three-way handshake, requesting that the server synchronize its own sequence numbers with the client's stream.
✗Server sends ACK (ack=x+1)Wrong answer — click to see why▾
Why this is wrong here
This ACK is not part of the three-way handshake; it would be a redundant acknowledgment and is instead seen during the four-way connection teardown.
Why candidates choose this
Candidates might think the server acknowledges the client's SYN with a simple ACK, but the SYN flag must also be set to establish the connection.
Analysis generated from the official 200-301blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”
Visual reference
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Last reviewed: Jun 6, 2026
This 200-301 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-301 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.