Network Working Group B. Claise Internet-Draft M. Chandramouli Intended Status: Standards Track J. Parello Expires: April 16, 2011 B. Schoening Cisco Systems, Inc. October 16, 2010 Power and Energy Monitoring MIB draft-claise-energy-monitoring-mib-06 Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on September, 2010. Expires April 16 2011 [Page 1] Internet-Draft Oct 2010 Copyright Notice Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Abstract This document defines a subset of the Management Information Base (MIB) for power and energy monitoring of devices. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. Table of Contents 1. Introduction............................................. 4 2. The Internet-Standard Management Framework............... 5 3. Use Cases................................................ 5 4. Terminology.............................................. 5 5. Architecture Concepts Applied to the MIB Module.......... 6 5.1 Power Monitor Information............................ 6 5.2 Power Monitor Levels................................. 6 5.3 Power Monitor Usage Measurement...................... 7 5.4 Optional Power Usage Quality......................... 8 5.5 Optional Energy Measurement.......................... 8 5.6 Optional Battery Information........................ 12 6. Implementation Scenarios................................ 12 Scenario 1: Switch with PoE Endpoints................... 13 Scenario 2: Switch with PoE Endpoints with Further Connected Devices................................................. 14 Expires April 16, 2011 [Page 2] Internet-Draft Oct 2010 Scenario 3: Switch with Wireless Access Points.......... 15 Scenario 4: Network Connected Facilities Gateway........ 17 Scenario 5: Data Center Network......................... 20 Scenario 6: Switch with Power Distribution Units (PDU).. 22 Scenario 7: Power Consumption of UPS.................... 24 Scenario 8: Power Consumption of Battery-Based Devices.. 24 7. Link with the other IETF MIBs........................... 24 7.1. Link with the ENTITY MIB and the ENTITY-SENSOR MIB. 24 7.2. Link with the ENTITY-STATE MIB..................... 25 7.3. Link with the POWER-OVER-ETHERNET MIB.............. 26 7.4. Link with the UPS MIB.............................. 26 7.5. Link with the LLDP and LLDP-MED MIBs............... 27 8. Structure of the MIB.................................... 28 9. MIB Definitions......................................... 29 10. Security Considerations................................ 65 11. IANA Considerations.................................... 66 12. Acknowledgment......................................... 66 13. References............................................. 67 13.1. Normative References.............................. 67 13.2. Informative References............................ 67 Expires April 16, 2011 [Page 3] Internet-Draft Oct 2010 TO DO . Do we need the pmIndex persistence? Agreement among us: should be optional, like for ifIndex. Option: the implementation might indicate it. Persistent or not might be in shown in a OID, using the StorageType ::= TEXTUAL-CONVENTION. One OID that explains the persistence of all objects, not more granularity. This must also be covered in the architecture draft. . ACTION: change the pmPowerLevel to pmRequestedPowerLevel, and pmPowerActualLevel to pmPowerLevel? The 3 drafts need to be changed. DMTF uses "requestedLevel" . "Power Monitor Child" Feedback received: it's the object to be monitored, not the monitoring device. Power Monitoring/Monitored Child? . If [POWER-MON-ARCH] covers the notion of transition state, we must be covering this topic in this MIB module. 1. Introduction This document defines a subset of the Management Information Base (MIB) for use in energy management of devices within or connected to communication networks. The MIB modules in this document are designed to provide a model for energy management, which includes monitoring for power state and energy consumption of networked elements. This MIB takes into account the Power Management Architecture [POWER-MON-ARCH], which in turn, is based on the Power Monitoring Requirements [POWER-MON-REQ] . Energy management is applicable to devices in communication networks. Target devices for this specification include (but are not limited to): routers, switches, Power over Ethernet (PoE) endpoints, protocol gateways for building management systems, intelligent meters, home energy gateways, hosts and servers, sensor proxies, etc. Where applicable, device monitoring extends to the individual components of the device and to any attached dependent devices. For example: A device can contain components that are independent from a power-state point of view, such as line Expires April 16, 2011 [Page 4] Internet-Draft Oct 2010 cards, processor cards, hard drives. A device can also have dependent attached devices, such as a switch with PoE endpoints or a power distribution unit with attached endpoints. Devices and their sub-components may be characterized by the power-related attributes of a physical entity present in the ENTITY MIB, even though the ENTITY MIB compliance is not a requirement due to the variety and broad base of devices concerned with energy management. 2. The Internet-Standard Management Framework For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 [RFC3410]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. MIB objects are generally accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined using the mechanisms defined in the Structure of Management Information (SMI). This memo specifies MIB modules that are compliant to SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580]. 3. Use Cases Requirements for power and energy monitoring for networking devices are specified in [POWER-MON-REQ]. The requirements in [POWER-MON-REQ] cover devices typically found in communications networks, such as switches, routers, and various connected endpoints. For a power monitoring architecture to be useful, it should also apply to facility meters, power distribution units, gateway proxies for commercial building control, home automation devices, and devices that interface with the utility and/or smart grid. Accordingly, the scope of the MIB modules in this document is broader than that specified in [POWER-MON-REQ]. Several scenarios that cover these broader use cases are presented later in Section 6 - Implementation Scenarios. 4. Terminology The definitions of basic terms like Power Monitor, Power Monitor Parent, Power Monitor Child, Power Monitor Meter Domain, Power Level, and Manufacturer Power Level can be found in the Power Management Architecture [POWER-MON-ARCH]. Expires April 16, 2011 [Page 5] Internet-Draft Oct 2010 5. Architecture Concepts Applied to the MIB Module This section describes the concepts specified in the Power Monitor Architecture [POWER-MON-ARCH] that pertain to power usage, with specific information related to the MIB module specified in this document. This subsection maps to the section "Architecture High Level Concepts" in the Power Monitoring Architecture [POWER-MON-ARCH]. 5.1 Power Monitor Information Refer to the "Power Monitor Information" section in [POWER-MON- ARCH] for background information. An energy aware device is considered an instance of a power monitor as defined in the [POWER-MON-ARCH]. The Power Monitor information is specified in the MIB module primary table, i.e. the pmTable. Every Power Monitor SHOULD have a printable name pmName, and MUST HAVE a unique Power Monitor index pmIndex, as specified in [POWER-AWARE-MIB]. 5.2 Power Monitor Levels Refer to the "Power Monitor Levels" section in [POWER-MON-ARCH] for background information. Power Levels, which represent universal states of power management of a Power Monitor, are specified by the pmPowerLevel MIB object. Via the pmManufacturerActualPowerLevel MIB variable, the Manufacturer Power Levels might be read, in case the Power Levels specified in this document are not (yet) supported. The Manufacturer Power Level name can be read with the pmManufacturerActualPowerLevel Name MIB variable. When a Power Monitor requires a mapping with the Manufacturer Power Level, the Power Monitor configuration is done via the Power Level settings, and not directly via the Manufacturer Power Levels, which are read-only. The actual Power Level is specified by the pmPowerActualLevel MIB object, while the pmPowerLevel MIB object specifies the Power Level requested for the Power Monitor. A difference in values between the pmPowerLevel and pmPowerActualLevel indicates that the Power Expires April 16, 2011 [Page 6] Internet-Draft Oct 2010 Monitor is busy going into the pmPowerLevel, at which point it will update the content of pmPowerActualLevel. The MIB objects pmPowerLevel and pmManufacturerDefinedPowerLevel are contained in the pmTable MIB table. The pmPowerLevelTable table enumerates the maximum power usage in watts, for every single supported Power Level of each Power Monitor. The pmPowerLevelMappingTable table enumerates the maximum power usage in watts, for every single Manufacturer Power Level. Furthermore, this table maps the Manufacturer Power Levels to the Power Levels specified in this document (more specifically with the PowerMonitorLevel textual convention). Finally, this table returns the name of each Manufacturer Power Level. 5.3 Power Monitor Usage Measurement Refer to the "Power Monitor Usage Measurement" section in [POWER-MON-ARCH] for background information. For a Power Monitor, power usage is reported using pmPower. The magnitude of measurement is based on the pmPowerUnitMultiplier MIB variable, based on the UnitMultiplier Textual Convention (TC). For example, if current power usage of a Power Monitor is 3, it could be 3 W, 3 mW, 3 KW, or 3 MW, depending on the value of pmPowerUnitMultiplier. Note that other measurements throughout the two MIB modules in this document use the same mechanism, including pmPowerLevelPowerUnitMultiplier, pmDemandIntervalEnergyUnitMultiplier, and pmACPwrQualityPowerUnitMultiplier. In addition to knowing the usage and magnitude, it is useful to know how a pmPower measurement was obtained. An NMS can use this to account for the accuracy and nature of the reading between different implementations. For this pmPowerOrigin describes whether the measurements were made at the device itself or from a remote source. The pmPowerMeasurementCaliber describes the method that was used to measure the power and can distinguish actual or estimated values. The nameplate power rating of a Power Monitor is specified in pmPowerNameplate MIB object. Expires April 16, 2011 [Page 7] Internet-Draft Oct 2010 5.4 Optional Power Usage Quality Refer to the "Optional Power Usage Quality" section in [POWER- MON-ARCH] for background information. The optional powerQualityMIB MIB module can be implemented to further describe power usage quality measurement. The powerQualityMIB MIB module adheres closely to the IEC 61850 7-2 standard to describe AC measurements. The powerQualityMIB MIB module contains a primary table, the pmACPwrQualityTable table, that defines power quality measurements for supported pmIndex entities, as a sparse extension of the pmTable (with pmIndex as primary index). This pmACPwrQualityTable table contains such information as the configuration (single phase, DEL 3 phases, WYE 3 phases), voltage, frequency, power accuracy, total active/reactive power/apparent power, amperage, and voltage. In case of 3-phase power, the pmACPwrQualityPhaseTable additional table is populated with power quality measurements per phase (so double indexed by the pmIndex and pmPhaseIndex). This table, which describes attributes common to both WYE and DEL configurations, contains the average current, active/reactive/apparent power, power factor, and impedance. In case of 3-phase power with a DEL configuration, the pmACPwrQualityDelPhaseTable table describes the phase-to-phase power quality measurements, i.e., voltage and current. In case of 3-phase power with a Wye configuration, the pmACPwrQualityWyePhaseTable table describes the phase-to-neutral power quality measurements, i.e., voltage and current. 5.5 Optional Energy Measurement Refer to the "Optional Energy Measurement" section in [POWER- MON-ARCH] for background information. It is relevant to measure the demand only when there are actual power measurements from a Power Monitor, and not when the power measurement is assumed or predicted as specified in the description clause of the object pmPowerMeasurementCaliber. Two tables are introduced to characterize the energy demand: pmDemandEnergyTable and pmDemandEnergyParametersTable. The Expires April 16, 2011 [Page 8] Internet-Draft Oct 2010 pmDemandEnergyParametersTable table consists of parameters defining the duration of the demand intervals in seconds, (pmDemandEnergyParametersIntervalLength), the number of demand intervals kept in the pmDemandEnergyTable, (pmDemandEnergyParametersIntervalNumber), the type of demand intervals (pmDemandEnergyParametersIntervalMode), and a sample rate used to calculate the average (pmDemandEnergyParametersSampleRate). Judicious choice of the SamplingRate will ensure accurate measurement of power while not imposing an excessive polling burden. There are three pmDemandEnergyParametersIntervalMode types used for energy measurement collection: period, sliding, and total. Note that multiple pmDemandEnergyParametersIntervalMode types MAY be configured simultaneously. These three pmDemandEnergyParametersIntervalMode types are illustrated by the following three figures, for which: - The horizontal axis represents the current time, with the symbol <--- L ---> expressing the pmDemandEnergyParametersIntervalLength, and the pmDemandEnergyIntervalStartTime is represented by S1, S2, S3, S4, ..., Sx where x is the value of pmDemandEnergyParametersIntervalNumber. - The vertical axis represents the time interval of sampling and the value of pmDemandEnergyIntervalEnergyUsed can be obtained at the end of the sampling period. The symbol =========== denotes the duration of the sampling period. | | | =========== | |============ | | | | | | | | |============ | | | | | | | <--- L ---> | <--- L ---> | <--- L ---> | | | | | S1 S2 S3 S4 Figure 1 : Period pmDemandEnergyParametersIntervalMode A pmDemandEnergyParametersIntervalMode type of 'period' specifies non-overlapping periodic measurements. Therefore, the next pmDemandEnergyIntervalStartTime is equal to the previous Expires April 16, 2011 [Page 9] Internet-Draft Oct 2010 pmDemandEnergyIntervalStartTime plus pmDemandEnergyParametersIntervalLength. S2=S1+L; S3=S2+L, ... |============ | | | | <--- L ---> | | | | |============ | | | | | | <--- L ---> | | | | | | |============ | | | | | | | | <--- L ---> | | | | | | | | |============ | | | | | | | | | | <--- L ---> | S1 | | | | | | | | | | | | S2 | | | | | | | | | S3 | | | | | | S4 Figure 2 : Sliding pmDemandEnergyParametersIntervalMode A pmDemandEnergyParametersIntervalMode type of 'sliding' specifies overlapping periodic measurements. | | |========================= | | | | | | | | <--- Total length ---> | | | S1 Figure 3 : Total pmDemandEnergyParametersIntervalMode Expires April 16, 2011 [Page 10] Internet-Draft Oct 2010 A pmDemandEnergyParametersIntervalMode type of 'total' specifies a continuous measurement since the last reset. The value of pmDemandEnergyParametersIntervalNumber should be (1) one and pmDemandEnergyParametersIntervalLength is ignored. The pmDemandEnergyParametersStatus is useful to specify that the energy measurement is actual and thus to indicate if the pmDemandEnergyTable entries exist or not. The pmDemand Table consists of energy measurements in pmDemandIntervalEnergyUsed, the scale of energy measured, pmDemandIntervalEnergyUnitMultiplier, and the maximum observed demand in a window - pmDemandIntervalMax. The following example illustrates the pmDemandEnergyTable and pmDemandEnergyParametersTable: First, in order to estimate demand, an interval to sample energy should be specified, i.e. pmDemandEnergyParametersIntervalLength can be "900 seconds" and the number of consecutive intervals over which the maximum demand is calculated (pmDemandEnergyParametersIntervalNumber) as "10". The sampling rate internal to the Power Monitor for measurement of power usage (pmDemandEnergyParametersSampleRate) can be "1000 milliseconds", as set by the Power Monitor as a reasonable value. Then, the pmDemandEnergyParametersStatus is set to active (value 1) to indicate that the Power Monitor should start monitoring the usage per the pmDemandEnergyTable. The indices in the pmDemandEnergyTable are pmIndex, which identifies the Power Monitor, and pmDemandIntervalStartTime, which denotes the start time of the demand measurement interval based on sysUpTime. The value of pmDemandIntervalEnergyUsed is the measured energy consumption over the time interval specified (pmDemandEnergyParametersIntervalLength) based on the Power Monitor internal sampling rate (pmDemandEnergyParametersSampleRate). While choosing the values for the pmDemandEnergyParametersIntervalLength and pmDemandEnergyParametersSampleRate, it is recommended to take into consideration either the network element resources adequate to process and store the sample values, and the mechanism used to calculate the pmDemandEnergyIntervalEnergyUsed. The units are derived from pmDemandIntervalPowerUnitMultiplier. For example, pmDemandIntervalPowerUsed can be "100" with pmDemandIntervalPowerUnits equal to 0, the demand is 100 watt- hours. The pmDemandIntervalMax is the maximum demand observed and can be "150 watt-hours". Expires April 16, 2011 [Page 11] Internet-Draft Oct 2010 The pmDemandEnergyTable has a buffer to retain a certain number of intervals, as defined by pmDemandEnergyParametersIntervalNumber. If the default value of "10" is kept, then the pmDemandEnergyTable contains 10 demand measurements, including the maximum. Here is a brief explanation of how the maximum demand can be calculated. The first observed demand measurement value is taken to be the initial maximum. With each subsequent measurement, based on numerical comparison, maximum demand may be updated. The maximum value is retained as long as the measurements are taking place. Based on periodic polling of this table, an NMS could compute the maximum over a longer period, i.e. a month, 3 months, or a year. 5.6 Optional Battery Information EDITOR NOTE: Since a merge between this draft and [QUITTEK- POWER-MIB] seems to be the direction that the OPSAWG/EMAN IETF WG wants to go, one idea is to copy the battery MIB module from [QUITTEK-POWER-MIB]. 6. Implementation Scenarios The scope of power and energy monitoring consists of devices that consume power within and that are connected to a communications network. These devices include: - Network devices and sub-components: Devices such as routers and switches and their sub-components. - Network attached endpoints: Devices that use the communications network, such as endpoints, PCs, and facility gateways that proxy energy monitor and control for commercial buildings or home automation. - Network attached meters or supplies: Devices that can monitor the electrical supply, such as smart meters or Universal Power Supplies (UPS) that meter and provide availability. This section provides illustrative examples that model different scenarios for implementation of the Power Monitor, including Power Monitor Parent and Power Monitor Child relationships. Expires April 16, 2011 [Page 12] Internet-Draft Oct 2010 Scenario 1: Switch with PoE Endpoints Consider a PoE IP phone connected to a switch, as displayed in Figure 4. The IP phone consumes power from the PoE switch. The switch has the following attributes, also illustrated in Figure 4: pmIndex "1", pmPhysicalEntity "2", and pmPowerMonitorId "UUID 1000". The power usage of the switch is "440 Watts". The switch does not have a Power Monitor Parent. The PoE switch port has the following attributes: The switch port has pmIndex "3", pmPhysicalEntity is "12" and pmPowerMonitorId is "UUID 1003". The power metered at the POE switch port is "12 watts". Note that the PoE switch port doesn't consume any power, it meters the usage. When summing power usage for the Power Monitor Meter Domain, the PoE switch port meter usage should be kept separate from actual Power Monitor Children usage. In this example, the POE switch port has the switch as the Power Monitor Parent, with its pmParentID of "1000". The IP phone has the following attributes: the IP phone has pmIndex "31" and pmPowerMonitorId "UUID 2003", but does not have an entry for pmPhysicalEntity, as the ENTITY MIB is not supported on this device. The IP phone has a Power Monitor Parent: the switch whose pmPowerMonitorId is "UUID 1000". The power usage of the IP phone is metered at the POE switch port and the pmPower on the PoE IP phone reports 12. |--------------------------------------------------------------| | Switch | |==============================================================| | |Switch | Switch | Switch | Switch | Switch | | | |pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | | ============================================================ | | | 1 | 2 | UUID 1000 | null | 440 | | | ============================================================ | | | | SWITCH PORT | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | | Port | Port | Port | Port | Port | | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | | ============================================================ | | | 3 | 12 | UUID 1003 | UUID 1000 | 12 | | | ============================================================ | | ^ | Expires April 16, 2011 [Page 13] Internet-Draft Oct 2010 | | | |-------------------------------|----------------------------- | | | POE IP PHONE | | ============================================================== | IP phone| IP phone | IP phone | IP phone | IP phone| | pmIndex | EntPhyIdx| pmPowerMonitorId| pmParentID| pmPower | ============================================================== | 31 | 0 | UUID 2003 | UUID 1000 | 12 | ============================================================== Figure 4: Scenario 1 Scenario 2: Switch with PoE Endpoints with Further Connected Devices Consider the same scenario as example 1 with an IP phone connected to PoE port of a switch. Now, in addition, a PC is daisy-chained from the IP phone for LAN connectivity. The phone draws power from the PoE port of the switch, while the PC draws power from the wall outlet. The attributes of the switch, switch port and IP phone are the same as in Scenario 1. The attributes of the PC are given below. The PC does not have pmPhysicalEntity. The pmIndex of the PC is "57", the pmPowerMonitorId is "UUID 3003". The PC has a Power Monitor Parent, i.e. the switch whose pmPowerMonitorId is "UUID 1000". The power usage of the PC is "120 Watts" and is communicated to the switch port. This example illustrates the important distinction between the Power Monitor Children: The IP phone draws power from the switch, while the PC has LAN connectivity from the phone, but is powered from the wall outlet. However, the Power Monitor Parent sends power control messages to both the Power Monitor Children (IP phone and PC) and the Children react to those messages. |--------------------------------------------------------------| | Switch | |==============================================================| | Switch | Switch | Switch | Switch | Switch | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | ============================================================ | | 1 | 2 | UUID 1000 | null | 440 | Expires April 16, 2011 [Page 14] Internet-Draft Oct 2010 | ============================================================ | | | | SWITCH PORT | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | Port | Port | Port | Port | Port | | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | | ============================================================ | | | 3 | 12 | UUID 1003 | UUID 1000 | 12 | | | ============================================================ | | ^ | | | | |-----------------------------------|--------------------------| | | POE IP PHONE | | | ============================================================= | IP phone | IP phone |IP phone |IP phone |IP phone| | pmIndex | pmPhyIdx |pmPowerMonitorId|pmParentID |pmPower | ============================================================ | 31 | 0 | UUID 2003 | UUID 1000 | 12 | ============================================================ | | PC connected to switch via IP phone | | ============================================================= | PC | PC |PC |PC | PC | | pmIndex| pmPhyIdx|pmPowerMonitorId|pmParentID| pmPower | ============================================================ | 57 | 0 | UUID 3003 | UUID 1000 | 120 | ============================================================= Figure 5: Scenario 2 Scenario 3: Switch with Wireless Access Points Consider a Wireless Access Point connected to the PoE port of a switch. There are several PCs connected to the Wireless Access Point over Wireless protocols. All PCs draw power from the wall outlets. Expires April 16, 2011 [Page 15] Internet-Draft Oct 2010 The switch port is the Power Monitor Parent for the Wireless Access Point (WAP) and the PCs. There is a distinction between the Power Monitor Children, as the WAP draws power from the PoE port of the switch and the PCs draw power from the wall outlet. The switch has pmIndex "1", pmPhysicalEntity is "2" and pmPowerMonitorId is "UUID 1000". The power usage of the switch is "440 Watts". The switch does not have a Power Monitor Parent. The PoE switch port has the following attributes: The switch port has pmIndex "3", pmPhysicalEntity is "12" and pmPowerMonitorId is "UUID 1003". The power usage of the POE switch port is "20 watts". The POE switch port has the switch as the parent and the pmParentID is "UUID 1000". The WAP has the following attributes: The WAP has no entry for pmPhysicalEntity, pmIndex "47", and pmPowerMonitorId "UUID 2004". The WAP has a parent: the switch whose pmPowerMonitorId is "UUID 1000". The power usage of the WAP is measured at the PoE switch port. Neither of the two PCs - PC1 and PC2 - has pmPhysicalEntity. The pmIndex of PC1 is "53" and the pmPowerMonitorId is "UUID 3". PC1 has a parent: the switch whose pmPowerMonitorId is "UUID 1000". The power usage of PC1 is "120 Watts" and is communicated to the switch port. The pmIndex of PC2 is "58" and the pmPowerMonitorId is "UUID 5". PC2 has a parent: the switch whose pmPowerMonitorId is "UUID 1000". The power usage of the PC is "120 Watts" and is communicated to the switch port. |--------------------------------------------------------------| | Switch | |==============================================================| | Switch | Switch | Switch | Switch | Switch | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | ============================================================ | | 1 | 2 | UUID 1000 | null | 440 | | ============================================================ | | | | SWITCH PORT | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | | Port | Port | Port | Port | Port | | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | Expires April 16, 2011 [Page 16] Internet-Draft Oct 2010 | ============================================================ | | | 3 | 12 | UUID 1003 | UUID 1000 | 20 | | | ============================================================ | | ^ | | | | |-----------------------------------------------|--------------| | POE Wireless Access Point | | | ============================================================== | WAP | WAP | WAP | WAP | WAP | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentID | pmPower | ============================================================== | 47 | 0 | UUID 2004 | UUID 1000 | 20 | ============================================================== . . . . PC1 connected to WAP . . ============================================================== | PC | PC |PC | PC | PC | | pmIndex| pmPhyIdx |pmPowerMonitorId | pmParentID | pmPower | ============================================================== | 53 | 0 | UUID 3004 | UUID 1000 | 120 | ============================================================== . . PC2 connected to WAP . . ================================================================ | PC | PC |PC | PC | PC | | pmIndex| pmPhyIdx |pmPowerMonitorId | pmParentID | pmPower | =============================================================== | 58 | 0 | UUID 4004 | UUID 1000 | 120 | ================================================================ Figure 6: Scenario 3 Scenario 4: Network Connected Facilities Gateway Expires April 16, 2011 [Page 17] Internet-Draft Oct 2010 ------ | NMS | | | ------ | | | ========================(IP Network) ^ | North side interface | ----------------------- | Building Gateway | | | ----------------------- | | Ethernet Interface RS-232/ | | RS-438 | | MODBUS, BACNET, etc... | | --------- | -------- HVAC | Cont | | | Cont | UPS -------------- | roll | |--| roll |--------- | | | er 1 | | | er 3 | | | | --------- | -------- | | | | | | | -------- | ------- Lighting | Cont | | | Cont | Electrical ------------ | roll | |--| roll |------------ | | | er 2 | | | er 4 | | | | | -------- | ------- | | Figure 7: Scenario 4 A simplified illustration of the building gateway network is presented in Figure 7. At the top of the network hierarchy of a building network is a gateway device that can perform protocol conversion between many facility management devices. The south building gateway communicates to the controllers, via RS-232/RS- 485 interfaces, ethernet interfaces, and building management protocols such as BACNET or MODBUS. Each controller is associated with a specific energy-consuming function, such as Expires April 16, 2011 [Page 18] Internet-Draft Oct 2010 HVAC, electrical or lighting. The controllers are in turn connected to the actual building energy management devices: meters, sub-meters, valves, actuators, etc. Controller 1 is associated with a meter for the HVAC system and controller 2 can be associated with a meter for the Lighting. Assuming that the MIB is implemented on the gateway device, the building gateway can be considered as the Power Monitor Parent, and the controllers associated with the meters can be considered as Power Monitor Children. Tthe power measurement collected is therfore at the granularity of a controller, which aggregates all the energy measurement collected from all the meters and sub-meters. However, if energy measurement needs to be collected at a meter level, then the MIB should be implemented at the controller level. In building management, the EntPhysicalIndex usually is not defined for these Power Monitor Parents or Children, as the ENTITY MIB is generally not implemented for these devices. Hence the gateway, controller 1, and controller 2 all have pmPhysicalEntities of value zero. The pmIndex of the gateway is "7", and the pmPowerMonitorId is "UUID 1000". The gateway does not have a Power Monitor Parent. The total power usage of the gateway and its children is "2000 Watts". Controller 1 has pmIndex "707", and pmPowerMonitorId is "UUID 5007". Controller 1 will report a power usage of "2000 watts". Controller 1 has the gateway as the parent and its pmParentID is "UUID 1000". Controller 2 has pmIndex "708", and pmPowerMonitorId is "UUID 5008". Controller 2 will report a power usage of "500 watts". Controller 2 has the gateway as the Power Monitor Parent and its pmParentID is "UUID 1007". ---------------------------------------------------------- | Building Gateway | | | |======================================================== | | Mediat | Mediat | Mediat | Mediat | Mediat | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId|pmPower | |======================================================== | | 7 | None | UUID 1000 | Null | 2500 | |======================================================== | Expires April 16, 2011 [Page 19] Internet-Draft Oct 2010 | ------------------------------------------------------ | | |=> Controller 1 ========================================================= | Cntrl1 | Cntrl1 | Cntrl1 | Cntrl1 | Cntrl1 | | pmIndex | pmPhyIdx |pmPowerMonId|pmParentID | pmPower | |========================================================| | 707 | 0 | UUID 5007 | UUID 1000 | 2000 | |========================================================= | | |===>Controller 2 ========================================================== | Cntrl2 | Cntrl2 | Cntrl2 | Cntrl2 | Cntrl2 | | pmIndex | pmPhyIdx |pmPowerMonId| pmParentID |pmPower | | ========================================================| | 708 | 0 | UUID 5008 | UUID 1000 | 500 | | | |=========================================================| Figure 8: Scenario 4 Scenario 5: Data Center Network A typical data center network consists of a hierarchy of switches. At the bottom of the hierarchy are servers mounted on a rack, and these are connected to the top-of-the-rack switches. The top switches are connected to aggregation switches that are in turn connected to core switches. As an example, Server 1 and Server 2 are connected to different switch ports of the top switch, as shown in Figure 9. The proposed MIB can be implemented on the switches. The switch can be considered as the Power Monitor Parent. The servers can be considered as the Power Monitor Children. The switch has pmIndex "1", pmPhysicalEntity is "2", and the pmPowerMonitorId is "UUID 1000". The power usage of the switch is "440 Watts". The switch does not have a parent. The switch ports are non-PoE and have the following attributes: Server 1 is connected to Switch port 1. Switch port 1 has pmIndex "3", pmPhysicalEntity is "12", and pmPowerMonitorId is "UUID 1003". Switch port 2 has pmIndex "4", pmPhysicalEntity is Expires April 16, 2011 [Page 20] Internet-Draft Oct 2010 "13", and pmPowerMonitorId is "UUID 1004". The power usage of the non-POE switch port cannot be measured. The switch ports have the switch as the Power Monitor Parent and its pmParentID is "1000". Server 1 has a value of zero for pmPhysicalEntity. The pmIndex of Server 1 is "5", and the pmPowerMonitorId is "UUID 2006". Server 1 has a Power Monitor Parent: The switch whose pmPowerMonitorId is "1000". The power usage of Server 1 is "200 Watts" and is communicated to the switch port. Server 2 has a value of zero for pmPhysicalEntity. The pmIndex of Server 2 is "6", and the pmPowerMonitorId is "UUID 3006". Server 1 has a parent: The switch whose pmPowerMonitorId is "1000". The power usage of the Server 2 is "140 Watts" and is communicated to the switch port. Communication of power usage of Server1 and Server2 to the switch is out of scope of this document. |--------------------------------------------------------------| | Switch | |==============================================================| | |Switch | Switch | Switch | Switch | Switch | | | |pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | | ============================================================ | | | 1 | 2 | UUID 1000 | null | 440 | | | ============================================================ | | | | | | SWITCH PORT 1 | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | Port1 | Port1 | Port1 | Port1 | Port1 | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | ============================================================ | | | 3 | 12 | UUID 1003 | UUID 1000 | NULL || | ============================================================ | | | | SWITCH PORT 2 | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | Port2 | Port2 | Port2 | Port2 | Port2 | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | ============================================================ | | | 4 | 13 | UUID 1004 | UUID 1000 | NULL | | ============================================================ | Expires April 16, 2011 [Page 21] Internet-Draft Oct 2010 | | | | |--------------------------------------------------------------| | | | Server 1 connected to switch (Non-POE) | ============================================================= | | Server 1| Server 1 | Server 1 | Server 1 | Server 1 | | | pmIndex | pmPhyIdx |pmPowerMonitorId|pmParentID| pmPower | |=>|============================================================ | | 5 | 0 | UUID 2006 | UUID 1000 | 200 | | ============================================================= | | Server 2 connected to switch (Non-POE) | ============================================================ |=>| Server 2| Server 2 | Server 2 | Server 2 | Server 2 | | pmIndex | pmPhyIdx |pmPowerMonitorId|pmParentID| pmPower | ============================================================= | 6 | 0 | UUID 3006 | UUID 1000 | 140 | ============================================================= Figure 9: Scenario 5 Scenario 6: Switch with Power Distribution Units (PDU) Consider Scenario 1 again, this time with two PDUs. The switch draws power from one of the PDUs, while the PDUs are plugged into the switch for LAN connectivity. The attributes of the switch and switch ports are the same as in Scenario 1. The attributes of the PDUs are given in Figure 11. The PDUs are network peers of the switch, with their own management agent and no pmPowerMonitor parent pmPowerMonitorId, as the PDUs are Power Monitor Parents themselves. The power usage of the PDUs are reporting 3000 watts and 12000 watts categorized as 'Meter'. This example illustrates the distinction between power supply, metering, and LAN connectivity. The PDUs supply and meter power to the switch, while the PC has LAN connectivity from the phone, but is powered from the wall outlet. However, the Power Monitor Parent sends power control messages to both the Power Monitor Children (IP phone and PC) and the children react to those messages. Expires April 16, 2011 [Page 22] Internet-Draft Oct 2010 |--------------------------------------------------------------| | Switch | |==============================================================| | Switch | Switch | Switch | Switch | Switch | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | ============================================================ | | 1 | 2 | UUID 1000 | null | 440 | | ============================================================ | | | | SWITCH PORT | | ============================================================ | | | Switch | Switch | Switch | Switch | Switch | | | Port | Port | Port | Port | Port | | | | pmIndex | pmPhyIdx | pmPowerMonId | pmParentId | pmPower | | | ============================================================ | | | 3 | 12 | | UUID 1000 | 0 | | | ============================================================ | | | 4 | 13 | | UUID 1000 | 0 | | | ============================================================ | | ^ | | | | |-----------------------------------|--------------------------| | | PDU #1 (no children) | | | ============================================================= | PDU | PDU |PDU |PDU | Meter | | pmIndex | pmPhyIdx |pmPowerMonitorId|pmParentID |pmPower | ============================================================ | 1 | 1 | UUID 2001 | null | 3000 | ============================================================ | | PDU #2 (with children)_ | | ============================================================= | PDU | PDU |PDU |PDU | Meter | | pmIndex | pmPhyIdx |pmPowerMonitorId|pmParentID |pmPower | ============================================================ | 1 | 1 | UUID 3001 | null | 600 | | 2 | 2 | UUID 3002 | null | 1000 | | 3 | 3 | UUID 3003 | null | 800 | ============================================================= Figure 11: Scenario 6 Expires April 16, 2011 [Page 23] Internet-Draft Oct 2010 Scenario 7: Power Consumption of UPS Data centers and commercial buildings can have Uninterruptible Power Supplies (UPS) connected to the network. The Power Monitor can be used to model a UPS as a Power Monitor Parent with the connected devices as Power Monitor Children. EDITOR'S NOTE: the example will be completed in the future. Scenario 8: Power Consumption of Battery-Based Devices As specified in [POWER-MON-REQ], battery-state monitoring is a requirement for the Power and Energy Monitoring MIB. EDITOR NOTE: since a merge between this draft and [QUITTEK- POWER-MIB] seems to be the direction that the OPSAWG IETF WG wants to go, one idea is to copy the battery MIB module from [QUITTEK-POWER-MIB]. 7. Link with the other IETF MIBs 7.1. Link with the ENTITY MIB and the ENTITY-SENSOR MIB RFC 4133 [RFC4133] defines the ENTITY MIB module that lists the physical entities of a networking device (router, switch, etc.) and those physical entities indexed by entPhysicalIndex. From an energy-management standpoint, the physical entities that consume or produce energy are of interest. RFC 3433 [RFC3433] defines the ENTITY-SENSOR MIB module that provides a standardized way of obtaining information (current value of the sensor, operational status of the sensor, and the data units precision) from sensors embedded in networking devices. Sensors are associated with each index of entPhysicalIndex of the ENTITY MIB [RFC4133]. While the focus of the Power and Energy Monitoring MIB is on measurement of power usage of networking equipment indexed by the ENTITY MIB, this MIB proposes a customized power scale for power measurement and different power level states of networking equipment, and functionality to configure the power level states. When this MIB module is used to monitor the power usage of devices like routers and switches, the ENTITY MIB and ENTITY- SENSOR MIB SHOULD be implemented. In such cases, the Power Expires April 16, 2011 [Page 24] Internet-Draft Oct 2010 Monitors are modeled by the entPhysicalIndex through the pmPhysicalEntity MIB object specified in the pmTable. However, the ENTITY-SENSOR MIB [RFC3433] does not have the ANSI C12.x accuracy classes required for electricity (i.e., 1%, 2%, 0.5% accuracy classes). Indeed, entPhySensorPrecision [RFC3433] represents "The number of decimal places of precision in fixed- point sensor values returned by the associated entPhySensorValue object". The ANSI and IEC Standards are used for power measurement and these standards require that we use an accuracy class, not the scientific-number precision model specified in RFC3433. The pmPowerAccuracy MIB object models this accuracy. Note that pmPowerUnitMultipler represents the scale factor per IEC 61850, which is a more logical representation for power measurements (compared to entPhySensorScale), with the mantissa and the exponent values X * 10 ^ Y. Power measurements specifying the qualifier 'UNITS' for each measured value in watts are used in the LLDP-EXT-MED-MIB, POE [RFC3621], and UPS [RFC1628] MIBs. The same 'UNITS' qualifier is used for the power measurement values. One cannot assume that the ENTITY MIB and ENTITY-SENSOR MIB are implemented for all Power Monitors that need to be monitored. A typical example is a converged building gateway, monitoring several other devices in the building, doing the proxy between SNMP and a protocol like BACNET. Another example is the home energy controller. In such cases, the pmPhysicalEntity value contains the zero value, thanks to PhysicalIndexOrZero textual convention. The pmIndex MIB object has been kept as the unique Power Monitor index. The pmPower is similar to entPhySensorValue [RFC3433] and the pmPowerUnitMultipler is similar to entPhySensorScale. 7.2. Link with the ENTITY-STATE MIB For each entity in the ENTITY-MIB [RFC4133], the ENTITY-STATE MIB [RFC4268] specifies the operational states (entStateOper: unknown, enabled, disabled, testing), the alarm (entStateAlarm: unknown, underRepair, critical, major, minor, warning, indeterminate) and the possible values of standby states (entStateStandby: unknown, hotStandby, coldStandby, providingService). From a power monitoring point of view, in contrast to the entity operational states of entities, Power Levels are required, as Expires April 16, 2011 [Page 25] Internet-Draft Oct 2010 proposed in the Power and Energy Monitoring MIB module. Those Power Levels can be mapped to the different operational states in the ENTITY-STATE MIB, if a formal mapping is required. For example, the entStateStandby "unknown", "hotStandby", "coldStandby", states could map to the Power Level "unknown", "ready", "standby", respectively, while the entStateStandby "providingService" could map to any "low" to "high" Power Level. 7.3. Link with the POWER-OVER-ETHERNET MIB Power-over-Ethernet MIB [RFC3621] provides an energy monitoring and configuration framework for power over Ethernet devices. The RFC introduces a concept of a port group on a switch to define power monitoring and management policy and does not use the entPhysicalIndex as the index. Indeed, the pethMainPseConsumptionPower is indexed by the pethMainPseGroupIndex, which has no mapping with the entPhysicalIndex. One cannot assume that the Power-over-Ethernet MIB is implemented for all Power Monitors that need to be monitored. A typical example is a converged building gateway, monitoring several other devices in the building, doing the proxy between SNMP and a protocol like BACNET. Another example is the home energy controller. In such cases, the pmethPortIndex and pmethPortGrpIndex values contain the zero value, thanks to new PethPsePortIndexOrZero and textual PethPsePortGroupIndexOrZero conventions. However, if the Power-over-Ethernet MIB [RFC3621] is supported, the Power Monitor pmethPortIndex and pmethPortGrpIndex contain the pethPsePortIndex and pethPsePortGroupIndex, respectively. As a consequence, the pmIndex MIB object has been kept as the unique Power Monitor index. Note that, even though the Power-over-Ethernet MIB [RFC3621] was created after the ENTITY-SENSOR MIB [RFC3433], it does not reuse the precision notion from the ENTITY-SENSOR MIB, i.e. the entPhySensorPrecision MIB object. 7.4. Link with the UPS MIB To protect against unexpected power disruption, data centers and buildings make use of Uninterruptible Power Supplies (UPS). To protect critical assets, a UPS can be restricted to a particular Expires April 16, 2011 [Page 26] Internet-Draft Oct 2010 subset or domain of the network. UPS usage typically lasts only for a finite period of time, until normal power supply is restored. Planning is required to decide on the capacity of the UPS based on output power and duration of probable power outage. To properly provision UPS power in a data center or building, it is important to first understand the total demand required to support all the entities in the site. This demand can be assessed and monitored via the Power and Energy Monitoring MIB. UPS MIB [RFC1628] provides information on the state of the UPS network. Implementation of the UPS MIB is useful at the aggregate level of a data center or a building. The MIB module contains several groups of variables: - upsIdent: Identifies the UPS entity (name, model, etc.). - upsBattery group: Indicates the battery state (upsbatteryStatus, upsEstimatedMinutesRemaining, etc.) - upsInput group: Characterizes the input load to the UPS (number of input lines, voltage, current, etc.). - upsOutput: Characterizes the output from the UPS (number of output lines, voltage, current, etc.) - upsAlarms: Indicates the various alarm events. The measurement of power in the UPS MIB is in Volts, Amps and Watts. The units of power measurement are RMS volts and RMS Amps. They are not based on EntitySensorDataScale and EntitySensorDataPrecision of Entity-Sensor MIB. Both the Power and Energy Monitoring MIB and the UPS MIB may be implemented on the same UPS SNMP agent, without conflict. In this case, the UPS device itself is the Power Monitor Parent and any of the UPS meters or submeters are the Power Monitor Children. 7.5. Link with the LLDP and LLDP-MED MIBs The LLDP Protocol is a Data Link Layer protocol used by network devices to advertise their identities, capabilities, and interconnections on a LAN network. The Media Endpoint Discovery is an enhancement of LLDP, known as LLDP-MED. The LLDP-MED enhancements specifically address voice applications. LLDP-MED covers 6 basic areas: capability Expires April 16, 2011 [Page 27] Internet-Draft Oct 2010 discovery, LAN speed and duplex discovery, network policy discovery, location identification discovery, inventory discovery, and power discovery. Of particular interest to the current MIB module is the power discovery, which allows the endpoint device (such as a PoE phone) to convey power requirements to the switch. In power discovery, LLDP-MED has four Type Length Values (TLVs): power type, power source, power priority and power value. Respectively, those TLVs provide information related to the type of power (power sourcing entity versus powered device), how the device is powered (from the line, from a backup source, from external power source, etc.), the power priority (how important is it that this device has power?), and how much power the device needs. The power priority specified in the LLDP-MED MIB [LLDP-MED-MIB] actually comes from the Power-over-Ethernet MIB [RFC3621]. If the Power-over-Ethernet MIB [RFC3621] is supported, the exact value from the pethPsePortPowerPriority [RFC3621] is copied over in the lldpXMedRemXPoEPDPowerPriority [LLDP-MED-MIB]; otherwise the value in lldpXMedRemXPoEPDPowerPriority is "unknown". From the Power and Energy Monitoring MIB, it is possible to identify the pethPsePortPowerPriority [RFC3621], thanks to the pmethPortIndex and pmethPortGrpIndex. The lldpXMedLocXPoEPDPowerSource [LLDP-MED-MIB] is similar to pmPowerOrigin in indicating if the power for an attached device is local or from a remote device. If the LLDP-MED MIB is supported, the following mapping can be applied to the pmPowerOrigin: lldpXMedLocXPoEPDPowerSource fromPSE(2) and local(3) can be mapped to remote(2) and self(1), respectively. 8. Structure of the MIB The primary MIB object in this MIB module is the PowerMonitorMIBObject. The pmTable table of PowerMonitorMibObject describes an entity in the network that is a Power Monitor. A Power Monitor contains information describing itself as an entity in the context of the network (such as its Power Monitor Meter Domain pmDomainName) and attributes for describing its business context (such as pmImportance, pmRoleDescription and pmKeywords). Expires April 16, 2011 [Page 28] Internet-Draft Oct 2010 A Power Monitor contains information describing its power usage (pmPower) and its power state (pmPowerLevel). Along with the power usage is information describing how the power usage was determined (such as pmPowerMeasurementCaliber and pmPowerOrigin). The pmPowerLevelMappingTable table enumerates the maximum power usage in watts for every Manufacturer Power Level. This table also maps the Manufacturer Power Levels to the Power Levels specified in this document (more specifically, to the PowerMonitorLevel textual convention). Finally, this table returns the name of each Manufacturer Power Level. A Power Monitor may contain an optional pmPowerQuality table that describes the electrical characteristics associated with the current power state and usage. A Power Monitor may contain an optional pmDemandEnergyTable to describe energy information over time. A Power Monitor may also contain optional battery information associated with this entity. EDITOR NOTE: since a merge between this draft and [QUITTEK- POWER-MIB] seems to be the direction that the OPSAWG IETF WG wants to go, one idea is to copy the battery MIB module from [QUITTEK-POWER-MIB]. 9. MIB Definitions -- ************************************************************ -- -- -- This MIB is used to monitor power usage of network -- devices -- -- ************************************************************* POWER-MONITOR-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2, Expires April 16, 2011 [Page 29] Internet-Draft Oct 2010 Integer32, TimeTicks FROM SNMPv2-SMI TEXTUAL-CONVENTION, DisplayString, RowStatus, TimeInterval FROM SNMPv2-TC MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP FROM SNMPv2-CONF SnmpAdminString FROM SNMP-FRAMEWORK-MIB pmEntry, pmIndex FROM ENERGY-AWARE-NETWORKS-AND-DEVICE-MIB; powerMonitorMIB MODULE-IDENTITY LAST-UPDATED "201010150000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO "Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553-NETS E-mail: cs-snmp@cisco.com" DESCRIPTION "This MIB is used to monitor power and energy in devices." REVISION "201010150000Z" DESCRIPTION "Initial version, published as RFC XXXX." ::= { mib-2 xxxxx } powerMonitorMIBNotifs OBJECT IDENTIFIER ::= { powerMonitorMIB 0 } Expires April 16, 2011 [Page 30] Internet-Draft Oct 2010 powerMonitorMIBObjects OBJECT IDENTIFIER ::= { powerMonitorMIB 1 } powerMonitorMIBConform OBJECT IDENTIFIER ::= { powerMonitorMIB 2 } -- Textual Conventions PowerMonitorLevel ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "An enumerated integer value that represents the value of the power policy level, a current power setting at which a Power Monitor uses power. There are twelve power policy levels, divided into six operational states, and six non-operational states. The lowest non-operational state is 1 and the highest is six. Each non- operational state corresponds to an ACPI level [ACPI] corresponding to Global and System levels between G3 (hard-off) and G1 (sleeping). For operational levels, 6 is the lowest, and 12 the highest (full power). Each operational level represent a performance state, and may be mapped to ACPI states P0 (maximum performance & power) through P5 (minimum performance and minimum power). An entity may have fewer power levels than twelve and would then map several policy levels to the same power state. Entities with more than twelve levels, would choose which twelve to represent as power policy levels. Note that Power Monitor Parents MUST report some of the non- operational Power Levels of their Power Monitor Children who are unable to report their Power Level. For example: A phone may notify its Power Monitor Parent that it will go into a mechoff(1) or hibernate(3) state so that the Power Monitor Parent can report the phone's current state (such as zero or 1 watt). Conversely, a PC with Desktop and mobile Architecture for System Hardware [DASH] out-of-band management is an example where a Power Monitor Child can report its usage and level even when in a non-operational state. In each of the non-operational levels (from mechoff(1) to ready(6)), the Power Level preceding it is expected to have a lower power consumption and a longer delay in returning to an operational state: Expires April 16, 2011 [Page 31] Internet-Draft Oct 2010 mechoff(1) : An off state where no entity features are available. The entity is unavailable. No energy is being consumed and the power connector can be removed. This corresponds to ACPI level G3. softoff(2) : Similar to mechoff(1), but some components remain powered or receive trace power so that the entity can be awakened from its off state. In softoff(2), no context is saved and the device typically requires a complete boot when awakened. This corresponds to ACPI level G2. hibernate(3): No entity features are available. The entity may be awakened without requiring a complete boot, but the time for availability is longer than sleep(4). An example for state hibernate(3) is a save- to-disk state where DRAM context is not maintained. Typically, energy consumption is zero or close to zero. This corresponds to level G1, S4 in ACPI. sleep(4) : No entity features are available, except for out-of-band management, for example wake-up mechanisms. The time for availability is longer than standby(5). An example for state sleep(4) is a save- to-RAM state, where DRAM context is maintained. Typically, energy consumption is close to zero. This corresponds to level G1, S3 in ACPI. standby(5) : No entity features are available, except for out-of-band management, for example wake-up mechanisms. This mode is analogous to cold-standy. The time for availability is longer than ready(6). For example, the processor context is not maintained. Typically, energy consumption is close to zero. This corresponds to level G1, S2 in ACPI. Expires April 16, 2011 [Page 32] Internet-Draft Oct 2010 ready(6) : No entity features are available, except for out-of-band management, for example wake-up mechanisms. This mode is analogous to hot-standby. The entity can be quickly transitioned into an operational state. For example, processors are not executing, but processor context is maintained. This corresponds to level G1, S1 in ACPI. lowMinus(7) : Indicates some entity features may not be available and the entity has selected measures/options to provide less than low(8) usage. This corresponds to ACPI State G0. This includes operational levels lowMinus(7) to full(12). low(8) : Indicates some features may not be available and the entity has taken measures or selected options to provide less than mediumMinus(9) usage. mediumMinus(9): Indicates all entity features are available but the entity has taken measures or selected options to provide less than medium(10) usage. medium(10) : Indicates all entity features are available but the entity has taken measures or selected options to provide less than highMinus(11) usage. highMinus(11) : Indicates all entity features are available and power usage is less than high(12). high(12) : Indicates all entity features are available and the entity is consuming the highest power. Note that unknown(0) is not a Power Level as such, but simply an indication that the Power Level unavailable." SYNTAX INTEGER { unknown(0), Expires April 16, 2011 [Page 33] Internet-Draft Oct 2010 mechoff(1), softoff(2), hibernate(3), sleep(4), standby(5), ready(6), lowMinus(7), low(8), mediumMinus(9), medium(10), highMinus(11), high(12) } UnitMultiplier ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The Unit Multiplier is an integer value that represents the IEEE 61850 Annex A units multiplier associated with the integer units used to measure the power or energy. For example, when used with pmPowerUnitMultiplier, -3 represents 10^-3 or milliwatts." REFERENCE "The International System of Units (SI), National Institute of Standards and Technology, Spec. Publ. 330, August 1991." SYNTAX INTEGER { yocto(-24), -- 10^-24 zepto(-21), -- 10^-21 atto(-18), -- 10^-18 femto(-15), -- 10^-15 pico(-12), -- 10^-12 nano(-9), -- 10^-9 micro(-6), -- 10^-6 milli(-3), -- 10^-3 units(0), -- 10^0 kilo(3), -- 10^3 mega(6), -- 10^6 giga(9), -- 10^9 tera(12), -- 10^12 peta(15), -- 10^15 exa(18), -- 10^18 zetta(21), -- 10^21 yotta(24) -- 10^24 } Expires April 16, 2011 [Page 34] Internet-Draft Oct 2010 -- Objects pmPowerTable OBJECT-TYPE SYNTAX SEQUENCE OF PmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists Power Monitors." ::= { powerMonitorMIBObjects 1 } pmPowerEntry OBJECT-TYPE SYNTAX PmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes the power usage of a Power Monitor. This table augments the pmTable." AUGMENTS { pmEntry } ::= { pmPowerTable 1 } PmEntry ::= SEQUENCE { pmPower Integer32, pmPowerNameplate Integer32, pmPowerUnitMultiplier UnitMultiplier, pmPowerAccuracy Integer32, pmPowerMeasurementCaliber INTEGER, pmCurrentType INTEGER, pmPowerOrigin INTEGER, pmPowerLevel PowerMonitorLevel, pmPowerActualLevel PowerMonitorLevel, pmManufacturerActualPowerLevel Integer32, pmManufacturerMappingId Integer32 } pmPower OBJECT-TYPE SYNTAX Integer32 UNITS "Watts" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the 'instantaneous' RMS consumption for the Power Monitor. This value is specified in SI units of watts with the magnitude of watts (milliwatts, kilowatts, etc.) indicated separately in pmPowerUnitMultiplier. The accuracy of the measurement Expires April 16, 2011 [Page 35] Internet-Draft Oct 2010 is specfied in pmPowerAccuracy. The direction of power flow is indicated by the sign on pmPower. If the Power Monitor is consuming power, the pmPower value will be positive. If the Power Monitor is producing power, the pmPower value will be negative. The pmPower MUST be less than or equal to the maximum power that can be consumed at the power level specified by pmPowerLevel." ::= { pmPowerEntry 1 } pmPowerNameplate OBJECT-TYPE SYNTAX Integer32 UNITS "Watts" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the rated maximum consumption for the fully populated Power Monitor. The nameplate power requirements are the maximum power numbers and, in almost all cases, are well above the expected operational consumption. The pmPowerNameplate is widely used for power provisioning. This value is specified in either units of watts or voltage and current. The units are therefore SI watts or equivalent Volt-Amperes with the magnitude (milliwatts, kilowatts, etc.) indicated separately in pmPowerUnitMultiplier." ::= { pmPowerEntry 2 } pmPowerUnitMultiplier OBJECT-TYPE SYNTAX UnitMultiplier MAX-ACCESS read-only STATUS current DESCRIPTION "The magnitude of watts for the usage value in pmPower and pmPowerNameplate." ::= { pmPowerEntry 3 } pmPowerAccuracy OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates a percentage value, in 100ths of a percent, representing the assumed accuracy of the usage reported by pmPower. For example: The value 1010 means the reported usage is accurate to +/- 10.1 percent. This Expires April 16, 2011 [Page 36] Internet-Draft Oct 2010 value is zero if the accuracy is unknown or not applicable based upon the measurement method. ANSI and IEC define the following accuracy classes for power measurement: IEC 62053-22 60044-1 class 0.1, 0.2, 0.5, 1 3. ANSI C12.20 class 0.2, 0.5" ::= { pmPowerEntry 4 } pmPowerMeasurementCaliber OBJECT-TYPE SYNTAX INTEGER { unknown(1), actual(2) , estimated(3), presumed(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object specifies how the usage value reported by pmPower was obtained: - unknown: Indicates that the way the usage was determined is unknown. In some cases, entities report aggregate power on behalf of another device. In such cases it is not known whether the usage reported is actual(2), estimated(3) or presumed (4). - actual: Indicates that the reported usage was measured by the entity through some hardware or direct physical means. The usage data reported is not presumed (4) or estimated (3) but the real apparent current energy consumption rate. - estimated: Indicates that the usage was not determined by physical measurement. The value is a derivation based upon the device type, state, and/or current utilization using some algorithm or heuristic. It is presumed that the entity's state and current configuration were used to compute the value. - presumed: Indicates that the usage was not determined by physical measurement, algorithm or derivation. The usage was reported based upon external tables, specifications, and/or model information. For example, a PC Model X draws 200W, while a PC Model Y draws 210W." ::= { pmPowerEntry 5 } Expires April 16, 2011 [Page 37] Internet-Draft Oct 2010 pmCurrentType OBJECT-TYPE SYNTAX INTEGER { ac(1), dc(2), unknown(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates whether the pmUsage for the Power Monitor reports alternative current AC(1), direct current DC(2), or that the current type is unknown(3)." ::= { pmPowerEntry 6 } pmPowerOrigin OBJECT-TYPE SYNTAX INTEGER { self (1), remote (2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the source of power measurement and can be useful when modeling the power usage of attached devices. The power measurement can be performed by the entity itself or the power measurement of the entity can be reported by another trusted entity using a protocol extension. A value of self(1) indicates the measurement is performed by the entity, whereas remote(2) indicates that the measurement was performed by another entity." ::= { pmPowerEntry 7 } pmPowerLevel OBJECT-TYPE SYNTAX PowerMonitorLevel MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the Power Level (0..12) requested for the Power Monitor. The pmPowerLevel values increase with the power consumption. If the Power Monitor is unable to report its Power Level, it must report the value unknown(0). Note that unknown(0) is not a Power Level as such, but simply an indication that the Power Level is unknown." ::= { pmPowerEntry 8 } pmPowerActualLevel OBJECT-TYPE Expires April 16, 2011 [Page 38] Internet-Draft Oct 2010 SYNTAX PowerMonitorLevel MAX-ACCESS read-only STATUS current DESCRIPTION "This object specifies the current Power Level (0..12) for the Power Monitor. If the Power Monitor is unable to report its Power Level, it must report the value unknown(0). Note that unknown(0) is not a Power Level as such, but simply an indication that the Power Level is unknown." ::= { pmPowerEntry 9 } pmManufacturerActualPowerLevel OBJECT-TYPE SYNTAX Integer32 (0..1000) MAX-ACCESS read-only STATUS current DESCRIPTION "This object is a positive integer which specifies the actual Manufacturer Power Level for the Power Monitor. If the Manufacturer Power Level is not defined, the pmManufacturerActualPowerLevel will report 0. If the Power Monitor is unable to report its Manufacturer Power Level, it must report the value 0." ::= { pmPowerEntry 10 } pmManufacturerMappingId OBJECT-TYPE SYNTAX Integer32 (1..1000) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the actual Manufacturer Power Level mapping ID for the Power Monitor. The pmManufacturerMappingId points to the pmPowerLevelMappingTable, which maps the Manufacturer Power Levels versus the standard ones specified in the PowerMonitorLevel textual convention. If the Manufacturer Power Level mapping is not defined, the pmManufacturerMappingId will report 0. If the Power Monitor is unable to report its Manufacturer Power Level mapping ID, it must report the value 0." ::= { pmPowerEntry 11 } pmPowerLevelTable OBJECT-TYPE SYNTAX SEQUENCE OF PmPowerLevelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION Expires April 16, 2011 [Page 39] Internet-Draft Oct 2010 "This table enumerates the maximum power usage, in watts, for every single supported Power Level of each Power Monitor. This table has an expansion-dependent relationship on the pmTable, containing rows describing each Power Level for the corresponding Power Monitor. For every Power Monitor in the pmTable, there is a corresponding entry in this table." ::= { powerMonitorMIBObjects 2 } pmPowerLevelEntry OBJECT-TYPE SYNTAX PmPowerLevelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A pmPowerLevelEntry extends a corresponding pmEntry. This entry displays max usage values at every single possible Power Monitor Level supported by the Power Monitor. For example, given the values of a Power Monitor corresponding to a maximum usage of 11W at the level 1 (off), 6 (low), 8 (medium), 12 (full): Level MaxUsage Units 1 0 0 5 0 0 6 8 0 7 8 0 8 11 0 12 11 0" INDEX { pmIndex, pmPowerLevelIndex } ::= { pmPowerLevelTable 1 } PmPowerLevelEntry ::= SEQUENCE { pmPowerLevelIndex PowerMonitorLevel, pmPowerLevelMaxPower Integer32, pmPowerLevelPowerUnitMultiplier UnitMultiplier } pmPowerLevelIndex OBJECT-TYPE Expires April 16, 2011 [Page 40] Internet-Draft Oct 2010 SYNTAX PowerMonitorLevel MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the level for which this entry describes the power usage." ::= { pmPowerLevelEntry 1 } pmPowerLevelMaxPower OBJECT-TYPE SYNTAX Integer32 UNITS "Watts" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the maximum power for the Power Monitor at the particular Power Level. This value is specified in SI units of watts with the magnitude of the units (milliwatts, kilowatts, etc.) indicated separately in pmPowerLevelPowerUnitMultiplier. If the maximum power is not known for a certain Power Level, then the value is encoded as 0xFFFF. For Power Levels not enumerated, the value of pmPowerLevelMaxPower might be interpolated by using the next highest supported Power Level." ::= { pmPowerLevelEntry 2 } pmPowerLevelPowerUnitMultiplier OBJECT-TYPE SYNTAX UnitMultiplier MAX-ACCESS read-only STATUS current DESCRIPTION "The magnitude of watts for the usage value in pmPowerLevelMaxPower." ::= { pmPowerLevelEntry 3 } pmPowerLevelMappingTable OBJECT-TYPE SYNTAX SEQUENCE OF PmPowerLevelMappingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table enumerates the maximum power usage, in watts, for every single Manufacturer Power Level. This table also maps the Manufacturer Power Levels to the Power Levels specified in this document (more specifically, to the PowerMonitorLevel textual convention). Finally, this Expires April 16, 2011 [Page 41] Internet-Draft Oct 2010 table returns the name of each Manufacturer Power Level. For every different pmManufacturerMappingId in the pmTable, there is a corresponding entry in this table." ::= { powerMonitorMIBObjects 3 } pmPowerLevelMappingEntry OBJECT-TYPE SYNTAX PmPowerLevelMappingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "For every pmManufacturerMappingId, this entry displays the max usage value at every single possible Manufacturer Power Level supported by the Power Monitor, along with the mapping at the standardized Power Level For example, given the values of a Power Monitor corresponding to a maximum usage of 0, 3, 7, and 11W at the level 1 (off), 2 (low), 3 (medium), 4 (full), the mapping would be represent as follows: Pow. Lev. Manu. Pow. Lev./Name maxUsage 1 1/off 0 W 2 1/off 0 W 3 1/off 0 W 4 1/off 0 W 5 1/off 0 W 6 2/low 3 W 7 2/low 3 W 8 3/medium 7 W 9 3/medium 7 W 10 3/medium 7 W 11 3/medium 7 W 12 4/full 11 W In this example, the Manufacturer Power Levels map to the lowest applicable Power Levels, so that setting all Power Monitors to a Power Level would be conservative in terms of disabled functionality on the Power Monitor implementing the Manufacturer Power Levels." INDEX { pmManufacturerMappingId, pmPowerLevelIndex, pmManufacturerDefinedPowerLevel } ::= { pmPowerLevelMappingTable 1 } PmPowerLevelMappingEntry ::= SEQUENCE { Expires April 16, 2011 [Page 42] Internet-Draft Oct 2010 pmManufacturerDefinedPowerLevel Integer32, pmManufacturerPowerLevelMaxPower Integer32, pmManufacturerPowerLevelPowerUnitMultiplier UnitMultiplier, pmManufacturerPowerLevelName DisplayString } pmManufacturerDefinedPowerLevel OBJECT-TYPE SYNTAX Integer32 (0..10000) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object specifies the Manufacturer Power Levels for the specific pmManufacturerMappingId." ::= { pmPowerLevelMappingEntry 1 } pmManufacturerPowerLevelMaxPower OBJECT-TYPE SYNTAX Integer32 UNITS "Watts" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the maximum power for the Manufacturer Power Level specified by the pmManufacturerDefinedPowerLevel index. This value is specified in SI units of watts with the magnitude of the units (milliwatts, kilowatts, etc.) indicated separately in pmManufacturerPowerLevelPowerUnitMultiplier. If the maximum power is not known for a certain Power Level, then the value is encoded as 0xFFFF. For Power Levels not enumerated, the value of pmManufacturerPowerLevelMaxPower might be interpolated by using the next highest supported Power Level." ::= { pmPowerLevelMappingEntry 2 } pmManufacturerPowerLevelPowerUnitMultiplier OBJECT-TYPE SYNTAX UnitMultiplier MAX-ACCESS read-only STATUS current DESCRIPTION "The magnitude of watts for the usage value in pmManufacturerPowerLevelMaxPower ." ::= { pmPowerLevelMappingEntry 3 } pmManufacturerPowerLevelName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current Expires April 16, 2011 [Page 43] Internet-Draft Oct 2010 DESCRIPTION "The textual name of the manufacturer name for the Power Level specified by the pmManufacturerDefinedPowerLevel index. If there is no local name, or this object is otherwise not applicable, then this object contains a zero-length string." ::= { pmPowerLevelMappingEntry 4 } pmDemandEnergyParametersTable OBJECT-TYPE SYNTAX SEQUENCE OF PmDemandEnergyParametersEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Controls and configures the demand table pmDemandEnergyTable." ::= { powerMonitorMIBObjects 4 } pmDemandEnergyParametersEntry OBJECT-TYPE SYNTAX PmDemandEnergyParametersEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry controls an energy measurement in pmDemandEnergyTable." INDEX { pmIndex } ::= { pmDemandEnergyParametersTable 1 } PmDemandEnergyParametersEntry ::= SEQUENCE { pmDemandEnergyParametersIntervalLength TimeInterval, pmDemandEnergyParametersIntervalNumber Integer32, pmDemandEnergyParametersIntervalMode Integer32, pmDemandEnergyParametersIntervalWindow TimeInterval, pmDemandEnergyParametersSampleRate Integer32, pmDemandEnergyParametersStatus RowStatus } pmDemandEnergyParametersIntervalLength OBJECT-TYPE SYNTAX TimeInterval UNITS "Seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the length of time in seconds over which to compute the average pmDemandIntervalEnergyUsed measurement in the pmDemandEnergyTable table. The computation is based on the Power Monitor's internal sampling rate of power consumed or produced by the Power Expires April 16, 2011 [Page 44] Internet-Draft Oct 2010 Monitor. The sampling rate is the rate at which the power monitor can read the power usage and may differ based on device capabilities. The average energy consumption is then computed over the length of the demand interval." DEFVAL { 900 } ::= { pmDemandEnergyParametersEntry 1 } pmDemandEnergyParametersIntervalNumber OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The number of demand intervals maintained in the pmDemandEnergyTable table. Each interval is characterized by a specific pmDemandIntervalStartTime, used as an index in the the table pmDemandEnergyTable table pmDemandIntervalStartTime. Whenever the maximum number of entries is reached, the new demand interval replaces the oldest one, except if the oldest one is the pmDemandIntervalMax, in which case the next oldest interval is replaced." DEFVAL { 10 } ::= { pmDemandEnergyParametersEntry 2 } pmDemandEnergyParametersIntervalMode OBJECT-TYPE SYNTAX INTEGER { period(1), sliding(2), total(3) } MAX-ACCESS read-create STATUS current DESCRIPTION "A control object to define the mode of interval calculation for the computation of the average pmDemandIntervalEnergyUsed measurement in the pmDemandEnergyTable table. A mode of period(1) specifies non-overlapping periodic measurements. A mode of sliding(2) specifies overlapping sliding windows where the interval between the start of one interval and the next is defined in pmDemandEnergyParametersIntervalWindow. A mode of total(3) specifies non-periodic measurement. In this mode only one interval is used as this is a Expires April 16, 2011 [Page 45] Internet-Draft Oct 2010 continuous measurement since the last reset. The value of pmDemandEnergyParametersIntervalNumber should be (1) one and pmDemandEnergyParametersIntervalLength is ignored. " ::= { pmDemandEnergyParametersEntry 3 } pmDemandEnergyParametersIntervalWindow OBJECT-TYPE SYNTAX TimeInterval UNITS "Seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The length of the duration window between the starting time of one sliding window and the next starting time in seconds, in order to compute the average pmDemandIntervalEnergyUsed measurement in the pmDemandEnergyTable table This is valid only when the pmDemandEnergyParametersIntervalMode is sliding(2). The pmDemandEnergyParametersIntervalWindow value should be a multiple of pmDemandEnergyParametersSampleRate." ::= { pmDemandEnergyParametersEntry 4 } pmDemandEnergyParametersSampleRate OBJECT-TYPE SYNTAX Integer32 UNITS "Milliseconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The sampling rate, in milliseconds, at which the Power Monitor should poll power usage in order to compute the average pmDemandIntervalEnergyUsed measurement in the table pmDemandEnergyTable. The Power Monitor should initially set this sampling rate to a reasonable value, i.e., a compromise between intervals that will provide good accuracy by not being too long, but not so short that they affect the Power Monitor performance by requesting continuous polling. If the sampling rate is unknown, the value 0 is reported. The sampling rate should be selected so that pmDemandEnergyParametersIntervalWindow is a multiple of pmDemandEnergyParametersSampleRate." DEFVAL { 1000 } ::= { pmDemandEnergyParametersEntry 5 } pmDemandEnergyParametersStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current Expires April 16, 2011 [Page 46] Internet-Draft Oct 2010 DESCRIPTION "The status of this row. The pmDemandEnergyParametersStatus is used to start or stop energy usage logging. An entry status may not be active(1) unless all objects in the entry have an appropriate value. If this object is not equal to active(1), all associated usage-data logged into the pmDemandEnergyTable will be deleted. The data can be destroyed by setting up the pmDemandEnergyParametersStatus to destroy(2)." ::= {pmDemandEnergyParametersEntry 6 } pmDemandEnergyTable OBJECT-TYPE SYNTAX SEQUENCE OF PmDemandEnergyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists Power Monitor energy measurements. Entries in this table are only created if the corresponding value of object pmPowerMeasurementCaliber is active(2), i.e., if the power is actually metered." ::= { powerMonitorMIBObjects 5 } pmDemandEnergyEntry OBJECT-TYPE SYNTAX PmDemandEnergyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describing energy measurements." INDEX { pmIndex, pmDemandEnergyParametersIntervalMode, pmDemandEnergyIntervalStartTime } ::= { pmDemandEnergyTable 1 } PmDemandEnergyEntry ::= SEQUENCE { pmDemandEnergyIntervalStartTime TimeTicks, pmDemandEnergyIntervalEnergyUsed Integer32, pmDemandEnergyIntervalEnergyUnitMultiplier UnitMultiplier, pmDemandEnergyIntervalMax Integer32 } pmDemandEnergyIntervalStartTime OBJECT-TYPE SYNTAX TimeTicks UNITS "hundredths of seconds" Expires April 16, 2011 [Page 47] Internet-Draft Oct 2010 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized, as specified in the sysUpTime [RFC3418]. This object is useful for reference of interval periods for which the demand is measured." ::= { pmDemandEnergyEntry 1 } pmDemandEnergyIntervalEnergyUsed OBJECT-TYPE SYNTAX Integer32 UNITS "Watt-hours" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the energy used in units of watt- hours for the Power Monitor over the defined interval. This value is specified in the common billing units of watt-hours with the magnitude of watt-hours (kW-Hr, MW- Hr, etc.) indicated separately in pmDemandEnergyIntervalEnergyUnitMultiplier." ::= { pmDemandEnergyEntry 2 } pmDemandEnergyIntervalEnergyUnitMultiplier OBJECT-TYPE SYNTAX UnitMultiplier MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the magnitude of watt-hours for the energy field in pmDemandEnergyIntervalEnergyUsed." ::= { pmDemandEnergyEntry 3 } pmDemandEnergyIntervalMax OBJECT-TYPE SYNTAX Integer32 UNITS "Watt-hours" MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the maximum demand ever observed in pmDemandEnergyIntervalEnergyUsed since the monitoring started. This value is specified in the common billing units of watt-hours with the magnitude of watt-hours (kW- Hr, MW-Hr, etc.) indicated separately in pmDemandEnergyIntervalEnergyUnits." ::= { pmDemandEnergyEntry 4 } Expires April 16, 2011 [Page 48] Internet-Draft Oct 2010 -- Notifications pmPowerLevelChange NOTIFICATION-TYPE OBJECTS {pmPowerLevel,pmManufacturerActualPowerLevel} STATUS current DESCRIPTION "The SNMP entity generates the PmPowerLevelChange when the value(s) of pmPowerLevel and/or pmManufacturerActualPowerLevel has changed for the Power Monitor represented by the pmIndex." ::= { powerMonitorMIBNotifs 1 } -- Conformance powerMonitorMIBCompliances OBJECT IDENTIFIER ::= { powerMonitorMIB 3 } powerMonitorMIBGroups OBJECT IDENTIFIER ::= { powerMonitorMIB 4 } powerMonitorMIBFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "When this MIB is implemented with support for read-create, then such an implementation can claim full compliance. Such devices can then be both monitored and configured with this MIB." MODULE -- this module MANDATORY-GROUPS { powerMonitorMIBTableGroup, powerMonitorMIBLevelTableGroup, powerMonitorMIBLevelMappingTableGroup, powerMonitorMIBDemandEnergyTableGroup, powerMonitorMIBDemandEnergyParametersTableGroup, powerMonitorMIBNotifGroup } ::= { powerMonitorMIBCompliances 1 } powerMonitorMIBReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "When this MIB is implemented without support for read-create (i.e. in read-only mode), then such an implementation can claim read-only compliance. Such a device can then be monitored but can not be configured with this MIB." MODULE -- this module Expires April 16, 2011 [Page 49] Internet-Draft Oct 2010 MANDATORY-GROUPS { powerMonitorMIBTableGroup, powerMonitorMIBLevelTableGroup, powerMonitorMIBLevelMappingTableGroup, powerMonitorMIBNotifGroup } OBJECT pmPowerLevel MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { powerMonitorMIBCompliances 2 } -- Units of Conformance powerMonitorMIBTableGroup OBJECT-GROUP OBJECTS { pmPower, pmPowerNameplate, pmPowerUnitMultiplier, pmPowerAccuracy, pmPowerMeasurementCaliber, pmCurrentType, pmPowerOrigin, pmPowerCategory, pmPowerLevel, pmPowerActualLevel, pmManufacturerActualPowerLevel, pmManufacturerMappingId } STATUS current DESCRIPTION "This group contains the collection of all the objects related to the PowerMonitor." ::= { powerMonitorMIBGroups 1 } powerMonitorMIBLevelTableGroup OBJECT-GROUP OBJECTS { pmPowerLevelMaxPower, pmPowerLevelPowerUnitMultiplier } STATUS current DESCRIPTION "This group contains the collection of all the objects related to the Power Level. " ::= { powerMonitorMIBGroups 2 } Expires April 16, 2011 [Page 50] Internet-Draft Oct 2010 powerMonitorMIBLevelMappingTableGroup OBJECT-GROUP OBJECTS { pmManufacturerPowerLevelMaxPower, pmManufacturerPowerLevelPowerUnitMultiplier, pmManufacturerPowerLevelName } STATUS current DESCRIPTION "This table enumerates the maximum power usage in watts, for every single Manufacturer Power Level." ::= { powerMonitorMIBGroups 3 } powerMonitorMIBDemandEnergyParametersTableGroup OBJECT-GROUP OBJECTS { pmDemandEnergyParametersIntervalLength, pmDemandEnergyParametersIntervalNumber, pmDemandEnergyParametersIntervalMode, pmDemandEnergyParametersIntervalWindow, pmDemandEnergyParametersSampleRate, pmDemandEnergyParametersStatus } STATUS current DESCRIPTION "This group contains the collection of all the objects related to the configuration of the Demand Table." ::= { powerMonitorMIBGroups 4 } powerMonitorMIBDemandEnergyTableGroup OBJECT-GROUP OBJECTS { -- Note that object -- pmDemandIntervalStartTime is not -- included since it is not-accessible pmDemandEnergyIntervalEnergyUsed, pmDemandEnergyIntervalEnergyUnitMultiplier, pmDemandEnergyIntervalMax } STATUS current DESCRIPTION "This group contains the collection of all the objects related to the Demand Table." ::= { powerMonitorMIBGroups 5 } powerMonitorMIBNotifGroup NOTIFICATION-GROUP Expires April 16, 2011 [Page 51] Internet-Draft Oct 2010 NOTIFICATIONS { pmPowerLevelChange } STATUS current DESCRIPTION "This group contains the notifications for the power and energy monitoring MIB Module." ::= { powerMonitorMIBGroups 6 } END -- ************************************************************ -- -- This MIB module is used to monitor power quality of networked -- devices with measurements. -- -- This MIB module is an extension of powerMonitorMIB module. -- -- ************************************************************* POWER-QUALITY-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2, Integer32 FROM SNMPv2-SMI MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION FROM SNMPv2-TC UnitMultiplier, pmPowerTable , pmIndex FROM POWER-MONITOR-MIB ; powerQualityMIB MODULE-IDENTITY LAST-UPDATED "201005300000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO "Cisco Systems Customer Service Postal: 170 W Tasman Drive Expires April 16, 2011 [Page 52] Internet-Draft Oct 2010 San Jose, CA 95134 USA Tel: +1 800 553-NETS E-mail: cs-snmp@cisco.com" DESCRIPTION "This MIB is used to report AC power quality in devices. The table is a sparse augmentation of the pmTable table from the powerMonitorMIB module. Both three-phase and single-phase power configurations are supported." REVISION "201005300000Z" DESCRIPTION "Initial version, published as RFC XXXX." ::= { mib-2 yyyyy } powerQualityMIBConform OBJECT IDENTIFIER ::= { powerQualityMIB 0 } powerQualityMIBObjects OBJECT IDENTIFIER ::= { powerQualityMIB 1 } -- Objects pmACPwrQualityTable OBJECT-TYPE SYNTAX SEQUENCE OF PmACPwrQualityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table defines power quality measurements for supported pmIndex entities. It is a sparse extension of the pmTable." ::= { powerQualityMIBObjects 1 } pmACPwrQualityEntry OBJECT-TYPE SYNTAX PmACPwrQualityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is a sparse extension of the pmTable with entries for power quality measurements or configuration. Each measured value corresponds to an attribute in IEC Expires April 16, 2011 [Page 53] Internet-Draft Oct 2010 61850-7-4 for non-phase measurements within the object MMUX." INDEX { pmIndex } ::= { pmACPwrQualityTable 1 } PmACPwrQualityEntry ::= SEQUENCE { pmACPwrQualityConfiguration INTEGER, pmACPwrQualityAvgVoltage Integer32, pmACPwrQualityAvgCurrent Integer32, pmACPwrQualityFrequency Integer32, pmACPwrQualityPowerUnitMultiplier UnitMultiplier, pmACPwrQualityPowerAccuracy Integer32, pmACPwrQualityTotalActivePower Integer32, pmACPwrQualityTotalReactivePower Integer32, pmACPwrQualityTotalApparentPower Integer32, pmACPwrQualityTotalPowerFactor Integer32, pmACPwrQualityThdAmpheres Integer32, pmACPwrQualityThdVoltage Integer32 } pmACPwrQualityConfiguration OBJECT-TYPE SYNTAX INTEGER { sngl(1), del(2), wye(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "Configuration describes the physical configurations of the power supply lines: * alternating current, single phase (SNGL) * alternating current, three phase delta (DEL) * alternating current, three phase Y (WYE) Three-phase configurations can be either connected in a triangular delta (DEL) or star Y (WYE) system. WYE systems have a shared neutral voltage, while DEL systems do not. Each phase is offset 120 degrees to each other." ::= { pmACPwrQualityEntry 1 } pmACPwrQualityAvgVoltage OBJECT-TYPE SYNTAX Integer32 UNITS "0.1 Volt AC" MAX-ACCESS read-only STATUS current Expires April 16, 2011 [Page 54] Internet-Draft Oct 2010 DESCRIPTION "A measured value for average 'instantaneous' RMS line voltage. For a 3-phase system, this is the average voltage (V1+V2+V3)/3. IEC 61850-7-4 measured value attribute 'Vol'" ::= { pmACPwrQualityEntry 2 } pmACPwrQualityAvgCurrent OBJECT-TYPE SYNTAX Integer32 UNITS "Ampheres" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the current per phase. IEC 61850- 7-4 attribute 'Amp'" ::= { pmACPwrQualityEntry 3 } pmACPwrQualityFrequency OBJECT-TYPE SYNTAX Integer32 (4500..6500) -- UNITS 0.01 Hertz UNITS "hertz" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value for the basic frequency of the AC circuit. IEC 61850-7-4 attribute 'Hz'." ::= { pmACPwrQualityEntry 4 } pmACPwrQualityPowerUnitMultiplier OBJECT-TYPE SYNTAX UnitMultiplier MAX-ACCESS read-only STATUS current DESCRIPTION "The magnitude of watts for the usage value in pmACPwrQualityTotalActivePower, pmACPwrQualityTotalReactivePower and pmACPwrQualityTotalApparentPower measurements. For 3-phase power systems, this will also include pmACPwrQualityPhaseActivePower, pmACPwrQualityPhaseReactivePower and pmACPwrQualityPhaseApparentPower" ::= { pmACPwrQualityEntry 5 } pmACPwrQualityPowerAccuracy OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION Expires April 16, 2011 [Page 55] Internet-Draft Oct 2010 "This object indicates a percentage value, in 100ths of a percent, representing the presumed accuracy of active, reactive, and apparent power usage reporting. For example: 1010 means the reported usage is accurate to +/- 10.1 percent. This value is zero if the accuracy is unknown. ANSI and IEC define the following accuracy classes for power measurement: IEC 62053-22 & 60044-1 class 0.1, 0.2, 0.5, 1 & 3. ANSI C12.20 class 0.2 & 0.5" ::= { pmACPwrQualityEntry 6 } pmACPwrQualityTotalActivePower OBJECT-TYPE SYNTAX Integer32 UNITS "RMS watts" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the actual power delivered to or consumed by the load. IEC 61850-7-4 attribute 'TotW'." ::= { pmACPwrQualityEntry 7 } pmACPwrQualityTotalReactivePower OBJECT-TYPE SYNTAX Integer32 UNITS "volt-amperes reactive" MAX-ACCESS read-only STATUS current DESCRIPTION "A mesured value of the reactive portion of the apparent power. IEC 61850-7-4 attribute 'TotVAr'." ::= { pmACPwrQualityEntry 8 } pmACPwrQualityTotalApparentPower OBJECT-TYPE SYNTAX Integer32 UNITS "volt-amperes" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the voltage and current which determines the apparent power. The apparent power is the vector sum of real and reactive power. Note: watts and volt-ampheres are equivalent units and may be combined. IEC 61850-7-4 attribute 'TotVA'." ::= { pmACPwrQualityEntry 9 } pmACPwrQualityTotalPowerFactor OBJECT-TYPE Expires April 16, 2011 [Page 56] Internet-Draft Oct 2010 SYNTAX Integer32 (-10000..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value ratio of the real power flowing to the load versus the apparent power. It is dimensionless and expressed here as a percentage value in 100ths of a percent. A power factor of 100% indicates there is no inductance load and thus no reactive power. Power Factor can be positive or negative, where the sign should be in lead/lag (IEEE) form. IEC 61850-7-4 attribute 'TotPF'." ::= { pmACPwrQualityEntry 10 } pmACPwrQualityThdAmpheres OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A calculated value for the current total harmonic distortion (THD). Method of calculation is not specified. IEC 61850-7-4 attribute 'ThdAmp'." ::= { pmACPwrQualityEntry 11 } pmACPwrQualityThdVoltage OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A calculated value for the voltage total harmonic distortion (THD). Method of calculation is not specified. IEC 61850-7-4 attribute 'ThdVol'." ::= { pmACPwrQualityEntry 12 } pmACPwrQualityPhaseTable OBJECT-TYPE SYNTAX SEQUENCE OF PmACPwrQualityPhaseEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table describes 3-phase power quality measurements. It is a sparse extension of the pmACPwrQualityTable." ::= { powerQualityMIBObjects 2 } pmACPwrQualityPhaseEntry OBJECT-TYPE Expires April 16, 2011 [Page 57] Internet-Draft Oct 2010 SYNTAX PmACPwrQualityPhaseEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes common 3-phase power quality measurements. This optional table describes 3-phase power quality measurements, with three entries for each supported pmIndex entity. Entities having single phase power shall not have any entities. This table describes attributes common to both WYE and DEL. Entities having single phase power shall not have any entries here. It is a sparse extension of the pmACPwrQualityTable. These attributes correspond to IEC 61850-7.4 MMXU phase measurements." INDEX { pmIndex, pmPhaseIndex } ::= { pmACPwrQualityPhaseTable 1 } PmACPwrQualityPhaseEntry ::= SEQUENCE { pmPhaseIndex Integer32, pmACPwrQualityPhaseAvgCurrent Integer32, pmACPwrQualityPhaseActivePower Integer32, pmACPwrQualityPhaseReactivePower Integer32, pmACPwrQualityPhaseApparentPower Integer32, pmACPwrQualityPhasePowerFactor Integer32, pmACPwrQualityPhaseImpedance Integer32 } pmPhaseIndex OBJECT-TYPE SYNTAX Integer32 (0..359) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A phase angle typically corresponding to 0, 120, 240." ::= { pmACPwrQualityPhaseEntry 1 } pmACPwrQualityPhaseAvgCurrent OBJECT-TYPE SYNTAX Integer32 UNITS "Ampheres" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the current per phase. IEC 61850- 7-4 attribute 'A'" Expires April 16, 2011 [Page 58] Internet-Draft Oct 2010 ::= { pmACPwrQualityPhaseEntry 2 } pmACPwrQualityPhaseActivePower OBJECT-TYPE SYNTAX Integer32 UNITS "RMS watts" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the actual power delivered to or consumed by the load. IEC 61850-7-4 attribute 'W'" ::= { pmACPwrQualityPhaseEntry 3 } pmACPwrQualityPhaseReactivePower OBJECT-TYPE SYNTAX Integer32 UNITS "volt-amperes reactive" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the reactive portion of the apparent power. IEC 61850-7-4 attribute 'VAr'" ::= { pmACPwrQualityPhaseEntry 4 } pmACPwrQualityPhaseApparentPower OBJECT-TYPE SYNTAX Integer32 UNITS "volt-amperes" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the voltage and current determines the apparent power. Active plus reactive power equals the total apparent powwer. Note: Watts and volt-ampheres are equivalent units and may be combined. IEC 61850-7-4 attribute 'VA'." ::= { pmACPwrQualityPhaseEntry 5 } pmACPwrQualityPhasePowerFactor OBJECT-TYPE SYNTAX Integer32 (-10000..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value ratio of the real power flowing to the load versus the apparent power for this phase. IEC 61850-7-4 attribute 'PF'. Power Factor can be positive or negative where the sign should be in lead/lag (IEEE) form." ::= { pmACPwrQualityPhaseEntry 6 } Expires April 16, 2011 [Page 59] Internet-Draft Oct 2010 pmACPwrQualityPhaseImpedance OBJECT-TYPE SYNTAX Integer32 UNITS "volt-amperes" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of the impedance. IEC 61850-7-4 attribute 'Z'." ::= { pmACPwrQualityPhaseEntry 7 } pmACPwrQualityDelPhaseTable OBJECT-TYPE SYNTAX SEQUENCE OF PmACPwrQualityDelPhaseEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table describes DEL configuration phase-to-phase power quality measurements. This is a sparse extension of the pmACPwrQualityPhaseTable." ::= { powerQualityMIBObjects 3 } pmACPwrQualityDelPhaseEntry OBJECT-TYPE SYNTAX PmACPwrQualityDelPhaseEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes quality attributes of a phase in a DEL 3-phase power system. Voltage measurements are provided both relative to each other and zero. Measured values are from IEC 61850-7-2 MMUX and THD from MHAI objects. For phase-to-phase measurements, the pmPhaseIndex is compared against the following phase at +120 degrees. Thus, the possible values are: pmPhaseIndex Next Phase Angle 0 120 120 240 240 0 " INDEX { pmIndex, pmPhaseIndex} ::= { pmACPwrQualityDelPhaseTable 1} PmACPwrQualityDelPhaseEntry ::= SEQUENCE { pmACPwrQualityDelPhaseToNextPhaseVoltage Integer32, pmACPwrQualityDelThdPhaseToNextPhaseVoltage Integer32, Expires April 16, 2011 [Page 60] Internet-Draft Oct 2010 pmACPwrQualityDelThdCurrent Integer32 } pmACPwrQualityDelPhaseToNextPhaseVoltage OBJECT-TYPE SYNTAX Integer32 UNITS "0.1 Volt AC" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of phase to next phase voltages, where the next phase is IEC 61850-7-4 attribute 'PPV'." ::= { pmACPwrQualityDelPhaseEntry 2 } pmACPwrQualityDelThdPhaseToNextPhaseVoltage OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A calculated value for the voltage total harmonic disortion for phase to next phase. Method of calculation is not specified. IEC 61850-7-4 attribute 'ThdPPV'." ::= { pmACPwrQualityDelPhaseEntry 3 } pmACPwrQualityDelThdCurrent OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" MAX-ACCESS read-only STATUS current DESCRIPTION "A calculated value for the voltage total harmonic disortion (THD) for phase to phase. Method of calculation is not specified. IEC 61850-7-4 attribute 'ThdPPV'." ::= { pmACPwrQualityDelPhaseEntry 4 } pmACPwrQualityWyePhaseTable OBJECT-TYPE SYNTAX SEQUENCE OF PmACPwrQualityWyePhaseEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table describes WYE configuration phase-to-neutral power quality measurements. This is a sparse extension of the pmACPwrQualityPhaseTable." ::= { powerQualityMIBObjects 4 } pmACPwrQualityWyePhaseEntry OBJECT-TYPE SYNTAX PmACPwrQualityWyePhaseEntry Expires April 16, 2011 [Page 61] Internet-Draft Oct 2010 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table describes measurements of WYE configuration with phase to neutral power quality attributes. Three entries are required for each supported pmIndex entry. Voltage measurements are relative to neutral. This is a sparse extension of the pmACPwrQualityPhaseTable. Each entry describes quality attributes of one phase of a WYE 3-phase power system. Measured values are from IEC 61850-7-2 MMUX and THD from MHAI objects." INDEX { pmIndex, pmPhaseIndex } ::= { pmACPwrQualityWyePhaseTable 1} PmACPwrQualityWyePhaseEntry ::= SEQUENCE { pmACPwrQualityWyePhaseToNeutralVoltage Integer32, pmACPwrQualityWyePhaseCurrent Integer32, pmACPwrQualityWyeThdPhaseToNeutralVoltage Integer32 } pmACPwrQualityWyePhaseToNeutralVoltage OBJECT-TYPE SYNTAX Integer32 UNITS "0.1 Volt AC" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of phase to neutral voltage. IEC 61850-7-4 attribute 'PhV'." ::= { pmACPwrQualityWyePhaseEntry 1 } pmACPwrQualityWyePhaseCurrent OBJECT-TYPE SYNTAX Integer32 UNITS "0.1 ampheres AC" MAX-ACCESS read-only STATUS current DESCRIPTION "A measured value of phase currents. IEC 61850-7-4 attribute 'A'." ::= { pmACPwrQualityWyePhaseEntry 2 } pmACPwrQualityWyeThdPhaseToNeutralVoltage OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "hundredths of percent" Expires April 16, 2011 [Page 62] Internet-Draft Oct 2010 MAX-ACCESS read-only STATUS current DESCRIPTION "A calculated value of the voltage total harmonic distortion (THD) for phase to neutral. IEC 61850-7-4 attribute 'ThdPhV'." ::= { pmACPwrQualityWyePhaseEntry 3 } -- Conformance powerQualityMIBCompliances OBJECT IDENTIFIER ::= { powerQualityMIB 2 } powerQualityMIBGroups OBJECT IDENTIFIER ::= { powerQualityMIB 3 } powerQualityMIBFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "When this MIB is implemented with support for read- create, then such an implementation can claim full compliance. Such devices can then be both monitored and configured with this MIB." MODULE -- this module MANDATORY-GROUPS { powerACPwrQualityMIBTableGroup, powerACPwrQualityPhaseMIBTableGroup } GROUP powerACPwrQualityDelPhaseMIBTableGroup DESCRIPTION "This group must only be implemented for a DEL phase configuration." GROUP powerACPwrQualityWyePhaseMIBTableGroup DESCRIPTION "This group must only be implemented for a WYE phase configuration." ::= { powerQualityMIBCompliances 1 } -- Units of Conformance powerACPwrQualityMIBTableGroup OBJECT-GROUP OBJECTS { -- Note that object pmIndex is NOT -- included since it is not-accessible pmACPwrQualityConfiguration, Expires April 16, 2011 [Page 63] Internet-Draft Oct 2010 pmACPwrQualityAvgVoltage, pmACPwrQualityAvgCurrent, pmACPwrQualityFrequency, pmACPwrQualityPowerUnitMultiplier, pmACPwrQualityPowerAccuracy, pmACPwrQualityTotalActivePower, pmACPwrQualityTotalReactivePower, pmACPwrQualityTotalApparentPower, pmACPwrQualityTotalPowerFactor, pmACPwrQualityThdAmpheres, pmACPwrQualityThdVoltage } STATUS current DESCRIPTION "This group contains the collection of all the power quality objects related to the Power Monitor." ::= { powerQualityMIBGroups 1 } powerACPwrQualityPhaseMIBTableGroup OBJECT-GROUP OBJECTS { -- Note that object pmIndex is NOT -- included since it is not-accessible pmACPwrQualityPhaseAvgCurrent, pmACPwrQualityPhaseActivePower, pmACPwrQualityPhaseReactivePower, pmACPwrQualityPhaseApparentPower, pmACPwrQualityPhasePowerFactor, pmACPwrQualityPhaseImpedance } STATUS current DESCRIPTION "This group contains the collection of all 3-phase power quality objects related to the Power Level." ::= { powerQualityMIBGroups 2 } powerACPwrQualityDelPhaseMIBTableGroup OBJECT-GROUP OBJECTS { -- Note that object pmIndex and -- pmPhaseIndex are NOT included -- since they are not-accessible pmACPwrQualityDelPhaseToNextPhaseVoltage , pmACPwrQualityDelThdPhaseToNextPhaseVoltage, pmACPwrQualityDelThdCurrent } STATUS current DESCRIPTION "This group contains the collection of all quality attributes of a phase in a DEL 3-phase power system." Expires April 16, 2011 [Page 64] Internet-Draft Oct 2010 ::= { powerQualityMIBGroups 3 } powerACPwrQualityWyePhaseMIBTableGroup OBJECT-GROUP OBJECTS { -- Note that object pmIndex and -- pmPhaseIndex are NOT included -- since they are not-accessible pmACPwrQualityWyePhaseToNeutralVoltage, pmACPwrQualityWyePhaseCurrent, pmACPwrQualityWyeThdPhaseToNeutralVoltage } STATUS current DESCRIPTION "This group contains the collection of all WYE configuration phase-to-neutral power quality measurements." ::= { powerQualityMIBGroups 4 } END 10. Security Considerations Some of the readable objects in these MIB modules (i.e., objects with a MAX-ACCESS other than not-accessible) may be considered sensitive or vulnerable in some network environments. It is thus important to control even GET and/or NOTIFY access to these objects and possibly to even encrypt the values of these objects when sending them over the network via SNMP. There are a number of management objects defined in these MIB modules with a MAX-ACCESS clause of read-write and/or read- create. Such objects MAY be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. The following are the tables and objects and their sensitivity/vulnerability: . Unauthorized changes to the pmPowerLevel MAY disrupt the power settings of the different Power Monitors, and therefore the level of functionality of the respective Power Monitors. . Unauthorized changes to the pmDemandControlTable MAY disrupt energy measurement in the pmDemandEnergyTable table. SNMP versions prior to SNMPv3 did not include adequate security. Expires April 16, 2011 [Page 65] Internet-Draft Oct 2010 Even if the network itself is secure (for example, by using IPsec), there is still no secure control over who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in these MIB modules. It is RECOMMENDED that implementers consider the security features as provided by the SNMPv3 framework (see [RFC3410], section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy). Further, deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable cryptographic security. It is then a customer/operator responsibility to ensure that the SNMP entity giving access to an instance of these MIB modules is properly configured to give access to the objects only to those principals (users) that have legitimate rights to GET or SET (change/create/delete) them. 11. IANA Considerations The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry: Descriptor OBJECT IDENTIFIER value ---------- ----------------------- PowerMonitorMIB { mib-2 xxx } Additions to this MIB module are subject to Expert Review [RFC5226], i.e., review by one of a group of experts designated by an IETF Area Director. The group of experts MUST check the requested MIB objects for completeness and accuracy of the description. Requests for MIB objects that duplicate the functionality of existing objects SHOULD be declined. The smallest available OID SHOULD be assigned to a new MIB objects. The specification of new MIB objects SHOULD follow the structure specified in Section 6 and MUST be published using a well- established and persistent publication medium. 12. Acknowledgment The authors would like to thank Shamita Pisal for her prototype of this MIB module, and her valuable feedback. The authors would like to Michael Brown for improving the text dramatically. Expires April 16, 2011 [Page 66] Internet-Draft Oct 2010 13. References 13.1. Normative References [RFC2119] S. Bradner, Key words for use in RFCs to Indicate Requirement Levels, BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC3621] Berger, A., and D. Romascanu, "Power Ethernet MIB", RFC3621, December 2003. [RFC4133] Bierman, A. and K. McCloghrie, "Entity MIB (Version 3)", RFC 4133, August 2005. [LLDP-MED-MIB] ANSI/TIA-1057, "The LLDP Management Information Base extension module for TIA-TR41.4 media endpoint discovery information", July 2005. [POWER-AWARE-MIB], J. Parello, and B. Claise, "draft-parello- eman-energy-aware-mib-00", work in progress, October 2010. 13.2. Informative References [RFC1628] S. Bradner, "UPS Management Information Base", RFC 1628, May 1994 [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet Standard Management Framework ", RFC 3410, December 2002. Expires April 16, 2011 [Page 67] Internet-Draft Oct 2010 [RFC3418] Presun, R., Case, J., McCloghrie, K., Rose, M, and S. Waldbusser, "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)", RFC3418, December 2002. [RFC3433] Bierman, A., Romascanu, D., and K. Norseth, "Entity Sensor Management Information Base", RFC 3433, December 2002. [RFC4268] Chisholm, S. and D. Perkins, "Entity State MIB", RFC 4268,November 2005. [RFC5226] Narten, T. Alverstrand, H., A. and K. McCloghrie, "Guidelines for Writing an IANA Considerations Section in RFCs ", BCP 26, RFC 5226, May 2008. [POWER-MON-REQ] Quittek, J., Winter, R., Dietz, T., Claise, B., and M. Chandramouli, "Requirements for Power Monitoring", draft-quittek-power-monitoring- requirements-01 (work in progress), October 2009. [QUITTEK-POWER-MIB] Quittek, J., Winter, R., Dietz, T., and Dudkowski, D., "Requirements for Power Monitoring", draft-quittek-power-mib-01.txt(work in progress), April 2010. [POWER-MON-ARCH] Claise, B., Parello, J., and B. Schoening, "Power Management Architecture", draft-claise-power- management-arch-01 (work in progress), August 2010. [ACPI] "Advanced Configuration and Power Interface Specification", http://www.acpi.info/spec30b.htm [DASH] "Desktop and mobile Architecture for System Hardware", http://www.dmtf.org/standards/mgmt/dash/ Authors' Addresses Benoit Claise Cisco Systems, Inc. De Kleetlaan 6a b1 Diegem 1813 BE Expires April 16, 2011 [Page 68] Internet-Draft Oct 2010 Phone: +32 2 704 5622 Email: bclaise@cisco.com Mouli Chandramouli Cisco Systems, Inc. Sarjapur Outer Ring Road Bangalore, IN Phone: +91 80 4426 3947 Email: moulchan@cisco.com John Parello Cisco Systems Inc. 3550 Cisco Way San Jose, California 95134 US Phone: +1 408 525 2339 Email: jparello@cisco.com Brad Schoening Cisco Systems Inc. 3550 Cisco Way San Jose, California 95134 US Phone: +1 408 525 2339 Email: braschoe@cisco.com Expires April 16, 2011 [Page 69]