9. More References

You've come this far, and now you're screaming for more! Where else can you go to learn more about all this stuff?

9.1. Books

For old-school actual hold-it-in-your-hand pulp paper books, try some of the following excellent books. I used to be an affiliate with a very popular internet bookseller, but their new customer tracking system is incompatible with a print document. As such, I get no more kickbacks. If you feel compassion for my plight, paypal a donation to beej@beej.us. :-)

Unix Network Programming, volumes 1-2 by W. Richard Stevens. Published by Prentice Hall. ISBNs for volumes 1-2: 0131411551, 0130810819.

Internetworking with TCP/IP, volumes I-III by Douglas E. Comer and David L. Stevens. Published by Prentice Hall. ISBNs for volumes I, II, and III: 0131876716, 0130319961, 0130320714.

TCP/IP Illustrated, volumes 1-3 by W. Richard Stevens and Gary R. Wright. Published by Addison Wesley. ISBNs for volumes 1, 2, and 3 (and a 3-volume set): 0201633469, 020163354X, 0201634953, (0201776316).

TCP/IP Network Administration by Craig Hunt. Published by O'Reilly & Associates, Inc. ISBN 0596002971.

Advanced Programming in the UNIX Environment by W. Richard Stevens. Published by Addison Wesley. ISBN 0201433079.

9.2. Web References

On the web:

BSD Sockets: A Quick And Dirty Primer (Unix system programming info, too!)

The Unix Socket FAQ

Intro to TCP/IP


The Winsock FAQ

And here are some relevant Wikipedia pages:

Berkeley Sockets

Internet Protocol (IP)

Transmission Control Protocol (TCP)

User Datagram Protocol (UDP)


Serialization (packing and unpacking data)

9.3. RFCs

RFCs—the real dirt:

RFC 768—The User Datagram Protocol (UDP)

RFC 791—The Internet Protocol (IP)

RFC 793—The Transmission Control Protocol (TCP)

RFC 854—The Telnet Protocol

RFC 951—The Bootstrap Protocol (BOOTP)

RFC 1350—The Trivial File Transfer Protocol (TFTP)

RFC 4506—External Data Representation Standard (XDR)

The IETF has a nice online tool for searching and browsing RFCs.