APPN-MIB DEFINITIONS          ::= BEGIN

IMPORTS

        IANAifType
                FROM IANAifType-MIB

        DisplayString, VariablePointer, RowPointer, DateAndTime,
        TruthValue, TimeStamp, TEXTUAL-CONVENTION
                FROM SNMPv2-TC

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

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

        snanauMIB
                FROM SNA-NAU-MIB;

appnMIB MODULE-IDENTITY
        LAST-UPDATED  "9807151800Z"  -- July 15, 1998
        ORGANIZATION  "IETF SNA NAU MIB WG / AIW APPN MIBs SIG"
        CONTACT-INFO
                "

                        Bob Clouston
                        Cisco Systems
                        7025 Kit Creek Road
                        P.O. Box 14987
                        Research Triangle Park, NC 27709, USA
                        Tel:    1 919 472 2333
                        E-mail: clouston@cisco.com

                        Bob Moore
                        IBM Corporation
                        4205 S. Miami Boulevard
                        BRQA/501
                        P.O. Box 12195
                        Research Triangle Park, NC 27709, USA
                        Tel:    1 919 254 4436
                        E-mail: remoore@us.ibm.com
                "
      DESCRIPTION
                "This is the MIB module for objects used to
                 manage network devices with APPN capabilities."

      -- Revision tracking starts with Proposed Standard (RFC 2155)
      REVISION  "9807151800Z"
      DESCRIPTION
                "Minor editorial fixes; new value 'none(5)' added
                to the enumeration for the appnLocalTgBranchLinkType
                object."

      REVISION  "9805261800Z"
      DESCRIPTION
                "Post-RFC 2155 conformance definitions added,
                appnNodeLsCounterType and appnNodeBrNn objects
                added, appnNodeMibVersion object deprecated."

      REVISION  "9707311800Z"
      DESCRIPTION
                "Branch network node (Branch Extender) objects added."
      REVISION  "9703311800Z"
      DESCRIPTION
                "MLTG objects added."
      REVISION  "9703201200Z"
      DESCRIPTION
                "RFC 2155 (Proposed Standard)"
::= { snanauMIB 4 }
-- snanauMIB ::= { mib-2 34 }

-- *********************************************************************
-- Textual Conventions
-- *********************************************************************
SnaNodeIdentification ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An SNA Node Identification consists of two parts, which
          together comprise four bytes of hexadecimal data.  In SNA the
          Node Identification is transported in bytes 2-5 of the XID.

          The block number is the first three digits of the Node
          Identification.  These 3 hexadecimal digits identify the
          product.

          The ID number is the last 5 digits of the Node Identification.
          These 5 hexadecimal digits are administratively defined and
          combined with the 3-digit block number form the 8-digit Node
          Identification.  A unique value is required for connections to
          SNA subarea.  In some implementations, the value 'bbb00000'
          (where 'bbb' represents a 3-digit block number) is returned to
          mean that the ID number is not unique on this node.

          An SNA Node Identification is represented as eight
          ASCII-encoded hexadecimal digits, using the characters '0' -
          '9' and 'A' - 'F'."
      SYNTAX OCTET STRING (SIZE (8))

SnaControlPointName ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "A fully qualified SNA control point name, consisting of a 1 to
          8 character network identifier (NetId), a period ('.'), and a 1
          to 8 character control point name (CpName).

          The NetId and CpName are constructed from the uppercase letters
          'A' - 'Z' and the numerics '0' - '9', all encoded in ASCII,
          with the restriction that the first character of each must be
          a letter.  Trailing blanks are not allowed.

          Earlier versions of SNA permitted three additional characters
          in NetIds and CpNames:  '#', '@', and '$'.  While this use of
          these characters has been retired, a Management Station should
          still accept them for backward compatibility."
      SYNTAX OCTET STRING (SIZE (3..17))

SnaClassOfServiceName ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An SNA class-of-service (COS) name, ranging from 1 to 8
          ASCII characters.  COS names take one of two forms:

             -  a user-defined COS name is constructed from the uppercase
                letters 'A' - 'Z' and the numerics '0' - '9', with the
                restriction that the first character of the name must be
                a letter.
             -  an SNA-defined user-session COS name begins with the
                character '#', which is followed by up to seven
                additional characters from the set of uppercase letters
                and numerics.

          Trailing blanks are not allowed in either form of COS name.

          A zero-length string indicates that a COS name is not
          available."
      SYNTAX OCTET STRING (SIZE (0..8))

SnaModeName ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An SNA mode name, ranging from 1 to 8 ASCII characters.
          Mode names take one of two forms:

             -  a user-defined mode name is constructed from the
                uppercase letters 'A' - 'Z' and the numerics '0' - '9',
                with the restriction that the first character of the name
                must be a letter.
             -  an SNA-defined user-session mode name begins with the
                character '#', which is followed by up to seven
                additional characters from the set of uppercase letters
                and numerics.

          Trailing blanks are not allowed in either form of mode name,
          with the single exception of the all-blank mode name, where
          a string consisting of 8 blanks is returned.

          A zero-length string indicates that a mode name is not
          available."
      SYNTAX OCTET STRING (SIZE (0..8))

SnaSenseData ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "To facilitate their display by a Management Station, sense
          data objects in the MIB are represented as OCTET STRINGS
          containing eight ASCII characters.  Eight '0' characters
          indicates that no sense data identifying an SNA error
          condition is available.

          An SNA sense data is represented as eight hexadecimal digits,
          using the characters '0' - '9' and 'A' - 'F'."
      SYNTAX OCTET STRING (SIZE (8))

DisplayableDlcAddress ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "DLC address of a port or link station, represented as an
          OCTET STRING containing 0 to 64 ASCII characters.
          A Management Station should use a value of this type only
          for display.  The 'real' DLC address, i.e., the sequence of
          bytes that flow in the DLC header, is often available in a
          DLC-specific MIB.

          The zero-length string indicates that the DLC address in
          question is not known to the agent."
      SYNTAX OCTET STRING (SIZE (0..64))

AppnNodeCounter ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An object providing global statistics for the entire APPN
          node.  A Management Station can detect discontinuities in this
          counter by monitoring the appnNodeCounterDisconTime object."
      SYNTAX Counter32

AppnPortCounter ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An object providing statistics for an APPN port.  A
          Management Station can detect discontinuities in this counter
          by monitoring the appnPortCounterDisconTime object."
      SYNTAX Counter32

AppnLinkStationCounter ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "An object providing statistics for an APPN link station.  A
          Management Station can detect discontinuities in this counter
          by monitoring the appnLsCounterDisconTime object."
      SYNTAX Counter32

AppnTopologyEntryTimeLeft ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "Number of days before deletion of this entry from the topology
          database.  Range is 0-15.  A value of 0 indicates that the
          entry is either in the process of being deleted, or is being
          marked for deletion at the next garbage collection cycle."
      SYNTAX INTEGER (0..15)

AppnTgDlcData ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "DLC-specific data related to a connection network transmission
          group.  For other TGs, a zero-length string is returned.

          Examples of the type of data returned by an object with this
          syntax include the following:

                Token-Ring      - MAC/SAP
                X.25 Switched   - dial digits
                X.21 Switched   - dial digits
                Circuit Switch  - dial digits

          This MIB does not specify formats for these or any other types
          of DLC-specific data.  Formats may, however, be specified in
          documents related to a particular DLC.

          The contents of an object with this syntax correspond to the
          contents of the DLC-specific subfields of cv46, documented in
          (6)."
      SYNTAX OCTET STRING  (SIZE (0..64))

AppnTgEffectiveCapacity ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "A value representing the effective capacity of a transmission
          group.  This is an administratively assigned value derived from
          the link bandwidth and maximum load factor.  It is encoded in
          the same way as byte 7 of cv47, and represents a floating-point
          number in units of 300 bits per second."
      SYNTAX OCTET STRING (SIZE (1))

AppnTgSecurity ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "A value representing the level of security on a transmission
          group.  A class of service definition includes an indication of
          the acceptable TG security value(s) for that class of service.

          The following seven values are defined:

            nonsecure(1) -
                              (X'01'):  none of the values listed below;
                              for example, satellite-connected or
                              located in a nonsecure country
            publicSwitchedNetwork(32) -
                              (X'20'):  public switched network; secure
                              in the sense that there is no
                              predetermined route that traffic will take
            undergroundCable(64) -
                              (X'40'):  underground cable; located in a
                              secure country (as determined by the
                              network administrator)
            secureConduit(96) -
                              (X'60'):  secure conduit, not guarded; for
                              example, pressurized pipe
            guardedConduit(128) -
                              (X'80'):  guarded conduit; protected
                              against physical tapping

            encrypted(160) -
                              (X'A0'):  link-level encryption is provided
            guardedRadiation(192) -
                              (X'C0'):  guarded conduit containing the
                              transmission medium; protected against
                              physical and radiation tapping"
      SYNTAX INTEGER {
                     nonsecure(1),               -- X'01'
                     publicSwitchedNetwork(32),  -- X'20'
                     undergroundCable(64),       -- X'40'
                     secureConduit(96),          -- X'60'
                     guardedConduit(128),        -- X'80'
                     encrypted(160),             -- X'A0'
                     guardedRadiation(192)       -- X'C0'
                     }

AppnTgDelay ::= TEXTUAL-CONVENTION
      STATUS current
      DESCRIPTION
          "Relative amount of time that it takes for a signal to travel
          the length of a logical link.  This time is represented in
          microseconds, using the same encoding scheme used in cv47 in a
          topology update.  Some of the more common values, along with
          their encoded hex values, are:

                     minimum(0),                 X'00'
                     negligible(384),            X'4C'
                     terrestrial(9216),          X'71'
                     packet(147456),             X'91'
                     long(294912),               X'99'
                     maximum(2013265920)         X'FF'
          "
      SYNTAX OCTET STRING (SIZE (1))

-- *********************************************************************
  appnObjects             OBJECT IDENTIFIER ::= { appnMIB 1 }
-- *********************************************************************

-- ******************** The APPN Node Group ****************************

appnNode              OBJECT IDENTIFIER ::= { appnObjects 1 }
  appnGeneralInfoAndCaps      OBJECT IDENTIFIER ::= { appnNode 1 }
  appnNnUniqueInfoAndCaps     OBJECT IDENTIFIER ::= { appnNode 2 }
  appnEnUniqueCaps            OBJECT IDENTIFIER ::= { appnNode 3 }
  appnPortInformation         OBJECT IDENTIFIER ::= { appnNode 4 }

  appnLinkStationInformation  OBJECT IDENTIFIER ::= { appnNode 5 }
  appnVrnInfo                 OBJECT IDENTIFIER ::= { appnNode 6 }

-- This group provides global information about an APPN network node,
-- an APPN end node, an APPN branch network node, or an LEN node.

-- APPN General Information
-- This section applies to APPN network nodes, end nodes, and branch
-- network nodes, as well as to LEN end nodes.

appnNodeCpName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned network name for this node."
      ::= { appnGeneralInfoAndCaps 1 }

-- appnNodeMibVersion OBJECT-TYPE (deprecated:  moved to end of module)

appnNodeId OBJECT-TYPE
      SYNTAX SnaNodeIdentification
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This node's Node Identification, which it sends in bytes
          2-5 of XID."
      ::= { appnGeneralInfoAndCaps 3 }

appnNodeType OBJECT-TYPE
      SYNTAX INTEGER {
                     networkNode(1),
                     endNode(2),
                     t21len(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Type of APPN node:

                networkNode(1) - APPN network node
                endNode(2)     - APPN end node
                t21len(4)      - LEN end node

          Note:  A branch network node SHALL return endNode(2)
          as the value of this object.  A management application

          can distinguish between a branch network node and an
          actual end node by retrieving the appnNodeBrNn object."
      ::= { appnGeneralInfoAndCaps 4 }

appnNodeUpTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Amount of time (in hundredths of a second) since the APPN node
          was last reinitialized."
      ::= { appnGeneralInfoAndCaps 5 }

appnNodeParallelTg OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node supports parallel TGs."
      ::= { appnGeneralInfoAndCaps 6 }

appnNodeAdaptiveBindPacing OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node supports adaptive bind pacing for
          dependent LUs."
      ::= { appnGeneralInfoAndCaps 7 }

appnNodeHprSupport OBJECT-TYPE
      SYNTAX INTEGER {
                 noHprSupport(1),
                 hprBaseOnly(2),
                 rtpTower(3),
                 controlFlowsOverRtpTower(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates this node's level of support for high-performance
          routing (HPR):

             noHprSupport(1)             - no HPR support
             hprBaseOnly(2)              - HPR base (option set 1400)
                                           supported
             rtpTower(3)                 - HPR base and RTP tower
                                           (option set 1401) supported
             controlFlowsOverRtpTower(4) - HPR base, RTP tower, and
                                           control flows over RTP
                                           (option set 1402) supported

          This object corresponds to cv4580, byte 9, bits 3-4."
      ::= { appnGeneralInfoAndCaps 8 }

appnNodeMaxSessPerRtpConn OBJECT-TYPE
      SYNTAX Gauge32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object represents a configuration parameter indicating
          the maximum number of sessions that the APPN node is to put on
          any HPR connection.  The value is zero if not applicable."
      ::= { appnGeneralInfoAndCaps 9 }

appnNodeHprIntRteSetups OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of HPR route setups received for routes
          passing through this node since the node was last
          reinitialized."
      ::= { appnGeneralInfoAndCaps 10 }

appnNodeHprIntRteRejects OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of HPR route setups rejected by this node for
          routes passing through it since the node was last
          reinitialized."
      ::= { appnGeneralInfoAndCaps 11 }

appnNodeHprOrgRteSetups OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of HPR route setups sent for routes
          originating in this node since the node was last
          reinitialized."
      ::= { appnGeneralInfoAndCaps 12 }

appnNodeHprOrgRteRejects OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of HPR route setups rejected by other nodes for
          routes originating in this node since the node was last
          reinitialized."
      ::= { appnGeneralInfoAndCaps 13 }

appnNodeHprEndRteSetups OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of HPR route setups received for routes
          ending in this node since the node was last reinitialized."
      ::= { appnGeneralInfoAndCaps 14 }

appnNodeHprEndRteRejects OBJECT-TYPE
      SYNTAX AppnNodeCounter
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of HPR route setups rejected by this node for
          routes ending in it since the node was last reinitialized."
      ::= { appnGeneralInfoAndCaps 15 }

appnNodeCounterDisconTime OBJECT-TYPE
      SYNTAX TimeStamp
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The value of the sysUpTime object the last time the APPN node
          was reinitialized."
      ::= { appnGeneralInfoAndCaps 16 }

appnNodeLsCounterType OBJECT-TYPE
      SYNTAX INTEGER {
                 other(1),
                 noAnr(2),
                 anrForLocalNces(3),
                 allAnr(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates which ANR traffic, if any, the node includes in the
          counts returned by the APPN link station counters
          appnLsInXidBytes, appnLsInMsgBytes, appnLsInXidFrames,
          appnLsInMsgFrames, appnLsOutXidBytes, appnLsOutMsgBytes,
          appnLsOutXidFrames, and appnLsOutMsgFrames.  These counters
          are always incremented for ISR traffic.

          The following values are defined:

             other(1)             - the node does something different
                                    from all the options listed below
             noAnr(2)             - the node does not include any ANR
                                    traffic in these counts
             anrForLocalNces(3)   - the node includes in these counts
                                    ANR traffic for RTP connections
                                    that terminate in this node, but
                                    not ANR traffic for RTP connections
                                    that pass through this node without
                                    terminating in it
             allAnr(4)            - the node includes all ANR traffic
                                    in these counts."
      ::= { appnGeneralInfoAndCaps 17 }

appnNodeBrNn OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node is currently configured as a
          branch network node.

          Note:  throughout the remainder of this MIB module, branch
          network node is treated as a third node type, parallel to
          network node and end node.  This is not how branch network
          nodes are treated in the base APPN architecture, but it

          increases clarity to do it here."
      ::= { appnGeneralInfoAndCaps 18 }

-- *********************************************************************
-- APPN Network Node Information
-- This section provides global information about an APPN network node.
-- *********************************************************************

appnNodeNnCentralDirectory OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node supports central directory
          services.

          This object corresponds to cv4580, byte 8, bit 1."
      ::= { appnNnUniqueInfoAndCaps 1 }

appnNodeNnTreeCache OBJECT-TYPE
      SYNTAX INTEGER {
                     noCache(1),
                     cacheNoIncrUpdate(2),
                     cacheWithIncrUpdate(3)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates this node's level of support for caching of route
          trees.  Three levels are specified:

             noCache(1)             - caching of route trees is not
                                      supported
             cacheNoIncrUpdate(2)   - caching of route trees is
                                      supported, but without incremental
                                      updates
             cacheWithIncrUpdate(3) - caching of route trees with
                                      incremental updates is supported"
      ::= { appnNnUniqueInfoAndCaps 2 }

appnNodeNnRouteAddResist OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Route addition resistance.

          This administratively assigned value indicates the relative
          desirability of using this node for intermediate session
          traffic.  The value, which can be any integer 0-255, is used
          in route computation.  The lower the value, the more
          desirable the node is for intermediate routing.

          This object corresponds to cv4580, byte 6."
      ::= { appnNnUniqueInfoAndCaps 3 }

appnNodeNnIsr OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node supports intermediate session
          routing.

          This object corresponds to cv4580, byte 8, bit 2."
      ::= { appnNnUniqueInfoAndCaps 4 }

appnNodeNnFrsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The last flow-reduction sequence number (FRSN) sent by this
          node in a topology update to an adjacent network node."
      ::= { appnNnUniqueInfoAndCaps 5 }

appnNodeNnPeriBorderSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has peripheral border node
          support.

          This object corresponds to cv4580, byte 9, bit 0."
      ::= { appnNnUniqueInfoAndCaps 6 }

appnNodeNnInterchangeSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has interchange node support.

          This object corresponds to cv4580, byte 9, bit 1."
      ::= { appnNnUniqueInfoAndCaps 7 }

appnNodeNnExteBorderSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has extended border node support.

          This object corresponds to cv4580, byte 9, bit 2."
      ::= { appnNnUniqueInfoAndCaps 8 }

appnNodeNnSafeStoreFreq OBJECT-TYPE
      SYNTAX INTEGER (0..32767)
      UNITS "TDUs"
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "The topology safe store frequency.

          If this number is not zero, then the topology database is saved
          each time the total number of topology database updates (TDUs)
          received by this node increases by this number.  A value of
          zero indicates that the topology database is not being saved."
      ::= { appnNnUniqueInfoAndCaps 9 }

appnNodeNnRsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Resource sequence number for this node, which it assigns and
          controls.

          This object corresponds to the numeric value in cv4580, bytes
          2-5."
      ::= { appnNnUniqueInfoAndCaps 10 }

appnNodeNnCongested OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node is congested.  Other network nodes
          stop routing traffic to this node while this flag is on.

          This object corresponds to cv4580, byte 7, bit 0."
      ::= { appnNnUniqueInfoAndCaps 11 }

appnNodeNnIsrDepleted OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicate whether intermediated session routing resources are
          depleted.  Other network nodes stop routing traffic through
          this node while this flag is on.

          This object corresponds to cv4580, byte 7, bit 1."
      ::= { appnNnUniqueInfoAndCaps 12 }

appnNodeNnQuiescing OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node is quiescing.

          This object corresponds to cv4580, byte 7, bit 5."
      ::= { appnNnUniqueInfoAndCaps 13 }

appnNodeNnGateway OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node has gateway services support.

          This object corresponds to cv4580, byte 8, bit 0."
      ::= { appnNnUniqueInfoAndCaps 14 }

-- *********************************************************************

-- APPN End Node Information
-- This section provides global information about an APPN end node.  Two
-- of the objects are also implemented by a branch network node.
-- *********************************************************************

appnNodeEnModeCosMap OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this end node supports mode name to COS name
          mapping."
      ::= { appnEnUniqueCaps 1 }

appnNodeEnNnServer OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0 | 3..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The fully qualified name of the current NN server for this end
          node.  An NN server is identified using the format specified in
          the SnaControlPointName textual convention.  The value is a
          zero-length string when there is no active NN server.

          A branch network node shall also implement this object."
      ::= { appnEnUniqueCaps 2 }

appnNodeEnLuSearch OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node is to be searched for LUs as part
          of a network broadcast search.

          A branch network node shall also implement this object."
      ::= { appnEnUniqueCaps 3 }

-- *********************************************************************
-- APPN Port information
-- This section provides information about an APPN node's ports.
-- *********************************************************************

appnPortTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnPortEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The Port table describes the configuration and current status
          of the ports used by APPN.  When it is known to the APPN
          component, an OBJECT IDENTIFIER pointing to additional
          information related to the port is included.  This may, but
          need not, be a RowPointer to an ifTable entry for a DLC
          interface immediately 'below' the port."
      ::= { appnPortInformation 1 }

appnPortEntry OBJECT-TYPE
      SYNTAX AppnPortEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The port name is used as the index to this table."
      INDEX
             { appnPortName }
      ::= { appnPortTable 1 }

AppnPortEntry ::= SEQUENCE {
      appnPortName                 DisplayString,
      appnPortCommand              INTEGER,
      appnPortOperState            INTEGER,
      appnPortDlcType              IANAifType,
      appnPortPortType             INTEGER,
      appnPortSIMRIM               TruthValue,
      appnPortLsRole               INTEGER,
      appnPortNegotLs              TruthValue,
      appnPortDynamicLinkSupport   TruthValue,
      appnPortMaxRcvBtuSize        INTEGER,
      appnPortMaxIframeWindow      Gauge32,
      appnPortDefLsGoodXids        AppnPortCounter,
      appnPortDefLsBadXids         AppnPortCounter,
      appnPortDynLsGoodXids        AppnPortCounter,
      appnPortDynLsBadXids         AppnPortCounter,
      appnPortSpecific             RowPointer,
      appnPortDlcLocalAddr         DisplayableDlcAddress,
      appnPortCounterDisconTime    TimeStamp
                     }

appnPortName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..10))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this APPN port."
      ::= { appnPortEntry 1 }

appnPortCommand OBJECT-TYPE
      SYNTAX INTEGER {
                      deactivate(1),
                      activate(2),
                      recycle(3),
                      ready(4)
                     }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "Object by which a Management Station can activate, deactivate,
          or recycle (i.e., cause to be deactivated and then immediately
          activated) a port, by setting the value to activate(1),
          deactivate(2), or recycle(3), respectively.  The value ready(4)
          is returned on GET operations until a SET has been processed;
          after that the value received on the most recent SET is
          returned."
      ::= { appnPortEntry 2 }

appnPortOperState OBJECT-TYPE
      SYNTAX INTEGER    {
                         inactive(1),
                         pendactive(2),
                         active(3),
                         pendinact(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates the current state of this port:

              inactive(1)   - port is inactive
              pendactive(2) - port is pending active
              active(3)     - port is active
              pendinact(4)  - port is pending inactive"
      ::= { appnPortEntry 3 }

appnPortDlcType OBJECT-TYPE
      SYNTAX IANAifType
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The type of DLC interface, distinguished according to the
          protocol immediately 'below' this layer."
      ::= { appnPortEntry 4 }

appnPortPortType OBJECT-TYPE
      SYNTAX INTEGER {
                     leased(1),
                     switched(2),
                     sharedAccessFacilities(3)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Identifies the type of line used by this port:

              leased(1)                 - leased line
              switched(2)               - switched line
              sharedAccessFacilities(3) - shared access facility, such
                                          as a LAN."
      ::= { appnPortEntry 5 }

appnPortSIMRIM OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether Set Initialization Mode (SIM) and Receive
          Initialization Mode (RIM) are supported for this port."
      ::= { appnPortEntry 6 }

appnPortLsRole OBJECT-TYPE
      SYNTAX INTEGER {
                     primary(1),
                     secondary(2),
                     negotiable(3),
                     abm(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
             "Initial role for link stations activated through this port.
             The values map to the following settings in the initial XID,
             where 'ABM' indicates asynchronous balanced mode and 'NRM'
             indicated normal response mode:

                 primary(1):     ABM support = 0     ( = NRM)
                                 role = 01           ( = primary)
                 secondary(2):   ABM support = 0     ( = NRM)
                                 role = 00           ( = secondary)
                 negotiable(3):  ABM support = 0     ( = NRM)
                                 role = 11           ( = negotiable)
                 abm(4):         ABM support = 1     ( = ABM)
                                 role = 11           ( = negotiable)"
      ::= { appnPortEntry 7 }

appnPortNegotLs OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node supports negotiable link stations
          for this port."
      ::= { appnPortEntry 8 }

appnPortDynamicLinkSupport OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node allows call-in on this port from
          nodes not defined locally."
      ::= { appnPortEntry 9 }

appnPortMaxRcvBtuSize OBJECT-TYPE
      SYNTAX INTEGER (99..32767)
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum Basic Transmission Unit (BTU) size that a link station
          on this port can receive.

          This object corresponds to bytes 21-22 of XID3."
      ::= { appnPortEntry 10 }

appnPortMaxIframeWindow OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "I-frames"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum number of I-frames that can be received by the XID
          sender before an acknowledgement is received."
      ::= { appnPortEntry 11 }

appnPortDefLsGoodXids OBJECT-TYPE
      SYNTAX AppnPortCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of successful XID exchanges that have
          occurred on all defined link stations on this port since the
          last time this port was started."
      ::= { appnPortEntry 12 }

appnPortDefLsBadXids OBJECT-TYPE
      SYNTAX AppnPortCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of unsuccessful XID exchanges that have
          occurred on all defined link stations on this port since the
          last time this port was started."
      ::= { appnPortEntry 13 }

appnPortDynLsGoodXids OBJECT-TYPE
      SYNTAX AppnPortCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of successful XID exchanges that have
          occurred on all dynamic link stations on this port since the
          last time this port was started."
      ::= { appnPortEntry 14 }

appnPortDynLsBadXids OBJECT-TYPE
      SYNTAX AppnPortCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of unsuccessful XID exchanges that have
          occurred on all dynamic link stations on this port since the
          last time this port was started."
      ::= { appnPortEntry 15 }

appnPortSpecific OBJECT-TYPE
      SYNTAX RowPointer
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Identifies the object, e.g., one in a DLC-specific MIB, that
          can provide additional information related to this port.

          If the agent is unable to identify such an object, the value
          0.0 is returned."
      ::= { appnPortEntry 16 }

appnPortDlcLocalAddr OBJECT-TYPE
      SYNTAX DisplayableDlcAddress
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Local DLC address of this port."
      ::= { appnPortEntry 17 }

appnPortCounterDisconTime OBJECT-TYPE
      SYNTAX TimeStamp
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The value of the sysUpTime object the last time the port was
          started."
      ::= { appnPortEntry 18 }

-- *********************************************************************
-- APPN Link Station Information
-- This section provides information about an APPN node's link stations.
-- *********************************************************************

appnLsTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnLsEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains detailed information about the link
          station configuration and its current status."
      ::= { appnLinkStationInformation 1 }

appnLsEntry OBJECT-TYPE
      SYNTAX AppnLsEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the link station name."
      INDEX
             { appnLsName }
      ::= { appnLsTable 1 }

AppnLsEntry ::= SEQUENCE {
      appnLsName                  DisplayString,
      appnLsCommand               INTEGER,
      appnLsOperState             INTEGER,
      appnLsPortName              DisplayString,
      appnLsDlcType               IANAifType,
      appnLsDynamic               TruthValue,
      appnLsAdjCpName             OCTET STRING,
      appnLsAdjNodeType           INTEGER,
      appnLsTgNum                 INTEGER,
      appnLsLimResource           TruthValue,
      appnLsActOnDemand           TruthValue,
      appnLsMigration             TruthValue,
      appnLsPartnerNodeId         SnaNodeIdentification,
      appnLsCpCpSessionSupport    TruthValue,
      appnLsMaxSendBtuSize        INTEGER,
-- performance data
      appnLsInXidBytes            AppnLinkStationCounter,
      appnLsInMsgBytes            AppnLinkStationCounter,
      appnLsInXidFrames           AppnLinkStationCounter,
      appnLsInMsgFrames           AppnLinkStationCounter,
      appnLsOutXidBytes           AppnLinkStationCounter,
      appnLsOutMsgBytes           AppnLinkStationCounter,
      appnLsOutXidFrames          AppnLinkStationCounter,
      appnLsOutMsgFrames          AppnLinkStationCounter,
-- propagation delay
      appnLsEchoRsps              AppnLinkStationCounter,
      appnLsCurrentDelay          Gauge32,
      appnLsMaxDelay              Gauge32,
      appnLsMinDelay              Gauge32,
      appnLsMaxDelayTime          DateAndTime,
-- XID Statistics
      appnLsGoodXids              AppnLinkStationCounter,
      appnLsBadXids               AppnLinkStationCounter,
-- DLC-specific
      appnLsSpecific              RowPointer,
      appnLsActiveTime            Unsigned32,
      appnLsCurrentStateTime      TimeTicks,
-- HPR-specific
      appnLsHprSup                INTEGER,
      appnLsErrRecoSup            TruthValue,
      appnLsForAnrLabel           OCTET STRING,
      appnLsRevAnrLabel           OCTET STRING,
      appnLsCpCpNceId             OCTET STRING,
      appnLsRouteNceId            OCTET STRING,
      appnLsBfNceId               OCTET STRING,
      appnLsLocalAddr             DisplayableDlcAddress,
      appnLsRemoteAddr            DisplayableDlcAddress,
      appnLsRemoteLsName          DisplayString,
      appnLsCounterDisconTime     TimeStamp,
      appnLsMltgMember            TruthValue
                     }

appnLsName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..10))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for the link station.
           The name can be from one to ten characters."
      ::= { appnLsEntry 1 }

appnLsCommand OBJECT-TYPE
      SYNTAX INTEGER {
                      deactivate(1),
                      activate(2),
                      recycle(3),
                      ready(4)
                     }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "Object by which a Management Station can activate, deactivate,
          or recycle (i.e., cause to be deactivated and then immediately
          reactivated) a link station, by setting the value to
          activate(1), deactivate(2), or recycle(3), respectively.  The
          value ready(4) is returned on GET operations until a SET has
          been processed; after that the value received on the most
          recent SET is returned."
      ::= { appnLsEntry 2 }

appnLsOperState OBJECT-TYPE
      SYNTAX INTEGER    {
          inactive(1),
          sentConnectOut(2),    -- pending active
          pendXidExch(3),       -- pending active
          sendActAs(4),         -- pending active
          sendSetMode(5),       -- pending active
          otherPendingActive(6),-- pending active
          active(7),
          sentDeactAsOrd(8),    -- pending inactive
          sentDiscOrd(9),       -- pending inactive
          sentDiscImmed(10),    -- pending inactive
          otherPendingInact(11) -- pending inactive
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "State of this link station.  The comments map these more
          granular states to the 'traditional' four states for SNA
          resources.  Values (2) through (5) represent the normal
          progression of states when a link station is being activated.
          Value (6) represents some other state of a link station in
          the process of being activated.  Values (8) through (10)
          represent different ways a link station can be deactivated.
          Value (11) represents some other state of a link station in
          the process of being deactivated."
      ::= { appnLsEntry 3 }

appnLsPortName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..10))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned name for the port associated with

          this link station.  The name can be from one to ten
          characters."
      ::= { appnLsEntry 4 }

appnLsDlcType OBJECT-TYPE
      SYNTAX IANAifType
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The type of DLC interface, distinguished according to the
          protocol immediately 'below' this layer."
      ::= { appnLsEntry 5 }

appnLsDynamic OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Identifies whether this is a dynamic link station.  Dynamic
          link stations are created when links that have not been locally
          defined are established by adjacent nodes."
      ::= { appnLsEntry 6 }

appnLsAdjCpName OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0 | 3..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Fully qualified name of the adjacent node for this link
          station.  An adjacent node is identified using the format
          specified in the SnaControlPointName textual convention.

          The value of this object is determined as follows:

             1. If the adjacent node's name was received on XID, it
                is returned.

             2. If the adjacent node's name was not received on XID,
                but a locally-defined value is available, it is
                returned.

             3. Otherwise a string of length 0 is returned, indicating
                that no name is known for the adjacent node."
      ::= { appnLsEntry 7 }

appnLsAdjNodeType OBJECT-TYPE
      SYNTAX INTEGER {
                     networkNode(1),
                     endNode(2),
                     t21len(4),
                     unknown(255)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Node type of the adjacent node on this link:

                networkNode(1) - APPN network node
                endNode(2)     - APPN end node
                t21len(4)      - LEN end node
                unknown(255)   - the agent does not know the node type
                                 of the adjacent node
          "
      ::= { appnLsEntry 8 }

appnLsTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..256)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number associated with the TG to this link station, with a
          range from 0 to 256.  A value of 256 indicates that the TG
          number has not been negotiated and is unknown at this time."
      ::= { appnLsEntry 9 }

appnLsLimResource OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the link station is a limited resource.  A
          link station that is a limited resource is deactivated when it
          is no longer in use."
      ::= { appnLsEntry 10 }

appnLsActOnDemand OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the link station is activatable on demand.

          Such a link station is reported in the topology as active
          regardless of its actual state, so that it can be considered in
          route calculations.  If the link station is inactive and is
          chosen for a route, it will be activated at that time."
      ::= { appnLsEntry 11 }

appnLsMigration OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this link station will be used for
          connections to down-level or migration partners.

          In general, migration nodes do not append their CP names on
          XID3.  Such nodes:  (1) will not support parallel TGs, (2)
          should be sent an ACTIVATE PHYSICAL UNIT (ACTPU), provided that
          the partner supports ACTPUs, and (3) should not be sent
          segmented BINDs.  However, if this node receives an XID3 with
          an appended CP name, then the partner node will not be treated
          as a migration node.

           In the case of DYNAMIC TGs this object should be set to 'no'."
      ::= { appnLsEntry 12 }

appnLsPartnerNodeId OBJECT-TYPE
      SYNTAX SnaNodeIdentification
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The partner's Node Identification, from bytes 2-5 of the XID
          received from the partner.  If this value is not available,
          then the characters '00000000' are returned."
      ::= { appnLsEntry 13 }

appnLsCpCpSessionSupport OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether CP-CP sessions are supported by this
          link station.  For a dynamic link, this object represents
          the default ('Admin') value."
      ::= { appnLsEntry 14 }

appnLsMaxSendBtuSize OBJECT-TYPE
      SYNTAX INTEGER (99..32767)
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Numeric value between 99 and 32767 inclusive indicating the
          maximum number of bytes in a Basic Transmission Unit (BTU) sent
          on this link.

          When the link state (returned by the appnLsOperState object) is
          inactive or pending active, the value configured at this node
          is returned.  When the link state is active, the value that was
          negotiated for it is returned.  This negotiated value is the
          smaller of the value configured at this node and the partner's
          maximum receive BTU length, received in XID."
      ::= { appnLsEntry 15 }

appnLsInXidBytes OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of XID bytes received.  All of the bytes in the SNA
          basic transmission unit (BTU), i.e., all of the bytes in the
          DLC XID Information Field, are counted."
      ::= { appnLsEntry 16 }

appnLsInMsgBytes OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of message (I-frame) bytes received.  All of the bytes
          in the SNA basic transmission unit (BTU), including the
          transmission header (TH), are counted."
      ::= { appnLsEntry 17 }

appnLsInXidFrames OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "XID frames"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of XID frames received."
      ::= { appnLsEntry 18 }

appnLsInMsgFrames OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "I-frames"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of message (I-frame) frames received."
      ::= { appnLsEntry 19 }

appnLsOutXidBytes OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of XID bytes sent.  All of the bytes in the SNA basic
          transmission unit (BTU), i.e., all of the bytes in the DLC XID
          Information Field, are counted."
      ::= { appnLsEntry 20 }

appnLsOutMsgBytes OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of message (I-frame) bytes sent.  All of the bytes
          in the SNA basic transmission unit (BTU), including the
          transmission header (TH), are counted."
      ::= { appnLsEntry 21 }

appnLsOutXidFrames OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "XID frames"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of XID frames sent."
      ::= { appnLsEntry 22 }

appnLsOutMsgFrames OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "I-frames"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of message (I-frame) frames sent."
      ::= { appnLsEntry 23 }

appnLsEchoRsps OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "echo responses"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of echo responses returned from adjacent link station.
          A response should be returned for each test frame sent by this
          node.  Test frames are sent to adjacent nodes periodically to
          verify connectivity and to measure the actual round trip time,
          that is, the time interval from when the test frame is sent
          until when the response is received."
      ::= { appnLsEntry 24 }

appnLsCurrentDelay OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "milliseconds"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The time that it took for the last test signal to be sent and
          returned from this link station to the adjacent link station.
          This time is represented in milliseconds."
      ::= { appnLsEntry 25 }

appnLsMaxDelay OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "milliseconds"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The longest time it took for a test signal to be sent and
          returned from this link station to the adjacent link station.

          This time is represented in milliseconds .

          The value 0 is returned if no test signal has been sent and
          returned."
      ::= { appnLsEntry 26 }

appnLsMinDelay OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "milliseconds"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The shortest time it took for a test signal to be sent and
          returned from this link station to the adjacent link station.
          This time is represented in milliseconds.

          The value 0 is returned if no test signal has been sent and
          returned."
      ::= { appnLsEntry 27 }

appnLsMaxDelayTime OBJECT-TYPE
      SYNTAX DateAndTime
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The time when the longest delay occurred.  This time can be
          used to identify when this high water mark occurred in relation
          to other events in the APPN node, for example, the time at
          which an APPC session was either terminated or failed to be
          established.  This latter time is available in the
          appcHistSessTime object in the APPC MIB.

          The value 00000000 is returned if no test signal has been sent
          and returned."
      ::= { appnLsEntry 28 }

appnLsGoodXids OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of successful XID exchanges that have
          occurred on this link station since the time it was started."
      ::= { appnLsEntry 29 }

appnLsBadXids OBJECT-TYPE
      SYNTAX AppnLinkStationCounter
      UNITS "XID exchanges"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The total number of unsuccessful XID exchanges that have
          occurred on this link station since the time it was started."
      ::= { appnLsEntry 30 }

appnLsSpecific OBJECT-TYPE
      SYNTAX RowPointer
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Identifies the object, e.g., one in a DLC-specific MIB, that
          can provide additional information related to this link
          station.

          If the agent is unable to identify such an object, the value
          0.0 is returned."
      ::= { appnLsEntry 31 }

appnLsActiveTime OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The cumulative amount of time since the node was last
          reinitialized, measured in hundredths of a second, that this
          link station has been in the active state.  A zero value
          indicates that the link station has never been active since
          the node was last reinitialized."
      ::= { appnLsEntry 32 }

appnLsCurrentStateTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The amount of time, measured in hundredths of a second, that

          the link station has been in its current state."
      ::= { appnLsEntry 33 }

appnLsHprSup OBJECT-TYPE
      SYNTAX INTEGER {
                 noHprSupport(1),
                 hprBaseOnly(2),
                 rtpTower(3),
                 controlFlowsOverRtpTower(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates the level of high performance routing (HPR) support
          over this link:

             noHprSupport(1)             - no HPR support
             hprBaseOnly(2)              - HPR base (option set 1400)
                                           supported
             rtpTower(3)                 - HPR base and RTP tower
                                           (option set 1401) supported
             controlFlowsOverRtpTower(4) - HPR base, RTP tower, and
                                           control flows over RTP
                                           (option set 1402) supported

          If the link is not active, the defined value is returned."
      ::= { appnLsEntry 34 }

appnLsErrRecoSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the link station is supporting
           HPR link-level error recovery."
      ::= { appnLsEntry 35 }

appnLsForAnrLabel OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The forward Automatic Network Routing (ANR) label for this
          link station.  If the link does not support HPR or the value is
          unknown, a zero-length string is returned."
      ::= { appnLsEntry 36 }

appnLsRevAnrLabel OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The reverse Automatic Network Routing (ANR) label for this
          link station.  If the link does not support HPR or the value is
          unknown, a zero-length string is returned."
      ::= { appnLsEntry 37 }

appnLsCpCpNceId OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The network connection endpoint identifier (NCE ID) for CP-CP
          sessions if this node supports the HPR transport tower, a
          zero-length string if the value is unknown or not meaningful
          for this node."
      ::= { appnLsEntry 38 }

appnLsRouteNceId OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The network connection endpoint identifier (NCE ID) for Route
          Setup if this node supports the HPR transport tower, a zero-
          length string if the value is unknown or not meaningful for
          this node."
      ::= { appnLsEntry 39 }

appnLsBfNceId OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The network connection endpoint identifier (NCE ID) for the
          APPN/HPR boundary function if this node supports the HPR
          transport tower, a zero-length string if the value is unknown
          or not meaningful for this node."
      ::= { appnLsEntry 40 }

appnLsLocalAddr OBJECT-TYPE
      SYNTAX DisplayableDlcAddress
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Local address of this link station."
      ::= { appnLsEntry 41 }

appnLsRemoteAddr OBJECT-TYPE
      SYNTAX DisplayableDlcAddress
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Address of the remote link station on this link."
      ::= { appnLsEntry 42 }

appnLsRemoteLsName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0..10))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Remote link station discovered from the XID exchange.
          The name can be from one to ten characters.  A zero-length
          string indicates that the value is not known."
      ::= { appnLsEntry 43 }

appnLsCounterDisconTime OBJECT-TYPE
      SYNTAX TimeStamp
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The value of the sysUpTime object the last time the link
          station was started."
      ::= { appnLsEntry 44 }

appnLsMltgMember OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the link is a member of a multi-link TG.  If
          the link's TG has been brought up as a multi-link TG, then the
          link is reported as a member of a multi-link TG, even if it is

          currently the only active link in the TG."
      ::= { appnLsEntry 45 }

--********************************************************************
-- This table provides information about errors this node encountered
-- with connections to adjacent nodes.  Entries are added for exceptional
-- conditions encountered establishing connections, and for exceptional
-- conditions that resulted in termination of a connection.  It is an
-- implementation option when entries are removed from this table.
--********************************************************************

appnLsStatusTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnLsStatusEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains information related to exceptional and
          potentially exceptional conditions that occurred during the
          activation, XID exchange, and termination of a connection.  No
          entries are created when these activities proceed normally.

          It is an implementation option when entries are removed from
          this table."
      ::= { appnLinkStationInformation 2 }

appnLsStatusEntry OBJECT-TYPE
      SYNTAX AppnLsStatusEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the LsStatusIndex, which is an
          integer that is continuously updated until it eventually
          wraps."
      INDEX
             { appnLsStatusIndex }
      ::= { appnLsStatusTable 1 }

AppnLsStatusEntry ::= SEQUENCE {
      appnLsStatusIndex              INTEGER,
      appnLsStatusTime               DateAndTime,
      appnLsStatusLsName             DisplayString,
      appnLsStatusCpName             DisplayString,
      appnLsStatusPartnerId          SnaNodeIdentification,
      appnLsStatusTgNum              INTEGER,
      appnLsStatusGeneralSense       SnaSenseData,
      appnLsStatusRetry              TruthValue,
      appnLsStatusEndSense           SnaSenseData,
      appnLsStatusXidLocalSense      SnaSenseData,
      appnLsStatusXidRemoteSense     SnaSenseData,
      appnLsStatusXidByteInError     INTEGER,
      appnLsStatusXidBitInError      INTEGER,
      appnLsStatusDlcType            IANAifType,
      appnLsStatusLocalAddr          DisplayableDlcAddress,
      appnLsStatusRemoteAddr         DisplayableDlcAddress
                     }

appnLsStatusIndex OBJECT-TYPE
      SYNTAX INTEGER (0..2147483647)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table index.  The value of the index begins at zero
           and is incremented up to a maximum value of 2**31-1
           (2,147,483,647) before wrapping."
      ::= { appnLsStatusEntry 1 }

appnLsStatusTime OBJECT-TYPE
      SYNTAX DateAndTime
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Time when the exception condition occurred.  This time can be
          used to identify when this event occurred in relation to other
          events in the APPN node, for example, the time at which an APPC
          session was either terminated or failed to be established.
          This latter time is available in the appcHistSessTime object in
          the APPC MIB."
      ::= { appnLsStatusEntry 2 }

appnLsStatusLsName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..10))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned name for the link station
          experiencing the condition."
      ::= { appnLsStatusEntry 3 }

appnLsStatusCpName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0 | 3..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Fully qualified name of the adjacent node for this link
          station.  An adjacent node is identified using the format
          specified in the SnaControlPointName textual convention.

          The value of this object is determined as follows:

             1. If the adjacent node's name was received on XID, it
                is returned.

             2. If the adjacent node's name was not received on XID,
                but a locally-defined value is available, it is
                returned.

             3. Otherwise a string of length 0 is returned, indicating
                that no name is known for the adjacent node."
      ::= { appnLsStatusEntry 4 }

appnLsStatusPartnerId OBJECT-TYPE
      SYNTAX SnaNodeIdentification
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The partner's Node Identification, from bytes 2-5 of the XID
          received from the partner.  If this value is not available,
          then the characters '00000000' are returned."
      ::= { appnLsStatusEntry 5 }

appnLsStatusTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..256)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number associated with the TG to this link station, with a
          range from 0 to 256.  A value of 256 indicates that the TG
          number was unknown at the time of the failure."
      ::= { appnLsStatusEntry 6 }

appnLsStatusGeneralSense OBJECT-TYPE
      SYNTAX SnaSenseData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The error sense data associated with the start sequence of
          activation of a link up to the beginning of the XID sequence.

          This is the sense data that came from Configuration Services
          whenever the link did not activate or when it went inactive."
      ::= { appnLsStatusEntry 7 }

appnLsStatusRetry OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node will retry the start request to
          activate the link."
      ::= { appnLsStatusEntry 8 }

appnLsStatusEndSense OBJECT-TYPE
      SYNTAX SnaSenseData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The sense data associated with the termination of the link
          connection to adjacent node.

          This is the sense data that came from the DLC layer."
      ::= { appnLsStatusEntry 9 }

appnLsStatusXidLocalSense OBJECT-TYPE
      SYNTAX SnaSenseData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The sense data associated with the rejection of the XID.

          This is the sense data that came from the local node (this
          node) when it built the XID Negotiation Error control vector
          (cv22) to send to the remote node."
      ::= { appnLsStatusEntry 10 }

appnLsStatusXidRemoteSense OBJECT-TYPE
      SYNTAX SnaSenseData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The sense data the adjacent node returned to this node
          indicating the reason the XID was rejected.

          This is the sense data that came from the remote node in the
          XID Negotiation Error control vector (cv22) it sent to the
          local node (this node)."
      ::= { appnLsStatusEntry 11 }

appnLsStatusXidByteInError OBJECT-TYPE
      SYNTAX INTEGER (0..65536)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object identifies the actual byte in the XID that caused
          the error.  The value 65536 indicates that the object has no
          meaning.

          For values in the range 0-65535, this object corresponds to
          bytes 2-3 of the XID Negotiation (X'22') control vector."
      ::= { appnLsStatusEntry 12 }

appnLsStatusXidBitInError OBJECT-TYPE
      SYNTAX INTEGER (0..8)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object identifies the actual bit in error (0 through 7)
          within the errored byte of the XID.  The value 8 indicates that
          this object has no meaning.

          For values in the range 0-7, this object corresponds to byte 4
          of the XID Negotiation (X'22') control vector."
      ::= { appnLsStatusEntry 13 }

appnLsStatusDlcType OBJECT-TYPE
      SYNTAX IANAifType
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The type of DLC interface, distinguished according to the
          protocol immediately 'below' this layer."
      ::= { appnLsStatusEntry 14 }

appnLsStatusLocalAddr OBJECT-TYPE
      SYNTAX DisplayableDlcAddress
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Local address of this link station."
      ::= { appnLsStatusEntry 15 }

appnLsStatusRemoteAddr OBJECT-TYPE
      SYNTAX DisplayableDlcAddress
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Address of the remote link station on this link."
      ::= { appnLsStatusEntry 16 }

-- *********************************************************************
-- APPN Virtual Routing Node Information
-- This section provides information relating a virtual routing node to
-- an APPN port.
-- *********************************************************************

appnVrnTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnVrnEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table relates a virtual routing node to an APPN port."
      ::= { appnVrnInfo 1 }

appnVrnEntry OBJECT-TYPE
      SYNTAX AppnVrnEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the virtual routing node name, TG
          number, and port name.  There will be a matching entry in the
          appnLocalTgTable to represent status and characteristics of the
          TG representing each virtual routing node definition."
      INDEX
             { appnVrnName, appnVrnTgNum, appnVrnPortName }
      ::= { appnVrnTable 1 }

AppnVrnEntry ::= SEQUENCE {
      appnVrnName             SnaControlPointName,
      appnVrnTgNum            INTEGER,
      appnVrnPortName         DisplayString
}

appnVrnName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name of the virtual routing node.
          This is a fully qualified name, and matches the appnLocalTgDest
          name in the appnLocalTgTable."
      ::= { appnVrnEntry 1 }

appnVrnTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Number associated with the transmission group representing
          this virtual routing node definition."
      ::= { appnVrnEntry 2 }

appnVrnPortName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..10))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The name of the port this virtual routing node definition is
          defined to."
      ::= { appnVrnEntry 3 }

-- ************** The APPN Topology Group ******************************

appnNn                OBJECT IDENTIFIER ::= { appnObjects 2 }
appnNnTopo         OBJECT IDENTIFIER ::= { appnNn 1 }
appnNnTopology     OBJECT IDENTIFIER ::= { appnNn 2 }

-- This group is used to represent the entire APPN network-node topology
-- including network nodes, virtual routing nodes and all TGs associated
-- with these nodes, including intersubnetwork TGs (ISTGs) and branch TGs.

--
-- Network nodes
-- The APPN topology database consists of information about every APPN
-- network node in this network node's topology subnetwork.  This
-- information is learned over time as each network node exchanges
-- topology information with the network nodes adjacent to it.  The
-- database consists of information about each node, and information
-- about all of the transmission groups used by these nodes.
--
-- Virtual routing nodes
-- Information about virtual routing nodes (representing connection
-- networks) is treated in the same way as information about network
-- nodes, and is replicated at each network node.  The FRSN, node name,
-- and node type are the only meaningful fields for a virtual routing
-- node.  The other node objects return unspecified values.  Each
-- node that has defined a TG with this virtual routing node as the
-- destination also defines a TG on this virtual routing node.  There
-- is a TG record for each node that uses this virtual routing node.
--
-- The APPN node table represents node information from the APPN topology
-- database, with the FRSN and APPN fully qualified CP name serving as
-- the index.  The FRSN is the agent's relative time stamp of an update
-- to the network topology database.  After collecting the entire database
-- once, a management application can issue GET NEXT commands starting
-- from the last rows it has retrieved from the appnNnTopologyFRTable and
-- from the appnNnTgTopologyFRTable.  When the response to either of these
-- GET NEXT commands returns another row of its respective table, this
-- indicates a change to the agent's topology database.  The management
-- application can then retrieve only the updates to the table, using
-- GET NEXT commands starting from the last retrieved node or TG entry.
--
-- The format of the actual APPN topology database is as follows:
--
-- Node table (entry for each node in network)
--   TG table (entry for each TG owned by node)
--
-- Due to SNMP's ASN.1 limitations, we cannot represent the TG table
-- within the node table in this way.  We define separate tables for
-- nodes and TGs, adding the node name to each TG entry to provide a
-- means of correlating the TG with its originating node.

appnNnTopoMaxNodes OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "node entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum number of node entries allowed in the APPN topology

          database.  It is an implementation choice whether to count only
          network-node entries, or to count all node entries.  If the
          number of node entries exceeds this value, APPN will issue an
          Alert and the node can no longer participate as a network node.
          The value 0 indicates that the local node has no defined limit,
          and the number of node entries is bounded only by memory."
      ::= { appnNnTopo 1 }

appnNnTopoCurNumNodes OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "node entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current number of node entries in this node's topology
          database.  It is an implementation choice whether to count only
          network-node entries, or to count all node entries, but an
          implementation must make the same choice here that it makes for
          the appnNnTopoMaxNodes object.  If this value exceeds the
          maximum number of nodes allowed (appnNnTopoMaxNodes, if that
          field in not 0), APPN Alert CPDB002 is issued."
      ::= { appnNnTopo 2 }

appnNnTopoNodePurges OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "node entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Total number of topology node records purged from this node's
          topology database since the node was last reinitialized."
      ::= { appnNnTopo 3 }

appnNnTopoTgPurges OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "TG entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Total number of topology TG records purged from this node's
          topology database since the node was last reinitialized."
      ::= { appnNnTopo 4 }

appnNnTopoTotalTduWars OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "TDU wars"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of TDU wars detected by this node since its last
          initialization."
      ::= { appnNnTopo 5 }

-- APPN network node topology table (using FRSN and name as index)

-- This table describes every APPN network node and virtual routing node
-- represented in this node's topology database.

appnNnTopologyFRTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnNnTopologyFREntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Portion of the APPN topology database that describes all of
          the APPN network nodes and virtual routing nodes known to this
          node."
      ::= { appnNnTopology 3 }

appnNnTopologyFREntry OBJECT-TYPE
      SYNTAX AppnNnTopologyFREntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The FRSN and the fully qualified node name are used to index
          this table."
      INDEX
             {appnNnNodeFRFrsn,
              appnNnNodeFRName}
      ::= { appnNnTopologyFRTable 1 }

AppnNnTopologyFREntry ::= SEQUENCE {
      appnNnNodeFRFrsn                     Unsigned32,
      appnNnNodeFRName                     SnaControlPointName,
      appnNnNodeFREntryTimeLeft            AppnTopologyEntryTimeLeft,
      appnNnNodeFRType                     INTEGER,
      appnNnNodeFRRsn                      Unsigned32,
      appnNnNodeFRRouteAddResist           INTEGER,
      appnNnNodeFRCongested                TruthValue,
      appnNnNodeFRIsrDepleted              TruthValue,
      appnNnNodeFRQuiescing                TruthValue,
      appnNnNodeFRGateway                  TruthValue,
      appnNnNodeFRCentralDirectory         TruthValue,
      appnNnNodeFRIsr                      TruthValue,
      appnNnNodeFRGarbageCollect           TruthValue,
      appnNnNodeFRHprSupport               INTEGER,
      appnNnNodeFRPeriBorderSup            TruthValue,
      appnNnNodeFRInterchangeSup           TruthValue,
      appnNnNodeFRExteBorderSup            TruthValue,
      appnNnNodeFRBranchAwareness          TruthValue
}

appnNnNodeFRFrsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Flow reduction sequence numbers (FRSNs) are associated with
          Topology Database Updates (TDUs) and are unique only within
          each APPN network node.  A TDU can be associated with multiple
          APPN resources.  This FRSN indicates the last relative time
          this resource was updated at the agent node."
      ::= { appnNnTopologyFREntry 1 }

appnNnNodeFRName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned network name that is locally defined
          at each network node."
      ::= { appnNnTopologyFREntry 2 }

appnNnNodeFREntryTimeLeft OBJECT-TYPE
      SYNTAX AppnTopologyEntryTimeLeft
      UNITS "days"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of days before deletion of this network node entry."
      ::= { appnNnTopologyFREntry 3 }

appnNnNodeFRType OBJECT-TYPE
      SYNTAX INTEGER {
                     networkNode(1),
                     virtualRoutingNode(3)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Type of APPN node."
      ::= { appnNnTopologyFREntry 4 }

appnNnNodeFRRsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Resource sequence number, which is assigned and controlled by
          the network node that owns this resource.  An odd number
          indicates that information about the resource is inconsistent.

          This object corresponds to the numeric value in cv4580, bytes
          2-5."
      ::= { appnNnTopologyFREntry 5 }

appnNnNodeFRRouteAddResist OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Route addition resistance.

          This administratively assigned value indicates the relative
          desirability of using this node for intermediate session
          traffic.  The value, which can be any integer 0-255, is used
          in route computation.  The lower the value, the more
          desirable the node is for intermediate routing.

          This object corresponds to cv4580, byte 6."
      ::= { appnNnTopologyFREntry 6 }

appnNnNodeFRCongested OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node is congested.  This node is not be
          included in route selection by other nodes when this congestion
          exists.

          This object corresponds to cv4580, byte 7, bit 0."
      ::= { appnNnTopologyFREntry 7 }

appnNnNodeFRIsrDepleted OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether intermediate session routing resources are
          depleted.  This node is not included in intermediate route
          selection by other nodes when resources are depleted.

          This object corresponds to cv4580, byte 7, bit 1."
      ::= { appnNnTopologyFREntry 8 }

appnNnNodeFRQuiescing OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node is quiescing.  This node is not
          included in route selection by other nodes when the node is
          quiescing.

          This object corresponds to cv4580, byte 7, bit 5."
      ::= { appnNnTopologyFREntry 9 }

appnNnNodeFRGateway OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node provide gateway services.

          This object corresponds to cv4580, byte 8, bit 0."
      ::= { appnNnTopologyFREntry 10 }

appnNnNodeFRCentralDirectory OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node supports central directory
          services.

          This object corresponds to cv4580, byte 8, bit 1."
      ::= { appnNnTopologyFREntry 11 }

appnNnNodeFRIsr OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node supports intermediate session
          routing (ISR).

          This object corresponds to cv4580, byte 8, bit 2."
      ::= { appnNnTopologyFREntry 12 }

appnNnNodeFRGarbageCollect OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the node has been marked for garbage
          collection (deletion from the topology database) upon the next
          garbage collection cycle.

          This object corresponds to cv4580, byte 7, bit 3."
      ::= { appnNnTopologyFREntry 13 }

appnNnNodeFRHprSupport OBJECT-TYPE
      SYNTAX INTEGER {
                 noHprSupport(1),
                 hprBaseOnly(2),
                 rtpTower(3),
                 controlFlowsOverRtpTower(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates the node's level of support for high-performance
          routing (HPR):

             noHprSupport(1)             - no HPR support
             hprBaseOnly(2)              - HPR base (option set 1400)
                                           supported
             rtpTower(3)                 - HPR base and RTP tower
                                           (option set 1401) supported
             controlFlowsOverRtpTower(4) - HPR base, RTP tower, and
                                           control flows over RTP
                                           (option set 1402) supported

          This object corresponds to cv4580, byte 9, bits 3-4."
      ::= { appnNnTopologyFREntry 14 }

appnNnNodeFRPeriBorderSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has peripheral border node
          support.

          This object corresponds to cv4580, byte 9, bit 0."
      ::= { appnNnTopologyFREntry 15 }

appnNnNodeFRInterchangeSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has interchange node support.

          This object corresponds to cv4580, byte 9, bit 1."
      ::= { appnNnTopologyFREntry 16 }

appnNnNodeFRExteBorderSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node has extended border node
           support.

          This object corresponds to cv4580, byte 9, bit 2."
      ::= { appnNnTopologyFREntry 17 }

appnNnNodeFRBranchAwareness OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether this node supports branch awareness.

          This object corresponds to cv4580, byte 8, bit 4."
      ::= { appnNnTopologyFREntry 18 }

--APPN transmission group (TG) table

-- This table describes the TGs associated with all the APPN network
-- nodes known to this node.   The originating (owning) node for each
-- TG is repeated here to provide a means of correlating the TGs with
-- the nodes.

appnNnTgTopologyFRTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnNnTgTopologyFREntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Portion of the APPN topology database that describes all of
          the APPN transmissions groups between nodes in the database."
      ::= { appnNnTopology 4 }

appnNnTgTopologyFREntry OBJECT-TYPE
      SYNTAX AppnNnTgTopologyFREntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by four columns:  FRSN, TG owner fully
          qualified node name, TG destination fully qualified node name,
          and TG number."
      INDEX
             {appnNnTgFRFrsn,
              appnNnTgFROwner,
              appnNnTgFRDest,
              appnNnTgFRNum}
      ::= { appnNnTgTopologyFRTable 1 }

AppnNnTgTopologyFREntry ::= SEQUENCE {

      appnNnTgFRFrsn           Unsigned32,
      appnNnTgFROwner          SnaControlPointName,
      appnNnTgFRDest           SnaControlPointName,
      appnNnTgFRNum            INTEGER,
      appnNnTgFREntryTimeLeft  AppnTopologyEntryTimeLeft,
      appnNnTgFRDestVirtual    TruthValue,
      appnNnTgFRDlcData        AppnTgDlcData,
      appnNnTgFRRsn            Unsigned32,
      appnNnTgFROperational    TruthValue,
      appnNnTgFRQuiescing      TruthValue,
      appnNnTgFRCpCpSession    INTEGER,
      appnNnTgFREffCap         AppnTgEffectiveCapacity,
      appnNnTgFRConnCost       INTEGER,
      appnNnTgFRByteCost       INTEGER,
      appnNnTgFRSecurity       AppnTgSecurity,
      appnNnTgFRDelay          AppnTgDelay,
      appnNnTgFRUsr1           INTEGER,
      appnNnTgFRUsr2           INTEGER,
      appnNnTgFRUsr3           INTEGER,
      appnNnTgFRGarbageCollect TruthValue,
      appnNnTgFRSubareaNum     Unsigned32,
      appnNnTgFRHprSup         TruthValue,
      appnNnTgFRDestHprTrans   TruthValue,
      appnNnTgFRTypeIndicator  INTEGER,
      appnNnTgFRIntersubnet    TruthValue,
      appnNnTgFRMltgLinkType   TruthValue,
      appnNnTgFRBranchTg       TruthValue
}

appnNnTgFRFrsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Flow reduction sequence numbers (FRSNs) are associated with
          Topology Database Updates (TDUs) and are unique only within
          each APPN network node.  A TDU can be associated with multiple
          APPN resources.  This FRSN indicates the last time this
          resource was updated at this node."
      ::= { appnNnTgTopologyFREntry 1 }

appnNnTgFROwner OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for the originating node for
          this TG.  This is the same name specified in the node table."
      ::= { appnNnTgTopologyFREntry 2 }

appnNnTgFRDest OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned fully qualified network name for the
          destination node for this TG."
      ::= { appnNnTgTopologyFREntry 3 }

appnNnTgFRNum OBJECT-TYPE
      SYNTAX INTEGER  (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Number associated with this transmission group.  Range is
          0-255."
      ::= { appnNnTgTopologyFREntry 4 }

appnNnTgFREntryTimeLeft OBJECT-TYPE
      SYNTAX AppnTopologyEntryTimeLeft
      UNITS "days"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of days before deletion of this network node TG entry
          if it is not operational or has an odd (inconsistent) RSN."
      ::= { appnNnTgTopologyFREntry 5 }

appnNnTgFRDestVirtual OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the destination node is a virtual routing
          node."
      ::= { appnNnTgTopologyFREntry 6 }

appnNnTgFRDlcData OBJECT-TYPE
      SYNTAX AppnTgDlcData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "DLC-specific data related to a link connection network."
      ::= { appnNnTgTopologyFREntry 7 }

appnNnTgFRRsn OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current owning node's resource sequence number for this
          resource.  An odd number indicates that information about the
          resource is inconsistent.

          This object corresponds to the numeric value in cv47, bytes
          2-5"
      ::= { appnNnTgTopologyFREntry 8 }

appnNnTgFROperational OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is operational.

          This object corresponds to cv47, byte 6, bit 0."
      ::= { appnNnTgTopologyFREntry 9 }

appnNnTgFRQuiescing OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is quiescing.

          If the TG owner is either an extended border node or a
          branch-aware network node (indicated, respectively, by
          the appnNnNodeFRExteBorderSup and appnNnNodeFRBranchAwareness
          objects in the corresponding appnNnTopologyFREntry), then
          this indicator is artificially set to TRUE in the APPN

          topology database, to remove the TG from other nodes'
          route calculations.  A management application can
          determine whether the TG is actually quiescing by
          examining its appnLocalTgQuiescing object at the TG owner.

          This object corresponds to cv47, byte 6, bit 2."
      ::= { appnNnTgTopologyFREntry 10 }

appnNnTgFRCpCpSession OBJECT-TYPE
      SYNTAX INTEGER {
                     supportedUnknownStatus(1),
                     supportedActive(2),
                     notSupported(3),
                     supportedNotActive(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether CP-CP sessions are supported on this TG, and
          whether the TG owner's contention-winner session is active on
          this TG.  Some nodes in the network are not able to
          differentiate support and status of CP-CP sessions, and thus
          may report the 'supportedUnknownStatus' value.

          This object corresponds to cv47, byte 6, bits 3-4."
      ::= { appnNnTgTopologyFREntry 11 }

appnNnTgFREffCap OBJECT-TYPE
      SYNTAX AppnTgEffectiveCapacity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Effective capacity for this TG."
      ::= { appnNnTgTopologyFREntry 12 }

appnNnTgFRConnCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Cost per connect time.

          This is an administratively assigned value representing the
          relative cost per unit of time to use this TG.  Range is from

          0, which means no cost, to 255, which indicates maximum cost.

          This object corresponds to cv47, byte 13."
      ::= { appnNnTgTopologyFREntry 13 }

appnNnTgFRByteCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Cost per byte transmitted.

          This is an administratively assigned value representing the
          relative cost of transmitting a byte over this TG.  Range is
          from 0, which means no cost, to 255, which indicates maximum
          cost.

          This object corresponds to cv47, byte 14."
      ::= { appnNnTgTopologyFREntry 14 }

appnNnTgFRSecurity OBJECT-TYPE
      SYNTAX AppnTgSecurity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned security level of this TG.

          This object corresponds to cv47, byte 16."
      ::= { appnNnTgTopologyFREntry 15 }

appnNnTgFRDelay OBJECT-TYPE
      SYNTAX AppnTgDelay
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned delay associated with this TG.

          This object corresponds to cv47, byte 17."
      ::= { appnNnTgTopologyFREntry 16 }

appnNnTgFRUsr1 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "First user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG.

          This object corresponds to cv47, byte 19."
      ::= { appnNnTgTopologyFREntry 17 }

appnNnTgFRUsr2 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Second user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG.

          This object corresponds to cv47, byte 20."
      ::= { appnNnTgTopologyFREntry 18 }

appnNnTgFRUsr3 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Third user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG.

          This object corresponds to cv47, byte 21."
      ::= { appnNnTgTopologyFREntry 19 }

appnNnTgFRGarbageCollect OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the TG has been marked for garbage
          collection (deletion from the topology database) upon the next
          garbage collection cycle.

          This object corresponds to cv47, byte 6, bit 1."
      ::= { appnNnTgTopologyFREntry 20 }

appnNnTgFRSubareaNum OBJECT-TYPE
      SYNTAX Unsigned32
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The subarea number associated with this TG.

          This object corresponds to cv4680, bytes m+2 through m+5."
      ::= { appnNnTgTopologyFREntry 21 }

appnNnTgFRHprSup OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether high performance routing (HPR)
          is supported over this TG.

          This object corresponds to cv4680, byte m+1, bit 2."
      ::= { appnNnTgTopologyFREntry 22 }

appnNnTgFRDestHprTrans OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the destination node supports
          high performance routing (HPR) transport tower.

          This object corresponds to cv4680, byte m+1, bit 7."
      ::= { appnNnTgTopologyFREntry 23 }

appnNnTgFRTypeIndicator OBJECT-TYPE
      SYNTAX INTEGER {
                      unknown(1),
                      appnOrBfTg(2),
                      interchangeTg(3),
                      virtualRouteTg(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates the type of the TG.

          This object corresponds to cv4680, byte m+1, bits 3-4."
      ::= { appnNnTgTopologyFREntry 24 }

appnNnTgFRIntersubnet OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is an intersubnet TG,
          which defines a border between subnetworks.

          This object corresponds to cv4680, byte m+1, bit 5."
      ::= { appnNnTgTopologyFREntry 25 }

appnNnTgFRMltgLinkType OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object indicates whether the transmission group is a
          multi-link TG.  A TG that has been brought up as a multi-link
          TG is reported as one, even if it currently has only one link
          active.

          This object corresponds to cv47, byte 6, bit 5."
      ::= { appnNnTgTopologyFREntry 26 }

appnNnTgFRBranchTg OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is a branch TG
          (equivalently, whether the destination of the transmission
          group is a branch network node).

          This object corresponds to cv4680, byte m+1, bit 1."
      ::= { appnNnTgTopologyFREntry 27 }

-- ************** The APPN Local Topology Group ************************
-- This MIB Group represents the local topology maintained in
-- APPN network nodes, end nodes, and branch network nodes.  It consists
-- of two tables:
--    - a table containing information about all of the TGs owned
--      by this node, which is implemented by all node types.
--    - a table containing all of the information known to this node
--      about the TGs owned by its end nodes, which is implemented only
--      by network nodes.

appnLocalTopology     OBJECT IDENTIFIER ::= { appnObjects 3 }

-- APPN Local Transmission Group (TG) table
-- This table describes the TGs associated with this node only.

appnLocalTgTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnLocalTgEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "TG Table describes all of the TGs owned by this node.  The TG
          destination can be a virtual node, network node, LEN node, or
          end node."
      ::= { appnLocalTopology 1 }

appnLocalTgEntry OBJECT-TYPE
      SYNTAX AppnLocalTgEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the destination CpName and the TG
          number."
      INDEX
             {appnLocalTgDest,
              appnLocalTgNum}
      ::= { appnLocalTgTable 1 }

AppnLocalTgEntry ::= SEQUENCE {

      appnLocalTgDest             SnaControlPointName,
      appnLocalTgNum              INTEGER,
      appnLocalTgDestVirtual      TruthValue,
      appnLocalTgDlcData          AppnTgDlcData,
      appnLocalTgPortName         DisplayString,
      appnLocalTgQuiescing        TruthValue,
      appnLocalTgOperational      TruthValue,
      appnLocalTgCpCpSession      INTEGER,
      appnLocalTgEffCap           AppnTgEffectiveCapacity,
      appnLocalTgConnCost         INTEGER,
      appnLocalTgByteCost         INTEGER,
      appnLocalTgSecurity         AppnTgSecurity,
      appnLocalTgDelay            AppnTgDelay,
      appnLocalTgUsr1             INTEGER,
      appnLocalTgUsr2             INTEGER,
      appnLocalTgUsr3             INTEGER,
      appnLocalTgHprSup           INTEGER,
      appnLocalTgIntersubnet      TruthValue,
      appnLocalTgMltgLinkType     TruthValue,
      appnLocalTgBranchLinkType   INTEGER
                     }

appnLocalTgDest OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name of the destination node for
          this TG.  This is the fully qualified name of a network node,
          end node, LEN node, or virtual routing node."
      ::= { appnLocalTgEntry 1 }

appnLocalTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Number associated with this transmission group."
      ::= { appnLocalTgEntry 2 }

appnLocalTgDestVirtual OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the destination node for this TG is a
          virtual routing node."
      ::= { appnLocalTgEntry 3 }

appnLocalTgDlcData OBJECT-TYPE
      SYNTAX AppnTgDlcData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "DLC-specific data related to a link connection network."
      ::= { appnLocalTgEntry 4 }

appnLocalTgPortName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0..10))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned name for the local port associated
          with this TG.  A zero-length string indicates that this value
          is unknown."
      ::= { appnLocalTgEntry 5 }

appnLocalTgQuiescing OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is quiescing."
      ::= { appnLocalTgEntry 6 }

appnLocalTgOperational OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is operational."
      ::= { appnLocalTgEntry 7 }

appnLocalTgCpCpSession OBJECT-TYPE
      SYNTAX INTEGER {
                     supportedUnknownStatus(1),
                     supportedActive(2),
                     notSupported(3),
                     supportedNotActive(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether CP-CP sessions are supported on this TG, and
          whether the TG owner's contention-winner session is active on
          this TG.  Some nodes in the network are not able to
          differentiate support and status of CP-CP sessions, and thus
          may report the 'supportedUnknownStatus' value."
      ::= { appnLocalTgEntry 8 }

appnLocalTgEffCap OBJECT-TYPE
      SYNTAX AppnTgEffectiveCapacity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Effective capacity for this TG."
      ::= { appnLocalTgEntry 9 }

appnLocalTgConnCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Cost per connect time:  a value representing the relative cost
          per unit of time to use the TG.  Range is from 0, which means
          no cost, to 255."
      ::= { appnLocalTgEntry 10 }

appnLocalTgByteCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Relative cost of transmitting a byte over this link.
          Range is from 0 (lowest cost) to 255."
      ::= { appnLocalTgEntry 11 }

appnLocalTgSecurity OBJECT-TYPE
      SYNTAX AppnTgSecurity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned security level of this TG."
      ::= { appnLocalTgEntry 12 }

appnLocalTgDelay OBJECT-TYPE
      SYNTAX AppnTgDelay
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned delay associated with this TG."
      ::= { appnLocalTgEntry 13 }

appnLocalTgUsr1 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "First user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalTgEntry 14 }

appnLocalTgUsr2 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Second user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalTgEntry 15 }

appnLocalTgUsr3 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Third user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalTgEntry 16 }

appnLocalTgHprSup OBJECT-TYPE
      SYNTAX INTEGER {
                 noHprSupport(1),
                 hprBaseOnly(2),
                 rtpTower(3),
                 controlFlowsOverRtpTower(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates the level of high performance routing (HPR) support
          over this TG :

             noHprSupport(1)             - no HPR support
             hprBaseOnly(2)              - HPR base (option set 1400)
                                           supported
             rtpTower(3)                 - HPR base and RTP tower
                                           (option set 1401) supported
             controlFlowsOverRtpTower(4) - HPR base, RTP tower, and
                                           control flows over RTP
                                           (option set 1402) supported"
      ::= { appnLocalTgEntry 17 }

appnLocalTgIntersubnet OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is an intersubnet TG,
          which defines a border between subnetworks."
      ::= { appnLocalTgEntry 18 }

appnLocalTgMltgLinkType OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object indicates whether the transmission group is a
          multi-link TG.  A TG that has been brought up as a multi-link
          TG is reported as one, even if it currently has only one link
          active."
      ::= { appnLocalTgEntry 19 }

appnLocalTgBranchLinkType OBJECT-TYPE
      SYNTAX INTEGER {
                     other(1),
                     uplink(2),
                     downlink(3),
                     downlinkToBranchNetworkNode(4),
                     none(5),
                     unknown(255)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Branch link type of this TG:
             other(1)             = the agent has determined the TG's
                                    branch link type to be a value other
                                    than branch uplink or branch
                                    downlink.  This is the value used
                                    for a connection network TG owned by
                                    a branch network node.
             uplink(2)            = the TG is a branch uplink.
             downlink(3)          = the TG is a branch downlink to an
                                    end node.
             downlinkToBranchNetworkNode(4) = the TG is a branch
                                    downlink to a cascaded branch

                                    network node.
             none(5)              = the TG is not a branch TG.
             unknown(255)         = the agent cannot determine the
                                    branch link type of the TG."
      ::= { appnLocalTgEntry 20 }

-- APPN Local End Node Transmission Group (TG) table
-- This table describes the TGs associated with all of the end nodes
-- known to this node.

appnLocalEnTgTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnLocalEnTgEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table describing all of the TGs owned by the end nodes known
          to this node via TG registration.  This node does not represent
          its own view of the TG on behalf of the partner node in this
          table.  The TG destination can be a virtual routing node,
          network node, or end node."
      ::= { appnLocalTopology 2 }

appnLocalEnTgEntry OBJECT-TYPE
      SYNTAX AppnLocalEnTgEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table requires multiple indexes to uniquely identify each
          TG.  They are originating CPname, destination CPname, and the
          TG number."
      INDEX
             {appnLocalEnTgOrigin,
              appnLocalEnTgDest,
              appnLocalEnTgNum}
      ::= { appnLocalEnTgTable 1 }

AppnLocalEnTgEntry ::= SEQUENCE {
      appnLocalEnTgOrigin        SnaControlPointName,
      appnLocalEnTgDest          SnaControlPointName,
      appnLocalEnTgNum           INTEGER,
      appnLocalEnTgEntryTimeLeft AppnTopologyEntryTimeLeft,
      appnLocalEnTgDestVirtual   TruthValue,
      appnLocalEnTgDlcData       AppnTgDlcData,
      appnLocalEnTgOperational   TruthValue,
      appnLocalEnTgCpCpSession   INTEGER,
      appnLocalEnTgEffCap        AppnTgEffectiveCapacity,
      appnLocalEnTgConnCost      INTEGER,
      appnLocalEnTgByteCost      INTEGER,
      appnLocalEnTgSecurity      AppnTgSecurity,
      appnLocalEnTgDelay         AppnTgDelay,
      appnLocalEnTgUsr1          INTEGER,
      appnLocalEnTgUsr2          INTEGER,
      appnLocalEnTgUsr3          INTEGER,
      appnLocalEnTgMltgLinkType  TruthValue
                     }

appnLocalEnTgOrigin OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name of the origin node for this
          TG.  This is a fully qualified network name."
      ::= { appnLocalEnTgEntry 1 }

appnLocalEnTgDest OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name of the destination node for
          this TG.  This is the fully qualified name of a network node,
          end node, LEN node, or virtual routing node."
      ::= { appnLocalEnTgEntry 2 }

appnLocalEnTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Number associated with this transmission group."
      ::= { appnLocalEnTgEntry 3 }

appnLocalEnTgEntryTimeLeft OBJECT-TYPE
      SYNTAX AppnTopologyEntryTimeLeft
      UNITS "days"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of days before deletion of this end node TG entry."
      ::= { appnLocalEnTgEntry 4 }

appnLocalEnTgDestVirtual OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the destination node is a virtual routing
          node."
      ::= { appnLocalEnTgEntry 5 }

appnLocalEnTgDlcData OBJECT-TYPE
      SYNTAX AppnTgDlcData
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "DLC-specific data related to a link connection network."
      ::= { appnLocalEnTgEntry 6 }

appnLocalEnTgOperational OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether the transmission group is operational."
      ::= { appnLocalEnTgEntry 7 }

appnLocalEnTgCpCpSession OBJECT-TYPE
      SYNTAX INTEGER {
                     supportedUnknownStatus(1),
                     supportedActive(2),
                     notSupported(3),
                     supportedNotActive(4)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether CP-CP sessions are supported on this TG, and
          whether the TG owner's contention-winner session is active on
          this TG.  Some nodes in the network are not able to

          differentiate support and status of CP-CP sessions, and thus
          may report the 'supportedUnknownStatus' value."
      ::= { appnLocalEnTgEntry 8 }

appnLocalEnTgEffCap OBJECT-TYPE
      SYNTAX AppnTgEffectiveCapacity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Effective capacity for this TG."
      ::= { appnLocalEnTgEntry 9 }

appnLocalEnTgConnCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Cost per connect time:  a value representing the relative cost
          per unit of time to use the TG.  Range is from 0, which means
          no cost, to 255."
      ::= { appnLocalEnTgEntry 10 }

appnLocalEnTgByteCost OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Relative cost of transmitting a byte over this link.
          Range is from 0, which means no cost, to 255."
      ::= { appnLocalEnTgEntry 11 }

appnLocalEnTgSecurity OBJECT-TYPE
      SYNTAX AppnTgSecurity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned security level of this TG."
      ::= { appnLocalEnTgEntry 12 }

appnLocalEnTgDelay OBJECT-TYPE
      SYNTAX AppnTgDelay
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
            "Administratively assigned delay associated with this TG."
      ::= { appnLocalEnTgEntry 13 }

appnLocalEnTgUsr1 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "First user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalEnTgEntry 14 }

appnLocalEnTgUsr2 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Second user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalEnTgEntry 15 }

appnLocalEnTgUsr3 OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Third user-defined TG characteristic for this TG.  This is
          an administratively assigned value associated with the TG."
      ::= { appnLocalEnTgEntry 16 }

appnLocalEnTgMltgLinkType OBJECT-TYPE
      SYNTAX TruthValue
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "This object indicates whether the transmission group is a
          multi-link TG.  A TG that has been brought up as a multi-link
          TG is reported as one, even if it currently has only one link
          active."
      ::= { appnLocalEnTgEntry 17 }

-- ************** The APPN Directory Group *****************************

appnDir               OBJECT IDENTIFIER ::= { appnObjects 4 }
appnDirPerf  OBJECT IDENTIFIER ::= { appnDir 1 }

-- The APPN Directory Group

-- The APPN Directory Database

-- Each APPN network node and branch network node maintains directories
-- containing information on which LUs (applications) are available and
-- where they are located.  LUs can be located in an APPN network node,
-- in any of its attached end nodes or branch network nodes, or in any
-- of the nodes below one of its attached branch network nodes.

appnDirMaxCaches OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "directory entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum number of cache entries allowed.  This is an
          administratively assigned value."
      ::= { appnDirPerf 1 }

appnDirCurCaches OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "directory entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current number of cache entries."
      ::= { appnDirPerf 2 }

appnDirCurHomeEntries OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "directory entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current number of home entries."
      ::= { appnDirPerf 3 }

appnDirRegEntries OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "directory entries"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current number of registered entries."
      ::= { appnDirPerf 4 }

appnDirInLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of directed Locates received since the node was last
          reinitialized."
      ::= { appnDirPerf 5 }

appnDirInBcastLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of broadcast Locates received since the node was last
          reinitialized."
      ::= { appnDirPerf 6 }

appnDirOutLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of directed Locates sent since the node was last
          reinitialized."
      ::= { appnDirPerf 7 }

appnDirOutBcastLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of broadcast Locates sent since the node was last
          reinitialized."
      ::= { appnDirPerf 8 }

appnDirNotFoundLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of directed Locates returned with a 'not found' since
          the node was last reinitialized."
      ::= { appnDirPerf 9 }

appnDirNotFoundBcastLocates OBJECT-TYPE
      SYNTAX AppnNodeCounter
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of broadcast Locates returned with a 'not found' since
          the node was last reinitialized."
      ::= { appnDirPerf 10 }

appnDirLocateOutstands OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "Locate messages"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Current number of outstanding Locates, both directed and
          broadcast.  This value varies.  A value of zero indicates
          that no Locates are unanswered."
      ::= { appnDirPerf 11 }

--APPN Directory table

-- This table contains information about all known LUs.

appnDirTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnDirEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table containing information about all known LUs."
      ::= { appnDir 2 }

appnDirEntry OBJECT-TYPE
      SYNTAX AppnDirEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the LU name."
      INDEX
             {appnDirLuName}
      ::= { appnDirTable 1 }

AppnDirEntry ::= SEQUENCE {
      appnDirLuName                   DisplayString,
      appnDirNnServerName             SnaControlPointName,
      appnDirLuOwnerName              SnaControlPointName,
      appnDirLuLocation               INTEGER,
      appnDirType                     INTEGER,
      appnDirApparentLuOwnerName      DisplayString
                     }
appnDirLuName OBJECT-TYPE
      SYNTAX DisplayString  (SIZE (1..17))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Fully qualified network LU name in the domain of the
           serving network node.  Entries take one of three forms:

              - Explicit entries do not contain the character '*'.
              - Partial wildcard entries have the form 'ccc*', where
                'ccc' represents one to sixteen characters in a
                legal SNA LuName.
              - A full wildcard entry consists of the single
                character '*'"
      ::= { appnDirEntry 1 }

appnDirNnServerName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Fully qualified control point (CP) name of the network node
          server.  For unassociated end node entries, a zero-length
          string is returned."
      ::= { appnDirEntry 2 }

appnDirLuOwnerName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Fully qualified CP name of the node at which the LU is
          located.  This name is the same as the serving NN name when
          the LU is located at a network node.  It is also the same as
          the fully qualified LU name when this is the control point
          LU for this node."
      ::= { appnDirEntry 3 }

appnDirLuLocation OBJECT-TYPE
      SYNTAX INTEGER {
                     local(1),     --Local
                     domain(2),    --Domain
                     xdomain(3)    --Cross Domain

                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Specifies the location of the LU with respect to the local
          node."
      ::= { appnDirEntry 4 }

appnDirType OBJECT-TYPE
      SYNTAX INTEGER {
                     home(1),      --defined as home entry
                     cache(2),     --learned over time
                     registered(3) --registered by end node
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Directory types are:
            1 - Home
                  The LU is in the domain of the local node, and the LU
                  information has been configured at the local node.

            2 - Cache
                  The LU has previously been located by a broadcast
                  search, and the location information has been saved.

            3 - Registered
                  The LU is at an end node that is in the domain
                  of the local network node.  Registered entries
                  are registered by the served end node."
      ::= { appnDirEntry 5 }

appnDirApparentLuOwnerName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0 | 3..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Fully qualified CP name of the node at which the LU appears to
          be located.  This object and the appnDirLuOwnerName object are
          related as follows:

          Implementations that support this object save in their
          directory database information about an LU's owning control
          point that was communicated in two control vectors:

               -  an Associated Resource Entry (X'3C') CV with resource
                  type X'00F4' (ENCP)

               -  a Real Owning Control Point (X'4A') CV.

          The X'4A' CV is created by a branch network node to preserve
          the name of the real owning control point for an LU below the
          branch network node, before it overwrites this name with its
          own name in the X'3C' CV.  The X'4A' CV is not present for LUs
          that are not below branch network nodes.

          If the information a node has about an LU's owning CP came only
          in a X'3C' CV, then the name from the X'3C' is returned in the
          appnDirLuOwnerName object, and a null string is returned in
          this object.

          If the information a node has about an LU's owning CP came in
          both X'3C' and X'4A' CVs, then the name from the X'4A' is
          returned in the appnDirLuOwnerName object, and the name from
          the X'3C' (which will be the branch network node's name) is
          returned in this object."
      ::= { appnDirEntry 6 }

-- ************** The APPN Class of Service Group **********************

appnCos               OBJECT IDENTIFIER ::= { appnObjects 5 }

-- The APPN Class of Service (COS)

-- Class of Service is a means of expressing the quality of routes and
-- the transmission priority of traffic that flows on these routes.
-- The quality of routes is specified by two tables, a COS weight table
-- for TGs and a COS weight table for nodes.  Values in these COS tables
-- are administratively assigned at each APPN node, with seven default
-- tables specified by the APPN architecture.
-- *********************************************************************

appnCosModeTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnCosModeEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table representing all of the defined mode names for this
          node.  The table contains the matching COS name for each
          mode name."
      ::= { appnCos 1 }

appnCosModeEntry OBJECT-TYPE
      SYNTAX AppnCosModeEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table is indexed by the mode name."
      INDEX
             {appnCosModeName}
      ::= { appnCosModeTable 1 }

AppnCosModeEntry ::= SEQUENCE {
      appnCosModeName     SnaModeName,
      appnCosModeCosName  SnaClassOfServiceName
                     }

appnCosModeName OBJECT-TYPE
      SYNTAX SnaModeName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this mode."
      ::= { appnCosModeEntry 1 }

appnCosModeCosName OBJECT-TYPE
      SYNTAX SnaClassOfServiceName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this class of service."
      ::= { appnCosModeEntry 2 }

-- *********************************************************************
appnCosNameTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnCosNameEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table mapping all of the defined class-of-service names for
          this node to their network transmission priorities."
      ::= { appnCos 2 }

appnCosNameEntry OBJECT-TYPE
      SYNTAX AppnCosNameEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The COS name is the index to this table."
      INDEX
             {appnCosName}
      ::= { appnCosNameTable 1 }

AppnCosNameEntry ::= SEQUENCE {
      appnCosName            SnaClassOfServiceName,
      appnCosTransPriority   INTEGER
                     }

appnCosName OBJECT-TYPE
      SYNTAX SnaClassOfServiceName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this class of service."
      ::= { appnCosNameEntry 1 }

appnCosTransPriority OBJECT-TYPE
      SYNTAX INTEGER {
                     low(1),               --X'01'
                     medium(2),            --X'02'
                     high(3),              --X'03'
                     network(4)            --X'04'
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Transmission priority for this class of service:

              low(1)     - (X'01'):  low priority
              medium(2)  - (X'02'):  medium priority
              high(3)    - (X'03'):  high priority
              network(4) - (X'04'):  network priority"
      ::= { appnCosNameEntry 2 }

-- *********************************************************************
appnCosNodeRowTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnCosNodeRowEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains all node-row information for all classes
          of service defined in this node."
      ::= { appnCos 3 }

appnCosNodeRowEntry OBJECT-TYPE
      SYNTAX AppnCosNodeRowEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "A node entry for a given class of service."
      INDEX
             {appnCosNodeRowName,
              appnCosNodeRowIndex}
      ::= { appnCosNodeRowTable 1 }

AppnCosNodeRowEntry ::= SEQUENCE {
      appnCosNodeRowName                 SnaClassOfServiceName,
      appnCosNodeRowIndex                INTEGER,
      appnCosNodeRowWgt                  DisplayString,
      appnCosNodeRowResistMin            INTEGER,
      appnCosNodeRowResistMax            INTEGER,
      appnCosNodeRowMinCongestAllow      INTEGER,
      appnCosNodeRowMaxCongestAllow      INTEGER
                     }

appnCosNodeRowName OBJECT-TYPE
      SYNTAX SnaClassOfServiceName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this class of service."
      ::= { appnCosNodeRowEntry 1 }

appnCosNodeRowIndex OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Subindex under appnCosNodeRowName, corresponding to a row in
          the node table for the class of service identified in
          appnCosNodeRowName.

          For each class of service, this subindex orders rows in the
          appnCosNodeRowTable in the same order as that used for route
          calculation in the APPN node."
      ::= { appnCosNodeRowEntry 2 }

appnCosNodeRowWgt OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..64))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Weight to be associated with the nodes that fit the criteria
          specified by this node row.

          This value can either be a character representation of an
          integer, or a formula for calculating the weight."
      ::= { appnCosNodeRowEntry 3 }

appnCosNodeRowResistMin OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum route addition resistance value for this node.

          Range of values is 0-255.  The lower the value, the more
          desirable the node is for intermediate routing."
      ::= { appnCosNodeRowEntry 4 }

appnCosNodeRowResistMax OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum route addition resistance value for this node.
          Range of values is 0-255.  The lower the value, the more
          desirable the node is for intermediate routing."
      ::= { appnCosNodeRowEntry 5 }

appnCosNodeRowMinCongestAllow OBJECT-TYPE
      SYNTAX INTEGER (0..1)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether low congestion will be tolerated.  This
          object and appnCosNodeRowMaxCongestAllow together delineate a
          range of acceptable congestion states for a node.  For the
          ordered pair (minimum congestion allowed, maximum congestion
          allowed), the values are interpreted as follows:

           - (0,0):  only low congestion is acceptable
           - (0,1):  either low or high congestion is acceptable
           - (1,1):  only high congestion is acceptable.

          Note that the combination (1,0) is not defined, since it
          would identify a range whose lower bound was high congestion
          and whose upper bound was low congestion."
      ::= { appnCosNodeRowEntry 6 }

appnCosNodeRowMaxCongestAllow OBJECT-TYPE
      SYNTAX INTEGER (0..1)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether low congestion will be tolerated.  This
          object and appnCosNodeRowMinCongestAllow together delineate a
          range of acceptable congestion states for a node.  For the
          ordered pair (minimum congestion allowed, maximum congestion
          allowed), the values are interpreted as follows:

           - (0,0):  only low congestion is acceptable
           - (0,1):  either low or high congestion is acceptable
           - (1,1):  only high congestion is acceptable.

          Note that the combination (1,0) is not defined, since it
          would identify a range whose lower bound was high congestion
          and whose upper bound was low congestion."
      ::= { appnCosNodeRowEntry 7 }

-- *********************************************************************
appnCosTgRowTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnCosTgRowEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Table containing all the TG-row information for all classes of
          service defined in this node."
      ::= { appnCos 4 }

appnCosTgRowEntry OBJECT-TYPE
      SYNTAX AppnCosTgRowEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "A TG entry for a given class of service."
      INDEX
             {appnCosTgRowName,
              appnCosTgRowIndex}
      ::= { appnCosTgRowTable 1 }

AppnCosTgRowEntry ::= SEQUENCE {
      appnCosTgRowName                  SnaClassOfServiceName,
      appnCosTgRowIndex                 INTEGER,
      appnCosTgRowWgt                   DisplayString,
      appnCosTgRowEffCapMin             AppnTgEffectiveCapacity,
      appnCosTgRowEffCapMax             AppnTgEffectiveCapacity,
      appnCosTgRowConnCostMin           INTEGER,
      appnCosTgRowConnCostMax           INTEGER,
      appnCosTgRowByteCostMin           INTEGER,
      appnCosTgRowByteCostMax           INTEGER,
      appnCosTgRowSecurityMin           AppnTgSecurity,
      appnCosTgRowSecurityMax           AppnTgSecurity,
      appnCosTgRowDelayMin              AppnTgDelay,
      appnCosTgRowDelayMax              AppnTgDelay,
      appnCosTgRowUsr1Min               INTEGER,
      appnCosTgRowUsr1Max               INTEGER,
      appnCosTgRowUsr2Min               INTEGER,
      appnCosTgRowUsr2Max               INTEGER,
      appnCosTgRowUsr3Min               INTEGER,
      appnCosTgRowUsr3Max               INTEGER
                     }

appnCosTgRowName OBJECT-TYPE
      SYNTAX SnaClassOfServiceName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Administratively assigned name for this class of service."
      ::= { appnCosTgRowEntry 1 }

appnCosTgRowIndex OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Subindex under appnCosTgRowName, corresponding to a row in the
          TG table for the class of service identified in
          appnCosTgRowName.

          For each class of service, this subindex orders rows in the
          appnCosTgRowTable in the same order as that used for route
          calculation in the APPN node."
      ::= { appnCosTgRowEntry 2 }

appnCosTgRowWgt OBJECT-TYPE
      SYNTAX DisplayString (SIZE (1..64))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Weight to be associated with the TGs that fit the criteria
          specified by this TG row.

          This value can either be a character representation of an
          integer, or a formula for calculating the weight."
      ::= { appnCosTgRowEntry 3 }

appnCosTgRowEffCapMin OBJECT-TYPE
      SYNTAX AppnTgEffectiveCapacity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable capacity for this class of service."
      ::= { appnCosTgRowEntry 4 }

appnCosTgRowEffCapMax OBJECT-TYPE
      SYNTAX AppnTgEffectiveCapacity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable capacity for this class of service."
      ::= { appnCosTgRowEntry 5 }

appnCosTgRowConnCostMin OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable cost per connect time for this class of
          service.

          Cost per connect time:  a value representing the relative
          cost per unit of time to use this TG.  Range is from 0, which
          means no cost, to 255."
      ::= { appnCosTgRowEntry 6 }

appnCosTgRowConnCostMax OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable cost per connect time for this class of
          service.

          Cost per connect time:  a value representing the relative
          cost per unit of time to use this TG.  Range is from 0, which
          means no cost, to 255."
      ::= { appnCosTgRowEntry 7 }

appnCosTgRowByteCostMin OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable cost per byte transmitted for this class
          of service.

          Cost per byte transmitted:  a value representing the relative
          cost per unit of time to use this TG.  Range is from 0, which
          means no cost, to 255."
      ::= { appnCosTgRowEntry 8 }

appnCosTgRowByteCostMax OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable cost per byte transmitted for this class
          of service.

          Cost per byte transmitted:  a value representing the relative
          cost of transmitting a byte over this TG.  Range is from 0,
          which means no cost, to 255."
      ::= { appnCosTgRowEntry 9 }

appnCosTgRowSecurityMin OBJECT-TYPE
      SYNTAX AppnTgSecurity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable security for this class of service."
      ::= { appnCosTgRowEntry 10 }

appnCosTgRowSecurityMax OBJECT-TYPE
      SYNTAX AppnTgSecurity
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable security for this class of service."
      ::= { appnCosTgRowEntry 11 }

appnCosTgRowDelayMin OBJECT-TYPE
      SYNTAX AppnTgDelay
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable propagation delay for this class of

          service."
      ::= { appnCosTgRowEntry 12 }

appnCosTgRowDelayMax OBJECT-TYPE
      SYNTAX AppnTgDelay
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable propagation delay for this class of
          service."
      ::= { appnCosTgRowEntry 13 }

appnCosTgRowUsr1Min OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 14 }

appnCosTgRowUsr1Max OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 15 }

appnCosTgRowUsr2Min OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 16 }

appnCosTgRowUsr2Max OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 17 }

appnCosTgRowUsr3Min OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Minimum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 18 }

appnCosTgRowUsr3Max OBJECT-TYPE
      SYNTAX INTEGER (0..255)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Maximum acceptable value for this user-defined
          characteristic."
      ::= { appnCosTgRowEntry 19 }

-- *********************************************************************
-- Intermediate Session Information
-- *********************************************************************
appnSessIntermediate  OBJECT IDENTIFIER ::= { appnObjects 6 }

-- *********************************************************************
-- Intermediate Session Information Global Objects
-- *********************************************************************
-- The following simple objects allow the collection of intermediate
-- session Information to be started and stopped.
-- *********************************************************************
appnIsInGlobal OBJECT IDENTIFIER ::= { appnSessIntermediate 1 }

appnIsInGlobeCtrAdminStatus OBJECT-TYPE
      SYNTAX INTEGER {
                      notActive(1),
                      active(2),
                      ready(3)
                     }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "Object by which a Management Station can deactivate or
          activate capture of intermediate-session counts and names, by
          setting the value to notActive(1) or active(2), respectively.
          The value ready(3) is returned on GET operations until a SET
          has been processed; after that the value received on the most
          recent SET is returned.

          The counts referred to here are the eight objects in the
          AppnIsInTable, from appnIsInP2SFmdPius through
          appnIsInS2PNonFmdBytes.  The names are the four objects in this
          table, from appnIsInPriLuName through appnIsInCosName.

          Setting this object to the following values has the following
          effects:

              notActive(1)  stop collecting count data.  If a count
                            is queried, it returns the value 0.
                            Collection of names may, but need not be,
                            disabled.
              active(2)     start collecting count data.  If it is
                            supported, collection of names is enabled."
      ::= { appnIsInGlobal 1 }

appnIsInGlobeCtrOperStatus OBJECT-TYPE
      SYNTAX INTEGER {
                      notActive(1),
                      active(2)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Indicates whether or not the intermediate session counts
          are active.  The counts referred to here are the eight
          objects in the AppnIsInTable, from appnIsInP2SFmdPius through
          appnIsInS2PNonFmdBytes.  These eight counts are of type
          Unsigned32 rather than Counter32 because when this object
          enters the notActive state, either because a Management
          Station has set appnInInGlobeCtrAdminStatus to notActive or
          because of a locally-initiated transition, the counts are
          all reset to 0.

          The values for this object are:

              notActive(1):  collection of counts is not active; if it
                             is queried, a count returns the value 0.
              active(2):     collection of counts is active."
      ::= { appnIsInGlobal 2 }

appnIsInGlobeCtrStatusTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The time since the appnIsInGlobeCtrOperStatus object last
          changed, measured in hundredths of a second.  This time can be
          used to identify when this change occurred in relation to other
          events in the agent, such as the last time the APPN node was
          reinitialized."
      ::= { appnIsInGlobal 3 }

appnIsInGlobeRscv OBJECT-TYPE
      SYNTAX INTEGER {
                      notActive(1),
                      active(2)
                     }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "Indicates the current route selection control vector (RSCV)
          collection option in effect, and allows a Management Station to
          change the option.

          The values for this object are:

             notActive(1): collection of route selection control vectors
                           is not active.
             active(2):    collection of route selection control vectors
                           is active."
      ::= { appnIsInGlobal 4 }

appnIsInGlobeRscvTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The time since the appnIsInGlobeRscv object last changed,
          measured in hundredths of a second.  This time can be used to
          identify when this change occurred in relation to other events
          in the agent, such as the last time the APPN node was
          reinitialized."
      ::= { appnIsInGlobal 5 }

appnIsInGlobeActSess OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "sessions"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of currently active intermediate sessions."
      ::= { appnIsInGlobal 6 }

appnIsInGlobeHprBfActSess OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "sessions"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of currently active HPR intermediate sessions."
      ::= { appnIsInGlobal 7 }

-- *********************************************************************
-- Intermediate Session Information Table
-- *********************************************************************
-- This table contains information on intermediate sessions
-- which are currently active.
-- *********************************************************************
appnIsInTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnIsInEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Intermediate Session Information Table"
      ::= { appnSessIntermediate 2 }

appnIsInEntry OBJECT-TYPE
      SYNTAX AppnIsInEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Entry of Intermediate Session Information Table."
      INDEX
             { appnIsInFqCpName,
               appnIsInPcid }
      ::= { appnIsInTable 1 }

AppnIsInEntry ::= SEQUENCE {
      appnIsInFqCpName            SnaControlPointName,
      appnIsInPcid                OCTET STRING,
      appnIsInSessState           INTEGER,
      appnIsInPriLuName           DisplayString,
      appnIsInSecLuName           DisplayString,
      appnIsInModeName            SnaModeName,
      appnIsInCosName             SnaClassOfServiceName,
      appnIsInTransPriority       INTEGER,
      appnIsInSessType            INTEGER,
      appnIsInSessUpTime          TimeTicks,
      appnIsInCtrUpTime           TimeTicks,
      appnIsInP2SFmdPius          Unsigned32,
      appnIsInS2PFmdPius          Unsigned32,
      appnIsInP2SNonFmdPius       Unsigned32,
      appnIsInS2PNonFmdPius       Unsigned32,
      appnIsInP2SFmdBytes         Unsigned32,
      appnIsInS2PFmdBytes         Unsigned32,
      appnIsInP2SNonFmdBytes      Unsigned32,
      appnIsInS2PNonFmdBytes      Unsigned32,
      appnIsInPsAdjCpName         SnaControlPointName,
      appnIsInPsAdjTgNum          INTEGER,
      appnIsInPsSendMaxBtuSize    INTEGER,
      appnIsInPsSendPacingType    INTEGER,
      appnIsInPsSendRpc           Gauge32,
      appnIsInPsSendNxWndwSize    Gauge32,
      appnIsInPsRecvPacingType    INTEGER,
      appnIsInPsRecvRpc           Gauge32,
      appnIsInPsRecvNxWndwSize    Gauge32,
      appnIsInSsAdjCpName         SnaControlPointName,
      appnIsInSsAdjTgNum          INTEGER,
      appnIsInSsSendMaxBtuSize    INTEGER,
      appnIsInSsSendPacingType    INTEGER,
      appnIsInSsSendRpc           Gauge32,
      appnIsInSsSendNxWndwSize    Gauge32,
      appnIsInSsRecvPacingType    INTEGER,
      appnIsInSsRecvRpc           Gauge32,
      appnIsInSsRecvNxWndwSize    Gauge32,
      appnIsInRouteInfo           OCTET STRING,
      appnIsInRtpNceId            OCTET STRING,
      appnIsInRtpTcid             OCTET STRING
                     }

appnIsInFqCpName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The network-qualified control point name of the node at which
          the session and PCID originated.  For APPN and LEN nodes, this
          is either CP name of the APPN node at which the origin LU is
          located or the CP name of the NN serving the LEN node at which
          the origin LU is located.  For resources served by a dependent
          LU requester (DLUR), it is the name of the owning system
          services control point (SSCP)."
      ::= { appnIsInEntry 1 }

appnIsInPcid OBJECT-TYPE
      SYNTAX OCTET STRING  (SIZE (8))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The procedure correlation identifier (PCID) of a session.  It
          is an 8-byte value assigned by the primary LU."
      ::= { appnIsInEntry 2 }

appnIsInSessState OBJECT-TYPE
      SYNTAX INTEGER    {
                         inactive(1),
                         pendactive(2),
                         active(3),
                         pendinact(4)
                     }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "Indicates the state of the session:

              inactive(1)   - session is inactive
              pendactive(2) - session is pending active
              active(3)     - session is active
              pendinact(4)  - session is pending inactive

          Active sessions can be deactivated by setting this object
          to inactive(1)."
      ::= { appnIsInEntry 3 }

appnIsInPriLuName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary LU name of the session.  A zero-length
          string indicates that this name is not available."
      ::= { appnIsInEntry 4 }

appnIsInSecLuName OBJECT-TYPE
      SYNTAX DisplayString (SIZE (0..17))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary LU name of the session.  A zero-length
          string indicates that this name is not available."
      ::= { appnIsInEntry 5 }

appnIsInModeName OBJECT-TYPE
      SYNTAX SnaModeName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The mode name used for this session."
      ::= { appnIsInEntry 6 }

appnIsInCosName OBJECT-TYPE
      SYNTAX SnaClassOfServiceName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The Class of Service (COS) name used for this session."
      ::= { appnIsInEntry 7 }

appnIsInTransPriority OBJECT-TYPE
      SYNTAX INTEGER {
                     low(1),               --X'01'
                     medium(2),            --X'02'
                     high(3),              --X'03'
                     network(4)            --X'04'
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Transmission priority for this class of service.  Values are:

              low(1)     - (X'01'):  low priority
              medium(2)  - (X'02'):  medium priority
              high(3)    - (X'03'):  high priority
              network(4) - (X'04'):  network priority"
      ::= { appnIsInEntry 8 }

appnIsInSessType OBJECT-TYPE
      SYNTAX INTEGER {
                     unknown(1),
                     lu62(2),
                     lu0thru3(3),
                     lu62dlur(4),
                     lu0thru3dlur(5)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The type of intermediate session.  Defined values are

              unknown      The session type is not known.

              lu62         A session between LUs of type 6.2
                           (as indicated by the LU type in Bind)

              lu0thru3     A session between LUs of type 0, 1, 2, or 3
                           (as indicated by the LU type in Bind)

              lu62dlur     A session between LUs of type 6.2
                           (as indicated by the LU type in Bind).
                           One of the LUs is a dependent LU supported
                           by the dependent LU requester (DLUR)
                           function at this node.

              lu0thru3dlur A session between LUs of type 0, 1, 2, or 3
                           (as indicated by the LU type in Bind)
                           One of the LUs is a dependent LU supported
                           by the dependent LU requester (DLUR)
                           function at this node."
      ::= { appnIsInEntry 9 }

appnIsInSessUpTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Length of time the session has been active, measured in
          hundredths of a second."
      ::= { appnIsInEntry 10 }

appnIsInCtrUpTime OBJECT-TYPE
      SYNTAX TimeTicks
      UNITS "hundredths of a second"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Length of time the session counters have been active, measured
          in hundredths of a second."
      ::= { appnIsInEntry 11 }

appnIsInP2SFmdPius OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "path information units (PIUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of function management data (FMD) path information
          units (PIUs) sent from the Primary LU to the Secondary LU since
          the counts were last activated."
      ::= { appnIsInEntry 12 }

appnIsInS2PFmdPius OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "path information units (PIUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of FMD PIUs sent from the Secondary LU to the Primary
          LU since the counts were last activated."
      ::= { appnIsInEntry 13 }

appnIsInP2SNonFmdPius OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "path information units (PIUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of non-FMD PIUs sent from the Primary LU to the
          Secondary LU since the counts were last activated."
      ::= { appnIsInEntry 14 }

appnIsInS2PNonFmdPius OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "path information units (PIUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of non-FMD PIUs sent from the Secondary LU to the
          Primary LU since the counts were last activated."
      ::= { appnIsInEntry 15 }

appnIsInP2SFmdBytes OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of FMD bytes sent from the Primary LU to the Secondary
          LU since the counts were last activated."
      ::= { appnIsInEntry 16 }

appnIsInS2PFmdBytes OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of FMD bytes sent from the Secondary LU to the Primary
          LU since the counts were last activated."
      ::= { appnIsInEntry 17 }

appnIsInP2SNonFmdBytes OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of non-FMD bytes sent from the Primary LU to the
          Secondary LU since the counts were last activated."
      ::= { appnIsInEntry 18 }

appnIsInS2PNonFmdBytes OBJECT-TYPE
      SYNTAX Unsigned32
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "Number of non-FMD bytes sent from the Secondary LU to the
          Primary LU since the counts were last activated."
      ::= { appnIsInEntry 19 }

appnIsInPsAdjCpName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage adjacent CP name of this session.  If the
          session stage traverses an RTP connection, the CP name of the
          remote RTP endpoint is returned."
      ::= { appnIsInEntry 20 }

appnIsInPsAdjTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..300)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage adjacent transmission group (TG) number
          associated with this session.  If the session stage traverses
          an RTP connection, the value 256 is returned.

          Values between 257 and 300 are available for other possible
          TG 'stand-ins' that may be added to APPN in the future."
      ::= { appnIsInEntry 21 }

appnIsInPsSendMaxBtuSize OBJECT-TYPE
      SYNTAX INTEGER (99..32767)
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage maximum basic transmission unit (BTU) size
          for sending data."
      ::= { appnIsInEntry 22 }

appnIsInPsSendPacingType OBJECT-TYPE
      SYNTAX INTEGER {
                     fixed(1),
                     adaptive(2)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage type of pacing being used for sending data."
      ::= { appnIsInEntry 23 }

appnIsInPsSendRpc OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage send residual pace count.  This represents
          the primary stage number of message units (MUs) that can still
          be sent in the current session window."
      ::= { appnIsInEntry 24 }

appnIsInPsSendNxWndwSize OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage size of the next window which will be used
          to send data."
      ::= { appnIsInEntry 25 }

appnIsInPsRecvPacingType OBJECT-TYPE
      SYNTAX INTEGER {
                     fixed(1),
                     adaptive(2)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage type of pacing being used for receiving
          data."
      ::= { appnIsInEntry 26 }

appnIsInPsRecvRpc OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage receive residual pace count.  This
          represents the primary stage number of message units (MUs) that
          can still be received in the current session window."
      ::= { appnIsInEntry 27 }

appnIsInPsRecvNxWndwSize OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The primary stage size of the next window which will be used
          to receive data."
      ::= { appnIsInEntry 28 }

appnIsInSsAdjCpName OBJECT-TYPE
      SYNTAX SnaControlPointName
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage adjacent CP name of this session.  If the
          session stage traverses an RTP connection, the CP name of the
          remote RTP endpoint is returned."
      ::= { appnIsInEntry 29 }

appnIsInSsAdjTgNum OBJECT-TYPE
      SYNTAX INTEGER (0..300)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage adjacent transmission group (TG) number
          associated with this session.  If the session stage traverses
          an RTP connection, the value 256 is returned.

          Values between 257 and 300 are available for other possible
          TG 'stand-ins' that may be added to APPN in the future."
      ::= { appnIsInEntry 30 }

appnIsInSsSendMaxBtuSize OBJECT-TYPE
      SYNTAX INTEGER (99..32767)
      UNITS "bytes"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage maximum basic transmission unit (BTU) size
          for sending data."
      ::= { appnIsInEntry 31 }

appnIsInSsSendPacingType OBJECT-TYPE
      SYNTAX INTEGER {
                     fixed(1),
                     adaptive(2)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage type of pacing being used for sending
          data."
      ::= { appnIsInEntry 32 }

appnIsInSsSendRpc OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage send residual pace count.  This represents
          the secondary stage number of message units (MUs) that can
          still be sent in the current session window."
      ::= { appnIsInEntry 33 }

appnIsInSsSendNxWndwSize OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage size of the next window which will be used
          to send data."
      ::= { appnIsInEntry 34 }

appnIsInSsRecvPacingType OBJECT-TYPE
      SYNTAX INTEGER {
                     fixed(1),
                     adaptive(2)
                     }
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage type of pacing being used for receiving
          data."
      ::= { appnIsInEntry 35 }

appnIsInSsRecvRpc OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage receive residual pace count.  This
          represents the secondary stage number of message units (MUs)
          that can still be received in the current session window."
      ::= { appnIsInEntry 36 }

appnIsInSsRecvNxWndwSize OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "message units (MUs)"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The secondary stage size of the next window which will be used
          to receive data."
      ::= { appnIsInEntry 37 }

appnIsInRouteInfo OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (0..255))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The route selection control vector (RSCV X'2B') used for this
          session.  It is present for APPN nodes; but is not present for
          LEN nodes.  The format of this vector is described in SNA
          Formats.  If no RSCV is available, a zero-length string is
          returned."
      ::= { appnIsInEntry 38 }

appnIsInRtpNceId OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (1..8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The HPR local Network Connection Endpoint of the session."
      ::= { appnIsInEntry 39 }

appnIsInRtpTcid OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (8))
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The RTP connection local TCID of the session."
      ::= { appnIsInEntry 40 }

-- *********************************************************************
-- Intermediate Session RTP Table
-- *********************************************************************
-- This table contains information on intermediate sessions that are
-- being transported on Rapid Transport Protocol (RTP) connections by
-- High Performance Routing (HPR).
-- *********************************************************************
appnIsRtpTable OBJECT-TYPE
      SYNTAX SEQUENCE OF AppnIsRtpEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "A table indicating how many ISR sessions are transported by
          each RTP connection."
      ::= { appnSessIntermediate 3 }

appnIsRtpEntry OBJECT-TYPE
      SYNTAX AppnIsRtpEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Entry of Intermediate Session RTP Table."
      INDEX
             { appnIsRtpNceId,
               appnIsRtpTcid }
      ::= { appnIsRtpTable 1 }

AppnIsRtpEntry ::= SEQUENCE {
      appnIsRtpNceId              OCTET STRING,
      appnIsRtpTcid               OCTET STRING,
      appnIsRtpSessions           Gauge32
                     }

appnIsRtpNceId OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (1..8))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The local Network Connection Endpoint of the RTP connection."
      ::= { appnIsRtpEntry  1 }

appnIsRtpTcid OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (8))
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The local TCID of the RTP connection."
      ::= { appnIsRtpEntry  2 }

appnIsRtpSessions OBJECT-TYPE
      SYNTAX Gauge32
      UNITS "sessions"
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
          "The number of intermediate sessions using this RTP
          connection."
      ::= { appnIsRtpEntry  3 }

-- *********************************************************************
  appnTraps               OBJECT IDENTIFIER ::= { appnMIB 2 }
-- *********************************************************************

alertTrap NOTIFICATION-TYPE
      OBJECTS  { alertIdNumber, affectedObject }
      STATUS current
      DESCRIPTION
          "This trap carries a 32-bit SNA Management Services (SNA/MS)
          Alert ID Number, as specified in SNA/MS Formats."
      ::= { appnTraps 1 }

alertIdNumber OBJECT-TYPE
      SYNTAX OCTET STRING (SIZE (4))
      MAX-ACCESS accessible-for-notify
      STATUS current
      DESCRIPTION
          "A 32-bit SNA Management Services (SNA/MS) Alert ID Number, as
          specified in SNA/MS Formats."
      ::= { appnTraps 2 }

affectedObject OBJECT-TYPE
      SYNTAX VariablePointer
      MAX-ACCESS accessible-for-notify
      STATUS current
      DESCRIPTION
          "The MIB object associated with the Alert condition, if there
          is an object associated with it.  If no associated object can
          be identified, the value 0.0 is passed in the trap."
      ::= { appnTraps 3 }

-- *********************************************************************
-- Conformance information
-- *********************************************************************

appnConformance       OBJECT IDENTIFIER ::= { appnMIB 3 }

appnCompliances       OBJECT IDENTIFIER ::= { appnConformance 1 }
appnGroups            OBJECT IDENTIFIER ::= { appnConformance 2 }

-- Compliance statements

-- appnCompliance  MODULE-COMPLIANCE (deprecated:  moved to end of module)

appnCompliance2  MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
            "The compliance statement for the SNMPv2 entities that
            implement the APPN MIB.

            In the descriptions for the conditionally mandatory groups that
            follow, the branch network node is treated as a third node type,
            parallel to network node and end node.  This is not how branch
            network nodes are treated in the base APPN architecture, but it
            increases clarity here to do it."
        MODULE  -- this module

--      Unconditionally mandatory groups

                MANDATORY-GROUPS  {
                        appnGeneralConfGroup2,
                        appnPortConfGroup,
                        appnLinkConfGroup2,
                        appnLocalTgConfGroup2,
                        appnDirTableConfGroup2
                 }

--      Conditionally mandatory groups
                GROUP  appnNnUniqueConfGroup
                DESCRIPTION
                    "The appnNnUniqueConfGroup is mandatory for
                    network nodes."

                GROUP  appnEnUniqueConfGroup
                DESCRIPTION
                    "The appnEnUniqueConfGroup is mandatory for end
                    nodes."

                GROUP  appnVrnConfGroup
                DESCRIPTION
                    "The appnVrnConfGroup is mandatory for network
                    nodes, end nodes, and branch network nodes that
                    implement virtual routing node support."

                GROUP  appnNnTopoConfGroup2
                DESCRIPTION
                    "The appnNnTopoConfGroup2 is mandatory for
                    network nodes."

                GROUP  appnLocalEnTopoConfGroup2
                DESCRIPTION
                    "The appnLocalEnTopoConfGroup2 is mandatory for
                    network nodes."

                GROUP  appnLocalDirPerfConfGroup
                DESCRIPTION
                    "The appnLocalDirPerfConfGroup is mandatory for
                    APPN network nodes, end nodes, and branch network
                    nodes."

                GROUP  appnCosConfGroup
                DESCRIPTION
                    "The appnCosConfGroup is mandatory for APPN
                    network nodes, end nodes, and branch network
                    nodes."

                GROUP  appnIntSessConfGroup
                DESCRIPTION
                    "The appnIntSessConfGroup is mandatory for
                    network nodes and branch network nodes."

                GROUP  appnHprBaseConfGroup
                DESCRIPTION
                    "The appnHprBaseConfGroup is mandatory for nodes
                    that implement the HPR base (APPN option set 1400)."
                GROUP  appnHprRtpConfGroup
                DESCRIPTION
                    "The appnHprRtpConfGroup is mandatory for nodes
                    that implement the HPR RTP tower (APPN option set
                    1401)."

                GROUP  appnHprCtrlFlowsRtpConfGroup
                DESCRIPTION
                    "The appnHprCtrlFlowsRtpConfGroup is mandatory for
                    nodes that implement the HPR Control Flows over
                    RTP tower (APPN option set 1402)."

                GROUP  appnHprBfConfGroup
                DESCRIPTION
                    "The appnHprBfConfGroup is mandatory for nodes
                    that implement the APPN/HPR boundary function."

                GROUP  appnTrapConfGroup
                DESCRIPTION
                    "Traps are optional for all nodes."

                GROUP  appnTrapNotifGroup
                DESCRIPTION
                    "Traps are optional for all nodes."

                GROUP  appnBrNnConfGroup
                DESCRIPTION
                    "The appnBrNnConfGroup is mandatory for branch
                    network nodes."
        ::= { appnCompliances 3 }
         -- { appnCompliances 2 } is used by the APPN-TRAP-MIB

-- Units of conformance
appnGeneralConfGroup2  OBJECT-GROUP
        OBJECTS  {
                 appnNodeCpName,
                 appnNodeId,
                 appnNodeType,
                 appnNodeUpTime,
                 appnNodeParallelTg,
                 appnNodeAdaptiveBindPacing,
                 appnNodeHprSupport,
                 appnNodeCounterDisconTime,
                 appnNodeLsCounterType,
                 appnNodeBrNn

                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN general information and capabilities."
        ::= { appnGroups 26 }
         -- { appnGroups 21 - 25 } are used by the APPN-TRAP-MIB

appnPortConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnPortCommand,
                 appnPortOperState,
                 appnPortDlcType,
                 appnPortPortType,
                 appnPortSIMRIM,
                 appnPortLsRole,
                 appnPortNegotLs,
                 appnPortDynamicLinkSupport,
                 appnPortMaxRcvBtuSize,
                 appnPortMaxIframeWindow,
                 appnPortDefLsGoodXids,
                 appnPortDefLsBadXids,
                 appnPortDynLsGoodXids,
                 appnPortDynLsBadXids,
                 appnPortSpecific,
                 appnPortDlcLocalAddr,
                 appnPortCounterDisconTime
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN port information."
        ::= { appnGroups 2 }

appnLinkConfGroup2  OBJECT-GROUP
        OBJECTS  {
                 appnLsCommand,
                 appnLsOperState,
                 appnLsPortName,
                 appnLsDlcType,
                 appnLsDynamic,
                 appnLsAdjCpName,
                 appnLsAdjNodeType,
                 appnLsTgNum,
                 appnLsLimResource,
                 appnLsActOnDemand,
                 appnLsMigration,
                 appnLsPartnerNodeId,
                 appnLsCpCpSessionSupport,
                 appnLsMaxSendBtuSize,
                 appnLsInXidBytes,
                 appnLsInMsgBytes,
                 appnLsInXidFrames,
                 appnLsInMsgFrames,
                 appnLsOutXidBytes,
                 appnLsOutMsgBytes,
                 appnLsOutXidFrames,
                 appnLsOutMsgFrames,
                 appnLsEchoRsps,
                 appnLsCurrentDelay,
                 appnLsMaxDelay,
                 appnLsMinDelay,
                 appnLsMaxDelayTime,
                 appnLsGoodXids,
                 appnLsBadXids,
                 appnLsSpecific,
                 appnLsActiveTime,
                 appnLsCurrentStateTime,
                 appnLsHprSup,
                 appnLsLocalAddr,
                 appnLsRemoteAddr,
                 appnLsRemoteLsName,
                 appnLsStatusTime,
                 appnLsStatusLsName,
                 appnLsStatusCpName,
                 appnLsStatusPartnerId,
                 appnLsStatusTgNum,
                 appnLsStatusGeneralSense,
                 appnLsStatusRetry,
                 appnLsStatusEndSense,
                 appnLsStatusXidLocalSense,
                 appnLsStatusXidRemoteSense,
                 appnLsStatusXidByteInError,
                 appnLsStatusXidBitInError,
                 appnLsStatusDlcType,
                 appnLsStatusLocalAddr,
                 appnLsStatusRemoteAddr,
                 appnLsCounterDisconTime,
                 appnLsMltgMember

                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN link information."
        ::= { appnGroups 27 }

appnLocalTgConfGroup2  OBJECT-GROUP
        OBJECTS  {
                 appnLocalTgDestVirtual,
                 appnLocalTgDlcData,
                 appnLocalTgPortName,
                 appnLocalTgQuiescing,
                 appnLocalTgOperational,
                 appnLocalTgCpCpSession,
                 appnLocalTgEffCap,
                 appnLocalTgConnCost,
                 appnLocalTgByteCost,
                 appnLocalTgSecurity,
                 appnLocalTgDelay,
                 appnLocalTgUsr1,
                 appnLocalTgUsr2,
                 appnLocalTgUsr3,
                 appnLocalTgHprSup,
                 appnLocalTgIntersubnet,
                 appnLocalTgMltgLinkType
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN local TG information."
        ::= { appnGroups 28 }

appnDirTableConfGroup2  OBJECT-GROUP
        OBJECTS  {
                 appnDirNnServerName,
                 appnDirLuOwnerName,
                 appnDirLuLocation,
                 appnDirType,
                 appnDirApparentLuOwnerName
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation of the
            APPN directory database."
        ::= { appnGroups 29 }

appnNnUniqueConfGroup  OBJECT-GROUP

        OBJECTS  {
                 appnNodeNnCentralDirectory,
                 appnNodeNnTreeCache,
                 appnNodeNnRouteAddResist,
                 appnNodeNnIsr,
                 appnNodeNnFrsn,
                 appnNodeNnPeriBorderSup,
                 appnNodeNnInterchangeSup,
                 appnNodeNnExteBorderSup,
                 appnNodeNnSafeStoreFreq,
                 appnNodeNnRsn,
                 appnNodeNnCongested,
                 appnNodeNnIsrDepleted,
                 appnNodeNnQuiescing,
                 appnNodeNnGateway
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing instrumentation unique
            to APPN network nodes."
        ::= { appnGroups 6 }

appnEnUniqueConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnNodeEnModeCosMap,
                 appnNodeEnNnServer,
                 appnNodeEnLuSearch
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing instrumentation for
            APPN end nodes.  Some of these objects also appear in the
            instrumentation for a branch network node."
        ::= { appnGroups 7 }

appnVrnConfGroup       OBJECT-GROUP
        OBJECTS  {
                 appnVrnPortName
                 }
        STATUS  current
        DESCRIPTION
            "An object providing the instrumentation for virtual
            routing node support in an APPN node."
        ::= { appnGroups 8 }

appnNnTopoConfGroup2    OBJECT-GROUP
        OBJECTS  {
                 appnNnTopoMaxNodes,
                 appnNnTopoCurNumNodes,
                 appnNnTopoNodePurges,
                 appnNnTopoTgPurges,
                 appnNnTopoTotalTduWars,
                 appnNnNodeFREntryTimeLeft,
                 appnNnNodeFRType,
                 appnNnNodeFRRsn,
                 appnNnNodeFRRouteAddResist,
                 appnNnNodeFRCongested,
                 appnNnNodeFRIsrDepleted,
                 appnNnNodeFRQuiescing,
                 appnNnNodeFRGateway,
                 appnNnNodeFRCentralDirectory,
                 appnNnNodeFRIsr,
                 appnNnNodeFRGarbageCollect,
                 appnNnNodeFRHprSupport,
                 appnNnNodeFRPeriBorderSup,
                 appnNnNodeFRInterchangeSup,
                 appnNnNodeFRExteBorderSup,
                 appnNnNodeFRBranchAwareness,
                 appnNnTgFREntryTimeLeft,
                 appnNnTgFRDestVirtual,
                 appnNnTgFRDlcData,
                 appnNnTgFRRsn,
                 appnNnTgFROperational,
                 appnNnTgFRQuiescing,
                 appnNnTgFRCpCpSession,
                 appnNnTgFREffCap,
                 appnNnTgFRConnCost,
                 appnNnTgFRByteCost,
                 appnNnTgFRSecurity,
                 appnNnTgFRDelay,
                 appnNnTgFRUsr1,
                 appnNnTgFRUsr2,
                 appnNnTgFRUsr3,
                 appnNnTgFRGarbageCollect,
                 appnNnTgFRSubareaNum,
                 appnNnTgFRHprSup,
                 appnNnTgFRDestHprTrans,
                 appnNnTgFRTypeIndicator,
                 appnNnTgFRIntersubnet,
                 appnNnTgFRMltgLinkType,
                 appnNnTgFRBranchTg
                 }
        STATUS  current
        DESCRIPTION
            "The appnNnTopoConfGroup is mandatory only for network
            nodes."
        ::= { appnGroups 30 }

appnLocalEnTopoConfGroup2   OBJECT-GROUP
        OBJECTS  {
                 appnLocalEnTgEntryTimeLeft,
                 appnLocalEnTgDestVirtual,
                 appnLocalEnTgDlcData,
                 appnLocalEnTgOperational,
                 appnLocalEnTgCpCpSession,
                 appnLocalEnTgEffCap,
                 appnLocalEnTgConnCost,
                 appnLocalEnTgByteCost,
                 appnLocalEnTgSecurity,
                 appnLocalEnTgDelay,
                 appnLocalEnTgUsr1,
                 appnLocalEnTgUsr2,
                 appnLocalEnTgUsr3,
                 appnLocalEnTgMltgLinkType
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing the instrumentation
            of the information that a network node possesses about
            the end nodes directly attached to it."
        ::= { appnGroups 31 }

appnLocalDirPerfConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnDirMaxCaches,
                 appnDirCurCaches,
                 appnDirCurHomeEntries,
                 appnDirRegEntries,
                 appnDirInLocates,
                 appnDirInBcastLocates,
                 appnDirOutLocates,
                 appnDirOutBcastLocates,
                 appnDirNotFoundLocates,
                 appnDirNotFoundBcastLocates,
                 appnDirLocateOutstands
                 }
        STATUS  current
        DESCRIPTION
            "The appnLocalDirPerfConfGroup is mandatory only for APPN
            network nodes and end nodes."
        ::= { appnGroups 11 }

appnCosConfGroup          OBJECT-GROUP
        OBJECTS  {

                 appnCosModeCosName,
                 appnCosTransPriority,
                 appnCosNodeRowWgt,
                 appnCosNodeRowResistMin,
                 appnCosNodeRowResistMax,
                 appnCosNodeRowMinCongestAllow,
                 appnCosNodeRowMaxCongestAllow,
                 appnCosTgRowWgt,
                 appnCosTgRowEffCapMin,
                 appnCosTgRowEffCapMax,
                 appnCosTgRowConnCostMin,
                 appnCosTgRowConnCostMax,
                 appnCosTgRowByteCostMin,
                 appnCosTgRowByteCostMax,
                 appnCosTgRowSecurityMin,
                 appnCosTgRowSecurityMax,
                 appnCosTgRowDelayMin,
                 appnCosTgRowDelayMax,
                 appnCosTgRowUsr1Min,
                 appnCosTgRowUsr1Max,
                 appnCosTgRowUsr2Min,
                 appnCosTgRowUsr2Max,
                 appnCosTgRowUsr3Min,
                 appnCosTgRowUsr3Max
                 }
        STATUS  current
        DESCRIPTION
            "The appnCosConfGroup is mandatory only for APPN network
            nodes and end nodes."
        ::= { appnGroups 12 }

appnIntSessConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnIsInGlobeCtrAdminStatus,
                 appnIsInGlobeCtrOperStatus,
                 appnIsInGlobeCtrStatusTime,
                 appnIsInGlobeRscv,
                 appnIsInGlobeRscvTime,
                 appnIsInGlobeActSess,
                 appnIsInSessState,
                 appnIsInPriLuName,
                 appnIsInSecLuName,
                 appnIsInModeName,
                 appnIsInCosName,
                 appnIsInTransPriority,
                 appnIsInSessType,
                 appnIsInSessUpTime,
                 appnIsInCtrUpTime,
                 appnIsInP2SFmdPius,
                 appnIsInS2PFmdPius,
                 appnIsInP2SNonFmdPius,
                 appnIsInS2PNonFmdPius,
                 appnIsInP2SFmdBytes,
                 appnIsInS2PFmdBytes,
                 appnIsInP2SNonFmdBytes,
                 appnIsInS2PNonFmdBytes,
                 appnIsInPsAdjCpName,
                 appnIsInPsAdjTgNum,
                 appnIsInPsSendMaxBtuSize,
                 appnIsInPsSendPacingType,
                 appnIsInPsSendRpc,
                 appnIsInPsSendNxWndwSize,
                 appnIsInPsRecvPacingType,
                 appnIsInPsRecvRpc,
                 appnIsInPsRecvNxWndwSize,
                 appnIsInSsAdjCpName,
                 appnIsInSsAdjTgNum,
                 appnIsInSsSendMaxBtuSize,
                 appnIsInSsSendPacingType,
                 appnIsInSsSendRpc,
                 appnIsInSsSendNxWndwSize,
                 appnIsInSsRecvPacingType,
                 appnIsInSsRecvRpc,
                 appnIsInSsRecvNxWndwSize,
                 appnIsInRouteInfo
                 }
        STATUS  current
        DESCRIPTION
            "The appnIntSessConfGroup is mandatory only for network
            nodes."
        ::= { appnGroups 13 }

appnHprBaseConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnNodeHprIntRteSetups,
                 appnNodeHprIntRteRejects,
                 appnLsErrRecoSup,
                 appnLsForAnrLabel,
                 appnLsRevAnrLabel
                 }
        STATUS  current
        DESCRIPTION
            "The appnHprBaseConfGroup is mandatory only for nodes that
            implement the HPR base (APPN option set 1400)."
        ::= { appnGroups 14 }

appnHprRtpConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnNodeMaxSessPerRtpConn,
                 appnNodeHprOrgRteSetups,
                 appnNodeHprOrgRteRejects,
                 appnNodeHprEndRteSetups,
                 appnNodeHprEndRteRejects,
                 appnLsBfNceId
                 }
        STATUS  current
        DESCRIPTION
            "The appnHprRtpConfGroup is mandatory only for nodes that
            implement the HPR RTP tower (APPN option set 1401)."
        ::= { appnGroups 15 }

appnHprCtrlFlowsRtpConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnLsCpCpNceId,
                 appnLsRouteNceId
                 }
        STATUS  current
        DESCRIPTION
            "The appnHprCtrlFlowsRtpConfGroup is mandatory only for nodes
            that implement the HPR Control Flows over RTP tower (APPN
            option set 1402)."
        ::= { appnGroups 16 }

appnHprBfConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnIsInGlobeHprBfActSess,
                 appnIsInRtpNceId,
                 appnIsInRtpTcid,
                 appnIsRtpSessions
                 }
        STATUS  current
        DESCRIPTION
            "The appnHprBfConfGroup is mandatory only for nodes that
            implement the APPN/HPR boundary function."
        ::= { appnGroups 17 }

appnTrapConfGroup    OBJECT-GROUP
        OBJECTS  {
                 alertIdNumber,
                 affectedObject
                 }
        STATUS  current
        DESCRIPTION
            "The appnTrapConfGroup is optional for all APPN nodes.  Nodes

            implementing this group shall also implement the
            appnTrapNotifGroup."
        ::= { appnGroups 18 }

appnTrapNotifGroup    NOTIFICATION-GROUP
        NOTIFICATIONS {
                      alertTrap
                      }
        STATUS  current
        DESCRIPTION
            "The appnTrapNotifGroup is optional for all APPN nodes.
            Nodes implementing this group shall also implement the
            appnTrapConfGroup."
        ::= { appnGroups 19 }

appnBrNnConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnNodeEnNnServer,
                 appnNodeEnLuSearch,
                 appnLocalTgBranchLinkType
                 }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing instrumentation for
            branch network nodes.  Some of these objects also appear
            in the instrumentation for an end node.

            Note:  A branch network node always returns endNode(2)
            as the value of the appnNodeType object from the
            appnGeneralConfGroup2 conformance group."
        ::= { appnGroups 20 }

-- *********************************************************************
-- Deprecated definitions
-- *********************************************************************

appnNodeMibVersion OBJECT-TYPE
      SYNTAX DisplayString  (SIZE (11))
      MAX-ACCESS read-only
      STATUS deprecated
      DESCRIPTION
          "The value of LAST-UPDATED from this module's MODULE-IDENTITY
          macro.  This object gives a Management Station an easy way of
          determining the level of the MIB supported by an agent.

          Since this object incorporates the Year 2000-unfriendly
          2-digit year specified in SMI for the LAST-UPDATED field, and

          since it was not found to be particularly useful, it has been
          deprecated.  No replacement object has been defined."
      ::= { appnGeneralInfoAndCaps 2 }

appnCompliance  MODULE-COMPLIANCE
        STATUS  deprecated
        DESCRIPTION
            "The compliance statement for the SNMPv2 entities that
            implement the APPN MIB.

            This is the compliance statement for the RFC 2155-level version
            of the APPN MIB.  It was deprecated as new objects were added
            to the MIB for MLTG, branch network node, and other extensions
            to the APPN architecture."
        MODULE  -- this module

--      Unconditionally mandatory groups
                MANDATORY-GROUPS  {
                        appnGeneralConfGroup,
                        appnPortConfGroup,
                        appnLinkConfGroup,
                        appnLocalTgConfGroup,
                        appnDirTableConfGroup
                 }

--      Conditionally mandatory groups
                GROUP  appnNnUniqueConfGroup
                DESCRIPTION
                    "The appnNnUniqueConfGroup is mandatory only for
                    network nodes."

                GROUP  appnEnUniqueConfGroup
                DESCRIPTION
                    "The appnEnUniqueConfGroup is mandatory only for end
                    nodes."

                GROUP  appnVrnConfGroup
                DESCRIPTION
                    "The appnVrnConfGroup is mandatory only for network
                    nodes and end nodes that implement virtual routing
                    node support."

                GROUP  appnNnTopoConfGroup
                DESCRIPTION
                    "The appnNnTopoConfGroup is mandatory only for
                    network nodes."

                GROUP  appnLocalEnTopoConfGroup
                DESCRIPTION
                    "The appnLocalEnTopoConfGroup is mandatory only for
                    network nodes."

                GROUP  appnLocalDirPerfConfGroup
                DESCRIPTION
                    "The appnLocalDirPerfConfGroup is mandatory only for
                    APPN network nodes and end nodes."

                GROUP  appnCosConfGroup
                DESCRIPTION
                    "The appnCosConfGroup is mandatory only for APPN
                    network nodes and end nodes."

                GROUP  appnIntSessConfGroup
                DESCRIPTION
                    "The appnIntSessConfGroup is mandatory only for
                    network nodes."

                GROUP  appnHprBaseConfGroup
                DESCRIPTION
                    "The appnHprBaseConfGroup is mandatory only for nodes
                    that implement the HPR base (APPN option set 1400)."

                GROUP  appnHprRtpConfGroup
                DESCRIPTION
                    "The appnHprRtpConfGroup is mandatory only for nodes
                    that implement the HPR RTP tower (APPN option set
                    1401)."
                GROUP  appnHprCtrlFlowsRtpConfGroup
                DESCRIPTION
                    "The appnHprCtrlFlowsRtpConfGroup is mandatory only
                    for nodes that implement the HPR Control Flows over
                    RTP tower (APPN option set 1402)."

                GROUP  appnHprBfConfGroup
                DESCRIPTION
                    "The appnHprBfConfGroup is mandatory only for nodes
                    that implement the APPN/HPR boundary function."

                GROUP  appnTrapConfGroup
                DESCRIPTION
                    "Traps are optional for all nodes."

                GROUP  appnTrapNotifGroup
                DESCRIPTION
                    "Traps are optional for all nodes."
        ::= { appnCompliances 1 }

appnGeneralConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnNodeCpName,
                 appnNodeMibVersion,
                 appnNodeId,
                 appnNodeType,
                 appnNodeUpTime,
                 appnNodeParallelTg,
                 appnNodeAdaptiveBindPacing,
                 appnNodeHprSupport,
                 appnNodeCounterDisconTime
                 }
        STATUS  deprecated
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN general information and capabilities.

            This RFC 2155-level group was deprecated when the
            appnNodeMibVersion object was removed and the
            appnNodeLsCounterType and appnNodeBrNn objects were added."
        ::= { appnGroups 1 }

appnLinkConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnLsCommand,
                 appnLsOperState,
                 appnLsPortName,
                 appnLsDlcType,
                 appnLsDynamic,
                 appnLsAdjCpName,
                 appnLsAdjNodeType,
                 appnLsTgNum,
                 appnLsLimResource,
                 appnLsActOnDemand,
                 appnLsMigration,
                 appnLsPartnerNodeId,
                 appnLsCpCpSessionSupport,
                 appnLsMaxSendBtuSize,
                 appnLsInXidBytes,
                 appnLsInMsgBytes,
                 appnLsInXidFrames,
                 appnLsInMsgFrames,
                 appnLsOutXidBytes,
                 appnLsOutMsgBytes,
                 appnLsOutXidFrames,
                 appnLsOutMsgFrames,
                 appnLsEchoRsps,
                 appnLsCurrentDelay,
                 appnLsMaxDelay,
                 appnLsMinDelay,
                 appnLsMaxDelayTime,
                 appnLsGoodXids,
                 appnLsBadXids,
                 appnLsSpecific,
                 appnLsActiveTime,
                 appnLsCurrentStateTime,
                 appnLsHprSup,
                 appnLsLocalAddr,
                 appnLsRemoteAddr,
                 appnLsRemoteLsName,
                 appnLsStatusTime,
                 appnLsStatusLsName,
                 appnLsStatusCpName,
                 appnLsStatusPartnerId,
                 appnLsStatusTgNum,
                 appnLsStatusGeneralSense,
                 appnLsStatusRetry,
                 appnLsStatusEndSense,
                 appnLsStatusXidLocalSense,
                 appnLsStatusXidRemoteSense,
                 appnLsStatusXidByteInError,
                 appnLsStatusXidBitInError,
                 appnLsStatusDlcType,
                 appnLsStatusLocalAddr,
                 appnLsStatusRemoteAddr,
                 appnLsCounterDisconTime
                 }
        STATUS  deprecated
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN link information.

            This RFC 2155-level group was deprecated when the
            appnLsMltgMember object was added."
        ::= { appnGroups 3 }

appnLocalTgConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnLocalTgDestVirtual,
                 appnLocalTgDlcData,
                 appnLocalTgPortName,
                 appnLocalTgQuiescing,
                 appnLocalTgOperational,
                 appnLocalTgCpCpSession,
                 appnLocalTgEffCap,
                 appnLocalTgConnCost,
                 appnLocalTgByteCost,
                 appnLocalTgSecurity,
                 appnLocalTgDelay,
                 appnLocalTgUsr1,
                 appnLocalTgUsr2,
                 appnLocalTgUsr3,
                 appnLocalTgHprSup,
                 appnLocalTgIntersubnet
                 }
        STATUS  deprecated
        DESCRIPTION
            "A collection of objects providing the instrumentation of
            APPN local TG information.

            This RFC 2155-level group was deprecated when the
            appnLocalTgMltgLinkType object was added."
        ::= { appnGroups 4 }

appnDirTableConfGroup  OBJECT-GROUP
        OBJECTS  {
                 appnDirNnServerName,
                 appnDirLuOwnerName,
                 appnDirLuLocation,
                 appnDirType
                 }
        STATUS  deprecated
        DESCRIPTION
            "A collection of objects providing the instrumentation of the
            APPN directory database.

            This RFC 2155-level group was deprecated when the
            appnDirApparentLuOwnerName object was added."
        ::= { appnGroups 5 }

appnNnTopoConfGroup    OBJECT-GROUP
        OBJECTS  {
                 appnNnTopoMaxNodes,
                 appnNnTopoCurNumNodes,
                 appnNnTopoNodePurges,
                 appnNnTopoTgPurges,
                 appnNnTopoTotalTduWars,
                 appnNnNodeFREntryTimeLeft,
                 appnNnNodeFRType,
                 appnNnNodeFRRsn,
                 appnNnNodeFRRouteAddResist,
                 appnNnNodeFRCongested,
                 appnNnNodeFRIsrDepleted,
                 appnNnNodeFRQuiescing,
                 appnNnNodeFRGateway,
                 appnNnNodeFRCentralDirectory,
                 appnNnNodeFRIsr,
                 appnNnNodeFRGarbageCollect,
                 appnNnNodeFRHprSupport,
                 appnNnNodeFRPeriBorderSup,
                 appnNnNodeFRInterchangeSup,
                 appnNnNodeFRExteBorderSup,
                 appnNnTgFREntryTimeLeft,
                 appnNnTgFRDestVirtual,
                 appnNnTgFRDlcData,
                 appnNnTgFRRsn,
                 appnNnTgFROperational,
                 appnNnTgFRQuiescing,
                 appnNnTgFRCpCpSession,
                 appnNnTgFREffCap,
                 appnNnTgFRConnCost,
                 appnNnTgFRByteCost,
                 appnNnTgFRSecurity,
                 appnNnTgFRDelay,
                 appnNnTgFRUsr1,
                 appnNnTgFRUsr2,
                 appnNnTgFRUsr3,
                 appnNnTgFRGarbageCollect,
                 appnNnTgFRSubareaNum,
                 appnNnTgFRHprSup,
                 appnNnTgFRDestHprTrans,
                 appnNnTgFRTypeIndicator,
                 appnNnTgFRIntersubnet
                 }
        STATUS  deprecated
        DESCRIPTION
            "The appnNnTopoConfGroup is mandatory only for network
            nodes.

            This RFC 2155-level group was deprecated when the
            appnNnNodeFRBranchAwareness, appnNnTgFRMltgLinkType, and
            appnNnFRBranchTg objects were added."
        ::= { appnGroups 9 }

appnLocalEnTopoConfGroup   OBJECT-GROUP
        OBJECTS  {

                 appnLocalEnTgEntryTimeLeft,
                 appnLocalEnTgDestVirtual,
                 appnLocalEnTgDlcData,
                 appnLocalEnTgOperational,
                 appnLocalEnTgCpCpSession,
                 appnLocalEnTgEffCap,
                 appnLocalEnTgConnCost,
                 appnLocalEnTgByteCost,
                 appnLocalEnTgSecurity,
                 appnLocalEnTgDelay,
                 appnLocalEnTgUsr1,
                 appnLocalEnTgUsr2,
                 appnLocalEnTgUsr3
                 }
        STATUS  deprecated
        DESCRIPTION
            "The appnLocalEnTopoConfGroup is mandatory only for network
            nodes.

            This RFC 2155-level group was deprecated when the
            appnLocalEnTgMltgLinkType object was added."
        ::= { appnGroups 10 }

END
