|
|||||||||||||||||||||||||||||||||||
|
19 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
51 of 52 people found the following review helpful:
5.0 out of 5 stars
A difficult read but well worth it,
By
Amazon Verified Purchase(What's this?)
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
I bought this book shortly after finishing Volume 1. With volume 1, I found myself staying up late to read more, but volume 2 gets tiring after a while... it's literally a detailed analysis of every single line of networking code in the BSD 4.3 kernel. Although it's well worth the effort, I found myself reading no more than about 10 pages at a time (constantly flipping back, sometimes almost all the way to the beginning, to re-read something I hadn't quite absorbed the first time).Difficulty aside, this book alone will honestly make you a TCP/IP guru - now that I've read volumes 1 and 2, the networking administrators where I work come to me with questions about issues they can't resolve. I'm literally comfortable saying that there's nothing I don't know about TCP/IP, and that's not a statement I'd make lightly (feel free to test me). But more than that, I learned a *lot* about writing good, solid code... in learning the networking stack as a whole, I was able to understand some higher-level software engineering concepts that had previously eluded me. All in all, volume 1 is The Hobbit, and volume 2 is the Lord of the Rings - an oddysey not to be undertaken lightly, but from which you will emerge stronger and more powerful than ever before.
50 of 51 people found the following review helpful:
4.0 out of 5 stars
Dated but still good....,
By Dr. Lee D. Carlson (Baltimore, Maryland USA) - See all my reviews (VINE VOICE) (HALL OF FAME REVIEWER) (REAL NAME)
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
Even though this book was first published in 1995, it still serves as a useful research and reference guide to those involved in changing the TCP/IP protocol or the mathematical and simulation modeling of it. Most of the source code is included for the protocol and UDP is treated also, with Berkeley TCP/IP used as the protocol implementation. A brief introduction to descriptors and memory buffers is given in Chapter 1, along with a discussion of input processing. The authors treat memory buffers (Mbufs) in detail in Chapter 2. Four different types of Mbufs are used in the protocol, depending on the flag setting in the m_flags member of the header. The source code clearly illustrates the data structures used for the Mbufs. This is followed by a detailed discussion of the Mbuf macros and functions. This is followed in the next chapter with a discussion of the interface layer and the all-important sockaddr data structure. In addition, the system initialization procedures are treated very nicely. This is followed by a very informative overview of the Ethernet interface, with most of the source code omitted since it is hardware specific. The LANCE driver is discussed thoroughly in this chapter. Then, in the next chapter, the SLIP and loopback interfaces are discussed with a very effective diagram used to illustrate the device drivers. The authors do manage to spend a few helpful paragraphs on SLIP performance considerations. Chapter 6 is a very detailed treatment of IP addressing, the most useful discussion being the one on the in_ifinit function. This is followed by a discussion of the data structures used in domains and group protocols, with the IP initialization and transport multiplexing discussion being of particular interest to me. The next 3 chapters give an overview of the IP layer, with IP packet structures and processing, option processing, and fragmentation and assembly all given detailed treatments. The performance issues involved in computing checksums and data copying are discussed also. The treatment of timeout processing by the function ip_slowtimo, which is very important from a modeling perspective, was given a thorough treatment. ICMP is discussed in Chapter 11, with an extensive table included of the ICMP message types and codes. The discussion on error processing was particularly useful. This is followed in Chapter 12 by a survey on how IP multicasting is implemented along with Ethernet multicast addresses. A brief discussion of performance issues involved with Ethernet cards not supporting perfect filtering is given. IGMP is then taken up in the next chapter, with a good discussion given of the virtual interface table in IP multicasting given in the next chapter. The authors carefully discuss the difference between physical interfaces and tunnels. The most useful discussion in the book for me was the one on sockets in chapters 15, 16, and 17. The code for the socket data structure is given and a very detailed overview of socket system calls is given. The discussion of the listen and accept system calls is very helpful in understanding the process by which TCP sets up a connection. A full description is given of each macro and function involved in socket buffer allocation and manipulation. Tree routing tables are discussed in chapters 18, 19, and 20, with emphasis on the structure of the radix tree routing tables used by packets, the interface functions between the kernel and the radix tree functions, and the routing sockets used to exchange routing messages. The discussion is extremely detailed, and the authors take great care in explaining the relevant data structures and function calls used. ARP is discussed in Chapter 21, with a useful diagram given illustrating the relationship between ARP and routing tables and interface data structures. The structure of the ARP packet when transmitted on an Ethernet channel is shown in detail. Most interesting was the discussion on the algorithm used to avoid ARP flooding. Protocol control blocks are discussed in the next chapter, with detailed treatments of binding, connecting, and demultiplexing. The handling of ICMP errors with the in_pcbnotify function is surveyed, with a detailed diagram summarizing how ICMP errors are processed. The actual UDP implementation is discussed in Chapter 23, and the authors show how checksumming is done in this protocol. This is followed naturally by a discussion of the TCP implementation in the next 6 chapters. The reader can clearly see the difference in complexity between UDP and TCP in terms of the number of function calls and lines of code. A complete listing of the statistics used in the tcpstat data structure is given along with a listing of the SNMP variables used in tcp group. The TCP state transition diagram, familiar from Volume 1 by Stevens is given here also. The discussion of the seven TCP timers is very detailed and very helpful to those involved in the modeling of TCP performance. In particular the discussion of the tcp_xmit_timer function, which updates the smoothed RTT estimator and the smoothed mean deviation estimator, is very well written. Retransmission timeouts, the occurrence of which is so important in performance analysis and network troubleshooting, is given ample treatment also. Most interesting was the discussion on determining when a segment should be sent, via the tcp_output function. Also, the reassembly mechanism with the tcp_reass function is discussed in great detail. The reader who needs to be a TCP expert should take away a thorough understanding of it when completing these chapters. The book ends with a fairly detailed treatment of the BSD Packet Filter and raw IP. Noticeably missing of course, because of its age, is a discussion of the different versions of TCP/IP currently implemented in Windows 2000, Sun Solaris etc, which are slightly different. The reader will have to consult the Web or modern books to get an understanding of these implementations.
21 of 21 people found the following review helpful:
5.0 out of 5 stars
TCP/IP De-Mystified and Revealed,
By Nirav Raval (Canada) - See all my reviews
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
I was always fascinated by the way computers were connected over the networks and communicated. Being a software programmer, I was looking for a book which could explain how the internet protocols work. TCP/IP Illustrated gave me an excellent and in-depth details of how TCP/IP is implemented with a unique line by line explanation of source code and clear diagrams. The book is an absolute must on every network programmer's book shelf and for anyone like me interested in getting closer look at the way TCP/IP functions.
18 of 18 people found the following review helpful:
5.0 out of 5 stars
The best hard-core TCP/IP book out there. Period.,
By Geogia Tech Student (Atlanta, GA) - See all my reviews
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
This book requires a strong knowledge of TCP/IP in order to get the most from it. Once you have that, I recommend that you read this book in order to get a firm understanding of how TCP/IP actually WORKS. Be advised, though...this text is a borderline reference book. Stevens (as you probably know) has a dry writing style, so be sure to fill up on your favorite caffinated drink before digging in ;)
18 of 18 people found the following review helpful:
5.0 out of 5 stars
Impressive,
By A Customer
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
If you want to know the internal mechanisms used to build an IP stack, and how the mechanisms are implemented, this is the book to refer to. The level of detail is very impressive. Although Vol.1 can be read as a text book, Vol.2 is really a reference book with a large quantity of code. It is very easy to read and well indexed (very important for a book of this nature). Simply put, it's one of the best TCP/IP implementation books I've encountered yet.
12 of 12 people found the following review helpful:
5.0 out of 5 stars
Essential if you are going to be a HardCore TCP/IP guru,
By A Customer
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
Again Stevens is on the real work in this book. My comment is simple; buy this book if you really like to be a IP guru.. If you startas a novice I advise you to buy the first volume of this book as well..
7 of 7 people found the following review helpful:
5.0 out of 5 stars
Overview,
By "pavii" (USA) - See all my reviews
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
An elaborate description of network implementation and working of transport layer protocols. Like all of Richard Steven's books, this one too has a large number of code examples to explain the usage of the data structures and the API used for writing networking applications. The book offers a great index for backreferencing. Covers all important layer 3 and 4 protocols and the various services offered by them. The code examples provide an excellent first step for starting network programmers and a useful reference for the experienced.
12 of 14 people found the following review helpful:
1.0 out of 5 stars
Kindle version of this book has rendering problems,
By
Amazon Verified Purchase(What's this?)
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Kindle Edition)
Because this is a book I like to keep with me and it is very heavy, I was thrilled to see there is a Kindle version. Unfortunately within the first 10 pages of the book it becomes clear that is a bad idea because the first long code sample can't be read: it cuts off after 10 lines. If you go to the next page and then back the two pages overlay each other in an unreadable mess.
I hope they correct this because I'd love to have this book on my Kindle.
6 of 6 people found the following review helpful:
5.0 out of 5 stars
An inside view of TCP/IP and sorrounding service protocols,
By
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
A source book for developers, and everyone interested in study the IP protocol and sorrounding protocols: a Packet Switching delivery service.
Interesting Programming topics: * Jump Table (Figure 3.11, page 71) by which network device specific details are isolated from the Network Layer. * Relationship between Network Packet Structures (in memory) and the Source code that manipulate them as in page 90-91: the Ethernet frame structure. Interesting Protocol internal topics: * Device driver modular diagrams as in page 101: Ethernet device driver. * IP Packets with Option processing and how fragmentation is worked out (pages 210-216) * The major and most important self-question and function of IP routers: "To Forward or Not To Foward" an IP Packet. A detail description of final destination and other decision topics: routing, fragmentation, reassembly, option processing (pages 217-300). * ICMP: the Control Message protocol used by IP to exchange control and service information between nodes. Description of ICMP input processing (diagram and source code at pages 310-313), correction of meaning name "ping" (page 316), redirect processing. * TCP Protocol: as a state dependant protocol (pages 802-994). Describes the state transition, initial state and final state hand-shake, and control timers (pages 817-847) including an interesting retransmission timeout computing formula (pages 831-847).
4 of 5 people found the following review helpful:
5.0 out of 5 stars
Classic work - but in series need of updates as time goes on,
By David Sharpe (Virginia, USA) - See all my reviews
This review is from: TCP/IP Illustrated, Vol. 2: The Implementation (Hardcover)
I cannot fathom a guess as to how many times the books in this series have saved my in project work over the years. The only drawback with this series is that some publisher should endeavor to keep them up to date. Serious Unix system programmers must have copies of the complete series.
|
|
Most Helpful First | Newest First
|
|
TCP/IP Illustrated, Vol. 2: The Implementation by W. Richard Stevens (Hardcover - February 10, 1995)
$84.99 $58.99
In Stock | ||