1 kumpf 1.2 // ===================================================================
2 // Title: Network Collections 2.7
3 // Filename: Network27_Collections.mof
4 // Version: 2.7.0
5 // Status: Final
6 // Date: April 15, 2003
7 // ===================================================================
8 // Copyright 1998-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 kumpf 1.2 // 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 kumpf 1.2 // ===================================================================
44 // Description: The Network Model extends the management concepts to
45 // represent protocol interfaces and network/protocol
46 // services. This file defines network "collections" such
47 // as logical networks (collections of protocol endpoints)
48 // and IP address ranges (an implicit collection).
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.7
55 // CR803 - Deprecate IPAddressRange and add RangeOfIPAddresses
56 // CR804 - Update description for IBSubnet.SubnetMask and add
57 // .PrefixLength
58 // CR920 - Add missing parenthesis to the Description for IPSubnet.
59 // PrefixLength
60 // CR958 - Deprecation of LogicalNetwork in lieu of ConnectivityCollection
61 // CR976 - Addition of the NamedAddressCollection class
62 // CR982 - Removal of Experimental for preliminary to final
63 // CR983 - Deprecations for v2.7 made final
64 kumpf 1.2 // ===================================================================
65
66 #pragma Locale ("en_US")
67
68
69 // ==================================================================
70 // LogicalNetwork
71 // ==================================================================
72 [Deprecated {"CIM_ConnectivityCollection"}, Version ("2.7.0"),
73 Description (
74 "A LogicalNetwork groups together a set of "
75 "ProtocolEndpoints of a given type which are able to "
76 "communicate with each other directly. It is used for "
77 "describing the characteristics of the grouping "
78 "and/or its associated medium. A LogicalNetwork "
79 "represents the ability to send and/or receive data "
80 "over a network. \n"
81 "\n"
82 "This class is deprecated in lieu of ConnectivityCollection. "
83 "The latter better defines that a LogicalNetwork 'collects' "
84 "ProtocolEndpoints and other related entities, and is hosted "
85 kumpf 1.2 "within an AdminDomain.") ]
86 class CIM_LogicalNetwork : CIM_CollectionOfMSEs {
87
88 [Key, Deprecated {"No value"},
89 Propagated ("CIM_AdminDomain.CreationClassName"),
90 MaxLen (256), Description (
91 "The scoping AdminDomain's CreationClassName.") ]
92 string SystemCreationClassName;
93
94 [Key, Deprecated {"No value"},
95 Propagated ("CIM_AdminDomain.Name"), MaxLen (256),
96 Description ("The scoping AdminDomain's Name.") ]
97 string SystemName;
98
99 [Key, Deprecated {"No value"},
100 MaxLen (256), Description (
101 "CreationClassName indicates the name of the class or the "
102 "subclass used in the creation of an instance. When used "
103 "with the other key properties of this class, this property "
104 "allows all instances of this class and its subclasses to "
105 "be uniquely identified.") ]
106 kumpf 1.2 string CreationClassName;
107
108 [Key, Deprecated {"CIM_ConnectivityCollection.InstanceID"},
109 MaxLen (256), Description (
110 "The Name property defines the label by which the object is "
111 "known.") ]
112 string Name;
113
114 [Deprecated {"CIM_ConnectivityCollection.ConnectivityType"},
115 Description (
116 "Type is an enumeration that provides additional "
117 "information that can be used to help categorize and "
118 "classify different instances of this class. \n"
119 "\n"
120 "Subclasses should ensure that they are of the "
121 "appropriate type defined in the Type enumeration. "
122 "That is, the IPSubnet subclass should define its "
123 "property as either IPv4 or IPv6, as opposed to, "
124 "for example, ATM."),
125 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
126 "10", "11", "12", "13", "14", "15", "16", "17", "18"},
127 kumpf 1.2 Values {"Unknown", "Other", "IPv4", "IPv6",
128 "IPX", "AppleTalk", "DECnet", "SNA", "CONP",
129 "CLNP", "VINES", "XNS", "ATM", "Frame Relay",
130 "Ethernet", "TokenRing", "FDDI", "Infiniband",
131 "Fibre Channel"},
132 ModelCorrespondence {
133 "CIM_LogicalNetwork.OtherTypeDescription"} ]
134 uint16 NetworkType;
135
136 [Deprecated {"CIM_ConnectivityCollection.OtherTypeDescription"},
137 MaxLen(64), Description (
138 "A string describing the type of protocol that is "
139 "being run by this LogicalNetwork, when the value of "
140 "the Type property (or any of its subclasses) "
141 "is set to 1 (i.e., \"Other\"). This property "
142 "should be set to NULL when the Type property is "
143 "any value other than 1."),
144 ModelCorrespondence {"CIM_LogicalNetwork.NetworkType"} ]
145 string OtherTypeDescription;
146 };
147
148 kumpf 1.2
149 // ==================================================================
150 // NetworksInAdminDomain
151 // ==================================================================
152 [Association, Version ("2.7.0"),
153 Deprecated {"CIM_HostedCollection"},
154 Description (
155 "This association is used to define the set of Logical"
156 "Networks contained in an AdminDomain. This has the implied "
157 "semantics that this set of LogicalNetworks are all "
158 "managed by the same network administrator that manages "
159 "the domain. \n"
160 "\n"
161 "Since the LogicalNetwork class is deprecated in lieu of "
162 "ConnectivityCollection, this association is no longer "
163 "necessary. It is deprecated to the HostedCollection "
164 "association, that is inherited by ConnectivityCollection "
165 "from its superclass, SystemSpecificCollection.") ]
166 class CIM_NetworksInAdminDomain {
167
168 [Key, Deprecated {"CIM_HostedCollection.Antecedent"},
169 kumpf 1.2 Min (1), Max (1), Description (
170 "The AdminDomain that hosts the various LogicalNetworks.") ]
171 CIM_AdminDomain REF Domain;
172
173 [Weak, Key, Deprecated {"CIM_HostedCollection.Dependent"},
174 Description (
175 "The LogicalNetworks that are hosted by the AdminDomain.") ]
176 CIM_LogicalNetwork REF Network;
177 };
178
179
180 // ==================================================================
181 // IPSubnet
182 // ==================================================================
183 [Deprecated {"CIM_IPConnectivitySubnet"}, Version ("2.7.0"),
184 Description (
185 "An IPSubnet represents a group of related "
186 "IPProtocolEndpoints that can communicate with each other "
187 "directly using IP. It is used for describing the "
188 "characteristics of the grouping. \n"
189 "\n"
190 kumpf 1.2 "Since this class' superclass (LogicalNetwork) has been "
191 "deprecated (in order to define more consistent 'collection' "
192 "semantics), this class is also deprecated.") ]
193 class CIM_IPSubnet : CIM_LogicalNetwork {
194
195 [Deprecated {"CIM_IPConnectivitySubnet.SubnetNumber"},
196 Description (
197 "The IP address of the entire subnet, formatted according "
198 "to the appropriate convention as defined in the AddressType "
199 "property of this class.") ]
200 string SubnetNumber;
201
202 [Deprecated {"CIM_IPConnectivitySubnet.SubnetMask"},
203 Description (
204 "The mask for the starting IPv4 address of the IPSubnet, "
205 "if needed (i.e., if the AddressType property is 1, "
206 "\"IPv4\").") ]
207 string SubnetMask;
208
209 [Deprecated {"CIM_IPConnectivitySubnet.PrefixLength"},
210 Description (
211 kumpf 1.2 "The prefix length for IPv6 addresses in the IPSubnet, "
212 "if needed (i.e., if the AddressType property is 2, "
213 "\"IPv6\").") ]
214 uint8 PrefixLength;
215
216 [Deprecated {"CIM_IPConnectivitySubnet.AddressType"},
217 Description (
218 "An enumeration that describes the format of the address "
219 "properties in IPSubnet."),
220 ValueMap {"0", "1", "2"},
221 Values {"Unknown", "IPv4", "IPv6"} ]
222 uint16 AddressType;
223 };
224
225
226 // ==================================================================
227 // LANSegment
228 // ==================================================================
229 [Deprecated {"CIM_LANConnectivitySegment"}, Version ("2.7.0"),
230 Description (
231 "A collection of LAN Endpoints of a particular type "
232 kumpf 1.2 "that are able to intercommunicate directly without "
233 "the assistance of bridging or routing services. \n"
234 "\n"
235 "Since this class' superclass (LogicalNetwork) has been "
236 "deprecated (in order to define more consistent 'collection' "
237 "semantics), this class is also deprecated.") ]
238 class CIM_LANSegment : CIM_LogicalNetwork {
239
240 [Deprecated {"CIM_LANConnectivitySegment.LANID"},
241 MaxLen(64), Description (
242 "A label or identifier for the LAN Segment."),
243 ModelCorrespondence {"CIM_LANEndpoint.LANID"} ]
244 string LANID;
245
246 [Deprecated {"CIM_LANConnectivitySegment.ConnectivityType"},
247 Description (
248 "An indication of the kind of technology used on the LAN."),
249 ValueMap {"0", "1", "2", "3", "4"},
250 Values {"Unknown", "Other", "Ethernet", "TokenRing", "FDDI"},
251 ModelCorrespondence {"CIM_LANEndpoint.LANType"} ]
252 uint16 LANType;
253 kumpf 1.2
254 [Deprecated {"CIM_LANConnectivitySegment.OtherTypeDescription"},
255 MaxLen(64), Description (
256 "A string describing the type of technology used on the LAN "
257 "when the value of the LANType property of this class (or "
258 "any of its subclasses) is set to 1 (i.e., \"Other\"). The "
259 "format of the string inserted in this property should be "
260 "similar in format to the values defined for the LANType "
261 "property. This property should be set to NULL when the "
262 "LANType property is any value other than 1."),
263 ModelCorrespondence {"CIM_LANSegment.LANType"} ]
264 string OtherLANType;
265 };
266
267
268 // ==================================================================
269 // IPXNetwork
270 // ==================================================================
271 [Deprecated {"CIM_IPXConnectivityNetwork"}, Version ("2.7.0"),
272 Description (
273 "A network or subnet that uses the IPX protocol. Since "
274 kumpf 1.2 "this class' superclass (LogicalNetwork) has been "
275 "deprecated (in order to define more consistent 'collection' "
276 "semantics), this class is also deprecated.") ]
277 class CIM_IPXNetwork : CIM_LogicalNetwork {
278
279 [Deprecated {"CIM_IPXConnectivityNetwork.NetworkNumber"},
280 Description (
281 "An IPX network number formatted as eight hexadecimal "
282 "digits (e.g., \"00112233\").") ]
283 string NetworkNumber;
284 };
285
286
287 // ==================================================================
288 // InLogicalNetwork
289 // ==================================================================
290 [Association, Aggregation, Deprecated {"CIM_MemberOfCollection"},
291 Version ("2.7.0"), Description (
292 "This association defines a ProtocolEndpoint as a member of "
293 "a specific LogicalNetwork. \n"
294 "\n"
295 kumpf 1.2 "Since the LogicalNetwork class is deprecated in lieu of "
296 "ConnectivityCollection, this association is no longer "
297 "necessary. It is deprecated to the MemberOfCollection "
298 "association, that is inherited by ConnectivityCollection "
299 "from its superclass, Collection.") ]
300 class CIM_InLogicalNetwork : CIM_CollectedMSEs {
301
302 [Deprecated {"CIM_MemberOfCollection.Collection"},
303 Override ("Collection"), Aggregate,
304 Description (
305 "The LogicalNetwork that groups the ProtocolEndpoint "
306 "instances.") ]
307 CIM_LogicalNetwork REF Collection;
308
309 [Deprecated {"CIM_MemberOfCollection.Member"},
310 Override ("Member"), Description (
311 "The child ProtocolEndpoints that are components of the "
312 "LogicalNetwork.") ]
313 CIM_ProtocolEndpoint REF Member;
314 };
315
316 kumpf 1.2
317 // ==================================================================
318 // RangeOfIPAddresses
319 // ==================================================================
320 [Version ("2.7.0"), Description (
321 "The class RangeOfIPAddresses represents an implicit grouping "
322 "(or 'pool') of IP addresses specified by the properties, "
323 "Start and EndAddress. It is defined as scoped/contained by "
324 "a system such as an individual network element or an "
325 "admin domain.") ]
326 class CIM_RangeOfIPAddresses : CIM_SystemSpecificCollection {
327
328 [Description (
329 "The starting IP address of the AddressRange, formatted "
330 "according to the appropriate convention as defined in the "
331 "AddressType property of this class (e.g., 171.79.6.40)."),
332 ModelCorrespondence {"CIM_RangeOfIPAddresses.AddressType"} ]
333 string StartAddress;
334
335 [Description (
336 "The ending IP address of the AddressRange, formatted "
337 kumpf 1.2 "according to the appropriate convention as defined in the "
338 "AddressType property of this class (e.g., 171.79.6.40)."),
339 ModelCorrespondence {"CIM_RangeOfIPAddresses.AddressType"} ]
340 string EndAddress;
341
342 [Description (
343 "An enumeration that defines how the address and mask "
344 "properties are formatted."),
345 ValueMap {"0", "1", "2"},
346 Values {"Unknown", "IPv4", "IPv6"} ]
347 uint16 AddressType;
348 };
349
350
351 // ==================================================================
352 // IPAddressRange
353 // ==================================================================
354 [Abstract, Version ("2.7.0"),
355 Deprecated {"CIM_RangeOfIPAddresses"}, Description (
356 "IPAddressRange represents a grouping of specific addresses, "
357 "and provides additional semantics for this group if "
358 kumpf 1.2 "appropriate. The class is deprecated in lieu of the "
359 "concrete class RangeOfIPAddresses since there is "
360 "sufficient information for the class to be instantiated. "
361 "In addition, an address range should be defined in the "
362 "context of a System (for example, a network element or an "
363 "admin domain). These semantics are incorporated in the "
364 "RangeOfIPAddresses class.") ]
365 class CIM_IPAddressRange : CIM_CollectionOfMSEs {
366
367 [Deprecated {"CIM_RangeOfIPAddresses.StartAddress"},
368 Description (
369 "The starting IP address of the AddressRange, formatted "
370 "according to the appropriate convention as defined in the "
371 "AddressType property of this class (e.g., 171.79.6.40).") ]
372 string StartAddress;
373
374 [Deprecated {"CIM_RangeOfIPAddresses.EndAddress"},
375 Description (
376 "The ending IP address of the AddressRange, formatted "
377 "according to the appropriate convention as defined in the "
378 "AddressType property of this class (e.g., 171.79.6.40).") ]
379 kumpf 1.2 string EndAddress;
380
381 [Deprecated {"CIM_RangeOfIPAddresses.AddressType"},
382 Description (
383 "An enumeration that defines how to format the address and "
384 "mask of the address range that defines this IPSubnet. \n"
385 "\n"
386 "Whenever possible, IPv4-compatible addresses should "
387 "be used instead of IPv6 addresses (see RFC 2373, "
388 "section 2.5.4). In order to have a consistent format "
389 "for IPv4 addresses in a mixed IPv4/v6 environment, all "
390 "IPv4 addresses and both IPv4-compatible IPv6 addresses "
391 "and IPv4-mapped IPv6 addresses, per RFC 2373, section "
392 "2.5.4, should be formatted in standard IPv4 format."),
393 ValueMap {"0", "1", "2"},
394 Values {"Unknown", "IPv4", "IPv6"} ]
395 uint16 TypeOfAddress;
396
397 [Deprecated {"No value"}, Description (
398 "This attribute defines the region that addresses can be "
399 "allocated to."),
400 kumpf 1.2 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8"},
401 Values {"Unknown",
402 "Multiregional: 192.0.0.0 to 193.255.255.255",
403 "Europe: 194.0.0.0 to 195.255.255.255",
404 "Others: 196.0.0.0 to 197.255.255.255",
405 "North America: 198.0.0.0 to 199.255.255.255",
406 "Central & South America: 200.0.0.0 to 201.255.255.255",
407 "Pacific Rim: 202.0.0.0 to 203.255.255.255",
408 "Others: 204.0.0.0 to 205.255.255.255",
409 "Others: 206.0.0.0 to 207.255.255.255"} ]
410 uint16 AllocationRegion;
411 };
412
413
414 // ==================================================================
415 // NamedAddressCollection
416 // ==================================================================
417 [Version ("2.7.0"), Description (
418 "A NamedAddressCollection groups ProtocolEndpoints/addresses "
419 "and other network identifiers for the purposes of assigning "
420 "a single name (i.e., an alias). It is a subclass of "
421 kumpf 1.2 "SystemSpecificCollection to force the definition of the "
422 "'named collection' in the context of a System (for example, "
423 "either a ComputerSystem or an AdminDomain hosting a naming "
424 "alias).") ]
425 class CIM_NamedAddressCollection : CIM_SystemSpecificCollection {
426
427 [Required, Write, Description (
428 "A name (alias) for the NamedAddressCollection which is unique "
429 "in the context of the hosting System.") ]
430 string CollectionAlias;
431 };
432
433
434 // ==================================================================
435 // ConnectivityCollection
436 // ==================================================================
437 [Version ("2.7.0"), Description (
438 "A ConnectivityCollection groups together a set of "
439 "ProtocolEndpoints of the same 'type' (i.e., class) which are "
440 "able to communicate with each other. It may also group "
441 "related Systems, users or other ManagedElements. A "
442 kumpf 1.2 "ConnectivityCollection represents the ability to send "
443 "and/or receive data over a set of ProtocolEndpoints. The "
444 "collection is defined in the context of an AdminDomain or "
445 "scoping ComputerSystem. This is mandated by the Hosted"
446 "Collection association on the SystemSpecificCollection "
447 "superclass. Note that the entities aggregated into the "
448 "Collection are specified using the association, "
449 "MemberOfCollection.") ]
450 class CIM_ConnectivityCollection : CIM_SystemSpecificCollection {
451
452 [Description (
453 "An enumeration describing the current or potential "
454 "connectivity between endpoints in this collection. "
455 "Connectivity may be provided or not, or may be in "
456 "a degraded/partitioned state if one or more endpoints or "
457 "links have failed. The latter would prevent full "
458 "connectivity between all elements in the Collection, "
459 "but would permit connectivity between subsets."),
460 ValueMap {"0", "2", "3", "4"},
461 Values {"Unknown", "Connectivity/Up",
462 "No Connectivity/Down", "Partitioned"} ]
463 kumpf 1.2 uint16 ConnectivityStatus;
464 };
465
466
467 // ==================================================================
468 // IPConnectivitySubnet
469 // ==================================================================
470 [Version ("2.7.0"), Description (
471 "An IPConnectivitySubnet represents a group of related "
472 "IPProtocolEndpoints that can communicate with each other, "
473 "as members of a subnet. The class describes the "
474 "characteristics of the subnet.") ]
475 class CIM_IPConnectivitySubnet : CIM_ConnectivityCollection {
476
477 [Description (
478 "The IP address of the entire subnet, formatted according "
479 "to the appropriate convention as defined in the AddressType "
480 "property of this class."),
481 ModelCorrespondence {"CIM_IPConnectivitySubnet.AddressType"} ]
482 string SubnetNumber;
483
484 kumpf 1.2 [Description (
485 "The mask for the starting IPv4 address of the IP subnet, "
486 "if needed (i.e., if the AddressType property is 1, "
487 "\"IPv4\").") ]
488 string SubnetMask;
489
490 [Description (
491 "The prefix length for IPv6 addresses in the IP subnet, "
492 "if needed (i.e., if the AddressType property is 2, "
493 "\"IPv6\").") ]
494 uint8 PrefixLength;
495
496 [Description (
497 "An enumeration that describes the format of the address "
498 "properties in IPConnectivitySubnet."),
499 ValueMap {"0", "1", "2"},
500 Values {"Unknown", "IPv4", "IPv6"} ]
501 uint16 AddressType;
502 };
503
504
505 kumpf 1.2 // ==================================================================
506 // LANConnectivitySegment
507 // ==================================================================
508 [Version ("2.7.0"), Description (
509 "A collection of LAN Endpoints of a particular type (i.e., "
510 "Ethernet or Token Ring), that are able to intercommunicate "
511 "without the assistance of bridging or routing services. ") ]
512 class CIM_LANConnectivitySegment : CIM_ConnectivityCollection {
513
514 [MaxLen(64), Description (
515 "A label or identifier for the LAN segment."),
516 ModelCorrespondence {"CIM_LANEndpoint.LANID"} ]
517 string LANID;
518
519 [Description (
520 "An enumeration that categorizes and classifies instances "
521 "of this class. Instances SHOULD aggregate entities of "
522 "the appropriate 'type', as defined by the value of "
523 "this enumeration."),
524 ValueMap {"0", "1", "2", "3", "4"},
525 Values {"Unknown", "Other", "Ethernet", "TokenRing", "FDDI"},
526 kumpf 1.2 ModelCorrespondence {
527 "CIM_LANConnectivitySegment.OtherTypeDescription"} ]
528 uint16 ConnectivityType;
529
530 [Description (
531 "A string describing the type of connectivity that is "
532 "supported by this Collection, when the value of "
533 "the Type property is set to 1 (i.e., \"Other\"). This "
534 "property should be set to NULL when the Type property "
535 "is any value other than 1."),
536 ModelCorrespondence {
537 "CIM_LANConnectivitySegment.ConnectivityType"} ]
538 string OtherTypeDescription;
539
540 };
541
542
543 // ==================================================================
544 // IPXConnectivityNetwork
545 // ==================================================================
546 [Version ("2.7.0"), Description (
547 kumpf 1.2 "A network or subnet that uses the IPX protocol.") ]
548 class CIM_IPXConnectivityNetwork : CIM_ConnectivityCollection {
549
550 [Description (
551 "An IPX network number formatted as eight hexadecimal "
552 "digits (e.g., \"00112233\").") ]
553 string NetworkNumber;
554 };
555
556
557 // ===================================================================
558 // end of file
559 // ===================================================================
|