TCP/IP Sockets in C, Second Edition: Practical Guide for Programmers, 2009, Michael J. Donahoo
This succinct new edition of our best-selling title presents everything you need know to get up and running with C sockets programming in one affordable volume! The Internet allows computers thousands of miles apart to exchange information through programs such as Web browsers, and nearly all of these programs gain access to network communication services through the sockets programming interface. TCP/IP Sockets in C: Practical Guide for Programmers is a quick and affordable way to gain the knowledge and skills needed to quickly develop sophisticated and powerful web-based applications. Written by two experienced networking instructors, the book's focused, tutorial-based approach enables the reader to master the tasks and techniques essential to virtually all client-server projects using sockets in C. Programming concepts are introduced through simple, real-world examples, and are accompanied by line-by-line code commentary that describes the purpose of each part of the program. The book's companion website also contains myriad employable examples of command-based source code discussed throughout the text. A great deal has changed in the 6 years since the first edition of this book was published. The widespread adoption of IPv6 has led to a new standard for internetworking and the exponential increase of computer processing power have enhanced the efficacy and scope of electronic espionage. Therefore, this edition has amended and expanded outdated sections in accordance with both new advancements and dangers. The book now explains both the IPv6 and IPv4 address schemes as well as how to do sockets programming in the mixed IPv6/IPv4 networks environment. It also details defensive programming strategies in the context of building security-aware distributed systems, and introduces the select() system call from a performance and predictability perspective in large systems. In summary, the book provides both a general overview of networking concepts to allow readers to synchronize the concepts with terminology, while providing a springboard to more advanced networking topics through the basic application of the latest technological developments. No other resource presents so concisely and effectively the material necessary to get up and running with C sockets programming.