TROPIC-GMPLS-LSP-MIB DEFINITIONS ::= BEGIN

-- (c) Copyright 2019 Nokia Networks.  All rights reserved.
-- This software is the confidential and proprietary property of
-- Nokia and may only be used in accordance with the terms of the
-- license agreement provided with this software.

IMPORTS
      MODULE-IDENTITY, OBJECT-TYPE,
      Integer32, Unsigned32                   FROM SNMPv2-SMI
      MODULE-COMPLIANCE, OBJECT-GROUP         FROM SNMPv2-CONF
      TEXTUAL-CONVENTION,
      TruthValue, DisplayString, RowStatus    FROM SNMPv2-TC
      tnGmplsMIBModules, tnGmplsObjs          FROM TROPIC-GLOBAL-REG;


  tnGmplsLspMibModule MODULE-IDENTITY
      LAST-UPDATED    "201802231200Z"
      ORGANIZATION    "Nokia"
      CONTACT-INFO    "Nokia
                       Attn: Jeff Donnelly
                       600 Mountain Avenue
                       New Providence, NJ 07974

                       Phone: +1 732 221 6408
                       Email: jeff.donnelly@nokia.com"

      DESCRIPTION "Extended version for support of L0 for 1830 R7.0 WDM."

      REVISION    "201802231200Z"
      DESCRIPTION "Updated the contact info."

      REVISION    "201611161200Z"
      DESCRIPTION "Updated the contact info."

      REVISION    "201308290000Z"
      DESCRIPTION "Initial version."

      ::= { tnGmplsMIBModules 3 }

-----------------------------------------------------------------------
-- DESCRIPTION of this MIB
-----------------------------------------------------------------------
-- tnGmplsLspTable is the main table and contains the general GMPLS LSP
-- attributes.  The table contains all LSPs that are starting on this
-- node.  For each LSP that is head on the node there is one entry in
-- this table.  The table is indexed by the gmreLSPIndex which is the
-- local LSP Index of GMPLS CLI.
-- Note, this gmreLSPIndex in combination with tnGmplsLspSrcLsrId are
-- the global unique identifiers of the LSP on all nodes passed.
-- The gmreLSPIndex are system assigned values, it cannot be changed.


-----------------------------------------------------------------------
-- Top level components of this MIB
-----------------------------------------------------------------------
  tnGmplsLspMIB           OBJECT IDENTIFIER ::= { tnGmplsObjs 3 }

-- tables, scalars
  tnGmplsLspObjs          OBJECT IDENTIFIER ::= { tnGmplsLspMIB 1 }

-- traps
--  tnGmplsLspNotifications  OBJECT IDENTIFIER ::= { tnGmplsLspMIB 2 }
--  tnGmplsLspNotifyPrefix   OBJECT IDENTIFIER ::= { tnGmplsLspNotifications 0 }

  tnGmplsLspConf           OBJECT IDENTIFIER ::= { tnGmplsLspMIB 3 }
  tnGmplsLspGroups         OBJECT IDENTIFIER ::= { tnGmplsLspConf 1}
  tnGmplsLspCompliances    OBJECT IDENTIFIER ::= { tnGmplsLspConf 2}

--------------------------------------------------------------------------------
-- Type Definitions
--------------------------------------------------------------------------------
    AluWdmGmplsLspProtectionState ::= TEXTUAL-CONVENTION
        STATUS         current
        DESCRIPTION    "FEC mode for OT cards."
        SYNTAX         INTEGER {
                         undefined(1),
                         normal(2),
                         failed(3),
                         noBackup(4),
                         restored(5),
                         restoredNoBackup(6),
                         apeInProgress(7),
                         failedButConnected(8),
                         restoring(9),
                         failedNoReroutePossible(10),
                         prepareSoftReroute(11),
                         softReroutingInProgress (12)
                       }

--------------------------------------------------------------------------------
-- GMPLS Label Switched Path (LSP) Scalar
--------------------------------------------------------------------------------
    tnGmplsLspAttributeTotal OBJECT-TYPE
        SYNTAX         Integer32
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Total number of attributes in this MIB file."
        ::= { tnGmplsLspObjs 1 }

-----------------------------------------------------------------------
-- GMPLS Label Switched Path (LSP) Table
-----------------------------------------------------------------------
    tnGmplsLspTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspTable."
        ::= { tnGmplsLspObjs 2 }

    tnGmplsLspEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents an GMPLS LSP."
        REFERENCE      "?"
        INDEX          { tnGmplsLspSrcLspId }
        ::= { tnGmplsLspTable 1 }

    TnGmplsLspEntry ::= SEQUENCE {
        tnGmplsLspSrcLspId               Unsigned32,
        tnGmplsLspDescr                  DisplayString,
        tnGmplsLspIngressResource        DisplayString,
        tnGmplsLspEgressResource         DisplayString,
        tnGmplsLspDestLsrId              Unsigned32,
        tnGmplsLspSetupPrio              Integer32,
        tnGmplsLspHoldingPrio            Integer32,
        tnGmplsLspDirectionType          INTEGER,
        tnGmplsLspTrafficType            INTEGER,
        tnGmplsLspProtectionType         INTEGER,
        tnGmplsLspReversionMode          INTEGER,
        tnGmplsLspIncludeAnyAffinity     Unsigned32,
        tnGmplsLspExcludeAnyAffinity     Unsigned32,
        tnGmplsLspConnectionType         INTEGER,
        tnGmplsLspAdminStatus            INTEGER,
        tnGmplsLspDiversityLspList       DisplayString,
        tnGmplsLspLatencyThreshold       Unsigned32,
        tnGmplsLspMaxHopsConstraint      Unsigned32,
        tnGmplsLspActions                INTEGER,
        tnGmplsLspProtectionStateMain    AluWdmGmplsLspProtectionState,
        tnGmplsLspProtectionStateSpare   AluWdmGmplsLspProtectionState,
        tnGmplsLspReversionState         INTEGER,
        tnGmplsLspSRGViolation           TruthValue,
        tnGmplsLspColorViolation         TruthValue,
        tnGmplsLspOptFsbltyViolation     TruthValue,
        tnGmplsLspQoSViolation           TruthValue,
        tnGmplsLspLatencyViolation       TruthValue
    }

    tnGmplsLspSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsLspEntry 1 }

    tnGmplsLspDescr OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "LSP description."
        ::= { tnGmplsLspEntry 2 }

    tnGmplsLspIngressResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Source link + label.
                        Format is: [<DP node Id>/<DataLink Id>]+ with
                          <DPNodeId>:    Id with range of 32bit int
                          <DataLink Id>: Id in rrsbbpp01 format
                        Can only be set at LSP creation.
                        This parameter is mandatory for LSP creation."
        ::= { tnGmplsLspEntry 3 }

    tnGmplsLspEgressResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Destination link + label.
                          Format is: [<DP Node Id>/<DataLink Id>/<Label>]+ with
                            <DP Node Id>:  Id with range 32bit int
                            <DataLink Id>: Id in rrsbbpp01 format
                        Can only be set at LSP creation.
                        This parameter is mandatory."
        ::= { tnGmplsLspEntry 4 }

    tnGmplsLspDestLsrId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "CP Node Id of the destination node of this LSP."
        ::= { tnGmplsLspEntry 5 }

    tnGmplsLspSetupPrio OBJECT-TYPE
        SYNTAX         Integer32 (1..5)
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Indicates the setup priority of this tunnel."
        ::= { tnGmplsLspEntry 6 }

    tnGmplsLspHoldingPrio OBJECT-TYPE
        SYNTAX         Integer32 (1..5)
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Indicates the holding priority for this tunnel."
        ::= { tnGmplsLspEntry 7 }

    tnGmplsLspDirectionType OBJECT-TYPE
        SYNTAX         INTEGER {
                         bidirectional(1)
                         -- unidirectional(2)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Whether this tunnel carries forward data only
                        (is unidirectional) or is bidirectional."
        DEFVAL         { bidirectional }
        ::= { tnGmplsLspEntry 8 }

    tnGmplsLspTrafficType OBJECT-TYPE
        SYNTAX         INTEGER {
                         --    vc3(1),
                         --    vc4(2),
                         --    vc4_4c(3),
                         --    vc4_16c(4),
                         --    vc4_64c(5),
                         --    vc4_256c(6),
                         --    oduflex(7),
                         och(8)
                         --    odu0(9),
                         --    odu1(10),
                         --    odu2(11),
                         --    odu2e(12),
                         --    odu3(13),
                         --    odu3e(14),
                         --    odu3e2(15),
                         --    odu4(16)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Service traffic of the Lsp.  This parameter is
                        mandatory for creation."
        ::= { tnGmplsLspEntry 9 }

    tnGmplsLspProtectionType OBJECT-TYPE
        SYNTAX         INTEGER {
                         unprotected(1),
                         sbr(2),
                         guaranteed(3),
                         -- sncp(4),
                         -- prc(5),
                         osncp(6),
                         oprc(7)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Protection or Restoration mechanism used by the
                        LSP.  This parameter is mandatory for creation."
        ::= { tnGmplsLspEntry 10 }

    tnGmplsLspReversionMode OBJECT-TYPE
        SYNTAX         INTEGER {
                         manual(1),
                         automatic(2)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Reversion trigger definition."
        DEFVAL         { manual }
        ::= { tnGmplsLspEntry 11 }

    tnGmplsLspIncludeAnyAffinity OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Include any color."
        DEFVAL         { 0 }
        ::= { tnGmplsLspEntry 12 }

    tnGmplsLspExcludeAnyAffinity OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Exclude any color."
        DEFVAL         { 0 }
        ::= { tnGmplsLspEntry 13 }

    tnGmplsLspConnectionType OBJECT-TYPE
        SYNTAX         INTEGER {
                         spc(1)
                         -- sc(2),
                         -- privateHLsp(3),
                         -- faUnterm(4),
                         -- faTerm(5)
                       }
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "SPC or SC LSP."
        ::= { tnGmplsLspEntry 14 }

    tnGmplsLspAdminStatus OBJECT-TYPE
        SYNTAX         INTEGER {
                         down(1),
                         up(2)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Administrative state."
        ::= { tnGmplsLspEntry 15 }

    tnGmplsLspDiversityLspList OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "List of LspId the LSP shall be diverse to.  Comma
                        separated list of unsigned integers."
        ::= { tnGmplsLspEntry 16 }

    tnGmplsLspLatencyThreshold OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Latency constraint."
        DEFVAL         { 0 }
        ::= { tnGmplsLspEntry 17 }

    tnGmplsLspMaxHopsConstraint OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Maximum number of hops that must not be exceeded
                        for backups.  0 means no constraint."
        DEFVAL         { 0 }
        ::= { tnGmplsLspEntry 18 }

    tnGmplsLspActions OBJECT-TYPE
        SYNTAX         INTEGER {
                         none(1),
                         moveToMainNominal(2),
                         moveToSpareNominal(3),
                         moveToInactiveBackup(4),
                         moveToMainBackup(5),
                         moveToSpareBackup(6)
                         -- retuneApe(7),
                         -- checkConsistency(8)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Actions that apply on the LSP when setting this
                        attribute.  Values other than none are only allowed
                        when the STATUS=active.  Otherwise the action is
                        ignored and remains with value none."
        ::= { tnGmplsLspEntry 19 }

    tnGmplsLspProtectionStateMain OBJECT-TYPE
        SYNTAX         AluWdmGmplsLspProtectionState
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current protection state main leg."
        ::= { tnGmplsLspEntry 20 }

    tnGmplsLspProtectionStateSpare OBJECT-TYPE
        SYNTAX         AluWdmGmplsLspProtectionState
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current protection state spare leg."
        ::= { tnGmplsLspEntry 21 }

    tnGmplsLspReversionState OBJECT-TYPE
        SYNTAX         INTEGER {
                         nA(1),
                         rTR(2),
                         notRTR(3),
                         revBlocked(4),
                         revPreempt(5),
                         mainNASpareNA(6),
                         mainNASpareRTR(7),
                         mainNASpareNotRTR(8),
                         mainNASpareRevBlocked(9),
                         mainNASpareRevPreempt(10),
                         mainRTRSpareNA(11),
                         mainRTRSpareRTR(12),
                         mainRTRSpareNotRTR(13),
                         mainRTRSpareRevBlocked(14),
                         mainRTRSpareRevPreempt(15),
                         mainNotRTRSpareNA(16),
                         mainNotRTRSpareRTR(17),
                         mainNotRTRSpareNotRTR(18),
                         mainNotRTRSpareRevBlocked(19),
                         mainNotRTRSpareRevPreempt(20),
                         mainRevBlockedSpareNA(21),
                         mainRevBlockedSpareRTR(22),
                         mainRevBlockedSpareNotRTR(23),
                         mainRevBlockedSpareRevBlocked(24),
                         mainRevBlockedSpareRevPreempt(25),
                         mainRevPreemptSpareNA(26),
                         mainRevPreemptSpareRTR(27),
                         mainRevPreemptSpareNotRTR(28),
                         mainRevPreemptSpareRevBlocked(29),
                         mainRevPreemptSpareRevPreempt(30)
                       }
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current reversion state."
        ::= { tnGmplsLspEntry 22 }

    tnGmplsLspSRGViolation OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "True if current route violates SRG diversity."
        ::= { tnGmplsLspEntry 23 }

    tnGmplsLspColorViolation OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "True if current route violates color constraints."
        ::= { tnGmplsLspEntry 24 }

    tnGmplsLspOptFsbltyViolation OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current route violates optical constraints."
        ::= { tnGmplsLspEntry 25 }

    tnGmplsLspQoSViolation OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current path has QoS threshold crossed."
        ::= { tnGmplsLspEntry 26 }

    tnGmplsLspLatencyViolation OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Current path exceeds the latency threshold."
        ::= { tnGmplsLspEntry 27 }

-----------------------------------------------------------------------
-- GMPLS LSP Flow Table
-----------------------------------------------------------------------
    tnGmplsLspFlowTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspFlowEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspFlowTable."
        ::= { tnGmplsLspObjs 3 }

    tnGmplsLspFlowEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspFlowEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents an GMPLS LSP
                        flow.  A LSP may have 0..n flows.  A flow has
                        always one LSP."
        REFERENCE      "?"
        INDEX          { tnGmplsLspFlowSrcLspId,
                         tnGmplsLspFlowType }
        ::= { tnGmplsLspFlowTable 1 }

    TnGmplsLspFlowEntry ::= SEQUENCE {
        tnGmplsLspFlowSrcLspId     Unsigned32,
        tnGmplsLspFlowType         INTEGER,
        tnGmplsLspFlowState        INTEGER,
        tnGmplsLspFlowId           Unsigned32
    }

    tnGmplsLspFlowSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "LSP FlowList Index 1st part.  Uniquely identifies
                        a flow within this table."
        ::= { tnGmplsLspFlowEntry 1 }

    tnGmplsLspFlowType OBJECT-TYPE
        SYNTAX         INTEGER {
                         main(1),
                         spare(2),
                         backupMain(3),
                         backupSpare(4),
                         backupInactive(5)
                       }
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "LSP FlowList Index 2nd part.  Indicates whether
                        this flow is in nominal or backup role."
        ::= { tnGmplsLspFlowEntry 2 }

    tnGmplsLspFlowState OBJECT-TYPE
        SYNTAX         INTEGER {
                         undef(1),
                         up(2),
                         down(3),
                         degraded(4)
                       }
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Indicates the operational state of this flow."
        DEFVAL         { undef }
        ::= { tnGmplsLspFlowEntry 3 }

    tnGmplsLspFlowId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "LSP Flow Id."
        ::= { tnGmplsLspFlowEntry 4 }

----------------------------------------------------------------
-- GMPLS LSP Configured Hop Table
----------------------------------------------------------------
    tnGmplsLspCHopTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspCHopEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspFlowTable."
        ::= { tnGmplsLspObjs 4 }

    tnGmplsLspCHopEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspCHopEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents a hop of a
                        GMPLS LSP flow.  A flow has 0..n hops, a hop
                        belongs always to one flow."
        REFERENCE      "?"
        INDEX          { tnGmplsLspCHopSrcLspId,
                         tnGmplsLspCHopRouteType,
                         tnGmplsLspCHopIndex }
        ::= { tnGmplsLspCHopTable 1 }

    TnGmplsLspCHopEntry ::= SEQUENCE {
        tnGmplsLspCHopSrcLspId        Unsigned32,
        tnGmplsLspCHopRouteType       INTEGER,
        tnGmplsLspCHopIndex           Unsigned32,
        tnGmplsLspCHopSubnodeId       Unsigned32,
        tnGmplsLspCHopInResource      DisplayString,
        tnGmplsLspCHopOutResource     DisplayString
    }

    tnGmplsLspCHopSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsLspCHopEntry 1 }

    tnGmplsLspCHopRouteType OBJECT-TYPE
        SYNTAX         INTEGER {
                         main(1),
                         spare(2),
                         backup(3),
                         backupSpare(4),
                         backupInactive(5)
                       }
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "2nd part of the index.  The type of route of the LSP."
        ::= { tnGmplsLspCHopEntry 2 }

    tnGmplsLspCHopIndex OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "3rd part of the index.  LSP Hop Index.  Uniquely
                        identifies a hop in a route."
        ::= { tnGmplsLspCHopEntry 3 }

    tnGmplsLspCHopSubnodeId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Subnode Id (aka DPNodeId) of the hop.  Uniquely
                        identifies logical node in the network."
        ::= { tnGmplsLspCHopEntry 4 }

    tnGmplsLspCHopInResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Ingress link + label of this hop.
                          Format is: [<TELink Id>/<DataLink Id>/<Label>]+ with
                          <TELink Id>:   Id with range { 100000 .. 999999}
                          <DataLink Id>: Id in rrsbbpp01 format
                          <Label>:       32bit value according to
                                         draft-ietf-ccamp-gmpls-g-694-lambda-labels-05
                        At intermediate and tail hops this parameter is
                        empty for nominal routes.  For drop ports the
                        TELinks can be 0, i.e. empty."
        ::= { tnGmplsLspCHopEntry 5 }

    tnGmplsLspCHopOutResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Egress link + label of this hop.
                          Format is: [<TELink Id>/<DataLink Id>/<Label>]+ with
                          <TELink Id>:   Id with range { 100000 .. 999999}
                          <DataLink Id>: Id in rrsbbpp01 format
                          <Label> :      32bit value according to
                                         draft-ietf-ccamp-gmpls-g-694-lambda-labels-05
                        For drop ports the TELinks can be 0, i.e. empty."
        ::= { tnGmplsLspCHopEntry 6 }

----------------------------------------------------------------
-- GMPLS LSP Actual Hop Table
----------------------------------------------------------------
    tnGmplsLspAHopTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspAHopEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspFlowTable."
        ::= { tnGmplsLspObjs 5 }

    tnGmplsLspAHopEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspAHopEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents a hop of a
                        GMPLS LSP flow.  A flow has 0..n hops, a hop
                        belongs always to one flow."
        REFERENCE      "?"
        INDEX          { tnGmplsLspAHopSrcLspId,
                         tnGmplsLspAHopRouteType,
                         tnGmplsLspAHopIndex }
        ::= { tnGmplsLspAHopTable 1 }

    TnGmplsLspAHopEntry ::= SEQUENCE {
      tnGmplsLspAHopSrcLspId        Unsigned32,
      tnGmplsLspAHopRouteType       INTEGER,
      tnGmplsLspAHopIndex           Unsigned32,
      tnGmplsLspAHopSubnodeId       Unsigned32,
      tnGmplsLspAHopInResource      DisplayString,
      tnGmplsLspAHopOutResource     DisplayString
    }

    tnGmplsLspAHopSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsLspAHopEntry 1 }

    tnGmplsLspAHopRouteType OBJECT-TYPE
        SYNTAX         INTEGER {
                         main(1),
                         spare(2),
                         backupInactive(5)
                       }
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "2nd part of the index.  The type of route of the LSP."
        ::= { tnGmplsLspAHopEntry 2 }

    tnGmplsLspAHopIndex OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "3rd part of the index.  LSP Hop Index.  Uniquely
                        identifies a hop in a route."
        ::= { tnGmplsLspAHopEntry 3 }

    tnGmplsLspAHopSubnodeId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Subnode Id (aka DPNodeId) of the hop.  Uniquely
                        identifies logical node in the network."
        ::= { tnGmplsLspAHopEntry 4 }

    tnGmplsLspAHopInResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Ingress link + label of this hop.
                          Format is: [<TELink Id>/<DataLink Id>/<Label>]+ with
                          <TELink Id>:   Id with range { 100000 .. 999999}
                          <DataLink Id>: Id in rrsbbpp01 format
                          <Label>:       32bit value according to
                                         draft-ietf-ccamp-gmpls-g-694-lambda-labels-05
                        At intermediate and tail hops this parameter is
                        empty for nominal routes.  For drop ports the
                        TELinks can be 0, i.e. empty."
        ::= { tnGmplsLspAHopEntry 5 }

    tnGmplsLspAHopOutResource OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Egress link + label of this hop.
                          Format is: [<TELink Id>/<DataLink Id>/<Label>]+ with
                          <TELink Id>:   Id with range { 100000 .. 999999}
                          <DataLink Id>: Id in rrsbbpp01 format
                          <Label>:       32bit value according to
                                         draft-ietf-ccamp-gmpls-g-694-lambda-labels-05
                        For drop ports the TELinks can be 0, i.e. empty."
        ::= { tnGmplsLspAHopEntry 6 }

----------------------------------------------------------------
-- GMPLS LSP Exclude Table
----------------------------------------------------------------
    tnGmplsLspExcludeTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspExcludeEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspExcludeTable."
        ::= { tnGmplsLspObjs 6 }

    tnGmplsLspExcludeEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspExcludeEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents an excluded
                        diversity link (either databearer or TELink) of
                        a GMPLS LSP."
        REFERENCE      "?"
        INDEX          { tnGmplsLspExcludeSrcLspId,
                         tnGmplsLspExcludeIndex }
        ::= { tnGmplsLspExcludeTable 1 }

    TnGmplsLspExcludeEntry ::= SEQUENCE {
      tnGmplsLspExcludeSrcLspId      Unsigned32,
      tnGmplsLspExcludeIndex         Unsigned32,
      tnGmplsLspExcludeSubnodeId     Unsigned32,
      tnGmplsLspExcludeTELink        Unsigned32,
      tnGmplsLspExcludeDBLink        Unsigned32
    }

    tnGmplsLspExcludeSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsLspExcludeEntry 1 }

    tnGmplsLspExcludeIndex OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "2nd part of the index.  The index of the exclude
                        link item in the list of excludes."
        ::= { tnGmplsLspExcludeEntry 2 }

    tnGmplsLspExcludeSubnodeId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Subnode Id (aka DPNodeId) of the TE or DB link.
                        Uniquely identifies logical node in the network."
        ::= { tnGmplsLspExcludeEntry 3 }

    tnGmplsLspExcludeTELink OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "TELink that shall be excluded."
        ::= { tnGmplsLspExcludeEntry 4 }

    tnGmplsLspExcludeDBLink OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "DBLink that shall be excluded."
        ::= { tnGmplsLspExcludeEntry 5 }

-------------------------------------------------------------------------------
-- Gmpls LSP Transaction Table
-------------------------------------------------------------------------------
    tnGmplsLspTransactionTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspTransactionEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspTransactionTable."
        ::= { tnGmplsLspObjs 7 }

    tnGmplsLspTransactionEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspTransactionEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "An entry in this table represents a exclude
                        diversity link (either databearer or TELink)
                        of a GMPLS LSP."
        REFERENCE      "?"
        INDEX          { tnGmplsLspTransactionSrcLspId }
        ::= { tnGmplsLspTransactionTable 1 }

    TnGmplsLspTransactionEntry ::= SEQUENCE {
        tnGmplsLspTransactionSrcLspId     Unsigned32,
        tnGmplsLspTransaction             INTEGER,
        tnGmplsLspTransactionState        INTEGER
    }

    tnGmplsLspTransactionSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsLspTransactionEntry 1 }

    tnGmplsLspTransaction OBJECT-TYPE
        SYNTAX         INTEGER {
                         na(1),
                         commit(2),
                         rollback(3),
                         delete(4)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "Write-only parameter.  Actions to commit or
                        rollback pending changes or to delete a LSP."
        ::= { tnGmplsLspTransactionEntry 2 }

    tnGmplsLspTransactionState OBJECT-TYPE
        SYNTAX         INTEGER {
                         na(1),
                         commit(2),
                         pending(3)
                       }
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "Transaction state of the LSP."
        ::= { tnGmplsLspTransactionEntry 3 }

-------------------------------------------------------------------------------
-- Gmpls LSP To Port Relation Table
-------------------------------------------------------------------------------
    tnGmplsLspToPortTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspToPortEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspToPortTable."
        ::= { tnGmplsLspObjs 8 }

    tnGmplsLspToPortEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspToPortEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Each entry represents a Port used by LSP relation.
                        This is a read-only table."
        REFERENCE      "?"
        INDEX          { tnGmplsLspDBLinkIfId,
                         tnGmplsLspLTPSrcLspId,
                         tnGmplsLspSrcLsrId }
        ::= { tnGmplsLspToPortTable 1 }

    TnGmplsLspToPortEntry ::= SEQUENCE {
       tnGmplsLspDBLinkIfId      Unsigned32,
       tnGmplsLspLTPSrcLspId     Unsigned32,
       tnGmplsLspSrcLsrId        Unsigned32,
       tnGmplsLspName            DisplayString
    }

    tnGmplsLspDBLinkIfId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "ID of the DBLink."
        ::= { tnGmplsLspToPortEntry 1 }

    tnGmplsLspLTPSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Source LSP Id,"
        ::= { tnGmplsLspToPortEntry 2 }

    tnGmplsLspSrcLsrId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Source LSR Id."
        ::= { tnGmplsLspToPortEntry 3 }

    tnGmplsLspName OBJECT-TYPE
        SYNTAX         DisplayString
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "LSP name."
        ::= { tnGmplsLspToPortEntry 4 }

-------------------------------------------------------------------------------
-- Gmpls LSP SNCP Management Table
-------------------------------------------------------------------------------
    tnGmplsLspSncpMgmtTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspSncpMgmtEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspSncpMgmtTable."
        ::= { tnGmplsLspObjs 9 }

    tnGmplsLspSncpMgmtEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspSncpMgmtEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Each entry represents a Port used by LSP relation."
        REFERENCE      "?"
        INDEX          { tnGmplsLspSncpCtpResource,
                         tnGmplsLspSncpDirection }
        ::= { tnGmplsLspSncpMgmtTable 1 }

    TnGmplsLspSncpMgmtEntry ::= SEQUENCE {
        tnGmplsLspSncpCtpResource     OCTET STRING,
        tnGmplsLspSncpDirection       INTEGER,
        tnGmplsLspSncpCmd             INTEGER,
        tnGmplsLspSncpState           INTEGER,
        tnGmplsLspSncpRowStatus       RowStatus
    }

    tnGmplsLspSncpCtpResource OBJECT-TYPE
        SYNTAX         OCTET STRING (SIZE(1..25))
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Index of the table.  The drop CTP of the LSP at
                        head or tail node.
                          Format of the String:
                            <Data Link Id>/<Label>
                            with
                            <Data Link Id>: Data link If Id
                            <Label>:        value according to
                                            draft-ietf-ccamp-gmpls-g-694-lambda-labels-05"
        ::= { tnGmplsLspSncpMgmtEntry 1 }

    tnGmplsLspSncpDirection OBJECT-TYPE
        SYNTAX         INTEGER {
                         na(1),
                         internal(2)
                       }
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Second part of the index: domain internal SNCP.
                        CTP resource + direction identify the SNCP entity."
        ::= { tnGmplsLspSncpMgmtEntry 2 }

    tnGmplsLspSncpCmd OBJECT-TYPE
        SYNTAX         INTEGER {
                         na(1),
                         manualMain(2),
                         manualSpare(3),
                         forceMain(4),
                         forceSpare(5),
                         release(6)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "SNCP commands send to the LSP."
        ::= { tnGmplsLspSncpMgmtEntry 3 }

    tnGmplsLspSncpState OBJECT-TYPE
        SYNTAX         INTEGER {
                         na(1),
                         mainSelected(2),
                         spareSelected(3),
                         mainSelectedSpareFailed(4),
                         spareSelectedMainFailed(5),
                         bothFailed(6),
                         nonUniform(7),
                         unknown(8)
                       }
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "SNCP state of the LSP."
        ::= { tnGmplsLspSncpMgmtEntry 4 }

    tnGmplsLspSncpRowStatus OBJECT-TYPE
        SYNTAX         RowStatus
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "This variable is used to modify a row in this
                        table.  Supported values for this table are:
                          active       => activate new SNCP configuration.
                          notInService => SNCP configuration is pending,
                                          not active.
                          notReady     => information missing, configuration
                                          is not used.

                          Creation and deletion of row entries are not
                          allowed."

        ::= { tnGmplsLspSncpMgmtEntry 5 }

-----------------------------------------------------------------------
-- GMPLS Label Switched Path (LSP) Next Index Table
-----------------------------------------------------------------------
    tnGmplsLspNextIndexTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsLspNextIndexEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsLspNextIndexTable."
        ::= { tnGmplsLspObjs 10 }

    tnGmplsLspNextIndexEntry OBJECT-TYPE
        SYNTAX         TnGmplsLspNextIndexEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "This table contains the next appropriate value
                        to be used for tnGmplsLspSrcLspId when creating
                        entries in tnGmplsLspTable.  Note: a GET on this
                        table will create a LSP object in the GMPLS.
                        The usage of a scalar is not possible because
                        Emanate does not make any difference between GET
                        and GETNEXT scenarios for scalars."
        REFERENCE      "?"
        INDEX          { tnGmplsLspNextIndexTableIndex }
        ::= { tnGmplsLspNextIndexTable 1 }

    TnGmplsLspNextIndexEntry ::= SEQUENCE {
        tnGmplsLspNextIndexTableIndex     Unsigned32,
        tnGmplsLspNextIndex               Unsigned32
    }

    tnGmplsLspNextIndexTableIndex OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Uniquely identifies this row.  There is only one
                        entry in this table."
        ::= { tnGmplsLspNextIndexEntry 1 }

    tnGmplsLspNextIndex OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     read-only
        STATUS         current
        DESCRIPTION    "The new reserved LSP index."
        ::= { tnGmplsLspNextIndexEntry 2 }

-----------------------------------------------------------------------
-- GMPLS Move Label Switched Path (LSP) To Table
-----------------------------------------------------------------------
    tnGmplsMoveLspToTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsMoveLspToEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsMoveLspToTable."
        ::= { tnGmplsLspObjs 11 }

    tnGmplsMoveLspToEntry OBJECT-TYPE
        SYNTAX         TnGmplsMoveLspToEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "This table describes the move-LSP-to actions on
                        a GMPLS LSP."
        REFERENCE      "?"
        INDEX          { tnGmplsMoveLspToSrcLspId }
        ::= { tnGmplsMoveLspToTable 1 }

    TnGmplsMoveLspToEntry ::= SEQUENCE {
        tnGmplsMoveLspToSrcLspId        Unsigned32,
        tnGmplsMoveLspToCmd             INTEGER,
        tnGmplsMoveLspToRowStatus       RowStatus
    }

    tnGmplsMoveLspToSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsMoveLspToEntry 1 }

    tnGmplsMoveLspToCmd OBJECT-TYPE
        SYNTAX         INTEGER {
                         none(1),
                         moveToMainNominal(2),
                         moveToSpareNominal(3),
                         moveToInactiveBackup(4),
                         moveToMainBackup(5),
                         moveToSpareBackup(6)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "The move LSP To command."
        ::= { tnGmplsMoveLspToEntry 2 }

    tnGmplsMoveLspToRowStatus OBJECT-TYPE
        SYNTAX         RowStatus
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "This variable is used to modify a row in this
                        table.  Supported values for this table are:
                          active       => activate the MOVE TO command.
                          notInService => current configuration is pending
                                          and not used by NE.
                          notReady     => information missing, configuration
                                          is not used.

                          Creation and deletion of row entries are not
                          allowed."
        ::= { tnGmplsMoveLspToEntry 3 }

-----------------------------------------------------------------------
-- GMPLS Move Label Switched Path (LSP) From Table
-----------------------------------------------------------------------
    tnGmplsMoveLspFromTable OBJECT-TYPE
        SYNTAX         SEQUENCE OF TnGmplsMoveLspFromEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "The tnGmplsMoveLspFromTable."
        ::= { tnGmplsLspObjs 12 }

    tnGmplsMoveLspFromEntry OBJECT-TYPE
        SYNTAX         TnGmplsMoveLspFromEntry
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "This table describes the exclude links constraints
                        of a LSP and is used for the Link Diversity and
                        move-from feature of the GMPLS."
        REFERENCE      "?"
        INDEX          { tnGmplsMoveLspFromSrcLspId }
        ::= { tnGmplsMoveLspFromTable 1 }

    TnGmplsMoveLspFromEntry ::= SEQUENCE {
        tnGmplsMoveLspFromSrcLspId      Unsigned32,
        tnGmplsMoveLspFromLinks         OCTET STRING,
        tnGmplsMoveLspFromCmd           INTEGER,
        tnGmplsMoveLspFromRowStatus     RowStatus
    }

    tnGmplsMoveLspFromSrcLspId OBJECT-TYPE
        SYNTAX         Unsigned32
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION    "Local LSP Id.  Uniquely identifies this row."
        ::= { tnGmplsMoveLspFromEntry 1 }

    tnGmplsMoveLspFromLinks OBJECT-TYPE
        SYNTAX         OCTET STRING
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "LSP link diversity list.  This is a comma separated
                        list of DPNodeId/TeLink[/DB] the LSP should be
                        diverse to."
        ::= { tnGmplsMoveLspFromEntry 2 }

    tnGmplsMoveLspFromCmd OBJECT-TYPE
        SYNTAX         INTEGER {
                         none(1),
                         currentMain(2),
                         currentSpare(3)
                       }
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "The move LSP From command."
        ::= { tnGmplsMoveLspFromEntry 3 }

    tnGmplsMoveLspFromRowStatus OBJECT-TYPE
        SYNTAX         RowStatus
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION    "This variable is used to modify a row in this
                        table.  Supported values for this table are:
                          active       => activate the MOVE FROM command.
                          notInService => current configuration is pending
                                          and not used by NE.
                          notReady     => information missing, configuration
                                          is not used.

                          Creation and deletion of row entries are not
                          allowed."

        ::= { tnGmplsMoveLspFromEntry 4 }

--------------------------------------------------------------------------------
-- Conformance Group Definitions
--------------------------------------------------------------------------------
    tnGmplsLspObjsGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspAttributeTotal
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 1 }

    tnGmplsLspGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspDescr,
            tnGmplsLspIngressResource,
            tnGmplsLspEgressResource,
            tnGmplsLspDestLsrId,
            tnGmplsLspSetupPrio ,
            tnGmplsLspHoldingPrio,
            tnGmplsLspDirectionType,
            tnGmplsLspTrafficType,
            tnGmplsLspProtectionType,
            tnGmplsLspReversionMode,
            tnGmplsLspIncludeAnyAffinity,
            tnGmplsLspExcludeAnyAffinity,
            tnGmplsLspConnectionType,
            tnGmplsLspAdminStatus,
            tnGmplsLspDiversityLspList,
            tnGmplsLspLatencyThreshold,
            tnGmplsLspMaxHopsConstraint,
            tnGmplsLspActions,
            tnGmplsLspProtectionStateMain,
            tnGmplsLspProtectionStateSpare,
            tnGmplsLspReversionState,
            tnGmplsLspSRGViolation,
            tnGmplsLspColorViolation,
            tnGmplsLspOptFsbltyViolation,
            tnGmplsLspQoSViolation,
            tnGmplsLspLatencyViolation
        }
        STATUS         current
        DESCRIPTION    "The GMPLS Lsp group of objects providing for
                        management of GMPLS LSP entities."
        ::= { tnGmplsLspGroups 2 }

    tnGmplsLspFlowGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspFlowState,
            tnGmplsLspFlowId
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 3 }

    tnGmplsLspCHopGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspCHopSubnodeId,
            tnGmplsLspCHopInResource,
            tnGmplsLspCHopOutResource
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 4 }

    tnGmplsLspAHopGroup OBJECT-GROUP
        OBJECTS {
              tnGmplsLspAHopSubnodeId,
              tnGmplsLspAHopInResource,
              tnGmplsLspAHopOutResource
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 5 }

    tnGmplsLspExcludeGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspExcludeSubnodeId,
            tnGmplsLspExcludeTELink,
            tnGmplsLspExcludeDBLink
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 6 }

    tnGmplsLspTransactionGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspTransaction,
            tnGmplsLspTransactionState
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 7 }

    tnGmplsLspToPortGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspName
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 8 }

    tnGmplsLspSncpMgmtGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspSncpCmd,
            tnGmplsLspSncpState,
            tnGmplsLspSncpRowStatus
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 9 }

    tnGmplsLspNextIndexGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsLspNextIndex
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 10 }

    tnGmplsMoveLspToGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsMoveLspToCmd,
            tnGmplsMoveLspToRowStatus
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 11 }

    tnGmplsMoveLspFromGroup OBJECT-GROUP
        OBJECTS {
            tnGmplsMoveLspFromLinks,
            tnGmplsMoveLspFromCmd,
            tnGmplsMoveLspFromRowStatus
        }
        STATUS         current
        DESCRIPTION    "."
        ::= { tnGmplsLspGroups 12 }

--------------------------------------------------------------------------------
-- Compliance Statements (mandatory)
--------------------------------------------------------------------------------
    tnGmplsLspCompliance MODULE-COMPLIANCE
        STATUS         current
        DESCRIPTION    "The compliance statement for SNMPv2 entities
                        which implement GMPLS NE."
        MODULE
        MANDATORY-GROUPS {
            tnGmplsLspObjsGroup,
            tnGmplsLspGroup,
            tnGmplsLspFlowGroup,
            tnGmplsLspCHopGroup,
            tnGmplsLspAHopGroup,
            tnGmplsLspExcludeGroup,
            tnGmplsLspTransactionGroup,
            tnGmplsLspToPortGroup,
            tnGmplsLspSncpMgmtGroup,
            tnGmplsLspNextIndexGroup,
            tnGmplsMoveLspToGroup,
            tnGmplsMoveLspFromGroup
        }
        ::= { tnGmplsLspCompliances 1 }

END -- DEFINITION OF TROPIC-GMPLS-LSP-MIB
