.nr PO 1.5i
.nr LL 5.5i
.nr FL 5.5i
.nr HL 5.5i
.nr PD 0.7v
.ds CH 
.fp 1 HR
.fp 2 MI
.fp 3 HB
.bd 2 2
.LP
.nh
.ds CF "
.DS C
.sp 5
.ps 16
.vs 20
.B
EXOS 8015-01
.ps 12
.vs 16
TCP/IP Network Software
.vs 14
For VAX/UNIX Systems
.ps 16
.vs 20
Reference Manual
.R
.ps10
.ce 2
.vs 12
.sp 2
Revision B      November 3, 1986
Publication No.       4200022-00
.DE
.sp 35
.lt 5.5i
.tl ''' Excelan, Inc.'
.tl ''' 2180 Fortune Drive'
.tl ''' San Jose, CA 95131'
.sp
..*******************************************************
.bp
.LP
\&
.sp 24
.LP
The TCP/IP code in the EXOS 8015-01 package is derived from BBN code as
modified by UC Berkeley.
The initial implementation of the TCP/IP code on the EXOS Ethernet 
front-end processor was done by Bruce Borden,
Kipp Hickman, and Bill Northlich.
.sp 3
.LP
Copyright \(co 1986 Excelan, Inc.  All rights reserved.
No part of this publication may be reproduced, transmitted, transcribed,
stored in a retrieval system, or translated into any language or
computer language, in any form or by any means \- electronic, 
mechanical, magnetic, optical, chemical, manual or otherwise 
\- without the prior written permission of Excelan, Inc., 
2180 Fortune Drive, San Jose, CA 95131.
.LP
Excelan makes no representations or warranties with respect to the 
contents hereof and specifically disclaims any implied warranties of 
merchantability or fitness for any particular purpose.
Furthermore, Excelan reserves the right to revise this publication and
to make changes from time to time in the content hereof without
obligation of Excelan to notify any person of such revision or changes.
.LP
Excelan and NX are trademarks, and EXOS is a trademark of
Excelan, Inc.
.br
DEC, UNIBUS, VAX, and VMS are trademarks of the Digital Equipment 
Corporation.
.br
4.2BSD is a trademark of the Board of Regents of the University
of California.
.br
3Com is a registered trademark of 3Com, Inc.
.br
Unisoft is a trademark of the Unisoft Corportion.
.br
UNIX is a trademark of AT&T Bell Laboratories.
.br
XENIX is a trademark of the Microsoft Corporation.
.bp
.ds CF "
.DS C
.ps 12
.vs 16
.sp 6
.B
EXOS 8015-01
Reference Manual
.R
.DE
.bp
.LP
.sp 4
.DS C
.ps 12
.vs 14
.B
REVISION HISTORY
.R
.DE
.ps 10
.vs 12
.sp 2
.LP
.ta 25n 50n
.nf
.B
MANUAL
REVISION	DATE	SUMMARY OF CHANGES
.R
.sp 
A 	4-30-86	Initial Release.
\&	\&	EXOS 8015-01
\&	\&	TCP/IP Network Software
\&	\&	For VAX/UNIX Systems
\&	\&	Reference Manual
\&	\&	Publication No. 4200022-00
.sp
B	11-3-86	Manual Release B.
\&	\&	Updated manual to software 
\&	\&	Release 3.3.
.ds CH "\f2EXOS 8015-01:  Preface\f1
.bp
.ds CF "v
.ce
\f3PREFACE\f1
.sp
.LP
This document describes the EXOS 8015-01 TCP/IP Network Software.
The package contains software that is a vertically integrated 
implementation of the DARPA protocol standards for computer systems 
running the UNIX operating system.
This manual provides the information necessary to integrate the EXOS 
8015-01 package with a VAX minicomputer that is running UNIX System V 
and has an EXOS 204 Ethernet front-end processor installed in it.  
The manual also provides information on how to use the various utility 
programs supplied as part of the package.
(Note that in this manual the EXOS\ 8015-01 is referred to
simply as the EXOS\ 8015.)
.LP
On an Ethernet network, a VAX/UNIX host systems using the EXOS 8015 
can communicate with any system on the network that supports 
the standard TCP/IP protocols.
.LP
In addition to the TCP/IP protocol software, the EXOS 8015 package 
includes several network application utilities
and network systems utilities.  
The application utilities allow a user to transfer files between 
compatible hosts, to emulate a virtual terminal connected to a remote 
host, and to check the status of remote hosts on the network.
The systems utilities allows a user (typically, a network/system 
administrator) to manipulate the network database.
.LP
The software in the EXOS 8015 Network Software is compatible 
with the current versions of the Department of Defense
TCP, IP, ICMP, UDP, ARP, FTP, and Telnet protocols.
.LP
The following is a list of reference and study material 
related to EXOS 8015.
.LP
The EXOS 8015 implements protocols defined by or discussed in the 
following ARPA\ documents:
.RS
.IP [1]
Postel, J., ed.,
\f2Transmission Control Protocol \- DARPA Internet Program
Protocol Specification,\f1
RFC 793, USC/Information Sciences Institute, September 1981.
.IP [2]
Postel, J., ed.,
\f2Internet Protocol \- DARPA Internet Program Protocol
Specification,\f1
RFC 791, USC/Information Sciences Institute, September 1981.
.IP [3]
Postel, J.,
\f2Internet Control Message Protocol \- DARPA Internet
Program Protocol Specification,\f1
RFC 792, USC/Information Sciences Institute, September 1981.
.IP [4]
Postel, J.,
\f2User Datagram Protocol,\f1
RFC 768, USC/Information Sciences Institute, August 1980.
.IP [5]
Postel, J.,
\f2File Transfer Protocol,\f1
RFC 765, IEN 149, USC/Information Sciences Institute, June 1980.
.sp 2
.TS
center box linesize (16);
l0w(.2i) c0w(5.0i) l0w(.2i).
\&	T{
.sp .5
\f3For optimum accuracy, you should use
this manual in conjunction with the release note
supplied with the EXOS\ 8015-01 product.\f1
.sp 
T}	\&
.TE
.bp
.ds CF "vi
.IP [6]
Postel, J.,
\f2Telnet Protocol,\f1
RFC 764, IEN 148, USC/Information Sciences Institute, June 1980.
.IP [7]
Plummer, David C.,
\f2An Ethernet Address Resolution Protocol\f1,
RFC 826, Network Working Group, November 1982.
.RE
.LP
The EXOS 8015 is designed for use with the EXOS 204 Intelligent
Ethernet Controller, which is described in the following document:
.RS
.IP [8]
\f2EXOS 204 Intelligent Ethernet Controller Reference Manual,\f1
Excelan, Inc., Publication No. 4200009-00, 1986.
.RE
.LP
The following reference describes the C language, which is used 
for procedural and data structure specifications in this manual:
.RS
.IP [9]
Kernighan, B.W. and D.M. Ritchie,
\f2The C Programming Language\f1,
Prentice-Hall, Englewood Cliffs, New Jersey, 1978.
.RE
.LP
The following reference describes the ISO Open Systems Model:
.RS
.IP [10]
International Organization for Standardization (ISO),
"Reference Model of Open Systems Interconnection,"
Document No. ISO/TC97/SC16 N227, June\ 1979.
.RE
.LP
The following reference describes the Ethernet network:
.RS
.IP [11]
DEC, Intel, and Xerox Corporations, "The Ethernet: A Local Area Network:
Data Link Layer and Physical Layer Specifications,"
Version 2.0, November\ 1980.
.RE
.LP
The following papers clarify the operation of EXOS 8015's
UNIX system device drivers:
.RS
.IP [12]
Thompson, K., "UNIX Implementation,"
\f2UNIX Programmer's Manual,\f1
Seventh Edition, Volume 2A, Bell Laboratories, January 1979.
.IP [13]
Ritchie, D.M., "The UNIX I/O System,"
\f2UNIX Programmer's Manual,\f1
Seventh Edition, Volume 2A, Bell Laboratories, January 1979.
.RE
.LP
The following references describe 
related UNIX 4.2BSD network implementations:
.RS
.IP [14]
Leffler, S., R. Fabry, and W. Joy,
\f2A 4.2BSD Interprocess Communication Primer,\f1
UCB/Dept. of EE & CS, July 22, 1983.
.IP [15]
Leffler, S., W. Joy, and R. Fabry, 
\f24.2BSD Networking Implementation Notes,\f1
UCB/Dept. of EE & CS, September 6, 1982.
.RE
.bp
.ds CF "vii
.ce
\f3DOCUMENTATION CONVENTIONS\f1
.sp
.LP
A number of typographic conventions are used in this manual to
present various types of information.
You should be familiar with these conventions before using this manual.
.LP
Numeric values are specified in decimal, octal, or hexadecimal formats.
Decimal numbers have no prefixes or suffixes.
Octal numbers are followed by the parenthesized word (octal).
Hexadecimal numbers are either prefixed with a 0x or 0X or
postfixed with an H.
.LP
\f2Italicized\f1 characters or words in the context of a command
are descriptive names for items that you must replace with
appropriate parameters or values.
For example, the command specification
.DS
lls \f2directory_name\f1
.DE
means that you must provide the name of a directory.
Also, when a directory name or a UNIX utility name is used in text, 
it is italicized.
Example:
.sp 0.6
.RS
The \f2ftp\f1 utility...
.RE
.LP
\f2Italicized\f1 words are also used to provide comments about
command and system-response lines.
These comments are shown to the right of the command or system response.
.LP
Characters or words enclosed in angle brackets 
(\ <\ >\ ) are descriptive names for items that the system
replaces with appropriate values.
For example,
.DS
<date>
.DE
indicates that the system supplies the date.
The exception to this is <cr>, which indicates that you should
enter a carriage return by pressing the Enter or Return key on
your keyboard.
.LP
\f3Bold\f1 characters or words indicate input that you type.
These should be typed exactly as shown, unless the text indicates
otherwise.
.LP
Brackets ( [ ] ) in command lines enclose optional arguments or
parameters.
The brackets are not part of the argument or parameter.
This means that when you specify an optional item, the brackets
should be omitted.
For example, in the command line
.DS
arp \-a [entire]
.DE
the \-a argument is required by the entire argument is optional.
.LP
Braces ( { } ) in command lines enclose arguments or parameters
from which you must specify one and only one.
The arguments are separated from each other 
by the logical OR symbol (\ |\ ).
Neither the braces or the logical OR symbols 
are part of the argument or parameter.
This means that when you specify an argument, 
the braces and logical OR symbols should be omitted.
For example, in the command line
.DS
dir   { \f2remote_directory\f1 | \f2remote_file\f1 }  \f2local_file\f1
.DE
you can specify only one of the following commands:
.DS
dir  \f2remote_directory  local_file\f1
.sp 0.25
dir  \f2remote_file  local_file\f1
.DE
.ds CH
.bp
.ds CF "viii
\&
.LP
.ds CH "\f2EXOS 8015-01:  Contents\f1
.bp
.ds CF "ix
.DS C
.B
TABLE OF CONTENTS
.R
.DE
.vs 14
.ta 5n 73n
.nf
.sp
\f3Chapter	\&	Page\f1
.sp .5
.B
1	INTRODUCTION
.R
.sp 0.5
.ta 5n 10n 73n
\&	1.1.	INTRODUCTION	1-1
.ta 10n 17n 73n 
\&	1.1.1.	The EXOS 8015 Protocol Module	1-3
\&	1.1.2.	The EXOS 8015 Network Utilities	1-5
\&	1.1.3.	NX 200 Network Executive	1-6
\&	1.1.4.	Programming Library	1-6
\&	1.1.5.	I/O Drivers	1-6
\&	1.1.6.	Manual Organization	1-6
.ta 5n 10n 73n
\&	1.2.	INSTALLATION	1-7
\&	1.3.	NETWORK APPLICATION UTILITIES	1-7
\&	1.4.	NETWORK ADMINISTRATION	1-8
\&	1.5.	PROGRAMMING LIBRARY	1-9
.sp 
.ta 5n 10n 73n
.B
2	INSTALLATION
.R
.sp .5
.ta 5n 10n 73n
\&	2.1.	INTRODUCTION	2-1
\&	2.2.	PREREQUISITES FOR INSTALLATION	2-1
\&	2.3.	EXOS 8015 FILES	2-2
\&	2.4.	INSTALLATION PROCEDURE	2-5
.ta 10n 17n 73n
\&	2.4.1.	Hardware Installation	2-6
\&	2.4.2.	Software Installation	2-6
.sp 
.ta 5n 10n 73n
.B
3	 NETWORK APPLICATION UTILITIES
.R
.sp .5
.ta 5n 10n 73n
\&	3.1.	INTRODUCTION	3-1
\&	3.2.	FTP \- THE FILE TRANSFER UTILITY	3-1
.ta 10n 17n 73n  
\&	3.2.1.	Invocation of FTP and Remote Login	3-2
\&	3.2.2.	Using FTP Commands	3-4
.vs 12
.ta 17n 26n 73n  
\&	3.2.2.1.	Manipulating Files	3-7
\&	3.2.2.2.	Using FTP Commands by Redirecting Input
\&	\&	or from a Shell Script	3-7
\&	3.2.2.3.	Logging Out	3-8
.vs 14
.ta 5n 10n 73n
\&	3.3.	RCP \- THE REMOTE COPY UTILITY	3-8
\&	3.4.	RLOGIN \- THE REMOTE LOGIN UTILITY	3-9
\&	3.5.	RSH \- THE REMOTE SHELL UTILITY	3-10
\&	3.6.	RUPTIME \- THE REMOTE UPTIME UTILITY	3-10
\&	3.7.	RWHO \- THE REMOTE WHO UTILITY	3-11
\&	3.8.	TELNET \- THE VIRTUAL TERMINAL UTILITY	3-12
.ta 10n 17n 73n  
\&	3.8.1.	Invocation of Telnet and Logging In	3-12
\&	3.8.2.	Using Telnet Commands	3-12
\&	3.8.3.	Logging Out	3-13
.ta 5n 10n 73n
\&	3.9.	THE MAIL UTILITY	3-14
.sp 
.bp
.ds CF "x
.ta 5n 73n
\f3Chapter	Page\f1
.sp
.ta 5n 10n 73n
.B
4	NETWORK ADMINISTRATION
.R
.ta 5n 10n 73n
.sp .5
\&	4.1.	INTRODUCTION	4-1
\&	4.2.	NETWORK PLANNING	4-1
\&	4.3.	EXOS 204 FRONT-END PROCESSOR INSTALLATION	4-2
\&	4.4.	EXOS 8015 TCP/IP SOFTWARE INSTALLATION	4-2
\&	4.5.	NETWORK DATABASE MANAGEMENT	4-2
.ta 10n 17n 74n 
\&	4.5.1.	Host Names, Internet Addresses and Classes, and 
.vs 12
\&	\&	Ethernet Addresses	4-2
.ta 17n 26n 74n  
\&	4.5.1.1.	Host Names	4-2
\&	4.5.1.2.	Internet Addresses and Address Classes	4-3
\&	4.5.1.3.	Ethernet Addresses	4-4
.vs 14
.ta 10n 17n 74n  
\&	4.5.2.	Logical-to-Physical Host Address Translation	4-5
.vs 12
.ta 17n 26n 74n  
\&	4.5.2.1.	The ARP Method	4-5
\&	4.5.2.2.	The Constant Mapping Method	4-5
.ta 10n 17n 74n 
.vs 14
\&	4.5.3.	Routing Across Networks	4-6
\&	4.5.4.	Routing Across Subnetworks	4-6
\&	4.5.5.	Network Database	4-7
.vs 12
.ta 17n 26n 74n  
\&	4.5.5.1.	The System Startup File	4-7
\&	4.5.5.2.	The Hosts File	4-7
\&	4.5.5.3.	System Access Control	4-9
\&	4.5.5.4.	The Board Statistics Table	4-10
\&	4.5.5.5.	The Internet-to-Ethernet Translation Table	4-10
\&	4.5.5.6.	The Routing Table	4-11
.vs 14
.ta 5n 10n 74n
\&	4.6.	NETWORK SYSTEM UTILITIES	4-11
.ta 10n 17n 74n  
\&	4.6.1.	ARP \- The Address Resolution Control Utility	4-12
\&	4.6.2.	BSTAT \- The Board Statistics Utility	4-13
\&	4.6.3.	NETLOAD \- The Protocol Software Load Utility	4-14
\&	4.6.4.	NETSTAT \- The Network Status Utility	4-16
\&	4.6.5.	ROUTE \- The Routing Control Utility	4-17
\&	4.6.6.	UD \- The UUCP/Mail Network Daemon	4-20
.ta 5n 10n 74n
\&	4.7.	EXOS 8015 FILE LOCATIONS AND PERMISSIONS	4-25
\&	4.8.	EXOS MESSAGES	4-25
.sp 
.bp
.ds CF "xi
.ta 5n 73n
.nf
.sp
\f3Chapter	\&	Page\f1
.sp .5
.ta 5n 10n 73n
.B
5	 PROGRAMMING INTERFACE
.R
.sp .5
.ta 5n 10n 73n
\&	5.1.	INTRODUCTION	5-1
\&	5.2.	APPLICATIONS AND SOCKETS	5-1
\&	5.3.	SOCKET OPERATIONS 	5-3
.ta 10n 17n 73n  
\&	5.3.1.	Socket Function	5-3 
\&	5.3.2.	Connect Function	5-6
\&	5.3.3.	Accept Function	5-7
\&	5.3.4.	Read and Write Functions	5-8
\&	5.3.5.	Close Function	5-9
.ta 5n 10n 73n
\&	5.4.	LINK-LEVEL ACCESS	5-9
\&	5.5.	ERROR HANDLING	5-9
\&	5.6.	SAMPLE APPLICATION PROGRAMS	5-10
.sp 3
.ta 5n 73n
\f3Appendix\f1
.sp
\f3A	USER'S AND PROGRAMMER'S REFERENCE\f1	A-1
.sp 0.5
	ARP(1X)
	BSTAT(1X)
	EXOSID(1X)
	FTP(1X)
	NETDUMP(1X)
	NETSTAT(1X)
	RCP(1X) 
	RLOGIN(1X) 
	ROUTE(1X)
	RSH(1X) 
	RUPTIME(1X) 
	RWHO(1X)
	TELNET(1X) 
	ACCEPT(3X) 
	ASYNCIO(3X)
	BYTEORDER(3X) 
	CONNECT(3X) 
	RCMD(3X) 
	RECEIVE(3X) 
	RHOST(3X) 
	SELECT(3X) 
	SEND(3X) 
	SOCKET(3X) 
	SOCKETADDR(3X) 
	ADMIN(4X)
	ARP(4X) 
	ERRLOG(4X) 
.bp
.ds CF "xii
.ta 5n 73n
\f3Appendix	Page\f1
.sp .5
	INET(4X) 
	IP(4X) 
	LO(4X) 
	NET(4X) 
	ROUTE(4X)
	SOCKET(4X)  
	TCP(4X) 
	UDP(4X) 
	XMEM(4X) 
	XTY(4X) 
	HOSTS(5X)  
	HOSTS.EQUIV(5X)  
	NET(5X) 
	RHOSTS(5X)
	FTPD(8X) 
	NETLOAD(8X)
	RLOGIND(8X) 
	RSHD(8X) 
	RWHOD(8X) 
	TELNETD(8X) 
	UD(8X)
.sp
.ta 5n 73n
\f3B	ERROR STATUS CODES\f1	B-1
.sp
\f3C	UTILITY ERROR MESSAGES\f1
.sp 0.5
.ta 5n 10n 73n
\&	C.1.	INTRODUCTION	C-1
\&	C.2.	FTP ERROR MESSAGES	C-1
\&	C.3.	TELNET ERROR MESSAGES	C-3
.sp
.ta 5n 73n
\f3D	TROUBLESHOOTING\f1
.sp 0.5
.ta 5n 10n 73n
\&	D.1.  INTRODUCTION	D-1
\&	D.2.  INSTALLATION PROBLEMS  	D-1
\&	D.3.  USER MESSAGES 	D-1
\&	D.4.  CONSOLE MESSAGES	D-2
\&	D.5.  ABSENCE OF CONSOLE MESSAGES 	D-5
.ta 10n 17n 73n
\&	D.5.1.  Alignment Errors	D-6
\&	D.5.2.  Excessive CRC Errors 	D-6
\&	D.5.3.  Excessive Collisions	D-6
\&	D.5.4.  SQE Test Failures 	D-6
\&	D.5.5.  UDP and UNIX 4.2BSD 	D-6
\&	D.5.6.  DMA Underrun 	D-6
\&	D.5.7.  No Receive Buffers 	D-7
\&	D.5.8.  Duplicate IP Address	D-7
.sp
\f3INDEX\f1
.bp
.ds CF "xiii
.DS C
\f3LIST OF TABLES\f1
.DE
.nf
.sp
.ta 73n
\f3Table	Page\f1
.sp
.ta 10n 73n
2-1:	EXOS 8015 Directory Tree	2-3
2-2:	EXOS 8015 Files	2-4
.sp 0.5
3-1:	Network Application Utilities Grouped by Function	3-1
3-2:	FTP Commands Grouped by Function	3-5
.sp 0.5
4-1:	Netload Utility Options	4-16
4-2:	Netstat Utility Options	4-17
.sp 0.5
5-1:	Typical Library Function Order for Stream Sockets	5-3
5-2:	Socket Type Values	5-4
5-3:	Socket Address Data Structure	5-5
5-4:	TCP and UCP Port Numbers	5-5
5-5:	Socket Request Options	5-7
.sp 0.5
A-1:	Reference Manual Section	A-1
.sp 0.5
B-1:	EXOS Library Error Codes	B-2
.sp 0.5
C-1:	FTP Error Messages	C-1
C-2:	Telnet Error Messages	C-3
.sp 2
.DS C
\f3LIST OF FIGURES\f1
.DE
.nf
.sp
.ta 10n 73n
\f3Figure\f1
.sp
.ta 10n 73n
4-1:	Sample Network Configuration	4-19
.bp
