TCP/IP Architecture, Design and Implementation in Linux
Software Engineering Best Practices (Series Nr. 1)

1. Edition December 2008
800 Pages, Hardcover
Wiley & Sons Ltd
Short Description
This book provides thorough knowledge of Linux TCP/IP stack and kernel framework for its network stack, including complete knowledge of design and implementation. Starting with simple client-server socket programs and progressing to complex design and implementation of TCP/IP protocol in Linux, this book provides different aspects of socket programming and major TCP/IP related algorithms.
The only single-source reference on the concept and implementation of TCP/IP in Linux
As open source software becomes a trusted part of business and research systems, it's no wonder that a combination of the Transmission Control Protocol/Internet Protocol (TCP/IP) and the Linux operating system is becoming more common. TCP/IP's prevalence allows easy communication among computers using various operating systems, whether Windows, Mac OS, Linux, or Unix. And Linux--because it is open source and thus modifiable--has become a frequent choice for developers who want a customizable operating system on which to build their applications.
This book describes the design and implementation of TCP/IP in Linux, from simple client-server applications to more complex executions. Topical coverage includes:
* Basic socket concepts and implementations
* The Linux implementation of network packets
* TCP read/write
* TCP algorithms for data transmission and congestion control
* TCP timers
* IP layer and routing tables implementation
* IP forwarding and quality of service implementation
* Netfilter hooks for the stacks
* Network Soft IRQ
* How to debug a TCP/IP stack
All topics are discussed in a concise, step-by-step manner and the book is complemented with helpful illustrations to give readers a better understanding of the subject. TCP/IP Architecture, Design, and Implementation in Linux is an indispensable resource for embedded-network product developers, network security product developers, IT network architects, researchers, and graduate students.
Acknowledgments.
1. INTRODUCTION.
2. PROTOCOL FUNDAMENTALS.
3. KERNEL IMPLEMENTATION OF SOCKETS.
4. KERNEL IMPLEMENTATION OF TCP CONNECTION SETUP.
5. sk_buff AND PROTOCOL HEADERS.
6. MOVEMENT OF sk_buff ACROSS PROTOCOL LAYERS.
7. TCP SEND.
8. TCP RECEIVE.
9. TCP MEMORY MANAGEMENT.
10. TCP TIMERS.
11. TCP CORE PROCESSING.
12. TCP STATE PROCESSING.
13. NETLINK SOCKETS.
14. IP ROUTING.
15. IP QUALITY OF SERVICE IN LINUX (IP QoS).
16. IP FILTER AND FIREWALL.
17. NET SOFTIRQ.
18. TRANSMISSION AND RECEPTION OF PACKETS.
19. lkcd AND DEBUGGING TCP/IP STACK.
20. NEXT EDITION.
Bibliography.
Index.
M. Ajaykumar Venkatesulu is currently working on networking and naming services. He has seven years of experience with Linux networking and kernel in research and commercial environments. His areas of interest include Linux kernel, embedded systems, IP routing, and IP QoS.