Computer Networks Workbook
51 topics across foundations, non-functional requirements, building blocks, full system designs, and public postmortems. Every system uses the same 7-step interview walk-through; every building block has a consistent design template.
Foundations
8 items What the Internet is, the layered models (OSI and TCP/IP), encapsulation, and the access-network families that make up the last mile.
Foundations
8 items- What Is the Internet?
An internet of internets — autonomous systems, end hosts, routers, the IP datagram contract that holds it together.
Concept Foundational - A Brief History of the Internet
ARPANET → NSFNET → commercial Internet. The forty-year arc and the design decisions that ossified into today's stack.
Concept Foundational - Internet Standards — RFCs, IETF, IANA, ICANN
Who actually governs the Internet? The bodies, the RFC process, the registries — how a protocol becomes interoperable.
Concept Foundational - The OSI Reference Model
Seven layers, what each one is for, why nobody actually deploys all seven, and where the model still helps reasoning.
Concept Foundational - The TCP/IP Model
Four layers (link, internet, transport, application) and the reason the Internet runs on them instead of OSI.
Concept Foundational - Encapsulation, Headers, and the Envelope Metaphor
How a packet picks up headers on the way down and sheds them on the way up — the mental model for every layered protocol.
Concept Foundational - Access Networks — DSL, Cable, FTTH, Cellular
How end hosts get on the Internet — the last-mile technologies, their bandwidth shapes, and where they're going.
Concept Foundational - Network Types — by Medium, Distance, and Topology
Guided vs unguided media, LAN/MAN/WAN/PAN, and the standard topologies (bus, ring, star, mesh) you'll still meet in datacenters.
Concept Foundational
Application Layer
7 items HTTP, cookies and sessions, DNS, email (SMTP/POP/IMAP), BitTorrent — the protocols engineers touch every day.
Application Layer
7 items- What Is the Application Layer?
What apps actually do on top of the transport layer — process-to-process messaging, architectures, and the protocols you'll meet.
Concept Foundational - Client-Server vs Peer-to-Peer
Two app-layer architectures, their scaling shapes, and the hybrid (BitTorrent + trackers) that combines them.
Concept Foundational - HTTP — Requests, Responses, Status Codes, Headers
The protocol most engineers know best. Methods, status families, the headers that actually matter, persistent connections.
Building Block Foundational - Cookies and Session Management
Stateful sessions over a stateless protocol, Set-Cookie / Cookie headers, SameSite, Secure, HttpOnly, and the alternatives.
Building Block Foundational - DNS — Hierarchy, Records, and Query Resolution
Root → TLD → authoritative → recursive; A / AAAA / CNAME / MX / NS / TXT; the recursive resolution walk.
Building Block Foundational - Email — SMTP, POP, IMAP
Three protocols for one job. Why SMTP is push, POP/IMAP are pull, and where modern alternatives took over.
Building Block Foundational - BitTorrent
Tracker + swarm + pieces + tit-for-tat. The protocol that made P2P scale and still teaches the patterns.
System Intermediate
Transport Layer
7 items UDP and TCP — multiplexing, reliable delivery, flow control, congestion control, the algorithms that make the Internet work.
Transport Layer
7 items- What Is the Transport Layer?
End-to-end delivery over an unreliable IP network. Multiplexing, demultiplexing, and the reliability spectrum.
Concept Foundational - UDP — User Datagram Protocol
Connectionless, unreliable, lightweight. The header, the checksum, and the cases where UDP is the right answer.
Building Block Foundational - TCP Fundamentals — Header, Handshake, Teardown
Three-way handshake, four-way close, sequence/ack numbers, the flags (SYN/ACK/FIN/RST/PSH/URG), what each enables.
Building Block Foundational - Reliable Data Transfer — ARQ, Sliding Window, Go-Back-N
Stop-and-wait → Go-Back-N → Selective Repeat. The recipe TCP refines into its flow- and congestion-control machinery.
Concept Intermediate - TCP Flow Control and Window Scaling
The receive window, advertised window, zero-window probes, and the window-scaling option that fixed the 64KB limit.
Building Block Intermediate - TCP Congestion Control — AIMD, Slow Start, Fast Retransmit
The four canonical algorithms (slow start, congestion avoidance, fast retransmit, fast recovery) and why AIMD converges to fairness.
Building Block Intermediate - SYN Floods and TCP-Layer Attacks
Half-open connections, SYN cookies, retransmission timeouts — the security and resilience knobs on TCP.
Concept Intermediate
Network Layer
12 items IP (v4 and v6), ICMP, ARP, DHCP, NAT, intradomain (OSPF) and interdomain (BGP) routing.
Network Layer
12 items- What Is the Network Layer?
Forwarding vs routing, the control plane vs the data plane — what turns 'a wire between two hosts' into 'the Internet'.
Concept Foundational - IPv4 — Addressing, Subnets, Fragmentation
32-bit addresses, classless inter-domain routing (CIDR), subnet masks, fragmentation, the IPv4 header.
Building Block Foundational - IPv6 — Why and How
128-bit addresses, simplified header, no fragmentation by routers, IPv4 exhaustion as the forcing function.
Building Block Intermediate - ICMP — The Internet's Control Channel
ping, traceroute, destination-unreachable, time-exceeded, redirect — how the network tells you what went wrong.
Building Block Foundational - ARP — Address Resolution Protocol
Mapping IPv4 addresses to MAC addresses inside a subnet. The cache, the request/reply, and the spoofing risk.
Building Block Foundational - DHCP — Dynamic Host Configuration
DISCOVER / OFFER / REQUEST / ACK. The four-way handshake that gets your laptop an IP address.
Building Block Foundational - NAT and Firewalls
Why everyone is behind a NAT, how it breaks the end-to-end principle, and the firewall stances (stateful vs stateless) you'll meet.
Building Block Intermediate - Static vs Dynamic Routing
Hand-edited tables vs protocols that converge. When each is correct, and the operational cost of choosing wrong.
Concept Intermediate - Distance-Vector Routing and RIP
Bellman-Ford on the control plane — each router advertises distances to its neighbours, count-to-infinity, split-horizon, poison-reverse, and why RIP capped at 15 hops.
Building Block Intermediate - Intradomain Routing — OSPF
Link-state routing inside an AS, Dijkstra's algorithm, hello protocol, area hierarchies — the routing protocol of enterprises and ISPs.
Building Block Intermediate - Interdomain Routing — BGP
Path-vector routing between ASes, policy-based selection, the trust model that makes BGP both essential and fragile.
Building Block Advanced - The Life of a Packet — End to End
A single HTTP request from address-bar keypress to rendered page — ARP, DHCP, DNS, IP, TCP, HTTP and back, narrated layer by layer.
System Intermediate
Link Layer
7 items Framing, error detection, medium access (CSMA family), Ethernet, Wi-Fi, switches, VLANs.
Link Layer
7 items- The Data Link Layer
Framing, error detection, and medium access — what the link layer adds on top of raw signal.
Concept Foundational - Static Medium Access — TDMA, FDMA, CDMA
Pre-allocated time, frequency, or code slots. The schemes mobile and satellite links rely on, and why static beats stochastic for them.
Concept Intermediate - ALOHA and Slotted ALOHA
The original stochastic medium-access protocol from 1971 Hawaii, the throughput math (18% and 37%), and what slotting bought.
Concept Foundational - Medium Access Control — CSMA, CSMA/CD, CSMA/CA
Stochastic medium access: listen, defer, transmit, detect collisions. The mechanism behind classic Ethernet and Wi-Fi.
Building Block Intermediate - Ethernet — Frame Format, Switches, VLANs
Preamble + dst + src + EtherType + payload + FCS; the switch fabric; VLAN tagging (802.1Q); the spanning tree.
Building Block Foundational - Spanning Tree Protocol (STP)
How a switched LAN avoids loops — BPDUs, root-bridge election, port roles, blocked links — and why RSTP and MSTP exist.
Building Block Intermediate - Wi-Fi (802.11) Basics
PHY layers (a/b/g/n/ac/ax/be), CSMA/CA, association, hidden terminals, RTS/CTS, the security generations (WEP→WPA→WPA3).
Building Block Intermediate
Tools & Practice
7 items ping, traceroute, tcpdump, curl, dig — and Python socket programming for UDP and TCP.
Tools & Practice
7 items- Tools — ping, traceroute, tcpdump, curl, dig
The six commands you actually use to debug networks. Read packets, follow paths, resolve names, talk HTTP.
Building Block Foundational - Python Sockets — UDP Client/Server
socket() + bind() + sendto/recvfrom. The simplest network programs that teach the model.
Building Block Foundational - Project — A Multi-Client UDP Chat App
A small but realistic project: many clients, one relay server, broadcast over UDP. The framing, the keep-alive, the cleanup.
Building Block Foundational - Python Sockets — TCP Client/Server
socket() + connect/listen/accept + sendall/recv. Custom framing, blocking vs non-blocking, the patterns that scale.
Building Block Foundational - Project — A Distance-Vector (RIP) Routing Simulator
Build a small network of router processes that exchange distance vectors, converge to shortest paths, and survive a link failure.
Building Block Intermediate - Project — Dijkstra's Shortest-Path for Link-State Routing
From a link-state database to a forwarding table in O((V+E) log V). The algorithm OSPF runs on every router.
Building Block Intermediate - Project — Simulating the Spanning Tree Protocol
A loop-free spanning tree over a switched-LAN graph: root election, port roles, BPDU exchange, the convergence walk.
Building Block Intermediate
Systems & Postmortems
3 items Public network-layer postmortems — Cloudflare 2019 regex outage, Facebook 2021 BGP withdrawal, AWS us-east-1 S3 2017.
Systems & Postmortems
3 items- Cloudflare 2019 — The Regex Outage
A bad WAF regex with exponential backtracking; 30 minutes of global edge downtime; the postmortem on safe deploys.
Postmortem Foundational - Facebook 2021 — The BGP Withdrawal
A maintenance command withdrew BGP routes for Facebook's nameservers; 6+ hours of global outage; the lessons on out-of-band access.
Postmortem Foundational - AWS us-east-1 2017 — The S3 Outage
A misconfigured command in the S3 billing system; cascading failure through us-east-1; the lessons on blast radius.
Postmortem Foundational