rfc·explained

Cluster

The networking basics, explained

Networking rests on two questions: which address, and how do the bytes travel. RFC 791 answers the first by defining the IPv4 packet and its 32-bit address. RFC 793 and RFC 768 answer the second, in opposite ways: TCP guarantees delivery, UDP guarantees nothing. Almost everything else is commentary on those three.

Addresses came first, and then ran out. RFC 791 gave the internet a 32-bit address, about 4.3 billion of them, which felt limitless in 1981. RFC 1918 bought two extra decades by reserving three blocks anyone may reuse inside their own network, invisible to the public internet. By 2012 even the providers had run dry, so RFC 6598 carved out a fourth block, one layer up, for carrier-grade NAT. The same trick, applied three times, to the same shortage.

Transport is the fork in the road. RFC 793 opens a connection, retransmits what is lost, puts packets back in order and slows down when the network complains. RFC 768 does none of that: eight bytes of header, no handshake, no promises. TCP is a registered letter, UDP a postcard. Neither is better; they answer different questions about what to do when a packet goes missing.

Then there is the rulebook nobody reads but everybody obeys. RFC 1122 and RFC 1123 are two halves of one document, STD 3, published the same day in 1989. They define no protocol. They walk through the ones that already existed and write down, clause by clause, the behaviour that a decade of independent implementations had been quietly disagreeing about. Independent TCP stacks interoperate because of them.

Start here

Seven pages, in the order that makes the picture come together fastest: