Network Working Group                                       Martin Dubuc
Internet Draft
Category: Standards Track                            Sudheer Dharanikota
Expires: October 2003                                      Avici Systems

                                                        Thomas D. Nadeau
                                                           Cisco Systems

                                                        Jonathan P. Lang
                                                         Rincon Networks

                                                              April 2003


            Traffic Engineering Management Information Base


                   draft-ietf-mpls-telink-mib-00.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 Internet
   Draft.




Dubuc et al.              Expires October 2003                  [Page 1]


Internet Draft              MPLS TE Link MIB              April 18, 2003


Table of Contents

1.   The Internet-Standard Management Framework  . . . . . . . . . .   2
2.   Introduction  . . . . . . . . . . . . . . . . . . . . . . . . .   3
3.   Terminology . . . . . . . . . . . . . . . . . . . . . . . . . .   3
4.   The SNMP Management Framework . . . . . . . . . . . . . . . . .   3
5.   Feature Checklist . . . . . . . . . . . . . . . . . . . . . . .   5
6.   Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . .   5
6.1. Summary of TE Link MIB  . . . . . . . . . . . . . . . . . . . .   5
7.   Brief Description of MIB Objects  . . . . . . . . . . . . . . .   6
7.1. teLinkTable . . . . . . . . . . . . . . . . . . . . . . . . . .   6
7.2. teLinkDescriptorTable . . . . . . . . . . . . . . . . . . . . .   6
7.3. teLinkSrlgTable . . . . . . . . . . . . . . . . . . . . . . . .   6
7.4. teLinkBandwidthTable  . . . . . . . . . . . . . . . . . . . . .   6
7.5. componentLinkTable  . . . . . . . . . . . . . . . . . . . . . .   6
7.6. componentLinkDescriptorTable  . . . . . . . . . . . . . . . . .   7
7.7. componentLinkBandwidthTable . . . . . . . . . . . . . . . . . .   7
8.   Example of Bundled Link Setup . . . . . . . . . . . . . . . . .   7
9.   Application of the Interfaces Group to TE Links . . . . . . . .  10
9.1  Support of the TE Link Layer by ifTable . . . . . . . . . . . .  11
9.2  Using ifStackTable  . . . . . . . . . . . . . . . . . . . . . .  12
10.  TE Link MIB Definitions . . . . . . . . . . . . . . . . . . . .  14
11.  Intellectual Property Considerations  . . . . . . . . . . . . .  44
12.  Security Considerations . . . . . . . . . . . . . . . . . . . .  45
13.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . .  46
14.  References  . . . . . . . . . . . . . . . . . . . . . . . . . .  46
14.1  Normative References . . . . . . . . . . . . . . . . . . . . .  46
14.2  Informative References . . . . . . . . . . . . . . . . . . . .  47
15.  Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . .  49
16.  Full Copyright Statement  . . . . . . . . . . . . . . . . . . .  49

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






Dubuc et al.              Expires October 2003                  [Page 2]


Internet Draft              MPLS TE Link MIB              April 18, 2003


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 net-
   work, which improves routing scalability. In addition, the use of TE
   link allows the implementation of new capabilities such as link pro-
   tection.

   We present in this document a MIB that can be used to manage TE links
   and their extension, the bundled link. This MIB enable both the con-
   figuration 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
   links.  In cases where more than one component link is 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.  The SNMP Management Framework

   The SNMP Management Framework presently consists of five major compo-
   nents:



Dubuc et al.              Expires October 2003                  [Page 3]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   -  An overall architecture, described in RFC 2571 [RFC2571].

      Mechanisms for describing and naming objects and events for the
      purpose of management.  The first version of this Structure of
      Management Information (SMI) is called SMIv1 and described in
      STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
      1215 [RFC1215].  The second version, called SMIv2, is described
      in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and
      STD 58, RFC 2580 [RFC2580].

   -  Message protocols for transferring management information.  The
      first version of the SNMP message protocol is called SNMPv1 and
      described in STD 15, RFC 1157 [RFC1157].  A second version of
      the SNMP message protocol, which is not an Internet standards
      track protocol, is called SNMPv2c and described in RFC 1901
      [RFC1901] and RFC 1906 [RFC1906].  The third version of the
      message protocol is called SNMPv3 and described in RFC 1906
      [RFC1906], RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

   -  Protocol operations for accessing management information.  The
      first set of protocol operations and associated PDU formats is
      described in STD 15, RFC 1157 [RFC1157].  A second set of
      protocol operations and associated PDU formats is described in
      RFC 1905 [RFC1905].

   -  A set of fundamental applications described in RFC 2573
      [RFC2573] and the view-based access control mechanism described
      in RFC 2575 [RFC2575].

   A more detailed introduction to the current SNMP Management Framework
   can be found in RFC 2570 [RFC2570].

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

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






Dubuc et al.              Expires October 2003                  [Page 4]


Internet Draft              MPLS TE Link MIB              April 18, 2003


5.  Feature Checklist

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

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

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

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

6.  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.1.  Summary of TE Link MIB

   The MIB objects for performing these actions consist of the following
   tables:

   -  The TE link table (teLinkTable), which is used to
      specify TE links, including bundled links, and their generic
      traffic engineering parameters.

   -  The TE link descriptor table (teLinkDescriptorTable), which is
      used to enumerate the TE link descriptors.

   -  The shared risk link group (SRLG) table (teLinkSrlgTable),
      which is used to specify the SRLGs associated with TE links.

   -  The TE link bandwidth table (teLinkBandwidthTable),
      which is used for reporting priority-based bandwidth values



Dubuc et al.              Expires October 2003                  [Page 5]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      associated with TE links.

   -  The component link table (componentLinkTable), which is
      used to identify the component links that are associated
      with the TE links and specify the component link generic
      traffic engineering parameters.

   -  The component link descriptor table
      (componentLinkDescriptorTable), which is used to enumerate
      the component link descriptors.

   -  The component link bandwidth table
      (componentLinkBandwidthTable), which is used to report
      priority-based bandwidth values associated with component links.

   These tables are described in the subsequent sections.

7.  Brief Description of MIB Objects

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

7.1.  teLinkTable

   This table represents the TE links, including bundled links.

7.2.  teLinkDescriptorTable

   This table represents the TE link descriptors.

7.3.  teLinkSrlgTable

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

7.4.  teLinkBandwidthTable

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

7.5.  componentLinkTable

   This table enumerates the component links and their association with
   TE link.







Dubuc et al.              Expires October 2003                  [Page 6]


Internet Draft              MPLS TE Link MIB              April 18, 2003


7.6.  componentLinkDescriptorTable

   This table enumerates the link descriptors that each component link
   supports.

7.7.  componentLinkBandwidthTable

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

8.  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, it is intended as an aid to understanding some
   of the key concepts. It is meant to be read after going through the
   MIB itself.

   Suppose that one would like to manually create a bundled link
   out of two 1:1 TE links. 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.

   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                        = 25,
      teLinkIpAddrType               = unknown(0),
      teLinkRowStatus                = createAndGo(4)
   }

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

   Next, the two TE links are created.

   In teLinkTable:
   {
      ifIndex                        = 20,
      teLinkIpAddrType               = unknown(0),



Dubuc et al.              Expires October 2003                  [Page 7]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      teLinkMetric                   = 5,
      teLinkResourceClass            = 3,
      teLinkRowStatus                = createAndWait(5)
   }

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

   In teLinkTable:
   {
      ifIndex                        = 21,
      teLinkIpAddrType               = unknown(0),
      teLinkMetric                   = 5,
      teLinkResourceClass            = 3,
      teLinkRowStatus                = createAndWait(5)
   }

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

   We assign SRLGs to the TE links.

   In the teLinkSrlgTable:
   {
      ifIndex                        = 20,
      srlg                           = 10,
      srlgRowStatus                  = createAndGo(4)
   }

   In the teLinkSrlgTable:
   {
      ifIndex                        = 21,
      srlg                           = 50,
      srlgRowStatus                  = createAndGo(4)
   }

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

   Next, for each TE link, two component links are created.



Dubuc et al.              Expires October 2003                  [Page 8]


Internet Draft              MPLS TE Link MIB              April 18, 2003


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

   In componentLinkTable:
   {
      ifIndex                          = 40,
      componentLinkPreferredProtection = primary(1),
      componentLinkRowStatus           = createAndGo(4)
   }

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

   In componentLinkTable:
   {
      ifIndex                          = 43,
      componentLinkPreferredProtection = secondary(2),
      componentLinkRowStatus           = createAndGo(4)
   }

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

   In componentLinkTable:
   {
      ifIndex                          = 44,
      componentLinkPreferredProtection = primary(1),
      componentLinkRowStatus           = createAndGo(4)
   }

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

   In componentLinkTable:
   {
      ifIndex                          = 48,
      componentLinkPreferredProtection = secondary(2),



Dubuc et al.              Expires October 2003                  [Page 9]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      componentLinkRowStatus           = createAndGo(4)
   }

   In ifStackTable:
   {
      ifStackHigherLayer             = 21,
      ifStackLowerLayer              = 48,
      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.

9.  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...                    +



Dubuc et al.              Expires October 2003                 [Page 10]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   +----------------------------------------+

   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.

9.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
                 [IANAFamily].

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

   ifPhysAddress Unused.

   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



Dubuc et al.              Expires October 2003                 [Page 11]


Internet Draft              MPLS TE Link MIB              April 18, 2003


                 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.

   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.

9.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 2 bundled TE links.
            Each bundled TE link runs over a 1:1 optical
            transport interface.

           +---------------------------------+



Dubuc et al.              Expires October 2003                 [Page 12]


Internet Draft              MPLS TE Link MIB              April 18, 2003


           | mpls                            |
           +---------------------------------+
                            |
           +---------------------------------+
           | teLink (Link Bundle)            |
           +---------------------------------+
                   |                 |
           +---------------+ +---------------+
           | teLink        | | teLink        |
           +---------------+ +---------------+
               |        |        |        |
           +------+ +------+ +------+ +------+
           |oTrans| |oTrans| |oTrans| |oTrans|
           +------+ +------+ +------+ +------+

   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)
           6        opticalTransport (type 196)
           7        opticalTransport (type 196)
           8        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
           3             6
           4             7
           4             8
           5             0
           6             0
           7             0
           8             0


   In the case where MPLS is using a single TE link, then



Dubuc et al.              Expires October 2003                 [Page 13]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   the upper TE link layer (link bundle) is not required.

           +---------------+
           | mpls          |
           +---------------+
                   |
           +---------------+
           | teLink        |
           +---------------+
               |        |
           +------+ +------+
           |oTrans| |oTrans|
           +------+ +------+

   The assignment of the index values could for example be:

           ifIndex  Description
           1        mpls             (type 166)
           2        teLink           (type 200)
           3        opticalTransport (type 196)
           4        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             0
           4             0

10.  TE Link MIB Definitions

TE-LINK-MIB DEFINITIONS ::= BEGIN

IMPORTS
   MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
   mib-2, Unsigned32
      FROM SNMPv2-SMI

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

   TruthValue, RowStatus, StorageType



Dubuc et al.              Expires October 2003                 [Page 14]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      FROM SNMPv2-TC

   InterfaceIndexOrZero, ifIndex
      FROM IF-MIB

   InetAddressType, InetAddress
      FROM INET-ADDRESS-MIB;


teLinkMIB MODULE-IDENTITY
   LAST-UPDATED "200304181200Z"  -- 18 April 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@avici.com

                Thomas D. Nadeau
        Email:  tnadeau@cisco.com

                Jonathan P. Lang
        Email:  jplang@ieee.org"

   DESCRIPTION
       "This MIB contains managed object definitions for
        MPLS traffic engineering links as defined in:
        Kompella, K., Rekhter, Y., Berger, L.,
        Link Bundling in MPLS Traffic Engineering
        Internet Draft <draft-ietf-mpls-bundling-04.txt>,
        July 2002."

   -- Revision history.
   REVISION
       "200304181200Z"  -- 18 April 2003 12:00:00 EST
   DESCRIPTION
       "Initial version published as RFC xxxx (to be assigned by RFC Editor)"
   ::= { mib-2 xxx } -- To be assigned by IANA (experimental 114 can be used
                     -- in the interim)


-- Textual Conventions


-- Top level components of this MIB

-- Notifications



Dubuc et al.              Expires October 2003                 [Page 15]


Internet Draft              MPLS TE Link MIB              April 18, 2003


teLinkNotifications OBJECT IDENTIFIER ::= { teLinkMIB 0 }
-- Tables, Scalars
teLinkObjects       OBJECT IDENTIFIER ::= { teLinkMIB 1 }
-- Conformance
teLinkConformance   OBJECT IDENTIFIER ::= { teLinkMIB 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 }

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(TBD), 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. If the link is unnumbered,
        ifIndex is also used as the outgoing interface identifier."
   INDEX         { ifIndex }
   ::= { teLinkTable 1 }

TeLinkEntry ::= SEQUENCE {
  teLinkIpAddrType             InetAddressType,
  teLinkIpAddr                 InetAddress,
  teLinkRemoteIpAddr           InetAddress,
  teLinkMetric                 Unsigned32,
  teLinkMuxCapability          INTEGER,
  teLinkProtectionType         INTEGER,
  teLinkWorkingPriority        Unsigned32,
  teLinkResourceClass          Unsigned32,
  teLinkIncomingIfId           InterfaceIndexOrZero,
  teLinkOutgoingIfId           InterfaceIndexOrZero,
  teLinkRowStatus              RowStatus,
  teLinkStorageType            StorageType
}




Dubuc et al.              Expires October 2003                 [Page 16]


Internet Draft              MPLS TE Link MIB              April 18, 2003


teLinkIpAddrType OBJECT-TYPE
   SYNTAX        InetAddressType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "For IPv4 and IPv6 numbered links, this object represents the
        IP address type associated with the TE link. For
        unnumbered links, a value of unknown(0) must be used."
   ::= { teLinkEntry 1 }

teLinkIpAddr OBJECT-TYPE
   SYNTAX        InetAddress
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "For IPv4 and IPv6 numbered links, this object represents the
        IP address associated with the TE link."
   ::= { teLinkEntry 2 }

teLinkRemoteIpAddr OBJECT-TYPE
   SYNTAX        InetAddress
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "The remote IP address associated with the TE link (IPv4 and
        IPv6 numbered links)."
   ::= { 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
       "[BUNDLING]"
   ::= { teLinkEntry 4 }

teLinkMuxCapability OBJECT-TYPE
   SYNTAX        INTEGER {
                     packetSwitch1(1),
                     packetSwitch2(2),
                     packetSwitch3(3),
                     packetSwitch4(4),
                     layer2Switch(51),



Dubuc et al.              Expires October 2003                 [Page 17]


Internet Draft              MPLS TE Link MIB              April 18, 2003


                     tdm(100),
                     lambdaSwitch(150),
                     fiberSwitch(200)
                 }
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies link multiplex capability of the
        TE link, which is derived from its component links. All
        component links within the same TE link must have the
        same link multiplex capability."
   REFERENCE
       "[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."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { teLinkEntry 6 }

teLinkWorkingPriority OBJECT-TYPE
   SYNTAX        Unsigned32 (0..7)
   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
       "[GMPLS-OSPF]"
   ::= { teLinkEntry 7 }

teLinkResourceClass OBJECT-TYPE
   SYNTAX        Unsigned32



Dubuc et al.              Expires October 2003                 [Page 18]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   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."
   ::= { 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."
   REFERENCE
       "[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."
   REFERENCE
       "[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. All read-create objects
        can only be changed when teLinkRowStatus is active."
   ::= { teLinkEntry 11 }

teLinkStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current



Dubuc et al.              Expires October 2003                 [Page 19]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   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 link 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 descriptor.
        An ifEntry in the ifTable must exist before a
        teLinkDescriptorEntry using the same ifIndex is created.
        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,
  teLinkEncodingType           INTEGER,
  teLinkDescrPriority          Unsigned32,
  teLinkMinReservableBandwidth Unsigned32,
  teLinkMaxReservableBandwidth Unsigned32,
  teLinkDescrRowStatus         RowStatus,
  teLinkDescrStorageType       StorageType
}

teLinkDescriptorId OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    not-accessible



Dubuc et al.              Expires October 2003                 [Page 20]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   STATUS        current
   DESCRIPTION
       "This object specifies the link descriptor identifier."
   ::= { teLinkDescriptorEntry 1 }

teLinkEncodingType OBJECT-TYPE
   SYNTAX        INTEGER {
                     packet(1),
                     ethernet(2),
                     ansiEtsiPdh(3),
                     sdhItuSonetAnsi(5),
                     digitalWrapper(7),
                     lambda(8),
                     fiber(9),
                     fiberChannel(11)
                 }
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the TE link encoding type."
   REFERENCE
       "[RFC3471]"
   ::= { teLinkDescriptorEntry 2 }

teLinkDescrPriority OBJECT-TYPE
   SYNTAX        Unsigned32 (0..7)
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This object specifies the lowest priority at which that link
        encoding type is available."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { teLinkDescriptorEntry 3 }

teLinkMinReservableBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the minimum reservable bandwidth on
        the TE link. This is derived from the union of the
        minimum reservable 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
       "[GMPLS-OSPF]"



Dubuc et al.              Expires October 2003                 [Page 21]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   ::= { teLinkDescriptorEntry 4 }

teLinkMaxReservableBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   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
       "[GMPLS-OSPF]"
   ::= { teLinkDescriptorEntry 5 }

teLinkDescrRowStatus 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. All read-create objects
        can only be changed when teLinkDescrRowStatus is active."
   ::= { teLinkDescriptorEntry 6 }

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 7 }

-- 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."



Dubuc et al.              Expires October 2003                 [Page 22]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   ::= { 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.
        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, srlg }
   ::= { teLinkSrlgTable 1 }

TeLinkSrlgEntry ::= SEQUENCE {
  srlg            Unsigned32,
  srlgRowStatus   RowStatus,
  srlgStorageType StorageType
}

srlg OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This identifies a SRLG supported by the TE link."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { teLinkSrlgEntry 1 }

srlgRowStatus 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. All read-create objects
        can only be changed when srlgRowStatus is active."
   ::= { teLinkSrlgEntry 2 }

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



Dubuc et al.              Expires October 2003                 [Page 23]


Internet Draft              MPLS TE Link MIB              April 18, 2003


       "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
   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. 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, teLinkPriority }
   ::= { teLinkBandwidthTable 1 }

TeLinkBandwidthEntry ::= SEQUENCE {
  teLinkPriority             Unsigned32,
  teLinkUnreservedBandwidth  Unsigned32,
  teLinkMaximumLspBandwidth  Unsigned32,
  teLinkBandwidthRowStatus   RowStatus,
  teLinkBandwidthStorageType StorageType
}

teLinkPriority OBJECT-TYPE
   SYNTAX        Unsigned32 (1..8)
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This attribute specifies the priority. It should be mapped



Dubuc et al.              Expires October 2003                 [Page 24]


Internet Draft              MPLS TE Link MIB              April 18, 2003


        to a number between 0 and 7"
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { teLinkBandwidthEntry 1 }

teLinkUnreservedBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-only
   STATUS        current
   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
       "[BUNDLING]"
   ::= { teLinkBandwidthEntry 2 }

teLinkMaximumLspBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the TE link maximum
        LSP bandwidth at priority p. It is the maximum of all
        maximum LSP bandwidth at priority p of the 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
       "[BUNDLING]"
   ::= { teLinkBandwidthEntry 3 }

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. All read-create objects
        can only be changed when teLinkBandwidthRowStatus is active."
   ::= { teLinkBandwidthEntry 4 }

teLinkBandwidthStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create



Dubuc et al.              Expires October 2003                 [Page 25]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   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
   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. 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 {
  componentLinkMuxCapability       INTEGER,
  componentLinkPreferredProtection INTEGER,
  componentLinkCurrentProtection   INTEGER,
  componentLinkRowStatus           RowStatus,
  componentLinkStorageType         StorageType
}

componentLinkMuxCapability OBJECT-TYPE
   SYNTAX        INTEGER {
                     packetSwitch1(1),



Dubuc et al.              Expires October 2003                 [Page 26]


Internet Draft              MPLS TE Link MIB              April 18, 2003


                     packetSwitch2(2),
                     packetSwitch3(3),
                     packetSwitch4(4),
                     layer2Switch(51),
                     tdm(100),
                     lambdaSwitch(150),
                     fiberSwitch(200)
                 }
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies link multiplexing capabilities of the
        component link."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { componentLinkEntry 1 }

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

componentLinkCurrentProtection OBJECT-TYPE
   SYNTAX        INTEGER {
                     primary(1),
                     secondary(2)
                 }
   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. All read-create objects



Dubuc et al.              Expires October 2003                 [Page 27]


Internet Draft              MPLS TE Link MIB              April 18, 2003


        can only be changed when componentLinkRowStatus is active."
   ::= { 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 link descriptors associated with the
        component links."
   ::= { teLinkObjects 6 }

componentLinkDescriptorEntry OBJECT-TYPE
   SYNTAX        ComponentLinkDescriptorEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   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.
        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,
  componentLinkEncodingType        INTEGER,
  componentLinkDescrPriority       Unsigned32,
  componentLinkMinReservBandwidth  Unsigned32,
  componentLinkMaxReservBandwidth  Unsigned32,



Dubuc et al.              Expires October 2003                 [Page 28]


Internet Draft              MPLS TE Link MIB              April 18, 2003


  componentLinkDescrRowStatus      RowStatus,
  componentLinkDescrStorageType    StorageType
}

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

componentLinkEncodingType OBJECT-TYPE
   SYNTAX        INTEGER {
                     packet(1),
                     ethernet(2),
                     ansiEtsiPdh(3),
                     sdhItuSonetAnsi(5),
                     digitalWrapper(7),
                     lambda(8),
                     fiber(9),
                     fiberChannel(11)
                 }
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the component link encoding type."
   REFERENCE
       "[RFC3471]"
   ::= { componentLinkDescriptorEntry 2 }

componentLinkDescrPriority OBJECT-TYPE
   SYNTAX        Unsigned32 (0..7)
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This object specifies the lowest priority at which that link
        encoding type is available for the component link."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { componentLinkDescriptorEntry 3 }

componentLinkMinReservBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the minimum reservable bandwidth on



Dubuc et al.              Expires October 2003                 [Page 29]


Internet Draft              MPLS TE Link MIB              April 18, 2003


        the component link. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { componentLinkDescriptorEntry 4 }

componentLinkMaxReservBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   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
       "[GMPLS-OSPF]"
   ::= { componentLinkDescriptorEntry 5 }

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. All read-create objects
        can only be changed when componentLinkDescrRowStatus
        is active."
   ::= { componentLinkDescriptorEntry 6 }

componentLinkDescrStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "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 7 }

-- End of componentLinkDescriptorTable


-- Component Link Bandwidth Table

componentLinkBandwidthTable OBJECT-TYPE
   SYNTAX        SEQUENCE OF ComponentLinkBandwidthEntry
   MAX-ACCESS    not-accessible



Dubuc et al.              Expires October 2003                 [Page 30]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   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. 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, componentLinkPriority }
   ::= { componentLinkBandwidthTable 1 }

ComponentLinkBandwidthEntry ::= SEQUENCE {
  componentLinkPriority            Unsigned32,
  componentLinkUnreservedBandwidth Unsigned32,
  componentLinkMaximumLspBandwidth Unsigned32,
  componentLinkBandwidthRowStatus  RowStatus,
  componentLinkBwStorageType       StorageType
}

componentLinkPriority OBJECT-TYPE
   SYNTAX        Unsigned32 (1..8)
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION
       "This attribute specifies the priority. It should be mapped
        to a number between 0 and 7."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { componentLinkBandwidthEntry 1 }

componentLinkUnreservedBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION
       "This attribute specifies the component link unreserved
        bandwidth at priority p. This value is an estimate



Dubuc et al.              Expires October 2003                 [Page 31]


Internet Draft              MPLS TE Link MIB              April 18, 2003


        in units of 1,000 bits per second."
   REFERENCE
       "[GMPLS-OPSF]"
   ::= { componentLinkBandwidthEntry 2 }

componentLinkMaximumLspBandwidth OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION
       "This attribute specifies the component link maximum
        LSP bandwidth at priority p. This value is an estimate
        in units of 1,000 bits per second."
   REFERENCE
       "[GMPLS-OSPF]"
   ::= { componentLinkBandwidthEntry 3 }

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. All read-create objects can only
        be changed when componentLinkBandwidthRowStatus is active."
   ::= { componentLinkBandwidthEntry 4 }

componentLinkBwStorageType 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 }

-- End of componentLinkBandwidthTable


-- Notification Configuration

teLinkNotifEnable OBJECT-TYPE
   SYNTAX        TruthValue
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION



Dubuc et al.              Expires October 2003                 [Page 32]


Internet Draft              MPLS TE Link MIB              April 18, 2003


       "If this object is true, then it enables the
        generation of the TE link notifications,
        otherwise these notifications are not emitted."
   DEFVAL        { false }
   ::= { teLinkObjects 8 }


-- Notifications


-- TE Link Notifications

linkBundleMismatch NOTIFICATION-TYPE
   OBJECTS       { teLinkIpAddrType, teLinkIpAddr, teLinkRemoteIpAddr }
   STATUS        current
   DESCRIPTION
       "This notification is generated when a mismatch is found on a
        bundled link. Such mismatch can be detected for instance if one
        of the traffic engineering parameters is not consistent across
        all TE links within a bundled link (resource class, etc.)."
   ::= { teLinkNotifications 1 }

-- End of notifications


-- Module compliance

teLinkGroups
   OBJECT IDENTIFIER ::= { teLinkConformance 1 }

teLinkCompliances
   OBJECT IDENTIFIER ::= { teLinkConformance 2 }

teLinkFullModuleCompliance MODULE-COMPLIANCE
   STATUS current
   DESCRIPTION
       "Compliance statement for agents that support the
        configuration and monitoring of TE Link MIB."
   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 automatic
      -- configuration is supported.

      MANDATORY-GROUPS    { teLinkGroup,
                            teLinkBandwidthGroup,
                            componentLinkBandwidthGroup }



Dubuc et al.              Expires October 2003                 [Page 33]


Internet Draft              MPLS TE Link MIB              April 18, 2003


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

      GROUP teLinkNotificationGroup
      DESCRIPTION
          "This group is mandatory for equipment that support
           TE link notifications."

      -- teLinkTable

      OBJECT      teLinkIpAddrType
      SYNTAX      INTEGER { unknown(0), ipv4(1), ipv6(2) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The dns(16) address type need not be supported.
           The ipv4(1) and ipv6(2) address types need not be
           supported if numbered links are not supported. The
           unknown(0) address type need not be supported if
           unnumbered links are not supported."

      OBJECT      teLinkIpAddr
      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      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      teLinkMuxCapability
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

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

      OBJECT      teLinkRowStatus



Dubuc et al.              Expires October 2003                 [Page 34]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      teLinkStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkDescriptorTable

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

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

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

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

      OBJECT      teLinkDescrRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      teLinkDescrStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkSrlgTable

      OBJECT      srlgRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }



Dubuc et al.              Expires October 2003                 [Page 35]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      srlgStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkBandwidthTable

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

      OBJECT      teLinkBandwidthRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      teLinkBandwidthStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkTable

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

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

      OBJECT      componentLinkRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      componentLinkStorageType



Dubuc et al.              Expires October 2003                 [Page 36]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkDescriptorTable

      OBJECT      componentLinkDescrRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      componentLinkDescrStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkBandwidthTable

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

      OBJECT      componentLinkBandwidthRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      componentLinkBwStorageType
      SYNTAX      INTEGER { other(1) }
      DESCRIPTION
          "Only other(1) needs to be supported."

   ::= { teLinkCompliances 1 }

teLinkMonModuleCompliance MODULE-COMPLIANCE
   STATUS current
   DESCRIPTION
       "Compliance statement for agents that support the
        monitoring of TE link MIB."
   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



Dubuc et al.              Expires October 2003                 [Page 37]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      -- configuration is unsupported.

      MANDATORY-GROUPS    { teLinkGroup,
                            teLinkBandwidthGroup,
                            componentLinkBandwidthGroup }

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

      GROUP teLinkNotificationGroup
      DESCRIPTION
          "This group is optional."

      -- teLinkTable

      OBJECT      teLinkIpAddrType
      SYNTAX      INTEGER { unknown(0), ipv4(1), ipv6(2) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The dns(16) address type need not be supported.
           The ipv4(1) and ipv6(2) address types need not be
           supported if numbered links are not supported. The
           unknown(0) address type need not be supported if
           unnumbered links are not supported."

      OBJECT      teLinkIpAddr
      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      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      teLinkMuxCapability
      MIN-ACCESS  read-only
      DESCRIPTION
          "Write access is not required."

      OBJECT      teLinkProtectionType



Dubuc et al.              Expires October 2003                 [Page 38]


Internet Draft              MPLS TE Link MIB              April 18, 2003


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

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

      OBJECT      teLinkRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      teLinkStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkDescriptorTable

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

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

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

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

      OBJECT      teLinkDescrRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only



Dubuc et al.              Expires October 2003                 [Page 39]


Internet Draft              MPLS TE Link MIB              April 18, 2003


      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      teLinkDescrStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkSrlgTable

      OBJECT      srlgRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      srlgStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- teLinkBandwidthTable

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

      OBJECT      teLinkBandwidthRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      teLinkBandwidthStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkTable




Dubuc et al.              Expires October 2003                 [Page 40]


Internet Draft              MPLS TE Link MIB              April 18, 2003


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

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

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

      OBJECT      componentLinkRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      componentLinkStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkDescriptorTable

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

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

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

      OBJECT      componentLinkDescrRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),



Dubuc et al.              Expires October 2003                 [Page 41]


Internet Draft              MPLS TE Link MIB              April 18, 2003


                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) state need not be supported."

      OBJECT      componentLinkDescrStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

      -- componentLinkBandwidthTable

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

      OBJECT      componentLinkBandwidthRowStatus
      SYNTAX      INTEGER { active(1), notInService(2),
                            createAndGo(4), destroy(6) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "The notReady(3) and createAndWait(5) states need
           not be supported."

      OBJECT      componentLinkBwStorageType
      SYNTAX      INTEGER { other(1) }
      MIN-ACCESS  read-only
      DESCRIPTION
          "Only other(1) needs to be supported."

   ::= { teLinkCompliances 2 }

-- Units of conformance

teLinkGroup OBJECT-GROUP
   OBJECTS { teLinkIpAddrType,
             teLinkIpAddr,
             teLinkRemoteIpAddr,
             teLinkMetric,
             teLinkMuxCapability,
             teLinkProtectionType,
             teLinkWorkingPriority,
             teLinkResourceClass,
             teLinkIncomingIfId,
             teLinkOutgoingIfId,
             teLinkRowStatus,



Dubuc et al.              Expires October 2003                 [Page 42]


Internet Draft              MPLS TE Link MIB              April 18, 2003


             teLinkStorageType,
             teLinkEncodingType,
             teLinkDescrPriority,
             teLinkMinReservableBandwidth,
             teLinkMaxReservableBandwidth,
             teLinkDescrRowStatus,
             teLinkDescrStorageType,
             componentLinkMuxCapability,
             componentLinkPreferredProtection,
             componentLinkCurrentProtection,
             componentLinkRowStatus,
             componentLinkStorageType,
             teLinkNotifEnable
           }

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

teLinkSrlgGroup OBJECT-GROUP
   OBJECTS { srlgRowStatus,
             srlgStorageType
           }

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

teLinkBandwidthGroup OBJECT-GROUP
   OBJECTS { teLinkUnreservedBandwidth,
             teLinkMaximumLspBandwidth,
             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 { componentLinkEncodingType,



Dubuc et al.              Expires October 2003                 [Page 43]


Internet Draft              MPLS TE Link MIB              April 18, 2003


             componentLinkDescrPriority,
             componentLinkMinReservBandwidth,
             componentLinkMaxReservBandwidth,
             componentLinkDescrRowStatus,
             componentLinkDescrStorageType,
             componentLinkUnreservedBandwidth,
             componentLinkMaximumLspBandwidth,
             componentLinkBandwidthRowStatus,
             componentLinkBwStorageType
           }

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

teLinkNotificationGroup NOTIFICATION-GROUP
   NOTIFICATIONS { linkBundleMismatch }
   STATUS  current
   DESCRIPTION
          "Set of notifications implemented in this module.
           None is mandatory."
   ::= { teLinkGroups 5 }

-- End of TE-LINK-MIB
END

11.  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



Dubuc et al.              Expires October 2003                 [Page 44]


Internet Draft              MPLS TE Link MIB              April 18, 2003


   Director.

12.  Security Considerations

   It is clear that this MIB is potentially useful for monitoring of
   link bundling enabled devices. This MIB can also be used for configu-
   ration of certain objects, and anything that can be configured can be
   incorrectly configured, with potentially disastrous results.

   At this writing, no security holes have been identified beyond those
   that SNMP Security [RFC2571] is itself intended to address.  These
   relate to primarily controlled access to sensitive information and
   the ability to configure a device - or which might result from opera-
   tor error, which is beyond the scope of any security architecture.

   There are a number of management objects defined in this MIB which
   have a MAX-ACCESS clause of read-write and/or read-create. Such
   objects may be considered sensitive or vulnerable in some network
   environments. The support for SET operations in a non-secure environ-
   ment without proper protection can have a negative effect on network
   operations. The use of SNMP Version 3 is recommended over prior ver-
   sions, for configuration control, as its security model is improved.

   SNMPv1 or SNMPv2 are by themselves not a secure environment. Even if
   the network itself is secure (for example by using IPSec [RFC2401]),
   there is no control as to who on the secure network is allowed to
   access and GET/SET (read/change/create/delete) the objects in this
   MIB. It is recommended that the implementers consider the security
   features as provided by the SNMPv3 framework. Specifically, the use
   of the User-based Security Model [RFC2574] and the View-based Access
   Control [RFC2575] is recommended. It is then a customer/user respon-
   sibility to ensure that the SNMP entity giving access to an instance
   of this MIB is properly configured to give access to the objects only
   to those principals (users) that have legitimate rights to indeed GET
   or SET (change/create/delete) them.

   There are a number of managed objects in this MIB that may contain
   information that may be sensitive from a business perspective, in
   that they can be used to derive the network topology, e.g. list of
   nodes and their IP address (teLinkTable), list of component links
   (componentLinkTable) in addition to usage of network resources
   (teLinkBandwidthTable and componentLinkBandwidthTable).  Allowing
   uncontrolled access to these objects could result in malicious and
   unwanted disruptions of network traffic, incorrect network configura-
   tion or theft of competitive business information.  There are no
   objects that are particularly sensitive in their own right, such as
   passwords or monetary amounts.




Dubuc et al.              Expires October 2003                 [Page 45]


Internet Draft              MPLS TE Link MIB              April 18, 2003


13.  Acknowledgments

   The general structure of this draft has been modeled around draft-
   ietf-mpls-lsr-mib-06.txt. The authors would like to acknowlegde the
   contribution of Dmitry Ryumkin.

14.  References


14.1.  Normative References

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

   [RFC2401]     Kent, S., and Atkinson, R., "Security Architecture
                 for the Internet Protocol", RFC 2401, November
                 1998.

   [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 S. Waldbusser, "Conformance
                 Statements for SMIv2", STD 58, RFC 2580, April 1999.

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

   [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.

   [Assigned]    Reynolds, J., and J. Postel, "Assigned Numbers",
                 RFC 1700, October 1994. See also:
                 http://www.iana.org/assignments/smi-numbers

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



Dubuc et al.              Expires October 2003                 [Page 46]


Internet Draft              MPLS TE Link MIB              April 18, 2003


                 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.

   [IANAFamily]  Internet Assigned Numbers Authority (IANA), ADDRESS
                 FAMILY NUMBERS, (http://www.isi.edu/in-
                 notes/iana/assignements/address-family-numbers),
                 for MIB see:
                 ftp://ftp.isi.edu/mib/ianaaddressfamilynumbers.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-08.txt>,
                 March 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.

14.2.  Informative References

[RFC1155]     Rose, M., and K. McCloghrie, "Structure and
              Identification of Management Information for TCP/IP-
              based Internets", STD 16, RFC 1155, May 1990.

[RFC1157]     Case, J., Fedor, M., Schoffstall, M., and J. Davin,
              "Simple Network Management Protocol", STD 15, RFC 1157,
              May 1990.

[RFC1212]     Rose, M., and K. McCloghrie, "Concise MIB Definitions",
              STD 16, RFC 1212, March 1991.

[RFC1215]     M. Rose, "A Convention for Defining Traps for use with
              the SNMP", RFC 1215, March 1991.

[RFC1901]     Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
              "Introduction to Community-based SNMPv2", RFC 1901,
              January 1996.

[RFC1905]     Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
              "Protocol Operations for Version 2 of the Simple
              Network Management Protocol (SNMPv2)", RFC 1905,



Dubuc et al.              Expires October 2003                 [Page 47]


Internet Draft              MPLS TE Link MIB              April 18, 2003


              January 1996.

[RFC1906]     Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
              "Transport Mappings for Version 2 of the Simple Network
              Management Protocol (SNMPv2)", RFC 1906, January 1996.

[RFC2570]     Case, J., Mundy, R., Partain, D., and B. Stewart,
              "Introduction to Version 3 of the Internet-standard
              Network Management Framework", RFC 2570, April 1999.

[RFC2571]     Harrington, D., Presuhn, R., and B. Wijnen, "An
              Architecture for Describing SNMP Management
              Frameworks", RFC 2571, April 1999.

[RFC2572]     Case, J., Harrington D., Presuhn R., and B. Wijnen,
              "Message Processing and Dispatching for the Simple
              Network Management Protocol (SNMP)", RFC 2572, April
              1999.

[RFC2573]     Levi, D., Meyer, P., and B. Stewart, "SNMPv3
              Applications", RFC 2573, April 1999.

[RFC2574]     Blumenthal, U., and B. Wijnen, "User-based Security
              Model (USM) for version 3 of the Simple Network
              Management Protocol (SNMPv3)", RFC 2574, April 1999.

[RFC2575]     Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
              Access Control Model (VACM) for the Simple Network
              Management Protocol (SNMP)", RFC 2575, April 1999.

[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-05.txt>,
              March 2003.




Dubuc et al.              Expires October 2003                 [Page 48]


Internet Draft              MPLS TE Link MIB              April 18, 2003


15.  Authors' Addresses

Martin Dubuc                         Thomas D. Nadeau
Email: dubuc.consulting@rogers.com   Cisco Systems, Inc.
                                     300 Apollo Drive
                                     Chelmsford, MA 01824
                                     Phone: +1-978-244-3051
                                     Email: tnadeau@cisco.com

Sudheer Dharanikota                  Jonathan P. Lang
Avici Systems, Inc.                  Rincon Networks, Inc.
101 Billerica Avenue                 110 El Paseo
N Billerica, MA 08162                Santa Barbara, CA 93101
Email: sudheer@avici.com             Email: jplang@ieee.org

16.  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 October 2003                 [Page 49]