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