Magnificent Marvel Supersale

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to
for a chance to win.
Privacy Policy

Visit our stores

    Recently Viewed clear list

    Original Essays | March 11, 2015

    Mark Adams: IMG All Signs Point to Atlantis

    When I tell people I've spent the last three years working on a book about Atlantis, they usually have two questions. The first almost always goes... Continue »

Qualifying orders ship free.
New Trade Paper
Ships in 1 to 3 days
Add to Wishlist
available for shipping or prepaid pickup only
Available for In-store Pickup
in 7 to 12 days
Qty Store Section
25 Remote Warehouse Operating Systems- Linux

Understanding Linux Network Internals


Understanding Linux Network Internals Cover


Synopses & Reviews

Publisher Comments:

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.


Benvenuti describes the relationship between the Internet's TCP/IP implementation and the Linux Kernel so that programmers and advanced administrators can modify and fine-tune their network environment.

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

Table of Contents

  • Preface
  • Part I: General Background
    • Chapter 1: Introduction
    • Chapter 2: Critical Data Structures
    • Chapter 3: User-Space-to-Kernel Interface
  • Part II: System Initialization
    • Chapter 4: Notification Chains
    • Chapter 5: Network Device Initialization
    • Chapter 6: The PCI Layer and Network Interface Cards
    • Chapter 7: Kernel Infrastructure for Component Initialization
    • Chapter 8: Device Registration and Initialization
  • Part III: Transmission and Reception
    • Chapter 9: Interrupts and Network Drivers
    • Chapter 10: Frame Reception
    • Chapter 11: Frame Transmission
    • Chapter 12: General and Reference Material About Interrupts
    • Chapter 13: Protocol Handlers
  • Part IV: Bridging
    • Chapter 14: Bridging: Concepts
    • Chapter 15: Bridging: The Spanning Tree Protocol
    • Chapter 16: Bridging: Linux Implementation
    • Chapter 17: Bridging: Miscellaneous Topics
  • Part V: Internet Protocol Version 4 (IPv4)
    • Chapter 18: Internet Protocol Version 4 (IPv4): Concepts
    • Chapter 19: Internet Protocol Version 4 (IPv4): Linux Foundations and Features
    • Chapter 20: Internet Protocol Version 4 (IPv4): Forwarding and Local Delivery
    • Chapter 21: Internet Protocol Version 4 (IPv4): Transmission
    • Chapter 22: Internet Protocol Version 4 (IPv4): Handling Fragmentation
    • Chapter 23: Internet Protocol Version 4 (IPv4): Miscellaneous Topics
    • Chapter 24: Layer Four Protocol and Raw IP Handling
    • Chapter 25: Internet Control Message Protocol (ICMPv4)
  • Part VI: Neighboring Subsystem
    • Chapter 26: Neighboring Subsystem: Concepts
    • Chapter 27: Neighboring Subsystem: Infrastructure
    • Chapter 28: Neighboring Subsystem: Address Resolution Protocol (ARP)
    • Chapter 29: Neighboring Subsystem: Miscellaneous Topics
  • Part VII: Routing
    • Chapter 30: Routing: Concepts
    • Chapter 31: Routing: Advanced
    • Chapter 32: Routing: Li nux Implementation
    • Chapter 33: Routing: The Routing Cache
    • Chapter 34: Routing: Routing Tables
    • Chapter 35: Routing: Lookups
    • Chapter 36: Routing: Miscellaneous Topics
  • Colophon

Product Details

Benvenuti, Christian
O'Reilly Media
Networking - General
Operating systems (computers)
Operating Systems - LINUX
bound method OnixProduct.onix_keyword_string of
class pyonix.model.onix_product.OnixProduct
Graph identifier=iCUUrOCV25932 (
class rdflib.Graph.ConjunctiveGraph
rdflib.URIRef( )
CourseSmart Subject Description
rseSmart Subject Description
Edition Description:
Print PDF
Publication Date:
7 x 7 x 1.9 in 2.89 lb

Other books you might like

  1. Understanding the Linux Kernel 3RD... Used Trade Paper $29.00

Related Subjects

Children's » General
Computers and Internet » Networking » General
Computers and Internet » Operating Systems » Linux
Computers and Internet » Operating Systems » Unix » Unix Administration
Metaphysics » General

Understanding Linux Network Internals New Trade Paper
0 stars - 0 reviews
$59.99 In Stock
Product details 1066 pages O'Reilly Media - English 9780596002558 Reviews:
"Synopsis" by ,
Benvenuti describes the relationship between the Internet's TCP/IP implementation and the Linux Kernel so that programmers and advanced administrators can modify and fine-tune their network environment.
  • back to top


Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at