TCP/IP Sockets in C,
Edition 1 Practical Guide for Programmers
By Michael J. Donahoo and Kenneth L. Calvert

Publication Date: 14 Nov 2001
Description

For example code from the text, Winsock adaptations of text code, sample programming exercises and more,click on the grey "COMPANION SITE" button to the right.

Note: This title was formerly known as Pocket Guide to TCP/IP Socket Programming in C, ISBN 1-55860-686-6.TCP/IP Sockets in C: Practical Guide for Programmers is a quick and affordable way to gain the knowledge and skills you need to develop sophisticated and powerful networked-based programs using sockets. Written by two experienced networking instructors, this book provides a series of examples that demonstrate basic sockets techniques for clients and servers.

Using plenty of real-world examples, this book is a complete beginner's guide to socket programming and a springboard to more advanced networking topics, including multimedia protocols.

Key Features

*Concise, no-nonsense explanations of issues often troublesome for beginners, including message construction and parsing. *Comprehensive example-based coverage of the most important TCP/IP techniques-including iterative and concurrent servers, timeouts, and asynchronous message processing. *Includes a detailed, easy-to-use reference to the system calls and auxiliary routines that comprise the sockets interface. *A companion Web site provides source code for all example programs in both C and WinSock versions, as well as guidance on running the code on various platforms.
About the author
By Michael J. Donahoo, Baylor University, Waco, TX, USA and Kenneth L. Calvert, University of Kentucky, Lexington, KY, USA
Table of Contents
I Tutorial1 Introduction1.1 Networks, Packets and Protocols1.2 About Addresses1.3 Clients and Servers1.4 What is a Socket?2 Basic Sockets2.1 Creating and Destroying2.2 Specifying Addresses2.3 TCP Client2.4 TCP Server3 Constructing Messages3.1 Encoding Data3.2 Byte Ordering3.3 Alignment and Padding3.4 Framing and Parsing4 Using UDP Sockets4.1 UDP Client4.2 UDP Server4.3 Sending and Receiving with UDP Sockets5 Socket Programming5.1 Socket Options5.2 Signals5.3 Nonblocking I/O5.3.1 Nonblocking Sockets5.3.2 Asynchronous I/O5.3.3 Timeouts5.4 Multitasking5.4.1 Per-client Processes5.4.2 Per-client Thread5.4.3 Constrained-Multitasking5.5 Multiplexing5.6 Multiple Recipients5.6.1 Broadcast5.6.2 Multicast5.6.3 Broadcast vs. Multicast6 Under The Hood6.1 Buffering and TCP6.2 Deadlock6.3 Performance Implications6.4 TCP Socket Life Cycle6.4.1 Connecting6.4.2 Closing A TCP Connection6.5 Demultiplexing Demystified7 Domain Name Service7.1 Mapping Between Names and Internet addresses7.2 Finding Service Information by NameII API ReferenceData Structuressockaddrsockaddr_inSocket Setupsocket()bind()getsockname()Socket Connectionconnect() listen()accept()getpeername()Socket Communicationsend() sendto()recv()recvfrom()close()shutdown()Socket Controlgetsockopt()setsockopt()Binary/String Conversioninet_ntoa()inet_addr()htons(), htonl(), ntohs(), ntohl()Host and Service Informationgethostname()gethostbyname()gethostbyaddr()getservbyname()getservbyport()
Book details
ISBN: 9781558608269
Page Count: 160
Retail Price : £24.99
Audience
network programers, application developers, software engineers and computer science students studying networking