CCAMP Working Group Thomas D. Nadeau Internet Draft Cisco Systems, Inc. Expires: May 2004 Cheenu Srinivasan Bloomberg L.P. Adrian Farrel Old Dog Consulting Tim Hall Ed Harrison Data Connection Ltd. November 2003 Generalized Multiprotocol Label Switching (GMPLS) Traffic Engineering Management Information Base draft-ietf-ccamp-gmpls-te-mib-03.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of 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-03.txt November 2003 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. gmplsTunnelPerfTable 5 6. Cross-referencing to the mplsLabelTable 5 7. Example of GMPLS Tunnel Setup 6 8. GMPLS Traffic Engineering MIB Definitions 8 9. Security Considerations 36 10. Acknowledgments 37 11. References 37 11.1. Normative Refenerces 37 11.2. Informational References 39 12. Authors' Addresses 39 13. Full Copyright Statement 40 14. Intellectual Property Notice 41 15. Changes and Pending Work 41 15.1. Pending Work 41 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 Multi-Protocol 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-03.txt November 2003 1.1. Migration Strategy This MIB extends the traffic engineering MIB defined for use with MPLS [TEMIB]. It provides additions for support of GMPLS tunnels. The companion document 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 Label Switch Router MIB [LSRMIB]. 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-03.txt November 2003 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 times 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 (gmplsTunnelPerfTable and gmplsTunnelErrorTable). These tables are described in the subsequent sections. 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. 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 4] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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 list 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. gmplsTunnelPerfTable gmplsTunnelPerfTable provides additional counters to measure the performance of 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 mplsLabelTable 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) use arbitrary indexes to point to entries in the mplsLabelTable to indicate specific label values. Since the primary indexes into gmplsLabelTable are the interface index and a simple 32 bit integer (gmplsLabelIndex), in systems where the nature of a label is well-known, and where the label can safely be encoded as a 32 bit integer (for example a conventional MPLS system), the gmplsLabelTable does not need to be supported in the code implementation and the index pointers to the gmplsLabelTable Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 5] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 (gmplsTunnelHopExplicitLabel, gmplsTunnelHopExpRvrsLabel, gmplsTunnelCHopExplicitLabel, gmplsTunnelCHopExpRvrsLabel, gmplsTunnelARHopExplicitLabel, gmplsTunnelARHopExpRvrsLabel) may be replaced with the direct label values. 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, mplsTunnelPrimaryInstance = 0, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelPathInUse = 1, mplsTunnelRole = head(1), mplsTunnelRowStatus = createAndWait (5), } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 6] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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), gmplsTunnelDirection = bidirectional (1) gmplsTunnelSecondary = false(0), gmplsTunnelPathComp = explicit(2), gmplsTunnelUpNotRecip = 0x7B7B7D01, gmplsTunnelDownNotRecip = 0x00000000, gmplsTunnelAdminStatusFlags = 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-03.txt November 2003 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. In gmplsTunnelHopTable(1,1,1): { gmplsTunnelHopLabelStatuses = forwardPresent(0) +reversePresent(1), gmplsTunnelHopExplicitLabel = gmplsLabelInterface.1, gmplsTunnelHopExpRvrsLabel = gmplsLabelInterface.2 } 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-03.txt November 2003 8. GMPLS Traffic Engineering MIB Definitions GMPLS-TE-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE Integer32, Unsigned32, Counter32, Counter64, IpAddress FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF TruthValue, TimeStamp, DisplayString FROM SNMPv2-TC InetAddressIPv4, InetAddressIPv6 FROM INET-ADDRESS-MIB mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId, mplsTunnelHopListIndex, mplsTunnelHopPathOptionIndex, mplsTunnelHopIndex, mplsTunnelARHopListIndex, mplsTunnelARHopIndex, mplsTunnelCHopListIndex, mplsTunnelCHopIndex, mplsTunnelEntry, mplsTunnelSignallingProto FROM MPLS-TE-STD-MIB gmplsStdMIB FROM GMPLS-TC-STD-MIB ; gmplsTeStdMIB MODULE-IDENTITY LAST-UPDATED "200310300900Z" -- 30 October 2003 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: timhall@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-03.txt November 2003 DESCRIPTION "This MIB module contains managed object definitions for GMPLS Traffic Engineering (TE). Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFCXXX; see the RFC itself for full legal notices." -- Revision history. REVISION "200310300900Z" -- 30 October 2003 09:00:00 GMT DESCRIPTION "Initial revision, published as part of RFC XXXX." ::= { gmplsStdMIB xx } -- Top level components of this MIB. -- Notifications -- no notifications are currently defined. 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-03.txt November 2003 -- 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-03.txt November 2003 gmplsTunnelDirection INTEGER, gmplsTunnelPathComp INTEGER, gmplsTunnelUpNotRecip IpAddress, gmplsTunnelDownNotRecip IpAddress, gmplsTunnelAdminStatusFlags BITS } 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 "1. draft-ietf-mpls-crldp-unnum-06.txt - Signalling Unnumbered Links in CR-LDP, Kompella, K., Rekhter, Y. and Kullberg, A., June 2002. 2. 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-03.txt November 2003 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-03.txt November 2003 REFERENCE "1. Kompella, K., et al., OSPF Extensions in Support of Generalized MPLS, draft-ietf-ccamp-ospf-gmpls- extensions-07.txt, May 2002, 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-03.txt November 2003 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-03.txt November 2003 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-03.txt November 2003 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-03.txt November 2003 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 } -- 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. 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 Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 18] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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, gmplsTunnelHopExplicitLabel Unsigned32, gmplsTunnelHopExpRvrsLabel Unsigned32 } 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 gmplsTunnelHopExplicitLabel and 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 } gmplsTunnelHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the explicit label to use in the explicit route as the forward path label at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 19] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 This variable is only valid for settings of mplsTunnelHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelHopEntry 2 } gmplsTunnelHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the explicit label to use in the explicit route as the reverse path label at this point. This value only has meaning if the reversePresent bit of gmplsTunnelHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelHopExplicitLabel." ::= { gmplsTunnelHopEntry 3 } -- End of gmplsTunnelHopTable -- 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 20] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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." INDEX { mplsTunnelARHopListIndex, mplsTunnelARHopIndex } ::= { gmplsTunnelARHopTable 1 } GmplsTunnelARHopEntry ::= SEQUENCE { gmplsTunnelARHopLabelStatuses BITS, gmplsTunnelARHopExplicitLabel Unsigned32, gmplsTunnelARHopExpRvrsLabel Unsigned32, 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 gmplsTunnelARHopExplicitLabel and gmplsTunnelARHopExpRvrsLabel 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." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 21] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 ::= { gmplsTunnelARHopEntry 1 } gmplsTunnelARHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label in use as the forward path label on the path at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelARHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. This variable is only valid for settings of mplsTunnelARHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelARHopEntry 2 } gmplsTunnelARHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label used in the path as reverse path at this point. This value only has meaning if the reversePresent bit of gmplsTunnelARHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelARHopExplicitLabel." ::= { gmplsTunnelARHopEntry 3 } 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 22] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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 4 } -- End of mplsTunnelARHopTable -- 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." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 23] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 INDEX { mplsTunnelCHopListIndex, mplsTunnelCHopIndex } ::= { gmplsTunnelCHopTable 1 } GmplsTunnelCHopEntry ::= SEQUENCE { gmplsTunnelCHopLabelStatuses BITS, gmplsTunnelCHopExplicitLabel Unsigned32, gmplsTunnelCHopExpRvrsLabel Unsigned32 } gmplsTunnelCHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence indicated by the gmplsTunnelCHopExplicitLabel and gmplsTunnelCHopExpRvrsLabel 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 } gmplsTunnelCHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label to use as the forward path label on the path at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelCHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. This variable is only valid for settings of mplsTunnelCHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelCHopEntry 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 24] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 gmplsTunnelCHopExpRvrsLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label to use in the path as reverse path at this point. This value only has meaning if the reversePresent bit of gmplsTunnelCHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelCHopExplicitLabel." ::= { gmplsTunnelCHopEntry 3 } -- 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 } 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 25] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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 -- 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 26] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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, gmplsTunnelErrorReporterIpv4Addr InetAddressIPv4, gmplsTunnelErrorReporterIpv6Addr InetAddressIPv6, gmplsTunnelErrorCode Unsigned32, gmplsTunnelErrorSubcode Unsigned32, 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 } gmplsTunnelErrorLastTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The time at which the last error occurred. This is Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 27] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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 } gmplsTunnelErrorReporterIpv4Addr OBJECT-TYPE SYNTAX InetAddressIPv4 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 only has meaning if the object gmplsTunnelErrorReporterType has value localIpV4 (2) or remoteIpV4 (3). Otherwise the object should contain the value zero and should be ignored." ::= { gmplsTunnelErrorEntry 4 } gmplsTunnelErrorReporterIpv6Addr OBJECT-TYPE SYNTAX InetAddressIPv6 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 only has meaning if the object Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 28] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 gmplsTunnelErrorReporterType has value localIpV6 (4) or remoteIpV4 (5). Otherwise the object should contain the value zero and should be ignored." ::= { gmplsTunnelErrorEntry 5 } 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 6 } 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 7 } 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 29] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 -- Module compliance. gmplsTeGroups OBJECT IDENTIFIER ::= { gmplsTeConformance 1 } gmplsTeCompliances OBJECT IDENTIFIER ::= { gmplsTeConformance 2 } 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." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 30] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 GROUP gmplsTunnelOptionalGroup DESCRIPTION "Objects in this group are optional." -- 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 31] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 MIN-ACCESS read-only DESCRIPTION "Only explicit (2) is required." 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." -- gmplsTunnelHopTable -- gmplsTunnelHopLabelStatuses has max access read-only OBJECT gmplsTunnelHopExplicitLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExpRvrsLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelARHopTable -- all objects have max access read-only -- 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 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 32] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 -- Units of conformance. gmplsTunnelGroup OBJECT-GROUP OBJECTS { gmplsTunnelDirection, gmplsTunnelReversePerfPackets, gmplsTunnelReversePerfHCPackets, gmplsTunnelReversePerfErrors, gmplsTunnelReversePerfBytes, gmplsTunnelReversePerfHCBytes, gmplsTunnelErrorLastErrorType, gmplsTunnelErrorLastTime, gmplsTunnelErrorReporterType, gmplsTunnelErrorReporterIpv4Addr, gmplsTunnelErrorReporterIpv6Addr, gmplsTunnelErrorCode, gmplsTunnelErrorSubcode, 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 } gmplsTunnelSignaledGroup OBJECT-GROUP OBJECTS { gmplsTunnelAttributes, gmplsTunnelLSPEncoding, gmplsTunnelSwitchingType, gmplsTunnelLinkProtection, gmplsTunnelGPid, gmplsTunnelSecondary, gmplsTunnelPathComp, gmplsTunnelUpNotRecip, gmplsTunnelDownNotRecip, gmplsTunnelAdminStatusFlags, gmplsTunnelHopLabelStatuses, gmplsTunnelHopExplicitLabel, gmplsTunnelHopExpRvrsLabel } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 33] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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 } gmplsTunnelOptionalGroup OBJECT-GROUP OBJECTS { gmplsTunnelARHopLabelStatuses, gmplsTunnelARHopExplicitLabel, gmplsTunnelARHopExpRvrsLabel, gmplsTunnelARHopProtection, gmplsTunnelCHopLabelStatuses, gmplsTunnelCHopExplicitLabel, gmplsTunnelCHopExpRvrsLabel } STATUS current DESCRIPTION "The objects in this group are optional." ::= { gmplsTeGroups 7 } 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 Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 34] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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. 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 35] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 10. Acknowledgments This draft 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. [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." [RFC3471] Berger, L. (Editor), "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description", RFC 3471, January 2003. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 36] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 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", Internet Draft , May 2003, work in progress. [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-03.txt, November 2003, work in progress. [GMPLSOSPF] Kompella, K., et al., "OSPF Extensions in Support of Generalized MPLS", draft-ietf-ccamp-ospf-gmpls- extensions-11.txt, October 2002, 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- 03.txt, November 2003, work in progress. [LSRMIB] Srinivasan, C., Viswanathan, A. and T. Nadeau, "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base", Internet Draft , August 2003, work in progress. [TCMIB] Nadeau, T., Cucchiara, J. (Editors) "Definitions of Textual Conventions for Multiprotocol Label Switching (MPLS) Management", Internet Draft , August 2003, work in progress. [TEMIB] Nadeau, T., Srinivasan, C, Viswanathan, A., "Multiprotocol Label Switching (MPLS) Traffic Engineering Management Information Base", Internet Draft , August 2003, work in progress. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 37] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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. 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: timhall@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 Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 38] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 13. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this 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. 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 39] Internet Draft draft-ietf-ccamp-gmpls-te-mib-03.txt November 2003 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. - Consider a way to expose tunnel head, tunnel tail, and tunnel transit entries through distinct indexing or tables. - Provide support for configuring tunnel resources in GMPLS systems. For example, SONET/SDH or G.709. This might be done through an arbitrary RowPointer to an external MIB. - Crankback request and reported information. - Add support for IF_ID control and error reporting. - Add LSR or interface config for Hellos and restart options. - Update enumerated types in line with latest GMPLS drafts. Examine how these can be managed by IANA. - Resolve ownership of enumerated types that are also defined in GMPLS or routing drafts. These could be owned by IANA, imported from another MIB, or manually kept in step here. If they are not maintained externally then they are likely to diverge and MIB implementations will need to provide mappings. - Update MIB description in section 5. 15.2. 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 40] Network Working Group Thomas D. Nadeau Internet Draft Cisco Systems, Inc. Expires: May 2004 Cheenu Srinivasan Bloomberg L.P. Adrian Farrel Old Dog Consulting Tim Hall Ed Harrison Data Connection Ltd. November 2003 Generalized Multiprotocol Label Switching (GMPLS) Label Switching Router (LSR) Management Information Base draft-ietf-ccamp-gmpls-lsr-mib-03.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC 2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. 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 to configure and/or monitor a Generalized Multiprotocol Label Switching (GMPLS) Label Switching Router (LSRs). Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 1] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 Table of Contents 1. Introduction 2 1.1. Migration Strategy 2 2. Terminology 3 3. The SNMP Management Framework 3 4. Outline 3 4.1. Summary of the GMPLS LSR MIB Module 4 5. Bidirectional LSPs 4 6. Example of LSP Setup 5 7. GMPLS Label Switching Router MIB Definitions 6 8. GMPLS Label MIB Definitions 14 9. Security Considerations 25 10. Acknowledgments 26 11. IANA Considerations 27 11.1. IANA Considerations for GMPLS-LSR-STD-MIB 27 11.2. IANA Considerations FOR GMPLS-LABEL-STD-MIB 27 12. References 27 12.1. Normative References 27 12.2. Informational References 28 13. Authors' Addresses 29 14. Full Copyright Statement 30 15. Intellectual Property Notice 30 16. Changes and Pending Work 31 16.1. Pending Work 31 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] Label Switching Router (LSR). Comments should be made directly 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]. 1.1. Migration Strategy This MIB module extends the Label Switching Router MIB module defined for use with MPLS [LSRMIB]. The only changes made are additions for support of GMPLS or changes that are necessary to support the increased complexity of a GMPLS system. The companion document modeling and managing GMPLS based traffic engineering [GMPLSTEMIB] extends the MPLS TE MIB module [TEMIB] with the same intentions. Textual conventions and OBJECT-IDENTIFIERS are defined in [GMPLSTCMIB] which extends the set of textual conventions originally defined in [TCMIB]. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 2] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 2. Terminology This document uses terminology from the document describing the MPLS architecture [RFC3031] and the GMPLS architecture [GMPLSArch]. A label switched path (LSP) is modeled as a connection consisting of one or more incoming segments (in-segments) and/or one or more outgoing segments (out-segments) at an LSR. The association or interconnection of the in-segments and out-segments is accomplished by using a cross-connect. We use the terminology "connection" and "LSP" interchangeably where the meaning is clear from the context. in-segment This is analogous to a GMPLS label on an interface. out-segment This is analogous to a GMPLS label on an interface. cross-connect This describes the conceptual connection between a set of in-segments and out-segments. Note that either set may be 0; that is, a cross- connect may connect only out-segments together with no in-segments in the case where an LSP is originating on an LSR. 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]. 4. Outline Configuring statically provisioned GMPLS LSPs through an LSR involves the following steps: - Configuring an interface using the MPLS LSR MIB module. - Enabling GMPLS on GMPLS capable interfaces using this MIB module. - Configuring in-segments and out-segments using the MPLS LSR MIB module. - Configuring GMPLS extensions to the in-segments and out-segments using this MIB module. - Setting up the cross-connect table in the MPLS LSR MIB module to associate segments and/or to indicate connection origination and termination. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 3] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 - Optionally setting up labels in the label table in this MIB module if the textual convention MplsLabel is not capable of holding the required label (for example, if the label requires more than 32 bits to encode it), or if the operator wishes to disambiguate GMPLS label types. - Optionally specifying label stack actions in the MPLS LSR MIB module. - Optionally specifying segment traffic parameters in the MPLS LSR MIB module. 4.1. Summary of the GMPLS LSR MIB Module The MIB tables in this MIB module are as follows. - The interface configuration table (gmplsInterfaceTable), which extends mplsInterfaceTable to enable the GMPLS protocol on MPLS- capable interfaces. - The in-segment (gmplsInSegmentTable) and out-segment (gmplsOutSegmentTable) tables extend mplsInSegmentTable and mplsOutSegmentTable to configuring GMPLS-specific parameters for LSP segments at an LSR. - The gmplsLabelTable extends mplsLabelTable and allows Generalized Labels to be defined and managed in a central location. Generalized Labels can be of variable length and have distinct bit-by-bit interpretations according to the use that is made of them. These tables are described in the subsequent sections. 5. Bidirectional LSPs This MIB supports bidirectional LSPs as required for GMPLS. A single value of mplsXCIndex is shared by all of the segments for the entire bidirectional LSP. This facilitates a simple reference from [TEMIB] and [GMPLSTEMIB], and makes fate-sharing more obvious. It is, however, important that the direction of segments is understood to avoid connecting all in-segments to all out-segments. This is achieved by an object in each segment that indicates the direction of the segment with respect to data flow. A segment that is marked as 'forward' carries data from the 'head' of the LSP to the 'tail'. A segment marked as 'reverse' carries data in the reverse direction. Where an LSP is signaled using a conventional signaling protocol, the 'head' of the LSP is the source of the signaling (also known as the ingress) and the 'tail' is the destination (also known as the egress). For manually configured LSPs an arbitrary decision must be made about which segments are 'forward' and which 'reverse'. For Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 4] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 consistency this decision should be made across all LSRs that participate in the LSP by assigning 'head' and 'tail' ends to the LSP. 6. Example of LSP Setup In this section we provide a brief example of using the MIB objects described in section 9 to set up an LSP. While this example is not meant to illustrate every nuance of the MIB, it is intended as an aid to understanding some of the key concepts. It is meant to be read after going through the MIB itself. A prerequisite is an understanding of [LSRMIB]. Suppose that one would like to manually create a best-effort, bi- directional LSP. Assume that, in the forward direction, the LSP enters the LSR via MPLS interface A with ifIndex 12 and exits the LSR via MPLS interface B with ifIndex 13. For the reverse direction, we assume the LSP enters via interface B and leaves via interface A (i.e. the forward and reverse directions use the same bi-directional interfaces). Let us also assume that we do not wish to have a label stack beneath the top label on the outgoing labeled packets. The following example illustrates which rows and corresponding objects might be created to accomplish this. We must first create rows in the gmplsLabelTable corresponding to the labels required for each of the forward and reverse direction in- and out- segments. For the purpose of this example the forward and reverse labels on each interface will be the same, hence we need to create just two rows in the gmplsLabelTable - one for each interface. In gmplsLabelTable: { gmplsLabelInterface = 12, gmplsLabelIndex = 1, gmplsLabelSubindex = 1, gmplsLabelType = gmplsFreeformGeneralizedLabel(3), gmplsLabelMplsLabel = 0, gmplsLabelPortWavelength = 0, gmplsLabelFreeformLength = 8, gmplsLabelFreeform = 0x123456789ABCDEF0 gmplsLabelSonetSdhSignalIndex = 0, gmplsLabelSdhVc = 0, gmplsLabelSdhVcBranch = 0, gmplsLabelSonetSdhBranch = 0, gmplsLabelSonetSdhGroupBranch = 0, gmplsLabelWavebandId = 0, gmplsLabelWavebandStartLabel = 0, gmplsLabelWavebandEndLabel = 0, gmplsLabelRowStatus = createAndGo(4), gmplsLabelStorageType = 0 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 5] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 In gmplsLabelTable: { gmplsLabelInterface = 13, gmplsLabelIndex = 1, gmplsLabelSubindex = 1, gmplsLabelType = gmplsFreeformGeneralizedLabel(3), gmplsLabelMplsLabel = 0, gmplsLabelPortWavelength = 0, gmplsLabelFreeformLength = 8, gmplsLabelFreeform = 0xFEDCBA9876543210 gmplsLabelSonetSdhSignalIndex = 0, gmplsLabelSdhVc = 0, gmplsLabelSdhVcBranch = 0, gmplsLabelSonetSdhBranch = 0, gmplsLabelSonetSdhGroupBranch = 0, gmplsLabelWavebandId = 0, gmplsLabelWavebandStartLabel = 0, gmplsLabelWavebandEndLabel = 0, gmplsLabelRowStatus = createAndGo(4), gmplsLabelStorageType = 0 } We must next create the appropriate in-segment and out-segment entries. These are done in [LSRMIB] using the mplsInSegmentTable and mplsOutSegmentTable. Note that we use a row pointer to the two rows in the gmplsLableTable rather than specifying the labels explicitly in the in- and out-segment tables. Also note that the row status for each row is set to createAndWait(5) to allow corresponding entries in the gmplsInSegmentTable and gmplsOutSegmentTable to be created. For the forward direction. In mplsInSegmentTable: { mplsInSegmentIndex = 0x00000015 mplsInSegmentLabel = 0, -- incoming label in label table mplsInSegmentNPop = 1, mplsInSegmentInterface = 12, -- incoming interface -- RowPointer MUST point to the first accesible column. mplsInSegmentLabelPtr = gmplsLabelInterface.1, mplsInSegmentTrafficParamPtr = 0.0, mplsInSegmentRowStatus = createAndWait(5) } In mplsOutSegmentTable: { mplsOutSegmentIndex = 0x00000012, mplsOutSegmentInterface = 13, -- outgoing interface mplsOutSegmentPushTopLabel = true(1), mplsOutSegmentTopLabel = 0, -- outgoing label in label table -- RowPointer MUST point to the first accesible column. mplsOutSegmentTrafficParamPtr = 0.0, mplsOutSegmentLabelPtr = gmplsLabelInterface.2, mplsOutSegmentRowStatus = createAndWait(5) } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 6] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 For the reverse direction. In mplsInSegmentTable: { mplsInSegmentIndex = 0x00000016 mplsInSegmentLabel = 0, -- incoming label in label table mplsInSegmentNPop = 1, mplsInSegmentInterface = 13, -- incoming interface -- RowPointer MUST point to the first accesible column. mplsInSegmentLabelPtr = gmplsLabelInterface.2, mplsInSegmentTrafficParamPtr = 0.0, mplsInSegmentRowStatus = createAndWait(5) } In mplsOutSegmentTable: { mplsOutSegmentIndex = 0x00000013, mplsOutSegmentInterface = 12, -- outgoing interface mplsOutSegmentPushTopLabel = true(1), mplsOutSegmentTopLabel = 0, -- outgoing label in label table -- RowPointer MUST point to the first accesible column. mplsOutSegmentTrafficParamPtr = 0.0, mplsOutSegmentLabelPtr = gmplsLabelInterface.1, mplsOutSegmentRowStatus = createAndWait(5) } These table entries are extended by entries in gmplsInSegmentTable and gmplsOutSegmentTable. Note that the nature of the 'extends' relationship is that the entry in gmplsInSegmentTable has the same index values as the entry in mplsInSegmentTable. Similarly, the entry in gmplsOutSegmentTable has the same index values as the entry in mplsOutSegmentTable. First for the forward direction: In gmplsInSegmentTable(0x00000015) { gmplsInSegmentDirection = forward (1) } In gmplsOutSegmentTable(0x00000012) { gmplsOutSegmentDirection = forward (1), gmplsOutSegmentTTLDecrement = 1 } Next for the reverse direction: In gmplsInSegmentTable(0x00000016) { gmplsInSegmentDirection = reverse (2) } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 7] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 In gmplsOutSegmentTable(0x00000013) { gmplsOutSegmentDirection = reverse (2), gmplsOutSegmentTTLDecrement = 1 } Next, two cross-connect entries are created in the mplsXCTable of the MPLS LSR MIB, thereby associating the newly created segments together. In mplsXCTable: { mplsXCIndex = 0x01, mplsXCInSegmentIndex = 0x00000015, mplsXCOutSegmentIndex = 0x00000012, mplsXCLspId = 0x0102 -- unique ID mplsXCLabelStackIndex = 0x00, -- only a single -- outgoing label mplsXCRowStatus = createAndGo(4) } In mplsXCTable: { mplsXCIndex = 0x02, mplsXCInSegmentIndex = 0x00000016, mplsXCOutSegmentIndex = 0x00000013, mplsXCLspId = 0x0102 -- unique ID mplsXCLabelStackIndex = 0x00, -- only a single -- outgoing label mplsXCRowStatus = createAndGo(4) } Finally, the in-segments and out-segments are activated. In mplsInSegmentTable(0x00000015): { mplsInSegmentRowStatus = active(1) } In mplsInSegmentTable(0x00000016): { mplsInSegmentRowStatus = active(1) } In mplsOutSegmentTable(0x00000012): { mplsOutSegmentRowStatus = active(1) } In mplsOutSegmentTable(0x00000013): { mplsOutSegmentRowStatus = active(1) } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 8] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 7. GMPLS Label Switching Router MIB Definitions GMPLS-LSR-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF GmplsSegmentDirection, gmplsStdMIB FROM GMPLS-TC-STD-MIB mplsInterfaceIndex, mplsInSegmentIndex, mplsOutSegmentIndex FROM MPLS-LSR-STD-MIB ; gmplsLsrStdMIB MODULE-IDENTITY LAST-UPDATED "200310300900Z" -- 30 October 2003 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: timhall@dataconnection.com Comments about this document should be emailed direct to the CCAMP working group mailing list at ccamp@ops.ietf.org" DESCRIPTION "This MIB module contains managed object definitions for the Generalized Multiprotocol Label Switching (GMPLS) Router as defined in: Ashwood-Smith et al., Generalized Multiprotocol Label Switching (GMPLS) Architecture, Internet Draft , March 2001, work in progress. Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFCXXX; see the RFC itself for full legal notices." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 9] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 -- Revision history. REVISION "200310300900Z" -- 30 October 2003 09:00:00 GMT DESCRIPTION "Initial revision, published as part of RFC XXXX." ::= { gmplsStdMIB xx } -- Top level components of this MIB module. -- Notifications -- no notifications are currently defined. gmplsLsrNotifications OBJECT IDENTIFIER ::= { gmplsLsrStdMIB 0 } -- Tables, Scalars gmplsLsrObjects OBJECT IDENTIFIER ::= { gmplsLsrStdMIB 1 } -- Conformance gmplsLsrConformance OBJECT IDENTIFIER ::= { gmplsLsrStdMIB 2 } -- GMPLS Interface Table. gmplsInterfaceTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies per-interface GMPLS capability and associated information. It extends the information in mplsInterfaceTable." ::= { gmplsLsrObjects 1 } gmplsInterfaceEntry OBJECT-TYPE SYNTAX GmplsInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in this table is created automatically by an LSR for every interface capable of supporting GMPLS and which is configured to do so. A conceptual row in this table will exist if and only if a corresponding entry in mplsInterfaceTable exists, and a corresponding entry in ifTable exists with ifType = mpls(166). If the associated entry in ifTable is operationally disabled (thus removing the GMPLS capabilities on the interface) or the entry in mplsInterfaceTable is deleted, the corresponding entry in this table MUST be deleted shortly thereafter. The indexing is the same as that for mplsInterfaceTable. Thus, the entry with index 0 represents the per-platform label space and contains parameters that apply to all interfaces that participate in the per-platform label space." INDEX { mplsInterfaceIndex } ::= { gmplsInterfaceTable 1 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 10] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 GmplsInterfaceEntry ::= SEQUENCE { gmplsInterfaceSignalingCaps BITS } gmplsInterfaceSignalingCaps OBJECT-TYPE SYNTAX BITS { unknown (0), rsvpGmpls (1), crldpGmpls (2), -- note the use of CR-LDP is deprecated otherGmpls (3) } MAX-ACCESS read-create STATUS current DESCRIPTION "Defines the signaling capabilities on this interface. Multiple bits may legitimately be set at once. Setting no bits implies that GMPLS signaling cannot be performed on this interface and all LSPs must be manually provisioned." ::= { gmplsInterfaceEntry 1 } -- End of gmplsInterfaceTable -- In-segment table. gmplsInSegmentTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsInSegmentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table extends the mplsInSegmentTable to provide GMPLS-specific information about incoming segments to an LSR." ::= { gmplsLsrObjects 2 } gmplsInSegmentEntry OBJECT-TYPE SYNTAX GmplsInSegmentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table extends the representation of an incoming segment represented by an entry in mplsInSegmentTable. An entry can be created by a network administrator or an SNMP agent, or a GMPLS signaling protocol. Note that the storage type for this entry SHOULD be inherited from the corresponding entry in the mplsInSegmentTable given by the value of the mplsInSegmentStorageType object." INDEX { mplsInSegmentIndex } ::= { gmplsInSegmentTable 1 } GmplsInSegmentEntry ::= SEQUENCE { gmplsInSegmentDirection GmplsSegmentDirection } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 11] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 gmplsInSegmentDirection OBJECT-TYPE SYNTAX GmplsSegmentDirection MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the direction of data flow on this segment. This object cannot be modified if mplsInSegmentRowStatus for the associated entry in the mplsInSegmentTable is active(1)." DEFVAL { forward } ::= { gmplsInSegmentEntry 1 } -- End of gmplsInSegmentTable -- Out-segment table. gmplsOutSegmentTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsOutSegmentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table extends the mplsOutSegmentTable to provide GMPLS-specific information about outgoing segments from an LSR." ::= { gmplsLsrObjects 3 } gmplsOutSegmentEntry OBJECT-TYPE SYNTAX GmplsOutSegmentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table extends the representation of an outgoing segment represented by an entry in mplsOutSegmentTable. An entry can be created by a network administrator or an SNMP agent, or a GMPLS signaling protocol. Note that the storage type for this entry SHOULD be inherited from the corresponding entry in the mplsOutSegmentTable given by the value of the mplsOutSegmentStorageType object." INDEX { mplsOutSegmentIndex } ::= { gmplsOutSegmentTable 1 } GmplsOutSegmentEntry ::= SEQUENCE { gmplsOutSegmentDirection GmplsSegmentDirection, gmplsOutSegmentTTLDecrement Unsigned32 } gmplsOutSegmentDirection OBJECT-TYPE SYNTAX GmplsSegmentDirection MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the direction of data flow on this segment. This object cannot be modified if mplsOutSegmentRowStatus for the associated entry in the mplsOutSegmentTable is active(1)." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 12] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 DEFVAL { forward } ::= { gmplsOutSegmentEntry 1 } gmplsOutSegmentTTLDecrement OBJECT-TYPE SYNTAX Unsigned32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the amount by which to decrement the TTL of any payload packets forwarded on this segment if per-hop decrementing is being done. A value of zero indicates that no decrement should be made or that per-hop decrementing is not in force. See the gmplsTunnelTTLDecrement object in the gmplsTunnelTable of [GMPLSTEMIB] for a value by which to decrement the TTL for the whole of a tunnel. This object cannot be modified if mplsOutSegmentRowStatus for the associated entry in the mplsOutSegmentTable is active(1)." DEFVAL { 0 } ::= { gmplsOutSegmentEntry 2 } -- End of gmplsOutSegmentTable -- Module compliance. gmplsLsrGroups OBJECT IDENTIFIER ::= { gmplsLsrConformance 1 } gmplsLsrCompliances OBJECT IDENTIFIER ::= { gmplsLsrConformance 2 } -- Compliance requirement for fully compliant implementations. gmplsLsrModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that provide full support for GMPLS-LSR-STD-MIB." MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. MANDATORY-GROUPS { ifGeneralInformationGroup, ifCounterDiscontinuityGroup } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 13] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 MODULE MPLS-LSR-STD-MIB -- The MPLS LSR MIB MANDATORY-GROUPS { mplsInterfaceGroup, mplsInSegmentGroup, mplsOutSegmentGroup, mplsXCGroup, mplsPerfGroup, mplsLsrNotificationGroup } MODULE -- this module MANDATORY-GROUPS { gmplsInterfaceGroup, gmplsInSegmentGroup, gmplsOutSegmentGroup } -- gmplsInSegmentTable OBJECT gmplsInSegmentDirection SYNTAX GmplsSegmentDirection MIN-ACCESS read-write DESCRIPTION "Only forward(1) needs to be supported by implementations that only support unidirectional LSPs." -- gmplsOutSegmentTable OBJECT gmplsOutSegmentDirection SYNTAX GmplsSegmentDirection MIN-ACCESS read-write DESCRIPTION "Only forward(1) needs to be supported by implementations that only support unidirectional LSPs." OBJECT gmplsOutSegmentTTLDecrement SYNTAX Unsigned32 (0..255) MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { gmplsLsrCompliances 1 } -- Compliance requirement for implementations that provide read-only -- access. gmplsLsrModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that only provide read-only support for GMPLS-LSR-STD-MIB. Such devices can then be monitored but cannot be configured using this MIB modules." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 14] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 MODULE IF-MIB -- The interfaces Group MIB, RFC 2863 MANDATORY-GROUPS { ifGeneralInformationGroup, ifCounterDiscontinuityGroup } MODULE MPLS-LSR-STD-MIB MANDATORY-GROUPS { mplsInterfaceGroup, mplsInSegmentGroup, mplsOutSegmentGroup, mplsXCGroup, mplsPerfGroup } MODULE -- this module MANDATORY-GROUPS { gmplsInterfaceGroup, gmplsInSegmentGroup, gmplsOutSegmentGroup } -- gmplsInterfaceGroup OBJECT gmplsInterfaceSignalingCaps SYNTAX BITS { unknown (0), rsvpGmpls (1), crldpGmpls (2), otherGmpls (3) } MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsInSegmentTable OBJECT gmplsInSegmentDirection SYNTAX GmplsSegmentDirection MIN-ACCESS read-only DESCRIPTION "Write access is not required. Only forward(1) needs to be supported by implementations that only support unidirectional LSPs." -- gmplsOutSegmentTable OBJECT gmplsOutSegmentDirection SYNTAX GmplsSegmentDirection MIN-ACCESS read-only DESCRIPTION "Write access is not required. Only forward(1) needs to be supported by implementations that only support unidirectional LSPs." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 15] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 OBJECT gmplsOutSegmentTTLDecrement SYNTAX Unsigned32 (0..255) MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { gmplsLsrCompliances 2 } -- Units of conformance. gmplsInterfaceGroup OBJECT-GROUP OBJECTS { gmplsInterfaceSignalingCaps } STATUS current DESCRIPTION "Collection of objects needed for GMPLS interface configuration and performance information." ::= { gmplsLsrGroups 1 } gmplsInSegmentGroup OBJECT-GROUP OBJECTS { gmplsInSegmentDirection } STATUS current DESCRIPTION "Collection of objects needed to implement a GMPLS in-segment." ::= { gmplsLsrGroups 2 } gmplsOutSegmentGroup OBJECT-GROUP OBJECTS { gmplsOutSegmentDirection, gmplsOutSegmentTTLDecrement } STATUS current DESCRIPTION "Collection of objects needed to implement a GMPLS out-segment." ::= { gmplsLsrGroups 3 } END 8. GMPLS Label MIB Definitions GMPLS-LABEL-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Integer32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF RowStatus, StorageType FROM SNMPv2-TC Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 16] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 InterfaceIndexOrZero FROM IF-MIB IndexIntegerNextFree FROM DIFFSERV-MIB MplsLabel FROM MPLS-TC-STD-MIB GmplsGeneralizedLabelTypes, GmplsFreeformLabel, gmplsStdMIB FROM GMPLS-TC-STD-MIB ; gmplsLabelStdMIB MODULE-IDENTITY LAST-UPDATED "200310300900Z" -- 30 October 2003 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: timhall@dataconnection.com Comments about this document should be emailed direct to the CCAMP working group mailing list at ccamp@ops.ietf.org" DESCRIPTION "This MIB module contains managed object definitions for labels within GMPLS systems." -- Revision history. REVISION "200310300900Z" -- 30 October 2003 09:00:00 GMT DESCRIPTION "Initial revision, published as part of RFC XXXX." ::= { gmplsStdMIB xx } -- Top level components of this MIB module. -- Notifications -- no notifications are currently defined. gmplsLabelNotifications OBJECT IDENTIFIER ::= { gmplsLabelStdMIB 0 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 17] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 -- Tables, Scalars gmplsLabelObjects OBJECT IDENTIFIER ::= { gmplsLabelStdMIB 1 } -- Conformance gmplsLabelConformance OBJECT IDENTIFIER ::= { gmplsLabelStdMIB 2 } -- GMPLS Label Table. gmplsLabelIndexNext OBJECT-TYPE SYNTAX IndexIntegerNextFree MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains an unused value for gmplsLabelIndex, or a zero to indicate that no unused value exists or is available. An management application wishing to create a row in the gmplsLabelTable may read this object and then attempt to create a row in the table. If row creation fails (because another application has already created a row with the supplied index) the management application should read this object again to get a new index value. When a row is created in the gmplsLabelTable with the gmplsLabelIndex value held by this object, an implementation MUST change the value in this object. " ::= { gmplsLabelObjects 1 } gmplsLabelTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsLabelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table of GMPLS Labels. This table allows the representation of the more complex label forms required for GMPLS which cannot be held within the textual convention MplsLabel. That is labels that cannot be encoded within 32 bits. It is, nevertheless also capable of holding 32 bit labels or regular MPLS labels if desired. Each entry in this table represents an individual GMPLS label value. Labels in the tables in other MIBs are referred to using row pointer into this table. The indexing of this table provides for arbitrary indexing and also for concatenation of labels." ::= { gmplsLabelObjects 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 18] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 gmplsLabelEntry OBJECT-TYPE SYNTAX GmplsLabelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents a single label value. There are three indexes into the table. - The interface index may be helpful to distinguish which labels are in use on which interfaces or to handle cases where there are a very large number of labels in use in the system. When label representation is desired to apply to the whole system or when it is not important to distinguish labels by their interfaces, this index MAY be set to zero. - The label index provides a way of identifying the label. - The label sub-index is only used for concatenated labels. It identifies each component label. When non-concatenated labels are used, this index SHOULD be set to zero. A storage type object is supplied to control the storage type for each entry, but implementations should note that the storage type of conceptual rows in other tables that include row pointers to an entry in this table SHOULD dictate the storage type of the rows in this table where the row in the other table is more persistent." INDEX { gmplsLabelInterface, gmplsLabelIndex, gmplsLabelSubindex } ::= { gmplsLabelTable 1 } GmplsLabelEntry ::= SEQUENCE { gmplsLabelInterface InterfaceIndexOrZero, gmplsLabelIndex Unsigned32, gmplsLabelSubindex Unsigned32, gmplsLabelType GmplsGeneralizedLabelTypes, gmplsLabelMplsLabel MplsLabel, gmplsLabelPortWavelength Unsigned32, gmplsLabelFreeformLength Integer32, gmplsLabelFreeform GmplsFreeformLabel, gmplsLabelSonetSdhSignalIndex Integer32, gmplsLabelSdhVc Integer32, gmplsLabelSdhVcBranch Integer32, gmplsLabelSonetSdhBranch Integer32, gmplsLabelSonetSdhGroupBranch Integer32, gmplsLabelWavebandId Unsigned32, gmplsLabelWavebandStart Unsigned32, gmplsLabelWavebandEnd Unsigned32, gmplsLabelRowStatus RowStatus, gmplsLabelStorageType StorageType } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 19] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 gmplsLabelInterface OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS not-accessible STATUS current DESCRIPTION "The interface on which this label is used. If the label has or could have applicability across the whole system, this object SHOULD be set to zero." ::= { gmplsLabelEntry 1 } gmplsLabelIndex OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An arbitrary index into the table to identify a label. Note that implementations that are representing 32 bit labels within this table MAY choose to align this index with the value of the label, but should be aware of the implications of sparsely populated tables. A management application may read the gmplsLabelIndexNext object to find a suitable value for this object." ::= { gmplsLabelEntry 2 } gmplsLabelSubindex OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "In conjunction with gmplsLabelInterface and gmplsLabelIndex, this object uniquely identifies this row. This sub-index allows a single GMPLS label to be defined as a concatenation of labels. This is particularly useful in TDM. The ordering of sub-labels is strict with the sub- label with lowest gmplsLabelSubindex appearing first. Note that all sub-labels of a single GMPLS label must share the same gmplsLabelInterface and gmplsLabelIndex values. For labels that are not composed of concatenated sub-labels, this value SHOULD be set to zero." ::= { gmplsLabelEntry 3 } gmplsLabelType OBJECT-TYPE SYNTAX GmplsGeneralizedLabelTypes MAX-ACCESS read-create STATUS current DESCRIPTION "Identifies the type of this label. Note that this object does not determine whether MPLS or GMPLS signaling is in use: a value of gmplsMplsLabel (1) denotes that a 23 bit MPLS packet label is present, but does not describe whether this is signaled using MPLS or GMPLS. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 20] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 The value of this object helps determine which of the following objects are valid. This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 4 } gmplsLabelMplsLabel OBJECT-TYPE SYNTAX MplsLabel MAX-ACCESS read-create STATUS current DESCRIPTION "The value of an MPLS label (that is a packet label) if this table is used to store it. This may be used in MPLS systems even though the label values can be adequately stored in the MPLS MIB modules. Further, in mixed MPLS and GMPLS systems it may be advantageous to store all labels in a single label table. Lastly, in GMPLS systems where packet labels are used (that is in systems that use GMPLS signaling and GMPLS labels for packet switching) it may be desirable to use this table. This object is only valid if gmplsLabelType is set to gmplsMplsLabel (1). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 6 } gmplsLabelPortWavelength OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The value of a Port or Wavelength Label when carried as a Generalized Label. Only valid if gmplsLabelType is set to gmplsPortWavelengthLabel(2). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 7 } gmplsLabelFreeformLength OBJECT-TYPE SYNTAX Integer32 (1..64) MAX-ACCESS read-create STATUS current DESCRIPTION "The length of a freeform Generalized Label indicated in the gmplsFreeformLabel object. Only valid if gmplsLabelType is set to gmplsFreeformGeneralizedLabel(3). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 8 } gmplsLabelFreeform OBJECT-TYPE SYNTAX GmplsFreeformLabel MAX-ACCESS read-create STATUS current Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 21] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 DESCRIPTION "The value of a freeform Generalized Label that does not conform to one of the standardized label encoding or that an implementation chooses to represent as an octet string without further decoding. The length of this object is given by the value of gmplsFreeformLength. Only valid if gmplsLabelType is set to gmplsFreeformGeneralizedLabel(3). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 9 } gmplsLabelSonetSdhSignalIndex OBJECT-TYPE SYNTAX Integer32 (0..4095) MAX-ACCESS read-create STATUS current DESCRIPTION "The Signal Index value (S) of a SONET or SDH Generalized Label. Zero indicates that this field is not significant. Only valid if gmplsLabelType is set to gmplsSonetLabel(4) or gmplsSdhLabel(5). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 10 } gmplsLabelSdhVc OBJECT-TYPE SYNTAX Integer32 (0..15) MAX-ACCESS read-create STATUS current DESCRIPTION "The VC Indicator (U) of an SDH Generalized Label. Zero indicates that this field is non-significant. Only valid if gmplsLabelType is set to gmplsSdhLabel(5). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 11 } gmplsLabelSdhVcBranch OBJECT-TYPE SYNTAX Integer32 (0..15) MAX-ACCESS read-create STATUS current DESCRIPTION "The VC Branch Indicator (K) of an SDH Generalized Label. Zero indicates that this field is non- significant. Only valid if gmplsLabelType is set to gmplsSdhLabel(5). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 12 } gmplsLabelSonetSdhBranch OBJECT-TYPE SYNTAX Integer32 (0..15) MAX-ACCESS read-create STATUS current Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 22] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 DESCRIPTION "The Branch Indicator (L) of a SONET or SDH Generalized Label. Zero indicates that this field is non-significant. Only valid gmplsLabelType is set to gmplsSonetLabel(4) or gmplsSdhLabel(5). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 13 } gmplsLabelSonetSdhGroupBranch OBJECT-TYPE SYNTAX Integer32 (0..15) MAX-ACCESS read-create STATUS current DESCRIPTION "The Group Branch Indicator (M) of a SONET or SDH Generalized Label. Zero indicates that this field is non-significant. Only valid if gmplsLabelType is set to gmplsSonetLabel(4) or gmplsSdhLabel(5). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 14 } gmplsLabelWavebandId OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The waveband identifier component of a waveband label. Only valid if gmplsLabelType is set to gmplsWavebandLabel(6). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 15 } gmplsLabelWavebandStart OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The starting label component of a waveband label. Only valid if gmplsLabelType is set to gmplsWavebandLabel(6). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 16 } gmplsLabelWavebandEnd OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The end label component of a waveband label. Only valid if gmplsLabelType is set to gmplsWavebandLabel(6). This object cannot be modified if gmplsLabelRowStatus is active(1)." ::= { gmplsLabelEntry 17 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 23] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 gmplsLabelRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. When a row in this table has a row in the active(1) state, no objects in this row can be modified except the gmplsLabelRowStatus and gmplsLabelStorageType." ::= { gmplsLabelEntry 18 } gmplsLabelStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This variable indicates the storage type for this object. The agent MUST ensure that this object's value remains consistent with the storage type of any rows in other tables that contain pointers to this row. In particular, the storage type of this row must be at least as permanent as that of any row that point to it. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." REFERENCE "See RFC2579." DEFVAL { volatile } ::= { gmplsLabelEntry 19 } -- End of GMPLS Label Table -- Module compliance. gmplsLabelGroups OBJECT IDENTIFIER ::= { gmplsLabelConformance 1 } gmplsLabelCompliances OBJECT IDENTIFIER ::= { gmplsLabelConformance 2 } gmplsLabelModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that support the GMPLS Label MIB module." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 24] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 MODULE -- this module -- The mandatory groups have to be implemented by -- LSRs claiming support for this MIB module. This MIB module is, -- however, not mandatory for a working implementation of a GMPLS -- LSR with full MIB support if the GMPLS labels in use can be -- represented within a 32 bit quantity. MANDATORY-GROUPS { gmplsLabelTableGroup } -- Units of conformance. GROUP gmplsLabelTableGroup DESCRIPTION "This group is mandatory for devices which support the gmplsLabelTable." GROUP gmplsLabelPacketGroup DESCRIPTION "This group extends gmplsLabelTableGroup for implementations that support packet labels." GROUP gmplsLabelPortWavelengthGroup DESCRIPTION "This group extends gmplsLabelTableGroup for implementations that support port and wavelength labels." GROUP gmplsLabelFreeformGroup DESCRIPTION "This group extends gmplsLabelTableGroup for implementations that support freeform labels." GROUP gmplsLabelSonetSdhGroup DESCRIPTION "This group extends gmplsLabelTableGroup for implementations that support SONET or SDH labels." GROUP gmplsLabelWavebandGroup DESCRIPTION "This group extends gmplsLabelTableGroup for implementations that support Waveband labels." -- gmplsLabelTable OBJECT gmplsLabelType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelMplsLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 25] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 OBJECT gmplsLabelPortWavelength MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelFreeformLength MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelFreeform MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelSonetSdhSignalIndex MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelSdhVc MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelSdhVcBranch MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelSonetSdhBranch MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelSonetSdhGroupBranch MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelWavebandId MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelWavebandStart MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsLabelWavebandEnd MIN-ACCESS read-only DESCRIPTION "Write access is not required." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 26] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 OBJECT gmplsLabelRowStatus SYNTAX RowStatus { active(1), notInService(2) } WRITE-SYNTAX RowStatus { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "Support for notInService, createAndWait and notReady is not required." OBJECT gmplsLabelStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { gmplsLabelCompliances 1 } -- Units of conformance. gmplsLabelTableGroup OBJECT-GROUP OBJECTS { gmplsLabelIndexNext, gmplsLabelType, gmplsLabelRowStatus, gmplsLabelStorageType } STATUS current DESCRIPTION "Necessary, but not sufficient, set of objects to implement label table support. In addition, depending on the type of labels supported (for example, wavelength labels), the following other groups defined below are mandatory: gmplsLabelPacketGroup and/or gmplsLabelPortWavelengthGroup and/or gmplsLabelFreeformGroup and/or gmplsLabelSonetSdhGroup." ::= { gmplsLabelGroups 1 } gmplsLabelPacketGroup OBJECT-GROUP OBJECTS { gmplsLabelMplsLabel } STATUS current DESCRIPTION "Object needed to implement Packet (MPLS) labels." ::= { gmplsLabelGroups 2 } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 27] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 gmplsLabelPortWavelengthGroup OBJECT-GROUP OBJECTS { gmplsLabelPortWavelength } STATUS current DESCRIPTION "Object needed to implement Port and Wavelength labels." ::= { gmplsLabelGroups 3 } gmplsLabelFreeformGroup OBJECT-GROUP OBJECTS { gmplsLabelFreeformLength, gmplsLabelFreeform } STATUS current DESCRIPTION "Object needed to implement Freeform labels." ::= { gmplsLabelGroups 4 } gmplsLabelSonetSdhGroup OBJECT-GROUP OBJECTS { gmplsLabelSonetSdhSignalIndex, gmplsLabelSdhVc, gmplsLabelSdhVcBranch, gmplsLabelSonetSdhBranch, gmplsLabelSonetSdhGroupBranch } STATUS current DESCRIPTION "Object needed to implement SONET and SDH labels." ::= { gmplsLabelGroups 5 } gmplsLabelWavebandGroup OBJECT-GROUP OBJECTS { gmplsLabelWavebandId, gmplsLabelWavebandStart, gmplsLabelWavebandEnd } STATUS current DESCRIPTION "Object needed to implement Waveband labels." ::= { gmplsLabelGroups 6 } END 9. Security Considerations It is clear that the MIB modules described in this document in association with the MPLS-LSR-STD-MIB are potentially useful for monitoring of GMPLS LSRs. 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 Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 28] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 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 gmplsInterfaceTable, gmplsInSegmentTable, gmplsOutSegmentTable and gmplsLabelTable collectively contain objects to provision GMPLS interfaces, LSPs and their associated parameters on a Label Switching Router (LSR). Unauthorized write access to objects in these tables, could result in disruption of traffic on the network. This is especially true if an LSP 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. 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 gmplsInterfaceTable, gmplsInSegmentTable, gmplsOutSegmentTable and gmplsLabelTable collectively show the LSP network topology and its capabilities. 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 draft extends [LSRMIB]. The authors would like to express their gratitude to all those who worked on that earlier MIB document. The authors would like to express their thanks to Dan Joyle for his careful review and comments on early versions of the Label Table. Special thanks to Joan Cucchiara and Len Nieman for their help with compilation issues. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 29] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 11. IANA Considerations MPLS related standards track MIB modules are rooted under the mplsStdMIB subtree. One of the MIB modules contained in this document extends tables contained in MPLS MIB modules. As requested in requested in the GMPLS-TC-STD-MIB [GMPLSTCMIB] the two MIB modules contained in this document should be placed in the mplsStdMIB subtree as well. New assignments can only be made via a Standards Action as specified in [RFC2434]. 11.1. IANA Considerations for GMPLS-LSR-STD-MIB The IANA is requested to assign { mplsStdMIB xx } to the GMPLS-LSR-STD-MIB module specified in this document. 11.2. IANA Considerations for GMPLS-LABEL-STD-MIB The IANA is requested to assign { mplsStdMIB xx } to the GMPLS-LABEL-STD-MIB module specified in this document. 12. References 12.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC2863] McCloghrie, K. and F. Kastenholtz, "The Interfaces Group MIB", RFC 2863, June 2000. [GMPLSArch] Mannie, E. (Editor), "Generalized Multiprotocol Label Switching (GMPLS) Architecture", Internet Draft , May 2003, work in progress. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 30] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 [GMPLSSonetSDH] Mannie, E., Papadimitriou, D. (Editors), "Generalized Multi-Protocol Label Switching Extensions for SONET and SDH Control", Internet Draft , February 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- 03.txt, November 2003, work in progress. [GMPLSTEMIB] Nadeau, T., Srinivasan, C., Farrel, A., Hall, T., and Harrison, E., "Generalized Multiprotocol Label Switching (GMPLS) Traffic Engineering Management Information Base", draft-ietf-ccamp-gmpls-te-mib- 03.txt, November 2003, work in progress. [TCMIB] Nadeau, T., Cucchiara, J. (Editors) "Definitions of Textual Conventions for Multiprotocol Label Switching (MPLS) Management", Internet Draft , August 2003, work in progress. [LSRMIB] Srinivasan, C., Viswanathan, A. and T. Nadeau, "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base", Internet Draft , August 2003, work in progress. 12.2. Informational References [RFC2026] S. Bradner, "The Internet Standards Process -- Revision 3", RFC 2026, October 1996. [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP: 26, RFC 2434, October 1998. [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." Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 31] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 [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. [RFC3413] Levi, D., Meyer, P., Stewart, B., "SNMP Applications", RFC 3413, December 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. [TEMIB] Nadeau, T., Srinivasan, C, Viswanathan, A., "Multiprotocol Label Switching (MPLS) Traffic Engineering Management Information Base", Internet Draft , August 2003, work in progress. 13. 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: timhall@dataconnection.com Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 32] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 Ed Harrison Data Connection Ltd. 100 Church Street Enfield, Middlesex, EN2 6BQ, UK Phone: +44 20 8366 1177 Email: ed.harrison@dataconnection.com 14. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this 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. 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. 15. 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 33] Internet Draft draft-ietf-ccamp-gmpls-lsr-mib-03.txt November 2003 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. 16. Changes and Pending Work This section must be removed before the draft progresses to RFC. 16.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. - Provide support for monitoring tunnel resources in GMPLS systems. For example, SONET/SDH or G.709. This might be done through an arbitrary RowPointer to an external MIB. - Extend the performance tables from the MPLS-LSR-MIB for technology-specific GMPLS LSPs. - Determine whether the 'discriminated union' in the Label Table is good MIB. 16.1. Changes from version 2 to version 3 - Work on basic compilation issues. - Provide a next index object to supply the next available arbitrary index into the Label Table. - Update references. - Update examples. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 34] Network Working Group Thomas D. Nadeau Internet Draft Cisco Systems, Inc. Expires: May 2004 Cheenu Srinivasan Bloomberg L.P. Adrian Farrel Old Dog Consulting Tim Hall Ed Harrison Data Connection Ltd. November 2003 Definitions of Textual Conventions for Generalized Multi-Protocol Label Switching (GMPLS) Management draft-ietf-ccamp-gmpls-tc-mib-03.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC 2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. Abstract This document defines a Management Information Base (MIB) module which contains Textual Conventions to represent commonly used Generalized Multi-Protocol Label Switching (GMPLS) management information. The intent is that these TEXTUAL CONVENTIONS (TCs) will be imported and used in GMPLS related MIB modules that would otherwise define their own representations. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 1] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 Table of Contents 1. Introduction 2 2. The SNMP Management Framework 2 3. GMPLS Textual Conventions MIB Definitions 3 4. Security Considerations 5 5. IANA Considerations 5 6. References 5 6.1. Normative References 5 6.2. Informational References 6 7. Authors' Addresses 7 8. Full Copyright Statement 7 9. Intellectual Property Notice 8 1. Introduction This document defines a MIB module which contains Textual Conventions for Generalized Multi-Protocol Label Switching (GMPLS) networks. These Textual Conventions should be imported by MIB modules which manage GMPLS networks. This MIB module supplements the MIB module in [TCMIB] that defines Textual Conventions for Multiprotocol Label Switching (MPLS) Management. [TCMIB] may continue to be used without this MIB module in networks that support only MPLS. 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 [RFC2119]. Comments should be made directly to the CCAMP mailing list at ccamp@ops.ietf.org. For an introduction to the concepts of GMPLS, see [GMPLSArch]. 2. 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 2] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 3. GMPLS Textual Conventions MIB Definitions GMPLS-TC-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY FROM SNMPv2-SMI transmission FROM SNMPv2-SMI TEXTUAL-CONVENTION FROM SNMPv2-TC ; gmplsTCStdMIB MODULE-IDENTITY LAST-UPDATED "200310300900Z" -- 30 October 2003 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: timhall@dataconnection.com Comments about this document should be emailed direct to the CCAMP working group mailing list at ccamp@ops.ietf.org" DESCRIPTION "Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFCXXX; see the RFC itself for full legal notices. This MIB module defines Textual Conventions for concepts used in Generalized Multi-Protocol Label Switching (GMPLS) networks." -- Revision history. REVISION "200310300900Z" -- 30 October 2003 09:00:00 GMT DESCRIPTION "Initial version published as part of RFC XXXX." -- Please see the IANA Considerations Section. -- The requested gmplsStdMIB subId is xx, i.e. ::= { gmplsStdMIB xx } Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 3] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 gmplsStdMIB OBJECT IDENTIFIER -- This object identifier needs to be assigned by IANA. -- Since mpls has been assigned an ifType of 166 we recommend -- that this OID be 166 as well, i.e. ::= { transmission XXX } -- Textual Conventions (sorted alphabetically). GmplsFreeformLabel ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This value represents a freeform generalized MPLS Label. This can be used to represent label types which are not standard in the drafts. It may also be used by systems that do not wish to represent the labels using the specific label types." SYNTAX OCTET STRING (SIZE (0..64)) GmplsGeneralizedLabelTypes ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Determines the interpretation that should be applied to a label." SYNTAX INTEGER { gmplsMplsLabel(1), gmplsPortWavelengthLabel(2), gmplsFreeformGeneralizedLabel(3), gmplsSonetLabel(4), gmplsSdhLabel(5), gmplsWavebandLabel(6) } GmplsSegmentDirection ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The direction of data flow on an LSP segment with respect to the head of the LSP. Where an LSP is signaled using a conventional signaling protocol, the 'head' of the LSP is the source of the signaling (also known as the ingress) and the 'tail' is the destination (also known as the egress). For manually configured LSPs an arbitrary decision must be made about which LER is the 'head'." SYNTAX INTEGER { forward(1), reverse(2) } END Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 4] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 4. Security Considerations This module does not define any management objects. Instead, it defines a set of textual conventions which may be used by other GMPLS MIB modules to define management objects. Meaningful security considerations can only be written in the MIB modules that define management objects. Therefore, this document has no impact on the security of the Internet. 5. IANA Considerations IANA is requested to make a MIB OID assignment under the transmission branch, that is, assign the gmplsStdMIB under { transmission 166 }. This sub-id is requested because 166 is the ifType for mpls(166) and is available under transmission. In the future, GMPLS related standards track MIB modules should be rooted under the mplsStdMIB (sic) subtree. IANA is requested to manage that namespace. New assignments can only be made via a Standards Action as specified in [RFC2434]. This document also requests IANA to assign { gmplsStdMIB xx } to the GMPLS-TC-STD-MIB specified in this document. 6. References 6.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC3471] Berger, L. (Editor), "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description", RFC 3471, January 2003. [GMPLSArch] Mannie, E. (Editor), "Generalized Multiprotocol Label Switching (GMPLS) Architecture", Internet Draft , May 2003, work in progress. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 5] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 6.2. Informational References [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP: 26, RFC 2434, October 1998. [RFC3031] Rosen, E., Viswananthan, A., and R. Callon, Multiprotocol Label Switching Architecture", RFC 3031, January 2001. [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., Swallow, G., "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, December 2001. [RFC3212] Jamoussi, B., (editor), et. al. "Constraint-Based LSP Setup using LDP", RFC 3212, January 2002. [RFC3410] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction and Applicability Statements for Internet-Standard Management Framework", RFC 3410, December 2002. [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. [GMPLSSonetSDH] Mannie, E., Papadimitriou, D. (Editors), "Generalized Multi-Protocol Label Switching Extensions for SONET and SDH Control", Internet Draft , February 2003, work in progress. [GMPLSLSRMIB] Nadeau, T., Srinivasan, C., 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-03.txt, November 2003, work in progress. [GMPLSTEMIB] Nadeau, T., Srinivasan, C., Farrel, A., Hall, T., and Harrison, E., "Generalized Multiprotocol Label Switching (GMPLS) Traffic Engineering Management Information Base", draft-ietf-ccamp-gmpls-te-mib- 03.txt, November 2003, work in progress. [TCMIB] Nadeau, T., Cucchiara, J. (Editors) "Definitions of Textual Conventions for Multiprotocol Label Switching (MPLS) Management", Internet Draft , August 2003, work in progress. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 6] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 7. Acknowledgements Special thanks to Joan Cucchiara for her help with compilation issues. 8. 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: timhall@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 9. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this 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 Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 7] Internet Draft draft-ietf-ccamp-gmpls-tc-mib-03.txt November 2003 copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 10. 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. Nadeau, Srinivasan, Farrel, Hall and Harrison [Page 8]