Features
- Cover Type: Paperback with 1062 pages
- Published by: O'Reilly Media, Inc. December 29, 2005
- Written in: English
- ISBN 10 Number: 0596002556
- ISBN 13 Number: 978-0596002558
-
Book Dimensions:
9 x 7 x 1.7 inches
- Weighs: 2.9 pounds
Book Description
If you've ever wondered how Linux carries out the complicated tasks assigned to it by the IP protocols -- or if you just want to learn about modern networking through real-life examples --
Understanding Linux Network Internals is for you.
Like the popular O'Reilly book,
Understanding the Linux Kernel, this book clearly explains the underlying concepts and teaches you how to follow the actual C code that implements it. Although some background in the TCP/IP protocols is helpful, you can learn a great deal from this text about the protocols themselves and their uses. And if you already have a base knowledge of C, you can use the book's code walkthroughs to figure out exactly what this sophisticated part of the Linux kernel is doing.
Part of the difficulty in understanding networks -- and implementing them -- is that the tasks are broken up and performed at many different times by different pieces of code. One of the strengths of this book is to integrate the pieces and reveal the relationships between far-flung functions and data structures.
Understanding Linux Network Internals is both a big-picture discussion and a no-nonsense guide to the details of Linux networking. Topics include:
- Key problems with networking
- Network interface card (NIC) device drivers
- System initialization
- Layer 2 (link-layer) tasks and implementation
- Layer 3 (IPv4) tasks and implementation
- Neighbor infrastructure and protocols (ARP)
- Bridging
- Routing
- ICMP
Author Christian Benvenuti, an operating system designer specializing in networking, explains much more than how Linux code works. He shows the purposes of major networking features and the trade-offs involved in choosing one solution over another. A large number of flowcharts and other diagrams enhance the book's understandability.
About The Author
Christian Benvenuti received his masters degree in Computer Science at the University of Bologna in Italy. He collaborated for a few years with the International Center for Theoretical Physics (ICTP) in Trieste, where he developed ad-hoc
software based on the Linux kernel, was a scientific consultant for a project on remote collaboration, and served as an instructor for several training sessions on networking. The trainings, held mainly in Europe, Africa, and South America were all based on Linux systems and addressed to scientists from developing countries, where the ICTP has been promoting Linux for many years. He occasionally collaborates with a non-profit organization founded by ICTP members, Collaborium.org, to continue promoting Linux on developing countries. In the past few years he worked as a
software engineer for Cisco Systems in the Silicon Valley, where he focused on Layer two switching, high availability, and network security.
Reader Reviews
I have read a number of books on the TCP/IP protocols and their implementations; both the original Berkeley (BSD) Unix TCP/IP stack and the Linux TCP/IP stack. I must say that this is the best of all of them. This book makes the subject very approachable for the newcomer to network protocol software but the explanations are detailed enough to satisfy an old dog like me. Benvenuti's writing style is clear and very readable. He liberally provides diagrams to illustrate the concepts he is discussing. My only fault with the book is that the transport layer protocols (UDP and TCP) are not covered. Benvenuti provides a list of important areas of the networking software that are not covered in the book but gives other references for most of these. I hope that he is working on a volume 2 to cover these areas. I would sum up by saying that if you want to learn about the Linux networking software or network protocol software in general, start with this book. This book will give you the background to understand other, less well written books that cover the remaining networking software topics.
Comment | |
(Report this)