-- =================================================================
-- Copyright (c) 2004-2015 Hangzhou H3C Tech. Co., Ltd.  All rights reserved.
-- Description: Ipran Data Communication Network(DCN) MIB.
-- Reference:
-- Version:     V1.1
-- V1.0  2011-09-30 The initial version, created by Longgang
--       2014-03-10 updated by wangguanglun
--       Changed the format
-- V1.1  2015-01-27 updated by fengxiaodong
--       Added h3cIpRanDcnMAC and h3cIpRanDcnVendor nodes to h3cIpRanDcnInfoObject
--       Added h3cIpRanDcnNeInfoMAC and h3cIpRanDcnNeInfoVendor nodes to h3cIpRanDcnNeInfoTable
-- ==================================================================
H3C-IPRAN-DCN-MIB DEFINITIONS ::= BEGIN

IMPORTS
    h3cCommon
        FROM HUAWEI-3COM-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;

h3cIpRanDcn MODULE-IDENTITY
    LAST-UPDATED "201501300000Z"
    ORGANIZATION
        "Hangzhou H3C Tech. Co., Ltd."
    CONTACT-INFO
        "Platform Team Hangzhou H3C Tech. Co., Ltd.
        Hai-Dian District Beijing P.R. China
        http://www.h3c.com
        Zip:100085
        "
    DESCRIPTION
        "This MIB provides mechanisms to monitor all network elements(NE)
        in Ipran Data Communication Network."
    REVISION "201501300000Z"
    DESCRIPTION
        "Add nodes to h3cIpRanDcnInfoObject and h3cIpRanDcnNeInfoTable."
    REVISION "201307240000Z"
    DESCRIPTION
        "The initial revision of this MIB module."
    ::= { h3cCommon 152 }

H3cIpRanNeId ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "1d.1d.1d.1d"
    STATUS current
    DESCRIPTION
        "Uniquely identifies the network entity ID.
        The first 8 bits are 0 and the total number of valid bits is 24.
        The high 8 bits represent the subnet number and the low 16 bits represent the base ID.
        The IpRanNeId will be shown as 0.x.x.x."
    SYNTAX OCTET STRING (SIZE (4))

h3cIpRanDcnMIB OBJECT IDENTIFIER ::= { h3cIpRanDcn 1 }

h3cIpRanDcnObjects OBJECT IDENTIFIER ::= { h3cIpRanDcnMIB 1 }

h3cIpRanDcnInfoObject OBJECT IDENTIFIER ::= { h3cIpRanDcnObjects 1 }
h3cIpRanDcnNeId OBJECT-TYPE
    SYNTAX      H3cIpRanNeId
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object indicates the ID of the local network element."
    ::= { h3cIpRanDcnInfoObject 1 }

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

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

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

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

h3cIpRanDcnVendor OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Company name."
::= { h3cIpRanDcnInfoObject 6 }

h3cIpRanDcnNeInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cIpRanDcnNeInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table provides information about all network elements online."
    ::= { h3cIpRanDcnObjects 2 }

h3cIpRanDcnNeInfoEntry OBJECT-TYPE
    SYNTAX      H3cIpRanDcnNeInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A single network element information entry."
    INDEX { h3cIpRanDcnNeInfoNeId }
    ::= { h3cIpRanDcnNeInfoTable 1 }

H3cIpRanDcnNeInfoEntry ::=
    SEQUENCE
        {
            h3cIpRanDcnNeInfoNeId         H3cIpRanNeId,
            h3cIpRanDcnNeInfoNeIpType     InetAddressType,
            h3cIpRanDcnNeInfoNeIp         InetAddress,
            h3cIpRanDcnNeInfoMetric       Integer32,
            h3cIpRanDcnNeInfoDeviceType   DisplayString,
            h3cIpRanDcnNeInfoMAC          MacAddress,
            h3cIpRanDcnNeInfoVendor       DisplayString
        }

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

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

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

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

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

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

h3cIpRanDcnNeInfoVendor OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Company name."
    ::= { h3cIpRanDcnNeInfoEntry 7 }

h3cIpRanDcnTrapObjects OBJECT IDENTIFIER ::= { h3cIpRanDcnMIB 2 }

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

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

h3cIpRanDcnCompanyName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Company name."
    ::= { h3cIpRanDcnTrapObjects 3 }

h3cIpRanDcnDeviceType OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Device type."
    ::= { h3cIpRanDcnTrapObjects 4 }

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

h3cIpRanDcnTraps OBJECT IDENTIFIER ::= { h3cIpRanDcnMIB 3 }
h3cIpRanDcnTrapsPrefix OBJECT IDENTIFIER ::= { h3cIpRanDcnTraps 0 }

h3cIpRanDcnNeOnline NOTIFICATION-TYPE
    OBJECTS
        {
            h3cIpRanDcnNeInfoNeId,
            h3cIpRanDcnNeInfoNeIpType,
            h3cIpRanDcnNeInfoNeIp,
            h3cIpRanDcnCompanyName,
            h3cIpRanDcnDeviceType,
            h3cIpRanDcnDeviceMac
        }
    STATUS current
    DESCRIPTION
        "The trap is generated when a new network element is online."
    ::= { h3cIpRanDcnTrapsPrefix 1 }

h3cIpRanDcnNeOffline NOTIFICATION-TYPE
    OBJECTS
        {
            h3cIpRanDcnNeInfoNeId,
            h3cIpRanDcnNeInfoNeIpType,
            h3cIpRanDcnNeInfoNeIp
        }
    STATUS current
    DESCRIPTION
        "The trap is generated when a network element is offline."
    ::= { h3cIpRanDcnTrapsPrefix 2 }

END
