From 4bfd864f10b68b71482b35c818559068ef8d5797 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 27 Nov 2024 20:54:24 +0100 Subject: doc: Add RFC documents --- doc/rfc/rfc3970.txt | 2467 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2467 insertions(+) create mode 100644 doc/rfc/rfc3970.txt (limited to 'doc/rfc/rfc3970.txt') diff --git a/doc/rfc/rfc3970.txt b/doc/rfc/rfc3970.txt new file mode 100644 index 0000000..c395ff8 --- /dev/null +++ b/doc/rfc/rfc3970.txt @@ -0,0 +1,2467 @@ + + + + + + +Network Working Group K. Kompella +Request for Comments: 3970 Juniper Networks +Category: Standards Track January 2005 + + + A Traffic Engineering (TE) MIB + +Status of This Memo + + This document specifies an Internet standards track protocol for the + Internet community, and requests discussion and suggestions for + improvements. Please refer to the current edition of the "Internet + Official Protocol Standards" (STD 1) for the standardization state + and status of this protocol. Distribution of this memo is unlimited. + +Copyright Notice + + Copyright (C) The Internet Society (2005). + +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 Traffic Engineered + (TE) Tunnels; for example, Multi-Protocol Label Switched Paths. + +Table of Contents + + 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 + 1.1. Specification of Requirements. . . . . . . . . . . . . . 2 + 2. The Internet-Standard Management Framework . . . . . . . . . . 2 + 3. Overview of the MIB Module . . . . . . . . . . . . . . . . . . 2 + 3.1. Traffic Engineering Information. . . . . . . . . . . . . 3 + 3.2. Traffic Tunnel Information . . . . . . . . . . . . . . . 3 + 3.3. Path Information . . . . . . . . . . . . . . . . . . . . 3 + 3.4. Hop Information. . . . . . . . . . . . . . . . . . . . . 4 + 3.5. Relationship with Other MIB Modules. . . . . . . . . . . 4 + 4. Creating, Modifying, and Deleting a TE Tunnel. . . . . . . . . 4 + 5. MIB Specification. . . . . . . . . . . . . . . . . . . . . . . 5 + 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 40 + 6.1. Normative References . . . . . . . . . . . . . . . . . . 40 + 6.2. Informative References . . . . . . . . . . . . . . . . . 40 + 7. Security Considerations. . . . . . . . . . . . . . . . . . . . 41 + Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . . . 42 + Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 43 + Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 44 + + + + + +Kompella Standards Track [Page 1] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + +1. Introduction + + 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 Traffic Engineered + (TE) Tunnels; for example, Multi-Protocol Label Switched Paths ([7], + [8]). The MIB module defined by this memo allows one to configure TE + Tunnels, to assign one or more paths to a Tunnel, and to monitor + operational aspects of the Tunnel, such as the number of octets and + packets that have passed through the Tunnel. + + As it stands, this MIB module can only be used to configure or + monitor a TE Tunnel at its ingress. The ingress is then expected to + use some protocol (such as RSVP-TE) to signal the other routers in + the path the information they need to set up the tunnel. The + extension of this module for use at other points of a Tunnel is for + further study. + +1.1. Specification of Requirements + + 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 [1]. + +2. 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 [8]. + + 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 [2], STD 58, RFC 2579 [3] and STD 58, RFC 2580 [4]. + +3. Overview of the MIB Module + + The Traffic Engineering MIB module consists of four parts: + + 1) Traffic Engineering information, + 2) a table of Traffic Engineering Tunnels, + 3) a table of Paths that tunnels take, and + 4) a table of Hops that make up a tunnel path. + + The MIB module also has statements for minimal and full compliance. + + + +Kompella Standards Track [Page 2] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + The following subsections give an overview of each part. All objects + are mandatory. For minimal compliance, all objects MAY be + implemented read-only; for full compliance, all objects must be + implemented to their stated MAX-ACCESS capabilities. Notifications + are optional. + +3.1. Traffic Engineering Information + + This part contains information about the Link State Protocols used to + carry TE information, the signaling 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 (called + Resource Classes in [7]) numbers to names. + +3.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, and the + active path(s) that the Tunnel takes. + + 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. + + Operational path information includes the number of operational + paths, the number of path changes, and when the last path change was. + +3.3. Path Information + + A Tunnel is a logical entity. An instantiation of a Tunnel is one or + more Paths; each Path has a route (also called Explicit Route) or + sequence of hops. A Path is indexed by a dual index: The primary + index is that of the Tunnel to which the Path belongs; the secondary + index is that of the Path itself. + + The configured information for a Path consists of the constraints for + the Path and a configured route. + + The operational information consists of the Path status, the computed + route (i.e., the route that was computed to satisfy the constraints), + and the actual path as recorded by the signaling protocol. + + + + + +Kompella Standards Track [Page 3] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + +3.4. Hop Information + + A path consists of a sequence of hops. A hop can be loose (meaning + that the path eventually traverses the specified node) or strict + (meaning that the specified node and possibly the link must be the + next node in the path). A hop can be specified as an IPv4 address, + an IPv6 address, an Autonomous System number or an unnumbered + interface index [5]. + + The Hop Table contains all hops for all paths on a given router. It + is organized as follows. There is a primary index that identifies a + list of hops and a secondary index that identifies individual hops. + Thus, to get the sequence of recorded hops for a path, one looks up + the path's tePathRecordedRoute, which is a primary index into the Hop + Table. Then to get the list of actual hops in order for the recorded + path, one uses a secondary index of 1, 2, .... + +3.5. Relationship with Other MIB Modules + + A TE Tunnel can extend objects from two other MIB modules; one is the + Interfaces MIB [10], and the other is the IP Tunnel MIB [11]. The + mechanism for doing so is to assign the TE Tunnel index + (teTunnelIndex) with a valid ifIndex value in ifTable. + + If a TE Tunnel is deemed an interface, a new interface object is + created and assigned an ifIndex value in ifTable. Then a TE Tunnel + object is created, setting teTunnelIndex to the same value as the + interface index. + + If (and only if) a TE Tunnel is considered an interface, it may also + be considered an IP tunnel (if the encapsulation of the TE Tunnel is + IP). In that case, the interface associated with the TE Tunnel + should have its ifType set to tunnel(131). + + If a TE Tunnel is not considered an interface, then the TE Tunnel + index (teTunnelIndex) SHOULD be set to a value at least 2^24, so that + it is distinct from normal interfaces. + +4. Creating, Modifying, and Deleting a TE Tunnel + + To create a TE Tunnel, one first obtains a free Tunnel index by using + the object teNextTunnelIndex. One then creates the Tunnel, including + all parameters, either as createAndGo or createAndWait. Then, TE + Paths for this Tunnel can be created by using the + teTunnelNextPathIndex object, again as createAndGo or createAndWait. + A particular Path is computed and signaled when both the Path and the + enclosing Tunnel have RowStatus 'active'. + + + + +Kompella Standards Track [Page 4] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + To build a Path's configured route, one first gets a free PathHop + index by using teNextPathHopIndex, and then builds the route hop-by- + hop using the secondary index, setting the AddrType, Address, and + HopType for each Hop. Finally, one sets the tePathConfiguredRoute in + the Path to the PathHop index obtained. + + Modifying certain properties of a TE Tunnel or a TE Path may require + setting the RowStatus of the Tunnel (or Path) to 'notInService' + before making the changes and then setting the RowStatus of the + Tunnel (or Path) back to 'active' to re-signal all Paths of the + Tunnel (or the modified Path). + + A TE Tunnel and all its Paths can be deleted by setting the Tunnel's + RowStatus to 'destroy'. A specific Path within a Tunnel can be + destroyed by setting that Path's RowStatus to 'destroy'. + +5. MIB Specification + + This MIB module IMPORTs objects from RFCs 2578 [2], 2579 [3], 2580 + [3], 3411 [6], and 3811 [5] and it also has REFERENCE clauses to RFCs + 3209 [8] and 3212 [12]. + + TE-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + NOTIFICATION-TYPE, mib-2, + Integer32, Gauge32, Counter32, + Counter64, Unsigned32, TimeTicks FROM SNMPv2-SMI + + RowStatus, StorageType, TimeStamp, + TruthValue FROM SNMPv2-TC + + SnmpAdminString FROM SNMP-FRAMEWORK-MIB + + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP FROM SNMPv2-CONF + + TeHopAddress, TeHopAddressType, + MplsBitRate FROM MPLS-TC-STD-MIB; + + teMIB MODULE-IDENTITY + LAST-UPDATED "200501040000Z" -- 01 January 2005 + ORGANIZATION "IETF Traffic Engineering Working Group" + CONTACT-INFO " + Editor: Kireeti Kompella + Postal: Juniper Networks, Inc. + 1194 Mathilda Ave + + + +Kompella Standards Track [Page 5] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + Sunnyvale, CA 94089 + Tel: +1 408 745 2000 + E-mail: kireeti@juniper.net + + The IETF Traffic Engineering Working Group is + chaired by Jim Boyle and Ed Kern. + + WG Mailing List information: + + General Discussion: te-wg@ops.ietf.org + To Subscribe: te-wg-request@ops.ietf.org + In Body: subscribe + Archive: ftp://ops.ietf.org/pub/lists + + Comments on the MIB module should be sent to the + mailing list. The archives for this mailing list + should be consulted for previous discussion on + this MIB. + " + DESCRIPTION "The Traffic Engineering MIB module. + + Copyright (C) The Internet Society (2005). This + version of this MIB module is part of RFC 3970; + see the RFC itself for full legal notices. + " + + -- revision history + + REVISION "200501040000Z" -- 01 January 2005 + DESCRIPTION "Initial version, published as RFC 3970." + ::= { mib-2 122 } + + -- Top level objects + + teMIBNotifications OBJECT IDENTIFIER ::= { teMIB 0 } + teMIBObjects OBJECT IDENTIFIER ::= { teMIB 1 } + teMIBConformance OBJECT IDENTIFIER ::= { teMIB 2 } + + -- **************************************************************** + -- + -- TE MIB Objects + -- + + -- TE Info + + teInfo OBJECT IDENTIFIER ::= { teMIBObjects 1 } + + teDistProtocol OBJECT-TYPE + + + +Kompella Standards Track [Page 6] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + 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 + purpose of automatic path computation. More than + one IGP may be used to distribute TE information. + " + ::= { teInfo 1 } + + teSignalingProto OBJECT-TYPE + SYNTAX BITS { + other(0), + rsvpte(1), + crldp(2), + static(3) -- static configuration + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION "Traffic Engineering signaling protocols supported + by this device. More than one protocol may be + supported. + " + REFERENCE "For a description of RSVP-TE, see RFC 3209; + for CR-LDP, see RFC 3212. + " + ::= { teInfo 2 } + + teNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION "If this object is true, then it enables the + generation of notifications from this MIB module. + Otherwise notifications are not generated. + " + DEFVAL { false } + ::= { teInfo 3 } + + teNextTunnelIndex OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "An integer that may be used as a new Index in the + + + +Kompella Standards Track [Page 7] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + teTunnelTable. + + The special value of 0 indicates that no more new + entries can be created in that table. + + When this MIB module is used for configuration, this + object always contains a legal value (if non-zero) + for an index that is not currently used in that + table. The Command Generator (Network Management + Application) reads this variable and uses the + (non-zero) value read when creating a new row with + an SNMP SET. When the SET is performed, the Command + Responder (agent) must determine whether the value + is indeed still unused; Two Network Management + Applications may attempt to create a row + (configuration entry) simultaneously and use the + same value. If it is currently unused, the SET + succeeds, and the Command Responder (agent) changes + the value of this object according to an + implementation-specific algorithm. If the value is + in use, however, the SET fails. The Network + Management Application must then re-read this + variable to obtain a new usable value. + " + ::= { teInfo 4 } + + teNextPathHopIndex OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "An integer that may be used as a new Index in the + tePathHopTable. + + The special value of 0 indicates that no more new + entries can be created in that table. + + When this MIB module is used for configuration, this + object always contains a legal value (if non-zero) + for an index that is not currently used in that + table. The Command Generator (Network Management + Application) reads this variable and uses the + (non-zero) value read when creating a new row with + an SNMP SET. When the SET is performed, the Command + Responder (agent) must determine whether the value + is indeed still unused; Two Network Management + Applications may attempt to create a row + (configuration entry) simultaneously and use the + same value. If it is currently unused, the SET + + + +Kompella Standards Track [Page 8] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + succeeds, and the Command Responder (agent) changes + the value of this object according to an + implementation-specific algorithm. If the value is + in use, however, the SET fails. The Network + Management Application must then re-read this + variable to obtain a new usable value. + " + ::= { teInfo 5 } + + teConfiguredTunnels OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "Number of currently configured Tunnels." + ::= { teInfo 6 } + + teActiveTunnels OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "Number of currently active Tunnels." + ::= { teInfo 7 } + + tePrimaryTunnels OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "Number of currently active Tunnels running on + their primary paths. + " + ::= { teInfo 8 } + + teAdminGroupTable OBJECT-TYPE + SYNTAX SEQUENCE OF TeAdminGroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "A mapping of configured administrative groups. Each + entry represents an Administrative Group and + provides a name and index for the group. + Administrative groups are used to label links in the + Traffic Engineering topology in order to place + constraints (include and exclude) on Tunnel paths. + + A groupName can only be linked to one group number. + The groupNumber is the number assigned to the + administrative group used in constraints, + such as tePathIncludeAny or tePathIncludeAll. + " + + + +Kompella Standards Track [Page 9] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + ::= { teInfo 9 } + + 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 1 and 32, inclusive. Group number n + represents bit number (n-1) in the bit vector for + Include/Exclude constraints. + + All entries in this table MUST be kept in stable + storage so that they will re-appear in case of a + restart/reboot. + " + INDEX { teAdminGroupNumber } + ::= { teAdminGroupTable 1 } + + TeAdminGroupEntry ::= + SEQUENCE { + teAdminGroupNumber Integer32, + teAdminGroupName SnmpAdminString, + teAdminGroupRowStatus RowStatus + } + + teAdminGroupNumber OBJECT-TYPE + SYNTAX Integer32 (1..32) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Index of the administrative group." + ::= { teAdminGroupEntry 1 } + + teAdminGroupName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (1..32)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION "Name of the administrative group." + ::= { teAdminGroupEntry 2 } + + teAdminGroupRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The status of this conceptual row. + + The value of this object has no effect on whether + other objects in this conceptual row can be + + + +Kompella Standards Track [Page 10] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + modified. + " + ::= { teAdminGroupEntry 3 } + + -- Tunnel Table + + teTunnelTable OBJECT-TYPE + SYNTAX SEQUENCE OF TeTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Table of Configured Traffic Tunnels." + ::= { teMIBObjects 2 } + + teTunnelEntry OBJECT-TYPE + SYNTAX TeTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Entry containing information about a particular + Traffic Tunnel. + " + INDEX { teTunnelIndex } + ::= { teTunnelTable 1 } + + TeTunnelEntry ::= + SEQUENCE { + teTunnelIndex Unsigned32, + teTunnelName SnmpAdminString, + teTunnelNextPathIndex Unsigned32, + -- Conceptual row information: + teTunnelRowStatus RowStatus, + teTunnelStorageType StorageType, + -- Address information: + teTunnelSourceAddressType TeHopAddressType, + teTunnelSourceAddress TeHopAddress, + teTunnelDestinationAddressType TeHopAddressType, + teTunnelDestinationAddress TeHopAddress, + -- State/performance information: + teTunnelState INTEGER, + teTunnelDiscontinuityTimer TimeStamp, + teTunnelOctets Counter64, + teTunnelPackets Counter64, + teTunnelLPOctets Counter32, + teTunnelLPPackets Counter32, + teTunnelAge TimeTicks, + teTunnelTimeUp TimeTicks, + teTunnelPrimaryTimeUp TimeTicks, + teTunnelTransitions Counter32, + teTunnelLastTransition TimeTicks, + + + +Kompella Standards Track [Page 11] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + teTunnelPathChanges Counter32, + teTunnelLastPathChange TimeTicks, + teTunnelConfiguredPaths Gauge32, + teTunnelStandbyPaths Gauge32, + teTunnelOperationalPaths Gauge32 + } + + teTunnelIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "A unique index that identifies a Tunnel. If the TE + Tunnel is considered an interface, then this index + must match the interface index of the corresponding + interface. Otherwise, this index must be at least + 2^24, so that it does not overlap with any existing + interface index. + " + ::= { teTunnelEntry 1 } + + teTunnelName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (1..32)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION "Name of the Traffic Tunnel. + + Note that the name of a Tunnel MUST be unique. + When a SET request contains a name that is already + in use for another entry, then the implementation + must return an inconsistentValue error. + + The value of this object cannot be changed if the + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { teTunnelEntry 2 } + + teTunnelNextPathIndex OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "An integer that may be used as a new Index for the + next Path in this Tunnel. + + The special value of 0 indicates that no more Paths + can be created for this Tunnel, or that no more new + entries can be created in tePathTable. + + + + +Kompella Standards Track [Page 12] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + When this MIB module is used for configuration, this + object always contains a legal value (if non-zero) + for an index that is not currently used in that + table. The Command Generator (Network Management + Application) reads this variable and uses the + (non-zero) value read when creating a new row with + an SNMP SET. When the SET is performed, the Command + Responder (agent) must determine whether the value + is indeed still unused; Two Network Management + Applications may attempt to create a row + (configuration entry) simultaneously and use the + same value. If it is currently unused, the SET + succeeds, and the Command Responder (agent) changes + the value of this object according to an + implementation-specific algorithm. If the value is + in use, however, the SET fails. The Network + Management Application must then re-read this + variable to obtain a new usable value. + " + ::= { teTunnelEntry 3 } + + teTunnelRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The status of this conceptual row. + + When the value of this object is 'active', then + the values for the corresponding objects + teTunnelName, teTunnelSourceAddressType, + teTunnelSourceAddress, + teTunnelDestinationAddressType, and + teTunnelDestinationAddress cannot be changed. + " + ::= { teTunnelEntry 4 } + + teTunnelStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The storage type for this conceptual row. + + Conceptual rows having the value 'permanent' need + not allow write-access to any columnar objects + in the row. + " + ::= { teTunnelEntry 5 } + + + + +Kompella Standards Track [Page 13] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + teTunnelSourceAddressType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The type of Traffic Engineered Tunnel hop address + for the source of this Tunnel. Typically, this + address type is IPv4 or IPv6, with a prefix length + of 32 or 128, respectively. If the TE Tunnel path + is being computed by a path computation server, + however, it is possible to use more flexible source + address types, such as AS numbers or prefix lengths + less than host address lengths. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { teTunnelEntry 6 } + + teTunnelSourceAddress OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Source Traffic Engineered Tunnel hop address of + this Tunnel. + + The type of this address is determined by the value + of the corresponding teTunnelSourceAddressType. + + Note that the source and destination addresses of a + Tunnel can be different address types. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { teTunnelEntry 7 } + + teTunnelDestinationAddressType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The type of Traffic Engineered Tunnel hop address + for the destination of this Tunnel. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + + + +Kompella Standards Track [Page 14] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + " + ::= { teTunnelEntry 8 } + + teTunnelDestinationAddress OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Destination Traffic Engineered Tunnel hop + address of this Tunnel. + + The type of this address is determined by the value + of the corresponding teTunnelDestinationAddressType. + + Note that source and destination addresses of a + Tunnel can be different address types. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { teTunnelEntry 9 } + + teTunnelState OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + up(2), + down(3), + testing(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The operational state of the Tunnel." + ::= { teTunnelEntry 10 } + + teTunnelDiscontinuityTimer OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The value of sysUpTime on the most recent occasion + at which any one or more of this tunnel's counters + suffered a discontinuity. The relevant counters + are teTunnelOctets, teTunnelPackets, + teTunnelLPOctets, and teTunnelLPPackets. If no such + discontinuities have occurred since the last + re-initialization of the local management subsystem + then this object contains a zero value. + " + ::= { teTunnelEntry 11 } + + + +Kompella Standards Track [Page 15] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + teTunnelOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of octets that have been forwarded over + the Tunnel. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system, + and at other times, as indicated by the value of + teTunnelDiscontinuityTimer. + " + ::= { teTunnelEntry 12 } + + teTunnelPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of packets that have been forwarded over + the Tunnel. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system + and at other times, as indicated by the value of + teTunnelDiscontinuityTimer. + " + ::= { teTunnelEntry 13 } + + teTunnelLPOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of octets that have been forwarded over + the Tunnel. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system + and at other times, as indicated by the value of + teTunnelDiscontinuityTimer. + " + ::= { teTunnelEntry 14 } + + teTunnelLPPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of packets that have been forwarded over + the Tunnel. + + + +Kompella Standards Track [Page 16] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + Discontinuities in the value of this counter can + occur at re-initialization of the management system + and at other times, as indicated by the value of + teTunnelDiscontinuityTimer. + " + ::= { teTunnelEntry 15 } + + teTunnelAge OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The age (i.e., time from creation of this conceptual + row till now) of this Tunnel in hundredths of a + second. Note that because TimeTicks wrap in about + 16 months, this value is best used in interval + measurements. + " + ::= { teTunnelEntry 16 } + + teTunnelTimeUp OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The total time in hundredths of a second that this + Tunnel has been operational. Note that because + TimeTicks wrap in about 16 months, this value is + best used in interval measurements. + + An example of usage of this object would be to + compute the percentage up time over a period of time + by obtaining values of teTunnelAge and + teTunnelTimeUp at two points in time and computing + the following ratio: + ((teTunnelTimeUp2 - teTunnelTimeUp1)/ + (teTunnelAge2 - teTunnelAge1)) * 100 %. In doing + so, the management station must account for + wrapping of the values of teTunnelAge and + teTunnelTimeUp between the two measurements. + " + ::= { teTunnelEntry 17 } + + teTunnelPrimaryTimeUp OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The total time in hundredths of a second that this + Tunnel's primary path has been operational. Note + that because TimeTicks wrap in about 16 months, this + + + +Kompella Standards Track [Page 17] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + value is best used in interval measurements. + + An example of usage of this field would be to + compute what percentage of time that a TE Tunnel was + on the primary path over a period of time by + computing + ((teTunnelPrimaryTimeUp2 - teTunnelPrimaryTimeUp1)/ + (teTunnelTimeUp2 - teTunnelTimeUp1))*100 %. In + doing so, the management station must account for + wrapping of the values of teTunnelPrimaryTimeUp and + teTunnelTimeUp between the two measurements. + " + ::= { teTunnelEntry 18 } + + teTunnelTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of operational state transitions + (up -> down and down -> up) this Tunnel has + undergone. + " + ::= { teTunnelEntry 19 } + + teTunnelLastTransition OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The time in hundredths of a second since the last + operational state transition occurred on this + Tunnel. + + Note that if the last transition was over 16 + months ago, this value will be inaccurate. + " + ::= { teTunnelEntry 20 } + + teTunnelPathChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of path changes this Tunnel has had." + ::= { teTunnelEntry 21 } + + teTunnelLastPathChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + + + +Kompella Standards Track [Page 18] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + DESCRIPTION "The time in hundredths of a second since the last + path change occurred on this Tunnel. + + Note that if the last transition was over 16 + months ago, this value will be inaccurate. + + Path changes may be caused by network events or by + reconfiguration that affects the path. + " + ::= { teTunnelEntry 22 } + + teTunnelConfiguredPaths OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of paths configured for this Tunnel." + ::= { teTunnelEntry 23 } + + teTunnelStandbyPaths OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The number of standby paths configured for this + Tunnel. + " + ::= { teTunnelEntry 24 } + + 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 25 } + + -- **************************************************************** + -- + -- Tunnel Path Table + -- + + tePathTable OBJECT-TYPE + SYNTAX SEQUENCE OF TePathEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Table of Configured Traffic Tunnels." + ::= { teMIBObjects 3 } + + + +Kompella Standards Track [Page 19] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + tePathEntry OBJECT-TYPE + SYNTAX TePathEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Entry containing information about a particular + Traffic Tunnel. Each Traffic Tunnel can have zero + or more Traffic Paths. + + As a Traffic Path can only exist over an existing + Traffic Tunnel, all tePathEntries with + a value of n for teTunnelIndex MUST be removed by + the implementation when the corresponding + teTunnelEntry with a value of n for teTunnelIndex + is removed. + " + INDEX { teTunnelIndex, tePathIndex } + ::= { tePathTable 1 } + + TePathEntry ::= + SEQUENCE { + tePathIndex Unsigned32, + tePathName SnmpAdminString, + -- Conceptual row information + tePathRowStatus RowStatus, + tePathStorageType StorageType, + -- Path properties + tePathType INTEGER, + tePathConfiguredRoute Unsigned32, + tePathBandwidth MplsBitRate, + tePathIncludeAny Unsigned32, + tePathIncludeAll Unsigned32, + tePathExclude Unsigned32, + tePathSetupPriority Integer32, + tePathHoldPriority Integer32, + tePathProperties BITS, + -- Path status + tePathOperStatus INTEGER, + tePathAdminStatus INTEGER, + tePathComputedRoute Unsigned32, + tePathRecordedRoute Unsigned32 + } + + tePathIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "An index that uniquely identifies a path within + a Tunnel. + + + +Kompella Standards Track [Page 20] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + The combination of thus + uniquely identifies a path among all paths on this + router. + " + ::= { tePathEntry 1 } + + tePathName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..32)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The name of this path. + + A pathName must be unique within the set of paths + over a single tunnel. If a SET request is received + with a duplicate name, then the implementation MUST + return an inconsistentValue error. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { tePathEntry 2 } + + tePathRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The status of this conceptual row. + + When the value of this object is 'active', then + the value of tePathName cannot be changed. All + other writable objects may be changed; however, + these changes may affect traffic going over the TE + tunnel or require the path to be computed and/or + re-signaled. + " + ::= { tePathEntry 3 } + + tePathStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The storage type for this conceptual row. + + Conceptual rows having the value 'permanent' need + not allow write-access to any columnar objects + in the row. + " + + + +Kompella Standards Track [Page 21] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + ::= { tePathEntry 4 } + + tePathType OBJECT-TYPE + SYNTAX INTEGER { + other(1), + primary(2), + standby(3), + secondary(4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The type for this PathEntry; i.e., whether this path + is a primary path, a standby path, or a secondary + path. + " + ::= { tePathEntry 5 } + + tePathConfiguredRoute OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The route that this TE path is configured to follow; + i.e., an ordered list of hops. The value of this + object gives the primary index into the Hop Table. + The secondary index is the hop count in the path, so + to get the route, one could get the first hop with + index in the Hop Table + and do a getnext to get subsequent hops. + " + ::= { tePathEntry 6 } + + tePathBandwidth OBJECT-TYPE + SYNTAX MplsBitRate + UNITS "Kilobits per second" + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The configured bandwidth for this Tunnel, + in units of thousands of bits per second (Kbps). + " + DEFVAL { 0 } + ::= { tePathEntry 7 } + + tePathIncludeAny OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION "This is a configured set of administrative groups + specified as a bit vector (i.e., bit n is 1 if group + + + +Kompella Standards Track [Page 22] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + 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. + " + DEFVAL { 0 } + ::= { tePathEntry 8 } + + tePathIncludeAll OBJECT-TYPE + + SYNTAX Unsigned32 + MAX-ACCESS read-create + 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 + all of the groups specified in IncludeAll to be + acceptable. If IncludeAll is zero, all links are + acceptable. + " + DEFVAL { 0 } + ::= { tePathEntry 9 } + + tePathExclude OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + 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. + " + DEFVAL { 0 } + ::= { tePathEntry 10 } + + tePathSetupPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The setup priority configured for this path, with 0 + as the highest priority and 7 as the lowest. + " + DEFVAL { 7 } + + + +Kompella Standards Track [Page 23] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + ::= { tePathEntry 11 } + + tePathHoldPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The hold priority configured for this path, with 0 + as the highest priority and 7 as the lowest. + " + DEFVAL { 0 } + ::= { tePathEntry 12 } + + tePathProperties OBJECT-TYPE + SYNTAX BITS { + recordRoute(0), + cspf(1), + makeBeforeBreak(2), + mergeable(3), + fastReroute(4), + protected(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The set of configured properties for this path, + expressed as a bit map. For example, if the path + supports 'make before break', then bit 2 is set. + " + ::= { tePathEntry 13 } + + tePathOperStatus OBJECT-TYPE + SYNTAX INTEGER { + unknown(0), + down(1), + testing(2), + dormant(3), + ready(4), + operational(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The operational status of the path: + unknown: + down: Signaling failed. + testing: Administratively set aside for testing. + dormant: Not signaled (for a backup tunnel). + ready: Signaled but not yet carrying traffic. + operational: Signaled and carrying traffic. + " + + + +Kompella Standards Track [Page 24] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + ::= { tePathEntry 14 } + + tePathAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + normal(1), + testing(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The operational status of the path: + normal: Used normally for forwarding. + testing: Administratively set aside for testing. + " + ::= { tePathEntry 15 } + + tePathComputedRoute OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The route computed for this path, perhaps using + some form of Constraint-based Routing. The + algorithm is implementation dependent. + + This object returns the computed route as an ordered + list of hops. The value of this object gives the + primary index into the Hop Table. The secondary + index is the hop count in the path, so to get the + route, one could get the first hop with index + in the Hop Table and do a + getnext to get subsequent hops. + + A value of zero (0) means there is no computedRoute. + " + ::= { tePathEntry 16 } + + tePathRecordedRoute OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The route actually used for this path, as recorded + by the signaling protocol. This is again an ordered + list of hops; each hop is expected to be strict. + + The value of this object gives the primary index + into the Hop Table. The secondary index is the hop + count in the path, so to get the route, one can get + the first hop with index + in the Hop Table and do a getnext to get subsequent + + + +Kompella Standards Track [Page 25] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + hops. + + A value of zero (0) means there is no recordedRoute. + " + ::= { tePathEntry 17 } + + -- **************************************************************** + -- + -- Tunnel Path Hop Table + -- + + tePathHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF TePathHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Table of Tunnel Path Hops." + ::= { teMIBObjects 4 } + + tePathHopEntry OBJECT-TYPE + SYNTAX TePathHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Entry containing information about a particular + hop. + " + INDEX { teHopListIndex, tePathHopIndex } + ::= { tePathHopTable 1 } + + TePathHopEntry ::= + SEQUENCE { + teHopListIndex Unsigned32, + tePathHopIndex Unsigned32, + -- Conceptual row information + tePathHopRowStatus RowStatus, + tePathHopStorageType StorageType, + tePathHopAddrType TeHopAddressType, + tePathHopAddress TeHopAddress, + tePathHopType INTEGER + } + + teHopListIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "An index that identifies a list of hops. This is + the primary index to access hops. + " + ::= { tePathHopEntry 1 } + + + +Kompella Standards Track [Page 26] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + tePathHopIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "An index that identifies a particular hop among the + list of hops for a path. An index of i identifies + the ith hop. This is the secondary index for a hop + entry. + " + ::= { tePathHopEntry 2 } + + tePathHopRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The status of this conceptual row. + + Any field in this table can be changed, even if the + value of this object is 'active'. However, such a + change may cause traffic to be rerouted or even + disrupted. + " + ::= { tePathHopEntry 3 } + + tePathHopStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The storage type for this conceptual row. + + Conceptual rows having the value 'permanent' need + not allow write-access to any columnar objects + in the row. + " + ::= { tePathHopEntry 4 } + + tePathHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The type of Traffic Engineered Tunnel hop Address + of this hop. + + The value of this object cannot be changed + if the value of the corresponding tePathRowStatus + object is 'active'. + " + ::= { tePathHopEntry 5 } + + + +Kompella Standards Track [Page 27] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + tePathHopAddress OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Traffic Engineered Tunnel hop Address of this + hop. + + The type of this address is determined by the value + of the corresponding tePathHopAddressType. + + The value of this object cannot be changed + if the value of the corresponding teTunnelRowStatus + object is 'active'. + " + ::= { tePathHopEntry 6 } + + tePathHopType OBJECT-TYPE + SYNTAX INTEGER { + unknown(0), + loose(1), + strict(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION "The type of hop: + unknown: + loose: This hop is a LOOSE hop. + strict: This hop is a STRICT hop. + " + ::= { tePathHopEntry 7 } + + -- **************************************************************** + -- + -- TE Notifications + -- + + teTunnelUp NOTIFICATION-TYPE + OBJECTS { teTunnelName, + tePathName } -- TunnelPath + STATUS current + DESCRIPTION "A teTunnelUp notification is generated when the + Tunnel indexed by teTunnelName transitions to the + 'up' state. + + A tunnel is up when at least one of its paths is up. + The tePathName is the name of the path whose + transition to up made the tunnel go up. + + + + +Kompella Standards Track [Page 28] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + This notification MUST be limited to at most one + every minute, in case the tunnel flaps up and down. + " + ::= { teMIBNotifications 1 } + + teTunnelDown NOTIFICATION-TYPE + OBJECTS { teTunnelName, + tePathName } -- TunnelPath + STATUS current + DESCRIPTION "A teTunnelDown notification is generated when the + Tunnel indexed by teTunnelName transitions to the + 'down' state. + + A tunnel is up when at least one of its paths is up. + The tePathName is the name of the path whose + transition to down made the tunnel go down. + + This notification MUST be limited to at most one + every minute, in case the tunnel flaps up and down. + " + ::= { teMIBNotifications 2 } + + teTunnelChanged NOTIFICATION-TYPE + OBJECTS { teTunnelName, + tePathName } -- toTunnelPath + STATUS current + DESCRIPTION "A teTunnelChanged notification is generated when an + active path on the Tunnel indexed by teTunnelName + changes or a new path becomes active. The value + of tePathName is the new active path. + + This notification MUST be limited to at most one + every minute, in case the tunnel changes quickly. + " + ::= { teMIBNotifications 3 } + + teTunnelRerouted NOTIFICATION-TYPE + OBJECTS { teTunnelName, + tePathName } -- toTunnelPath + STATUS current + DESCRIPTION "A teTunnelRerouted notification is generated when + an active path for the Tunnel indexed by + teTunnelName stays the same, but its route changes. + + This notification MUST be limited to at most one + every minute, in case the tunnel reroutes quickly. + " + ::= { teMIBNotifications 4 } + + + +Kompella Standards Track [Page 29] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + -- End of TE-MIB objects + + -- **************************************************************** + -- + -- TE Compliance Statements + -- + + teGroups + OBJECT IDENTIFIER ::= { teMIBConformance 1 } + + teModuleCompliance + OBJECT IDENTIFIER ::= { teMIBConformance 2 } + + -- **************************************************************** + -- + -- TE object groups + -- + + teTrafficEngineeringGroup OBJECT-GROUP + OBJECTS { + teTunnelName, + teTunnelNextPathIndex, + teTunnelRowStatus, + teTunnelStorageType, + teTunnelSourceAddressType, + teTunnelSourceAddress, + teTunnelDestinationAddressType, + teTunnelDestinationAddress, + teTunnelState, + teTunnelDiscontinuityTimer, + teTunnelOctets, + teTunnelPackets, + teTunnelLPOctets, + teTunnelLPPackets, + teTunnelAge, + teTunnelTimeUp, + teTunnelPrimaryTimeUp, + teTunnelTransitions, + teTunnelLastTransition, + teTunnelPathChanges, + teTunnelLastPathChange, + teTunnelConfiguredPaths, + teTunnelStandbyPaths, + teTunnelOperationalPaths, + tePathBandwidth, + tePathIncludeAny, + tePathIncludeAll, + tePathExclude, + + + +Kompella Standards Track [Page 30] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + tePathSetupPriority, + tePathHoldPriority, + tePathProperties, + tePathOperStatus, + tePathAdminStatus, + tePathComputedRoute, + tePathRecordedRoute, + teDistProtocol, + teSignalingProto, + teNotificationEnable, + teNextTunnelIndex, + teNextPathHopIndex, + teAdminGroupName, + teAdminGroupRowStatus, + teConfiguredTunnels, + teActiveTunnels, + tePrimaryTunnels, + tePathName, + tePathType, + tePathRowStatus, + tePathStorageType, + tePathConfiguredRoute, + tePathHopRowStatus, + tePathHopStorageType, + tePathHopAddrType, + tePathHopAddress, + tePathHopType + } + STATUS current + DESCRIPTION "Objects for Traffic Engineering in this MIB module." + ::= { teGroups 1 } + + teNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + teTunnelUp, + teTunnelDown, + teTunnelChanged, + teTunnelRerouted + } + STATUS current + DESCRIPTION "Notifications specified in this MIB module." + ::= { teGroups 2 } + + -- **************************************************************** + -- + -- TE compliance statements + -- + -- There are four compliance statements: read-only and full + + + +Kompella Standards Track [Page 31] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + -- compliance for regular TE devices, and read-only and full + -- compliance for path computation servers. + -- + + teModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "When this MIB module is implemented without support + for read-create (i.e., in read-only mode), then such + an implementation can claim read-only compliance. + Such a device can be monitored but cannot be + configured with this MIB module. + " + + MODULE -- enclosing module, i.e., TE-MIB + + MANDATORY-GROUPS { + teTrafficEngineeringGroup + } + + GROUP teNotificationGroup + DESCRIPTION "Implementation of this group is optional." + + OBJECT teNotificationEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teAdminGroupName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teAdminGroupRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + +Kompella Standards Track [Page 32] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + OBJECT teTunnelSourceAddressType + SYNTAX TeHopAddressType { ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An + implementation is only required to support + IPv4 and IPv6 host addresses." + + OBJECT teTunnelSourceAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelDestinationAddressType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelDestinationAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathConfiguredRoute + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathBandwidth + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathIncludeAny + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + +Kompella Standards Track [Page 33] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + OBJECT tePathIncludeAll + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathExclude + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathSetupPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHoldPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathProperties + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathAdminStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopAddrType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { teModuleCompliance 1 } + + teModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "When this MIB module is implemented with support for + read-create, then the implementation can claim + full compliance. Such devices can be both + + + +Kompella Standards Track [Page 34] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + monitored and configured with this MIB module. + " + + MODULE -- enclosing module, i.e., TE-MIB + + MANDATORY-GROUPS { + teTrafficEngineeringGroup + } + + GROUP teNotificationGroup + DESCRIPTION "Implementation of this group is optional." + + + OBJECT teAdminGroupRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION "Support for notInService, createAndWait and + notReady is not required. + " + + OBJECT teTunnelRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + + OBJECT teTunnelSourceAddressType + SYNTAX TeHopAddressType { ipv4(1), ipv6(2) } + DESCRIPTION "Write access is required. An implementation is + only required to support IPv4 and IPv6 host + addresses. + " + + OBJECT tePathRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + + OBJECT tePathHopRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + + + +Kompella Standards Track [Page 35] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + ::= { teModuleCompliance 2 } + + teModuleServerReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "When this MIB module is implemented by a path + computation server without support for read-create + (i.e., in read-only mode), then the implementation + can claim read-only compliance. Such + a device can be monitored but cannot be + configured with this MIB module. + " + + MODULE -- enclosing module, i.e., TE-MIB + + MANDATORY-GROUPS { + teTrafficEngineeringGroup + } + + GROUP teNotificationGroup + DESCRIPTION "Implementation of this group is optional." + + OBJECT teNotificationEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teAdminGroupName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teAdminGroupRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + +Kompella Standards Track [Page 36] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + OBJECT teTunnelStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelSourceAddressType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. A path + computation server SHOULD implement all types + of tunnel source address types. + " + + OBJECT teTunnelSourceAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelDestinationAddressType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT teTunnelDestinationAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathConfiguredRoute + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathBandwidth + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + +Kompella Standards Track [Page 37] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + OBJECT tePathIncludeAny + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathIncludeAll + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathExclude + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathSetupPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHoldPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathProperties + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathAdminStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopAddrType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT tePathHopAddress + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { teModuleCompliance 3 } + + teModuleServerFullCompliance MODULE-COMPLIANCE + + + +Kompella Standards Track [Page 38] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + STATUS current + DESCRIPTION "When this MIB module is implemented by a path + computation server with support for read-create, + then the implementation can claim full + compliance. + " + + MODULE -- enclosing module, i.e., TE-MIB + MANDATORY-GROUPS { + teTrafficEngineeringGroup + } + + GROUP teNotificationGroup + DESCRIPTION "Implementation of this group is optional." + + + OBJECT teAdminGroupRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION "Support for notInService, createAndWait, and + notReady is not required. + " + + OBJECT teTunnelRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + + OBJECT teTunnelSourceAddressType + DESCRIPTION "Write access is required. An implementation + of a path computation server SHOULD support all + types of tunnel source address types. + " + + OBJECT tePathRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + + OBJECT tePathHopRowStatus + + + +Kompella Standards Track [Page 39] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required. + " + ::= { teModuleCompliance 4 } + + END + +6. References + +6.1. Normative References + + [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement + Levels", BCP 14, RFC 2119, March 1997. + + [2] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Structure of + Management Information Version 2 (SMIv2)", STD 58, RFC 2578, + April 1999. + + [3] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Textual + Conventions for SMIv2", STD 58, RFC 2579, April 1999. + + [4] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance + Statements for SMIv2", STD 58, RFC 2580, April 1999. + + [5] Nadeau, T. and J. Cucchiara, "Definitions of Textual Conventions + (TCs) for Multiprotocol Label Switching (MPLS) Management", RFC + 3811, June 2004. + + [6] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for + Describing Simple Network Management Protocol (SNMP) Management + Frameworks", STD 62, RFC 3411, December 2002. + + [7] Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J. + McManus, "Requirements for Traffic Engineering Over MPLS", RFC + 2702, September 1999. + +6.2. Informative References + + [8] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. + Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC + 3209, December 2001. + + + + + + +Kompella Standards Track [Page 40] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + [9] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction + and Applicability Statements for Internet-Standard Management + Framework", RFC 3410, December 2002. + + [10] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", + RFC 2863, June 2000. + + [11] Thaler, D., "IP Tunnel MIB", RFC 2667, August 1999. + + [12] Jamoussi, B., Andersson, L., Callon, R., Dantu, R., Wu, L., + Doolan, P., Worster, T., Feldman, N., Fredette, A., Girish, M., + Gray, E., Heinanen, J., Kilty, T., and A. Malis, "Constraint- + Based LSP Setup using LDP", RFC 3212, January 2002. + +7. Security Considerations + + This MIB module relates to the configuration and management of + Traffic Engineering tunnels. The unauthorized manipulation of fields + in the tables teAdminGroupTable, teTunnelTable, tePathTable, and + tePathHopTable may lead to tunnel flapping, tunnel paths being + changed, or traffic being disrupted. In addition, if these tables + are read by unauthorized parties, the information can be used to + trace traffic patterns, traffic volumes, and tunnel paths. This may + be considered proprietary and confidential information by some + providers. + + There are a number of management objects defined in this MIB module + with a MAX-ACCESS clause of read-write and/or read-create. Such + objects may be considered sensitive or vulnerable in some network + environments. The support for SET operations in a non-secure + environment without proper protection can have a negative effect on + network operations. These are the tables and objects and their + sensitivity/vulnerability: + + teAdminGroupTable: Changing this will affect the semantics of include + and exclude constraints, and thus traffic takes unintended routes. + + teTunnelTable: Changing this affects many properties of traffic + tunnels. + + tePathTable: Changing this affects the constraints (including + bandwidth) of tunnel paths, as well as the status of the path. + + tePathHopTable: Changing this affects the route followed by a traffic + tunnel path. + + + + + + +Kompella Standards Track [Page 41] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + + Some of the readable objects in this MIB module (i.e., objects with a + MAX-ACCESS other than not-accessible) may be considered sensitive or + vulnerable in some network environments. It is thus important to + control even GET and/or NOTIFY access to these objects and possibly + to even encrypt the values of these objects when sending them over + the network via SNMP. These are the tables and objects and their + sensitivity/vulnerability: + + teTunnelTable: Describes tunnel endpoints and traffic volumes. + tePathTable: Describes path properties. + tePathHopTable: Describes path routes. + + SNMP versions prior to SNMPv3 did not include adequate security. + Even if the network itself is secure (for example by using IPSec), + even then, there is no control as to who on the secure network is + allowed to access and GET/SET (read/change/create/delete) the objects + in this MIB module. + + It is RECOMMENDED that implementers consider the security features as + provided by the SNMPv3 framework (see [9], section 8), including full + support for the SNMPv3 cryptographic mechanisms (for authentication + and privacy). + + Further, deployment of SNMP versions prior to SNMPv3 is NOT + RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to + enable cryptographic security. It is then a customer/operator + responsibility to ensure that the SNMP entity giving access to an + instance of this MIB module is properly configured to give access to + the objects only to those principals (users) that have legitimate + rights to indeed GET or SET (change/create/delete) them. + +Acknowledgments + + It was Tony Li's suggestion that the author embark on this MIB. Many + thanks to him and to Der-Hwa Gan for their input and help. + + Many thanks, too, to Bert Wijnen for his incredible help, both with + improving the correctness, structure, and readability of the MIB + module, and with the text of the RFC. Thanks also to Adrian Farrel + for his detailed review. + + + + + + + + + + + +Kompella Standards Track [Page 42] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + +Author's Address + + Kireeti Kompella + Juniper Networks, Inc. + 1194 N. Mathilda Ave + Sunnyvale, CA 94089 + + EMail: kireeti@juniper.net + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Kompella Standards Track [Page 43] + +RFC 3970 A Traffic Engineering (TE) MIB January 2005 + + +Full Copyright Statement + + Copyright (C) The Internet Society (2005). + + This document is subject to the rights, licenses and restrictions + contained in BCP 78, and except as set forth therein, the authors + retain all their rights. + + This document and the information contained herein are provided on an + "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS + OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET + ENGINEERING TASK FORCE DISCLAIM 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. + +Intellectual Property + + The IETF takes no position regarding the validity or scope of any + Intellectual Property Rights or other rights that might be claimed to + pertain to the implementation or use of the technology described in + this document or the extent to which any license under such rights + might or might not be available; nor does it represent that it has + made any independent effort to identify any such rights. Information + on the IETF's procedures with respect to rights in IETF Documents can + be found in BCP 78 and BCP 79. + + Copies of IPR disclosures made to the IETF Secretariat 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 on-line IPR repository at + http://www.ietf.org/ipr. + + The IETF invites any interested party to bring to its attention any + copyrights, patents or patent applications, or other proprietary + rights that may cover technology that may be required to implement + this standard. Please address the information to the IETF at ietf- + ipr@ietf.org. + +Acknowledgement + + Funding for the RFC Editor function is currently provided by the + Internet Society. + + + + + + + +Kompella Standards Track [Page 44] + -- cgit v1.2.3