TIMETRA-NAT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    Unsigned32, Gauge32, Counter32, Counter64,
    MODULE-IDENTITY,
    OBJECT-TYPE,
    NOTIFICATION-TYPE
                                                                FROM SNMPv2-SMI

    CounterBasedGauge64                                           FROM HCNUM-TC

    RowStatus, TEXTUAL-CONVENTION, 
    TimeStamp, DateAndTime, TruthValue,
    DisplayString
                                                                 FROM SNMPv2-TC


    OBJECT-GROUP, MODULE-COMPLIANCE,
    NOTIFICATION-GROUP
                                                               FROM SNMPv2-CONF

    InetAddressType, InetAddress, InetPortNumber,
    InetAddressPrefixLength, InetAddressIPv6, 
    InetAddressIPv4
                                                          FROM INET-ADDRESS-MIB

    timetraSRMIBModules, tmnxSRObjs, tmnxSRConfs, 
    tmnxSRNotifyPrefix
                                                        FROM TIMETRA-GLOBAL-MIB

    TmnxAdminState, TmnxOperState, TItemDescription,
    TNamedItem, TNamedItemOrEmpty, 
    TmnxVRtrID, TmnxVRtrIDOrZero,
    TFCSet, TIpProtocol, TmnxActionType,
    TmnxSubRadServAlgorithm,
    TmnxSubRadiusAttrType, 
    TmnxSubRadiusVendorId
                                                            FROM TIMETRA-TC-MIB


    tmnxChassisIndex, tmnxCardSlotNum, tmnxMDASlotNum,
    TmnxChassisIndexOrZero, TmnxSlotNumOrZero
                                                       FROM TIMETRA-CHASSIS-MIB

    vRtrID, vRtrIfIndex                                          
                                                          FROM TIMETRA-VRTR-MIB

    tmnxSubInfoSubIdent
                                               FROM TIMETRA-SUBSCRIBER-MGMT-MIB
    ;
timetraNatMIBModule    MODULE-IDENTITY
    LAST-UPDATED "201102010000Z"
    ORGANIZATION "Alcatel-Lucent"
    CONTACT-INFO
        "Alcatel-Lucent SROS Support
         Web: http://support.alcatel-lucent.com"
    DESCRIPTION
    "This document is the SNMP MIB module to manage and provision
    the Network Address Translation (NAT) for the Alcatel-Lucent SROS device.

    Copyright 2009-2012 Alcatel-Lucent. All rights reserved.
    Reproduction of this document is authorized on the condition that
    the foregoing copyright notice is included.

    This SNMP MIB module (Specification) embodies Alcatel-Lucent's
    proprietary intellectual property. Alcatel-Lucent retains all title and
    ownership in the Specification, including any revisions.

    Alcatel-Lucent grants all interested parties a non-exclusive
    license to use and distribute an unmodified copy of this
    Specification in connection with management of Alcatel-Lucent products,
    and without fee, provided this copyright notice and license appear
    on all copies.

    This Specification is supplied 'as is', and Alcatel-Lucent
    makes no warranty, either express or implied, as to the use,
    operation, condition, or performance of the Specification."

--
--  Revision History
--
    REVISION        "1102010000Z"
    DESCRIPTION     "Rev 9.0                 1 Feb 2011 00:00
                     9.0 release of the TIMETRA-NAT-MIB."

    REVISION        "0907310000Z"
    DESCRIPTION     "Rev 8.0                31 July 2009 00:00
                     8.0 release of the TIMETRA-NAT-MIB."

    ::= { timetraSRMIBModules 65 }

-- ----------------------------------------------------------------------------
--  Alcatel-Lucent SROS series NAT MIB structure
-- ----------------------------------------------------------------------------
tmnxNat                      OBJECT IDENTIFIER ::= { tmnxSRObjs 65 }
    tmnxNatObjs              OBJECT IDENTIFIER ::= { tmnxNat 1 }
    tmnxNatNotificationObjs  OBJECT IDENTIFIER ::= { tmnxNat 2 }

tmnxNatConformance           OBJECT IDENTIFIER ::= { tmnxSRConfs 65 }
    tmnxNatCompliances       OBJECT IDENTIFIER ::= { tmnxNatConformance 1 }
    tmnxNatGroups            OBJECT IDENTIFIER ::= { tmnxNatConformance 2 }

tmnxNatNotifyPrefix          OBJECT IDENTIFIER ::= { tmnxSRNotifyPrefix 65 }
    tmnxNatNotifications     OBJECT IDENTIFIER ::= { tmnxNatNotifyPrefix 0 }

--
-- Subtrees
--
tmnxNatIsaObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 1 }
tmnxNatPlcyObjs              OBJECT IDENTIFIER ::= { tmnxNatObjs 2 }
tmnxNatVrtrObjs              OBJECT IDENTIFIER ::= { tmnxNatObjs 3 }
tmnxNatPoolObjs              OBJECT IDENTIFIER ::= { tmnxNatObjs 4 }
tmnxNatDestObjs              OBJECT IDENTIFIER ::= { tmnxNatObjs 5 }
tmnxNatSubObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 6 }
tmnxNatMapObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 7 }
tmnxNatFwdObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 8 }
tmnxNatAccObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 9 }
tmnxNatPcpObjs               OBJECT IDENTIFIER ::= { tmnxNatObjs 10 }
tmnxNatSubscIdObjs           OBJECT IDENTIFIER ::= { tmnxNatObjs 11 }

-- ----------------------------------------------------------------------------
--  Textual Conventions
-- ----------------------------------------------------------------------------

TmnxNatAlgProtocols ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatAlgProtocols data type is a set of protocols
        for which NAT Application Level Gateway (ALG) is supported."
    SYNTAX  BITS {
                ftp (0),      -- File Transfer Protocol
                rtsp (1),     -- Real Time Streaming Protocol
                sip (2)       -- Session Initiation Protocol
            }

TmnxNatFiltering ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION         
        "TmnxNatFiltering is an enumerated integer 
         that specifies the type of NAT filtering."
    SYNTAX INTEGER {
               endpointIndependent     (0),
               addressDependent        (1),
               addressAndPortDependent (2)
           }

TmnxNatFwdActionType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "TmnxNatFwdActionType is an enumerated integer
         that specifies a NAT forwarding entry operation." 
    SYNTAX INTEGER {
                create           (1),
                modify           (2),
                destroy          (3) 
                }

TmnxNatIsaGrpId ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatIsaGrpId data type contains an identification number 
        for a Network Address Translation Integrated Service Adaptor group."
    SYNTAX Unsigned32 (1..4)

TmnxNatIsaGrpIdOrZero ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatIsaGrpIdOrZero data type contains an identification number 
        for a Network Address Translation Integrated Service Adaptor (ISA) 
        group.
        
        The value zero means that no NAT ISA Group is defined."
    SYNTAX Unsigned32 (0..4)

TmnxNatIsaMdaOperState ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION         
        "TmnxNatIsaMdaOperState is an enumerated integer 
         that indicates the operational state of a NAT ISA MDA 
         within a NAT ISA group."
    SYNTAX INTEGER {
               unavail (0),
               primary (1),
               backup  (2),
               busy    (3)
           }

TmnxNatMode ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION         
        "TmnxNatMode is an enumerated integer 
         that specifies the NAT mode of operation.
         
         The possible values are 
         - 'napt' for NAPT (Network Address Port Translation),
         - 'auto': the system selects the actual mode based upon other 
         configuration parameters; the actual mode can be NAPT or 1:1 NAT 
         (also known as 'Basic NAT') and
         - 'oneToOne' indicates 1:1 NAT (also known as 'Basic NAT')"
    SYNTAX INTEGER {
               auto (0),
               napt (1),
               oneToOne (2)
           }

TmnxNatFwdEntryDescription ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "Description for a NAT forwarding entry (also known as 'mapping').  
        
         Only NVT ASCII displayable characters are supported."
    SYNTAX DisplayString (SIZE(0..64))

TmnxNatPlType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION         
        "TmnxNatPlType is an enumerated integer 
         that specifies the NAT pool type.
         
         The possible values are 'largeScale' for Large Scale NAT, and
         'l2Aware' for Layer-2-Aware NAT."
    SYNTAX INTEGER {
               unknown    (0),
               largeScale (1),
               l2Aware (2)
           }

TmnxNatSubscriberIdString ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A character string, taken from a RADIUS message, that
         is associated with a Large Scale NAT subscriber.  
        
         Only NVT ASCII displayable characters are supported."
    SYNTAX DisplayString (SIZE(0..64))

TmnxNatSubscriberType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION         
        "TmnxNatSubscriberType is an enumerated integer 
         that specifies the NAT subscriber type.
         
         The possible values are 'classicLsnSub' and 'dsliteLsnSub' for classic and
         Dual Stack Lite Large Scale NAT subscribers respectively, and
         'l2AwareSub' for Layer-2-Aware NAT subscribers."
    SYNTAX INTEGER {
               l2AwareSub    (1),
               classicLsnSub (2),
               dsliteLsnSub  (3),
               nat64LsnSub   (4)
           }

TmnxNatUsageLevel ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatUsageLevel data type contains an unsigned number 
        that indicates a usage level in percent."
    SYNTAX Gauge32 (0..100)

TmnxNatUsageStatsType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatUsageStatsType data type is an enumerated integer 
        that describes the values used to identify the NAT usage statistics."
    SYNTAX  INTEGER {
                hostsActive                (1),
                hostsPeak                  (2),
                sessionsTcpCreated         (3),
                sessionsTcpDestroyed       (4),
                sessionsUdpCreated         (5),
                sessionsUdpDestroyed       (6),    
                sessionsIcmpQueryCreated   (7),
                sessionsIcmpQueryDestroyed (8)
            }

TmnxNatWaterMark ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
       "The TmnxNatWaterMark data type contains an unsigned number 
        that marks a usage level in percent.
        
        The value zero means that no watermark is defined."
    SYNTAX Unsigned32 (0..100)

-- ----------------------------------------------------------------------------
--      The "NAT ISA" Group
-- ----------------------------------------------------------------------------

tmnxNatIsaGrpObjs        OBJECT IDENTIFIER ::= { tmnxNatIsaObjs 1 }

--
--      The NAT ISA Group Table
--

tmnxNatIsaGrpTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatIsaGrpTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatIsaGrpTable."
    ::= { tmnxNatObjs 100 }

tmnxNatIsaGrpTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaGrpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaGrpTable contains objects to configure 
        NAT Integrated Service Adaptor (ISA) Groups.
        
        An NAT ISA group is used to represent multiple hardware 
        adaptors as a single entity, allowing for warm redundancy between 
        multiple NAT ISA's."
    ::= { tmnxNatIsaGrpObjs 1 }

tmnxNatIsaGrpEntry   OBJECT-TYPE
        SYNTAX          TmnxNatIsaGrpEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
       "Each conceptual row represents a Network Address Translation
        Integrated Service Adaptor Group.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { tmnxNatIsaGrpId }
    ::= { tmnxNatIsaGrpTable 1 }

TmnxNatIsaGrpEntry ::= 
    SEQUENCE {
        tmnxNatIsaGrpId                  TmnxNatIsaGrpId,
        tmnxNatIsaGrpRowStatus           RowStatus,
        tmnxNatIsaGrpLastMgmtChange      TimeStamp,
        tmnxNatIsaGrpDescription         TItemDescription,
        tmnxNatIsaGrpAdminState          TmnxAdminState,
        tmnxNatIsaGrpActiveMdaLimit      Unsigned32,
        tmnxNatIsaGrpSessionResvCount    Unsigned32,                    
        tmnxNatIsaGrpSessionWatermarkHi  TmnxNatWaterMark,
        tmnxNatIsaGrpSessionWatermarkLo  TmnxNatWaterMark,
        tmnxNatIsaGrpOperState           TmnxOperState
    }
        
tmnxNatIsaGrpId OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpId
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatIsaGrpId specifies the identifier of
        the NAT Integrated Service Adaptor group."
    ::= { tmnxNatIsaGrpEntry 1 }

tmnxNatIsaGrpRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaGrpRowStatus specifies the row status of
        this row."
    ::= { tmnxNatIsaGrpEntry 2 }

tmnxNatIsaGrpLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatIsaGrpLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatIsaGrpEntry 3 }

tmnxNatIsaGrpDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaGrpDescription specifies the
        description of this NAT ISA group."
    DEFVAL { "" }
    ::= { tmnxNatIsaGrpEntry 4 }

tmnxNatIsaGrpAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaGrpAdminState specifies the
        administrative state of this NAT ISA group."
    DEFVAL { outOfService }
    ::= { tmnxNatIsaGrpEntry 5 }

tmnxNatIsaGrpActiveMdaLimit OBJECT-TYPE
    SYNTAX      Unsigned32 (0..6)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaGrpActiveMdaLimit specifies the
        number of MDA's in this NAT ISA group that are intended for active use.

        A non-zero value must be specified before setting the value of 
        tmnxNatIsaGrpAdminState to 'inService'."
    DEFVAL { 0 }
    ::= { tmnxNatIsaGrpEntry 6 }

tmnxNatIsaGrpSessionResvCount OBJECT-TYPE
    SYNTAX      Unsigned32 (0..6291456)
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
        "This object is obsoleted.
         
         Use tmnxNatGrpCfgSessionResvCount instead."
    DEFVAL { 0 }
    ::= { tmnxNatIsaGrpEntry 7 }

tmnxNatIsaGrpSessionWatermarkHi OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0|1..100)
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
        "This object is obsoleted.
         
         Use tmnxNatGrpCfgSessionWatermarkHi instead."
    DEFVAL { 0 }
    ::= { tmnxNatIsaGrpEntry 8 }

tmnxNatIsaGrpSessionWatermarkLo OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0..99)
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
        "This object is obsoleted.
         
         Use tmnxNatGrpCfgSessionWatermarkLo instead."
    DEFVAL { 0 }
    ::= { tmnxNatIsaGrpEntry 9 }

tmnxNatIsaGrpOperState  OBJECT-TYPE
    SYNTAX      TmnxOperState 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatIsaGrpOperState indicates the operational 
         status of this NAT ISA group."
    ::= { tmnxNatIsaGrpEntry 50 }

--
--      The Group NAT Configuration Table
--

tmnxNatGrpCfgTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatGrpCfgTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatGrpCfgTable."
    ::= { tmnxNatObjs 116 }

tmnxNatGrpCfgTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatGrpCfgEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatGrpCfgTable contains objects to configure 
        NAT for Integrated Service Adaptor (ISA) Groups.
        
        It extends tables of ISA groups that support NAT, such as the
        tmnxNatIsaGrpTable."
    ::= { tmnxNatIsaGrpObjs 3 }

tmnxNatGrpCfgEntry   OBJECT-TYPE
        SYNTAX          TmnxNatGrpCfgEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
       "Each conceptual row represents a Network Address Translation
        configuration of an Integrated Service Adaptor Group.

        Entries in this table are created automatically by the system for
        every ISA group that supports NAT."
    INDEX { tmnxNatGrpCfgId }
    ::= { tmnxNatGrpCfgTable 1 }

TmnxNatGrpCfgEntry ::= 
    SEQUENCE {
        tmnxNatGrpCfgId                  TmnxNatIsaGrpId,
        tmnxNatGrpCfgLastMgmtChange      TimeStamp,
        tmnxNatGrpCfgSessionResvCount    Unsigned32,                    
        tmnxNatGrpCfgSessionWatermarkHi  TmnxNatWaterMark,
        tmnxNatGrpCfgSessionWatermarkLo  TmnxNatWaterMark,
        tmnxNatGrpCfgAccountingPlcy      TNamedItemOrEmpty
    }
        
tmnxNatGrpCfgId OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpId
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatGrpCfgId specifies the identifier of
        the Integrated Service Adaptor group."
    ::= { tmnxNatGrpCfgEntry 1 }

tmnxNatGrpCfgLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatGrpCfgLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatGrpCfgEntry 2 }

tmnxNatGrpCfgSessionResvCount OBJECT-TYPE
    SYNTAX      Unsigned32 (0..6291456)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatGrpCfgSessionResvCount specifies, 
         for each MDA in this ISA group,
         the number of sessions that are reserved for prioritized sessions.
         
         The value obtained by subtracting the tmnxNatGrpCfgSessionResvCount 
         from the maximum number of sessions supported by each MDA  
         is a soft session limit; this soft limit can only be exceeded 
         by prioritized sessions."
    DEFVAL { 0 }
    ::= { tmnxNatGrpCfgEntry 3 }

tmnxNatGrpCfgSessionWatermarkHi OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0|1..100)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatGrpCfgSessionWatermarkHi specifies 
         the high watermark of the number of sessions for each MDA 
         in this ISA group.
         
         The value of this object must be set together with the value of
         tmnxNatGrpCfgSessionWatermarkLo.
         
         The value of this object must be higher than the value of
         tmnxNatGrpCfgSessionWatermarkLo, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatGrpCfgEntry 4 }

tmnxNatGrpCfgSessionWatermarkLo OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0..99)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatGrpCfgSessionWatermarkLo specifies 
         the low watermark of the number of sessions for each MDA 
         in this ISA group.
         
         The value of this object must be set together with the value of
         tmnxNatGrpCfgSessionWatermarkHi.
         
         The value of this object must be lower than the value of
         tmnxNatGrpCfgSessionWatermarkHi, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatGrpCfgEntry 5 }

tmnxNatGrpCfgAccountingPlcy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatGrpCfgAccountingPlcy specifies
         the RADIUS accounting policy to use for each MDA 
         in this ISA group.
         
         The value of this object refers to a conceptual row in the
         tmnxNatApTable."
    DEFVAL { ''H }
    ::= { tmnxNatGrpCfgEntry 6 }

--
--      The NAT ISA Group MDA Table
--

tmnxNatIsaMdaObjs        OBJECT IDENTIFIER ::= { tmnxNatIsaObjs 2 }

tmnxNatIsaMdaTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatIsaMdaTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatIsaMdaTable."
    ::= { tmnxNatObjs 101 }

tmnxNatIsaMdaTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaMdaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaMdaTable contains objects to configure 
        the NAT ISA Group Media Dependent Adapters (MDA)."
    ::= { tmnxNatIsaMdaObjs 1 }

tmnxNatIsaMdaEntry   OBJECT-TYPE
    SYNTAX      TmnxNatIsaMdaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row represents an NAT 
        ISA Media Dependent Adapter (MDA) of an NAT ISA Group.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { tmnxNatIsaGrpId ,
            tmnxChassisIndex, 
            tmnxCardSlotNum, 
            tmnxMDASlotNum }
    ::= { tmnxNatIsaMdaTable 1 }

TmnxNatIsaMdaEntry ::= 
    SEQUENCE {
        tmnxNatIsaMdaRowStatus           RowStatus,
        tmnxNatIsaMdaLastMgmtChange      TimeStamp
    }

tmnxNatIsaMdaRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMdaRowStatus specifies the row status of
        this row."
    ::= { tmnxNatIsaMdaEntry 1 }

tmnxNatIsaMdaLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatIsaMdaLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatIsaMdaEntry 2 }

--
--      The NAT ISA Group MDA Stat Table
--
--  Augmentation of the tmnxNatIsaMdaTable
--  Use of AUGMENTS clause implies a one-to-one dependent relationship
--  between the base table, tmnxNatIsaMdaTable, and the augmenting table,
--  tmnxNatIsaMdaStatTable. This in effect extends the tmnxNatIsaMdaTable
--  with additional columns. Creation (or deletion) of a row in the
--  tmnxNatIsaMdaTable results in the same fate for the row in the
--  tmnxNatIsaMdaStatTable.


tmnxNatIsaMdaStatObjs        OBJECT IDENTIFIER ::= { tmnxNatIsaObjs 3 }

tmnxNatIsaMdaStatTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatIsaMdaStatTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatIsaGrpTable."
    ::= { tmnxNatObjs 102 }

tmnxNatIsaMdaStatTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaMdaStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaMdaStatTable contains status and statistics information 
        about the Media Dependent Adapters (MDA) of a NAT ISA Group."
    ::= { tmnxNatIsaMdaStatObjs 1 }

tmnxNatIsaMdaStatEntry   OBJECT-TYPE
    SYNTAX      TmnxNatIsaMdaStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row contains status and basic statistics information
        about a Media Dependent Adapter (MDA) of a NAT ISA Group.

        Entries in this table are created and removed automatically by the 
        system."
    AUGMENTS { tmnxNatIsaMdaEntry }
    ::= { tmnxNatIsaMdaStatTable 1 }

TmnxNatIsaMdaStatEntry ::= 
    SEQUENCE {
        tmnxNatIsaMdaStatOperState       TmnxNatIsaMdaOperState
    }
        
tmnxNatIsaMdaStatOperState OBJECT-TYPE
    SYNTAX      TmnxNatIsaMdaOperState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMdaStatOperState indicates the
        operational state of this NAT ISA MDA."
    ::= { tmnxNatIsaMdaStatEntry 1 }

--
--      The NAT ISA Group Member Table
--


tmnxNatIsaMemberTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaMemberEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaMemberTable contains status and statistics information 
        about the members of a NAT ISA Group.
        
        A member of a NAT ISA Group can be mapped to a physical NAT ISA MDA."
    ::= { tmnxNatIsaMdaStatObjs 2 }

tmnxNatIsaMemberEntry   OBJECT-TYPE
    SYNTAX      TmnxNatIsaMemberEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row contains status and basic statistics information
        about a member of a NAT ISA Group.

        Entries in this table are created and removed automatically by the 
        system."
    INDEX { tmnxNatIsaGrpId,
            tmnxNatIsaMemberId }
    ::= { tmnxNatIsaMemberTable 1 }

TmnxNatIsaMemberEntry ::= 
    SEQUENCE {
        tmnxNatIsaMemberId               Unsigned32,
        tmnxNatIsaMemberMdaState         INTEGER,
        tmnxNatIsaMemberMdaChassisIndex  TmnxChassisIndexOrZero,
        tmnxNatIsaMemberMdaCardSlotNum   TmnxSlotNumOrZero,
        tmnxNatIsaMemberMdaSlotNum       Unsigned32,
        tmnxNatIsaMemberIpAddrReserved   Gauge32,
        tmnxNatIsaMemberBlocksReserved   Gauge32,
        tmnxNatIsaMemberSessionUsage     TmnxNatUsageLevel,
        tmnxNatIsaMemberSessionUsageHi   TruthValue,
        tmnxNatIsaMemberSessionsPrio     Gauge32

    }
        
tmnxNatIsaMemberId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatIsaMemberId indicates the identifier of
        this NAT ISA Group member."
    ::= { tmnxNatIsaMemberEntry 1 }

tmnxNatIsaMemberMdaState OBJECT-TYPE
    SYNTAX      INTEGER {
                    inactive       (1),
                    active         (2),
                    needsReset     (3),
                    resetting      (4),
                    needsReconcile (5),
                    reconciling    (6),
                    needsAudit     (7),
                    auditing       (8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberMdaState indicates the
        state of the MDA associated with this member."
    ::= { tmnxNatIsaMemberEntry 2 }

tmnxNatIsaMemberMdaChassisIndex OBJECT-TYPE
    SYNTAX      TmnxChassisIndexOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberMdaChassisIndex indicates the
        chassis of the MDA associated with this member.
        
        The value zero means that there is currently no MDA associated with this
        member."
    ::= { tmnxNatIsaMemberEntry 3 }

tmnxNatIsaMemberMdaCardSlotNum OBJECT-TYPE
    SYNTAX      TmnxSlotNumOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberMdaCardSlotNum indicates the
        IOM slot of the MDA associated with this member.
        
        The value zero means that there is currently no MDA associated with this
        member."
    ::= { tmnxNatIsaMemberEntry 4 }

tmnxNatIsaMemberMdaSlotNum OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberMdaSlotNum indicates the
        MDA slot within the IOM of the MDA associated with this member.
        
        The value zero means that there is currently no MDA associated with this
        member."
    ::= { tmnxNatIsaMemberEntry 5 }

tmnxNatIsaMemberIpAddrReserved OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberIpAddrReserved indicates the
        number of IP addresses reserved for the MDA associated with this member."
    ::= { tmnxNatIsaMemberEntry 6 }

tmnxNatIsaMemberBlocksReserved OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberBlocksReserved indicates the
        number of port blocks reserved for the MDA associated with this member."
    ::= { tmnxNatIsaMemberEntry 7 }

tmnxNatIsaMemberSessionUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberSessionUsage indicates the
        session usage of the MDA associated with this member."
    ::= { tmnxNatIsaMemberEntry 8 }

tmnxNatIsaMemberSessionUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberSessionUsageHi indicates 
        if the session usage of the MDA associated with this member is high 
        according to the values of the objects tmnxNatGrpCfgSessionWatermarkHi 
        and tmnxNatGrpCfgSessionWatermarkLo."
    ::= { tmnxNatIsaMemberEntry 9 }

tmnxNatIsaMemberSessionsPrio OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatIsaMemberSessionsPrio indicates the
        current number of active prioritized sessions of the MDA associated 
        with this member."
    ::= { tmnxNatIsaMemberEntry 10 }

--
--      The NAT ISA Group Member Statistics Table
--


tmnxNatIsaMemberStatsTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaMemberStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaMemberStatsTable contains detailed statistics information 
        about the members of a NAT ISA Group."
    ::= { tmnxNatIsaMdaStatObjs 3 }

tmnxNatIsaMemberStatsEntry   OBJECT-TYPE
    SYNTAX      TmnxNatIsaMemberStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row contains detailed statistics information
        about a member of a NAT ISA Group.

        Entries in this table are created and removed automatically by the 
        system."
    INDEX { tmnxNatIsaGrpId,
            tmnxNatIsaMemberId,
            tmnxNatIsaMemberStatsType }
    ::= { tmnxNatIsaMemberStatsTable 1 }

TmnxNatIsaMemberStatsEntry ::= 
    SEQUENCE {
        tmnxNatIsaMemberStatsType        Unsigned32,
        tmnxNatIsaMemberStatsName        DisplayString,
        tmnxNatIsaMemberStatsVal         Counter32,
        tmnxNatIsaMemberStatsValHw       Counter32,
        tmnxNatIsaMemberStatsValue       Counter64
    }

tmnxNatIsaMemberStatsType OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatIsaMemberStatsType indicates
         the type of NAT session statistics contained in this conceptual row."
    ::= { tmnxNatIsaMemberStatsEntry 1 }

tmnxNatIsaMemberStatsName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaMemberStatsName indicates
        the human-readable identifier of the statistics 
        contained in this conceptual row."
    ::= { tmnxNatIsaMemberStatsEntry 2 }

tmnxNatIsaMemberStatsVal OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaMemberStatsVal indicates
        the lower 32-bits word of the statistics value 
        contained in this conceptual row."
    ::= { tmnxNatIsaMemberStatsEntry 3 }

tmnxNatIsaMemberStatsValHw OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaMemberStatsValHw indicates
        the higher 32-bits word of the statistics value 
        contained in this conceptual row."
    ::= { tmnxNatIsaMemberStatsEntry 4 }

tmnxNatIsaMemberStatsValue OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaMemberStatsValue indicates
        the value of the statistics contained in this conceptual row."
    ::= { tmnxNatIsaMemberStatsEntry 5 }

--
--      The NAT ISA Resources Statistics Table
--


tmnxNatIsaResrcStatsTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatIsaResrcStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatIsaResrcStatsTable contains detailed statistics information 
        about the resources of the NAT ISA MDA.
        
        The typical usage of this table is to fill in the part of the index
        that identifies an ISA NAT MDA, and perform a partial walk
        to get all the resources statistics applicable to that MDA."
    ::= { tmnxNatIsaMdaStatObjs 4 }

tmnxNatIsaResrcStatsEntry   OBJECT-TYPE
    SYNTAX      TmnxNatIsaResrcStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row contains the name and statistics value
        of a particular resource of a NAT ISA MDA.

        Entries in this table are created and removed automatically by the 
        system."
    INDEX { tmnxChassisIndex, 
            tmnxCardSlotNum, 
            tmnxMDASlotNum,
            tmnxNatIsaResrcStatsId }
    ::= { tmnxNatIsaResrcStatsTable 1 }

TmnxNatIsaResrcStatsEntry ::= 
    SEQUENCE {
        tmnxNatIsaResrcStatsId           Unsigned32,
        tmnxNatIsaResrcStatsName         DisplayString,
        tmnxNatIsaResrcStatsValMax       CounterBasedGauge64,
        tmnxNatIsaResrcStatsValMaxLw     Gauge32,
        tmnxNatIsaResrcStatsValMaxHw     Gauge32,
        tmnxNatIsaResrcStatsVal          CounterBasedGauge64,
        tmnxNatIsaResrcStatsValLw        Gauge32,
        tmnxNatIsaResrcStatsValHw        Gauge32
    }

tmnxNatIsaResrcStatsId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatIsaResrcStatsId indicates
         the identifier of this conceptual row.
         
         It is a meaningless number generated by the system
         as identifier of this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 1 }

tmnxNatIsaResrcStatsName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsName indicates
        the human-readable identifier of the statistics 
        contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 2 }

tmnxNatIsaResrcStatsValMax OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsValMax indicates
        the maximum available value of the resource statistics
        contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 3 }

tmnxNatIsaResrcStatsValMaxLw OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsValMaxLw indicates
        the lower 32 bits of the maximum available value of the resource 
        statistics contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 4 }

tmnxNatIsaResrcStatsValMaxHw OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsValMaxHw indicates
        the higher 32 bits of the maximum available value of the resource 
        statistics contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 5 }

tmnxNatIsaResrcStatsVal OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsVal indicates
        the actual value of the resource statistics
        contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 6 }
    
tmnxNatIsaResrcStatsValLw OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsValLw indicates
        the lower 32 bits of the actual value of the resource statistics
        contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 7 }
    
tmnxNatIsaResrcStatsValHw OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatIsaResrcStatsValHw indicates
        the higer 32 bits of the actual value of the resource statistics
        contained in this conceptual row."
    ::= { tmnxNatIsaResrcStatsEntry 8 }
    
-- ----------------------------------------------------------------------------
--      The "NAT Policy" Group
-- ----------------------------------------------------------------------------

--
--      The NAT Policy Table
--

tmnxNatPlcyTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlcyTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPlcyTable."
    ::= { tmnxNatObjs 103 }

tmnxNatPlcyTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlcyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlcyTable contains objects to configure 
        the NAT policies of this system."
    ::= { tmnxNatPlcyObjs 1 }

tmnxNatPlcyEntry OBJECT-TYPE
    SYNTAX      TmnxNatPlcyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about 
         a particular NAT policy.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { IMPLIED tmnxNatPlcyName }
    ::= { tmnxNatPlcyTable 1 }

TmnxNatPlcyEntry ::= 
    SEQUENCE {
        tmnxNatPlcyName                  TNamedItem,
        tmnxNatPlcyLastMgmtChange        TimeStamp,
        tmnxNatPlcyRowStatus             RowStatus,
        tmnxNatPlcyDescription           TItemDescription,
        tmnxNatPlcyPool                  TNamedItemOrEmpty,
        tmnxNatPlcyPoolVRtr              TmnxVRtrIDOrZero,
        tmnxNatPlcyFiltering             TmnxNatFiltering,
        tmnxNatPlcyPortResvCount         Unsigned32,                    
        tmnxNatPlcyPortWatermarkHigh     TmnxNatWaterMark,
        tmnxNatPlcyPortWatermarkLow      TmnxNatWaterMark,
        tmnxNatPlcySessionLimit          Unsigned32,                    
        tmnxNatPlcySessionResvCount      Unsigned32,                    
        tmnxNatPlcySessionWatermarkHigh  TmnxNatWaterMark,
        tmnxNatPlcySessionWatermarkLow   TmnxNatWaterMark,
        tmnxNatPlcyPrioSessionFcSet      TFCSet,
        tmnxNatPlcyToTcpEstab            Unsigned32,                    
        tmnxNatPlcyToTcpTrans            Unsigned32,                    
        tmnxNatPlcyToTcpSyn              Unsigned32,                    
        tmnxNatPlcyToTcpTimeWait         Unsigned32,
        tmnxNatPlcyToUdp                 Unsigned32,                    
        tmnxNatPlcyToUdpInitial          Unsigned32,                    
        tmnxNatPlcyToUdpDns              Unsigned32,
        tmnxNatPlcyToIcmpQuery           Unsigned32,
        tmnxNatPlcyBlkLimit              Unsigned32,
        tmnxNatPlcyToSip                 Unsigned32,
        tmnxNatPlcyAlgEnable             TmnxNatAlgProtocols,
        tmnxNatPlcyPortFwdLimit          Unsigned32,
        tmnxNatPlcyUdpInboundRefresh     TruthValue,                    
        tmnxNatPlcyDestNatAddrType       InetAddressType,
        tmnxNatPlcyDestNatAddr           InetAddress,
        tmnxNatPlcyDestNatPort           InetPortNumber,
        tmnxNatPlcyIpfixExpPlcy          TNamedItemOrEmpty,
        tmnxNatPlcyTcpMssAdjust          Unsigned32,
        tmnxNatPlcyToSubRetention        Unsigned32
    }

tmnxNatPlcyName OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyName specifies
         the name of this NAT policy."
    ::= { tmnxNatPlcyEntry 1 }

tmnxNatPlcyLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPlcyEntry 2 }

tmnxNatPlcyRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyRowStatus specifies the row status of this row."
    ::= { tmnxNatPlcyEntry 3 }

tmnxNatPlcyDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyDescription specifies
         the description of this NAT policy."
    DEFVAL { "" }
    ::= { tmnxNatPlcyEntry 4 }

tmnxNatPlcyPool OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlcyPool specifies
         the NAT pool to use with this policy.
         
         The value of this object must be set together with the value of
         tmnxNatPlcyPoolVRtr."
    DEFVAL { ''H }
    ::= { tmnxNatPlcyEntry 5 }

tmnxNatPlcyPoolVRtr OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyPoolVRtr specifies the virtual router
         instance of the pool referred to by the object tmnxNatPlcyPool.
         
         The value of this object must be set together with the value of
         tmnxNatPlcyPool."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 6 }

tmnxNatPlcyFiltering OBJECT-TYPE
    SYNTAX      TmnxNatFiltering
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyFiltering specifies 
         the type of NAT filtering to be applied."
    DEFVAL { endpointIndependent }
    ::= { tmnxNatPlcyEntry 7 }

tmnxNatPlcyPortResvCount OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65534)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyPortResvCount specifies, 
         for each NAT subscriber associated with this policy,
         the number of ports that are reserved within its allocated
         block.
         
         The number of ports in its allocated block is specified within the
         configuration of the pool associated with this policy, by the values
         of tmnxNatPlPortResvType and tmnxNatPlPortResvVal.

         The value obtained by subtracting the tmnxNatPlcyPortResvCount from
         the number of ports, is a soft limit; this soft limit
         can only be exceeded by sessions that belong to one of the
         forwarding classes specified by the value of 
         tmnxNatPlcyPrioSessionFcSet.
         
         The value of tmnxNatPlcyPortResvCount must be smaller than the
         number of ports in the allocated block."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 8 }

tmnxNatPlcyPortWatermarkHigh OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0|1..100)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyPortWatermarkHigh specifies 
         the high watermark of the port usage for each NAT subscriber 
         associated with this policy.
         
         The value of this object must be higher than the value of
         tmnxNatPlcyPortWatermarkLow, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 9 }

tmnxNatPlcyPortWatermarkLow OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0..99)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyPortWatermarkLow specifies 
         the low watermark of the port usage for each NAT subscriber
         associated with this policy.
         
         The value of this object must be lower than the value of
         tmnxNatPlcyPortWatermarkHigh, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 10 }

tmnxNatPlcySessionLimit OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcySessionLimit specifies 
         the maximum number of sessions allowed for a NAT subscriber associated
         with this policy."
    DEFVAL { 65535 }
    ::= { tmnxNatPlcyEntry 11 }

tmnxNatPlcySessionResvCount OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65534)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcySessionResvCount specifies, 
         for each NAT subscriber associated with this policy,
         the number of sessions that are reserved within its allocation
         allowed by the value of tmnxNatPlcySessionLimit.
         
         The value obtained by subtracting the tmnxNatPlcySessionResvCount from
         the tmnxNatPlcySessionLimit is a soft session limit; this soft limit
         can only be exceeded by sessions that belong to one of the
         forwarding classes specified by the value of 
         tmnxNatPlcyPrioSessionFcSet.
         
         The value of tmnxNatPlcySessionResvCount must be smaller than the
         value of tmnxNatPlcySessionLimit."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 12 }

tmnxNatPlcySessionWatermarkHigh OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0|1..100)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcySessionWatermarkHigh specifies 
         the high watermark of the number of sessions for each NAT subscriber 
         associated with this policy.
         
         The value of this object must be higher than the value of
         tmnxNatPlcySessionWatermarkLow, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 13 }

tmnxNatPlcySessionWatermarkLow OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0..99)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcySessionWatermarkLow specifies 
         the low watermark of the number of sessions for each NAT subscriber
         with this policy.
         
         The value of this object must be lower than the value of
         tmnxNatPlcySessionWatermarkHigh, unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 14 }

tmnxNatPlcyPrioSessionFcSet OBJECT-TYPE
    SYNTAX      TFCSet
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyFiltering specifies 
         the forwarding classes that have their sessions prioritized.
         
         Prioritized sessions are allowed to use the ports from the reserved
         ports of a block."
    DEFVAL { {} }
    ::= { tmnxNatPlcyEntry 15 }

tmnxNatPlcyToTcpEstab OBJECT-TYPE
    SYNTAX      Unsigned32 (60..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToTcpEstab specifies 
         the idle timeout applied to a TCP session in the established state."
    REFERENCE
       "RFC 5382 NAT TCP Requirements,
        section 5."
    DEFVAL { 7440 }
    ::= { tmnxNatPlcyEntry 16 }

tmnxNatPlcyToTcpTrans OBJECT-TYPE
    SYNTAX      Unsigned32 (60..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToTcpTrans specifies 
         the idle timeout applied to a TCP session in a transitory state."
    REFERENCE
       "RFC 5382 NAT TCP Requirements,
        section 5, section 8."
    DEFVAL { 240 }
    ::= { tmnxNatPlcyEntry 17 }

tmnxNatPlcyToTcpSyn OBJECT-TYPE
    SYNTAX      Unsigned32 (6..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToTcpSyn specifies 
         the timeout applied to a TCP session when synchronizing its initial
         sequence."
    DEFVAL { 15 }
    ::= { tmnxNatPlcyEntry 18 }

tmnxNatPlcyToTcpTimeWait OBJECT-TYPE
    SYNTAX      Unsigned32 (0..240)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToTcpTimeWait specifies 
         the timeout before leaving the TIME-WAIT state and entering the CLOSED
         state."
    REFERENCE
       "RFC 793 Transmission Control Protocol, page 76."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 19 }

tmnxNatPlcyToUdp OBJECT-TYPE
    SYNTAX      Unsigned32 (60..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToUdp specifies 
         the UDP mapping timeout."
    REFERENCE
       "RFC 4787 NAT UDP Unicast Requirements, 
        section 4.3 Mapping refresh."
    DEFVAL { 300 }
    ::= { tmnxNatPlcyEntry 20 }

tmnxNatPlcyToUdpInitial OBJECT-TYPE
    SYNTAX      Unsigned32 (10..300)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToUdpInitial specifies 
         the UDP mapping timeout to be applied for new UDP mappings, where
         only a single packet has been transmitted."
    DEFVAL { 15 }
    ::= { tmnxNatPlcyEntry 21 }

tmnxNatPlcyToUdpDns OBJECT-TYPE
    SYNTAX      Unsigned32 (15..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToUdpDns specifies 
         the timeout applied to a UDP session with destination port 53."
    REFERENCE
       "RFC 4787 NAT UDP Unicast Requirements, 
        section 4.3 Mapping refresh REQ-5 a."
    DEFVAL { 15 }
    ::= { tmnxNatPlcyEntry 22 }

tmnxNatPlcyToIcmpQuery OBJECT-TYPE
    SYNTAX      Unsigned32 (60..240)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToIcmpQuery specifies 
         the timeout applied to an ICMP Query session."
    REFERENCE
       "draft-ietf-behave-nat-icmp-12 NAT Behavioral Requirements for ICMP
        section 3.2 ."
    DEFVAL { 60 }
    ::= { tmnxNatPlcyEntry 23 }

tmnxNatPlcyBlkLimit OBJECT-TYPE
    SYNTAX      Unsigned32 (1..40)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyBlkLimit specifies 
         the maximum number of port blocks allowed for a NAT subscriber 
         associated with this policy.
         
         The value of this object is only relevant for Large Scale NAT;
         it is not allowed to change it while a Layer-2-Aware NAT pool
         is associated with this policy."
    DEFVAL { 1 }
    ::= { tmnxNatPlcyEntry 25 }

tmnxNatPlcyToSip OBJECT-TYPE
    SYNTAX      Unsigned32 (10..2550)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToSip specifies the inactive media timeout,
         the time a temporary mapping remains active without any media traffic."
    DEFVAL { 120 }
    ::= { tmnxNatPlcyEntry 26 }
    
tmnxNatPlcyAlgEnable OBJECT-TYPE
    SYNTAX      TmnxNatAlgProtocols
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyAlgEnable specifies
        the set of protocols for which the NAT
        Application Level Gateway (ALG) is enabled."
    DEFVAL { {ftp} }
    ::= { tmnxNatPlcyEntry 27 }

tmnxNatPlcyPortFwdLimit OBJECT-TYPE
    SYNTAX      Unsigned32 (0..64)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyPortFwdLimit specifies the maximum number of
        port forwarding entries per subscriber.
        
        The port forwarding entries are in the tmnxNatFwdTable."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 28 }

tmnxNatPlcyUdpInboundRefresh OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyUdpInboundRefresh specifies 
        the NAT inbound refresh behavior."
    REFERENCE
       "RFC 4787 NAT UDP Unicast Requirements, 
        section 4.3 Mapping refresh REQ-6 a."
    DEFVAL { false }
    ::= { tmnxNatPlcyEntry 29 }

tmnxNatPlcyDestNatAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyDestNatAddrType specifies 
        the address type of tmnxNatPlcyDestNatAddr"
    DEFVAL { unknown }
    ::= { tmnxNatPlcyEntry 30 }

tmnxNatPlcyDestNatAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyDestNatAddr specifies 
        the destination address used for Destination-NAT"
    DEFVAL { ''H }
    ::= { tmnxNatPlcyEntry 31 }

tmnxNatPlcyDestNatPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlcyDestNatPort specifies 
        the destination port used for Destination-NAT"
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 32 }

tmnxNatPlcyIpfixExpPlcy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlcyIpfixExpPlcy specifies
         the IPFIX Export policy to use with this policy.
         
         The value of this object refers to a conceptual row in the
         TIMETRA-IPFIX-MIB::tmnxIpfixExpPlcyTable."
    DEFVAL { ''H }
    ::= { tmnxNatPlcyEntry 40 }
    
tmnxNatPlcyTcpMssAdjust OBJECT-TYPE
    SYNTAX      Unsigned32 (0|160..10240)
    UNITS       "bytes"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyTcpMssAdjust specifies 
         the value to put into the TCP Maximum Segment Size (MSS) option
         if not already present, or if the present value is higher.
         
         The value zero means that no MSS option adjustment is done."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 41 }

tmnxNatPlcyToSubRetention OBJECT-TYPE
    SYNTAX      Unsigned32 (0..1440)
    UNITS       "minutes"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyToSubRetention specifies the subscriber retention timeout,
         the time a NAT subscriber and its associated IP address is kept after all hosts and
         associated port blocks have expired.
         
         If a NAT subscriber host appears before the retention timeout has elapsed, it will
         be given the same outside IP address."
    DEFVAL { 0 }
    ::= { tmnxNatPlcyEntry 42 }
    
--
--      The NAT Policy Statistics Table
--

tmnxNatPlcyStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlcyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlcyStatsTable contains detailed usage statistics of  
        the NAT policies of this system."
    ::= { tmnxNatPlcyObjs 2 }

tmnxNatPlcyStatsEntry OBJECT-TYPE
    SYNTAX      TmnxNatPlcyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row contains detailed usage statistics information  
         about a particular NAT policy and a particular NAT ISA MDA."
    INDEX { tmnxNatPlcyName,
            tmnxChassisIndex, 
            tmnxCardSlotNum, 
            tmnxMDASlotNum,
            tmnxNatPlcyStatsType }
    ::= { tmnxNatPlcyStatsTable 1 }

TmnxNatPlcyStatsEntry ::= 
    SEQUENCE {
        tmnxNatPlcyStatsType             TmnxNatUsageStatsType,
        tmnxNatPlcyStatsName             DisplayString,
        tmnxNatPlcyStatsVal              Gauge32
    }

tmnxNatPlcyStatsType OBJECT-TYPE
    SYNTAX      TmnxNatUsageStatsType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlcyStatsType indicates
         the type of NAT usage statistics contained in this conceptual row."
    ::= { tmnxNatPlcyStatsEntry 1 }

tmnxNatPlcyStatsName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPlcyStatsName indicates
        the human-readable identifier of the statistics 
        contained in this conceptual row."
    ::= { tmnxNatPlcyStatsEntry 2 }

tmnxNatPlcyStatsVal OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPlcyStatsVal indicates
        the value of the statistics contained in this conceptual row."
    ::= { tmnxNatPlcyStatsEntry 3 }

-- ----------------------------------------------------------------------------
--      The "NAT Virtual Router" Group
-- ----------------------------------------------------------------------------

--
--      The NAT Virtual Router Table
--

tmnxNatVrtrTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatVrtrTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatVrtrTable."
    ::= { tmnxNatObjs 104 }

tmnxNatVrtrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatVrtrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatVrtrTable contains objects to configure the NAT operation
        of a virtual router instance."
    ::= { tmnxNatVrtrObjs 1 }

tmnxNatVrtrEntry OBJECT-TYPE
    SYNTAX      TmnxNatVrtrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about the NAT operation
         of a particular virtual router instance.

         Entries in this table can be created and destroyed with SNMP operations."
    INDEX { vRtrID }
    ::= { tmnxNatVrtrTable 1 }

TmnxNatVrtrEntry ::= 
    SEQUENCE {
        tmnxNatVrtrLastMgmtChange        TimeStamp,
        tmnxNatVrtrRowStatus             RowStatus,
        tmnxNatVrtrInPolicy              TNamedItemOrEmpty,               
        tmnxNatVrtrInDsliteAdminState    TmnxAdminState,
        tmnxNatVrtrInDsliteSubPrefixLen  InetAddressPrefixLength,
        tmnxNatVrtrInRedPeerAddrType     InetAddressType,
        tmnxNatVrtrInRedPeerAddr         InetAddress,
        tmnxNatVrtrInRedSteerRtType      InetAddressType,
        tmnxNatVrtrInRedSteerRt          InetAddress,
        tmnxNatVrtrInRedSteerRtLen       InetAddressPrefixLength,
        tmnxNatVrtrOutMtu                Unsigned32          
    }

tmnxNatVrtrLastMgmtChange OBJECT-TYPE
    SYNTAX          TimeStamp
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The value of tmnxNatVrtrLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatVrtrEntry 1 }

tmnxNatVrtrRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatVrtrRowStatus specifies the row status of this row."
    ::= { tmnxNatVrtrEntry 2 }

tmnxNatVrtrInPolicy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatVrtrInPolicy specifies
         the inside NAT policy to use in this virtual router instance."
    DEFVAL { ''H }
    ::= { tmnxNatVrtrEntry 3 }

tmnxNatVrtrInDsliteAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatVrtrInDsliteAdminState specifies
         the DSLite administrative state in this virtual router instance."
    DEFVAL { outOfService }
    ::= { tmnxNatVrtrEntry 4 }
    
tmnxNatVrtrInDsliteSubPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (32..64 | 128)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatVrtrInDsliteSubPrefixLen specifies
         the IPv6 address prefix length to be used for the Dual Stack Lite
         subscribers in this virtual router instance."
    DEFVAL { 128 }
    ::= { tmnxNatVrtrEntry 5 }

tmnxNatVrtrInRedPeerAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatVrtrInRedPeerAddrType specifies
         the address type of tmnxNatVrtrInRedPeerAddr."
    DEFVAL { unknown }
    ::= { tmnxNatVrtrEntry 10 }

tmnxNatVrtrInRedPeerAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatVrtrInRedPeerAddr specifies
         the IP address of the NAT redundancy peer 
         in the realm of this virtual router instance.
         
         While the import prefix of the outside NAT router instance associated
         with this virtual router instance is present, this system redirects
         the traffic received for the NAT function in this virtual router instance
         to the NAT peer."
    DEFVAL { ''H }  
    ::= { tmnxNatVrtrEntry 11 }

tmnxNatVrtrInRedSteerRtType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatVrtrInRedSteerRtType specifies
         the address type of tmnxNatVrtrInRedSteerRt."
    DEFVAL { unknown }
    ::= { tmnxNatVrtrEntry 12 }

tmnxNatVrtrInRedSteerRt OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatVrtrInRedSteerRt specifies
         the IP address of the steering route.
         
         The steering route is used in the realm of this virtual router instance
         as an indirect next-hop for all the traffic that must be routed to
         the Large Scale NAT function."
    DEFVAL { ''H }  
    ::= { tmnxNatVrtrEntry 13 }

tmnxNatVrtrInRedSteerRtLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (0..128)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatVrtrInRedSteerRtLen specifies
         the prefix length of the prefix to be exported."
    DEFVAL { 0 }
    ::= { tmnxNatVrtrEntry 14 }

tmnxNatVrtrOutMtu OBJECT-TYPE
    SYNTAX      Unsigned32 (0|512..9000)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatVrtrOutMtu specifies
         the MTU (Maximum Transmission Unit) for downstream traffic 
         flowing through this router (as outside NAT router).
         
         The system fragments IP datagrams exceeding the MTU.
         
         The value zero means that no MTU is configured."
    DEFVAL { 0 }
    ::= { tmnxNatVrtrEntry 15 }

--
--      The NAT Layer-2-Aware Address Table
--

tmnxNatL2AwAddrTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatL2AwAddrTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatL2AwAddrTable."
    ::= { tmnxNatObjs 105 }

tmnxNatL2AwAddrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatL2AwAddrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatL2AwAddrTable contains the IP addresses for Layer-2-Aware NAT
        subscribers."
    ::= { tmnxNatVrtrObjs 2 }

tmnxNatL2AwAddrEntry OBJECT-TYPE
    SYNTAX      TmnxNatL2AwAddrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a subnet for 
         Layer-2-Aware NAT subscribers.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table."
    INDEX { vRtrID,
            tmnxNatL2AwAddrType,
            tmnxNatL2AwAddr,
            tmnxNatL2AwAddrPrefixLen
           }
    ::= { tmnxNatL2AwAddrTable 1 }

TmnxNatL2AwAddrEntry ::= 
    SEQUENCE {
        tmnxNatL2AwAddrType              InetAddressType,
        tmnxNatL2AwAddr                  InetAddress,
        tmnxNatL2AwAddrPrefixLen         InetAddressPrefixLength,
        tmnxNatL2AwAddrRowStatus         RowStatus,
        tmnxNatL2AwAddrLastMgmtChange    TimeStamp 
    }

tmnxNatL2AwAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwAddrType specifies
         the address type of tmnxNatL2AwAddr.
         
         The only value supported is 'ipv4'."
    ::= { tmnxNatL2AwAddrEntry 1 }

tmnxNatL2AwAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwAddrType specifies
         the IP address of the subnet.
         
         Only IPv4 addresses are supported."
    ::= { tmnxNatL2AwAddrEntry 2 }

tmnxNatL2AwAddrPrefixLen OBJECT-TYPE
    SYNTAX          InetAddressPrefixLength (0..32)
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION 
        "The value of tmnxNatL2AwAddrPrefixLen specifies
         the prefix length of the subnet."
    ::= { tmnxNatL2AwAddrEntry 3 }

tmnxNatL2AwAddrRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatL2AwAddrRowStatus specifies 
        the row status of this row."
    ::= { tmnxNatL2AwAddrEntry 4 }

tmnxNatL2AwAddrLastMgmtChange OBJECT-TYPE
    SYNTAX          TimeStamp
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The value of tmnxNatL2AwAddrLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatL2AwAddrEntry 5 }

--
--      The NAT64 Table
--

tmnxNat64TableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNat64TableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNat64Table."
    ::= { tmnxNatObjs 115 }

tmnxNat64Table OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNat64Entry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNat64Table contains objects to configure the NAT64 operation
        of a virtual router instance."
    ::= { tmnxNatVrtrObjs 3 }

tmnxNat64Entry OBJECT-TYPE
    SYNTAX      TmnxNat64Entry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about the NAT64 operation
         of a particular virtual router instance.

         Rows in this table can be created and destroyed with SNMP operations.
         
         A row in this table can only be created if a row exists in the 
         tmnxNatVrtrTable with the same index."
    INDEX { vRtrID }
    ::= { tmnxNat64Table 1 }

TmnxNat64Entry ::= 
    SEQUENCE {
        tmnxNat64LastMgmtChange          TimeStamp,
        tmnxNat64RowStatus               RowStatus,
        tmnxNat64InAdminState            TmnxAdminState,
        tmnxNat64InSubPrefixLen          InetAddressPrefixLength,
        tmnxNat64InPrefix                InetAddressIPv6,
        tmnxNat64InPrefixLen             InetAddressPrefixLength,
        tmnxNat64InIpv6Mtu               Unsigned32,
        tmnxNat64InDropZeroIpv4Checksum  TruthValue,
        tmnxNat64InSetTos                TruthValue,
        tmnxNat64InTos                   Unsigned32,
        tmnxNat64InIgnoreTos             TruthValue,
        tmnxNat64InInsertIpv6FragHeader  TruthValue
    }

tmnxNat64LastMgmtChange OBJECT-TYPE
    SYNTAX          TimeStamp
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The value of tmnxNat64LastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNat64Entry 1 }

tmnxNat64RowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNat64RowStatus specifies the row status of this row."
    ::= { tmnxNat64Entry 2 }

tmnxNat64InAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNat64InAdminState specifies
         the NAT64 administrative state in this virtual router instance."
    DEFVAL { outOfService }
    ::= { tmnxNat64Entry 3 }
    
tmnxNat64InSubPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (32..64 | 128)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNat64InSubPrefixLen specifies
         the IPv6 address prefix length to be used for the NAT64
         subscribers in this virtual router instance.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    DEFVAL { 128 }
    ::= { tmnxNat64Entry 4 }

tmnxNat64InPrefix OBJECT-TYPE
    SYNTAX      InetAddressIPv6
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InPrefix specifies
         the IP address of the  NAT64 prefix.
         
         Outward bound IP packets with a destination IP address 
         that matches the NAT64 prefix are subject to the NAT64 function.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    DEFVAL { '0064ff9b000000000000000000000000'H }  
    ::= { tmnxNat64Entry 5 }

tmnxNat64InPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (32|40|48|56|64|96)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InPrefixLen specifies
         the prefix length of the NAT64 prefix.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    DEFVAL { 96 }
    ::= { tmnxNat64Entry 6 }

tmnxNat64InIpv6Mtu OBJECT-TYPE
    SYNTAX      Unsigned32 (1280..9212)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InIpv6Mtu specifies
         the Maximum Transmission Unit (MTU) of the IPv6 link.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 4 Translating from IPv4 to IPv6."
    DEFVAL { 1520 }
    ::= { tmnxNat64Entry 7 }

tmnxNat64InDropZeroIpv4Checksum OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InDropZeroIpv4Checksum specifies
         if UDP datagrams with zero IPv4 checksum are dropped.
         
         If the value of tmnxNat64InDropZeroIpv4Checksum is equal to 'false',
         the system calculates the IPv6 checksum for each such datagram.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 4.5 Transport-layer Header Translation."
    DEFVAL { false }
    ::= { tmnxNat64Entry 8 }

tmnxNat64InSetTos OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InSetTos specifies
         if the IPv6 Traffic Class is ignored and the IPv4 Type Of Service (TOS)
         bits set to the value specified by the object tmnxNat64InTos.
         
         If the value of tmnxNat64InSetTos is equal to 'false', the system
         copies the IPv6 Traffic Class into the IPv4 TOS.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 5.1 Translating IPv6 Headers into IPv4 Headers."
    DEFVAL { false }
    ::= { tmnxNat64Entry 9 }

tmnxNat64InTos OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InTos specifies
         what to put in the IPv4 Type Of Service (TOS) field while the value
         of tmnxNat64InSetTos is equal to 'true'.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 5.1 Translating IPv6 Headers into IPv4 Headers."
    DEFVAL { 0 }
    ::= { tmnxNat64Entry 10 }
    
tmnxNat64InIgnoreTos OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InIgnoreTos specifies
         if the IPv4 Type Of Service (TOS) is ignored and the 
         IPv6 Traffic Class bits set to zero.
         
         If the value of tmnxNat64InIgnoreTos is equal to 'false', the system
         copies the IPv4 TOS into the IPv6 Traffic Class.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'"
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 4.1 Translating IPv4 Headers into IPv6 Headers."
    DEFVAL { false }
    ::= { tmnxNat64Entry 11 }

tmnxNat64InInsertIpv6FragHeader OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64InInsertIpv6FragHeader specifies
         if the system always inserts an IPv6 fragment header, 
         to indicate that the sender allows fragmentation.
         
         The value of this object can only be modified while the value of
         the object tmnxNat64InAdminState is equal to 'outOfService'."
    REFERENCE
       "Draft IP/ICMP Translation Algorithm (draft-ietf-behave-v6v4-xlate), 
        section 4 Translating from IPv4 to IPv6."
    DEFVAL { false }
    ::= { tmnxNat64Entry 12 }

--
--      The Subscriber Identification Table
--

tmnxNatSubIdTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatSubIdTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatSubIdTable."
    ::= { tmnxNatObjs 117 }

tmnxNatSubIdTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatSubIdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatSubIdTable contains objects to configure the subscriber identification
        for Large Scale NAT of a virtual router instance."
    ::= { tmnxNatVrtrObjs 4 }

tmnxNatSubIdEntry OBJECT-TYPE
    SYNTAX      TmnxNatSubIdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about the identification of LSN subscribers
         of a particular virtual router instance.

         Rows in this table are automatically created and destroyed by the system."
    AUGMENTS { tmnxNatVrtrEntry }
    ::= { tmnxNatSubIdTable 1 }

TmnxNatSubIdEntry ::= 
    SEQUENCE {
        tmnxNatSubIdLastMgmtChange       TimeStamp,
        tmnxNatSubIdDescription          TItemDescription,
        tmnxNatSubIdAdminState           TmnxAdminState,
        tmnxNatSubIdRadProxSrvRouter     TmnxVRtrIDOrZero,
        tmnxNatSubIdRadProxSrvName       TNamedItemOrEmpty,
        tmnxNatSubIdRadiusAttributeType  TmnxSubRadiusAttrType,
        tmnxNatSubIdRadiusVendorId       TmnxSubRadiusVendorId,
        tmnxNatSubIdDropUnidentified     TruthValue
    }

tmnxNatSubIdLastMgmtChange OBJECT-TYPE
    SYNTAX          TimeStamp
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The value of tmnxNatSubIdLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatSubIdEntry 1 }

tmnxNatSubIdDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatSubIdDescription specifies the description of this row."
    DEFVAL { "" }
    ::= { tmnxNatSubIdEntry 2 }

tmnxNatSubIdAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatSubIdAdminState specifies
         the administrative state of subscriber identification
         in this virtual router instance."
    DEFVAL { outOfService }
    ::= { tmnxNatSubIdEntry 3 }
    
tmnxNatSubIdRadProxSrvRouter OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatSubIdRadProxSrvRouter specifies
         the identifier of the virtual router instance 
         of the RADIUS Proxy server to be used for the LSN subscriber identification."
    DEFVAL { 0 }
    ::= { tmnxNatSubIdEntry 4 }

tmnxNatSubIdRadProxSrvName OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatSubIdRadProxSrvName specifies
         the name of the RADIUS Proxy server 
         to be used for the LSN subscriber identification."
    DEFVAL { "" }
    ::= { tmnxNatSubIdEntry 5 }

tmnxNatSubIdRadiusAttributeType OBJECT-TYPE
    SYNTAX      TmnxSubRadiusAttrType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatSubIdRadiusAttributeType specifies
         the RADIUS Attribute Type to be used as the subscriber identifier.
         
         The value 11 refers to the Alcatel-Lucent vendor-specific
         attribute 'Alc-Subsc-ID-Str'.
         
         The values supported for each vendor are listed 
         in the tmnxNatSubscIdAttrTable."
    DEFVAL { 11 }
    ::= { tmnxNatSubIdEntry 6 }

tmnxNatSubIdRadiusVendorId OBJECT-TYPE
    SYNTAX      TmnxSubRadiusVendorId
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatSubIdRadiusVendorId specifies
         the RADIUS Vendor-Id.
         
         If the value of tmnxNatSubIdRadiusVendorId is equal to zero, the
         attribute type specified by tmnxNatSubIdRadiusAttributeType must be
         used as subscriber identifier if it appears 
         outside of a Vendor-Specific attribute.
         
         If the value of tmnxNatSubIdRadiusVendorId is not equal to zero, the
         attribute type specified by tmnxNatSubIdRadiusAttributeType must be
         used as subscriber identifier if it appears 
         as a sub-attribute within a Vendor-Specific attribute 
         with Vendor-Id equal to the value of tmnxNatSubIdRadiusVendorId.
         
         The value 6527 refers to Alcatel-Lucent.
         
         The supported values are listed in the tmnxNatSubscIdVendorTable."
    DEFVAL { 6527 }
    ::= { tmnxNatSubIdEntry 7 }

tmnxNatSubIdDropUnidentified OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatSubIdDropUnidentified specifies
         if traffic from unidentified flows must be dropped."
    DEFVAL { false }
    ::= { tmnxNatSubIdEntry 8 }
    

-- ----------------------------------------------------------------------------
--      The "NAT Pool" Group
-- ----------------------------------------------------------------------------

--
--      The NAT Pool Table
--

tmnxNatPlTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPlTable."
    ::= { tmnxNatObjs 106 }

tmnxNatPlTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlTable contains objects to configure the NAT address pools."
    ::= { tmnxNatPoolObjs 1 }

tmnxNatPlEntry OBJECT-TYPE
    SYNTAX          TmnxNatPlEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Each conceptual row represents a NAT address pool.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table."
    INDEX { vRtrID,
            IMPLIED tmnxNatPlName }
    ::= { tmnxNatPlTable 1 }

TmnxNatPlEntry ::= 
    SEQUENCE {
        tmnxNatPlName                    TNamedItem,
        tmnxNatPlRowStatus               RowStatus,
        tmnxNatPlLastMgmtChange          TimeStamp,
        tmnxNatPlIsaGrp                  TmnxNatIsaGrpId,
        tmnxNatPlType                    TmnxNatPlType,
        tmnxNatPlDescription             TItemDescription,
        tmnxNatPlAdminState              TmnxAdminState,
        tmnxNatPlPortResvType            INTEGER,
        tmnxNatPlPortResvVal             Unsigned32,
        tmnxNatPlPortResvAllowPrivileged TruthValue,
        tmnxNatPlWatermarkHigh           TmnxNatWaterMark,
        tmnxNatPlWatermarkLow            TmnxNatWaterMark,
        tmnxNatPlMode                    TmnxNatMode,
        tmnxNatPlPortFwdRangeEnd         Unsigned32,
        tmnxNatPlOperMode                TmnxNatMode
    }

tmnxNatPlName OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlName specifies the name of this NAT address pool."
    ::= { tmnxNatPlEntry 1 }

tmnxNatPlRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlRowStatus specifies the row status of this row."
    ::= { tmnxNatPlEntry 2 }

tmnxNatPlLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPlEntry 3 }

tmnxNatPlIsaGrp OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpId
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlIsaGrp specifies 
         the identifier of the NAT Integrated Service Adaptor group 
         associated with this NAT address pool.
         
         The value of tmnxNatPlIsaGrp must be specified when this table row
         is created."
    ::= { tmnxNatPlEntry 4 }

tmnxNatPlType OBJECT-TYPE
    SYNTAX      TmnxNatPlType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlType specifies 
         the type of this NAT address pool.
         
         The value of tmnxNatPlType must be specified when this table row
         is created.
         
         The value 'unknown' is not allowed."
    ::= { tmnxNatPlEntry 5 }

tmnxNatPlDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlDescription specifies the
        description of this NAT address pool."
    DEFVAL { "" }
    ::= { tmnxNatPlEntry 6 }

tmnxNatPlAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlAdminState specifies 
        the administrative state of this NAT address pool."
    DEFVAL { outOfService }
    ::= { tmnxNatPlEntry 7 }

tmnxNatPlPortResvType OBJECT-TYPE
    SYNTAX      INTEGER {
                    ports                (1),
                    blocks               (2)
                }

    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlPortResvType specifies
        how the whole ephemeral port range is split up in blocks.

        Each of those blocks can be associated with a host.

        The type of port reservation specifies the meaning of the value of
        the object tmnxNatPlPortResvVal.
        
        The value of the object tmnxNatPlPortResvType must be changed together
        with the value of the object tmnxNatPlPortResvVal."
    DEFVAL { blocks }
    ::= { tmnxNatPlEntry 8 }

tmnxNatPlPortResvVal OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "If the value of the object tmnxNatPlPortResvType is equal to 'ports',
        the value of tmnxNatPlPortResvVal specifies the number of ports
        in a port range.
        
        If the value of the object tmnxNatPlPortResvType is equal to 'blocks',
        the value of tmnxNatPlPortResvVal specifies in how many blocks
        the whole ephemeral port range is split up.
        
        The value of the object tmnxNatPlPortResvVal must be changed together
        with the value of the object tmnxNatPlPortResvType."
    DEFVAL { 128 }
    ::= { tmnxNatPlEntry 9 }

tmnxNatPlPortResvAllowPrivileged OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlPortResvAllowPrivileged specifies
        if it is allowed to include the port numbers from the privileged port  
        range between 1 and 1023, also known as 'Well Known Ports', into the
        port blocks.
        
        If the value of the object tmnxNatPlPortResvAllowPrivileged is equal to
        'true', it is allowed to include port numbers between 1 and 1023."
    DEFVAL { false }
    ::= { tmnxNatPlEntry 10 }

tmnxNatPlWatermarkHigh OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0|1..100)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlWatermarkHigh specifies 
        the high watermark of the block usage of this NAT address pool.
        
        The value of the object tmnxNatPlWatermarkHigh must be higher than
        the value of the object tmnxNatPlWatermarkLow, 
        unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlEntry 11 }

tmnxNatPlWatermarkLow OBJECT-TYPE
    SYNTAX      TmnxNatWaterMark (0..99)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlWatermarkLow specifies 
        the high watermark of the block usage of this NAT address pool.
        
        The value of the object tmnxNatPlWatermarkLow must be lower than
        the value of the object tmnxNatPlWatermarkHigh, 
        unless both are equal to zero."
    DEFVAL { 0 }
    ::= { tmnxNatPlEntry 12 }

tmnxNatPlMode OBJECT-TYPE
    SYNTAX      TmnxNatMode
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlMode specifies 
         the mode of operation of this NAT address pool."
    DEFVAL { auto }
    ::= { tmnxNatPlEntry 13 }

tmnxNatPlPortFwdRangeEnd OBJECT-TYPE
    SYNTAX      Unsigned32 (1023..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlPortFwdRangeEnd specifies the end of the port range
        available for port forwarding.
        
        The start of the range is always equal to one.
        
        The actual maximum value of the object tmnxNatPlPortFwdRangeEnd 
        may be restricted to less than 65535, 
        depending on the value of the objects tmnxNatPlPortResvType and
        tmnxNatPlPortResvVal and on system specifications."
    DEFVAL { 1023 }
    ::= { tmnxNatPlEntry 14 }

tmnxNatPlOperMode OBJECT-TYPE
    SYNTAX      TmnxNatMode
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlOperMode indicates 
         the actual mode of operation of this NAT address pool."
    ::= { tmnxNatPlEntry 20 }

--
--      The NAT Pool Address Range Table
--

tmnxNatPlRangeTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlRangeTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPlRangeTable."
    ::= { tmnxNatObjs 107 }

tmnxNatPlRangeTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlRangeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlRangeTable contains objects to configure the NAT pool
        addresses."
    ::= { tmnxNatPoolObjs 2 }

tmnxNatPlRangeEntry OBJECT-TYPE
    SYNTAX      TmnxNatPlRangeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a NAT pool address range.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { vRtrID,
            tmnxNatPlName,
            tmnxNatPlRangeAddrType,
            tmnxNatPlRangeStart,
            tmnxNatPlRangeEnd
           }
    ::= { tmnxNatPlRangeTable 1 }

TmnxNatPlRangeEntry ::= 
    SEQUENCE {
        tmnxNatPlRangeAddrType           InetAddressType,
        tmnxNatPlRangeStart              InetAddress,
        tmnxNatPlRangeEnd                InetAddress,
        tmnxNatPlRangeRowStatus          RowStatus,
        tmnxNatPlRangeLastMgmtChange     TimeStamp,
        tmnxNatPlRangeDescription        TItemDescription,
        tmnxNatPlRangeAdminDrain         TruthValue,
        tmnxNatPlRangeNumAllocatedBlk   Gauge32
    }

tmnxNatPlRangeAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlRangeAddrType specifies
         the address type of tmnxNatPlRangeStart and tmnxNatPlRangeEnd.
         
         The only values allowed are 'ipv4' and 'ipv6'."
    ::= { tmnxNatPlRangeEntry 1 }

tmnxNatPlRangeStart OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlRangeStart specifies
         the start address of this NAT pool address range."
    ::= { tmnxNatPlRangeEntry 2 }

tmnxNatPlRangeEnd OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPlRangeStart specifies
         the end address of this NAT pool address range."
    ::= { tmnxNatPlRangeEntry 3 }

tmnxNatPlRangeRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlRangeRowStatus specifies 
        the row status of this row."
    ::= { tmnxNatPlRangeEntry 4 }

tmnxNatPlRangeLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlRangeLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPlRangeEntry 5 }

tmnxNatPlRangeDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlRangeDescription specifies the
        description of this NAT pool address range."
    DEFVAL { "" }
    ::= { tmnxNatPlRangeEntry 6 }

tmnxNatPlRangeAdminDrain OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlRangeAdminDrain specifies
        if this NAT pool address range is put in draining state.
        
        While a NAT pool address range is draining state, no more addresses
        are taken from this range."
    DEFVAL { false }
    ::= { tmnxNatPlRangeEntry 7 }

tmnxNatPlRangeNumAllocatedBlk OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPlRangeNumAllocatedBlk indicates
        the number of port blocks that are allocated from this NAT pool address 
        range."
    ::= { tmnxNatPlRangeEntry 8 }

--
--      The Layer-2-Aware NAT Pool Table
--
--  Sparse Dependent Extension of the tmnxNatPlTable.
--
--  The same indexes are used for both the base table, tmnxNatPlTable,
--  and the sparse dependent table, tmnxNatPlL2AwTable.
--
--  This in effect extends the tmnxNatPlTable with additional columns.
--  A row is automatically created in the tmnxNatPlL2AwTable for each  
--  row in the tmnxNatPlTable that corresponds to Layer-2-Aware pool.
--
--  Deletion of a row in the tmnxNatPlTable results in the
--  same fate for the row in the tmnxNatPlL2AwTable.
-- 


tmnxNatPlL2AwTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlL2AwEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlL2AwTable contains information about the Layer-2-Aware
        NAT address pools."
    ::= { tmnxNatPoolObjs 3 }

tmnxNatPlL2AwEntry OBJECT-TYPE
    SYNTAX          TmnxNatPlL2AwEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Each conceptual row represents a Layer-2-Aware NAT address pool.

        Entries in this table are automatically created and deleted by the
        system."
    INDEX { vRtrID,
            IMPLIED tmnxNatPlName }
    ::= { tmnxNatPlL2AwTable 1 }

TmnxNatPlL2AwEntry ::= 
    SEQUENCE {
        tmnxNatPlL2AwBlockUsage          TmnxNatUsageLevel,
        tmnxNatPlL2AwBlockUsageHi        TruthValue
    }

tmnxNatPlL2AwBlockUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlL2AwBlockUsage indicates 
        the block usage of this Layer-2-Aware NAT address pool."
    ::= { tmnxNatPlL2AwEntry 1 }

tmnxNatPlL2AwBlockUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlL2AwBlockUsage indicates 
        if the block usage of this Layer-2-Aware NAT address pool is high 
        according to the values of the objects tmnxNatPlWatermarkHigh and 
        tmnxNatPlWatermarkLow."
    ::= { tmnxNatPlL2AwEntry 2 }

--
--      The Large Scale NAT Pool Table
--
--  Sparse Dependent Extension of the tmnxNatPlTable.
--
--  The same indexes are used for both the base table, tmnxNatPlTable,
--  and the sparse dependent table, tmnxNatPlLsnTable.
--
--  This in effect extends the tmnxNatPlTable with additional columns.
--  A row is automatically created in the tmnxNatPlLsnTable for each  
--  row in the tmnxNatPlTable that corresponds to Large Scale NAT pool.
--
--  Deletion of a row in the tmnxNatPlTable results in the
--  same fate for the row in the tmnxNatPlLsnTable.
-- 


tmnxNatPlLsnTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlLsnEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlLsnTable contains information about the Large Scale NAT
        address pools."
    ::= { tmnxNatPoolObjs 7 }

tmnxNatPlLsnEntry OBJECT-TYPE
    SYNTAX          TmnxNatPlLsnEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Each conceptual row represents a Large Scale NAT address pool.

        Entries in this table are automatically created and deleted by the
        system."
    INDEX { vRtrID,
            IMPLIED tmnxNatPlName }
    ::= { tmnxNatPlLsnTable 1 }

TmnxNatPlLsnEntry ::= 
    SEQUENCE {
        tmnxNatPlLsnSubscriberLimit      Unsigned32,
        tmnxNatPlLsnRedExpPrefixType     InetAddressType,
        tmnxNatPlLsnRedExpPrefix         InetAddress,
        tmnxNatPlLsnRedExpPrefixLen      InetAddressPrefixLength,
        tmnxNatPlLsnRedMonPrefixType     InetAddressType,
        tmnxNatPlLsnRedMonPrefix         InetAddress,
        tmnxNatPlLsnRedMonPrefixLen      InetAddressPrefixLength,
        tmnxNatPlLsnRedActive            TruthValue
    }

tmnxNatPlLsnSubscriberLimit OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlLsnSubscriberLimit specifies 
        the maximum number of subscribers per outside IP address.
        
        In case multiple port blocks per subscriber are used, the block
        size is typically small; all blocks assigned to a given subscriber
        belong to the same IP address; the subscriber limit guarantees that 
        any subscriber can get a mimimum number of ports."
    DEFVAL { 65535 }
    ::= { tmnxNatPlLsnEntry 1 }

tmnxNatPlLsnRedExpPrefixType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedExpPrefixType specifies
         the address type of tmnxNatPlLsnRedExpPrefix."
    DEFVAL { unknown }
    ::= { tmnxNatPlLsnEntry 10 }

tmnxNatPlLsnRedExpPrefix OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedExpPrefix specifies
         the IP address of the prefix to be exported.
         
         While the export prefix is configured and the value of the object
         tmnxNatPlLsnRedActive is equal to 'true', the system exports
         this prefix in the realm of the virtual router instance associated
         with this pool; to the NAT redundancy peer, the presence of this prefix 
         is an indication that the Large Scale NAT function 
         in this virtual router instance is active; hence, 
         the export prefix of this system 
         is the monitor prefix of the peer.
         
         The export prefix must be different from the monitor prefix."
    DEFVAL { ''H }  
    ::= { tmnxNatPlLsnEntry 11 }

tmnxNatPlLsnRedExpPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (0..128)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedExpPrefixLen specifies
         the prefix length of the prefix to be exported."
    DEFVAL { 0 }
    ::= { tmnxNatPlLsnEntry 12 }

tmnxNatPlLsnRedMonPrefixType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedMonPrefixType specifies
         the address type of tmnxNatPlLsnRedMonPrefix."
    DEFVAL { unknown }
    ::= { tmnxNatPlLsnEntry 13 }

tmnxNatPlLsnRedMonPrefix OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedMonPrefix specifies
         the IP address of the prefix to be monitored.
         
         While the monitor prefix is configured, the system monitors the
         presence of this prefix in the routing table of the virtual router
         instance associated with this pool; the presence of this prefix 
         is an indication that the NAT redundancy peer is active; 
         the monitor prefix of this system is the export prefix of the peer.
         
         The monitor prefix must be different from the export prefix."
    DEFVAL { ''H }  
    ::= { tmnxNatPlLsnEntry 14 }

tmnxNatPlLsnRedMonPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (0..128)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPlLsnRedMonPrefixLen specifies
         the prefix length of the prefix to be monitored."
    DEFVAL { 0 }
    ::= { tmnxNatPlLsnEntry 15 }

tmnxNatPlLsnRedActive  OBJECT-TYPE
    SYNTAX      TruthValue 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPlLsnRedActive indicates 
         if the Large Scale NAT function of the virtual router instance 
         associated with this pool is active."
    ::= { tmnxNatPlLsnEntry 16 }


--
--      The Large Scale NAT Pool Member Table
--


tmnxNatPlLsnMemberTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPlLsnMemberEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPlLsnMemberTable contains information about the Large Scale
        NAT address pools per ISA group member."
    ::= { tmnxNatPoolObjs 4 }

tmnxNatPlLsnMemberEntry OBJECT-TYPE
    SYNTAX          TmnxNatPlLsnMemberEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Each conceptual row represents Large Scale NAT address pool 
         information in a NAT ISA group member.

        Entries in this table are automatically created and deleted by the
        system."
    INDEX { vRtrID,
            tmnxNatPlName,
            tmnxNatIsaMemberId }
    ::= { tmnxNatPlLsnMemberTable 1 }

TmnxNatPlLsnMemberEntry ::= 
    SEQUENCE {
        tmnxNatPlLsnMemberIsaGrpId       TmnxNatIsaGrpId,
        tmnxNatPlLsnMemberBlockUsage     TmnxNatUsageLevel,
        tmnxNatPlLsnMemberBlockUsageHi   TruthValue
    }

tmnxNatPlLsnMemberIsaGrpId OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpId
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlLsnMemberIsaGrpId indicates 
        the identifier of the NAT Integrated Service Adaptor group
        where this member belongs to."
    ::= { tmnxNatPlLsnMemberEntry 1 }

tmnxNatPlLsnMemberBlockUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlLsnMemberBlockUsage indicates 
        the block usage of this Large Scale NAT address pool."
    ::= { tmnxNatPlLsnMemberEntry 2 }

tmnxNatPlLsnMemberBlockUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatPlLsnMemberBlockUsage indicates 
        if the block usage of this Large Scale NAT address pool is high 
        according to the values of the objects tmnxNatPlWatermarkHigh and 
        tmnxNatPlWatermarkLow."
    ::= { tmnxNatPlLsnMemberEntry 3 }

--
--      The Block Allocation Table for Layer-2-Aware NAT
--

tmnxNatBlkL2AwTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatBlkL2AwEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatBlkL2AwTable contains information about 
        the port blocks allocated to Layer-2-Aware NAT subscribers."
    ::= { tmnxNatPoolObjs 5 }

tmnxNatBlkL2AwEntry OBJECT-TYPE
    SYNTAX      TmnxNatBlkL2AwEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a port block 
         allocated to a Layer-2-Aware NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { vRtrID,
            tmnxNatBlkL2AwAddrType,
            tmnxNatBlkL2AwAddr,
            tmnxNatBlkL2AwStart
           }
    ::= { tmnxNatBlkL2AwTable 1 }

TmnxNatBlkL2AwEntry ::= 
    SEQUENCE {
        tmnxNatBlkL2AwAddrType           InetAddressType,
        tmnxNatBlkL2AwAddr               InetAddress,
        tmnxNatBlkL2AwStart              InetPortNumber,
        tmnxNatBlkL2AwEnd                InetPortNumber,
        tmnxNatBlkL2AwPool               TNamedItem,
        tmnxNatBlkL2AwSubIdent           DisplayString,
        tmnxNatBlkL2AwPolicy             TNamedItemOrEmpty,
        tmnxNatBlkL2AwStartDateAndTime   DateAndTime
    }

tmnxNatBlkL2AwAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkL2AwAddrType indicates
         the address type of tmnxNatBlkL2AwAddr."
    ::= { tmnxNatBlkL2AwEntry 1 }

tmnxNatBlkL2AwAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkL2AwAddr indicates
         the outside IP address allocated to the subscriber."
    ::= { tmnxNatBlkL2AwEntry 2 }

tmnxNatBlkL2AwStart OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkL2AwStart indicates
         the start of the port block allocated to the subscriber."
    ::= { tmnxNatBlkL2AwEntry 3 }

tmnxNatBlkL2AwEnd OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkL2AwEnd indicates
         the end of the port block allocated to the subscriber."
    ::= { tmnxNatBlkL2AwEntry 4 }

tmnxNatBlkL2AwPool OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkL2AwPool indicates the NAT Pool
         out of which this block is allocated."
    ::= { tmnxNatBlkL2AwEntry 5 }

tmnxNatBlkL2AwSubIdent OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..32))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkL2AwSubIdent indicates the identifier of
         the NAT subscriber to whom this block is allocated."
    ::= { tmnxNatBlkL2AwEntry 6 }

tmnxNatBlkL2AwPolicy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkL2AwPolicy indicates the NAT Policy
         associated with the NAT subscriber to whom this block is allocated."
    ::= { tmnxNatBlkL2AwEntry 7 }

tmnxNatBlkL2AwStartDateAndTime OBJECT-TYPE
    SYNTAX      DateAndTime (SIZE (11))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkL2AwStartDateAndTime indicates the date-time
         when this block was allocated."
    ::= { tmnxNatBlkL2AwEntry 8 }

--
--      The Block Allocation Table for Large Scale NAT
--

tmnxNatBlkLsnTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatBlkLsnEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatBlkLsnTable contains information about 
        the port blocks allocated to Large Scale NAT subscribers."
    ::= { tmnxNatPoolObjs 6 }

tmnxNatBlkLsnEntry OBJECT-TYPE
    SYNTAX      TmnxNatBlkLsnEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a port block 
         allocated to a Large Scale NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { vRtrID,
            tmnxNatBlkLsnAddrType,
            tmnxNatBlkLsnAddr,
            tmnxNatBlkLsnStart
           }
    ::= { tmnxNatBlkLsnTable 1 }

TmnxNatBlkLsnEntry ::= 
    SEQUENCE {
        tmnxNatBlkLsnAddrType           InetAddressType,
        tmnxNatBlkLsnAddr               InetAddress,
        tmnxNatBlkLsnStart              InetPortNumber,
        tmnxNatBlkLsnEnd                InetPortNumber,
        tmnxNatBlkLsnPool               TNamedItem,
        tmnxNatBlkLsnSubId              Unsigned32,
        tmnxNatBlkLsnInsideVRtrID       TmnxVRtrID,
        tmnxNatBlkLsnInsideAddrType     InetAddressType,
        tmnxNatBlkLsnInsideAddr         InetAddress,
        tmnxNatBlkLsnPolicy             TNamedItemOrEmpty,
        tmnxNatBlkLsnStartDateAndTime   DateAndTime
    }

tmnxNatBlkLsnAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnAddrType indicates
         the address type of tmnxNatBlkLsnAddr."
    ::= { tmnxNatBlkLsnEntry 1 }

tmnxNatBlkLsnAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnAddr indicates
         the outside IP address allocated to the subscriber."
    ::= { tmnxNatBlkLsnEntry 2 }

tmnxNatBlkLsnStart OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnStart indicates
         the start of the port block allocated to the subscriber."
    ::= { tmnxNatBlkLsnEntry 3 }

tmnxNatBlkLsnEnd OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnEnd indicates
         the end of the port block allocated to the subscriber."
    ::= { tmnxNatBlkLsnEntry 4 }

tmnxNatBlkLsnPool OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkLsnPool indicates the NAT Pool
         out of which this block is allocated."
    ::= { tmnxNatBlkLsnEntry 5 }

tmnxNatBlkLsnSubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnSubId indicates
         the identifier of the Large Scale NAT subscriber where this block
         is allocated to."
    ::= { tmnxNatBlkLsnEntry 6 }

tmnxNatBlkLsnInsideVRtrID OBJECT-TYPE
    SYNTAX      TmnxVRtrID
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnInsideVRtrID indicates
         the vRtrID of the Large Scale NAT subscriber and its hosts."
    ::= { tmnxNatBlkLsnEntry 7 }

tmnxNatBlkLsnInsideAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnInsideAddrType indicates
         the address type of tmnxNatBlkLsnInsideAddr."
    ::= { tmnxNatBlkLsnEntry 8 }

tmnxNatBlkLsnInsideAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatBlkLsnInsideAddr indicates
         the inside IP address of the Large Scale NAT subscriber (if it has
         multiple hosts), or of its single host."
    ::= { tmnxNatBlkLsnEntry 9 }

tmnxNatBlkLsnPolicy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkLsnPolicy indicates the NAT Policy
         associated with the NAT subscriber to whom this block is allocated."
    ::= { tmnxNatBlkLsnEntry 10 }

tmnxNatBlkLsnStartDateAndTime OBJECT-TYPE
    SYNTAX      DateAndTime (SIZE (11))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatBlkLsnStartDateAndTime indicates the date-time
         when this block was allocated."
    ::= { tmnxNatBlkLsnEntry 11 }

-- ----------------------------------------------------------------------------
--      The "NAT Destinations" Group
-- ----------------------------------------------------------------------------

--
--      The NAT Destinations Table
--

tmnxNatDestTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatDestTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatDestTable."
    ::= { tmnxNatObjs 108 }

tmnxNatDestTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatDestEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatDestTable contains objects to configure the NAT destinations."
    ::= { tmnxNatDestObjs 1 }

tmnxNatDestEntry OBJECT-TYPE
    SYNTAX      TmnxNatDestEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a NAT destination.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table."
    INDEX { vRtrID,
            tmnxNatDestAddrType,
            tmnxNatDestAddr,
            tmnxNatDestPrefixLen
           }
    ::= { tmnxNatDestTable 1 }

TmnxNatDestEntry ::= 
    SEQUENCE {
        tmnxNatDestAddrType              InetAddressType,
        tmnxNatDestAddr                  InetAddress,
        tmnxNatDestPrefixLen             InetAddressPrefixLength,
        tmnxNatDestRowStatus             RowStatus,
        tmnxNatDestLastMgmtChange        TimeStamp 
    }

tmnxNatDestAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDestAddrType specifies
         the address type of tmnxNatDestAddr.
         
         The value 'ipv6' is not supported."
    ::= { tmnxNatDestEntry 1 }

tmnxNatDestAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDestAddr specifies
         the IP address of the destination."
    ::= { tmnxNatDestEntry 2 }

tmnxNatDestPrefixLen OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (0..128)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDestPrefixLen specifies
         the prefix length of the destination."
    ::= { tmnxNatDestEntry 3 }

tmnxNatDestRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatDestRowStatus specifies 
        the row status of this row."
    ::= { tmnxNatDestEntry 4 }

tmnxNatDestLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatDestLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatDestEntry 5 }

--
--      The NAT Dual Stack Lite Address Table
--

tmnxNatDsliteAddrTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatDsliteAddrTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatDsliteAddrTable."
    ::= { tmnxNatObjs 111 }

tmnxNatDsliteAddrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatDsliteAddrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatDsliteAddrTable contains objects to configure the NAT 
        Dual Stack Lite addresses."
    ::= { tmnxNatDestObjs 2 }

tmnxNatDsliteAddrEntry OBJECT-TYPE
    SYNTAX      TmnxNatDsliteAddrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a NAT Dual Stack Lite address.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table."
    INDEX { vRtrID,
            tmnxNatDsliteAddrType,
            tmnxNatDsliteAddr
           }
    ::= { tmnxNatDsliteAddrTable 1 }

TmnxNatDsliteAddrEntry ::= 
    SEQUENCE {
        tmnxNatDsliteAddrType            InetAddressType,
        tmnxNatDsliteAddr                InetAddress,
        tmnxNatDsliteAddrRowStatus       RowStatus,
        tmnxNatDsliteAddrLastMgmtChange  TimeStamp,
        tmnxNatDsliteAddrTunnelMtu       Unsigned32 
    }

tmnxNatDsliteAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteAddrType specifies
         the address type of tmnxNatDsliteAddr.
         
         Because the only value supported is 'ipv6',
         a row in this table can only be created while the the value of 
         TIMETRA-CHASSIS-MIB::tmnxChassisOperMode is 'modeC' or higher."
    ::= { tmnxNatDsliteAddrEntry 1 }

tmnxNatDsliteAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteAddr specifies
         the IP address of the Dual Stack Lite address."
    ::= { tmnxNatDsliteAddrEntry 2 }

tmnxNatDsliteAddrRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatDsliteAddrRowStatus specifies 
        the row status of this row."
    ::= { tmnxNatDsliteAddrEntry 4 }

tmnxNatDsliteAddrLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatDsliteAddrLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatDsliteAddrEntry 5 }
    
tmnxNatDsliteAddrTunnelMtu OBJECT-TYPE
    SYNTAX      Unsigned32 (512..9212)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatDsliteAddrTunnelMtu specifies
         the DSLite tunnel MTU for this Dual Stack Lite address."
    DEFVAL { 1500 }
    ::= { tmnxNatDsliteAddrEntry 6 }


-- ----------------------------------------------------------------------------
--      The "NAT Subscriber" Group
-- ----------------------------------------------------------------------------

--
--      The Large Scale NAT Host Table
--

tmnxNatLsnHostTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatLsnHostEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatLsnHostTable contains status and basic statistics
        information about Classic Large Scale NAT hosts."
    ::= { tmnxNatSubObjs 1 }

tmnxNatLsnHostEntry OBJECT-TYPE
    SYNTAX      TmnxNatLsnHostEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Classic Large Scale NAT host.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { vRtrID,
            tmnxNatLsnHostAddrType,
            tmnxNatLsnHostAddr
           }
    ::= { tmnxNatLsnHostTable 1 }

TmnxNatLsnHostEntry ::= 
    SEQUENCE {
        tmnxNatLsnHostAddrType           InetAddressType,
        tmnxNatLsnHostAddr               InetAddress,
        tmnxNatLsnHostSubId              Unsigned32,
        tmnxNatLsnHostOutVRtrID          TmnxVRtrID,
        tmnxNatLsnHostOutAddrType        InetAddressType,
        tmnxNatLsnHostOutAddr            InetAddress
    }

tmnxNatLsnHostAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnHostAddrType indicates
         the address type of tmnxNatLsnHostAddr."
    ::= { tmnxNatLsnHostEntry 1 }

tmnxNatLsnHostAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnHostAddr indicates
         the inside IP address of the host."
    ::= { tmnxNatLsnHostEntry 2 }

tmnxNatLsnHostSubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnHostSubId indicates
         the identifier of the Large Scale NAT subscriber associated with
         this host."
    ::= { tmnxNatLsnHostEntry 3 }

tmnxNatLsnHostOutVRtrID OBJECT-TYPE
   SYNTAX      TmnxVRtrID
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The object tmnxNatLsnHostOutVRtrID indicates the number used to identify
        the outside virtual router instance in the system."
   ::= { tmnxNatLsnHostEntry 4 }

tmnxNatLsnHostOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnHostOutAddrType indicates
         the address type of tmnxNatLsnHostOutAddr."
    ::= { tmnxNatLsnHostEntry 5 }

tmnxNatLsnHostOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnHostOutAddr indicates
         the outside IP address allocated to the host."
    ::= { tmnxNatLsnHostEntry 6 }

--
--      The Large Scale NAT Subscriber Table
--

tmnxNatLsnSubTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatLsnSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatLsnSubTable contains information about 
        Large Scale NAT subscribers."
    ::= { tmnxNatSubObjs 2 }

tmnxNatLsnSubEntry OBJECT-TYPE
    SYNTAX      TmnxNatLsnSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Large Scale NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { tmnxNatLsnSubId }
    ::= { tmnxNatLsnSubTable 1 }

TmnxNatLsnSubEntry ::= 
    SEQUENCE {
        tmnxNatLsnSubId                 Unsigned32,
        tmnxNatLsnSubPolicy             TNamedItem,
        tmnxNatLsnSubIsaGrp             TmnxNatIsaGrpIdOrZero,
        tmnxNatLsnSubIsaMemberId        Unsigned32,
        tmnxNatLsnSubOutVRtrID          TmnxVRtrIDOrZero,
        tmnxNatLsnSubOutAddrType        InetAddressType,
        tmnxNatLsnSubOutAddr            InetAddress,
        tmnxNatLsnSubIdStr              TmnxNatSubscriberIdString
    }

tmnxNatLsnSubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatLsnSubId indicates the identifier of 
         this Large Scale NAT subscriber."
    ::= { tmnxNatLsnSubEntry 1 }

tmnxNatLsnSubPolicy OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatLsnSubPolicy indicates the NAT Policy
         associated with this NAT subscriber."
    ::= { tmnxNatLsnSubEntry 2 }

tmnxNatLsnSubIsaGrp OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpIdOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubIsaGrp indicates 
        the identifier of the NAT Integrated Service Adaptor group 
        associated with this NAT subscriber."
    ::= { tmnxNatLsnSubEntry 3 }

tmnxNatLsnSubIsaMemberId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubIsaMemberId indicates 
        the identifier of the NAT ISA Group member associated with this
        NAT subscriber."
    ::= { tmnxNatLsnSubEntry 4 }

tmnxNatLsnSubOutVRtrID OBJECT-TYPE
   SYNTAX      TmnxVRtrIDOrZero
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The object tmnxNatLsnSubOutVRtrID indicates the number used to identify
        the outside virtual router instance associated with this NAT subscriber."
   ::= { tmnxNatLsnSubEntry 5 }

tmnxNatLsnSubOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubOutAddrType indicates
         the address type of tmnxNatLsnSubOutAddr."
    ::= { tmnxNatLsnSubEntry 6 }

tmnxNatLsnSubOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubOutAddr indicates
         the outside IP address allocated to this NAT subscriber."
    ::= { tmnxNatLsnSubEntry 7 }
    
tmnxNatLsnSubIdStr OBJECT-TYPE
    SYNTAX      TmnxNatSubscriberIdString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubIdStr indicates
         the subscriber identification string associated with this NAT subscriber.
         
         The empty string indicates that there is no subscriber identification
         string associated with this NAT subscriber."
    ::= { tmnxNatLsnSubEntry 8 }

--
--      The Large Scale NAT Subscriber Status Table
--

tmnxNatLsnSubStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatLsnSubStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatLsnSubStatTable contains status and basic statistics
        information about Large Scale NAT subscribers."
    ::= { tmnxNatSubObjs 3 }

tmnxNatLsnSubStatEntry OBJECT-TYPE
    SYNTAX      TmnxNatLsnSubStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Large Scale NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    AUGMENTS { tmnxNatLsnSubEntry }
    ::= { tmnxNatLsnSubStatTable 1 }

TmnxNatLsnSubStatEntry ::= 
    SEQUENCE {
        tmnxNatLsnSubStatIcmpPortUsage      TmnxNatUsageLevel,
        tmnxNatLsnSubStatIcmpPortUsageHi    TruthValue,
        tmnxNatLsnSubStatUdpPortUsage       TmnxNatUsageLevel,
        tmnxNatLsnSubStatUdpPortUsageHi     TruthValue,
        tmnxNatLsnSubStatTcpPortUsage       TmnxNatUsageLevel,
        tmnxNatLsnSubStatTcpPortUsageHi     TruthValue,
        tmnxNatLsnSubStatSessionUsage       TmnxNatUsageLevel,
        tmnxNatLsnSubStatSessionUsageHi     TruthValue,
        tmnxNatLsnSubStatSessions           Gauge32,
        tmnxNatLsnSubStatSessionsPrio       Gauge32,
        tmnxNatLsnSubStatSessionsPeak       Gauge32
    }

tmnxNatLsnSubStatIcmpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatIcmpPortUsage indicates 
        the ICMP port usage of this NAT subscriber."
    ::= { tmnxNatLsnSubStatEntry 3 }

tmnxNatLsnSubStatIcmpPortUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatIcmpPortUsageHi indicates 
        if the ICMP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatLsnSubStatEntry 4 }


tmnxNatLsnSubStatUdpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatUdpPortUsage indicates 
        the UDP port usage of this NAT subscriber."
    ::= { tmnxNatLsnSubStatEntry 5 }

tmnxNatLsnSubStatUdpPortUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatUdpPortUsageHi indicates 
        if the UDP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatLsnSubStatEntry 6 }


tmnxNatLsnSubStatTcpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatTcpPortUsage indicates 
        the TCP port usage of this NAT subscriber."
    ::= { tmnxNatLsnSubStatEntry 7 }

tmnxNatLsnSubStatTcpPortUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatTcpPortUsageHi indicates 
        if the TCP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatLsnSubStatEntry 8 }

tmnxNatLsnSubStatSessionUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatSessionUsage indicates 
        the session usage of this NAT subscriber."
    ::= { tmnxNatLsnSubStatEntry 9 }

tmnxNatLsnSubStatSessionUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatLsnSubStatSessionUsageHi indicates 
        if the session usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcySessionWatermarkHigh and 
        tmnxNatPlcySessionWatermarkLow."
    ::= { tmnxNatLsnSubStatEntry 10 }

tmnxNatLsnSubStatSessions OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatLsnSubStatSessions indicates the current number of
         active sessions of this NAT subscriber.
         
         In other words, it is the number of ports in use 
         out of the nonreserved range."
    ::= { tmnxNatLsnSubStatEntry 11 }

tmnxNatLsnSubStatSessionsPrio OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatLsnSubStatSessionsPrio indicates the current number of
         active prioritized sessions of this subscriber.
         
         In other words, it is the number of reserved ports in use."
    ::= { tmnxNatLsnSubStatEntry 12 }

tmnxNatLsnSubStatSessionsPeak OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatLsnSubStatSessionsPeak indicates the maximum number
         of sessions that were active together up to this point in time."
    ::= { tmnxNatLsnSubStatEntry 13 }

--
--      The Large Scale NAT Subscriber Block Allocation Table
--

tmnxNatLsnSubBlkTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatLsnSubBlkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatLsnSubBlkTable lists the port blocks allocated to 
        Large Scale NAT subscribers."
    ::= { tmnxNatSubObjs 4 }

tmnxNatLsnSubBlkEntry OBJECT-TYPE
    SYNTAX      TmnxNatLsnSubBlkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a port block allocated to a
         Large Scale NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { tmnxNatLsnSubId,
            vRtrID,
            tmnxNatBlkLsnAddrType,
            tmnxNatBlkLsnAddr,
            tmnxNatBlkLsnStart
          }
    ::= { tmnxNatLsnSubBlkTable 1 }

TmnxNatLsnSubBlkEntry ::= 
    SEQUENCE {
        tmnxNatLsnSubBlkEnd              InetPortNumber
    }

tmnxNatLsnSubBlkEnd OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubBlkEnd indicates
         the end of the port block allocated to the subscriber."
    ::= { tmnxNatLsnSubBlkEntry 1 }

--
--      The Dual Stack Lite Subscriber Table
--

tmnxNatDsliteSubTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatDsliteSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatDsliteSubTable contains status and basic statistics
        information about NAT Dual Stack Lite subscribers."
    ::= { tmnxNatSubObjs 5 }

tmnxNatDsliteSubEntry OBJECT-TYPE
    SYNTAX      TmnxNatDsliteSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a NAT Dual Stack Lite subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { vRtrID,
            tmnxNatDsliteSubAddrType,
            tmnxNatDsliteSubAddr,
            tmnxNatDsliteSubAddrPrefixLength
           }
    ::= { tmnxNatDsliteSubTable 1 }

TmnxNatDsliteSubEntry ::= 
    SEQUENCE {
        tmnxNatDsliteSubAddrType         InetAddressType,
        tmnxNatDsliteSubAddr             InetAddress,
        tmnxNatDsliteSubAddrPrefixLength InetAddressPrefixLength,
        tmnxNatDsliteSubId               Unsigned32
    }

tmnxNatDsliteSubAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteSubAddrType indicates
         the address type of tmnxNatDsliteSubAddr."
    ::= { tmnxNatDsliteSubEntry 1 }

tmnxNatDsliteSubAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteSubAddr indicates
         the inside IP address of the subscriber."
    ::= { tmnxNatDsliteSubEntry 2 }

tmnxNatDsliteSubAddrPrefixLength OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (1..128)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteSubAddrPrefixLength indicates
         the prefix length of the subscriber."
    ::= { tmnxNatDsliteSubEntry 3 }

tmnxNatDsliteSubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatDsliteSubId indicates
         the value of tmnxNatLsnSubId of the row in the
         tmnxNatLsnSubTable that corresponds to this 
         Dual Stack Lite subscriber."
    ::= { tmnxNatDsliteSubEntry 4 }

--
--      The Layer-2-Aware NAT Host Table
--

tmnxNatL2AwHostTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatL2AwHostEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatL2AwHostTable contains status and basic statistics
        information about Layer-2-Aware NAT hosts."
    ::= { tmnxNatSubObjs 11 }

tmnxNatL2AwHostEntry OBJECT-TYPE
    SYNTAX      TmnxNatL2AwHostEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Layer-2-Aware NAT host.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { tmnxSubInfoSubIdent,
            tmnxNatL2AwHostAddrType,
            tmnxNatL2AwHostAddr
           }
    ::= { tmnxNatL2AwHostTable 1 }

TmnxNatL2AwHostEntry ::= 
    SEQUENCE {
        tmnxNatL2AwHostAddrType          InetAddressType,
        tmnxNatL2AwHostAddr              InetAddress,
        tmnxNatL2AwHostOutVRtrID         TmnxVRtrID,
        tmnxNatL2AwHostOutAddrType       InetAddressType,
        tmnxNatL2AwHostOutAddr           InetAddress,
        tmnxNatL2AwHostOutStart          InetPortNumber
    }

tmnxNatL2AwHostAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwHostAddrType indicates
         the address type of tmnxNatL2AwHostAddr."
    ::= { tmnxNatL2AwHostEntry 1 }

tmnxNatL2AwHostAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwHostAddr indicates
         the inside IP address of the host."
    ::= { tmnxNatL2AwHostEntry 2 }

tmnxNatL2AwHostOutVRtrID OBJECT-TYPE
   SYNTAX      TmnxVRtrID
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The object tmnxNatL2AwHostOutVRtrID specifies the number used to identify
        the outside virtual router instance in the system."
   ::= { tmnxNatL2AwHostEntry 3 }

tmnxNatL2AwHostOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwHostOutAddrType specifies
         the address type of tmnxNatL2AwHostOutAddr."
    ::= { tmnxNatL2AwHostEntry 4 }

tmnxNatL2AwHostOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwHostOutAddr indicates
         the outside IP address allocated to the host."
    ::= { tmnxNatL2AwHostEntry 5 }

tmnxNatL2AwHostOutStart OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwHostOutStart indicates
         the start of the port block allocated to the host."
    ::= { tmnxNatL2AwHostEntry 6 }

--
--      The Layer-2-Aware NAT Subscriber Table
--

tmnxNatL2AwSubTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatL2AwSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatL2AwSubTable contains status and basic statistics
        information about Layer-2-Aware NAT subscribers."
    ::= { tmnxNatSubObjs 12 }

tmnxNatL2AwSubEntry OBJECT-TYPE
    SYNTAX      TmnxNatL2AwSubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Layer-2-Aware NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { IMPLIED tmnxSubInfoSubIdent }
    ::= { tmnxNatL2AwSubTable 1 }

TmnxNatL2AwSubEntry ::= 
    SEQUENCE {
        tmnxNatL2AwSubPolicy             TNamedItem,
        tmnxNatL2AwSubIsaGrp             TmnxNatIsaGrpIdOrZero,
        tmnxNatL2AwSubIsaMemberId        Unsigned32,
        tmnxNatL2AwSubOutVRtrID          TmnxVRtrIDOrZero,
        tmnxNatL2AwSubOutAddrType        InetAddressType,
        tmnxNatL2AwSubOutAddr            InetAddress
    }

tmnxNatL2AwSubPolicy OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatL2AwSubPolicy indicates the NAT Policy
         associated with this NAT subscriber."
    ::= { tmnxNatL2AwSubEntry 1 }

tmnxNatL2AwSubIsaGrp OBJECT-TYPE
    SYNTAX      TmnxNatIsaGrpIdOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubIsaGrp indicates 
        the identifier of the NAT Integrated Service Adaptor group 
        associated with this NAT subscriber."
    ::= { tmnxNatL2AwSubEntry 2 }

tmnxNatL2AwSubIsaMemberId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubIsaMemberId indicates 
        the identifier of the NAT ISA Group member associated with this
        NAT subscriber."
    ::= { tmnxNatL2AwSubEntry 3 }

tmnxNatL2AwSubOutVRtrID OBJECT-TYPE
   SYNTAX      TmnxVRtrIDOrZero
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The object tmnxNatL2AwSubOutVRtrID indicates the number used to identify
        the outside virtual router instance associated with this NAT subscriber."
   ::= { tmnxNatL2AwSubEntry 4 }

tmnxNatL2AwSubOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwSubOutAddrType indicates
         the address type of tmnxNatL2AwSubOutAddr."
    ::= { tmnxNatL2AwSubEntry 5 }

tmnxNatL2AwSubOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwSubOutAddr indicates
         the outside IP address allocated to this NAT subscriber."
    ::= { tmnxNatL2AwSubEntry 6 }

--
--      The Layer-2-Aware NAT Subscriber Status Table
--

tmnxNatL2AwSubStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatL2AwSubStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatL2AwSubStatTable contains status and basic statistics
        information about Layer-2-Aware NAT subscribers."
    ::= { tmnxNatSubObjs 13 }

tmnxNatL2AwSubStatEntry OBJECT-TYPE
    SYNTAX      TmnxNatL2AwSubStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a Layer-2-Aware NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    AUGMENTS { tmnxNatL2AwSubEntry }
    ::= { tmnxNatL2AwSubStatTable 1 }

TmnxNatL2AwSubStatEntry ::= 
    SEQUENCE {
        tmnxNatL2AwSubStatIcmpPortUsage  TmnxNatUsageLevel,
        tmnxNatL2AwSubStatIcmpPortUsageH TruthValue,
        tmnxNatL2AwSubStatUdpPortUsage   TmnxNatUsageLevel,
        tmnxNatL2AwSubStatUdpPortUsageHi TruthValue,
        tmnxNatL2AwSubStatTcpPortUsage   TmnxNatUsageLevel,
        tmnxNatL2AwSubStatTcpPortUsageHi TruthValue,
        tmnxNatL2AwSubStatSessionUsage   TmnxNatUsageLevel,
        tmnxNatL2AwSubStatSessionUsageHi TruthValue,
        tmnxNatL2AwSubStatSessions       Gauge32,
        tmnxNatL2AwSubStatSessionsPrio   Gauge32,
        tmnxNatL2AwSubStatSessionsPeak   Gauge32
    }

tmnxNatL2AwSubStatIcmpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatIcmpPortUsage indicates 
        the ICMP port usage of this NAT subscriber."
    ::= { tmnxNatL2AwSubStatEntry 3 }

tmnxNatL2AwSubStatIcmpPortUsageH OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatIcmpPortUsageH indicates 
        if the ICMP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatL2AwSubStatEntry 4 }

tmnxNatL2AwSubStatUdpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatUdpPortUsage indicates 
        the UDP port usage of this NAT subscriber."
    ::= { tmnxNatL2AwSubStatEntry 5 }

tmnxNatL2AwSubStatUdpPortUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatUdpPortUsageHi indicates 
        if the UDP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatL2AwSubStatEntry 6 }

tmnxNatL2AwSubStatTcpPortUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatTcpPortUsage indicates 
        the TCP port usage of this NAT subscriber."
    ::= { tmnxNatL2AwSubStatEntry 7 }

tmnxNatL2AwSubStatTcpPortUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatTcpPortUsageHi indicates 
        if the TCP port usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcyPortWatermarkHigh and 
        tmnxNatPlcyPortWatermarkLow."
    ::= { tmnxNatL2AwSubStatEntry 8 }

tmnxNatL2AwSubStatSessionUsage OBJECT-TYPE
    SYNTAX      TmnxNatUsageLevel
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatSessionUsage indicates 
        the session usage of this NAT subscriber."
    ::= { tmnxNatL2AwSubStatEntry 9 }

tmnxNatL2AwSubStatSessionUsageHi OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The value of the object tmnxNatL2AwSubStatSessionUsageHi indicates 
        if the session usage of this NAT subscriber is high according to
        the values of the objects tmnxNatPlcySessionWatermarkHigh and 
        tmnxNatPlcySessionWatermarkLow."
    ::= { tmnxNatL2AwSubStatEntry 10 }

tmnxNatL2AwSubStatSessions OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatL2AwSubStatSessions indicates the current number of
         active sessions of this NAT subscriber.
         
         In other words, it is the number of ports in use 
         out of the nonreserved range."
    ::= { tmnxNatL2AwSubStatEntry 11 }

tmnxNatL2AwSubStatSessionsPrio OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatL2AwSubStatSessionsPrio indicates the current number of
         active prioritized sessions of this subscriber.
         
         In other words, it is the number of reserved ports in use."
    ::= { tmnxNatL2AwSubStatEntry 12 }

tmnxNatL2AwSubStatSessionsPeak OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatL2AwSubStatSessionsPeak indicates the maximum number
         of sessions that were ever active at the same time in the system sofar."
    ::= { tmnxNatL2AwSubStatEntry 13 }

--
--      The Layer-2-Aware NAT Subscriber Block Allocation Table
--

tmnxNatL2AwSubBlkTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatL2AwSubBlkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatL2AwSubBlkTable lists the port blocks allocated to
        Layer-2-Aware NAT subscribers."
    ::= { tmnxNatSubObjs 14 }

tmnxNatL2AwSubBlkEntry OBJECT-TYPE
    SYNTAX      TmnxNatL2AwSubBlkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a port block 
         allocated to a Layer-2-Aware NAT subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { tmnxSubInfoSubIdent,
            vRtrID,
            tmnxNatBlkL2AwAddrType,
            tmnxNatBlkL2AwAddr,
            tmnxNatBlkL2AwStart 
          }
    ::= { tmnxNatL2AwSubBlkTable 1 }

TmnxNatL2AwSubBlkEntry ::= 
    SEQUENCE {
        tmnxNatL2AwSubBlkEnd             InetPortNumber
    }

tmnxNatL2AwSubBlkEnd OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatL2AwSubBlkEnd indicates
         the end of the port block allocated to the subscriber."
    ::= { tmnxNatL2AwSubBlkEntry 1 }

--
--      The NAT64 Subscriber Table
--

tmnxNat64SubTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNat64SubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNat64SubTable contains status and basic statistics
        information about NAT64 subscribers."
    ::= { tmnxNatSubObjs 15 }

tmnxNat64SubEntry OBJECT-TYPE
    SYNTAX      TmnxNat64SubEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a NAT64 subscriber.

         Entries in this table are created and destroyed automatically
         by the system."
    INDEX { vRtrID,
            tmnxNat64SubAddrType,
            tmnxNat64SubAddr,
            tmnxNat64SubAddrPrefixLength
           }
    ::= { tmnxNat64SubTable 1 }

TmnxNat64SubEntry ::= 
    SEQUENCE {
        tmnxNat64SubAddrType         InetAddressType,
        tmnxNat64SubAddr             InetAddress,
        tmnxNat64SubAddrPrefixLength InetAddressPrefixLength,
        tmnxNat64SubId               Unsigned32
    }

tmnxNat64SubAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64SubAddrType indicates
         the address type of tmnxNat64SubAddr."
    ::= { tmnxNat64SubEntry 1 }

tmnxNat64SubAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64SubAddr indicates
         the inside IP address of the subscriber."
    ::= { tmnxNat64SubEntry 2 }

tmnxNat64SubAddrPrefixLength OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength (1..128)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64SubAddrPrefixLength indicates
         the prefix length of the subscriber."
    ::= { tmnxNat64SubEntry 3 }

tmnxNat64SubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNat64SubId indicates
         the value of tmnxNatLsnSubId of the row in the
         tmnxNatLsnSubTable that corresponds to this 
         NAT64 subscriber."
    ::= { tmnxNat64SubEntry 4 }

--
--      The Large Scale NAT Subscriber Identification String Table
--

tmnxNatLsnSubscIdStrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatLsnSubscIdStrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatLsnSubscIdStrTable associates subscriber strings
        with Large Scale NAT subscribers.
        
        The strings are taken from RADIUS messages according to
        the configuration in the tmnxNatSubIdTable.
        
        A subscriber string can be associated with more than one
        Large Scale NAT subscriber.
        
        Given a known subscriber string, this table provides the index values
        to retrieve the inside information of (one or more) associated
        Large Scale NAT subscribers, for example in the tmnxNatLsnHostTable.
        
        Rows in this table are created and destroyed automatically
        by the system."
    ::= { tmnxNatSubObjs 16 }

tmnxNatLsnSubscIdStrEntry OBJECT-TYPE
    SYNTAX      TmnxNatLsnSubscIdStrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row represents an association between a subscriber
        identification string and a Large Scale NAT subscriber."
    INDEX { tmnxNatLsnSubscIdStr,
            tmnxNatLsnSubscIdStrType,
            vRtrID,
            tmnxNatLsnSubscIdStrAddrType,
            tmnxNatLsnSubscIdStrAddr
           }
    ::= { tmnxNatLsnSubscIdStrTable 1 }

TmnxNatLsnSubscIdStrEntry ::= 
    SEQUENCE {
        tmnxNatLsnSubscIdStr             TmnxNatSubscriberIdString,
        tmnxNatLsnSubscIdStrType         TmnxNatSubscriberType,
        tmnxNatLsnSubscIdStrAddrType     InetAddressType,
        tmnxNatLsnSubscIdStrAddr         InetAddress,
        tmnxNatLsnSubscIdStrTimeStamp    TimeStamp
    }

tmnxNatLsnSubscIdStr OBJECT-TYPE
    SYNTAX      TmnxNatSubscriberIdString (SIZE(1..64))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubscIdStr indicates
         the subscriber identification string."
    ::= { tmnxNatLsnSubscIdStrEntry 1 }

tmnxNatLsnSubscIdStrType OBJECT-TYPE
    SYNTAX      TmnxNatSubscriberType{
                    classicLsnSub (2),
                    dsliteLsnSub  (3),
                    nat64LsnSub   (4)
                 }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubscIdStrType indicates
         the type of Large Scale NAT subscriber."
    ::= { tmnxNatLsnSubscIdStrEntry 2 }

tmnxNatLsnSubscIdStrAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubscIdStrAddrType indicates
         the address type of tmnxNatLsnSubscIdStrAddr."
    ::= { tmnxNatLsnSubscIdStrEntry 3 }

tmnxNatLsnSubscIdStrAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubscIdStrAddr indicates
         the inside IP address of the subscriber."
    ::= { tmnxNatLsnSubscIdStrEntry 4 }

tmnxNatLsnSubscIdStrTimeStamp OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatLsnSubscIdStrTimeStamp indicates
         the time that this association was made."
    ::= { tmnxNatLsnSubscIdStrEntry 5 }
    
-- ----------------------------------------------------------------------------
--      The "NAT Map" Group
-- ----------------------------------------------------------------------------
-- This group has become obsolete in release 9.0
-- Its functionality is replaced with the tmnxNatFwdObjs
--
--      The Large Scale NAT Host Map Table
--

tmnxNatMapLsnHostTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "The value of the object tmnxNatMapLsnHostTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatMapLsnHostTable."
    ::= { tmnxNatObjs 109 }

tmnxNatMapLsnHostTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatMapLsnHostEntry
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION
       "The tmnxNatMapLsnHostTable contains objects to configure 
        Large Scale NAT host static port forwarding."
    ::= { tmnxNatMapObjs 1 }

tmnxNatMapLsnHostEntry OBJECT-TYPE
    SYNTAX      TmnxNatMapLsnHostEntry
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION
        "Each conceptual row contains information to configure 
         static port forwarding of a Large Scale NAT host.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table."
    INDEX { vRtrID,
            tmnxNatMapLsnHostAddrType,
            tmnxNatMapLsnHostAddr
          }
    ::= { tmnxNatMapLsnHostTable 1 }

TmnxNatMapLsnHostEntry ::= 
    SEQUENCE {
        tmnxNatMapLsnHostAddrType               InetAddressType,
        tmnxNatMapLsnHostAddr                   InetAddress,
        tmnxNatMapLsnHostRowStatus              RowStatus,
        tmnxNatMapLsnHostLastMgmtChange         TimeStamp,
        tmnxNatMapLsnHostAdminState             TmnxAdminState, 
        tmnxNatMapLsnHostOutAddrType            InetAddressType,
        tmnxNatMapLsnHostOutAddr                InetAddress,
        tmnxNatMapLsnHostOutVRtrID              TmnxVRtrID 
    }

tmnxNatMapLsnHostAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapLsnHostAddrType specifies 
         the address type of tmnxNatMapLsnHostAddr."
    ::= { tmnxNatMapLsnHostEntry 1 }

tmnxNatMapLsnHostAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapLsnHostAddr specifies the inside IP address."
    ::= { tmnxNatMapLsnHostEntry 2 }

tmnxNatMapLsnHostRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
       "The value of tmnxNatMapLsnHostRowStatus specifies the row status of this row."
    ::= { tmnxNatMapLsnHostEntry 3 }

tmnxNatMapLsnHostLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "The value of tmnxNatMapLsnHostLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatMapLsnHostEntry 4 }

tmnxNatMapLsnHostAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
        "The object tmnxNatMapLsnHostAdminState specifies
         the administrative state of static port forwarding 
         of this Large Scale NAT host."
    ::= { tmnxNatMapLsnHostEntry 5 }

tmnxNatMapLsnHostOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapLsnHostOutAddrType indicates
         the address type of tmnxNatMapLsnHostOutAddr."
    ::= { tmnxNatMapLsnHostEntry 6 }

tmnxNatMapLsnHostOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapLsnHostOutAddr indicates
         the outside IP address allocated to the host."
    ::= { tmnxNatMapLsnHostEntry 7 }

tmnxNatMapLsnHostOutVRtrID OBJECT-TYPE
    SYNTAX      TmnxVRtrID
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "The object tmnxNatMapLsnHostOutVRtrID indicates the number used to 
         identify the outside virtual router instance in the system."
    ::= { tmnxNatMapLsnHostEntry 8 }

--
--      The NAT Map Table
--

tmnxNatMapTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "The value of the object tmnxNatMapTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatMapTable."
    ::= { tmnxNatObjs 110 }

tmnxNatMapTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatMapEntry
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION
       "The tmnxNatMapTable contains objects to configure 
        NAT mappings for static port forwarding."
    ::= { tmnxNatMapObjs 2 }

tmnxNatMapEntry OBJECT-TYPE
    SYNTAX      TmnxNatMapEntry
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION
        "Each conceptual row represents a static NAT mapping.

         Entries in this table can be created or deleted via SNMP operations.
         
         A corresponding conceptual row in the tmnxNatVrtrTable must exist
         while creating a row in this table.
         
         For every conceptual row in this table, a row can be found in the
         tmnxNatMapLsnHostTable; the value of the object 
         tmnxNatMapLsnHostAdminState in that row specifies the administrative
         state of all corresponding rows in this table."
    INDEX { vRtrID,
            tmnxNatMapAddrType,
            tmnxNatMapAddr,
            tmnxNatMapPort,
            tmnxNatMapProtocol
           }
    ::= { tmnxNatMapTable 1 }

TmnxNatMapEntry ::= 
    SEQUENCE {
        tmnxNatMapAddrType               InetAddressType,
        tmnxNatMapAddr                   InetAddress,
        tmnxNatMapPort                   Unsigned32,
        tmnxNatMapProtocol               TIpProtocol,
        tmnxNatMapRowStatus              RowStatus,
        tmnxNatMapLastMgmtChange         TimeStamp,
        tmnxNatMapOutPort                Unsigned32
    }

tmnxNatMapAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapAddrType specifies 
         the address type of tmnxNatMapAddr.
         
         The only value allowed is 'ipv4'."
    ::= { tmnxNatMapEntry 1 }

tmnxNatMapAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapAddr specifies the inside IP address.
        
         Broadcast, multicast or martian IP addresses are not allowed.
         
         Only IPv4 addresses are allowed."
    ::= { tmnxNatMapEntry 2 }

tmnxNatMapPort OBJECT-TYPE
    SYNTAX      Unsigned32 (1..1023)
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapPort specifies the inside port."
    ::= { tmnxNatMapEntry 3 }

tmnxNatMapProtocol OBJECT-TYPE
    SYNTAX      TIpProtocol ( 6 | 17 )
    MAX-ACCESS  not-accessible
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapProtocol specifies the protocol.
        
         The values supported are TCP(6), UDP(17)."
    ::= { tmnxNatMapEntry 4 }

tmnxNatMapRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION
       "The value of tmnxNatMapRowStatus specifies the row status of this row."
    ::= { tmnxNatMapEntry 5 }

tmnxNatMapLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "The value of tmnxNatMapLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatMapEntry 6 }

tmnxNatMapOutPort OBJECT-TYPE
    SYNTAX      Unsigned32 (1..1023)
    MAX-ACCESS  read-create
    STATUS      obsolete
    DESCRIPTION 
        "The value of tmnxNatMapOutPort specifies the outside port."
    ::= { tmnxNatMapEntry 7 }

-- ----------------------------------------------------------------------------
--      The "NAT Forwarding" Group
-- ----------------------------------------------------------------------------

--
--      The Nat Forwarding Action
--
-- The tmnxNatFwdAction object allows to request 
-- the creation, modification or removal of a NAT forwarding entry.
-- A NAT forwarding entry is either a static port mapping or a wildcard port 
-- mapping.
--
-- Write the attributes of the forwarding entry in the appropriate objects 
-- and the required action in the object tmnxNatFwdActionType. 
-- Writing the value 'doAction (1)' in the object tmnxNatFwdAction
-- triggers a request to perform the specified action.
--
-- If the action could be performed successfully, the value of the object
-- tmnxNatFwdActionSuccessful equals 'true'.
-- If the value of the object equals 'false', 
-- an entry in the TIMETRA-LOG-MIB::tmnxSnmpSetErrsTable is created.
--
-- If the action could be performed successfully, 
-- conceptual rows in the tmnxNatFwdTable 
-- are created, modified or destroyed.
--
-- The values of the object tmnxNatFwdActionSuccessful refers to the last action.
-- The value of tmnxNatFwdActionTime indicates the time of the last action.
--
-- To avoid concurrency problems, set the value of
-- tmnxNatFwdAction along with all necessary parameters in a single SNMP set
-- request.

tmnxNatFwdAction OBJECT IDENTIFIER ::= { tmnxNatFwdObjs 1 }

tmnxNatFwdActionSubType OBJECT-TYPE
    SYNTAX      TmnxNatPlType
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionSubType specifies 
         the type of subscriber where the action is done for.
         
         The value 'unknown' is not allowed."
    ::= { tmnxNatFwdAction 1 }

tmnxNatFwdActionVRtrId OBJECT-TYPE
    SYNTAX      TmnxVRtrID
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatFwdActionVRtrId specifies
         the ID of the virtual router instance.
         
         Set the value of tmnxNatFwdActionVRtrId if the forwarding entry
         is for a Large Scale NAT subscriber."
    ::= { tmnxNatFwdAction 2 }

tmnxNatFwdActionAddrType OBJECT-TYPE
    SYNTAX      InetAddressType (1|2)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionAddrType specifies 
         the address type of tmnxNatFwdActionAddr."
    ::= { tmnxNatFwdAction 3 }

tmnxNatFwdActionAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionAddr specifies the inside IP address.
        
         Broadcast, multicast or martian IP addresses are not allowed."
    ::= { tmnxNatFwdAction 4 }

tmnxNatFwdActionB4Addr OBJECT-TYPE
    SYNTAX      InetAddressIPv6
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionB4Addr specifies the inside 
         Dual Stack Lite B4 IPv6 address.
        
         Broadcast, multicast or martian IP addresses are not allowed.
         
         Set the value of tmnxNatFwdActionB4Addr if the 
         forwarding entry is for a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdAction 6 }

tmnxNatFwdActionAftrAddr OBJECT-TYPE
    SYNTAX      InetAddressIPv6
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionAftrAddr specifies the inside 
         Dual Stack Lite AFTR IPv6 address.
        
         Broadcast, multicast or martian IP addresses are not allowed.
         
         Set the value of tmnxNatFwdActionAftrAddr if the 
         forwarding entry is for a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdAction 8 }

tmnxNatFwdActionL2awSubscriberId OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(1..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionL2awSubscriberId specifies 
         the identification of the Layer-2-Aware NAT subscriber.
         
         Set the value of tmnxNatFwdActionL2awSubscriberId if the 
         forwarding entry is for a Layer-2-Aware NAT subscriber."
    ::= { tmnxNatFwdAction 9 }

tmnxNatFwdActionProtocol OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionProtocol specifies the IP protocol."
    ::= { tmnxNatFwdAction 10 }

tmnxNatFwdActionTimeOut OBJECT-TYPE
    SYNTAX      Unsigned32 (0|60..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatFwdActionTimeOut specifies 
         the timeout applied to the NAT forwarding entry.
         
         The value zero specifies that the forwarding entry does
         not time out."
    ::= { tmnxNatFwdAction 11 }

tmnxNatFwdActionPort OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionPort specifies the inside port.
        
         If any port is acceptable, do not specify 
         the value of tmnxNatFwdActionPort; in this case, the system will
         use an available port in the range starting from 1024 until the value
         of tmnxNatPlPortFwdRangeEnd of the corresponding pool."
    ::= { tmnxNatFwdAction 12 }

tmnxNatFwdActionOutPort OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionOutPort specifies the outside port.

         If the value of tmnxNatFwdActionType is not equal to 'create', do not
         set the value of tmnxNatFwdActionOutPort.

         If any port is acceptable, do not specify 
         the value of tmnxNatFwdActionOutPort; in this case, the system will
         use the same value as for the inside port."
    ::= { tmnxNatFwdAction 13 }

tmnxNatFwdActionOutAddr OBJECT-TYPE
    SYNTAX      InetAddressIPv4
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionOutAddr specifies
         the outside IP address allocated to the host.

         If the value of tmnxNatFwdActionType is not equal to 'create', do not
         set the value of tmnxNatFwdActionOutAddr.
                  
         If any address is acceptable, do not set the value of
         tmnxNatFwdActionOutAddr; in this case, if a corresponding row exists
         in the tmnxNatL2AwSubTable, the tmnxNatDsliteSubTable or the 
         tmnxNatLsnSubTable, the system will try to use the same outside IP
         address."
    ::= { tmnxNatFwdAction 15 }

tmnxNatFwdActionType OBJECT-TYPE
    SYNTAX      TmnxNatFwdActionType
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatFwdActionType specifies
         the type of action to perform."
    ::= { tmnxNatFwdAction 16 }

tmnxNatFwdActionGo OBJECT-TYPE
    SYNTAX      TmnxActionType
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Setting this object to 'doAction' triggers an attempt to 
         perform the NAT forwarding entry action according to the
         specified objects.

         Reading this object returns the value 'notApplicable'."
    ::= { tmnxNatFwdAction 17 }

tmnxNatFwdActionSuccessful OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatFwdActionSuccessful indicates
         if the last action request was successful.

         If the value of the object equals 'false', a row in the
         TIMETRA-LOG-MIB::tmnxSnmpSetErrsTable is created."
    ::= { tmnxNatFwdAction 18 }

tmnxNatFwdActionTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatFwdActionTime indicates
         the value of sysUpTime at the last time that the object 
         tmnxNatFwdActionSuccessful was written by the system."
    ::= { tmnxNatFwdAction 19 }

tmnxNatFwdActionDescription OBJECT-TYPE
    SYNTAX      TmnxNatFwdEntryDescription
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdActionDescription specifies 
         a description of the forwarding entry."
    ::= { tmnxNatFwdAction 20 }

--
--      The NAT port Forwarding Table
--

tmnxNatFwdTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatFwdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatFwdTable contains the port forwarding entries 
        for NAT subscribers.
        
        Entries in this table are created using the tmnxNatFwdAction
        objects.
        
        Entries in this table can expire, 
        or be removed using the tmnxNatFwdAction objects.
        
        The information in this table is not saved in the configuration file,
        but it can be made persistent across system reboot using the system
        persistency mechanism."
    ::= { tmnxNatFwdObjs 5 }

tmnxNatFwdEntry OBJECT-TYPE
    SYNTAX      TmnxNatFwdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents a port forwarding entry
         of a NAT subscriber."
    INDEX { tmnxNatFwdSubType,
            tmnxNatFwdL2awSubIdent,
            tmnxNatFwdLsnVRtrID,
            tmnxNatFwdLsnB4AddrType,
            tmnxNatFwdLsnB4Addr,
            tmnxNatFwdAddrType,
            tmnxNatFwdAddr,
            tmnxNatFwdProtocol,
            tmnxNatFwdPort
           }
    ::= { tmnxNatFwdTable 1 }

TmnxNatFwdEntry ::= 
    SEQUENCE {
        tmnxNatFwdSubType                TmnxNatSubscriberType,
        tmnxNatFwdL2awSubIdent           DisplayString,
        tmnxNatFwdLsnVRtrID              TmnxVRtrIDOrZero,
        tmnxNatFwdLsnB4AddrType          InetAddressType,
        tmnxNatFwdLsnB4Addr              InetAddress,
        tmnxNatFwdAddrType               InetAddressType,
        tmnxNatFwdAddr                   InetAddress,
        tmnxNatFwdProtocol               Unsigned32,
        tmnxNatFwdPort                   InetPortNumber,
        tmnxNatFwdOutVRtrID              TmnxVRtrID,
        tmnxNatFwdOutAddrType            InetAddressType,
        tmnxNatFwdOutAddr                InetAddress,
        tmnxNatFwdOutPort                InetPortNumber,
        tmnxNatFwdExpiryDateAndTime      DateAndTime,
        tmnxNatFwdLsnAftrAddrType        InetAddressType,
        tmnxNatFwdLsnAftrAddr            InetAddress,
        tmnxNatFwdPersistKey             Unsigned32,
        tmnxNatFwdDescription            TmnxNatFwdEntryDescription,
        tmnxNatFwdOrigin                 INTEGER
    }

tmnxNatFwdSubType OBJECT-TYPE
    SYNTAX      TmnxNatSubscriberType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdSubType indicates
         the type of NAT subscriber."
    ::= { tmnxNatFwdEntry 1 }

tmnxNatFwdL2awSubIdent OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdL2awSubIdent indicates
         the identifier of a Layer-2-Aware NAT subscriber.
         
         The empty string indicates that this conceptual row is not for
         a Layer-2-Aware NAT subscriber."
    ::= { tmnxNatFwdEntry 2 }

tmnxNatFwdLsnVRtrID OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdLsnVRtrID indicates the inside vRtrID.
        
         The value zero indicates that this conceptual row is not for
         a Large Scale NAT subscriber."
    ::= { tmnxNatFwdEntry 3 }

tmnxNatFwdLsnB4AddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdLsnB4AddrType indicates
         the address type of tmnxNatFwdLsnB4Addr.
         
         The only values supported are 'unknown' (0) and 'ipv6' (2)
         
         The value 'unknown' indicates that this conceptual row is not for
         a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdEntry 4 }

tmnxNatFwdLsnB4Addr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdLsnB4Addr indicates
         the inside B4 IPv6 address of the Dual Stack Lite subscriber.
         
         The empty value indicates that this conceptual row is not for
         a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdEntry 5 }

tmnxNatFwdAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdAddrType indicates
         the address type of tmnxNatFwdAddrType."
    ::= { tmnxNatFwdEntry 6 }

tmnxNatFwdAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdAddr indicates
         the inside IP address allocated to the subscriber."
    ::= { tmnxNatFwdEntry 7 }

tmnxNatFwdProtocol OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdProtocol indicates the IP protocol."
    ::= { tmnxNatFwdEntry 8 }

tmnxNatFwdPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdPort indicates the inside port."
    ::= { tmnxNatFwdEntry 9 }

tmnxNatFwdOutVRtrID OBJECT-TYPE
    SYNTAX      TmnxVRtrID
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdOutVRtrID indicates the outside vRtrID."
    ::= { tmnxNatFwdEntry 10 }

tmnxNatFwdOutAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdOutAddrType indicates
         the address type of tmnxNatFwdOutAddr."
    ::= { tmnxNatFwdEntry 11 }

tmnxNatFwdOutAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdOutAddr indicates the outside IP address."
    ::= { tmnxNatFwdEntry 12 }

tmnxNatFwdOutPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdOutPort indicates the outside port."
    ::= { tmnxNatFwdEntry 13}

tmnxNatFwdExpiryDateAndTime OBJECT-TYPE
    SYNTAX      DateAndTime (SIZE (11))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatFwdExpiryDateAndTime indicates the date-time
         when this conceptual row expires.
         
         The value all zeroes indicates an infinite lifetime."
    ::= { tmnxNatFwdEntry 14 }

tmnxNatFwdLsnAftrAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdLsnAftrAddrType indicates
         the address type of tmnxNatFwdLsnAftrAddr.
         
         The only values supported are 'unknown' (0) and 'ipv6' (2)
         
         The value 'unknown' indicates that this conceptual row is not for
         a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdEntry 15 }

tmnxNatFwdLsnAftrAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdLsnAftrAddr indicates
         the inside B4 IPv6 address of the Dual Stack Lite subscriber.
         
         The empty value indicates that this conceptual row is not for
         a Dual Stack Lite subscriber."
    ::= { tmnxNatFwdEntry 16 }

tmnxNatFwdPersistKey OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdPersistKey indicates a key value 
         that can be used to track this port forwarding entry
         in the persistence file."
    ::= { tmnxNatFwdEntry 17}

tmnxNatFwdDescription OBJECT-TYPE
    SYNTAX      TmnxNatFwdEntryDescription
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdL2awSubIdent indicates
         the description of this port forwarding entry."
    ::= { tmnxNatFwdEntry 18 }

tmnxNatFwdOrigin OBJECT-TYPE
    SYNTAX      INTEGER {
                    dynamic                          (1),
                    static                           (2)
                 }                           
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatFwdOrigin indicates
         how this port forwarding entry was created.
         
         The value 'dynamic' indicates that the entry was created as a result
         of a Port Control Protocol (PCP) request.
         
         The value 'static' indicates that the entry was created by a network
         management operation, using the tmnxNatFwdAction object group.
         
         All rows in this table correspond to explicit mappings."
    REFERENCE
       "Port Control Protocol (PCP) (draft-ietf-pcp-base-18), 
        section 3. Terminology."
    ::= { tmnxNatFwdEntry 19}

-- ----------------------------------------------------------------------------
--      The "NAT Accounting" Group
-- ----------------------------------------------------------------------------

--
--      The NAT Accounting Policy Table
--

tmnxNatApTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatApTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatApTable."
    ::= { tmnxNatObjs 112 }

tmnxNatApTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatApEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatApTable contains objects to configure 
        the NAT RADIUS accounting policies of this system."
    ::= { tmnxNatAccObjs 1 }

tmnxNatApEntry OBJECT-TYPE
    SYNTAX      TmnxNatApEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about 
         a particular NAT RADIUS accounting policy.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { IMPLIED tmnxNatApName }
    ::= { tmnxNatApTable 1 }

TmnxNatApEntry ::= 
    SEQUENCE {
        tmnxNatApName                    TNamedItem,
        tmnxNatApLastMgmtChange          TimeStamp,
        tmnxNatApRowStatus               RowStatus,
        tmnxNatApDescription             TItemDescription,
        tmnxNatApIncludeAttributes       BITS,
        tmnxNatApServersTimeout          Unsigned32,
        tmnxNatApServersRetry            Unsigned32,
        tmnxNatApServersVRtrID           TmnxVRtrIDOrZero,
        tmnxNatApServersSrcAddrType      InetAddressType,
        tmnxNatApServersSrcAddrStart     InetAddress,
        tmnxNatApServersSrcAddrEnd       InetAddress,
        tmnxNatApServersAlgorithm        TmnxSubRadServAlgorithm
        }
tmnxNatApName OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApName specifies
         the name of this NAT RADIUS accounting policy."
    ::= { tmnxNatApEntry 1 }

tmnxNatApLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatApEntry 2 }

tmnxNatApRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatApRowStatus specifies
        the row status of this row."
    ::= { tmnxNatApEntry 3 }

tmnxNatApDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApDescription specifies
         the description of this NAT RADIUS accounting policy."
    DEFVAL { "" }
    ::= { tmnxNatApEntry 4 }
    
tmnxNatApIncludeAttributes OBJECT-TYPE
    SYNTAX      BITS {
                    framedIpAddr                     (0),
                    nasIdentifier                    (1),
                    natSubscriberString              (2),
                    userName                         (3),
                    insideServiceId                  (4),
                    outsideServiceId                 (5),
                    outsideIp                        (6),
                    portRangeBlock                   (7),
                    hardwareTimestamp                (8),
                    releaseReason                    (9),
                    multiSessionId                   (10),
                    frameCounters                    (11),
                    octetCounters                    (12),
                    sessionTime                      (13),
                    calledStationId                  (14),
                    subscriberData                   (15)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApIncludeAttributes specifies what RADIUS
         attributes the system should include into RADIUS accounting messages."
    DEFVAL { '0'H }
    ::= { tmnxNatApEntry 5 }

tmnxNatApServersTimeout OBJECT-TYPE
    SYNTAX      Unsigned32 (1..90)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersTimeout specifies, in seconds, the
         timeout between retries towards the same RADIUS server."
    DEFVAL { 5 }
    ::= { tmnxNatApEntry 100 }

tmnxNatApServersRetry OBJECT-TYPE
    SYNTAX      Unsigned32 (1..10)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersRetry specifies the number of RADIUS
         requests towards the same RADIUS server."
    DEFVAL { 3 }
    ::= { tmnxNatApEntry 101 }

tmnxNatApServersVRtrID OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersVRtrID specifies the virtual router
         instance applicable for the set of configured RADIUS servers
         (tmnxNatAccServTable). 
         
         The value of this object cannot be changed once a RADIUS server is 
         configured for this policy.
         
         When the value is '0', both base and management router instances are
         available."
    DEFVAL { 0 }
    ::= { tmnxNatApEntry 102 }

tmnxNatApServersSrcAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersSrcAddrType specifies the type of
         address stored in tmnxNatApServersSrcAddrStart 
         and tmnxNatApServersSrcAddrEnd."
    DEFVAL { unknown }
    ::= { tmnxNatApEntry 103 }

tmnxNatApServersSrcAddrStart OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersSrcAddrStart specifies 
         the start of the the range of source addresses to be used for 
         NAT RADIUS accounting; it must be a valid unicast address.

         Each ISA MDA of the NAT ISA group associated with this policy, 
         uses an address of this range."
    DEFVAL { ''H }  
    ::= { tmnxNatApEntry 104 }

tmnxNatApServersSrcAddrEnd OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(0|4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersSrcAddrEnd specifies 
         the end of the the range of source addresses to be used for 
         NAT RADIUS accounting; it must be a valid unicast address).

         Each ISA MDA of the NAT ISA group associated with this policy, 
         uses an address of this range."
    DEFVAL { ''H }  
    ::= { tmnxNatApEntry 105 }

tmnxNatApServersAlgorithm OBJECT-TYPE
    SYNTAX      TmnxSubRadServAlgorithm {
                    direct     (1),
                    roundRobin (2)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServersAlgorithm specifies the algorithm
         used to select a RADIUS server from the list of configured servers
         (tmnxNatApRadServTable)."
    DEFVAL { direct }
    ::= { tmnxNatApEntry 106 }

--
--      The NAT Accounting Policy Servers Table
--
tmnxNatApServTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatApServTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatApServTable."
    ::= { tmnxNatObjs 113 }

tmnxNatApServTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatApServEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The tmnxNatApServTable allows the configuration of objects
         related to a particular RADIUS server associated with a particular
         NAT RADIUS Accounting Policy."
    ::= { tmnxNatAccObjs 2 }

tmnxNatApServEntry OBJECT-TYPE
    SYNTAX      TmnxNatApServEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry represents the configuration for a particular RADIUS server. 
        
         Entries in this table can be created and deleted
         via SNMP SET operations to tmnxNatApServRowStatus."
    INDEX { tmnxNatApName,
            tmnxNatApServIndex }
    ::= { tmnxNatApServTable 1 }

TmnxNatApServEntry ::=
    SEQUENCE {
        tmnxNatApServIndex           Unsigned32,
        tmnxNatApServRowStatus       RowStatus,
        tmnxNatApServLastMgmtChange  TimeStamp,
        tmnxNatApServAddrType        InetAddressType,
        tmnxNatApServAddr            InetAddress,
        tmnxNatApServSecret          DisplayString,
        tmnxNatApServAcctPort        Unsigned32
    }

tmnxNatApServIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..5)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServIndex specifies the index
         of this RADIUS server in the set of servers associated with this
         NAT accounting policy."
   ::= { tmnxNatApServEntry 1 }

tmnxNatApServRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServRowStatus controls the creation and
         deletion of rows in the table."
    ::= { tmnxNatApServEntry 2 }

tmnxNatApServLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value tmnxNatApServLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         conceptual row."
    ::= { tmnxNatApServEntry 3 }

tmnxNatApServAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServAddrType specifies the type of
         address stored in tmnxNatApServAddr."
    ::= { tmnxNatApServEntry 5 }

tmnxNatApServAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServAddr specifies the IP address of
         the RADIUS server. 
         
         A valid unicast IP address must be specified at row creation time."
    ::= { tmnxNatApServEntry 6 }

tmnxNatApServSecret OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0|1..20))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServSecret specifies the secret key
         associated with the RADIUS server. 
         
         A non-empty value must be specified at row creation time. 
         
         An SNMP get request on this object always returns an empty string."
    ::= { tmnxNatApServEntry 7 }

tmnxNatApServAcctPort OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServAcctPort specifies the UDP port
         number on which to contact the RADIUS server for accounting."
    DEFVAL { 1813 }
    ::= { tmnxNatApServEntry 8 }

--
--      The NAT Accounting Policy Servers Status Table
--
tmnxNatApServStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatApServStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The tmnxNatApServStatTable contains basic status information
         about the connections with NAT accounting RADIUS servers."
    ::= { tmnxNatAccObjs 3 }

tmnxNatApServStatEntry OBJECT-TYPE
    SYNTAX      TmnxNatApServStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry represents the status of a connection with
         a particular RADIUS server. 
        
         Rows in this table are automatically created and destroyed
         by the system.
         
         Each connection originates in a particular NAT ISA group member, using
         an IP source address of the range configured for a particular 
         NAT accounting policy, and connects with a RADIUS server associated
         with that policy."
    INDEX { tmnxNatApName,
            tmnxNatApServIndex,
            tmnxNatIsaGrpId,
            tmnxNatIsaMemberId
          }
    ::= { tmnxNatApServStatTable 1 }

TmnxNatApServStatEntry ::=
    SEQUENCE {
        tmnxNatApServStatSrcAddrType     InetAddressType,
        tmnxNatApServStatSrcAddr         InetAddress,
        tmnxNatApServStatOperState       TmnxOperState,
        tmnxNatApServStatTxRequests      Counter32,
        tmnxNatApServStatReqTimeout      Counter32,
        tmnxNatApServStatSendRetries     Counter32
    }

tmnxNatApServStatSrcAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatApServStatSrcAddrType indicates
         the address type of tmnxNatApServStatSrcAddr."
    ::= { tmnxNatApServStatEntry 1 }

tmnxNatApServStatSrcAddr OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatApServStatSrcAddr indicates
         the source IP address used by this system for this connection 
         with this RADIUS server."
    ::= { tmnxNatApServStatEntry 2 }

tmnxNatApServStatOperState OBJECT-TYPE
    SYNTAX      TmnxOperState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServStatOperState indicates
         the operational state of this connection with this RADIUS server."
   ::= { tmnxNatApServStatEntry 3 }

tmnxNatApServStatTxRequests OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServStatTxRequests indicates the number of
         RADIUS request packets transmitted for this connection 
         with this RADIUS server."
    ::= { tmnxNatApServStatEntry 4 }

tmnxNatApServStatReqTimeout OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxRadSrvStatsReqTimeout indicates the number of
         RADIUS requests that have timed out for this connection 
         with this RADIUS server."
    ::= { tmnxNatApServStatEntry 6 }
       
tmnxNatApServStatSendRetries OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatApServStatSendRetries indicates the number of
         retries to a different server for a single accounting request for this connection 
         with this RADIUS server."
    ::= { tmnxNatApServStatEntry 7 }
    
-- ----------------------------------------------------------------------------
--      The "NAT Port Control Protocol" Group
-- ----------------------------------------------------------------------------
--
-- The Port Control Protocol allows an IPv6 or IPv4 host to control how
-- incoming IPv6 or IPv4 packets are translated and forwarded by a
-- network address translator (NAT) or simple firewall, and also allows
-- a host to optimize its outgoing NAT keepalive messages.
--
--      The Port Control Protocol Policy Table
--

tmnxNatPcpPlcyTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpPlcyTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPcpPlcyTable."
    ::= { tmnxNatObjs 118 }

tmnxNatPcpPlcyTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPcpPlcyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPcpPlcyTable contains objects to configure 
        the Port Control Protocol (PCP) policies of this system."
    ::= { tmnxNatPcpObjs 1 }

tmnxNatPcpPlcyEntry OBJECT-TYPE
    SYNTAX      TmnxNatPcpPlcyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about 
         a particular PCP policy.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { IMPLIED tmnxNatPcpPlcyName }
    ::= { tmnxNatPcpPlcyTable 1 }

TmnxNatPcpPlcyEntry ::= 
    SEQUENCE {
        tmnxNatPcpPlcyName               TNamedItem,
        tmnxNatPcpPlcyLastMgmtChange     TimeStamp,
        tmnxNatPcpPlcyRowStatus          RowStatus,
        tmnxNatPcpPlcyDescription        TItemDescription,
        tmnxNatPcpPlcyOpcodes            BITS,
        tmnxNatPcpPlcyOptions            BITS,
        tmnxNatPcpPlcyMinimumLifetime    Unsigned32,
        tmnxNatPcpPlcyMaximumLifetime    Unsigned32,                    
        tmnxNatPcpPlcyMaxDescriptionLen  Unsigned32
    }

tmnxNatPcpPlcyName OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyName specifies
         the name of this PCP policy."
    ::= { tmnxNatPcpPlcyEntry 1 }

tmnxNatPcpPlcyLastMgmtChange OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyLastMgmtChange indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPcpPlcyEntry 2 }

tmnxNatPcpPlcyRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPcpPlcyRowStatus specifies the row status of this row."
    ::= { tmnxNatPcpPlcyEntry 3 }

tmnxNatPcpPlcyDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyDescription specifies
         the description of this PCP policy."
    DEFVAL { "" }
    ::= { tmnxNatPcpPlcyEntry 4 }

tmnxNatPcpPlcyOpcodes OBJECT-TYPE
    SYNTAX      BITS {
                    get                              (0),
                    map                              (1),
                    announce                         (2)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpPlcyOpcodes specifies
         the PCP opcodes supported by the PCP servers using this PCP policy."
    REFERENCE
       "Port Control Protocol (PCP) Failure Scenarios, 
        section 4 GET/NEXT Operation.
        
        Port Control Protocol (PCP), 
        section 9 MAP Opcode
        section 13 ANNOUNCE Opcode."
    DEFVAL { '0'H }
    ::= { tmnxNatPcpPlcyEntry 5 }

tmnxNatPcpPlcyOptions OBJECT-TYPE
    SYNTAX      BITS {
                    description                      (0),
                    next                             (1),
                    portReservation                  (2),
                    thirdParty                       (3),
                    preferFailure                    (4)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpPlcyOptions specifies
         the PCP options supported by the PCP servers using this PCP policy."
    REFERENCE
       "Some Extensions to Port Control Protocol (PCP) 
       (draft-boucadair-pcp-extensions-02), section 2 DESCRIPTION.

        Port Control Protocol (PCP) Failure Scenarios, 
        section 4.4 NEXT.

        Reserving N and N+1 Ports with PCP (Internet-Draft
        draft-boucadair-pcp-rtp-rtcp) PORT_RESERVATION_OPTION.
                       
        Port Control Protocol (PCP) (draft-ietf-pcp-base-22), 
        section 12.1 THIRD_PARTY Option for MAP and PEER Opcodes;
        section 12.2 PREFER_FAILURE Option for MAP Opcode."
    DEFVAL { '0'H }
    ::= { tmnxNatPcpPlcyEntry 6 }

tmnxNatPcpPlcyMinimumLifetime OBJECT-TYPE
    SYNTAX      Unsigned32 (60..86399)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyMinimumLifetime specifies 
         the minimum lifetime of explicit mappings made by the PCP servers 
         using this PCP policy."
    REFERENCE
       "Port Control Protocol (PCP) (draft-ietf-pcp-base-18), 
        section 9.5 Mapping Lifetime and Deletion."
    DEFVAL { 120 }
    ::= { tmnxNatPcpPlcyEntry 7 }

tmnxNatPcpPlcyMaximumLifetime OBJECT-TYPE
    SYNTAX      Unsigned32 (61..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyMaximumLifetime specifies 
         the maximum lifetime of explicit mappings made by the PCP servers 
         using this PCP policy."
    REFERENCE
       "Port Control Protocol (PCP) (draft-ietf-pcp-base-18), 
        section 9.5 Mapping Lifetime and Deletion."
    DEFVAL { 86400 }
    ::= { tmnxNatPcpPlcyEntry 8 }

tmnxNatPcpPlcyMaxDescriptionLen OBJECT-TYPE
    SYNTAX      Unsigned32 (1..64)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpPlcyMaxDescriptionLen specifies 
         the maximum length of mapping descriptions made by the PCP servers 
         using this PCP policy.

         The value of tmnxNatPcpPlcyMaxDescriptionLen is only relevant
         if the corresponding bit in the tmnxNatPcpPlcyOptions object is set."
    REFERENCE
       "Some Extensions to Port Control Protocol (PCP) 
       (draft-boucadair-pcp-extensions-02), section 2 DESCRIPTION."
    DEFVAL { 64 }
    ::= { tmnxNatPcpPlcyEntry 9 }

--
--      The PCP Server Table
--

tmnxNatPcpSrvTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpSrvTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPcpPlcyTable."
    ::= { tmnxNatObjs 119 }

tmnxNatPcpSrvTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPcpSrvEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPcpSrvTable contains objects to configure 
        the Port Control Protocol (PCP) Servers of this system."
    ::= { tmnxNatPcpObjs 2 }

tmnxNatPcpSrvEntry OBJECT-TYPE
    SYNTAX      TmnxNatPcpSrvEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents information about 
         a particular PCP Server.

        Entries in this table can be created or deleted via SNMP operations."
    INDEX { vRtrID,
            IMPLIED tmnxNatPcpSrvName }
    ::= { tmnxNatPcpSrvTable 1 }

TmnxNatPcpSrvEntry ::= 
    SEQUENCE {
        tmnxNatPcpSrvName                TNamedItem,
        tmnxNatPcpSrvLastCh              TimeStamp,
        tmnxNatPcpSrvRowStatus           RowStatus,
        tmnxNatPcpSrvAdminState          TmnxAdminState,
        tmnxNatPcpSrvDescription         TItemDescription,
        tmnxNatPcpSrvPlcy                TNamedItemOrEmpty,
        tmnxNatPcpSrvFwdInsideRouter     TmnxVRtrIDOrZero,
        tmnxNatPcpSrvDsliteAftrAddr      InetAddressIPv6,
        tmnxNatPcpSrvState               TmnxOperState,
        tmnxNatPcpSrvStateDescription    DisplayString,
        tmnxNatPcpSrvEpoch               Unsigned32
    }

tmnxNatPcpSrvName OBJECT-TYPE
    SYNTAX      TNamedItem
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvName specifies
         the name of this PCP server."
    ::= { tmnxNatPcpSrvEntry 1 }

tmnxNatPcpSrvLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvLastCh indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPcpSrvEntry 2 }

tmnxNatPcpSrvRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPcpSrvRowStatus specifies the row status of this row."
    ::= { tmnxNatPcpSrvEntry 3 }

tmnxNatPcpSrvAdminState OBJECT-TYPE
    SYNTAX      TmnxAdminState
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvAdminState specifies
         the administrative state of this PCP server."
    DEFVAL { outOfService }
    ::= { tmnxNatPcpSrvEntry 4 }

tmnxNatPcpSrvDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvDescription specifies
         the description of this PCP server."
    DEFVAL { "" }
    ::= { tmnxNatPcpSrvEntry 5 }

tmnxNatPcpSrvPlcy OBJECT-TYPE
    SYNTAX      TNamedItemOrEmpty
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvPlcy specifies
         the name of the PCP Policy associated with this PCP server.
         
         The value of tmnxNatPcpSrvPlcy refers to a row in the
         tmnxNatPcpPlcyTable."
    DEFVAL { "" }
    ::= { tmnxNatPcpSrvEntry 6 }

tmnxNatPcpSrvFwdInsideRouter OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpSrvFwdInsideRouter specifies
         the identifier of the PCP forwarding inside virtual router instance
         associated with the PCP server.
         
         The value of tmnxNatPcpSrvFwdInsideRouter refers to a row in the
         tmnxNatVrtrTable.
         
         The value zero specifies that there is no PCP forwarding
         inside virtual router instance associated with this PCP server."
    DEFVAL { 0 } 
    ::= { tmnxNatPcpSrvEntry 7 }

tmnxNatPcpSrvDsliteAftrAddr OBJECT-TYPE
    SYNTAX      InetAddressIPv6
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatPcpSrvDsliteAftrAddr specifies the inside 
         Dual Stack Lite AFTR address.
        
         Broadcast, multicast or martian IP addresses are not allowed.
         
         Set the value of tmnxNatPcpSrvDsliteAftrAddr if PCP mappings 
         (forwarding entries) are requested for Dual Stack Lite subscribers.
         
         The value all zeroes specifies that there is no inside 
         Dual Stack Lite AFTR address configured."
    REFERENCE 
        "RFC 6333 Dual-Stack Lite, Section 6 AFTR Element."
    DEFVAL { ''H } 
    ::= { tmnxNatPcpSrvEntry 8 }
    
tmnxNatPcpSrvState OBJECT-TYPE
    SYNTAX      TmnxOperState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvState indicates
         the operational state of this PCP server."
    ::= { tmnxNatPcpSrvEntry 9 }

tmnxNatPcpSrvStateDescription OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..80))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvStateDescription indicates
         the description of the state of this PCP server.
         
         It may describe the cause of the problem while the
         value of the object tmnxNatPcpSrvState is not equal to 'inService'."
    ::= { tmnxNatPcpSrvEntry 10 }

tmnxNatPcpSrvEpoch OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvEpoch indicates (and specifies)
         the Epoch of this PCP server.
         
         Though this object is writable, setting it is discouraged
         unless for test purposes.
         
         The value of this object persists during a High Availability
         switch-over, but is reset during a reboot of the system."
    REFERENCE 
        "Port Control Protocol (PCP) draft-ietf-pcp-base-24
         Section 8.5 Epoch"
    DEFVAL { 0 }
    ::= { tmnxNatPcpSrvEntry 11 }
    
--
--      The PCP Server Interface Table
--

tmnxNatPcpSrvIfTableLastCh OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatPcpSrvIfTableLastCh indicates
         the value of sysUpTime at the time of the last modification of
         an entry in the tmnxNatPcpSrvIfTable."
    ::= { tmnxNatObjs 121 }

tmnxNatPcpSrvIfTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPcpSrvIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPcpSrvIfTable contains the interfaces associated with the
        PCP servers."
    ::= { tmnxNatPcpObjs 3 }

tmnxNatPcpSrvIfEntry OBJECT-TYPE
    SYNTAX      TmnxNatPcpSrvIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents an interface
         associated with a particular PCP server.

         Entries in this table can be created or deleted via SNMP operations.
         
         An row in this table can only be created if the value of the object
         vRtrIfType in the conceptual row in the TIMETRA-VRTR-MIB::vRtrIfTable
         corresponding with the same vRtrID and vRtrIfIndex, is equal to either
         'network' or 'serviceIes in the Base router, or 'serviceVprn' in
         a VPRN router instance."
    INDEX { vRtrID,
            tmnxNatPcpSrvName,
            vRtrIfIndex
          }
    ::= { tmnxNatPcpSrvIfTable 1 }

TmnxNatPcpSrvIfEntry ::= 
    SEQUENCE {
        tmnxNatPcpSrvIfRowStatus         RowStatus,
        tmnxNatPcpSrvIfLastCh            TimeStamp
    }

tmnxNatPcpSrvIfRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
       "The value of tmnxNatPcpSrvIfRowStatus specifies 
        the row status of this row."
    ::= { tmnxNatPcpSrvIfEntry 1 }

tmnxNatPcpSrvIfLastCh OBJECT-TYPE
    SYNTAX          TimeStamp
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The value of tmnxNatPcpSrvIfLastCh indicates the sysUpTime at
         the time of the most recent management-initiated change to this
         table row."
    ::= { tmnxNatPcpSrvIfEntry 2 }

--
--      The PCP Server Interface Statistics Table
--

tmnxNatPcpSrvIfStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatPcpSrvIfStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatPcpSrvIfStatsTable contains PCP statistics
        per interface."
    ::= { tmnxNatPcpObjs 4 }

tmnxNatPcpSrvIfStatsEntry OBJECT-TYPE
    SYNTAX      TmnxNatPcpSrvIfStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each conceptual row represents PCP statistics for an interface
         associated with a particular PCP server.

         Entries in this table are created automatically by the system."
    INDEX { vRtrID,
            tmnxNatPcpSrvName,
            vRtrIfIndex,
            tmnxNatPcpSrvIfStatsType
          }
    ::= { tmnxNatPcpSrvIfStatsTable 1 }

TmnxNatPcpSrvIfStatsEntry ::= 
    SEQUENCE {
        tmnxNatPcpSrvIfStatsType         Unsigned32,
        tmnxNatPcpSrvIfStatsName         DisplayString,
        tmnxNatPcpSrvIfStatsValLw        Counter32,
        tmnxNatPcpSrvIfStatsValHw        Counter32,
        tmnxNatPcpSrvIfStatsVal          Counter64
    }

tmnxNatPcpSrvIfStatsType OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of tmnxNatPcpSrvIfStatsType indicates
         the type of PCP statistics contained in this conceptual row.
         
         It is merely a numerical index, the meaning of the PCP statistics
         in this conceptual row is indicated by the value 
         of the object tmnxNatPcpSrvIfStatsName."
    ::= { tmnxNatPcpSrvIfStatsEntry 1 }

tmnxNatPcpSrvIfStatsName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..58))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPcpSrvIfStatsName indicates
        the human-readable identifier of the statistics 
        contained in this conceptual row."
    ::= { tmnxNatPcpSrvIfStatsEntry 2 }

tmnxNatPcpSrvIfStatsValLw OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPcpSrvIfStatsValLw indicates
        the lower 32-bits word of the statistics value 
        contained in this conceptual row."
    ::= { tmnxNatPcpSrvIfStatsEntry 3 }

tmnxNatPcpSrvIfStatsValHw OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPcpSrvIfStatsValHw indicates
        the higher 32-bits word of the statistics value 
        contained in this conceptual row."
    ::= { tmnxNatPcpSrvIfStatsEntry 4 }

tmnxNatPcpSrvIfStatsVal OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
       "The value of the object tmnxNatPcpSrvIfStatsVal indicates
        the value of the statistics contained in this conceptual row."
    ::= { tmnxNatPcpSrvIfStatsEntry 5 }

-- ----------------------------------------------------------------------------
--      The "NAT Subscriber Identification support" Group
-- ----------------------------------------------------------------------------
--
-- The objects in this group describe the RADIUS vendors and
-- RADIUS attributes supported in the tmnxNatSubIdTable.
--

--
--      The supported vendors Table
--

tmnxNatSubscIdVendorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatSubscIdVendorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatSubscIdVendorTable describes the RADIUS Vendor-Id's
        supported by this system for use in the tmnxNatSubIdTable.
        
        Rows in this table are created and destroyed automatically
        by the system."
    ::= { tmnxNatSubscIdObjs 1 }

tmnxNatSubscIdVendorEntry OBJECT-TYPE
    SYNTAX      TmnxNatSubscIdVendorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row represents a RADIUS Vendor-Id 
        supported by this system."
    INDEX { tmnxNatSubscIdVendorId }
    ::= { tmnxNatSubscIdVendorTable 1 }

TmnxNatSubscIdVendorEntry ::= 
    SEQUENCE {
        tmnxNatSubscIdVendorId          TmnxSubRadiusVendorId,
        tmnxNatSubscIdVendorStr         DisplayString,
        tmnxNatSubscIdVendorDescription TItemDescription
    }

tmnxNatSubscIdVendorId OBJECT-TYPE
    SYNTAX      TmnxSubRadiusVendorId
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdVendorId indicates
         the RADIUS Vendor-Id value corresponding with this
         vendor."
    ::= { tmnxNatSubscIdVendorEntry 1 }

tmnxNatSubscIdVendorStr OBJECT-TYPE
    SYNTAX      DisplayString ( SIZE(1..32))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdVendorStr indicates
         the string representation of this vendor."
    ::= { tmnxNatSubscIdVendorEntry 2 }

tmnxNatSubscIdVendorDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdVendorDescription indicates
         the description of this vendor."
    ::= { tmnxNatSubscIdVendorEntry 3 }

--
--      The supported attributes Table
--

tmnxNatSubscIdAttrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF TmnxNatSubscIdAttrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The tmnxNatSubscIdAttrTable describes the RADIUS Attribute Types
        supported by this system for use in the tmnxNatSubIdTable.
        
        Rows in this table are created and destroyed automatically
        by the system."
    ::= { tmnxNatSubscIdObjs 2 }

tmnxNatSubscIdAttrEntry OBJECT-TYPE
    SYNTAX      TmnxNatSubscIdAttrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Each conceptual row represents a supported RADIUS Attribute Type 
        for a RADIUS Vendor-Id."
    INDEX { tmnxNatSubscIdVendorId,
            tmnxNatSubscIdAttrType
          }
    ::= { tmnxNatSubscIdAttrTable 1 }

TmnxNatSubscIdAttrEntry ::= 
    SEQUENCE {
        tmnxNatSubscIdAttrType          TmnxSubRadiusAttrType,
        tmnxNatSubscIdAttrStr           DisplayString,
        tmnxNatSubscIdAttrDescription   TItemDescription
    }

tmnxNatSubscIdAttrType OBJECT-TYPE
    SYNTAX      TmnxSubRadiusAttrType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdAttrType indicates
         a RADIUS Attribute Type supported by this system
         for the vendor indicated in tmnxNatSubscIdVendorId."
    ::= { tmnxNatSubscIdAttrEntry 1 }

tmnxNatSubscIdAttrStr OBJECT-TYPE
    SYNTAX      DisplayString ( SIZE(1..32))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdAttrStr indicates
         the string representation of RADIUS Attribute Type."
    ::= { tmnxNatSubscIdAttrEntry 2 }

tmnxNatSubscIdAttrDescription OBJECT-TYPE
    SYNTAX      TItemDescription
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The value of tmnxNatSubscIdAttrDescription indicates
         the description of this RADIUS Attribute Type."
    ::= { tmnxNatSubscIdAttrEntry 3 }

-- ----------------------------------------------------------------------------
--      Scalar objects
-- ----------------------------------------------------------------------------

tmnxNatResourceProblem OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatResourceProblem indicates
         if there is a resource problem detected while attempting
         to activate some part of the NAT configuration of this system."
    ::= { tmnxNatObjs 200 }

tmnxNatLsnSubscIdCount OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the object tmnxNatLsnSubscIdCount indicates
         the number of identified Large Scale NAT subscribers.
         
         It is the number of rows in the tmnxNatLsnSubscIdStrTable."
    ::= { tmnxNatObjs 201 }
-- ----------------------------------------------------------------------------
--  Notification objects
-- ----------------------------------------------------------------------------

 tmnxNatNotifyDescription  OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..255))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyDescription is a printable character 
         string."
    ::= { tmnxNatNotificationObjs 1 }

 tmnxNatNotifyOutsideVRtrID  OBJECT-TYPE
    SYNTAX      TmnxVRtrID
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyOutsideVRtrID is a number used to identify 
        a virtual router instance in the system."
    ::= { tmnxNatNotificationObjs 2 }

 tmnxNatNotifyInsideVRtrID  OBJECT-TYPE
    SYNTAX      TmnxVRtrIDOrZero
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyInsideVRtrID is a number used to identify 
        a virtual router instance in the system."
    ::= { tmnxNatNotificationObjs 3 }

 tmnxNatNotifyOutsideAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyOutsideAddrType is value that represents 
        a type of Internet address."
    ::= { tmnxNatNotificationObjs 4 }

 tmnxNatNotifyOutsideAddr  OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyOutsideAddr is a generic Internet address."
    ::= { tmnxNatNotificationObjs 5 }

 tmnxNatNotifyInsideAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyInsideAddrType is value that represents 
        a type of Internet address."
    ::= { tmnxNatNotificationObjs 6 }

 tmnxNatNotifyInsideAddr  OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyInsideAddr is a generic Internet address."
    ::= { tmnxNatNotificationObjs 7 }

 tmnxNatNotifyPort  OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyPort is a a 16 bit port number 
        of an Internet transport layer protocol."
    ::= { tmnxNatNotificationObjs 8 }

 tmnxNatNotifyPort2  OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyPort2 is a a 16 bit port number 
        of an Internet transport layer protocol."
    ::= { tmnxNatNotificationObjs 9 }

 tmnxNatNotifyDateAndTime  OBJECT-TYPE
    SYNTAX      DateAndTime (SIZE (11))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyDateAndTime is a date-time specification."
    ::= { tmnxNatNotificationObjs 10 }

 tmnxNatNotifyTruthValue  OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyTruthValue represents a boolean value."
    ::= { tmnxNatNotificationObjs 11 }

 tmnxNatNotifyLsnSubId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyLsnSubId is a number that identifies
         a Large Scale NAT subscriber."
    ::= { tmnxNatNotificationObjs 13 }

 tmnxNatNotifyL2AwSubIdent OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..32))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyL2AwSubIdent is a string that identifies
         a Layer-2-Aware NAT subscriber."
    ::= { tmnxNatNotificationObjs 14 }

 tmnxNatNotifyOutsideEndAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyOutsideEndAddrType represents 
        a type of Internet address."
    ::= { tmnxNatNotificationObjs 15 }

 tmnxNatNotifyOutsideEndAddr  OBJECT-TYPE
    SYNTAX      InetAddress (SIZE(4|16))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyOutsideEndAddr is a generic Internet address."
    ::= { tmnxNatNotificationObjs 16 }

 tmnxNatNotifyPlSeqNum  OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object tmnxNatNotifyPlSeqNum represents 
        a sequence number for notifications related to the allocation of
        IP addresses from a NAT pool."
    ::= { tmnxNatNotificationObjs 17 }

-- ----------------------------------------------------------------------------
--  Notifications
-- ----------------------------------------------------------------------------

tmnxNatPlL2AwBlockUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatPlL2AwBlockUsageHi
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatPlL2AwBlockUsageHigh notification is sent when 
         the block usage of a Layer-2-Aware NAT address pool 
         reaches its high watermark ('true')
         or when it reaches its low watermark again ('false')."
    ::= { tmnxNatNotifications 1}

tmnxNatIsaMemberSessionUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatIsaMemberSessionUsageHi,
        tmnxNatIsaMemberMdaChassisIndex,
        tmnxNatIsaMemberMdaCardSlotNum,
        tmnxNatIsaMemberMdaSlotNum
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatIsaMemberSessionUsageHigh notification is sent when 
         the session usage of a NAT ISA group member reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false')."
    ::= { tmnxNatNotifications 2}

tmnxNatPlLsnMemberBlockUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatPlLsnMemberBlockUsageHi,
        tmnxNatIsaMemberMdaChassisIndex,
        tmnxNatIsaMemberMdaCardSlotNum,
        tmnxNatIsaMemberMdaSlotNum
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatPlLsnMemberBlockUsageHigh notification is sent when 
         the block usage of a Large Scale NAT address pool 
         reaches its high watermark ('true')
         or when it reaches its low watermark again ('false')
         on a particular member MDA of its ISA group."
    ::= { tmnxNatNotifications 3}

tmnxNatLsnSubIcmpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatLsnSubStatIcmpPortUsageHi,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatLsnSubIcmpPortUsageHigh notification is sent when 
         the ICMP port usage of a Large Scale NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false').
         
         If only a single host can be associated with this subscriber,
         it is identified with its inside IP address tmnxNatNotifyInsideAddr
         in the inside virtual router instance tmnxNatNotifyInsideVRtrID;
         otherwise, these objects contain null values."
    ::= { tmnxNatNotifications 4}

tmnxNatLsnSubUdpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatLsnSubStatUdpPortUsageHi,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatLsnSubUdpPortUsageHigh notification is sent when 
         the UDP port usage of a Large Scale NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false').
         
         If only a single host can be associated with this subscriber,
         it is identified with its inside IP address tmnxNatNotifyInsideAddr
         in the inside virtual router instance tmnxNatNotifyInsideVRtrID;
         otherwise, these objects contain null values."
    ::= { tmnxNatNotifications 5}

tmnxNatLsnSubTcpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatLsnSubStatTcpPortUsageHi,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatLsnSubTcpPortUsageHigh notification is sent when 
         the TCP port usage of a Large Scale NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false').
         
         If only a single host can be associated with this subscriber,
         it is identified with its inside IP address tmnxNatNotifyInsideAddr
         in the inside virtual router instance tmnxNatNotifyInsideVRtrID;
         otherwise, these objects contain null values."
    ::= { tmnxNatNotifications 6}

tmnxNatL2AwSubIcmpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatL2AwSubStatIcmpPortUsageH
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatL2AwSubIcmpPortUsageHigh notification is sent when 
         the ICMP port usage of a Layer-2-Aware NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false')."
    ::= { tmnxNatNotifications 7}

tmnxNatL2AwSubUdpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatL2AwSubStatUdpPortUsageHi
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatL2AwSubUdpPortUsageHigh notification is sent when 
         the UDP port usage of a Layer-2-Aware NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false')."
    ::= { tmnxNatNotifications 8}

tmnxNatL2AwSubTcpPortUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatL2AwSubStatTcpPortUsageHi
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatL2AwSubTcpPortUsageHigh notification is sent when 
         the TCP port usage of a Layer-2-Aware NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false')."
    ::= { tmnxNatNotifications 9}

tmnxNatL2AwSubSessionUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatL2AwSubStatSessionUsageHi
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatL2AwSubSessionUsageHigh notification is sent when 
         the session usage of a Layer-2-Aware NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false')."
    ::= { tmnxNatNotifications 10}

tmnxNatLsnSubSessionUsageHigh NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatLsnSubStatSessionUsageHi,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatLsnSubSessionUsageHigh notification is sent when 
         the session usage of a Large Scale NAT subscriber reaches its high 
         watermark ('true') or when it reaches its low watermark 
         again ('false').
         
         If only a single host can be associated with this subscriber,
         it is identified with its inside IP address tmnxNatNotifyInsideAddr
         in the inside virtual router instance tmnxNatNotifyInsideVRtrID;
         otherwise, these objects contain null values."
    ::= { tmnxNatNotifications 11}

tmnxNatPlBlockAllocationLsn NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatNotifyOutsideVRtrID,
        tmnxNatNotifyOutsideAddrType,
        tmnxNatNotifyOutsideAddr,
        tmnxNatNotifyPort,
        tmnxNatNotifyPort2,
        tmnxNatNotifyDateAndTime,
        tmnxNatNotifyLsnSubId,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr,
        tmnxNatNotifyTruthValue,
        tmnxNatNotifyPlSeqNum
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatPlBlockAllocationLsn notification is sent when 
         an outside IP address and a range of ports is allocated to 
         a NAT subscriber associated with a Large Scale NAT (LSN) pool, 
         and when this allocation expires.
         
         The allocated block is within the scope of the outside virtual router
         instance tmnxNatNotifyOutsideVRtrID and the outside IP address 
         tmnxNatNotifyOutsideAddr; it starts with port tmnxNatNotifyPort 
         and ends with port tmnxNatNotifyPort2.

         The NAT subscriber is identified with its subscriber ID 
         tmnxNatNotifyLsnSubId.
         
         If only a single host can be associated with this subscriber,
         it is identified with its inside IP address tmnxNatNotifyInsideAddr
         in the inside virtual router instance tmnxNatNotifyInsideVRtrID;
         otherwise, these objects contain null values.
         
         When the block allocation is made, the value of the object 
         tmnxNatNotifyTruthValue is 'true'; when the block allocation expires,
         it is 'false'."
    ::= { tmnxNatNotifications 12}

tmnxNatPlBlockAllocationL2Aw NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatNotifyOutsideVRtrID,
        tmnxNatNotifyOutsideAddrType,
        tmnxNatNotifyOutsideAddr,
        tmnxNatNotifyPort,
        tmnxNatNotifyPort2,
        tmnxNatNotifyDateAndTime,
        tmnxNatNotifyL2AwSubIdent,
        tmnxNatNotifyTruthValue,
        tmnxNatNotifyPlSeqNum
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatPlBlockAllocationL2Aw notification is sent when 
         an outside IP address and a range of ports is allocated to 
         a NAT subscriber associated with a Layer-2-Aware NAT pool, 
         and when this allocation expires.
         
         The allocated block is within the scope of the outside virtual router
         instance tmnxNatNotifyOutsideVRtrID and the outside IP address 
         tmnxNatNotifyOutsideAddr; it starts with port tmnxNatNotifyPort 
         and ends with port tmnxNatNotifyPort2.

         The NAT subscriber is identified with its subscriber ID 
         tmnxNatNotifyL2AwSubIdent.
         
         When the block allocation is made, the value of the object 
         tmnxNatNotifyTruthValue is 'true'; when the block allocation expires,
         it is 'false'."
    ::= { tmnxNatNotifications 13}

tmnxNatResourceProblemDetected NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatResourceProblem
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatResourceProblemDetected notification is sent when 
         the value of the object tmnxNatResourceProblem changes."
    ::= { tmnxNatNotifications 14}

tmnxNatResourceProblemCause NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatNotifyDescription
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatResourceProblemCause notification is to describe the cause
         of a NAT resource problem."
    ::= { tmnxNatNotifications 15}

tmnxNatPlAddrFree NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatNotifyOutsideVRtrID,
        tmnxNatNotifyOutsideAddrType,
        tmnxNatNotifyOutsideAddr,
        tmnxNatNotifyOutsideEndAddrType,
        tmnxNatNotifyOutsideEndAddr,
        tmnxNatNotifyDateAndTime,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyDescription,
        tmnxNatNotifyPlSeqNum
    }
    STATUS current
    DESCRIPTION
        "The tmnxNatPlAddrFree notification is sent when 
         a range of outside IP addresses becomes free at once.
         
         The range starts at address tmnxNatNotifyOutsideAddr and ends
         with address tmnxNatNotifyOutsideEndAddr.
         
         It replaces a number of tmnxNatPlBlockAllocationL2Aw or
         tmnxNatPlBlockAllocationLsn notifications; the allocated
         port blocks associated with each IP address in the indicated
         range are released.
         
         The reason why this address range is released, is described
         in the tmnxNatNotifyDescription.
         
         If the value of tmnxNatNotifyInsideVRtrID is not equal to zero,
         it means that only the port blocks associated with hosts in
         that particular virtual router instance are released;
         if the value of tmnxNatNotifyInsideVRtrID is equal to zero,
         it means that all the port blocks are released."
    ::= { tmnxNatNotifications 16}

tmnxNatPlLsnRedActiveChanged NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatPlLsnRedActive,
        tmnxNatNotifyDescription
    }
    STATUS current
    DESCRIPTION
        "[CAUSE] The tmnxNatPlLsnRedActiveChanged notification is sent when 
         the value of the object tmnxNatPlLsnRedActive changes. The cause is
         explained in the tmnxNatNotifyDescription.
         
         [EFFECT] While the value of the object tmnxNatPlLsnRedActive is equal
         to 'false', ...
         - this system is not performing Large Scale NAT in the realm
         of the virtual router instance associated with this pool; the Large
         Scale NAT is supposed to be performed by its redundant peer.
         - the route specified with tmnxNatVrtrInRedSteerRt is not advertised 
         in the realm of any inside virtual router instance associated with 
         this pool;
         - NAT traffic matching a filter with TFilterAction equal to 'nat' is
         redirected to the address specified with tmnxNatVrtrInRedPeerAddr or
         dropped if tmnxNatVrtrInRedPeerAddr is not configured;
         - the pool ranges associated with this pool are withdrawn from the
         outside virtual router instance associated with this pool;
         - the route specified with tmnxNatPlLsnRedExpPrefix is not exported
         in the realm of the outside virtual router instance 
         associated with this pool.
         
         [RECOVERY] If this system is supposed to assume the role of a standby
         in the realm of the virtual router instance associated with this pool,
         no recovery is needed. Otherwise, the recovery action will depend on
         the actual cause as specified in the tmnxNatNotifyDescription."
    ::= { tmnxNatNotifications 17}

tmnxNatPcpSrvStateChanged NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatPcpSrvState,
        tmnxNatPcpSrvStateDescription
    }
    STATUS current
    DESCRIPTION
        "[CAUSE] The tmnxNatPcpSrvStateChanged notification is sent when 
         the value of the object tmnxNatPcpSrvState changes. The cause is
         explained in the tmnxNatPcpSrvStateDescription.
         
         [EFFECT] While the value of the object tmnxNatPcpSrvState is equal
         to 'outOfService', the system drops PCP requests 
         addressed to this server.
         
         [RECOVERY] The recovery action depends on the actual cause 
         as specified in the tmnxNatPcpSrvStateDescription."
    ::= { tmnxNatNotifications 18}

tmnxNatFwdEntryAdded NOTIFICATION-TYPE
    OBJECTS {
        tmnxNatFwdOutVRtrID,
        tmnxNatFwdOutAddrType,
        tmnxNatFwdOutAddr,
        tmnxNatFwdOutPort,
        tmnxNatFwdLsnAftrAddrType,
        tmnxNatFwdLsnAftrAddr,
        tmnxNatFwdOrigin,
        tmnxNatNotifyTruthValue,
        tmnxNatNotifyPlSeqNum
    }
    STATUS current
    DESCRIPTION
        "[CAUSE] The tmnxNatFwdEntryAdded notification is sent when 
         a row is added to or removed from the tmnxNatFwdTable; a row
         can be added to the table either by operations on the tmnxNatFwdAction
         object group or by means of the PCP protocol.
         
         When the row is added, the value of the object 
         tmnxNatNotifyTruthValue is 'true'; when the row is removed,
         it is 'false'.
         
         [EFFECT] The specified NAT subscriber can start receiving inbound
         traffic flows.
         
         [RECOVERY] No recovery required; this notification is the result 
         of an operator or protocol action."
    ::= { tmnxNatNotifications 19}

-- ----------------------------------------------------------------------------
--  Conformance Groups
-- ----------------------------------------------------------------------------
tmnxNatIsaGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatIsaGrpTableLastCh,
        tmnxNatIsaGrpRowStatus,
        tmnxNatIsaGrpLastMgmtChange,
        tmnxNatIsaGrpDescription,
        tmnxNatIsaGrpAdminState,
        tmnxNatIsaGrpActiveMdaLimit,
        tmnxNatIsaGrpOperState,
        tmnxNatIsaMdaTableLastCh,
        tmnxNatIsaMdaRowStatus,
        tmnxNatIsaMdaLastMgmtChange
    }
    STATUS      obsolete
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         Integrated Service Adaptors (ISA) 
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 1 }

tmnxNatIsaStatGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatIsaMdaStatTableLastCh,
        tmnxNatIsaMdaStatOperState,
        tmnxNatIsaMemberMdaState,
        tmnxNatIsaMemberMdaChassisIndex,
        tmnxNatIsaMemberMdaCardSlotNum,
        tmnxNatIsaMemberMdaSlotNum,
        tmnxNatIsaMemberIpAddrReserved, 
        tmnxNatIsaMemberBlocksReserved, 
        tmnxNatIsaMemberSessionUsage,   
        tmnxNatIsaMemberSessionUsageHi,
        tmnxNatIsaMemberSessionsPrio,
        tmnxNatIsaMemberStatsName,
        tmnxNatIsaMemberStatsVal,
        tmnxNatResourceProblem 
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing monitoring of NAT 
         Integrated Service Adaptors (ISA) 
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 2 }

tmnxNatPlcyGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatPlcyTableLastCh,
        tmnxNatVrtrTableLastCh,
        tmnxNatPlcyLastMgmtChange,
        tmnxNatPlcyRowStatus,
        tmnxNatPlcyDescription,    
        tmnxNatPlcyPool,
        tmnxNatPlcyPoolVRtr,
        tmnxNatPlcyFiltering,
        tmnxNatPlcyPortResvCount,    
        tmnxNatPlcyPortWatermarkHigh,
        tmnxNatPlcyPortWatermarkLow, 
        tmnxNatPlcySessionLimit,
        tmnxNatPlcySessionResvCount,     
        tmnxNatPlcySessionWatermarkHigh,
        tmnxNatPlcySessionWatermarkLow,
        tmnxNatPlcyPrioSessionFcSet,
        tmnxNatPlcyToTcpEstab,        
        tmnxNatPlcyToTcpTrans,        
        tmnxNatPlcyToTcpSyn,          
        tmnxNatPlcyToTcpTimeWait,
        tmnxNatPlcyToUdp,             
        tmnxNatPlcyToUdpInitial,             
        tmnxNatPlcyToUdpDns,
        tmnxNatPlcyToIcmpQuery
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT policies 
          on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 3 }

tmnxNatPlcyStatGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatPlcyStatsName,
        tmnxNatPlcyStatsVal
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing monitoring of NAT policies 
          on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 4 }

tmnxNatVrtrGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatVrtrTableLastCh,
        tmnxNatVrtrLastMgmtChange,
        tmnxNatVrtrRowStatus,
        tmnxNatVrtrInPolicy
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         in a virtual router instance on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 5 }

tmnxNatPlGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatPlTableLastCh,
        tmnxNatPlRowStatus,
        tmnxNatPlLastMgmtChange,
        tmnxNatPlIsaGrp,
        tmnxNatPlType,
        tmnxNatPlDescription,
        tmnxNatPlAdminState,
        tmnxNatPlPortResvType,
        tmnxNatPlPortResvVal,
        tmnxNatPlPortResvAllowPrivileged,
        tmnxNatPlWatermarkHigh,
        tmnxNatPlWatermarkLow,
        tmnxNatPlRangeTableLastCh,
        tmnxNatPlRangeRowStatus,
        tmnxNatPlRangeLastMgmtChange,
        tmnxNatPlRangeDescription,   
        tmnxNatPlRangeAdminDrain,
        tmnxNatPlRangeNumAllocatedBlk
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         address pools on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 6 }

tmnxNatDestGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatDestTableLastCh,
        tmnxNatDestRowStatus,
        tmnxNatDestLastMgmtChange
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         destinations on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 7 }

tmnxNatL2AwGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatL2AwAddrTableLastCh,
        tmnxNatL2AwAddrRowStatus,
        tmnxNatL2AwAddrLastMgmtChange,
        tmnxNatPlL2AwBlockUsage,
        tmnxNatPlL2AwBlockUsageHi,
        tmnxNatBlkL2AwEnd,
        tmnxNatBlkL2AwPool,
        tmnxNatBlkL2AwSubIdent,        
        tmnxNatBlkL2AwPolicy,          
        tmnxNatBlkL2AwStartDateAndTime,
        tmnxNatL2AwHostOutVRtrID,
        tmnxNatL2AwHostOutAddrType,
        tmnxNatL2AwHostOutAddr,
        tmnxNatL2AwHostOutStart,
        tmnxNatL2AwSubPolicy,
        tmnxNatL2AwSubIsaGrp,
        tmnxNatL2AwSubIsaMemberId,
        tmnxNatL2AwSubOutVRtrID,
        tmnxNatL2AwSubOutAddrType,
        tmnxNatL2AwSubOutAddr,
        tmnxNatL2AwSubStatIcmpPortUsage,  
        tmnxNatL2AwSubStatIcmpPortUsageH,
        tmnxNatL2AwSubStatUdpPortUsage,   
        tmnxNatL2AwSubStatUdpPortUsageHi, 
        tmnxNatL2AwSubStatTcpPortUsage,   
        tmnxNatL2AwSubStatTcpPortUsageHi, 
        tmnxNatL2AwSubStatSessionUsage,
        tmnxNatL2AwSubStatSessionUsageHi,
        tmnxNatL2AwSubStatSessions,
        tmnxNatL2AwSubStatSessionsPrio,
        tmnxNatL2AwSubStatSessionsPeak,
        tmnxNatL2AwSubBlkEnd  
    }
    STATUS      current
    DESCRIPTION
        "The group of objects specific for Layer-2-Aware NAT
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 8 }

tmnxNatLsnGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatPlLsnMemberIsaGrpId,
        tmnxNatPlLsnMemberBlockUsage,
        tmnxNatPlLsnMemberBlockUsageHi,
        tmnxNatBlkLsnEnd,
        tmnxNatBlkLsnPool,
        tmnxNatBlkLsnSubId,
        tmnxNatBlkLsnInsideVRtrID,
        tmnxNatBlkLsnInsideAddrType,   
        tmnxNatBlkLsnInsideAddr,
        tmnxNatBlkLsnPolicy,
        tmnxNatBlkLsnStartDateAndTime,
        tmnxNatLsnHostSubId,  
        tmnxNatLsnHostOutVRtrID,
        tmnxNatLsnHostOutAddrType,
        tmnxNatLsnHostOutAddr,
        tmnxNatLsnSubPolicy,
        tmnxNatLsnSubIsaGrp,
        tmnxNatLsnSubIsaMemberId,
        tmnxNatLsnSubOutVRtrID,
        tmnxNatLsnSubOutAddrType,
        tmnxNatLsnSubOutAddr,
        tmnxNatLsnSubStatIcmpPortUsage,  
        tmnxNatLsnSubStatIcmpPortUsageHi,
        tmnxNatLsnSubStatUdpPortUsage,   
        tmnxNatLsnSubStatUdpPortUsageHi, 
        tmnxNatLsnSubStatTcpPortUsage,   
        tmnxNatLsnSubStatTcpPortUsageHi, 
        tmnxNatLsnSubStatSessionUsage,
        tmnxNatLsnSubStatSessionUsageHi,
        tmnxNatLsnSubStatSessions,
        tmnxNatLsnSubStatSessionsPrio,
        tmnxNatLsnSubStatSessionsPeak,
        tmnxNatLsnSubBlkEnd
    }  
    STATUS      current
    DESCRIPTION
        "The group of objects specific to Large Scale NAT
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 9 }

tmnxNatMapGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatMapLsnHostTableLastCh,
        tmnxNatMapLsnHostRowStatus,
        tmnxNatMapLsnHostLastMgmtChange,
        tmnxNatMapLsnHostAdminState,
        tmnxNatMapLsnHostOutAddrType,
        tmnxNatMapLsnHostOutAddr,
        tmnxNatMapLsnHostOutVRtrID,
        tmnxNatMapTableLastCh,
        tmnxNatMapRowStatus,
        tmnxNatMapLastMgmtChange,
        tmnxNatMapOutPort
    }
    STATUS      obsolete
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         mappings for static port forwarding on Alcatel-Lucent SROS series 
         systems."
    ::= { tmnxNatGroups 10 }

tmnxNatLsnV9v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatPlLsnSubscriberLimit,
        tmnxNatPlcyBlkLimit,
        tmnxNatPlMode,
        tmnxNatDsliteSubId,
        tmnxNatDsliteAddrTableLastCh,
        tmnxNatDsliteAddrRowStatus,
        tmnxNatDsliteAddrLastMgmtChange,
        tmnxNatDsliteAddrTunnelMtu
    }  
    STATUS      current
    DESCRIPTION
        "The group of objects specific to Large Scale NAT
         that were added in release 9.0 of the Alcatel-Lucent SROS series 
         systems."
    ::= { tmnxNatGroups 15 }

tmnxNatVrtrV9v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatVrtrInDsliteAdminState,
        tmnxNatVrtrInDsliteSubPrefixLen,
        tmnxNatVrtrOutMtu
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         in a virtual router instance on Alcatel-Lucent SROS series systems
         that were added in release 9.0."
    ::= { tmnxNatGroups 16 }

tmnxNatPlcyV9v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatPlcyToSip,
        tmnxNatPlcyAlgEnable,
        tmnxNatPlcyPortFwdLimit,
        tmnxNatPlcyUdpInboundRefresh                    
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT policies 
         on Alcatel-Lucent SROS series systems
         that were added in release 9.0."
    ::= { tmnxNatGroups 17 }

tmnxNatFwdGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatFwdActionSubType,
        tmnxNatFwdActionVRtrId,
        tmnxNatFwdActionAddrType,
        tmnxNatFwdActionAddr,
        tmnxNatFwdActionB4Addr,
        tmnxNatFwdActionAftrAddr,
        tmnxNatFwdActionL2awSubscriberId,
        tmnxNatFwdActionProtocol,
        tmnxNatFwdActionTimeOut,
        tmnxNatFwdActionPort,
        tmnxNatFwdActionOutPort,
        tmnxNatFwdActionOutAddr,
        tmnxNatFwdActionType,
        tmnxNatFwdActionGo,
        tmnxNatFwdActionSuccessful,
        tmnxNatFwdActionTime,
        tmnxNatFwdOutVRtrID,
        tmnxNatFwdOutAddrType,
        tmnxNatFwdOutAddr,
        tmnxNatFwdOutPort,
        tmnxNatFwdExpiryDateAndTime,
        tmnxNatFwdLsnAftrAddrType,
        tmnxNatFwdLsnAftrAddr,
        tmnxNatFwdPersistKey
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT forwarding entries 
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 18 }

tmnxNatPlV9v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatPlPortFwdRangeEnd,
        tmnxNatPlOperMode
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         address pools on Alcatel-Lucent SROS series systems
         that were added in release 9.0."
    ::= { tmnxNatGroups 19 }

tmnxNatRedGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatVrtrInRedPeerAddrType,
        tmnxNatVrtrInRedPeerAddr,
        tmnxNatVrtrInRedPeerAddrType,
        tmnxNatVrtrInRedSteerRtType,
        tmnxNatVrtrInRedSteerRt,    
        tmnxNatVrtrInRedSteerRtLen, 
        tmnxNatPlLsnRedExpPrefixType, 
        tmnxNatPlLsnRedExpPrefix,    
        tmnxNatPlLsnRedExpPrefixLen, 
        tmnxNatPlLsnRedMonPrefixType,
        tmnxNatPlLsnRedMonPrefix,    
        tmnxNatPlLsnRedMonPrefixLen,
        tmnxNatPlLsnRedActive 
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT redundancy."
    ::= { tmnxNatGroups 20 }

tmnxNatDestNatGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatPlcyDestNatAddrType,
        tmnxNatPlcyDestNatAddr,
        tmnxNatPlcyDestNatPort 
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of Destination-NAT."
    ::= { tmnxNatGroups 21 }

tmnxNatPlcyV10v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatPlcyIpfixExpPlcy,
        tmnxNatPlcyTcpMssAdjust,
        tmnxNatPlcyToSubRetention
    }
    STATUS      current        
    DESCRIPTION
        "The group of objects providing configuration of NAT policies 
         on Alcatel-Lucent SROS series systems
         that were added in release 10.0."
    ::= { tmnxNatGroups 22 }

tmnxNatIsaV10v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatIsaGrpTableLastCh,
        tmnxNatIsaGrpRowStatus,
        tmnxNatIsaGrpLastMgmtChange,
        tmnxNatIsaGrpDescription,
        tmnxNatIsaGrpAdminState,
        tmnxNatIsaGrpActiveMdaLimit,
        tmnxNatIsaGrpOperState,
        tmnxNatIsaMdaTableLastCh,
        tmnxNatIsaMdaRowStatus,
        tmnxNatIsaMdaLastMgmtChange
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         Integrated Service Adaptors (ISA) 
         on Alcatel-Lucent SROS series systems release 10.0 or higher."
    ::= { tmnxNatGroups 23 }

tmnxNatAccGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatGrpCfgAccountingPlcy,
        tmnxNatApTableLastCh,
        tmnxNatApLastMgmtChange,
        tmnxNatApRowStatus,    
        tmnxNatApDescription,  
        tmnxNatApIncludeAttributes, 
        tmnxNatApServersTimeout,       
        tmnxNatApServersRetry,         
        tmnxNatApServersVRtrID,        
        tmnxNatApServersSrcAddrType,   
        tmnxNatApServersSrcAddrStart,  
        tmnxNatApServersSrcAddrEnd,    
        tmnxNatApServersAlgorithm,
        tmnxNatApServTableLastCh,    
        tmnxNatApServRowStatus,     
        tmnxNatApServLastMgmtChange,
        tmnxNatApServAddrType,      
        tmnxNatApServAddr,          
        tmnxNatApServSecret,        
        tmnxNatApServAcctPort,      
        tmnxNatApServStatSrcAddrType,
        tmnxNatApServStatSrcAddr,
        tmnxNatApServStatOperState,
        tmnxNatApServStatTxRequests,
        tmnxNatApServStatReqTimeout,
        tmnxNatApServStatSendRetries
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT RADIUS accounting."
    ::= { tmnxNatGroups 24 }

tmnxNatWlanGwGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatGrpCfgTableLastCh,
        tmnxNatGrpCfgLastMgmtChange,
        tmnxNatGrpCfgSessionResvCount,                    
        tmnxNatGrpCfgSessionWatermarkHi,
        tmnxNatGrpCfgSessionWatermarkLo
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT RADIUS accounting."
    ::= { tmnxNatGroups 25 }

tmnxNat64Group OBJECT-GROUP
    OBJECTS {
        tmnxNat64TableLastCh,
        tmnxNat64LastMgmtChange,
        tmnxNat64RowStatus,      
        tmnxNat64InAdminState,   
        tmnxNat64InSubPrefixLen,
        tmnxNat64InPrefix,       
        tmnxNat64InPrefixLen,
        tmnxNat64InIpv6Mtu,
        tmnxNat64InDropZeroIpv4Checksum,
        tmnxNat64InSetTos,
        tmnxNat64InTos,
        tmnxNat64InIgnoreTos,
        tmnxNat64InInsertIpv6FragHeader,
        tmnxNat64SubId    
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT64."
    ::= { tmnxNatGroups 26 }

tmnxNatLsnSubIdentGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatSubIdTableLastCh,
        tmnxNatSubIdLastMgmtChange,
        tmnxNatSubIdDescription,
        tmnxNatSubIdAdminState,
        tmnxNatSubIdRadProxSrvRouter,
        tmnxNatSubIdRadProxSrvName,
        tmnxNatSubIdRadiusAttributeType,
        tmnxNatSubIdRadiusVendorId,
        tmnxNatSubIdDropUnidentified,
        tmnxNatLsnSubIdStr,
        tmnxNatLsnSubscIdStrTimeStamp,
        tmnxNatSubscIdVendorStr,
        tmnxNatSubscIdVendorDescription,
        tmnxNatSubscIdAttrStr,
        tmnxNatSubscIdAttrDescription,
        tmnxNatLsnSubscIdCount
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of subscriber identification
         of Large Scale NAT subscribers."
    ::= { tmnxNatGroups 27 }

tmnxNatPcpGroup OBJECT-GROUP
    OBJECTS {
        tmnxNatFwdActionDescription,
        tmnxNatFwdDescription,
        tmnxNatFwdOrigin,
        tmnxNatPcpPlcyTableLastCh,
        tmnxNatPcpPlcyLastMgmtChange,
        tmnxNatPcpPlcyRowStatus,
        tmnxNatPcpPlcyDescription,
        tmnxNatPcpPlcyOpcodes,
        tmnxNatPcpPlcyOptions,
        tmnxNatPcpPlcyMinimumLifetime,
        tmnxNatPcpPlcyMaximumLifetime,                    
        tmnxNatPcpPlcyMaxDescriptionLen,
        tmnxNatPcpSrvTableLastCh,
        tmnxNatPcpSrvLastCh,
        tmnxNatPcpSrvRowStatus,
        tmnxNatPcpSrvAdminState,
        tmnxNatPcpSrvDescription,
        tmnxNatPcpSrvPlcy,
        tmnxNatPcpSrvFwdInsideRouter,
        tmnxNatPcpSrvDsliteAftrAddr,
        tmnxNatPcpSrvState,
        tmnxNatPcpSrvStateDescription,
        tmnxNatPcpSrvEpoch,
        tmnxNatPcpSrvIfTableLastCh,
        tmnxNatPcpSrvIfRowStatus,
        tmnxNatPcpSrvIfLastCh,
        tmnxNatPcpSrvIfStatsName,
        tmnxNatPcpSrvIfStatsValLw,
        tmnxNatPcpSrvIfStatsValHw,
        tmnxNatPcpSrvIfStatsVal
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of the Port Control Protocol (PCP)."
    ::= { tmnxNatGroups 28 }

tmnxNatIsaStatV10v0Group OBJECT-GROUP
    OBJECTS {
        tmnxNatIsaMemberStatsValHw,
        tmnxNatIsaMemberStatsValue,
        tmnxNatIsaResrcStatsName,
        tmnxNatIsaResrcStatsValMax,
        tmnxNatIsaResrcStatsValMaxLw,
        tmnxNatIsaResrcStatsValMaxHw,
        tmnxNatIsaResrcStatsVal,
        tmnxNatIsaResrcStatsValLw,
        tmnxNatIsaResrcStatsValHw
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing monitoring of NAT 
         Integrated Service Adaptors (ISA) 
         on Alcatel-Lucent SROS series systems
         added in release 10.0."
    ::= { tmnxNatGroups 29 }


tmnxNatObsoleteGroup OBJECT-GROUP
    OBJECTS {
--      obsoleted in release 9.0:
        tmnxNatMapLsnHostTableLastCh,
        tmnxNatMapLsnHostRowStatus,
        tmnxNatMapLsnHostLastMgmtChange,
        tmnxNatMapLsnHostAdminState,
        tmnxNatMapLsnHostOutAddrType,
        tmnxNatMapLsnHostOutAddr,
        tmnxNatMapLsnHostOutVRtrID,
        tmnxNatMapTableLastCh,
        tmnxNatMapRowStatus,
        tmnxNatMapLastMgmtChange,
        tmnxNatMapOutPort,
--      obsoleted in release 10.0:
        tmnxNatIsaGrpSessionResvCount,                    
        tmnxNatIsaGrpSessionWatermarkHi,
        tmnxNatIsaGrpSessionWatermarkLo        
    }
    STATUS      current
    DESCRIPTION
        "The group of objects providing configuration of NAT 
         mappings for static port forwarding on Alcatel-Lucent SROS series 
         systems."
    ::= { tmnxNatGroups 98 }

tmnxNatNotifyObjsGroup     OBJECT-GROUP
    OBJECTS {   
        tmnxNatNotifyDescription,
        tmnxNatNotifyOutsideVRtrID,
        tmnxNatNotifyInsideVRtrID,
        tmnxNatNotifyOutsideAddrType,
        tmnxNatNotifyOutsideAddr,
        tmnxNatNotifyOutsideEndAddrType,
        tmnxNatNotifyOutsideEndAddr,
        tmnxNatNotifyInsideAddrType,
        tmnxNatNotifyInsideAddr,
        tmnxNatNotifyPort,
        tmnxNatNotifyPort2,
        tmnxNatNotifyDateAndTime,
        tmnxNatNotifyTruthValue,
        tmnxNatNotifyLsnSubId,
        tmnxNatNotifyL2AwSubIdent,
        tmnxNatNotifyPlSeqNum
    }
    STATUS        current
    DESCRIPTION
        "The group of notification objects supporting NAT notifications
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 99 }
    
-- ----------------------
-- NOTIFICATION-GROUPS
-- ----------------------

tmnxNatNotifyGroup NOTIFICATION-GROUP
    NOTIFICATIONS {
        tmnxNatPlL2AwBlockUsageHigh,
        tmnxNatIsaMemberSessionUsageHigh,
        tmnxNatPlLsnMemberBlockUsageHigh,
        tmnxNatLsnSubIcmpPortUsageHigh,
        tmnxNatLsnSubUdpPortUsageHigh,
        tmnxNatLsnSubTcpPortUsageHigh,
        tmnxNatL2AwSubIcmpPortUsageHigh,
        tmnxNatL2AwSubUdpPortUsageHigh,
        tmnxNatL2AwSubTcpPortUsageHigh,
        tmnxNatL2AwSubSessionUsageHigh,
        tmnxNatLsnSubSessionUsageHigh,
        tmnxNatPlBlockAllocationLsn,
        tmnxNatPlBlockAllocationL2Aw,
        tmnxNatResourceProblemDetected,
        tmnxNatResourceProblemCause,
        tmnxNatPlAddrFree
    }
    STATUS      current
    DESCRIPTION
        "The group of notifications supporting NAT
         on Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 100 }

tmnxNatNotifyV9v0Group NOTIFICATION-GROUP
    NOTIFICATIONS {
        tmnxNatPlLsnRedActiveChanged
    }
    STATUS      current
    DESCRIPTION
        "The group of notifications supporting NAT
         added in release 9.0 of Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 101 }

tmnxNatNotifyV10v0Group NOTIFICATION-GROUP
    NOTIFICATIONS {
        tmnxNatPcpSrvStateChanged,
        tmnxNatFwdEntryAdded
    }
    STATUS      current
    DESCRIPTION
        "The group of notifications supporting NAT
         added in release 10.0 of Alcatel-Lucent SROS series systems."
    ::= { tmnxNatGroups 102 }

-- ----------------------------------------------------------------------------
--  Conformance information
-- ----------------------------------------------------------------------------
tmnxNatCompliance MODULE-COMPLIANCE
    STATUS  obsolete
    DESCRIPTION
        "The compliance statement for management of NAT
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatIsaGroup,
            tmnxNatPlcyGroup,
            tmnxNatVrtrGroup,
            tmnxNatPlGroup,
            tmnxNatDestGroup,
            tmnxNatL2AwGroup,
            tmnxNatLsnGroup,
            tmnxNatMapGroup
        }
    ::= { tmnxNatCompliances 1 }

tmnxNatStatCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for monitoring of NAT
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatIsaStatGroup,
            tmnxNatPlcyStatGroup
        }
    ::= { tmnxNatCompliances 2 }

tmnxNatNotifyCompliance MODULE-COMPLIANCE
    STATUS  obsolete
    DESCRIPTION
        "The compliance statement for NAT notifications
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatNotifyGroup
        }
    ::= { tmnxNatCompliances 3 }

tmnxNatV9v0Compliance MODULE-COMPLIANCE
    STATUS  obsolete
    DESCRIPTION
        "The compliance statement for management of NAT
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatIsaGroup,
            tmnxNatIsaStatGroup,
            tmnxNatPlcyGroup,
            tmnxNatPlcyV9v0Group,
            tmnxNatPlcyStatGroup,
            tmnxNatVrtrGroup,
            tmnxNatVrtrV9v0Group,
            tmnxNatRedGroup,
            tmnxNatPlGroup,
            tmnxNatPlV9v0Group,
            tmnxNatDestGroup,
            tmnxNatL2AwGroup,
            tmnxNatLsnGroup,
            tmnxNatLsnV9v0Group,
            tmnxNatFwdGroup,
            tmnxNatDestNatGroup
--            tmnxNatObsoleteGroup
        }
    ::= { tmnxNatCompliances 4 }

tmnxNatNotifyV9v0Compliance MODULE-COMPLIANCE
    STATUS  obsolete
    DESCRIPTION
        "The compliance statement for NAT notifications
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatNotifyGroup,
            tmnxNatNotifyV9v0Group
        }
    ::= { tmnxNatCompliances 5 }

tmnxNatV10v0Compliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for management of NAT
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatIsaV10v0Group,
            tmnxNatIsaStatGroup,
            tmnxNatIsaStatV10v0Group,
            tmnxNatPlcyGroup,
            tmnxNatPlcyV9v0Group,
            tmnxNatPlcyV10v0Group,
            tmnxNatPlcyStatGroup,
            tmnxNatVrtrGroup,
            tmnxNatVrtrV9v0Group,
            tmnxNatRedGroup,
            tmnxNatPlGroup,
            tmnxNatPlV9v0Group,
            tmnxNatDestGroup,
            tmnxNatL2AwGroup,
            tmnxNatLsnGroup,
            tmnxNatLsnV9v0Group,
            tmnxNatFwdGroup,
            tmnxNatDestNatGroup,
            tmnxNatAccGroup,
            tmnxNatWlanGwGroup,
            tmnxNat64Group,
            tmnxNatLsnSubIdentGroup,
            tmnxNatPcpGroup
--            tmnxNatObsoleteGroup
        }
    ::= { tmnxNatCompliances 6 }

tmnxNatNotifyV10v0Compliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for NAT notifications
         on Alcatel-Lucent SROS series systems."
    MODULE  -- this module
        MANDATORY-GROUPS {
            tmnxNatNotifyGroup,
            tmnxNatNotifyV9v0Group,
            tmnxNatNotifyV10v0Group
        }
    ::= { tmnxNatCompliances 7 }


END


       
