Did all of the Requests for Comments directly affect the design of Unix networks?

No, they didn't. Some don't even apply to Unix. When Unix was in its infancy, there were dozens of operating systems out there, and dozens more came after its release. Many of them were on the ARPANet and many of them made it to the Internet. Some RFCs describe global things like the right way to write IPv6 addresses (RFC 4291), how MD5 should be implemented (RFC 1321), or why not to admire pigs flying overhead (RFC 1925). Others are more OS-specific, like Windows Kerberos password change protocols (RFC 3244).

A lot of what you see now are empirical decisions that later became standardised.

If you want to learn about Unix networking, your best bet is probably one of the books about Unix. If you want to learn about why things are the way they are, reading the source code of early Unices is an interesting exercise. But not an easy one. :)


If you want to go back to the history of recent Unix-like systems, you'd better read The Design and Implementation of the 4.4 BSD Operating System. It's old but so are unix concepts. Networking especially was designed as part of the 4.3 BSD OS, which is of course discussed thoroughly in the book. GNU/Linux systems were born after, following this model but rewritten from scratch. The networking code made is later to many other OS.

As for the standards, everything must be defined in order to achieve interoperability. So in the regard, all RFCs potentially affected the design of Unix networks and much more. Some RFC were never implemented, people are free to implement the RFC they want and make their programs implementing them available to all.

Basically, POSIX dictates a lot when it comes to UNIX systems, you might want to check it... I supposed that's more what you are really looking for as it target unix systems and specify some requirements. Keep in mind that GNU/Linux systems don't always follow POSIX as it may be considered old and rusty, some alternative and non-standards ways have emerged. This is problematic for developers working on portable programs/systems.


RFC's probably aren't the best material to read up on how to understand how Unix (or any OS for that matter) works.

RFC's document standard ways of doing things such that disparate systems can interoperate and there is some sanity in the world.

The manner in which a Unix or Linux implements said RFC's will not always be the same.

From the RFC's you'll learn a great deal about standards and protocols, you won't necessarily learn a hell of a lot about OS specific implementations.