Network Working Group                                       Martin Dubuc
Internet Draft
Category: Standards Track                            Sudheer Dharanikota
Expires: February 2003
                                                        Thomas D. Nadeau
                                                           Cisco Systems

                                                        Jonathan P. Lang
                                                         Rincon Networks

                                                             August 2003


          Traffic Engineering Link Management Information Base


                   draft-ietf-mpls-telink-mib-03.txt


Status of this Memo

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

   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.

Abstract

   This memo defines a portion of the Management Information Base (MIB)
   for use with network management protocols in the Internet community.
   In particular, it describes managed objects for modeling TE links as
   described in the Link Bundling in MPLS Traffic Engineering document.

Table of Contents




Dubuc et al.              Expires November 2003                 [Page 1]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


1. The Internet-Standard Management Framework  . . . . . . . . . . .   2
2. Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . .   2
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . .   3
4. Feature Checklist . . . . . . . . . . . . . . . . . . . . . . . .   3
5. Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   4
6. Brief Description of MIB Objects  . . . . . . . . . . . . . . . .   4
6.1. teLinkTable . . . . . . . . . . . . . . . . . . . . . . . . . .   4
6.2. teLinkDescriptorTable . . . . . . . . . . . . . . . . . . . . .   4
6.3. teLinkSrlgTable . . . . . . . . . . . . . . . . . . . . . . . .   4
6.4. teLinkBandwidthTable  . . . . . . . . . . . . . . . . . . . . .   4
6.5. componentLinkTable  . . . . . . . . . . . . . . . . . . . . . .   5
6.6. componentLinkDescriptorTable  . . . . . . . . . . . . . . . . .   5
6.7. componentLinkBandwidthTable . . . . . . . . . . . . . . . . . .   5
7. Example of Bundled Link Setup . . . . . . . . . . . . . . . . . .   5
8. Application of the Interfaces Group to TE Links . . . . . . . . .   9
8.1 Support of the TE Link Layer by ifTable  . . . . . . . . . . . .   9
8.2 Using ifStackTable . . . . . . . . . . . . . . . . . . . . . . .  11
9. TE Link MIB Module Definitions  . . . . . . . . . . . . . . . . .  13
10. Intellectual Property Considerations . . . . . . . . . . . . . .  50
11. Security Considerations  . . . . . . . . . . . . . . . . . . . .  51
12. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . .  51
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . .  52
13.1 Normative References  . . . . . . . . . . . . . . . . . . . . .  52
13.2 Informative References  . . . . . . . . . . . . . . . . . . . .  53
14. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . .  54
15. Full Copyright Statement . . . . . . . . . . . . . . . . . . . .  54

1.  The Internet-Standard Management Framework

   For a detailed overview of the documents that describe the current
   Internet-Standard Management Framework, please refer to section 7 of
   RFC 3410 [RFC3410].

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB. MIB objects are generally
   accessed through the Simple Network Management Protocol (SNMP).
   Objects in the MIB are defined using the mechanisms defined in the
   Structure of Management Information (SMI). This memo specifies a MIB
   module that is compliant to the SMIv2, which is described in STD 58,
   RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580
   [RFC2580].

2.  Introduction

   OSPF [OSPF], Generalized MPLS (GMPLS) [RFC3471] and the Link Manage-
   ment Protocol (LMP) [LMP] use the concept of traffic engineering (TE)
   links to abstract link properties. The effect of this approach is the
   reduction of the amount of routing information exchanged in the



Dubuc et al.              Expires November 2003                 [Page 2]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   network, which improves routing scalability. In addition, the use of
   TE link allows the implementation of new capabilities such as link
   protection.

   We present in this document a MIB module that can be used to manage
   TE links and their extension, the bundled link. This MIB module
   enables both the configuration and the performance monitoring of TE
   links and bundled link.

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

3.  Terminology

   This document uses terminology from the documents describing link
   bundling [BUNDLING] and G-MPLS [GMPLS-ARCH].

   The link bundling feature is designed to aggregate one or more simi-
   lar entities between a node pair into a bundled link [BUNDLING]. In
   the document, those entities are referred to as TE links. A TE link
   is a subinterface capable of carrying MPLS traffic engineered traf-
   fic.  A TE Link may be comprised of only one underlying component
   link.  In cases where more than one component links are to be com-
   bined, multiple component links should be created with differing pri-
   orities to indicate hot-standby or parallel utilization.

   A bundled link is just another kind of Traffic Engineering (TE) link
   (see [GMPLS-OSPF]). A link bundle is a subinterface which bounds the
   traffic of a group of one or more TE links. There should be more than
   one TE Link in a link bundle, but this is not a requirement.  Fur-
   thermore, if there are more than one TE link in a link bundle at some
   time, and at some point later, all but one of the links are deleted,
   the agent may choose to either delete the link bundle, or it may
   choose to leave it intact. Traffic counters on a link bundle are
   cumulative for all subinterfaces which it binds together.

4.  Feature Checklist

   The TE Link MIB module (TE-LINK-MIB) is designed to satisfy the fol-
   lowing requirements and constraints:

   -  The MIB module supports the management of TE links, including
      bundled links.

   -  Support is provided for configuration of traffic engineering
      parameters associated with TE links.



Dubuc et al.              Expires November 2003                 [Page 3]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   -  The MIB module is used to monitor the priority-based component
      link and TE link bandwidth values.

5.  Outline

   Configuring bundled links involves the following steps:

   -  Creating a bundled link.

   -  Creating TE links.

   -  Optionally specifying the shared risk link groups associated with
      the TE links.

   -  Configuring the component links including the bandwidth
      parameters and associating the component links with the
      appropriate TE link.

   -  Associating the TE links with the appropriate bundled link.

6.  Brief Description of MIB Objects

   Sections 6.1-6.4 describe objects pertaining to TE links.  The MIB
   objects were derived from the link bundling document [BUNDLING].

6.1.  teLinkTable

   This table represents the TE links, including bundled links, and
   their generic traffic engineering parameters.

6.2.  teLinkDescriptorTable

   This table represents the TE link interface switching capability
   descriptors.

6.3.  teLinkSrlgTable

   This table represents the shared risk link groups (SRLGs) associated
   with TE links.

6.4.  teLinkBandwidthTable

   This table specifies the priority-based bandwidth traffic engineering
   parameters associated with TE links.







Dubuc et al.              Expires November 2003                 [Page 4]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


6.5.  componentLinkTable

   This table enumerates the component links and their generic traffic
   engineering parameters.

6.6.  componentLinkDescriptorTable

   This table enumerates the interface switching capability descriptors
   that each component link supports.

6.7.  componentLinkBandwidthTable

   The component link bandwidth table specifies the priority-based band-
   width values associated with the component links.

   Component links that belong to the same TE link must be compatible.
   If these two tables are managed independently, mechanisms should be
   put in place to ensure consistency between the two tables.  TE links
   that form a bundled link must have compatible traffic engineering
   parameters (resource class, link metric and protection type).

   The link descriptors of the teLinkDescriptorTable can be derived from
   the link descriptors of the componentLinkDescrTable.

   Some of the bandwidth parameters of the teLinkTable, teLinkDescrip-
   torTable, teLinkBandwidthTable are derived from the bandwidth parame-
   ters of the componentLinkTable, componentLinkDescriptorTable and com-
   ponentLinkBandwidthTable (maximum reservable bandwidth, minimum LSP
   bandwidth, maximum LSP bandwidth at specified priority and unreserved
   bandwidth).

7.  Example of Bundled Link Setup

   In this section we provide a brief example of using the MIB
   objects described in section 10 to set up a bundled link.
   While this example is not meant to illustrate every nuance of the
   MIB module, it is intended as an aid to understanding some
   of the key concepts. It is meant to be read after going through the
   MIB module itself. More details on the use of the ifStackTable
   to establish relationship between bundled links, TE links and
   component links are given in Section 8.2.

   Suppose that one would like to manually create a bundled link
   out of two 1:1 TE links as depicted on the figure in Section 8.2.
   Assume that the bundled link is associated with SRLGs 10 and 50.
   Finally, let the component links be port entity interfaces
   (lambdas). The following example illustrates which rows and
   corresponding objects might be created to accomplish this.



Dubuc et al.              Expires November 2003                 [Page 5]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   First, a bundled link entry is created. An ifEntry with the same
   ifIndex and with ifType teLink needs to be created beforehand.

   In teLinkTable:
   {
      ifIndex                        = 2,
      teLinkAddressType              = unknown(0),
      teLinkLocalIpAddr              = ''H,
      teLinkRemoteIpAddr             = ''H,
      teLinkMetric                   = 5,
      teLinkProtectionType           = dedicated1For1(4),
      teLinkWorkingPriority          = 7,
      teLinkResourceClass            = 3,
      teLinkIncomingIfId             = 0,
      teLinkOutgoingIfId             = 2,
      teLinkRowStatus                = createAndGo(4),
      teLinkStorageType              = nonVolatile(3)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 0,
      ifStackLowerLayer              = 2,
      ifStackStatus                  = createAndGo(4)
   }

   Next, the two TE links are created.

   In teLinkTable:
   {
      ifIndex                        = 3,
      teLinkAddressType              = unknown(0),
      teLinkLocalIpAddr              = ''H,
      teLinkRemoteIpAddr             = ''H,
      teLinkMetric                   = 5,
      teLinkProtectionType           = unprotected(2),
      teLinkWorkingPriority          = 7,
      teLinkResourceClass            = 3,
      teLinkIncomingIfId             = 0,
      teLinkOutgoingIfId             = 3,
      teLinkRowStatus                = createAndGo(4),
      teLinkStorageType              = nonVolatile(3)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 2,
      ifStackLowerLayer              = 3,



Dubuc et al.              Expires November 2003                 [Page 6]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


      ifStackStatus                  = createAndGo(4)
   }

   In teLinkTable:
   {
      ifIndex                        = 4,
      teLinkAddressType              = unknown(0),
      teLinkLocalIpAddr              = ''H,
      teLinkRemoteIpAddr             = ''H,
      teLinkMetric                   = 5,
      teLinkProtectionType           = unprotected(2),
      teLinkWorkingPriority          = 7,
      teLinkResourceClass            = 3,
      teLinkIncomingIfId             = 0,
      teLinkOutgoingIfId             = 4,
      teLinkRowStatus                = createAndGo(4),
      teLinkStorageType              = nonVolatile(3)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 2,
      ifStackLowerLayer              = 4,
      ifStackStatus                  = createAndGo(4)
   }

   We assign SRLGs to the TE links.

   In the teLinkSrlgTable:
   {
      ifIndex                        = 3,
      teLinkSrlg                     = 10,
      teLinkSrlgRowStatus            = createAndGo(4),
      teLinkSrlgStorageType          = nonVolatile(3)
   }

   In the teLinkSrlgTable:
   {
      ifIndex                        = 4,
      teLinkSrlg                     = 50,
      teLinkSrlgRowStatus            = createAndGo(4),
      teLinkSrlgStorageType          = nonVolatile(3)
   }

   The bundled link inherits the SRLG properties from the
   associated TE links.

   Next, for each unbundled TE link, a component link is created.



Dubuc et al.              Expires November 2003                 [Page 7]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   An ifEntry with the same ifIndex needs to be created beforehand.

   In componentLinkTable:
   {
      ifIndex                          = 5,
      componentLinkPreferredProtection = primary(1),
      componentLinkRowStatus           = createAndGo(4),
      componentLinkStorageType         = nonVolatile(3)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 3,
      ifStackLowerLayer              = 5,
      ifStackStatus                  = createAndGo(4)
   }

   In componentLinkTable:
   {
      ifIndex                          = 6,
      componentLinkPreferredProtection = secondary(2),
      componentLinkRowStatus           = createAndGo(4)
      componentLinkStorageType         = nonVolatile(3)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 4,
      ifStackLowerLayer              = 6,
      ifStackStatus                  = createAndGo(4)
   }

   In this example, once a component link is added to the
   componentLinkTable, the associated link descriptors are
   implicitly added to the componentLinkDescriptorTable.

   TE link link descriptors are derived from their component link
   descriptors.

   Note that the bandwidth attributes in teLinkDescriptorTable,
   componentLinkDescriptorTable, teLinkBandwidthTable
   and componentLinkBandwidthTable are maintained by the
   device according to LSP creation/deletion at different priorities.
   The values in the teLinkBandwidthTable are an aggregation
   of the values for the component links of the TE links and
   the TE links of the bundled link.





Dubuc et al.              Expires November 2003                 [Page 8]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


8.  Application of the Interfaces Group to TE Links

   The Interfaces Group [RFC2863] defines generic managed objects for
   managing interfaces.  This memo contains the media-specific
   extensions to the Interfaces Group for managing TE Link interfaces
   as logical interfaces.

   This memo assumes the interpretation of the Interfaces Group to be
   in accordance with [RFC2863] which states that the interfaces table
   (ifTable) contains information on the managed resource's
   interfaces and that each sub-layer below the internetwork layer of
   a network interface is considered an interface.  Thus, the TE Link
   interface is represented as an entry in the ifTable. The inter-
   relation of entries in the ifTable is defined by Interfaces Stack
   Group defined in [RFC2863].

   When using TE Link interfaces, the interface stack table might appear
   as follows:

   +----------------------------------------+
   | TE link-interface ifType = teLink(200) +
   +----------------------------------------+
   | Underlying Layer...                    +
   +----------------------------------------+

   In the above diagram, "Underlying Layer..." refers to the ifIndex
   of any interface type, which has been defined for TE Link
   interworking.  Examples include ATM, Frame Relay, Ethernet, etc.

8.1.  Support of the TE Link Layer by ifTable

   Some specific interpretations of ifTable for the TE Link layer
   follow.

   Object        Use for the TE Link layer

   ifIndex       Each TE Link interface is represented by an ifEntry.

   ifDescr       Description of the TE Link interface.

   ifType        The value that is allocated for TE Link is 200
                 [IANAifType].

   ifSpeed       The total bandwidth in bits per second for use by
                 the TE Link layer.

   ifPhysAddress Unused.




Dubuc et al.              Expires November 2003                 [Page 9]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   ifAdminStatus This variable indicates the administrator's intent
                 as to whether TE Link should be enabled, disabled, or
                 running in some diagnostic testing mode on this
                 interface.  Also see [RFC2863].

   ifOperStatus  This value reflects the actual or operational
                 status of TE Link on this interface.

   ifLastChange  See [RFC2863].

   ifInOctets    The number of received octets over the interface,
                 i.e., the number of received octets in all component
                 links associated with the interface.

   ifOutOctets   The number of transmitted octets over the
                 interface, i.e., the number of octets transmitted
                 over all component links associated with the
                 interface.

   ifInErrors    The number of packets dropped due to
                 uncorrectable errors.

   ifInUnknownProtos
                 The number of received packets discarded during
                 packet header validation.

   ifOutErrors   See [RFC2863].

   ifName        Textual name (unique on this system) of the
                 interface or an octet string of zero length.

   ifLinkUpDownTrapEnable
                 Default is disabled (2).

   ifConnectorPresent
                 Set to false (2).

   ifHighSpeed   See [RFC2863].

   ifHCInOctets  The 64-bit version of ifInOctets; supported if
                 required by the compliance statements in [RFC2863].

   ifHCOutOctets The 64-bit version of ifOutOctets; supported if
                 required by the compliance statements in [RFC2863].

   ifAlias       The non-volatile 'alias' name for the interface as
                 specified by a network manager.




Dubuc et al.              Expires November 2003                [Page 10]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   ifCounterDiscontinuityTime
                 See [RFC2863].

   Support for ifInOctets, ifOutOctets, ifInErrors, ifInUnknownProtos,
   ifOutErrors, ifHCInOctets and ifHCOutOctets objects is not required
   if encoding type is clear. For other encoding types, traffic
   counters on a TE link are cumulative for all subinterfaces which it
   binds together.

8.2.  Using ifStackTable

   This section describes by example how to use ifStackTable to
   represent the relationship of TE links with underlying TE-enabled
   interfaces. Implementors of the stack table for TE link interfaces
   should look at the appropriate RFC for the service being stacked
   on TE links. Examples given below are for illustration purposes
   only.

   Example: MPLS is being carried on a bundled TE links.
            The bundled TE link represents a 1:1 optical
            transport interface.

   In this example, the component link is a TE link. The two component
   links/TE links are grouped in a bundled link.

   +-------------------------------------------------------------------+
   | MPLS interface ifType = mpls(166)                                 |
   | ifIndex = 1                                                       |
   +-------------------------------------------------------------------+
   | TE link (bundled link) ifType = teLink(200)                       |
   | ifIndex = 2                                                       |
   +--------------------------------+-+--------------------------------+
   | TE link ifType = teLink(200)   | | TE link ifType = teLink(200)   |
   | ifIndex = 3                    | | ifIndex = 4                    |
   +--------------------------------+ +--------------------------------+
   | Component link                 | | Component link                 |
   | ifType = opticalTransport(196) | | ifType = opticalTransport(196) |
   | ifIndex = 5                    | | ifIndex = 6                    |
   +--------------------------------+ +--------------------------------+

   The assignment of the index values could for example be:

           ifIndex  Description
           1        mpls             (type 166)
           2        teLink           (type 200)
           3        teLink           (type 200)
           4        teLink           (type 200)
           5        opticalTransport (type 196)



Dubuc et al.              Expires November 2003                [Page 11]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


           6        opticalTransport (type 196)

   The ifStackTable is then used to show the relationships between the
   various interfaces.

           ifStackTable Entries

           HigherLayer   LowerLayer
           0             1
           1             2
           2             3
           2             4
           3             5
           4             6
           5             0
           6             0


   In the case where MPLS is using a single TE link, then
   the upper TE link layer (link bundle) is not required.

   +-----------------------------------+
   | MPLS interface ifType = mpls(166) |
   +-----------------------------------+
   | TE link ifType = teLink(200)      |
   +-----------------------------------+
   | Component link                    |
   | ifType = opticalTransport(196)    |
   +-----------------------------------+

   The assignment of the index values could for example be:

           ifIndex  Description
           1        mpls             (type 166)
           2        teLink           (type 200)
           3        opticalTransport (type 196)

   The ifStackTable is then used to show the relationships between the
   various interfaces.

           ifStackTable Entries

           HigherLayer   LowerLayer
           0             1
           1             2
           2             3
           3             0




Dubuc et al.              Expires November 2003                [Page 12]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


9.  TE Link MIB Module Definitions

TE-LINK-STD-MIB DEFINITIONS ::= BEGIN

IMPORTS
   MODULE-IDENTITY, OBJECT-TYPE, transmission, Unsigned32
      FROM SNMPv2-SMI

   MODULE-COMPLIANCE, OBJECT-GROUP
      FROM SNMPv2-CONF

   TEXTUAL-CONVENTION, RowStatus, StorageType
      FROM SNMPv2-TC

   InterfaceIndexOrZero, ifIndex
      FROM IF-MIB

   InetAddressType, InetAddress
      FROM INET-ADDRESS-MIB;


teLinkStdMIB MODULE-IDENTITY
   LAST-UPDATED "200308261200Z"  -- 26 August 2003 12:00:00 EST
   ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group"
   CONTACT-INFO
       "        Martin Dubuc
        Email:  dubuc.consulting@rogers.com

                Sudheer Dharanikota
        Email:  sudheer@ieee.org

                Thomas D. Nadeau
        Email:  tnadeau@cisco.com

                Jonathan P. Lang
        Email:  jplang@ieee.org

        Comments about this document should be emailed directly to
        the MPLS working group mailing list at mpls@uu.net."

   DESCRIPTION
       "Copyright (C) 2003 The Internet Society. This version of
        this MIB module is part of RFC XXXX; see the RFC
        itself for full legal notices.

        This MIB module contains managed object definitions for
        MPLS traffic engineering links as defined in
        'Link Bundling in MPLS Traffic Engineering'."



Dubuc et al.              Expires November 2003                [Page 13]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   -- Revision history.
   REVISION
       "200308261200Z"  -- 26 August 2003 12:00:00 EST
   DESCRIPTION
       "Initial version published as RFC xxxx (to be assigned by RFC
        Editor)"
   ::= { transmission xxx } -- To be assigned by IANA.
                            -- Request to assign 200 which is
                            -- ifType value for teLink.


-- Textual Conventions

TeLinkPriority ::= TEXTUAL-CONVENTION
   DISPLAY-HINT "d"
   STATUS       current
   DESCRIPTION
       "This type is used to represent a priority. Each connection is
        assigned a priority. This priority is used when accounting for
        bandwidth on TE links or component links, for resource
        allocation and for rerouting purposes. Value 0 is the highest
        priority. Value 7 is the lowest priority."
   SYNTAX       Unsigned32 (0..7)

TeLinkProtection ::= TEXTUAL-CONVENTION
   STATUS       current
   DESCRIPTION
       "Link protection."
   SYNTAX       INTEGER {
                    primary(1),
                    secondary(2)
                }

TeLinkSwitchingCapability ::= TEXTUAL-CONVENTION
   STATUS       current
   DESCRIPTION
       "Switching capability as specified in the 'OSPF Extensions in
        Support of Generalized MPLS' document. The values specified in
        this document are not contiguous."
   SYNTAX       INTEGER {
                    packetSwitch1(1),
                    packetSwitch2(2),
                    packetSwitch3(3),
                    packetSwitch4(4),
                    layer2Switch(51),
                    tdm(100),
                    lambdaSwitch(150),
                    fiberSwitch(200)



Dubuc et al.              Expires November 2003                [Page 14]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


                }

TeLinkEncodingType ::= TEXTUAL-CONVENTION
   STATUS       current
   DESCRIPTION
       "Link encoding type as specified in 'GMPLS Signaling Functional
        Description' document. The values specified in this document are
        not contiguous."
   SYNTAX       INTEGER {
                    packet(1),
                    ethernet(2),
                    ansiEtsiPdh(3),
                    sdhItuSonetAnsi(5),
                    digitalWrapper(7),
                    lambda(8),
                    fiber(9),
                    fiberChannel(11)
                }

TeLinkSonetSdhIndication ::= TEXTUAL-CONVENTION
   STATUS       current
   DESCRIPTION
       "SONET/SDH indication type."
   SYNTAX       INTEGER {
                    standard(0),
                    arbitrary(1)
                }

-- Top level components of this MIB module

-- Notifications
teLinkNotifications OBJECT IDENTIFIER ::= { teLinkStdMIB 0 }
-- Tables, Scalars
teLinkObjects       OBJECT IDENTIFIER ::= { teLinkStdMIB 1 }
-- Conformance
teLinkConformance   OBJECT IDENTIFIER ::= { teLinkStdMIB 2 }

-- TE Link Table

teLinkTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF TeLinkEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the grouping of component links into
        TE links and grouping of TE links into bundled links."
   ::= { teLinkObjects 1 }




Dubuc et al.              Expires November 2003                [Page 15]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


teLinkEntry OBJECT-TYPE
   SYNTAX        TeLinkEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table exists for each ifEntry with an
        ifType of teLink(200), i.e. for every TE link. An ifEntry
        in the ifTable must exist before a teLinkEntry is created with
        the corresponding ifIndex. If a TE link entry in the ifTable is
        destroyed, then so is the corresponding entry in the
        teLinkTable. The administrative and operational status values
        are controlled from the ifEntry."
   INDEX         { ifIndex }
   ::= { teLinkTable 1 }

TeLinkEntry ::= SEQUENCE {
  teLinkAddressType                 InetAddressType,
  teLinkLocalIpAddr                 InetAddress,
  teLinkRemoteIpAddr                InetAddress,
  teLinkMetric                      Unsigned32,
  teLinkMaximumReservableBandwidth  Unsigned32,
  teLinkProtectionType              INTEGER,
  teLinkWorkingPriority             TeLinkPriority,
  teLinkResourceClass               Unsigned32,
  teLinkIncomingIfId                InterfaceIndexOrZero,
  teLinkOutgoingIfId                InterfaceIndexOrZero,
  teLinkRowStatus                   RowStatus,
  teLinkStorageType                 StorageType
}

teLinkAddressType OBJECT-TYPE
   SYNTAX        InetAddressType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The type of Internet address for the TE link."
   ::= { teLinkEntry 1 }

teLinkLocalIpAddr OBJECT-TYPE
   SYNTAX        InetAddress
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The local Internet address for numbered links. The type of this
        address is determined by the value of the teLinkAddressType
        object.

        For IPv4 and IPv6 numbered links, this object represents the



Dubuc et al.              Expires November 2003                [Page 16]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


        local IP address associated with the TE link. For an
        unnumbered link, the local address is of type unknown and this
        object is set to the zero length string and the
        teLinkOutgoingIfId object then identifies the unnumbered
        address.

        If the TE link is a Forwarding Adjacency (FA), the local
        IP address is set to the head-end address of the FA-LSP."
   ::= { teLinkEntry 2 }

teLinkRemoteIpAddr OBJECT-TYPE
   SYNTAX        InetAddress
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The remote Internet address for numbered links. The type of
        this address is determined by the value of the
        teLinkAddressType object.

        The remote IP address associated with the TE link (IPv4 and
        IPv6 numbered links). For an unnumbered link, the remote
        address is of type unknown and this object is set to the
        zero length string and the teLinkIncomingIfId object then
        identifies the unnumbered address.

        If the TE link is a Forwarding Adjacency, the remote IP
        address is set to the tail-end address of the FA-LSP."
   ::= { teLinkEntry 3 }

teLinkMetric OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The traffic engineering metric for the TE link is
        derived from its component links. All component links
        within the TE link must have the same traffic
        engineering metric."
   REFERENCE
       "Link Bundling in MPLS Traffic Engineering, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [BUNDLING]
   ::= { teLinkEntry 4 }

teLinkMaximumReservableBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-only



Dubuc et al.              Expires November 2003                [Page 17]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum reservable bandwidth on
        the TE link. This is the union of the maximum reservable
        bandwidth of all the component links within the
        TE link that can be used to carry live traffic. This value
        is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkEntry 5 }

teLinkProtectionType OBJECT-TYPE
   SYNTAX        INTEGER {
                     extraTraffic(1),
                     unprotected(2),
                     shared(3),
                     dedicated1For1(4),
                     dedicated1Plus1(5),
                     enhanced(6)
                 }
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies link protection type of the
        TE link. Description of the different protection types can be
        found in the 'Routing Extensions in Support of Generalized
        MPLS' document."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx and
        Routing Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF] and [ROUTING]
   ::= { teLinkEntry 6 }

teLinkWorkingPriority OBJECT-TYPE
   SYNTAX        TeLinkPriority
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This object represents a priority value such that a new
        connection with a higher priority, i.e. numerically lower than
        this value, is guaranteed to be setup on a primary link and
        not on a secondary link."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to



Dubuc et al.              Expires November 2003                [Page 18]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


       -- [GMPLS-OSPF]
   ::= { teLinkEntry 7 }

teLinkResourceClass OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the TE link resource class.
        The resource class is a 32 bit bitfield. The resource class for
        a link bundle is derived from the resource class of its
        TE links. All TE links within a link bundle must have the
        same resource class. Encoding of the resource class is described
        in the 'Traffic Engineering Extensions to OSPF Version 2'
        document."
   REFERENCE
       "Link Bundling in MPLS Traffic Engineering, RFC xxxx and
        Traffic Engineering Extensions to OSPF Version 2, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [BUNDLING] and [OSPF]
   ::= { teLinkEntry 8 }

teLinkIncomingIfId OBJECT-TYPE
   SYNTAX        InterfaceIndexOrZero
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "For unnumbered links, the incoming interface is set to the
        outgoing interface identifier chosen by the neighboring LSR
        for the reverse link corresponding to this TE link. For
        numbered links, the address is stored in the teLinkRemoteIpAddr
        instead."
   REFERENCE
       "Link Bundling in MPLS Traffic Engineering, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [BUNDLING]
   ::= { teLinkEntry 9 }

teLinkOutgoingIfId OBJECT-TYPE
   SYNTAX        InterfaceIndexOrZero
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "If the link is unnumbered, the outgoing interface identifier is
        set to the outgoing interface identifier chosen for the TE link
        by the advertising LSR. For numbered links, the address is
        stored in the teLinkLocalIpAddr instead."
   REFERENCE



Dubuc et al.              Expires November 2003                [Page 19]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


       "Link Bundling in MPLS Traffic Engineering, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [BUNDLING]
   ::= { teLinkEntry 10 }

teLinkRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. None of the writable objects in
        a row can be changed if status is active(1)."
   ::= { teLinkEntry 11 }

teLinkStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        teLinkTable. Conceptual rows having the value
        'permanent' need not allow write-access to any
        columnar object in the row."
   ::= { teLinkEntry 12 }

-- End of teLinkTable


-- TE Link Descriptor Table

teLinkDescriptorTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF TeLinkDescriptorEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the interface switching capability
        descriptors associated with the TE links."
   ::= { teLinkObjects 2 }

teLinkDescriptorEntry OBJECT-TYPE
   SYNTAX        TeLinkDescriptorEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table is created for every TE link interface
        switching capability descriptor. An ifEntry in the ifTable
        must exist before a teLinkDescriptorEntry using the same



Dubuc et al.              Expires November 2003                [Page 20]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


        ifIndex is created. ifType of ifEntry must be teLink(200).
        If a TE link entry in the ifTable is destroyed, then so are all
        entries in the teLinkDescriptorTable that use the ifIndex of
        this TE link."
   INDEX         { ifIndex, teLinkDescriptorId }
   ::= { teLinkDescriptorTable 1 }

TeLinkDescriptorEntry ::= SEQUENCE {
  teLinkDescriptorId               Unsigned32,
  teLinkDescrSwitchingCapability   TeLinkSwitchingCapability,
  teLinkDescrEncodingType          TeLinkEncodingType,
  teLinkDescrMinLspBandwidth       Unsigned32,
  teLinkDescrMaxLspBandwidthPrio0  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio1  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio2  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio3  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio4  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio5  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio6  Unsigned32,
  teLinkDescrMaxLspBandwidthPrio7  Unsigned32,
  teLinkDescrInterfaceMtu          Unsigned32,
  teLinkDescrIndication            TeLinkSonetSdhIndication,
  teLinkDescrRowStatus             RowStatus,
  teLinkDescrStorageType           StorageType
}

teLinkDescriptorId OBJECT-TYPE
   SYNTAX        Unsigned32 (1..4294967295)
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This object specifies the link descriptor identifier."
   ::= { teLinkDescriptorEntry 1 }

teLinkDescrSwitchingCapability OBJECT-TYPE
   SYNTAX        TeLinkSwitchingCapability
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies interface switching capability of the
        TE link, which is derived from its component links."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 2 }

teLinkDescrEncodingType OBJECT-TYPE



Dubuc et al.              Expires November 2003                [Page 21]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   SYNTAX        TeLinkEncodingType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the TE link encoding type."
   REFERENCE
       "Generalized MPLS Signaling Functional Description, RFC 3471"
   ::= { teLinkDescriptorEntry 3 }

teLinkDescrMinLspBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the minimum LSP bandwidth on
        the TE link. This is derived from the union of the
        minimum LSP bandwidth of all the component links
        associated with the TE link that can be used to carry
        live traffic. This value is an estimate in units of 1,000 bits
        per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 4 }

teLinkDescrMaxLspBandwidthPrio0 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 0 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 0 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 5 }

teLinkDescrMaxLspBandwidthPrio1 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create



Dubuc et al.              Expires November 2003                [Page 22]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 1 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 1 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 6 }

teLinkDescrMaxLspBandwidthPrio2 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 2 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 2 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 7 }

teLinkDescrMaxLspBandwidthPrio3 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 3 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 3 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 8 }

teLinkDescrMaxLspBandwidthPrio4 OBJECT-TYPE



Dubuc et al.              Expires November 2003                [Page 23]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 4 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 4 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 9 }

teLinkDescrMaxLspBandwidthPrio5 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 5 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 5 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 10 }

teLinkDescrMaxLspBandwidthPrio6 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 6 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 6 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]



Dubuc et al.              Expires November 2003                [Page 24]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   ::= { teLinkDescriptorEntry 11 }

teLinkDescrMaxLspBandwidthPrio7 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 7 on the TE link. This is the union of the maximum
        LSP bandwidth at priority 7 of all the component links within
        the TE link that can be used to carry live traffic. This
        value is an estimate in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 12 }

teLinkDescrInterfaceMtu OBJECT-TYPE
   SYNTAX        Unsigned32 (1..65535)
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the interface MTU for the TE
        link descriptor."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 13 }

teLinkDescrIndication OBJECT-TYPE
   SYNTAX        TeLinkSonetSdhIndication
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies whether this interface supports
        Standard or Arbitrary SONET/SDH."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkDescriptorEntry 14 }

teLinkDescrRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create



Dubuc et al.              Expires November 2003                [Page 25]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object
        can changed if teLinkDescrRowStatus is in active(1) state."
   ::= { teLinkDescriptorEntry 15 }

teLinkDescrStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        teLinkDescriptorTable. Conceptual rows having the value
        'permanent' need not allow write-access to any
        columnar object in the row."
   ::= { teLinkDescriptorEntry 16 }

-- End of teLinkDescriptorTable


-- TE Link Shared Risk Link Group Table

teLinkSrlgTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF TeLinkSrlgEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the SRLGs associated with TE links."
   ::= { teLinkObjects 3 }

teLinkSrlgEntry OBJECT-TYPE
   SYNTAX        TeLinkSrlgEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table contains information about a
        SRLG associated with a TE link.
        An ifEntry in the ifTable must exist before a
        teLinkSrlgEntry using the same ifIndex is created.
        ifType of ifEntry must be teLink(200).
        If a TE link entry in the ifTable is destroyed, then so are all
        entries in the teLinkSrlgTable that use the ifIndex of
        this TE link."
   INDEX         { ifIndex, teLinkSrlg }
   ::= { teLinkSrlgTable 1 }

TeLinkSrlgEntry ::= SEQUENCE {



Dubuc et al.              Expires November 2003                [Page 26]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


  teLinkSrlg            Unsigned32,
  teLinkSrlgRowStatus   RowStatus,
  teLinkSrlgStorageType StorageType
}

teLinkSrlg OBJECT-TYPE
   SYNTAX        Unsigned32 (0..4294967295)
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This identifies a SRLG supported by the TE link. An SRLG is
        identified with a 32 bit number that is unique within an IGP
        domain. Zero is a valid SRLG number."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { teLinkSrlgEntry 1 }

teLinkSrlgRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object can
        be modified if teLinkSrlgRowStatus is active(1)."
   ::= { teLinkSrlgEntry 2 }

teLinkSrlgStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        teLinkSrlgTable. Conceptual rows having the value
        'permanent' need not allow write-access to any
        columnar object in the row."
   ::= { teLinkSrlgEntry 3 }

-- End of teLinkSrlgTable


-- TE Link Bandwidth Table

teLinkBandwidthTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF TeLinkBandwidthEntry
   MAX-ACCESS    not-accessible



Dubuc et al.              Expires November 2003                [Page 27]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   STATUS        current
   DESCRIPTION
       "This table specifies the priority-based bandwidth table
        for TE links."
   ::= { teLinkObjects 4 }

teLinkBandwidthEntry OBJECT-TYPE
   SYNTAX        TeLinkBandwidthEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table contains information about
        the priority-based bandwidth of TE links. An ifEntry in the
        ifTable must exist before a teLinkBandwidthEntry using the
        same ifIndex is created. ifType of ifEntry must be teLink(200).
        If a TE link entry in the ifTable is destroyed, then so are
        all entries in the teLinkBandwidthTable that use the ifIndex of
        this TE link."
   INDEX         { ifIndex, teLinkBandwidthPriority }
   ::= { teLinkBandwidthTable 1 }

TeLinkBandwidthEntry ::= SEQUENCE {
  teLinkBandwidthPriority    TeLinkPriority,
  teLinkBandwidthUnreserved  Unsigned32,
  teLinkBandwidthRowStatus   RowStatus,
  teLinkBandwidthStorageType StorageType
}

teLinkBandwidthPriority OBJECT-TYPE
   SYNTAX        TeLinkPriority
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This attribute specifies the priority. A value of 0 is valid
        as specified in the 'Traffic Engineering Extensions to OSPF
        Version 2' document."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx and
        Traffic Engineering Extensions to OSPF Version 2, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF] and [OSPF]
   ::= { teLinkBandwidthEntry 1 }

teLinkBandwidthUnreserved OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-only
   STATUS        current



Dubuc et al.              Expires November 2003                [Page 28]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   DESCRIPTION
       "This attribute specifies the TE link unreserved
        bandwidth at priority p. It is the sum of the unreserved
        bandwidths at priority p of all component links associated
        with the TE link (excludes all links that are strictly
        used as protecting links). This value is an estimate in units
        of 1,000 bits per second."
   REFERENCE
       "Link Bundling in MPLS Traffic Engineering, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [BUNDLING]
   ::= { teLinkBandwidthEntry 2 }

teLinkBandwidthRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object
        can be modified when teLinkBandwidthRowStatus is active(1)."
   ::= { teLinkBandwidthEntry 4 }

teLinkBandwidthStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        teLinkBandwidthTable. Conceptual rows having the value
        'permanent' need not allow write-access to any
        columnar object in the row."
   ::= { teLinkBandwidthEntry 5 }

-- End of teLinkBandwidthTable


-- Component Link Table

componentLinkTable  OBJECT-TYPE
   SYNTAX        SEQUENCE OF ComponentLinkEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the component link parameters."
   ::= { teLinkObjects 5 }

componentLinkEntry  OBJECT-TYPE



Dubuc et al.              Expires November 2003                [Page 29]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   SYNTAX        ComponentLinkEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table exists for each ifEntry that represents
        a component link. An ifEntry must exist in the ifTable
        before a componentLinkEntry is created with the
        corresponding ifIndex. ifEntry's ifType can be
        of any interface type which has been defined for TE Link
        interworking. Examples include ATM, Frame Relay, Ethernet, etc.
        If an entry representing a component link is destroyed in the
        ifTable, then so is the corresponding entry in the
        componentLinkTable. The administrative and operational status
        values are controlled from the ifEntry."
   INDEX         { ifIndex }
   ::= { componentLinkTable 1 }

ComponentLinkEntry ::= SEQUENCE {
  componentLinkMaxResBandwidth     Unsigned32,
  componentLinkPreferredProtection TeLinkProtection,
  componentLinkCurrentProtection   TeLinkProtection,
  componentLinkRowStatus           RowStatus,
  componentLinkStorageType         StorageType
}

componentLinkMaxResBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum reservable bandwidth on
        the component link. This value is an estimate in units of
        1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkEntry 1 }

componentLinkPreferredProtection OBJECT-TYPE
   SYNTAX        TeLinkProtection
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies whether this component link is
        a primary or secondary entity."
   ::= { componentLinkEntry 2 }



Dubuc et al.              Expires November 2003                [Page 30]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


componentLinkCurrentProtection OBJECT-TYPE
   SYNTAX        TeLinkProtection
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION
       "This attribute specifies whether this component link is
        currently used as primary or secondary link."
   ::= { componentLinkEntry 3 }

componentLinkRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object
        can be modified when componentLinkRowStatus is active(1)."
   ::= { componentLinkEntry 4 }

componentLinkStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        componentLinkTable. Conceptual rows having the value
        'permanent' need not allow write-access to any
        columnar object in the row."
   ::= { componentLinkEntry 5 }

-- End of componentLinkTable


-- Component Link Descriptor Table

componentLinkDescriptorTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF ComponentLinkDescriptorEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the interface switching capability
        descriptors associated with the component links."
   ::= { teLinkObjects 6 }

componentLinkDescriptorEntry OBJECT-TYPE
   SYNTAX        ComponentLinkDescriptorEntry
   MAX-ACCESS    not-accessible
   STATUS        current



Dubuc et al.              Expires November 2003                [Page 31]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   DESCRIPTION
       "An entry in this table is created for every component link
        descriptor. An ifEntry in the ifTable must exist before a
        componentLinkDescriptorEntry using the same ifIndex is created.
        ifEntry's ifType can be of any interface type which has been
        defined for TE Link interworking. Examples include ATM, Frame
        Relay, Ethernet, etc. If a component link entry in the ifTable
        is destroyed, then so are all entries in the
        componentLinkDescriptorTable that use the ifIndex of this
        component link."
   INDEX         { ifIndex, componentLinkDescrId }
   ::= { componentLinkDescriptorTable 1 }

ComponentLinkDescriptorEntry ::= SEQUENCE {
  componentLinkDescrId                    Unsigned32,
  componentLinkDescrSwitchingCapability   TeLinkSwitchingCapability,
  componentLinkDescrEncodingType          TeLinkEncodingType,
  componentLinkDescrMinLspBandwidth       Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio0  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio1  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio2  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio3  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio4  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio5  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio6  Unsigned32,
  componentLinkDescrMaxLspBandwidthPrio7  Unsigned32,
  componentLinkDescrInterfaceMtu          Unsigned32,
  componentLinkDescrIndication            TeLinkSonetSdhIndication,
  componentLinkDescrRowStatus             RowStatus,
  componentLinkDescrStorageType           StorageType
}

componentLinkDescrId OBJECT-TYPE
   SYNTAX        Unsigned32 (1..4294967295)
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This object specifies the link descriptor identifier."
   ::= { componentLinkDescriptorEntry 1 }

componentLinkDescrSwitchingCapability OBJECT-TYPE
   SYNTAX        TeLinkSwitchingCapability
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies link multiplexing capabilities of the
        component link."
   REFERENCE



Dubuc et al.              Expires November 2003                [Page 32]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 2 }

componentLinkDescrEncodingType OBJECT-TYPE
   SYNTAX        TeLinkEncodingType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the component link encoding type."
   REFERENCE
       "Generalized MPLS Signaling Functional Description, RFC 3471"
   ::= { componentLinkDescriptorEntry 3 }

componentLinkDescrMinLspBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the minimum LSP bandwidth on
        the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 4 }

componentLinkDescrMaxLspBandwidthPrio0 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 0 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 5 }

componentLinkDescrMaxLspBandwidthPrio1 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"



Dubuc et al.              Expires November 2003                [Page 33]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 1 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 6 }

componentLinkDescrMaxLspBandwidthPrio2 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 2 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 7 }

componentLinkDescrMaxLspBandwidthPrio3 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 3 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 8 }

componentLinkDescrMaxLspBandwidthPrio4 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION



Dubuc et al.              Expires November 2003                [Page 34]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


       "This attribute specifies the maximum LSP bandwidth at
        priority 4 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 9 }

componentLinkDescrMaxLspBandwidthPrio5 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 5 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 10 }

componentLinkDescrMaxLspBandwidthPrio6 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 6 on the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 11 }

componentLinkDescrMaxLspBandwidthPrio7 OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the maximum LSP bandwidth at
        priority 7 on the component link. This value is an estimate
        in units of 1,000 bits per second."



Dubuc et al.              Expires November 2003                [Page 35]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 12 }

componentLinkDescrInterfaceMtu OBJECT-TYPE
   SYNTAX        Unsigned32 (1..65535)
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the interface MTU for the component
        link descriptor."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 13 }

componentLinkDescrIndication OBJECT-TYPE
   SYNTAX        TeLinkSonetSdhIndication
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies whether this interface supports
        Standard or Arbitrary SONET/SDH."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkDescriptorEntry 14 }

componentLinkDescrRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object
        can be modified when componentLinkDescrRowStatus
        is active(1)."
   ::= { componentLinkDescriptorEntry 15 }

componentLinkDescrStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION



Dubuc et al.              Expires November 2003                [Page 36]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


       "The storage type for this conceptual row in the
        componentLinkDescriptorTable. Conceptual rows
        having the value 'permanent' need not allow write-access
        to any columnar object in the row."
   ::= { componentLinkDescriptorEntry 16 }

-- End of componentLinkDescriptorTable


-- Component Link Bandwidth Table

componentLinkBandwidthTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF ComponentLinkBandwidthEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This table specifies the priority-based bandwidth
        for component links."
   ::= { teLinkObjects 7 }

componentLinkBandwidthEntry OBJECT-TYPE
   SYNTAX        ComponentLinkBandwidthEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "An entry in this table contains information about
        the priority-based bandwidth on component links.
        An ifEntry in the ifTable must exist before a
        componentLinkBandwidthEntry using the same ifIndex is
        created. ifEntry's ifType can be of any interface type which
        has been defined for TE Link interworking. Examples include
        ATM, Frame Relay, Ethernet, etc. If a component link entry in
        the ifTable is destroyed, then so are all entries in the
        componentLinkBandwidthTable that use the ifIndex of
        this component link."
   INDEX         { ifIndex, componentLinkBandwidthPriority }
   ::= { componentLinkBandwidthTable 1 }

ComponentLinkBandwidthEntry ::= SEQUENCE {
  componentLinkBandwidthPriority    TeLinkPriority,
  componentLinkBandwidthUnreserved  Unsigned32,
  componentLinkBandwidthRowStatus   RowStatus,
  componentLinkBandwidthStorageType StorageType
}

componentLinkBandwidthPriority OBJECT-TYPE
   SYNTAX        TeLinkPriority
   MAX-ACCESS    not-accessible



Dubuc et al.              Expires November 2003                [Page 37]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   STATUS        current
   DESCRIPTION
       "This attribute specifies the priority. A value of 0 is valid
        as specified in the 'Traffic Engineering Extensions to OSPF
        Version 2' document."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx and
        Traffic Engineering Extensions to OSPF Version 2, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF] and [OSPF]
   ::= { componentLinkBandwidthEntry 1 }

componentLinkBandwidthUnreserved OBJECT-TYPE
   SYNTAX        Unsigned32
   UNITS         "thousand bps"
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION
       "This attribute specifies the component link unreserved
        bandwidth at priority p. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "OSPF Extensions in Support of Generalized MPLS, RFC xxxx"
       -- RFC Editor to fill in RFC number that will be assigned to
       -- [GMPLS-OSPF]
   ::= { componentLinkBandwidthEntry 2 }

componentLinkBandwidthRowStatus OBJECT-TYPE
   SYNTAX        RowStatus
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This variable is used to create, modify, and/or
        delete a row in this table. No read-create object can
        be modified when componentLinkBandwidthRowStatus is
        active(1)."
   ::= { componentLinkBandwidthEntry 4 }

componentLinkBandwidthStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The storage type for this conceptual row in the
        componentLinkBandwidthTable. Conceptual rows
        having the value 'permanent' need not allow write-access
        to any columnar object in the row."
   ::= { componentLinkBandwidthEntry 5 }



Dubuc et al.              Expires November 2003                [Page 38]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


-- End of componentLinkBandwidthTable


-- Module compliance

teLinkGroups
   OBJECT IDENTIFIER ::= { teLinkConformance 1 }

teLinkCompliances
   OBJECT IDENTIFIER ::= { teLinkConformance 2 }

teLinkModuleFullCompliance MODULE-COMPLIANCE
   STATUS current
   DESCRIPTION
       "Compliance statement for agents that support the
        configuration and monitoring of TE Link MIB module."
   MODULE -- this module

      MANDATORY-GROUPS    { teLinkGroup,
                            teLinkBandwidthGroup,
                            componentLinkBandwidthGroup }

      GROUP teLinkSrlgGroup
      DESCRIPTION
          "This group is mandatory for G-MPLS enabled devices."

      GROUP teLinkPscGroup
      DESCRIPTION
          "This group is mandatory for devices that support
           packet switching capability."

      GROUP teLinkTdmGroup
      DESCRIPTION
          "This group is mandatory for devices that support TDM
           switching capability."

      -- teLinkTable

      OBJECT      teLinkAddressType
      SYNTAX      INTEGER { unknown(0), ipv4(1), ipv6(2) }
      DESCRIPTION
          "Only ipv4(1) and ipv6(2) address types need to be
           supported for numbered links. For unnumbered links, the
           unknown(0) address type needs to be supported."

      OBJECT      teLinkLocalIpAddr
      SYNTAX      InetAddress (SIZE(0|4|16))
      DESCRIPTION



Dubuc et al.              Expires November 2003                [Page 39]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


          "Size of TE link IP address depends on type of TE link.
           TE link IP address size is zero if link is unnumbered,
           four if link IP address is IPv4 and sixteen if link IP
           address is IPv6."

      OBJECT      teLinkRemoteIpAddr
      SYNTAX      InetAddress (SIZE(0|4|16))
      DESCRIPTION
          "Size of TE link IP address depends on type of TE link.
           TE link IP address size is zero if link is unnumbered,
           four if link IP address is IPv4 and sixteen if link IP
           address is IPv6."

      OBJECT      teLinkRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- teLinkDescriptorTable

      OBJECT      teLinkDescrRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- teLinkSrlgTable

      OBJECT      teLinkSrlgRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- teLinkBandwidthTable

      OBJECT      teLinkBandwidthRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION



Dubuc et al.              Expires November 2003                [Page 40]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- componentLinkTable

      OBJECT      componentLinkRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- componentLinkDescriptorTable

      OBJECT      componentLinkDescrRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

      -- componentLinkBandwidthTable

      OBJECT      componentLinkBandwidthRowStatus
      SYNTAX      RowStatus { active(1), notInService(2) }
      WRITE-SYNTAX RowStatus { active(1), notInService(2),
                               createAndGo(4), destroy(6) }
      DESCRIPTION
          "Support for notReady(3) and createAndWait(5) is
           not required."

   ::= { teLinkCompliances 1 }

teLinkModuleReadOnlyCompliance MODULE-COMPLIANCE
   STATUS current
   DESCRIPTION
       "Compliance statement for agents that support the
        monitoring of TE link MIB module."
   MODULE -- this module

      -- The mandatory groups have to be implemented
      -- by all devices supporting TE links. However, they may all
      -- be supported as read-only objects in the case where manual
      -- configuration is unsupported.

      MANDATORY-GROUPS    { teLinkGroup,



Dubuc et al.              Expires November 2003                [Page 41]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


                            teLinkBandwidthGroup,
                            componentLinkBandwidthGroup }

      GROUP teLinkSrlgGroup
      DESCRIPTION
          "This group is mandatory for G-MPLS enabled devices."

      GROUP teLinkPscGroup
      DESCRIPTION
          "This group is mandatory for devices that support
           packet switching capability."

      GROUP teLinkTdmGroup
      DESCRIPTION
          "This group is mandatory for devices that support TDM
           switching capability."

      -- teLinkTable

      OBJECT      teLinkAddressType
      SYNTAX      INTEGER { unknown(0), ipv4(1), ipv6(2) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only ipv4(1) and ipv6(2) address types need to be
           supported for numbered links. For unnumbered links, the
           unknown(0) address type needs to be supported."

      OBJECT      teLinkLocalIpAddr
      SYNTAX      InetAddress (SIZE(0|4|16))
      MIN-ACCESS  read-only
      DESCRIPTION
          "Size of TE link IP address depends on type of TE link.
           TE link IP address size is zero if link is unnumbered,
           four if link IP address is IPv4 and sixteen if link IP
           address is IPv6."

      OBJECT      teLinkRemoteIpAddr
      SYNTAX      InetAddress (SIZE(0|4|16))
      MIN-ACCESS  read-only
      DESCRIPTION
          "Size of TE link IP address depends on type of TE link.
           TE link IP address size is zero if link is unnumbered,
           four if link IP address is IPv4 and sixteen if link IP
           address is IPv6."

      OBJECT      teLinkProtectionType
      MIN-ACCESS  read-only
      DESCRIPTION



Dubuc et al.              Expires November 2003                [Page 42]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


          "Write access is not required."

      OBJECT      teLinkWorkingPriority
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      teLinkStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      -- teLinkDescriptorTable

      OBJECT      teLinkDescrSwitchingCapability
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrEncodingType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMinLspBandwidth
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio0
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio1
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio2
      MIN-ACCESS  read-only



Dubuc et al.              Expires November 2003                [Page 43]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio3
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio4
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio5
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio6
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrMaxLspBandwidthPrio7
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkDescrRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      teLinkDescrStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      -- teLinkSrlgTable

      OBJECT      teLinkSrlgRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."



Dubuc et al.              Expires November 2003                [Page 44]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


      OBJECT      teLinkSrlgStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      -- teLinkBandwidthTable

      OBJECT      teLinkBandwidthUnreserved
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkBandwidthRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      teLinkBandwidthStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      -- componentLinkTable

      OBJECT      componentLinkMaxResBandwidth
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkPreferredProtection
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      componentLinkStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."




Dubuc et al.              Expires November 2003                [Page 45]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


      -- componentLinkDescriptorTable

      OBJECT      componentLinkDescrSwitchingCapability
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrEncodingType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMinLspBandwidth
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio0
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio1
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio2
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio3
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio4
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio5
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio6



Dubuc et al.              Expires November 2003                [Page 46]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrMaxLspBandwidthPrio7
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrInterfaceMtu
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrIndication
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      componentLinkDescrRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      componentLinkDescrStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      -- componentLinkBandwidthTable

      OBJECT      componentLinkBandwidthRowStatus
      SYNTAX      RowStatus { active(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required and active(1) is the
           only status that needs to be supported."

      OBJECT      componentLinkBandwidthStorageType
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

   ::= { teLinkCompliances 2 }

-- Units of conformance



Dubuc et al.              Expires November 2003                [Page 47]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


teLinkGroup OBJECT-GROUP
   OBJECTS { teLinkAddressType,
             teLinkLocalIpAddr,
             teLinkRemoteIpAddr,
             teLinkMetric,
             teLinkProtectionType,
             teLinkWorkingPriority,
             teLinkResourceClass,
             teLinkIncomingIfId,
             teLinkOutgoingIfId,
             teLinkRowStatus,
             teLinkStorageType,
             teLinkDescrSwitchingCapability,
             teLinkDescrEncodingType,
             teLinkDescrRowStatus,
             teLinkDescrStorageType,
             componentLinkPreferredProtection,
             componentLinkCurrentProtection,
             componentLinkRowStatus,
             componentLinkStorageType,
             componentLinkDescrSwitchingCapability,
             componentLinkDescrEncodingType,
             componentLinkDescrRowStatus,
             componentLinkDescrStorageType
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for the monitoring of
           resources associated with TE links."
   ::= { teLinkGroups 1 }

teLinkSrlgGroup OBJECT-GROUP
   OBJECTS { teLinkSrlgRowStatus,
             teLinkSrlgStorageType
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for the monitoring of
           SRLG resources associated with TE links."
   ::= { teLinkGroups 2 }

teLinkBandwidthGroup OBJECT-GROUP
   OBJECTS { teLinkMaximumReservableBandwidth,
             teLinkDescrMaxLspBandwidthPrio0,
             teLinkDescrMaxLspBandwidthPrio1,
             teLinkDescrMaxLspBandwidthPrio2,



Dubuc et al.              Expires November 2003                [Page 48]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


             teLinkDescrMaxLspBandwidthPrio3,
             teLinkDescrMaxLspBandwidthPrio4,
             teLinkDescrMaxLspBandwidthPrio5,
             teLinkDescrMaxLspBandwidthPrio6,
             teLinkDescrMaxLspBandwidthPrio7,
             teLinkBandwidthUnreserved,
             teLinkBandwidthRowStatus,
             teLinkBandwidthStorageType
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for the monitoring of
           the priority-based bandwidth resources associated with
           TE links and component links."
   ::= { teLinkGroups 3 }

componentLinkBandwidthGroup OBJECT-GROUP
   OBJECTS { componentLinkMaxResBandwidth,
             componentLinkDescrMaxLspBandwidthPrio0,
             componentLinkDescrMaxLspBandwidthPrio1,
             componentLinkDescrMaxLspBandwidthPrio2,
             componentLinkDescrMaxLspBandwidthPrio3,
             componentLinkDescrMaxLspBandwidthPrio4,
             componentLinkDescrMaxLspBandwidthPrio5,
             componentLinkDescrMaxLspBandwidthPrio6,
             componentLinkDescrMaxLspBandwidthPrio7,
             componentLinkBandwidthUnreserved,
             componentLinkBandwidthRowStatus,
             componentLinkBandwidthStorageType
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for the monitoring of
           bandwidth parameters associated with component links."
   ::= { teLinkGroups 4 }

teLinkPscGroup OBJECT-GROUP
   OBJECTS { teLinkDescrMinLspBandwidth,
             teLinkDescrInterfaceMtu,
             componentLinkDescrMinLspBandwidth,
             componentLinkDescrInterfaceMtu
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for devices that are



Dubuc et al.              Expires November 2003                [Page 49]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


           packet switch capable."
   ::= { teLinkGroups 5 }

teLinkTdmGroup OBJECT-GROUP
   OBJECTS { teLinkDescrMinLspBandwidth,
             teLinkDescrIndication,
             componentLinkDescrMinLspBandwidth,
             componentLinkDescrIndication
           }

   STATUS  current
   DESCRIPTION
          "Collection of objects needed for devices that are
           TDM switching capable."
   ::= { teLinkGroups 6 }

-- End of TE-LINK-MIB
END

10.  Intellectual Property Considerations

   The IETF takes no position regarding the validity or scope of any
   intellectual property or other rights that might be claimed to per-
   tain 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 implementers or users of this specification can be obtained from
   the IETF Secretariat.

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



11.  Security Considerations

   There are a number of management objects defined in this MIB module
   with a MAX-ACCESS clause of read-write and/or read-create. Such
   objects may be considered sensitive or vulnerable in some network



Dubuc et al.              Expires November 2003                [Page 50]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


   environments. The support for SET operations in a non-secure environ-
   ment without proper protection can have a negative effect on network
   operations. These are the tables and objects and their sensitiv-
   ity/vulnerability:

   -  All the tables in this MIB module have routing information in
      them and so they all have the same security attributes.
      Unauthorized changes to attributes of these tables can disrupt
      resource allocation in the network.

   Some of the readable objects in this MIB module (i.e., objects with a
   MAX-ACCESS other than not-accessible) may be considered sensitive or
   vulnerable in some network environments. It is thus important to con-
   trol even GET and/or NOTIFY access to these objects and possibly to
   even encrypt the values of these objects when sending them over the
   network via SNMP. These are the tables and objects and their sensi-
   tivity/vulnerability:

   -  IP address entries in the teLinkTable (teLinkLocalIpAddr and
      teLinkRemoteIpAddr) may reveal the internals of a network provider
      IP address space.

   SNMP versions prior to SNMPv3 did not include adequate security.
   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 module.

   It is RECOMMENDED that implementers consider the security features as
   provided by the SNMPv3 framework (see [RFC3410], section 8), includ-
   ing full support for the SNMPv3 cryptographic mechanisms (for authen-
   tication and privacy).

   Further, deployment of SNMP versions prior to SNMPv3 is NOT RECOM-
   MENDED.  Instead, it is RECOMMENDED to deploy SNMPv3 and to enable
   cryptographic security. It is then a customer/operator responsibility
   to ensure that the SNMP entity giving access to an instance of this
   MIB module 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.

12.  Acknowledgments

   The authors would like to acknowledge the contribution of Dmitry
   Ryumkin.






Dubuc et al.              Expires November 2003                [Page 51]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


13.  References


13.1.  Normative References

   [RFC2119]     Bradner, S., "Key words for use in RFCs to Indicate
                 Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2578]     McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
                 J., Rose, M., and S. Waldbusser, "Structure of
                 Management Information Version 2 (SMIv2)", STD 58,
                 RFC 2578, April 1999.

   [RFC2579]     McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
                 J., Rose, M., and S. Waldbusser, "Textual Conventions
                 for SMIv2", STD 58, RFC 2579, April 1999.

   [RFC2580]     McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
                 J., Rose, M., and Waldbusser, S., "Conformance
                 Statements for SMIv2", STD 58, RFC 2580, April 1999.

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

   [RFC3291]     Daniele, M., Haberman, B., Routhier, S., and
                 Shoenwaelder, J., "Textual Conventions for Internet
                 Network Addresses", RFC 3291, May 2002.

   [RFC3471]     Ashwood-Smith, P., Banarjee, A., Berger, L.,
                 Bernstein, G., Drake, J., Fan, Y., Kompella, K.,
                 Mannie, E., Lang, J., Rajagopalan, B., Rekhter, Y.,
                 Saha, D., Sharma, V., Swallow, G., and Tang, Z.,
                 "Generalized MPLS Signaling Functional Description",
                 RFC 3471, January 2003.

   [BUNDLING]    Kompella, K., Rekhter, Y., and Berger, L.,
                 "Link Bundling in MPLS Traffic Engineering",
                 Internet Draft <draft-ietf-mpls-bundle-04.txt>,
                 July 2002.

   [GMPLS-OSPF]  Kompella, K., Rekhter, Y., Banerjee, A. et al, "OSPF
                 Extensions in Support of Generalized MPLS", Internet
                 Draft <draft-ietf-ccamp-ospf-gmpls-extensions-09.txt>,
                 December 2002.

   [HIERARCHY]   Kompella, K., Rekhter, Y., "LSP Hierarchy with
                 Generalized MPLS TE", Internet Draft
                 <draft-ietf-mpls-lsp-hierarchy-08.txt>,



Dubuc et al.              Expires November 2003                [Page 52]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


                 September 2002.

   [IANAifType]  "IANAifType MIB Module",
                 http://www.iana.org/assignments/ianaiftype-mib.

   [LMP]         Lang, J., Mitra, K., Drake, J., Kompella, K.,
                 Rekhter, Y., Berger, L., Rajagopalan, B.,
                 Basak, D., Sandick, H., Zinin, A.,
                 Rajagopalan, B., and Ramamoorthi, S.,
                 "Link Management Protocol",
                 Internet Draft <draft-ccamp-lmp-09.txt>,
                 June 2003.

   [OSPF]        Katz, D., Yeung, D., and Kompella, K., "Traffic
                 Engineering Extensions to OSPF", Internet Draft
                 <draft-katz-yeung-ospf-traffic-09.txt>, October 2002.

   [ROUTING]     Kompella, K., Rekhter, Y., "Routing Extensions in
                 Support of Generalized MPLS", Internet Draft
                 <draft-ietf-ccamp-gmpls-routing-06.txt>, June 2003.


13.2.  Informative References

[RFC3410]     Case, J., Mundy, R., Partain, D. and B. Stewart,
              "Introduction and Applicability Statements for
              Internet-Standard Management Framework", RFC 3410,
              December 2002.

[GMPLS-ARCH]  Mannie, E., Ashwood-Smith, P., Awduche, D.,
              Banarjee, A., Basak, D., Berger, L., Bernstein, G.,
              Dharanikota, S., Drake, J., Fan, Y., Fedyk, D.,
              Grammel, G., Guo, D., Kompella, K., Kullberg, A.,
              Lang, J., Liaw, F., Nadeau, T., Ong, L.,
              Papadimitriou, D., Pendarakis, D., Rajagopalan, B.,
              Rekhter, Y., Saha, D., Sandick, H., Sharma, V.,
              Swallow, G., Tang, Z., Yates, J., Young, G., Yu, J.,
              Zinin, A., "Generalized Multi-Protocol Label Switching
              (GMPLS) Architecture", Internet Draft
              <draft-ietf-ccamp-gmpls-architecture-07.txt>,
              May 2003.

14.  Authors' Addresses

Martin Dubuc                         Thomas D. Nadeau
Email: dubuc.consulting@rogers.com   Cisco Systems, Inc.
                                     300 Apollo Drive
                                     Chelmsford, MA 01824



Dubuc et al.              Expires November 2003                [Page 53]


Internet Draft           MPLS TE Link MIB Module         August 26, 2003


                                     Phone: +1-978-244-3051
                                     Email: tnadeau@cisco.com

Sudheer Dharanikota                  Jonathan P. Lang
Email: sudheer@avici.com             Rincon Networks, Inc.
                                     110 El Paseo
                                     Santa Barbara, CA 93101
                                     Email: jplang@ieee.org

15.  Full Copyright Statement


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

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

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.  This
   document and the information contained herein is provided on an "AS
   IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK
   FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
   LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL
   NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY
   OR FITNESS FOR A PARTICULAR PURPOSE.
















Dubuc et al.              Expires November 2003                [Page 54]