2.11BSD/man/cat4/ns.0
NS(4F) UNIX Programmer's Manual NS(4F)
NAME
ns - Xerox Network Systems(tm) protocol family
SYNOPSIS
Not currently supported under 2.11BSD
DESCRIPTION
The NS protocol family is a collection of protocols layered
atop the _I_n_t_e_r_n_e_t _D_a_t_a_g_r_a_m _P_r_o_t_o_c_o_l (IDP) transport layer,
and using the Xerox NS address formats. The NS family pro-
vides protocol support for the SOCK_STREAM, SOCK_DGRAM,
SOCK_SEQPACKET, and SOCK_RAW socket types; the SOCK_RAW
interface is a debugging tool, allowing you to trace all
packets entering, (or with toggling kernel variable, addi-
tionally leaving) the local host.
ADDRESSING
NS addresses are 12 byte quantities, consisting of a 4 byte
Network number, a 6 byte Host number and a 2 byte port
number, all stored in network standard format. (on the VAX
these are word and byte reversed; on the Sun they are not
reversed). The include file <_n_e_t_n_s/_n_s._h> defines the NS
address as a structure containing unions (for quicker com-
parisons).
Sockets in the Internet protocol family use the following
addressing structure:
struct sockaddr_ns {
short sns_family;
struct ns_addr sns_addr;
char sns_zero[2];
};
where an ns_addr is composed as follows:
union ns_host {
u_char c_host[6];
u_short s_host[3];
};
union ns_net {
u_char c_net[4];
u_short s_net[2];
};
struct ns_addr {
union ns_net x_net;
union ns_host x_host;
u_short x_port;
};
Printed 11/26/99 January 27, 1996 1
NS(4F) UNIX Programmer's Manual NS(4F)
Sockets may be created with an address of all zeroes to
effect ``wildcard'' matching on incoming messages. The
local port address specified in a _b_i_n_d(2) call is restricted
to be greater than NSPORT_RESERVED (=3000, in <netns/ns.h>)
unless the creating process is running as the super-user,
providing a space of protected port numbers.
PROTOCOLS
The NS protocol family supported by the operating system is
comprised of the Internet Datagram Protocol (IDP) _i_d_p(4P),
Error Protocol (available through IDP), and Sequenced Packet
Protocol (SPP) _s_p_p(4P).
SPP is used to support the SOCK_STREAM and SOCK_SEQPACKET
abstraction, while IDP is used to support the SOCK_DGRAM
abstraction. The Error protocol is responded to by the ker-
nel to handle and report errors in protocol processing; it
is, however, only accessible to user programs through heroic
actions.
SEE ALSO
intro(3), byteorder(3N), gethostbyname(3N), getnetent(3N),
getprotoent(3N), getservent(3N), ns(3N), intro(4N), spp(4P),
idp(4P), nsip(4)
Internet Transport Protocols, Xerox Corporation document
XSIS-028112
An Advanced 4.3BSD Interprocess Communication Tutorial
Printed 11/26/99 January 27, 1996 2