Effective TCP/IP Programming by Jon C. Snader

Effective TCP/IP Programming

by Jon C. Snader

Price: £36.99

Discount: 15%
RRP: 43.99

More Details

Description

Programming in TCP/IP can seem deceptively simple. Nonetheless, many network programmers recognize that their applications could be much more robust. Effective TCP/IP Programming is designed to boost programmers to a higher level of competence by focusing on the protocol suite's more subtle features and techniques. It gives you the know-how you need to produce highly effective TCP/IP programs.

In forty-four concise, self-contained lessons, this book offers experience-based tips, practices, and rules of thumb for learning high-performance TCP/IP programming techniques. Moreover, it shows you how to avoid many of TCP/IP's most common trouble spots. Effective TCP/IP Programming offers valuable advice on such topics as:
* Exploring IP addressing, subnets, and CIDR
* Preferring the sockets interface over XTI/TLI
* Using two TCP connections
* Making your applications event-driven
* Using one large write instead of multiple small writes
* Avoiding data copying
* Understanding what TCP reliability really means
* Recognizing the effects of buffer sizes
* Using tcpdump, traceroute, netstat, and ping effectively Numerous examples demonstrate essential ideas and concepts. Skeleton code and a library of common functions allow you to write applications without having to worry about routine chores.

Through individual tips and explanations, you will acquire an overall understanding of TCP/IP's inner workings and the practical knowledge needed to put it to work. Using Effective TCP/IP Programming, you'll speed through the learning process and quickly achieve the programming capabilities of a seasoned pro.

0201615894B04062001

CONTENTS:

Preface.

1. Introduction.

A Few Conventions.

Road Map to the Rest of the Book.

Client-Server Architecture.

Basic Sockets API Review.

Summary.

2. Basics.

Tip 1: Understand the Difference between Connected and Connectionless Protocols.

Tip 2: Understand Subnets and CIDR.

Tip 3: Understand Private Addresses and NAT.

Tip 4: Develop and Use Application Skeletons.

Tip 5: Prefer the Sockets Interface to XTI/TLI.

Tip 6: Remember That TCP Is a Stream Protocol.

Tip 7: Don't Underestimate the Performance of TCP.

Tip 8: Avoid Reinventing TCP.

Tip 9: Realize That TCP Is a Reliable Protocol, Not an Infallible Protocol.

Tip 10: Remember That TCP/IP Is Not Polled.

Tip 11: Be Prepared for Rude Behavior from a Peer.

Tip 12: Don't Assume That a Successful LAN Strategy Will Scale to a WAN.

Tip 13: Learn How the Protocols Work.

Tip 14: Don't Take the OSI Seven-Layer Reference Model Too Seriously.

3. Building Effective and Robust Network Programs.

Tip 15: Understand the TCP Write Operation.

Tip 16: Understand the TCP Orderly Release Operation.

Tip 17: Consider Letting inetd Launch Your Application.

Tip 18: Consider Letting tcpmux Assign Your Server's Well-Known Port.

Tip 19: Consider Using Two TCP Connections.

Tip 20: Consider Making Your Applications Event Driven (1).

Tip 21: Consider Making Your Applications Event Driven (2).

Tip 22: Don't Use TIME-WAIT Assassination to Close a Connection.

Tip 23: Servers Should Set the SO_REUSEADDR Option.

Tip 24: When Possible, Use One Large Write Instead of Multiple Small Writes.

Tip 25: Understand How to Time Out a Connect Call.

Tip 26: Avoid Data Copying.

Tip 27: Zero the sockaddr_in Structure Before Use.

Tip 28: Don't Forget about Byte Sex.

Tip 29: Don't Hardcode IP Addresses or Port Numbers in Your Application.

Tip 30: Understand Connected UDP Sockets.

Tip 31: Remember That All the World's Not C.

Tip 32: Understand the Effects of Buffer Sizes.

4. Tools and Resources.

Tip 33: Become Familiar with the ping Utility.

Tip 34: Learn to Use tcpdump or a Similar Tool.

Tip 35: Learn to Use traceroute.

Tip 36: Learn to Use ttcp.

Tip 37: Learn to Use lsof.

Tip 38: Learn to Use netstat.

Tip 39: Learn to Use Your System's Call Trace Facility.

Tip 40: Build and Use a Tool to Capture ICMP Messages.

Tip 41: Read Stevens.

Tip 42: Read Code.

Tip 43: Visit the RFC Editor's Page.

Tip 44: Frequent the News Groups.

Appendix A: Miscellaneous UNIX Code.

etcp.h Header.

The daemon Function.

The signal Function.

Appendix B: Miscellaneous Windows Code.

The skel.h Header.

Windows Compatibility Routines.

Bibliography.

Index. 0201615894T04062001
Published

01 May 2000

Publisher

ADDISON-WESLEY

ISBN

9780201615890

Pages

288

Static Book Details Index Page - Click Here to go to Computer Manuals Website