mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Merge pull request #2672 from vitalisator/master
add cpu and memory discovery/polling to PBN devices
This commit is contained in:
@@ -1278,6 +1278,10 @@ $config['os'][$os]['type'] = 'network';
|
|||||||
$config['os'][$os]['ifXmcbc'] = 1;
|
$config['os'][$os]['ifXmcbc'] = 1;
|
||||||
$config['os'][$os]['over'][0]['graph'] = 'device_bits';
|
$config['os'][$os]['over'][0]['graph'] = 'device_bits';
|
||||||
$config['os'][$os]['over'][0]['text'] = 'Device Traffic';
|
$config['os'][$os]['over'][0]['text'] = 'Device Traffic';
|
||||||
|
$config['os'][$os]['over'][1]['graph'] = 'device_processor';
|
||||||
|
$config['os'][$os]['over'][1]['text'] = 'CPU Usage';
|
||||||
|
$config['os'][$os]['over'][2]['graph'] = 'device_mempool';
|
||||||
|
$config['os'][$os]['over'][2]['text'] = 'Memory Usage';
|
||||||
$config['os'][$os]['icon'] = 'pbn';
|
$config['os'][$os]['icon'] = 'pbn';
|
||||||
|
|
||||||
// Enterasys
|
// Enterasys
|
||||||
|
19
includes/discovery/mempools/pbn.inc.php
Normal file
19
includes/discovery/mempools/pbn.inc.php
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
if ($device['os'] == 'pbn') {
|
||||||
|
|
||||||
|
echo 'PBN-MEMORY-POOL: ';
|
||||||
|
|
||||||
|
// find out wich build number we have
|
||||||
|
preg_match('/^.* Build (?<build>\d+)/', $device['version'], $version);
|
||||||
|
d_echo($version);
|
||||||
|
|
||||||
|
// specified MIB supported since build 16607
|
||||||
|
if ($version[build] >= 16607) {
|
||||||
|
|
||||||
|
$usage = snmp_get($device, 'NMS-MEMORY-POOL-MIB::nmsMemoryPoolUtilization.0', '-OUvQ');
|
||||||
|
|
||||||
|
if (is_numeric($usage)) {
|
||||||
|
discover_mempool($valid_mempool, $device, 0, 'pbn-mem', 'Main Memory', '100', null, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
20
includes/discovery/processors/pbn.inc.php
Normal file
20
includes/discovery/processors/pbn.inc.php
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
if ($device['os'] == 'pbn') {
|
||||||
|
|
||||||
|
// find out wich build number we have
|
||||||
|
preg_match('/^.* Build (?<build>\d+)/', $device['version'], $version);
|
||||||
|
d_echo($version);
|
||||||
|
|
||||||
|
// specified MIB supported since build 16607
|
||||||
|
if ($version[build] >= 16607) {
|
||||||
|
|
||||||
|
echo 'PBN : ';
|
||||||
|
|
||||||
|
$descr = 'Processor';
|
||||||
|
$usage = snmp_get($device, 'NMS-PROCESS-MIB::nmspmCPUTotal5min.1', '-OUvQ');
|
||||||
|
|
||||||
|
if (is_numeric($usage)) {
|
||||||
|
discover_processor($valid['processor'], $device, 'NMS-PROCESS-MIB::nmspmCPUTotal5min', '0', 'pbn-cpu', $descr, '100', $usage, null, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
25
includes/polling/mempools/pbn-mem.inc.php
Normal file
25
includes/polling/mempools/pbn-mem.inc.php
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
echo 'PBN MemPool'.'\n';
|
||||||
|
|
||||||
|
if ($device['os'] == 'pbn') {
|
||||||
|
|
||||||
|
// find out wich build number we have
|
||||||
|
preg_match('/^.* Build (?<build>\d+)/', $device['version'], $version);
|
||||||
|
d_echo($version);
|
||||||
|
|
||||||
|
// specified MIB supported since build 16607
|
||||||
|
if ($version[build] >= 16607) {
|
||||||
|
$perc = snmp_get($device, "NMS-MEMORY-POOL-MIB::nmsMemoryPoolUtilization.0", '-OUvQ');
|
||||||
|
$memory_available = snmp_get($device, "NMS-MEMORY-POOL-MIB::nmsMemoryPoolTotalMemorySize.0", '-OUvQ');
|
||||||
|
$mempool['total'] = $memory_available;
|
||||||
|
|
||||||
|
if (is_numeric($perc)) {
|
||||||
|
$mempool['used'] = ($memory_available / 100 * $perc);
|
||||||
|
$mempool['free'] = ($memory_available - $mempool['used']);
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "PERC " .$perc."%\n";
|
||||||
|
echo "Avail " .$mempool['total']."\n";
|
||||||
|
}
|
||||||
|
}
|
20
includes/polling/processors/pbn-cpu.inc.php
Normal file
20
includes/polling/processors/pbn-cpu.inc.php
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
if ($device['os'] == 'pbn') {
|
||||||
|
|
||||||
|
echo 'PBN CPU Usage';
|
||||||
|
|
||||||
|
// find out wich build number we have
|
||||||
|
preg_match('/^.* Build (?<build>\d+)/', $device['version'], $version);
|
||||||
|
d_echo($version);
|
||||||
|
|
||||||
|
// specified MIB supported since build 16607
|
||||||
|
if ($version[build] >= 16607) {
|
||||||
|
|
||||||
|
$usage = snmp_get($device, 'NMS-PROCESS-MIB::nmspmCPUTotal5min.1', '-OUvQ');
|
||||||
|
|
||||||
|
if (is_numeric($usage)) {
|
||||||
|
$proc = ($usage * 100);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
189
mibs/NMS-MEMORY-POOL-MIB.MIB
Normal file
189
mibs/NMS-MEMORY-POOL-MIB.MIB
Normal file
@@ -0,0 +1,189 @@
|
|||||||
|
-- *****************************************************************
|
||||||
|
-- NMS-MEMORY-POOL-MIB
|
||||||
|
--
|
||||||
|
-- October 2003
|
||||||
|
--
|
||||||
|
-- Copyright (c) 2003 by NMS, Inc.
|
||||||
|
-- All rights reserved.
|
||||||
|
-- *****************************************************************
|
||||||
|
|
||||||
|
NMS-MEMORY-POOL-MIB DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
MODULE-IDENTITY,
|
||||||
|
OBJECT-TYPE,
|
||||||
|
Integer32,
|
||||||
|
Gauge32
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
TEXTUAL-CONVENTION,
|
||||||
|
DisplayString,
|
||||||
|
TruthValue
|
||||||
|
FROM SNMPv2-TC
|
||||||
|
MODULE-COMPLIANCE,
|
||||||
|
OBJECT-GROUP
|
||||||
|
FROM SNMPv2-CONF
|
||||||
|
nmsMgmt
|
||||||
|
FROM NMS-SMI
|
||||||
|
Percent
|
||||||
|
FROM NMS-QOS-PIB-MIB;
|
||||||
|
|
||||||
|
nmsMemoryPoolMIB MODULE-IDENTITY
|
||||||
|
LAST-UPDATED "200310160000Z"
|
||||||
|
ORGANIZATION ""
|
||||||
|
CONTACT-INFO
|
||||||
|
""
|
||||||
|
DESCRIPTION
|
||||||
|
"MIB module for monitoring memory pools"
|
||||||
|
REVISION "200310160000Z"
|
||||||
|
DESCRIPTION
|
||||||
|
"Initial version of this MIB."
|
||||||
|
::= { nmsMgmt 48 }
|
||||||
|
|
||||||
|
nmsMemoryPoolUtilization OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the memory pool utilization"
|
||||||
|
::= { nmsMemoryPoolMIB 1 }
|
||||||
|
|
||||||
|
nmsMemoryPoolTotalMemorySize OBJECT-TYPE
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the total memory size"
|
||||||
|
::= { nmsMemoryPoolMIB 2 }
|
||||||
|
|
||||||
|
nmsMemoryPoolImageRatio OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the ratio of image size to total memory size"
|
||||||
|
::= { nmsMemoryPoolMIB 3 }
|
||||||
|
|
||||||
|
nmsMemoryPoolRegionRatio OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the ratio of total region size to total memory size"
|
||||||
|
::= { nmsMemoryPoolMIB 4 }
|
||||||
|
|
||||||
|
nmsMemoryPoolHeapRatio OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the ratio of heap size to total memory size"
|
||||||
|
::= { nmsMemoryPoolMIB 5 }
|
||||||
|
|
||||||
|
nmsMemoryPoolHeapUtilization OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the heap utilization"
|
||||||
|
::= { nmsMemoryPoolMIB 6 }
|
||||||
|
|
||||||
|
nmsMemoryPoolMessageBufferRatio OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the ratio of message buffer size to total memory size"
|
||||||
|
::= { nmsMemoryPoolMIB 7 }
|
||||||
|
|
||||||
|
nmsMemoryPoolMessageBufferUtilization OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the message buffer of utilization"
|
||||||
|
::= { nmsMemoryPoolMIB 8 }
|
||||||
|
|
||||||
|
nmsMemoryPoolTotalFlashSize OBJECT-TYPE
|
||||||
|
SYNTAX Percent
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This is the total size of flash memory"
|
||||||
|
::= { nmsMemoryPoolMIB 9 }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- notifications
|
||||||
|
|
||||||
|
nmsMemoryPoolNotifications
|
||||||
|
OBJECT IDENTIFIER ::= { nmsMemoryPoolMIB 20 }
|
||||||
|
|
||||||
|
-- (no notifications are currently defined)
|
||||||
|
|
||||||
|
|
||||||
|
-- conformance information
|
||||||
|
|
||||||
|
nmsMemoryPoolConformance
|
||||||
|
OBJECT IDENTIFIER ::= { nmsMemoryPoolMIB 21 }
|
||||||
|
nmsMemoryPoolCompliances
|
||||||
|
OBJECT IDENTIFIER ::= { nmsMemoryPoolConformance 1 }
|
||||||
|
nmsMemoryPoolGroups
|
||||||
|
OBJECT IDENTIFIER ::= { nmsMemoryPoolConformance 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- compliance statements
|
||||||
|
|
||||||
|
nmsMemoryPoolCompliance MODULE-COMPLIANCE
|
||||||
|
STATUS deprecated -- superceded by nmsMemoryPoolComplianceRev1
|
||||||
|
DESCRIPTION
|
||||||
|
"The compliance statement for entities which implement
|
||||||
|
the NMS Memory Pool MIB"
|
||||||
|
MODULE -- this module
|
||||||
|
MANDATORY-GROUPS { nmsMemoryPoolGroup }
|
||||||
|
::= { nmsMemoryPoolCompliances 1 }
|
||||||
|
|
||||||
|
nmsMemoryPoolComplianceRev1 MODULE-COMPLIANCE
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The compliance statement for entities which implement
|
||||||
|
the NMS Memory Pool MIB"
|
||||||
|
MODULE -- this module
|
||||||
|
MANDATORY-GROUPS { nmsMemoryPoolGroup }
|
||||||
|
|
||||||
|
GROUP nmsMemoryPoolUtilizationGroup
|
||||||
|
DESCRIPTION
|
||||||
|
"Per memory pool utilization statistics is mandatory for
|
||||||
|
the managed system that supports memory pool utilization."
|
||||||
|
::= { nmsMemoryPoolCompliances 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- units of conformance
|
||||||
|
|
||||||
|
nmsMemoryPoolGroup OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmsMemoryPoolName,
|
||||||
|
nmsMemoryPoolAlternate,
|
||||||
|
nmsMemoryPoolValid,
|
||||||
|
nmsMemoryPoolUsed,
|
||||||
|
nmsMemoryPoolFree,
|
||||||
|
nmsMemoryPoolLargestFree
|
||||||
|
}
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing memory pool monitoring."
|
||||||
|
::= { nmsMemoryPoolGroups 1 }
|
||||||
|
|
||||||
|
nmsMemoryPoolUtilizationGroup OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmsMemoryPoolUtilization1Min,
|
||||||
|
nmsMemoryPoolUtilization5Min,
|
||||||
|
nmsMemoryPoolUtilization10Min
|
||||||
|
}
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"An optional group providing a collection of memory pool
|
||||||
|
utilization objects."
|
||||||
|
::= { nmsMemoryPoolGroups 2 }
|
||||||
|
|
||||||
|
|
||||||
|
END
|
414
mibs/NMS-PROCESS-MIB.MIB
Normal file
414
mibs/NMS-PROCESS-MIB.MIB
Normal file
@@ -0,0 +1,414 @@
|
|||||||
|
-- *****************************************************************
|
||||||
|
-- NMS-PROCESS-MIB.my: MIB for CPU and process statistics
|
||||||
|
--
|
||||||
|
-- October 2003
|
||||||
|
--
|
||||||
|
-- Copyright (c) 2003 by NMS, Inc.
|
||||||
|
-- All rights reserved.
|
||||||
|
-- *****************************************************************
|
||||||
|
--
|
||||||
|
|
||||||
|
NMS-PROCESS-MIB DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
MODULE-IDENTITY,
|
||||||
|
OBJECT-TYPE,
|
||||||
|
Counter32,
|
||||||
|
Gauge32
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
TimeStamp,
|
||||||
|
DisplayString
|
||||||
|
FROM SNMPv2-TC
|
||||||
|
MODULE-COMPLIANCE,
|
||||||
|
OBJECT-GROUP
|
||||||
|
FROM SNMPv2-CONF
|
||||||
|
nmsMgmt
|
||||||
|
FROM NMS-SMI
|
||||||
|
-- Unsigned32, EntPhysicalIndexOrZero
|
||||||
|
-- FROM NMS-TC;
|
||||||
|
Unsigned32
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
EntPhysicalIndexOrZero
|
||||||
|
FROM NMS-TC;
|
||||||
|
|
||||||
|
|
||||||
|
nmsProcessMIB MODULE-IDENTITY
|
||||||
|
LAST-UPDATED "200311060000Z"
|
||||||
|
ORGANIZATION ""
|
||||||
|
CONTACT-INFO
|
||||||
|
""
|
||||||
|
DESCRIPTION
|
||||||
|
"The MIB module to describe active system processes."
|
||||||
|
REVISION "200310160000Z"
|
||||||
|
DESCRIPTION
|
||||||
|
"Initial version of this MIB."
|
||||||
|
::= { nmsMgmt 109 }
|
||||||
|
|
||||||
|
-- This MIB displays memory and CPU utilization on nms devices. CPU
|
||||||
|
-- utilization will give a general idea of how busy the processor is.
|
||||||
|
-- The numbers are a ratio of the current idle time over the longest
|
||||||
|
-- idle time. Please note that this information should be used as an
|
||||||
|
-- estimate only.
|
||||||
|
|
||||||
|
nmsProcessMIBObjects OBJECT IDENTIFIER ::= { nmsProcessMIB 1 }
|
||||||
|
nmspmCPU OBJECT IDENTIFIER ::= { nmsProcessMIBObjects 1 }
|
||||||
|
nmspmProcess OBJECT IDENTIFIER ::= { nmsProcessMIBObjects 2 }
|
||||||
|
|
||||||
|
|
||||||
|
--NMS CPU Total Table
|
||||||
|
|
||||||
|
nmspmCPUTotalTable OBJECT-TYPE
|
||||||
|
SYNTAX SEQUENCE OF NMSpmCPUTotalEntry
|
||||||
|
MAX-ACCESS not-accessible
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A table of overall CPU statistics. "
|
||||||
|
::= { nmspmCPU 1 }
|
||||||
|
|
||||||
|
nmspmCPUTotalEntry OBJECT-TYPE
|
||||||
|
SYNTAX NMSpmCPUTotalEntry
|
||||||
|
MAX-ACCESS not-accessible
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Overall information about the CPU load. Entries in this
|
||||||
|
table come and go as CPUs are added and removed from the
|
||||||
|
system."
|
||||||
|
INDEX { nmspmCPUTotalIndex }
|
||||||
|
::= { nmspmCPUTotalTable 1 }
|
||||||
|
|
||||||
|
NMSpmCPUTotalEntry ::=
|
||||||
|
SEQUENCE {
|
||||||
|
nmspmCPUTotalIndex Unsigned32,
|
||||||
|
nmspmCPUTotalPhysicalIndex EntPhysicalIndexOrZero,
|
||||||
|
nmspmCPUTotal5sec Gauge32,
|
||||||
|
nmspmCPUTotal1min Gauge32,
|
||||||
|
nmspmCPUTotal5min Gauge32
|
||||||
|
}
|
||||||
|
|
||||||
|
nmspmCPUTotalIndex OBJECT-TYPE
|
||||||
|
SYNTAX Unsigned32 (1.. 4294967295)
|
||||||
|
MAX-ACCESS not-accessible
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"An index that uniquely represents a CPU (or group of CPUs)
|
||||||
|
whose CPU load information is reported by a row in this table.
|
||||||
|
This index is assigned arbitrarily by the engine
|
||||||
|
and is not saved over reboots."
|
||||||
|
::= { nmspmCPUTotalEntry 1 }
|
||||||
|
|
||||||
|
nmspmCPUTotalPhysicalIndex OBJECT-TYPE
|
||||||
|
SYNTAX EntPhysicalIndexOrZero
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The entPhysicalIndex of the physical entity for which
|
||||||
|
the CPU statistics in this entry are maintained.
|
||||||
|
The physical entity can be a CPU chip, a group of CPUs,
|
||||||
|
a CPU card etc. The exact type of this entity is described by
|
||||||
|
its entPhysicalVendorType value. If the CPU statistics
|
||||||
|
in this entry correspond to more than one physical entity
|
||||||
|
(or to no physical entity), or if the entPhysicalTable is
|
||||||
|
not supported on the SNMP agent, the value of this object
|
||||||
|
must be zero."
|
||||||
|
::= { nmspmCPUTotalEntry 2 }
|
||||||
|
|
||||||
|
nmspmCPUTotal5sec OBJECT-TYPE
|
||||||
|
SYNTAX Gauge32 (1..100)
|
||||||
|
UNITS "percent"
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The overall CPU busy percentage in the last 5 second
|
||||||
|
period. This object is deprecated by nmspmCPUTotal5secRev
|
||||||
|
which has the changed range of value (0..100)."
|
||||||
|
::= { nmspmCPUTotalEntry 3 }
|
||||||
|
|
||||||
|
nmspmCPUTotal1min OBJECT-TYPE
|
||||||
|
SYNTAX Gauge32 (1..100)
|
||||||
|
UNITS "percent"
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The overall CPU busy percentage in the last 1 minute
|
||||||
|
period. This object is deprecated by nmspmCPUTotal1minRev
|
||||||
|
which has the changed range of value (0..100)."
|
||||||
|
::= { nmspmCPUTotalEntry 4 }
|
||||||
|
|
||||||
|
nmspmCPUTotal5min OBJECT-TYPE
|
||||||
|
SYNTAX Gauge32 (1..100)
|
||||||
|
UNITS "percent"
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The overall CPU busy percentage in the last 5 minute
|
||||||
|
period. This object is deprecated by nmspmCPUTotal5minRev
|
||||||
|
which has the changed range of value (0..100)."
|
||||||
|
::= { nmspmCPUTotalEntry 5 }
|
||||||
|
|
||||||
|
nmspmCPUMaxUtilization OBJECT-TYPE
|
||||||
|
SYNTAX Gauge32 (1..100)
|
||||||
|
UNITS "percent"
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The max value of nmspmCPUTotal5sec."
|
||||||
|
::= { nmspmCPU 2 }
|
||||||
|
|
||||||
|
nmspmCPUClearMaxUtilization OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER{clear(1)}
|
||||||
|
UNITS "percent"
|
||||||
|
MAX-ACCESS read-write
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"To clear nmspmCPUMaxUtilization."
|
||||||
|
::= { nmspmCPU 3 }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- NMS Processes Common Table
|
||||||
|
|
||||||
|
nmspmProcessTable OBJECT-TYPE
|
||||||
|
SYNTAX SEQUENCE OF NMSpmProcessEntry
|
||||||
|
MAX-ACCESS not-accessible
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A table of generic information on all active
|
||||||
|
processes on this device."
|
||||||
|
::= { nmspmProcess 1 }
|
||||||
|
|
||||||
|
nmspmProcessEntry OBJECT-TYPE
|
||||||
|
SYNTAX NMSpmProcessEntry
|
||||||
|
MAX-ACCESS not-accessible
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Generic information about an active process on this
|
||||||
|
device. Entries in this table come and go as processes are
|
||||||
|
created and destroyed by the device."
|
||||||
|
INDEX { nmspmCPUTotalIndex, nmspmProcessPID }
|
||||||
|
::= { nmspmProcessTable 1 }
|
||||||
|
|
||||||
|
NMSpmProcessEntry ::=
|
||||||
|
SEQUENCE {
|
||||||
|
nmspmProcessPID
|
||||||
|
Unsigned32,
|
||||||
|
nmspmProcessName
|
||||||
|
DisplayString,
|
||||||
|
nmspmProcessPriority
|
||||||
|
INTEGER,
|
||||||
|
nmspmProcessTimeCreated
|
||||||
|
TimeStamp
|
||||||
|
}
|
||||||
|
|
||||||
|
nmspmProcessPID OBJECT-TYPE
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This object contains the process ID. nmspmProcessTimeCreated
|
||||||
|
should be checked against the last time it was polled,
|
||||||
|
and if it has changed the PID has been reused and the
|
||||||
|
entire entry should be polled again. The process IDs
|
||||||
|
are discrete."
|
||||||
|
::= { nmspmProcessEntry 1 }
|
||||||
|
|
||||||
|
nmspmProcessName OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString(SIZE(1..32))
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The name associated with this process. If the name is
|
||||||
|
longer than 32 characters, it will be truncated to the first
|
||||||
|
31 characters, and a `*' will be appended as the last
|
||||||
|
character to imply this is a truncated process name."
|
||||||
|
::= { nmspmProcessEntry 2 }
|
||||||
|
|
||||||
|
nmspmProcessPriority OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
critical(0),
|
||||||
|
veryhigh(55),
|
||||||
|
high(60),
|
||||||
|
normal(128),
|
||||||
|
low(180),
|
||||||
|
verylow(255)
|
||||||
|
}
|
||||||
|
MAX-ACCESS read-write
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The priority level at which the process is
|
||||||
|
running. This object is deprecated by
|
||||||
|
nmspmProcExtPriorityRev."
|
||||||
|
::= { nmspmProcessEntry 3 }
|
||||||
|
|
||||||
|
nmspmProcessTimeCreated OBJECT-TYPE
|
||||||
|
SYNTAX TimeStamp
|
||||||
|
MAX-ACCESS read-only
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The time when the process was created. The process ID
|
||||||
|
and the time when the process was created, uniquely
|
||||||
|
identifies a process."
|
||||||
|
::= { nmspmProcessEntry 4 }
|
||||||
|
|
||||||
|
-- notifications
|
||||||
|
|
||||||
|
nmsProcessMIBNotifPrefix OBJECT IDENTIFIER ::= { nmsProcessMIB 2 }
|
||||||
|
nmsProcessMIBNotifs OBJECT IDENTIFIER ::=
|
||||||
|
{ nmsProcessMIBNotifPrefix 0 }
|
||||||
|
|
||||||
|
-- (no notifications are currently defined)
|
||||||
|
|
||||||
|
|
||||||
|
-- conformance information
|
||||||
|
|
||||||
|
nmsProcessMIBConformance OBJECT IDENTIFIER ::= { nmsProcessMIB 3 }
|
||||||
|
nmspmCompliances OBJECT IDENTIFIER ::= { nmsProcessMIBConformance 1 }
|
||||||
|
nmspmGroups OBJECT IDENTIFIER ::= { nmsProcessMIBConformance 2 }
|
||||||
|
|
||||||
|
nmsProcessMIBCompliance MODULE-COMPLIANCE
|
||||||
|
STATUS deprecated
|
||||||
|
DESCRIPTION
|
||||||
|
"The compliance statement for entities which implement
|
||||||
|
the NMS Process MIB. This is deprecated and new
|
||||||
|
compliance nmsProcessMIBComplianceRev is added."
|
||||||
|
MODULE -- this module
|
||||||
|
MANDATORY-GROUPS { nmspmCPUTotalGroup, nmspmProcessGroup }
|
||||||
|
|
||||||
|
|
||||||
|
GROUP nmspmProcessExtGroup
|
||||||
|
DESCRIPTION
|
||||||
|
"The nmspmProcessExtGroup is optional for all entities."
|
||||||
|
|
||||||
|
OBJECT nmspmProcExtPriority
|
||||||
|
MIN-ACCESS read-only
|
||||||
|
DESCRIPTION "Write access is not required."
|
||||||
|
|
||||||
|
::= { nmspmCompliances 1 }
|
||||||
|
|
||||||
|
nmsProcessMIBComplianceRev MODULE-COMPLIANCE
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The compliance statement for entities which implement
|
||||||
|
the NMS Process MIB. This compliance module
|
||||||
|
deprecates nmsProcessMIBCompliance."
|
||||||
|
MODULE -- this module
|
||||||
|
MANDATORY-GROUPS { nmspmCPUTotalGroupRev, nmspmProcessGroupRev}
|
||||||
|
|
||||||
|
GROUP nmspmProcessExtGroupRev
|
||||||
|
DESCRIPTION
|
||||||
|
"The nmspmProcessExtGroupRev is optional for all
|
||||||
|
entities. This object is defined after deprecating
|
||||||
|
nmspmProcessExtGroup."
|
||||||
|
|
||||||
|
::= { nmspmCompliances 2 }
|
||||||
|
|
||||||
|
-- units of conformance
|
||||||
|
|
||||||
|
nmspmCPUTotalGroup OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmCPUTotalPhysicalIndex,
|
||||||
|
nmspmCPUTotal5sec,
|
||||||
|
nmspmCPUTotal1min,
|
||||||
|
nmspmCPUTotal5min
|
||||||
|
}
|
||||||
|
STATUS deprecated
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing CPU load monitoring
|
||||||
|
information. This group is mandatory for all nms devices.
|
||||||
|
This group is deprecated since the objects nmspmCPUTotal5sec,
|
||||||
|
nmspmCPUTotal1min and nmspmCPUTotal5min are
|
||||||
|
deprecated. A new object nmspmCPUTotalGroupRev is
|
||||||
|
added in place of it."
|
||||||
|
::= { nmspmGroups 1 }
|
||||||
|
|
||||||
|
nmspmProcessGroup OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmProcessPID,
|
||||||
|
nmspmProcessName,
|
||||||
|
nmspmProcessuSecs,
|
||||||
|
nmspmProcessTimeCreated
|
||||||
|
}
|
||||||
|
STATUS deprecated
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing common process
|
||||||
|
monitoring information. This group is mandatory for
|
||||||
|
all nms devices. This object is deprecated
|
||||||
|
by nmspmProcessGroupRev."
|
||||||
|
::= { nmspmGroups 2 }
|
||||||
|
|
||||||
|
nmspmProcessExtGroup OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmProcExtMemAllocated,
|
||||||
|
nmspmProcExtMemFreed,
|
||||||
|
nmspmProcExtInvoked,
|
||||||
|
nmspmProcExtRuntime,
|
||||||
|
nmspmProcExtUtil5Sec,
|
||||||
|
nmspmProcExtUtil1Min,
|
||||||
|
nmspmProcExtUtil5Min,
|
||||||
|
nmspmProcExtPriority
|
||||||
|
}
|
||||||
|
STATUS deprecated
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing additional and
|
||||||
|
more detailed process monitoring information. This
|
||||||
|
group is mandatory for all nms devices that have
|
||||||
|
the internal capability to keep this information.
|
||||||
|
This group is deprecated and new group
|
||||||
|
nmspmProcessExtGroupRev is added."
|
||||||
|
::= { nmspmGroups 3 }
|
||||||
|
|
||||||
|
nmspmCPUTotalGroupRev OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmCPUTotalPhysicalIndex,
|
||||||
|
nmspmCPUTotal5secRev,
|
||||||
|
nmspmCPUTotal1minRev,
|
||||||
|
nmspmCPUTotal5minRev
|
||||||
|
}
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing CPU load monitoring
|
||||||
|
information. This group is mandatory for all nms
|
||||||
|
devices. This group deprecates nmspmCPUTotalGroup."
|
||||||
|
::= { nmspmGroups 4 }
|
||||||
|
|
||||||
|
nmspmProcessExtGroupRev OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmProcExtMemAllocatedRev,
|
||||||
|
nmspmProcExtMemFreedRev,
|
||||||
|
nmspmProcExtInvokedRev,
|
||||||
|
nmspmProcExtRuntimeRev,
|
||||||
|
nmspmProcExtUtil5SecRev,
|
||||||
|
nmspmProcExtUtil1MinRev,
|
||||||
|
nmspmProcExtUtil5MinRev,
|
||||||
|
nmspmProcExtPriorityRev
|
||||||
|
}
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing additional and
|
||||||
|
more detailed process monitoring information. This
|
||||||
|
group is mandatory for all nms devices that have
|
||||||
|
the internal capability to keep this information.
|
||||||
|
This group is formed after deprecating nmspmProcessExtGroup.
|
||||||
|
nmspmProcExtMemAllocatedRev, nmspmProcExtMemFreedRev,
|
||||||
|
nmspmProcExtInvokedRev, nmspmProcExtRuntimeRev,
|
||||||
|
nmspmProcExtUtil5SecRev, nmspmProcExtUtil1MinRev and
|
||||||
|
nmspmProcExtUtil5MinRev are the new objects added."
|
||||||
|
::= { nmspmGroups 5 }
|
||||||
|
|
||||||
|
nmspmProcessGroupRev OBJECT-GROUP
|
||||||
|
OBJECTS {
|
||||||
|
nmspmProcessPID,
|
||||||
|
nmspmProcessName,
|
||||||
|
nmspmProcessAverageUSecs,
|
||||||
|
nmspmProcessTimeCreated
|
||||||
|
}
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A collection of objects providing common process
|
||||||
|
monitoring information. This group is mandatory for
|
||||||
|
all nms devices. This object deprecates
|
||||||
|
nmspmProcessGroup."
|
||||||
|
::= { nmspmGroups 6 }
|
||||||
|
|
||||||
|
END
|
||||||
|
|
||||||
|
|
1998
mibs/NMS-QOS-PIB-MIB.MIB
Normal file
1998
mibs/NMS-QOS-PIB-MIB.MIB
Normal file
File diff suppressed because it is too large
Load Diff
703
mibs/NMS-TC.MIB
Normal file
703
mibs/NMS-TC.MIB
Normal file
@@ -0,0 +1,703 @@
|
|||||||
|
-- *****************************************************************
|
||||||
|
-- NMS-TC.my: NMS MIB Textual Conventions
|
||||||
|
--
|
||||||
|
-- October 2003
|
||||||
|
--
|
||||||
|
-- Copyright (c) 2003 by NMS, Inc.
|
||||||
|
-- All rights reserved.
|
||||||
|
--
|
||||||
|
-- *****************************************************************
|
||||||
|
--
|
||||||
|
|
||||||
|
NMS-TC DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
MODULE-IDENTITY,
|
||||||
|
Gauge32,
|
||||||
|
Integer32,
|
||||||
|
Counter64
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
TEXTUAL-CONVENTION
|
||||||
|
FROM SNMPv2-TC
|
||||||
|
nmsModules
|
||||||
|
FROM NMS-SMI;
|
||||||
|
|
||||||
|
|
||||||
|
nmsTextualConventions MODULE-IDENTITY
|
||||||
|
LAST-UPDATED "200310160000Z"
|
||||||
|
ORGANIZATION ""
|
||||||
|
CONTACT-INFO
|
||||||
|
""
|
||||||
|
DESCRIPTION
|
||||||
|
"This module defines textual conventions used throughout
|
||||||
|
nms enterprise mibs."
|
||||||
|
REVISION "200310160000Z"
|
||||||
|
DESCRIPTION
|
||||||
|
"Initial version of this MIB."
|
||||||
|
::= { nmsModules 1 }
|
||||||
|
|
||||||
|
|
||||||
|
NMSNetworkProtocol ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents the different types of network layer protocols."
|
||||||
|
-- internal note: enumerations must match those in address.h
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
ip (1),
|
||||||
|
decnet (2),
|
||||||
|
pup (3),
|
||||||
|
chaos (4),
|
||||||
|
xns (5),
|
||||||
|
x121 (6),
|
||||||
|
appletalk (7),
|
||||||
|
clns (8),
|
||||||
|
lat (9),
|
||||||
|
vines (10),
|
||||||
|
cons (11),
|
||||||
|
apollo (12),
|
||||||
|
stun (13),
|
||||||
|
novell (14),
|
||||||
|
qllc (15),
|
||||||
|
snapshot (16),
|
||||||
|
atmIlmi (17),
|
||||||
|
bstun (18),
|
||||||
|
x25pvc (19),
|
||||||
|
ipv6 (20), -- IP version 6
|
||||||
|
cdm (21), -- Cable Data Modem
|
||||||
|
nbf (22), -- NetBIOS
|
||||||
|
bpxIgx (23), -- BGP/IGX
|
||||||
|
clnsPfx(24), -- ISO 8473 CLNS NSAP
|
||||||
|
http(25),
|
||||||
|
unknown (65535)
|
||||||
|
}
|
||||||
|
|
||||||
|
NMSNetworkAddress ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "1x:"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents a network layer address. The length and format of
|
||||||
|
the address is protocol dependent as follows:
|
||||||
|
ip 4 octets
|
||||||
|
decnet 2 octets
|
||||||
|
pup obsolete
|
||||||
|
chaos 2 octets
|
||||||
|
xns 10 octets
|
||||||
|
first 4 octets are the net number
|
||||||
|
last 6 octets are the host number
|
||||||
|
x121
|
||||||
|
appletalk 3 octets
|
||||||
|
first 2 octets are the net number
|
||||||
|
last octet is the host number
|
||||||
|
clns
|
||||||
|
lat
|
||||||
|
vines 6 octets
|
||||||
|
first 4 octets are the net number
|
||||||
|
last 2 octets are the host number
|
||||||
|
cons
|
||||||
|
apollo 10 octets
|
||||||
|
first 4 octets are the net number
|
||||||
|
last 6 octets are the host number
|
||||||
|
stun 8 octets
|
||||||
|
novell 10 octets
|
||||||
|
first 4 octets are the net number
|
||||||
|
last 6 octets are the host number
|
||||||
|
qllc 6 octets
|
||||||
|
bstun 1 octet - bi-sync serial tunnel
|
||||||
|
snapshot 1 octet
|
||||||
|
atmIlmi 4 octets
|
||||||
|
x25 pvc 2 octets (12 bits)
|
||||||
|
ipv6 16 octets
|
||||||
|
cdm
|
||||||
|
nbf
|
||||||
|
bgpIgx
|
||||||
|
clnsPfx upto 20 octets
|
||||||
|
http upto 70 octets
|
||||||
|
first 4 octets are the IPv4 host
|
||||||
|
address
|
||||||
|
next 2 octets are the TCP port
|
||||||
|
number
|
||||||
|
remaining(1 upto 64) octets are
|
||||||
|
the URI
|
||||||
|
"
|
||||||
|
SYNTAX OCTET STRING
|
||||||
|
|
||||||
|
SMI Unsigned32
|
||||||
|
--Unsigned32 ::= TEXTUAL-CONVENTION
|
||||||
|
-- STATUS current
|
||||||
|
-- DESCRIPTION
|
||||||
|
-- "An unsigned 32-bit quantity indistinguishable from Gauge32."
|
||||||
|
-- SYNTAX Gauge32
|
||||||
|
|
||||||
|
Unsigned64 ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"An unsigned 64 bit integer. We use SYNTAX Counter64 for the
|
||||||
|
encoding rules."
|
||||||
|
SYNTAX Counter64
|
||||||
|
|
||||||
|
InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "d"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Either the value 0, or the ifIndex value of an
|
||||||
|
interface in the ifTable."
|
||||||
|
SYNTAX Integer32 (0..2147483647)
|
||||||
|
|
||||||
|
SAPType ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "d"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Service Access Point - is a term that denotes the means
|
||||||
|
by which a user entity in layer n+1 accesses a service
|
||||||
|
of a provider entity in layer n."
|
||||||
|
SYNTAX Integer32 (0..254)
|
||||||
|
|
||||||
|
CountryCode ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "2a"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents a case-insensitive 2-letter country code taken
|
||||||
|
from ISO-3166. Unrecognized countries are represented as
|
||||||
|
empty string."
|
||||||
|
SYNTAX OCTET STRING (SIZE (0 | 2))
|
||||||
|
|
||||||
|
CountryCodeITU ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "d"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This textual convention represents a country or area code for
|
||||||
|
non-standard facilities in telematic services."
|
||||||
|
REFERENCE
|
||||||
|
"ITU-T T.35 - Section 3.1 Country Code"
|
||||||
|
SYNTAX Unsigned32 (0..255)
|
||||||
|
|
||||||
|
EntPhysicalIndexOrZero ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This textual convention is an extension of entPhysicalIndex.
|
||||||
|
If non-zero, the object is an entPhysicalIndex. If zero, no
|
||||||
|
appropriate entPhysicalIndex exists. Any additional semantics
|
||||||
|
are object specific."
|
||||||
|
SYNTAX Integer32 (0..2147483647)
|
||||||
|
|
||||||
|
NMSRowOperStatus ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents the operational status of an table entry.
|
||||||
|
This textual convention allows explicitly representing
|
||||||
|
the states of rows dependent on rows in other tables.
|
||||||
|
|
||||||
|
active(1) -
|
||||||
|
Indicates this entry's RowStatus is active
|
||||||
|
and the RowStatus for each dependency is active.
|
||||||
|
|
||||||
|
activeDependencies(2) -
|
||||||
|
Indicates that the RowStatus for each dependency
|
||||||
|
is active, but the entry's RowStatus is not active.
|
||||||
|
|
||||||
|
inactiveDependency(3) -
|
||||||
|
Indicates that the RowStatus for at least one
|
||||||
|
dependency is not active.
|
||||||
|
|
||||||
|
missingDependency(4) -
|
||||||
|
Indicates that at least one dependency does
|
||||||
|
not exist in it's table.
|
||||||
|
"
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
active(1),
|
||||||
|
activeDependencies(2),
|
||||||
|
inactiveDependency(3),
|
||||||
|
missingDependency(4)
|
||||||
|
}
|
||||||
|
|
||||||
|
NMSPort ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"The TCP or UDP port number range."
|
||||||
|
REFERENCE
|
||||||
|
"Transmission Control Protocol. J. Postel. RFC793,
|
||||||
|
User Datagram Protocol. J. Postel. RFC768"
|
||||||
|
SYNTAX Integer32 ( 0..65535 )
|
||||||
|
|
||||||
|
NMSIpProtocol ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"IP protocol number range."
|
||||||
|
REFERENCE
|
||||||
|
"Internet Protocol. J. Postel. RFC791"
|
||||||
|
SYNTAX Integer32 ( 0..255 )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
NMSLocationClass ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"An enumerated value which provides an indication of
|
||||||
|
the general location type of a particular physical and/or
|
||||||
|
logical interface.
|
||||||
|
chassis - a system framework for mounting one or more
|
||||||
|
shelves/slots/cards.
|
||||||
|
shelf - a cabinet that holds one or more slots.
|
||||||
|
slot - card or subSlot holder.
|
||||||
|
subSlot - daughter-card holder.
|
||||||
|
port - a physical port (e.g., a DS1 or DS3 physical port).
|
||||||
|
subPort - a logical port on a physical port (e.g., a DS1
|
||||||
|
subPort on a DS3 physical port).
|
||||||
|
channel - a logical interface (e.g., a DS0 channel, signalling
|
||||||
|
channel, ATM port, other virtual interfaces).
|
||||||
|
subChannel - a sub-channel on a logical interface.
|
||||||
|
"
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
chassis(1),
|
||||||
|
shelf(2),
|
||||||
|
slot(3),
|
||||||
|
subSlot(4),
|
||||||
|
port(5),
|
||||||
|
subPort(6),
|
||||||
|
channel(7),
|
||||||
|
subChannel(8)
|
||||||
|
}
|
||||||
|
|
||||||
|
NMSLocationSpecifier ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Use this TC to define objects that indicate the
|
||||||
|
physical entity and/or logical interface location
|
||||||
|
of a managed entity on a managed device. In SNMP, a
|
||||||
|
standard mechanism for indicating the physical location
|
||||||
|
of entities is via the ENTITY-MIB. However, that approach
|
||||||
|
is not satisfactory in some cases because:
|
||||||
|
|
||||||
|
1. The entity requiring a location-based naming may be
|
||||||
|
associated with an entity which can not be represented
|
||||||
|
as a physical entity in the ENTITY-MIB,
|
||||||
|
2. NMS applications may desire a more direct
|
||||||
|
name/representation of a physical entity than is
|
||||||
|
available via the ENTITY-MIB, e.g., a physical entity
|
||||||
|
which is named via a hierarchy of levels in the ENTITY-MIB.
|
||||||
|
|
||||||
|
The value of an object defined using this TC is an ASCII
|
||||||
|
string consisting of zero or more elements separated by
|
||||||
|
commas. Each element is of the form <tag> = <value>.
|
||||||
|
|
||||||
|
An example of this syntax is 'slot=5,port=3'.
|
||||||
|
|
||||||
|
The syntax of the string is formally specified using
|
||||||
|
ABNF notation (with one exception, noted below), as
|
||||||
|
follows:
|
||||||
|
|
||||||
|
location-specifier = elem *(',' elem)
|
||||||
|
; subject to
|
||||||
|
; size restriction specified in the SYNTAX
|
||||||
|
; clause below
|
||||||
|
|
||||||
|
elem = loctype '=' number
|
||||||
|
|
||||||
|
number = %x00-FFFFFFFF / %d0-4294967295
|
||||||
|
|
||||||
|
loctype = 1*32VCHAR
|
||||||
|
|
||||||
|
It is recommended that loctype use one of the enumerated
|
||||||
|
labels defined for NMSLocationClass.
|
||||||
|
|
||||||
|
(NOTE: To conform to ABNF notation as defined in RFC2234,
|
||||||
|
substitute the single-quote symbol with a double-quote
|
||||||
|
symbol in the above rules.)
|
||||||
|
|
||||||
|
A zero length of NMSLocationSpecifier is object-specific
|
||||||
|
and must be defined as part of the description of any object
|
||||||
|
which uses this syntax.
|
||||||
|
"
|
||||||
|
REFERENCE
|
||||||
|
"RFC2234, Augmented BNF for syntax specifications: ABNF"
|
||||||
|
|
||||||
|
SYNTAX OCTET STRING (SIZE (0..255))
|
||||||
|
|
||||||
|
NMSInetAddressMask ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Denotes a generic Internet subnet address mask.
|
||||||
|
The Internet subnet address mask is represented as the
|
||||||
|
number of contiguous 1-bit from MSB (most significant bit)
|
||||||
|
of the Internet subnet address mask.
|
||||||
|
A NMSInetAddressMask value is always interpreted within
|
||||||
|
the context of an InetAddressType value. The
|
||||||
|
InetAddressType only object or InetAddressType with
|
||||||
|
InetAddress objects which define the context must be
|
||||||
|
registered immediately before the object which uses the
|
||||||
|
NMSInetAddressMask textual convention. In other words,
|
||||||
|
the object identifiers for the InetAddressType object and
|
||||||
|
the NMSInetAddressMask object MUST have the same length
|
||||||
|
and the last sub-identifier of the InetAddressType object
|
||||||
|
MUST be 1 less than the last sub-identifier of the
|
||||||
|
NMSInetAddressMask object and MUST be 2 less than the
|
||||||
|
last sub-identifier of the NMSInetAddressMask object if
|
||||||
|
an InetAddress object is defined between InetAddressType
|
||||||
|
and NMSInetAddressMask objects.
|
||||||
|
The maximum value of the NMSInetAddressMask TC is 32 for
|
||||||
|
the value 'ipv4(1)' in InetAddressType object and 128 for
|
||||||
|
the value 'ipv6(2)' in InetAddressType object.
|
||||||
|
The value zero is object-specific and must therefore be
|
||||||
|
defined as part of the description of any object which
|
||||||
|
uses this syntax. Examples of the usage of zero might
|
||||||
|
include situations where Internet subnet mask was unknown,
|
||||||
|
or when none subnet masks need to be referenced."
|
||||||
|
|
||||||
|
REFERENCE
|
||||||
|
"RFC2851, Textual Conventions for Internet Network Addresses."
|
||||||
|
|
||||||
|
SYNTAX Unsigned32 (0..128)
|
||||||
|
|
||||||
|
NMSAbsZeroBasedCounter32 ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This TC describes an object which counts events with the
|
||||||
|
following semantics: objects of this type will be set to
|
||||||
|
zero(0) on creation and will thereafter count appropriate
|
||||||
|
events, it locks at the maximum value of 4,294,967,295 if
|
||||||
|
the counter overflows.
|
||||||
|
This TC may be used only in situations where wrapping is
|
||||||
|
not possible or extremely unlikely situation."
|
||||||
|
SYNTAX Gauge32
|
||||||
|
|
||||||
|
NMSSnapShotAbsCounter32 ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This TC describes an object which stores a snap-shot value
|
||||||
|
with the following semantics: objects of this type will
|
||||||
|
take a snap-shot value from their associated
|
||||||
|
NMSAbsZeroBasedCounter32 type objects on creation."
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
|
||||||
|
NMSAlarmSeverity ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents the perceived alarm severity associated
|
||||||
|
with a service or safety affecting condition and/or
|
||||||
|
event. These are based on ITU severities, except
|
||||||
|
that info(7) is added.
|
||||||
|
|
||||||
|
cleared(1) -
|
||||||
|
Indicates a previous alarm condition has been
|
||||||
|
cleared. It is not required (unless specifically
|
||||||
|
stated elsewhere on a case by case basis) that an
|
||||||
|
alarm condition that has been cleared will produce
|
||||||
|
a notification or other event containing an
|
||||||
|
alarm severity with this value.
|
||||||
|
|
||||||
|
indeterminate(2) -
|
||||||
|
Indicates that the severity level cannot be
|
||||||
|
determined.
|
||||||
|
|
||||||
|
critical(3) -
|
||||||
|
Indicates that a service or safety affecting
|
||||||
|
condition has occurred and an immediate
|
||||||
|
corrective action is required.
|
||||||
|
|
||||||
|
major(4) -
|
||||||
|
Indicates that a service affecting condition has
|
||||||
|
occurred and an urgent corrective action is
|
||||||
|
required.
|
||||||
|
|
||||||
|
minor(5) -
|
||||||
|
Indicates the existence of a non-service affecting
|
||||||
|
condition and that corrective action should be
|
||||||
|
taken in order to prevent a more serious (for
|
||||||
|
example, service or safety affecting) condition.
|
||||||
|
|
||||||
|
warning(6) -
|
||||||
|
Indicates the detection of a potential or impending
|
||||||
|
service or safety affecting condition, before any
|
||||||
|
significant effects have been felt.
|
||||||
|
|
||||||
|
info(7) -
|
||||||
|
Indicates an alarm condition that does not
|
||||||
|
meet any other severity definition. This can
|
||||||
|
include important, but non-urgent, notices or
|
||||||
|
informational events.
|
||||||
|
"
|
||||||
|
REFERENCE
|
||||||
|
"ITU-X.733"
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
cleared(1),
|
||||||
|
indeterminate(2),
|
||||||
|
critical(3),
|
||||||
|
major(4),
|
||||||
|
minor(5),
|
||||||
|
warning(6),
|
||||||
|
info(7)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PerfHighIntervalCount ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A 64 bit counter associated with a
|
||||||
|
performance measurement in a previous
|
||||||
|
15 minute measurement interval. In the
|
||||||
|
case where the agent has no valid data
|
||||||
|
available for a particular interval the
|
||||||
|
corresponding object instance is not
|
||||||
|
available and upon a retrieval request
|
||||||
|
a corresponding error message shall be
|
||||||
|
returned to indicate that this instance
|
||||||
|
does not exist (for example, a noSuchName
|
||||||
|
error for SNMPv1 and a noSuchInstance for
|
||||||
|
SNMPv2 GET operation).
|
||||||
|
In a system supporting
|
||||||
|
a history of n intervals with
|
||||||
|
IntervalCount(1) and IntervalCount(n) the
|
||||||
|
most and least recent intervals
|
||||||
|
respectively, the following applies at
|
||||||
|
the end of a 15 minute interval:
|
||||||
|
- discard the value of IntervalCount(n)
|
||||||
|
- the value of IntervalCount(i) becomes that
|
||||||
|
of IntervalCount(i-1) for n >= i > 1
|
||||||
|
- the value of IntervalCount(1) becomes that
|
||||||
|
of CurrentCount
|
||||||
|
- the TotalCount, if supported, is adjusted.
|
||||||
|
|
||||||
|
This definition is based on CounterBasedGauge64 TEXTUAL
|
||||||
|
CONVENTION defined in RFC2856. The PerfHighIntervalCount
|
||||||
|
type represents a non-negative
|
||||||
|
integer, which may increase or decrease, but shall never
|
||||||
|
exceed a maximum value, nor fall below a minimum value. The
|
||||||
|
maximum value can not be greater than 2^64-1
|
||||||
|
(18446744073709551615 decimal), and the minimum value can
|
||||||
|
not be smaller than 0. The value of a PerfHighIntervalCount,
|
||||||
|
has its maximum value whenever the information being modeled
|
||||||
|
is greater than or equal to its maximum value, and has its
|
||||||
|
minimum value whenever the information being modeled is
|
||||||
|
smaller than or equal to its minimum value. If the
|
||||||
|
information being modeled subsequently decreases below
|
||||||
|
(increases above) the maximum (minimum) value, the
|
||||||
|
PerfHighIntervalCount also decreases (increases).
|
||||||
|
|
||||||
|
Note that this TC is not strictly supported in SMIv2,
|
||||||
|
because the 'always increasing' and 'counter wrap' semantics
|
||||||
|
associated with the Counter64 base type are not preserved.
|
||||||
|
It is possible that management applications which rely
|
||||||
|
solely upon the (Counter64) ASN.1 tag to determine object
|
||||||
|
semantics will mistakenly operate upon objects of this type
|
||||||
|
as they would for Counter64 objects.
|
||||||
|
|
||||||
|
This textual convention represents a limited and short-term
|
||||||
|
solution, and may be deprecated as a long term solution is
|
||||||
|
defined and deployed to replace it."
|
||||||
|
REFERENCE
|
||||||
|
"RFC 2856(HCNUM-TC MIB).
|
||||||
|
RFC 2493(PerfHist-TC-MIB)."
|
||||||
|
SYNTAX Counter64
|
||||||
|
|
||||||
|
ConfigIterator ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This object type is a control object type which applies to
|
||||||
|
writable objects in the same SNMP PDU related to the
|
||||||
|
same table containing those objects. It controls an
|
||||||
|
operation which repeatedly applies the specified
|
||||||
|
configuration data to more than one rows in a table.
|
||||||
|
The operation starts from the row specified by the index
|
||||||
|
of the instance and repeats for the number of rows as
|
||||||
|
the value of the object.
|
||||||
|
|
||||||
|
ConfigIterator object needs to be accompanied by one set of
|
||||||
|
writable objects which are of the same instance to apply to.
|
||||||
|
|
||||||
|
For example, a SNMP PDU contains
|
||||||
|
{ objectA.10 = 1,
|
||||||
|
objectB.10 = 'E1',
|
||||||
|
objectC.10 = 44,
|
||||||
|
objectRepetition.10 = 100 }
|
||||||
|
|
||||||
|
The SYNTAX of objectRepetition is ConfigIterator.
|
||||||
|
This will apply value 1 to objectA, value 'E1' to objectB,
|
||||||
|
value 44 to objectC in the table starting from row 10
|
||||||
|
repeatedly for 100 rows.
|
||||||
|
|
||||||
|
The iteration is based on the number of rows, not based on
|
||||||
|
the value of the index. For sparse tables, the index 10,
|
||||||
|
20, 30, 110, and 120 counts for 5 rows, the operation will
|
||||||
|
go beyond index 100 in the previous SNMP PDU example.
|
||||||
|
|
||||||
|
The iteration will stop prematurely when it comes to the
|
||||||
|
following situations:
|
||||||
|
(1) When the number of the rows in the table is less than
|
||||||
|
the designated row indicated by the ConfigIterator
|
||||||
|
object.
|
||||||
|
(2) When it encounters the first error in any row, the
|
||||||
|
operation won't continue to next row.
|
||||||
|
|
||||||
|
The operation of ConfigIterator object applies only to
|
||||||
|
the writable objects having the same index as the
|
||||||
|
ConfigIterator object in one SNMP PDU.
|
||||||
|
|
||||||
|
For example, a SNMP PDU contains
|
||||||
|
{ objectD.5 = 38,
|
||||||
|
objectE.6 = 'T1',
|
||||||
|
objectF.5 = 'false',
|
||||||
|
objectIterator.5 = 10 }
|
||||||
|
|
||||||
|
The SYNTAX of objectIterator is ConfigIterator.
|
||||||
|
This will apply value 38 to objectD, value 'false' to
|
||||||
|
objectF in the table starting from row 5 repeatedly
|
||||||
|
for 10 rows. Since the object objectE.6 has different
|
||||||
|
index (6) from the index of objectIterator, the
|
||||||
|
repetition won't be applied to it. However the value
|
||||||
|
of objectE in the row 6 will be set to 'T1' according
|
||||||
|
to regular SNMP SET orperation.
|
||||||
|
|
||||||
|
If there is row overlapping of the iteration in a SNMP PDU,
|
||||||
|
it will be operated as they are in two different SNMP PDUs.
|
||||||
|
|
||||||
|
For example, a SNMP PDU contains
|
||||||
|
{ objectD.5 = 38,
|
||||||
|
objectD.6 = 40,
|
||||||
|
objectE.6 = 'T1',
|
||||||
|
objectF.5 = 'false',
|
||||||
|
objectIterator.5 = 10
|
||||||
|
objectIterator.6 = 10 }
|
||||||
|
|
||||||
|
This will apply value 38 to objectD, value 'false' to
|
||||||
|
objectF starting from row 5 repeatedly for 10 rows, and
|
||||||
|
apply value 40 to objectD, value 'T1' to objectE starting
|
||||||
|
from row 6 repeatedly for 10 rows. The final value of
|
||||||
|
objectD.6 can be 38 or 40, it depends on the SNMP stack of
|
||||||
|
the system starts SNMP SET for the row 5 before the row 6
|
||||||
|
or the other way around.
|
||||||
|
|
||||||
|
The object defined as ConfigIterator will be set to value 1
|
||||||
|
after the iteration operation is kick-off regardless the
|
||||||
|
system has completed the operation to the designated rows
|
||||||
|
or not. Therefore retrieving the value of this object
|
||||||
|
is meaningless. It acts as the one time operation for
|
||||||
|
bulk configuration.
|
||||||
|
|
||||||
|
The object defined as ConfigIterator has no meaning by itself,
|
||||||
|
it has to be combined with one or more than one writable
|
||||||
|
objects from the same table and within the same SNMP PDU
|
||||||
|
for the repetition operation.
|
||||||
|
|
||||||
|
For example, a SNMP PDU contains
|
||||||
|
{ objectG.2 = 49,
|
||||||
|
objectH.2 = 'AE'h
|
||||||
|
objectIterator.4 = 20 }
|
||||||
|
|
||||||
|
The SYNTAX of objectIterator is ConfigIterator. Since
|
||||||
|
there are no objects having the same index as the index
|
||||||
|
of objectIterator in the PDU, the result of this SNMP
|
||||||
|
operation will set value 49 to objectG and value 0xAE
|
||||||
|
to objectH of the row 2 only as regular SNMP SET operation.
|
||||||
|
|
||||||
|
The index of the instance indicates the starting row for the
|
||||||
|
iteration.
|
||||||
|
The order of the iteration depends, for instance, on:
|
||||||
|
(1) physical hardware position, or
|
||||||
|
(2) logical index.
|
||||||
|
|
||||||
|
It depends on the characters of the table which contains
|
||||||
|
the ConfigIterator object.
|
||||||
|
|
||||||
|
Iteration can be done through some or all the components
|
||||||
|
of the index for a table. The description of the iterator
|
||||||
|
object in that table should describe which part of the
|
||||||
|
index the iteration is applied to.
|
||||||
|
|
||||||
|
The operation for this object type is based on the best
|
||||||
|
effort. When the agent receives a SNMP PDU containing this
|
||||||
|
data type, the return status of the SNMP request reflects
|
||||||
|
only the result of the SET operation has applied to the
|
||||||
|
starting row. It may return a SNMP response with SUCCESS
|
||||||
|
status regardless the number of rows for the data actually
|
||||||
|
been deployed later on. Therefore it is possible the data
|
||||||
|
might not be completely deployed to the number of rows
|
||||||
|
designated by the ConfigIterator and the operation stops
|
||||||
|
prematurely due to an error it first encounters after
|
||||||
|
n rows (n < the value of ConfigIterator object).
|
||||||
|
|
||||||
|
Usually the error report mechanism for this type of operation
|
||||||
|
is accomplished by combining this type of object with the
|
||||||
|
other two objects in the same table:
|
||||||
|
|
||||||
|
(1) An OwnerString object
|
||||||
|
(2) An object indicates the result of the operation.
|
||||||
|
|
||||||
|
When issuing this bulk configuration request, the SNMP
|
||||||
|
manager should provide its identifier in (1) object.
|
||||||
|
After issuing the request, it should check the value of (1)
|
||||||
|
object if it is the same with it own name.
|
||||||
|
If they are the same, then the value of the object presents
|
||||||
|
in (2) is the result from the previous operation from this
|
||||||
|
manager. Otherwise, another SNMP manager might issue
|
||||||
|
the bulk configuration to the same table before the previous
|
||||||
|
bulk operation has been completed. These two objects will
|
||||||
|
represent the last bulk operation in the table.
|
||||||
|
"
|
||||||
|
SYNTAX Unsigned32 (1..4294967295)
|
||||||
|
|
||||||
|
BulkConfigResult ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This textual convention defines the format of the
|
||||||
|
displayable textual result from the bulk configuration
|
||||||
|
operation specified as ConfigIterator type.
|
||||||
|
|
||||||
|
The format should be:
|
||||||
|
'COMPLETION=<number of rows had completed before any
|
||||||
|
error occured>/<number of rows was designated>,
|
||||||
|
ERROR=<error code>/<index where the error occured>:
|
||||||
|
<error text>'
|
||||||
|
|
||||||
|
For example:
|
||||||
|
'COMPLETION=22/100,ERROR=38/44:Invalid Ds1 line coding
|
||||||
|
for the line type'
|
||||||
|
"
|
||||||
|
SYNTAX OCTET STRING (SIZE(0..255))
|
||||||
|
|
||||||
|
ListIndex ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "d"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A unique value greater than zero, for each of the
|
||||||
|
list that is defined. The object using this
|
||||||
|
convention should give all the object specific
|
||||||
|
details including the list type."
|
||||||
|
SYNTAX Integer32 (1..2147483647)
|
||||||
|
|
||||||
|
ListIndexOrZero ::= TEXTUAL-CONVENTION
|
||||||
|
DISPLAY-HINT "d"
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"This textual convention is an extension of the
|
||||||
|
ListIndex. In addition to the ListIndex range,
|
||||||
|
this also includes 0 in its range of values.
|
||||||
|
This value could be object specific and
|
||||||
|
should be given the description of that object.
|
||||||
|
In most cases, a value 0 means that the it does
|
||||||
|
not represent any lists."
|
||||||
|
SYNTAX Integer32 (0..2147483647)
|
||||||
|
|
||||||
|
TimeIntervalSec ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A period of time, measured in units of 1 second."
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
|
||||||
|
TimeIntervalMin ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"A period of time, measured in units of 1 minute."
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
|
||||||
|
NMSMilliSeconds ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents time unit value in milliseconds."
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
|
||||||
|
MicroSeconds ::= TEXTUAL-CONVENTION
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Represents time unit value in microseconds."
|
||||||
|
SYNTAX Unsigned32
|
||||||
|
END
|
6712
mibs/PBN-MIB
Normal file
6712
mibs/PBN-MIB
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user