1 tony 1.1 // ===================================================================
2 // Title: Device Ports 2.8
3 // Filename: Device28_Ports.mof
4 // Version: 2.8
5 // Release: Preliminary
6 // Date: 07/31/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 // concepts and classes needed to manage port devices,
47 // connecting to communications media and networks.
48 //
49 // The object classes below are listed in an order that
50 // avoids forward references. Required objects, defined
51 // by other working groups, are omitted.
52 // ==================================================================
53 // Change Log for v2.8 Preliminary
54 // CR1003 - Add wireless to NetworkPort.LinkTechnology,
55 // add WirelessPort
56 // CR1055 - add UsageRestriction to LogicalPort
57 // CR1071 - Return LogicalModule, ModulePort, and PortActiveConnection
58 // CR1027 - Add LogicalPort.RequestedSpeed
59 // CR1034 - Add Name property to LogicalPortGroup
60 // CR1101 - Fix description for LogicalPortGroup
61 // CR1096 - Addition of SCSIport
62 // CR1128 - Addition of HostedDependency
63 //
64 tony 1.1 // Change Log for v2.7 Final
65 // CR971 - Removal of the Experimental qualifier
66 // - Remove LogicalModule, ModulePort, and PortActiveConnection
67 // so they can be experimental in 2.8
68 //
69 // Change Log for v2.7
70 // CR630 - Remove NetworkAdapterStatistics and Add NetworkPortStatistics
71 // - Add Port
72 // CR632 - Add LogicalModule and ModulePort
73 // CR639 - Add LogicalPortGroup
74 // CR783 - Remove Port and Add NetworkPort
75 // - Add EthernetPort, EthernetPortStatistics, TokenRingPort,
76 // TokenRingStatistics, OOBAlertServiceOnNetworkPort and
77 // WakeUpServiceOnNetworkPort
78 // - Modify ModulePort Ref from Port to NetworkPort
79 // - Add NetworkVirtualPort
80 // CR845 - Add PortActiveConnection
81 // - Remove NetworkVirtualPort
82 // CR852 - Change the superclass of NetworkPortStatistics to
83 // StatisticalData
84 // CR896 - Clarify the meaning of Speed in LogicalPort and its
85 tony 1.1 // subclass NetworkPort
86 // ==================================================================
87
88 #pragma locale ("en_US")
89
90
91 // ===================================================================
92 // LogicalPort
93 // ===================================================================
94 [Version ("2.7.1000"), Description (
95 "The abstraction of a port or connection point of a Device. "
96 "This object should be instantiated when the Port has "
97 "independent management characteristics from the Device that "
98 "includes it. Examples are a Fibre Channel Port and a USB "
99 "Port.") ]
100 class CIM_LogicalPort : CIM_LogicalDevice {
101
102 [Description (
103 "The bandwidth of the Port in Bits per Second."),
104 Units ("Bits per Second") ]
105 uint64 Speed;
106 tony 1.1
107 [Description (
108 "The maximum bandwidth of the Port in Bits per Second."),
109 Units ("Bits per Second") ]
110 uint64 MaxSpeed;
111
112 [Experimental, Write, Description (
113 "The requested bandwidth of the Port in Bits per Second. "
114 "The actual bandwidth is reported in LogicalPort.Speed."),
115 Units ("Bits per Second"),
116 ModelCorrespondence {"CIM_LogicalPort.Speed"} ]
117 uint64 RequestedSpeed;
118
119 [Experimental, Description (
120 "In some circumstances, a LogicalPort may be identifiable as "
121 "a front end or back end port. An example of this would be "
122 "a storage array which might have back end ports to "
123 "communicate with disk drives and front end ports to "
124 "communicate with hosts. If there is no restriction on the "
125 "use of the port, then the value should be set to 'not "
126 "restricted'."),
127 tony 1.1 ValueMap {"0", "2", "3", "4"},
128 Values {"Unknown", "Front-end only", "Back-end only",
129 "Not restricted"} ]
130 uint16 UsageRestriction;
131 };
132
133
134 // ===================================================================
135 // PortOnDevice
136 // ===================================================================
137 [Association, Version ("2.7.1000"), Description (
138 "PortOnDevice associates a Port or connection point with its "
139 "Device.") ]
140 class CIM_PortOnDevice : CIM_HostedDependency {
141
142 [Override ("Antecedent"), Description (
143 "The Device that includes the Port.") ]
144 CIM_LogicalDevice REF Antecedent;
145
146 [Override ("Dependent"), Description (
147 "The Port on the Device.") ]
148 tony 1.1 CIM_LogicalPort REF Dependent;
149 };
150
151
152 // ==================================================================
153 // LogicalPortGroup
154 // ==================================================================
155 [Experimental, Version ("2.7.1000"), Description (
156 "A collection of one or more ports logically grouped for "
157 "administrative and discovery/topology purposes. "
158 "LogicalPortGroups define port collections for access control, "
159 "or for use in routing policy or other management tasks. For "
160 "example, in Fibre Channel and Infiniband, a LogicalPortGroup "
161 "represents the concept of a 'node'.") ]
162 class CIM_LogicalPortGroup: CIM_SystemSpecificCollection {
163
164 [Description (
165 "The Name property defines the identity by which the "
166 "LogicalPortGroup is known."),
167 MaxLen (256),
168 ModelCorrespondence {"CIM_LogicalPortGroup.NameFormat"} ]
169 tony 1.1 string Name;
170
171 [Description (
172 "The NameFormat property identifies how the Name of the "
173 "LogicalPortGroup is generated."),
174 ValueMap {"Unknown", "Other", "WWN", "GUID"}, MaxLen (64),
175 ModelCorrespondence { "CIM_LogicalPortGroup.Name",
176 "CIM_LogicalPortGroup.OtherNameFormat" } ]
177 string NameFormat;
178
179 [Description (
180 "A string describing how the LogicalPortGroup is identified "
181 "when the NameFormat is \"Other\"."),
182 ModelCorrespondence {"CIM_LogicalPortGroup.Name"} ]
183 string OtherNameFormat;
184 };
185
186
187 // ==================================================================
188 // NetworkPort
189 // ==================================================================
190 tony 1.1 [Version ("2.7.1000"), Description (
191 "NetworkPort is the logical representation of network "
192 "communications hardware - a physical connector and the "
193 "setup/operation of the network chips, at the lowest layers of "
194 "a network stack.") ]
195 class CIM_NetworkPort : CIM_LogicalPort {
196
197 [Override ("Speed"), Description (
198 "The current bandwidth of the Port in Bits per Second. For "
199 "ports that vary in bandwidth or for those where no accurate "
200 "estimation can be made, this property should contain the "
201 "nominal bandwidth."),
202 Units ("Bits per Second"),
203 MappingStrings {"MIB.IETF|MIB-II.ifSpeed",
204 "MIF.DMTF|Network Adapter 802 Port|001.5"} ]
205 uint64 Speed;
206
207 [Description (
208 "PortType is defined to force consistent naming of the "
209 "'type' property in subclasses and to guarantee unique enum "
210 "values for all instances of NetworkPort. When set to 1 "
211 tony 1.1 "(\"Other\"), related property OtherPortType contains a "
212 "string description the of the port's type. A range of "
213 "values, DMTF_Reserved, has been defined that allows "
214 "subclasses to override and define their specific port "
215 "types."),
216 ValueMap {"0", "1", "2", "3..15999", "16000..65535"},
217 Values {"Unknown", "Other", "Not Applicable", "DMTF Reserved",
218 "Vendor Reserved"},
219 ModelCorrespondence {"CIM_NetworkPort.OtherNetworkPortType"} ]
220 uint16 PortType;
221
222 [Description (
223 "Describes the type of module, when PortType is set to 1 "
224 "(\"Other\")."),
225 ModelCorrespondence {"CIM_NetworkPort.PortType"} ]
226 string OtherNetworkPortType;
227
228 [Description (
229 "NetworkPorts are often numbered relative to either a "
230 "logical modules or a network element.") ]
231 uint16 PortNumber;
232 tony 1.1
233 [Description (
234 "An enumeration of the types of links. When set to 1 "
235 "(\"Other\"), the related property OtherLinkTechnology "
236 "contains a string description of the link's type."),
237 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
238 "10", "11"},
239 Values {"Unknown", "Other", "Ethernet", "IB", "FC", "FDDI",
240 "ATM", "Token Ring", "Frame Relay", "Infrared", "BlueTooth",
241 "Wireless LAN"},
242 ModelCorrespondence {"CIM_NetworkPort.OtherLinkTechnology"} ]
243 uint16 LinkTechnology;
244
245 [Description (
246 "A string value describing LinkTechnology when it is set to "
247 "1, \"Other\"."),
248 ModelCorrespondence {"CIM_NetworkPort.LinkTechnology"} ]
249 string OtherLinkTechnology;
250
251 [Description (
252 "PermanentAddress defines the network address hardcoded into "
253 tony 1.1 "a port. This 'hardcoded' address may be changed via "
254 "firmware upgrade or software configuration. If so, this "
255 "field should be updated when the change is made. "
256 "PermanentAddress should be left blank if no 'hardcoded' "
257 "address exists for the NetworkAdapter."),
258 MaxLen (64),
259 MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.2"} ]
260 string PermanentAddress;
261
262 [Description (
263 "An array of strings indicating the network addresses for "
264 "the port."),
265 MaxLen (64),
266 MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.3"} ]
267 string NetworkAddresses[];
268
269 [Description (
270 "Boolean indicating that the port is operating in full "
271 "duplex mode.") ]
272 boolean FullDuplex;
273
274 tony 1.1 [Description (
275 "A boolean indicating whether the NetworkPort is capable of "
276 "automatically determining the speed or other communications "
277 "characteristics of the attached network media.") ]
278 boolean AutoSense;
279
280 [Description (
281 "The maximum transmission unit (MTU) that can be supported."),
282 Units ("Bytes") ]
283 uint64 SupportedMaximumTransmissionUnit;
284
285 [Description (
286 "The active or negotiated maximum transmission unit (MTU) "
287 "that can be supported."),
288 Units ("Bytes") ]
289 uint64 ActiveMaximumTransmissionUnit;
290 };
291
292 // ==================================================================
293 // WirelessPort
294 // ==================================================================
295 tony 1.1 [Experimental, Version ("2.7.1000"), Description (
296 "Capabilities and management of a wireless port.") ]
297 class CIM_WirelessPort : CIM_NetworkPort {
298
299 [Override ("PortType"), Description (
300 "The type of port."),
301 ValueMap { "0", "1", "75", "76", "77", "78", "79", "80",
302 "16000.." },
303 Values { "Unknown", "Other", "Client Station", "Repeater",
304 "Access Point", "Bridge Host", "Bridge", "Bridge Root",
305 "Vendor Reserved"} ]
306 uint16 PortType;
307
308 [Description (
309 "The current signal strength is a percentage of the total "
310 "signal strength. For example, if the current signal "
311 "strength is 3 bars out of 5, the property would hold the "
312 "value, 60."),
313 Units ("Percentage"), MinValue (0), MaxValue (100) ]
314 uint8 SignalStrength;
315 };
316 tony 1.1
317
318 // ===================================================================
319 // EthernetPort
320 // ===================================================================
321 [Version ("2.7.0"), Description (
322 "Capabilities and management of an EthernetPort.") ]
323 class CIM_EthernetPort : CIM_NetworkPort {
324
325 [Override ("PortType"), Description (
326 "The specific mode currently enabled for the Port. When set "
327 "to 1 (\"Other\"), the related property OtherPortType "
328 "contains a string description of the port's type."),
329 ValueMap {"0", "1", "50", "51", "52", "53", "16000..65535"},
330 Values {"Unknown", "Other", "10BaseT", "10-100BaseT",
331 "100BaseT", "1000BaseT", "Vendor Reserved"} ]
332 uint16 PortType;
333
334 [Override ("NetworkAddresses"), Description (
335 "Ethernet/802.3 MAC addresses formatted as twelve "
336 "hexadecimal digits (e.g. \"010203040506\"), with each pair "
337 tony 1.1 "representing one of the six octets of the MAC address in "
338 "\"canonical\" bit order. (Thus, the Group address bit is "
339 "found in the low order bit of the first character of the "
340 "string.)") ]
341 string NetworkAddresses[];
342
343 [Description (
344 "The maximum size of the INFO (non-MAC) field that will be "
345 "received or transmitted."),
346 MappingStrings {"MIB.IETF|BRIDGE-MIB.dot1dTpPortMaxInfo"} ]
347 uint32 MaxDataSize;
348
349 [Description (
350 "Capabilities of the EthernetPort. For example, the Device "
351 "may support AlertOnLan, WakeOnLan, Load Balancing and/or "
352 "FailOver. If failover or load balancing capabilities are "
353 "listed, a SpareGroup (failover) or ExtraCapacityGroup (load "
354 "balancing) should also be defined to completely describe "
355 "the capability."),
356 ValueMap {"0", "1", "2", "3", "4", "5"},
357 Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan",
358 tony 1.1 "FailOver", "LoadBalancing"},
359 ArrayType ("Indexed"),
360 ModelCorrespondence { "CIM_EthernetPort.CapabilityDescriptions"} ]
361 uint16 Capabilities[];
362
363 [Description (
364 "An array of free-form strings providing more detailed "
365 "explanations for any of the EthernetPort features indicated "
366 "in the Capabilities array. Note, each entry of this array "
367 "is related to the entry in the Capabilities array that is "
368 "located at the same index."),
369 ArrayType ("Indexed"),
370 ModelCorrespondence {"CIM_EthernetPort.Capabilities"} ]
371 string CapabilityDescriptions[];
372
373 [Description (
374 "Specifies which capabilities are enabled from the list of "
375 "all supported ones, defined in the Capabilities array."),
376 ValueMap {"0", "1", "2", "3", "4", "5"},
377 Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan",
378 "FailOver", "LoadBalancing"},
379 tony 1.1 ArrayType ("Indexed"),
380 ModelCorrespondence {"CIM_EthernetPort.Capabilities",
381 "CIM_EthernetPort.OtherEnabledCapabilities"} ]
382 uint16 EnabledCapabilities[];
383
384 [Description (
385 "An array of free-form strings providing more detailed "
386 "explanations for any of the enabled capabilities that are "
387 "specified as 'Other'."),
388 ArrayType ("Indexed"),
389 ModelCorrespondence {"CIM_EthernetPort.EnabledCapabilities"} ]
390 string OtherEnabledCapabilities[];
391 };
392
393
394 // ===================================================================
395 // TokenRingPort
396 // ===================================================================
397 [Version ("2.7.0"), Description (
398 "Capabilities and management of a TokenRingPort.") ]
399 class CIM_TokenRingPort : CIM_NetworkPort {
400 tony 1.1
401 [Override ("NetworkAddresses"), Description (
402 "Token Ring/802.5 MAC addresses formatted as twelve "
403 "hexadecimal digits (e.g. \"010203040506\"), with each pair "
404 "representing one of the six octets of the MAC address in "
405 "\"canonical\" bit order. (Thus, the Group address bit is "
406 "found in the low order bit of the first character of the "
407 "string.)") ]
408 string NetworkAddresses[];
409
410 [Description (
411 "The maximum size of the INFO (non-MAC) field that will be "
412 "received or transmitted."),
413 MappingStrings {"MIB.IETF|BRIDGE-MIB.dot1dTpPortMaxInfo"} ]
414 uint32 MaxDataSize;
415
416 [Description (
417 "Capabilities of the TokenRingPort. For example, the Device "
418 "may support AlertOnLan, WakeOnLan, Load Balancing and/or "
419 "Failover. If failover or load balancing capabilities are "
420 "listed, a SpareGroup (failover) or ExtraCapacityGroup (load "
421 tony 1.1 "balancing) should also be defined to completely describe "
422 "the capability."),
423 ValueMap {"0", "1", "2", "3", "4", "5"},
424 Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan",
425 "FailOver", "LoadBalancing"},
426 ArrayType ("Indexed"),
427 ModelCorrespondence {
428 "CIM_TokenRingPort.CapabilityDescriptions"} ]
429 uint16 Capabilities[];
430
431 [Description (
432 "An array of free-form strings providing more detailed "
433 "explanations for any of the TokenRingAPort features "
434 "indicated in the Capabilities array. Note, each entry of "
435 "this array is related to the entry in the Capabilities "
436 "array that is located at the same index."),
437 ArrayType ("Indexed"),
438 ModelCorrespondence {"CIM_TokenRingPort.Capabilities"} ]
439 string CapabilityDescriptions[];
440
441 [Description (
442 tony 1.1 "Specifies which of the capabilities from the "
443 "\"Capabilities\" property are currently enabled."),
444 ValueMap {"0", "1", "2", "3", "4", "5"},
445 Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan",
446 "FailOver", "LoadBalancing"},
447 ArrayType ("Indexed"),
448 ModelCorrespondence {"CIM_TokenRingPort.Capabilities",
449 "CIM_TokenRingPort.OtherEnabledCapabilities"} ]
450 uint16 EnabledCapabilities[];
451
452 [Description (
453 "An array of free-form strings providing more detailed "
454 "explanations for any of the enabled capabilities that are "
455 "specified as 'Other'."),
456 ArrayType ("Indexed"),
457 ModelCorrespondence {"CIM_TokenRingPort.EnabledCapabilities"} ]
458 string OtherEnabledCapabilities[];
459
460 [Description (
461 "The current status which can be used to diagnose "
462 "fluctuating problems that can occur on token rings, after a "
463 tony 1.1 "station has successfully been added to the ring. Before an "
464 "open is completed, this object contains the value "
465 "indicating \"no status\" (131072). (The RingState and "
466 "RingOpenStatus properties are also provided for debugging "
467 "problems when the station can not even enter the ring.) The "
468 "property's value is a sum of values, one for each currently "
469 "applicable condition. The following values are defined for "
470 "various conditions:\n"
471 "0 = No Problems Detected, 32 = Ring Recovery, 64 = Single "
472 "Station, 256 = Remove Received, 512 = Reserved, 1024 = "
473 "Auto-Removal Error, 2048 = Lobe Wire Fault, 4096 = Transmit "
474 "Beacon, 8192 = Soft Error, 16384 = Hard Error, 32768 = "
475 "Signal Loss, 131072 = No Status, Open Not Completed."),
476 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
477 "MIB.dot5RingStatus"} ]
478 uint32 RingStatus;
479
480 [Description (
481 "The current Device state with respect to entering or "
482 "leaving the ring."),
483 ValueMap {"0", "1", "2", "3", "4", "5"},
484 tony 1.1 Values {"Opened", "Closed", "Opening", "Closing",
485 "Open Failure", "Ring Failure"},
486 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
487 "MIB.dot5RingState"} ]
488 uint16 RingState;
489
490 [Description (
491 "This property indicates the success, or the reason for "
492 "failure, of the station's most recent attempt to enter the "
493 "ring."),
494 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
495 "10"},
496 Values {"No Open Attempted", "Bad Parameter", "Lobe Failed",
497 "Signal Loss", "Insertion Timeout", "Ring Failed",
498 "Beaconing", "Duplicate MAC", "Request Failed",
499 "Remove Received",
500 // 10
501 "Last Open Successful"},
502 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
503 "MIB.dot5RingOpenStatus"} ]
504 uint16 RingOpenStatus;
505 tony 1.1
506 [Description (
507 "The ring's bandwidth."),
508 ValueMap {"0", "1", "2", "3", "4"},
509 Values {"Unknown", "Other", "One Megabit", "Four Megabit",
510 "Sixteen Megabit"},
511 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
512 "MIB.dot5RingSpeed"} ]
513 uint16 RingSpeed;
514 };
515
516
517 // ===================================================================
518 // OOBAlertServiceOnNetworkPort
519 // ===================================================================
520 [Association, Version ("2.7.0"), Description (
521 "OOBAlertServiceOnNetworkPort defines where the out of band "
522 "alerting Service is implemented. Currently, the Service can "
523 "either employ a Modem or a NetworkPort to send alerts.") ]
524 class CIM_OOBAlertServiceOnNetworkPort :CIM_DeviceServiceImplementation {
525
526 tony 1.1 [Override ("Antecedent"), Max (1), Description (
527 "The NetworkPort which implements the Service.") ]
528 CIM_NetworkPort REF Antecedent;
529
530 [Override ("Dependent"), Description (
531 "The alerting Service provided on the NetworkPort.") ]
532 CIM_OOBAlertService REF Dependent;
533 };
534
535
536 // ===================================================================
537 // WakeUpServiceOnNetworkPort
538 // ===================================================================
539 [Association, Version ("2.7.0"), Description (
540 "WakeUpServiceOnNetworkPort defines where the WakeUpService is "
541 "implemented. Currently, the Service can either employ a Modem "
542 "or a NetworkPort for wakeup.") ]
543 class CIM_WakeUpServiceOnNetworkPort : CIM_DeviceServiceImplementation {
544
545 [Override ("Antecedent"), Max (1), Description (
546 "The NetworkPort which implements the Service.") ]
547 tony 1.1 CIM_NetworkPort REF Antecedent;
548
549 [Override ("Dependent"), Description (
550 "The wakeup Service provided on the NetworkPort.") ]
551 CIM_WakeUpService REF Dependent;
552 };
553
554
555 // ===================================================================
556 // PortImplementsEndpoint
557 // ===================================================================
558 [Association, Version ("2.6.0"), Description (
559 "PortImplementsEndpoint associates a LogicalPort with one or "
560 "more ProtocolEndpoints that are implemented on it. This class "
561 "specializes the DeviceSAPImplementation association. It "
562 "indicates that the referenced Endpoint is dependent on the "
563 "operations of the Port Device.") ]
564 class CIM_PortImplementsEndpoint : CIM_DeviceSAPImplementation {
565
566 [Override ("Antecedent"), Description (
567 "The LogicalPort that represents the Device behind the "
568 tony 1.1 "ProtocolEndpoint.") ]
569 CIM_LogicalPort REF Antecedent;
570
571 [Override ("Dependent"), Description (
572 "The ProtocolEndpoint implemented on the LogicalPort.") ]
573 CIM_ProtocolEndpoint REF Dependent;
574 };
575
576
577 // ==================================================================
578 // NetworkPortStatistics
579 // ==================================================================
580 [Version ("2.7.0"), Description (
581 "The NetworkPortStatistics class describes the statistics for "
582 "the NetworkPort.") ]
583 class CIM_NetworkPortStatistics : CIM_StatisticalData {
584
585 [Description (
586 "The total number of bytes transmitted, including framing "
587 "characters."),
588 Units ("Bytes"), Counter,
589 tony 1.1 MappingStrings {"MIB.IETF|MIB-II.ifOutOctets",
590 "MIF.DMTF|Network Adapter 802 Port|001.7"} ]
591 uint64 BytesTransmitted;
592
593 [Description (
594 "The total number of bytes received, including framing "
595 "characters."),
596 Units ("Bytes"), Counter,
597 MappingStrings {"MIB.IETF|MIB-II.ifInOctets",
598 "MIF.DMTF|Network Adapter 802 Port|001.9"} ]
599 uint64 BytesReceived;
600
601 [Description (
602 "The total number of packets transmitted."),
603 Counter ]
604 uint64 PacketsTransmitted;
605
606 [Description (
607 "The total number of packets received."),
608 Counter ]
609 uint64 PacketsReceived;
610 tony 1.1 };
611
612
613 // ==================================================================
614 // EthernetPortStatistics
615 // ==================================================================
616 [Version ("2.7.0"), Description (
617 "The EthernetPortStatistics class describes the statistics for "
618 "the EthernetPort.") ]
619 class CIM_EthernetPortStatistics : CIM_NetworkPortStatistics {
620
621 [Override ("PacketsTransmitted"), Description (
622 "The total number of packets transmitted."),
623 Counter,
624 MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.6"} ]
625 uint64 PacketsTransmitted;
626
627 [Override ("PacketsReceived"), Description (
628 "The total number of packets received."),
629 Counter,
630 MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.8"} ]
631 tony 1.1 uint64 PacketsReceived;
632
633 [Description (
634 "The number of times there was an invalid data symbol when a "
635 "valid carrier was present. The count is incremented at "
636 "most once per carrier event, even if multiple symbol errors "
637 "occur during the carrier event."),
638 Counter,
639 MappingStrings { "MIB.IETF|EtherLike-MIB.dot3StatsSymbolErrors"} ]
640 uint32 SymbolErrors;
641
642 [Description (
643 "A count of frames received on a particular interface that "
644 "are not an integral number of octets in length and do not "
645 "pass the FCS check. The count represented by an instance "
646 "of this object is incremented when the alignment error "
647 "status is returned by the MAC layer to the LLC (or other "
648 "MAC user). Received frames for which multiple error "
649 "conditions obtain are, according to the conventions of IEEE "
650 "802.3 Layer Management, counted exclusively according to "
651 "the error status presented to the LLC."),
652 tony 1.1 Counter,
653 MappingStrings {
654 "MIB.IETF|EtherLike-MIB.dot3StatsAlignmentErrors"} ]
655 uint32 AlignmentErrors;
656
657 [Description (
658 "A count of frames received on a particular interface that "
659 "are an integral number of octets in length but do not pass "
660 "the FCS check. The count represented by an instance of "
661 "this object is incremented when the frame check error "
662 "status is returned by the MAC layer to the LLC (or other "
663 "MAC user). Received frames for which multiple error "
664 "conditions obtain are, according to the conventions of IEEE "
665 "802.3 Layer Management, counted exclusively according to "
666 "the error status presented to the LLC."),
667 Counter,
668 MappingStrings { "MIB.IETF|EtherLike-MIB.dot3StatsFCSErrors"} ]
669 uint32 FCSErrors;
670
671 [Description (
672 "A count of successfully transmitted frames on a particular "
673 tony 1.1 "interface for which transmission is inhibited by exactly "
674 "one collision. A frame that is counted by an instance of "
675 "this object is not counted by the corresponding instance of "
676 "the MultipleCollisionFrames property."),
677 Counter,
678 MappingStrings {
679 "MIB.IETF|EtherLike-MIB.dot3StatsSingleCollisionFrames"} ]
680 uint32 SingleCollisionFrames;
681
682 [Description (
683 "A count of successfully transmitted frames on a particular "
684 "interface for which transmission is inhibited by more than "
685 "one collision. A frame that is counted by an instance of "
686 "this object is not counted by the corresponding instance of "
687 "the SingleCollisionFrames property."),
688 Counter,
689 MappingStrings {
690 "MIB.IETF|EtherLike-MIB.dot3StatsMultipleCollisionFrames"} ]
691 uint32 MultipleCollisionFrames;
692
693 [Description (
694 tony 1.1 "A count of times that the SQE TEST ERROR message is "
695 "generated by the PLS sublayer for a particular interface. "
696 "The SQE TEST ERROR message is defined in section 7.2.2.2.4 "
697 "of ANSI/IEEE 802.3-1985 and its generation is described in "
698 "section 7.2.4.6 of the same document."),
699 Counter,
700 MappingStrings {
701 "MIB.IETF|EtherLike-MIB.dot3StatsSQETestErrors"} ]
702 uint32 SQETestErrors;
703
704 [Description (
705 "A count of frames for which the first transmission attempt "
706 "on a particular interface is delayed because the medium is "
707 "busy. The count represented by an instance of this object "
708 "does not include frames involved in collisions."),
709 Counter,
710 MappingStrings {
711 "MIB.IETF|EtherLike-MIB.dot3StatsDeferredTransmissions"} ]
712 uint32 DeferredTransmissions;
713
714 [Description (
715 tony 1.1 "The number of times that a collision is detected on a "
716 "particular interface later than 512 bit-times into the "
717 "transmission of a packet. Five hundred and twelve bit- "
718 "times corresponds to 51.2 microseconds on a 10 Mbit/s "
719 "system. A (late) collision included in a count represented "
720 "by an instance of this object is also considered as a "
721 "(generic) collision for purposes of other collision-related "
722 "statistics."),
723 Counter,
724 MappingStrings {
725 "MIB.IETF|EtherLike-MIB.dot3StatsLateCollisions"} ]
726 uint32 LateCollisions;
727
728 [Description (
729 "A count of frames for which transmission on a particular "
730 "interface fails due to excessive collisions."),
731 Counter,
732 MappingStrings {
733 "MIB.IETF|EtherLike-MIB.dot3StatsExcessiveCollisions"} ]
734 uint32 ExcessiveCollisions;
735
736 tony 1.1 [Description (
737 "A count of frames for which transmission on a particular "
738 "interface fails due to an internal MAC sublayer transmit "
739 "error. A frame is only counted by an instance of this "
740 "object if it is not counted by the corresponding instance "
741 "of either the LateCollisions property, the Excessive "
742 "Collisions property, or the CarrierSenseErrors property. "
743 "The precise meaning of the count represented by an instance "
744 "of this object is implementation-specific. In particular, "
745 "an instance of this object may represent a count of "
746 "transmission errors on a particular interface that are not "
747 "otherwise counted."),
748 Counter,
749 MappingStrings { "MIB.IETF|EtherLike-MIB."
750 "dot3StatsInternalMacTransmitErrors"} ]
751 uint32 InternalMACTransmitErrors;
752
753 [Description (
754 "A count of frames for which reception on a particular "
755 "interface fails due to an internal MAC sublayer receive "
756 "error. A frame is only counted by an instance of this "
757 tony 1.1 "object if it is not counted by the corresponding instance "
758 "of either the FrameTooLongs property, the AlignmentErrors "
759 "property, or the FCSErrors property. The precise meaning "
760 "of the count represented by an instance of this object is "
761 "implementation-specific. In particular, an instance of "
762 "this object may represent a count of receive errors on a "
763 "particular interface that are not otherwise counted."),
764 Counter,
765 MappingStrings {
766 "MIB.IETF|EtherLike-MIB.dot3StatsInternalMacReceiveErrors"} ]
767 uint32 InternalMACReceiveErrors;
768
769 [Description (
770 "The number of times that the carrier sense condition was "
771 "lost or never asserted when attempting to transmit a frame "
772 "on a particular interface. The count represented by an "
773 "instance of this object is incremented at most once per "
774 "transmission attempt, even if the carrier sense condition "
775 "fluctuates during a transmission attempt."),
776 Counter,
777 MappingStrings {
778 tony 1.1 "MIB.IETF|EtherLike-MIB.dot3StatsCarrierSenseErrors"} ]
779 uint32 CarrierSenseErrors;
780
781 [Description (
782 "A count of frames received on a particular interface that "
783 "exceed the maximum permitted frame size. The count "
784 "represented by an instance of this object is incremented "
785 "when the FrameTooLong status is returned by the MAC layer "
786 "to the LLC (or other MAC user). Received frames for which "
787 "multiple error conditions obtain are, according to the "
788 "conventions of IEEE 802.3 Layer Management, counted "
789 "exclusively according to the error status presented to the "
790 "LLC."),
791 Counter,
792 MappingStrings {
793 "MIB.IETF|EtherLike-MIB.dot3StatsFrameTooLongs"} ]
794 uint32 FrameTooLongs;
795 };
796
797
798 // ==================================================================
799 tony 1.1 // TokenRingPortStatistics
800 // ==================================================================
801 [Version ("2.7.0"), Description (
802 "The TokenRingPortStatistics class describes the statistics for "
803 "the TokenRingPort.") ]
804 class CIM_TokenRingPortStatistics : CIM_NetworkPortStatistics {
805
806 [Description (
807 "This counter is incremented when a station detects the "
808 "absence of transitions for five half-bit timers (burst-five "
809 "errors)."),
810 Counter,
811 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
812 "MIB.dot5StatsBurstErrors"} ]
813 uint32 BurstErrors;
814
815 [Description (
816 "This counter is incremented when a station receives an AMP "
817 "or SMP frame in which A is equal to C is equal to 0, and "
818 "then receives another SMP frame with A equal to C equal to "
819 "0 without first receiving an AMP frame. It denotes a "
820 tony 1.1 "station that cannot set the AC bits properly."),
821 Counter,
822 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
823 "MIB.dot5StatsACErrors"} ]
824 uint32 ACErrors;
825
826 [Description (
827 "This counter is incremented when a station transmits an "
828 "abort delimiter while transmitting data."),
829 Counter,
830 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
831 "dot5StatsAbortTransErrors"} ]
832 uint32 AbortTransErrors;
833
834 [Description (
835 "This counter is incremented when a station recognizes an "
836 "internal error."),
837 Counter,
838 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
839 "dot5StatsInternalErrors"} ]
840 uint32 InternalErrors;
841 tony 1.1
842 [Description (
843 "This counter is incremented when a station is transmitting "
844 "and its TRR timer expires. This denotes a condition where "
845 "a transmitting station in strip mode does not receive the "
846 "trailer of the frame before the TRR timer goes off."),
847 Counter,
848 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
849 "dot5StatsLostFrameErrors"} ]
850 uint32 LostFrameErrors;
851
852 [Description (
853 "This counter is incremented when a station recognizes a "
854 "frame addressed to its specific address, but has no "
855 "available buffer space - indicating that the station is "
856 "congested."),
857 Counter,
858 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
859 "dot5StatsReceiveCongestions"} ]
860 uint32 ReceiveCongestions;
861
862 tony 1.1 [Description (
863 "This counter is incremented when a station recognizes a "
864 "frame addressed to its specific address and detects that "
865 "the FS field A bits are set to 1 indicating a possible line "
866 "hit or duplicate address."),
867 Counter,
868 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
869 "dot5StatsFrameCopiedErrors"} ]
870 uint32 FrameCopiedErrors;
871
872 [Description (
873 "This counter is incremented when a station acting as the "
874 "active monitor recognizes an error condition that needs a "
875 "token transmitted."),
876 Counter,
877 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
878 "MIB.dot5StatsTokenErrors"} ]
879 uint32 TokenErrors;
880
881 [Description (
882 "The number of Soft Errors that the Device has detected. It "
883 tony 1.1 "directly corresponds to the number of Report Error MAC "
884 "frames that this Device has transmitted. Soft Errors are "
885 "those which are recoverable by the MAC layer protocols."),
886 Counter,
887 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
888 "MIB.dot5StatsSoftErrors"} ]
889 uint32 SoftErrors;
890
891 [Description (
892 "The number of times this Device has detected an immediately "
893 "recoverable fatal error. It denotes the number of times "
894 "this Device is either transmitting or receiving beacon MAC "
895 "frames."),
896 Counter,
897 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
898 "MIB.dot5StatsHardErrors"} ]
899 uint32 HardErrors;
900
901 [Description (
902 "The number of times this Device has detected the loss of "
903 "signal condition from the ring."),
904 tony 1.1 Counter,
905 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
906 "MIB.dot5StatsSignalLoss"} ]
907 uint32 SignalLossCount;
908
909 [Description (
910 "The number of times this Device has transmitted a beacon "
911 "frame."),
912 Counter,
913 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring MIB."
914 "dot5StatsTransmitBeacons"} ]
915 uint32 TransmittedBeacons;
916
917 [Description (
918 "The number of Claim Token MAC frames received or "
919 "transmitted after the Device has received a Ring Purge MAC "
920 "frame. This counter signifies the number of times the ring "
921 "has been purged and is being recovered back into a normal "
922 "operating state."),
923 Counter,
924 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
925 tony 1.1 "MIB.dot5StatsRecoverys"} ]
926 uint32 Recoverys;
927
928 [Description (
929 "The number of times the Device has detected an open or "
930 "short circuit in the lobe data path. The port will be "
931 "closed and RingState will signify this condition."),
932 Counter,
933 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
934 "MIB.dot5StatsLobeWires"} ]
935 uint32 LobeWires;
936
937 [Description (
938 "The number of times the Device has received a Remove Ring "
939 "Station MAC frame request. When this frame is received, "
940 "the Device will enter the close state and RingState will "
941 "signify this condition."),
942 Counter,
943 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
944 "MIB.dot5StatsRemoves"} ]
945 uint32 Removes;
946 tony 1.1
947 [Description (
948 "The number of times the Device has sensed that it is the "
949 "only station on the ring. This will happen if the Device "
950 "is the first one up on a ring, or if there is a hardware "
951 "problem."),
952 Counter,
953 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
954 "MIB.dot5StatsSingles"} ]
955 uint32 Singles;
956
957 [Description (
958 "The number of times the Device has detected that the "
959 "frequency of the incoming signal differs from the expected "
960 "frequency by more than that specified by the IEEE 802.5 "
961 "standard."),
962 Counter,
963 MappingStrings { "MIB.IETF|IEEE 802.5 Token Ring "
964 "MIB.dot5StatsFreqErrors"} ]
965 uint32 FrequencyErrors;
966 };
967 tony 1.1
968
969 // ==================================================================
970 // LogicalModule
971 // ==================================================================
972 [Experimental, Version ("2.7.1000"), Description (
973 "LogicalModule is the logical device corresponding to a line "
974 "card/blade in a device. For example, a line card in a switch "
975 "is an instance of LogicalModule, associated with the the "
976 "switch itself. A logical module is not necessarily "
977 "independently managed.") ]
978 class CIM_LogicalModule : CIM_LogicalDevice {
979
980 [Description (
981 "Logical modules are often named by the physical or logical "
982 "slot that they occupy within the containing device. "
983 "ModuleNumber is the number assigned to the module by its "
984 "parent.") ]
985 uint16 ModuleNumber;
986 };
987
988 tony 1.1
989 // ==================================================================
990 // ModulePort
991 // ==================================================================
992 [Association, Experimental, Aggregation, Version ("2.7.1000"),
993 Description (
994 "ModulePort associates ports with their hosting modules.") ]
995 class CIM_ModulePort : CIM_Component {
996
997 [Aggregate, Override ("GroupComponent"), Max (1), Description (
998 "A module that has ports.") ]
999 CIM_LogicalModule REF GroupComponent;
1000
1001 [Override ("PartComponent"), Description (
1002 "A Port that is associated with a module.") ]
1003 CIM_NetworkPort REF PartComponent;
1004 };
1005
1006
1007 // ===================================================================
1008 // PortActiveConnection
1009 tony 1.1 // ===================================================================
1010 [Association, Experimental, Version ("2.7.1000"), Description (
1011 "The PortActiveConnection relationship indicates that a "
1012 "NetworkPort is using the referenced PhysicalConnector to "
1013 "output to the network. This relationship is important when "
1014 "the port can choose to output from one of several connectors. "
1015 "The connectors may be associated with the NetworkPort in a "
1016 "Realizes relationship - but this is not required. This "
1017 "association provides additional information (i.e., 'in use for "
1018 "communication') different than Realizes.") ]
1019 class CIM_PortActiveConnection : CIM_Dependency {
1020
1021 [Override ("Antecedent"), Description (
1022 "The PhysicalConnector.") ]
1023 CIM_PhysicalConnector REF Antecedent;
1024
1025 [Override ("Dependent"), Description (
1026 "The NetworkPort that transmits using the Connector.") ]
1027 CIM_NetworkPort REF Dependent;
1028 };
1029
1030 tony 1.1 // ===================================================================
1031 // SCSIPort
1032 // ===================================================================
1033 [Experimental, Version ("2.7.1000"), Description (
1034 "SCSIPort is an abstraction of SCSI support in a device. It "
1035 "exists only in software, and represents the connection between "
1036 "a SCSIProtocolController and a Network. To actually connect "
1037 "to the Network, one might use an FC or EthernetPort. These "
1038 "CIM elements (SCSIPort, SCSIProtocolController and Network) "
1039 "are respectively defined by the ANSI T10 SCSI Architectural "
1040 "Model as 'SCSI port', 'SCSI device' and 'service delivery "
1041 "subsystem'.\n"
1042 "The mapping of the SCSIPort onto a particular interconnect is "
1043 "accomplished using PortImplementsProtocolEndPoint associations "
1044 "to specific ProtocolEndpoints, or by using PortOnDevice "
1045 "associations to underlying NetworkPorts. For example, ISCSI "
1046 "implementations might use the former mechanism to map to an "
1047 "ISCSIProtocolEndpoint (that is then associated via the BindsTo "
1048 "relationship to lower level TCP endpoints). FibreChannel "
1049 "implementations might use the latter means to map onto a "
1050 "FCPort. A SCSI implementation SHOULD not implememt SCSIPort, "
1051 tony 1.1 "unless it is needed. For example, in a typical FibreChannel "
1052 "implementation, SCSIPort instances are not required. However, "
1053 "if that implementation provides a spare FCPort, then a "
1054 "SCSIPort instance with a LogicalIdentity association to "
1055 "SparedSet is appropriate.") ]
1056 class CIM_SCSIPort : CIM_LogicalPort {
1057 };
1058
1059 // ===================================================================
1060 // end of file
1061 // ===================================================================
|