-- =================================================================
-- Copyright (c) 2010-2014 Hewlett-Packard Development Company, L.P.
-- Description: Ipran Data Communication Network(DCN) MIB.
-- Reference:
-- Version:     V1.0
-- V1.0  2011-09-30 The initial version, created by Longgang
--       2014-03-10 updated by wangguanglun
--       Changed the format
-- ==================================================================
HPN-ICF-IPRAN-DCN-MIB DEFINITIONS ::= BEGIN

IMPORTS
    hpnicfCommon
        FROM HPN-ICF-OID-MIB
    Integer32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE
        FROM SNMPv2-SMI
    InetAddressType, InetAddress
        FROM INET-ADDRESS-MIB
    TEXTUAL-CONVENTION,  DisplayString, MacAddress
        FROM SNMPv2-TC;

hpnicfIpRanDcn MODULE-IDENTITY
    LAST-UPDATED "201307240000Z"
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "This MIB provides mechanisms to monitor all network elements(NE)
        in Ipran Data Communication Network."
    REVISION "201307240000Z"
    DESCRIPTION
        "The initial revision of this MIB module."
    ::= { hpnicfCommon 152 }

HpnicfIpRanNeId ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "1d.1d.1d.1d"
    STATUS current
    DESCRIPTION
        "Uniquely identify the network entity ID.
        The first 8 bit is 0 and the total valid length is 24 bit.
        The high 8 bit is subnet number and the low 16 bit is base id.
        The IpRanNeId will be showed as 0.x.x.x."
    SYNTAX OCTET STRING (SIZE (4))

hpnicfIpRanDcnMIB OBJECT IDENTIFIER ::= { hpnicfIpRanDcn 1 }

hpnicfIpRanDcnObjects OBJECT IDENTIFIER ::= { hpnicfIpRanDcnMIB 1 }

hpnicfIpRanDcnInfoObject OBJECT IDENTIFIER ::= { hpnicfIpRanDcnObjects 1 }
hpnicfIpRanDcnNeId OBJECT-TYPE
    SYNTAX      HpnicfIpRanNeId
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object indicates the ID of the local network element."
    ::= { hpnicfIpRanDcnInfoObject 1 }

hpnicfIpRanDcnNeIpType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the ip address type of the local network element."
    ::= { hpnicfIpRanDcnInfoObject 2 }

hpnicfIpRanDcnNeIp OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the ip address of the local network element."
    ::= { hpnicfIpRanDcnInfoObject 3 }

hpnicfIpRanDcnMask OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the ip address mask of the local network element."
    ::= { hpnicfIpRanDcnInfoObject 4 }

hpnicfIpRanDcnNeInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF HpnicfIpRanDcnNeInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table provides the information of all network elements online."
    ::= { hpnicfIpRanDcnObjects 2 }

hpnicfIpRanDcnNeInfoEntry OBJECT-TYPE
    SYNTAX      HpnicfIpRanDcnNeInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A single network element information entry."
    INDEX { hpnicfIpRanDcnNeInfoNeId }
    ::= { hpnicfIpRanDcnNeInfoTable 1 }

HpnicfIpRanDcnNeInfoEntry ::=
    SEQUENCE
        {
            hpnicfIpRanDcnNeInfoNeId         HpnicfIpRanNeId,
            hpnicfIpRanDcnNeInfoNeIpType     InetAddressType,
            hpnicfIpRanDcnNeInfoNeIp         InetAddress,
            hpnicfIpRanDcnNeInfoMetric       Integer32,
            hpnicfIpRanDcnNeInfoDeviceType   DisplayString
        }

hpnicfIpRanDcnNeInfoNeId OBJECT-TYPE
    SYNTAX      HpnicfIpRanNeId
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the network element ID uniquely identifying
        one network element in the routing domain."
    ::= { hpnicfIpRanDcnNeInfoEntry 1 }

hpnicfIpRanDcnNeInfoNeIpType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the ip address type of the network element."
    ::= { hpnicfIpRanDcnNeInfoEntry 2 }

hpnicfIpRanDcnNeInfoNeIp OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the ip address of the network element."
    ::= { hpnicfIpRanDcnNeInfoEntry 3 }

hpnicfIpRanDcnNeInfoMetric OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The metric from the local network element to the remote
        network element."
    ::= { hpnicfIpRanDcnNeInfoEntry 4 }

hpnicfIpRanDcnNeInfoDeviceType OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is the device type of the network element."
    ::= { hpnicfIpRanDcnNeInfoEntry 5 }

hpnicfIpRanDcnTrapObjects OBJECT IDENTIFIER ::= { hpnicfIpRanDcnMIB 2 }

hpnicfIpRanDcnNeNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The overall number of network elements online."
    ::= { hpnicfIpRanDcnTrapObjects 1 }

hpnicfIpRanDcnNeChangeMode OBJECT-TYPE
    SYNTAX  INTEGER
        {
            online (1),
            offline (2)
        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The change mode of the last trap."
    ::= { hpnicfIpRanDcnTrapObjects 2 }

hpnicfIpRanDcnCompanyName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name of company."
    ::= { hpnicfIpRanDcnTrapObjects 3 }

hpnicfIpRanDcnDeviceType OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The type of device."
    ::= { hpnicfIpRanDcnTrapObjects 4 }

hpnicfIpRanDcnDeviceMac OBJECT-TYPE
    SYNTAX MacAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
       "The bridge MAC address of the network element."
    ::= { hpnicfIpRanDcnTrapObjects 5 }

hpnicfIpRanDcnTraps OBJECT IDENTIFIER ::= { hpnicfIpRanDcnMIB 3 }
hpnicfIpRanDcnTrapsPrefix OBJECT IDENTIFIER ::= { hpnicfIpRanDcnTraps 0 }

hpnicfIpRanDcnNeOnline NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfIpRanDcnNeInfoNeId,
            hpnicfIpRanDcnNeInfoNeIpType,
            hpnicfIpRanDcnNeInfoNeIp,
            hpnicfIpRanDcnCompanyName,
            hpnicfIpRanDcnDeviceType,
            hpnicfIpRanDcnDeviceMac
        }
    STATUS current
    DESCRIPTION
        "The trap is generated when a new network element is online."
    ::= { hpnicfIpRanDcnTrapsPrefix 1 }

hpnicfIpRanDcnNeOffline NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfIpRanDcnNeInfoNeId,
            hpnicfIpRanDcnNeInfoNeIpType,
            hpnicfIpRanDcnNeInfoNeIp
        }
    STATUS current
    DESCRIPTION
        "The trap is generated when a network element is offline."
    ::= { hpnicfIpRanDcnTrapsPrefix 2 }

END
