Network Working Group J. Cucchiara Internet-Draft IronBridge Networks Expires April 2000 H. Sjostrand Ericsson J. Luciani Nortel Networks October 1999 Definitions of Managed Objects for the Multiprotocol Label Switching, Label Distribution Protocol (LDP) 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 Distribution of this document is unlimited. Please send comments to the Multiprotocol Label Switching (mpls) Working Group, . Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved. 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 the Multiprotocol Label Switching, Label Distribution Protocol (LDP). Expires April 2000 [Page 1] INTERNET-DRAFT MPLS LDP MIB October 1999 Table of Contents 1 Introduction ................................................. 3 2 The SNMP Management Framework ................................ 3 3 Structure of the MIB ......................................... 5 3.1 Overview ................................................... 5 3.2 Interface Indexing ......................................... 5 3.3 Future Considerations ...................................... 5 3.4 Discussion of MIB Groups ................................... 6 3.5 The MPLS LDP General Group ................................. 6 3.5.1 The Label Distribution Protocol's Entity Table ........... 6 3.5.2 The Label Distribution Protocol's Entity ATM Objects ..... 6 Objects ................................................... 6 Table ..................................................... 7 3.5.5 The LDP Peer Table ....................................... 7 3.5.6 The LDP Session Table .................................... 7 3.5.7 The LDP ATM Session Table ................................ 7 3.5.8 The LDP Frame Relay Session Table ........................ 7 3.5.9 The LDP Session Statistics Table ......................... 7 3.5.10 The LDP Session Peer Address Table ...................... 8 3.5.11 The LDP Adjacencies Table ............................... 8 3.5.12 The LDP Label Information Base (LIB) Table .............. 8 3.5.13 The LDP FEC Table ....................................... 8 3.6 The LDP Notifications Group ................................ 8 3.6.1 LDP Notifications ........................................ 8 4 MPLS Label Distribution Protocol MIB Definitions ............. 8 5 Revision History ............................................. 49 5.1 Changes from .............. 49 5.2 Changes from .............. 49 5.3 Changes from .............. 50 6 TO DO List ................................................... 51 7 Acknowledgments .............................................. 51 8 References ................................................... 52 9 Security Considerations ...................................... 54 10 Authors' Addresses .......................................... 54 11 Full Copyright Statement .................................... 55 12 IANA Address Family Numbers MIB ............................. 55 Expires April 2000 [Page 2] INTERNET-DRAFT MPLS LDP MIB October 1999 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 the Multiprotocol Label Switching, Label Distribution Protocol (LDP) [18]. 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 [22]. 2. The SNMP Management Framework The SNMP Management Framework presently consists of five major components: o An overall architecture, described in RFC 2571 [RFC2571]. o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC 1215 [RFC1215]. The second version, called SMIv2, is described in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580 [RFC2580]. o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in STD 15, RFC 1157 [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]. o 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]. o 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 Expires April 2000 [Page 3] INTERNET-DRAFT MPLS LDP MIB October 1999 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. Expires April 2000 [Page 4] INTERNET-DRAFT MPLS LDP MIB October 1999 3. Structure of the MIB 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 the Multiprotocol Label Switching, Label Distribution Protocol (LDP) as defined in [18]. 3.1. Overview The MIB provides objects to configure/set-up potential LDP sessions on a specific LSR. A table is used to configure potential LDP Sessions, where each row in the table initiates an LDP Session. This is the mplsLdpEntityTable. Another table, the mplsLdpPeerTable, is a read-only table which records information learned via discovery. Each row in the Peer Table represents a peer. A third table is used to show the actual sessions which have been, or are in the process of being established. Each row represents a specific session between an Entity (on this LSR) and a peer. The following figure demonstrates these relationships: Entity Peer ------------ ------------ | | | | ------------ ------------- | | -------------- | | ------------ -----> | | <----- ------------ -------------- Session 3.2. Interface Indexing Interface Indexes as specified in [29] are used in the MIB. The descriptions of the ifIndexes denote which ifIndex is being used. NOTE: the use of ifIndex is for actual existing connections. 3.3. Future Considerations The following aspects are not addressed in this document: VPN issues (i.e. potential MIB objects such as the VPN Identifier are not included at this time), and lastly, multicast issues are not discussed. Some of these issues need further clarification before adding to the Expires April 2000 [Page 5] INTERNET-DRAFT MPLS LDP MIB October 1999 MIB. 3.4. Discussion of MIB Groups Currently, there are four groups: the MPLS LDP General Group, the MPLS LDP ATM Group, the MPLS LDP Frame Relay Group and the MPLS LDP Notifications Group. The MPLS LDP General Group and the MPLS LDP Notifications Group should always be supported. The MPLS LDP ATM Group is specific to ATM and should be supported only if LDP is using ATM. Likewise, the MPLS LDP Frame Relay group is specific to Frame Relay and should be supported only if LDP is using Frame Relay. 3.5. The MPLS LDP General Group This group contains information about the specific LDP Entities which are associated with this agent. Each LSR must have one LDP Entity. 3.5.1. The Label Distribution Protocol's Entity Table The LDP Entity Table provides a way to configure the LSR for using LDP. There must be at least one LDP Entity for the LSR to support LDP. Each entry/row in this table represents a single LDP Entity. 3.5.2. The Label Distribution Protocol's Entity ATM Objects There exists two tables to configure LDP for using ATM. These tables are the mplsLdpEntityAtmParmsTable and the mplsLdpEntityConfAtmLabelRangeTable. The mplsLdpEntityAtmParmsTable provides a way to configure information which would be contained in the 'Optional Paramer' portion of an LDP PDU Initialization Message. The mplsLdpEntityConfAtmLabelRangeTable provides a way to configure information which would be contained in the 'ATM Label Range Components' portion of an LDP PDU Intialization Message. 3.5.3. The Label Distribution Protocol's Entity Frame Relay Objects There exists two tables to configure LDP for using Frame Relay. These tables are the mplsLdpEntityFrameRelayParmsTable and the mplsLdpEntityConfFrLabelRangeTable. The mplsLdpEntityFrameRelayParmsTable provides a way to configure Expires April 2000 [Page 6] INTERNET-DRAFT MPLS LDP MIB October 1999 information which would be contained in the 'Optional Paramer' portion of an LDP PDU Initialization Message. The mplsLdpEntityConfFrLabelRangeTable provides a way to configure information which would be contained in the portion of an LDP PDU Intialization Message. 3.5.4. The Label Distribution Protocol's Entity Statistics Table The LDP Entity Statistics Table will maintain counters related to an LDP Entity. This Table should be a read-only table which contains statistical information. Each row in this table will be related to a single LDP Entity. 3.5.5. The LDP Peer Table The LDP Peer Table is a read-only table which contains information about LDP Peers. Each row in this table represents an LDP Peer which is known to an LDP Entity. 3.5.6. The LDP Session Table The LDP Session Table is a read-only table. Each entry in this table represents a single session between an LDP Entity and a Peer. 3.5.7. The LDP ATM Session Table The MPLS LDP ATM Session Table is a read-only table which contains session information specific to ATM. 3.5.8. The LDP Frame Relay Session Table The MPLS LDP Frame Relay Session Table is a read-only table which contains session information specific to Frame Relay. 3.5.9. The LDP Session Statistics Table The MPLS LDP Session Stats Table is a read-only table which contains statistical information on sessions. Expires April 2000 [Page 7] INTERNET-DRAFT MPLS LDP MIB October 1999 3.5.10. The LDP Session Peer Address Table The MPLS LDP Session Peer Address Table is a table which 'extends' the mplsLdpSessionTable. This table is a read-only table which stores Addresses learned after session initialization via "Address Message" advertisement. 3.5.11. The LDP Adjacencies Table This is a table of all adjacencies between all LPD Entities and all LDP Peers. A Session may have one or more adjacencies. 3.5.12. The LDP Label Information Base (LIB) Table The MPLS LDP LIB Table is a read-only table which contains information stored in the LIB. This table is indexed by a unique number which could be used to represent the LSP segment related to this LIB entry. The Lsp number corresponds to a FEC entry in the FEC Table which is described next. 3.5.13. The LDP FEC Table The FEC Table is a read-only table whic contains FEC (Forwarding Equivalence Class) information. Each entry/row represents a single FEC Element. 3.6. The LDP Notifications Group 3.6.1. LDP Notifications Currently, there is one notification which will be sent when an LDP attempts to initialize the same session beyond the configured threshold. 4. MPLS Label Distribution Protocol MIB Definitions MPLS-LDP-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE, experimental, Integer32, Counter32, Unsigned32 FROM SNMPv2-SMI Expires April 2000 [Page 8] INTERNET-DRAFT MPLS LDP MIB October 1999 MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION, RowStatus, TimeInterval, TruthValue FROM SNMPv2-TC InterfaceIndex FROM IF-MIB -- AtmInterfaceType, AtmVcIdentifier, AtmVpIdentifier FROM ATM-TC-MIB AddressFamilyNumbers FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB ; mplsLdpMIB MODULE-IDENTITY LAST-UPDATED "9910211200Z" -- October 21, 1999 ORGANIZATION "Multiprotocol Label Switching (mpls) Working Group" CONTACT-INFO "Joan Cucchiara (joan@ironbridgenetworks.com) IronBridge Networks Hans Sjostrand (hans.sjostrand@etx.ericsson.se) Ericsson James V. Luciani (luciani@baynetworks.com) Nortel Networks" DESCRIPTION "This MIB contains managed object definitions for the Multiprotocol Label Switching, Label Distribution Protocol, LDP, as defined in draft-ietf-mpls-ldp-06.txt." ::= { experimental XXXX } -- to be assigned --******************************************************************** -- MPLS LDP Textual Conventions --******************************************************************** -- MplsLsrIdentifier ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The Label Switch Router (LSR) identifier is the first 4 bytes or the IP Address component of the Label Distribution Protocol (LDP) identifier." SYNTAX OCTET STRING (SIZE (4)) -- -- A similar TC is also used in RFC2677.txt, perhaps -- this should be made general and not MPLS specific. -- MplsLdpGenAddr ::= TEXTUAL-CONVENTION Expires April 2000 [Page 9] INTERNET-DRAFT MPLS LDP MIB October 1999 STATUS current DESCRIPTION "The value of an network layer or data link layer address." SYNTAX OCTET STRING (SIZE (0..64)) MplsLdpIdentifier ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The LDP identifier is a six octet quantity which is used to identify an Label Switch Router (LSR) label space. The first four octets encode an IP address assigned to the LSR, and the last two octets identify a specific label space within the LSR." SYNTAX OCTET STRING (SIZE (6)) MplsLdpLabelTypes ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The Layer 2 label types which are defined for MPLS LDP are generic(1), atm(2), or frameRelay(3)." SYNTAX INTEGER(1..3) -- Top-level structure of the MIB (the following is proposed) mpls OBJECT IDENTIFIER ::= { mplsProtocols } mplsProtocols OBJECT IDENTIFIER ::= { mplsLdpObjects } -- under mplsProtocols will be LDP, CR-LDP, -- and other MPLS "Protocols". mplsLdpObjects OBJECT IDENTIFIER ::= { mplsLdpMIB 1 } mplsLdpNotifications OBJECT IDENTIFIER ::= { mplsLdpMIB 2 } mplsLdpConformance OBJECT IDENTIFIER ::= { mplsLdpMIB 3 } --**************************************************************** -- MPLS LDP Objects --**************************************************************** mplsLdpLsrObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 1 } mplsLdpEntityObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 2 } -- -- The MPLS Label Distribution Protocol Label Switch Router Objects -- mplsLdpLsrId OBJECT-TYPE Expires April 2000 [Page 10] INTERNET-DRAFT MPLS LDP MIB October 1999 SYNTAX MplsLsrIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The LSR's Identifier." ::= { mplsLdpLsrObjects 1 } mplsLdpLsrLabelRetentionMode OBJECT-TYPE SYNTAX INTEGER { conservative(1), liberal(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The LSR can be configured to use either conservative or liberal label retention mode. If the value of this object is conservative(1) then advertized label mappings are retained only if they will be used to forward packets, i.e. if label came from a valid next hop. If the value of this object is liberal(2) then all advertized label mappings are retained whether they are from a valid next hop or not." ::= { mplsLdpLsrObjects 2 } mplsLdpLsrLoopDetectionCapable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "A indication of whether this LSR supports loop detection. A value of 'true' indicates this LSR does support loop detection. A value of 'false' indicates this LSR does not support loop detection. Since Loop Detection is determined during Session Initialization, an individual session may not be running with loop detection enabled. This object simply gives an indication of whether or not the LSR has the ability to support Loop Detection." ::= { mplsLdpLsrObjects 3 } -- -- The MPLS Label Distribution Protocol Entity Objects -- Expires April 2000 [Page 11] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpEntityIndexNext OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains an appropriate value to be used for mplsLdpEntityIndex when creating entries in the mplsLdpEntityTable. The value 0 indicates that no unassigned entries are available. To obtain the mplsLdpEntityIndex value for a new entry, the manager issues a management protocol retrieval operation to obtain the current value of this object. After each retrieval, the agent should modify the value to the next unassigned index." ::= { mplsLdpEntityObjects 1 } mplsLdpEntityTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the MPLS Label Distribution Protocol Entities which exist on this Label Switch Router (LSR)." ::= { mplsLdpEntityObjects 2 } mplsLdpEntityEntry OBJECT-TYPE SYNTAX MplsLdpEntityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents an LDP entity. An entry can be created by a network administrator or by an SNMP agent as instructed by LDP." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex } ::= { mplsLdpEntityTable 1 } MplsLdpEntityEntry ::= SEQUENCE { mplsLdpEntityLdpId MplsLdpIdentifier, mplsLdpEntityIndex Unsigned32, mplsLdpEntityProtocolVersion Integer32, mplsLdpEntityAdminStatus INTEGER, mplsLdpEntityOperStatus INTEGER, mplsLdpEntityWellKnownDiscoveryPort Unsigned32, mplsLdpEntityMtu Integer32, mplsLdpEntityKeepAliveHoldTimer Integer32, mplsLdpEntityHelloHoldTimer Integer32, mplsLdpEntityFailedInitSessionThreshold Integer32, mplsLdpEntityLabelDistributionMethod INTEGER, Expires April 2000 [Page 12] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpEntityTargetedPeer TruthValue, mplsLdpEntityTargetedPeerAddrType AddressFamilyNumbers, mplsLdpEntityTargetedPeerAddr MplsLdpGenAddr, mplsLdpEntityOptionalParameters MplsLdpLabelTypes, mplsLdpEntityRowStatus RowStatus } mplsLdpEntityLdpId OBJECT-TYPE SYNTAX MplsLdpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The LDP identifier. The first four octets encode an IP address assigned to the LSR, and the last two octets identify a specific label space within the LSR." REFERENCE "LDP Specification, Section on LDP Identifiers." ::= { mplsLdpEntityEntry 1 } mplsLdpEntityIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This index is used as a secondary index to uniquely identify this row. Before creating a row in this table, the 'mplsLdpEntityIndexNext' object should be retrieved. That value should be used for the value of this index when creating a row in this table. (NOTE: if a value of zero (0) is retrieved, that indicates that no rows can be created in this table at this time." ::= { mplsLdpEntityEntry 2 } mplsLdpEntityProtocolVersion OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The version number of the protocol. The value of 0 on a read indicates that the version of the protocol is unknown. Otherwise, the value of this object represents the version of the LDP protocol." ::= { mplsLdpEntityEntry 3 } mplsLdpEntityAdminStatus OBJECT-TYPE SYNTAX INTEGER { Expires April 2000 [Page 13] INTERNET-DRAFT MPLS LDP MIB October 1999 enable(1), disable(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The administrative status of this LDP Entity." DEFVAL { enable } ::= { mplsLdpEntityEntry 4 } mplsLdpEntityOperStatus OBJECT-TYPE SYNTAX INTEGER { unknown(0), enabled(1), disabled(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The operational status of this LDP Entity." ::= { mplsLdpEntityEntry 5 } mplsLdpEntityWellKnownDiscoveryPort OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The well known LDP Discovery Port." ::= { mplsLdpEntityEntry 6 } mplsLdpEntityMtu OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum transmission unit (MTU) that was configured for this entity." ::= { mplsLdpEntityEntry 7 } mplsLdpEntityKeepAliveHoldTimer OBJECT-TYPE SYNTAX Integer32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The two octet value which is the proposed keep alive hold timer for this LDP Entity." ::= { mplsLdpEntityEntry 8 } Expires April 2000 [Page 14] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpEntityHelloHoldTimer OBJECT-TYPE SYNTAX Integer32 (0..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The two octet value which is the proposed Hello hold timer for this LDP Entity. A value of 0 means use the default, which is 15 seconds for Link Hellos and 45 seconds for Targeted Hellos. A value of 65535 means infinite." DEFVAL { 0 } ::= { mplsLdpEntityEntry 9 } mplsLdpEntityFailedInitSessionThreshold OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "When attempting to establish a session with a given Peer, the given LDP Entity should send out a notification when exceeding this threshold. A value of 0 (zero) for this object indicates that the threshold is infinity. In other words, a notification will not be sent if the value of this object is 0 (zero)." ::= { mplsLdpEntityEntry 10 } mplsLdpEntityLabelDistributionMethod OBJECT-TYPE SYNTAX INTEGER { downstreamOnDemand(1), downstreamUnsolicited(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "For any given LDP session, the method of label distribution must be specified." ::= { mplsLdpEntityEntry 11 } mplsLdpEntityTargetedPeer OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "If this LDP entity uses targeted peer then set this to true." DEFVAL { false } ::= { mplsLdpEntityEntry 12 } mplsLdpEntityTargetedPeerAddrType OBJECT-TYPE Expires April 2000 [Page 15] INTERNET-DRAFT MPLS LDP MIB October 1999 SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the internetwork layer address used for the Extended Discovery. This object indicates how the value of mplsLdpEntityTargetedPeerAddr is to be interpreted." ::= { mplsLdpEntityEntry 13 } mplsLdpEntityTargetedPeerAddr OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the internetwork layer address used for the Extended Discovery." ::= { mplsLdpEntityEntry 14 } mplsLdpEntityOptionalParameters OBJECT-TYPE SYNTAX MplsLdpLabelTypes MAX-ACCESS read-create STATUS current DESCRIPTION "Specifies the optional parameters for the LDP Initialization Message. If the value is generic(1) then no optional parameters will be sent in the LDP Initialization message associated with this Entity. If the value is atmParameters(2) then a row must be created in the mplsLdpEntityAtmParms Table, which corresponds to this entry. If the value is frameRelayParameters(3) then a row must be created in the mplsLdpEntityFrameRelayParms Table, which corresponds to this entry." ::= { mplsLdpEntityEntry 15 } mplsLdpEntityRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { mplsLdpEntityEntry 16 } -- Expires April 2000 [Page 16] INTERNET-DRAFT MPLS LDP MIB October 1999 -- Ldp Entity Objects for ATM -- mplsLdpEntityAtmObjects OBJECT IDENTIFIER ::= { mplsLdpEntityObjects 3 } mplsLdpEntityAtmParmsTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityAtmParmsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the ATM specific information which could be used in the 'Optional Parameters' and other ATM specific information." ::= { mplsLdpEntityAtmObjects 1 } mplsLdpEntityAtmParmsEntry OBJECT-TYPE SYNTAX MplsLdpEntityAtmParmsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents the ATM parameters and ATM information for this LDP entity." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex } ::= { mplsLdpEntityAtmParmsTable 1 } MplsLdpEntityAtmParmsEntry ::= SEQUENCE { mplsLdpEntityAtmMergeCap INTEGER, mplsLdpEntityAtmLabelRangeComponents Unsigned32, mplsLdpEntityAtmVcDirectionality INTEGER, mplsLdpEntityAtmLsrConnectivity INTEGER, mplsLdpEntityDefaultControlVpi AtmVpIdentifier, mplsLdpEntityDefaultControlVci AtmVcIdentifier, mplsLdpEntityUnlabTrafVpi AtmVpIdentifier, mplsLdpEntityUnlabTrafVci AtmVcIdentifier, mplsLdpEntityAtmRowStatus RowStatus } mplsLdpEntityAtmMergeCap OBJECT-TYPE SYNTAX INTEGER { notSupported(0), vpMerge(1), vcMerge(2), vpAndVcMerge(3) } MAX-ACCESS read-create STATUS current DESCRIPTION Expires April 2000 [Page 17] INTERNET-DRAFT MPLS LDP MIB October 1999 "Denotes the Merge Capability of this Entity." ::= { mplsLdpEntityAtmParmsEntry 1 } mplsLdpEntityAtmLabelRangeComponents OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "Number of LabelRange Components in the Initialization message. This also represents the number of entries in the mplsLdpLabelRangeComponentsTable which correspond to this entry." ::= { mplsLdpEntityAtmParmsEntry 2 } mplsLdpEntityAtmVcDirectionality OBJECT-TYPE SYNTAX INTEGER { bidirectional(0), unidirectional(1) } MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of this object is 'bidirectional(0)', a given VCI, within a given VPI, is used as a label for both directions independently. If the value of this object is 'unidirectional(1)', a given VCI within a VPI designates one direction." ::= { mplsLdpEntityAtmParmsEntry 3 } mplsLdpEntityAtmLsrConnectivity OBJECT-TYPE SYNTAX INTEGER { direct(1), indirect(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The peer LSR may be connected indirectly by means of an ATM VP so that the VPI values may be different on either endpoint so the label MUST be encoded entirely within the VCI field." REFERENCE "draft-ietf-mpls-atm-02.txt, Section 7" DEFVAL { direct } ::= { mplsLdpEntityAtmParmsEntry 4 } mplsLdpEntityDefaultControlVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create Expires April 2000 [Page 18] INTERNET-DRAFT MPLS LDP MIB October 1999 STATUS current DESCRIPTION "The default VPI value for the non-MPLS connection. The default value of this is 0 (zero) but other values may be configured. This object allows a different value to be configured." REFERENCE "draft-ietf-mpls-atm-02.txt, Section 7.1" DEFVAL { 0 } ::= { mplsLdpEntityAtmParmsEntry 5 } mplsLdpEntityDefaultControlVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "The Default VCI value for a non-MPLS connection. The default value of this is 32 but other values may be configured. This object allows a different value to be configured." REFERENCE "draft-ietf-mpls-atm-02.txt, Section 7.1" DEFVAL { 32 } ::= { mplsLdpEntityAtmParmsEntry 6 } mplsLdpEntityUnlabTrafVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "VPI value of the VCC supporting unlabelled traffic. This non-MPLS connection is used to carry unlabelled (IP) packets." DEFVAL { 0 } ::= { mplsLdpEntityAtmParmsEntry 7 } mplsLdpEntityUnlabTrafVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "VCI value of the VCC supporting unlabelled traffic. This non-MPLS connection is used to carry unlabelled (IP) packets." DEFVAL { 32 } ::= { mplsLdpEntityAtmParmsEntry 8 } mplsLdpEntityAtmRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create Expires April 2000 [Page 19] INTERNET-DRAFT MPLS LDP MIB October 1999 STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { mplsLdpEntityAtmParmsEntry 9 } -- -- The MPLS LDP Entity Configurable ATM Label Range Table -- mplsLdpEntityConfAtmLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityConfAtmLabelRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The MPLS LDP Entity Configurable ATM Label Range Table. The purpose of this table is to provide a mechanism for specifying a contiguous range of vpi's with a contiguous range of vci's, or a 'label range' for LDP Entities. LDP Entities which use ATM must have at least one entry in this table." ::= { mplsLdpEntityAtmObjects 2 } mplsLdpEntityConfAtmLabelRangeEntry OBJECT-TYPE SYNTAX MplsLdpEntityConfAtmLabelRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A row in the LDP Entity Configurable ATM Label Range Table. One entry in this table contains information on a single range of labels represented by the configured Upper and Lower Bounds VPI/VCI pairs. These are the same data used in the Initialization Message. NOTE: The ranges for a specific LDP Entity are UNIQUE and non-overlapping. For example, for a specific LDP Entity index, there could be one entry having ConfLowerBound vpi/vci == 0/32, and ConfUpperBound vpi/vci == 0/100, and a second entry for this same interface with ConfLowerBound vpi/vci == 0/101 and ConfUpperBound vpi/vci == 0/200. However, there could not be a third entry with ConfLowerBound vpi/vci == 0/200 and ConfUpperBound vpi/vci == 0/300 because this label range overlaps with the second entry (i.e. both entries now have 0/200). A row will not be created unless a unique and non-overlapping Expires April 2000 [Page 20] INTERNET-DRAFT MPLS LDP MIB October 1999 range is specified. Thus, row creation implies a one-shot row creation of LDP EntityID and ConfLowerBound vpi/vci and ConfUpperBound vpi/vci. At least one label range entry for a specific LDP Entity MUST include the default VPI/VCI values denoted in the LDP Entity Table." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpEntityConfAtmLabelRangeMinimumVpi, mplsLdpEntityConfAtmLabelRangeMinimumVci } ::= { mplsLdpEntityConfAtmLabelRangeTable 1 } MplsLdpEntityConfAtmLabelRangeEntry ::= SEQUENCE { mplsLdpEntityConfAtmLabelRangeMinimumVpi AtmVpIdentifier, mplsLdpEntityConfAtmLabelRangeMinimumVci AtmVcIdentifier, mplsLdpEntityConfAtmLabelRangeMaximumVpi AtmVpIdentifier, mplsLdpEntityConfAtmLabelRangeMaximumVci AtmVcIdentifier, mplsLdpEntityConfAtmLabelRangeRowStatus RowStatus } mplsLdpEntityConfAtmLabelRangeMinimumVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VPI number configured for this range." ::= { mplsLdpEntityConfAtmLabelRangeEntry 1 } mplsLdpEntityConfAtmLabelRangeMinimumVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VCI number configured for this range." ::= { mplsLdpEntityConfAtmLabelRangeEntry 2 } mplsLdpEntityConfAtmLabelRangeMaximumVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum VPI number configured for this range." ::= { mplsLdpEntityConfAtmLabelRangeEntry 3 } mplsLdpEntityConfAtmLabelRangeMaximumVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum VCI number configured for this range." Expires April 2000 [Page 21] INTERNET-DRAFT MPLS LDP MIB October 1999 ::= { mplsLdpEntityConfAtmLabelRangeEntry 4 } mplsLdpEntityConfAtmLabelRangeRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention. There must exist at least one entry in this table for every LDP Entity that has 'mplsLdpEntityOptionalParameters' object with a value of 'atmSessionParameters'." ::= { mplsLdpEntityConfAtmLabelRangeEntry 5 } -- -- Ldp Entity Objects for Frame Relay -- mplsLdpEntityFrameRelayObjects OBJECT IDENTIFIER ::= { mplsLdpEntityObjects 4 } mplsLdpEntityFrameRelayParmsTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityFrameRelayParmsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the Optional Parameters to specify what this Entity is going to specify for Frame Relay specific LDP Intialization Messages." ::= { mplsLdpEntityFrameRelayObjects 1 } mplsLdpEntityFrameRelayParmsEntry OBJECT-TYPE SYNTAX MplsLdpEntityFrameRelayParmsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents the Frame Relay optional parameters associated with the LDP entity." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex } ::= { mplsLdpEntityFrameRelayParmsTable 1 } MplsLdpEntityFrameRelayParmsEntry ::= SEQUENCE { mplsLdpEntityFrMergeCap INTEGER, mplsLdpEntityFrLabelRangeComponents Unsigned32, mplsLdpEntityFrVcDirectionality INTEGER, Expires April 2000 [Page 22] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpEntityFrParmsRowStatus RowStatus } mplsLdpEntityFrMergeCap OBJECT-TYPE SYNTAX INTEGER { notSupported(0), supported(1) } MAX-ACCESS read-create STATUS current DESCRIPTION "This represents whether or not Frame Relay merge capability is supported." ::= { mplsLdpEntityFrameRelayParmsEntry 1 } mplsLdpEntityFrLabelRangeComponents OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "Number of LabelRange Components in the Initialization message. This also represents the number of entries in the mplsLdpEntityConfFrLabelRangeTable which correspond to this entry." ::= { mplsLdpEntityFrameRelayParmsEntry 2 } mplsLdpEntityFrVcDirectionality OBJECT-TYPE SYNTAX INTEGER { bidirectional(0), unidirection(1) } MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of this object is 'bidirectional(0)', then the LSR supports the use of a given DLCI as a label for both directions independently. If the value of this object is 'unidirectional(1)', then the LSR uses the given DLCI as a label in only one direction." ::= { mplsLdpEntityFrameRelayParmsEntry 3 } mplsLdpEntityFrParmsRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { mplsLdpEntityFrameRelayParmsEntry 4 } Expires April 2000 [Page 23] INTERNET-DRAFT MPLS LDP MIB October 1999 -- -- Frame Relay Label Range Components -- mplsLdpEntityConfFrLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityConfFrLabelRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the Optional Parameters to specify what this Entity is going to specify for Frame Relay specific LDP Intialization Messages." ::= { mplsLdpEntityFrameRelayObjects 2 } mplsLdpEntityConfFrLabelRangeEntry OBJECT-TYPE SYNTAX MplsLdpEntityConfFrLabelRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents the Frame Relay optional parameters associated with the LDP entity." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpConfFrMinimumDlci } ::= { mplsLdpEntityConfFrLabelRangeTable 1 } MplsLdpEntityConfFrLabelRangeEntry ::= SEQUENCE { mplsLdpConfFrMinimumDlci Integer32, mplsLdpConfFrMaximumDlci Integer32, mplsLdpConfFrLen INTEGER, mplsLdpConfFrRowStatus RowStatus } mplsLdpConfFrMinimumDlci OBJECT-TYPE SYNTAX Integer32(0..4194303) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The lower bound which is supported. This value should be the same as that in the Frame Relay Label Range Component's Minimum DLCI field." ::= { mplsLdpEntityConfFrLabelRangeEntry 1 } mplsLdpConfFrMaximumDlci OBJECT-TYPE SYNTAX Integer32 (0..4194303) MAX-ACCESS read-create STATUS current DESCRIPTION Expires April 2000 [Page 24] INTERNET-DRAFT MPLS LDP MIB October 1999 "The upper bound which is supported. This value should be the same as that in the Frame Relay Label Range Component's Maximum DLCI field." ::= { mplsLdpEntityConfFrLabelRangeEntry 2 } mplsLdpConfFrLen OBJECT-TYPE SYNTAX INTEGER { tenDlciBits(0), seventeenDlciBits(1), twentyThreeDlciBits(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the DLCI bits." ::= { mplsLdpEntityConfFrLabelRangeEntry 3 } mplsLdpConfFrRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention. If the value of the object 'mplsLdpEntityOptionalParameters' contains the value of 'frameReleaySessionParameters(3)' then there must be at least one corresponding entry in this table." ::= { mplsLdpEntityConfFrLabelRangeEntry 4 } -- -- The MPLS LDP Entity Statistics Table -- mplsLdpEntityStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table is a read-only table which augments the mplsLdpEntityTable. The purpose of this table is to keep statistical information about the LDP Entities on the LSR." ::= { mplsLdpEntityObjects 5 } mplsLdpEntityStatsEntry OBJECT-TYPE SYNTAX MplsLdpEntityStatsEntry MAX-ACCESS not-accessible STATUS current Expires April 2000 [Page 25] INTERNET-DRAFT MPLS LDP MIB October 1999 DESCRIPTION "A row in this table contains statistical information about an LDP Entity. Some counters contained in a row are for fatal errors received during a former LDP Session associated with this entry. For example, an Ldp Pdu received on a TCP connection for an LDP Session which contains a fatal error is counted here, because the session is terminated. If the error is NOT fatal (i.e. and the Session remains), then the error is counted in the mplsLdpSessionStatsEntry." AUGMENTS { mplsLdpEntityEntry } ::= { mplsLdpEntityStatsTable 1 } MplsLdpEntityStatsEntry ::= SEQUENCE { mplsLdpAttemptedSessions Counter32, mplsLdpSessionRejectedNoHelloErrors Counter32, mplsLdpSessionRejectedAdvertisementErrors Counter32, mplsLdpSessionRejectedMaxPduErrors Counter32, mplsLdpSessionRejectedLabelRangeErrors Counter32, mplsLdpBadLdpIdentifierErrors Counter32, mplsLdpBadPduLengthErrors Counter32, mplsLdpBadMessageLengthErrors Counter32, mplsLdpBadTlvLengthErrors Counter32, mplsLdpMalformedTlvValueErrors Counter32, mplsLdpKeepAliveTimerExpiredErrors Counter32, mplsLdpShutdownNotifReceived Counter32, mplsLdpShutdownNotifSent Counter32 } mplsLdpAttemptedSessions OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total attempted sessions for this LDP Entity." ::= { mplsLdpEntityStatsEntry 1 } mplsLdpSessionRejectedNoHelloErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the Session Rejected/No Hello Error Notification Messages sent or received by this LDP Entity." ::= { mplsLdpEntityStatsEntry 2 } Expires April 2000 [Page 26] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpSessionRejectedAdvertisementErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the Session Rejected/Parameters Advertisement Mode Error Notification Messages sent or received by this LDP Entity." ::= { mplsLdpEntityStatsEntry 3 } mplsLdpSessionRejectedMaxPduErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the Session Rejected/Parameters Max Pdu Length Error Notification Messages sent or received by this LDP Entity." ::= { mplsLdpEntityStatsEntry 4 } mplsLdpSessionRejectedLabelRangeErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the Session Rejected/Parameters Label Range Notification Notification Messages sent or received by this LDP Entity." ::= { mplsLdpEntityStatsEntry 5 } mplsLdpBadLdpIdentifierErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Bad LDP Identifier Fatal Errors detected by the session(s) (past and present) associated with this LDP Entity." REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 6 } mplsLdpBadPduLengthErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Bad Pdu Length Fatal Expires April 2000 [Page 27] INTERNET-DRAFT MPLS LDP MIB October 1999 Errors detected by the session(s) (past and present) associated with this LDP Entity." REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 7 } mplsLdpBadMessageLengthErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Bad Message Length Fatal Errors detected by the session(s) (past and present) associated with this LDP Entity." REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 8 } mplsLdpBadTlvLengthErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Bad TLV Length Fatal Errors detected by the session(s) (past and present) associated with this LDP Entity." REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 9 } mplsLdpMalformedTlvValueErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Malformed TLV Value Fatal Errors detected by the session(s) (past and present) associated with this LDP Entity." REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 10 } mplsLdpKeepAliveTimerExpiredErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Session Keep Alive Timer Expired Errors detected by the session(s) (past and present) associated with this LDP Entity." Expires April 2000 [Page 28] INTERNET-DRAFT MPLS LDP MIB October 1999 REFERENCE "LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 11 } mplsLdpShutdownNotifReceived OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Shutdown Notfications received related to session(s) (past and present) associated with this LDP Entity." ::= { mplsLdpEntityStatsEntry 12 } mplsLdpShutdownNotifSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Shutdown Notfications sent related to session(s) (past and present) associated with this LDP Entity." ::= { mplsLdpEntityStatsEntry 13 } -- -- The MPLS LDP Peer Table -- mplsLdpPeerObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 3 } mplsLdpPeerTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about LDP peers which have been discovered by the LDP Entities that are managed by this agent." ::= { mplsLdpPeerObjects 1 } mplsLdpPeerEntry OBJECT-TYPE SYNTAX MplsLdpPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a single Peer." INDEX { mplsLdpPeerLdpId, mplsLdpPeerIndex } ::= { mplsLdpPeerTable 1 } Expires April 2000 [Page 29] INTERNET-DRAFT MPLS LDP MIB October 1999 MplsLdpPeerEntry ::= SEQUENCE { mplsLdpPeerLdpId MplsLdpIdentifier, mplsLdpPeerIndex Unsigned32, mplsLdpPeerInternetworkAddrType AddressFamilyNumbers, mplsLdpPeerInternetworkAddr MplsLdpGenAddr, mplsLdpPeerLabelDistributionMethod INTEGER, mplsLdpPeerLoopDetectionForPV INTEGER, mplsLdpPeerPathVectorLimit Integer32 } mplsLdpPeerLdpId OBJECT-TYPE SYNTAX MplsLdpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The LDP identifier of this LDP Peer." ::= { mplsLdpPeerEntry 1 } mplsLdpPeerIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for the LDP peer that is unique within the scope of table. This index is a secondary index which along with the mplsLdpPeerLdpId, uniquely identifies this entry." ::= { mplsLdpPeerEntry 2 } mplsLdpPeerInternetworkAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the internetwork layer address of this LDP peer. This object indicates how the value of mplsLdpPeerInternetworkAddr is to be interpreted." ::= { mplsLdpPeerEntry 3 } mplsLdpPeerInternetworkAddr OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the internetwork layer address of this LDP peer." ::= { mplsLdpPeerEntry 4 } mplsLdpPeerLabelDistributionMethod OBJECT-TYPE SYNTAX INTEGER { downstreamOnDemand(1), Expires April 2000 [Page 30] INTERNET-DRAFT MPLS LDP MIB October 1999 downstreamUnsolicited(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "For any given LDP session, the method of label distribution must be specified." REFERENCE "draft-ietf-mpls-arch-06.txt [20]." ::= { mplsLdpPeerEntry 5 } mplsLdpPeerLoopDetectionForPV OBJECT-TYPE SYNTAX INTEGER { disabled(0), enabled(1) } MAX-ACCESS read-only STATUS current DESCRIPTION "An indication of whether loop detection based on path vectors is disabled or enabled for this Peer. If this object has a value of disabled(0), then loop detection is disabled. Otherwise, if this object has a value of enabled(1), then loop detection based on path vectors is enabled." ::= { mplsLdpPeerEntry 6 } mplsLdpPeerPathVectorLimit OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "If the value of 'mplsLdpPeerLoopDetectionForPV' for this entry is 'enabled(1)', the this object represents that Path Vector Limit for this peer. If the value of 'mplsLdpPeerLoopDetectionForPV' for this entry is 'disabled(0)', then this value should be 0 (zero)." ::= { mplsLdpPeerEntry 7 } -- -- The MPLS LDP Sessions Table -- mplsLdpSessionObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 4 } mplsLdpSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSessionEntry Expires April 2000 [Page 31] INTERNET-DRAFT MPLS LDP MIB October 1999 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Sessions between the LDP Entities and LDP Peers. Each row represents a single session." ::= { mplsLdpSessionObjects 1 } mplsLdpSessionEntry OBJECT-TYPE SYNTAX MplsLdpSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single session between an LDP Entity and LDP Peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpPeerIndex, mplsLdpSessionIndex } ::= { mplsLdpSessionTable 1 } MplsLdpSessionEntry ::= SEQUENCE { mplsLdpSessionIndex Unsigned32, mplsLdpSessionState INTEGER, mplsLdpSessionProtocolVersion Integer32, mplsLdpSessionKeepAliveHoldTimeRemaining TimeInterval, mplsLdpSessionLabelAdvertisement INTEGER, mplsLdpSessionLoopDetectionForPV INTEGER, mplsLdpSessionPathVectorLimit Integer32, mplsLdpSessionMaxPduLength Integer32 } mplsLdpSessionIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An unique identifier for this entry such that it identifies a specific LDP Session. The motivation for this index is so an NMS can distinguish when a session between a given Entity and Peer goes away and then is 're-established'. This index value would change and thus indicate to the NMS that this is a different session." ::= { mplsLdpSessionEntry 1 } mplsLdpSessionState OBJECT-TYPE SYNTAX INTEGER { nonexistent(1), Expires April 2000 [Page 32] INTERNET-DRAFT MPLS LDP MIB October 1999 initialized(2), openrec(3), opensent(4), operational(5) } MAX-ACCESS read-only STATUS current DESCRIPTION "The current state of the session, all of the states 1 - 5 are based on the state machine for session negotiation behavior." ::= { mplsLdpSessionEntry 2 } mplsLdpSessionProtocolVersion OBJECT-TYPE SYNTAX Integer32(1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The version of the LDP Protocol which this session is using." ::= { mplsLdpSessionEntry 3 } mplsLdpSessionKeepAliveHoldTimeRemaining OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "The keep alive hold time remaining for this session." ::= { mplsLdpSessionEntry 4 } mplsLdpSessionLabelAdvertisement OBJECT-TYPE SYNTAX INTEGER { downStreamUnsolicited(0), downStreamOnDemand(1) } MAX-ACCESS read-only STATUS current DESCRIPTION "The label advertisement discipline used for this Session." ::= { mplsLdpSessionEntry 5 } mplsLdpSessionLoopDetectionForPV OBJECT-TYPE SYNTAX INTEGER { disabled(0), enabled(1) } MAX-ACCESS read-only STATUS current DESCRIPTION Expires April 2000 [Page 33] INTERNET-DRAFT MPLS LDP MIB October 1999 "An indication of whether loop detection based on path vectors is disabled or enabled for this session. If this object has a value of disabled(0), then loop detection is disabled. Otherwise, if this object has a value of enabled(1), then loop detection based on path vectors is enabled." ::= { mplsLdpSessionEntry 6 } mplsLdpSessionPathVectorLimit OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "If the value of 'mplsLdpSessionLoopDetectionForPV' for this entry is 'enabled(1)', the this object represents the Path Vector Limit for this session. If the value of 'mplsLdpSessionLoopDetectionForPV' for this entry is 'disabled(0)', then this value should be 0 (zero)." ::= { mplsLdpSessionEntry 7 } mplsLdpSessionMaxPduLength OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The value of maximum allowable length for LDP PDUs for this session. This value may have been negotiated during the Session Initialization." ::= { mplsLdpSessionEntry 8 } -- -- MPLS LDP ATM Session Information -- mplsLdpAtmSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpAtmSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Sessions between the LDP Entities and LDP Peers using ATM as the underlying media. Each row represents a single session. NOTE: this table cannot use the 'AUGMENTS' clause because there is not necessarily a one-to-one Expires April 2000 [Page 34] INTERNET-DRAFT MPLS LDP MIB October 1999 mapping between this table and the mplsLdpSessionTable." ::= { mplsLdpSessionObjects 2 } mplsLdpAtmSessionEntry OBJECT-TYPE SYNTAX MplsLdpAtmSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single session between an LDP Entity and LDP Peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpPeerIndex, mplsLdpSessionIndex, mplsLdpSessionAtmLabelRangeLowerBoundVpi, mplsLdpSessionAtmLabelRangeLowerBoundVci } ::= { mplsLdpAtmSessionTable 1 } MplsLdpAtmSessionEntry ::= SEQUENCE { mplsLdpSessionAtmLabelRangeLowerBoundVpi AtmVpIdentifier, mplsLdpSessionAtmLabelRangeLowerBoundVci AtmVcIdentifier, mplsLdpSessionAtmLabelRangeUpperBoundVpi AtmVpIdentifier, mplsLdpSessionAtmLabelRangeUpperBoundVci AtmVcIdentifier } mplsLdpSessionAtmLabelRangeLowerBoundVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VPI number for this range." ::= { mplsLdpAtmSessionEntry 1 } mplsLdpSessionAtmLabelRangeLowerBoundVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VCI number for this range." ::= { mplsLdpAtmSessionEntry 2 } mplsLdpSessionAtmLabelRangeUpperBoundVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION Expires April 2000 [Page 35] INTERNET-DRAFT MPLS LDP MIB October 1999 "The maximum VPI number for this range." ::= { mplsLdpAtmSessionEntry 3 } mplsLdpSessionAtmLabelRangeUpperBoundVci OBJECT-TYPE SYNTAX AtmVcIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum VCI number for this range." ::= { mplsLdpAtmSessionEntry 4 } -- -- MPLS LDP Frame Relay Session Information -- mplsLdpFrameRelaySessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpFrameRelaySessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Sessions between the LDP Entities and LDP Peers using Frame Relay as the underlying media. Each row represents a single session. NOTE: this table cannot use the 'AUGMENTS' clause because there is not necessarily a one-to-one mapping between this table and the mplsLdpSessionTable." ::= { mplsLdpSessionObjects 3 } mplsLdpFrameRelaySessionEntry OBJECT-TYPE SYNTAX MplsLdpFrameRelaySessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single session between an LDP Entity and LDP Peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpPeerIndex, mplsLdpSessionIndex, mplsLdpFrSessionMinDlci } ::= { mplsLdpFrameRelaySessionTable 1 } MplsLdpFrameRelaySessionEntry ::= SEQUENCE { mplsLdpFrSessionMinDlci Integer32, mplsLdpFrSessionMaxDlci Integer32, Expires April 2000 [Page 36] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpFrSessionLen INTEGER } mplsLdpFrSessionMinDlci OBJECT-TYPE SYNTAX Integer32(0..4194303) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The lower bound of DLCIs which are supported." ::= { mplsLdpFrameRelaySessionEntry 1 } mplsLdpFrSessionMaxDlci OBJECT-TYPE SYNTAX Integer32 (0..4194303) MAX-ACCESS read-only STATUS current DESCRIPTION "The upper bound of DLCIs which are supported." ::= { mplsLdpFrameRelaySessionEntry 2 } mplsLdpFrSessionLen OBJECT-TYPE SYNTAX INTEGER { tenDlciBits(0), seventeenDlciBits(1), twentyThreeDlciBits(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object specifies the DLCI bits." ::= { mplsLdpFrameRelaySessionEntry 3 } -- -- The MPLS LDP Session Statistics Table -- mplsLdpSessionStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSessionStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Sessions between the LDP Entities and LDP Peers." ::= { mplsLdpSessionObjects 4 } mplsLdpSessionStatsEntry OBJECT-TYPE SYNTAX MplsLdpSessionStatsEntry MAX-ACCESS not-accessible Expires April 2000 [Page 37] INTERNET-DRAFT MPLS LDP MIB October 1999 STATUS current DESCRIPTION "An entry in this table represents statistical information on a single session between an LDP Entity and LDP Peer." AUGMENTS { mplsLdpSessionEntry } ::= { mplsLdpSessionStatsTable 1 } MplsLdpSessionStatsEntry ::= SEQUENCE { mplsLdpSessionStatsUnknownMessageTypeErrors Counter32, mplsLdpSessionStatsUnknownTlvErrors Counter32 } mplsLdpSessionStatsUnknownMessageTypeErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Unknown Message Type Errors detected during this session." ::= { mplsLdpSessionStatsEntry 1 } mplsLdpSessionStatsUnknownTlvErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Unknown TLV Errors detected during this session." ::= { mplsLdpSessionStatsEntry 2 } -- -- Address Message/Address Withdraw Message Information -- -- This information is associated with a specific Session -- because Label Address Messages are sent after session -- initialization has taken place. -- mplsLdpSessionPeerAddressTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSessionPeerAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'extends' the mplsLdpSessionTable. This table is used to store Label Address Information from Label Address Message received by this LSR from Peers. This table is read-only and should be updated when Label Withdraw Address Messages are received, i.e. Rows should be deleted as apropriate. Expires April 2000 [Page 38] INTERNET-DRAFT MPLS LDP MIB October 1999 NOTE: since more than one address may be contained in a Label Address Message, this table 'extends', rather than 'AUGMENTS' the mplsLdpSessionTable's information." ::= { mplsLdpSessionObjects 5 } mplsLdpSessionPeerAddressEntry OBJECT-TYPE SYNTAX MplsLdpSessionPeerAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on session's for a single next hop address which was advertised in an Address Message from the LDP peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpPeerIndex, mplsLdpSessionIndex } ::= { mplsLdpSessionPeerAddressTable 1 } MplsLdpSessionPeerAddressEntry ::= SEQUENCE { mplsLdpSessionPeerNextHopAddressType AddressFamilyNumbers, mplsLdpSessionPeerNextHopAddress MplsLdpGenAddr } mplsLdpSessionPeerNextHopAddressType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-only STATUS current DESCRIPTION "The internetwork layer address type of this Next Hop Address as specified in the Label Address Message associated with this Session. The value of this object indicates how to interpret the value of mplsLdpSessionPeerNextHopAddress." ::= { mplsLdpSessionPeerAddressEntry 1 } mplsLdpSessionPeerNextHopAddress OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the next hop address." REFERENCE "LDP Specification [18] defines only IPv4 for LDP Protocol Version 1, see section 3.4.3." ::= { mplsLdpSessionPeerAddressEntry 2 } Expires April 2000 [Page 39] INTERNET-DRAFT MPLS LDP MIB October 1999 -- -- The MPLS LDP Hello Adjacency Table -- mplsLdpHelloAdjacencyObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 5 } mplsLdpHelloAdjacencyTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpHelloAdjacencyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Hello Adjacencies for Sessions." ::= { mplsLdpHelloAdjacencyObjects 1 } mplsLdpHelloAdjacencyEntry OBJECT-TYPE SYNTAX MplsLdpHelloAdjacencyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each row represents a single LDP Hello Adjacency. An LDP Session can have one or more Hello adjacencies." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpPeerIndex, mplsLdpHelloAdjacencyIndex } ::= { mplsLdpHelloAdjacencyTable 1 } MplsLdpHelloAdjacencyEntry ::= SEQUENCE { mplsLdpHelloAdjacencyIndex Unsigned32, mplsLdpHelloAdjacencyHoldTimeRemaining TimeInterval, mplsLdpHelloAdjacencyType INTEGER } mplsLdpHelloAdjacencyIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for this specific adjacency." ::= { mplsLdpHelloAdjacencyEntry 1 } mplsLdpHelloAdjacencyHoldTimeRemaining OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "The time remaining for this Hello Adjacency. This interval will change when the 'next' Hello message which corresponds to this Expires April 2000 [Page 40] INTERNET-DRAFT MPLS LDP MIB October 1999 Hello Adjacency is received." ::= { mplsLdpHelloAdjacencyEntry 2 } mplsLdpHelloAdjacencyType OBJECT-TYPE SYNTAX INTEGER { link(1), targeted(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This adjacency is the result of a 'link' hello if the value of this object is link(1). Otherwise, it is a result of a 'targeted' hello, targeted(2)." ::= { mplsLdpHelloAdjacencyEntry 3 } -- -- MPLS LDP LIB Table -- mplsLdpLibObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 6 } mplsLdpLibTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpLibEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table represents LIB (Label Information Base) Information. The table is read-only." ::= { mplsLdpLibObjects 1 } mplsLdpLibEntry OBJECT-TYPE SYNTAX MplsLdpLibEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each row represents a single LDP LIB entry." INDEX { mplsLdpLibLspId } ::= { mplsLdpLibTable 1 } MplsLdpLibEntry ::= SEQUENCE { mplsLdpLibLspId Unsigned32, mplsLdpLibLabelInIfIndex InterfaceIndex, mplsLdpLibLabelOutIfIndex InterfaceIndex, mplsLdpLibLabelType MplsLdpLabelTypes, mplsLdpLibInLabel MplsLdpGenAddr, mplsLdpLibOutLabel MplsLdpGenAddr } Expires April 2000 [Page 41] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpLibLspId OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This number is used to uniquely identify this row, since this row is associated with a specific LSP, it may also be used to describe a unique number for an LSP. This number is used in the mplsLdpFecTable to identify which FECs or FEC is associated with this LIB entry." ::= { mplsLdpLibEntry 1 } mplsLdpLibLabelInIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-only STATUS current DESCRIPTION "The ifIndex of the 'mplsLdpInLabel'." ::= { mplsLdpLibEntry 2 } mplsLdpLibLabelOutIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-only STATUS current DESCRIPTION "The ifIndex of the 'mplsLdpOutLabel'." ::= { mplsLdpLibEntry 3 } mplsLdpLibLabelType OBJECT-TYPE SYNTAX MplsLdpLabelTypes MAX-ACCESS read-only STATUS current DESCRIPTION "The Layer 2 Label Type for 'mplsLdpInLabel' and 'mplsLdpOutLabel'." ::= { mplsLdpLibEntry 4 } mplsLdpLibInLabel OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS read-only STATUS current DESCRIPTION "The incoming label of this LSP." ::= { mplsLdpLibEntry 5 } mplsLdpLibOutLabel OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS read-only STATUS current DESCRIPTION Expires April 2000 [Page 42] INTERNET-DRAFT MPLS LDP MIB October 1999 "The outgoing label of this LSP." ::= { mplsLdpLibEntry 6 } -- -- Mpls Ldp FEC Table -- mplsLdpFecTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table represents the FEC (Forwarding Equivalence Class) Information associated with an LSP. The table is read-only." ::= { mplsLdpLibObjects 2 } mplsLdpFecEntry OBJECT-TYPE SYNTAX MplsLdpFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each row represents a single FEC Element." INDEX { mplsLdpFecType, mplsLdpFecAddressFamily, mplsLdpFecAddressLength, mplsLdpFecAddress } ::= { mplsLdpFecTable 1 } MplsLdpFecEntry ::= SEQUENCE { mplsLdpFecType INTEGER, mplsLdpFecAddressFamily AddressFamilyNumbers, mplsLdpFecAddressLength Integer32(0..255), mplsLdpFecAddress MplsLdpGenAddr, mplsLdpFecLspId Unsigned32 } mplsLdpFecType OBJECT-TYPE SYNTAX INTEGER { prefix(1), hostAddress(2) } MAX-ACCESS not-accessible STATUS current DESCRIPTION "The type of the FEC. If the value of this object is 'prefix(1)' then the FEC type described by this row is for address prefixes. Expires April 2000 [Page 43] INTERNET-DRAFT MPLS LDP MIB October 1999 If the value of this object is 'hostAddress(2)' then the FEC type described by this row is a host address." ::= { mplsLdpFecEntry 1 } mplsLdpFecAddressFamily OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS not-accessible STATUS current DESCRIPTION "The value of this object is from the Address Family Numbers." ::= { mplsLdpFecEntry 2 } mplsLdpFecAddressLength OBJECT-TYPE SYNTAX Integer32(0..255) MAX-ACCESS not-accessible STATUS current DESCRIPTION "If the value of 'mplsLdpFecType' is 'prefix(1)' then the value of this object is the length in bits of the address prefix represented by 'mplsLdpFecAddress', or if the length is zero then this is a special value which indicates that the prefix matches all addresses. In this case the prefix is also zero (i.e. 'mplsLdpFecAddress' will have the value of zero.)" ::= { mplsLdpFecEntry 3 } mplsLdpFecAddress OBJECT-TYPE SYNTAX MplsLdpGenAddr MAX-ACCESS not-accessible STATUS current DESCRIPTION "If the value of 'mplsLdpFecType' is 'prefix(1)' then the value of this object is the address prefix. If the value of the 'mplsLdpFecAddressLength' is object is zero, then this object should also be zero." ::= { mplsLdpFecEntry 4 } mplsLdpFecLspId OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This number represents the LSP which is related to this FEC. The value of this object should correspond to an entry in the MplsLdpLibTable, as denoted by the 'mplsLdpLibLspId' object. In other words, this Expires April 2000 [Page 44] INTERNET-DRAFT MPLS LDP MIB October 1999 object and the 'mplsLdpLibLspId' should have the same value." ::= { mplsLdpFecEntry 5 } --- --- Notifications --- mplsLdpNotificationPrefix OBJECT IDENTIFIER ::= { mplsLdpNotifications 0 } mplsLdpFailedInitSessionThresholdExceeded NOTIFICATION-TYPE OBJECTS { mplsLdpEntityFailedInitSessionThreshold } STATUS current DESCRIPTION "This notification is generated whenever the value of mplsLdpEntityFailedInitSessionThreshold is exceeded." ::= { mplsLdpNotificationPrefix 1 } mplsLdpPathVectorLimitMismatch NOTIFICATION-TYPE OBJECTS { mplsLdpPeerPathVectorLimit, mplsLdpSessionPathVectorLimit } STATUS current DESCRIPTION "This notification is generated when the value of mplsLdpSessionPathVectorLimit does NOT match the value of the mplsLdpPeerPathVectorLimit for the corresponding mplsLdpPeerEntry." REFERENCE "LDP Specification, Section 3.5.3." ::= { mplsLdpNotificationPrefix 2 } --******************************************************************** -- Module Conformance Statement --******************************************************************** mplsLdpGroups OBJECT IDENTIFIER ::= { mplsLdpConformance 1 } mplsLdpCompliances OBJECT IDENTIFIER ::= { mplsLdpConformance 2 } Expires April 2000 [Page 45] INTERNET-DRAFT MPLS LDP MIB October 1999 -- -- Compliance Statements -- mplsLdpModuleCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The basic implentation requirements for agents that support the MPLS LDP MIB." MODULE -- this module MANDATORY-GROUPS { mplsLdpGeneralGroup, mplsLdpNotificationsGroup } GROUP mplsLdpAtmGroup DESCRIPTION "This group must be supported if ATM is used in the MPLS LDP implementation." GROUP mplsLdpFrameRelayGroup DESCRIPTION "This group must be supported if Frame Relay is used in the MPLS LDP implementation." ::= { mplsLdpCompliances 1 } -- units of conformance mplsLdpGeneralGroup OBJECT-GROUP OBJECTS { mplsLdpLsrId, mplsLdpLsrLabelRetentionMode, mplsLdpLsrLoopDetectionCapable, mplsLdpEntityIndexNext, mplsLdpEntityProtocolVersion, mplsLdpEntityAdminStatus, mplsLdpEntityOperStatus, mplsLdpEntityWellKnownDiscoveryPort, mplsLdpEntityMtu, mplsLdpEntityKeepAliveHoldTimer, mplsLdpEntityHelloHoldTimer, mplsLdpEntityFailedInitSessionThreshold, mplsLdpEntityLabelDistributionMethod, mplsLdpEntityTargetedPeer, mplsLdpEntityTargetedPeerAddrType, mplsLdpEntityTargetedPeerAddr, mplsLdpEntityOptionalParameters, mplsLdpEntityRowStatus, mplsLdpAttemptedSessions, mplsLdpSessionRejectedNoHelloErrors, mplsLdpSessionRejectedAdvertisementErrors, mplsLdpSessionRejectedMaxPduErrors, Expires April 2000 [Page 46] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpSessionRejectedLabelRangeErrors, mplsLdpBadLdpIdentifierErrors, mplsLdpBadPduLengthErrors, mplsLdpBadMessageLengthErrors, mplsLdpBadTlvLengthErrors, mplsLdpMalformedTlvValueErrors, mplsLdpKeepAliveTimerExpiredErrors, mplsLdpShutdownNotifReceived, mplsLdpShutdownNotifSent, mplsLdpPeerInternetworkAddrType, mplsLdpPeerInternetworkAddr, mplsLdpPeerLabelDistributionMethod, mplsLdpPeerLoopDetectionForPV, mplsLdpPeerPathVectorLimit, mplsLdpSessionState, mplsLdpSessionProtocolVersion, mplsLdpSessionKeepAliveHoldTimeRemaining, mplsLdpSessionLabelAdvertisement, mplsLdpSessionLoopDetectionForPV, mplsLdpSessionPathVectorLimit, mplsLdpSessionMaxPduLength, mplsLdpSessionStatsUnknownMessageTypeErrors, mplsLdpSessionStatsUnknownTlvErrors, mplsLdpSessionPeerNextHopAddressType, mplsLdpSessionPeerNextHopAddress, mplsLdpHelloAdjacencyHoldTimeRemaining, mplsLdpHelloAdjacencyType, mplsLdpLibLabelInIfIndex, mplsLdpLibLabelOutIfIndex, mplsLdpLibLabelType, mplsLdpLibInLabel, mplsLdpLibOutLabel, mplsLdpFecLspId } STATUS current DESCRIPTION "Objects that apply to all MPLS LDP implementations." ::= { mplsLdpGroups 1 } mplsLdpAtmGroup OBJECT-GROUP OBJECTS { mplsLdpEntityAtmMergeCap, mplsLdpEntityAtmLabelRangeComponents, mplsLdpEntityAtmVcDirectionality, mplsLdpEntityAtmLsrConnectivity, mplsLdpEntityDefaultControlVpi, mplsLdpEntityDefaultControlVci, Expires April 2000 [Page 47] INTERNET-DRAFT MPLS LDP MIB October 1999 mplsLdpEntityUnlabTrafVpi, mplsLdpEntityUnlabTrafVci, mplsLdpEntityAtmRowStatus, mplsLdpEntityConfAtmLabelRangeMaximumVpi, mplsLdpEntityConfAtmLabelRangeMaximumVci, mplsLdpEntityConfAtmLabelRangeRowStatus, mplsLdpSessionAtmLabelRangeUpperBoundVpi, mplsLdpSessionAtmLabelRangeUpperBoundVci } STATUS current DESCRIPTION "Objects that apply to all MPLS LDP implementations over ATM." ::= { mplsLdpGroups 2 } mplsLdpFrameRelayGroup OBJECT-GROUP OBJECTS { mplsLdpEntityFrMergeCap, mplsLdpEntityFrLabelRangeComponents, mplsLdpEntityFrVcDirectionality, mplsLdpEntityFrParmsRowStatus, mplsLdpConfFrMaximumDlci, mplsLdpConfFrLen, mplsLdpConfFrRowStatus, mplsLdpFrSessionMaxDlci, mplsLdpFrSessionLen } STATUS current DESCRIPTION "Objects that apply to all MPLS LDP implementations over Frame Relay." ::= { mplsLdpGroups 3 } mplsLdpNotificationsGroup NOTIFICATION-GROUP NOTIFICATIONS { mplsLdpFailedInitSessionThresholdExceeded, mplsLdpPathVectorLimitMismatch } STATUS current DESCRIPTION "The notification(s) which an MPLS LDP implemention is required to implement." ::= { mplsLdpGroups 4 } END Expires April 2000 [Page 48] INTERNET-DRAFT MPLS LDP MIB October 1999 5. Revision History This section should be removed when this document is published as an RFC. 5.1. Changes from Added Scalar Objects: mplsLdpLsrLoopDetectionPresent, and mplsLdpEntityIndexNext. Added the following objects to the mplsLdpEntityTable: mplsLdpEntityProtocolVersion, mplsLdpEntityAdminStatus, mplsLdpEntityOperStatus, mplsLdpEntityTargetedPeer, mplsLdpEntityTargetedPeerAddrType, mplsLdpEntityTargetedPeerAddr, and mplsLdpEntityHelloHoldTimer. Changed the description of the mplsLdpEntityAtmParmsTable and added the following objects to this table: mplsLdpEntityAtmLsrConnectivity, mplsLdpEntityDefaultControlVpi, mplsLdpEntityDefaultControlVci, mplsLdpEntityUnlabTrafVpi, and mplsLdpEntityUnlabTrafVci. NOTE: the last four objects were in Version 01 of the MIB but were mistakenly omitted from Version 02. Now, they are back. Changed the indexing of the mplsLdpEntityConfAtmLabelRangeTable to include the minimum VPI/VCI. This is to ensure that indices in this table are unique. Changed the indexing of the mplsLdpEntityConfFrLabelRangeTable, to include the minimum DLCI value. This is to ensure that indices in this table are unique. Added [32] to Reference Section. 5.2. Changes from The MIB was updated to correspond to draft-ietf-mpls-ldp-06.txt of the LDP Specification [18]. The front section was updated. The MIB was made to be less ATM-centric. Essentially, the ATM specific objects where removed from the tables and placed in ATM specific Tables. A "type" was added to the "base" tables and a row is to be created in the ATM/FR/etc. "type" table. Apropos compliance statements were added to reflect the separation of ATM and Frame Relay objects into their respective tables. Objects for Loop Detection were removed from describing the LDP Expires April 2000 [Page 49] INTERNET-DRAFT MPLS LDP MIB October 1999 implementation (i.e. the scalars were removed) and Loop Dection objects were added to the Session Table. (Although as the LDP Specification indicates loop detection should be for an LSR within a domain.) The following tables were added: mplsLdpEntityAtmParmsTable, mplsLdpEntityConfAtmLabelRangeTable, mplsLdpFrameRelayParmsTable, mplsLdpConfFrLabelRangeTable, mplsLdpAtmSessionTable, mpslLdpFrameRelaySessionTable, mplsLdpSessionPeerAddressTable, mplsLdpLibTable, and the mplsLdpFecTable. The following notifications were added: notification for Session removal. The following objects were removed from the Session Table: mplsLdpSessionRole was removed (this can be determined by comparing LSR Ids and does not need to be explicitely in the MIB.) ATM specific objects (mplsLdpSessionAtmLabelRangeLowerBoundVpi mplsLdpSessionAtmLabelRangeLowerBoundVci, mplsLdpSessionAtmLabelRangeUpperBoundVpi mplsLdpSessionAtmLabelRangeUpperBoundVci) were removed and put into a separate table. Frame Relay objects were added in a separate table. Hello Adjacency Table was updated. The objects, mplsLdpSessionRejectedParamErrors, mplsLdpSessionRejectedNoHelloErrors, mplsLdpBadLdpIdentifierErrors, mplsLdpBadPduLengthErrors, mplsLdpBadMessageLengthErrors, mplsLdpBadTlvLengthErrors, mplsLdpMalformedTlvValueErrors, mplsLdpKeepAliveTimerExpiredErrors, mplsLdpShutdownNotifReceived, and mplsLdpShutdownNotifSent were added to the mplsLdpEntityStatsTable. The mplsLdpSessionStatsTable was added to count statics based on a per Session basis. The mplLdpPeerConfAtmLabelRangeTable has been removed. There is no need to configure information for a Peer. All information for a peer is learned, thus peer information is read-only. (Editorial) References were updated to reflect the documents which this version was based on. 5.3. Changes from Textual conventions were added for the LSR Identifier and the LDP Identifier. Top-level mib structure was added. The LDP MIB falls under a proposed hierarchy of mpls.mplsProtocols. Expires April 2000 [Page 50] INTERNET-DRAFT MPLS LDP MIB October 1999 The mib hierarchy within the LDP MIB was also changed. A new branch, under mpls.mplsProtocols.mplsLdpMIB.mplsLdpObjects was added. This branch is mplsLdpLsrObjects. Currently, this contains several new scalar objects: mplsLdpLsrID, mplsLdpLsrLoopDetectionPresent, mplsLdpLsrLoopDetectinAdminStatus, mplsLdpLsrPathVectorLimit, mplsLdpLsrHopCountLimit, mplsLdpLsrLoopPreventionPresent, mplsLdpLsrLoopPreventionAdminStatus, and mplsLdpLsrLabelRetentionMode. mplsLdpEntityTable is now indexed by mplsLdpEntityIdentifier, which is the LDP Identifier used in Session establishment. mplsLdpEntityLoopDetection and mplsLdpEntityLoopPrevention objects were removed from this table. The following objects were added to the mplsLdpEntityTable: mplsLdpEntityLabelSpaceType, mplsLdpEntityUnlabTrafVpi, mplsLdpEntityUnlabTrafVci, mplsLdpEntityMergeCapability, mplsLdpEntityVcDirectionality, and mplsLdpEntityLabelDistributionMethod. The following objects were added to the mplsLdpPeerEntityTable: mplsLdpPeerLabelDistributionMethod. The following object was removed from the mplsLdpEntityStatsTable: mplsLdpEntityEstablishedSessions. References were added and revised. 6. TO DO List This section should be removed when this document is published as an RFC. This section outlines the next areas the authors intend to address in subsequent revisions. o Remove the following sections prior to final publication: IANA Considerations Section, Revisions Section and this (TO DO List) Section. o Updates as suggested by review of working group. 7. Acknowledgments The authors would like to thank the following people: Leigh McLellan, Geetha Brown, Geping Chen and Charlan Zhou from Nortel Networks, and Zoltan Takacs and Bo Augustsson from Ericsson. Expires April 2000 [Page 51] INTERNET-DRAFT MPLS LDP MIB October 1999 8. References [RFC2571] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999 [RFC1155] Rose, M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", STD 16, RFC 1155, 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 [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 [RFC1157] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, May 1990. [RFC1901] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, 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. [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 [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 [RFC1905] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, January 1996. Expires April 2000 [Page 52] INTERNET-DRAFT MPLS LDP MIB October 1999 [RFC2573] Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications", RFC 2573, 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 [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 [17] Narten, T., and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs.", RFC 2434, IBM, Maxware, October 1998 [18] Andersson, L., Doolan, P., Feldman, N., Fredette, A., and Thomas, B., "LDP Specification.", draft-ietf-mpls-ldp-06.txt, Nortel Networks, Ennovate Networks, IBM, Nortel Networks, Cisco Systems October 1999 [19] Callon, R., Doolan, P., Feldman, N., Fredette, A., Swallow, G., and A. Viswanathan, "A Framework for Multiprotocol Label Switching", draft-ietf-mpls-framework-04.txt, IronBridge Networks, Ennovate Networks, IBM, Nortel Networks, Cisco Systems, July 1999. [20] Rosen, E., Viswananthan, A., and R. Callon, "Multiprotocol Label Switching Architecture", draft-ietf-mpls-arch-06.txt, Cisco Systems, Lucent Technologies, and IronBridge Networks, August 1999. [21] Jamoussi, B., editor, "Constraint-Based LSP Setup using LDP", draft-ietf-mpls-cr-ldp-02.txt, August 1999. [22] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, Harvard University, March 1997 [23] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, Harvard University, October 1996 [24] Srinivansan, C., and A. Viswanathan, "MPLS Traffic Engineering Management Information Base Using SMIv2", draft-ietf-mpls-te-mib- 01.txt, Lucent Technologies, June 1999. [25] Srinivansan, C., and A. Viswanathan, "MPLS Label Switch Router Management Information Base Using SMIv2", draft-ietf-mpls-lsr-mib- 00.txt, Lucent Technologies, June 1999. [26] Greene, M., J. Cucchiara, J. Luciani, "Definition of Managed Objects for the NBMA Next Hop Resolution Protocol (NHRP)", RFC 2677, August 1999. Expires April 2000 [Page 53] INTERNET-DRAFT MPLS LDP MIB October 1999 [27] Internet Assigned Numbers Authority (IANA), ADDRESS FAMILY NUMBERS, (http://www.isi.edu/in-notes/iana/assignements/address-family- numbers), for MIB (ftp://ftp.isi.edu/mib/ianaaddressfamilynumbers.mib). [28] Noto, M., E. Spiegel, K. Tesink, "Definition of Textual Conventions and OBJECT-IDENTITIES for ATM Management", RFC 2514, February 1999. [29] McCloghrie, K., F. Kastenholz, "The Interfaces Group MIB using SMIv2", RFC 2233, November 1997. [30] Tesink, K. (ed.) "Definitions of Managed Objects for ATM Management", RFC 2515, February 1999. [31] Grossman, D., and J. Heinanen, "Multiprotocol Encapsulation over ATM Adaptation Layer 5", RFC 2684, September 1999. [32] Davie, B., J. Lawrence, K. McCloghrie, Y. Rekhter, E. Rosen, G. Swallow, and P. Doolan, "MPLS using LDP and ATM VC Switching", draft-ietf-mpls-atm-02.txt, April 1999. 9. Security Considerations Assuming that secure network management (such as SNMP v3) is implemented, the objects represented in this MIB do not pose a threat to the security of the network. 10. Authors' Addresses James V. Luciani Nortel Networks 3 Federal Street Mail Stop: BL3-03 Billerica, MA 01821 Phone: (978) 288-4734 Email: luciani@baynetworks.com Hans Sjostrand Ericsson Business Unit Datacom Networks and IP Services S-126 25 Stockholm, Sweden Phone: +46 8 719 9960 Email: hans.sjostrand@etx.ericsson.se Joan Cucchiara IronBridge Networks 55 Hayden Ave., Suite 1000 Expires April 2000 [Page 54] INTERNET-DRAFT MPLS LDP MIB October 1999 Lexington, MA 02421 Phone: (781) 372-8236 Email: joan@ironbridgenetworks.com 11. Full Copyright Statement Copyright (C) The Internet Society (1999). 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. 12. IANA Address Family Numbers MIB This section is copied verbatim from the RFC2677 [26]. This section will be removed in future versions of this draft. This section was copied here for convenience, as it is IMPORTED into the LDP MIB. The Internet Assigned Numbers Authority (IANA) has been and continues to be responsible for maintaining the ADDRESS FAMILY NUMBERS (http://www.isi.edu/in-notes/iana/assignments/address-family-numbers) name space assignments. The IANA has placed this list in a MIB module, such that it may be imported into other MIBs. The motivation for doing this is to allow MIBs to not have to change when a new assignment is made to the ADDRESS FAMILY NUMBERS. This is very Expires April 2000 [Page 55] INTERNET-DRAFT MPLS LDP MIB October 1999 similar to the motivation behind the IANAifType-MIB. Any additions or changes to the list of ADDRESS FAMILY NUMBERS registered via IANA will be done as they have in the past and this document does not propose any changes to the ADDRESS FAMILY NUMBERS other than to place them into a MIB, which can be found via anonymous FTP at: ftp://ftp.isi.edu/mib/ianaaddressfamilynumbers.mib. Expires April 2000 [Page 56] INTERNET-DRAFT MPLS LDP MIB October 1999