F10-ISIS-MIB DEFINITIONS ::= BEGIN
--  This MIB contains tables used to configure a Dell Networking OS switch
--  running ISIS in addition to the standard MIB.
--
--  This module will be extended, as needed.
--

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    NOTIFICATION-TYPE, 
    Unsigned32       FROM SNMPv2-SMI
    NOTIFICATION-GROUP, MODULE-COMPLIANCE,
    OBJECT-GROUP     FROM SNMPv2-CONF
    TEXTUAL-CONVENTION,
    TruthValue       FROM SNMPv2-TC                   
    f10Mgmt
          FROM FORCE10-SMI;

f10IsisMib MODULE-IDENTITY
    LAST-UPDATED "201107010000Z"  -- Jul 01, 2011
    ORGANIZATION
        "Dell Inc"
    CONTACT-INFO
        "http://www.force10networks.com/support"

    DESCRIPTION
        " The proprietary MIB module for Dell Networking OS ISIS. "

    REVISION "201107010000Z"     -- Jul 01, 2011
    DESCRIPTION
        "MIB Overload support Dell Networking OS ISIS module"

::=  { f10Mgmt 18 }

-- ------------------------------------------------------------
-- Textual conventions
-- ------------------------------------------------------------

F10IsisISLevel ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "Identifies a level."
    SYNTAX INTEGER
    {
        area(1), -- L1
        domain(2) -- L2
    }

-- ------------------------------------------------------------
-- Top-level structure of the MIB
-- ------------------------------------------------------------

f10IsisNotifications OBJECT IDENTIFIER ::= { f10IsisMib 0 }
f10IsisObjects       OBJECT IDENTIFIER ::= { f10IsisMib 1 }
f10IsisConformance   OBJECT IDENTIFIER ::= { f10IsisMib 2 }

-- ------------------------------------------------------------
-- Overload Behaviour
-- ------------------------------------------------------------

f10IsisSysOloadSetOverload OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Administratively set the overload bit for both levels.
        The overload bit MUST continue to be set if the
        implementation runs out of memory, independent of
        this variable."

    DEFVAL { false }
::= { f10IsisObjects 1 }

f10IsisSysOloadSetOloadOnStartupUntil OBJECT-TYPE
    SYNTAX Unsigned32 (5..86400)
    UNITS "Seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
	 "If this object is within the range of 5 to 86400, the overload bit is set 
	 for both levels when isis is enabled for next startup. The overload bit
	 remains set for seconds.f10IsisSysOloadSetOloadOnStartupUntil.
	 When f10IsisSysOloadSetOloadOnStartupUntil seconds have elapsed,the overload flag 
	 remains set if the implementation has run out of memory. Else, the system clears the 
	 overload bit. In addition to the value limits, a value of zero 
	 removes the config so that it will not be effected in the next startup."

    DEFVAL { 600 }
::= { f10IsisObjects 2 }

f10IsisSysOloadWaitForBgp OBJECT-TYPE
    SYNTAX Unsigned32 (5..86400)
    UNITS "Seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "If this object is within the range of 5 to 86400, the overload bit is set 
        for both levels when isis is enabled for next startup. The overload bit
        remains set until BGP has converged or for seconds.f10IsisSysOloadWaitForBgp, whichever
        occurs first. A value of zero removes the config so that it will not be effected for the 
        next startup."
    DEFVAL { 600 }
::= { f10IsisObjects 3 }

f10IsisSysOloadV6SetOverload OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Administratively set the overload bit for both levels.
        The overload bit MUST continue to be set if the
        implementation runs out of memory, independent of
        this variable."

    DEFVAL { false }
::= { f10IsisObjects 4 }

f10IsisSysOloadV6SetOloadOnStartupUntil OBJECT-TYPE
    SYNTAX Unsigned32 (5..86400)
    UNITS "Seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "If this object is within the range of 5 to 86400, the overload bit is set 
        for both levels for IPV6 when isis is enabled for next startup. The overload bit
        remains set for  seconds.f10IsisSysOloadV6SetOloadOnStartupUntil.
        When f10IsisSysOloadV6SetOloadOnStartupUntil seconds have elapsed,
        the overload flag remains set if the implementation has run out of memory. 
        Else, the system clears the overload bit. A value of zero removes the config 
        so that it will not be effected in the next startup."
    DEFVAL { 600 }
::= { f10IsisObjects 5 }

f10IsisSysOloadV6WaitForBgp OBJECT-TYPE
    SYNTAX Unsigned32 (5..86400)
    UNITS "Seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "If this object is within the range of 5 to 86400, the overload bit is set 
        for both levels when isis is enabled for next startup. The overload bit
        remains set until BGP has converged for both IPV4 and IPV6 neighbours or 
        for seconds.f10IsisSysOloadV6WaitForBgp, whichever occurs first. A value of zero
        removes the config so that it will not be effected for the next startup."
    DEFVAL { 600 }
::= { f10IsisObjects 6 }

-- ------------------------------------------------------------
-- Attributes associated with one area or domain
-- ------------------------------------------------------------

f10IsisSysLevelTable OBJECT-TYPE
    SYNTAX SEQUENCE OF F10IsisSysLevelEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Level specific information about the System."
::= { f10IsisObjects 7 }

f10IsisSysLevelEntry OBJECT-TYPE
    SYNTAX F10IsisSysLevelEntry        
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Each row describes variables configured for Area or Domain.
        Configured values MUST survive an agent reboot."
    INDEX { f10IsisSysLevelIndex }
::= { f10IsisSysLevelTable 1 } 

F10IsisSysLevelEntry ::=
    SEQUENCE {
        f10IsisSysLevelIndex
            F10IsisISLevel,
        f10IsisSysLevelOverloadState
            TruthValue,
        f10IsisSysLevelV6OverloadState
            TruthValue
    }

f10IsisSysLevelIndex OBJECT-TYPE
    SYNTAX F10IsisISLevel
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The level that this entry describes."
::= { f10IsisSysLevelEntry 1 }

f10IsisSysLevelOverloadState OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Overload state of the database at this level.
         If the value is true, it indicates a database that is
         low on an essential resource, such as memory.
         The administrator may indirectly force the state to
         overloaded by setting the object f10IsisSysOloadSetOverload.
         If the state is overloaded, we
         originate LSPs with the Overload bit set."
::= { f10IsisSysLevelEntry 2 }

f10IsisSysLevelV6OverloadState OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Overload state of the IPV6 database at this level.
         If the value is true, it indicates a database that is
         low on an essential resource, such as memory.
         The administrator may indirectly force the state to
         overloaded by setting the object f10IsisSysOloadV6SetOverload.
         If the state is overloaded, we
         originate LSPs with the Overload bit set."
::= { f10IsisSysLevelEntry 3 }

-- ------------------------------------------------------------
-- Adjacency Traps
-- ------------------------------------------------------------

f10IsisAdjChanges NOTIFICATION-TYPE
    STATUS current
    DESCRIPTION
        "This notification is generated when adjacency related
        changes take place"
::= {f10IsisNotifications 1}    

-- ------------------------------------------------------------
-- Agent Conformance Definitions
-- ------------------------------------------------------------

f10IsisGroups      OBJECT IDENTIFIER ::= { f10IsisConformance 1 }
f10IsisCompliances OBJECT IDENTIFIER ::= { f10IsisConformance 2 }

-- ------------------------------------------------------------
-- compliance statements
-- ------------------------------------------------------------

f10IsisCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "The compliance statement for agents that support
        the IS-IS MIB"

    MODULE
        MANDATORY-GROUPS {
            f10IsisSystemGroup,
            f10IsisNotificationGroup
        }
::= { f10IsisCompliances 1 }

-- ------------------------------------------------------------
-- MIB Grouping
-- ------------------------------------------------------------

f10IsisSystemGroup OBJECT-GROUP
    OBJECTS {
        f10IsisSysOloadSetOverload,
        f10IsisSysOloadSetOloadOnStartupUntil,
        f10IsisSysOloadWaitForBgp,
        f10IsisSysOloadV6SetOverload,
        f10IsisSysOloadV6SetOloadOnStartupUntil,
        f10IsisSysLevelOverloadState,
        f10IsisSysLevelV6OverloadState,
        f10IsisSysOloadV6WaitForBgp
    }
    STATUS current
    DESCRIPTION
        "The collection of objects used to manage an
        IS-IS router."
::= { f10IsisGroups 1 }

f10IsisNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS {
        f10IsisAdjChanges
    }
    STATUS current
    DESCRIPTION
        "The collections of notifications sent by an IS."
::= { f10IsisGroups 2 }    

END
