Network Working Group Martin Dubuc Internet Draft Category: Standards Track Sudheer Dharanikota Expires: October 2003 Avici Systems Thomas D. Nadeau Cisco Systems Jonathan P. Lang Rincon Networks April 2003 Traffic Engineering Management Information Base draft-ietf-mpls-telink-mib-00.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC 2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects for modeling TE links as described in the Link Bundling in MPLS Traffic Engineering Internet Draft. Dubuc et al. Expires October 2003 [Page 1] Internet Draft MPLS TE Link MIB April 18, 2003 Table of Contents 1. The Internet-Standard Management Framework . . . . . . . . . . 2 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. The SNMP Management Framework . . . . . . . . . . . . . . . . . 3 5. Feature Checklist . . . . . . . . . . . . . . . . . . . . . . . 5 6. Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.1. Summary of TE Link MIB . . . . . . . . . . . . . . . . . . . . 5 7. Brief Description of MIB Objects . . . . . . . . . . . . . . . 6 7.1. teLinkTable . . . . . . . . . . . . . . . . . . . . . . . . . . 6 7.2. teLinkDescriptorTable . . . . . . . . . . . . . . . . . . . . . 6 7.3. teLinkSrlgTable . . . . . . . . . . . . . . . . . . . . . . . . 6 7.4. teLinkBandwidthTable . . . . . . . . . . . . . . . . . . . . . 6 7.5. componentLinkTable . . . . . . . . . . . . . . . . . . . . . . 6 7.6. componentLinkDescriptorTable . . . . . . . . . . . . . . . . . 7 7.7. componentLinkBandwidthTable . . . . . . . . . . . . . . . . . . 7 8. Example of Bundled Link Setup . . . . . . . . . . . . . . . . . 7 9. Application of the Interfaces Group to TE Links . . . . . . . . 10 9.1 Support of the TE Link Layer by ifTable . . . . . . . . . . . . 11 9.2 Using ifStackTable . . . . . . . . . . . . . . . . . . . . . . 12 10. TE Link MIB Definitions . . . . . . . . . . . . . . . . . . . . 14 11. Intellectual Property Considerations . . . . . . . . . . . . . 44 12. Security Considerations . . . . . . . . . . . . . . . . . . . . 45 13. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 46 14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 46 14.1 Normative References . . . . . . . . . . . . . . . . . . . . . 46 14.2 Informative References . . . . . . . . . . . . . . . . . . . . 47 15. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 49 16. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 49 1. The Internet-Standard Management Framework For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 [RFC3410]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. MIB objects are generally accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined using the mechanisms defined in the Structure of Management Information (SMI). This memo specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580]. Dubuc et al. Expires October 2003 [Page 2] Internet Draft MPLS TE Link MIB April 18, 2003 2. Introduction OSPF [OSPF], Generalized MPLS (GMPLS) [RFC3471] and the Link Manage- ment Protocol (LMP) [LMP] use the concept of traffic engineering (TE) links to abstract link properties. The effect of this approach is the reduction of the amount of routing information exchanged in the net- work, which improves routing scalability. In addition, the use of TE link allows the implementation of new capabilities such as link pro- tection. We present in this document a MIB that can be used to manage TE links and their extension, the bundled link. This MIB enable both the con- figuration and the performance monitoring of TE links and bundled link. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119, reference [RFC2119]. 3. Terminology This document uses terminology from the documents describing link bundling [BUNDLING] and G-MPLS [GMPLS-ARCH]. The link bundling feature is designed to aggregate one or more simi- lar entities between a node pair into a bundled link [BUNDLING]. In the document, those entities are referred to as TE links. A TE link is a subinterface capable of carrying MPLS traffic engineered traf- fic. A TE Link may be comprised of only one underlying component links. In cases where more than one component link is to be com- bined, multiple component links should be created with differing pri- orities to indicate hot-standby or parallel utilization. A bundled link is just another kind of Traffic Engineering (TE) link (see [GMPLS-OSPF]). A link bundle is a subinterface which bounds the traffic of a group of one or more TE links. There should be more than one TE Link in a link bundle, but this is not a requirement. Fur- thermore, if there are more than one TE link in a link bundle at some time, and at some point later, all but one of the links are deleted, the agent may choose to either delete the link bundle, or it may choose to leave it intact. Traffic counters on a link bundle are cumulative for all subinterfaces which it binds together. 4. The SNMP Management Framework The SNMP Management Framework presently consists of five major compo- nents: Dubuc et al. Expires October 2003 [Page 3] Internet Draft MPLS TE Link MIB April 18, 2003 - An overall architecture, described in RFC 2571 [RFC2571]. Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC 1215 [RFC1215]. The second version, called SMIv2, is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580]. - Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in STD 15, RFC 1157 [RFC1157]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and described in RFC 1901 [RFC1901] and RFC 1906 [RFC1906]. The third version of the message protocol is called SNMPv3 and described in RFC 1906 [RFC1906], RFC 2572 [RFC2572] and RFC 2574 [RFC2574]. - Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in STD 15, RFC 1157 [RFC1157]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [RFC1905]. - A set of fundamental applications described in RFC 2573 [RFC2573] and the view-based access control mechanism described in RFC 2575 [RFC2575]. A more detailed introduction to the current SNMP Management Framework can be found in RFC 2570 [RFC2570]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI. This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB. Dubuc et al. Expires October 2003 [Page 4] Internet Draft MPLS TE Link MIB April 18, 2003 5. Feature Checklist The TE Link MIB (TE-LINK-MIB) is designed to satisfy the following requirements and constraints: - The MIB supports the management of TE links, including bundled links. - Support is provided for configuration of traffic engineering parameters associated with TE links. - The MIB is used to monitor the priority-based component link and TE link bandwidth values. 6. Outline Configuring bundled links involves the following steps: - Creating a bundled link. - Creating TE links. - Optionally specifying the shared risk link groups associated with the TE links. - Configuring the component links including the bandwidth parameters and associating the component links with the appropriate TE link. - Associating the TE links with the appropriate bundled link. 6.1. Summary of TE Link MIB The MIB objects for performing these actions consist of the following tables: - The TE link table (teLinkTable), which is used to specify TE links, including bundled links, and their generic traffic engineering parameters. - The TE link descriptor table (teLinkDescriptorTable), which is used to enumerate the TE link descriptors. - The shared risk link group (SRLG) table (teLinkSrlgTable), which is used to specify the SRLGs associated with TE links. - The TE link bandwidth table (teLinkBandwidthTable), which is used for reporting priority-based bandwidth values Dubuc et al. Expires October 2003 [Page 5] Internet Draft MPLS TE Link MIB April 18, 2003 associated with TE links. - The component link table (componentLinkTable), which is used to identify the component links that are associated with the TE links and specify the component link generic traffic engineering parameters. - The component link descriptor table (componentLinkDescriptorTable), which is used to enumerate the component link descriptors. - The component link bandwidth table (componentLinkBandwidthTable), which is used to report priority-based bandwidth values associated with component links. These tables are described in the subsequent sections. 7. Brief Description of MIB Objects Sections 7.1-7.5 describe objects pertaining to TE links. The MIB objects were derived from the link bundling document [BUNDLING]. 7.1. teLinkTable This table represents the TE links, including bundled links. 7.2. teLinkDescriptorTable This table represents the TE link descriptors. 7.3. teLinkSrlgTable This table represents the shared risk link groups (SRLGs) associated with TE links. 7.4. teLinkBandwidthTable This table specifies the priority-based bandwidth traffic engineering parameters associated with TE links. 7.5. componentLinkTable This table enumerates the component links and their association with TE link. Dubuc et al. Expires October 2003 [Page 6] Internet Draft MPLS TE Link MIB April 18, 2003 7.6. componentLinkDescriptorTable This table enumerates the link descriptors that each component link supports. 7.7. componentLinkBandwidthTable The component link bandwidth table specifies the priority-based band- width values associated with the component links. 8. Example of Bundled Link Setup In this section we provide a brief example of using the MIB objects described in section 10 to set up a bundled link. While this example is not meant to illustrate every nuance of the MIB, it is intended as an aid to understanding some of the key concepts. It is meant to be read after going through the MIB itself. Suppose that one would like to manually create a bundled link out of two 1:1 TE links. Assume that the bundled link is associated with SRLGs 10 and 50. Finally, let the component links be port entity interfaces (lambdas). The following example illustrates which rows and corresponding objects might be created to accomplish this. First, a bundled link entry is created. An ifEntry with the same ifIndex and with ifType teLink needs to be created beforehand. In teLinkTable: { ifIndex = 25, teLinkIpAddrType = unknown(0), teLinkRowStatus = createAndGo(4) } In ifStackTable: { ifStackHigherLayer = 0, ifStackLowerLayer = 25, ifStackStatus = createAndGo(4) } Next, the two TE links are created. In teLinkTable: { ifIndex = 20, teLinkIpAddrType = unknown(0), Dubuc et al. Expires October 2003 [Page 7] Internet Draft MPLS TE Link MIB April 18, 2003 teLinkMetric = 5, teLinkResourceClass = 3, teLinkRowStatus = createAndWait(5) } In ifStackTable: { ifStackHigherLayer = 25, ifStackLowerLayer = 20, ifStackStatus = createAndGo(4) } In teLinkTable: { ifIndex = 21, teLinkIpAddrType = unknown(0), teLinkMetric = 5, teLinkResourceClass = 3, teLinkRowStatus = createAndWait(5) } In ifStackTable: { ifStackHigherLayer = 25, ifStackLowerLayer = 21, ifStackStatus = createAndGo(4) } We assign SRLGs to the TE links. In the teLinkSrlgTable: { ifIndex = 20, srlg = 10, srlgRowStatus = createAndGo(4) } In the teLinkSrlgTable: { ifIndex = 21, srlg = 50, srlgRowStatus = createAndGo(4) } The bundled link inherits the SRLG properties from the associated TE links. Next, for each TE link, two component links are created. Dubuc et al. Expires October 2003 [Page 8] Internet Draft MPLS TE Link MIB April 18, 2003 An ifEntry with the same ifIndex needs to be created beforehand. In componentLinkTable: { ifIndex = 40, componentLinkPreferredProtection = primary(1), componentLinkRowStatus = createAndGo(4) } In ifStackTable: { ifStackHigherLayer = 20, ifStackLowerLayer = 40, ifStackStatus = createAndGo(4) } In componentLinkTable: { ifIndex = 43, componentLinkPreferredProtection = secondary(2), componentLinkRowStatus = createAndGo(4) } In ifStackTable: { ifStackHigherLayer = 20, ifStackLowerLayer = 43, ifStackStatus = createAndGo(4) } In componentLinkTable: { ifIndex = 44, componentLinkPreferredProtection = primary(1), componentLinkRowStatus = createAndGo(4) } In ifStackTable: { ifStackHigherLayer = 21, ifStackLowerLayer = 44, ifStackStatus = createAndGo(4) } In componentLinkTable: { ifIndex = 48, componentLinkPreferredProtection = secondary(2), Dubuc et al. Expires October 2003 [Page 9] Internet Draft MPLS TE Link MIB April 18, 2003 componentLinkRowStatus = createAndGo(4) } In ifStackTable: { ifStackHigherLayer = 21, ifStackLowerLayer = 48, ifStackStatus = createAndGo(4) } In this example, once a component link is added to the componentLinkTable, the associated link descriptors are implicitly added to the componentLinkDescriptorTable. TE link link descriptors are derived from their component link descriptors. Note that the bandwidth attributes in teLinkDescriptorTable, componentLinkDescriptorTable, teLinkBandwidthTable and componentLinkBandwidthTable are maintained by the device according to LSP creation/deletion at different priorities. The values in the teLinkBandwidthTable are an aggregation of the values for the component links of the TE links and the TE links of the bundled link. 9. Application of the Interfaces Group to TE Links The Interfaces Group [RFC2863] defines generic managed objects for managing interfaces. This memo contains the media-specific extensions to the Interfaces Group for managing TE Link interfaces as logical interfaces. This memo assumes the interpretation of the Interfaces Group to be in accordance with [RFC2863] which states that the interfaces table (ifTable) contains information on the managed resource's interfaces and that each sub-layer below the internetwork layer of a network interface is considered an interface. Thus, the TE Link interface is represented as an entry in the ifTable. The inter- relation of entries in the ifTable is defined by Interfaces Stack Group defined in [RFC2863]. When using TE Link interfaces, the interface stack table might appear as follows: +----------------------------------------+ | TE link-interface ifType = teLink(200) + +----------------------------------------+ | Underlying Layer... + Dubuc et al. Expires October 2003 [Page 10] Internet Draft MPLS TE Link MIB April 18, 2003 +----------------------------------------+ In the above diagram, "Underlying Layer..." refers to the ifIndex of any interface type, which has been defined for TE Link interworking. Examples include ATM, Frame Relay, Ethernet, etc. 9.1. Support of the TE Link Layer by ifTable Some specific interpretations of ifTable for the TE Link layer follow. Object Use for the TE Link layer ifIndex Each TE Link interface is represented by an ifEntry. ifDescr Description of the TE Link interface. ifType The value that is allocated for TE Link is 200 [IANAFamily]. ifSpeed The total bandwidth in bits per second for use by the TE Link layer. ifPhysAddress Unused. ifAdminStatus This variable indicates the administrator's intent as to whether TE Link should be enabled, disabled, or running in some diagnostic testing mode on this interface. Also see [RFC2863]. ifOperStatus This value reflects the actual or operational status of TE Link on this interface. ifLastChange See [RFC2863]. ifInOctets The number of received octets over the interface, i.e., the number of received octets in all component links associated with the interface. ifOutOctets The number of transmitted octets over the interface, i.e., the number of octets transmitted over all component links associated with the interface. ifInErrors The number of packets dropped due to uncorrectable errors. ifInUnknownProtos Dubuc et al. Expires October 2003 [Page 11] Internet Draft MPLS TE Link MIB April 18, 2003 The number of received packets discarded during packet header validation. ifOutErrors See [RFC2863]. ifName Textual name (unique on this system) of the interface or an octet string of zero length. ifLinkUpDownTrapEnable Default is disabled (2). ifConnectorPresent Set to false (2). ifHighSpeed See [RFC2863]. ifHCInOctets The 64-bit version of ifInOctets; supported if required by the compliance statements in [RFC2863]. ifHCOutOctets The 64-bit version of ifOutOctets; supported if required by the compliance statements in [RFC2863]. ifAlias The non-volatile 'alias' name for the interface as specified by a network manager. ifCounterDiscontinuityTime See [RFC2863]. Support for ifInOctets, ifOutOctets, ifInErrors, ifInUnknownProtos, ifOutErrors, ifHCInOctets and ifHCOutOctets objects is not required if encoding type is clear. For other encoding types, traffic counters on a TE link are cumulative for all subinterfaces which it binds together. 9.2. Using ifStackTable This section describes by example how to use ifStackTable to represent the relationship of TE links with underlying TE-enabled interfaces. Implementors of the stack table for TE link interfaces should look at the appropriate RFC for the service being stacked on TE links. Examples given below are for illustration purposes only. Example: MPLS is being carried on 2 bundled TE links. Each bundled TE link runs over a 1:1 optical transport interface. +---------------------------------+ Dubuc et al. Expires October 2003 [Page 12] Internet Draft MPLS TE Link MIB April 18, 2003 | mpls | +---------------------------------+ | +---------------------------------+ | teLink (Link Bundle) | +---------------------------------+ | | +---------------+ +---------------+ | teLink | | teLink | +---------------+ +---------------+ | | | | +------+ +------+ +------+ +------+ |oTrans| |oTrans| |oTrans| |oTrans| +------+ +------+ +------+ +------+ The assignment of the index values could for example be: ifIndex Description 1 mpls (type 166) 2 teLink (type 200) 3 teLink (type 200) 4 teLink (type 200) 5 opticalTransport (type 196) 6 opticalTransport (type 196) 7 opticalTransport (type 196) 8 opticalTransport (type 196) The ifStackTable is then used to show the relationships between the various interfaces. ifStackTable Entries HigherLayer LowerLayer 0 1 1 2 2 3 2 4 3 5 3 6 4 7 4 8 5 0 6 0 7 0 8 0 In the case where MPLS is using a single TE link, then Dubuc et al. Expires October 2003 [Page 13] Internet Draft MPLS TE Link MIB April 18, 2003 the upper TE link layer (link bundle) is not required. +---------------+ | mpls | +---------------+ | +---------------+ | teLink | +---------------+ | | +------+ +------+ |oTrans| |oTrans| +------+ +------+ The assignment of the index values could for example be: ifIndex Description 1 mpls (type 166) 2 teLink (type 200) 3 opticalTransport (type 196) 4 opticalTransport (type 196) The ifStackTable is then used to show the relationships between the various interfaces. ifStackTable Entries HigherLayer LowerLayer 0 1 1 2 2 3 2 4 3 0 4 0 10. TE Link MIB Definitions TE-LINK-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF TruthValue, RowStatus, StorageType Dubuc et al. Expires October 2003 [Page 14] Internet Draft MPLS TE Link MIB April 18, 2003 FROM SNMPv2-TC InterfaceIndexOrZero, ifIndex FROM IF-MIB InetAddressType, InetAddress FROM INET-ADDRESS-MIB; teLinkMIB MODULE-IDENTITY LAST-UPDATED "200304181200Z" -- 18 April 2003 12:00:00 EST ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Martin Dubuc Email: dubuc.consulting@rogers.com Sudheer Dharanikota Email: sudheer@avici.com Thomas D. Nadeau Email: tnadeau@cisco.com Jonathan P. Lang Email: jplang@ieee.org" DESCRIPTION "This MIB contains managed object definitions for MPLS traffic engineering links as defined in: Kompella, K., Rekhter, Y., Berger, L., Link Bundling in MPLS Traffic Engineering Internet Draft , July 2002." -- Revision history. REVISION "200304181200Z" -- 18 April 2003 12:00:00 EST DESCRIPTION "Initial version published as RFC xxxx (to be assigned by RFC Editor)" ::= { mib-2 xxx } -- To be assigned by IANA (experimental 114 can be used -- in the interim) -- Textual Conventions -- Top level components of this MIB -- Notifications Dubuc et al. Expires October 2003 [Page 15] Internet Draft MPLS TE Link MIB April 18, 2003 teLinkNotifications OBJECT IDENTIFIER ::= { teLinkMIB 0 } -- Tables, Scalars teLinkObjects OBJECT IDENTIFIER ::= { teLinkMIB 1 } -- Conformance teLinkConformance OBJECT IDENTIFIER ::= { teLinkMIB 2 } -- TE Link Table teLinkTable OBJECT-TYPE SYNTAX SEQUENCE OF TeLinkEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the grouping of component links into TE links and grouping of TE links into bundled links." ::= { teLinkObjects 1 } teLinkEntry OBJECT-TYPE SYNTAX TeLinkEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table exists for each ifEntry with an ifType of teLink(TBD), i.e. for every TE link. An ifEntry in the ifTable must exist before a teLinkEntry is created with the corresponding ifIndex. If a TE link entry in the ifTable is destroyed, then so is the corresponding entry in the teLinkTable. The administrative and operational status values are controlled from the ifEntry. If the link is unnumbered, ifIndex is also used as the outgoing interface identifier." INDEX { ifIndex } ::= { teLinkTable 1 } TeLinkEntry ::= SEQUENCE { teLinkIpAddrType InetAddressType, teLinkIpAddr InetAddress, teLinkRemoteIpAddr InetAddress, teLinkMetric Unsigned32, teLinkMuxCapability INTEGER, teLinkProtectionType INTEGER, teLinkWorkingPriority Unsigned32, teLinkResourceClass Unsigned32, teLinkIncomingIfId InterfaceIndexOrZero, teLinkOutgoingIfId InterfaceIndexOrZero, teLinkRowStatus RowStatus, teLinkStorageType StorageType } Dubuc et al. Expires October 2003 [Page 16] Internet Draft MPLS TE Link MIB April 18, 2003 teLinkIpAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-create STATUS current DESCRIPTION "For IPv4 and IPv6 numbered links, this object represents the IP address type associated with the TE link. For unnumbered links, a value of unknown(0) must be used." ::= { teLinkEntry 1 } teLinkIpAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "For IPv4 and IPv6 numbered links, this object represents the IP address associated with the TE link." ::= { teLinkEntry 2 } teLinkRemoteIpAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "The remote IP address associated with the TE link (IPv4 and IPv6 numbered links)." ::= { teLinkEntry 3 } teLinkMetric OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The traffic engineering metric for the TE link is derived from its component links. All component links within the TE link must have the same traffic engineering metric." REFERENCE "[BUNDLING]" ::= { teLinkEntry 4 } teLinkMuxCapability OBJECT-TYPE SYNTAX INTEGER { packetSwitch1(1), packetSwitch2(2), packetSwitch3(3), packetSwitch4(4), layer2Switch(51), Dubuc et al. Expires October 2003 [Page 17] Internet Draft MPLS TE Link MIB April 18, 2003 tdm(100), lambdaSwitch(150), fiberSwitch(200) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies link multiplex capability of the TE link, which is derived from its component links. All component links within the same TE link must have the same link multiplex capability." REFERENCE "[GMPLS-OSPF]" ::= { teLinkEntry 5 } teLinkProtectionType OBJECT-TYPE SYNTAX INTEGER { extraTraffic(1), unprotected(2), shared(3), dedicated1For1(4), dedicated1Plus1(5), enhanced(6) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies link protection type of the TE link." REFERENCE "[GMPLS-OSPF]" ::= { teLinkEntry 6 } teLinkWorkingPriority OBJECT-TYPE SYNTAX Unsigned32 (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "This object represents a priority value such that a new connection with a higher priority, i.e. numerically lower than this value, is guaranteed to be setup on a primary link and not on a secondary link." REFERENCE "[GMPLS-OSPF]" ::= { teLinkEntry 7 } teLinkResourceClass OBJECT-TYPE SYNTAX Unsigned32 Dubuc et al. Expires October 2003 [Page 18] Internet Draft MPLS TE Link MIB April 18, 2003 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the TE link resource class. The resource class is a 32 bit bitfield. The resource class for a link bundle is derived from the resource class of its TE links. All TE links within a link bundle must have the same resource class." ::= { teLinkEntry 8 } teLinkIncomingIfId OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "For unnumbered links, the incoming interface is set to the outgoing interface identifier chosen by the neighboring LSR for the reverse link corresponding to this TE link." REFERENCE "[BUNDLING]" ::= { teLinkEntry 9 } teLinkOutgoingIfId OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "If the link is unnumbered, the outgoing interface identifier is set to the outgoing interface identifier chosen for the TE link by the advertising LSR." REFERENCE "[BUNDLING]" ::= { teLinkEntry 10 } teLinkRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when teLinkRowStatus is active." ::= { teLinkEntry 11 } teLinkStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current Dubuc et al. Expires October 2003 [Page 19] Internet Draft MPLS TE Link MIB April 18, 2003 DESCRIPTION "The storage type for this conceptual row in the teLinkTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { teLinkEntry 12 } -- End of teLinkTable -- TE Link Descriptor Table teLinkDescriptorTable OBJECT-TYPE SYNTAX SEQUENCE OF TeLinkDescriptorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the link descriptors associated with the TE links." ::= { teLinkObjects 2 } teLinkDescriptorEntry OBJECT-TYPE SYNTAX TeLinkDescriptorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created for every TE link descriptor. An ifEntry in the ifTable must exist before a teLinkDescriptorEntry using the same ifIndex is created. If a TE link entry in the ifTable is destroyed, then so are all entries in the teLinkDescriptorTable that use the ifIndex of this TE link." INDEX { ifIndex, teLinkDescriptorId } ::= { teLinkDescriptorTable 1 } TeLinkDescriptorEntry ::= SEQUENCE { teLinkDescriptorId Unsigned32, teLinkEncodingType INTEGER, teLinkDescrPriority Unsigned32, teLinkMinReservableBandwidth Unsigned32, teLinkMaxReservableBandwidth Unsigned32, teLinkDescrRowStatus RowStatus, teLinkDescrStorageType StorageType } teLinkDescriptorId OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible Dubuc et al. Expires October 2003 [Page 20] Internet Draft MPLS TE Link MIB April 18, 2003 STATUS current DESCRIPTION "This object specifies the link descriptor identifier." ::= { teLinkDescriptorEntry 1 } teLinkEncodingType OBJECT-TYPE SYNTAX INTEGER { packet(1), ethernet(2), ansiEtsiPdh(3), sdhItuSonetAnsi(5), digitalWrapper(7), lambda(8), fiber(9), fiberChannel(11) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the TE link encoding type." REFERENCE "[RFC3471]" ::= { teLinkDescriptorEntry 2 } teLinkDescrPriority OBJECT-TYPE SYNTAX Unsigned32 (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the lowest priority at which that link encoding type is available." REFERENCE "[GMPLS-OSPF]" ::= { teLinkDescriptorEntry 3 } teLinkMinReservableBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the minimum reservable bandwidth on the TE link. This is derived from the union of the minimum reservable bandwidth of all the component links associated with the TE link that can be used to carry live traffic. This value is an estimate in units of 1,000 bits per second." REFERENCE "[GMPLS-OSPF]" Dubuc et al. Expires October 2003 [Page 21] Internet Draft MPLS TE Link MIB April 18, 2003 ::= { teLinkDescriptorEntry 4 } teLinkMaxReservableBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the maximum reservable bandwidth on the TE link. This is the union of the maximum reservable bandwidth of all the component links within the TE link that can be used to carry live traffic. This value is an estimate in units of 1,000 bits per second." REFERENCE "[GMPLS-OSPF]" ::= { teLinkDescriptorEntry 5 } teLinkDescrRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when teLinkDescrRowStatus is active." ::= { teLinkDescriptorEntry 6 } teLinkDescrStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row in the teLinkDescriptorTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { teLinkDescriptorEntry 7 } -- End of teLinkDescriptorTable -- TE Link Shared Risk Link Group Table teLinkSrlgTable OBJECT-TYPE SYNTAX SEQUENCE OF TeLinkSrlgEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the SRLGs associated with TE links." Dubuc et al. Expires October 2003 [Page 22] Internet Draft MPLS TE Link MIB April 18, 2003 ::= { teLinkObjects 3 } teLinkSrlgEntry OBJECT-TYPE SYNTAX TeLinkSrlgEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table contains information about a SRLG associated with a TE link. An ifEntry in the ifTable must exist before a teLinkSrlgEntry using the same ifIndex is created. If a TE link entry in the ifTable is destroyed, then so are all entries in the teLinkSrlgTable that use the ifIndex of this TE link." INDEX { ifIndex, srlg } ::= { teLinkSrlgTable 1 } TeLinkSrlgEntry ::= SEQUENCE { srlg Unsigned32, srlgRowStatus RowStatus, srlgStorageType StorageType } srlg OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This identifies a SRLG supported by the TE link." REFERENCE "[GMPLS-OSPF]" ::= { teLinkSrlgEntry 1 } srlgRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when srlgRowStatus is active." ::= { teLinkSrlgEntry 2 } srlgStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION Dubuc et al. Expires October 2003 [Page 23] Internet Draft MPLS TE Link MIB April 18, 2003 "The storage type for this conceptual row in the teLinkSrlgTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { teLinkSrlgEntry 3 } -- End of teLinkSrlgTable -- TE Link Bandwidth Table teLinkBandwidthTable OBJECT-TYPE SYNTAX SEQUENCE OF TeLinkBandwidthEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the priority-based bandwidth table for TE links." ::= { teLinkObjects 4 } teLinkBandwidthEntry OBJECT-TYPE SYNTAX TeLinkBandwidthEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table contains information about the priority-based bandwidth of TE links. An ifEntry in the ifTable must exist before a teLinkBandwidthEntry using the same ifIndex is created. If a TE link entry in the ifTable is destroyed, then so are all entries in the teLinkBandwidthTable that use the ifIndex of this TE link." INDEX { ifIndex, teLinkPriority } ::= { teLinkBandwidthTable 1 } TeLinkBandwidthEntry ::= SEQUENCE { teLinkPriority Unsigned32, teLinkUnreservedBandwidth Unsigned32, teLinkMaximumLspBandwidth Unsigned32, teLinkBandwidthRowStatus RowStatus, teLinkBandwidthStorageType StorageType } teLinkPriority OBJECT-TYPE SYNTAX Unsigned32 (1..8) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This attribute specifies the priority. It should be mapped Dubuc et al. Expires October 2003 [Page 24] Internet Draft MPLS TE Link MIB April 18, 2003 to a number between 0 and 7" REFERENCE "[GMPLS-OSPF]" ::= { teLinkBandwidthEntry 1 } teLinkUnreservedBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This attribute specifies the TE link unreserved bandwidth at priority p. It is the sum of the unreserved bandwidths at priority p of all component links associated with the TE link (excludes all links that are strictly used as protecting links). This value is an estimate in units of 1,000 bits per second." REFERENCE "[BUNDLING]" ::= { teLinkBandwidthEntry 2 } teLinkMaximumLspBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the TE link maximum LSP bandwidth at priority p. It is the maximum of all maximum LSP bandwidth at priority p of the component links associated with the TE link (excludes all links that are strictly used as protecting links). This value is an estimate in units of 1,000 bits per second." REFERENCE "[BUNDLING]" ::= { teLinkBandwidthEntry 3 } teLinkBandwidthRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when teLinkBandwidthRowStatus is active." ::= { teLinkBandwidthEntry 4 } teLinkBandwidthStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create Dubuc et al. Expires October 2003 [Page 25] Internet Draft MPLS TE Link MIB April 18, 2003 STATUS current DESCRIPTION "The storage type for this conceptual row in the teLinkBandwidthTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { teLinkBandwidthEntry 5 } -- End of teLinkBandwidthTable -- Component Link Table componentLinkTable OBJECT-TYPE SYNTAX SEQUENCE OF ComponentLinkEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the component link parameters." ::= { teLinkObjects 5 } componentLinkEntry OBJECT-TYPE SYNTAX ComponentLinkEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table exists for each ifEntry that represents a component link. An ifEntry must exist in the ifTable before a componentLinkEntry is created with the corresponding ifIndex. If an entry representing a component link is destroyed in the ifTable, then so is the corresponding entry in the componentLinkTable. The administrative and operational status values are controlled from the ifEntry." INDEX { ifIndex } ::= { componentLinkTable 1 } ComponentLinkEntry ::= SEQUENCE { componentLinkMuxCapability INTEGER, componentLinkPreferredProtection INTEGER, componentLinkCurrentProtection INTEGER, componentLinkRowStatus RowStatus, componentLinkStorageType StorageType } componentLinkMuxCapability OBJECT-TYPE SYNTAX INTEGER { packetSwitch1(1), Dubuc et al. Expires October 2003 [Page 26] Internet Draft MPLS TE Link MIB April 18, 2003 packetSwitch2(2), packetSwitch3(3), packetSwitch4(4), layer2Switch(51), tdm(100), lambdaSwitch(150), fiberSwitch(200) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies link multiplexing capabilities of the component link." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkEntry 1 } componentLinkPreferredProtection OBJECT-TYPE SYNTAX INTEGER { primary(1), secondary(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies whether this component link is a primary or secondary entity." ::= { componentLinkEntry 2 } componentLinkCurrentProtection OBJECT-TYPE SYNTAX INTEGER { primary(1), secondary(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This attribute specifies whether this component link is currently used as primary or secondary link." ::= { componentLinkEntry 3 } componentLinkRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects Dubuc et al. Expires October 2003 [Page 27] Internet Draft MPLS TE Link MIB April 18, 2003 can only be changed when componentLinkRowStatus is active." ::= { componentLinkEntry 4 } componentLinkStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row in the componentLinkTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { componentLinkEntry 5 } -- End of componentLinkTable -- Component Link Descriptor Table componentLinkDescriptorTable OBJECT-TYPE SYNTAX SEQUENCE OF ComponentLinkDescriptorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table specifies the link descriptors associated with the component links." ::= { teLinkObjects 6 } componentLinkDescriptorEntry OBJECT-TYPE SYNTAX ComponentLinkDescriptorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created for every component link descriptor. An ifEntry in the ifTable must exist before a componentLinkDescriptorEntry using the same ifIndex is created. If a component link entry in the ifTable is destroyed, then so are all entries in the componentLinkDescriptorTable that use the ifIndex of this component link." INDEX { ifIndex, componentLinkDescrId } ::= { componentLinkDescriptorTable 1 } ComponentLinkDescriptorEntry ::= SEQUENCE { componentLinkDescrId Unsigned32, componentLinkEncodingType INTEGER, componentLinkDescrPriority Unsigned32, componentLinkMinReservBandwidth Unsigned32, componentLinkMaxReservBandwidth Unsigned32, Dubuc et al. Expires October 2003 [Page 28] Internet Draft MPLS TE Link MIB April 18, 2003 componentLinkDescrRowStatus RowStatus, componentLinkDescrStorageType StorageType } componentLinkDescrId OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object specifies the link descriptor identifier." ::= { componentLinkDescriptorEntry 1 } componentLinkEncodingType OBJECT-TYPE SYNTAX INTEGER { packet(1), ethernet(2), ansiEtsiPdh(3), sdhItuSonetAnsi(5), digitalWrapper(7), lambda(8), fiber(9), fiberChannel(11) } MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the component link encoding type." REFERENCE "[RFC3471]" ::= { componentLinkDescriptorEntry 2 } componentLinkDescrPriority OBJECT-TYPE SYNTAX Unsigned32 (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the lowest priority at which that link encoding type is available for the component link." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkDescriptorEntry 3 } componentLinkMinReservBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the minimum reservable bandwidth on Dubuc et al. Expires October 2003 [Page 29] Internet Draft MPLS TE Link MIB April 18, 2003 the component link. This value is an estimate in units of 1,000 bits per second." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkDescriptorEntry 4 } componentLinkMaxReservBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the maximum reservable bandwidth on the component link. This value is an estimate in units of 1,000 bits per second." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkDescriptorEntry 5 } componentLinkDescrRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when componentLinkDescrRowStatus is active." ::= { componentLinkDescriptorEntry 6 } componentLinkDescrStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row in the componentLinkDescriptorTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { componentLinkDescriptorEntry 7 } -- End of componentLinkDescriptorTable -- Component Link Bandwidth Table componentLinkBandwidthTable OBJECT-TYPE SYNTAX SEQUENCE OF ComponentLinkBandwidthEntry MAX-ACCESS not-accessible Dubuc et al. Expires October 2003 [Page 30] Internet Draft MPLS TE Link MIB April 18, 2003 STATUS current DESCRIPTION "This table specifies the priority-based bandwidth for component links." ::= { teLinkObjects 7 } componentLinkBandwidthEntry OBJECT-TYPE SYNTAX ComponentLinkBandwidthEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table contains information about the priority-based bandwidth on component links. An ifEntry in the ifTable must exist before a componentLinkBandwidthEntry using the same ifIndex is created. If a component link entry in the ifTable is destroyed, then so are all entries in the componentLinkBandwidthTable that use the ifIndex of this component link." INDEX { ifIndex, componentLinkPriority } ::= { componentLinkBandwidthTable 1 } ComponentLinkBandwidthEntry ::= SEQUENCE { componentLinkPriority Unsigned32, componentLinkUnreservedBandwidth Unsigned32, componentLinkMaximumLspBandwidth Unsigned32, componentLinkBandwidthRowStatus RowStatus, componentLinkBwStorageType StorageType } componentLinkPriority OBJECT-TYPE SYNTAX Unsigned32 (1..8) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This attribute specifies the priority. It should be mapped to a number between 0 and 7." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkBandwidthEntry 1 } componentLinkUnreservedBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This attribute specifies the component link unreserved bandwidth at priority p. This value is an estimate Dubuc et al. Expires October 2003 [Page 31] Internet Draft MPLS TE Link MIB April 18, 2003 in units of 1,000 bits per second." REFERENCE "[GMPLS-OPSF]" ::= { componentLinkBandwidthEntry 2 } componentLinkMaximumLspBandwidth OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This attribute specifies the component link maximum LSP bandwidth at priority p. This value is an estimate in units of 1,000 bits per second." REFERENCE "[GMPLS-OSPF]" ::= { componentLinkBandwidthEntry 3 } componentLinkBandwidthRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. All read-create objects can only be changed when componentLinkBandwidthRowStatus is active." ::= { componentLinkBandwidthEntry 4 } componentLinkBwStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row in the componentLinkBandwidthTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar object in the row." ::= { componentLinkBandwidthEntry 5 } -- End of componentLinkBandwidthTable -- Notification Configuration teLinkNotifEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION Dubuc et al. Expires October 2003 [Page 32] Internet Draft MPLS TE Link MIB April 18, 2003 "If this object is true, then it enables the generation of the TE link notifications, otherwise these notifications are not emitted." DEFVAL { false } ::= { teLinkObjects 8 } -- Notifications -- TE Link Notifications linkBundleMismatch NOTIFICATION-TYPE OBJECTS { teLinkIpAddrType, teLinkIpAddr, teLinkRemoteIpAddr } STATUS current DESCRIPTION "This notification is generated when a mismatch is found on a bundled link. Such mismatch can be detected for instance if one of the traffic engineering parameters is not consistent across all TE links within a bundled link (resource class, etc.)." ::= { teLinkNotifications 1 } -- End of notifications -- Module compliance teLinkGroups OBJECT IDENTIFIER ::= { teLinkConformance 1 } teLinkCompliances OBJECT IDENTIFIER ::= { teLinkConformance 2 } teLinkFullModuleCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that support the configuration and monitoring of TE Link MIB." MODULE -- this module -- The mandatory groups have to be implemented -- by all devices supporting TE links. However, they may all -- be supported as read-only objects in the case where automatic -- configuration is supported. MANDATORY-GROUPS { teLinkGroup, teLinkBandwidthGroup, componentLinkBandwidthGroup } Dubuc et al. Expires October 2003 [Page 33] Internet Draft MPLS TE Link MIB April 18, 2003 GROUP teLinkSrlgGroup DESCRIPTION "This group is mandatory for G-MPLS enabled devices." GROUP teLinkNotificationGroup DESCRIPTION "This group is mandatory for equipment that support TE link notifications." -- teLinkTable OBJECT teLinkIpAddrType SYNTAX INTEGER { unknown(0), ipv4(1), ipv6(2) } MIN-ACCESS read-only DESCRIPTION "The dns(16) address type need not be supported. The ipv4(1) and ipv6(2) address types need not be supported if numbered links are not supported. The unknown(0) address type need not be supported if unnumbered links are not supported." OBJECT teLinkIpAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "Size of TE link IP address depends on type of TE link. TE link IP address size is zero if link is unnumbered, four if link IP address is IPv4 and sixteen if link IP address is IPv6." OBJECT teLinkRemoteIpAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "Size of TE link IP address depends on type of TE link. TE link IP address size is zero if link is unnumbered, four if link IP address is IPv4 and sixteen if link IP address is IPv6." OBJECT teLinkMuxCapability MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkProtectionType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkRowStatus Dubuc et al. Expires October 2003 [Page 34] Internet Draft MPLS TE Link MIB April 18, 2003 SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) state need not be supported." OBJECT teLinkStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- teLinkDescriptorTable OBJECT teLinkEncodingType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkDescrPriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkMinReservableBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkMaxReservableBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkDescrRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) state need not be supported." OBJECT teLinkDescrStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- teLinkSrlgTable OBJECT srlgRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } Dubuc et al. Expires October 2003 [Page 35] Internet Draft MPLS TE Link MIB April 18, 2003 DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT srlgStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- teLinkBandwidthTable OBJECT teLinkMaximumLspBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkBandwidthRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT teLinkBandwidthStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- componentLinkTable OBJECT componentLinkMuxCapability MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkMaxReservBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT componentLinkStorageType Dubuc et al. Expires October 2003 [Page 36] Internet Draft MPLS TE Link MIB April 18, 2003 SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- componentLinkDescriptorTable OBJECT componentLinkDescrRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) state need not be supported." OBJECT componentLinkDescrStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." -- componentLinkBandwidthTable OBJECT componentLinkMaximumLspBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkBandwidthRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT componentLinkBwStorageType SYNTAX INTEGER { other(1) } DESCRIPTION "Only other(1) needs to be supported." ::= { teLinkCompliances 1 } teLinkMonModuleCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that support the monitoring of TE link MIB." MODULE -- this module -- The mandatory groups have to be implemented -- by all devices supporting TE links. However, they may all -- be supported as read-only objects in the case where manual Dubuc et al. Expires October 2003 [Page 37] Internet Draft MPLS TE Link MIB April 18, 2003 -- configuration is unsupported. MANDATORY-GROUPS { teLinkGroup, teLinkBandwidthGroup, componentLinkBandwidthGroup } GROUP teLinkSrlgGroup DESCRIPTION "This group is mandatory for G-MPLS enabled devices." GROUP teLinkNotificationGroup DESCRIPTION "This group is optional." -- teLinkTable OBJECT teLinkIpAddrType SYNTAX INTEGER { unknown(0), ipv4(1), ipv6(2) } MIN-ACCESS read-only DESCRIPTION "The dns(16) address type need not be supported. The ipv4(1) and ipv6(2) address types need not be supported if numbered links are not supported. The unknown(0) address type need not be supported if unnumbered links are not supported." OBJECT teLinkIpAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "Size of TE link IP address depends on type of TE link. TE link IP address size is zero if link is unnumbered, four if link IP address is IPv4 and sixteen if link IP address is IPv6." OBJECT teLinkRemoteIpAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "Size of TE link IP address depends on type of TE link. TE link IP address size is zero if link is unnumbered, four if link IP address is IPv4 and sixteen if link IP address is IPv6." OBJECT teLinkMuxCapability MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkProtectionType Dubuc et al. Expires October 2003 [Page 38] Internet Draft MPLS TE Link MIB April 18, 2003 MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkWorkingPriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) state need not be supported." OBJECT teLinkStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- teLinkDescriptorTable OBJECT teLinkEncodingType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkDescrPriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkMinReservableBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkMaxReservableBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkDescrRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only Dubuc et al. Expires October 2003 [Page 39] Internet Draft MPLS TE Link MIB April 18, 2003 DESCRIPTION "The notReady(3) state need not be supported." OBJECT teLinkDescrStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- teLinkSrlgTable OBJECT srlgRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT srlgStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- teLinkBandwidthTable OBJECT teLinkMaximumLspBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT teLinkBandwidthRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT teLinkBandwidthStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- componentLinkTable Dubuc et al. Expires October 2003 [Page 40] Internet Draft MPLS TE Link MIB April 18, 2003 OBJECT componentLinkMuxCapability MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkPreferredProtection MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkMaxReservBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT componentLinkStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- componentLinkDescriptorTable OBJECT componentLinkEncodingType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkDescrPriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkMinReservBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkDescrRowStatus SYNTAX INTEGER { active(1), notInService(2), Dubuc et al. Expires October 2003 [Page 41] Internet Draft MPLS TE Link MIB April 18, 2003 createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) state need not be supported." OBJECT componentLinkDescrStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." -- componentLinkBandwidthTable OBJECT componentLinkMaximumLspBandwidth MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT componentLinkBandwidthRowStatus SYNTAX INTEGER { active(1), notInService(2), createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "The notReady(3) and createAndWait(5) states need not be supported." OBJECT componentLinkBwStorageType SYNTAX INTEGER { other(1) } MIN-ACCESS read-only DESCRIPTION "Only other(1) needs to be supported." ::= { teLinkCompliances 2 } -- Units of conformance teLinkGroup OBJECT-GROUP OBJECTS { teLinkIpAddrType, teLinkIpAddr, teLinkRemoteIpAddr, teLinkMetric, teLinkMuxCapability, teLinkProtectionType, teLinkWorkingPriority, teLinkResourceClass, teLinkIncomingIfId, teLinkOutgoingIfId, teLinkRowStatus, Dubuc et al. Expires October 2003 [Page 42] Internet Draft MPLS TE Link MIB April 18, 2003 teLinkStorageType, teLinkEncodingType, teLinkDescrPriority, teLinkMinReservableBandwidth, teLinkMaxReservableBandwidth, teLinkDescrRowStatus, teLinkDescrStorageType, componentLinkMuxCapability, componentLinkPreferredProtection, componentLinkCurrentProtection, componentLinkRowStatus, componentLinkStorageType, teLinkNotifEnable } STATUS current DESCRIPTION "Collection of objects needed for the monitoring of resources associated with TE links." ::= { teLinkGroups 1 } teLinkSrlgGroup OBJECT-GROUP OBJECTS { srlgRowStatus, srlgStorageType } STATUS current DESCRIPTION "Collection of objects needed for the monitoring of SRLG resources associated with TE links." ::= { teLinkGroups 2 } teLinkBandwidthGroup OBJECT-GROUP OBJECTS { teLinkUnreservedBandwidth, teLinkMaximumLspBandwidth, teLinkBandwidthRowStatus, teLinkBandwidthStorageType } STATUS current DESCRIPTION "Collection of objects needed for the monitoring of the priority-based bandwidth resources associated with TE links and component links." ::= { teLinkGroups 3 } componentLinkBandwidthGroup OBJECT-GROUP OBJECTS { componentLinkEncodingType, Dubuc et al. Expires October 2003 [Page 43] Internet Draft MPLS TE Link MIB April 18, 2003 componentLinkDescrPriority, componentLinkMinReservBandwidth, componentLinkMaxReservBandwidth, componentLinkDescrRowStatus, componentLinkDescrStorageType, componentLinkUnreservedBandwidth, componentLinkMaximumLspBandwidth, componentLinkBandwidthRowStatus, componentLinkBwStorageType } STATUS current DESCRIPTION "Collection of objects needed for the monitoring of bandwidth parameters associated with component links." ::= { teLinkGroups 4 } teLinkNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { linkBundleMismatch } STATUS current DESCRIPTION "Set of notifications implemented in this module. None is mandatory." ::= { teLinkGroups 5 } -- End of TE-LINK-MIB END 11. Intellectual Property Considerations The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to per- tain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards- related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Dubuc et al. Expires October 2003 [Page 44] Internet Draft MPLS TE Link MIB April 18, 2003 Director. 12. Security Considerations It is clear that this MIB is potentially useful for monitoring of link bundling enabled devices. This MIB can also be used for configu- ration of certain objects, and anything that can be configured can be incorrectly configured, with potentially disastrous results. At this writing, no security holes have been identified beyond those that SNMP Security [RFC2571] is itself intended to address. These relate to primarily controlled access to sensitive information and the ability to configure a device - or which might result from opera- tor error, which is beyond the scope of any security architecture. There are a number of management objects defined in this MIB which have a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environ- ment without proper protection can have a negative effect on network operations. The use of SNMP Version 3 is recommended over prior ver- sions, for configuration control, as its security model is improved. SNMPv1 or SNMPv2 are by themselves not a secure environment. Even if the network itself is secure (for example by using IPSec [RFC2401]), there is no control as to who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in this MIB. It is recommended that the implementers consider the security features as provided by the SNMPv3 framework. Specifically, the use of the User-based Security Model [RFC2574] and the View-based Access Control [RFC2575] is recommended. It is then a customer/user respon- sibility to ensure that the SNMP entity giving access to an instance of this MIB is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/create/delete) them. There are a number of managed objects in this MIB that may contain information that may be sensitive from a business perspective, in that they can be used to derive the network topology, e.g. list of nodes and their IP address (teLinkTable), list of component links (componentLinkTable) in addition to usage of network resources (teLinkBandwidthTable and componentLinkBandwidthTable). Allowing uncontrolled access to these objects could result in malicious and unwanted disruptions of network traffic, incorrect network configura- tion or theft of competitive business information. There are no objects that are particularly sensitive in their own right, such as passwords or monetary amounts. Dubuc et al. Expires October 2003 [Page 45] Internet Draft MPLS TE Link MIB April 18, 2003 13. Acknowledgments The general structure of this draft has been modeled around draft- ietf-mpls-lsr-mib-06.txt. The authors would like to acknowlegde the contribution of Dmitry Ryumkin. 14. References 14.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2401] Kent, S., and Atkinson, R., "Security Architecture for the Internet Protocol", RFC 2401, November 1998. [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M., and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC2863] McCloghrie, K., and Kastenholtz, F., "The Interfaces Group MIB", RFC 2863, June 2000. [RFC3471] Ashwood-Smith, P., Banarjee, A., Berger, L., Bernstein, G., Drake, J., Fan, Y., Kompella, K., Mannie, E., Lang, J., Rajagopalan, B., Rekhter, Y., Saha, D., Sharma, V., Swallow, G., and Tang, Z., "Generalized MPLS Signaling Functional Description", RFC 3471, January 2003. [Assigned] Reynolds, J., and J. Postel, "Assigned Numbers", RFC 1700, October 1994. See also: http://www.iana.org/assignments/smi-numbers [BUNDLING] Kompella, K., Rekhter, Y., and Berger, L., "Link Bundling in MPLS Traffic Engineering", Internet Draft , Dubuc et al. Expires October 2003 [Page 46] Internet Draft MPLS TE Link MIB April 18, 2003 July 2002. [GMPLS-OSPF] Kompella, K., Rekhter, Y., Banerjee, A. et al, "OSPF Extensions in Support of Generalized MPLS", Internet Draft , December 2002. [IANAFamily] Internet Assigned Numbers Authority (IANA), ADDRESS FAMILY NUMBERS, (http://www.isi.edu/in- notes/iana/assignements/address-family-numbers), for MIB see: ftp://ftp.isi.edu/mib/ianaaddressfamilynumbers.mib [LMP] Lang, J., Mitra, K., Drake, J., Kompella, K., Rekhter, Y., Berger, L., Rajagopalan, B., Basak, D., Sandick, H., Zinin, A., Rajagopalan, B., and Ramamoorthi, S., "Link Management Protocol", Internet Draft , March 2003. [OSPF] Katz, D., Yeung, D., and Kompella, K., "Traffic Engineering Extensions to OSPF", Internet Draft , October 2002. 14.2. Informative References [RFC1155] Rose, M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP- based Internets", STD 16, RFC 1155, May 1990. [RFC1157] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, May 1990. [RFC1212] Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD 16, RFC 1212, March 1991. [RFC1215] M. Rose, "A Convention for Defining Traps for use with the SNMP", RFC 1215, March 1991. [RFC1901] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, January 1996. [RFC1905] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, Dubuc et al. Expires October 2003 [Page 47] Internet Draft MPLS TE Link MIB April 18, 2003 January 1996. [RFC1906] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Transport Mappings for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1906, January 1996. [RFC2570] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction to Version 3 of the Internet-standard Network Management Framework", RFC 2570, April 1999. [RFC2571] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999. [RFC2572] Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2572, April 1999. [RFC2573] Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications", RFC 2573, April 1999. [RFC2574] Blumenthal, U., and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2574, April 1999. [RFC2575] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", RFC 2575, April 1999. [RFC3410] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction and Applicability Statements for Internet-Standard Management Framework", RFC 3410, December 2002. [GMPLS-ARCH] Mannie, E., Ashwood-Smith, P., Awduche, D., Banarjee, A., Basak, D., Berger, L., Bernstein, G., Dharanikota, S., Drake, J., Fan, Y., Fedyk, D., Grammel, G., Guo, D., Kompella, K., Kullberg, A., Lang, J., Liaw, F., Nadeau, T., Ong, L., Papadimitriou, D., Pendarakis, D., Rajagopalan, B., Rekhter, Y., Saha, D., Sandick, H., Sharma, V., Swallow, G., Tang, Z., Yates, J., Young, G., Yu, J., Zinin, A., "Generalized Multi-Protocol Label Switching (GMPLS) Architecture", Internet Draft , March 2003. Dubuc et al. Expires October 2003 [Page 48] Internet Draft MPLS TE Link MIB April 18, 2003 15. Authors' Addresses Martin Dubuc Thomas D. Nadeau Email: dubuc.consulting@rogers.com Cisco Systems, Inc. 300 Apollo Drive Chelmsford, MA 01824 Phone: +1-978-244-3051 Email: tnadeau@cisco.com Sudheer Dharanikota Jonathan P. Lang Avici Systems, Inc. Rincon Networks, Inc. 101 Billerica Avenue 110 El Paseo N Billerica, MA 08162 Santa Barbara, CA 93101 Email: sudheer@avici.com Email: jplang@ieee.org 16. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this docu- ment itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of develop- ing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Dubuc et al. Expires October 2003 [Page 49]