Provides students with the foundational knowledge they need to learn about the complex, network subsystem in the Linux kernel.
Gives students the essential components they need to understand the Linux kernel which they can apply to the study of new network functionalities.
Includes an introduction of the general architecture of communication systems and the functionality of protocols and protocol instances, including the popular TCP/IP and ISO/OSI layering models.
Shows how networking behavior and protocols can be used within the Linux operating system.
Explanation of this browser is provided in the appendix to help students improve navigation through the kernel source code.
Written to give students and professionals the basics required to implement network functionality in the Linux kernel, this book also addresses everyone who wants to deepen their understanding of network specific processes in an operating system. This book introduces the key components and mechanisms of the Linux kernel and the designs of communication systems.
The Linux Networking Architecture is a detailed description of the network subsystem in the newer versions of the Linux kernel. It explains how protocols work and establishes important concepts of the Linux network architecture from device drivers to application interfaces. In addition to central issues such as PPP, IP, firewalls, routing, TCP, NAT, UDP, and sockets, the book discusses more recent protocols and extensions such as PPPoE used in DSL access technologies, the Bluetooth® driver, and quality-of-service support.Features
All core protocols of the TCP/IP protocol family are covered, with additional treatment of supplementary protocols such as RSVP, Mobile IP and IP Security.
Each chapter contains:
Interface design is explained with a view to which design principles to use when protocols should be implemented.
The informational appendix further facilitates working with Linux, for instance, debugging in the Linux kernel.
I. THE LINUX KERNEL.1. Introduction.
II. ARCHITECTURE OF NETWORK IMPLEMENTATION.2. Layered Architectures, Services and Protocols.
III. LAYER I & II—MEDIUM ACCESS AND LOGICAL LINK LAYER.6. Introduction.
IV. LAYER III—NETWORK LAYER.12. Introduction.
V. LAYER IV—TRANSPORT LAYER.24. Introduction.
VI. LAYER V—APPLICATION LAYER.27. Network Programming with Sockets.
VII. APPENDIX.A. The LXR Source Code Browser.