-- ==================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: L2VPN PWE3(Pseudo Wire Emulation Edge-to-Edge) MIB
-- Reference:
-- Version: V1.0
-- History:
-- V1.0 2007-03-31 Created by Lixufu ID: 05023
-- ==================================================================
HPN-ICF-L2VPN-PWE3-MIB DEFINITIONS ::= BEGIN

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

hpnicfL2VpnPwe3 MODULE-IDENTITY
    LAST-UPDATED "200703310000Z"       -- March 31, 2007 at 00:00 GMT
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "This MIB contains objects to manage PWE3."
    ::= { hpnicfCommon 78 }

HpnicfL2VpnVcEncapsType ::=  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 =========================
--
-- ==================================================================
hpnicfL2VpnPwe3ScalarGroup OBJECT IDENTIFIER ::= { hpnicfL2VpnPwe3 1 }

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

hpnicfL2VpnPwe3Table OBJECT IDENTIFIER ::= { hpnicfL2VpnPwe3 2 }

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

hpnicfPwVcEntry OBJECT-TYPE
    SYNTAX      HpnicfPwVcEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Provides the information of a VC entry."
    INDEX
        {
            hpnicfPwVcIndex
        }
    ::= { hpnicfPwVcTable 1 }

HpnicfPwVcEntry ::= SEQUENCE
    {
        hpnicfPwVcIndex            Integer32,
        hpnicfPwVcID               Unsigned32,
        hpnicfPwVcType             HpnicfL2VpnVcEncapsType,
        hpnicfPwVcPeerAddr         IpAddress,
        hpnicfPwVcMtu              Unsigned32,
        hpnicfPwVcCfgType           INTEGER,
        hpnicfPwVcInboundLabel     Unsigned32,
        hpnicfPwVcOutboundLabel    Unsigned32,
        hpnicfPwVcIfIndex          Unsigned32,
        hpnicfPwVcAcStatus         INTEGER,
        hpnicfPwVcStatus           INTEGER,
        hpnicfPwVcRowStatus        RowStatus
    }

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

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

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

hpnicfPwVcPeerAddr 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."
    ::= { hpnicfPwVcEntry 4 }

hpnicfPwVcMtu 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."
    ::= { hpnicfPwVcEntry 5 }

hpnicfPwVcCfgType 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."
    ::= { hpnicfPwVcEntry 6 }

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

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

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

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

hpnicfPwVcStatus 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."
    ::= { hpnicfPwVcEntry 11 }

hpnicfPwVcRowStatus 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, hpnicfPwVcID, hpnicfPwVcType, hpnicfPwVcPeerAddr
        hpnicfPwVcMtu, hpnicfPwVcCfgType and hpnicfPwVcIfIndex
        must be specified."
    ::= { hpnicfPwVcEntry 12 }

hpnicfL2VpnPwe3Notifications OBJECT IDENTIFIER ::= { hpnicfL2VpnPwe3 3 }

hpnicfPwVcSwitchWtoP NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr,
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification is generated when switch from working
        pw to protect pw happens. The first group of
        hpnicfPwVcID/hpnicfPwVcType/hpnicfPwVcPeerAddr is parameter of the work PW , and
        the second group of hpnicfPwVcID/hpnicfPwVcType/hpnicfPwVcPeerAddr is parameter
        of the protect PW."
    ::= { hpnicfL2VpnPwe3Notifications 1 }

hpnicfPwVcSwitchPtoW NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr,
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification is generated when switch from protect
        pw to working pw happens. The first group of
        hpnicfPwVcID/hpnicfPwVcTypehpnicfPwVcPeerAddr is parameter of the protect PW , and
        the second group of hpnicfPwVcID/hpnicfPwVcType/hpnicfPwVcPeerAddr is parameter
        of the work PW."
    ::= { hpnicfL2VpnPwe3Notifications 2 }

hpnicfPwVcDown NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC's state changes to down."
    ::= { hpnicfL2VpnPwe3Notifications 3 }

hpnicfPwVcUp NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC's state changes to up."
    ::= { hpnicfL2VpnPwe3Notifications 4 }

hpnicfPwVcDeleted NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPwVcID,
            hpnicfPwVcType,
            hpnicfPwVcPeerAddr
        }
    STATUS      current
    DESCRIPTION
        "This notification indicates the VC is deleted."
    ::= { hpnicfL2VpnPwe3Notifications 5 }

END
