About This Guide

The IRIX Network Programming Guide describes the network programming facilities available with the IRIX operating system.

IRIX implements the Internet Protocol (IP) suite and UNIX domain sockets using the BSD sockets mechanism and supports access to the underlying network media using raw sockets. It also implements the Transport Layer Interface (TLI) defined in ISO-OSI, using SVR4 STREAMS modules. IRIX does not support the Xerox NS protocol suite.


Note: SGI does not encourage use of the TLI model; its inclusion is for compatibility with interfaces used by other vendors.

The networking software described in this guide is derived from the BSD UNIX release from the University of California, Berkeley; from the Sun Microsystems Remote Procedure Call (RPC) programming interface; and from UNIX System V, Release 4 from UNIX System Laboratories, Inc.

The IRIX Network Programming Guide is for programmers who want to develop network applications using the sockets interface, Sun RPC, or TLI. It explains the fundamental elements of each interface - including the libraries, routines, and other programming tools offered by each interface - and explains how to use them to develop IRIX network applications.

This introduction contains background information that you should read before proceeding. Topics include:

Audience for This Guide

This guide is for experienced programmers who intend to write applications that use network interfaces. Knowledge of the UNIX operating system, the C language, and general network theory is assumed.

Typographic Conventions

IRIX man pages are referred to by name and section number, in this format:

name(sect)

where name is the name of a command, system call, or library routine, and sect is the section number where the entry resides. For example:

rpc(3R)

refers to the rpc man page in section 3 of the IRIX man pages (which is divided up into subsections such as 3N and 3R). To look at that man page, enter the command:

% man 3 rpc

The following conventions are used throughout this document:

command 

This fixed-space font denotes literal items such as commands, files, routines, path names, signals, messages, and programming language structures.

manpage(x) 

Man page section identifiers appear in parentheses after man page names.

variable 

Italic typeface denotes variable entries and words or concepts being defined.

user input 

This bold, fixed-space font denotes literal items that the user enters in interactive sessions. (Output is shown in nonbold, fixed-space font.)

[ ] 

Brackets enclose optional portions of a command or directive line.

... 

Ellipses indicate that a preceding element can be repeated.

Chapter Summaries

This guide contains the following chapters:

Documentation Sources

This guide uses material from several sources:

  • Deering, S. “Host Extensions for IP Multicasting.” Internet Request For Comment 1112. Menlo Park, California: Network Information Center, SRI International, August 1989.

  • Karels, Michael J., Chris Torek, James M. Bloom, et al. 4.3BSD UNIX System Manager's Manual. Berkeley, California: University of California.

  • Kirkpatrick, S., M. Stahl, and M. Recker. “Internet Numbers.” Internet Request For Comment 1166. Menlo Park, California: Network Information Center, SRI International, July 1990.

  • Leffler, Samuel J., Robert S. Fabry, William N. Joy, et al. “An Advanced 4.3BSD Interprocess Communication Tutorial.” 4.3BSD UNIX Programmer's Supplementary Documents, Volume 1. Berkeley, California: University of California.

  • Lottor, M. “TCP Port Service Multiplexer (TCPMUX).” Internet Request for Comment 1078. Menlo Park, California: Network Information Center, SRI International, November 1988.

  • Reynolds, J., and J. Postel. “Assigned Numbers.” Internet Request for Comment 1060. Menlo Park, California: Network Information Center, SRI International, March 1990.

  • Sechrest, Stuart. “An Introductory 4.3BSD Interprocess Communication Tutorial.” 4.3BSD UNIX Programmer's Supplementary Documents, Volume 1. Berkeley, California: University of California.

  • Sun Microsystems. eXternal Data Representation: Sun Technical Notes (for RPC 4.0). Mountain View, California: Sun Microsystems, Inc.

  • Sun Microsystems. eXternal Data Representation Standard: Protocol Specification (for RPC 4.0). Mountain View, California: Sun Microsystems, Inc.

  • Sun Microsystems. Remote Procedure Calls: Protocol Specification (for RPC 4.0). Mountain View, California: Sun Microsystems, Inc.

  • Sun Microsystems. rpcgen Programming Guide (for RPC 4.0). Mountain View, California: Sun Microsystems, Inc.

  • UNIX System Laboratories. Programmer's Guide: Networking Interfaces (for SVR4.1). Englewood Cliffs, New Jersey: Prentice Hall, Inc.

Additional Reading

For additional information, you can consult your online man pages and these documents:

  • IRIX Admin manual set.

  • Comer, Douglas E. Internetworking with TCP/IP, Volume I, Second Edition. Prentice Hall, Inc., Englewood Cliffs, New Jersey (1991).

  • Corbin, John R. The Art of Distributed Applications. Springer-Verlag, New York (1991).

  • Kockan, Stephen G., and Wood, Patrick H., editors. UNIX Networking. Hayden Books, Indiana (1989).

  • Stevens, W. Richard. UNIX Network Programming, Prentice Hall, Inc., Englewood Cliffs, New Jersey (1990).

  • Stevens, W. Richard. TCP/IP Illustrated, Addison-Wesley Publishing Co.

  • Schneier, Bruce. Applied Cryptography, Second Edition, John Wiley and Sons, New York (1996).

You can also find related information in Internet Request For Comment documents, available by anonymous ftp from the /rfc directory at Government Systems, Inc. (IP number 192.112.36.5). For more information about using ftp, see IRIS Essentials.

Obtaining Publications

To obtain SGI documentation, go to the SGI Technical Publications Library at:

http://docs.sgi.com

Reader Comments

If you have comments about the technical accuracy, content, or organization of this document, please tell us. Be sure to include the title and document number of the manual with your comments. (Online, the document number is located in the front matter of the manual. In printed manuals, the document number is located at the bottom of each page.)

You can contact us in any of the following ways:

  • Send e-mail to the following address:

    [email protected]
    

  • Use the Feedback option on the Technical Publications Library World Wide Web page:

    http://docs.sgi.com
    

  • Contact your customer service representative and ask that an incident be filed in the SGI incident tracking system.

  • Send mail to the following address:

    Technical Publications
    SGI
    1200 Crittenden Lane, M/S 3-535
    Mountain View, California 94043-1351

  • Send a fax to the attention of “Technical Publications” at +1 650 932 0801.

We value your comments and will respond to them promptly.