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.
|