The Definitive Guide to Linux Network Programming / Edition 1

Paperback (Print)
Buy New
Buy New from
Used and New from Other Sellers
Used and New from Other Sellers
from $9.74
Usually ships in 1-2 business days
(Save 80%)
Other sellers (Paperback)
  • All (15) from $9.74   
  • New (9) from $31.33   
  • Used (6) from $9.74   


The Definitive Guide to Linux Network Programming offers a clear, concise treatment of creating clients and servers under the Linux operating system. This book assumes that you know C and have experience developing code on Linux, but it provides everything else you'll need as a programmer for real-world network programming.

Whether you’re a Windows developer looking to expand to Linux, or you’re a proficient Linux developer looking to incorporate client-server programming into your applications, this book has a wealth of invaluable information to suit your needs.

This book covers design, implementation, debugging, and security. You’ll also learn about the many kinds of socket types, sessioned versus sessionless protocols, and encryption, as well as how to build a custom protocol, how to use SSL, and how to tunnel data.

Table of Contents

  1. Networks and Protocols
  2. Functions
  3. Socket Programming
  4. Protocols, Sessions, and State
  5. Client-Server Architecture
  6. Implementing Custom Protocols
  7. Design Decisions
  8. Debugging and Development Cycle
  9. Case Study: A Networked Application
  10. Securing Network Communication
  11. Authentication and Data Signing
  12. Common Security Problems
  13. Case Study: A Secure Networked Application
Read More Show Less

Product Details

  • ISBN-13: 9781590593226
  • Publisher: Apress
  • Publication date: 8/4/2004
  • Edition number: 1
  • Pages: 400
  • Product dimensions: 10.00 (w) x 7.00 (h) x 0.83 (d)

Meet the Author

Nathan Yocom has worn many hats in the IT industry over the years. He currently works as a software engineer for Bynari, Inc., specializing in messaging and groupware software. With a bachelor's degree in computer science from Pacific Lutheran University in Tacoma, Washington, Nathan is also the cofounder of XPA Systems ( and author of pGina, an open source program that simplifies the Windows logon process by providing for the authentication of a user via many different methods. In his spare time, in addition to playing the guitar and an occasional round of golf, Nathan enjoys spending time with his wife, Katie.

John Turner is an application developer and systems administrator in Detroit, Michigan, supporting the advertising and marketing campaigns of Fortune 50 clients. With over two decades of computer experience, John has designed and administered high-availability and fault-tolerant systems for the automotive, health care, and advertising industries. He coauthored the Apache Tomcat Security Handbook and is an Apache Group committer. He holds a bachelor's degree in information systems. John's industry interests include vintage hardware, open source, mobile computing, and wireless networking. His outside interests include farming, DIY projects, dogs, history, recycling, tattoos, travel, and music composition.

Keir Davis was first exposed to programming at the age of 12, when his father brought home a Texas Instruments TI-99/4A. Keir has been programming ever since and now holds a master's degree in computer science from the University of North Carolina at Greensboro. Today, Keir is the owner of Xtern Software (, a provider of custom software development services to manufacturers around the world. Keir and his wife, Jennifer, live with their two dogs, Tess and Maggie, in North Carolina. When not sitting in front of a computer, Keir enjoys playing racquetball.

Read More Show Less

Table of Contents

Pt. 1 Fundamentals 1
Ch. 1 Networks and protocols 3
Ch. 2 Functions 41
Ch. 3 Socket programming 65
Ch. 4 Protocols, sessions, and state 85
Pt. 2 Design and architecture 97
Ch. 5 Client-server architecture 99
Ch. 6 Implementing custom protocols 137
Ch. 7 Design decisions 155
Ch. 8 Debugging and development cycle 173
Ch. 9 Case study : a networked application 185
Pt. 3 Security 229
Ch. 10 Securing network communication 231
Ch. 11 Authentication and data signing 261
Ch. 12 Common security problems 281
Ch. 13 Case study : a secure networked application 301
App IPv6 341
Read More Show Less

Customer Reviews

Average Rating 4
( 1 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted October 7, 2004

    fine grained control

    I'm not sure about the 'definitive' claim in the book's title. But after reading the book, I'm quite willing to grant that the authors have indeed done a thorough job. The book calls to mind the now classic series on Internetworking, by Comer and Stevens in the early 90s. If you've been in this game long enough, you know exactly what I mean. Of course, Comer and Stevens were looking at unix boxes hooked to the Internet. But, as you can see in this book, linux network programming carries over very closely to those unix versions. And both use what is basically the same IPv4, despite the massive physical buildout of the Internet. The book's code is unabashedly C. No cute user interface to trip over. It can test your knowledge of C quite well. Partly because the coding and handling of network calls is deliberately low level. Using the book's approach, you can get a fine grained appreciation of how to talk across the Internet. Higher level languages like Java and C# come with network libraries that deliberately hide a lot of this detail. Which is good for many applications. But sometimes you might need the performance and control that this book offers.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)