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 ) 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