Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Understanding Linux network internals
Benvenuti C., O’Reilly Media, Inc., Sebastopol, CA, 2005. 1062 pp. Type: Book (9780596002558)
Date Reviewed: Mar 20 2007

With network connectivity becoming almost ubiquitous, we take it for granted that a device can be plugged into a network and work seamlessly. Behind the scenes, however, the networking stack of the device is doing a hard and tedious job: configuring the network interfaces, sending and receiving packets from the network interface to the kernel and up to the application layer, routing packets, shaping the traffic, and filtering incoming and outgoing packets.

All of these tasks are done silently by the kernel and very rarely is a user concerned or even aware of its existence. This book unveils this hidden activity and shows how it is implemented by a modern operating system (Linux). Using Linux as an underlying support is very judicious, given its open-source nature and its large user base. I very much admire this excellent work; the author has provided one of the best introductions to the innermost implementation details of the networking stacks in Linux.

Although written in a very pedagogical way, with numerous illustrations and many chapters and sections self-contained in terms of the knowledge needed, this book is highly technical and requires a background in Linux kernel architecture and system programming. I will not provide a chapter-by-chapter overview for the book, because it would be impossible to adequately cover the 1,000-plus pages. Among the many topics addressed by the book are network device driver implementations in Linux, communications between the kernel and the device drivers, bridging and spanning tree implementation, the Linux Internet protocol version 4 (IPv4) stack, and the description of the routing plane in Linux. Each of these topics is covered by multiple chapters, where the general presentation consists of a first chapter addressing the basic concepts, followed by other chapters describing the detailed implementation in the Linux kernel of the particular function. The typical presentation of such a function covers both the fundamental data structures required by the implementation, as well as the relevant pseudocode.

This is an outstanding book on a very relevant and important aspect of the Linux kernel. Those interested in Linux kernel programming or embedded Linux, as well as those who want to learn about how system-level implementations of a networking stack are done are encouraged to read it. Graduate students taking a class on operating systems or advanced networking should also consider it. This book can be read either in a linear manner from cover to cover, or in a more selective section- or chapter-driven fashion. As of today, this is the ultimate and most detailed reference guide to the Linux network stack.

Reviewer:  Radu State Review #: CR134057 (0803-0240)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Linux (D.4.0 ... )
 
 
Network Communication (D.4.4 ... )
 
 
General (C.2.0 )
 
Would you recommend this review?
yes
no
Other reviews under "Linux": Date
LINUX
Strobel S. (ed), Uhl T. (ed), Springer-Verlag New York, Inc., New York, NY, 1994. Type: Book (9780387580777)
Jun 1 1995
Linux network administrator’s guide
Kirch O., O’Reilly & Associates, Inc., Sebastopol, CA, 1995. Type: Book (9781565920873)
Aug 1 1996
Linux multimedia guide
Tranter J., O’Reilly & Associates, Inc., Sebastopol, CA, 1996. Type: Book (9781565922198)
Feb 1 1998
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy