1 karl 1.1 // ===================================================================
2 // Title: Device Infiniband 2.7
3 // Filename: Device27_IB.mof
4 // Version: 2.7.0
5 // Release: Preliminary
6 // Date: 07/17/02
7 // ===================================================================
8 // Copyright 2002 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 karl 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 karl 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 v2.7
53 // CR631 - Add IBPortStatistics
54 // CR633 - Add IBPort
55 // CR783 - Add IBPortController
56 // - Modify IBPort
57 // ==================================================================
58
59 #pragma locale ("en_US")
60
61
62 // ==================================================================
63 // IBPort
64 karl 1.1 // ==================================================================
65 [Experimental, Version ("2.7.0"), Description (
66 "Management information and capabilities of an InfiniBand Port "
67 "and Channel Adapter. Each port of an IB Channel Adapter "
68 "independently provides the physical, link and network "
69 "protocol layers of its container IBA Device. Multiple "
70 "ports of a container IBA Device share the transport layer "
71 "functionality among the ports. An IBA Port represents "
72 "attributes of \"link port\" and/or \"end port\".") ]
73 class CIM_IBPort : CIM_NetworkPort {
74
75 [Override ("Speed"), Description (
76 "The Speed property is derived from the product of "
77 "LinkWidthActive and LinkSpeedActive. This is the actual "
78 "speed of the connection.") ]
79 uint64 Speed;
80
81 [Override ("MaxSpeed"), Description (
82 "The Max speed of the connection is derived from the product "
83 "of LinkSpeedEnabled and LinkWidthAvailable.") ]
84 uint64 MaxSpeed;
85 karl 1.1
86 [Override ("PermanentAddress"), Description (
87 "The GUID of this port.") ]
88 string PermanentAddress;
89
90 [Override ("NetworkAddresses"), Description (
91 "The LIDs of this port. The first entry should always contain"
92 "the base LID.") ]
93 string NetworkAddresses[];
94
95 [Write, MinValue(1), MaxValue(128), Description (
96 "The LID Mask Control value provides a way to have multiple "
97 "addresses for a single path. The number of LIDs assigned "
98 "to a port range from 1 to 128 unicast LIDs. The LIDMask "
99 "can be set to define the LID assignments of the port."),
100 Mappingstrings {"MAD.IBTA | PortInfo | LMC"} ]
101 uint8 LIDMask;
102
103 [Override("PortType"), Description (
104 "The type of port; e.g. switch, router, channel adapter." ),
105 ValueMap { "1", "50", "51", "52", "16000.." },
106 karl 1.1 Values { "Unknown", "Switch", "Router",
107 "Channel Adapter", "Vendor Specific" } ]
108 uint16 PortType;
109
110 [Description (
111 "Currently active link width. Only one width should be "
112 "selected. Therefore, the only valid values are 1 (1x), "
113 "2 (4x), and 8 (12x)."),
114 BitMap {"0","1", "3"},
115 BitValues {"1x", "4x", "12x"},
116 Mappingstrings {"MAD.IBTA | PortInfo | LinkWidthActive"} ]
117 uint16 LinkWidthActive;
118
119 [Description (
120 "Current active link speed. It is a component of the "
121 "ports actual speed. Actual speed is calculated by the "
122 "product of LinkSpeedActive times LinkWidthActive."),
123 BitMap {"0"},
124 BitValues {"2.5"},
125 Units ("GigaBits"),
126 Mappingstrings {"MAD.IBTA | PortInfo | LinkSpeedActive"} ]
127 karl 1.1 uint8 LinkSpeedActive;
128 };
129
130
131 // ===================================================================
132 // IBPortController
133 // ===================================================================
134 [Experimental, Version("2.7.0"), Description (
135 "IBPortController is a logical device corresponding "
136 "to an IB Channel Adapter (CA).") ]
137 class CIM_IBPortController : CIM_PortController {
138
139 [Description (
140 "The AdapterDiagnosticCode provides both generic and vendor-"
141 "specific diagnostic functionality. For all ports, all bits "
142 "set to zero means the port status is good. Any non-zero "
143 "value means there are possible error conditions."),
144 Mappingstrings {"MAD.IBTA | PortInfo | DiagCode"} ]
145 uint32 AdapterDiagnosticCode;
146 };
147
148 karl 1.1
149 // ===================================================================
150 // IBSubnetManager
151 // ===================================================================
152 [Version("2.7.0"), Description (
153 "An Infiniband Subnet Manager (SM) is an entity responsible "
154 "for configuring and managing an IB subnet. It uses Subnet "
155 "Management Agents (SMA) to access and manage individual "
156 "nodes. The SM is hosted in the context of a specific "
157 "computer system (i.e., hosted by an instance of "
158 "UnitaryComputerSystem), as described by the HostedService "
159 "association. Note that there may be multiple SMs operating "
160 "in a subnet, but only the elected master is allowed to "
161 "perform configuration functions.") ]
162 class CIM_IBSubnetManager : CIM_Service {
163
164 [Description (
165 "Administratively assigned priority for this SM, used to "
166 "establish the master. A higher number indicates a higher "
167 "priority and likelihood of becoming the master. The property "
168 "value can be reset by the master SM."),
169 karl 1.1 Write,
170 MappingStrings {"MAD.IBTA | SMInfo | Priority"} ]
171 uint8 Priority;
172
173 [Description (
174 "Enumerated value that indicates the Subnet Manager's State. "
175 "The values are fairly self-explanatory except for \"Not "
176 "Active\". This value indicates that the SM is available to "
177 "participate in the subnet, but has not been given "
178 "permission. A value \"Unknown\" (0) is also defined."),
179 ValueMap {"0", "1", "2", "3", "4"},
180 Values {"Unknown", "Not Active", "Discovering", "Standby",
181 "Master"},
182 MappingStrings {"MAD.IBTA | SMInfo | SMState"} ]
183 uint16 State;
184 };
185
186
187 // ==================================================================
188 // IBPortStatistics
189 // ==================================================================
190 karl 1.1 [Experimental, Version ("2.7.0"), Description (
191 "The class, IBPortStatistics, represents the statistics for "
192 "the IBPort.") ]
193 class CIM_IBPortStatistics : CIM_NetworkPortStatistics {
194
195 [Counter, Description (
196 "Total number of symbol errors detected on one or more "
197 "VLs."),
198 Mappingstrings {"MAD.IBTA | PortCounters | SymbolErrorCounter"} ]
199 uint16 SymbolErrorCounter;
200
201 [Counter, Description (
202 "Total number of times the Port Training state machine "
203 "has successfully completed the link error recovery "
204 "process."),
205 Mappingstrings {
206 "MAD.IBTA | PortCounters | LinkErrorRecoveryCounter"} ]
207 uint16 LinkErrorRecoveryCounter;
208
209 [Counter, Description (
210 "Total number of times the Port Training state machine "
211 karl 1.1 "has failed the link error recovery process and downed "
212 "the link."),
213 Mappingstrings {"MAD.IBTA | PortCounters | LinkDownedCounter"} ]
214 uint16 LinkDownedCounter;
215
216 [Counter, Description (
217 "Total number of packets containing an error that were "
218 "received on the port."),
219 Mappingstrings {"MAD.IBTA | PortCounters | PortRcvErrors"} ]
220 uint16 PortRcvErrors;
221
222 [Counter, Description (
223 "Total number of packets marked with the EBP delimiter "
224 "received on the port."),
225 Mappingstrings {
226 "MAD.IBTA | PortCounters | PortRcvRemotePhysicalErrors"} ]
227 uint16 PortRcvRemotePhysicalErrors;
228
229 [Counter, Description (
230 "Total number of packets received on the port that "
231 "were discarded because they could not be forwarded "
232 karl 1.1 "by the switch relay."),
233 Mappingstrings {
234 "MAD.IBTA | PortCounters | PortRcvSwitchRelayErrors"} ]
235 uint16 PortRcvSwitchRelayErrors;
236
237 [Counter, Description (
238 "Total number of outbound packets discarded by the "
239 "port because the port is down or congested."),
240 Mappingstrings {"MAD.IBTA | PortCounters | PortXmitDiscards"} ]
241 uint16 PortXmitDiscards;
242
243 [Counter, Description (
244 "Total number of packets not transmitted from the port "
245 "for any of the following reasons: \n"
246 " - FilterRawOutbound is true and packet is raw \n"
247 " - PartitionEnforcementOutbound is true and packet "
248 "fails partition key check, IP version check, or \n"
249 "transport header version check."),
250 Mappingstrings {
251 "MAD.IBTA | PortCounters | PortXmitConstraintErrors"} ]
252 uint16 PortXmitConstraintErrors;
253 karl 1.1
254 [Counter, Description (
255 "Total number of packets received on the port that are "
256 "discarded for any of the following reasons: \n"
257 " - FilterRawInbound is true and packet is raw "
258 " - PartitionEnforcementInbound is true and packet "
259 "fails partition key check, IP version check, or "
260 "transport header version check."),
261 Mappingstrings {
262 "MAD.IBTA | PortCounters | PortRcvConstraintErrors"} ]
263 uint16 PortRcvConstraintErrors;
264
265 [Counter, Description (
266 "The number of times that the frequency of packets "
267 "containing local physical errors exceeded "
268 "the local physical error threshold."),
269 Mappingstrings {
270 "MAD.IBTA | PortCounters | LocalLinkIntegrityErrors"} ]
271 uint16 LocalLinkIntegrityErrors;
272
273 [Counter, Description (
274 karl 1.1 "The number of times that consecutive flow control "
275 "update periods had at least one overrun error."),
276 Mappingstrings {
277 "MAD.IBTA | PortCounters | ExcessiveBufferOverrunErrors"} ]
278 uint16 ExcessiveBufferOverrunErrors;
279
280 [Counter, Description (
281 "Number of incoming VL15 packets dropped due to "
282 "resource limitations (due to lack of buffers)."),
283 Mappingstrings {"MAD.IBTA | PortCounters | VL15Dropped"} ]
284 uint16 VL15Dropped;
285 };
286
287
288 // ===================================================================
289 // end of file
290 // ===================================================================
|