UNIX Network Programming

by W. Richard Stevens
Prentice Hall Professional Technical Reference
0-13-949876-1 * Hardback * 768 pages * ©1990

Ordering information


Table of Contents

Chapter 1. Introduction
History * Layering * OSI Model * Processes * A Simplified Model * Client-Server Model * Plan of the Book * A History of Unix Networking

Chapter 2. The Unix Model
Introduction * Basic Definitions * Input and Output * Signals * Process Control * Daemon Processes * Summary

Chapter 3. Interprocess Communication
Introduction * File and Record Locking * A Simple Client-Server Example * Pipes * FIFOs * Streams and Messages * Name Spaces * System V IPC * Message Queues * Semaphores * Shared Memory * Sockets and TLI * Summary

Chapter 4. A Network Primer

Chapter 5. Communication Protocols
Introduction * TCP/IP--the Internet Protocols * XNS--Xerox Network Systems * SNA--Systems Network Architecture * NetBIOS * OSI Protocols * UUCP--Unix-to-Unix Copy * Protocol Comparisons * Summary

Chapter 6. Berkeley Sockets
Introduction * Overview * Unix Domain Protocols * Socket Addresses * Elementary Socket System Calls * A Simple Example * Advanced Socket System Calls * Reserved Ports * Stream Pipes * Passing File Descriptors * Socket Options * Asynchronous I/O * Input/Output Multiplexing * Out-of-Band Data * Sockets and Signals * Internet Superserver * Socket Implementation * Summary

Chapter 7. System V Transport Layer Interface
Introduction * Overview * Transport Endpoint Addresses * Elementary TLI Functions * A Simple Example * Advanced TLI Functions * Streams * TLI Implementation * Stream Pipes * Passing File Descriptors * Input/Output Multiplexing * Asynchronous I/O * Out-of-Band Data * Summary

Chapter 8. Library Routines
Introduction * Berkeley Network Library Routines * Network Utility Routines * Providing a Reliable Message Service * Summary

Chapter 9. Security
Introduction * 4.3BSD Routines * Kerberos * Summary

Chapter 10. Time and Date Routines
Introduction * Internet Time and Date Client * Network Time Synchronization * Summary

Chapter 11. Ping Routines
Introduction * Internet Ping Client * XNS Echo Client * Summary

Chapter 12. Trivial File Transfer Protocol
Introduction * Protocol * Security * Data Formats * Connections * Client User Interface * UDP Implementation * TCP Implementation * Summary

Chapter 13. Line Printer Spoolers
Introduction * 4.3BSD Print Spooler * 4.3BSD lpr Client * System V Print Spooler * Summary

Chapter 14. Remote Command Execution
Introduction * Security Issues * rcmd Function and rshd Server * rexec Function and rexecd Server * Summary

Chapter 15. Remote Login
Introduction * Terminal Line Disciplines * A Simple Example * Pseudo-Terminals * Terminal Modes * Control Terminals (Again) * rlogin Overview * Windowing Environments * Flow Control * Pseudo-Terminal Packet Mode * rlogin Client * rlogin Server * Summary

Chapter 16. Remote Tape Drive Access
Introduction * Unix Tape Drive Handling * rmt Protocol * rmt Server * Summary

Chapter 17. Performance
Introduction * IPC Performance * Tape Performance * Disk Performance * Network Performance * Summary

Chapter 18. Remote Procedure Calls
Introduction * Transparency Issues * Sun RPC * Xerox Courier * Apollo RPC * Summary

Appendix A. Miscellaneous Source Code
System Type Header File * System Type Shell Script * Standard Error Routines * Timer Routines

Bibliography

Index