SYSTEM-DESIGN
    beginner

    TCP 3-Way Handshake

    Software Engineer path · lesson 64 of 99

    TCP 3-Way Handshake

    Ready to initiate TCP connection establishment

    Connection-Oriented
    Connecting...
    Step 0/4: Ready
    Client

    Server

    1. SYN
    Client → Server
    2. SYN-ACK
    Server → Client
    3. ACK
    Client → Server

    Open a connection

    Sequence

    Order the TCP three-way handshake.

    Tap a piece, then tap where it goes — or drag it. Tap the tray to take one back.

    1. 1Drop a step here
    2. 2Drop a step here
    3. 3Drop a step here
    4. 4Drop a step here
    5. 5Drop a step here
    5 pieces left to place

    Test your knowledge

    21 questions
    Question 1 of 21
    Score: 0

    Which packet type is sent by the server to both acknowledge the client's request and establish its own sequence number?

    The short version

    The TCP handshake is like making a phone call: You say "Hello?" (SYN), the other person replies "Hi, I hear you, can you hear me?" (SYN-ACK), and you reply "Yes, I hear you!" (ACK). Now the conversation can begin.

    In more depth

    TCP (Transmission Control Protocol)

    TCP is a foundational networking protocol that provides reliable, ordered, and error-checked delivery of a stream of bytes.

    The Handshake Steps

    1.SYN: Client sends a Synchronize packet with an initial sequence number.
    2.SYN-ACK: Server acknowledges the client's sequence number and sends its own Synchronize packet.
    3.ACK: Client acknowledges the server's sequence number.

    Interview Questions

    Amazon
    Google
    Cisco
    Google
    Meta
    Cloudflare
    Amazon
    Netflix
    Uber
    Cloudflare
    Google
    Datadog

    Love this visualization?

    Sign up to track your progress, earn achievements, use the AI assistant, and access your personal learning dashboard.

    100% free • No credit card required