|
Understanding Linux Network Internals
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.
|