routing.jelia.nyc

Where packets go, and who decides

Every packet you send crosses a dozen or more routers, and each one makes its decision alone, in well under a microsecond, from a table it built by talking to its neighbors. This site is about both halves of that: the machinery inside a router that makes the decision fast, and the protocols between routers, and between whole networks, that decide what goes into the table.

It picks up where the routing chapters on networks.jelia.nyc stop. If routing tables, longest-prefix match or the words OSPF and BGP are new to you, read routing tables and dynamic routing there first, then come back.

148.8 millionminimum-size packets per second on one 100 Gb/s Ethernet port: the lookup budget is under 7 nanoseconds each
4,294,967,296possible 4-byte AS numbers, the identities networks use in BGP (RFC 6793)
TCP 179the port the whole internet's routing conversation runs on

Common mix-up: routing and forwarding are different jobs. Forwarding is the per-packet lookup, done in hardware millions of times a second. Routing is the slow conversation between routers that decides what the lookup table should say. A router can keep forwarding for a while even when its routing brain has crashed.

How it works
WatchEach chapter opens with a short narrated walkthrough. Press play.
PlayLive instruments: break a link and watch distance vector count to infinity, flood LSAs, validate a route against RPKI, push and pop MPLS labels.
ReadPlain-English sections, with "go deeper" panels for the packet formats and the maths when you want them.
Contents

Fifteen chapters, a history and a glossary