In this book, the authors offer unprecedented, start-to-finish guidance on making the most of sockets, the de facto standard for UNIX network programming. The authors begin by introducing virtually every basic capability of TCP and UDP sockets, including socket functions and options, I/O multiplexing, and name and address conversions. They present detailed coverage of the Posix.1g standard for sockets and the Posix threads. They also introduce 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, and raw sockets. Teaches students how to choose among today's leading client/server design approaches, including TCP iterative, concurrent, preforked and prethreaded servers. The Internet/intranet revolution has dramatically increased the demand for students graduating with a sophisticated understanding of network programming APIs, especially sockets. This book helps students achieve that goal.