-- ==================================================================
-- Copyright (C) 2005 by H3C TECHNOLOGIES. All rights reserved.
--
-- Description: H3C L2VPN PWE3(Pseudo Wire Emulation Edge-to-Edge) MIB
-- Reference:
-- Version: V1.0
-- History:
-- V1.0 2007-03-31 Created by Lixufu ID: 05023
-- ==================================================================
HH3C-L2VPN-PWE3-MIB DEFINITIONS ::= BEGIN

IMPORTS
        hh3cCommon
    FROM HH3C-OID-MIB
        IpAddress, Integer32, Unsigned32, OBJECT-TYPE, MODULE-IDENTITY, 
        NOTIFICATION-TYPE
    FROM SNMPv2-SMI
        TruthValue, RowStatus, TEXTUAL-CONVENTION
    FROM SNMPv2-TC;

hh3cL2VpnPwe3 MODULE-IDENTITY
    LAST-UPDATED "200703310000Z"       -- March 31, 2007 at 00:00 GMT
    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 contains objects to manage PWE3."
    ::= { hh3cCommon 78 }

Hh3cL2VpnVcEncapsType ::=  TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "An indication of the L2Vpn's VC encapsulation type:
        Frame Relay DLCI ( Martini Mode ) (1)
        ATM AAL5 SDU VCC transport (2)
        ATM transparent cell transport (3)
        Ethernet Tagged Mode (4)
        Ethernet (5)
        HDLC (6)
        PPP (7)
        SONET/SDH Circuit Emulation Service Over MPLS (CEM) (8)
        ATM n-to-one VCC cell transport (9)
        ATM n-to-one VPC cell transport (10)
        IP Layer2 Transport (11)
        ATM one-to-one VCC Cell Mode (12)
        ATM one-to-one VPC Cell Mode (13)
        ATM AAL5 PDU VCC transport (14)
        Frame-Relay Port mode (15)
        SONET/SDH Circuit Emulation over Packet (CEP) (16)
        Structure-agnostic E1 over Packet (SAE1oP)  (17)
        Structure-agnostic T1 (DS1) over Packet (SAT1oP)  (18)
        Structure-agnostic E3 over Packet (SAE3oP) (19)
        Structure-agnostic T3 (DS3) over Packet (SAT3oP) (20)
        CESoPSN basic mode (21)
        TDMoIP basic mode (22)
        CESoPSN TDM with CAS (23)
        TDMoIP TDM with CAS (24)
        Frame Relay DLCI (25)
        IP-interworking (64)
        unknown (255)
        "
    SYNTAX      INTEGER
        {
            frameRelayDlciMartini(1),
            atmAal5SduVccTransport(2),
            atmTransparentCellTransport(3),
            ethernetTagged(4),
            ethernet(5),
            hdlc(6),
            ppp(7),
            cem(8),
            atmN2OneVccCellTransport(9),
            atmN2OneVpcCellTransport(10),
            ipLayer2Transport(11),
            atmOne2OneVccCellMode(12),
            atmOne2OneVpcCellMode(13),
            atmAal5PduVccTransport(14),
            frameRelayPortMode(15),
            cep(16),
            saE1oP(17),
            saT1oP(18),
            saE3oP(19),
            saT3oP(20),
            cESoPsnBasicMode(21),
            tDMoIPbasicMode(22),
            l2VpnCESoPSNTDMwithCAS(23),
            l2VpnTDMoIPTDMwithCAS(24),
            frameRelayDlci(25),
            ipInterworking(64),
            unknown(255)
        }

-- ==================================================================
--
-- ======================= definition begin =========================
--
-- ==================================================================
hh3cL2VpnPwe3ScalarGroup OBJECT IDENTIFIER ::= { hh3cL2VpnPwe3 1 }

hh3cPwVcTrapOpen OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Whether pwe3 trap is globally enabled.
        false: disable;
        true: enable."
    DEFVAL  { false }
    ::= { hh3cL2VpnPwe3ScalarGroup 1 }

hh3cL2VpnPwe3Table OBJECT IDENTIFIER ::= { hh3cL2VpnPwe3 2 }

hh3cPwVcTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF Hh3cPwVcEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table is the VC configuration table. Users
        can create or delete a VC by it."
    ::= { hh3cL2VpnPwe3Table 1 }

hh3cPwVcEntry OBJECT-TYPE
    SYNTAX      Hh3cPwVcEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Provides the information of a VC entry."
    INDEX
        {
            hh3cPwVcIndex
        }
    ::= { hh3cPwVcTable 1 }

Hh3cPwVcEntry ::= SEQUENCE
    {
        hh3cPwVcIndex            Integer32,
        hh3cPwVcID               Unsigned32,
        hh3cPwVcType             Hh3cL2VpnVcEncapsType,
        hh3cPwVcPeerAddr         IpAddress,
        hh3cPwVcMtu              Unsigned32,
        hh3cPwVcCfgType           INTEGER,
        hh3cPwVcInboundLabel     Unsigned32,
        hh3cPwVcOutboundLabel    Unsigned32,
        hh3cPwVcIfIndex          Unsigned32,
        hh3cPwVcAcStatus         INTEGER,
        hh3cPwVcStatus           INTEGER,
        hh3cPwVcRowStatus        RowStatus
    }

hh3cPwVcIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index for the conceptual row identifying a PW within
        this PW Emulation table."
    ::= { hh3cPwVcEntry 1 }

hh3cPwVcID OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Used in the outgoing PW ID field within the 'Virtual
        Circuit FEC Element'."
    ::= { hh3cPwVcEntry 2 }

hh3cPwVcType OBJECT-TYPE
    SYNTAX      Hh3cL2VpnVcEncapsType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Indication of the L2Vpn's VC encapsulation type."
    ::= { hh3cPwVcEntry 3 }

hh3cPwVcPeerAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object contain the value of the peer ip address
        of the Martini VLL PW."
    ::= { hh3cPwVcEntry 4 }

hh3cPwVcMtu OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "If not equal zero, the optional Mtu object in the
        signaling protocol will be sent with this value,
        representing the locally supported MTU size over the
        interface (or the virtual interface) associated with the
        PW.
        The default value is 1500."
    ::= { hh3cPwVcEntry 5 }

hh3cPwVcCfgType OBJECT-TYPE
    SYNTAX      INTEGER
        {
            primary(1),
            backup(2),
            multiPort(3)
        }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Indicates the type of the pw:
        1: primary;
        2: backup;
        3: multiPort."
    ::= { hh3cPwVcEntry 6 }

hh3cPwVcInboundLabel OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For Martini VLL, the value will be created by system
        automatically."
    ::= { hh3cPwVcEntry 7 }

hh3cPwVcOutboundLabel OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For Martini VLL, the value will be created by the peer
        automatically."
    ::= { hh3cPwVcEntry 8 }

hh3cPwVcIfIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Index of the interface (or the virtual interface)
        associated with the PW."
    ::= { hh3cPwVcEntry 9 }

hh3cPwVcAcStatus OBJECT-TYPE
    SYNTAX      INTEGER
        {
            down(1),
            up(2)
        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Local AC(Attachment Circuit) status:
        1: down;
        2: up."
    ::= { hh3cPwVcEntry 10 }

hh3cPwVcStatus OBJECT-TYPE
    SYNTAX      INTEGER
        {
            down(1),
            up(2)
        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the status of the PW in the local node.
        1: down;
        2: up."
    ::= { hh3cPwVcEntry 11 }

hh3cPwVcRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation,
        deletion and modification of rows, which support active
        status and CreatAndGo, destroy operation.
        To create a new row, hh3cPwVcID, hh3cPwVcType, hh3cPwVcPeerAddr
        hh3cPwVcMtu, hh3cPwVcCfgType and hh3cPwVcIfIndex
        must be specified."
    ::= { hh3cPwVcEntry 12 }

hh3cL2VpnPwe3Notifications OBJECT IDENTIFIER ::= { hh3cL2VpnPwe3 3 }

hh3cPwVcSwitchWtoP NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr,
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification is generated when switch from working
        pw to protect pw happens. The first group of
        hh3cPwVcID/hh3cPwVcType/hh3cPwVcPeerAddr is parameter of the work PW , and
        the second group of hh3cPwVcID/hh3cPwVcType/hh3cPwVcPeerAddr is parameter
        of the protect PW."
    ::= { hh3cL2VpnPwe3Notifications 1 }

hh3cPwVcSwitchPtoW NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr,
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification is generated when switch from protect
        pw to working pw happens. The first group of
        hh3cPwVcID/h3cPwVcTypehh3cPwVcPeerAddr is parameter of the protect PW , and
        the second group of hh3cPwVcID/hh3cPwVcType/hh3cPwVcPeerAddr is parameter
        of the work PW."
    ::= { hh3cL2VpnPwe3Notifications 2 }

hh3cPwVcDown NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC's state changes to down."
    ::= { hh3cL2VpnPwe3Notifications 3 }

hh3cPwVcUp NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC's state changes to up."
    ::= { hh3cL2VpnPwe3Notifications 4 }

hh3cPwVcDeleted NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cPwVcID,
            hh3cPwVcType,
            hh3cPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC is deleted."
    ::= { hh3cL2VpnPwe3Notifications 5 }

END
