Checkpoint: Networking
Introduction
Look back at the ground you just covered. You started this section unable to say much about "the network" beyond it moves data — and now you can trace a request from a name typed in a browser to the right program on a server across the planet, and explain every single hop: how a name becomes an address (DNS), how a packet finds that address across the layers (IP), how a connection carries your bytes reliably or fast (TCP/UDP), how you speak through it (HTTP), securely (TLS), through proxies, reaching the nearest edge (anycast), with every packet verified (checksums). Eight ideas that together are the internet's plumbing.
This checkpoint turns that knowledge into a diagnostic skill — the one that actually earns its keep on the job. It is not a vocabulary quiz. It's a stack of real complaints — "the site's slow," "it freezes on mobile," "our overseas users hate it" — and for each one you get the same thing a real engineer gets: a request-timing breakdown and a few protocol clues. Your job is to read the clues, point to the layer that's actually at fault, and name the fix. That's the difference between knowing what DNS is and recognizing a DNS problem when it's staring at you in a waterfall — and it's exactly what a debugging session, a design review, or an interview demands.
Take each case on instinct, aim for five of seven, and treat every miss as a signpost to the one lesson worth another look. Diagnosing is the deepest kind of understanding — you're about to prove you have it.

See It: Diagnose the Slow Page
Seven patients, each a slow or broken page with a real-world complaint. For each one you get the evidence an engineer actually gets — a request-timing breakdown (DNS, connect, TLS, waiting, download) and a handful of protocol clues (the version, the packet-loss rate, the region, the backend load). Read the evidence, make your diagnosis, and you'll get an immediate verdict, the true cause, the fix, and the lesson it came from.
Watch for the trap in every case: there's always a plausible-but-wrong answer — "the server's just slow," "buy more bandwidth," "add more servers." The whole game is noticing which layer the clue actually points to. That's diagnosis, and it's the skill this entire section was building toward.

What You Can Now Do
Whatever you scored, step back and see the size of what you've gained. You can now walk up to almost any "the internet part is slow/broken" problem and reason about it like a professional:
- Trace a request end to end — name → DNS → IP/routing → TCP or UDP → HTTP → TLS → proxy → edge — and know what happens, and what can go wrong, at each step.
- Read a waterfall like an X-ray — spot a cold-DNS lookup, a fat TLS handshake, an HTTP/1.1 batching stall, or a far-away origin by their timing signature, not by guessing.
- Pick the right transport and protocol — reliable TCP vs fast UDP, and HTTP/2 vs HTTP/3 — and explain why (head-of-line blocking, round-trips, loss behavior), including the traps (HTTP/2 on lossy mobile, the TLS round-trip bill).
- Place the right box in the path — a reverse proxy to terminate TLS, cache, balance load, and hide your servers; a CDN reached by anycast to put content next to every user on earth.
- Trust, but verify — know that corruption is caught by checksums (not fixed — retransmitted), and that a checksum guards against accidents, not attackers.
That's not trivia. That's the ability to design, debug, and reason about how systems talk — the backbone under every distributed system you'll ever build.
Key Takeaways
The whole Networking section, compressed to what you'll actually reuse:
- Addressing & layers — a packet is nested address envelopes; the IP is end-to-end, the MAC changes every hop, and each box (switch/router/LB/proxy) reads only its layer.
- TCP vs UDP — guarantees cost round-trips; reliable ordered stream vs fast bare pipe. Head-of-line blocking is the recurring villain.
- DNS — names → addresses via a hierarchy, cached at every layer; and the first place traffic gets steered (GeoDNS).
- HTTP/1 → 2 → 3 — one enemy (HoL) fought twice: HTTP/2 multiplexing (app layer), HTTP/3 QUIC (transport layer).
- TLS — security priced in round-trips; the handshake is the bill (shrink it: 1.3, resumption, edge termination). And a checksum is not security — that's the crypto MAC.
- Proxies — forward hides the client, reverse hides the servers; the reverse proxy is the front door (LB · TLS · cache · WAF).
- Anycast — one IP, many PoPs → routing is the load balancer: nearest edge, DDoS spread, self-healing failover.
- Checksums — trust but verify: recompute & compare to detect corruption (fix = retransmit).
One sentence for the whole section: a name becomes an address (DNS), a packet finds it across the layers (IP), a connection carries it reliably or fast (TCP/UDP), you speak HTTP over it, secured by TLS, through proxies, reaching the nearest edge by anycast — and every packet is verified.
You can now follow a request across the whole internet and explain every hop. But we've been treating "send it to the servers" as if one magic box spread the load perfectly. It's time to open that box. The reverse proxy and anycast gave you a taste of distributing traffic; the next section makes it a craft — the algorithms, the health checks, the sticky sessions, the trade-offs. Next up: Load Balancing & Traffic.