1 a.dunfey 1.1 // ===================================================================
2 // Title: Network iSCSI
3 // $State: Preliminary $
4 // $Date: 2005/01/05 00:54:00 $
5 // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Network_iSCSI.mof,v $
6 // $Revision: 1.8 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2005 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 a.dunfey 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 a.dunfey 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description: The iSCSI Model defines the classes related to
47 // management
48 // of iSCSI objects.
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.9 Preliminary Company Review
55 // CR1465 - Corrected compile errors and warnings.
56 // System_FileServices.mof
57 // was moved to CIM_Schema.mof to resolve compile order issues.
58 //
59 // Change Log for v2.9 Preliminary, initial release
60 //
61 // ==================================================================
62 //
63 // ===================================================================
64 a.dunfey 1.1
65 #pragma Locale ("en_US")
66
67
68
69 // ==================================================================
70 // iSCSICapabilities
71 // ==================================================================
72
73 [Experimental, Version ( "2.8.1000" ), Description (
74 "The capabilites for an iSCSI Network Entity. An instance of "
75 "this class will be associated by ElementCapabilities to a "
76 "instance of ComputerSystem that represents the Network Entity. "
77 "These capability properties are associated to a Network "
78 "Entity/ComputerSystem since they affect all login negotiations "
79 "on all iSCSI ProtocolEndpoints aggregated to the system.")]
80 class CIM_iSCSICapabilities : CIM_Capabilities {
81
82 [Description (
83 "The minimum version number of the iSCSI specification such "
84 "that this iSCSI instance supports this minimum value, the "
85 a.dunfey 1.1 "maximum value indicated by the corresponding property "
86 "MaximumSpecificationVersionSupported, and all versions in "
87 "between."),
88 MinValue ( 0 ), MaxValue ( 255 ),
89 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiInstVersionMin" },
90 ModelCorrespondence {
91 "CIM_iSCSICapabilities.MaximumSpecificationVersionSupported",
92 "CIM_iSCSIConnection.ActiveiSCSIVersion" }]
93 uint8 MinimumSpecificationVersionSupported;
94
95 [Description (
96 "The maximum version number of the iSCSI specification such "
97 "that this iSCSI instance supports this maximum value, the "
98 "minimum value indicated by the corresponding property "
99 "MinimumSpecificationVersionSupported, and all versions in "
100 "between."),
101 MinValue ( 0 ), MaxValue ( 2555 ),
102 MappingStrings { "MIB.IETF|ISCSI-MIB.iscsiInstVersionMax" },
103 ModelCorrespondence {
104 "CIM_iSCSICapabilities.MinimumSpecificationVersionSupported",
105 "CIM_iSCSIConnection.ActiveiSCSIVersion" }]
106 a.dunfey 1.1 uint8 MaximumSpecificationVersionSupported;
107
108 [Description (
109 "An array containing a list of authentication methods "
110 "supported by this Network Entity."),
111 ValueMap { "2", "3", "4", "5" },
112 Values { "(None", "SRP", "CHAP", "Kerberos" },
113 MappingStrings { "MIB.IETF|IPS-AUTH-MIB.ipsAuthCredAuthMethod" },
114 ArrayType ( "Indexed" ),
115 ModelCorrespondence {
116 "CIM_iSCSISession.AuthenticationMethodUsed" }]
117 uint16 AuthenticationMethodsSupported[];
118
119 };
120
121
122 // ==================================================================
123 // iSCSISessionSettings
124 // ==================================================================
125 [Experimental, Version ( "2.8.1000" ), Description (
126 "The default negotiation settings for an iSCSI Session. These "
127 a.dunfey 1.1 "properties are used as the starting position for login "
128 "negotiations between initiator and target nodes. The "
129 "properties describing the resulting outcome of the login "
130 "negotiation are in the iSCSISession class. Depending on a "
131 "given implementation an instance of iSCSISessionSettings will "
132 "be associated by ElementSettingData to one or more instances "
133 "of iSCSIProtocolEndpoint, SCSIProtocolController, or "
134 "ComputerSystem.")]
135 class CIM_iSCSISessionSettings : CIM_SettingData {
136
137 [Write, Description (
138 "The maximum number of connections allowed in each session "
139 "to and/or from this node."),
140 MinValue ( 1 ), MaxValue ( 65535 ),
141 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeMaxConnections" },
142 ModelCorrespondence { "CIM_iSCSISession.CurrentConnections" }]
143 uint32 MaxConnectionsPerSession = 1;
144
145 [Write, Description (
146 "This property indicates the InitialR2T preference for this "
147 "node: true = YES, false = will try to negotiate NO, will "
148 a.dunfey 1.1 "accept YES."),
149 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeInitialR2T" },
150 ModelCorrespondence { "CIM_iSCSISession.InitialR2T" }]
151 boolean InitialR2TPreference = true;
152
153 [Write, Description (
154 "This property indicates ImmediateData preference for this "
155 "node True = YES (but will accept NO), False = NO."),
156 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeImmediateData" },
157 ModelCorrespondence { "CIM_iSCSISession.ImmediateData" }]
158 boolean ImmediateDataPreference = true;
159
160 [Write, Description (
161 "Maximum number of outstanding R2Ts allowed per ISCSI task."),
162 MinValue ( 1 ), MaxValue ( 65535 ),
163 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeMaxOutstandingR2T"
164 },
165 ModelCorrespondence { "CIM_iSCSISession.MaxOutstandingR2T" }]
166 uint32 MaxOutstandingR2T = 1;
167
168 [Write, Description (
169 a.dunfey 1.1 "The maximum length (bytes) supported for unsolicited data "
170 "to/from this node."),
171 Units ( "Bytes" ), MinValue ( 512 ), MaxValue ( 16777215 ),
172 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeFirstBurstLength"
173 },
174 ModelCorrespondence {
175 "CIM_iSCSISession.MaxUnsolicitedFirstDataBurstLength" }]
176 uint32 MaxUnsolicitedFirstDataBurstLength = 65536;
177
178 [Write, Description (
179 "The maximum number of bytes which can be sent within a "
180 "single sequence of Data-In or Data-Out PDUs."),
181 Units ( "Bytes" ), MinValue ( 512 ), MaxValue ( 16777215 ),
182 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeMaxBurstLength" },
183 ModelCorrespondence { "CIM_iSCSISession.MaxDataBurstLength" }]
184 uint32 MaxDataBurstLength = 262144;
185
186 [Write, Description (
187 "The DataSequenceInOrder preference of this node. False "
188 "(=No) indicates that iSCSI data PDU sequences MAY be "
189 "transferred in any order. True (=Yes) indicates that data "
190 a.dunfey 1.1 "PDU sequences MUST be transferred using continuously "
191 "increasing offsets, except during error recovery."),
192 MappingStrings {
193 "MIB.IETF|iSCSI-MIB.iscsiNodeDataSequenceInOrder" },
194 ModelCorrespondence { "CIM_iSCSISession.DataSequenceInOrder" }]
195 boolean DataSequenceInOrderPreference = true;
196
197 [Write, Description (
198 "The DataPDUInOrder preference of this node. False (=No) "
199 "indicates that iSCSI data PDUs within sequences MAY be in "
200 "any order. True (=Yes) indicates that data PDUs within "
201 "sequences MUST be at continuously increasing addresses, "
202 "with no gaps or overlay between PDUs."),
203 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeDataPDUInOrder" },
204 ModelCorrespondence { "CIM_iSCSISession.DataPDUInOrder" }]
205 boolean DataPDUInOrderPreference = true;
206
207 [Write, Description (
208 "The DefaultTime2Wait preference of this node. This is the "
209 "minimum time, in seconds, to wait before attempting an "
210 "explicit/implicit logout or active iSCSI task reassignment "
211 a.dunfey 1.1 "after an unexpected connection termination or a connection "
212 "reset."),
213 Units ( "Seconds" ), MinValue ( 0 ), MaxValue ( 3600 ),
214 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiNodeDefaultTime2Wait"
215 }]
216 uint32 DefaultTimeToWaitPreference = 2;
217
218 [Write, Description (
219 "The DefaultTime2Retain preference of this node. This is the "
220 "maximum time, in seconds after an initial wait (Time2Wait), "
221 "before which an active iSCSI task reassignment is still "
222 "possible after an unexpected connection termination or a "
223 "connection reset."),
224 Units ( "Seconds" ), MinValue ( 0 ), MaxValue ( 3600 ),
225 MappingStrings {
226 "MIB.IETF|iSCSI-MIB.iscsiNodeDefaultTime2Retain" }]
227 uint32 DefaultTimeToRetainPreference = 20;
228
229 [Write, Description (
230 "The ErrorRecoveryLevel preference of this node. Currently, "
231 "only 0-2 are valid. This is designed to accommodate future "
232 a.dunfey 1.1 "error recover levels. \n"
233 "Higher error recovery levels imply support in addition to "
234 "support for the lower error level functions. In other "
235 "words, error level 2 implies support for levels 0-1, since "
236 "those functions are subsets of error level 2."),
237 MinValue ( 0 ), MaxValue ( 255 ),
238 MappingStrings {
239 "MIB.IETF|iSCSI-MIB.iscsiNodeErrorRecoveryLevel" },
240 ModelCorrespondence { "CIM_iSCSISession.ErrorRecoveryLevel" }]
241 uint32 ErrorRecoveryLevelPreference = 0;
242 };
243
244
245 // ==================================================================
246 // iSCSISessionStatistics
247 // ==================================================================
248 [Experimental, Version ( "2.8.1000" ), Description (
249 "Traffic and error statistics for an iSCSI Session. An instance "
250 "of this class will be associated by ElementStatisticalData to "
251 "the instance of iSCSISession.")]
252 class CIM_iSCSISessionStatistics : CIM_StatisticalData {
253 a.dunfey 1.1
254 [Description (
255 "The count of Command PDUs transferred on this session."),
256 Counter,
257 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnCmdPDUs" }]
258 uint64 CommandPDUsTransferred;
259
260 [Description (
261 "The count of Response PDUs transferred on this session."),
262 Counter,
263 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnRspPDUs" }]
264 uint64 ResponsePDUsTransferred;
265
266 [Description (
267 "The count of bytes(data octets) that were transmitted by "
268 "the local iSCSI node on this session."),
269 Units ( "Bytes" ), Counter,
270 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnTxDataOctets" }]
271 uint64 BytesTransmitted;
272
273 [Description (
274 a.dunfey 1.1 "The count of bytes(data octets) that were received by the "
275 "local iSCSI node on this session."),
276 Units ( "Bytes" ), Counter,
277 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnRxDataOctets" }]
278 uint64 BytesReceived;
279
280 [Description (
281 "The count of PDUs which were received on the session and "
282 "contained header or data digest errors."),
283 Counter,
284 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnDigestErrors" }]
285 uint64 DigestErrors;
286
287 [Description (
288 "The count of connections within this session which have "
289 "been terminated due to timeout."),
290 Counter,
291 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiSsnCxnTimeoutErrors" }]
292 uint64 ConnectionTimeoutErrors;
293 };
294
295 a.dunfey 1.1
296 // ==================================================================
297 // iSCSIConnection
298 // ==================================================================
299 [Experimental, Version ( "2.8.1000" ), Description (
300 "This class contains the attributes of and negotiated values "
301 "for, an iSCSI Connection which is modeled as a subclass of "
302 "NetworkPipe. The original settings that are a starting point "
303 "for negotiation are found in the class "
304 "iSCSIConnectionSettings.")]
305 class CIM_iSCSIConnection : CIM_NetworkPipe {
306
307 [Description (
308 "The iSCSI Connection ID for this connection."),
309 MinValue ( 1 ), MaxValue ( 65535 ),
310 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnCid" }]
311 uint32 ConnectionID;
312
313 [Description (
314 "The maximum data payload size supported for command or data "
315 "PDUs able to be received on this connection."),
316 a.dunfey 1.1 Units ( "Bytes" ), MinValue ( 512 ), MaxValue ( 16777215 ),
317 MappingStrings {
318 "MIB.IETF|iSCSI-MIB.iscsiCxnMaxRecvDataSegLength" },
319 ModelCorrespondence {
320 "CIM_iSCSIConnectionSettings.MaxReceiveDataSegmentLength" }]
321 uint16 MaxReceiveDataSegmentLength;
322
323 [Description (
324 "The maximum data payload size supported for command or data "
325 "PDUs to be sent on this connection."),
326 Units ( "Bytes" ), MinValue ( 512 ), MaxValue ( 16777215 ),
327 MappingStrings {
328 "MIB.IETF|iSCSI-MIB.iscsiCxnMaxXmitDataSegLength" }]
329 uint16 MaxTransmitDataSegmentLength;
330
331 [Description (
332 "This property identifies the iSCSI header digest scheme in "
333 "use within this connection."),
334 ValueMap { "1", "2", "3" },
335 Values { "Other", "No Digest", "CRC32C" },
336 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnHeaderIntegrity" },
337 a.dunfey 1.1 ModelCorrespondence {
338 "CIM_iSCSIConnectionSettings.PrimaryHeaderDigestMethod",
339 "CIM_iSCSIConnectionSettings.SecondaryHeaderDigestMethod",
340 "CIM_iSCSIConnection.OtherHeaderDigestMethod" }]
341 uint16 HeaderDigestMethod;
342
343 [Description (
344 "A string describing the Header Digest scheme in use when "
345 "HeaderDigestMethod is equal to the value 1, \"Other\"."),
346 ModelCorrespondence {
347 "CIM_iSCSIConnectionSettings.OtherPrimaryHeaderDigestMethod",
348 "CIM_iSCSIConnectionSettings.OtherSecondaryHeaderDigestMethod",
349 "CIM_iSCSIConnection.HeaderDigestMethod" }]
350 string OtherHeaderDigestMethod;
351
352 [Description (
353 "This property identifies the iSCSI data digest scheme in "
354 "use within this connection."),
355 ValueMap { "1", "2", "3" },
356 Values { "Other", "No Digest", "CRC32C" },
357 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnDataIntegrity" },
358 a.dunfey 1.1 ModelCorrespondence {
359 "CIM_iSCSIConnectionSettings.PrimaryHeaderDigestMethod",
360 "CIM_iSCSIConnectionSettings.SecondaryHeaderDigestMethod",
361 "CIM_iSCSIConnection.OtherDataDigestMethod" }]
362 uint16 DataDigestMethod;
363
364 [Description (
365 "A string describing the Data Digest scheme in use when "
366 "DataDigestMethod is equal to the value 1, \"Other\"."),
367 ModelCorrespondence {
368 "CIM_iSCSIConnectionSettings.OtherPrimaryDataDigestMethod",
369 "CIM_iSCSIConnectionSettings.OtherSecondaryDataDigestMethod",
370 "CIM_iSCSIConnection.DataDigestMethod" }]
371 string OtherDataDigestMethod;
372
373 [Description (
374 "This property indicates whether or not this connection is "
375 "receiving markers in in its incoming data stream."),
376 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnRecvMarker" },
377 ModelCorrespondence {
378 "CIM_iSCSIConnectionSettings.RequestingMarkersOnReceive" }]
379 a.dunfey 1.1 boolean ReceivingMarkers;
380
381 [Description (
382 "This property indicates whether or not this connection is "
383 "inserting markers in in its outgoing data stream."),
384 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnSendMarker" }]
385 boolean SendingMarkers;
386
387 [Description (
388 "Active version number of the iSCSI specification negotiated "
389 "on this connection."),
390 MinValue ( 0 ), MaxValue ( 255 ),
391 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnVersionActive" },
392 ModelCorrespondence {
393 "CIM_iSCSICapabilities.MinimumSpecificationVersionSupported",
394 "CIM_iSCSICapabilities.MaximumSpecificationVersionSupported"
395 }]
396 boolean ActiveiSCSIVersion;
397 };
398
399
400 a.dunfey 1.1 // ==================================================================
401 // iSCSIConnectionSettings
402 // ==================================================================
403 [Experimental, Version ( "2.8.1000" ), Description (
404 "The settings for an iSCSI NetworkPortal that are the starting "
405 "point for negotiation for connection establishment. An "
406 "instance of this class will be associated by "
407 "ElementSettingData to an instance of either "
408 "TCPProtocolEndpoint (When the NetworkPortal is a target) or "
409 "IPProtocolEndpoint (When the NetworkPortal is an initiator). "
410 "The properties that reflect the actual outcome of the "
411 "negotiation are found in the iSCSIConnection class.")]
412 class CIM_iSCSIConnectionSettings : CIM_SettingData {
413
414 [Write, Description (
415 "The maximum PDU length this portal can receive. This MAY be "
416 "constrained by hardware characteristics and individual "
417 "implementations MAY choose not to allow this property to be "
418 "changed."),
419 Units ( "Bytes" ), MinValue ( 512 ), MaxValue ( 16777215 ),
420 MappingStrings {
421 a.dunfey 1.1 "MIB.IETF|iSCSI-MIB.iscsiPortalMaxRecvDataSegLength" },
422 ModelCorrespondence {
423 "CIM_iSCSIConnection.MaxReceiveDataSegmentLength" }]
424 uint32 MaxReceiveDataSegmentLength = 8192;
425
426 [Write, Description (
427 "The preferred header digest for this portal."),
428 ValueMap { "1", "2", "3" },
429 Values { "Other", "No Digest", "CRC32C" },
430 MappingStrings {
431 "MIB.IETF|iSCSI-MIB.iscsiPortalPrimaryHdrDigest" },
432 ModelCorrespondence { "CIM_iSCSIConnection.HeaderDigestMethod",
433 "CIM_iSCSIConnectionSettings.OtherPrimaryHeaderDigestMethod"
434 }]
435 uint16 PrimaryHeaderDigestMethod = 3;
436
437 [Write, Description (
438 "A string describing the preferred Header Digest method when "
439 "PrimaryHeaderDigestMethod is equal to the value 1, "
440 "\"Other\"."),
441 ModelCorrespondence {
442 a.dunfey 1.1 "CIM_iSCSIConnection.OtherHeaderDigestMethod",
443 "CIM_iSCSIConnectionSettings.PrimaryHeaderDigestMethod" }]
444 string OtherPrimaryHeaderDigestMethod;
445
446 [Write, Description (
447 "The preferred data digest method for this portal."),
448 ValueMap { "1", "2", "3" },
449 Values { "Other", "No Digest", "CRC32C" },
450 MappingStrings {
451 "MIB.IETF|iSCSI-MIB.iscsiPortalPrimaryDataDigest" },
452 ModelCorrespondence { "CIM_iSCSIConnection.DataDigestMethod",
453 "CIM_iSCSIConnectionSettings.OtherPrimaryDataDigestMethod" }]
454 uint16 PrimaryDataDigestMethod = 3;
455
456 [Write, Description (
457 "A string describing the preferred Data Digest method when "
458 "PrimaryDataDigestMethod is equal to the value 1, \"Other\"."),
459 ModelCorrespondence {
460 "CIM_iSCSIConnection.OtherDataDigestMethod",
461 "CIM_iSCSIConnectionSettings.PrimaryDataDigestMethod" }]
462 string OtherPrimaryDataDigestMethod;
463 a.dunfey 1.1
464 [Write, Description (
465 "An alternate header digest preference for this portal."),
466 ValueMap { "1", "2", "3" },
467 Values { "Other", "No Digest", "CRC32C" },
468 MappingStrings {
469 "MIB.IETF|iSCSI-MIB.iscsiPortalSecondaryHdrDigest" },
470 ModelCorrespondence { "CIM_iSCSIConnection.HeaderDigestMethod",
471 "CIM_iSCSIConnectionSettings.OtherSecondaryHeaderDigestMethod"
472 }]
473 uint16 SecondaryHeaderDigestMethod = 2;
474
475 [Write, Description (
476 "A string describing the alternate Header Digest method "
477 "preference when SecondaryHeaderDigestMethod is equal to the "
478 "value 1, \"Other\"."),
479 ModelCorrespondence {
480 "CIM_iSCSIConnection.OtherHeaderDigestMethod",
481 "CIM_iSCSIConnectionSettings.SecondaryHeaderDigestMethod" }]
482 string OtherSecondaryHeaderDigestMethod;
483
484 a.dunfey 1.1 [Write, Description (
485 "An alternate data digest preference for this portal."),
486 ValueMap { "1", "2", "3" },
487 Values { "Other", "No Digest", "CRC32C" },
488 MappingStrings {
489 "MIB.IETF|iSCSI-MIB.iscsiPortalSecondaryDataDigest" },
490 ModelCorrespondence { "CIM_iSCSIConnection.DataDigestMethod",
491 "CIM_iSCSIConnectionSettings.OtherSecondaryDataDigestMethod"
492 }]
493 uint16 SecondaryDataDigestMethod = 2;
494
495 [Write, Description (
496 "A string describing the alternate Data Digest method "
497 "preference when SecondaryDataDigestMethod is equal to the "
498 "value 1, \"Other\"."),
499 ModelCorrespondence {
500 "CIM_iSCSIConnection.OtherDataDigestMethod",
501 "CIM_iSCSIConnectionSettings.SecondaryDataDigestMethod" }]
502 string OtherSecondaryDataDigestMethod;
503
504 [Write, Description (
505 a.dunfey 1.1 "This property indicates whether or not this portal will "
506 "request markers in it's incoming data stream."),
507 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiPortalRecvMarker" },
508 ModelCorrespondence { "CIM_iSCSIConnection.ReceivingMarkers" }]
509 boolean RequestingMarkersOnReceive = false;
510 };
511
512
513 // ==================================================================
514 // iSCSIConfigurationService
515 // ==================================================================
516 [Experimental, Version ( "2.8.1000" ), Description (
517 "The iSCSIConfigurationService provides methods that allow a "
518 "client to manipulate iSCSIProtocolEndpoints in an iSCSI Node. "
519 "iSCSIProtocolController models the iSCSI Port. The instance of "
520 "the service is scoped by an instance of ComputerSystem that "
521 "represents that Network Entity. The capabilities of this "
522 "service are defined in the companion class "
523 "iSCSIConfigurationCapabilities.")]
524
525 class CIM_iSCSIConfigurationService : CIM_Service {
526 a.dunfey 1.1
527 [Description (
528 "This method creates an iSCSI Port in the form of an "
529 "instance of iSCSIProtocolEndpoint. As part of the creation "
530 "process the iSCSIProtocolEndpoint is 'bound to' the "
531 "underlying TCP or IP ProtocolEndpoints which are specified "
532 "as inputs by creating instances of the BindsTo association "
533 "between the new instance and those instances. In addition, "
534 "an instance of SAPAvailableForElement is created between "
535 "the specified SCSIProtocolController and the new instance "
536 "of iSCSIProtocolEndpoint."),
537 ValueMap { "0", "1", "2", "3", "4", "5", "6..4095", "4096",
538 "4097", "4098", "4099", "4100", "4101", "4102", "4103",
539 "4104..32767", "32768..65535" },
540 Values { "Success", "Not Supported", "Unspecified Error",
541 "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved",
542 "SCSIProtocolController Non-existent",
543 "Role Not Supported By Specified SCSIProtocolController",
544 "Identifier In Use, Not Unique",
545 "Identifier Selection Not Supported",
546 "ProtocolEndpoint Non-Existent",
547 a.dunfey 1.1 "TCPProtocolEndpoint Not Bound To Underlying "
548 "IPProtocolEndpoint",
549 "TCPProtocolEndpoint In Use By Other iSCSIProtocolEndpoint In "
550 "Same Target SCSIProtocolController",
551 "ProtocolEndpoints Not From Same Endpoint Collection",
552 "Method Reserved", "Vendor Specific" }]
553 uint32 CreateiSCSIProtocolEndpoint (
554 [IN, Description (
555 "The SCSIProtocolController instance representing the "
556 "iSCSI Node that will contain the iSCSI Port.")]
557 CIM_SCSIProtocolController REF iSCSINode,
558 [IN, Description (
559 "For iSCSI, each iSCSIProtocolEndpoint must act as either "
560 "a target or an initiator endpoint. This property "
561 "indicates which role this iSCSIProtocolEndpoint "
562 "implements."),
563 ValueMap { "2", "3" },
564 Values { "Initiator", "Target" }]
565 uint16 Role,
566 [IN, Description (
567 "If this is an Initiator Port, Identifier MUST contain "
568 a.dunfey 1.1 "the ISID, if this is a Target Port, Identifier MUST "
569 "contain the Target Portal Group Tag (TGPT). Each "
570 "iSCSIProtocolEndpoint (iSCSI port) associated to a "
571 "common SCSIProtocolController (iSCSI node) must have a "
572 "unique Identifier. This field is a string that contains "
573 "12 hexadecimal digits. If the property "
574 "IdentifierSelectionSupported in class "
575 "iSCSIConfigurationCapabilities is false, this parameter "
576 "MUST be set to NULL."),
577 MaxLen ( 13 ),
578 ModelCorrespondence {
579 "CIM_iSCSIConfigurationCapabilities.IdentifierSelectionSupported"
580 }]
581 string Identifier,
582 [IN, Description (
583 "Array of References to either TCPProtocolEndpoints "
584 "representing Target NetworkPortals or IPProtocolEndpoint "
585 "instances representing Initiator NetworkPortals. If "
586 "TCPProtocolEndpoints are supplied each MUST be in turn "
587 "associated to an instance of IPProtocolEndpoint via a "
588 "BindsTo association in order to provide the Target "
589 a.dunfey 1.1 "Network Portal functionality. The selected Portal "
590 "endpoints MUST be from the same "
591 "SystemSpecificCollection, which represents a Portal "
592 "Group.")]
593 CIM_ProtocolEndpoint REF NetworkPortals[],
594 [IN ( false ), OUT, Description (
595 "A reference to the new iSCSIProtocolEndpoint that is "
596 "created.")]
597 CIM_iSCSIProtocolEndpoint REF iSCSIPort );
598
599 [Description (
600 "The method deletes an instance of iSCSIProtocolEndpoint and "
601 "all associations in which this iSCSIProtocolEndpoint is "
602 "referenced."),
603 ValueMap { "0", "1", "2", "3", "4", "5", "6..4095", "4096",
604 "4097..32767", "32768..65535" },
605 Values { "Success", "Not Supported", "Unspecified Error",
606 "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved",
607 "Endpoint Non-Existent", "Method Reserved",
608 "Vendor Specific" }]
609 uint32 DeleteiSCSIProtocolEndpoint (
610 a.dunfey 1.1 [IN, Description (
611 "The iSCSIProtocolEndpoint to be deleted.")]
612 CIM_iSCSIProtocolEndpoint REF iSCSIPort );
613
614 [Description (
615 "This method provides for modification of an existing "
616 "iSCSIProtocolEndpoint by associating a TCPProtocolEndpoint "
617 "representing an Target NetworkPortal or an "
618 "IPProtocolEndpoint instance representing an Initiator "
619 "NetworkPortal to the iSCSIProtocolEndpoint. The association "
620 "is persisted as an instance of BindsTo. The selected Portal "
621 "endpoint must be from the same SystemSpecificCollection, "
622 "which represents a Portal Group, as the endpoints currently "
623 "bound to the iSCSIProtocolEndpoint. This action is intended "
624 "to be reversed by the use of the intrinsic method "
625 "'DeleteInstance'."),
626 ValueMap { "0", "1", "2", "3", "4", "5", "6..4095", "4096",
627 "4097", "4098", "4099", "4100..32767", "32768..65535" },
628 Values { "Success", "Not Supported", "Unspecified Error",
629 "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved",
630 "ProtocolEndpoint Non-Existent",
631 a.dunfey 1.1 "TCPProtocolEndpoint Not Bound To Underlying "
632 "IPProtocolEndpoint",
633 "ProtocolEndpoint In Use By Other iSCSIProtocolEndpoint In "
634 "Same Target SCSIProtocolController",
635 "ProtocolEndpoint Not From Same Endpoint Collection",
636 "Method Reserved", "Vendor Specific" }]
637 uint32 BindiSCSIProtocolEndPoint (
638 [IN, Description (
639 "A reference to the iSCSIProtocolEndpoint.")]
640 CIM_iSCSIProtocolEndpoint REF iSCSIPort,
641 [IN, Description (
642 "The ProtocolEndpoint instance. If an iSCSI Initiator "
643 "Port is being modified this will be an "
644 "IPProtocolEndpoint. If an iSCSI Target Port is being "
645 "modified this will be a TCPProtocolEndpoint.")]
646 CIM_ProtocolEndpoint REF NetworkPortal );
647 };
648
649
650 // ==================================================================
651 // iSCSIConfigurationCapabilities
652 a.dunfey 1.1 // ==================================================================
653 [Experimental, Version ( "2.8.1000" ), Description (
654 "A subclass of Capabilities that defines the capabilities of a "
655 "iSCSIConfigurationService.")]
656
657 class CIM_iSCSIConfigurationCapabilities : CIM_Capabilities {
658
659 [Description (
660 "iSCSI Ports are modeled by instances of "
661 "iSCSIProtocolEndpoints. If true, this property indicates "
662 "that iSCSIProtocolEndpoints may be dynamically created and "
663 "deleted in a Node. If false, iSCSIProtocolEndpoints are "
664 "preexisting and statically defined within the Node.")]
665 boolean iSCSIProtocolEndpointCreationSupported = false;
666
667 [Description (
668 "If false, the implementation chooses the Identifier for the "
669 "iSCSIProtocolEndpoint and the Identifier cannot be supplied "
670 "as a parameter to CreateiSCSIProtocolEndpoint and MUST be "
671 "NULL.")]
672 boolean IdentifierSelectionSupported = false;
673 a.dunfey 1.1 };
674
675
676 // ==================================================================
677 // iSCSILoginStatistics
678 // ==================================================================
679 [Experimental, Version ( "2.8.1000" ), Description (
680 "Statistics for Logins and Logouts to or from an iSCSI Node. An "
681 "instance of this class will be associated by "
682 "ElementStatisticalData to an instance of "
683 "SCSIProtocolController that represents the Node. The Node can "
684 "be either an Initiator or Target and so the interpretation of "
685 "the properties in this class varies accordingly.")]
686 class CIM_iSCSILoginStatistics : CIM_StatisticalData {
687
688 [Description (
689 "This property counts the number of times a login attempt "
690 "from this node(initiator) or to this node(target) has "
691 "failed."),
692 Counter,
693 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLoginFailures",
694 a.dunfey 1.1 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginFailures" }]
695 uint64 LoginFailures;
696
697 [Description (
698 "The timestamp of the most recent failure of a login attempt "
699 "from this node(initiator) or to this node(target). A value "
700 "of zero indicates that no such failures have occurred since "
701 "the last system boot."),
702 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLastFailureTime",
703 "MIB.IETF|iSCSI-MIB.iscsiTgtLastFailureTime" },
704 ModelCorrespondence {
705 "CIM_iSCSILoginStatistics.LastLoginFailureType",
706 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteNodeName" }]
707 datetime LastLoginFailureTime;
708
709 [Description (
710 "The type of the most recent failure of a login attempt from "
711 "this node(initiator) or to this node(target)."),
712 ValueMap { "1", "2", "3", "4", "5" },
713 Values { "Other", "Negotiate", "Authenticate", "Authorize",
714 "Redirect" },
715 a.dunfey 1.1 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLastFailureType",
716 "MIB.IETF|iSCSI-MIB.iscsiTgtLastFailureType" },
717 ModelCorrespondence {
718 "CIM_iSCSILoginStatistics.OtherLastLoginFailureType",
719 "CIM_iSCSILoginStatistics.LastLoginFailureTime",
720 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteNodeName" }]
721 uint16 LastLoginFailureType;
722
723 [Description (
724 "A string describing the type of the last login failure when "
725 "LastLoginFailureType is equal to the value 1, \"Other\"."),
726 ModelCorrespondence {
727 "CIM_iSCSILoginStatistics.LastLoginFailureType" }]
728 string OtherLastLoginFailureType;
729
730 [Description (
731 "The iSCSI name of the remote node that failed the last "
732 "login attempt."),
733 MappingStrings {
734 "MIB.IETF|iSCSI-MIB.iscsiIntrLastTgtFailureName",
735 "MIB.IETF|iSCSI-MIB.iscsiTgtLastIntrFailureName" },
736 a.dunfey 1.1 ModelCorrespondence {
737 "CIM_iSCSILoginStatistics.LastLoginFailureTime",
738 "CIM_iSCSILoginStatistics.LastLoginFailureType",
739 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteAddressType",
740 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteAddress" }]
741 string LastLoginFailureRemoteNodeName;
742
743 [Description (
744 "The type of Internet Network Address of the remote node "
745 "that failed the last login attempt."),
746 ValueMap { "1", "2" },
747 Values { "IPv4", "IPv6" },
748 MappingStrings {
749 "MIB.IETF|iSCSI-MIB.iscsiIntrLastTgtFailureAddrType",
750 "MIB.IETF|iSCSI-MIB.iscsiTgtLastIntrFailureAddrType" },
751 ModelCorrespondence {
752 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteNodeName",
753 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteAddress" }]
754 uint16 LastLoginFailureRemoteAddressType;
755
756 [Description (
757 a.dunfey 1.1 "An Internet Network Address giving the host address of the "
758 "remote node that failed the last login attempt."),
759 MappingStrings {
760 "MIB.IETF|iSCSI-MIB.iscsiIntrLastTgtFailureAddr",
761 "MIB.IETF|iSCSI-MIB.iscsiTgtLastIntrFailureAddr" },
762 ModelCorrespondence {
763 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteNodeName",
764 "CIM_iSCSILoginStatistics.LastLoginFailureRemoteAddressType"
765 }]
766 uint32 LastLoginFailureRemoteAddress;
767
768 [Description (
769 "The count of Login Response PDUs with status 0x0000, Accept "
770 "Login, received by this node(initator), or transmitted by "
771 "this node (target)."),
772 Counter,
773 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLoginAcceptRsps",
774 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginAccepts" }]
775 uint64 SuccessfulLogins;
776
777 [Description (
778 a.dunfey 1.1 "If the node is an initiator this property is the number of "
779 "times it has aborted a login because parameter negotiation "
780 "with the target failed. \n"
781 "If the node is a target the property is the number of times "
782 "a it has effectively refused a login because the parameter "
783 "negotiation failed. While this situation can occur, the "
784 "exact mechanism is as yet undefined in the iSCSI Protocol "
785 "Spec."),
786 Counter,
787 MappingStrings {
788 "MIB.IETF|iSCSI-MIB.iscsiIntrLoginNegotiateFails",
789 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginNegotiateFails" }]
790 uint64 NegotiationLoginFailures;
791
792 [Description (
793 "If the node is an initiator this property is the number of "
794 "times it has aborted a login because the target could not "
795 "be authenticated. If the node is a target this property is "
796 "the count of Login Response PDUs with status 0x0201, "
797 "Authentication Failed, transmitted by this target."),
798 Counter,
799 a.dunfey 1.1 MappingStrings {
800 "MIB.IETF|iSCSI-MIB.iscsiIntrLoginAuthenticateFails",
801 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginAuthenticateFails" }]
802 uint64 AuthenticationLoginFailures;
803
804 [Description (
805 "If the node is an initiator this property is the count of "
806 "Login Response PDUs with status class 0x201, "
807 "'Authentication Failed', received by this initiator. If the "
808 "node is a target the property is the count of Login "
809 "Response PDUs with status 0x0202, 'Forbidden Target', "
810 "transmitted by this target."),
811 Counter,
812 MappingStrings {
813 "MIB.IETF|iSCSI-MIB.iscsiIntrLoginAuthFailRsps",
814 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginAuthorizeFails" }]
815 uint64 AuthorizationLoginFailures;
816
817 [Description (
818 "The count of Login Response PDUs with status class 0x01, "
819 "Redirection, received by this node(initiator) or "
820 a.dunfey 1.1 "transmitted by this node(target)."),
821 Counter,
822 MappingStrings {
823 "MIB.IETF|iSCSI-MIB.iscsiIntrLoginRedirectRsps",
824 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginRedirects" }]
825 uint64 LoginRedirects;
826
827 [Description (
828 "The number of failure Login Response PDUs which were "
829 "received by this node(initiator) or were transmitted by "
830 "this node(target), and which were not counted by any other "
831 "property in this class."),
832 Counter,
833 MappingStrings {
834 "MIB.IETF|iSCSI-MIB.iscsiIntrLoginOtherFailRsps",
835 "MIB.IETF|iSCSI-MIB.iscsiTgtLoginOtherFails" }]
836 uint64 OtherLoginFailures;
837
838 [Description (
839 "The count of Logout Command PDUs generated by this node "
840 "(initiator) or received by this node(target), with reason "
841 a.dunfey 1.1 "code 0 (closes the session)."),
842 Counter,
843 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLogoutNormals",
844 "MIB.IETF|iSCSI-MIB.iscsiTgtLogoutNormals" }]
845 uint64 NormalLogouts;
846
847 [Description (
848 "The count of Logout Command PDUs generated by this node, "
849 "(initiator) or received by this node(target), with any "
850 "reason code other than 0."),
851 Counter,
852 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiIntrLogoutOthers",
853 "MIB.IETF|iSCSI-MIB.iscsiTgtLogoutOthers" }]
854 uint64 OtherLogouts;
855 };
856
857
858 // ==================================================================
859 // iSCSISessionFailures
860 // ==================================================================
861 [Experimental, Version ( "2.8.1000" ), Description (
862 a.dunfey 1.1 "Failure Statistics for Sessions associated with a iSCSI Node. "
863 "An instance of this class will be associated by "
864 "ElementStatisticalData to an instance of "
865 "SCSIProtocolController representing an iSCSI Node. These "
866 "statistics are associated to a Node since they describe the "
867 "aggregated Session data for all failed Sessions associated to "
868 "iSCSI protocol endpoints used by the Node.")]
869 class CIM_iSCSISessionFailures : CIM_StatisticalData {
870
871 [Description (
872 "The number of times a session belonging to this Network "
873 "Entity has been failed."),
874 Counter,
875 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiInstSsnFailures" }]
876 uint64 SessionFailures;
877
878 [Description (
879 "The type of the last session failure."),
880 ValueMap { "1", "2", "3", "4" },
881 Values { "Other", "Digest", "Timeout", "Format" },
882 MappingStrings {
883 a.dunfey 1.1 "MIB.IETF|iSCSI-MIB.iscsiInstLastSsnFailureType" },
884 ModelCorrespondence {
885 "CIM_iSCSISessionFailures.OtherLastSessionFailureType",
886 "CIM_iSCSISessionFailures.LastSessionFailureRemoteNodeName" }]
887 uint16 LastSessionFailureType;
888
889 [Description (
890 "A string describing the type of the last Session failure "
891 "when LastSessionFailureType is equal to the value 1, "
892 "\"Other\"."),
893 ModelCorrespondence {
894 "CIM_iSCSISessionFailures.LastSessionFailureType" }]
895 string OtherLastSessionFailureType;
896
897 [Description (
898 "The iSCSI name of the remote node from the failed session."),
899 MappingStrings {
900 "MIB.IETF|iSCSI-MIB.iscsiInstLastSsnRmtNodeName" },
901 ModelCorrespondence {
902 "CIM_iSCSISessionFailures.LastSessionFailureType" }]
903 string LastSessionFailureRemoteNodeName;
904 a.dunfey 1.1
905 [Description (
906 "The count of sessions which were failed due to receipt of a "
907 "PDU containing header or data digest errors."),
908 Counter,
909 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiInstSsnDigestErrors" }]
910 uint64 SessionDigestFailures;
911
912 [Description (
913 "The count of sessions which were failed due to a sequence "
914 "exceeding a time limit."),
915 Counter,
916 MappingStrings {
917 "MIB.IETF|iSCSI-MIB.iscsiInstSsnCxnTimeoutErrors" }]
918 uint64 SessionConnectionTimeoutFailures;
919
920 [Description (
921 "The count of sessions which were failed due to receipt of a "
922 "PDU which contained a format error."),
923 Counter,
924 MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiInstSsnFormatErrors" }]
925 a.dunfey 1.1 uint64 SessionFormatErrors;
926 };
927
928
929 // ===================================================================
930 // end of file
931 // ===================================================================
|