Unix Network Programming
(Vol 1: Networking APIs: Sockets and XTIUnix Network Programming
(Vol 2: Interprocess Communicationsby W. Richard Stevens
Prentice Hall
Click here for all the source examples
From the covers:
Unix Network Programming
Volume 1: Networking APIsThorough and authoritative, this book contains comprehensive coverage of the sockets API, the de-facto standard for network programming. Once the basics are covered, the author moves on to advanced sockets topics, including IPv4 and IPv6 interoperability, UNIX domain protocols, nonblocking I/O, broadcasting, multicasting, threads and routing sockets. Client/server design alternatives are also fully examined.
The only guide to UNIX network programming APIs you'll ever need. Whether you write Web servers, client/server applications, or any other network software, you need to understand networking APIS-especially sockets in greater detail than ever before. You need UNIX Network Programming, Volume 1, Second Edition.
In this book, leading UNIX networking expert W. Richard Stevens offers unprecedented, start-to-finish guidance on making the most of sockets, the de facto standard for UNIX network programming-as well as extensive coverage of the X/Open Transport Interface (XTI). Stevens begins by introducing virtually every basic capability of TCP and UDP sockets, including socket functions and options, I/O multiplexing, and name and address conversions. He presents detailed coverage of the POSIX.1g standard for sockets and the POSIX threads. He also introduces advanced techniques for:
- Establishing IPv4/IPv6 interoperability.
- Implementing non-blocking I/O.
- Routing sockets.
- Broadcasting and multicasting.
- IP options.
- Multithreading.
- Advanced name and address conversions.
- UNIX domain protocols.
- Raw sockets.
Learn how to choose among today's leading client/server design approaches, including TCP iterative, concurrent, preforked and prethreaded servers. Master the X/Open Transport Interface, including XTI TCP clients and servers, name and address functions, options, streams and additional functions.
The Internet/intranet revolution has dramatically increased the demand for developers with a sophisticated understanding of network programming APIs, especially sockets. One book contains all you need to know: UNIX Network Programming, Volume 1, Second Edition.
Unix Network Programming,
Volume 2: Interprocess CommunicationsThe only guide to UNIX® interprocess communications you'll ever need. Well-implemented interprocess communications (IPC) are key to the performance of virtually every non-trivial UNIX program. In UNIX Network Programming, Volume 2, Second Edition, legendary UNIX expert W. Richard Stevens presents a comprehensive guide to every form of IPC, including message passing, synchronization, shared memory, and Remote Procedure Calls (RPC).
Stevens begins with a basic introduction to IPC and the problems it is intended to solve. Step-by-step you'll learn how to maximize both System V IPC and the new Posix standards, which offer dramatic improvements in convenience and performance. You'll find extensive coverage of Pthreads, with many examples reflecting multiple threads instead of multiple processes. Along the way, you'll master every current IPC technique and technology, including:
- Pipes and FIFOs.
- Posix and System V Message Queues
- Mutexes and Condition Variables
- Read-Write Locks
- Record Locking
- Posix and System V Semaphores
- Posix and System V Shared Memory
- Solaris Doors and Sun RPC
- Performance Measurements of IPC Techniques
If you've read Stevens' best-selling first edition of UNIX Network Programming, this book expands its IPC coverage by a factor of five! You won't just learn about IPC "from the outside." You'll actually create implementations of Posix message queues, read-write locks, and semaphores, gaining an in-depth understanding of these capabilities you simply can't get anywhere else. The book contains extensive new source code-all carefully optimized and available on the Web. You'll even find a complete guide to measuring IPC performance with message passing bandwidth and latency programs, and thread and process synchronization programs. The better you understand IPC, the better your UNIX software will run. One book contains all you need to know: UNIX Network Programming, Volume 2, 2nd Edition.
About the Author
W. RICHARD STEVENS is author of UNIX Network Programming, First Edition, widely recognized as the classic text in UNIX networking. He is also author of Advanced Programming in the UNIX Environment and the TCP/IP Illustrated Series. Stevens is an acknowledged UNIX and networking expert, sought-after instructor, and occasional consultant.