1idn(7d) Devices idn(7d)
2
3
4
6 idn - inter-domain network device driver
7
9 /dev/idn
10
11
13 The idn driver is a multi-thread, loadable, clonable, STREAMS-based
14 pseudo driver that supports the connectionless Data Link Provider
15 Interface dlpi(7P) over the Sun Enterprise 10000 Gigplane-XB Intercon‐
16 nect. This connection is permitted only between domains within the same
17 Sun Enterprise 10000 server.
18
19
20 The idn driver supports 1 to 32 logical network interfaces that can be
21 connected to domains linked to the local domain through the
22 domain_link(1M) command. (See domain_link(1M) in the Sun Enterprise
23 10000 SSP 3.5 Reference Manual for more information.) The idn driver
24 works in conjunction with the System Service Processor (SSP) to perform
25 domain linking/unlinking and automated linking upon host bootup.
26
27
28 The /dev/idn device is used to access all IDN services provided by the
29 system.
30
31 IDN and DLPI
32 The idn driver is a style-2 Data Link Service provider. All M_PROTO and
33 M_PCPROTO-type messages are interpreted as DLPI primitives. For the
34 idn driver to associate the opened stream with a particular device
35 (ppa), you must send an explicit DL_ATTACH_REQ message. The ppa ID is
36 interpreted as an unsigned long and indicates the corresponding device
37 instance (unit) number. The DL_ERROR_ACK error is returned by the
38 driver if the ppa field value does not correspond to a valid device-
39 instance number for the system. The device is initialized on first
40 attach and de-initialized (stopped) on the last detach.
41
42 o The maximum SDU is configurable by using the idn.conf file
43 and has a range of 512 bytes to 512 Kbytes. The default
44 value is 16384 bytes.
45
46 o The minimum SDU is 0.
47
48 o The Service Access Pointer (SAP) address length is 8.
49
50 o The MAC type is DL_ETHER.
51
52 o The SAP length value is -2, meaning the physical address
53 component is followed immediately by a 2-byte SAP component
54 within the DLSAP address.
55
56 o The service mode is DL_CLDLS.
57
58 o Optional quality of service (QOS) is not presently sup‐
59 ported; accordingly, the QOS fields are 0.
60
61 o The provider style is DL_STYLE2.
62
63 o The version is DL_VERSION_2.
64
65 o The broadcast address value is Ethernet/IEEE broadcast
66 address (0xFFFFFF). The idn driver supports broadcast by
67 issuing messages to each target individually. The idn driver
68 is inherently a point-to-point network between domains. When
69 the idn driver is in the DL_ATTACHED state, the user must
70 send a DL_BIND_REQ request to associate a particular SAP
71 with the stream. The idn driver interprets the SAP field
72 within the DL_BIND_REQ message as an Ethernet type and valid
73 values for the SAP field are in the range of 0 to 0xFFFF.
74 Only one Ethernet type can be bound to the stream at any
75 time.
76
77
78 If a SAP with a value of 0 is selected, the receiver will be in 802.3
79 mode. All frames received from the media having a type field in the
80 range of 0 to 1500 are assumed to be 802.3 frames and are routed up all
81 open streams which are bound to SAP value 0. If more than one stream
82 is in 802.3 mode, then the frame will be duplicated and routed up as
83 multiple stream DL_UNITDATA_IND messages.
84
85
86 In transmission, the driver checks the SAP field of the DL_BIND_REQ to
87 determine if the SAP value is 0, and if the destination type field is
88 in the range of 0 to 1500. If either is true, the driver computes the
89 length of the message, (excluding the initial message block M_PROTO
90 mblk) of all subsequent DL_UNITDATA_REQ messages and transmits 802.3
91 frames that have this value in the MAC frame header length field.
92
93
94 The driver also supports raw M_DATA mode. When the user sends a
95 DLIOCRAW ioctl, the particular stream is put in raw mode. A complete
96 frame and a proper ether header is expected as part of the data.
97
98
99 The DLSAP address format consists of the 6-byte, physical address com‐
100 ponent (Ethernet) followed immediately by the 2-byte SAP component
101 (type), producing an 8-byte DLSAP address. Applications should not
102 hardcode to this particular implementation-specific DLSAP address for‐
103 mat, but instead should use information returned in the DL_INFO_ACK
104 primitive to compose and decompose DLSAP addresses. The SAP length,
105 full DLSAP length, and SAP physical ordering are included within the
106 DL_INFO_ACK primitive. The physical address length can be computed by
107 subtracting the SAP length from the full DLSAP address length or by
108 issuing the DL_PHYS_ADDR_REQ message to obtain the current physical
109 address associated with the stream.
110
111
112 When the idn driver is in the DL_BOUND state, you can transmit frames
113 on the IDN by sending DL_UNITDATA_REQ messages to the driver. The
114 driver then routes received IDN frames up the open and bound streams
115 having a SAP which matches the Ethernet type as DL_UNITDATA_IND mes‐
116 sages. If necessary, received IDN frames are duplicated and routed up
117 multiple open streams. The DLSAP address contained within the DL_UNIT‐
118 DATA_REQ and DL_UNITDATA_IND messages consists of both the SAP (type)
119 and physical (Ethernet) components.
120
121 IDN Primitives
122 In addition to the mandatory connectionless DLPI message set, the idn
123 driver supports the following primitives:
124
125
126 The DL_ENABMULTI_REQ and DL_DISABMULTI_REQ primitives which enable or
127 disable, respectively, the reception of individual multicast group
128 addresses. A set of multicast addresses may be iteratively created and
129 modified on a per-stream basis using these primitives. These primitives
130 are accepted by the driver in any state following the DL_ATTACHED
131 state.
132
133
134 The DL_PROMISCON_REQ and DL_PROMISCOFF_REQ primitives, which with the
135 DL_PROMISC_PHYS flag set in the dl_level field, enable or disable,
136 respectively, the reception of all promiscuous frames on the media,
137 including frames generated by the local domain. When used with the
138 DL_PROMISC_SAP flag set in the dl_level field, these primitives enable
139 or disable, respectively, the reception of all SAP (Ethernet type)
140 values. When used with the DL_PROMISC_MULTI flag set in the dl_level
141 field, these primitives enable or disable, respectively, the reception
142 of all multicast group addresses. The effect of each is always on a
143 per-stream basis and independent of the other SAP and physical level
144 configurations on this stream or other streams.
145
146
147 The DL_PHYS_ADDR_REQ primitive which returns the 6-octet, Ethernet
148 address associated with (or attached to) the stream in the
149 DL_PHYS_ADDR_ACK primitive. This primitive is valid only in states fol‐
150 lowing a successful DL_ATTACH_REQ request.
151
152
153 Because the driver maintains domain address information in the address
154 to direct packets to the correct destination, the DL_SET_PHYS_ADDR_REQ
155 primitive is not allowed.
156
158 The following files are supported:
159
160 /dev/idn
161
162 IDN special character device
163
164
165 /platform/SUNW,Ultra-Enterprise-10000/kernel/drv/idn.conf
166
167 System-wide and per-interface default device driver properties
168
169
171 netstat(1M), ndd(1M), dlpi(7P)
172
173
174 domain_link(1M) in the Sun Enterprise 10000 SSP 3.5 Reference Manual.
175
176
177 Sun Enterprise 10000 InterDomain Networks User Guide
178
180 The idn driver supports a set of properties that can be set by using
181 the driver.conf file for the IDN. See the Sun Enterprise 10000 InterDo‐
182 main Networks User Guide for more information about the properties in
183 the driver.conf(4), (idn.conf, for IDNs).
184
185
186
187SunOS 5.11 3 Jun 1999 idn(7d)