-- ====================================================================
-- Copyright (c) 2004-2017 Hangzhou H3C Tech. Co., Ltd.  All rights reserved.
--
-- Description: The MIB is designed to get IPsec tunnels' statistic information.
-- Reference:
-- Version: 1.1
-- History:
--   V1.0: The initial version created by Wanghaisheng and Weiyanheng.
--   V1.1: 2017-10-31 Added h3cIPsecTunnelStatByDescripV2Table,h3cIPsecConnectionStopV2,
--         h3cIPsecConnectionStartV2,h3cIPsecConnectionStopCntlV2 and
--         h3cIPsecConnectionStartCntlV2 by shihaohao
-- =====================================================================
H3C-IPSEC-MONITOR-V2-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        ifIndex
            FROM RFC1213-MIB
        InterfaceIndex
            FROM IF-MIB
        DisplayString, TEXTUAL-CONVENTION, TruthValue
            FROM SNMPv2-TC
        Integer32, Counter32, Counter64, OBJECT-TYPE,
        MODULE-IDENTITY, Gauge32, NOTIFICATION-TYPE, Unsigned32
            FROM SNMPv2-SMI
        InetAddressType, InetAddress
            FROM INET-ADDRESS-MIB
        MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
            FROM SNMPv2-CONF
        h3cCommon
            FROM HUAWEI-3COM-OID-MIB;

    h3cIPsecMonitorV2 MODULE-IDENTITY
        LAST-UPDATED "201710311650Z"
        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
            "The MIB is designed to get statistic information of IPsec tunnels.
             With this MIB, we can get information of a certain tunnel or all
             tunnels."
         REVISION "201710311650Z"
         DESCRIPTION
            "Add the objects of h3cIPsecTunnelStatByDescripV2Table,h3cIPsecConnectionStopV2,
            h3cIPsecConnectionStartV2,h3cIPsecConnectionStopCntlV2 and
            h3cIPsecConnectionStartCntlV2."
        REVISION
            "201206270000Z"
        DESCRIPTION
            "Initial version."
        ::= { h3cCommon 126 }

    H3cIPsecDiffHellmanGrpV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The Diffie Hellman Group used in the IKE and IPsec negotiations.
             invalidGroup(2147483647) is defined as invalid value."
        SYNTAX INTEGER {
            none(0),
            dhGroup1(1),
            dhGroup2(2),
            dhGroup5(5),
            dhGroup14(14),
            dhGroup24(24),
            invalidGroup(2147483647)
        }

    H3cIPsecEncapModeV2        ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The encapsulation mode used by an IPsec Phase-2 Tunnel.
             invalidMode(2147483647) is defined as invalid value."
        SYNTAX INTEGER {
            tunnel(1),
            transport(2),
            invalidMode(2147483647)
        }

    H3cIPsecEncryptAlgoV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The encryption algorithm used in the IKE and IPsec negotiations.
             invalidAlg(2147483647) is defined as invalid value."
        SYNTAX INTEGER {
            none(0),
            desCbc(1),
            ideaCbc(2),
            blowfishCbc(3),
            rc5R16B64Cbc(4),
            tripleDesCbc(5),
            castCbc(6),
            aesCbc(7),
            nsaCbc(8),
            aesCbc128(9),
            aesCbc192(10),
            aesCbc256(11),
            aesCtr(12),
            aesCamelliaCbc(13),
            rc4(14),
            invalidAlg(2147483647)
        }

    H3cIPsecAuthAlgoV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The authentication algorithm used in the IKE negotiations.
             invalidAlg(2147483647) is defined as invalid value."
        SYNTAX INTEGER {
            none(0),
            md5(1),
            sha1(2),
            sha256(3),
            sha384(4),
            sha512(5),
            invalidAlg(2147483647)
        }

    H3cIPsecSaProtocolV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The protocol of security association."
        SYNTAX INTEGER {
            reserved(0),
            ah(2),
            esp(3),
            ipcomp(4)
        }

    H3cIPsecIDTypeV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The type of IPsec Identity."
        SYNTAX INTEGER {
            reserved(0),
            ipv4Addr(1),
            fqdn(2),         -- fully-qualified domain name
            userFqdn(3),     -- fully-qualified username
            ipv4AddrSubnet(4),
            ipv6Addr(5),
            ipv6AddrSubnet(6),
            ipv4AddrRange(7),
            ipv6AddrRange(8),
            derAsn1Dn(9),    -- the binary DER encoding of an ASN.1 X.500 Distinguished
                             -- Name [X.501] of the princIPal whose certificates are
                             -- being exchanged to establish the SA.
            derAsn1Gn(10),   -- the binary DER encoding of an ASN.1 X.500 GeneralName
                             -- [X.509] of the princIPal whose certificates are being
                             -- exchanged to establish the SA.
            keyId(11)        -- specifies an opaque byte stream which may be used to
                             -- pass vendor-specific information necessary to identify
                             -- which pre-shared key should be used to authenticate
                             -- Aggressive mode negotiations.
        }

    H3cIPsecTrafficTypeV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The type of the data flow."
        SYNTAX INTEGER {
            ipv4Addr(1),
            ipv4AddrSubnet(4),
            ipv6Addr(5),
            ipv6AddrSubnet(6),
            ipv4AddrRange(7),
            ipv6AddrRange(8)
        }

    H3cIPsecNegoTypeV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The type of key used by an IPsec Phase-2 Tunnel.
            invalidType(2147483647) is defined as invalid value."
        SYNTAX INTEGER {
            ike(1),
            manual(2),
            invalidType(2147483647)
        }

    H3cIPsecTunnelStateV2   ::= TEXTUAL-CONVENTION
        STATUS     current
        DESCRIPTION
            "The state of IPsec tunnel."
        SYNTAX INTEGER {
            active(1),
            timeout(2)
        }

-- ========================================================================
-- Node definitions
-- ========================================================================
-- Begin the node of h3cIPsecObjectsV2.

    h3cIPsecObjectsV2 OBJECT IDENTIFIER ::= { h3cIPsecMonitorV2 1 }

-- =======================================
-- Begin the h3cIPsecScalarObjectsV2.
-- =======================================
    h3cIPsecScalarObjectsV2 OBJECT IDENTIFIER ::= { h3cIPsecObjectsV2 1 }

    h3cIPsecMIBVersion OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Version string of this MIB."
        ::= { h3cIPsecScalarObjectsV2 1 }

-- ===============================================
-- Begin the table of h3cIPsecTunnelV2Table.
-- ===============================================

    h3cIPsecTunnelV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cIPsecTunnelV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The IPsec Phase-2 Tunnel Table.  There is one entry in this
             table for each active IPsec Phase-2 Tunnel."
        ::= { h3cIPsecObjectsV2 2 }

    h3cIPsecTunnelV2Entry OBJECT-TYPE
        SYNTAX H3cIPsecTunnelV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Information about h3cIPsecTunnelV2Table."
        INDEX { h3cIPsecTunIndexV2 }
        ::= { h3cIPsecTunnelV2Table 1 }

    H3cIPsecTunnelV2Entry ::=
        SEQUENCE {
            h3cIPsecTunIndexV2
                Integer32,
            h3cIPsecTunIfIndexV2
                InterfaceIndex,
            h3cIPsecTunIKETunnelIndexV2
                Integer32,
            h3cIPsecTunIKETunLocalIDTypeV2
                H3cIPsecIDTypeV2,
            h3cIPsecTunIKETunLocalIDVal1V2
                DisplayString,
            h3cIPsecTunIKETunLocalIDVal2V2
                DisplayString,
            h3cIPsecTunIKETunRemoteIDTypeV2
                H3cIPsecIDTypeV2,
            h3cIPsecTunIKETunRemoteIDVal1V2
                DisplayString,
            h3cIPsecTunIKETunRemoteIDVal2V2
                DisplayString,
            h3cIPsecTunLocalAddrTypeV2
                InetAddressType,
            h3cIPsecTunLocalAddrV2
                InetAddress,
            h3cIPsecTunRemoteAddrTypeV2
                InetAddressType,
            h3cIPsecTunRemoteAddrV2
                InetAddress,
            h3cIPsecTunKeyTypeV2
                H3cIPsecNegoTypeV2,
            h3cIPsecTunEncapModeV2
                H3cIPsecEncapModeV2,
            h3cIPsecTunInitiatorV2
                INTEGER,
            h3cIPsecTunLifeSizeV2
                Gauge32,
            h3cIPsecTunLifeTimeV2
                Integer32,
            h3cIPsecTunRemainTimeV2
                Integer32,
            h3cIPsecTunActiveTimeV2
                Integer32,
            h3cIPsecTunRemainSizeV2
                Gauge32,
            h3cIPsecTunTotalRefreshesV2
                Counter32,
            h3cIPsecTunCurrentSaInstancesV2
                Gauge32,
            h3cIPsecTunInSaEncryptAlgoV2
                H3cIPsecEncryptAlgoV2,
            h3cIPsecTunInSaAhAuthAlgoV2
                H3cIPsecAuthAlgoV2,
            h3cIPsecTunInSaEspAuthAlgoV2
                H3cIPsecAuthAlgoV2,
            h3cIPsecTunDiffHellmanGrpV2
                H3cIPsecDiffHellmanGrpV2,
            h3cIPsecTunOutSaEncryptAlgoV2
                H3cIPsecEncryptAlgoV2,
            h3cIPsecTunOutSaAhAuthAlgoV2
                H3cIPsecAuthAlgoV2,
            h3cIPsecTunOutSaEspAuthAlgoV2
                H3cIPsecAuthAlgoV2,
            h3cIPsecTunPolicyNameV2
                OCTET STRING,
            h3cIPsecTunPolicyNumV2
                Integer32,
            h3cIPsecTunStatusV2
                INTEGER,
            h3cIPsecTunPolicyDescriptionV2
                OCTET STRING

        }

    h3cIPsecTunIndexV2 OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The index of IPsec Phase-2 Tunnel Table.  The value of
             the index is a number which begins at one and is
             incremented with each tunnel that is created.  The
             value of this object will wrap at 2147483647."
        ::= { h3cIPsecTunnelV2Entry 1 }

    h3cIPsecTunIfIndexV2 OBJECT-TYPE
        SYNTAX InterfaceIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The interface index( the ifIndex of ifTable )."
        ::= { h3cIPsecTunnelV2Entry 2 }

    h3cIPsecTunIKETunnelIndexV2 OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The index of the associated IPsec Phase-1 IKE Tunnel
             (IKETunIndex in the IKETunnelTable).  2147483647 is defined as
             invalid value."
        ::= { h3cIPsecTunnelV2Entry 3 }

    h3cIPsecTunIKETunLocalIDTypeV2 OBJECT-TYPE
        SYNTAX H3cIPsecIDTypeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the local peer identity for the associated IPsec
             Phase-1 IKE Tunnel (IKETunLocalType in the IKETunnelTable)."
        ::= { h3cIPsecTunnelV2Entry 4 }

    h3cIPsecTunIKETunLocalIDVal1V2 OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The value of the local peer identity for the associated IPsec
             Phase-1 IKE Tunnel (IKETunLocalValue1 in the IKETunnelTable).

             If the local peer type is ipv4Addr/ipv6Addr, this is the IP address
             used to identify the local peer.

             If the local peer type is ipv4AddrSubnet/ipv6AddrSubnet, this is
             the subnet address.

             If the local peer type is ipv4AddrRange/ipv6AddrRange, this is
             the beginning IP address of the range.

             If the local peer type is fqdn/userFqdn, this is the host name
             used to identify the local peer.

             If the local peer type is derAsn1Dn, this is the binary DER
             encoding of an ASN.1 X.500 Distinguished Name [X.501] of the
             principal whose certificates are being exchanged to establish
             the SA.

             If the local peer type is derAsn1Gn, this is the binary DER
             encoding of an ASN.1 X.500 GeneralName [X.509] of the principal
             whose certificates are being exchanged to establish the SA.

             If the local peer type is keyId, this is an opaque byte
             stream which may be used to pass vendor-specific information
             necessary to identify which pre-shared key should be used to
             authenticate Aggressive mode negotiations."
        ::= { h3cIPsecTunnelV2Entry 5 }

    h3cIPsecTunIKETunLocalIDVal2V2 OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second specification of the local peer's IP address for the
             associated IPsec Phase-1 IKE Tunnel (IKETunLocalValue2 in the
             IKETunnelTable).

             If the local peer type is ipv4AddrSubnet/ipv6AddrSubnet, this
             is the subnet mask.

             If the local peer type is ipv4AddrRange/ipv6AddrRange, this is
             the ending IP address of the range.

             If the local peer type is others, this is a zero-length string."
        ::= { h3cIPsecTunnelV2Entry 6 }

    h3cIPsecTunIKETunRemoteIDTypeV2 OBJECT-TYPE
        SYNTAX H3cIPsecIDTypeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the remote peer identity for the associated IPsec
             Phase-1 IKE Tunnel (IKETunRemoteType in the IKETunnelTable)."
        ::= { h3cIPsecTunnelV2Entry 7 }

    h3cIPsecTunIKETunRemoteIDVal1V2 OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The value of the remote peer identity for the associated IPsec
             Phase-1 IKE Tunnel (IKETunRemoteValue1 in the IKETunnelTable).

             If the remote peer type is ipv4Addr/ipv6Addr, this is the IP address
             used to identify the remote peer.

             If the remote peer type is ipv4AddrSubnet/ipv6AddrSubnet, this is
             the subnet address.

             If the remote peer type is ipv4AddrRange/ipv6AddrRange, this is
             the beginning IP address of the range.

             If the remote peer type is fqdn/userFqdn, this is the host name
             used to identify the remote peer.

             If the remote peer type is derAsn1Dn, this is the binary DER
             encoding of an ASN.1 X.500 Distinguished Name [X.501] of the
             principal whose certificates are being exchanged to establish
             the SA.

             If the remote peer type is derAsn1Gn, this is the binary DER
             encoding of an ASN.1 X.500 GeneralName [X.509] of the principal
             whose certificates are being exchanged to establish the SA.

             If the remote peer type is keyId, this is an opaque byte
             stream which may be used to pass vendor-specific information
             necessary to identify which pre-shared key should be used to
             authenticate Aggressive mode negotiations."
        ::= { h3cIPsecTunnelV2Entry 8 }

    h3cIPsecTunIKETunRemoteIDVal2V2 OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second specification of the remote peer's IP address for the
             associated IPsec Phase-1 IKE Tunnel(IKETunRemoteValue2 in the
             IKETunnelTable).

             If the remote peer type is ipv4AddrSubnet/ipv6AddrSubnet, this
             is the subnet mask.

             If the remote peer type is ipv4AddrRange/ipv6AddrRange, this is
             the ending IP address of the range.

             If the remote peer type is others, this is a zero-length string."
        ::= { h3cIPsecTunnelV2Entry 9 }

    h3cIPsecTunLocalAddrTypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the IP address for the local peer of the IPsec Phase-2
            Tunnel."
        ::= { h3cIPsecTunnelV2Entry 10 }

    h3cIPsecTunLocalAddrV2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The IP address of the local peer for the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 11 }

    h3cIPsecTunRemoteAddrTypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the IP address for the remote peer of the IPsec Phase-2
             Tunnel."
        ::= { h3cIPsecTunnelV2Entry 12 }

    h3cIPsecTunRemoteAddrV2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The IP address of the remote peer for the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 13 }

    h3cIPsecTunKeyTypeV2 OBJECT-TYPE
        SYNTAX H3cIPsecNegoTypeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The key negotiate mode used by the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 14 }

    h3cIPsecTunEncapModeV2 OBJECT-TYPE
        SYNTAX H3cIPsecEncapModeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The encapsulation mode used by the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 15 }

    h3cIPsecTunInitiatorV2 OBJECT-TYPE
        SYNTAX INTEGER
            {
                local(1),
                remote(2),
                none(2147483647)
            }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The initiator of this IPsec tunnel.  Value none is used for manual
             IPsec tunnel, for there is no initiator or responder in this method."
        ::= { h3cIPsecTunnelV2Entry 16 }

    h3cIPsecTunLifeSizeV2 OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The negotiated LifeSize of the IPsec Phase-2 Tunnel in kilobytes.
             0 is defined as invalid value."
        ::= { h3cIPsecTunnelV2Entry 17 }

    h3cIPsecTunLifeTimeV2 OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The negotiated LifeTime of the IPsec Phase-2 Tunnel in seconds.
             2147483647 is defined as invalid value."
        ::= { h3cIPsecTunnelV2Entry 18 }

    h3cIPsecTunRemainTimeV2 OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The remain time of SA in seconds.  2147483647 is defined as invalid
            value."
        ::= { h3cIPsecTunnelV2Entry 19 }

    h3cIPsecTunActiveTimeV2 OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The duration the IPsec Phase-2 Tunnel has been active in
             hundredths of seconds.  2147483647 is defined as invalid value."
        ::= { h3cIPsecTunnelV2Entry 20 }

    h3cIPsecTunRemainSizeV2 OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The remain LifeSize of SA in kilobytes.  0 is defined as
            invalid value."
        ::= { h3cIPsecTunnelV2Entry 21 }

    h3cIPsecTunTotalRefreshesV2 OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of security association refreshing performed."
        ::= { h3cIPsecTunnelV2Entry 22 }

    h3cIPsecTunCurrentSaInstancesV2 OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of security associations which are currently active
             or expiring."
        ::= { h3cIPsecTunnelV2Entry 23 }

    h3cIPsecTunInSaEncryptAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecEncryptAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The encryption algorithm used by the inbound security association
             of the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 24 }

    h3cIPsecTunInSaAhAuthAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecAuthAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The authentication algorithm used by the inbound authentication
             header (AH) security association of the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 25 }

    h3cIPsecTunInSaEspAuthAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecAuthAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The authentication algorithm used by the inbound encapsulation
             security protocol(ESP) security association of the IPsec
             Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 26 }

    h3cIPsecTunDiffHellmanGrpV2 OBJECT-TYPE
        SYNTAX H3cIPsecDiffHellmanGrpV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The Diffie Hellman Group used by the security association of the
             IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 27 }

    h3cIPsecTunOutSaEncryptAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecEncryptAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The encryption algorithm used by the outbound security
             association of the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 28 }

    h3cIPsecTunOutSaAhAuthAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecAuthAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The authentication algorithm used by the outbound
             authentication header (AH) security association of
             the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 29 }

    h3cIPsecTunOutSaEspAuthAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecAuthAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The authentication algorithm used by the outbound encapsulation
             security protocol(ESP) security association of the IPsec
             Phase-2 Tunnel."
        ::= { h3cIPsecTunnelV2Entry 30 }

    h3cIPsecTunPolicyNameV2 OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE(1..63))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The policy name used by this IPsec tunnel."
        ::= { h3cIPsecTunnelV2Entry 31 }

    h3cIPsecTunPolicyNumV2 OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The sequence number of policy used by this IPsec tunnel."
        ::= { h3cIPsecTunnelV2Entry 32 }

    h3cIPsecTunStatusV2 OBJECT-TYPE
        SYNTAX INTEGER
            {
                initial(1),
                ready(2),
                rekeyed(3),
                closed(4)
            }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The status of the IPsec Tunnel."
        ::= { h3cIPsecTunnelV2Entry 33 }

    h3cIPsecTunPolicyDescriptionV2 OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE(1..80))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "IPsec policy description of an IPsec tunne."
        ::= { h3cIPsecTunnelV2Entry 34 }


-- ===============================================
-- Begin the table of h3cIPsecTunnelStatV2Table.
-- ===============================================

    h3cIPsecTunnelStatV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cIPsecTunnelStatV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The IPsec Phase-2 Tunnel Statistics Table."
        ::= { h3cIPsecObjectsV2 3 }

    h3cIPsecTunnelStatV2Entry OBJECT-TYPE
        SYNTAX H3cIPsecTunnelStatV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Information about h3cIPsecTunnelStatV2Table."
        INDEX { h3cIPsecTunIndexV2 }
        ::= { h3cIPsecTunnelStatV2Table 1 }

    H3cIPsecTunnelStatV2Entry ::=
        SEQUENCE {
            h3cIPsecTunInOctetsV2
                Counter64,
            h3cIPsecTunInDecompOctetsV2
                Counter64,
            h3cIPsecTunInPktsV2
                Counter64,
            h3cIPsecTunInDropPktsV2
                Counter64,
            h3cIPsecTunInReplayDropPktsV2
                Counter64,
            h3cIPsecTunInAuthFailsV2
                Counter64,
            h3cIPsecTunInDecryptFailsV2
                Counter64,
            h3cIPsecTunOutOctetsV2
                Counter64,
            h3cIPsecTunOutUncompOctetsV2
                Counter64,
            h3cIPsecTunOutPktsV2
                Counter64,
            h3cIPsecTunOutDropPktsV2
                Counter64,
            h3cIPsecTunOutEncryptFailsV2
                Counter64,
            h3cIPsecTunNoMemoryDropPktsV2
                Counter64,
            h3cIPsecTunQueueFullDropPktsV2
                Counter64,
            h3cIPsecTunInvalidLenDropPktsV2
                Counter64,
            h3cIPsecTunTooLongDropPktsV2
                Counter64,
            h3cIPsecTunInvalidSaDropPktsV2
                Counter64
        }

    h3cIPsecTunInOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets received by this IPsec Phase-2 Tunnel.
             This value is accumulated BEFORE determining whether or not the
             packet should be decompressed."
        ::= { h3cIPsecTunnelStatV2Entry 1 }

    h3cIPsecTunInDecompOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of decompressed octets received by this IPsec
             Phase-2 Tunnel.  This value is accumulated AFTER the packet
             is decompressed."
        ::= { h3cIPsecTunnelStatV2Entry 2 }

    h3cIPsecTunInPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets received by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 3 }

    h3cIPsecTunInDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during receiving process
             by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 4 }

    h3cIPsecTunInReplayDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during
             receiving process due to Anti-Replay process
             by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 5 }

    h3cIPsecTunInAuthFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound authentication's
             which ended in failure by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 6 }

    h3cIPsecTunInDecryptFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound decryption's
             which ended in failure by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 7 }

    h3cIPsecTunOutOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets sent by this IPsec Phase-2 Tunnel.
             This value is accumulated AFTER determining whether or not
             the packet should be compressed."
        ::= { h3cIPsecTunnelStatV2Entry 8 }

    h3cIPsecTunOutUncompOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of uncompressed octets sent by this IPsec Phase-2
             Tunnel.  This value is accumulated BEFORE the packet is compressed."
        ::= { h3cIPsecTunnelStatV2Entry 9 }

    h3cIPsecTunOutPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets sent by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 10 }

    h3cIPsecTunOutDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during sending process
             by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 11 }

    h3cIPsecTunOutEncryptFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of outbound encryption's which ended in failure
             by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 12 }

    h3cIPsecTunNoMemoryDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to no enough memory by this
             IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 13 }

    h3cIPsecTunQueueFullDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to queue full by this
             IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 14 }

    h3cIPsecTunInvalidLenDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to invalid length packet
             by this IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 15 }

    h3cIPsecTunTooLongDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to too long packet by this
             IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 16 }

    h3cIPsecTunInvalidSaDropPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to invalid SA by this
             IPsec Phase-2 Tunnel."
        ::= { h3cIPsecTunnelStatV2Entry 17 }

-- ===============================================
-- Begin the table of h3cIPsecSaV2Table.
-- ===============================================

    h3cIPsecSaV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cIPsecSaV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The IPsec Phase-2 Security Protection Index Table.  This table
             contains an entry for each active and expiring security association."
        ::= { h3cIPsecObjectsV2 4 }

    h3cIPsecSaV2Entry OBJECT-TYPE
        SYNTAX H3cIPsecSaV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Information about h3cIPsecSaV2Table."
        INDEX { h3cIPsecTunIndexV2,h3cIPsecSaIndexV2 }
        ::= { h3cIPsecSaV2Table 1 }

    H3cIPsecSaV2Entry ::=
        SEQUENCE {
            h3cIPsecSaIndexV2
                Integer32,
            h3cIPsecSaDirectionV2
                INTEGER,
            h3cIPsecSaSpiValueV2
                Unsigned32,
            h3cIPsecSaSecProtocolV2
                H3cIPsecSaProtocolV2,
            h3cIPsecSaEncryptAlgoV2
                H3cIPsecEncryptAlgoV2,
            h3cIPsecSaAuthAlgoV2
                H3cIPsecAuthAlgoV2,
            h3cIPsecSaStatusV2
                INTEGER
        }

    h3cIPsecSaIndexV2 OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The number of the Sa associated with the Phase-2 Tunnel
             Table.  The value of this index is a number which begins
             at one and is incremented with each Sa associated with
             an IPsec Phase-2 Tunnel.  The value of this object will
             wrap at 2,147,483,647."
        ::= { h3cIPsecSaV2Entry 1 }

    h3cIPsecSaDirectionV2 OBJECT-TYPE
        SYNTAX INTEGER {
            in(1),
            out(2)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The direction of the SA."
        ::= { h3cIPsecSaV2Entry 2 }

    h3cIPsecSaSpiValueV2 OBJECT-TYPE
        SYNTAX Unsigned32 (1..4294967295)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The value of the SPI."
        ::= { h3cIPsecSaV2Entry 3 }

    h3cIPsecSaSecProtocolV2 OBJECT-TYPE
        SYNTAX H3cIPsecSaProtocolV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The security protocol of the SA."
        ::= { h3cIPsecSaV2Entry 4 }

    h3cIPsecSaEncryptAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecEncryptAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The encryption algorithm used by the security association
             of the IPsec Phase-2 Tunnel."
        ::= { h3cIPsecSaV2Entry 5 }

    h3cIPsecSaAuthAlgoV2 OBJECT-TYPE
        SYNTAX H3cIPsecAuthAlgoV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The authentication algorithm used by the SA."
        ::= { h3cIPsecSaV2Entry 6 }

    h3cIPsecSaStatusV2 OBJECT-TYPE
        SYNTAX INTEGER {
            active(1),
            expiring(2)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The status of the SA."
        ::= { h3cIPsecSaV2Entry 7 }

-- ===============================================
-- Begin the table of h3cIPsecTrafficV2Table.
-- ===============================================

    h3cIPsecTrafficV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cIPsecTrafficV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The IPsec Phase-2 Tunnel Traffic Table."
        ::= { h3cIPsecObjectsV2 5 }

    h3cIPsecTrafficV2Entry OBJECT-TYPE
        SYNTAX H3cIPsecTrafficV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Information about h3cIPsecTrafficV2Table."
        INDEX { h3cIPsecTunIndexV2 }
        ::= { h3cIPsecTrafficV2Table 1 }

    H3cIPsecTrafficV2Entry ::=
        SEQUENCE {
            h3cIPsecTrafficLocalTypeV2
                H3cIPsecTrafficTypeV2,
            h3cIPsecTrafficLocalAddr1TypeV2
                InetAddressType,
            h3cIPsecTrafficLocalAddr1V2
                InetAddress,
            h3cIPsecTrafficLocalAddr2TypeV2
                InetAddressType,
            h3cIPsecTrafficLocalAddr2V2
                InetAddress,
            h3cIPsecTrafficLocalProtocol1V2
                Integer32,
            h3cIPsecTrafficLocalProtocol2V2
                Integer32,
            h3cIPsecTrafficLocalPort1V2
                Integer32,
            h3cIPsecTrafficLocalPort2V2
                Integer32,
            h3cIPsecTrafficRemoteTypeV2
                H3cIPsecTrafficTypeV2,
            h3cIPsecTrafficRemAddr1TypeV2
                InetAddressType,
            h3cIPsecTrafficRemAddr1V2
                InetAddress,
            h3cIPsecTrafficRemAddr2TypeV2
                InetAddressType,
            h3cIPsecTrafficRemAddr2V2
                InetAddress,
            h3cIPsecTrafficRemoPro1V2
                Integer32,
            h3cIPsecTrafficRemoPro2V2
                Integer32,
            h3cIPsecTrafficRemPort1V2
                Integer32,
            h3cIPsecTrafficRemPort2V2
                Integer32
    }

    h3cIPsecTrafficLocalTypeV2 OBJECT-TYPE
        SYNTAX H3cIPsecTrafficTypeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the local peer's traffic.  Possible values are:
            1) A single IP address
            2) An IP address range
            3) An IP subnet"
        ::= { h3cIPsecTrafficV2Entry 1 }

    h3cIPsecTrafficLocalAddr1TypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the first IP address specification for the local peer's
             traffic."
        ::= { h3cIPsecTrafficV2Entry 2 }

    h3cIPsecTrafficLocalAddr1V2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first IP address specification of the local peer's traffic.

            If the local peer's traffic type is single IP address, this is the
            IP address.

            If the local peer's traffic type is IP subnet, this is the subnet address.

            If the local peer's traffic type is IP address range, this is the
            beginning IP address of the range."
        ::= { h3cIPsecTrafficV2Entry 3 }

    h3cIPsecTrafficLocalAddr2TypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the second IP address specification for the local peer's
             traffic."
        ::= { h3cIPsecTrafficV2Entry 4 }

    h3cIPsecTrafficLocalAddr2V2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second IP address specification of the local peer's traffic.

            If the local peer's traffic type is single IP address, this is the
            IP address.

            If the local peer's traffic type is IP subnet, this is the subnet mask.

            If the local peer's traffic type is IP address range, this is the
            ending IP address of the range."
        ::= { h3cIPsecTrafficV2Entry 5 }

    h3cIPsecTrafficLocalProtocol1V2 OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first protocol number specification of the local peer's traffic.

            If the protocol type of the local peer's traffic is single protocol,
            this is the protocol number.

            If the protocol type of the local peer's traffic is protocol range,
            this is the beginning protocol number of the range."
        ::= { h3cIPsecTrafficV2Entry 6 }

    h3cIPsecTrafficLocalProtocol2V2 OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second protocol number specification of the local peer's traffic.

            If the protocol type of the local peer's traffic is single protocol,
            this is the protocol number.

            If the protocol type of the local peer's traffic is protocol range,
            this is the ending protocol number of the range."
        ::= { h3cIPsecTrafficV2Entry 7 }

    h3cIPsecTrafficLocalPort1V2 OBJECT-TYPE
        SYNTAX Integer32 (0..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first port number specification of the local peer's traffic.

            If the port type of the local peer's traffic is single port, this is
            the port number.

            If the port type of the local peer's traffic is port range, this is
            the beginning port number of the range."
        ::= { h3cIPsecTrafficV2Entry 8 }

    h3cIPsecTrafficLocalPort2V2 OBJECT-TYPE
        SYNTAX Integer32 (0..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second port number specification of the local peer's traffic.

            If the port type of the local peer's traffic is single port, this is
            the port number.

            If the port type of the local peer's traffic is port range, this is
            the ending port number of the range."
        ::= { h3cIPsecTrafficV2Entry 9 }

    h3cIPsecTrafficRemoteTypeV2 OBJECT-TYPE
        SYNTAX H3cIPsecTrafficTypeV2
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the remote peer's traffic.  Possible values are:
            1) A single IP address
            2) An IP address range
            3) An IP subnet"
        ::= { h3cIPsecTrafficV2Entry 10 }

    h3cIPsecTrafficRemAddr1TypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the first IP address specification for the remote peer's
             traffic."
        ::= { h3cIPsecTrafficV2Entry 11 }

    h3cIPsecTrafficRemAddr1V2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first IP address specification of the remote peer's traffic.

            If the remote traffic type is single IP address, this is the IP address.

            If the remote traffic type is IP subnet, this is the subnet address.

            If the remote traffic type is IP address range, this is the beginning
            IP address of the range."
        ::= { h3cIPsecTrafficV2Entry 12 }

    h3cIPsecTrafficRemAddr2TypeV2 OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The type of the second IP address specification for the remote peer's
             traffic."
        ::= { h3cIPsecTrafficV2Entry 13 }

    h3cIPsecTrafficRemAddr2V2 OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second IP address specification of the remote peer's traffic.

            If the remote traffic type is single IP address, this is the IP address.

            If the remote traffic type is IP subnet, this is the subnet mask.

            If the remote traffic type is IP address range, this is the ending IP
            address of the range."
        ::= { h3cIPsecTrafficV2Entry 14 }

    h3cIPsecTrafficRemoPro1V2 OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first protocol number specification of the remote peer's traffic.

            If the protocol type of the remote peer's traffic is single protocol,
            this is the protocol number.

            If the protocol type of the remote peer's traffic is protocol range,
            this is the beginning protocol number of the range."
        ::= { h3cIPsecTrafficV2Entry 15 }

    h3cIPsecTrafficRemoPro2V2 OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second protocol number specification of the remote peer's traffic.

            If the protocol type of the remote peer's traffic is single protocol,
            this is the protocol number.

            If the protocol type of the remote peer's traffic is protocol range,
            this is the ending protocol number of the range."
        ::= { h3cIPsecTrafficV2Entry 16 }

    h3cIPsecTrafficRemPort1V2 OBJECT-TYPE
        SYNTAX Integer32 (0..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first port number specification of the remote peer's traffic.

            If the port type of the remote peer's traffic is single port,
            this is the port number.

            If the port type of the remote peer's traffic is port range,
            this is the beginning port number of the range."
        ::= { h3cIPsecTrafficV2Entry 17 }

    h3cIPsecTrafficRemPort2V2 OBJECT-TYPE
        SYNTAX Integer32 (0..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The second port number specification of the remote peer's traffic.

            If the port type of the remote peer's traffic is single port,
            this is the port number.

            If the port type of the remote peer's traffic is port range,
            this is the ending port number of the range."
        ::= { h3cIPsecTrafficV2Entry 18 }

-- ===============================================
-- Begin the h3cIPsecGlobalStatsV2.
-- ===============================================

    h3cIPsecGlobalStatsV2 OBJECT IDENTIFIER ::= { h3cIPsecObjectsV2 6 }

    h3cIPsecGlobalActiveTunnelsV2 OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of currently active IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 1 }

    h3cIPsecGlobalActiveSasV2 OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of currently active or expiring IPsec Phase-2 SA."
        ::= { h3cIPsecGlobalStatsV2 2 }

    h3cIPsecGlobalInOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets received by all current and previous
             IPsec Phase-2 Tunnels.  This value is accumulated BEFORE determining
             whether or not the packet should be decompressed."
        ::= { h3cIPsecGlobalStatsV2 3 }

    h3cIPsecGlobalInDecompOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of decompressed octets received by all current
             and previous IPsec Phase-2 Tunnels.  This value is accumulated
             AFTER the packet is decompressed."
        ::= { h3cIPsecGlobalStatsV2 4 }

    h3cIPsecGlobalInPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets received by all current and
             previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 5 }

    h3cIPsecGlobalInDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during receiving
             process by all current and previous IPsec Phase-2
             Tunnels."
        ::= { h3cIPsecGlobalStatsV2 6 }

    h3cIPsecGlobalInReplayDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during receiving
             process due to Anti-Replay process by all
             current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 7 }

    h3cIPsecGlobalInAuthFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound authentication's which ended
             in failure by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 8 }

    h3cIPsecGlobalInDecryptFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound decryption's which ended in
             failure by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 9 }

    h3cIPsecGlobalOutOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets sent by all current and previous
             IPsec Phase-2 Tunnels.  This value is accumulated AFTER
             determining whether or not the packet should be compressed."
        ::= { h3cIPsecGlobalStatsV2 10 }

    h3cIPsecGlobalOutUncompOctetsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of uncompressed octets sent by all current
             and previous IPsec Phase-2 Tunnels.  This value is accumulated
             BEFORE the packet is compressed."
        ::= { h3cIPsecGlobalStatsV2 11 }

    h3cIPsecGlobalOutPktsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets sent by all current and previous
             IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 12 }

    h3cIPsecGlobalOutDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped during sending process
             by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 13 }

    h3cIPsecGlobalOutEncryptFailsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of outbound encryption's which ended in failure
             by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 14 }

    h3cIPsecGlobalNoMemoryDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to no enough memory
             by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 15 }

    h3cIPsecGlobalNoFindSaDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to not find SA by
             all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 16 }

    h3cIPsecGlobalQueueFullDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to queue full by
             all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 17 }

    h3cIPsecGlobalInvalidLenDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to invalid packet
             length by all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 18 }

    h3cIPsecGlobalTooLongDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to too long packet by
             all current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 19 }

    h3cIPsecGlobalInvalidSaDropsV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped due to invalid SA by all
             current and previous IPsec Phase-2 Tunnels."
        ::= { h3cIPsecGlobalStatsV2 20 }

-- ===============================================
-- Begin the h3cIPsecTrapObjectV2.
-- ===============================================

    h3cIPsecTrapObjectV2 OBJECT IDENTIFIER ::= { h3cIPsecObjectsV2 7 }

    h3cIPsecPolicyNameV2 OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE(1..63))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The IPsec policy name with a trap."
        ::= { h3cIPsecTrapObjectV2 1 }

    h3cIPsecPolicySeqNumV2 OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The IPsec policy sequence number with a trap."
        ::= { h3cIPsecTrapObjectV2 2 }

    h3cIPsecPolicySizeV2 OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The number of IPsec policies with a trap."
        ::= { h3cIPsecTrapObjectV2 3 }

-- ===============================================
-- Begin the h3cIPsecTrapCntlV2.
-- ===============================================


    h3cIPsecTrapCntlV2 OBJECT IDENTIFIER ::= { h3cIPsecObjectsV2 8 }

    h3cIPsecTrapGlobalCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether all IPsec traps should be generated."
        ::= { h3cIPsecTrapCntlV2 1 }

    h3cIPsecTunnelStartTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecTunnelStartV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 2 }

    h3cIPsecTunnelStopTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecTunnelStopV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 3 }

    h3cIPsecNoSaTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecNoSaFailureV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 4 }

    h3cIPsecAuthFailureTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecAuthFailFailureV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 5 }

    h3cIPsecEncryFailureTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecEncryFailFailureV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 6 }

    h3cIPsecDecryFailureTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecDecryFailFailureV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 7 }

    h3cIPsecInvalidSaTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecInvalidSaFailureV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 8 }

    h3cIPsecPolicyAddTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecPolicyAddV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 9 }

    h3cIPsecPolicyDelTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecPolicyDelV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 10 }

    h3cIPsecPolicyAttachTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecPolicyAttachV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 11 }

    h3cIPsecPolicyDetachTrapCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecPolicyDetachV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 12 }

    h3cIPsecConnectionStartCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecConnectionStartV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 13 }

    h3cIPsecConnectionStopCntlV2 OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Indicates whether h3cIPsecConnectionStopV2 traps should be generated."
        ::= { h3cIPsecTrapCntlV2 14 }

-- ===============================================
-- definition of traps.
-- ===============================================

    h3cIPsecTrapV2 OBJECT IDENTIFIER ::= { h3cIPsecObjectsV2 9 }

    h3cIPsecNotificationsV2 OBJECT IDENTIFIER ::= { h3cIPsecTrapV2 0 }

    h3cIPsecTunnelStartV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2,
                    h3cIPsecTunLifeTimeV2,
                    h3cIPsecTunLifeSizeV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec Phase-2
             Tunnel is created."
        ::= { h3cIPsecNotificationsV2 1 }

    h3cIPsecTunnelStopV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2,
                    h3cIPsecTunActiveTimeV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec Phase-2
             Tunnel is deleted."
        ::= { h3cIPsecNotificationsV2 2 }

    h3cIPsecNoSaFailureV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec Phase-2
             non-existent SA error occurs."
        ::= { h3cIPsecNotificationsV2 3 }

    h3cIPsecAuthFailFailureV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2
                  }
        STATUS     current
        DESCRIPTION
            "This notification is generated when the IPsec phase-2
             authentication failure occurs."
        ::= { h3cIPsecNotificationsV2 4 }

    h3cIPsecEncryFailFailureV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when the IPsec phase-2
             tunnel has an encrypting failure."
        ::= { h3cIPsecNotificationsV2 5 }

    h3cIPsecDecryFailFailureV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when the IPsec phase-2
             tunnel has a decrypting failure."
        ::= { h3cIPsecNotificationsV2 6 }

    h3cIPsecInvalidSaFailureV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecTunIndexV2,
                    h3cIPsecSaIndexV2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2,
                    h3cIPsecSaSpiValueV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when the IPsec phase-2
             invalid SA failure occurs."
        ::= { h3cIPsecNotificationsV2 7 }

    h3cIPsecPolicyAddV2 NOTIFICATION-TYPE
        OBJECTS { h3cIPsecPolicyNameV2,
                  h3cIPsecPolicySeqNumV2,
                  h3cIPsecPolicySizeV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec policy is added."
        ::= { h3cIPsecNotificationsV2 8 }

    h3cIPsecPolicyDelV2 NOTIFICATION-TYPE
        OBJECTS { h3cIPsecPolicyNameV2,
                  h3cIPsecPolicySeqNumV2,
                  h3cIPsecPolicySizeV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec policy is deleted."
        ::= { h3cIPsecNotificationsV2 9 }

    h3cIPsecPolicyAttachV2 NOTIFICATION-TYPE
        OBJECTS { h3cIPsecPolicyNameV2,
                  h3cIPsecPolicySizeV2,
                  ifIndex
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec policy is attached
             with one interface."
        ::= { h3cIPsecNotificationsV2 10 }

    h3cIPsecPolicyDetachV2 NOTIFICATION-TYPE
        OBJECTS { h3cIPsecPolicyNameV2,
                  h3cIPsecPolicySizeV2,
                  ifIndex
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec policy is detached
             with one interface."
        ::= { h3cIPsecNotificationsV2 11 }

    h3cIPsecConnectionStartV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecPolicyDescripV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec connection
             is created."
        ::= { h3cIPsecNotificationsV2 12 }

    h3cIPsecConnectionStopV2 NOTIFICATION-TYPE
        OBJECTS {
                    h3cIPsecPolicyDescripV2
                }
        STATUS     current
        DESCRIPTION
            "This notification is generated when an IPsec connection
             is terminated."
        ::= { h3cIPsecNotificationsV2 13 }

-- ===============================================
-- Begin the table of h3cIPsecTunnelStatByDescripV2Table.
-- ===============================================

    h3cIPsecTunnelStatByDescripV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cIPsecTunnelStatByDescripV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "This table contains IPsec phase-2 tunnel statistics by description."
        ::= { h3cIPsecObjectsV2 10 }

    h3cIPsecTunnelStatByDescripV2Entry OBJECT-TYPE
        SYNTAX H3cIPsecTunnelStatByDescripV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "An entry of IPsec phase-2 tunnels statistics by description table."
        INDEX { h3cIPsecPolicyDescripV2 }
        ::= { h3cIPsecTunnelStatByDescripV2Table 1 }

    H3cIPsecTunnelStatByDescripV2Entry ::=
        SEQUENCE {
            h3cIPsecPolicyDescripV2
                OCTET STRING,
            h3cIPsecTunInOctetsByDescripV2
                Counter64,
            h3cIPsecTunInDecompOctetsByDescripV2
                Counter64,
            h3cIPsecTunInPktsByDescripV2
                Counter64,
            h3cIPsecTunInDropPktsByDescripV2
                Counter64,
            h3cIPsecTunInReplayDropPktsByDescripV2
                Counter64,
            h3cIPsecTunInAuthFailsByDescripV2
                Counter64,
            h3cIPsecTunInDecryptFailsByDescripV2
                Counter64,
            h3cIPsecTunOutOctetsByDescripV2
                Counter64,
            h3cIPsecTunOutUncompOctetsByDescripV2
                Counter64,
            h3cIPsecTunOutPktsByDescripV2
                Counter64,
            h3cIPsecTunOutDropPktsByDescripV2
                Counter64,
            h3cIPsecTunOutEncryptFailsByDescripV2
                Counter64,
            h3cIPsecTunNoMemoryDropPktsByDescripV2
                Counter64,
            h3cIPsecTunQueueFullDropPktsByDescripV2
                Counter64,
            h3cIPsecTunInvalidLenDropPktsByDescripV2
                Counter64,
            h3cIPsecTunTooLongDropPktsByDescripV2
                Counter64,
            h3cIPsecTunInvalidSaDropPktsByDescripV2
                Counter64
        }

    h3cIPsecPolicyDescripV2 OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE(1..80))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The IPsec policy's description."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 1 }

    h3cIPsecTunInOctetsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets received by IPsec phase-2 tunnels.
             This value is accumulated BEFORE determining whether or not the
             packet should be decompressed."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 2 }

    h3cIPsecTunInDecompOctetsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of decompressed octets received by IPsec
             phase-2 tunnels.  This value is accumulated AFTER the packet
             is decompressed."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 3 }

    h3cIPsecTunInPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets received by IPsec phase-2 tunnels."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 4 }

    h3cIPsecTunInDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels during receiving process."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 5 }

    h3cIPsecTunInReplayDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of receive  packets dropped by IPsec phase-2 tunnels
            due to Anti-Replay processing."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 6 }

    h3cIPsecTunInAuthFailsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound authentication
             failures on IPsec phase-2 tunnels."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 7 }

    h3cIPsecTunInDecryptFailsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of inbound decryption
             failures on IPsec phase-2 tunnels."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 8 }

    h3cIPsecTunOutOctetsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of octets sent by IPsec phase-2 tunnels.
             This value is accumulated AFTER determining whether or not
             the packet should be compressed."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 9 }

    h3cIPsecTunOutUncompOctetsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of uncompressed octets sent by IPsec phase-2
             tunnels.  This value is accumulated BEFORE the packet is compressed."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 10 }

    h3cIPsecTunOutPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets sent by IPsec phase-2 tunnels."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 11 }

    h3cIPsecTunOutDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels during sending process."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 12 }

    h3cIPsecTunOutEncryptFailsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of outbound encryption failures
             on IPsec Phase-2 Tunnels."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 13 }

    h3cIPsecTunNoMemoryDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels due to no enough memory."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 14 }

    h3cIPsecTunQueueFullDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by
             IPsec phase-2 tunnels due to queue full."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 15 }

    h3cIPsecTunInvalidLenDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels due to invalid length packet."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 16 }

    h3cIPsecTunTooLongDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels due to packet."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 17 }

    h3cIPsecTunInvalidSaDropPktsByDescripV2 OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The total number of packets dropped by IPsec phase-2 tunnels due to invalid SA."
        ::= { h3cIPsecTunnelStatByDescripV2Entry 18 }

-- ===============================================
-- Conformance Information
-- ===============================================
    h3cIPsecConformanceV2   OBJECT IDENTIFIER
        ::= { h3cIPsecMonitorV2 2 }
    h3cIPsecCompliancesV2   OBJECT IDENTIFIER
        ::= { h3cIPsecConformanceV2 1 }
    h3cIPsecGroupsV2        OBJECT IDENTIFIER
        ::= { h3cIPsecConformanceV2 2 }

-- ===============================================
-- Compliance Statements
-- ===============================================
    h3cIPsecComplianceV2 MODULE-COMPLIANCE
        STATUS current
        DESCRIPTION
            " "
        MODULE -- this module
        MANDATORY-GROUPS
            {
                h3cIPsecScalarObjectsGroupV2,
                h3cIPsecTunnelTableGroupV2,
                h3cIPsecTunnelStatGroupV2,
                h3cIPsecSaGroupV2,
                h3cIPsecTrafficTableGroupV2,
                h3cIPsecGlobalStatsGroupV2,
                h3cIPsecTrapObjectGroupV2,
                h3cIPsecTrapCntlGroupV2,
                h3cIPsecTrapGroupV2
            }
        ::= { h3cIPsecCompliancesV2 1 }

    h3cIPsecScalarObjectsGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecMIBVersion
                }
        STATUS current
        DESCRIPTION
            "The group contains all of scalar objects of the MIB."
        ::= { h3cIPsecGroupsV2 1 }

    h3cIPsecTunnelTableGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecTunIfIndexV2,
                    h3cIPsecTunIKETunnelIndexV2,
                    h3cIPsecTunIKETunLocalIDTypeV2,
                    h3cIPsecTunIKETunLocalIDVal1V2,
                    h3cIPsecTunIKETunLocalIDVal2V2,
                    h3cIPsecTunIKETunRemoteIDTypeV2,
                    h3cIPsecTunIKETunRemoteIDVal1V2,
                    h3cIPsecTunIKETunRemoteIDVal2V2,
                    h3cIPsecTunLocalAddrTypeV2,
                    h3cIPsecTunLocalAddrV2,
                    h3cIPsecTunRemoteAddrTypeV2,
                    h3cIPsecTunRemoteAddrV2,
                    h3cIPsecTunKeyTypeV2,
                    h3cIPsecTunEncapModeV2,
                    h3cIPsecTunInitiatorV2,
                    h3cIPsecTunLifeSizeV2,
                    h3cIPsecTunLifeTimeV2,
                    h3cIPsecTunRemainTimeV2,
                    h3cIPsecTunActiveTimeV2,
                    h3cIPsecTunRemainSizeV2,
                    h3cIPsecTunTotalRefreshesV2,
                    h3cIPsecTunCurrentSaInstancesV2,
                    h3cIPsecTunInSaEncryptAlgoV2,
                    h3cIPsecTunInSaAhAuthAlgoV2,
                    h3cIPsecTunInSaEspAuthAlgoV2,
                    h3cIPsecTunDiffHellmanGrpV2,
                    h3cIPsecTunOutSaEncryptAlgoV2,
                    h3cIPsecTunOutSaAhAuthAlgoV2,
                    h3cIPsecTunOutSaEspAuthAlgoV2,
                    h3cIPsecTunPolicyNameV2,
                    h3cIPsecTunPolicyNumV2,
                    h3cIPsecTunStatusV2,
                    h3cIPsecTunPolicyDescriptionV2
                }
        STATUS current
        DESCRIPTION
            "The group contains the IPsec tunnel's property information."
        ::= { h3cIPsecGroupsV2 2 }

    h3cIPsecTunnelStatGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecTunInOctetsV2,
                    h3cIPsecTunInDecompOctetsV2,
                    h3cIPsecTunInPktsV2,
                    h3cIPsecTunInDropPktsV2,
                    h3cIPsecTunInReplayDropPktsV2,
                    h3cIPsecTunInAuthFailsV2,
                    h3cIPsecTunInDecryptFailsV2,
                    h3cIPsecTunOutOctetsV2,
                    h3cIPsecTunOutUncompOctetsV2,
                    h3cIPsecTunOutPktsV2,
                    h3cIPsecTunOutDropPktsV2,
                    h3cIPsecTunOutEncryptFailsV2,
                    h3cIPsecTunNoMemoryDropPktsV2,
                    h3cIPsecTunQueueFullDropPktsV2,
                    h3cIPsecTunInvalidLenDropPktsV2,
                    h3cIPsecTunTooLongDropPktsV2,
                    h3cIPsecTunInvalidSaDropPktsV2
                }
        STATUS current
        DESCRIPTION
            "The group contains the IPsec tunnel's statistic information."
        ::= { h3cIPsecGroupsV2 3 }

    h3cIPsecSaGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecSaDirectionV2,
                    h3cIPsecSaSpiValueV2,
                    h3cIPsecSaSecProtocolV2,
                    h3cIPsecSaEncryptAlgoV2,
                    h3cIPsecSaAuthAlgoV2,
                    h3cIPsecSaStatusV2
                }
        STATUS current
        DESCRIPTION
            "The group contains the SA's property information."
        ::= { h3cIPsecGroupsV2 4 }

    h3cIPsecTrafficTableGroupV2 OBJECT-GROUP
        OBJECTS {
            h3cIPsecTrafficLocalTypeV2,
            h3cIPsecTrafficLocalAddr1TypeV2,
            h3cIPsecTrafficLocalAddr1V2,
            h3cIPsecTrafficLocalAddr2TypeV2,
            h3cIPsecTrafficLocalAddr2V2,
            h3cIPsecTrafficLocalProtocol1V2,
            h3cIPsecTrafficLocalProtocol2V2,
            h3cIPsecTrafficLocalPort1V2,
            h3cIPsecTrafficLocalPort2V2,
            h3cIPsecTrafficRemoteTypeV2,
            h3cIPsecTrafficRemAddr1TypeV2,
            h3cIPsecTrafficRemAddr1V2,
            h3cIPsecTrafficRemAddr2TypeV2,
            h3cIPsecTrafficRemAddr2V2,
            h3cIPsecTrafficRemoPro1V2,
            h3cIPsecTrafficRemoPro2V2,
            h3cIPsecTrafficRemPort1V2,
            h3cIPsecTrafficRemPort2V2
        }
        STATUS current
        DESCRIPTION
            "The group contains the property information of the
             data flow protected by IPsec tunnel."
        ::= { h3cIPsecGroupsV2 5 }

    h3cIPsecGlobalStatsGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecGlobalActiveTunnelsV2,
                    h3cIPsecGlobalActiveSasV2,
                    h3cIPsecGlobalInOctetsV2,
                    h3cIPsecGlobalInDecompOctetsV2,
                    h3cIPsecGlobalInPktsV2,
                    h3cIPsecGlobalInDropsV2,
                    h3cIPsecGlobalInReplayDropsV2,
                    h3cIPsecGlobalInAuthFailsV2,
                    h3cIPsecGlobalInDecryptFailsV2,
                    h3cIPsecGlobalOutOctetsV2,
                    h3cIPsecGlobalOutUncompOctetsV2,
                    h3cIPsecGlobalOutPktsV2,
                    h3cIPsecGlobalOutDropsV2,
                    h3cIPsecGlobalOutEncryptFailsV2,
                    h3cIPsecGlobalNoMemoryDropsV2,
                    h3cIPsecGlobalNoFindSaDropsV2,
                    h3cIPsecGlobalQueueFullDropsV2,
                    h3cIPsecGlobalInvalidLenDropsV2,
                    h3cIPsecGlobalTooLongDropsV2,
                    h3cIPsecGlobalInvalidSaDropsV2
                }
        STATUS current
        DESCRIPTION
            "The group contains all of the IPsec tunnel's statistic
             information."
        ::= { h3cIPsecGroupsV2 6 }

    h3cIPsecTrapObjectGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecPolicyNameV2,
                    h3cIPsecPolicySeqNumV2,
                    h3cIPsecPolicySizeV2
                }
        STATUS current
        DESCRIPTION
            "The group contains all of trap objects of IPsec tunnels."
        ::= { h3cIPsecGroupsV2 7 }

    h3cIPsecTrapCntlGroupV2 OBJECT-GROUP
        OBJECTS {
                    h3cIPsecTrapGlobalCntlV2,
                    h3cIPsecTunnelStartTrapCntlV2,
                    h3cIPsecTunnelStopTrapCntlV2,
                    h3cIPsecNoSaTrapCntlV2,
                    h3cIPsecAuthFailureTrapCntlV2,
                    h3cIPsecEncryFailureTrapCntlV2,
                    h3cIPsecDecryFailureTrapCntlV2,
                    h3cIPsecInvalidSaTrapCntlV2,
                    h3cIPsecPolicyAddTrapCntlV2,
                    h3cIPsecPolicyDelTrapCntlV2,
                    h3cIPsecPolicyAttachTrapCntlV2,
                    h3cIPsecPolicyDetachTrapCntlV2
                }
        STATUS current
        DESCRIPTION
            "The group contains all of trap switches of IPsec tunnels."
        ::= { h3cIPsecGroupsV2 8 }

    h3cIPsecTrapGroupV2 NOTIFICATION-GROUP
        NOTIFICATIONS {
                          h3cIPsecTunnelStartV2,
                          h3cIPsecTunnelStopV2,
                          h3cIPsecNoSaFailureV2,
                          h3cIPsecAuthFailFailureV2,
                          h3cIPsecEncryFailFailureV2,
                          h3cIPsecDecryFailFailureV2,
                          h3cIPsecInvalidSaFailureV2,
                          h3cIPsecPolicyAddV2,
                          h3cIPsecPolicyDelV2,
                          h3cIPsecPolicyAttachV2,
                          h3cIPsecPolicyDetachV2,
                          h3cIPsecConnectionStartV2,
                          h3cIPsecConnectionStopV2
                      }
        STATUS current
        DESCRIPTION
            "The group contains all of trap of IPsec tunnels."
        ::= { h3cIPsecGroupsV2 9 }


END

