TCP/IP Sockets in C Practical Guide for Programmers

ISBN-10: 0123745403
ISBN-13: 9780123745408
Edition: 2nd 2009
List price: $33.95 Buy it from $24.16
eBook available
30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy

Description: 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  More...

New Starting from $33.53
eBooks Starting from $31.95
what's this?
Rush Rewards U
Members Receive:
You have reached 400 XP and carrot coins. That is the daily max!

Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
SQL Online content $4.95 $1.99
Add to cart
Study Briefs
MS Excel® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS Word® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS PowerPoint® 2010 Online content $4.95 $1.99

Customers also bought


Book details

List price: $33.95
Edition: 2nd
Copyright year: 2009
Publisher: Elsevier Science & Technology Books
Publication date: 3/17/2009
Binding: Paperback
Pages: 216
Size: 7.75" wide x 9.50" long x 0.50" tall
Weight: 1.166
Language: English

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. * Includes completely new and expanded sections that address the IPv6 network environment, defensive programming, and the select() system call, thereby allowing the reader to program in accordance with the most current standards for internetworking. * Streamlined and concise tutelage in conjunction with line-by-line code commentary allows readers to quickly program web-based applications without having to wade through unrelated and discursive networking tenets. * Grants the reader access to online source code, which the can then be used to directly implement sockets programming procedures.

Michael J. Donahoo teaches networking to undergraduate and graduate students at Baylor University, where he is an assistant professor. He received his Ph.D. in computer science from the Georgia Institute of Technology. His research interests are in large-scale information dissemination and management.

Kenneth L. Calvert is an associate professor at University of Kentucky, where he teaches and does research on the design and implementation of computer network protocols. He has been doing networking research since 1987, and teaching since 1991. He holds degrees from MIT, Stanford, and the University of Texas at Austin.

Preface to the Second Edition
Networks, Packets, and Protocols
About Addresses
Writing Down IP Addresses
Dealing with Two Versions
Port Numbers
Special Addresses
About Names
Clients and Servers
What Is a Socket?
Basic TCP Sockets
IPv4 TCP Client
IPv4 TCP Server
Creating and Destroying Sockets
Specifying Addresses
Generic Addresses
IPv4 Addresses
IPv4 Addresses
Generic Address Storage
Binary/String Address Conversion
Getting a Socket's Associated Addresses
Connecting a Socket
Binding to an Address
Handling Incoming Connections
Using IPv6
Of Names and Address Families
Mapping Names to Numbers
Accessing the Name Service
Details, Details
Writing Address-Generic Code
Generic TCP Client
Generic TCP Server
IPv4-IPv6 Interoperation
Getting Names from Numbers
Using UDP Sockets
UDP Client
UDP Server
Sending and Receiving with UDP Sockets
Connecting a UDP Socket
Sending and Receiving Data
Encoding Integers
Sizes of Integers
Byte Ordering
Signedness and Sign Extension
Encoding Integers by Hand
Wrapping TCP Sockets in Streams
Structure Overlays: Alignment and Padding
Strings and Text
Bit-Diddling: Encoding Booleans
Constructing, Framing, and Parsing Messages
Text-Based Message Encoding
Binary Message Encoding
Putting It All Together
Wrapping Up
Beyond Basic Socket Programming
Socket Options
Nonblocking I/O
Nonblocking Sockets
Asynchronous I/O
Per-Client Processes
Per-Client Thread
Constrained Multitasking
Multiple Recipients
Broadcast vs. Multicast
Under the Hood
Buffering and TCP
Deadlock Danger
Performance Implications
TCP Socket Life Cycle
Closing a TCP Connection
Demultiplexing Demystified
Socket Programming in C++
PracticalSocket Library Overview
Plus One Service
Plus One Server
Plus One Client
Running Server and Client
Survey Service
Survey Support Functions
Survey Server
Survey Client
Running Server and Client
Survey Service, Mark 2
Socket Address Support
Socket Iostream Interface
Enhanced Survey Server
Enhanced Survey Client
Administrative Client
Running Server and Clients

Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.