CCAMP Working Group Thomas D. Nadeau Internet Draft Cisco Systems, Inc. Expires: August 2004 Cheenu Srinivasan Bloomberg L.P. Adrian Farrel Old Dog Consulting Tim Hall Ed Harrison Data Connection Ltd. February 2004 Generalized Multiprotocol Label Switching (GMPLS) Traffic Engineering Management Information Base draft-ietf-ccamp-gmpls-te-mib-04.txt 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. 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 Generalized Multiprotocol Label Switching (GMPLS) based traffic engineering. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 1] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 Table of Contents 1. Introduction 2 1.1. Migration Strategy 3 2. Terminology 3 3. The SNMP Management Framework 3 4. Outline 4 4.1. Summary of GMPLS Traffic Engineering MIB Module 4 5. Brief Description of GMPLS TE MIB Objects 4 5.1. gmplsTunnelTable 4 5.2. gmplsTunnelHopTable 5 5.3. gmplsTunnelARHopTable 5 5.4. gmplsTunnelCHopTable 5 5.5. gmplsTunnelErrorTable 5 5.6. gmplsTunnelReversePerfTable 5 6. Cross-referencing to the mplsLabelTable 5 7. Example of GMPLS Tunnel Setup 6 8. GMPLS Traffic Engineering MIB Definitions 9 9. Security Considerations 37 10. Acknowledgments 38 11. References 38 11.1. Normative Refenerces 38 11.2. Informational References 40 12. Authors' Addresses 41 13. Full Copyright Statement 41 14. Intellectual Property Notice 42 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 modeling a Generalized Multiprotocol Label Switching (GMPLS) [GMPLSArch] based traffic engineering. The tables and objects defined in this document extend those defined in the equivalent document for MPLS traffic engineering [TEMIB], and management of GMPLS traffic engineering is built on management of MPLS traffic engineering. This MIB module should be used in conjunction with the companion document [GMPLSLSRMIB] for GMPLS based traffic engineering configuration and management. Comments should be made direct to the CCAMP mailing list at ccamp@ops.ietf.org. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119, reference [RFC2119]. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 2] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 1.1. Migration Strategy This MIB module extends the traffic engineering MIB module defined for use with MPLS [TEMIB]. It provides additions for support of GMPLS tunnels. The companion document for modeling and managing GMPLS based LSRs [GMPLSLSRMIB] extends MPLS LSR MIB [LSRMIB] with the same intentions. Textual conventions and OBJECT-IDENTIFIERS are defined in [TCMIB] and [GMPLSTCMIB]. 2. Terminology This document uses terminology from the MPLS architecture document [RFC3031], from the GMPLS architecture document [GMPLSArch], and from the MPLS Traffic Engineering MIB [TEMIB]. Some frequently used terms are described next. An explicitly routed LSP (ERLSP) is referred to as a GMPLS tunnel. It consists of in-segment(s) and/or out-segment(s) at the egress/ingress LSRs, each segment being associated with one GMPLS enabled interface. These are also referred to as tunnel segments. Additionally, at an intermediate LSR, we model a connection as consisting of one or more in-segments and/or one or more out- segments. The binding or interconnection between in-segments and out- segments in performed using a cross-connect. These segment and cross-connect objects are defined in the MPLS Label Switch Router MIB [LSRMIB], but see also the GMPLS Label Switch Router MIB [GMPLSLSRMIB] for the GMPLS-specific extensions to these objects. 3. The SNMP Management Framework For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 [RFC3410]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. MIB objects are generally accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined using the mechanisms defined in the Structure of Management Information (SMI). This memo specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580]. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 3] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 4. Outline Support for GMPLS traffic-engineered tunnels requires the following configuration. - Setting up tunnels with appropriate MPLS configuration parameters using [TEMIB]. - Extending the tunnels with GMPLS configuration parameters. - Configuring tunnel loose and strict source routed hops. These actions may need to be accompanied with corresponding actions using [LSRMIB] and [GMPLSLSRMIB] to establish and configure tunnel segments, if this is done manually. Also, the in-segment and out- segment performance tables, mplsInSegmentPerfTable and mplsOutSegmentPerfTable [LSRMIB], should be used to determine performance of the tunnels and tunnel segments although it should be noted that those tables may not be appropriate for measuring performance on some types of GMPLS links. 4.1. Summary of GMPLS Traffic Engineering MIB Module The MIB objects for performing the actions listed above that cannot be performed solely using the MIB objects defined in [TEMIB] consist of the following tables. - Tunnel Table (gmplsTunnelTable) for providing GMPLS-specific tunnel configuration parameters. - Tunnel specified, actual, and computed hop tables (gmplsTunnelHopTable, gmplsTunnelARHopTable, and gmplsTunnelCHopTable) for providing additional configuration of strict and loose source routed tunnel hops. - Performance and error reporting tables (gmplsTunnelReversePerfTable and gmplsTunnelErrorTable). These tables are described in the subsequent sections. Additionally, this MIB module contains a new Notification. - The GMPLS Tunnel Down Notification (gmplsTunnelDown) is intended to be used in place of the mplsTunnelDown Notification defined in [TEMIB]. As well as indicating that a tunnel has transitioned to operational down state, this new Notificaiton indicates the cause of the failure. 5. Brief Description of GMPLS TE MIB Objects The objects described in this section support the functionality described in [RFC3473] and [RFC3472] for GMPLS tunnels. The tables support both manually configured and signaled tunnels. 5.1. gmplsTunnelTable The gmplsTunnelTable extends the MPLS traffic engineering MIB to allow GMPLS tunnels to be created between an LSR and a remote endpoint, and existing GMPLS tunnels to be reconfigured or removed. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 4] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 Note that we only support point-to-point tunnel segments, although multi-point-to-point and point-to-multi-point connections are supported by an LSR acting as a cross-connect. Each tunnel can thus have one out-segment originating at an LSR and/or one in-segment terminating at that LSR. 5.2. gmplsTunnelHopTable The gmplsTunnelHopTable is used to indicate additional parameters for the hops, strict or loose, of a GMPLS tunnel defined in gmplsTunnelTable, when it is established using signaling. Multiple tunnels may share the same hops by pointing to the same entry in this table. 5.3. gmplsTunnelARHopTable The gmplsTunnelARHopTable is used to indicate the actual hops traversed by a tunnel as reported by the signaling protocol after the tunnel is setup. The support of this table is optional since not all GMPLS signaling protocols support this feature. 5.4. gmplsTunnelCHoptable The gmplsTunnelCHopTable lists the actual hops computed by a constraint-based routing algorithm based on the gmplsTunnelHopTable. The support of this table is optional since not all implementations support computation of hop lists using a constraint-based routing protocol. 5.5. gmplsTunnelErrorTable The gmplsTunnelErrorTable provides access to information about the last error that occurred on each tunnel known about by the MIB. It indicates the nature of the error, when and how it was reported and can give recovery advice through a display string. 5.6. gmplsTunnelReversePerfTable gmplsTunnelReversePerfTable provides additional counters to measure the performance of bidirectional GMPLS tunnels in which packets are visible. It supplements the counters in mplsTunnelPerfTable and augments gmplsTunnelTable. Note that not all counters may be appropriate or available for some types of tunnel. 6. Cross-referencing to the gmplsLabelTable The gmplsLabelTable is found in a MIB module in [GMPLSLSRMIB] and provides a way to model labels in a GMPLS system where labels might not be simple 32 bit integers. The hop tables in this document (gmplsHopTable, gmplsCHopTable and gmplsARHopTable) and the segment tables in the [LSRMIB] (mplsInSegmentTable and mplsOutSegmentTable) contain objects with syntax MplsLabel. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 5] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 MplsLabel (defined in [TCMIB]) is a 32-bit integer that is capable of representing any MPLS label and most GMPLS labels. However, some GMPLS labels are larger than 32 bits and may be of arbitrary length. Further, some labels that may be safely encoded in 32 bits are constructed from multiple sub-fields. Additionally, some GMPLS technologies support the concatenation of individual labels to represent a data flow carried as multiple sub-flows. These GMPLS cases require that something other than a simple 32-bit integer is made available to represent the labels. This is achieved through the gmplsLabelTable contained in [GMPLSLSRMIB]. The tables in this document and [LSRMIB] that include objects with syntax MplsLabel also include companion objects that are row pointers. If the row pointer is set to zeroDotZero (0.0) then object of syntax MplsLabel contains the label encoded as a 32-bit integer. But otherwise the row pointer indicates a row in another MIB table that includes the label. In these cases, the row pointer may indicate a row in the gmplsLabelTable. This provides both a good way to support legacy systems that implement the previous version of this MIB [TEMIB], and a significant simplification in GMPLS systems that are limited to a single, simple label type. Note that gmplsLabelTable supports concatenated labels through the use of a label sub-index (gmplsLabelSubindex). 7. Example of GMPLS Tunnel Setup This section contains an example of which MIB objects should be modified to create a GMPLS tunnel. This example shows a best effort, loosely routed, bidirectional traffic engineered tunnel, which spans two hops of a simple network, uses Generalized Label requests with Lambda encoding, has label recording and shared link layer protection. Note that these objects should be created on the "head- end" LSR. First in the mplsTunnelTable: { mplsTunnelIndex = 1, mplsTunnelInstance = 1, mplsTunnelIngressLSRId = 123.123.125.1, mplsTunnelEgressLSRId = 123.123.126.1, mplsTunnelName = "My first tunnel", mplsTunnelDescr = "Here to there and back again", mplsTunnelIsIf = true (1), mplsTunnelXCPointer = mplsXCIndex.3.0.0.12, mplsTunnelSignallingProto = none (1), mplsTunnelSetupPrio = 0, mplsTunnelHoldingPrio = 0, mplsTunnelSessionAttributes = recordRoute (4), mplsTunnelOwner = snmp (2), mplsTunnelLocalProtectInUse = false (0), mplsTunnelResourcePointer = mplsTunnelResourceIndex.6, mplsTunnelInstancePriority = 1, mplsTunnelHopTableIndex = 1, Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 6] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 mplsTunnelPrimaryInstance = 0, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelPathInUse = 1, mplsTunnelRole = head(1), mplsTunnelRowStatus = createAndWait (5), } In gmplsTunnelTable(1,1,123.123.125.1,123.123.126.1): { gmplsTunnelUnnumIf = true (1), gmplsTunnelAttributes = labelRecordingRequired (1), gmplsTunnelLSPEncoding = tunnelLspLambda (8), gmplsTunnelSwitchingType = lsc (150), gmplsTunnelLinkProtection = shared (2), gmplsTunnelGPid = lambda (37), gmplsTunnelSecondary = false(0), gmplsTunnelDirection = bidirectional (1) gmplsTunnelPathComp = explicit(2), gmplsTunnelUpNotRecip = 0x7B7B7D01, gmplsTunnelDownNotRecip = 0x00000000, gmplsTunnelAdminStatusFlags = 0, gmplsTunnelExtraParamsPtr = 0.0 } Entries in the mplsTunnelResourceTable, mplsTunnelHopTable and gmplsTunnelHopTable are created and activated at this time. In mplsTunnelResourceTable: { mplsTunnelResourceIndex = 6, mplsTunnelResourceMaxRate = 0, mplsTunnelResourceMeanRate = 0, mplsTunnelResourceMaxBurstSize = 0, mplsTunnelResourceRowStatus = createAndGo (4) } The next two instances of mplsTunnelHopEntry are used to denote the hops this tunnel will take across the network. The following denotes the beginning of the network, or the first hop. We have used the fictitious LSR identified by "123.123.125.1" as our example head-end router. In mplsTunnelHopTable: { mplsTunnelHopListIndex = 1, mplsTunnelPathOptionIndex = 1, mplsTunnelHopIndex = 1, mplsTunnelHopAddrType = ipV4 (1), mplsTunnelHopIpv4Addr = 123.123.125.1, mplsTunnelHopIpv4PrefixLen = 9, mplsTunnelHopType = strict (1), mplsTunnelHopRowStatus = createAndWait (5), } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 7] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 The following denotes the end of the network, or the last hop in our example. We have used the fictitious LSR identified by "123.123.126.1" as our end router. In mplsTunnelHopTable: { mplsTunnelHopListIndex = 1, mplsTunnelPathOptionIndex = 1, mplsTunnelHopIndex = 2, mplsTunnelHopAddrType = ipV4 (1), mplsTunnelHopIpv4Addr = 123.123.126.1, mplsTunnelHopIpv4PrefixLen = 9, mplsTunnelHopType = loose (2), mplsTunnelHopRowStatus = createAndGo (4) } Now an associated entry in the gmplsTunnelHopTable is created to provide additional GMPLS hop configuration indicating that the first hop is an unnumbered link using explicit forward and reverse labels. An entry in the gmplsLabelTable is created first to include the explicit label. In gmplsLabelTable: { gmplsLabelInterface = 2, gmplsLabelIndex = 1, gmplsLabelSubindex = 0, gmplsLabelType = gmplsFreeformGeneralizedLabel(3), gmplsLabelFreeform = 0xFEDCBA9876543210 gmplsLabelRowStatus = createAndGo(4) } In gmplsTunnelHopTable(1,1,1): { gmplsTunnelHopLabelStatuses = forwardPresent(0) +reversePresent(1), gmplsTunnelHopExpLabelPtr = gmplsLabelTable (2, 1, 0) gmplsTunnelHopExpRvrsLabelPtr = gmplsLabelTable (2, 1, 0) } The first hop is now activated: In mplsTunnelHopTable(1,1,1): { mplsTunnelHopRowStatus = active (1) } No gmplsTunnelHopEntry is created for the second hop as it contains no special GMPLS features. Finally the mplsTunnelEntry is activated: In mplsTunnelTable(1,1,123.123.125.1,123.123.126.1) { mplsTunnelRowStatus = active(1) } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 8] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 8. GMPLS Traffic Engineering MIB Definitions GMPLS-TE-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Unsigned32, Counter32, Counter64, IpAddress, zeroDotZero FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF TruthValue, TimeStamp, DisplayString, RowPointer FROM SNMPv2-TC InetAddress FROM INET-ADDRESS-MIB mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId, mplsTunnelHopListIndex, mplsTunnelHopPathOptionIndex, mplsTunnelHopIndex, mplsTunnelARHopListIndex, mplsTunnelARHopIndex, mplsTunnelCHopListIndex, mplsTunnelCHopIndex, mplsTunnelEntry, mplsTunnelSignallingProto, mplsTunnelAdminStatus, mplsTunnelOperStatus FROM MPLS-TE-STD-MIB gmplsStdMIB FROM GMPLS-TC-STD-MIB ; gmplsTeStdMIB MODULE-IDENTITY LAST-UPDATED "200402130900Z" -- 13 February 2004 9:00:00 GMT ORGANIZATION "Common Control And Management Protocols (CCAMP) Working Group" CONTACT-INFO " Thomas D. Nadeau Cisco Systems, Inc. Email: tnadeau@cisco.com Cheenu Srinivasan Bloomberg L.P. Email: cheenu@bloomberg.net Adrian Farrel Old Dog Consulting Email: adrian@olddog.co.uk Ed Harrison Data Connection Ltd. Email: ed.harrison@dataconnection.com Tim Hall Data Connection Ltd. Email: tim.hall@dataconnection.com Comments about this document should be emailed direct to the CCAMP working group mailing list at ccamp@ops.ietf.org" Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 9] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 DESCRIPTION "This MIB module contains managed object definitions for GMPLS Traffic Engineering (TE). Copyright (C) The Internet Society (2004). This version of this MIB module is part of RFCXXX; see the RFC itself for full legal notices." -- Revision history. REVISION "200402130900Z" -- 13 February 2004 09:00:00 GMT DESCRIPTION "Initial revision, published as part of RFC XXXX." ::= { gmplsStdMIB xx } -- Top level components of this MIB. -- Notifications gmplsTeNotifications OBJECT IDENTIFIER ::= { gmplsTeStdMIB 0 } -- tables, scalars gmplsTeScalars OBJECT IDENTIFIER ::= { gmplsTeStdMIB 1 } gmplsTeObjects OBJECT IDENTIFIER ::= { gmplsTeStdMIB 2 } -- conformance gmplsTeConformance OBJECT IDENTIFIER ::= { gmplsTeStdMIB 3 } -- GMPLS Tunnel scalars. gmplsTunnelsConfigured OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of GMPLS tunnels configured on this device. A GMPLS tunnel is considered configured if an entry for the tunnel exists in the gmplsTunnelTable and the associated mplsTunnelRowStatusis active(1)." ::= { gmplsTeScalars 1 } gmplsTunnelsActive OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of GMPLS tunnels active on this device. A GMPLS tunnel is considered active if there is an entry in the gmplsTunnelTable and the associated mplsTunnelOperStatus for the tunnel is up(1)." ::= { gmplsTeScalars 2 } -- End of GMPLS Tunnel scalars. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 10] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- GMPLS tunnel table. gmplsTunnelTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelTable 'extends' the mplsTunnelTable. It allows GMPLS tunnels to be created between an LSR and a remote endpoint, and existing tunnels to be reconfigured or removed. Note that only point-to-point tunnel segments are supported, although multi-point-to-point and point- to-multi-point connections are supported by an LSR acting as a cross-connect. Each tunnel can thus have one out-segment originating at this LSR and/or one in-segment terminating at this LSR. The row status of an entry in this table is controlled by mplsTunnelRowStatus in the corresponding entry in mplsTunnelTable. That is, it is not permitted to create a row in this table, nor to modify an existing row, when the corresponding mplsTunnelRowStatus has value active(1). The exception to this rule is the gmplsTunnelAdminStatusFlags object, which can be modified whilst the tunnel is active." ::= { gmplsTeObjects 1 } gmplsTunnelEntry OBJECT-TYPE SYNTAX GmplsTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table in association with the corresponding entry in the mplsTunnelTable represents a GMPLS tunnel. An entry can be created by a network administrator or by an SNMP agent as instructed by a signaling protocol." INDEX { mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId } ::= { gmplsTunnelTable 1 } GmplsTunnelEntry ::= SEQUENCE { gmplsTunnelUnnumIf TruthValue, gmplsTunnelAttributes BITS, gmplsTunnelLSPEncoding Integer32, gmplsTunnelSwitchingType Integer32, gmplsTunnelLinkProtection BITS, gmplsTunnelGPid Integer32, gmplsTunnelSecondary TruthValue, Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 11] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelDirection INTEGER, gmplsTunnelPathComp INTEGER, gmplsTunnelUpNotRecip IpAddress, gmplsTunnelDownNotRecip IpAddress, gmplsTunnelAdminStatusFlags BITS, gmplsTunnelExtraParamsPtr RowPointer } gmplsTunnelUnnumIf OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes whether or not this tunnel corresponds to an unnumbered interface represented in the interfaces group table. This object is only used if mplsTunnelIsIf is set to 'true'. If both this object and the mplsTunnelIsIf object are set to 'true', the originating LSR adds an LSP_TUNNEL_INTERFACE_ID object to the outgoing Path message. This object contains information that is only used by the terminating LSR." REFERENCE "Signalling Unnumbered Links in RSVP-TE, Kompella, K. and Rekhter, Y., RFC 3477, January 2003." DEFVAL { false } ::= { gmplsTunnelEntry 1 } gmplsTunnelAttributes OBJECT-TYPE SYNTAX BITS { labelRecordingDesired (0) } MAX-ACCESS read-create STATUS current DESCRIPTION "This bitmask indicates optional parameters for this tunnel. These bits should be taken in addition to those defined in mplsTunnelSessionAttributes in order to determine the full set of options to be signaled (for example SESSION_ATTRIBUTES flags in RSVP-TE). The following describes these bitfields: labelRecordingDesired This flag indicates that label information should be included when doing a route record. This bit is not valid unless the recordRoute bit is set." REFERENCE "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al, RFC 3209, December 2001." DEFVAL { { } } ::= { gmplsTunnelEntry 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 12] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelLSPEncoding OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the encoding of the LSP being requested. A value of zero indicates that GMPLS signaling is not in use. Some objects in this MIB module may be of use for MPLS signaling extensions that do not use GMPLS signaling. By setting this object to zero, an application may indicate that only those objects meaningful in MPLS should be examined. The values to use are currently defined in Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471. Further values may be defined in future RFCs. tunnelLspPacket (1), tunnelLspEthernet (2), tunnelLspAnsiEtsiPdh (3), -- the value 4 is deprecated tunnelLspSdhSonet (5), -- the value 6 is deprecated tunnelLspDigitalWrapper (7), tunnelLspLambda (8), tunnelLspFiber (9), -- the value 10 is deprecated tunnelLspFiberChannel (11)" REFERENCE "1. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { 0 } ::= { gmplsTunnelEntry 3 } gmplsTunnelSwitchingType OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the type of switching that should be performed on a particular link. This field is needed for links that advertise more than one type of switching capability. Values of this object are as the Switching Capability field defined in Internet Draft OSPF Extensions in Support of Generalized MPLS. Further values may be defined in future RFCs. unknown (0), psc1 (1), psc2 (2), psc3 (3), psc4 (4), l2sc (51), tdm (100), lsc (150), fsc (200) This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 13] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 REFERENCE "1. Kompella, K., et al., OSPF Extensions in Support of Generalized MPLS, draft-ietf-ccamp-ospf-gmpls- extensions-12.txt, October 2003, work in progress. 2. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { 0 } ::= { gmplsTunnelEntry 4 } gmplsTunnelLinkProtection OBJECT-TYPE SYNTAX BITS { extraTraffic(0), unprotected(1), shared (2), dedicatedOneToOne (3), dedicatedOnePlusOne(4), enhanced(5) } MAX-ACCESS read-create STATUS current DESCRIPTION "This bitmask indicates the level of link protection required. A value of zero (no bits set) indicates that any protection may be used. The following describes these bitfields: extraTraffic Indicates that the LSP should use links that are protecting other (primary) traffic. Such LSPs may be preempted when the links carrying the (primary) traffic being protected fail. unprotected Indicates that the LSP should not use any link layer protection. shared Indicates that a shared link layer protection scheme, such as 1:N protection, should be used to support the LSP. dedicatedOneToOne Indicates that a dedicated link layer protection scheme, i.e., 1:1 protection, should be used to support the LSP. dedicatedOnePlusOne Indicates that a dedicated link layer protection scheme, i.e., 1+1 protection, should be used to support the LSP. enhanced Indicates that a protection scheme that is more reliable than Dedicated 1+1 should be used, e.g., 4 fiber BLSR/MS-SPRING. This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { { } } ::= { gmplsTunnelEntry 5 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 14] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelGPid OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the payload carried by the LSP. It is only required when GMPLS will be used for this LSP. The values to use are currently defined in Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471. Further values may be defined in future RFCs. unknown(0), asynchE4(5), asynchDS3T3(6), asynchE3(7), bitsynchE3(8), bytesynchE3(9), asynchDS2T2(10), bitsynchDS2T2(11), asynchE1(13), bytesynchE1(14), bytesynch31ByDS0(15), asynchDS1T1(16), bitsynchDS1T1(17), bytesynchDS1T1(18), VC11VC12(19), ds1SFAsynch(22), ds1ESFAsynch(23), ds3M23Asynch(24), ds3CBitParityAsynch(25), vtLovc(26), stsSpeHovc(27), posNoScramble16BitCrc(28), posNoScramble32BitCrc(29), posScramble16BitCrc(30), posScramble32BitCrc(31), atm(32) ethernet(33), sdhSonet(34), digitalwrapper(36), lambda(37), ansiEtsiPdh (38), lapsSdh (40), fddi (41), dqdb (42), fiberChannel3 (43), hdlc (44), ethernetV2DixOnly (45), ethernet802dot3Only (46) This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 15] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 REFERENCE "1. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { 0 } ::= { gmplsTunnelEntry 6 } gmplsTunnelSecondary OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates that the requested LSP is a secondary LSP. This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { false } ::= { gmplsTunnelEntry 7 } gmplsTunnelDirection OBJECT-TYPE SYNTAX INTEGER { forward (0), bidirectional (1) } MAX-ACCESS read-create STATUS current DESCRIPTION "Whether this tunnel carries forward data (is unidirectional) or is bidirectional. Values of this object other than 'forward' are meaningful only if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { forward } ::= { gmplsTunnelEntry 8 } gmplsTunnelPathComp OBJECT-TYPE SYNTAX INTEGER { dynamicFull(1),-- CSPF fully computed explicit(2),-- fully specified path dynamicPartial(3) -- CSPF partially computed } MAX-ACCESS read-create STATUS current DESCRIPTION "This value instructs the source node on how to perform path computation on the explicit route specified by the associated entries in the gmplsTunnelHopTable. dynamicFull The user specifies at least the source and destination of the path and expects that the CSPF will calculate the remainder of the path. explicit The user specifies the entire path for the tunnel to take. This path may contain strict or loose hops. Evaluation of the explicit route will be performed hop by hop through the network. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 16] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 dynamicPartial The user specifies at least the source and destination of the path and expects that the CSPF will calculate the remainder of the path. The path computed by CSPF is allowed to be only partially computed allowing the remainder of the path to be filled in across the network. This object deprecates gmplsTunnelHopEntryPathComp." DEFVAL { dynamicFull } ::= { gmplsTunnelEntry 9 } gmplsTunnelUpNotRecip OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the address of the upstream recipient for Notify messages relating to this tunnel. This object is only valid when signaling a tunnel using RSVP. It is also not valid at the tail end of the tunnel. If set to 0, no Notify Request object will be included in outgoing Path messages." DEFVAL { '00000000'H } -- 0.0.0.0 ::= { gmplsTunnelEntry 10 } gmplsTunnelDownNotRecip OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the address of the upstream recipient for Notify messages relating to this tunnel. This object is only valid when signaling a tunnel using RSVP. It is also not valid at the head end of the tunnel. If set to 0, no Notify Request object will be included in outgoing Resv messages." DEFVAL { '00000000'H } -- 0.0.0.0 ::= { gmplsTunnelEntry 11 } gmplsTunnelAdminStatusFlags OBJECT-TYPE SYNTAX BITS { delInProgress (0), adminDown (1), testing (2), reflect (31) } MAX-ACCESS read-create STATUS current DESCRIPTION "Determines the setting of the Admin Status flags in the Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 17] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 Admin Status object or TLV, as described in RFC 3471. Setting this field to a non-zero value will result in the inclusion of the admin status object on signaling messages. This value of this object can be modified when the corresponding mplsTunnelRowStatus and mplsTunnelAdminStatus is active(1). By doing so, a new signaling message will be triggered including the requested Admin Status object or TLV." ::= { gmplsTunnelEntry 12 } gmplsTunnelExtraParamsptr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "Some Tunnels will run over transports that can usefully support technology-specific additional parameters (for example, SONET resource usage). Such can be supplied from an external table and referenced from here. A value of zeroDotzero in this attribute indicates that there is no such additional information." DEFVAL { zeroDotZero } ::= { gmplsTunnelEntry 13 } -- End of gmplsTunnelTable -- Begin gmplsTunnelHopTable gmplsTunnelHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelHopTable 'extends' the mplsTunnelHopTable. It is used to indicate the explicit labels to be used in an explicit path for a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, when it is established using signaling. It does not insert new hops, but does define new values for hops defined in mplsTunnelHopTable. Each row in this table is indexed by the same indexes as mplsTunnelHopTable. It is acceptable for some rows in mplsTunnelHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. The storage type for an entry in this table is inherited from mplsTunnelHopStorageType in the corresponding entry in mplsTunnelHopTable. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 18] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 The row status of an entry in this table is controlled by mplsTunnelHopRowStatus in the corresponding entry in mplsTunnelHopTable. That is, it is not permitted to create a row in this table, nor to modify an existing row, when the corresponding mplsTunnelHopRowStatus has value active(1)." ::= { gmplsTeObjects 2 } gmplsTunnelHopEntry OBJECT-TYPE SYNTAX GmplsTunnelHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a tunnel hop defined in mplsTunnelHopEntry. At an ingress to a tunnel an entry in this table is created by a network administrator for an ERLSP to be set up by a signaling protocol. At transit and egress nodes an entry in this table may be used to represent the explicit path instructions received using the signaling protocol." INDEX { mplsTunnelHopListIndex, mplsTunnelHopPathOptionIndex, mplsTunnelHopIndex } ::= { gmplsTunnelHopTable 1 } GmplsTunnelHopEntry ::= SEQUENCE { gmplsTunnelHopLabelStatuses BITS, gmplsTunnelHopExpLabel Unsigned32, gmplsTunnelHopExpLabelPtr RowPointer, gmplsTunnelHopExpRvrsLabel Unsigned32, gmplsTunnelHopExpRvrsLabelPtr RowPointer } gmplsTunnelHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence of labels indicated by the gmplsTunnelHopExpLabel or gmplsTunnelHopExpLabelPtr and gmplsTunnelHopExpRvrsLabel or gmplsTunnelHopExpRvrsLabel objects. For the Present bits, a set bit indicates that a label is present for this hop in the route. This allows zero to be a valid label value." ::= { gmplsTunnelHopEntry 1 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 19] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelHopExpLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "If gmplsTunnelHopLabelStatuses object indicates that a forward label is present and gmplsTunnelHopExpLabelPtr contains the value zeroDotZero, then the label to use on this hop is found in this object encoded within a 32-bit integer." ::= { gmplsTunnelHopEntry 2 } gmplsTunnelHopExpLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "If the gmplsTunnelHopLabelStatuses object indicates that a forward label is present, this object contains a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label to use on this hop in the forward direction. If the gmplsTunnelHopLabelStatuses object indicates that a forward label is present and this object contains the value zeroDotZero, then the label to use on this hop is found in the gmplsTunnelHopExpLabel object." DEFVAL { zeroDotZero } ::= { gmplsTunnelHopEntry 3 } gmplsTunnelHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "If the gmplsTunnelHopLabelStatuses object indicates that a reverse label is present and gmplsTunnelHopExpRvrsLabelPtr contains the value zeroDotZero, then the label to use on this hop is found in this object encoded as a 32-bit integer." ::= { gmplsTunnelHopEntry 4 } gmplsTunnelHopExpRvrsLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "If the gmplsTunnelHopLabelStatuses object indicates that a reverse label is present, this object contains a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label to use on this hop in the reverse direction. If the gmplsTunnelHopLabelStatuses object indicates that a reverse label is present and this object contains the value zeroDotZero, then the label to use on this hop is found in the gmplsTunnelHopExpRvrsLabel object." DEFVAL { zeroDotZero } ::= { gmplsTunnelHopEntry 5 } -- End of gmplsTunnelHopTable Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 20] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- Tunnel Actual Route Hop table. gmplsTunnelARHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelARHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelARHopTable 'extends' the mplsTunnelARHopTable. It is used to indicate the labels currently in use for a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, as reported by the signaling protocol. It does not insert new hops, but does define new values for hops defined in mplsTunnelARHopTable. Each row in this table is indexed by the same indexes as mplsTunnelARHopTable. It is acceptable for some rows in mplsTunnelARHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. Note that since the information necessary to build entries within this table is not provided by some signaling protocols and might not be returned in all cases of other signaling protocols, implementation of this table and mplsTunnelARHopTable is optional. Furthermore, since the information in this table is actually provided by the signaling protocol after the path has been set-up, the entries in this table are provided only for observation, and hence, all variables in this table are accessible exclusively as read-only." ::= { gmplsTeObjects 3 } gmplsTunnelARHopEntry OBJECT-TYPE SYNTAX GmplsTunnelARHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a tunnel hop visible in mplsTunnelARHopEntry. An entry is created by the signaling protocol for a signaled ERLSP set up by the signaling protocol. At any node on the LSP (ingress, transit or egress) Thus at this table and mplsTunnelARHopTable (if the tables are supported and if the signaling protocol is recording actual route information) contains the actual route of the whole tunnel. If the signaling protocol is not recording the actual route, this table MAY report the information from the gmplsTunnelHopTable or the gmplsTunnelCHopTable. Note that the recording of actual labels is distinct from the recording of the actual route in some signaling protocols. This feature is enabled using the gmplsTunnelAttributes object." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 21] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 INDEX { mplsTunnelARHopListIndex, mplsTunnelARHopIndex } ::= { gmplsTunnelARHopTable 1 } GmplsTunnelARHopEntry ::= SEQUENCE { gmplsTunnelARHopLabelStatuses BITS, gmplsTunnelARHopExpLabel Unsigned32, gmplsTunnelARHopExpLabelPtr RowPointer, gmplsTunnelARHopExpRvrsLabel Unsigned32, gmplsTunnelARHopExpRvrsLabelPtr RowPointer, gmplsTunnelARHopProtection BITS } gmplsTunnelARHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1), forwardGlobal (2), reverseGlobal (3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence and status of labels indicated by the gmplsTunnelARHopExpLabel or gmplsTunnelARHopExpLabelPtr and gmplsTunnelARHopExpRvrsLabel or gmplsTunnelARHopExpRvrsLabelPtr objects. For the Present bits, a set bit indicates that a label is present for this hop in the route. For the Global bits, a set bit indicates that the label comes from the Global Label Space. A clear bit indicates that this is a Per- Interface label. A Global bit only has meaning if the corresponding Present bit is set." ::= { gmplsTunnelARHopEntry 1 } gmplsTunnelARHopExpLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelARHopLabelStatuses object indicates that a forward label is present and gmplsTunnelARHopExpLabelPtr contains the value zeroDotZero, then the label in use on this hop is found in this object encoded within a 32-bit integer." ::= { gmplsTunnelARHopEntry 2 } gmplsTunnelARHopExpLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelARHopLabelStatuses object indicates that a forward label is present, this object contains Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 22] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label in use on this hop in the forward direction. If the gmplsTunnelARHopLabelStatuses object indicates that a forward label is present and this object contains the value zeroDotZero, then the label in use on this hop is found in the gmplsTunnelARHopExpLabel object." ::= { gmplsTunnelARHopEntry 3 } gmplsTunnelARHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelARHopLabelStatuses object indicates that a reverse label is present and gmplsTunnelARHopExpRvrsLabelPtr contains the value zeroDotZero, then the label in use on this hop is found in this object encoded as a 32-bit integer." ::= { gmplsTunnelARHopEntry 4 } gmplsTunnelARHopExpRvrsLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelARHopLabelStatuses object indicates that a reverse label is present, this object contains a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label in use on this hop in the reverse direction. If the gmplsTunnelARHopLabelStatuses object indicates that a reverse label is present and this object contains the value zeroDotZero, then the label in use on this hop is found in the gmplsTunnelARHopExpRvrsLabel object." ::= { gmplsTunnelARHopEntry 5 } gmplsTunnelARHopProtection OBJECT-TYPE SYNTAX BITS { localAvailable (0), localInUse (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "Availability and usage of protection on the reported link. localAvailable Indicates that the link downstream of this node is protected via a local repair mechanism. localInUse Indicates that a local repair mechanism is in use to maintain this tunnel (usually in the face of an outage of the link it was previously routed over)." ::= { gmplsTunnelARHopEntry 6 } -- End of mplsTunnelARHopTable Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 23] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- Tunnel Computed Hop table. gmplsTunnelCHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelCHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelCHopTable 'extends' the mplsTunnelCHopTable. It is used to indicate additional information about the hops of a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, as computed by a constraint-based routing protocol, based on the mplsTunnelHopTable and the gmplsTunnelHopTable. Each row in this table is indexed by the same indexes as mplsTunnelCHopTable. It is acceptable for some rows in mplsTunnelCHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. Please note that since the information necessary to build entries within this table may not be supported by some LSRs, implementation of this table is optional. Furthermore, since the information in this table is actually provided by a path computation component after the path has been computed, the entries in this table are provided only for observation, and hence, all objects in this table are accessible exclusively as read-only." ::= { gmplsTeObjects 4 } gmplsTunnelCHopEntry OBJECT-TYPE SYNTAX GmplsTunnelCHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a computed tunnel hop visible in mplsTunnelCHopEntry. An entry is created by a path computation component based on the hops specified in the corresponding mplsTunnelHopTable and gmplsTunnelHopTable. At a transit LSR this table (if the table is supported) MAY contain the path computed by path computation engine on (or on behalf of) the transit LSR." INDEX { mplsTunnelCHopListIndex, mplsTunnelCHopIndex } ::= { gmplsTunnelCHopTable 1 } GmplsTunnelCHopEntry ::= SEQUENCE { gmplsTunnelCHopLabelStatuses BITS, gmplsTunnelCHopExpLabel Unsigned32, gmplsTunnelCHopExpLabelPtr RowPointer, gmplsTunnelCHopExpRvrsLabel Unsigned32, gmplsTunnelCHopExpRvrsLabelPtr RowPointer } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 24] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelCHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence of labels indicated by the gmplsTunnelCHopExpLabel or gmplsTunnelCHopExpLabelPtr and gmplsTunnelCHopExpRvrsLabel or gmplsTunnelCHopExpRvrsLabelPtr objects. A set bit indicates that a label is present for this hop in the route thus allowing zero to be a valid label value." ::= { gmplsTunnelCHopEntry 1 } gmplsTunnelCHopExpLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelCHopLabelStatuses object indicates that a forward label is present and gmplsTunnelCHopExpLabelPtr contains the value zeroDotZero, then the label to use on this hop is found in this object encoded within a 32-bit integer." ::= { gmplsTunnelCHopEntry 2 } gmplsTunnelCHopExpLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelCHopLabelStatuses object indicates that a forward label is present, this object contains a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label to use on this hop in the forward direction. If the gmplsTunnelCHopLabelStatuses object indicates that a forward label is present and this object contains the value zeroDotZero, then the label to use on this hop is found in the gmplsTunnelCHopExpLabel object." ::= { gmplsTunnelCHopEntry 3 } gmplsTunnelCHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelCHopLabelStatuses object indicates that a reverse label is present and gmplsTunnelCHopExpRvrsLabelPtr contains the value zeroDotZero, then the label to use on this hop is found in this object encoded as a 32-bit integer." ::= { gmplsTunnelCHopEntry 4 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 25] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelCHopExpRvrsLabelPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If the gmplsTunnelCHopLabelStatuses object indicates that a reverse label is present, this object contains a pointer to a row in another MIB table (such as the gmplsLabelTable) that contains the label to use on this hop in the reverse direction. If the gmplsTunnelCHopLabelStatuses object indicates that a reverse label is present and this object contains the value zeroDotZero, then the label to use on this hop is found in the gmplsTunnelCHopExpRvrsLabel object." ::= { gmplsTunnelCHopEntry 5 } -- End of gmplsTunnelCHopTable -- GMPLS Tunnel Reverse Direction Performance Table. gmplsTunnelReversePerfTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelReversePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'augments' the gmplsTunnelTable to provides per-tunnel packet performance information for the reverse direction of a bidirectional tunnel. It can be seen as supplementing the mplsTunnelPerfTable which augments the mplsTunnelTable." ::= { gmplsTeObjects 5 } gmplsTunnelReversePerfEntry OBJECT-TYPE SYNTAX GmplsTunnelReversePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by the LSR for every bidirectional GMPLS tunnel where packets are visible to the LSR." AUGMENTS { gmplsTunnelEntry } ::= { gmplsTunnelReversePerfTable 1 } GmplsTunnelReversePerfEntry ::= SEQUENCE { gmplsTunnelReversePerfPackets Counter32, gmplsTunnelReversePerfHCPackets Counter64, gmplsTunnelReversePerfErrors Counter32, gmplsTunnelReversePerfBytes Counter32, gmplsTunnelReversePerfHCBytes Counter64 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 26] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelReversePerfPackets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of packets forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 1 } gmplsTunnelReversePerfHCPackets OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of packets forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 2 } gmplsTunnelReversePerfErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of errored packets received on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 3 } gmplsTunnelReversePerfBytes OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of bytes forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 4 } gmplsTunnelReversePerfHCBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of bytes forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 5 } -- End of gmplsTunnelReversePerfTable Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 27] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- GMPLS Tunnel Error Table. gmplsTunnelErrorTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelErrorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'augments' the mplsTunnelTable This table provides per-tunnel information about errors. Errors may be detected locally or reported through the signaling protocol. Error reporting is not exclusive to GMPLS and this table may be applied in MPLS systems." ::= { gmplsTeObjects 6 } gmplsTunnelErrorEntry OBJECT-TYPE SYNTAX GmplsTunnelErrorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by the LSR for every tunnel where error information is visible to the LSR. Note that systems which read the objects in this table one at a time may experience a discontinuity as the result of a new error occurring in between object reads. Systems that are vulnerable to this should read gmplsTunnelErrorLastTime before and after reading the other objects." AUGMENTS { mplsTunnelEntry } ::= { gmplsTunnelErrorTable 1 } GmplsTunnelErrorEntry ::= SEQUENCE { gmplsTunnelErrorLastErrorType INTEGER, gmplsTunnelErrorLastTime TimeStamp, gmplsTunnelErrorReporterType INTEGER, gmplsTunnelErrorReporter InetAddress, gmplsTunnelErrorCode Unsigned32, gmplsTunnelErrorSubcode Unsigned32, gmplsTunnelErrorTLVs OCTET STRING, gmplsTunnelErrorHelpString DisplayString } gmplsTunnelErrorLastErrorType OBJECT-TYPE SYNTAX INTEGER { noError (0), unknown (1), localProtocol (2), remoteProtocol (3), configuration (4), pathComputation (5), localResources (6) } MAX-ACCESS read-only STATUS current DESCRIPTION "The nature of the last error. Provides interpretation context for gmplsTunnelErrorProtocolCode and gmplsTunnelErrorProtocolSubcode. A value of noError (0) shows that there is no error associated with this tunnel and means that the other objects in this entry have no meaning." ::= { gmplsTunnelErrorEntry 1 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 28] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelErrorLastTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The time at which the last error occurred. This is presented as the value of SysUpTime when the error occurred or was reported to this node. If gmplsTunnelErrorLastErrorType has the value noError (0), then this object is ignored." ::= { gmplsTunnelErrorEntry 2 } gmplsTunnelErrorReporterType OBJECT-TYPE SYNTAX INTEGER { unknown (0), localNode (1), localIpV4 (2), remoteIpV4 (3), localIpV6 (4), remoteIpV6 (5) } MAX-ACCESS read-only STATUS current DESCRIPTION "The reporter of the last error recorded. This object is used principally to aid in interpretation of gmplsTunnelErrorReporterIpv4Addr and gmplsTunnelErrorReporterIpv6Addr. Where the error has been locally generated and there is no requirement to associate the error with any specific local address (such as an interface), the value localNode (2) may be used. If gmplsTunnelErrorLastError has the value noError (0), then this object is ignored." ::= { gmplsTunnelErrorEntry 3 } gmplsTunnelErrorReporter OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The address of the node reporting the last error, or the address of the resource (such as an interface) associated with the error. If gmplsTunnelErrorLastErrorType has the value noError (0), then this object is ignored. This object should be interpreted in the context of the value of the object gmplsTunnelErrorReporterType. If that object has value localIpV4 (2) or remoteIpV4 (3), this object should be viewed as having a syntax of InetAddressIPv4. If gmplsTunnelErrorReporterType has value localIpV6 (3) or remoteIpV6 (5), this object should be viewed as having a syntax of InetAddressIPv6. Otherwise the object should contain the value zero and should be ignored." REFERENCE "RFC3291, Textual Conventions for Internet Network Addresses, Section 4. Usage Hints." ::= { gmplsTunnelErrorEntry 4 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 29] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelErrorCode OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The primary error code associated with the last error. The interpretation of this error code depends on the value of gmplsTunnelErrorLastErrorType. If the value of gmplsTunnelErrorLastErrorType is noError (0) the value of this object should be 0 and should be ignored. If the value of gmplsTunnelErrorLastErrorType is localProtocol (2) or remoteProtocol (3) the error should be interpreted in the context of the signling protocol identified by the mplsTunnelSignallingProto object. Values in excess 32767 of are not used by signaling protocols and may safely be used as implementation- specific error codes. " ::= { gmplsTunnelErrorEntry 5 } gmplsTunnelErrorSubcode OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The secondary error code associated with the last error and the protocol used to signal this tunnel. This value is interprettd in the context of the value of gmplsTunnelErrorCode. If the value of gmplsTunnelErrorLastErrorType is noError (0) the value of this object should be 0 and should be ignored." ::= { gmplsTunnelErrorEntry 6 } gmplsTunnelErrorTLVs OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-only STATUS current DESCRIPTION "The sequence of interface identifier TLVs reported with the error by the protocol code. The interpretation of the TLVs and the encoding within the protocol are described in the references. A value of zero in the first octet indicates that no TLVs are present." REFERENCE "RFC3471, Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, Section 9.1. Interface Identification. RFC3473, Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions, Section 8.2. Errored Interface Identification" ::= { gmplsTunnelErrorEntry 7 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 30] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelErrorHelpString OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A textual string containing information about the last error, recovery actions and support advice. If there is no help string this object contains a zero length string. If the value of gmplsTunnelErrorLastErrorType is noError (0) this object should contain a zero length string, but may contain a help string indicating that there is no error." ::= { gmplsTunnelErrorEntry 8 } -- GMPLS Notifications. gmplsTunnelDown NOTIFICATION-TYPE OBJECTS { mplsTunnelAdminStatus, mplsTunnelOperStatus, gmplsTunnelErrorLastErrorType, gmplsTunnelErrorReporterType, gmplsTunnelErrorReporter, gmplsTunnelErrorCode, gmplsTunnelErrorSubcode } STATUS current DESCRIPTION "This notification is generated when a mplsTunnelOperStatus object for one of the configured tunnels is about to enter the down state from some other state (but not from the notPresent state). This other state is indicated by the included value of mplsTunnelOperStatus. The objects in this notification provide additional error information that indicates the reason why the tunnel has transitioned down. Note that an implementation SHOULD only issue one of mplsTunnelDown and gmplsTunnelDown for a single event on a single tunnel." ::= { gmplsTeNotifications 1 } -- End of notifications. -- Module compliance. gmplsTeGroups OBJECT IDENTIFIER ::= { gmplsTeConformance 1 } gmplsTeCompliances OBJECT IDENTIFIER ::= { gmplsTeConformance 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 31] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTeModuleCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that support the GMPLS TE MIB." MODULE -- this module -- The mandatory group has to be implemented by all -- LSRs that originate/terminate ESLSPs/tunnels. -- In addition, depending on the type of tunnels -- supported, other groups become mandatory as -- explained below. MANDATORY-GROUPS { gmplsTunnelGroup, gmplsTunnelScalarGroup } -- GROUP gmplsTunnelManualGroup -- DESCRIPTION -- "This group is mandatory for devices which support -- manual configuration of tunnels, in addition to -- gmplsTunnelGroup. The following constraints apply: -- mplsTunnelSignallingProto should be at least read- -- only with a value of none(1)." GROUP gmplsTunnelSignaledGroup DESCRIPTION "This group is mandatory for devices which support signaled tunnel set up, in addition to gmplsTunnelGroup. The following constraints apply: mplsTunnelSignallingProto should be at least read- only returning a value of ldp(2), or rsvp(3)." GROUP gmplsTunnelIsNotIntfcGroup DESCRIPTION "This group is mandatory for devices which support tunnels that are not interfaces, in addition to gmplsTunnelGroup. The following constraints apply: gmplsTunnelIsIf must at least be read-only returning no(0)." GROUP gmplsTunnelIsIntfcGroup DESCRIPTION "This group is mandatory for devices which support tunnels that are interfaces, in addition to gmplsTunnelGroup." GROUP gmplsTunnelOptionalGroup DESCRIPTION "Objects in this group are optional." GROUP gmplsTeNotificationGroup DESCRIPTION "This group is mandatory for those implementations which can implement the notifications contained in this group." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 32] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- GMPLS Tunnel scalars. -- All scalars have max access read-only -- gmplsTunnelTable OBJECT gmplsTunnelAttributes MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelLSPEncoding SYNTAX Integer32 MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelSwitchingType SYNTAX Integer32 MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelLinkProtection MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelGPid MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelSecondary SYNTAX TruthValue MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelDirection SYNTAX INTEGER { forward (0), bidirectional (1) } MIN-ACCESS read-only DESCRIPTION "Only forward (0) is required." OBJECT gmplsTunnelPathComp SYNTAX INTEGER { dynamicFull(1), -- CSPF fully computed explicit(2), -- fully dynamicPartial(3) -- CSPF partially computed } MIN-ACCESS read-only DESCRIPTION "Only explicit (2) is required." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 33] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 OBJECT gmplsTunnelUpNotRecip SYNTAX IpAddress MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelDownNotRecip SYNTAX IpAddress MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelAdminStatusFlags SYNTAX BITS { delInProgress (0), adminDown (1), testing (2), reflect (31) } MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelExtraParamsPtr SYNTAX RowPointer MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelHopTable -- gmplsTunnelHopLabelStatuses has max access read-only OBJECT gmplsTunnelHopExpLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExpLabelPtr MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExpRvrsLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExpRvrsLabelPtr MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelARHopTable -- all objects have max access read-only Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 34] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 -- glmpsTunnelCHopTable -- all objects have max access read-only -- gmplsTunnelReversePerfTable -- all objects have max access read-only -- gmplsTunnelErrorTable -- all objects have max access read-only ::= { gmplsTeCompliances 1 } -- Units of conformance. gmplsTunnelGroup OBJECT-GROUP OBJECTS { gmplsTunnelDirection, gmplsTunnelReversePerfPackets, gmplsTunnelReversePerfHCPackets, gmplsTunnelReversePerfErrors, gmplsTunnelReversePerfBytes, gmplsTunnelReversePerfHCBytes, gmplsTunnelErrorLastErrorType, gmplsTunnelErrorLastTime, gmplsTunnelErrorReporterType, gmplsTunnelErrorReporter, gmplsTunnelErrorCode, gmplsTunnelErrorSubcode, gmplsTunnelErrorTLVs, gmplsTunnelErrorHelpString } STATUS current DESCRIPTION "Necessary, but not sufficient, set of objects to implement tunnels. In addition, depending on the type of the tunnels supported (for example, manually configured or signaled, persistent or non-persistent, etc.), the following other groups defined below are mandatory: gmplsTunnelManualGroup and/or gmplsTunnelSignaledGroup, gmplsTunnelIsNotIntfcGroup and/or gmplsTunnelIsIntfcGroup." ::= { gmplsTeGroups 1 } -- gmplsTunnelManualGroup OBJECT-GROUP -- OBJECTS { -- mplsTunnelSignallingProto -- } -- STATUS current -- DESCRIPTION -- "Object(s) needed to implement manually configured -- tunnels." -- ::= { gmplsTeGroups 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 35] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelSignaledGroup OBJECT-GROUP OBJECTS { gmplsTunnelAttributes, gmplsTunnelLSPEncoding, gmplsTunnelSwitchingType, gmplsTunnelLinkProtection, gmplsTunnelGPid, gmplsTunnelSecondary, gmplsTunnelPathComp, gmplsTunnelUpNotRecip, gmplsTunnelDownNotRecip, gmplsTunnelAdminStatusFlags, gmplsTunnelHopLabelStatuses, gmplsTunnelHopExpLabel, gmplsTunnelHopExpLabelPtr, gmplsTunnelHopExpRvrsLabel, gmplsTunnelHopExpRvrsLabelPtr } STATUS current DESCRIPTION "Objects needed to implement signaled tunnels." ::= { gmplsTeGroups 3 } gmplsTunnelScalarGroup OBJECT-GROUP OBJECTS { gmplsTunnelsConfigured, gmplsTunnelsActive } STATUS current DESCRIPTION "Scalar objects needed to implement MPLS tunnels." ::= { gmplsTeGroups 4 } gmplsTunnelIsIntfcGroup OBJECT-GROUP OBJECTS { gmplsTunnelUnnumIf } STATUS current DESCRIPTION "Objects needed to implement tunnels that are interfaces." ::= { gmplsTeGroups 5 } gmplsTunnelIsNotIntfcGroup OBJECT-GROUP OBJECTS { gmplsTunnelUnnumIf } STATUS current DESCRIPTION "Objects needed to implement tunnels that are not interfaces." ::= { gmplsTeGroups 6 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 36] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 gmplsTunnelOptionalGroup OBJECT-GROUP OBJECTS { gmplsTunnelExtraParamsPtr, gmplsTunnelARHopLabelStatuses, gmplsTunnelARHopExpLabel, gmplsTunnelARHopExpLabelPtr, gmplsTunnelARHopExpRvrsLabel, gmplsTunnelARHopExpRvrsLabelPtr, gmplsTunnelARHopProtection, gmplsTunnelCHopLabelStatuses, gmplsTunnelCHopExpLabel, gmplsTunnelCHopExpLabelPtr, gmplsTunnelCHopExpRvrsLabel, gmplsTunnelCHopExpRvrsLabelPtr } STATUS current DESCRIPTION "The objects in this group are optional." ::= { gmplsTeGroups 7 } gmplsTeNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { gmplsTunnelDown } STATUS current DESCRIPTION "Set of notifications implemented in this module. None is mandatory." ::= { gmplsTeGroups 8 } END 9. Security Considerations It is clear that the MIB modules described in this document in association with the MPLS-TE-STD-MIB are potentially useful for monitoring of MPLS and GMPLS tunnels. These MIB modules can also be used for configuration of certain objects, and anything that can be configured can be incorrectly configured, with potentially disastrous results. There are a number of management objects defined in these MIB modules 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: o the gmplsTunnelTable and gmplsTunnelHopTable collectively contain objects to provision GMPLS tunnels interfaces at their ingress LSRs. Unauthorized write access to objects in these tables, could result in disruption of traffic on the network. This is especially true if a tunnel has already been established. The use of stronger mechanisms such as SNMPv3 security should be considered where possible. Specifically, SNMPv3 VACM and USM MUST be used with any SNMPv3 agent which implements these MIB modules. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 37] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 Some of the readable objects in these MIB modules "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: o the gmplsTunnelTable, gmplsTunnelHopTable, gmplsTunnelARHopTable, gmplsTunnelCHopTable, gmplsTunnelReversePerfTable, gmplsTunnelErrorTable collectively show the tunnel network topology and status. If an Administrator does not want to reveal this information, then these tables should be considered sensitive/vulnerable. 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 these MIB modules. It is RECOMMENDED that implementers consider the security features as provided by the SNMPv3 framework "see [RFC3410], 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. 10. Acknowledgments This document extends [TEMIB]. The authors would like to express their gratitude to all those who worked on that earlier MIB document. Thanks also to Tony Zinicola and Jeremy Crossen for their valuable contributions during an early implementation, and to Baktha Muralidharan for his review. Special thanks to Joan Cucchiara and Len Nieman for their help with compilation issues. 11. References 11.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 38] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol Label Switching Architecture", RFC 3031, January 2001. [RFC3209] 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. [RFC3212] Jamoussi, B., Aboul-Magd, O., Andersson, L., Ashwood-Smith, P., Hellstrand, F., Sundell, K., Callon, R., Dantu, R., Wu, L., Doolan, P., Worster, T., Feldman, N., Fredette, A., Girish, M., Gray, E., Halpern, J., Heinanen, J., Kilty, T., Malis, A., and P. Vaananen, "Constraint-Based LSP Setup using LDP", RFC 3212, December 2001. [RFC3291] Daniele, M., Haberman, B., Routhier, S., Schoenwaelder, J., and Braunschweig, TU, "Textual Conventions for Internet Network Addresses", RFC3291, May 2002 [RFC3471] Berger, L. (Editor), "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description", RFC 3471, January 2003. [RFC3472] Ashwood-Smith, P., Berger, L. (Editors), "Generalized MPLS Signaling - CR-LDP Extensions", RFC 3472, January 2003. [RFC3473] Berger, L. (Editor), "Generalized MPLS Signaling - RSVP-TE Extensions", RFC 3473, January 2003. [RFC3477] Kompella, K. and Rekhter, Y., "Signalling Unnumbered Links in RSVP-TE", RFC 3477, January 2003. [RFC3480] Kompella, K., Rekhter, Y. and Kullberg, A., "Signalling Unnumbered Links in CR-LDP", RFC 3480, February 2003. [GMPLSArch] Mannie, E. (Editor), "Generalized Multiprotocol Label Switching (GMPLS) Architecture", draft-many-gmpls-architecture-07.txt, May 2003, work in progress. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 39] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 [GMPLSLSRMIB] Nadeau, T., Srinivasan, C., A., Farrel, A., Hall, T., and Harrison, E., "Generalized Multiprotocol Label Switching (GMPLS) Label Switching Router (LSR) Management Information Base", draft-ietf- ccamp-gmpls-lsr-mib-04.txt, February 2004, work in progress. [GMPLSOSPF] Kompella, K., et al., "OSPF Extensions in Support of Generalized MPLS", draft-ietf-ccamp-ospf-gmpls- extensions-12.txt, October 2003, work in progress. [GMPLSTCMIB] Nadeau, T., Srinivasan, C., Farrel, A., Hall, T., and Harrison, E., "Definitions of Textual Conventions for Multiprotocol Label Switching (MPLS) Management", draft-ietf-ccamp-gmpls-te-mib- 04.txt, February 2004, work in progress. [LSRMIB] Srinivasan, C., Viswanathan, A. and T. Nadeau, "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base", draft-ietf-mpls-lsr-mib-14.txt, November 2003, work in progress. [TCMIB] Nadeau, T., Cucchiara, J. (Editors) "Definitions of Textual Conventions for Multiprotocol Label Switching (MPLS) Management", draft-ietf-mpls-tc-mib-10.txt, November 2003, work in progress. [TEMIB] Nadeau, T., Srinivasan, C, Viswanathan, A., "Multiprotocol Label Switching (MPLS) Traffic Engineering Management Information Base", draft-ietf-mpls-te-mib-14.txt, November 2003, work in progress. 11.2. Informational References [RFC2026] S. Bradner, "The Internet Standards Process -- Revision 3", RFC 2026, October 1996. [RFC3413] Levi, D., Meyer, P., Stewart, B., "SNMP Applications", RFC 3413, December 2002. [RFC3410] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction and Applicability Statements for Internet-Standard Management Framework", RFC 3410, December 2002. [RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks", RFC 3411, December 2002. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 40] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 12. Authors' Addresses Thomas D. Nadeau Cisco Systems, Inc. 300 Apollo Drive Chelmsford, MA 01824 Phone: +1-978-244-3051 Email: tnadeau@cisco.com Cheenu Srinivasan Bloomberg L.P. 499 Park Ave., New York, NY 10022 Phone: +1-212-893-3682 Email: cheenu@bloomberg.net Adrian Farrel Old Dog Consulting Phone: +44-(0)-1978-860944 Email: adrian@olddog.co.uk Tim Hall Data Connection Ltd. 100 Church Street Enfield, Middlesex EN2 6BQ, UK Phone: +44 20 8366 1177 Email: tim.hall@dataconnection.com Ed Harrison Data Connection Ltd. 100 Church Street Enfield, Middlesex EN2 6BQ, UK Phone: +44 20 8366 1177 Email: ed.harrison@dataconnection.com 13. Full Copyright Statement Copyright (C) The Internet Society (2004). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 41] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 14. Intellectual Property Notice The IETF takes no position regarding the validity or scope of any intellectual property 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; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11 [RFC2028]. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director. 15. Changes and Pending Work This section to be removed before the draft progresses to RFC. 15.1. Pending Work The following work items have been identified for this draft. They will be addressed in a future version. - Expand conformance statements to give one for monitoring only, and one for monitoring and control. 15.2. Changes from version 3 to version 4 - Provide a way to configure additional tunnel parameters such as tunnel resources through an arbitrary row pointer. - Update references. - Change reporting IP addresses to use InetAddress syntax - Add support for IF_ID error reporting. - Add a new notification, gmplsTunnelDown, containing cause information. - Clarify relationship to the gmplsLabelTable. - Update descriptive text. - Bring usage of labels in line with latest [LSRMIB]. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 42] Internet Draft draft-ietf-ccamp-gmpls-te-mib-04.txt February 2004 15.3. Changes from version 2 to version 3 - Work on basic compilation issues. - Resolve defaults for objects with syntax BITS. - Update references. - Clarify which objects can be modified when rowStatus and adminStatus are set to active. - Control and reporting of upstream and downstream Notify Recipients. - Add support for control and reporting of GMPLS Administrative Status object. - Update examples. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 43]