-- *****************************************************************
-- RBN-SYS-RESOURCES-MIB    Redback System Resources MIB
--
-- Copyright (c) 2002-2003, 2005, 2007-2008 RedBack Networks, Inc.
-- All rights reserved.
--
-- *****************************************************************

RBN-SYS-RESOURCES-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        NOTIFICATION-TYPE,
        OBJECT-TYPE,
        Unsigned32,
        Integer32,
        TimeTicks,
        Counter32
                FROM SNMPv2-SMI
        TruthValue,
        DateAndTime
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP,
        NOTIFICATION-GROUP
                FROM SNMPv2-CONF
        SnmpAdminString
                FROM SNMP-FRAMEWORK-MIB
        RbnKBytes,
        RbnPercentage,
        RbnSlot
                FROM RBN-TC
        IANAItuEventType,
        IANAItuProbableCause
                FROM IANA-ITU-ALARM-TC-MIB

        ItuPerceivedSeverity
                FROM ITU-ALARM-TC-MIB
        rbnMgmt
                FROM RBN-SMI;

rbnSysResourcesMib MODULE-IDENTITY
        LAST-UPDATED    "201104291800Z" -- April 29, 2011 
        ORGANIZATION    "RedBack Networks, Inc."
        CONTACT-INFO
                "       RedBack Networks, Inc.

                Postal: 300 Holger Way
                        San Jose, CA  95134-1362
                        USA

                 Phone: +1 408 750 5000
                   Fax: +1 408 750 5599

                E-mail: mib-info@redback.com"
        DESCRIPTION
                "The management information definitions for the
                system resources management of a Redback network
                device.  This MIB is viewable under all contexts."
        
        REVISION        "201104291800Z" -- April 29, 2011
        DESCRIPTION
                "Add rbnChassisAlarmId,
                     rbnChassisAlarmType,
                     rbnChassisAlarmDateAndTime,
                     rbnChassisAlarmDescription,
                     rbnChassisAlarmProbableCause,
                     rbnChassisAlarmSeverity
                     rbnChassisAlarm,
                     rbnChassisEventObjectGroup,
                     rbnSRMIBCompliance6."

        REVISION        "200907160000Z" -- July 16, 2009
        DESCRIPTION
                "Add new rbnSRMIBCompliance,  new groups rbnSseDiskGroup
                 and rbnSseDiskEventObjectGroup, new notification group 
                 rbnSseDiskNotifyGroup."

        REVISION        "200705290000Z" -- May 29, 2007
        DESCRIPTION
                "Add rbnSRMIBCompliance4,  new group rbnSRPowerExceeded,
                 new notification group rbnSRPowerNotifyGroup, and 
                 new group rbnSRPowerExceededGroup." 

        REVISION        "200504180000Z" -- April 18, 2005
        DESCRIPTION
                "Add rbnSRStorageSlot, rbnSRStorageMountTime,
                 rbnSRStorageStatus and rbnSRStorageErrors to
                 rbnSRStorageTable.
                 Add rbnSRStorageFailedEvent to report device
                 failures.
                 Add rbnSRMIBCompliance3, rbnSRStorageGroup2
                 and rbnSRNotificationGroup2.
                 Add new group rbnSRSystem.
                 Add new objects rbnSRSystemUptime and rbnSRSystemDate."

        REVISION        "200309021800Z" -- Sept 2, 2003, 1800Z
        DESCRIPTION
                "Add notification rbnSRSwitchoverEvent,
                 rbnSRMIBCompliance2 and
                 rbnSRNotificationGroup."

        REVISION        "200210100000Z" -- October 10, 2002
        DESCRIPTION
                "Add new enumerations to rbnSRProcessNotifyEventCause."

        REVISION        "200206040000Z" -- June 4, 2002
        DESCRIPTION
                "Initial version."

        ::= { rbnMgmt 24 }

rbnSRMIBNotifications   OBJECT IDENTIFIER ::= { rbnSysResourcesMib 0 }

rbnSRMIBObjects         OBJECT IDENTIFIER ::= { rbnSysResourcesMib 1 }

rbnSRMIBConformance     OBJECT IDENTIFIER ::= { rbnSysResourcesMib 2 }

-- the Process Group

rbnSRProcess            OBJECT IDENTIFIER ::= { rbnSRMIBObjects 1 }

-- Process event notification information

rbnSRProcessNotifyLastUpdate OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The value of sysUpTime when an entry in the
                rbnSRProcessNotifyTable was last added.  Because
                this table is likely to contain many entries, polling
                of this object allows a management station to determine
                when re-downloading of the table might be useful."
        ::= { rbnSRProcess 1 }

rbnSRProcessEventNotifyEnable    OBJECT-TYPE
        SYNTAX      INTEGER {
                        enabled(1),
                        disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
                "Indicates whether rbnSRProcessEvent notification should
                be generated for this system."
        DEFVAL  { enabled }
        ::= { rbnSRProcess 2 }

rbnSRProcessNotifyTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RbnSRProcessNotifyEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A list of process event notifications since the agent
                was last re-initialized.  If no process event has ever
                been generated, this table is empty, i.e., has zero
                entries."
        ::= { rbnSRProcess 3 }

rbnSRProcessNotifyEntry OBJECT-TYPE
        SYNTAX      RbnSRProcessNotifyEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "Information about a death/birth process event
                notification which was last generated on the particular
                process."
        INDEX { rbnSRProcessNotifyProcName }
        ::= { rbnSRProcessNotifyTable 1 }

RbnSRProcessNotifyEntry ::=
        SEQUENCE {
                rbnSRProcessNotifyProcName      SnmpAdminString,
                rbnSRProcessNotifyPID           Unsigned32,
                rbnSRProcessNotifyEventCause    INTEGER,
                rbnSRProcessNotifyEventType     INTEGER,
                rbnSRProcessNumOfSpawn          Unsigned32,
                rbnSRProcessNotifyLastTimeSent  TimeTicks
        }

rbnSRProcessNotifyProcName OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE (1..64))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A human readable name identifying a particular
                process in the system."
        ::= { rbnSRProcessNotifyEntry 1 }

rbnSRProcessNotifyPID OBJECT-TYPE
        SYNTAX      Unsigned32 (0..2147483647)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "A decimal number uniquely identifies the process.  The
                value 0 indicates the process has not been started."
        ::= { rbnSRProcessNotifyEntry 2 }

rbnSRProcessNotifyEventCause OBJECT-TYPE
        SYNTAX      INTEGER {
                        firstStart(1),
                        hangup(2),
                        interrupt(3),
                        quit(4),
                        illegalInstruction(5),
                        traceTrap(6),
                        abort(7),
                        emt(8),
                        floatingPointException(9),
                        kill(10),
                        busError(11),
                        segmentFault(12),
                        systemCallError(13),
                        pipeError(14),
                        alarmClock(15),
                        softwareTermination(16),
                        urgentConditionOnIOChannel(17),
                        stopNotFromTty(18),
                        stopFromTty(19),
                        continueStopped(20),
                        childExit(21),
                        ttyInput(22),
                        ttyOutput(23),
                        inputOutput(24),
                        exceededCpuTime(25),
                        exceededFileSize(26),
                        virtualAlarm(27),
                        profilingAlarm(28),
                        windowResize(29),
                        infoRequest(30),
                        userDefined1(31),
                        userDefined2(32),
                        powerFailRestart(33),
                        unknown(34)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "This identifies the cause of a process death/birth event.
                The value firstStart(1) indicates the process has been
                started the first time.  The other values identifies the
                process exit status recorded on the last process death
                event.  On the SmartEdge platform, these values correspond
                1-to-1 with the values displayed by the 'show process
                crash-info' CLI command."
        ::= { rbnSRProcessNotifyEntry 3 }

rbnSRProcessNotifyEventType OBJECT-TYPE
        SYNTAX      INTEGER {
                        death(1),
                        birth(2)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The type of event notification sent on the process
                described by this row of the table.  The process
                event type death(1) indicates that the agent has been
                informed that the process is not available for any use.
                The event type birth(2) indicates that the agent has
                been informed that the process has been started."
        ::= { rbnSRProcessNotifyEntry 4 }

rbnSRProcessNumOfSpawn OBJECT-TYPE
        SYNTAX      Unsigned32 (0..2147483647)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The number of times the process has been spawned since
                the system was last initialized.  Note that this is
                different from the restart of the network management
                portion of the system."
        ::= { rbnSRProcessNotifyEntry 5 }

rbnSRProcessNotifyLastTimeSent OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The value of sysUpTime at the time this notification was
                last generated on the process."
        ::= { rbnSRProcessNotifyEntry 6 }

-- Storage Group

rbnSRStorage            OBJECT IDENTIFIER ::= { rbnSRMIBObjects 2 }

-- Storage Usage Table - For XCRP

rbnSRStorageTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RbnSRStorageEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "The (conceptual) table of long-term storage devices
                contained by the system.  In particular, disk devices
                accessed remotely over a network are not included
                here."
        ::= { rbnSRStorage 1 }

rbnSRStorageEntry OBJECT-TYPE
        SYNTAX      RbnSRStorageEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A (conceptual) entry for one long-term storage device
                contained by the system."
        INDEX { rbnSRStorageIndex }
        ::= { rbnSRStorageTable 1 }

RbnSRStorageEntry ::=
        SEQUENCE {
                rbnSRStorageIndex           Integer32,
                rbnSRStorageDescr           SnmpAdminString,
                rbnSRStorageMedia           INTEGER,
                rbnSRStorageRemovable       TruthValue,
                rbnSRStorageSize            RbnKBytes,
                rbnSRStorageUtilization     RbnPercentage,
                rbnSRStorageSlot            RbnSlot,
                rbnSRStorageMountTime       TimeTicks,
                rbnSRStorageStatus          INTEGER,
                rbnSRStorageErrors          Counter32
        }

rbnSRStorageIndex OBJECT-TYPE
        SYNTAX      Integer32 (1..2147483647)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A unique value for each long-term storage device
                contained by the system.  The value for each physical
                storage device must remain constant at least from one
                re-initialization of the agent to the next
                re-initialization."
        ::= { rbnSRStorageEntry 1 }

rbnSRStorageDescr OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE (0..64))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "A textual description of this storage device, optionally
                including the device's manufacturer, revision, and its
                serial number."
        ::= { rbnSRStorageEntry 2 }

rbnSRStorageMedia OBJECT-TYPE
        SYNTAX      INTEGER {
                        other(1),
                        hardDisk(2),
                        flashMemory(3)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "An indication of the type of media used in this long-term
                storage device."
        ::= { rbnSRStorageEntry 3 }

rbnSRStorageRemovable OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "Denotes whether or not the storage media may be removed
                from the drive/slot."
        ::= { rbnSRStorageEntry 4 }

rbnSRStorageSize OBJECT-TYPE
        SYNTAX      RbnKBytes
        UNITS       "KBytes"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The total size for this long-term storage device. If the
                media is removable and is currently removed, this value
                should be zero."
        ::= { rbnSRStorageEntry 5 }

rbnSRStorageUtilization OBJECT-TYPE
        SYNTAX      RbnPercentage
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "This object is the percent utilization of the storage
                space on a scale of 0 to 100 percent.  The formula used
                to calculate the Utilization is as follows.

                                           used blocks * 100
                Utilization = ---------------------------------------------
                               free blocks avail to the user + used blocks

                Note that the divisor is the total number of blocks
                available to the user which is a subset of the total
                storage size on the device in rbnSRStorageSize."
        ::= { rbnSRStorageEntry 6 }

rbnSRStorageSlot   OBJECT-TYPE
        SYNTAX      RbnSlot
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The chassis slot number in which the controller card
                containing this storage device is present."
        ::= { rbnSRStorageEntry 7 }

rbnSRStorageMountTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The value of sysUpTime when this storage device was last
                mounted."
        ::= { rbnSRStorageEntry 8 }

rbnSRStorageStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                        operational(1),
                        degrading(2),
                        failed(3)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The functional status of this storage device."
        ::= { rbnSRStorageEntry 9 }

rbnSRStorageErrors  OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The cumulative count of soft errors on this storage device."
        ::= { rbnSRStorageEntry 10 }


-- SSE Disk Storage Usage Table - For Winchester

rbnSseDiskStorageTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RbnSseDiskStorageEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "File Server System Blade is a card on the SmartEdge platform that
                 manages data on hard disks connected to the card.
                 This table provides details of these disks."
        ::= { rbnSRStorage 2 }

rbnSseDiskStorageEntry OBJECT-TYPE
        SYNTAX      RbnSseDiskStorageEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A entry for the disk on the SSE."
        INDEX { rbnSseDiskSlot, rbnSseDiskNum }
        ::= { rbnSseDiskStorageTable 1 }

RbnSseDiskStorageEntry ::=
        SEQUENCE {
            rbnSseDiskSlot        RbnSlot,
            rbnSseDiskNum         Unsigned32,
            rbnSseDiskState       INTEGER,
            rbnSseDiskSize        Unsigned32,
            rbnSseDiskUsed        Unsigned32
        }

rbnSseDiskSlot OBJECT-TYPE
    SYNTAX      RbnSlot
    MAX-ACCESS  not-accessible 
    STATUS      current
    DESCRIPTION
            "The chassis slot number in which the disk resides."
    ::= { rbnSseDiskStorageEntry 1 }

rbnSseDiskNum  OBJECT-TYPE
    SYNTAX      Unsigned32 (1..10)  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The disk number used to identity the disk."
    ::= { rbnSseDiskStorageEntry 2 }

rbnSseDiskState OBJECT-TYPE
    SYNTAX      INTEGER {
                        up(1),
                        down(2)
                        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Operational status of the disk."
    ::= { rbnSseDiskStorageEntry 3 }

rbnSseDiskSize OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "GBytes"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total size of the disk in GBytes."
    ::= { rbnSseDiskStorageEntry 4 }

rbnSseDiskUsed OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "GBytes"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total disk space utilized in GBytes."
    ::= { rbnSseDiskStorageEntry 5 }

--
-- System Group
-- Modeled after objects in the RFC2790 Host Resources MIB
--

rbnSRSystem            OBJECT IDENTIFIER ::= { rbnSRMIBObjects 3 }

rbnSRSystemUptime OBJECT-TYPE
        SYNTAX     TimeTicks
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "The amount of time since this system was last initialized.
                Note that this is different from sysUpTime in the SNMPv2-MIB
                [RFC1907] because sysUpTime is the uptime of the network
                management portion of the system."
        ::= { rbnSRSystem 1 }

rbnSRSystemDate OBJECT-TYPE
        SYNTAX     DateAndTime
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "The host's notion of the local date and time of day."
        ::= { rbnSRSystem 2 }

-- To monitor power capacity exceeding limit 

rbnPowerExceeded          OBJECT IDENTIFIER ::= { rbnSRMIBObjects 4 }

rbnSRPowerExceededStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                      normal(1),
                      failed(2)
                    }
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The status of alarm when a controller card is inserted 
	        and results in more power being drawn than recommended. 
	        If an instance of this object has the value normal, then the 
                chassis power has not exceeded. If an instance of this object 
   	        has the value failed, then it means the chassis power was exceeded
	        on inserting a controller card."
        ::= { rbnPowerExceeded 1 }

-- Notifications related to system resources management

rbnSRProcessEvent NOTIFICATION-TYPE
        OBJECTS { rbnSRProcessNotifyPID,
                  rbnSRProcessNotifyEventCause,
                  rbnSRProcessNotifyEventType,
                  rbnSRProcessNumOfSpawn }
        STATUS      current
        DESCRIPTION
                "This notification is sent each time the agent is informed of
                a process death/birth event."
        ::= { rbnSRMIBNotifications 1 }

rbnSRSwitchoverEvent NOTIFICATION-TYPE
        STATUS      current
        DESCRIPTION
                "This notification identifies when a switchover
                occurs from one main processor module to a backup."
        ::= { rbnSRMIBNotifications 2 }

rbnSRStorageFailedEvent NOTIFICATION-TYPE
        OBJECTS { rbnSRStorageDescr,
                  rbnSRStorageMedia,
                  rbnSRStorageSlot }
        STATUS      current
        DESCRIPTION
                "This notification is sent when the value of
                rbnSRStorageStatus for a device changes to 'failed'."
        ::= { rbnSRMIBNotifications 3 }

rbnSRPowerExceededEvent NOTIFICATION-TYPE
        OBJECTS { rbnSRPowerExceededStatus }
        STATUS      current
        DESCRIPTION
                "This notification identifies when a controller card
		is inserted and results in more power being drawn
		than recommended." 
        ::= { rbnSRMIBNotifications 4 }

 -- SSE Notification Definition section

rbnSseDiskAlarmDateAndTime OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The local date and time when the alarm was raised"
        ::= { rbnSRMIBObjects 5 }

rbnSseDiskAlarmSeverity OBJECT-TYPE
        SYNTAX      ItuPerceivedSeverity
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The perceived severity of the alarm."
        ::= { rbnSRMIBObjects 6 }

rbnSseDiskAlarmProbableCause OBJECT-TYPE
        SYNTAX      IANAItuProbableCause
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The probable cause for this alarm." 
        ::= { rbnSRMIBObjects 7 }

rbnSseDiskEventType OBJECT-TYPE
        SYNTAX      IANAItuEventType
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION 
                "The type of the alarm." 
        ::= { rbnSRMIBObjects 8 }

rbnSseDiskAlarmDescription OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..64))
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "A text string which conveys additional information
                about the alarm."
        ::= { rbnSRMIBObjects 9 }
        
--
--  ISSU Objects for notification
--
rbnIssuObjects      OBJECT IDENTIFIER ::= { rbnSRMIBObjects 10}

rbnIssuState OBJECT-TYPE
    SYNTAX      INTEGER {
                    unknown(0),
                    start(1),
                    complete(2),
                    aborted(3)
                }
    MAX-ACCESS  accessible-for-notify
    STATUS      current    DESCRIPTION
            "The current state of the inservice system upgrade (ISSU)."
    ::= { rbnIssuObjects 1 }
 

-- Notifications related to SSE Disk

rbnSseDiskHealthDegradedAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskHealthDegradedAlarm notification signifies that the
         hard disk health has degraded."
    ::= { rbnSRMIBNotifications 5 }

rbnSseDiskFailedAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskFailedAlarm notification signifies that the
         hard disk has failed."
    ::= { rbnSRMIBNotifications 6 }

rbnSseDiskMissingAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskMissingAlarm notification signifies that the
         hard disk is missing."
    ::= { rbnSRMIBNotifications 7 }

rbnSseDiskUnsupportedAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskUnsupportedAlarm notification signifies that the
         hard disk is not supported."
    ::= { rbnSRMIBNotifications 8 }

rbnSseDiskOOSAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskOOSAlarm notification signifies that the
         hard disk is out of service."
    ::= { rbnSRMIBNotifications 9 }

rbnSseDiskVoltageFailureAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskVoltageFailureAlarm notification signifies that the
        hard disk voltage has failed."
    ::= { rbnSRMIBNotifications 10 }

rbnSseDiskOverHeatAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskOverHeatAlarm notification signifies that the
        hard disk overheating."
    ::= { rbnSRMIBNotifications 11 }

rbnSseDiskReadFailureAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnSseDiskAlarmDateAndTime,
        rbnSseDiskAlarmSeverity,
        rbnSseDiskAlarmProbableCause,
        rbnSseDiskEventType,
        rbnSseDiskAlarmDescription,
        rbnSseDiskState
    }
    STATUS      current
    DESCRIPTION
        "A rbnSseDiskReadFailureAlarm notification signifies that the
         hard disk read failure."
    ::= { rbnSRMIBNotifications 12 }

--
-- ISSU NOTIFICATION
--
rbnIssuStateChange NOTIFICATION-TYPE
    OBJECTS     {
        rbnIssuState
    }
    STATUS      current
    DESCRIPTION
        "A notification reporting a change in ISSU state. The new
        state is returned in the notification."
    ::= { rbnSRMIBNotifications 13 }

 -- Chassis Notification Definition section

rbnChassisGroup OBJECT IDENTIFIER ::= { rbnSRMIBObjects 11 }

rbnChassisAlarmId OBJECT-TYPE
        SYNTAX      RbnAlarmId 
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The chassis alarm identifier"
        ::= { rbnChassisGroup 1 }

rbnChassisAlarmType OBJECT-TYPE
        SYNTAX      IANAItuEventType
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION 
                "The chassis alarm type." 
        ::= { rbnChassisGroup 2 }

rbnChassisAlarmDateAndTime OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The local date and time when the chassis alarm was raised"
        ::= { rbnChassisGroup 3 }

rbnChassisAlarmDescription OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..64))
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "A text string which conveys additional information
                about the chassis alarm."
        ::= { rbnChassisGroup 4 }

rbnChassisAlarmProbableCause OBJECT-TYPE
        SYNTAX      IANAItuProbableCause
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The probable cause for the chassis alarm." 
        ::= { rbnChassisGroup 5 }

rbnChassisAlarmSeverity OBJECT-TYPE
        SYNTAX      ItuPerceivedSeverity
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
                "The perceived severity of the chassis alarm."
        ::= { rbnChassisGroup 6 }

-- Chassis Notification

rbnChassisAlarm NOTIFICATION-TYPE
    OBJECTS     {
        rbnChassisAlarmId,
        rbnChassisAlarmType,
        rbnChassisAlarmDateAndTime,
        rbnChassisAlarmDescription,
        rbnChassisAlarmProbableCause,
        rbnChassisAlarmSeverity
    }
    STATUS      current
    DESCRIPTION
        "A rbnChassisAlarm notification signifies that
         an alarm has been raised/cleared on the chassis."
    ::= { rbnSRMIBNotifications 14 }

-- Conformance Statements

rbnSRMIBCompliances     OBJECT IDENTIFIER ::= { rbnSRMIBConformance 1 }

rbnSRMIBGroups          OBJECT IDENTIFIER ::= { rbnSRMIBConformance 2 }

-- Compliance Statements

rbnSRMIBCompliance6 MODULE-COMPLIANCE
        STATUS      current
        DESCRIPTION
                "The requirements for conformance to the System
                Resources MIB."
        MODULE -- this module
            MANDATORY-GROUPS {
                rbnSRProcessNotifyGroup,
                rbnSRNotificationGroup2,
                rbnIssuGroup,
                rbnIssuNotifyGroup
            }

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRStorageGroup2
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        GROUP rbnSRSystemGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting system information."

        GROUP rbnSRPowerExceededGroup
	DESCRIPTION
	        "Implementation of this group is mandatory for devices that
	        are capable of reporting chassis power exceeding limit information."

        GROUP rbnSRPowerNotifyGroup
	DESCRIPTION
	        "Implementation of this group is mandatory for devices that
	        are capable of reporting chassis power exceeding limit information."

        GROUP rbnSseDiskGroup
        DESCRIPTION 
                "Implementation of this group is mandatory for the hard disk devices 
                on File Server Blade."

        GROUP rbnSseDiskEventObjectGroup 
        DESCRIPTION 
                "Implementation of this group is mandatory for hard disk
                devices on SSE that
                are capable of reporting these alarms objects."

        GROUP rbnSseDiskNotifyGroup 
        DESCRIPTION
                "Implementation of this group is mandatory for hard disks devices on
                SSE that are capable of reporting alarms."

        GROUP rbnChassisEventObjectGroup 
        DESCRIPTION 
                "Implementation of this group is mandatory for devices 
                that are capable of reporting chassis alarms objects."

        GROUP rbnChassisNotifyGroup 
        DESCRIPTION
                "Implementation of this group is mandatory for devices
                that are capable of reporting chassis alarms."

        ::= { rbnSRMIBCompliances 6 }

rbnSRMIBCompliance MODULE-COMPLIANCE
        STATUS      deprecated 
        DESCRIPTION
                "The requirements for conformance to the Redback System
                Resources MIB."
        MODULE -- this module
            MANDATORY-GROUPS {
                rbnSRProcessNotifyGroup,
                rbnSRNotificationGroup2 }

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRStorageGroup2
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        GROUP rbnSRSystemGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting system information."

        GROUP rbnSRPowerExceededGroup
	DESCRIPTION
	        "Implementation of this group is mandatory for devices that
	        are capable of reporting chassis power exceeding limit information."

        GROUP rbnSRPowerNotifyGroup
	DESCRIPTION
	        "Implementation of this group is mandatory for devices that
	        are capable of reporting chassis power exceeding limit information."

        GROUP rbnSseDiskGroup
        DESCRIPTION 
                "Implementation of this group is mandatory for the hard disk devices 
                on File Server Blade."

        GROUP rbnSseDiskEventObjectGroup 
        DESCRIPTION 
                "Implementation of this group is mandatory for hard disk
                devices on Sse that
                are capable of reporting these alarms objects."

        GROUP rbnSseDiskNotifyGroup 
        DESCRIPTION
                "Implementation of this group is mandatory for hard disks devices on
                Sse that are capable of reporting alarms."

        ::= { rbnSRMIBCompliances 5 }

-- Units of Conformance

rbnSRProcessNotifyGroup OBJECT-GROUP
        OBJECTS { rbnSRProcessNotifyLastUpdate,
                  rbnSRProcessEventNotifyEnable,
                  rbnSRProcessNotifyPID,
                  rbnSRProcessNotifyEventCause,
                  rbnSRProcessNotifyEventType,
                  rbnSRProcessNumOfSpawn,
                  rbnSRProcessNotifyLastTimeSent }
        STATUS      current
        DESCRIPTION
                "A collection of objects providing for remote monitoring
                of the system process event notification."
        ::= { rbnSRMIBGroups 1 }

rbnSRStorageGroup2 OBJECT-GROUP
        OBJECTS { rbnSRStorageDescr,
                  rbnSRStorageMedia,
                  rbnSRStorageRemovable,
                  rbnSRStorageSize,
                  rbnSRStorageUtilization,
                  rbnSRStorageSlot,
                  rbnSRStorageMountTime,
                  rbnSRStorageStatus,
                  rbnSRStorageErrors }
        STATUS      current
        DESCRIPTION
                "The System Resources Storage Group."
        ::= { rbnSRMIBGroups 5 }

rbnSRNotificationGroup2 NOTIFICATION-GROUP
        NOTIFICATIONS { rbnSRProcessEvent,
                        rbnSRSwitchoverEvent,
                        rbnSRStorageFailedEvent }
        STATUS      current
        DESCRIPTION
                "A collection of notifications that may be implemented
                for managing the system resources."
        ::= { rbnSRMIBGroups 6 }

rbnSRSystemGroup OBJECT-GROUP
        OBJECTS { rbnSRSystemUptime,
                  rbnSRSystemDate }
        STATUS      current
        DESCRIPTION
                "A collection of objects providing for remote monitoring
                of the system information."
        ::= { rbnSRMIBGroups 7 }

rbnSRPowerNotifyGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnSRPowerExceededEvent }
        STATUS      current
        DESCRIPTION
                "A notification that may be implemented
                for tracking power capacity exceeding limit."
        ::= { rbnSRMIBGroups 8 }

rbnSRPowerExceededGroup OBJECT-GROUP
        OBJECTS { rbnSRPowerExceededStatus }
        STATUS      current
        DESCRIPTION
                "A  group providing for status of the power 
                capacity exceeding limit."
        ::= { rbnSRMIBGroups 9 }

rbnSseDiskGroup OBJECT-GROUP
        OBJECTS { rbnSseDiskState,
                  rbnSseDiskSize,
                  rbnSseDiskUsed
        }
        STATUS      current
        DESCRIPTION
                "A  group providing SSE disk details."
        ::= { rbnSRMIBGroups 10 }

rbnSseDiskEventObjectGroup OBJECT-GROUP
        OBJECTS { rbnSseDiskEventType,
                  rbnSseDiskAlarmDateAndTime,
                  rbnSseDiskAlarmDescription,
                  rbnSseDiskAlarmProbableCause,
                  rbnSseDiskAlarmSeverity
        }
        STATUS    current
        DESCRIPTION
                "A collection of rbnSseDisk notification objects."
        ::= { rbnSRMIBGroups 11 }

rbnSseDiskNotifyGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnSseDiskHealthDegradedAlarm,
                        rbnSseDiskFailedAlarm,
                        rbnSseDiskMissingAlarm,
                        rbnSseDiskUnsupportedAlarm,
                        rbnSseDiskOOSAlarm,
                        rbnSseDiskVoltageFailureAlarm,
                        rbnSseDiskOverHeatAlarm,
                        rbnSseDiskReadFailureAlarm
        }
        STATUS      current
        DESCRIPTION
                "Notifications that are implemented for SSE disks."
        ::= { rbnSRMIBGroups 12 }

rbnIssuGroup OBJECT-GROUP
        OBJECTS { rbnIssuState }
        STATUS      current
        DESCRIPTION
                "A collection of ISSU notification objects."
        ::= { rbnSRMIBGroups 13 }
    
rbnIssuNotifyGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnIssuStateChange }
        STATUS      current
        DESCRIPTION
                "Notifications that are implemented for ISSU."
        ::= { rbnSRMIBGroups 14 }
        
rbnChassisEventObjectGroup OBJECT-GROUP
        OBJECTS { rbnChassisAlarmId,
                  rbnChassisAlarmType,
                  rbnChassisAlarmDateAndTime,
                  rbnChassisAlarmDescription,
                  rbnChassisAlarmProbableCause,
                  rbnChassisAlarmSeverity
        }
        STATUS    current
        DESCRIPTION
               "A collection of rbnChassis notification objects."
        ::= { rbnSRMIBGroups 15 }

rbnChassisNotifyGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnChassisAlarm }
        STATUS      current
        DESCRIPTION
                "Notifications that are implemented for chassis."
        ::= { rbnSRMIBGroups 16 }

-- Deprecated Definitions - Compliance

rbnSRMIBCompliance1 MODULE-COMPLIANCE
        STATUS      obsolete
        DESCRIPTION
                "The requirements for conformance to the Redback System
                Resources MIB.

                rbnSRMIBCompliance2 replaces this compliance."
        MODULE -- this module

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRProcessNotifyGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of tracking process event notifications."

        GROUP rbnSRStorageGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        GROUP rbnSRProcessEventNotificationGroup
        DESCRIPTION
                "Implementation of this group is mandatory only when the
                rbnSRProcessNotifyGroup is implemented."
        ::= { rbnSRMIBCompliances 1 }

rbnSRMIBCompliance2 MODULE-COMPLIANCE
        STATUS      deprecated
        DESCRIPTION
                "The requirements for conformance to the Redback System
                Resources MIB.

                rbnSRMIBCompliance3 replaces this compliance."
        MODULE -- this module
            MANDATORY-GROUPS {
                rbnSRProcessNotifyGroup,
                rbnSRNotificationGroup }

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRStorageGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        ::= { rbnSRMIBCompliances 2 }

rbnSRMIBCompliance3 MODULE-COMPLIANCE
        STATUS      deprecated
        DESCRIPTION
                "The requirements for conformance to the Redback System
                Resources MIB."
        MODULE -- this module
            MANDATORY-GROUPS {
                rbnSRProcessNotifyGroup,
                rbnSRNotificationGroup2 }

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRStorageGroup2
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        GROUP rbnSRSystemGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting system information."

::= { rbnSRMIBCompliances 3 }


rbnSRMIBCompliance4 MODULE-COMPLIANCE
        STATUS     deprecated 
        DESCRIPTION
                "The requirements for conformance to the Redback System
                Resources MIB."
        MODULE -- this module
            MANDATORY-GROUPS {
                rbnSRProcessNotifyGroup,
                rbnSRNotificationGroup2 }

        OBJECT      rbnSRProcessEventNotifyEnable
        MIN-ACCESS  read-only
        DESCRIPTION
                "Write access is not required."

        GROUP rbnSRStorageGroup2
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting storage utilization."

        GROUP rbnSRSystemGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting system information."

        GROUP rbnSRPowerExceededGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting chassis power exceeding limit information."

        GROUP rbnSRPowerNotifyGroup
        DESCRIPTION
                "Implementation of this group is mandatory for devices that
                are capable of reporting chassis power exceeding limit information."

        ::= { rbnSRMIBCompliances 4 }

-- Deprecated Definitions - Groups

rbnSRStorageGroup OBJECT-GROUP
        OBJECTS { rbnSRStorageDescr,
                  rbnSRStorageMedia,
                  rbnSRStorageRemovable,
                  rbnSRStorageSize,
                  rbnSRStorageUtilization }
        STATUS      deprecated
        DESCRIPTION
                "The System Resources Storage Group.

                Replaced by rbnSRStorageGroup2."
        ::= { rbnSRMIBGroups 2 }

rbnSRProcessEventNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnSRProcessEvent }
        STATUS      obsolete
        DESCRIPTION
                "A collection of notifications that may be implemented
                for managing the system process.

                Replaced by rbnSRNotificationGroup."
        ::= { rbnSRMIBGroups 3 }

rbnSRNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS { rbnSRProcessEvent,
                        rbnSRSwitchoverEvent
	              }
        STATUS      deprecated
        DESCRIPTION
                "A collection of notifications that are implemented
                for managing the system processes.

                Replaced by rbnSRNotificationGroup2."
        ::= { rbnSRMIBGroups 4 }

END
