|
|
1.1 ! root 1: .\" Copyright (c) 1985 Regents of the University of California. ! 2: .\" All rights reserved. The Berkeley software License Agreement ! 3: .\" specifies the terms and conditions for redistribution. ! 4: .\" ! 5: .\" @(#)ns.4f 1.3 (Berkeley) 5/21/86 ! 6: .\" ! 7: .TH NS 4F "July 30, 1985" ! 8: .UC 6 ! 9: .SH NAME ! 10: ns \- Xerox Network Systems(tm) protocol family ! 11: .SH SYNOPSIS ! 12: \fBoptions NS\fP ! 13: .br ! 14: \fBoptions NSIP\fP ! 15: .br ! 16: \fBpseudo-device ns\fP ! 17: .SH DESCRIPTION ! 18: .IX "ns device" "" "\fLns\fP \(em Xerox NS protocol family" ! 19: The NS protocol family is a collection of protocols ! 20: layered atop the ! 21: .I Internet Datagram Protocol ! 22: (IDP) transport layer, and using the Xerox NS address formats. ! 23: The NS family provides protocol support for the ! 24: SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET, and SOCK_RAW socket types; the ! 25: SOCK_RAW interface is a debugging tool, allowing you to trace all packets ! 26: entering, (or with toggling kernel variable, additionally leaving) the local ! 27: host. ! 28: .SH ADDRESSING ! 29: NS addresses are 12 byte quantities, consisting of a ! 30: 4 byte Network number, a 6 byte Host number and a 2 byte port number, ! 31: all stored in network standard format. ! 32: (on the VAX these are word and byte reversed; on the Sun they are not ! 33: reversed). The include file ! 34: .RI < netns/ns.h > ! 35: defines the NS address as a structure containing unions (for quicker ! 36: comparisons). ! 37: .PP ! 38: Sockets in the Internet protocol family use the following ! 39: addressing structure: ! 40: .nf ! 41: ! 42: struct sockaddr_ns { ! 43: short sns_family; ! 44: struct ns_addr sns_addr; ! 45: char sns_zero[2]; ! 46: }; ! 47: ! 48: where an ns_addr is composed as follows: ! 49: ! 50: union ns_host { ! 51: u_char c_host[6]; ! 52: u_short s_host[3]; ! 53: }; ! 54: ! 55: union ns_net { ! 56: u_char c_net[4]; ! 57: u_short s_net[2]; ! 58: }; ! 59: ! 60: struct ns_addr { ! 61: union ns_net x_net; ! 62: union ns_host x_host; ! 63: u_short x_port; ! 64: }; ! 65: ! 66: .fi ! 67: Sockets may be created with an address of all zeroes to effect ! 68: ``wildcard'' matching on incoming messages. ! 69: The local port address specified in a ! 70: .IR bind (2) ! 71: call is restricted to be greater than NSPORT_RESERVED ! 72: (=3000, in <netns/ns.h>) unless the creating process is running ! 73: as the super-user, providing a space of protected port numbers. ! 74: .SH PROTOCOLS ! 75: The NS protocol family supported by the operating system ! 76: is comprised of ! 77: the Internet Datagram Protocol (IDP) ! 78: .IR idp (4P), ! 79: Error Protocol (available through IDP), ! 80: and ! 81: Sequenced Packet Protocol (SPP) ! 82: .IR spp (4P). ! 83: .LP ! 84: SPP is used to support the SOCK_STREAM and SOCK_SEQPACKET abstraction, ! 85: while IDP is used to support the SOCK_DGRAM abstraction. ! 86: The Error protocol is responded to by the kernel ! 87: to handle and report errors in protocol processing; ! 88: it is, however, ! 89: only accessible to user programs through heroic actions. ! 90: .SH SEE ALSO ! 91: intro(3), byteorder(3N), gethostbyname(3N), getnetent(3N), ! 92: getprotoent(3N), getservent(3N), ns(3N), ! 93: intro(4N), spp(4P), idp(4P), nsip(4) ! 94: .br ! 95: Internet Transport Protocols, Xerox Corporation document XSIS-028112 ! 96: .br ! 97: An Advanced 4.3BSD Interprocess Communication Tutorial
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.