Networking
Packet Lab
Follow one packet from an application through the socket, transport, IP, link, NIC and every router to its destination, inspecting what changes at each hop. Then inject failures — drop a packet, add 200 ms, add 5% loss, break DNS, expire a certificate, block a port, reset the connection — predict the behaviour, and check. Every number here is an educational simulation, not a measurement.
Follow one packet
Read the lesson: Follow One Packet →Follow one packet
Fourteen hops from write() to read(). Watch which fields change at each and which never do.
Protocol
Hops (click to inspect)
Applicationclient host~1 µs (syscall entry)
write(fd, buf, 517): the TLS ClientHello leaves user space as plain bytes. No headers exist yet.
Packet state at this hop (changed fields highlighted)
src MAC
—
dst MAC
—
src IP:port
(no header yet)
dst IP:port
(no header yet)
TTL
—
seq
—
checksums
—
Constant end to end
dst 203.0.113.10:443 · protocol 6 (TCP) · seq 0x1a2b3c4d · payload 517 B
1/14 · Application