This book is arguably the de-facto bible of the TCP/IP stack - one of those tomes everyone (who deals with networking) has heard of, but not many have actually read. It can be roughly divided into 3 parts:
  1. The first half of the book or so describes the low-level protocols of the stack: Ethernet / MAC and IP, as well as the supplementary management protocols ARP and ICMP, as well as some others. I also attach the chapter on UDP to this part, because UDP can be viewed as a low-level protocol, being only a wrapper around IP packets. This, IMHO, is the most important part of the book that should be read thoroughly by anyone dealing with TCP/IP networking, especially at the hardware or embedded level.
  2. Next, several chapters are spent on describing in great detail how TCP works. TCP is a complex protocol that has evolved over years (even decades) to be as efficient as possible. It has many aspects and algorithms in it, all contributing to its overall quality. I've found this part of the book tedious, as one rarely needs to go so deep into the details of TCP. It can be of great interest, however, to people implementing TCP or designing new protocols.
  3. Finally, the third part is spent on various high level (application layer) protocols - SNMP, FTP and such. This part can be read selectively by people interested in the details of a particular protocol - I doubt that many people need all of it at the same time.
Although the book is a great reference to have on your shelf, it's also written well-enough to allow fluent reading of large parts of it. It's recommended to read at least the first part wholly, and then use the book as a reference. Stevens' approach is to use many practical examples to show the points he's trying to make. He makes intensive use of the tcpdump sniffer to show how the protocols operate in practice, and spares no words on the minutest details. The approach is an engineering one - you'll find few formulas in these book, but a lot of practical examples and discussions of tradeoffs in the design of the protocols.


comments powered by Disqus