1 tony 1.1 // ===================================================================
2 // Title: Device Infiniband 2.8
3 // Filename: Device28_IB.mof
4 // Version: 2.8
5 // Release: Preliminary
6 // Date: 05/29/2003
7 // ===================================================================
8 // Copyright 2000-2003 Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release date should always be noted.
17 //
18 // Implementation of certain elements of this standard or proposed
19 // standard may be subject to third party patent rights, including
20 // provisional patent rights (herein "patent rights"). DMTF makes
21 // no representations to users of the standard as to the existence
22 tony 1.1 // of such rights, and is not responsible to recognize, disclose, or
23 // identify any or all such third party patent right, owners or
24 // claimants, nor for any incomplete or inaccurate identification or
25 // disclosure of such rights, owners or claimants. DMTF shall have no
26 // liability to any party, in any manner or circumstance, under any
27 // legal theory whatsoever, for failure to recognize, disclose, or
28 // identify any such third party patent rights, or for such party's
29 // reliance on the standard or incorporation thereof in its product,
30 // protocols or testing procedures. DMTF shall have no liability to
31 // any party implementing such standard, whether such implementation
32 // is foreseeable or not, nor to any patent owner or claimant, and shall
33 // have no liability or responsibility for costs or losses incurred if
34 // a standard is withdrawn or modified after publication, and shall be
35 // indemnified and held harmless by any party implementing the
36 // standard from any and all claims of infringement by a patent owner
37 // for such implementations.
38 //
39 // For information about patents held by third-parties which have
40 // notified the DMTF that, in their opinion, such patent may relate to
41 // or impact implementations of DMTF standards, visit
42 // http://www.dmtf.org/about/policies/disclosures.php.
43 tony 1.1 // ===================================================================
44 // Description: The Device Model extends the management concepts that
45 // are related to LogicalDevices. This file defines the
46 // classes to manage Infiniband devices.
47 //
48 // The object classes below are listed in an order that
49 // avoids forward references. Required objects, defined
50 // by other working groups, are omitted.
51 // ==================================================================
52 // Change Log for 2.8
53 // CR1071 - Return experimental classes into 2.8.
54 //
55 // Change Log for v2.7 Final
56 // CR962 - Fix the overlapping values defined for PortTypes.
57 // CR971 - Remove the experimental IB class definitions so they can
58 // remain experimental in 2.8
59 //
60 // Change Log for v2.7
61 // CR631 - Add IBPortStatistics
62 // CR633 - Add IBPort
63 // CR783 - Add IBPortController
64 tony 1.1 // - Modify IBPort
65 // ==================================================================
66
67 #pragma locale ("en_US")
68
69
70 // ===================================================================
71 // IBSubnetManager
72 // ===================================================================
73 [Version ("2.7.0"), Description (
74 "An Infiniband Subnet Manager (SM) is an entity responsible for "
75 "configuring and managing an IB subnet. It uses Subnet "
76 "Management Agents (SMA) to access and manage individual "
77 "nodes. The SM is hosted in the context of a specific computer "
78 "system (i.e., hosted by an instance of UnitaryComputerSystem), "
79 "as described by the HostedService association. Note that "
80 "there may be multiple SMs operating in a subnet, but only the "
81 "elected master is allowed to perform configuration functions.") ]
82 class CIM_IBSubnetManager : CIM_Service {
83
84 [Write, Description (
85 tony 1.1 "Administratively assigned priority for this SM, used to "
86 "establish the master. A higher number indicates a higher "
87 "priority and likelihood of becoming the master. The "
88 "property value can be reset by the master SM."),
89 MappingStrings {"MAD.IBTA | SMInfo | Priority"} ]
90 uint8 Priority;
91
92 [Description (
93 "Enumerated value that indicates the Subnet Manager's "
94 "State. The values are fairly self-explanatory except for "
95 "\"Not Active\". This value indicates that the SM is "
96 "available to participate in the subnet, but has not been "
97 "given permission. A value \"Unknown\" (0) is also "
98 "defined."),
99 ValueMap {"0", "1", "2", "3", "4"},
100 Values {"Unknown", "Not Active", "Discovering", "Standby",
101 "Master"},
102 MappingStrings {"MAD.IBTA | SMInfo | SMState"} ]
103 uint16 State;
104 };
105
106 tony 1.1 // ==================================================================
107 // IBPort
108 // ==================================================================
109 [Experimental, Version ("2.7.1000"), Description (
110 "Management information and capabilities of an InfiniBand Port "
111 "and Channel Adapter. Each port of an IB Channel Adapter "
112 "independently provides the physical, link and network protocol "
113 "layers of its container IBA Device. Multiple ports of a "
114 "container IBA Device share the transport layer functionality "
115 "among the ports. An IBA Port represents attributes of \"link "
116 "port\" and/or \"end port\".") ]
117 class CIM_IBPort : CIM_NetworkPort {
118
119 [Override ("Speed"), Description (
120 "The Speed property is derived from the product of "
121 "LinkWidthActive and LinkSpeedActive. This is the actual "
122 "speed of the connection.") ]
123 uint64 Speed;
124
125 [Override ("MaxSpeed"), Description (
126 "The Max speed of the connection is derived from the product "
127 tony 1.1 "of LinkSpeedEnabled and LinkWidthAvailable.") ]
128 uint64 MaxSpeed;
129
130 [Override ("PermanentAddress"), Description (
131 "The GUID of this port.") ]
132 string PermanentAddress;
133
134 [Override ("NetworkAddresses"), Description (
135 "The LIDs of this port. The first entry should always "
136 "contain the base LID.") ]
137 string NetworkAddresses[];
138
139 [Write, Description (
140 "The LID Mask Control value provides a way to have multiple "
141 "addresses for a single path. The number of LIDs assigned "
142 "to a port range from 1 to 128 unicast LIDs. The LIDMask "
143 "can be set to define the LID assignments of the port."),
144 MinValue (1), MaxValue (128),
145 MappingStrings {"MAD.IBTA | PortInfo | LMC"} ]
146 uint8 LIDMask;
147
148 tony 1.1 [Override ("PortType"), Description (
149 "The type of port; e.g. switch, router, channel adapter."),
150 ValueMap { "0", "60", "61", "62", "16000.." },
151 Values { "Unknown", "Switch", "Router", "Channel Adapter",
152 "Vendor Specific" } ]
153 uint16 PortType;
154
155 [Description (
156 "Currently active link width. Only one width should be "
157 "selected. Therefore, the only valid values are 1 (1x), 2 "
158 "(4x), and 8 (12x)."),
159 BitMap {"0","1", "3"},
160 BitValues {"1x", "4x", "12x"},
161 MappingStrings {"MAD.IBTA | PortInfo | LinkWidthActive"} ]
162 uint16 LinkWidthActive;
163
164 [Description (
165 "Current active link speed. It is a component of the ports "
166 "actual speed. Actual speed is calculated by the product of "
167 "LinkSpeedActive times LinkWidthActive."),
168 Units ("GigaBits"),
169 tony 1.1 BitMap {"0"},
170 BitValues {"2.5"},
171 MappingStrings {"MAD.IBTA | PortInfo | LinkSpeedActive"} ]
172 uint8 LinkSpeedActive;
173 };
174
175
176 // ===================================================================
177 // IBPortController
178 // ===================================================================
179 [Experimental, Version ("2.7.1000"), Description (
180 "IBPortController is a logical device corresponding to an IB "
181 "Channel Adapter (CA).") ]
182 class CIM_IBPortController : CIM_PortController {
183
184 [Description (
185 "The AdapterDiagnosticCode provides both generic and vendor- "
186 "specific diagnostic functionality. For all ports, all bits "
187 "set to zero means the port status is good. Any non-zero "
188 "value means there are possible error conditions."),
189 MappingStrings {"MAD.IBTA | PortInfo | DiagCode"} ]
190 tony 1.1 uint32 AdapterDiagnosticCode;
191 };
192
193
194 // ==================================================================
195 // IBPortStatistics
196 // ==================================================================
197 [Experimental, Version ("2.7.1000"), Description (
198 "The class, IBPortStatistics, represents the statistics for the "
199 "IBPort.") ]
200 class CIM_IBPortStatistics : CIM_NetworkPortStatistics {
201
202 [Description (
203 "Total number of symbol errors detected on one or more VLs."),
204 Counter,
205 MappingStrings {"MAD.IBTA | PortCounters | SymbolErrorCounter"} ]
206 uint16 SymbolErrorCounter;
207
208 [Description (
209 "Total number of times the Port Training state machine has "
210 "successfully completed the link error recovery process."),
211 tony 1.1 Counter,
212 MappingStrings { "MAD.IBTA | PortCounters | "
213 "LinkErrorRecoveryCounter"} ]
214 uint16 LinkErrorRecoveryCounter;
215
216 [Description (
217 "Total number of times the Port Training state machine has "
218 "failed the link error recovery process and downed the "
219 "link."),
220 Counter,
221 MappingStrings {"MAD.IBTA | PortCounters | LinkDownedCounter"} ]
222 uint16 LinkDownedCounter;
223
224 [Description (
225 "Total number of packets containing an error that were "
226 "received on the port."),
227 Counter,
228 MappingStrings {"MAD.IBTA | PortCounters | PortRcvErrors"} ]
229 uint16 PortRcvErrors;
230
231 [Description (
232 tony 1.1 "Total number of packets marked with the EBP delimiter "
233 "received on the port."),
234 Counter,
235 MappingStrings { "MAD.IBTA | PortCounters | "
236 "PortRcvRemotePhysicalErrors"} ]
237 uint16 PortRcvRemotePhysicalErrors;
238
239 [Description (
240 "Total number of packets received on the port that were "
241 "discarded because they could not be forwarded by the switch "
242 "relay."),
243 Counter,
244 MappingStrings { "MAD.IBTA | PortCounters | "
245 "PortRcvSwitchRelayErrors"} ]
246 uint16 PortRcvSwitchRelayErrors;
247
248 [Description (
249 "Total number of outbound packets discarded by the port "
250 "because the port is down or congested."),
251 Counter,
252 MappingStrings {"MAD.IBTA | PortCounters | PortXmitDiscards"} ]
253 tony 1.1 uint16 PortXmitDiscards;
254
255 [Description (
256 "Total number of packets not transmitted from the port for "
257 "any of the following reasons:\n"
258 "- FilterRawOutbound is true and packet is raw\n"
259 "- PartitionEnforcementOutbound is true and packet fails "
260 "partition key check, IP version check, or\n"
261 "transport header version check."),
262 Counter,
263 MappingStrings { "MAD.IBTA | PortCounters | "
264 "PortXmitConstraintErrors"} ]
265 uint16 PortXmitConstraintErrors;
266
267 [Description (
268 "Total number of packets received on the port that are "
269 "discarded for any of the following reasons:\n"
270 "- FilterRawInbound is true and packet is raw - "
271 "PartitionEnforcementInbound is true and packet fails "
272 "partition key check, IP version check, or transport header "
273 "version check."),
274 tony 1.1 Counter,
275 MappingStrings { "MAD.IBTA | PortCounters | "
276 "PortRcvConstraintErrors"} ]
277 uint16 PortRcvConstraintErrors;
278
279 [Description (
280 "The number of times that the frequency of packets "
281 "containing local physical errors exceeded the local "
282 "physical error threshold."),
283 Counter,
284 MappingStrings { "MAD.IBTA | PortCounters | "
285 "LocalLinkIntegrityErrors"} ]
286 uint16 LocalLinkIntegrityErrors;
287
288 [Description (
289 "The number of times that consecutive flow control update "
290 "periods had at least one overrun error."),
291 Counter,
292 MappingStrings { "MAD.IBTA | PortCounters | "
293 "ExcessiveBufferOverrunErrors"} ]
294 uint16 ExcessiveBufferOverrunErrors;
295 tony 1.1
296 [Description (
297 "Number of incoming VL15 packets dropped due to resource "
298 "limitations (due to lack of buffers)."),
299 Counter,
300 MappingStrings {"MAD.IBTA | PortCounters | VL15Dropped"} ]
301 uint16 VL15Dropped;
302 };
303
304
305 // ===================================================================
306 // end of file
307 // ===================================================================
|