did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780131411555

Unix Network Programming, Volume 1 The Sockets Networking API

by ; ;
  • ISBN13:

    9780131411555

  • ISBN10:

    0131411551

  • Edition: 3rd
  • Format: Hardcover
  • Copyright: 2003-11-14
  • Publisher: Addison-Wesley Professional

Note: Supplemental materials are not guaranteed with Rental or Used book purchases.

Purchase Benefits

  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $79.99 Save up to $20.00
  • Buy Used
    $59.99
    Add to Cart Free Shipping Icon Free Shipping

    USUALLY SHIPS IN 2-4 BUSINESS DAYS

Supplemental Materials

What is included with this book?

Summary

To build today's highly distributed, networked applications and services, you need deep mastery of sockets and other key networking APIs. One book delivers comprehensive, start-to-finish guidance for building robust, high-performance networked systems in any environment: UNIX Network Programming, Volume 1, Third Edition.

Author Biography

The late W. Richard Stevens was the original author of UNIX Network Programming, First and Second Editions, widely recognized as the classic texts in UNIX networking Bill Fenner is Principal Technical Staff Member at AT&T Labs in Menlo Park, CA Andrew M. Rudoff, Senior Software Engineer at Sun Microsystems

Table of Contents

Forewordp. xvii
Prefacep. xix
Introduction and TCP/IPp. 1
Introductionp. 3
The Transport Layer: TCP, UDP, and SCTPp. 31
Elementary Socketsp. 65
Sockets Introductionp. 67
Elementary TCP Socketsp. 95
TCP Client/Server Examplep. 121
I/O Multiplexing: The select and poll Functionsp. 153
Socket Optionsp. 191
Elementary UDP Socketsp. 239
Elementary SCTP Socketsp. 267
SCTP Client/Server Examplep. 287
Name and Address Conversionsp. 303
Advanced Socketsp. 351
IPv4 and IPv6 Interoperabilityp. 353
Daemon Processes and the inetd Superserverp. 363
Advanced I/O Functionsp. 381
Unix Domain Protocolsp. 411
Nonblocking I/Op. 435
ioctl Operationsp. 465
Routing Socketsp. 485
Key Management Socketsp. 511
Broadcastingp. 529
Multicastingp. 549
Advanced UDP Socketsp. 587
Advanced SCTP Socketsp. 621
Out-of-Band Datap. 645
Signal-Driven I/Op. 663
Threadsp. 675
IP Optionsp. 709
Raw Socketsp. 735
Datalink Accessp. 787
Client/Server Design Alternativesp. 817
Streamsp. 851
IPv4, IPv6, ICMPv4, and ICMPv6p. 869
Introductionp. 869
IPv4 Headerp. 869
IPv6 Headerp. 871
IPv4 Addressesp. 874
IPv6 Addressesp. 877
Internet Control Message Protocols (ICMPv4 and ICMPv6)p. 882
Virtual Networksp. 885
Introductionp. 885
The MBonep. 885
The 6bonep. 887
IPv6 Transition: 6to4p. 889
Debugging Techniquesp. 891
System Call Tracingp. 891
Standard Internet Servicesp. 893
sock Programp. 893
Small Test Programsp. 896
tcpdum Programp. 896
netstat Programp. 896
lsof Programp. 897
Miscellaneous Source Codep. 899
unp.h Headerp. 899
config.h Headerp. 904
Standard Error Functionsp. 910
Solutions to Selected Exercisesp. 913
Bibliographyp. 947
Indexp. 955
Table of Contents provided by Ingram. All Rights Reserved.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Excerpts

Preface Introduction This book is for people who want to write programs that communicate with each otherusing an application program interface (API) known as sockets. Some readers may bevery familiar with sockets already, as that model has become synonymous with networkprogramming. Others may need an introduction to sockets from the ground up. Thegoal of this book is to offer guidance on network programming for beginners as well asprofessionals, for those developing new network-aware applications as well as thosemaintaining existing code, and for people who simply want to understand how the networkingcomponents of their system function. All the examples in this text are actual, runnable code tested on Unix systems.However, many non-Unix systems support the sockets API and the examples arelargely operating system-independent, as are the general concepts we present. Virtuallyevery operating system (OS) provides numerous network-aware applications such asWeb browsers, email clients, and file-sharing servers. We discuss the usual partitioningof these applications into client and server and write our own small examples of thesemany times throughout the text. Presenting this material in a Unix-oriented fashion has the natural side effect of providingbackground on Unix itself, and on TCP/IP as well. Where more extensive backgroundmay be interesting, we refer the reader to other texts. Four texts are so commonlymentioned in this book that we've assigned them the following abbreviations: APUE: Advanced Programming in the UNIX Environment Stevens 1992 TCPv1: TCP/IP Illustrated, Volume 1 Stevens 1994 TCPv2: TCP/IP Illustrated, Volume 2 Wright and Stevens 1995 TCPv3: TCP/IP Illustrated, Volume 3 Stevens 1996 TCPv2 contains a high level of detail very closely related to the material in this book, asit describes and presents the actual 4.4BSD implementation of the network programmingfunctions for the sockets API (socket, bind, connect, and so on). If one understandsthe implementation of a feature, the use of that feature in an application makesmore sense. Changes from the Second Edition Sockets have been around, more or less in their current form, since the 1980s, and it is atribute to their initial design that they have continued to be the network API of choice.Therefore, it may come as a surprise to learn that quite a bit has changed since the secondedition of this book was published in 1998. The changes we've made to the text aresummarized as follows: This new edition contains updated information on IPv6, which was only in draft form at the time of publication of the second edition and has evolved somewhat. The descriptions of functions and the examples have all been updated to reflect the most recent POSIX specification (POSIX 1003.1-2001), also known as the Single Unix Specification Version 3 . The coverage of the X/Open Transport Interface (XTI) has been dropped. That API has fallen out of common use and even the most recent POSIX specification does not bother to cover it. The coverage of TCP for transactions (T/TCP) has been dropped. Three chapters have been added to describe a relatively new transport protocol, SCTP. This reliable, message-oriented protocol provides multiple streams between endpoints and transport-level support for multihoming. It was originally designed for transport of telephony signaling across the Internet, but provides some features that many applications could take advantage of. A chapter has been added on key management sockets , which may be used with Internet Protocol Security (IPsec) and other network security services. The machines used, as well as the versions of their variants of Unix, have all been updated, and the examples have

Rewards Program