Apress's "The Definitive Guide to Linux Network Programming" is a clear, concise treatment of creating clients and servers under the Linux operating system. The book assumes that the readers knows C and has experience developing code on Linux, but provides everything else a programmer needs for real-world network programming, including design, implementation, debugging, and security. Readers will learn about the many kinds of socket types, sessioned vs. sessionless protocols, how to build a custom protocol, encryption, how to use SSL, and how to tunnel data.