Internet Draft
Network Working Group                                       Mark Stewart
Expires May 15 2001        OPTICAL INTERFACE MIB             An-ni Huynh
Internet Draft                                                   Kam Lam
                                                     Lucent Technologies
                                                        November 15 2000
                                                                	
                	


                     Definitions of Managed Objects
                     for the Optical Interface Type

                  draft-stewart-atommib-opticalmib-00.txt


Status of this Memo

    This document is an Internet-Draft and is in full conformance with
    all provisions of Section 10 of RFC2026.

    Internet-Drafts are working documents of the Internet Engineering
    Task Force (IETF), its areas, and its working groups. Note that
    other groups may also distribute working documents as
    Internet-Drafts.

    Internet-Drafts are draft documents valid for a maximum of six
    months and may be updated, replaced, or obsoleted by other documents
    at any time. It is inappropriate to use Internet-Drafts as reference
    material or to cite them other than as "work in progress."

    The list of current Internet-Drafts can be accessed at
    http://www.ietf.org/ietf/1id-abstracts.txt.

    The list of Internet-Draft Shadow Directories can be accessed at
    http://www.ietf.org/shadow.html.




Copyright Notice

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

1.  Abstract

                                                                       
This memo defines a portion of the Management Information Base (MIB)
   for use with network management protocols in TCP/IP-based internets.
   In particular, it defines objects for managing Optical interfaces.
   Textual Conventions used in this MIB are defined in [6] and [18].


Table of Contents

   1 Abstract ..............................................   xx
   2 The SNMP Network Management Framework .................   xx
   3 Overview ..............................................   xx
   3.1 Use of the ifTable ..................................   xx
   3.2 Use of ifTable for OTN OTS/OMS Layer.................   xx
   3.3 Use of ifTable for OTN OCh Layer.....................   xx
   3.4 Use of ifStackTable..................................   xx
   3.5 Optical Network Terminology .........................   xx
   4. Structure of the MIB..................................   xx
   4.1.  The otnOTSn group..................................   xx
   4.2.  The otnOMSn group..................................   xx
   4.3.  The otnOch group...................................   xx
   4.4.  The otnODUk group..................................   xx
   4.5.  The otnODUkT group.................................   xx
   4.6.  The otnODUkP group.................................   xx
   5 Object Definitions ....................................   xx
   6 Security Considerations ...............................   xx 
   7 Acknowledgments........................................   xx
   8 References ............................................   xx  
   9 Author's Address ......................................   xx
   10 Intellectual Property ................................   xx
   Full Copyright Statement ................................   xx

2.  The SNMP Network Management Framework

   The SNMP Management Framework presently consists of five major
   components:

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

   0    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].

   0    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].

   0    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].

   0    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 (e.g., 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.

3.  Overview

   In this document, the term OTN (Optical Transport Network) system
   is used to describe devices that are compliant with the requirements 
   specified in the ITU-T Recommendations G.872, G.709, G.798, and
   G.874 [21][19][20][22], available as of the date this Internet-Draft.  
   As some of the ITU-T Recommendations have not yet been approved,
   implementors of DWDM symstems are advised to refer to  
   most recent versions of these ITU-T Recommendations.
   
   The optical objects will be managed using the MIB II ifTable and
   ifStackTable.  Additional tables will also be supported to monitor
   layer specific status and provide performance monitoring data.
   In the tables, some entries are required for OTN systems only.
   A Config table, Current PM table, and Interval PM table will be
   maintained for the OTSn, OMSn, and OCh layers on a source and
   sink trail termination basis.  These tables will be linked to
   the ifTable by using the ifIndex that is associated with that
   layer.
 
   These objects are used when the particular media being used to
   realize an interface is an Optical Transport interface.  At present,
   this applies to these values of the ifType variable in the 
   Internet-standard MIB:

        otn (xx), och (yy)

   The definitions contained herein are based on the OTN
   specifications in ITU-T G.872[21], G.709 [19], G.798[20], 
   and G.874[22].

3.1.  Use of the ifTable

   This section specifies how the MIB II interfaces group, as defined in
   [17], is used for optical interfaces.  Only the 
   ifGeneralInformationGroup will be supported for the ifTable and the
   ifStackTable to maintain the relationship between the various layers.
   The OTN layers are managed in the ifTable using IfEntries that 
   correlate to the layers depicted in Figure 1.

   For example, a DWDM device with an Optical Network Node Interface
   (ONNI) will have an Optical Transmission Section (OTS) physical 
   layer, an Optical Multiplex Section (OMS) layer (transports multiple
   optical channels), and an Optical Channel (OCh) layer.  There is a 
   one to one relationship between the OMS and OTS layers.  The OMS 
   layer has fixed connectivity via the OTS and thus no connectivity 
   flexibility at the OMS layer is supported.

   A device with an ONNI that does not multiplex would consist of
   the OTS and OCh layers supporting a single channel.

   MIB II [16], as extended by [17], accommodates these cases through
   appropriate use of the MIB II system and interfaces groups.  The
   system group names and describes the type of managed resource.
   The interfaces group defines which OTN layers apply and how these
   layers are configured and multiplexed.  This is achieved by proper
   representation of OTN Layers as IfEntries as defined in [17],
   as follows:



   _____________________
                        \
      Path Data Unit    |\
          (ODUkP)       | \
   _____________________|  \ ______________________
                        |   |                      |  >
     Tandem Data Unit   |   |                      |  |
          (ODUkT)       |   |    OCh  Layer        |   > n och IfEntries
   _____________________|   |                      |  |
                        |   |______________________|  >
           Optical      |  /|                      |  >
       Transport Unit   | / |                      |  |
           (OTUk)       |/  |    OMSn Layer        |  |
   _____________________/   |                      |  |
                            |______________________|  |
      Sub-layers in         |                      |   > m otn IfEntries
      the OCh Layer         |                      |  |
                            |    OTSn Layer        |  |
                            |                      |  |
                            |______________________|  >


                         Figure 1: OTN Layers


   Since the OMSn and OTSn layers have a one to one relationship, only
   one otn IfEntry is required to support these two layers.  Therefore,
   each och IfEntry may be mapped to m otn IfEntries, where m is greater
   than or equal to 1.  Conversely, each otn entry may be mapped
   to n och IfEntries, where n is greater than or equal to 1.

   Example 1: Management of unterminated OCh using passive optics

   An OTN device connected with two adjacent nodes in a single
   fiber ring that supports 10 wavelengths per fiber would have
   2 otn IfEntries and 10 och IfEntries, as depicted in Figure 2. Thus,
   the same 10 och IfEntries are stacked above each of the IfEntries.
   
    ______________________                      ______________________
   |       |      |       |                    |       |      |       |
   | och1  | ...  | och10 |                    | och1  | ...  | och10 |
   |_______|______|_______|                    |_______|______|_______|
   |                      |                    |                      |
   |         otn1         |                    |         otn2         |
   |______________________|                    |______________________|
                               ____________
                              |            |
          ___________________\|    OTN     |__________________\
                             /|   device   |                  /
                              |____________|


          Figure 2: Interface stacks when channels are unterminated


   Example 2: Management of terminated OCh

   An OTN device connected with two adjacent nodes in a single
   fiber ring that supports 10 wavelengths per fiber would have
   2 otn IfEntries and 20 och IfEntries, as depicted in Figure 3. Thus
   10 och IfEntries are stacked above the first otn IfEntry, and the
   other 10 och IfEntries are stacked above the second otn IfEntry.

    ______________________                      ______________________
   |       |      |       |                    |       |      |       |
   | och1  | ...  | och10 |                    | och11 | ...  | och20 |
   |_______|______|_______|                    |_______|______|_______|
   |                      |                    |                      |
   |         otn1         |                    |         otn2         |
   |______________________|                    |______________________|
                               ____________
                              |            |
          ___________________\|    OTN     |__________________\
                             /|   device   |                  /
                              |____________|


          Figure 3: Interface stacks when channels are terminated

   The exact configuration and multiplexing of the layers is maintained
   in the ifStackTable [17], see section 3.4.

3.2.  Use of ifTable for OTN OTS/OMS Layer

   Only the ifGeneralInformationGroup needs to be supported.

   ifTable Object      Use for combined OTN OTS/OMS Layer
   =====================================================================
    ifIndex             The interface index.

    ifDescr             Optical Transport Network (OTN) Optical
                        Transmission Section (OTS)/Optical Multiplex
                        Section (OMS)

    ifType              otn(xx)

    ifSpeed             Actual bandwidth of the interface in bits per
                        second.  If the bandwidth of the interface is
                        greater than the maximum value of 4,294,967,295,
                        then the maximum value is reported and 
                        ifHighSpeed must be used to report the 
                        interface's speed.

    ifPhysAddress       An octet string with zero length.  (There is
                        no specific address associated with the 
                        interface.)

    ifAdminStatus       The desired administrative status of the
                        interface.  Supports read-only access.

    ifOperStatus        The operational status of the interface.  The
                        value lowerLayerDown(7) is not used, since
                        there is no lower layer interface.  This object
                        is set to notPresent(6) if a component is 
                        missing, otherwise it is set to down(2) if 
                        either the objects otnOTSnCurrentStatus or 
                        otnOMSnCurrentStatus has any value other than
                        noDefect(1).

    ifLastChange        The value of sysUpTime at the last change in
                        ifOperStatus.

    ifName              Enterprise-specific convention (e.g., TL-1 AID)
                        to identify the physical or data entity 
                        associated with this interface or an 
                        OCTET STRING of zero length.  The 
                        enterprise-specific convention is intended to 
                        provide the means to reference one or more 
                        enterprise-specific tables.

    ifLinkUpDownTrapEnable  Default value is enabled(1).  Supports
                            read-only access.


    ifHighSpeed         Actual bandwidth of the interface in Mega-bits
                        per second.  A value of n represents a range of
                        'n-0.5' to 'n+0.499999'.

    ifConnectorPresent  Set to true(1).

    ifAlias             The (non-volatile) alias name for this interface
                        as assigned by the network manager.

3.3.  Use of ifTable for OTN OCh Layer

   Only the ifGeneralInformationGroup needs to be supported.

   ifTable Object      Use for OTN OCh Layer
   =====================================================================
    ifIndex             The interface index.

    ifDescr             Optical Transport Network (OTN) Optical
                        Channel (OCh)

    ifType              och(yy)

    ifSpeed             Current bandwidth of the interface in bits per
                        second.  If the bandwidth of the interface is
                        greater than the maximum value of 4,294,967,295,
                        then the maximum value is reported and 
                        ifHighSpeed must be used to report the 
                        interface's speed.

    ifPhysAddress       The wavelength of the optical channel, expressed
                        in nanometers (e.g., 1550).

    ifAdminStatus       The desired administrative status of the
                        interface.  Supports read-only access.

    ifOperStatus        The operational status of the interface.  This
                        object is set to lowerLayerDown(7) if the
                        ifOperStatus of its otn interface is down(2).
                        Otherwise, it is set to down(2) if one or more
                        of the objects otnOChCurrentStatus, 
                        otnOTUkCurrentStatus, otnODUkTCurrentStatus, 
                        and otnODUkPCurrentStatus have any value other
                        than noDefect(1). 

    ifLastChange        The value of sysUpTime at the last change in
                        ifOperStatus.

    ifName              Enterprise-specific convention (e.g., TL-1 AID)
                        to identify the physical or data entity
                        associated with this interface or an 
                        OCTET STRING of zero length.  The 
                        enterprise-specific convention is
                        intended to provide the means to reference one
                        or more enterprise-specific tables.

    ifLinkUpDownTrapEnable  Default value is disabled(2).  Supports
                            read-only access.

    ifHighSpeed         Current bandwidth of the interface in Mega-bits
                        per second.  A value of n represents a range of
                        'n-0.5' to 'n+0.499999'.

    ifConnectorPresent  Set to false(2).

    ifAlias             The (non-volatile) alias name for this interface
                        as assigned by the network manager.

3.4.  Use of ifStackTable

   Use of the ifStackTable to associate the otn and och interface
   entries is best illustrated by the example shown in Figure 4.  The
   example assumes an otn interface with ifIndex i that carries two
   multiplexed och interfaces with ifIndex values of j and k, 
   respectively. The example shows that j and k are stacked above (i.e.,
   multiplexed into) i. Furthermore, it shows that there is no layer 
   lower than i and no layer higher than j and/or k.
   

                     HigherLayer   LowerLayer
                    --------------------------
                         0             j
                         0             k
                         j             i
                         k             i
                         i             0

              Figure 4: Use of ifStackTable for an OTN port


3.5.  Optical Network Terminology

   The terminology used in this document to describe the layers of an 
   optical network and the error conditions and performance monitoring
   parameters on an optical circuit as monitored by an optical
   system are listed below. These terms are defined in ITU-T 
   Recommendations G.872, G.709, G.798, and G.874 [21][19][20][22]. 
   Brief definition of some terms are also included here to 
   facilitate the readability of this document.
   
   Alarm Report Control (ARC) - G.874
        Alarm Report Control is a feature that provides an automatic
        in-service provisioning capability.  Alarm reporting is turned
        off on a per-managed entity basis to allow sufficient time for 
        customer testing and other maintenance activities in an
        "alarm free" state.  Once a managed entity is ready for service,
        alarm reporting is automatically turned on. The ARC feature
        provides the following states:
                ALM:     Alarm reporting is turned on.
                NALM:    Alarm reporting is turned off.
                NALM-TI: Alarm reporting is turned off for a specified
                         timed interval (TI - Time Inhibit).
                NALM-QI: Alarm reporting is turned off until the managed
                         entity is qualified problem free for a 
                         specified persistence interval (QI - Qualified
                         Inhibit).
        Note that the NALM-CD (Count Down) and NALM-NR (Not Ready) 
        substates of NALM-QI are not included in this MIB for a
        simpler implementation of the ARC function.
	
   Inter-Domain Interface (IrDI) - G.872
        A physical interface that represents the boundary between two 
        administrative domains.

        G.709 defines the requirements for the IrDI at the Network Node
        Interface (NNI).

   Intra-Domain Interface (IaDI) - G.872
        A physical interface within an administrative domain.	

   Optical Channel Layer Network (OCh) - G.872
        This layer network provides end-to-end networking of optical 
        channels for transparently conveying client information of 
        varying format (e.g. SDH STM-N, PDH 565 Mbit/s, cell based ATM, 
        etc.).   

   Optical Channel Data Unit Path Layer Network (ODUkP) - G.709
        This layer network provides functionality for the transport of
        information structure consisting of the information payload
        (OPUk) and the related overhead for management of an optical
        channel.

   Optical Channel Data Unit Tandem Connection Sub-Layer Network 
   (ODUkT) - G.709
        This layer network is a sub-layer of the optical data unit
        layer, which provides the capability for tandem connection
        monitoring. One to six nested levels of monitoring are 
        defined for OTN.

   Optical Channel Payload Unit (OPUk) - G.709
        The OPUk is the information structure used to adapt client 
        information for transport over an optical channel. OPUk 
        capacities for k=1, k=2, k=3 are defined in ITU-T. The index
        "k" is used to represent different versions of OPUk, ODUk and 
        OTUk. k=1 represents an approximate bit rate of 2.5 Gbit/s, 
        k=2 represents an approximate bit rate of 10 Gbit/s, and k=3 
        represents an approximate bit rate of 40 Gbit/s.

   Optical Multiplex Section Layer Network (OMS) - G.872
        This layer network provides functionality for networking of a 
        multi-wavelength optical signal. Note that a 
        "multi-wavelength" signal includes the case of just one
        optical channel.

   Optical Transport Network (OTN) - G.872
        A transport network bounded by optical channel access points.
        The optical transport network layered structure is comprised
        of the optical channel, optical multiplex section and optical 
        transmission section layer networks.

        According to G.872, an OTN-compliant interface is an interface
        of the optical transport network based on the architecture
        defined in G.872, while an OTN-non-compliant interface is an
        interface that does not comply to the interface recommendations
        that will be defined for the optical transport network based on
        the architecture defined in G.872.
   
   Optical Transmission Section Layer Network (OTS) - G.872
        This layer network provides functionality for transmission of 
        optical signals on optical media of various types. 

   Optical Channel Transport Unit Section Layer Network (OTUk) - G.709
        The OTUk is the layer network provides for the transport of an
        ODUk over one or more optical channel link connections.  It 
        consists of the optical channel data unit and OTUk related 
        overhead (FEC and overhead for management of an optical channel
        link connection).  It is characterized by its frame structure,
        bit rate, and bandwidth.

   Payload Type Transmitted (TxPL)
        The Payload Type signal of size of one byte, provisioned by the 
        managing system, to be placed in the OPUk overhead position of 
        the source of a trail for transmission.

   Payload Type Received (AcPL)
        The Payload Type signal of size of one byte recovered (received)
        from the OPUk overhead position at the sink of a trail.
	
   Payload Type Expected (ExPL)
        The Payload Type signal of size of one byte, provisioned by the
        managing system, to be compared with the payload type signal
        received at the OPUk overhead position of the sink for the
        purpose of checking the integrity of adaptation. 
   
   Payload Type Mismatch (PLM)
        The detection of mismatch of payload type is based on a 
        comparison between the  expected Payload Type signal, 
        provisioned via the management interface, and the received 
        Payload Type signal.

   Top of Stack (TOS) - G.709
        Top of Stack indicates the tandem connection level. The syntax
        of TOS is an integer ranges from zero to six.  

   Trail Trace Identifier Transmitted (TxTI)
        The Trail Trace Identifier (TTI) information, provisioned by
        the managing system, to be placed in the TTI overhead position
        of the source of a trail for transmission.

   Trail Trace Identifier Received (AcTI)
        The Trail Trace Identifier (TTI) information recovered 
        (received) from the TTI overhead position at the sink of a
        trail.
	
   Trail Trace Identifier Expected (ExTI)
        The Trail Trace Identifier (TTI) information, provisioned by 
        the managing system, to be compared with the TTI Received at 
        the overhead position of the sink for the purpose of checking
        the integrity of connectivity. 
   
   Trace Identifier Mismatch (TIM)
        The detection of TIM is based on a comparison between the 
        expected Trial Trace Identifier (TTI), configured via the 
        management interface, and the received TTI.

   Trace Identifier Mismatch Consequent Action Enabled (TimActEnabled)
        The Consequent Action function of TIM is enabled.

   Trace Identifier Mismatch Detection Enabled (TimDetEnabled)
        The function of detecting Trace Identifier Mismatch (TIM) is
        enabled. 


3.5.1   Defect Conditions

   The following Defect conditions are defined in G.798 (as fault
   cause) for OTN monitoring.

   ais          Alarm Indication Signal (AIS)
   bdi          Backward Defect Indication (BDI)
   deg          Degraded (DEG)
   ds           Defect Second (DS)
   ebc          Errored Block Count (EBC)
   fdi          Forward Defect Indication (FDI)
   fdiO         Forward Defect Indication - Overhead (FDI-O)
   fdiP         Forward Defect Indication - Payload (FDI-P)
   lck          Locked (LCK)
   lof          Loss of Frame (LOF)
   loop         Loss of Optical Power (LOOP)
   los          Loss of Signal (LOS)
   losc         Loss of Signal - Command (LOS-C)
   losO         Loss of Signal - Overhead (LOS-O)
   losP         Loss of Signal - Payload (LOS-P)
   maxTosI      Maximum TOS Ingress
   oci          Open Connection Indication (OCI)
   plm          Payload Mismatch (PLM)
   ssf          Server Signal Failure (SSF)
   ssfO         Server Signal Failure - Overhead (SSF-O)
   ssfP         Server Signal Failure - Payload (SSF-P)
   tovr         TOS Overflow condition. Overflow of Top Of Stack (TOVR)
   tudr         TOS Underflow condition (TUDR)
   tz           TOS zero condition (TZ) 


3.5.2   Performance Parameters

   All performance parameters are accumulated in fifteen minute
   intervals and up to 96 intervals (24 hours worth) are kept by an
   agent.  Fewer than 96 intervals of data will be available if the
   agent has been restarted within the last 24 hours.  In addition,
   there is a rolling 24-hour total of each performance parameter.
   Performance parameters continue to be collected when the interface
   is down.

   There is no requirement for an agent to ensure fixed relationship
   between the start of a fifteen minute interval and any wall clock;
   however some agents may align the fifteen minute intervals with
   quarter hours.

   Performance parameters are of types PerfCurrentCount,
   PerfIntervalCount and PerfTotalCount.  These textual conventions are
   all Gauge32, and they are used because it is possible for these
   objects to decrease.  Objects may decrease when Unavailable Seconds
   occurs across a fifteen minutes interval boundary. See Unavailable
   Seconds discussion later in this section. 


4.  Structure of the MIB

   The managed Optical Networking interface objects are arranged 
   into the following groups of tables:

   The otnOTSn group handles the configuration and performance 
   monitoring information for OTS layers.
      otnOTSnConfigTable
      otnOTSnSinkCurrentTable
      otnOTSnSinkIntervalTable
      otnOTSnSrcCurrentTable
      otnOTSnSrcIntervalTable

   The otnOMSn group handles the configuration information for OMS
   layers.
      otnOMSn group
      otnOMSnConfigTable
      otnOMSnSinkCurrentTable
      otnOMSnSinkIntervalTable
      otnOMSnSrcCurrentTable
      otnOMSnSrcIntervalTable

   The otnOCh group handles the configuration and performance
   monitoring information for OCh layers.
      otnOchConfigTable
      otnOchSinkCurrentTable
      otnOchSinkIntervalTable
      otnOchSrcCurrentTable
      otnOchSrcIntervalTable

   The otnOTUk group handles configuration information for otnOTUk.
      otnOTUkConfigTable

   The otnODUkT group handles configuration information for otnODUkT.
      otnODUkTConfigTable
   The otnODUkP group handles configuration information for otnODUkP.
      otnODUkPConfigTable

   This internet draft does not define MIB objects for optical
   system cross-connects.  After consensus is reached on definitions
   of the interface MIB objects for optical systems (resulting from
   resolution of discussions on the objects proposed in this
   internet draft), work can progress on the definitions of
   tables to representing cross-connects (e.g., OCh optical 
   cross-connects and ODUk electrical cross-connects).

4.1.  The otnOTSn group

4.1.1.  otnOTSn Configuration Table

   This table contains information on configuration of
   otnOTSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.1.2.  otnOTSn Current Table

   This table contains information on current performance of
   otnOTSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.1.3.  otnOTSn Interval Table

   This table contains information on historic performance of
   otnOTSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.2.  The otnOMSn group

4.2.1.  otnOMSn Configuration Table

   This table contains information on configuration of
   otnOMSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.2.2.  otnOMSn Current Table

   This table contains information on current performance of
   otnOMSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.2.3.  otnOMSn Interval Table

   This table contains information on historic performance of
   otnOMSn interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.3.  The otnOCh group

4.3.1.  otnOCh Configuration Table
   This table contains information on configuration of
   otnOCh interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.3.2.  otnOCh Current Table

   This table contains information on current performance of
   otnOCh interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.3.3.  otnOCh Interval Table

   This table contains information on historic performance of
   otnOCh interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.4.  The otnOTUk group

4.4.1.  otnOTUk Configuration Table

   This table contains information on configuration of
   otnOTUk interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.5.  The otnODUkT group

4.5.1.  otnODUkT Configuration Table

   This table contains information on configuration of
   otnODUkT interfaces, in addition to the information
   on such interfaces contained in the ifTable.

4.6.  The otnODUkP group

4.6.1.  otnODUkP Configuration Table

   This table contains information on configuration of
   otnODUkP interfaces, in addition to the information
   on such interfaces contained in the ifTable.

5.  Object Definitions

OTN-MIB DEFINITIONS ::= BEGIN


IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Integer32,
      transmission
          FROM SNMPv2-SMI
    TruthValue
          FROM SNMPv2-TC
    SnmpAdminString
          FROM SNMP-FRAMEWORK-MIB 	
    MODULE-COMPLIANCE, OBJECT-GROUP
          FROM SNMPv2-CONF
    ifIndex
          FROM IF-MIB
    PerfCurrentCount, PerfIntervalCount
          FROM PerfHist-TC-MIB; 	

--  This is the MIB module for the OTN Interface objects.


otnMIB MODULE-IDENTITY
    LAST-UPDATED "200011500000Z"
    ORGANIZATION " "
    CONTACT-INFO
      "Anni Huynh 
       Lucent Technologies
       E-mail: ahuynh@lucent.com."
    DESCRIPTION
       "The draft MIB module to describe OTN interfaces objects."
    REVISION  "200011150000Z"	
    DESCRIPTION
       "The initial version."
    ::={ transmission yy}



--  This is the MIB module for the OTN objects

otnObjects      OBJECT IDENTIFIER ::= { otnMIB 1 }

otnOChObjects   OBJECT IDENTIFIER ::= { otnMIB 2 }


-- groups in the OTN MIB module

otnOTSn         OBJECT IDENTIFIER ::= { otnObjects 1 }

otnOMSn         OBJECT IDENTIFIER ::= { otnObjects 2 }

otnOCh          OBJECT IDENTIFIER ::= { otnOChObject 1 }

otnOTUk         OBJECT IDENTIFIER ::= { otnOChObjects 2 }

otnODUkT        OBJECT IDENTIFIER ::= { otnOChObjects 3 }

otnODUkP        OBJECT IDENTIFIER ::= { otnOChObjects 4 }


-- the otnOTSn group
-- This group handles the configuration and performance monitoring
-- information for OTS layers.
-- 

otnOTSnConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTSnConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The list of OTN OTSn interface entries."
     ::= { otnOTSn 1 } 


otnOTSnConfigEntry OBJECT-TYPE
    SYNTAX      OtnOTSnConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOTSnConfig table."
    INDEX   { ifIndex }
     ::= { otnOTSnConfigTable 1 }

OtnOTSnConfigEntry ::=
    SEQUENCE {
                otnOTSnTraceIdentifierTransmitted SnmpAdminString,
                otnOTSnTraceIdentifierExpected    SnmpAdminString,
                otnOTSnTraceIdentifierReceived    SnmpAdminString, 
                otnOTSnTimDetEnabled              TruthValue,
                otnOTSnTimActEnabled              TruthValue,
                otnOTSnAlarmReportControl         INTEGER,
                otnOTSnCurrentStatus              INTEGER,
                otnOTSnTimeElapsed                Unsigned32, 
                otnOTSnNbrOfValidIntervals        Counter32,
                otnOTSnNbrOfInvalidIntervals      Counter32
            }
                                                	
otnOTSnTraceIdentifierTransmitted OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier transmitted at the transmission side."
    ::= { otnOTSnConfigEntry 1 }

otnOTSnTraceIdentifierExpected OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64)) 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier expected at the received side"
    ::= { otnOTSnConfigEntry 2 }

otnOTSnTraceIdentifierReceived OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The actual trace identifier received."
    ::= { otnOTSnConfigEntry 3 }

 otnOTSnTimDetEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Detection function of TIM 
        (Trace Identifier Mismatch) failure is enabled or disable. 
        The value of TRUE means enabled."
    ::= { otnOTSnConfigEntry 4 }
                                                                       
otnOTSnTimActEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Consequent Action function of 
        detecting a TIM (Trace Identifier Mismatch) failure 
        is enabled or disabled. The value of TRUE means enabled."
    ::= { otnOTSnConfigEntry 5 }

otnOTSnAlarmReportControl OBJECT-TYPE           	
    SYNTAX  INTEGER  {
                alm(1),
                nalm(2),
                nalmTI(3),
                nalmQI(4)       	
            }           	
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This variable controls the alarm report."
    ::= { otnOTSnConfigEntry 6 }

otnOTSnCurrentStatus OBJECT-TYPE               	
    SYNTAX  INTEGER  {
                noDefect(1),
                ssfP(2),
                ssfO(3),
                ssf(4),
                fdiP(5),
                fdiO(6),
                fdi(7),
                tim(8),
                bdi(9),
                losP(10),
                losO(11),
                los(12),
                loop(13)     	
        }               	
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This variable indicates the failure condition of the entity."
    ::= { otnOTSnConfigEntry 7 }

otnOTSnTimeElapsed      OBJECT-TYPE     	
    SYNTAX      Gauge32 (0..900)
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Length of time in number of seconds elapsed in the current 
        monitoring period."
    ::= { otnOTSnConfigEntry 8 }
                                                                 
otnOTSnNbrOfValidIntervals OBJECT-TYPE  	
    SYNTAX      Counter32                       	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of previous valid intervals for which data is
        collected.  The number is the same for all the associated
        sublayers.  An OTN interface must be capable of supporting
        at least n intervals.
           The minimum value of n is 4.
           The default of n is 32.
           The maximum value of n is 96.
        The value will be  unless the measurement was
        (re-)started within the last (*15) minutes, in which
        case the value will be the number of complete 15
        minute intervals for which the agent has at least
        some data. In certain cases (e.g., in the case
        where the agent is a proxy) it is possible that some
        intervals are unavailable.  In this case, this
        interval is the maximum interval number for
        which data is available."
    ::= { otnOTSnConfigEntry 9 }

otnOTSnNbrOfInvalidIntervals    OBJECT-TYPE     	
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of intervals in the range from 0 to 
        otnOTSnNbrofValidIntervals for which no data is available."
    ::= { otnOTSnConfigEntry 10 }


otnOTSnSinkCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTSnSinkCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OTSn PM table."
     ::= { otnOTSn 3 } 

otnOTSnSinkCurrentEntry OBJECT-TYPE
    SYNTAX        OtnOTSnSinkCurrentEntry
    MAX-ACCESS          not-accessible
    STATUS        current
    DESCRIPTION
       "An entry in the otnOTSnSinkCurrent table."
    INDEX   { ifIndex }
     ::= { otnOTSnSinkCurrentTable 1 }

OtnOTSnSinkCurrentEntry ::=
    SEQUENCE {
        otnOTSnSinkCurrentSuspectedFlag     TruthValue,
        otnOTSnSinkCurrentTotalInputPwr     Integer32,
        otnOTSnSinkCurrentLoopThreshold     Integer32,
        otnOTSnSinkCurrentLaserTemp         Integer32,	
        otnOTSnSinkCurrentPMCounterReset    TruthValue                  	
      }

otnOTSnSinkCurrentSuspectedFlag OBJECT-TYPE	
    SYNTAX      TruthValue      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOTSnSinkCurrentEntry 1 }

otnOTSnSinkCurrentTotalInputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the input"
    ::= { otnOTSnSinkCurrentEntry 2 }
                                	
otnOTSnSinkCurrentLoopThreshold OBJECT-TYPE	
    SYNTAX      Integer32                                       	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OTSnSinkCurrentTotalInputPwr. 
        TCA trap should be sent"
    ::= { otnOTSnSinkCurrentEntry 3 }

otnOTSnSinkCurrentLaserTemp OBJECT-TYPE	
    SYNTAX      Integer32                                       	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is operating temperature of the Laser"
    ::= { otnOTSnSinkCurrentEntry 4 }


otnOTSnSinkCurrentPMCounterReset         OBJECT-TYPE	
    SYNTAX        TruthValue                                    	
    MAX-ACCESS    read-write    	
    STATUS        current
    DESCRIPTION
        "This value is set to True(1) to reset all performance 
        management counters. On completion the value is set to false."
    ::= { otnOTSnSinkCurrentEntry 5 }


otnOTSnSinkIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTSnSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OTSn Sink PM table for historical pm data."
     ::= { otnOTSn 4 }

otnOTSnSinkIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOTSnSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OTS Sink Interval table."
    INDEX   { ifIndex, otnOTSnSinkIntervalNbr }
     ::= { otnOTSnSinkIntervalTable 1 }

OtnOTSnSinkIntervalEntry ::=
    SEQUENCE {
        otnOTSnSinkIntervalNbr              Unsigned32,
        otnOTSnSinkIntervalSuspectedFlag    TruthValue,
        otnOTSnSinkIntervalTotalInputPwr    Integer32,
        otnOTSnSinkIntervalLoopThreshold    Integer32,
        otnOTSnSinkIntervalLaserTemp        Integer32
                }

otnOTSnSinkIntervalNbr  OBJECT-TYPE	
    SYNTAX      Unsigned32	
    MAX-ACCESS  not-accessible  	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of 
        statistics is available. The interval identified by 1 is 
        the most recently completed 15 minute interval, and the 
        interval identified by N is the interval immediately 
        preceding the one identified by N-1. "
    ::= { otnOTSnSinkIntervalEntry 1 }
                        	
otnOTSnSinkIntervalSuspectedFlag        OBJECT-TYPE	
    SYNTAX      TruthValue                      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry 
        may be unreliable. "
    ::= { otnOTSnSinkIntervalEntry 2 }

otnOTSnSinkIntervalTotalInputPwr        OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the input"
    ::= { otnOTSnIntervalCurrentEntry 3 }
                                	
otnOTSnSinkIntervalLoopThreshold        OBJECT-TYPE	
    SYNTAX        Integer32                                     	
    MAX-ACCESS    read-only     	
    STATUS        current
    DESCRIPTION
        "This is a threshold on oTSnSinkIntervalTotalInputPwr. 
        TCA trap should be sent"
    ::= { otnOTSnSinkIntervalEntry 4 }

otnOTSnSinkIntervalLaserTemp        OBJECT-TYPE	
    SYNTAX        Integer32                                     	
    MAX-ACCESS    read-only     	
    STATUS        current
    DESCRIPTION
        "This is the operating temperature of laser."
    ::= { otnOTSnSinkIntervalEntry 5 }


otnOTSnSrcCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTSnSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OTSn Source Current PM table."
     ::= { otnOTSn 5 }

otnOTSnSrcCurrentEntry OBJECT-TYPE
    SYNTAX      OtnOTSnSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OTS Source Current table."
    INDEX   { ifIndex }
     ::= { otnOTSnSrcCurrentTable 1 }

OtnOTSnSrcCurrentEntry ::=
    SEQUENCE {
        otnOTSnSrcCurrentSuspectedFlag      TruthValue,
        otnOTSnSrcCurrentTotalOutputPwr     Integer32,
        otnOTSnSrcCurrentLoopThreshold      Integer32,
        otnOTSnSrcCurrentLaserTemp          Integer32,
        otnOTSnSrcCurrentSafetyThreshold    Integer32
        otnOTSnSrcCurrentPMCounterReset     TruthValue  	
        }

otnOTSnSrcCurrentSuspectedFlag  OBJECT-TYPE	
    SYNTAX      TruthValue
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOTSnSrcCurrentEntry 1 }

otnOTSnSrcCurrentTotalOutputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the output."
    ::= { otnOTSnSrcCurrentEntry 2 }

otnOTSnSrcCurrentLoopThreshold  OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OTS-SRC total output Power indicating
        the existence of light energy emitted into the Ring."
    ::= { otnOTSnSrcCurrentEntry 3 }

otnOTSnSrcCurrentSafetyThreshold        OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OTS-SRC total output Power indicating
        that the light energy emitted into the Ring exceeds the
        safety threshold."
    ::= { otnOTSnSrcCurrentEntry 4 }

otnOTSnSrcCurrentLaserTemp        OBJECT-TYPE	
    SYNTAX        Integer32                                     	
    MAX-ACCESS    read-only     	
    STATUS        current
    DESCRIPTION
        "This is the operating temperature of laser."
    ::= { otnOTSnSinkIntervalEntry 5 }

otnOTSnSrcCurrentPMCounterReset OBJECT-TYPE	
    SYNTAX      TruthValue                                      	
    MAX-ACCESS  read-write      	
    STATUS      current
    DESCRIPTION
        " This value to True(1) to reset all performance 
          management counters. 
          On completion the NE sets back to false. "
    ::= { otnOTSnSrcCurrentEntry 6 }

otnOTSnSrcIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTSnSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OTSn Source PM table."
     ::= { otnOTSn 6 }

otnOTSnSrcIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOTSnSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OTS Source Interval table."
    INDEX   { ifIndex, otnOTSnSrcIntervalNbr }
     ::= { otnOTSnSrcIntervalTable 1 }

OtnOTSnSrcIntervalEntry ::=
    SEQUENCE {
        otnOTSnSrcIntervalNbr               Unsigned32, 
        otnOTSnSrcIntervalSuspectedFlag     TruthValue,
        otnOTSnSrcIntervalTotalOutputPwr    Integer32,
        otnOTSnSrcIntervalLoopThreshold     Integer32,
        otnOTSnSrcIntervalLaserTemp         Integer32,
        otnOTSnSrcIntervalSafetyThreshold   Integer32
        }

otnOTSnSrcIntervalNbr   OBJECT-TYPE	
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible  	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of statistics 
        is available. The interval identified by 1 is the most recently 
        completed 15 minute interval, and the interval identified by N is 
        the interval immediately preceding the one identified by N-1. "
    ::= { otnOTSnSrcIntervalEntry 1 }
                        	
otnOTSnSrcIntervalSuspectedFlag OBJECT-TYPE	
    SYNTAX      TruthValue                      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry may be 
        unreliable. "
    ::= { otnOTSnSrcIntervalEntry 2 }

otnOTSnSrcIntervalTotalOutputPwr        OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the output."
    ::= { otnOTSnSrcIntervalEntry 3 }

otnOTSnSrcIntervalLoopThreshold OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        " This is a threshold on OTS-SRC total output Power 
        indicating the existence of light energy emitted into the Ring"
    ::= { otnOTSnSrcIntervalEntry 4 }

otnOTSnSrcIntervalLaserTemp OBJECT-TYPE	
    SYNTAX      Integer32                                       	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is Laser Temperature"
    ::= { otnOTSnSinkCurrentEntry 5 }

otnOTSnSrcIntervalSafetyThreshold       OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        " This is a threshold on OTS-SRC total output Power indicating 
        that the light energy emitted into the Ring exceeds the 
        safety threshold."
    ::= { otnOTSnSrcIntervalEntry 6 }

-- End of OTS Group


-- the otnOMSn group
-- This group handles the configuration information for OMS layers.
-- 

otnOMSnConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOMSnConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OMSn Configuration table."
     ::= { otnOMSn 1 } 

otnOMSnConfigEntry OBJECT-TYPE
    SYNTAX      OtnOMSnConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOMSnConfig table."
    INDEX   { ifIndex }
     ::= { otnOMSnConfigTable 1 }

OtnOMSnConfigEntry ::=
    SEQUENCE {
        otnOMSnOrder                  Unsigned32,
        otnOMSnAlarmReportControl     INTEGER,
        otnOMSnCurrentStatus          INTEGER
        }

otnOMSnOrder OBJECT-TYPE                	
    SYNTAX      Unsigned32 (1..900)
    MAX-ACCESS  read-only	
    STATUS      current
    DESCRIPTION
       "The number of multiplexed optical channels."
    ::= { otnOMSnConfigEntry 1 }

otnOMSnAlarmReportControl OBJECT-TYPE           	
    SYNTAX  INTEGER  {
                alm(1),
                nalm(2),
                nalmTI(3),
                nalmQI(4)      	
            }           	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable controls the alarm report."
    ::= { otnOMSnConfigEntry 2 }

otnOMSnCurrentStatus OBJECT-TYPE               	
    SYNTAX  INTEGER  {
                noDefect(1),
                ssfP(2),
                ssfO(3),
                fdiP(4),
                fdiO(5),
                fdi(6)
                bdi(7),
                losP(8) 
        }               	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the failure condition of the entity."
    ::= { otnOMSnConfigEntry 3 }
                                                	

otnOMSnSinkCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOMSnSinkCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OMSn PM table."
     ::= { otnOMSn 2 } 

otnOMSnSinkCurrentEntry OBJECT-TYPE
    SYNTAX      OtnOMSnSinkCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOMSnSinkCurrent table."
    INDEX   { ifIndex }
     ::= { otnOMSnSinkCurrentTable 1 }

OtnOMSnSinkCurrentEntry ::=
    SEQUENCE {
        otnOMSnSinkCurrentSuspectedFlag      TruthValue,
        otnOMSnSinkCurrentAggregatedInputPwr Integer32,
        otnOMSnSinkCurrentLoopThreshold      Integer32
        otnOMSnSinkCurrentPMCounterReset     TruthValue                                 	
      }

otnOMSnSinkCurrentSuspectedFlag OBJECT-TYPE	
    SYNTAX      TruthValue                              	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOMSnSinkCurrentEntry 1 }

otnOMSnSinkCurrentAggregatedInputPwr    OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "0.1 dbm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The aggregated optical power of all the DWDM input channels."
        ::= { otnOMSnSinkCurrentEntry 2 }

otnOMSnSinkCurrentLoopThreshold OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Threshold for the OMS-SNK DWDM Input Power, indicating Loss Of 
        Optical DWDM Channels at the input to the Pre-OPA/in-line-OPA."
    ::= { otnOMSnSinkCurrentEntry 3 }
                                	

otnOMSnSinkCurrentPMCounterReset        OBJECT-TYPE	
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        " The value is set to True(1) to reset all performance
        management counters. On completion the value is set back 
        to false. "
    ::= { otnOMSnSinkCurrentEntry 4 }


otnOMSnSinkIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOMSnSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OMSn Sink PM table."
     ::= { otnOMSn 3 }

otnOMSnSinkIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOTSnSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OMS Sink Interval table."
    INDEX   { ifIndex, otnOMSnSinkIntervalNbr }
     ::= { otnOMSnSinkIntervalTable 1 }

OtnOMSnSinkIntervalEntry ::=
    SEQUENCE {
        otnOMSnSinkIntervalNbr                Unsigned32, 
        otnOMSnSinkIntervalSuspectedFlag      TruthValue,
        otnOMSnSInkIntervalAggregatedInputPwr Integer32,
        otnOMSnSinkIntervalLoopThreshold      Integer32
        }

otnOMSnSinkIntervalNbr  OBJECT-TYPE	
    SYNTAX      Unsigned32	
    MAX-ACCESS  not-accessible  	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of 
        statistics is available. The interval identified by 1 
        is the most recently completed 15 minute interval, and the 
        interval identified by N is the interval immediately  
        preceding the one identified by N-1. "
    ::= { otnOMSnSinkIntervalEntry 1 }
                        	
otnOMSnSinkIntervalSuspectedFlag        OBJECT-TYPE	
    SYNTAX      TruthValue                  	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry may be 
        unreliable. "
    ::= { otnOMSnSinkIntervalEntry 2 }

otnOMSnSinkIntervalAggregatedInputPwr   OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "0.1 dbm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The aggregated optical power of all the DWDM input channels."
    ::= { otnOMSnSinkIntervalEntry 3 }

otnOMSnSinkIntervalLoopThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Threshold for the "OMS-SNK DWDM Input Power", indicating Loss
        Of Optical DWDM Channels at the input to the 
        Pre-OPA/in-line-OPA."
    ::= { otnOMSnSinkIntervalEntry 4 }

otnOMSnSrcCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF otnOMSnSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OMSn Source Current PM table."
     ::= { otnOMSn 4 }

otnOMSnSrcCurrentEntry OBJECT-TYPE
    SYNTAX      OtnOMSnSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OMS Source Current table."
    INDEX   { ifIndex }
     ::= { otnOMSnSrcCurrentTable 1 }

OtnOMSnSrcCurrentEntry ::=
    SEQUENCE {
        otnOMSnSrcCurrentSuspectedFlag          TruthValue,
        otnOMSnSrcCurrentTotalOutputPwr         Integer32,
        otnOMSnSrcCurrentLoopThreshold          Integer32,
        otnOMSnSrcCurrentSafetyThreshold        Integer32,
        otnOMSnSrcCurrentPMCounterReset         TruthValue      	
        }

otnOMSnSrcCurrentSuspectedFlag  OBJECT-TYPE	
    SYNTAX      TruthValue      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOMSnSrcCurrentEntry 1 }

otnOMSnSrcCurrentTotalOutputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the output."
    ::= { otnOMSnSrcCurrentEntry 2 }

otnOMSnSrcCurrentLoopThreshold  OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OMS-SRC total output Power indicating
        the existence of light energy emitted into the Ring."
    ::= { otnOMSnSrcCurrentEntry 3 }

otnOMSnSrcCurrentSafetyThreshold  OBJECT-TYPE	
    SYNTAX        Integer32
    UNITS         " 0.1 dbm "                      
    MAX-ACCESS    read-only     	
    STATUS        current
    DESCRIPTION
        "This is a threshold on OMS-SRC total output Power indicating
        that the light energy emitted into the Ring exceeds the safety
        threshold."
    ::= { otnOMSnSrcCurrentEntry 4 }

otnOMSnSrcCurrentPMCounterReset OBJECT-TYPE	
    SYNTAX      TruthValue                                      	
    MAX-ACCESS  read-write      	
    STATUS      current
    DESCRIPTION
        " The value set to True(1)will reset all performance 
        management counters. 
        On completion the value is set back to false. "
    ::= { otnOMSnSrcCurrentEntry 5 }


otnOMSnSrcIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOMSnSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OMSn Source PM table."
     ::= { otnOMSn 5 }
                                                                      
otnOMSnSrcIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOMSnSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OTS Source Interval table."
    INDEX   { ifIndex, otnOMSnSrcIntervalNbr }
     ::= { otnOMSnSrcIntervalTable 1 }

OtnOMSnSrcIntervalEntry ::=
    SEQUENCE {
        otnOMSnSrcIntervalNbr                    Unsigned32, 
        otnOMSnSrcIntervalSuspectedFlag          TruthValue,
        otnOMSnSrcIntervalTotalOutputPwr         Integer32,
        otnOMSnSrcIntervalLoopThreshold          Integer32,
        otnOMSnSrcIntervalSafetyThreshold        Integer32
        }

otnOMSnSrcIntervalNbr   OBJECT-TYPE	
    SYNTAX          Unsigned32
    MAX-ACCESS  not-accessible  	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of
        statistics is available. The interval identified by 1 
        is the most recently completed 15 minute interval, and the 
        interval identified by N is the interval immediately
        preceding the one identified by N-1. "
    ::= { otnOMSnSrcIntervalEntry 1 }
                        	
otnOMSnSrcIntervalSuspectedFlag OBJECT-TYPE	
    SYNTAX      TruthValue                      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry may be 
        unreliable. "
    ::= { otnOMSnSrcIntervalEntry 2 }

otnOMSnSrcIntervalTotalOutputPwr        OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                   	
    MAX-ACCESS  read-only     	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the output."
    ::= { otnOMSnSrcIntervalEntry 3 }

otnOMSnSrcIntervalLoopThreshold OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OMS-SRC total output Power 
        indicating the existence of light energy emitted into the Ring."
    ::= { otnOMSnSrcIntervalEntry 4 }

otnOMSnSrcIntervalSafetyThreshold       OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        " This is a threshold on OMS-SRC total output Power indicating
        that the light energy emitted into the Ring exceeds the safety 
        threshold."
    ::= { otnOMSnSrcIntervalEntry 5 }

-- End of OMS Group


-- The otnOCh group
-- This group handles the configuration and 
-- performance monitoring information for OCh  layers.
-- 


    otnOChConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOChConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OCh Configuration table."
     ::= { otnOCh 1 } 

otnOChConfigEntry OBJECT-TYPE
    SYNTAX      OtnOChConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOChConfig table."
    INDEX   { ifIndex }
     ::= { otnOChConfigTable 1 }


OtnOChConfigEntry ::=
    SEQUENCE {	
        otnOChAlarmReportControl        INTEGER,
        otnOChCurrentStatus                    INTEGER
         }

otnOChAlarmReportControl OBJECT-TYPE            	
    SYNTAX  INTEGER  {
        alm(1),
        nalm(2),
        nalmTI(3),
        nalmQI(4)       	
        }               	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable controls the alarm report."
    ::= { otnOChConfigEntry 1 }

otnOChCurrentStatus OBJECT-TYPE                	
    SYNTAX  INTEGER  {
        noDefect(1),
        los(2),
        losc(3),
        fdi(4),
        lof(5),
        ais(6)	
        }           	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the failure condition of 
        the entity."
    ::= { otnOChConfigEntry 2 }

otnOChSinkCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOChSinkCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OCh PM table."
     ::= { otnOCh 2 } 
        	
otnOChSinkCurrentEntry OBJECT-TYPE
    SYNTAX      OtnOChSinkCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOChSinkCurrent table."
    INDEX   { ifIndex }
     ::= { otnOChSinkCurrentTable 1 }

OtnOChSinkCurrentEntry ::=
    SEQUENCE {
        otnOChSinkCurrentSuspectedFlag  TruthValue,
        otnOChSinkCurrentTotalInputPwr  Integer32,
        otnOChSinkCurrentLoopThreshold  Integer32
        otnOChSinkCurrentPMCounterReset TruthValue                                              	
      }

otnOChSinkCurrentSuspectedFlag  OBJECT-TYPE	
    SYNTAX      TruthValue                              	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOChSinkCurrentEntry 1 }

otnOChSinkCurrentTotalInputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS           " 0.1 dbm "                 	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the input."
    ::= { otnOChSinkCurrentEntry 2 }
                                	
otnOChSinkCurrentLoopThreshold  OBJECT-TYPE	
    SYNTAX      Integer32                                       	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OChSinkCurrentTotalInputPwr."
    ::= { otnOChSinkCurrentEntry 3 }

otnOChSinkCurrentPMCounterReset OBJECT-TYPE	
    SYNTAX      TruthValue                                      	
    MAX-ACCESS  read-write      	
    STATUS      current
    DESCRIPTION
        "The value is set to True(1) to reset all performance 
        management counters. 
        On completion the NE sets back to false."
    ::= { otnOChSinkCurrentEntry 4 }

otnOChSinkIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOChSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OCh Sink PM table."
     ::= { otnOCh 3 }

otnOChSinkIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOChSinkIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OCH PM  table."
    INDEX   { ifIndex, otnOChSinkInterval }
     ::= { otnOChSinkIntervalTable 1 }

OtnOChSinkIntervalEntry ::=
    SEQUENCE {
        otnOChSinkIntervalNbr           Unsigned32, 
        otnOChSinkIntervalSuspectedFlag TruthValue,
        otnOChSinkTotalInputPwr         Integer32,
        otnOChSinkLoopThreshold         Integer32
        }

otnOChSinkIntervalNbr   OBJECT-TYPE	
    SYNTAX      Unsigned32                         	
    MAX-ACCESS  not-accessible        	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of 
        statistics is available. The interval identified by 1 is 
        the most recently completed 15 minute interval, and the 
        interval identified by N is the interval immediately
        preceding the one identified by N-1. "
    ::= { otnOChSinkIntervalEntry 1 }
                        	
otnOChSinkIntervalSuspectedFlag OBJECT-TYPE	
    SYNTAX      TruthValue                  	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry may
        be unreliable."
    ::= { otnOChSinkIntervalEntry 2 }

otnOChSinkInternalTotalInputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the input."
    ::= { otnOChSinkIntervalEntry 3 }
                                	
otnOChSinkIntervalLoopThreshold OBJECT-TYPE	
    SYNTAX      Integer32                                       	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OChSinkIntervalTotalInputPwr."
    ::= { otnOChSinkIntervalEntry 4 }



otnOChSrcCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOChSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OCh Source Current PM table."
     ::= { otnOCh 4 }

otnOChSrcCurrentEntry OBJECT-TYPE
    SYNTAX      OtnOChSrcCurrentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OCh Source Current table."
    INDEX   { ifIndex }
     ::= { otnOChSrcCurrentTable 1 }

OtnOChSrcCurrentEntry ::=
    SEQUENCE {
        otnOChSrcCurrentSuspectedFlag    TruthValue,
        otnOChSrcCurrentTotalOutputPwr   Integer32,
        otnOChSrcCurrentLoopThreshold    Integer32,
        otnOChSrcCurrentSafetyThreshold  Integer32,
        otnOChSrcCurrentPMCounterReset   TruthValue     	
        }

otnOChSrcCurrentSuspectedFlag   OBJECT-TYPE	
    SYNTAX      TruthValue      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If True(1), the statistic of this interval may be unreliable."
    ::= { otnOChSrcCurrentEntry 1 }

otnOChSrcCurrentTotalOutputPwr  OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "Total Optical Power Monitored at the output."
    ::= { otnOChSrcCurrentEntry 2 }

otnOChSrcCurrentLoopThreshold   OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OCh-SRC total output Power indicating
        the existence of light energy emitted into the Ring. "
    ::= { otnOChSrcCurrentEntry 3 }

otnOChSrcCurrentSafetyThreshold OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS           " 0.1 dbm "                 	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OCH-SRC total output Power indicating
        that the light energy emitted into the Ring exceeds the
        safety threshold."
    ::= { otnOChSrcCurrentEntry 4 }

otnOChSrcCurrentPMCounterReset  OBJECT-TYPE	
    SYNTAX      TruthValue                                      	
    MAX-ACCESS  read-write      	
    STATUS      current
    DESCRIPTION
        "The value is set to True(1) to reset all performance 
        management counters. 
        On completion the NE sets back to false."
    ::= { otnOChSrcCurrentEntry 5 }

otnOChSrcIntervalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOChSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OTN OCh Source PM table."
     ::= { otnOCh 5 }

otnOChSrcIntervalEntry OBJECT-TYPE
    SYNTAX      OtnOChSrcIntervalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the OCH Source Interval table."
    INDEX   { ifIndex, otnOChSrcIntervalNbr }
     ::= { otnOChSrcIntervalTable 1 }

OtnOChSrcIntervalEntry ::=
    SEQUENCE {
        otnOChSrcIntervalNbr                Unsigned32, 
        otnOChSrcIntervalSuspectedFlag      TruthValue,
        otnOChSrcIntervalTotalOutputPwr     Integer32,
        otnOChSrcIntervalLoopThreshold      Integer32,
        otnOChSrcIntervalSafetyThreshold    Integer32
        }

otnOChSrcIntervalNbr    OBJECT-TYPE	
    SYNTAX      Unsigned32	
    MAX-ACCESS  not-accessible  	
    STATUS      current
    DESCRIPTION
        " The number identifies the interval for which the set of 
        statistics is available. The interval identified by 1 is 
        the most recently completed 15 minute interval, and the 
        interval identified by N is the interval immediately
        preceding the one identified by N-1. "
    ::= { otnOChSrcIntervalEntry 1 }
                        	
otnOChSrcIntervalSuspectedFlag  OBJECT-TYPE	
    SYNTAX      TruthValue                      	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "If the value is True(1), the statistics in this entry may be 
        unreliable."
    ::= { otnOChSrcIntervalEntry 2 }

otnOChSrcIntervalTotalOutputPwr OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only                
    STATUS      current
    DESCRIPTION
         "Total Optical Power Monitored at the output."
    ::= { otnOChSrcIntervalEntry 3 }

otnOChSrcIntervalLoopThreshold  OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OCH-SRC total output Power indicating
        the existence of light energy emitted into the Ring."
    ::= { otnOChSrcIntervalEntry 4 }

otnOChSrcIntervalSafetyThreshold        OBJECT-TYPE	
    SYNTAX      Integer32
    UNITS       " 0.1 dbm "                     	
    MAX-ACCESS  read-only       	
    STATUS      current
    DESCRIPTION
        "This is a threshold on OCH-SRC total output Power indicating
        that the light energy emitted into the Ring exceeds the safety
        threshold."
    ::= { otnOChSrcIntervalEntry 5 }


-- End of OCh Group


-- the otnOTUk group
-- 
-- 

otnOTUkConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnOTUkConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The list of OTN OTUk interface entries."
     ::= { otnOTUk 1 } 

otnOTUkConfigEntry OBJECT-TYPE
    SYNTAX      OtnOTUkConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnOTUkConfig table."
    INDEX   { ifIndex }
     ::= { otnOTUkConfigTable 1 }

OtnOTUkConfigEntry ::=
    SEQUENCE {
        otnOTUkTraceIdentifierTransmitted  SnmpAdminString,
        otnOTUkTraceIdentifierExpected     SnmpAdminString,
        otnOTUkTraceIdentifierReceived     SnmpAdminString, 
        otnOTUkTimDetEnabled               TruthValue,
        otnOTUkTimActEnabled               TruthValue,
        otnOTUkAlarmReportControl          INTEGER,
        otnOTUkCurrentStatus               INTEGER 
        }
                                                	
otnOTUkTraceIdentifierTransmitted OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier transmitted at the transmission side."
    ::= { otnOTUkConfigEntry 1 }

otnOTUkTraceIdentifierExpected OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64)) 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier expected at the received side"
    ::= { otnOTUkConfigEntry 2 }

otnOTUkTraceIdentifierReceived OBJECT-TYPE
    SYNTAX      SnmpAdminString(SIZE (0..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The actual trace identifier received."
    ::= { otnOTUkConfigEntry 3 }

 otnOTUkTimDetEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Detection function of TIM 
        (Trace Identifier Mismatch) failure is enabled or disable. 
        The value of TRUE means enabled"
    ::= { otnOTUkConfigEntry 4 }

otnOTUkTimActEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Consequent Action function of 
        detecting a TIM (Trace Identifier Mismatch) failure 
        is enabled or disabled. The value of TRUE means enabled."
    ::= { otnOTUkConfigEntry 5 }

otnOTUkAlarmReportControl OBJECT-TYPE          	
    SYNTAX  INTEGER  {
        alm(1),
        nalm(2),
        nalmTI(3),
        nalmQI(4)       	
        }               	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable controls the alarm report."
    ::= { otnOTUkConfigEntry 6 }

otnOTUkCurrentStatus OBJECT-TYPE              	
    SYNTAX  INTEGER  {
        noDefect(1), 
        tim(2),
        deg(3),
        bdi(4),
        ssf(5)
        }               	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the failure condition of the entity."
    ::= { otnOTUkConfigEntry 7 }


-- the otnODUkT group
-- 
-- 

otnODUkTConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnODUkTConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The list of OTN ODUkT interface entries."
     ::= { otnOTUkT 1 } 

otnODUkTConfigEntry OBJECT-TYPE
    SYNTAX        OtnODUkTConfigEntry  
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
       "An entry in the otnODUkTConfig table."
    INDEX   { ifIndex }
     ::= { otnODUkTConfigTable 1 }

OtnODUkTConfigEntry ::=
    SEQUENCE {
        otnODUkTTraceIdentifierTransmitted  SnmpAdminString,
        otnODUkTTraceIdentifierExpected     SnmpAdminString,
        otnODUkTTraceIdentifierReceived     SnmpAdminString, 
        otnODUkTTimDetEnabled               TruthValue,
        otnODUkTTimActEnabled               TruthValue,
        otnODUkTAlarmReportControl          INTEGER,
        otnODUkTCurrentStatus               INTEGER, 
        otnODUkTLockSignalAdminState        INTEGER,
        otnODUkTTopOfStack                  Unsigned32,
        otnODUkTMaxTopOfStack               Unsigned32       
        }
                                                	
otnODUkTTraceIdentifierTransmitted OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier transmitted at the transmission side."
    ::= { otnODUkTConfigEntry 1 }

otnODUkTTraceIdentifierExpected OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64)) 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier expected at the received side"
    ::= { otnODUkTConfigEntry 2 }

otnODUkTTraceIdentifierReceived OBJECT-TYPE
    SYNTAX      SnmpAdminString(SIZE (0..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The actual trace identifier received."
    ::= { otnODUkTConfigEntry 3 }


 otnODUkTTimDetEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Detection function of TIM 
        (Trace Identifier Mismatch) failure is enabled or disable. 
        The value of TRUE means enabled."
    ::= { otnODUkTConfigEntry 4 }

otnODUkTTimActEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Consequent Action function of 
        detecting a TIM (Trace Identifier Mismatch) failure 
        is enabled or disabled. The value of TRUE means enabled."
    ::= { otnODUkTConfigEntry 5 }

otnODUkTAlarmReportControl OBJECT-TYPE          	
    SYNTAX  INTEGER  {
        alm(1),
        nalm(2),
        nalmTI(3),
        nalmQI(4)       	
      }         	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
   "This variable controls the alarm report."
    ::= { otnODUkTConfigEntry 6 }

otnODUkTCurrentStatus OBJECT-TYPE              	
    SYNTAX  INTEGER  {
        noDefect(1), 
        ais(2),
        oci(3),
        lck(4),
        tim(5),
        deg(6),
        bdi(7),
        ssf(8),
        cMaxTosIngress(9),
        tovr(10),
        tz(11),
        udr(12)
}               	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the failure condition of the entity."
    ::= { otnODUkTConfigEntry 7 }

otnODUkTLockSignalAdminState OBJECT-TYPE
    SYNTAX  INTEGER {
        locked(1),
        unLocked(2)
        }       	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable provides the capability to provision the LOCK 
        signal, which is one of the ODUk maintenance signals."
    ::= { otnODUkTConfigEntry 8 }

otnODUkTTopOfStack OBJECT-TYPE          	
    SYNTAX      Unsigned32 (0..6)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the number of active Tandem
        Connection (TC) trails at this point."
    ::= { otnODUkTConfigEntry 9 }

otnODUkTMaxTopOfStack OBJECT-TYPE               	
    SYNTAX      Unsigned32 (0..6)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
         "This variable indicates the maximum number of Tandem
        Connection Monitoring (TCM) overhead fields to be passed 
        through a network domain. These TCM overhead fields are in
        the range 1..otnODUkTMaxTopOfStack."
    ::= { otnODUkTConfigEntry 10 }

-- the otnODUkP group
-- 
-- 

otnODUkPConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OtnODUkPConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The list of OTN OTUKP interface entries."
     ::= { otnODUkP 1 } 

otnODUkPConfigEntry OBJECT-TYPE
    SYNTAX      OtnODUkPConfigEntry  
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "An entry in the otnODUkPConfig table."
    INDEX   { ifIndex }
     ::= { otnODUkPConfigTable 1 }

OtnODUkPConfigEntry ::=
    SEQUENCE {
        otnODUkPTraceIdentifierTransmitted  SnmpAdminString,
        otnODUkPTraceIdentifierExpected     SnmpAdminString,
        otnODUkPTraceIdentifierReceived     SnmpAdminString, 
        otnODUkPTimDetEnabled               TruthValue,
        otnODUkPTimActEnabled               TruthValue,
        otnODUkPAlarmReportControl          INTEGER,
        otnODUkPCurrentStatus               INTEGER, 
        otnODUkPPayloadTypeTransmitted      INTEGER,
        otnODUkPPayloadTypeExpected         INTEGER,
        otnODUkPPayloadTypeRecreived        INTEGER,
        otnODUkPCBRMapping                  INTEGER,
        otnODUkPActiveAdaptFuncSource       INTEGER,
        otnODUkPActiveAdaptFuncSink         INTEGER
        }
                                                	
otnOdUkPTraceIdentifierTransmitted OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier transmitted at the transmission side."
    ::= { otnODUkPConfigEntry 1 }

otnODUkPTraceIdentifierExpected OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE(0..64)) 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The trace identifier expected at the received side"
    ::= { otnOTUkPConfigEntry 2 }

otnODUkPTraceIdentifierReceived OBJECT-TYPE
    SYNTAX      SnmpAdminString(SIZE (0..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The actual trace identifier received."
    ::= { otnODUkPConfigEntry 3 }

 otnODUkPTimDetEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Detection function of TIM 
        (Trace Identifier Mismatch) failure is enabled or disable. 
        The value of TRUE means enabled."
    ::= { otnODUkPConfigEntry 4 }

otnODUkPTimActEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "Indicates whether the Consequent Action function of 
        detecting a TIM (Trace Identifier Mismatch) failure 
        is enabled or disabled. The value of TRUE means enabled."
    ::= { otnODUkPConfigEntry 5 }

otnODUkPAlarmReportControl OBJECT-TYPE          	
    SYNTAX  INTEGER  {
        alm(1),
        nalm(2),
        nalmTI(3),
        nalmQI(4)       	
      }         	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "This variable controls the alarm report."
    ::= { otnODUkPConfigEntry 6 }

otnODUkPCurrentStatus OBJECT-TYPE              	
    SYNTAX  INTEGER  {
        noDefect(1), 
        lck(2),	
        tim(3),
        oci(4),
        ais(5),
        deg(6),
        bdi(7),
        ssf(8),
        plm(9)
}               	
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the failure condition of the entity."
    ::= { otnODUkPConfigEntry 7 }

otnODUkPPayloadTypeTransmitted OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The payload type signal transmitted at the transmission side."
    ::= { otnODUkPConfigEntry 8 }

otnODUkPPayloadTypeExpected OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The payload type signal expected at the received side."
    ::= { otnOTUkPConfigEntry 9 }

otnODUkPPayloadTypeReceived OBJECT-TYPE
    SYNTAX      Unsigned (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "The actual payload type signal received."
    ::= { otnODUkPConfigEntry 10}

otnODUkPCBRMapping OBJECT-TYPE              	
    SYNTAX  INTEGER  {
        async(1), 
        bitSync(2)
	}               	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable control the mapping for the constant bit 
	   rate (CBR) adaptation function."
    ::= { otnODUkPConfigEntry 11 }

otnODUkPActiveAdaptFuncSource OBJECT-TYPE              	
    SYNTAX  INTEGER  {
         cBR(1), 
         cBRa(2),
	   cBRb(3),
	   aTMvp(4),
	   gFP(5),
	   nULL(6),
	   pRBS(7),
	   rSn(8)
	}               	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable indicates the active
	   adaptation function at the interface port."
    ::= { otnODUkPConfigEntry 12 }

otnODUkPActiveAdaptFuncSink OBJECT-TYPE              	
    SYNTAX  INTEGER  {
         cBR(1), 
	   aTMvp(2),
	   gFP(3),
	   nULL(4),
	   pRBS(5),
	   rSn(6)
	}               	
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable indicates the active
	    adaptation function."
    ::= { otnODUkPConfigEntry 13 }

-- conformance information
-- To be Added

END


6.  Security Considerations

   There are a number of management objects defined in this MIB that
   have a MAX-ACCESS clause of read-write and/or read-create.  Such
   objects may be considered sensitive or vulnerable in some network
   environments. The support for SET operations in a non-secure
   environment without proper protection can have a negative effect on
   network operations.

   The managed objects in this MIB contain sensitive information since,
   collectively, they allow influencing of interfaces in OTN equipment
   or networks and provide information of their configuration.

   It is thus important to control even GET access to these objects and
   possibly to even encrypt the values of these object when sending them
   over the network via SNMP. Not all versions of SNMP provide features
   for such a secure environment.

   SNMPv1 by itself is not a secure environment. Even if the network
   itself is secure (for example by using IPSec), even then, there is no
   control as to who on the secure network is allowed to access and
   GET/SET (read/change/create/delete) the objects in this MIB.

   It is recommended that the implementers consider the security
   features as provided by the SNMPv3 framework. Specifically, the use
   of the User-based Security Model RFC 2274 [12] and the View-based
   Access Control Model RFC 2275 [15] is recommended.

   It is then a customer/user responsibility to ensure that the SNMP
   entity giving access to an instance of this MIB, is properly
   configured to give access to the objects only to those principals
   (users) that have legitimate rights to indeed GET or SET
   (change/create/delete) them.

7.  Acknowledgements

   This internet draft is the collaborative effort of a geographical
   diverse team of individuals coming together for the purpose of 
   this effort.

   Mark Stewart/Brian Teer wrote sections on use of interface tables
   and reviewed the MIB Object Definitions for SNMP SMIv2 compliance.
   Anni Huynh wrote the MIB definitions for OTN interface. 
   Kam Lam wrote the sections on Optical Networking Terminology.
   
   Tom Rutt wrote the summary section on the Structure of the MIB.
   Maarten Vissers provided insight into Optical Networking concepts.
   Nathan Kohn initiated the concept, then gathered and coordinated
   the team leading to this internet draft and is responsible for any
   typos.

   Thanks to Lakshmi Raman and Moshe Rozenblit of Teraburst Networks
   for reviewing and commenting on a preliminary version of this
   Internet-Draft.

8.  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]  SNMPv2 Working Group, 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]  SNMPv2 Working Group, 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]  SNMPv2 Working Group, 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]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.  and S.
        Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901,
        January 1996.

   [10] SNMPv2 Working Group, 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] SNMPv2 Working Group, 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] McCloghrie, K. and M. Rose, "Management Information Base for
        Network Management of TCP/IP-based internets - MIB-II", STD 17,
        RFC 1213, March 1991.

   [17] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB",
        RFC 2863, June 2000.

   [18] Tesink, K., " Textual Conventions for MIB Modules Using
        Performance History Based on 15 Minute Intervals", RFC 2493,
        January 1999.

   [19] ITU Recommendation G.709, "Network Node Interface for the
        Optical Transport Network(OTN)", Draft Issue 0.8.3 (10/00)

   [20] ITU Recommendation G.798, "Characteristics of Optical
        Transport Network Hierarchy Equipment Functional Blocks",
        Draft Issue 0.5.1 (10/00)

   [21] ITU Recommendation G.872, "Transmission Systems and Media,
        Digital Systems and Networks - Digital transmission systems
        Digital networks, and Optical transport networks",
        Draft 1.3 (9/00)

   [22] ITU Recommendation G.874, "Management aspects of the optical
        transport network element", Draft 1.4 (4/14/2000)

9.  Author's Address

   Name:    Mark A. Stewart
   Company: Lucent Technologies
   Address: 1801 Varsity Drive, MS-409F
            Raleigh, NC 27606
   Phone:   919-838-5572
   EMail:   markstewart@lucent.com

   Name(s): An-ni Huynh
   Company: Lucent Technologies
   Address: 480 Red Hill Road, Room 1B-223
            Middletown, NJ 07748-3098
   Phone:   732-615-5402
   EMail:   ahuynh@lucent.com

   Name(s): Kam Lam
   Company: Lucent Technologies
   Address: 480 Red Hill Road, Room 1D-226
            Middletown, NJ 07748-3098
   Phone:   732-615-4118
   EMail:   hklam@lucent.com

10. 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.  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 implementors 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.

Expires May 15 2001                                           [Page xx]