2 .\" Copyright (c) 1999, Sun Microsystems, Inc.
3 .\" All Rights Reserved
4 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
5 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
6 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
7 .TH IDN 7D "Jun 3, 1999"
9 idn \- inter-domain network device driver
19 The \fBidn\fR driver is a multi-thread, loadable, clonable, STREAMS-based
20 pseudo driver that supports the connectionless Data Link Provider Interface
21 \fBdlpi\fR(7P) over the Sun Enterprise 10000 Gigplane-XB Interconnect. This
22 connection is permitted only between domains within the same Sun Enterprise
26 The \fBidn\fR driver supports 1 to 32 logical network interfaces that can be
27 connected to domains linked to the local domain through the
28 \fBdomain_link\fR(8) command. (See \fBdomain_link\fR(8) in the \fISun
29 Enterprise 10000 SSP 3.5 Reference Manual\fR for more information.) The
30 \fBidn\fR driver works in conjunction with the System Service Processor (SSP)
31 to perform domain linking/unlinking and automated linking upon host bootup.
34 The \fB/dev/idn\fR device is used to access all IDN services provided by the
39 The \fBidn\fR driver is a style-2 Data Link Service provider. All \fBM_PROTO\fR
40 and \fBM_PCPROTO\fR-type messages are interpreted as \fBDLPI \fRprimitives.
41 For the \fBidn\fR driver to associate the opened stream with a particular
42 device (ppa), you must send an explicit \fBDL_ATTACH_REQ\fR message. The ppa ID
43 is interpreted as an unsigned long and indicates the corresponding device
44 instance (unit) number. The \fBDL_ERROR_ACK\fR error is returned by the driver
45 if the ppa field value does not correspond to a valid device-instance number
46 for the system. The device is initialized on first attach and de-initialized
47 (stopped) on the last detach.
52 The maximum SDU is configurable by using the \fBidn.conf\fR file and has a
53 range of 512 bytes to 512 Kbytes. The default value is 16384 bytes.
65 The Service Access Pointer (SAP) address length is 8.
71 The MAC type is \fBDL_ETHER\fR.
77 The \fBSAP\fR length value is \fI-2\fR, meaning the physical address component
78 is followed immediately by a 2-byte \fBSAP \fRcomponent within the \fBDLSAP\fR
85 The service mode is \fBDL_CLDLS\fR.
91 Optional quality of service (\fBQOS\fR) is not presently supported;
92 accordingly, the \fBQOS \fRfields are 0.
98 The provider style is \fBDL_STYLE2\fR.
104 The version is \fBDL_VERSION_2\fR.
110 The broadcast address value is Ethernet/IEEE broadcast address (0xFFFFFF). The
111 \fBidn\fR driver supports broadcast by issuing messages to each target
112 individually. The \fBidn\fR driver is inherently a point-to-point network
113 between domains. When the \fBidn\fR driver is in the \fBDL_ATTACHED\fR state,
114 the user must send a \fBDL_BIND_REQ\fR request to associate a particular \fBSAP
115 \fRwith the stream. The \fBidn\fR driver interprets the \fBSAP \fRfield within
116 the \fBDL_BIND_REQ\fR message as an Ethernet type and valid values for the
117 \fBSAP \fRfield are in the range of \fI0\fR to \fI0xFFFF\fR. Only one Ethernet
118 type can be bound to the stream at any time.
122 If a \fBSAP \fRwith a value of 0 is selected, the receiver will be in 802.3
123 mode. All frames received from the media having a type field in the range of 0
124 to 1500 are assumed to be 802.3 frames and are routed up all open streams which
125 are bound to \fBSAP \fR value 0. If more than one stream is in 802.3 mode, then
126 the frame will be duplicated and routed up as multiple stream
127 \fBDL_UNITDATA_IND\fR messages.
130 In transmission, the driver checks the \fBSAP\fR field of the \fBDL_BIND_REQ\fR
131 to determine if the SAP value is 0, and if the destination type field is in the
132 range of \fI 0\fR to \fI1500\fR. If either is true, the driver computes the
133 length of the message, (excluding the initial message block \fBM_PROTO mblk)\fR
134 of all subsequent \fBDL_UNITDATA_REQ\fR messages and transmits 802.3 frames
135 that have this value in the MAC frame header length field.
138 The driver also supports raw \fBM_DATA\fR mode. When the user sends a
139 \fBDLIOCRAW\fR ioctl, the particular stream is put in raw mode. A complete
140 frame and a proper ether header is expected as part of the data.
143 The \fBDLSAP\fR address format consists of the 6-byte, physical address
144 component (Ethernet) followed immediately by the 2-byte \fBSAP \fRcomponent
145 (type), producing an 8-byte \fBDLSAP\fR address. Applications should \fBnot\fR
146 hardcode to this particular implementation-specific \fBDLSAP\fR address format,
147 but instead should use information returned in the \fBDL_INFO_ACK\fR primitive
148 to compose and decompose \fBDLSAP\fR addresses. The \fBSAP \fRlength, full
149 \fBDLSAP \fR length, and \fBSAP \fRphysical ordering are included within the
150 \fBDL_INFO_ACK\fR primitive. The physical address length can be computed by
151 subtracting the \fBSAP \fRlength from the full \fBDLSAP\fR address length or by
152 issuing the \fBDL_PHYS_ADDR_REQ\fR message to obtain the current physical
153 address associated with the stream.
156 When the \fBidn\fR driver is in the \fBDL_BOUND\fR state, you can transmit
157 frames on the IDN by sending \fBDL_UNITDATA_REQ\fR messages to the driver. The
158 driver then routes received IDN frames up the open and bound streams having a
159 \fBSAP \fRwhich matches the Ethernet type as \fBDL_UNITDATA_IND\fR messages.
160 If necessary, received IDN frames are duplicated and routed up multiple open
161 streams. The \fBDLSAP\fR address contained within the \fBDL_UNITDATA_REQ\fR and
162 \fBDL_UNITDATA_IND\fR messages consists of both the \fBSAP \fR(type) and
163 physical (Ethernet) components.
167 In addition to the mandatory connectionless DLPI message set, the \fBidn\fR
168 driver supports the following primitives:
171 The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives which enable
172 or disable, respectively, the reception of individual multicast group
173 addresses. A set of multicast addresses may be iteratively created and modified
174 on a per-stream basis using these primitives. These primitives are accepted by
175 the driver in any state following the \fBDL_ATTACHED\fR state.
178 The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives, which with
179 the \fBDL_PROMISC_PHYS\fR flag set in the \fBdl_level\fR field, enable or
180 disable, respectively, the reception of all promiscuous frames on the media,
181 including frames generated by the local domain. When used with the
182 \fBDL_PROMISC_SAP\fR flag set in the \fBdl_level\fR field, these primitives
183 enable or disable, respectively, the reception of all \fBSAP \fR (Ethernet
184 type) values. When used with the \fBDL_PROMISC_MULTI\fR flag set in the
185 \fBdl_level\fR field, these primitives enable or disable, respectively, the
186 reception of all multicast group addresses. The effect of each is always on a
187 per-stream basis and independent of the other \fBSAP \fRand physical level
188 configurations on this stream or other streams.
191 The \fBDL_PHYS_ADDR_REQ\fR primitive which returns the 6-octet, Ethernet
192 address associated with (or attached to) the stream in the
193 \fBDL_PHYS_ADDR_ACK\fR primitive. This primitive is valid only in states
194 following a successful \fBDL_ATTACH_REQ\fR request.
197 Because the driver maintains domain address information in the address to
198 direct packets to the correct destination, the \fBDL_SET_PHYS_ADDR_REQ\fR
199 primitive is not allowed.
203 The following files are supported:
207 \fB\fB/dev/idn \fR\fR
211 IDN special character device
217 \fB\fB/platform/SUNW,Ultra-Enterprise-10000/kernel/drv/idn.conf \fR\fR
221 System-wide and per-interface default device driver properties
227 \fBnetstat\fR(8), \fBndd\fR(8), \fBdlpi\fR(7P)
230 \fBdomain_link\fR(8) in the \fISun Enterprise 10000 SSP 3.5 Reference
234 \fISun Enterprise 10000 InterDomain Networks User Guide\fR
238 The \fBidn\fR driver supports a set of properties that can be set by using the
239 \fBdriver.conf\fR file for the IDN. See the \fISun Enterprise 10000 InterDomain
240 Networks User Guide\fR for more information about the properties in the
241 \fBdriver.conf\fR(4), (\fBidn.conf\fR, for IDNs).