Index

Module 02 · NetworkingHow a packet finds a house

The hold line (the listen queue, and the SYN flood)

TCP Handshake
TCP Handshake · Open board

The TCP handshake in real bytes: SYN, SYN+ACK, ACK, each with its random starting number. This lesson is about the server’s side of that drawing: what it writes down after the second message, and what happens when millions of callers never send the third.

Before you start. From TCP vs UDP, and the 3-way handshake you have the phone call: TCP opens with three messages (“can you hear me?”, “yes, and can you hear me?”, “yes”), each side says a random starting number, and the return address on a packet is whatever the sender wrote, so it can be forged. From The page that never arrived (TCP reliable delivery) you have the server’s half in code: a program claims a port and waits (LISTEN), and accept() hands it each finished call as a new socket. This lesson is what happens between those two, when calls come in faster than the program picks them up.

Continue reading with a plan

The first three lessons of every track are free. This lesson is included with a plan, which unlocks every lesson, board, video, lab and paper for one price.

View plans →Already a member? Sign in

Lab

The pipe is 100 Mbps and the file is 1 MB. Why does the round-trip time decide how long it takes?

Drag How far away the server is out to the satellite, then press Play next flight and watch The clock.

Open The TCP handshake →

Related paper

Review Networking →

Saved in this browser, and to your account when you sign in.