1 .\" $NetBSD: iso.4,v 1.9 2003/04/16 13:35:17 wiz Exp $
3 .\" Copyright (c) 1990, 1991, 1993
4 .\" The Regents of the University of California. All rights reserved.
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\" notice, this list of conditions and the following disclaimer in the
13 .\" documentation and/or other materials provided with the distribution.
14 .\" 3. Neither the name of the University nor the names of its contributors
15 .\" may be used to endorse or promote products derived from this software
16 .\" without specific prior written permission.
18 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" @(#)iso.4 8.2 (Berkeley) 11/30/93
46 protocol family is a collection of protocols
52 family provides protocol support for the
54 abstraction through the
61 abstraction through the connectionless transport
68 by providing direct access (for debugging) to the
71 8473) network layer protocol.
74 addresses are based upon
77 .%T "Addendum to the Network Service Definition Covering Network Layer Addressing."
79 Sockets bound to the OSI protocol family use
80 the following address structure:
83 u_char isoa_len; /* length, not including this byte */
84 char isoa_genaddr[20]; /* general opaque address */
88 u_char siso_len; /* size of this sockaddr */
89 sa_family_t siso_family; /* addressing domain, AF_ISO */
90 u_char siso_plen; /* presentation selector length */
91 u_char siso_slen; /* session selector length */
92 u_char siso_tlen; /* transport selector length */
93 struct iso_addr siso_addr; /* network address */
94 u_char siso_pad[6]; /* space for gosip v2 SELs */
96 #define siso_nlen siso_addr.isoa_len
97 #define siso_data siso_addr.isoa_genaddr
100 The fields of this structure are:
103 Length of the entire address structure, in bytes, which may grow to
104 be longer than the 32 bytes shown above.
106 Identifies the domain:
109 Length of the transport selector.
111 Length of the session selector.
112 This is not currently supported by the kernel and is provided as
113 a convenience for user level programs.
115 Length of the presentation selector.
116 This is not currently supported by the kernel and is provided as
117 a convenience for user level programs.
119 The network part of the address, described below.
121 .Sh TRANSPORT ADDRESSING
124 transport address is similar to an Internet address in that
125 it contains a network-address portion and a portion that the
126 transport layer uses to multiplex its services among clients.
127 In the Internet domain, this portion of the address is called a
131 domain, this is called a
132 .Em transport selector
133 (also known at one time as a
134 .Em transport suffix ) .
135 While ports are always 16 bits,
136 transport selectors may be
137 of (almost) arbitrary size.
139 Since the C language does not provide convenient variable
140 length structures, we have separated the selector lengths
141 from the data themselves.
142 The network address and various selectors are stored contiguously,
143 with the network address first, then the transport selector, and so
144 on. Thus, if you had a network address of less than 20 bytes,
145 the transport selector would encroach on space normally reserved
146 for the network address.
147 .Sh NETWORK ADDRESSING
149 network addresses are limited to 20 bytes in length.
151 network addresses can take any format.
155 1.0 implementation of the
157 protocol family comprises
158 the Connectionless-Mode Network Protocol
160 and the Transport Protocol
166 is used to support the