FIG_000 · curriculum v1.0 · 2026

Networking
from Scratch

Build the network stack — bits, frames, packets, TCP, TLS, kernel modules, eBPF, DDS — from raw bytes, in C and Python. Free, open source, MIT-licensed.

15 phases 289 lessons C + Python

Every lesson starts with a concrete problem, walks through the theory and the relevant RFC, then builds the solution from scratch in C or Python. You write the code, run the tests, and verify against real traffic. No frameworks until you've built a minimal version yourself.

The curriculum is ordered but not rigid. Phases 1–4 build the foundation (bits through TCP). Phases 5–7 add sockets, application protocols, and TLS. Phase 8 is the capstone: a userspace TCP/IP stack that can curl a real HTTPS site. Phases 9–14 go deep into the Linux kernel, eBPF, routing, and container networking. Phase 15 is a bonus on DDS and robotics middleware.

Lessons
0 / 289
Phases started
0 / 15
Languages
C + Python
Complete In progress Planned
git clone https://github.com/TanayK07/networking-from-scratch.git

Then run make -C phases/01-bits-and-wires/02-bits-bytes-endianness test to verify your first lesson builds.