RFC2455

From RFC-Wiki

Network Working Group B. Clouston Request for Comments: 2455 Cisco Systems Obsoletes: 2155 B. Moore Category: Standards Track IBM Corporation

                                                    November 1998
                 Definitions of Managed Objects
                            for APPN

Status of this Memo

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (1998). All Rights Reserved.

Abstract

This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it defines objects for monitoring and controlling network devices with APPN (Advanced Peer-to-Peer Networking) capabilities. This memo identifies managed objects for the APPN protocol.

Introduction

This document is a product of the SNA NAU Services MIB Working Group. It defines a MIB module for managing devices with Advanced Peer-to- Peer Networking (APPN) capabilities.

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [17].

The SNMP Network Management Framework

The SNMP Management Framework presently consists of five major components:

o An overall architecture, described in RFC 2271 [1].

o Mechanisms for describing and naming objects and events for the

    purpose of management. The first version of this Structure of
    Management Information (SMI) is called SMIv1 and described in
    STD 16, RFC 1155 [2], STD 16, RFC 1212 [3] and RFC 1215 [4]. The
    second version, called SMIv2, is described in RFC 1902 [5], RFC
    1903 [6] and RFC 1904 [7].

o Message protocols for transferring management information. The

    first version of the SNMP message protocol is called SNMPv1 and
    described in STD 15, RFC 1157 [8]. A second version of the SNMP
    message protocol, which is not an Internet standards track
    protocol, is called SNMPv2c and described in RFC 1901 [9] and
    RFC 1906 [10]. The third version of the message protocol is
    called SNMPv3 and described in RFC 1906 [10], RFC 2272 [11] and
    RFC 2274 [12].

o Protocol operations for accessing management information. The

    first set of protocol operations and associated PDU formats is
    described in STD 15, RFC 1157 [8]. A second set of protocol
    operations and associated PDU formats is described in RFC 1905
    [13].

o A set of fundamental applications described in RFC 2273 [14] and

    the view-based access control mechanism described in RFC 2275
    [15].

Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI.

This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB.

Overview

This document identifies a set of objects for monitoring the configuration and active characteristics of devices with APPN capabilities, and for controlling certain characteristics. APPN is the aspect of Systems Network Architecture (SNA) that supports peer- to-peer networking. These networks transport both independent and dependent LU session traffic. See the SNANAU APPC MIB [21] and the SNA NAU MIB [22] for management of these sessions. See also RFC 2232, the DLUR MIB [23], and RFC 2238, the HPR MIB [24] for management of extensions to the APPN architecture. In this document, we describe APPN managed objects.

An APPN network comprises various types of nodes, and transmission groups (TGs) that connect the nodes. Network nodes (NNs) provide directory and routing functions for session establishment. NNs may be session end points or intermediate nodes in a session. A border node is a type of network node that connects networks together for session establishment without fully merging them. A branch network node (BrNN) is a network node that is similar to a border node, but with only minimal functions to build a large APPN network within an enterprise. Although a BrNN is defined to be a network node in the APPN architecture, it also has an end node (EN) appearance to upstream NNs in the network. In this MIB module it is treated as a separate node type since it does not fit cleanly as an EN or NN, and this module explicity identifies those objects returned by a BrNN. For example, a BrNN does not implement the appnNnTopo objects since it is the only node in its network topology table; but it does implement the appnSessIntermediate objects since it does have intermediate session support. It also implements two of the appnEnUniqueCaps objects that could be useful to a management application. A BrNN identifies itself as 'endNode' in the appnNodeType object but further identifies itself as a BrNN in the appnNodeBrNn object.

End nodes are session end points that receive directory and routing functions from network nodes, over control-point to control-point (CP-CP) sessions. Low-entry networking (LEN) nodes are also session

end points, but do not support CP-CP sessions, and therefore need additional manual configuration definitions to establish sessions in an APPN network. ENs and LEN nodes may have minimal directory and routing functions to establish control sessions (ENs) or to connect into the APPN network (LEN nodes).

Virtual routing nodes (VRNs) are not really nodes, but rather common definitions among actual nodes in a shared transport facility such as a local area network (LAN) that allow these actual nodes to temporarily establish a logical link with one another without defining each other's link-level addressing information.

Ports and link stations are the node's interface to the data link control (DLC), which provides the physical transport, or to another protocol such as Data Link Switching (DLSw), which provides transport over an IP network. See the SNADLC SDLC MIB[25], the SNADLC LLC MIB[26], and the DLSw MIB[27]. A link station uses a port to make a connection to another node. This connection establishes a TG between the two nodes.

The directory and routing functions enable an NN to find where an LU is located in the network, and calculate the optimal route for the session based on the requested class of service (COS). A network node saves the LU information in a directory database, which is built from LUs defined locally, LU registration from served end nodes, and LUs learned from network searches.

Each NN maintains a local COS database that assigns a routing weight, or relative cost, to each resource for each class of service. For example, the #INTER COS assigns a lower weight to TGs with a greater effective capacity, while the #BATCH COS favors TGs with a lower relative cost per byte.

A node saves network topology information (on NNs, VRNs, and TGs between them) in a network topology database. A node that supports APPN function set 1120, branch awareness, also saves information on TGs to adjacent BrNNs. The topology information includes state and routing characteristics. Topology information is exchanged between NNs over CP-CP sessions such that the database is fully replicated at each NN. Information on TGs to all node types are kept in a local topology database. Local topology information is shared with other nodes only during the session establishment process, to give the NN responsible for route calculation the necessary information for end- to-end route calculation.

A management application can show a full representation of the APPN network from the network and local topology information. To show the network topology, the application need only query the network

topology tables from a single NN. To show all of the BrNNs, the application must also directly query all destinations of TGs that indicate they are branch TGs (indicated by the appnNnTgFRBranchTg object) to see if they have any cascaded BrNNs. For any NNs that do not indicate branch awareness support (indicated by the appnNnNodeFRBranchAwareness object), the application must query each NN's appnLocalTgTable, and then the appnNodeBrNn object of each row's destination node to identify BrNNs. To show all of the nodes in the network, including ENs and LEN nodes, the application must query every NN's appnLocalTgTable, and iteratively do the same for each BrNN it finds.

SNA names such as LU names, CP names, COS names, and mode names can be padded with blanks (space characters) in SNA formats. These blanks are nonsignificant. For example, in a BIND Request Unit (RU) a COS name of "#INTER" with a length of 6 is identical to a COS name of "#INTER " with a length of 8. However, in this MIB, nonsignificant blanks are not included by the agent. Using the COS name from the previous example, an agent would return a length of 6 and the string "#INTER" with no blanks for appnCosName, regardless of how it appears in the BIND RU or in internal storage. The lone exception is the all blank mode name, for which the agent returns a length of 8 and the string " " (8 blank spaces). The MIB variables that this applies to are identified by a textual convention syntax that also describes this behavior.

When an SNA name is functioning as a table index, an agent treats trailing blanks as significant. If a management station requests the objects from a row with index "#INTER ", the agent does not match this to the row with index "#INTER". Since an agent has no nonsignificant blanks in any of its table indices, the only reason for a Management Station to include them would be to start GetNext processing at a chosen point in a table. For example, a GetNext request with index "M " would start retrieval from a table at the first row with an 8-character index beginning with "M" or a letter after "M".

The SNA/APPN terms and overall architecture are documented in [18], [19], [20], and [28].

Highlights of the management functions supported by the APPN MIB module include the following:

o Activating and deactivating ports and link stations.

o Monitoring of configuration parameters related to the node,

    ports, link stations, virtual routing nodes, and classes of
    service.

o Monitoring of operational parameters related to ports, link

    stations, virtual routing nodes, topology, directory, and
    intermediate sessions.

o Historical information about link station errors during

    connection establishment, or that caused the connection to
    terminate.

o Deactivating intermediate sessions.

o Traps for SNA Management Services (SNA/MS) Alert conditions.

This MIB module does not support:

o Configuration of APPN nodes.

o Monitoring and control of endpoint sessions.

o Dependent LU Requester (DLUR) management.

o High-Performance Routing (HPR) management.

Relationship with RFC 2155

This MIB obsoletes RFC 2155 [29] with changes due to additions to the APPN architecture and some implementation experience of RFC 2155. The changes from RFC 2155 are as follows:

o New objects for the multi-link TG architecture enhancement:

    appnLsMltgMember, appnNnTgFRMltgLinkType,
    appnLocalTgMltgLinkType, and appnLocalEnTgMltgLinkType.

o New objects, and explanations for values for existing objects,

    for the branch network node architecture enhancement:
    appnNodeBrNn, appnNnNodeFRBranchAwareness, appnNnTgFRBranchTg,
    and appnLocalTgBranchLinkType.

o New object, appnNodeLsCounterType, to indicate which type of ANR

    traffic is returned in the appnLsTable traffic counters.

o Deprecated appnNodeMibVersion object.

o Miscellaneous editorial changes.

APPN MIB Structure

The APPN MIB module contains the following groups of objects:

o appnNode - objects related to the APPN node for all node types.

o appnNn - objects to represent the network nodes, virtual

    routing nodes, and TGs between these nodes that make up the APPN
    network topology database maintained in NNs.

o appnLocalTopology - objects to represent nodes and TGs between

    nodes in the local topology database maintained in all nodes.

o appnDir - objects related to LU location information from the

    node's directory database.

o appnCos - objects related to classes of service information.

o appnSessIntermediate - objects related to intermediate sessions

    that pass through this node.

These groups are described below in more detail.

appnNode group

The appnNode group consists of the following tables and objects:

1) appnGeneralInfoAndCaps

This group of objects describes general information about the APPN node. The type of information includes the node type and the time since this node was initialized.

2) appnNnUniqueInfoAndCaps

This group of objects describes information specific to network nodes such as node routing characteristics.

3) appnEnUniqueInfoAndCaps

This group of objects describes information specific to end nodes, with two objects that also apply to branch network nodes. This group includes an object indicating the node's network node server.

4) appnPortInformation

This includes the appnPortTable, which describes the configuration and current status of the ports used by APPN, including the port state and DLC type.

5) appnLinkStationInformation

This includes the appnNodeLsTable, which describes the configuration and current status of the link stations used by APPN, including the link state and port name; and the appnLsStatusTable, which provides information about errors this node encountered with connections to adjacent nodes, such as the sense data captured during connection failures. It is a product option to decide how many appnLsStatusTable entries are kept.

6) appnVrnInfo

This includes the appnVrnTable, which describes the relationship between virtual routing nodes' TGs described in the appnLocalTgTable with ports in the appnPortTable.

appnNn group

The appnNn group consists of the following objects and tables

1) appnNnTopo

These objects contain general information about the network topology database including the number of nodes present, and the number of topology database updates (TDU) wars the node has detected.

2) appnNnTopology

This includes tables representing the APPN network topology database. This includes the network nodes, virtual routing nodes, and TGs between these nodes, as well as the information about these resources carried in topology updates. The tables are first indexed by the same flow reduction sequence number (FRSN) used in topology exchanges between NNs. This allows a management station to retrieve only incremental updates, since the agent will update the FRSN of new or changed resources.

appnLocalTopology group

The appnLocalTopology group consists of the following objects and tables:

1) appnLocalThisNode

a) appnLocalGeneral
Contains the local node and type.
b) appnLocalNnSpecific
These objects contain routing information about the local network
node.
c) appnLocalTg
This table represents information about this node's local TGs.

2) appnLocalEnTopology

This table represents TG information for EN TGs learned by the NN via TG registration with the local node.

appnDir group

The appnDir group consists of the following objects and tables:

1) appnDirPerf

These objects represent information related to information about the directory database and directory searches involving this node.

2) appnDirTable

This table represents the directory database, listing LUs known to this node, along with the owning node of the LU and the serving NN of the owning node.

appnCos group

The appnCos group consists of the following tables:

1) appnCosModeTable

This table represents the mode to class of service mapping.

2) appnCosNameTable

This table represents the tranmission priority for each class of service.

3) appnCosNodeRowTable

This table represents the node-row information for each class of service, including the weight of each node.

3) appnCosTGRowTable

This table represents the TG-row information for each class of service, including the weight of each TG.

appnSessIntermediate group

The appnSessIntermediate group consists of the following objects and tables:

1) appnIsInGlobal

These objects allow control of the collection of intermediate session information such as Route Selection Control Vectors (RSCVs) and counters.

2) appnIsInTable

This table contains information on active intermediate sessions.

3) appnIsRtpTable

This table contains information on active intermediate sessions that are being transported on Rapid Transport Protocol (RTP) connections by High Performance Routing (HPR).

appnTraps

One APPN trap is defined. It is intended to correspond to SNA/MS Alerts, but is optional for a product to implement this trap. The trap identifies the Alert ID number and, where possible, the affected resource.

Definitions

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: [email protected]
                    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: [email protected]
            "
  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

Security Considerations

Certain management information defined in this MIB may be considered sensitive in some network environments. Therefore, authentication of received SNMP requests and controlled access to management information SHOULD be employed in such environments. An authentication protocol is defined in [12]. A protocol for access control is defined in [15].

The read-only objects appnNnTgFRSecurity, appnLocalTgSecurity, appnLocalEnTgSecurity, appnCosTgRowSecurityMin, and appnCosTgRowSecurityMax can be used to determine the potential path of secure data. While these objects cannot be changed by a management application using this MIB, these objects could be used to determine where a security exposure exists due to an improper configuration on the agent.

None of the other read-only objects in the APPN MIB reports a password, user data, or anything else that is particularly sensitive. Some enterprises view their network configuration itself, as well as

information about network usage and performance, as corporate assets; such enterprises may wish to restrict SNMP access to most of the objects in the MIB.

Four of the read-write objects in the MIB can affect network operations; it is recommended that SNMP access to these objects be restricted. The four objects are:

o appnNodeNnSafeStoreFreq: Setting this object to 0, or to a very

    large value, effectively turns off safe storing of topology
    data.

o appnPortCommand, appnLsCommand: These two objects allow an APPN

    port or link station to be activated, deactivated, or recycled
    via an SNMP operation.  The latter two operations may disrupt
    current users of the network.

o appnIsInSessState: Setting this object to 'inactive' causes an

    active SNA session to be deactivated.
    Other read-write objects control the gathering of network
    management data; controlling access to these objects is less
    critical.

Intellectual Property

The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11 [16]. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF Secretariat.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.

Acknowledgments

This MIB module is the product of the IETF SNA NAU MIB WG and the AIW APPN/HPR MIBs SIG. Thanks to Wayne Clark, Cisco Systems; Jim Cobban, Nortel; Rich Daugherty, IBM Corporation; Mark Regan, Cisco Systems; and Leo Temoshenko, IBM Corporation, for their contributions and review.

References

[1] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for

    Describing SNMP Management Frameworks", RFC 2271, January 1998.

[2] Rose, M., and K. McCloghrie, "Structure and Identification of

    Management Information for TCP/IP-based Internets", STD 16, RFC
    1155, May 1990.

[3] Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD 16,

    RFC 1212, March 1991.

[4] Rose, M., "A Convention for Defining Traps for use with the

    SNMP", RFC 1215, March 1991.

[5] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,

    "Structure of Management Information for Version 2 of the Simple
    Network Management Protocol (SNMPv2)", RFC 1902, January 1996.

[6] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Textual

    Conventions for Version 2 of the Simple Network Management
    Protocol (SNMPv2)", RFC 1903, January 1996.

[7] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,

    "Conformance Statements for Version 2 of the Simple Network
    Management Protocol (SNMPv2)", RFC 1904, January 1996.

[8] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple

    Network Management Protocol", STD 15, RFC 1157, May 1990.

[9] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,

    "Introduction to Community-based SNMPv2", RFC 1901, January
    1996.

[10] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,

    "Transport Mappings for Version 2 of the Simple Network
    Management Protocol (SNMPv2)", RFC 1906, January 1996.

[11] Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message

    Processing and Dispatching for the Simple Network Management
    Protocol (SNMP)", RFC 2272, January 1998.

[12] Blumenthal, U., and B. Wijnen, "User-based Security Model (USM)

    for version 3 of the Simple Network Management Protocol
    (SNMPv3)", RFC 2274, January 1998.

[13] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Protocol

    Operations for Version 2 of the Simple Network Management
    Protocol (SNMPv2)", RFC 1905, January 1996.

[14] Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications", RFC

    2273, January 1998.

[15] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access

    Control Model (VACM) for the Simple Network Management Protocol
    (SNMP)", RFC 2275, January 1998.

[16] Hovey, R., and S. Bradner, "The Organizations Involved in the

    IETF Standards Process", BCP 11, RFC 2028, October 1996.

[17] Bradner, S., "Key words for use in RFCs to Indicate Requirement

    Levels", BCP 14, RFC 2119, March 1997.

[18] IBM, Systems Network Architecture Technical Overview, GC30-3073.

[19] IBM, Systems Network Architecture APPN Architecture Reference,

    SC30-3422

[20] IBM, Systems Network Architecture Formats, SC30-3346.

[21] Allen, M., Clouston, B., Kielczewski, Z., Kwan, W., and B.

    Moore, "Definition of Managed Objects for APPC", RFC 2051,
    December 1995.

[22] Kielczewski, Z., Kostick D., and K. Shih, "Definition of Managed

    Objects for SNA NAUs using SMIv2", RFC 1666, August 1994.

[23] Clouston, B., and B. Moore, "Definitions of Managed Objects for

    DLUR", RFC 2232, November 1996.

[24] Clouston, B., and B. Moore, "Definitions of Managed Objects for

    HPR", RFC 2238, November 1996.

[25] SNA DLC Services MIB Working Group, Hilgeman, J., Nix, S.,

    Bartky, A., and W. Clark, "Definitions of Managed Objects for
    SNA Data Link Control (SDLC) using SMIv2", RFC 1747, January
    1995.

[26] SNA DLC Services MIB Working Group, Berl, S., Nix, S., and W.

    Clark, "Definitions of Managed Objects for SNA Data Link
    Control: LLC", May 1995.

[27] Chen, D., Gayek, P., and S. Nix, "Definitions of Managed Objects

    for Data Link Switching using SNMPv2", RFC 2024, October 1995.

[28] IBM, Systems Network Architecture Management Services Formats,

    GC31-8302.

[29] Clouston, B., and B. Moore, "Definitions of Managed Objects for

    APPN", RFC 2155, June 1997.

Authors' Addresses

Bob Clouston Cisco Systems 7025 Kit Creek Road P.O. Box 14987 Research Triangle Park, NC 27709, USA

Phone: +1 919 472 2333 EMail: [email protected]

Robert Moore Dept. BRQA/Bldg. 501/G114 IBM Corporation P.O.Box 12195 3039 Cornwallis Research Triangle Park, NC 27709, USA

Phone: +1 919 254 4436 EMail: [email protected]

10. Full Copyright Statement

Copyright (C) The Internet Society (1998). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.