-- *****************************************************************
-- 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
--    DESCRIPTION
--        "The compliance statement for entities which implement
--        the NMS Memory Pool MIB"
--    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 
--        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
