-- ***************************************************************** -- DLINKES-ENTITY-EXT-MIB.mib : D-Link Entity Extensions MIB -- -- Copyright (c) 2013 D-Link Corporation, all rights reserved. -- -- ***************************************************************** DLINKES-ENTITY-EXT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Unsigned32, Integer32 FROM SNMPv2-SMI DisplayString FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF dlinkCommon FROM DLINK-ID-REC-MIB; dlinkEsEntityExtMIB MODULE-IDENTITY LAST-UPDATED "201708170000Z" ORGANIZATION "D-Link Corp." CONTACT-INFO " D-Link Corporation Postal: No. 289, Sinhu 3rd Rd., Neihu District, Taipei City 114, Taiwan, R.O.C Tel: +886-2-66000123 E-mail: tsd@dlink.com.tw " DESCRIPTION "This MIB module provides essential information about the system and defines the managed objects that support the monitoring of alarms generated by physical entities, including temperature sensors, fans and power supplies. " REVISION "201708170000Z" DESCRIPTION "This is the first version of this MIB." ::= { dlinkCommon 5 } -- ----------------------------------------------------------------------------- esEntityExtNotifications OBJECT IDENTIFIER ::= { dlinkEsEntityExtMIB 0 } esEntityExtObjects OBJECT IDENTIFIER ::= { dlinkEsEntityExtMIB 1 } esEntityExtConformance OBJECT IDENTIFIER ::= { dlinkEsEntityExtMIB 2 } -- ----------------------------------------------------------------------------- esEntityExtEnvObjects OBJECT IDENTIFIER ::= { esEntityExtObjects 1 } esEntityExtEnvTempTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtEnvTempEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table consists of a list of temperature information." ::= { esEntityExtEnvObjects 1 } esEntityExtEnvTempEntry OBJECT-TYPE SYNTAX EsEntityExtEnvTempEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry represents the temperature status of a testpoint. " INDEX { esEntityExtEnvTempUnitId, esEntityExtEnvTempIndex } ::= { esEntityExtEnvTempTable 1 } EsEntityExtEnvTempEntry ::= SEQUENCE { esEntityExtEnvTempUnitId Unsigned32, esEntityExtEnvTempIndex Integer32, esEntityExtEnvTempDescr DisplayString, esEntityExtEnvTempCurrent Integer32, esEntityExtEnvTempThresholdLow Integer32, esEntityExtEnvTempThresholdHigh Integer32, esEntityExtEnvTempStatus INTEGER } esEntityExtEnvTempUnitId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID at which the testpoint is located." ::= { esEntityExtEnvTempEntry 1 } esEntityExtEnvTempIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to uniquely identify the testpoint within a unit/slot. This index is for SNMP purposes only, and has no intrinsic meaning." ::= { esEntityExtEnvTempEntry 2 } esEntityExtEnvTempDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object provides human-sensible identification for the testpoint. e.g. 'Inlet', 'Center', 'Outlet'. " ::= { esEntityExtEnvTempEntry 3 } esEntityExtEnvTempCurrent OBJECT-TYPE SYNTAX Integer32 UNITS "degrees Celsius" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the current measurement of the testpoint." ::= { esEntityExtEnvTempEntry 4 } esEntityExtEnvTempThresholdLow OBJECT-TYPE SYNTAX Integer32 UNITS "degrees Celsius" MAX-ACCESS read-write STATUS current DESCRIPTION "The object indicates the minimum acceptable reading of the testpoint in degrees Celsius. " ::= { esEntityExtEnvTempEntry 5 } esEntityExtEnvTempThresholdHigh OBJECT-TYPE SYNTAX Integer32 UNITS "degrees Celsius" MAX-ACCESS read-write STATUS current DESCRIPTION "The object indicates the maximum acceptable reading of the testpoint in degrees Celsius. " ::= { esEntityExtEnvTempEntry 6 } esEntityExtEnvTempStatus OBJECT-TYPE SYNTAX INTEGER { ok(1), abnormal(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The object indicates the current temperature is over the thresholds or not. 'abnormal' indicates the temperature is over the thresholds. 'ok' indicates the temperature is not over the thresholds." ::= { esEntityExtEnvTempEntry 7 } -- ----------------------------------------------------------------------------- esEntityExtEnvFanTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtEnvFanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display the status of fans." ::= { esEntityExtEnvObjects 2 } esEntityExtEnvFanEntry OBJECT-TYPE SYNTAX EsEntityExtEnvFanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry represents a fan status. " INDEX { esEntityExtEnvFanUnitId, esEntityExtEnvFanIndex } ::= { esEntityExtEnvFanTable 1 } EsEntityExtEnvFanEntry ::= SEQUENCE { esEntityExtEnvFanUnitId Unsigned32, esEntityExtEnvFanIndex Integer32, esEntityExtEnvFanDescr DisplayString, esEntityExtEnvFanStatus INTEGER } esEntityExtEnvFanUnitId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID at which the fan is located." ::= { esEntityExtEnvFanEntry 1 } esEntityExtEnvFanIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to uniquely identify the fan within a unit/slot. This index is for SNMP purposes only, and has no intrinsic meaning." ::= { esEntityExtEnvFanEntry 2 } esEntityExtEnvFanDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object provides human-sensible identification for the fan. e.g. 'Left 1' for the first fan on the left. " ::= { esEntityExtEnvFanEntry 3 } esEntityExtEnvFanStatus OBJECT-TYPE SYNTAX INTEGER { ok(1), fault(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the fan status." ::= { esEntityExtEnvFanEntry 4 } -- ----------------------------------------------------------------------------- esEntityExtEnvPowerTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtEnvPowerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display the status of the power modules." ::= { esEntityExtEnvObjects 3 } esEntityExtEnvPowerEntry OBJECT-TYPE SYNTAX EsEntityExtEnvPowerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains the information of a power module." INDEX { esEntityExtEnvPowerUnitId, esEntityExtEnvPowerIndex } ::= { esEntityExtEnvPowerTable 1 } EsEntityExtEnvPowerEntry ::= SEQUENCE { esEntityExtEnvPowerUnitId Unsigned32, esEntityExtEnvPowerIndex Unsigned32, esEntityExtEnvPowerDescr DisplayString, esEntityExtEnvPowerStatus INTEGER } esEntityExtEnvPowerUnitId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID at which the power module is located." ::= { esEntityExtEnvPowerEntry 1 } esEntityExtEnvPowerIndex OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the ID of the power module. This object is used to uniquely identify the power module. This index is for SNMP purposes only, and has no intrinsic meaning. " ::= { esEntityExtEnvPowerEntry 2 } esEntityExtEnvPowerDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object provides human-sensible information for the power module. e.g. '#1 (internal)', '#2 (external)'. " ::= { esEntityExtEnvPowerEntry 3 } esEntityExtEnvPowerStatus OBJECT-TYPE SYNTAX INTEGER { inOperation(1), failed(2), empty(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the status of the power." ::= { esEntityExtEnvPowerEntry 6 } -- ----------------------------------------------------------------------------- esEntityExtEnvTrap OBJECT IDENTIFIER ::= { esEntityExtObjects 2 } esEntityExtEnvNotifyEnable OBJECT-TYPE SYNTAX BITS { fan(0), power(1), temperature(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates whether a specified notification is enabled or not. If a bit corresponding to a notification is set to 1, then the specified notification can be generated. fan(0) - fan trap state for warning fan event (fan failed or fan recover). power(1) - power trap state for warning power event (power failure or power recovery). temperature(2) - temperature trap state for warning temperature event (temperature exceeds the thresholds or temperature recover). " ::= { esEntityExtEnvTrap 1 } -- ----------------------------------------------------------------------------- esEntityExtUnitTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtUnitEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display information of units." ::= { esEntityExtObjects 3 } esEntityExtUnitEntry OBJECT-TYPE SYNTAX EsEntityExtUnitEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains essential information of a unit." INDEX { esEntityExtUnitIndex } ::= { esEntityExtUnitTable 1 } EsEntityExtUnitEntry ::= SEQUENCE { esEntityExtUnitIndex Unsigned32, esEntityExtUnitStatus INTEGER, esEntityExtUnitUpTime Unsigned32 } esEntityExtUnitIndex OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID. " ::= { esEntityExtUnitEntry 1 } esEntityExtUnitStatus OBJECT-TYPE SYNTAX INTEGER { ok(1), failed(2), empty(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the status of the unit: ok(1) - This indicates the unit is okay. failed(2) - This indicates the unit fails due to some reason. empty(3) - This indicates that the unit is provisioned but currently not installed. " ::= { esEntityExtUnitEntry 2 } esEntityExtUnitUpTime OBJECT-TYPE SYNTAX Unsigned32 UNITS "seconds" MAX-ACCESS read-only STATUS current DESCRIPTION "This object provides the up time in units of seconds for the unit since it was last re-initialized. " ::= { esEntityExtUnitEntry 3 } -- ----------------------------------------------------------------------------- esEntityExtMemoryUtilTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtMemoryUtilEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display memory utilization information." ::= { esEntityExtObjects 4 } esEntityExtMemoryUtilEntry OBJECT-TYPE SYNTAX EsEntityExtMemoryUtilEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains memory utilization information. " INDEX { esEntityExtMemUtilUnitId, esEntityExtMemUtilType } ::= { esEntityExtMemoryUtilTable 1 } EsEntityExtMemoryUtilEntry ::= SEQUENCE { esEntityExtMemUtilUnitId Integer32, esEntityExtMemUtilType INTEGER, esEntityExtMemUtilTotal Unsigned32, esEntityExtMemUtilUsed Unsigned32, esEntityExtMemUtilFree Unsigned32 } esEntityExtMemUtilUnitId OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID. " ::= { esEntityExtMemoryUtilEntry 1 } esEntityExtMemUtilType OBJECT-TYPE SYNTAX INTEGER { dram(1), flash(2), nvram(3) } MAX-ACCESS not-accessible STATUS current DESCRIPTION "The object indicates the memory type of the entry." ::= { esEntityExtMemoryUtilEntry 2 } esEntityExtMemUtilTotal OBJECT-TYPE SYNTAX Unsigned32 UNITS "KB" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the total memory size of the entry." ::= { esEntityExtMemoryUtilEntry 3 } esEntityExtMemUtilUsed OBJECT-TYPE SYNTAX Unsigned32 UNITS "KB" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the used memory size of the entry." ::= { esEntityExtMemoryUtilEntry 4 } esEntityExtMemUtilFree OBJECT-TYPE SYNTAX Unsigned32 UNITS "KB" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the free memory size of the entry." ::= { esEntityExtMemoryUtilEntry 5 } -- ----------------------------------------------------------------------------- esEntityExtCpuUtilTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtCpuUtilEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display CPU utilization information." ::= { esEntityExtObjects 7 } esEntityExtCpuUtilEntry OBJECT-TYPE SYNTAX EsEntityExtCpuUtilEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains CPU information." INDEX { esEntityExtCpuUtilUnitId, esEntityExtCpuUtilCpuID } ::= { esEntityExtCpuUtilTable 1 } EsEntityExtCpuUtilEntry ::= SEQUENCE { esEntityExtCpuUtilUnitId Unsigned32, esEntityExtCpuUtilCpuID Unsigned32, esEntityExtCpuUtilFiveSeconds Unsigned32, esEntityExtCpuUtilOneMinute Unsigned32, esEntityExtCpuUtilFiveMinutes Unsigned32 } esEntityExtCpuUtilUnitId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID. " ::= { esEntityExtCpuUtilEntry 1 } esEntityExtCpuUtilCpuID OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to uniquely identify the CPU within a unit (multiprocessing system)." ::= { esEntityExtCpuUtilEntry 2 } esEntityExtCpuUtilFiveSeconds OBJECT-TYPE SYNTAX Unsigned32 UNITS "percentage" MAX-ACCESS read-only STATUS current DESCRIPTION "This objects indicates the overall CPU busy percentage in the last 5 second period. The value will be between 0% (idle) and 100% (very busy). " ::= { esEntityExtCpuUtilEntry 3 } esEntityExtCpuUtilOneMinute OBJECT-TYPE SYNTAX Unsigned32 UNITS "percentage" MAX-ACCESS read-only STATUS current DESCRIPTION "This objects indicates the overall CPU busy percentage in the last 1 minute period. The value will be between 0% (idle) and 100% (very busy). " ::= { esEntityExtCpuUtilEntry 4 } esEntityExtCpuUtilFiveMinutes OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This objects indicates the overall CPU busy percentage in the last 5 minute period. The value will be between 0% (idle) and 100% (very busy). " ::= { esEntityExtCpuUtilEntry 5 } -- ----------------------------------------------------------------------------- esEntityExtVersionTable OBJECT-TYPE SYNTAX SEQUENCE OF EsEntityExtVersionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table is used to display version information of units." ::= { esEntityExtObjects 8 } esEntityExtVersionEntry OBJECT-TYPE SYNTAX EsEntityExtVersionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains version information of a unit." INDEX { esEntityExtVersionUnitId} ::= { esEntityExtVersionTable 1 } EsEntityExtVersionEntry ::= SEQUENCE { esEntityExtVersionUnitId Unsigned32, esEntityExtVersionBootloader DisplayString, esEntityExtVersionRuntime DisplayString } esEntityExtVersionUnitId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the unit (stacking device) or slot (chassis device) ID. " ::= { esEntityExtVersionEntry 1 } esEntityExtVersionBootloader OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the bootloader version of the unit. " ::= { esEntityExtVersionEntry 2 } esEntityExtVersionRuntime OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the firmware version of one unit. " ::= { esEntityExtVersionEntry 3 } -- ----------------------------------------------------------------------------- -- Notifications -- ----------------------------------------------------------------------------- esEntityExtFanStatusChg NOTIFICATION-TYPE OBJECTS { esEntityExtEnvFanStatus } STATUS current DESCRIPTION "This trap indicates a fan fails (esEntityExtEnvFanStatus is 'fault') or recovers (esEntityExtEnvFanStatus is 'ok'). " ::= { esEntityExtNotifications 1 } esEntityExtThermalStatusChg NOTIFICATION-TYPE OBJECTS { esEntityExtEnvTempStatus } STATUS current DESCRIPTION "This trap indicates a thermal alarms (esEntityExtEnvTempStatus is 'abnormal') or recovers (esEntityExtEnvTempStatus is 'ok'). " ::= { esEntityExtNotifications 2 } esEntityExtPowerStatusChg NOTIFICATION-TYPE OBJECTS { esEntityExtEnvPowerStatus } STATUS current DESCRIPTION "This trap indicates a power module fails, recovers or is removed. " ::= { esEntityExtNotifications 3 } -- ----------------------------------------------------------------------------- -- MIB Conformance statements -- ----------------------------------------------------------------------------- esEntityExtMIBCompliances OBJECT IDENTIFIER ::= { esEntityExtConformance 1 } esEntityExtMIBGroups OBJECT IDENTIFIER ::= { esEntityExtConformance 2 } esEntityExtCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities which implement the DLINKES-ENTITY-EXT-MIB." MODULE -- this module MANDATORY-GROUPS { esEntityExtSystemInfoGroup } GROUP esEntityExtTempGroup DESCRIPTION "This group is mandatory if monitoring environment temperature is supported." OBJECT esEntityExtEnvTempThresholdLow MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT esEntityExtEnvTempThresholdHigh MIN-ACCESS read-only DESCRIPTION "Write access is not required." GROUP esEntityExtThermalNotifGroup DESCRIPTION "This group is mandatory if monitoring environment temperature is supported." GROUP esEntityExtFanGroup DESCRIPTION "This group is mandatory if monitoring fan is supported." GROUP esEntityExtFanNotifGroup DESCRIPTION "This group is mandatory if monitoring fan is supported." GROUP esEntityExtPowerGroup DESCRIPTION "This group is mandatory if monitoring power is supported." GROUP esEntityExtPowerNotifGroup DESCRIPTION "This group is mandatory if monitoring power is supported." GROUP esEntityExtGenericNotifInfoGroup DESCRIPTION "This group is mandatory if one kind of notification is supported." ::= { esEntityExtMIBCompliances 1 } -- Units of Conformance esEntityExtTempGroup OBJECT-GROUP OBJECTS { esEntityExtEnvTempDescr, esEntityExtEnvTempCurrent, esEntityExtEnvTempThresholdLow, esEntityExtEnvTempThresholdHigh, esEntityExtEnvTempStatus } STATUS current DESCRIPTION "A collection of objects provides information of the system temperature." ::= { esEntityExtMIBGroups 1 } esEntityExtFanGroup OBJECT-GROUP OBJECTS { esEntityExtEnvFanDescr, esEntityExtEnvFanStatus } STATUS current DESCRIPTION "A collection of objects providing informations of fans." ::= { esEntityExtMIBGroups 2 } esEntityExtPowerGroup OBJECT-GROUP OBJECTS { esEntityExtEnvPowerDescr, esEntityExtEnvPowerStatus } STATUS current DESCRIPTION "A collection of objects providing information of power modules. " ::= { esEntityExtMIBGroups 3 } esEntityExtSystemInfoGroup OBJECT-GROUP OBJECTS { esEntityExtUnitStatus, esEntityExtUnitUpTime, esEntityExtMemUtilTotal, esEntityExtMemUtilUsed, esEntityExtMemUtilFree, esEntityExtCpuUtilFiveSeconds, esEntityExtCpuUtilOneMinute, esEntityExtCpuUtilFiveMinutes, esEntityExtVersionBootloader, esEntityExtVersionRuntime } STATUS current DESCRIPTION "A collection of objects provides information of the system temperature." ::= { esEntityExtMIBGroups 4 } esEntityExtGenericNotifInfoGroup OBJECT-GROUP OBJECTS { esEntityExtEnvNotifyEnable } STATUS current DESCRIPTION "A collection of objects provides generic information for binding variables of notification. " ::= { esEntityExtMIBGroups 5 } esEntityExtFanNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { esEntityExtFanStatusChg } STATUS current DESCRIPTION "A collection of notifications for indicating the status change of fans." ::= { esEntityExtMIBGroups 6 } esEntityExtThermalNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { esEntityExtThermalStatusChg } STATUS current DESCRIPTION "A collection of notifications for indicating the status change of thermals." ::= { esEntityExtMIBGroups 7 } esEntityExtPowerNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { esEntityExtPowerStatusChg } STATUS current DESCRIPTION "A collection of notifications for indicating the status change of power module." ::= { esEntityExtMIBGroups 8 } END