How the Internet Works
Press Enter on a URL and follow the request: layers, encapsulation, and an educational packet inspector.
Between pressing Enter on `https://engineer-atlas.dev` and seeing a page, a name becomes an address, an address becomes a path, a path carries a connection, the connection is secured, and only then does HTTP say a word — and each step has its own way of failing.
The same `GET /` seen at fifteen rungs — browser, socket API, kernel, transport, IP, link, NIC, switch, router, NAT, ISP, internet, server network, server kernel, server process — with the exact state that changes at each one: which headers are added, which addresses are rewritten, and which are never touched.
Networking is stacked because each layer solves one problem for the layer above without knowing what it carries; the four-layer TCP/IP model describes what actually runs, the seven-layer OSI model is a vocabulary — and modern protocols such as TLS, QUIC and ARP refuse to sit in one box.
Each layer wraps the one above in a header the layer below never reads: 100 bytes of HTTP become a 120-byte TCP segment, a 140-byte IP packet and a 154-byte Ethernet frame — and the 1500-byte MTU, the MSS derived from it, and path-MTU discovery decide how a large response is cut up so that nothing on the way has to fragment it.
A single captured frame carrying an HTTP request, decoded layer by layer — Ethernet (src MAC, dst MAC, EtherType), IP (src, dst, TTL, protocol), TCP (ports, seq, ack, flags), HTTP — with, for every field, who wrote it, who reads it, and who is allowed to change it.