CISCO-ERM-MIB

Cisco Embedded Resource Manager (ERM) MIB.
        
The Embedded Resource Manager (ERM) is a framework which
helps in effectively managing resources such as cpu, memory,
buffers, etc. There are two important scenarios where the ERM
framework would be useful:
        
1. Resource Depletion
   - how to gracefully handle a situation where the system
     runs out of a finite resource.
        
2. Resource Separation
   - how to share resources fairly between different entities
     in the system such that activity of one entity does not
     adversely affect others.
        
The ERM framework has the following entities:
        
1. Resource Owner
        
   Resource Owner (RO) provides resources to one or more
   resource users. Example: cpu, memory and buffer.
        
   The resource owner doesn't mean the physical resource.
   For example, 'memory' resource owner would actually 
   mean the memory manager rather than the physical memory.
        
2. Resource User Type
        
   Resource User Type (RUT) is a template which defines
   a set of resource owners from where resources can be
   obtained by any of the resource users instantiated from
   the resource user type. 
        
3. Resource User
        
   Resource User (RU) is a logical entity or application
   that consumes one or more resources. Resource users are
   instantiated from the Resource User Type. Resource user
   can also be called as 'instance of a resource user type'.
   A resource user registers with a resource user type and 
   thus it is indirectly registered with all resource owners 
   defined by the resource user type. 
        
4. Resource User Group
        
   Resource User Group (RG) is a logical entity which contains
   group of resource users. It would hence forth be referred
   as Resource Group. In some cases (for example, multiple
   users with same name), user may want to set threshold value
   for sum of resource utilized by a group of resource users.
   In such case, those resource users can be grouped/added
   under a resource group. Then, user can apply a resource
   policy to the resource group.
        
5. Resource Usage Monitor
        
   This is also called as Resource Monitor (RM). The resource
   monitor is a logical entity or application that monitors
   resource owner, resource user, resource policy and resource
   owner <-> resource user relationship. When any applied
   resource policy is violated, all resource monitors
   monitoring the resource policy will be notified and the 
   resource monitor can take appropriate action based on the 
   resource owner and resource user attributes.
        
The ERM framework allows three types of thresholding:
        
1) System Global Thresholding
        
   When total utilization of a resource exceeds the applied
   global rising threshold value, all resource users which
   consume resources from the concerned resource owner are
   notified to take appropriate action. The notification
   order is determined by priority of the resource users.
   Resource users with a lower priority are notified first,
   so as to enable lower priority resource users to reduce its
   resource consumption prior to any higher priority resource
   users. This order prevents higher priority resource
   users to start freeing up their resource, thereby not
   affecting their performance.
        
2) User Local Thresholding
        
   When utilization of a resource by a specific resource user
   exceeds the applied user local rising threshold value,
   a notification is sent *only* to the concerned resource
   user. The user local thresholding method can be used to
   prevent a resource user from monopolizing any available
   resources.
        
3) Per User Global Thresholding
        
   When total utilization of a resource exceeds the applied
   per user global rising threshold value, a notification
   is sent *only* to the concerned resource user. Each
   resource user can have its own per user global threshold
   value (per resource owner). Per User Global Thresholding
   is similar to System Global Thresholding, except that
   notification for Per User Global Threshold violation is
   sent only to the corresponding resource user. The main
   purpose of the Per User Global Thresholding is that a
   resource user can take preventive actions based on the
   global resource utilization of a resource.
        
The Embedded Resource Manager (ERM) framework allows applying
and monitoring threshold limit for usage of resources such as
cpu, memory, buffer, etc. Exceeding any applied rising
threshold value will trigger an 'up' notification to relevant
resource user(s) and resource monitor(s) based on the type 
of violated resource policy.  After the 'up' notification,
if the utilization goes below the falling threshold value,
a 'down' notification will be sent to the resource user(s)
and resource monitor(s). The 'up' and 'down' notifications
do not mean the SNMP notifications/traps. Rising threshold
value and falling threshold value should be different to
avoid flapping.
        
The ERM framework enables configuration of resource policy
in which rising/falling threshold values for a set of
resource owners can be specified. There are two types of
resource policies which can be configured.
        
1) Global Resource Policy
   There can be only one global resource policy applied
   in the system at any point of time, though multiple
   global resource policies can be configured. On violation 
   of a applied global resource policy, all resource users
   (which consume resources from the concerned resource owner)
   and resource monitors (which watch the concerned
   resource owner) will be notified to take appropriate
   action.
        
2) Local Resource Policy
   The local resource policy is configured for a specific
   resource user type. This policy can be applied for a
   resource user (or group) of the same resource user type.
   A local resource policy can be applied for more than one
   resource users (or groups). Both user local thresholding
   and per user global thresholding can be configured under
   a local resource policy. On violation of any local resource
   policy, only those resource users on which the violated
   resource policy was applied, will be notified in order to
   take appropriate action.
        
Whenever a resource is consumed, current utilization of the
resource will be compared against the applied rising
threshold value. The ERM framework provides a mechanism
to send notifications to resource user(s) and resource
monitor(s) whenever resource utilization exceeds any applied
rising threshold value or falls below any applied falling
threshold value. In such situations, the resource user(s)
can take appropriate corrective action (for example, limiting
or avoiding resource consumption). Thus, the ERM framework
helps in preventing catastrophic system failures caused by
high levels of resource depletion. The ERM framework can be
extended to all kinds of resources (for example, incoming
control plane packets) that need to be managed.
        
The ERM MIB module facilitates the following operations:
        
1. Getting information about all the above mentioned
   ERM entities available in a managed system.
2. Creating/modifying/removing a resource policy.
3. Creating/modifying/removing a threshold configuration
   for a particular resource policy.
4. Creating/removing a resource group.
5. Adding/removing a resource user to/from a particular
   resource group.
6. Applying global resource policy.
7. Applying local resource policy for a resource user or
   resource group.
    

Imported Objects

ciscoMgmtCISCO-SMI
PhysicalIndex, entPhysicalIndexENTITY-MIB
SnmpAdminStringSNMP-FRAMEWORK-MIB
OBJECT-GROUP, NOTIFICATION-GROUP, MODULE-COMPLIANCESNMPv2-CONF
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Unsigned32SNMPv2-SMI
TEXTUAL-CONVENTION, RowStatus, StorageType, TruthValueSNMPv2-TC

Type Definitions (17)

Name Base Type Values/Constraints
CermDampenIntervalInteger32range: 0..2592000
CermGroupIdUnsigned32range: 1..4294967295
CermMonitorIdUnsigned32range: 1..4294967295
CermNotificationDirectionEnumerationup(1), down(2)
CermNotificationSeverityEnumerationnone(1), minor(2), major(3), critical(4)
CermOwnerIdUnsigned32range: 1..4294967295
CermOwnerIdOrZeroUnsigned32range: 0..4294967295
CermResUsagePctUnsigned32
CermSubEntityIdUnsigned32range: 0..4294967295
CermThresholdUnsigned32range: 1..4294967295
CermThresholdOrZeroUnsigned32range: 0..4294967295
CermThresholdSeverityEnumerationminor(1), major(2), critical(3)
CermUserIdUnsigned32range: 1..4294967295
CermUserIdOrZeroUnsigned32range: 0..4294967295
CermUserOrGroupEnumerationgroup(1), user(2)
CermUserTypeIdUnsigned32range: 1..65535
CermUserTypeIdOrZeroUnsigned32range: 0..65535

Objects

ciscoErmMIB .1.3.6.1.4.1.9.9.510
ciscoErmMIBNotifs .1.3.6.1.4.1.9.9.510.0
ciscoErmMIBObjects .1.3.6.1.4.1.9.9.510.1
cermScalars .1.3.6.1.4.1.9.9.510.1.1
cermScalarsGlobalPolicyName .1.3.6.1.4.1.9.9.510.1.1.1
cermStats .1.3.6.1.4.1.9.9.510.1.2
cermResOwnerTable .1.3.6.1.4.1.9.9.510.1.2.1
cermResOwnerEntry
.1.3.6.1.4.1.9.9.510.1.2.1.1
cermResOwnerSubEntityId .1.3.6.1.4.1.9.9.510.1.2.1.1.1
cermResOwnerId .1.3.6.1.4.1.9.9.510.1.2.1.1.2
cermResOwnerName .1.3.6.1.4.1.9.9.510.1.2.1.1.3
cermResOwnerMeasurementUnit .1.3.6.1.4.1.9.9.510.1.2.1.1.4
cermResOwnerThreshIsConfigurable
.1.3.6.1.4.1.9.9.510.1.2.1.1.5
cermResOwnerResUserCount .1.3.6.1.4.1.9.9.510.1.2.1.1.6
cermResOwnerResGroupCount .1.3.6.1.4.1.9.9.510.1.2.1.1.7
cermResUserTypeResOwnerTable .1.3.6.1.4.1.9.9.510.1.2.10
cermResUserTypeResOwnerEntry
.1.3.6.1.4.1.9.9.510.1.2.10.1
cermResUserTypeResOwnerId .1.3.6.1.4.1.9.9.510.1.2.10.1.1
cermResMonitorTable .1.3.6.1.4.1.9.9.510.1.2.11
cermResMonitorEntry
.1.3.6.1.4.1.9.9.510.1.2.11.1
cermResMonitorSubEntityId .1.3.6.1.4.1.9.9.510.1.2.11.1.1
cermResMonitorId .1.3.6.1.4.1.9.9.510.1.2.11.1.2
cermResMonitorName .1.3.6.1.4.1.9.9.510.1.2.11.1.3
cermResMonitorResOwnerResUserTable .1.3.6.1.4.1.9.9.510.1.2.12
cermResMonitorResOwnerResUserEntry
.1.3.6.1.4.1.9.9.510.1.2.12.1
cermResMonitorResOwnerId .1.3.6.1.4.1.9.9.510.1.2.12.1.1
cermResMonitorResUserTypeId .1.3.6.1.4.1.9.9.510.1.2.12.1.2
cermResMonitorResUserId .1.3.6.1.4.1.9.9.510.1.2.12.1.3
cermResMonitorResPolicyName .1.3.6.1.4.1.9.9.510.1.2.12.1.4
cermResMonitorPolicyTable .1.3.6.1.4.1.9.9.510.1.2.13
cermResMonitorPolicyEntry
.1.3.6.1.4.1.9.9.510.1.2.13.1
cermResMonitorPolicyName .1.3.6.1.4.1.9.9.510.1.2.13.1.1
cermResOwnerSubTypeTable .1.3.6.1.4.1.9.9.510.1.2.2
cermResOwnerSubTypeEntry
.1.3.6.1.4.1.9.9.510.1.2.2.1
cermResOwnerSubTypeId .1.3.6.1.4.1.9.9.510.1.2.2.1.1
cermResOwnerSubTypeName .1.3.6.1.4.1.9.9.510.1.2.2.1.2
cermResOwnerSubTypeUsagePct .1.3.6.1.4.1.9.9.510.1.2.2.1.3
cermResOwnerSubTypeUsage .1.3.6.1.4.1.9.9.510.1.2.2.1.4
cermResOwnerSubTypeMaxUsage .1.3.6.1.4.1.9.9.510.1.2.2.1.5
cermResOwnerSubTypeGlobNotifSeverity .1.3.6.1.4.1.9.9.510.1.2.2.1.6
cermResOwnerSubTypeThresholdTable .1.3.6.1.4.1.9.9.510.1.2.3
cermResOwnerSubTypeThresholdEntry
.1.3.6.1.4.1.9.9.510.1.2.3.1
cermResOwnerSubTypeThreshSeverity .1.3.6.1.4.1.9.9.510.1.2.3.1.1
cermResOwnerSubTypeRisingThresh .1.3.6.1.4.1.9.9.510.1.2.3.1.2
cermResOwnerSubTypeRisingInterval .1.3.6.1.4.1.9.9.510.1.2.3.1.3
cermResOwnerSubTypeFallingThresh .1.3.6.1.4.1.9.9.510.1.2.3.1.4
cermResOwnerSubTypeFallingInterval .1.3.6.1.4.1.9.9.510.1.2.3.1.5
cermResUserTypeTable .1.3.6.1.4.1.9.9.510.1.2.4
cermResUserTypeEntry
.1.3.6.1.4.1.9.9.510.1.2.4.1
cermResUserTypeSubEntityId .1.3.6.1.4.1.9.9.510.1.2.4.1.1
cermResUserTypeId .1.3.6.1.4.1.9.9.510.1.2.4.1.2
cermResUserTypeName .1.3.6.1.4.1.9.9.510.1.2.4.1.3
cermResUserTypeResOwnerCount .1.3.6.1.4.1.9.9.510.1.2.4.1.4
cermResUserTypeResUserCount .1.3.6.1.4.1.9.9.510.1.2.4.1.5
cermResUserTypeResGroupCount .1.3.6.1.4.1.9.9.510.1.2.4.1.6
cermResUserTable .1.3.6.1.4.1.9.9.510.1.2.5
cermResUserEntry
.1.3.6.1.4.1.9.9.510.1.2.5.1
cermResUserId .1.3.6.1.4.1.9.9.510.1.2.5.1.1
cermResUserName .1.3.6.1.4.1.9.9.510.1.2.5.1.2
cermResUserPriority .1.3.6.1.4.1.9.9.510.1.2.5.1.3
cermResUserResGroupId .1.3.6.1.4.1.9.9.510.1.2.5.1.4
cermResGroupTable .1.3.6.1.4.1.9.9.510.1.2.6
cermResGroupEntry
.1.3.6.1.4.1.9.9.510.1.2.6.1
cermResGroupId .1.3.6.1.4.1.9.9.510.1.2.6.1.1
cermResGroupName .1.3.6.1.4.1.9.9.510.1.2.6.1.2
cermResGroupUserInstanceCount .1.3.6.1.4.1.9.9.510.1.2.6.1.3
cermResGroupResUserTable .1.3.6.1.4.1.9.9.510.1.2.7
cermResGroupResUserEntry
.1.3.6.1.4.1.9.9.510.1.2.7.1
cermResGroupResUserId .1.3.6.1.4.1.9.9.510.1.2.7.1.1
cermResOwnerResUserOrGroupTable .1.3.6.1.4.1.9.9.510.1.2.8
cermResOwnerResUserOrGroupEntry
.1.3.6.1.4.1.9.9.510.1.2.8.1
cermResOwnerResUserTypeId .1.3.6.1.4.1.9.9.510.1.2.8.1.1
cermResOwnerResUserOrGroupId .1.3.6.1.4.1.9.9.510.1.2.8.1.2
cermResUserOrGroupFlag .1.3.6.1.4.1.9.9.510.1.2.8.1.3
cermResUserOrGroupUsagePct .1.3.6.1.4.1.9.9.510.1.2.8.1.4
cermResUserOrGroupUsage .1.3.6.1.4.1.9.9.510.1.2.8.1.5
cermResUserOrGroupMaxUsage .1.3.6.1.4.1.9.9.510.1.2.8.1.6
cermResUserOrGroupNotifSeverity .1.3.6.1.4.1.9.9.510.1.2.8.1.7
cermResUserOrGroupGlobNotifSeverity .1.3.6.1.4.1.9.9.510.1.2.8.1.8
cermResOwnerResUserOrGroupThresholdTable .1.3.6.1.4.1.9.9.510.1.2.9
cermResOwnerResUserOrGroupThresholdEntry
.1.3.6.1.4.1.9.9.510.1.2.9.1
cermResUserOrGroupThreshIsUserGlob
.1.3.6.1.4.1.9.9.510.1.2.9.1.1
cermResUserOrGroupThreshSeverity .1.3.6.1.4.1.9.9.510.1.2.9.1.2
cermResUserOrGroupThreshFlag .1.3.6.1.4.1.9.9.510.1.2.9.1.3
cermResUserOrGroupRisingThresh .1.3.6.1.4.1.9.9.510.1.2.9.1.4
cermResUserOrGroupRisingInterval .1.3.6.1.4.1.9.9.510.1.2.9.1.5
cermResUserOrGroupFallingThresh .1.3.6.1.4.1.9.9.510.1.2.9.1.6
cermResUserOrGroupFallingInterval .1.3.6.1.4.1.9.9.510.1.2.9.1.7
cermConfig .1.3.6.1.4.1.9.9.510.1.3
cermConfigPolicyTable .1.3.6.1.4.1.9.9.510.1.3.1
cermConfigPolicyEntry .1.3.6.1.4.1.9.9.510.1.3.1.1
cermPolicyName .1.3.6.1.4.1.9.9.510.1.3.1.1.1
cermPolicyIsGlobal
.1.3.6.1.4.1.9.9.510.1.3.1.1.2
cermPolicyUserTypeName .1.3.6.1.4.1.9.9.510.1.3.1.1.3
cermPolicyLoggingEnabled
.1.3.6.1.4.1.9.9.510.1.3.1.1.4
cermPolicySnmpNotifEnabled
.1.3.6.1.4.1.9.9.510.1.3.1.1.5
cermPolicyStorageType
.1.3.6.1.4.1.9.9.510.1.3.1.1.6
cermPolicyRowStatus
.1.3.6.1.4.1.9.9.510.1.3.1.1.7
cermConfigPolicyResOwnerThreshTable .1.3.6.1.4.1.9.9.510.1.3.2
cermConfigPolicyResOwnerThreshEntry .1.3.6.1.4.1.9.9.510.1.3.2.1
cermPolicyPhysicalIndex
.1.3.6.1.4.1.9.9.510.1.3.2.1.1
cermPolicyFallingInterval .1.3.6.1.4.1.9.9.510.1.3.2.1.10
cermPolicyResOwnerThreshStorageType
.1.3.6.1.4.1.9.9.510.1.3.2.1.11
cermPolicyResOwnerThreshRowStatus
.1.3.6.1.4.1.9.9.510.1.3.2.1.12
cermPolicyResOwnerSubEntityId .1.3.6.1.4.1.9.9.510.1.3.2.1.2
cermPolicyResOwnerId .1.3.6.1.4.1.9.9.510.1.3.2.1.3
cermPolicyResOwnerSubTypeId .1.3.6.1.4.1.9.9.510.1.3.2.1.4
cermPolicyIsUserGlobal
.1.3.6.1.4.1.9.9.510.1.3.2.1.5
cermPolicyThresholdSeverity .1.3.6.1.4.1.9.9.510.1.3.2.1.6
cermPolicyRisingThreshold .1.3.6.1.4.1.9.9.510.1.3.2.1.7
cermPolicyRisingInterval .1.3.6.1.4.1.9.9.510.1.3.2.1.8
cermPolicyFallingThreshold .1.3.6.1.4.1.9.9.510.1.3.2.1.9
cermConfigResGroupTable .1.3.6.1.4.1.9.9.510.1.3.3
cermConfigResGroupEntry .1.3.6.1.4.1.9.9.510.1.3.3.1
cermConfigResGroupName .1.3.6.1.4.1.9.9.510.1.3.3.1.1
cermConfigResGroupUserTypeName .1.3.6.1.4.1.9.9.510.1.3.3.1.2
cermConfigResGroupStorageType
.1.3.6.1.4.1.9.9.510.1.3.3.1.3
cermConfigResGroupRowStatus
.1.3.6.1.4.1.9.9.510.1.3.3.1.4
cermConfigResGroupUserTable .1.3.6.1.4.1.9.9.510.1.3.4
cermConfigResGroupUserEntry .1.3.6.1.4.1.9.9.510.1.3.4.1
cermConfigResGroupUserName .1.3.6.1.4.1.9.9.510.1.3.4.1.1
cermConfigResGroupUserStorageType
.1.3.6.1.4.1.9.9.510.1.3.4.1.2
cermConfigResGroupUserRowStatus
.1.3.6.1.4.1.9.9.510.1.3.4.1.3
cermConfigPolicyApplyTable .1.3.6.1.4.1.9.9.510.1.3.5
cermConfigPolicyApplyEntry .1.3.6.1.4.1.9.9.510.1.3.5.1
cermPolicyApplyUserOrGroupName .1.3.6.1.4.1.9.9.510.1.3.5.1.1
cermPolicyApplyUserOrGroupFlag .1.3.6.1.4.1.9.9.510.1.3.5.1.2
cermPolicyApplyPolicyName .1.3.6.1.4.1.9.9.510.1.3.5.1.3
cermPolicyApplyStorageType
.1.3.6.1.4.1.9.9.510.1.3.5.1.4
cermPolicyApplyRowStatus
.1.3.6.1.4.1.9.9.510.1.3.5.1.5
cermNotifObjects .1.3.6.1.4.1.9.9.510.1.4
cermNotifsThresholdSeverity .1.3.6.1.4.1.9.9.510.1.4.1
cermNotifsThresholdIsUserGlob
.1.3.6.1.4.1.9.9.510.1.4.2
cermNotifsThresholdValue .1.3.6.1.4.1.9.9.510.1.4.3
cermNotifsDirection .1.3.6.1.4.1.9.9.510.1.4.4
cermNotifsPolicyName
.1.3.6.1.4.1.9.9.510.1.4.5
cermNotifControlObjects .1.3.6.1.4.1.9.9.510.1.5
cermNotifsEnabled
.1.3.6.1.4.1.9.9.510.1.5.1
ciscoErmMIBConform .1.3.6.1.4.1.9.9.510.2
ciscoErmMIBCompliances .1.3.6.1.4.1.9.9.510.2.1
ciscoErmMIBGroups .1.3.6.1.4.1.9.9.510.2.2

Notifications/Traps

NameOIDDescription
ciscoErmGlobalPolicyViolation






.1.3.6.1.4.1.9.9.510.0.1
ication event will be generated whenever system
global resource policy is violated i.e. total resource
utilization exceeds the applied global threshold limit for
any resource owner sub-type. Also, this notificatioin will be
generated when resource utilization of the affected resource
owner sub-type falls below the corresponding falling threshold
value.
          
The cermResOwnerName and cermResOwnerSubTypeName objects
indicates the resource owner name and resource owner sub-type
name for which an applied global threshold value got violated.
          
The cermNotifsThresholdSeverity object indicates the configured
threshold severity which got violated. This object contains
value of the cermResOwnerSubTypeThreshSeverity corresponding
to the global threshold configuration which got violated.
          
The cermNotifsThresholdValue object indicates the configured
threshold limit which got violated. This object contains value
of either cermResOwnerSubTypeRisingThresh or
cermResOwnerSubTypeFallingThresh based on the ERM notification
direction indicated by the object cermNotifsDirection.
If the cermNotifsDirection object value is 'up', the
cermNotifsThresholdValue object would contain the value of
the object cermResOwnerSubTypeRisingThresh. If the
cermNotifsDirection object value is 'down', the
cermNotifsThresholdValue object would contain the value of
the object cermResOwnerSubTypeFallingThresh.
          
The cermNotifsDirection object indicates whether it is
an 'up' notification or a 'down' notification.
          
The cermNotifsPolicyName object indicates name of the global
resource policy which got violated. This object contains
value of the cermPolicyName for the violated resource policy,
in the cermConfigPolicyTable. If there is no associated
resource policy name for the notification, then this object
will contain zero-length string.
ciscoErmLocalPolicyViolation










.1.3.6.1.4.1.9.9.510.0.2
ication event will be generated whenever a local
resource policy is violated i.e. resource utilization exceeds
the applied user local or per user global threshold limit
for any resource owner sub-type <-> resource user relationship.
          
The cermResOwnerName and cermResOwnerSubTypeName objects
indicates the resource owner name and resource owner sub-type
name for which an applied per user global or user local
threshold value got violated.
          
The cermResUserOrGroupThreshFlag object indicates whether
the ERM notification is because of *resource user* threshold
violation or *resource group* threshold violation.
          
The cermNotifsThresholdIsUserGlob object indicates whether
the notification belongs to Per User Global threshold
violation or User Local threshold violation. This object
contains the value of cermResUserOrGroupThreshIsUserGlob 
corresponding to the threshold configuration which got
violated.
          
The cermNotifsThresholdValue object indicates the configured
threshold limit which got violated. This object contains
value of either cermResUserOrGroupRisingThresh or
cermResUserOrGroupFallingThresh based on the ERM notification
direction indicated by the object cermNotifsDirection. For
the 'up' notification, this object would contain value of
the object cermResUserOrGroupRisingThresh. For the 'down'
notification, it would contain value of the object
cermResUserOrGroupFallingThresh.
          
The cermNotifsThresholdSeverity object indicates the
configured threshold severity which got violated. This object
contains value of the object cermResUserOrGroupThreshSeverity
corresponding to the resource owner sub-type and resource user
relationship.
          
The cermNotifsDirection object indicates whether it is an
'up' notification or a 'down' notification.
          
The cermNotifsPolicyName object indicates name of the local
resource policy which got violated. If there is no associated
policy name for the notification, then this object will
contain zero-length string.