Traffic Engineering Working Group                 Kireeti Kompella
Internet Draft                                    Juniper Networks
Expiration Date: April 2002


                       A Traffic Engineering MIB

                        draft-ietf-tewg-mib-01.txt


1. Status of this Memo

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

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

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

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

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


2. Abstract

   This memo defines an experimental portion of the Management
   Information Base (MIB) for use with network management protocols in
   the Internet community.  In particular, it describes managed objects
   for Traffic Engineered Tunnels, for example, Multi-Protocol Label
   Switched Paths ([1], [2]).












draft-ietf-te-mib-02.txt                                        [Page 1]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


3. Introduction

   This memo defines an experimental portion of the Management
   Information Base (MIB) for use with network management protocols in
   the Internet community.  In particular, it describes managed objects
   for Traffic Engineered Tunnels, for example, Multi-Protocol Label
   Switched Paths ([1], [2]).


4. The SNMP Network Management Framework

   The SNMP Management Framework presently consists of five major
   components:

      o  An overall architecture, described in RFC 2571 [3].

      o  Mechanisms for describing and naming objects and events for the
         purpose of management.  The first version of this Structure of
         Management Information (SMI) is called SMIv1 and described in
         STD 16, RFC 1155 [4], STD 16, RFC 1212 [5] and RFC 1215 [6].
         The second version, called SMIv2, is described in STD 58, which
         consists of RFC 2578 [7], RFC 2579 [8] and RFC 2580 [9].

      o  Message protocols for transferring management information.  The
         first version of the SNMP message protocol is called SNMPv1 and
         described in STD 15, RFC 1157 [10].  A second version of the
         SNMP message protocol, which is not an Internet standards track
         protocol, is called SNMPv2c and described in RFC 1901 [11] and
         RFC 1906 [12].  The third version of the message protocol is
         called SNMPv3 and described in RFC 1906 [12], RFC 2572 [13] and
         RFC 2574 [14].

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

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

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

   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.



draft-ietf-te-mib-02.txt                                        [Page 2]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


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


4.1. Object Definitions

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB.  Objects in the MIB are
   defined using the subset of Abstract Syntax Notation One (ASN.1)
   defined in the SMI.  In particular, each object type is named by an
   OBJECT IDENTIFIER, an administratively assigned name.  The object
   type together with an object instance serves to uniquely identify a
   specific instantiation of the object.  For human convenience, we
   often use a textual string, termed the descriptor, to also refer to
   the object type.


5. Overview of the MIB

   The Traffic Engineering MIB consists of two parts:
      1) Traffic Engineering information; and
      2) information about Traffic Tunnels.

   The following subsections give an overview of each part.

   Note that this MIB is organised as a read-only MIB.


5.1. Traffic Engineering Information

   This part contains information about the Link State Protocols used to
   carry TE information, the signalling protocols used to set up Traffic
   Tunnels, the number of Traffic Tunnels that have been configured and
   that are operational, and a mapping of Administrative Group numbers
   to names.









draft-ietf-te-mib-02.txt                                        [Page 3]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


5.2. Traffic Tunnel Information

   This part contains a table of Traffic Tunnels and information about
   each one.  This information includes the Tunnel name, its
   configuration information, its operational information, as well as
   information about the paths defined for the Traffic Tunnel.

   Configuration information includes the end points of the Traffic
   Tunnel, and the number of configured paths for the Traffic Tunnel.

   Operational information includes the current state (up/down), the
   count of octets and packets sent on the Traffic Tunnel, how long it
   has been up, and how many state transitions the Traffic Tunnel has
   had.

   Path information includes the name, the Explicit Route, the
   bandwidth, the setup and hold priorities, and the Administrative
   Group constraints.

   Operational path information includes the Recorded Route, the number
   of operational paths, the number of path changes, and when the last
   path change was.


6. MIB Specification

   TE-MIB DEFINITIONS ::= BEGIN

   IMPORTS
       MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
       experimental, Integer32, Gauge32, Counter32, Counter64,
       Unsigned32, TimeTicks        FROM SNMPv2-SMI

       TEXTUAL-CONVENTION           FROM SNMPv2-TC

       SnmpAdminString              FROM SNMP-FRAMEWORK-MIB;


   teMIB MODULE-IDENTITY
       LAST-UPDATED "200110141128Z"
       ORGANIZATION "IETF Traffic Engineering Working Group"
       CONTACT-INFO
           "        Kireeti Kompella
            Postal: Juniper Networks, Inc.
                    1194 Mathilda Ave
                    Sunnyvale, CA 94089
               Tel: +1 408 745 2000
            E-mail: kireeti@juniper.net"



draft-ietf-te-mib-02.txt                                        [Page 4]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       DESCRIPTION
           "The Traffic Engineering MIB module"
       ::= { experimental TBD }

   TeHopAddressType ::= TEXTUAL-CONVENTION
       STATUS     current
       DESCRIPTION
           "A value that represents an address type for a Tunnel
            hop, taken from the following list:

            unknown(0)   An unknown address type.
            ipv4(1)      An IPv4 network address.
            ipv6(2)      An IPv6 network address.
            asnumber2(3) A two octet Autonomous System number.
            asnumber4(4) A four octet Autonomous System number.
            unnum(5)     An unnumbered interface index.

            Each definition of a concrete TeHopAddressType value must
            be accompanied by a definition of a textual convention
            for use with that TeHopAddressType."
       SYNTAX     INTEGER {
           unknown(0),
           ipv4(1),
           ipv6(2),
           asnumber2(3),
           asnumber4(4),
           unnum(5)
       }

   TeHopAddress ::= TEXTUAL-CONVENTION
       STATUS     current
       DESCRIPTION
           "Denotes a generic Tunnel hop address.

            An TeHopAddress value is always interpreted within the
            context of an TeHopAddressType value.  The
            TeHopAddressType object which defines the context must
            be registered immediately before the object which uses
            the TeHopAddress textual convention.  In other words,
            the object identifiers for the TeHopAddressType object
            and the TeHopAddress object MUST have the same length
            and the last sub-identifier of the TeHopAddressType
            object MUST be 1 less than the last sub-identifier of
            the TeHopAddress object."
       SYNTAX     OCTET STRING (SIZE (0..255))

   TeHopAddressIPv4 ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "1d.1d.1d.1d"



draft-ietf-te-mib-02.txt                                        [Page 5]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       STATUS      current
       DESCRIPTION
           "Represents an IPv4 network address."
       SYNTAX      OCTET STRING (SIZE (4))

   TeHopAddressIPv6 ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "2x:2x:2x:2x:2x:2x:2x:2x%4d"
       STATUS      current
       DESCRIPTION
           "Represents an IPv6 network address."
       SYNTAX      OCTET STRING (SIZE (16))

   TeHopAddressAS2 ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "d"
       STATUS      current
       DESCRIPTION
           "Represents a two octet AS number."
       SYNTAX      INTEGER (0..65535)

   TeHopAddressAS4 ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "d"
       STATUS      current
       DESCRIPTION
           "Represents a four octet AS number."
       SYNTAX      Unsigned32

   TeHopAddressUnnum ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "d"
       STATUS      current
       DESCRIPTION
           "Represents a 32bit unnumbered interface index."
       SYNTAX      Unsigned32

   TeHopType ::= OCTET STRING (SIZE (0..1023))

   teInfo OBJECT IDENTIFIER ::= { teMIB 1 }

   teDistProtocol OBJECT-TYPE
       SYNTAX     BITS {
           other(0),
           isis(1),
           ospf(2)
       }
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "IGP used to distribute Traffic Engineering
            information and topology to each device for the



draft-ietf-te-mib-02.txt                                        [Page 6]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


            purpose of automatic path computation."
       ::= { teInfo 1 }

   teSignalingProto OBJECT-TYPE
       SYNTAX     BITS {
           other(0),
           rsvp(1),
           crldp(2)
       }
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "Traffic Engineering signaling protocols supported by
            this device. More than one protocol may be supported."

       ::= { teInfo 2 }

   teAdminGroupTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF TeAdminGroupEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
           "Table of configured administrative groups.
            Administrative groups are used to label links in
            the Traffic Engineering topology in order to place
            constraints (include and exclude) on Tunnel paths."
       ::= { teInfo 3 }

   teAdminGroupEntry OBJECT-TYPE
       SYNTAX     TeAdminGroupEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
           "A mapping between a configured group number and its
            human-readable name.  The group number should be
            between 0 and 31, inclusive."
       INDEX { teAdminGroupNumber }
       ::= { teAdminGroupTable 1 }

   TeAdminGroupEntry ::=
       SEQUENCE {
           teAdminGroupNumber    INTEGER (0..31),
           teAdminGroupName      SnmpAdminString
       }

   teAdminGroupNumber OBJECT-TYPE
       SYNTAX     INTEGER (0..31)
       MAX-ACCESS read-only



draft-ietf-te-mib-02.txt                                        [Page 7]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       STATUS     current
       DESCRIPTION "Index of the administrative group."
       ::= { teAdminGroupEntry 1 }

   teAdminGroupName OBJECT-TYPE
       SYNTAX     SnmpAdminString (SIZE (1..32))
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION "Name of the administrative group."
       ::= { teAdminGroupEntry 2 }

   teConfiguredTunnels OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION "Number of configured Tunnels."
       ::= { teInfo 4 }

   teActiveTunnels OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION "Number of active Tunnels."
       ::= { teInfo 5 }

   tePrimaryTunnels OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION "Number of active Tunnels running on
                    their primary paths."
       ::= { teInfo 6 }

   teTunnelTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF TeTunnelEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION "Table of Configured Traffic Tunnels."
       ::= { teMIB 2 }

   teTunnelEntry OBJECT-TYPE
       SYNTAX     TeTunnelEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
           "Entry containing information about a particular
            Traffic Tunnel."
       INDEX { IMPLIED teTunnelName }



draft-ietf-te-mib-02.txt                                        [Page 8]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       ::= { teTunnelTable 1 }

   TeTunnelEntry ::=
       SEQUENCE {
           teTunnelName             SnmpAdminString,
           teTunnelState            INTEGER,
           teTunnelOctets           Counter64,
           teTunnelPackets          Counter64,
           teTunnelAge              TimeTicks,
           teTunnelTimeUp           TimeTicks,
           teTunnelPrimaryTimeUp    TimeTicks,
           teTunnelTransitions      Counter32,
           teTunnelLastTransition   TimeTicks,
           teTunnelPathChanges      Counter32,
           teTunnelLastPathChange   TimeTicks,
           teTunnelConfiguredPaths  Gauge32,
           teTunnelStandbyPaths     Gauge32,
           teTunnelOperationalPaths Gauge32,
           teTunnelSourceType       TeHopAddressType,
           teTunnelSource           TeHopAddress,
           teTunnelDestinationType  TeHopAddressType,
           teTunnelDestination      TeHopAddress,
           tePathName               SnmpAdminString,
           tePathType               INTEGER,
           tePathExplicitRoute      TeHopType,
           tePathRecordRoute        TeHopType,
           tePathBandwidth          Integer32,
           tePathIncludeAny         Integer32,
           tePathIncludeAll         Integer32,
           tePathExclude            Integer32,
           tePathSetupPriority      INTEGER (0..7),
           tePathHoldPriority       INTEGER (0..7),
           tePathProperties         BITS
       }

   teTunnelName OBJECT-TYPE
       SYNTAX     SnmpAdminString (SIZE (1..32))
       MAX-ACCESS accessible-for-notify
       STATUS     current
       DESCRIPTION "Name of the Traffic Tunnel."
       ::= { teTunnelEntry 1 }

   teTunnelState OBJECT-TYPE
       SYNTAX     INTEGER {
           unknown(1),
           up(2),
           down(3),
           testing(4)



draft-ietf-te-mib-02.txt                                        [Page 9]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       }
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION "The operational state of the Tunnel."
       ::= { teTunnelEntry 2 }

   teTunnelOctets OBJECT-TYPE
       SYNTAX     Counter64
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of octets that have been forwarded over
            the Tunnel."
       ::= { teTunnelEntry 3 }

   teTunnelPackets OBJECT-TYPE
       SYNTAX     Counter64
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of packets that have been forwarded over
            the Tunnel."
       ::= { teTunnelEntry 4 }

   teTunnelAge OBJECT-TYPE
       SYNTAX     TimeTicks
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The age (i.e., time from creation till now) of
            this Tunnel in 10-millisecond periods."
       ::= { teTunnelEntry 5 }

   teTunnelTimeUp OBJECT-TYPE
       SYNTAX     TimeTicks
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The total time in 10-millisecond units that this
            Tunnel has been operational.  For example, the
            percentage up time can be determined by computing
            (teTunnelTimeUp/teTunnelAge * 100 %)."
       ::= { teTunnelEntry 6 }

   teTunnelPrimaryTimeUp OBJECT-TYPE
       SYNTAX     TimeTicks
       MAX-ACCESS read-only
       STATUS     current



draft-ietf-te-mib-02.txt                                       [Page 10]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       DESCRIPTION
           "The total time in 10-millisecond units that this
            Tunnel's primary path has been operational.  For
            example, the percentage contribution of the primary
            path to the operational time is given by
            (teTunnelPrimaryTimeUp/teTunnelTimeUp * 100) %."
       ::= { teTunnelEntry 7 }

   teTunnelTransitions OBJECT-TYPE
       SYNTAX     Counter32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of state transitions (up -> down and
            down -> up) this Tunnel has undergone."
       ::= { teTunnelEntry 8 }

   teTunnelLastTransition OBJECT-TYPE
       SYNTAX     TimeTicks
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The time in 10-millisecond units since the last
            transition occurred on this Tunnel."
       ::= { teTunnelEntry 9 }

   teTunnelPathChanges OBJECT-TYPE
       SYNTAX     Counter32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of path changes this Tunnel has had."
       ::= { teTunnelEntry 10 }

   teTunnelLastPathChange OBJECT-TYPE
       SYNTAX     TimeTicks
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The time in 10-millisecond units since the last
            change occurred on this Tunnel."
       ::= { teTunnelEntry 11 }

   teTunnelConfiguredPaths OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION



draft-ietf-te-mib-02.txt                                       [Page 11]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


           "The number of paths configured for this Tunnel."
       ::= { teTunnelEntry 12 }

   teTunnelStandbyPaths OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of standby paths configured for
            this Tunnel."
       ::= { teTunnelEntry 13 }

   teTunnelOperationalPaths OBJECT-TYPE
       SYNTAX     Gauge32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The number of operational paths for this Tunnel.
            This includes the path currently active, as
            well as operational standby paths."
       ::= { teTunnelEntry 14 }

   teTunnelSourceType OBJECT-TYPE
       SYNTAX     TeHopAddressType
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "Source address type of this Tunnel."
       ::= { teTunnelEntry 15 }

   teTunnelSource OBJECT-TYPE
       SYNTAX     TeHopAddress
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "Source address of this Tunnel."
       ::= { teTunnelEntry 16 }

   teTunnelDestinationType OBJECT-TYPE
       SYNTAX     TeHopAddressType
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "Destination address type of this Tunnel."
       ::= { teTunnelEntry 17 }

   teTunnelDestination OBJECT-TYPE
       SYNTAX     TeHopAddress



draft-ietf-te-mib-02.txt                                       [Page 12]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "Destination address of this Tunnel."
       ::= { teTunnelEntry 18 }

   tePathName OBJECT-TYPE
       SYNTAX     SnmpAdminString (SIZE(0..16))
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The name of the active path for this Tunnel, if any.
            If there is none, the name should be empty (i.e., of
            length zero); in that case, the rest of the fields
            in teTunnelEntry are meaningless and are not to be
            instantiated."
       ::= { teTunnelEntry 19 }

   tePathType OBJECT-TYPE
       SYNTAX     INTEGER {
           other(1),
           primary(2),
           standby(3),
           secondary(4)
       }
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The type of path that is active, i.e., a
            primary path, a standby path, or a generic
            secondary path.  This field is meaningless
            if tePathName is empty."
       ::= { teTunnelEntry 20 }

   tePathExplicitRoute OBJECT-TYPE
       SYNTAX     TeHopType
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The explicit route used to set up this Tunnel.
            This may either be the route configured by
            the user, or a route automatically computed
            to satisfy constraints set by the user.
            This field is a displayable string in the
            format of XXX.XXX.XXX.XXX <space> S/L <newline>
            repeated for each explicit address.  The S/L character
            stands for Strict/Loose route.
            This field is meaningless if tePathName is empty."



draft-ietf-te-mib-02.txt                                       [Page 13]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       ::= { teTunnelEntry 21 }

   tePathRecordRoute OBJECT-TYPE
       SYNTAX     TeHopType
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The route actually used for this path, as
            recorded by the signaling protocol.
            This field is a displayable string in the
            format of XXX.XXX.XXX.XXX <space>
            repeated for each address.
            This field is meaningless if tePathName is empty."
       ::= { teTunnelEntry 22 }

   tePathBandwidth OBJECT-TYPE
       SYNTAX     Integer32
       UNITS      "bits per second"
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The configured bandwidth for this Tunnel, in units
            of thousands of bits per second (Kbps).  This
            field is meaningless if tePathName is empty."
       ::= { teTunnelEntry 23 }

   tePathIncludeAny OBJECT-TYPE
       SYNTAX     Integer32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "This is a configured set of administrative groups
            specified as a bit vector (i.e., bit n is 1 if group
            n is in the set, where n = 0 is the LSB).  For each
            link that this path goes through, the link must have
            at least one of the groups specified in IncludeAny
            to be acceptable.  If IncludeAny is zero, all links
            are acceptable.  This field is meaningless if
            tePathName is empty."
       ::= { teTunnelEntry 25 }

   tePathIncludeAll OBJECT-TYPE
       SYNTAX     Integer32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "This is a configured set of administrative groups
            specified as a bit vector (i.e., bit n is 1 if group



draft-ietf-te-mib-02.txt                                       [Page 14]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


            n is in the set, where n = 0 is the LSB).  For each
            link that this path goes through, the link must have
            all of the groups specified in IncludeAny to be
            acceptable.  If IncludeAny is zero, all links are
            acceptable.  This field is meaningless if tePathName
            is empty."
       ::= { teTunnelEntry 26 }

   tePathExclude OBJECT-TYPE
       SYNTAX     Integer32
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "This is a configured set of administrative groups
            specified as a bit vector (i.e., bit n is 1 if group
            n is in the set, where n = 0 is the LSB).  For each
            link that this path goes through, the link MUST have
            groups associated with it, and the intersection of the
            link's groups and the 'exclude' set MUST be null.
            This field is meaningless if tePathName is empty."
       ::= { teTunnelEntry 27 }

   tePathSetupPriority OBJECT-TYPE
       SYNTAX     INTEGER (0..7)
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The setup priority configured for this path, with 0
            as the highest priority and 7 the lowest.  This
            field is meaningless if tePathName is empty."
       ::= { teTunnelEntry 28 }

   tePathHoldPriority OBJECT-TYPE
       SYNTAX     INTEGER (0..7)
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The hold priority configured for this path, with 0
            as the highest priority and 7 the lowest.  This
            field is meaningless if tePathName is empty."
       ::= { teTunnelEntry 29 }

   tePathProperties OBJECT-TYPE
       SYNTAX     BITS {
           recordroute(0),
           adaptive(1),
           cspf(2),
           mergeable(3),



draft-ietf-te-mib-02.txt                                       [Page 15]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


           fastreroute(4)
       }
       MAX-ACCESS read-only
       STATUS     current
       DESCRIPTION
           "The set of configured properties for this path,
            expressed as a bit map.  For example, if the path
            is an adaptive path, bit 1 is set.  This field is
            meaningless if tePathName is empty."
       ::= { teTunnelEntry 30 }

    --
    -- definition of TE notifications
    --

   teNotificationsV2 OBJECT IDENTIFIER ::= { teMIB 3 }

   teNotifications OBJECT IDENTIFIER ::= { teNotificationsV2 0 }

   teTunnelUp NOTIFICATION-TYPE
       OBJECTS         { teTunnelName,
                         tePathName }  -- TunnelPath
       STATUS          current
       DESCRIPTION
           "An teTunnelUp notification is generated when the Tunnel
            indexed by teTunnelName transitions to the 'up' state."
       ::= { teNotifications 1 }

   teTunnelDown NOTIFICATION-TYPE
       OBJECTS         { teTunnelName,
                         tePathName }  -- TunnelPath
       STATUS          current
       DESCRIPTION
           "An teTunnelDown notification is generated when the Tunnel
            indexed by teTunnelName transitions to the 'down' state."
       ::= { teNotifications 2 }

   teTunnelChange NOTIFICATION-TYPE
       OBJECTS         { teTunnelName,
                         tePathName }  -- toTunnelPath
       STATUS          current
       DESCRIPTION
           "An teTunnelChange notification is generated when the
            active path on the Tunnel indexed by teTunnelName changes.
            The tePathName is the new active path."
       ::= { teNotifications 3 }

   teTunnelRerouted NOTIFICATION-TYPE



draft-ietf-te-mib-02.txt                                       [Page 16]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


       OBJECTS         { teTunnelName,
                         tePathName }  -- toTunnelPath
       STATUS          current
       DESCRIPTION
           "An teTunnelRerouted notification is generated when the
            active path for the Tunnel indexed by teTunnelName stays
            the same, but its route changes."
       ::= { teNotifications 4 }

   -- End of TE-MIB

   END


7. References

   [1]  Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J.
        McManus, "Requirements for Traffic Engineering Over MPLS", RFC
        2702, September 1999.

   [2]  Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and
        G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", work
        in progress.

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

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

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

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

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

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

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



draft-ietf-te-mib-02.txt                                       [Page 17]


Internet Draft          draft-ietf-te-mib-02.txt            October 2001


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

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

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

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

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

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

   [16] Levi, D., Meyer, P. and B. Stewart, "SMPv3 Applications", RFC
        2573, January 1998.

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

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


















draft-ietf-te-mib-02.txt                                       [Page 18]