-- extracted from draft-ietf-mpls-ldp-mib-09.txt -- at Fri May 14 06:21:06 2004 MPLS-LDP-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE, Integer32, Counter32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF RowPointer, RowStatus, TimeInterval, TruthValue, TimeStamp, StorageType FROM SNMPv2-TC InterfaceIndex FROM IF-MIB InetAddressType, InetAddress, InetPortNumber FROM INET-ADDRESS-MIB mplsMIB, MplsLabel, MplsLabelDistributionMethod, MplsLdpIdentifier, MplsLdpLabelType, MplsLspType, MplsLsrIdentifier, MplsRetentionMode FROM MPLS-TC-MIB ; mplsLdpMIB MODULE-IDENTITY LAST-UPDATED "200208081200Z" -- 8 August 2002 ORGANIZATION "Multiprotocol Label Switching (mpls) Working Group" CONTACT-INFO "Joan Cucchiara (jcucchiara@crescentnetworks.com) Crescent Networks Hans Sjostrand (hans@ipunplugged.com) ipUnplugged James V. Luciani (jluciani@crescentnetworks.com) Crescent Networks Working Group Chairs: George Swallow, email: swallow@cisco.com Loa Andersson, email: loa.andersson@utfors.se MPLS Working Group, email: mpls@uu.net " DESCRIPTION "This MIB contains managed object definitions for the 'Multiprotocol Label Switching, Label Distribution Protocol, LDP' document." REVISION "200208081200Z" -- 8 August 2002 DESCRIPTION "Initial version published as part of RFC XXXX." ::= { mplsMIB 3 } -- to be assigned --**************************************************************** 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's -- Label Switching Router Objects -- mplsLdpLsrId OBJECT-TYPE SYNTAX MplsLsrIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The LSR's Identifier." ::= { mplsLdpLsrObjects 1 } mplsLdpLsrLoopDetectionCapable OBJECT-TYPE SYNTAX INTEGER { none(1), other(2), hopCount(3), pathVector(4), hopCountAndPathVector(5) } MAX-ACCESS read-only STATUS current DESCRIPTION "A indication of whether this Label Switching Router supports loop detection. none(1) -- Loop Detection is not supported on this LSR. other(2) -- Loop Detection is supported but by a method other than those listed below. hopCount(3) -- Loop Detection is supported by Hop Count only. pathVector(4) -- Loop Detection is supported by Path Vector only. hopCountAndPathVector(5) -- Loop Detection is supported by both Hop Count And Path Vector. Since Loop Detection is determined during Session Initialization, an individual session may not be running with loop detection. This object simply gives an indication of whether or not the LSR has the ability to support Loop Detection and which types." ::= { mplsLdpLsrObjects 2 } -- -- The MPLS Label Distribution Protocol Entity Objects -- mplsLdpEntityLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime at the time of the most recent addition or deletion of an entry to the mplsLdpEntityTable/mplsLdpEntityStatsTable. If no such changes have occurred since the last re-initialization of the local management subsystem, then this object contains a zero value." ::= { mplsLdpEntityObjects 1 } mplsLdpEntityIndexNext OBJECT-TYPE SYNTAX Unsigned32 (0..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 2 } 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 Switching Router (LSR)." ::= { mplsLdpEntityObjects 3 } 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, mplsLdpEntityTcpDscPort InetPortNumber, mplsLdpEntityUdpDscPort InetPortNumber, mplsLdpEntityMaxPduLength Unsigned32, mplsLdpEntityKeepAliveHoldTimer Integer32, mplsLdpEntityHelloHoldTimer Integer32, mplsLdpEntityInitSesThreshold Integer32, mplsLdpEntityLabelDistMethod MplsLabelDistributionMethod, mplsLdpEntityLabelRetentionMode MplsRetentionMode, mplsLdpEntityPathVectorLimit Integer32, mplsLdpEntityHopCountLimit Integer32, mplsLdpEntityTargetPeer TruthValue, mplsLdpEntityTargetPeerAddrType InetAddressType, mplsLdpEntityTargetPeerAddr InetAddress, mplsLdpEntityLabelType MplsLdpLabelType, mplsLdpEntityDiscontinuityTime TimeStamp, mplsLdpEntityStorageType StorageType, mplsLdpEntityRowStatus RowStatus } mplsLdpEntityLdpId OBJECT-TYPE SYNTAX MplsLdpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The LDP identifier." REFERENCE "[RFC3036] 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. A secondary index (this object) is meaningful to some but not all, LDP implementations. For example in an LDP implementation which uses PPP would use this index to differentiate PPP sub-links. Another way to use this index is to give this the value of ifIndex. However, this is dependant on the implementation." ::= { mplsLdpEntityEntry 2 } mplsLdpEntityProtocolVersion OBJECT-TYPE SYNTAX Integer32(1..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The version number of the LDP protocol which will be used in the session initialization message. Section 3.5.3 in the LDP Specification specifies that the version of the LDP protocol is negotiated during session establishment. The value of this object represents the value that is sent in the initialization message." REFERENCE "[RFC3036], LDP Specification, Section 3.5.3 Initialization Message." DEFVAL { 1 } ::= { mplsLdpEntityEntry 3 } mplsLdpEntityAdminStatus OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The administrative status of this LDP Entity. If this object is changed from 'enable' to 'disable' and this entity has already attempted to establish contact with a Peer, then all contact with that Peer is lost and all information from that Peer needs to be removed from the MIB. (This implies that the network management subsystem should clean up any related entry in the mplsLdpPeerTable). At this point the user is able to change values which are related to this entity. When the admin status is set back to 'up', then this Entity will attempt to establish a new session with the Peer." DEFVAL { enable } ::= { mplsLdpEntityEntry 4 } mplsLdpEntityOperStatus OBJECT-TYPE SYNTAX INTEGER { unknown(1), enabled(2), disabled(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The operational status of this LDP Entity." ::= { mplsLdpEntityEntry 5 } mplsLdpEntityTcpDscPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-create STATUS current DESCRIPTION "The TCP Discovery Port for LDP. The default value is the well-known value of this port." REFERENCE "[RFC3036], LDP Specification, Section 2.4.1, Basic Discovery Mechanism, Section 2.4.2, Extended Discovery Mechanism, Section 3.10, Well-known Numbers, and Section 3.10.1. UDP and TCP Ports." DEFVAL { 646 } ::= { mplsLdpEntityEntry 6 } mplsLdpEntityUdpDscPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-create STATUS current DESCRIPTION "The UDP Discovery Port for LDP. The default value is the well-known value for this port." REFERENCE "[RFC3036], LDP Specification, Section 2.4.1, Basic Discovery Mechanism, Section 2.4.2, Extended Discovery Mechanism, Section 3.10, Well-known Numbers, and Section 3.10.1. UDP and TCP Ports." DEFVAL { 646 } ::= { mplsLdpEntityEntry 7 } mplsLdpEntityMaxPduLength OBJECT-TYPE SYNTAX Unsigned32 (256..65535) UNITS "octets" MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum PDU Length that is sent in the Common Session Parameters of an Initialization Message. According to the LDP Specification [RFC3036] a value of 255 or less specifies the default maximum length of 4096 octets, this is why the value of this object starts at 256. The operator should explicitely choose the default value (i.e. 4096), or some other value. The receiving LSR MUST calculate the maximum PDU length for the session by using the smaller of its and its peer's proposals for Max PDU Length." REFERENCE "[RFC3036], LDP Specification, Section 3.5.3. Initialization Message." DEFVAL { 4096 } ::= { mplsLdpEntityEntry 8 } mplsLdpEntityKeepAliveHoldTimer OBJECT-TYPE SYNTAX Integer32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The 16-bit integer value which is the proposed keep alive hold timer for this LDP Entity." DEFVAL { 40 } ::= { mplsLdpEntityEntry 9 } mplsLdpEntityHelloHoldTimer OBJECT-TYPE SYNTAX Integer32 (0..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The 16-bit integer value which is the proposed Hello hold timer for this LDP Entity. The Hello Hold time in seconds. An LSR maintains a record of Hellos received from potential peers. This object represents the Hold Time in the Common Hello Parameters TLV of the Hello Message. A value of 0 is a default value and should be interpretted in conjunction with the mplsLdpEntityTargetPeer object. If the value of this object is 0: if the value of the mplsLdpEntityTargetPeer object is false(2), then this specifies that the Hold Time's actual default value is 15 seconds (i.e. the default Hold time for Link Hellos is 15 seconds). Otherwise if the value of the mplsLdpEntityTargetPeer object is true(1), then this specifies that the Hold Time's actual default value is 45 seconds (i.e. the default Hold time for Targeted Hellos is 45 seconds). A value of 65535 means infinite (i.e. wait forever). All other values represent the amount of time in seconds to wait for a Hello Message. Setting the hold time to a value smaller than 15 is not recommended, although not forbidden according to [RFC3036]." REFERENCE "[RFC3036], LDP Specification, Section 3.5.2., Hello Message." DEFVAL { 0 } ::= { mplsLdpEntityEntry 10 } mplsLdpEntityInitSesThreshold OBJECT-TYPE SYNTAX Integer32(0..100) MAX-ACCESS read-create STATUS current DESCRIPTION "When attempting to establish a session with a given Peer, the given LDP Entity should send out the SNMP notification, 'mplsLdpInitSesThresholdExceeded', when the number of Session Initialization messages sent exceeds this threshold. The notification is used to notify an operator when this Entity and its Peer are possibily engaged in an endless sequence of messages as each NAKs the other's Initialization messages with Error Notification messages. Setting this threshold which triggers the notification is one way to notify the operator. A value of 0 (zero) for this object indicates that the threshold is infinity, thus the SNMP notification will never be generated." REFERENCE "[RFC3036], LDP Specification, Section 2.5.3 Session Initialization." DEFVAL { 8 } ::= { mplsLdpEntityEntry 11 } mplsLdpEntityLabelDistMethod OBJECT-TYPE SYNTAX MplsLabelDistributionMethod MAX-ACCESS read-create STATUS current DESCRIPTION "For any given LDP session, the method of label distribution must be specified." ::= { mplsLdpEntityEntry 12 } mplsLdpEntityLabelRetentionMode OBJECT-TYPE SYNTAX MplsRetentionMode MAX-ACCESS read-create STATUS current DESCRIPTION "The LDP Entity 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." ::= { mplsLdpEntityEntry 13 } mplsLdpEntityPathVectorLimit OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of this object is 0 (zero) then Loop Dection for Path Vectors is disabled. Otherwise, if this object has a value greater than zero, then Loop Dection for Path Vectors is enabled, and the Path Vector Limit is this value. Also, the value of the object, 'mplsLdpLsrLoopDetectionCapable', must be set to either 'pathVector(4)' or 'hopCountAndPathVector(5)', if this object has a value greater than 0 (zero), otherwise it is ignored." REFERENCE "[RFC3036], LDP Specification, Section 2.8 Loop Dection, Section 3.4.5 Path Vector TLV." ::= { mplsLdpEntityEntry 14 } mplsLdpEntityHopCountLimit OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of this object is 0 (zero), then Loop Detection using Hop Counters is disabled. If the value of this object is greater than 0 (zero) then Loop Detection using Hop Counters is enabled, and this object specifies this Entity's maximum allowable value for the Hop Count. Also, the value of the object mplsLdpLsrLoopDetectionCapable must be set to either 'hopCount(3)' or 'hopCountAndPathVector(5)' if this object has a value greater than 0 (zero), otherwise it is ignored." DEFVAL { 0 } ::= { mplsLdpEntityEntry 15 } mplsLdpEntityTargetPeer 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 16 } mplsLdpEntityTargetPeerAddrType OBJECT-TYPE SYNTAX InetAddressType 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 mplsLdpEntityTargetPeerAddr is to be interpreted." ::= { mplsLdpEntityEntry 17 } mplsLdpEntityTargetPeerAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the internetwork layer address used for the Extended Discovery." ::= { mplsLdpEntityEntry 18 } mplsLdpEntityLabelType OBJECT-TYPE SYNTAX MplsLdpLabelType 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." REFERENCE "[RFC3036], LDP Specification, Section 3.5.3., Initialization Message." ::= { mplsLdpEntityEntry 19 } mplsLdpEntityDiscontinuityTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime on the most recent occasion at which any one or more of this entity's counters suffered a discontinuity. The relevant counters are the specific instances associated with this entity of any Counter32, or Counter64 object contained in the 'mplsLdpEntityStatsTable'. If no such discontinuities have occurred since the last re-initialization of the local management subsystem, then this object contains a zero value." ::= { mplsLdpEntityEntry 20 } mplsLdpEntityStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this entry." ::= { mplsLdpEntityEntry 21 } 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 22 } -- -- 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 4 } mplsLdpEntityStatsEntry OBJECT-TYPE SYNTAX MplsLdpEntityStatsEntry MAX-ACCESS not-accessible STATUS current 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 during an LDP Session contains a fatal error. That 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 mplsLdpSesStatsEntry." AUGMENTS { mplsLdpEntityEntry } ::= { mplsLdpEntityStatsTable 1 } MplsLdpEntityStatsEntry ::= SEQUENCE { mplsLdpAttemptedSessions Counter32, mplsLdpSesRejectedNoHelloErrors Counter32, mplsLdpSesRejectedAdErrors Counter32, mplsLdpSesRejectedMaxPduErrors Counter32, mplsLdpSesRejectedLRErrors Counter32, mplsLdpBadLdpIdentifierErrors Counter32, mplsLdpBadPduLengthErrors Counter32, mplsLdpBadMessageLengthErrors Counter32, mplsLdpBadTlvLengthErrors Counter32, mplsLdpMalformedTlvValueErrors Counter32, mplsLdpKeepAliveTimerExpErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { mplsLdpEntityStatsEntry 1 } mplsLdpSesRejectedNoHelloErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { mplsLdpEntityStatsEntry 2 } mplsLdpSesRejectedAdErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { mplsLdpEntityStatsEntry 3 } mplsLdpSesRejectedMaxPduErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { mplsLdpEntityStatsEntry 4 } mplsLdpSesRejectedLRErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the Session Rejected/Parameters Label Range Notification Messages sent or received by this LDP Entity. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], 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 Errors detected by the session(s) (past and present) associated with this LDP Entity. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], LDP Specification, Section 3.5.1.2." ::= { mplsLdpEntityStatsEntry 10 } mplsLdpKeepAliveTimerExpErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." REFERENCE "[RFC3036], 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpEntityDiscontinuityTime." ::= { mplsLdpEntityStatsEntry 13 } -- -- The MPLS LDP Peer Table -- mplsLdpSessionObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 3 } mplsLdpPeerLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime at the time of the most recent addition or deletion to the mplsLdpPeerTable/mplsLdpSessionTable." ::= { mplsLdpSessionObjects 1 } mplsLdpPeerTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about LDP peers known by Entities in the mplsLdpEntityTable. The information in this table is based on information from the Entity-Peer interaction during session initialization but is not appropriate for the mplsLdpSessionTable, because objects in this table may or may not be used in session establishment." ::= { mplsLdpSessionObjects 2 } mplsLdpPeerEntry OBJECT-TYPE SYNTAX MplsLdpPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a single Peer which is related to a Session. NOTE: this table is augmented by the mplsLdpSessionTable." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId } ::= { mplsLdpPeerTable 1 } MplsLdpPeerEntry ::= SEQUENCE { mplsLdpPeerLdpId MplsLdpIdentifier, mplsLdpPeerLabelDistMethod MplsLabelDistributionMethod, mplsLdpPeerPathVectorLimit Integer32 } mplsLdpPeerLdpId OBJECT-TYPE SYNTAX MplsLdpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The LDP identifier of this LDP Peer." ::= { mplsLdpPeerEntry 1 } mplsLdpPeerLabelDistMethod OBJECT-TYPE SYNTAX MplsLabelDistributionMethod MAX-ACCESS read-only STATUS current DESCRIPTION "For any given LDP session, the method of label distribution must be specified." ::= { mplsLdpPeerEntry 2 } mplsLdpPeerPathVectorLimit OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "If the value of this object is 0 (zero) then Loop Dection for Path Vectors for this Peer is disabled. Otherwise, if this object has a value greater than zero, then Loop Dection for Path Vectors for this Peer is enabled and the Path Vector Limit is this value." REFERENCE "[RFC3036], LDP Specification, Section 2.8 Loop Dection, Section 3.4.5 Path Vector TLV." ::= { mplsLdpPeerEntry 3 } -- -- The MPLS LDP Sessions Table -- mplsLdpSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSessionEntry 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 3 } 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. Please note: the Path Vector Limit for the Session is the value which is configured in the corresponding mplsLdpEntityEntry. The Peer's Path Vector Limit is in noted in the mplsLdpPeerTable. Values which may differ from those configured are noted in the objects of this table, the mplsLdpAtmSesTable and the mplsLdpFrameRelaySesTable. A value will differ if it was negotiated between the Entity and the Peer. Values may or may not be negotiated. For example, if the values are the same then no negotiation takes place. If they are negotiated, then they may differ." AUGMENTS { mplsLdpPeerEntry } ::= { mplsLdpSessionTable 1 } MplsLdpSessionEntry ::= SEQUENCE { mplsLdpSesStateLastChange TimeStamp, mplsLdpSesState INTEGER, mplsLdpSesProtocolVersion Integer32, mplsLdpSesKeepAliveHoldTimeRem TimeInterval, mplsLdpSesMaxPduLength Unsigned32, mplsLdpSesDiscontinuityTime TimeStamp } mplsLdpSesStateLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of this object is sysUpTime when the most recent change in the mplsLdpSesState object occurred. When the entry is created, then this object has the value of sysUpTime when the entry was created." ::= { mplsLdpSessionEntry 1 } mplsLdpSesState OBJECT-TYPE SYNTAX INTEGER { nonexistent(1), 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 to 5 are based on the state machine for session negotiation behavior." REFERENCE "[RFC3036], LDP Specification, Section 2.5.4, Initialization State Machine." ::= { mplsLdpSessionEntry 2 } mplsLdpSesProtocolVersion OBJECT-TYPE SYNTAX Integer32(1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The version of the LDP Protocol which this session is using. This is the version of the LDP protocol which has been negotiated during session initialization." REFERENCE "[RFC3036], LDP Specification, Section 3.5.3, Initialization Message." ::= { mplsLdpSessionEntry 3 } mplsLdpSesKeepAliveHoldTimeRem OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "The keep alive hold time remaining for this session." ::= { mplsLdpSessionEntry 4 } mplsLdpSesMaxPduLength OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "octets" 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. This object is related to the mplsLdpEntityMaxPduLength object. The mplsLdpEntityMaxPduLength object specifies the requested LDP PDU length, and this object reflects the negotiated LDP PDU length between the Entity and the Peer." ::= { mplsLdpSessionEntry 5 } mplsLdpSesDiscontinuityTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime on the most recent occasion at which any one or more of this session's counters suffered a discontinuity. The relevant counters are the specific instances associated with this session of any Counter32 or Counter64 object contained in the mplsLdpSessionStatsTable. The initial value of this object is the value of sysUpTime when the entry was created in this table. Also, a command generator can distinguish when a session between a given Entity and Peer goes away and then is 're-established'. This value would change and thus indicate to the command generator that this is a different session." ::= { mplsLdpSessionEntry 6 } -- -- The MPLS LDP Session Statistics Table -- mplsLdpSesStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSesStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of statistics for Sessions between LDP Entities and LDP Peers." ::= { mplsLdpSessionObjects 4 } mplsLdpSesStatsEntry OBJECT-TYPE SYNTAX MplsLdpSesStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents statistical information on a single session between an LDP Entity and LDP Peer." AUGMENTS { mplsLdpPeerEntry } ::= { mplsLdpSesStatsTable 1 } MplsLdpSesStatsEntry ::= SEQUENCE { mplsLdpSesStatsUnkMesTypeErrors Counter32, mplsLdpSesStatsUnkTlvErrors Counter32 } mplsLdpSesStatsUnkMesTypeErrors 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. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpSesDiscontinuityTime." ::= { mplsLdpSesStatsEntry 1 } mplsLdpSesStatsUnkTlvErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the number of Unknown TLV Errors detected during this session. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of mplsLdpSessionDiscontinuityTime." ::= { mplsLdpSesStatsEntry 2 } -- -- The MPLS LDP Hello Adjacency Table -- mplsLdpHelloAdjacencyObjects OBJECT IDENTIFIER ::= { mplsLdpSessionObjects 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, mplsLdpHelloAdjIndex } ::= { mplsLdpHelloAdjacencyTable 1 } MplsLdpHelloAdjacencyEntry ::= SEQUENCE { mplsLdpHelloAdjIndex Unsigned32, mplsLdpHelloAdjHoldTimeRem TimeInterval, mplsLdpHelloAdjType INTEGER } mplsLdpHelloAdjIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for this specific adjacency." ::= { mplsLdpHelloAdjacencyEntry 1 } mplsLdpHelloAdjHoldTimeRem 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 Hello Adjacency is received." ::= { mplsLdpHelloAdjacencyEntry 2 } mplsLdpHelloAdjType 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 } -- -- Session Label (LSP) Mapping to LSR MIB's LIB Information. -- mplsLdpLspTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpLspEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of LDP LSP's which map to a Segment Table in the the LSR MIB's (either the mplsInSegmentTable or mplsOutSegmentTable) AND to the LSR MIB's mplsXCTable." ::= { mplsLdpSessionObjects 6 } mplsLdpLspEntry OBJECT-TYPE SYNTAX MplsLdpLspEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single LDP LSP which is represented by a session's index triple (mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId) AND the index tuple (mplsLdpLspIfIndex, mplsLdpLspLabel). The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpLspIfIndex, mplsLdpLspLabel } ::= { mplsLdpLspTable 1 } MplsLdpLspEntry ::= SEQUENCE { mplsLdpLspIfIndex InterfaceIndex, mplsLdpLspLabel MplsLabel, mplsLdpLspLabelType MplsLdpLabelType, mplsLdpLspType MplsLspType, mplsLdpLspLsrInSegmentPointer RowPointer, mplsLdpLspLsrOutSegmentPointer RowPointer, mplsLdpLspLsrXCPointer RowPointer } mplsLdpLspIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ifIndex value associated with this LSP." ::= { mplsLdpLspEntry 1 } mplsLdpLspLabel OBJECT-TYPE SYNTAX MplsLabel MAX-ACCESS not-accessible STATUS current DESCRIPTION "The LDP label for this LSP." ::= { mplsLdpLspEntry 2 } mplsLdpLspLabelType OBJECT-TYPE SYNTAX MplsLdpLabelType MAX-ACCESS read-only STATUS current DESCRIPTION "The Layer 2 Label Type." ::= { mplsLdpLspEntry 3 } mplsLdpLspType OBJECT-TYPE SYNTAX MplsLspType MAX-ACCESS read-only STATUS current DESCRIPTION "The type of LSP connection. The possible values are: unknown(1) -- if the LSP is not known to be one of the following. terminatingLsp(2) -- if the LSP terminates on the LSR, then this is an ingressing LSP which ends on the LSR, originatingLsp(3) -- if the LSP originates from the LSR, then this is an egressing LSP which is the head-end of the LSP, crossConnectingLsp(4) -- if the LSP ingresses and egresses on the LSR, then it is cross-connecting on that LSR." ::= { mplsLdpLspEntry 4 } mplsLdpLspLsrInSegmentPointer OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If this LSP terminates or is cross-connecting on this LSR, then this RowPointer should point to an instance of an object in the mplsLsrInSegmentTable. In other words if the value of mplsLdpLspType is terminatingLsp(2) or crossConnectingLsp(4), then this should point to an instance of an object in the LSR-MIB's mplsInSegmentTable. Otherwise, a value of zeroDotzero indicates that this LSP has no corresponding mplsInSegmentEntry." ::= { mplsLdpLspEntry 5 } mplsLdpLspLsrOutSegmentPointer OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If this LSP originates or is cross-connecting on this LSR, then this RowPointer should point to an instance of an object in the LSR-MIB's mplsOutSegmentTable. In other words if the value of mplsLdpLspType is originatingLsp(3) or crossConnectingLsp(4), then this should point to an instance of an object in the LSR-MIB's mplsOutSegmentTable. Otherwise, a value of zeroDotzero indicates that this LSP has no corresponding mplsOutSegmentEntry." ::= { mplsLdpLspEntry 6 } mplsLdpLspLsrXCPointer OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "If this LSP is cross-connecting on this LSR, then this RowPointer should point to an instance of an object in the LSR-MIB's mplsXCTable. In other words if the value of mplsLdpLspType is crossConnectingLsp(4), then this should point to an instance of an object in the LSR-MIB's mplsXCTable. Otherwise, a value of zeroDotzero indicates that this LSP has no corresponding mplsXCEntry." ::= { mplsLdpLspEntry 7 } -- -- Mpls FEC Table -- mplsFecObjects OBJECT IDENTIFIER ::= { mplsLdpSessionObjects 7 } mplsFecIndexNext OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains an appropriate value to be used for mplsFecIndex when creating entries in the mplsFecTable. The value 0 indicates that no unassigned entries are available. To obtain the mplsFecIndex 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." ::= { mplsFecObjects 1 } mplsFecTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table represents the FEC (Forwarding Equivalence Class) Information associated with an LSP." ::= { mplsFecObjects 2 } mplsFecEntry OBJECT-TYPE SYNTAX MplsFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each row represents a single FEC Element." INDEX { mplsFecIndex } ::= { mplsFecTable 1 } MplsFecEntry ::= SEQUENCE { mplsFecIndex Unsigned32, mplsFecType INTEGER, mplsFecAddrLength Integer32, mplsFecAddrFamily InetAddressType, mplsFecAddr InetAddress, mplsFecStorageType StorageType, mplsFecRowStatus RowStatus } mplsFecIndex OBJECT-TYPE SYNTAX Unsigned32(1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index which uniquely identifies this entry." ::= { mplsFecEntry 1 } mplsFecType OBJECT-TYPE SYNTAX INTEGER { prefix(1), hostAddress(2) } MAX-ACCESS read-create 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. If the value of this object is 'hostAddress(2)' then the FEC type described by this row is a host address." ::= { mplsFecEntry 2 } mplsFecAddrLength OBJECT-TYPE SYNTAX Integer32(0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of 'mplsFecType' is 'prefix(1)' then the value of this object is the length in bits of the address prefix represented by 'mplsFecAddr', 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. 'mplsFecAddr' will have the value of zero.)" DEFVAL { 0 } ::= { mplsFecEntry 3 } mplsFecAddrFamily OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-create STATUS current DESCRIPTION "The value of this object is from the Address Family Numbers." ::= { mplsFecEntry 4 } mplsFecAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "If the value of 'mplsFecType' is 'prefix(1)' then the value of this object is the address prefix. If the value of the 'mplsFecAddrLength' is object is zero, then this object should also be zero. If the value of the 'mplsFecType' is 'hostAddress(2)' then this is the host address." ::= { mplsFecEntry 5 } mplsFecStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this entry." ::= { mplsFecEntry 6 } mplsFecRowStatus 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." ::= { mplsFecEntry 7 } -- -- LDP LSP FEC Table -- mplsLdpLspFecTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpLspFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table which shows the relationship between LDP LSP's and FECs. Each row represents a single LSP to FEC association. This table is read-only." ::= { mplsLdpSessionObjects 8 } mplsLdpLspFecEntry OBJECT-TYPE SYNTAX MplsLdpLspFecEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry represents a LDP LSP to FEC association." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpLspIfIndex, mplsLdpLspLabel, mplsFecIndex } ::= { mplsLdpLspFecTable 1 } MplsLdpLspFecEntry ::= SEQUENCE { mplsLdpLspFecOperStatus INTEGER, mplsLdpLspFecLastChange TimeStamp, mplsLdpLspFecRowStatus RowStatus } mplsLdpLspFecOperStatus OBJECT-TYPE SYNTAX INTEGER { unknown(1), inUse(2), notInUse(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "An indication of the operational status of the FEC associated with LDP LSP. unknown(1) - this is a temporary state which may indicate the LSP-FEC association is in a state of transition. inUse(2) - the FEC associated with the LSP is currently being applied. notInUse(3) - the FEC associated with the LSP is not being applied. Eventually, this entry may be aged out." ::= { mplsLdpLspFecEntry 1 } mplsLdpLspFecLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This value of sysUpTime when the mplsLdpLspFecOperStatus last changed state." ::= { mplsLdpLspFecEntry 2 } mplsLdpLspFecRowStatus 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." ::= { mplsLdpLspFecEntry 3 } -- -- 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. -- mplsLdpSesPeerAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpSesPeerAddrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'extends' the mplsLdpSessionTable. This table is used to store Label Address Information from Label Address Messages 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. 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 9 } mplsLdpSesPeerAddrEntry OBJECT-TYPE SYNTAX MplsLdpSesPeerAddrEntry 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, mplsLdpSesPeerAddrIndex } ::= { mplsLdpSesPeerAddrTable 1 } MplsLdpSesPeerAddrEntry ::= SEQUENCE { mplsLdpSesPeerAddrIndex Unsigned32, mplsLdpSesPeerNextHopAddrType InetAddressType, mplsLdpSesPeerNextHopAddr InetAddress } mplsLdpSesPeerAddrIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An index which uniquely identifies this entry within a given session." ::= { mplsLdpSesPeerAddrEntry 1 } mplsLdpSesPeerNextHopAddrType OBJECT-TYPE SYNTAX InetAddressType 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." ::= { mplsLdpSesPeerAddrEntry 2 } mplsLdpSesPeerNextHopAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the next hop address." REFERENCE "[RFC3036], LDP Specification defines only IPv4 for LDP Protocol Version 1, see section 3.4.3." ::= { mplsLdpSesPeerAddrEntry 3 } --- --- Notifications --- mplsLdpNotificationPrefix OBJECT IDENTIFIER ::= { mplsLdpNotifications 0 } mplsLdpInitSesThresholdExceeded NOTIFICATION-TYPE OBJECTS { mplsLdpEntityInitSesThreshold } STATUS current DESCRIPTION "This notification is generated when the value of the 'mplsLdpEntityInitSesThreshold' object is not zero, and the number of Session Initialization messages exceeds the value of the 'mplsLdpEntityInitSesThreshold' object." ::= { mplsLdpNotificationPrefix 1 } mplsLdpPathVectorLimitMismatch NOTIFICATION-TYPE OBJECTS { mplsLdpEntityPathVectorLimit, mplsLdpPeerPathVectorLimit } STATUS current DESCRIPTION "If this notification is enabled to generated, then this notification is sent when the 'mplsLdpEntityPathVectorLimit' does NOT match the value of the 'mplsLdpPeerPathVectorLimit' for a specific Entity." REFERENCE "[RFC3036], LDP Specification, Section 3.5.3." ::= { mplsLdpNotificationPrefix 2 } mplsLdpSessionUp NOTIFICATION-TYPE OBJECTS { mplsLdpSesState, mplsLdpSesDiscontinuityTime, mplsLdpSesStatsUnkMesTypeErrors, mplsLdpSesStatsUnkTlvErrors } STATUS current DESCRIPTION "If this notification is enabled to generated, then this notification is sent when the value of 'mplsLdpSesState' enters the 'operational(5)' state." ::= { mplsLdpNotificationPrefix 3 } mplsLdpSessionDown NOTIFICATION-TYPE OBJECTS { mplsLdpSesState, mplsLdpSesDiscontinuityTime, mplsLdpSesStatsUnkMesTypeErrors, mplsLdpSesStatsUnkTlvErrors } STATUS current DESCRIPTION "If this notification is enabled to generated, then this notification is sent when the the value of 'mplsLdpSesState' leaves the 'operational(5)' state." ::= { mplsLdpNotificationPrefix 4 } --**************************************************************** -- Module Conformance Statement --**************************************************************** mplsLdpGroups OBJECT IDENTIFIER ::= { mplsLdpConformance 1 } mplsLdpCompliances OBJECT IDENTIFIER ::= { mplsLdpConformance 2 } -- -- Full Compliance -- mplsLdpModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The Module is implemented with support for read-create and read-write. In other words, both monitoring and configuration are available when using this MODULE-COMPLIANCE." MODULE -- this module MANDATORY-GROUPS { mplsLdpGeneralGroup, mplsLdpLspGroup, mplsLdpNotificationsGroup } GROUP mplsLdpLsrGroup DESCRIPTION "This group must be supported if the LSR MIB is implemented, specifically the mplsInSegmentTable, the mplsOutSegmentTable or the mplsXCTable." OBJECT mplsLdpEntityTargetPeerAddrType SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } DESCRIPTION "An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsLdpEntityTargetPeerAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "An implementation is only required to support IPv4 and may optionally support IPv6 addresses." OBJECT mplsLdpEntityRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } DESCRIPTION "Support for createAndWait and notInService is not required." OBJECT mplsFecAddrFamily SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } DESCRIPTION "An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsFecAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "An implementation is only required to support IPv4 and may optionally support IPv6 addresses." OBJECT mplsFecRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "Support for createAndWait and notInService is not required. Also, the entries in this table may be created by the agent, so strictly speaking read-create functionality is not necessary, but may be nice to have." OBJECT mplsLdpLspFecRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } MIN-ACCESS read-only DESCRIPTION "Support for createAndWait and notInService is not required. Also, the entries in this table may be created by the agent, so strictly speaking read-create functionality is not necessary, but may be nice to have." OBJECT mplsLdpSesPeerNextHopAddrType SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } DESCRIPTION "An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsLdpSesPeerNextHopAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "An implementation is only required to support IPv4 and may optionally support IPv6 addresses." ::= { mplsLdpCompliances 1 } -- -- Read-Only Compliance -- mplsLdpModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The Module is implemented with support for read-only. In other words, only monitoring is available by implementing this MODULE-COMPLIANCE." MODULE -- this module MANDATORY-GROUPS { mplsLdpGeneralGroup, mplsLdpLspGroup, mplsLdpNotificationsGroup } GROUP mplsLdpLsrGroup DESCRIPTION "This group must be supported if the LSR MIB is implemented, specifically the mplsInSegmentTable, the mplsOutSegmentTable or the mplsXCTable." OBJECT mplsLdpEntityProtocolVersion MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAdminStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityTcpDscPort MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityUdpDscPort MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityMaxPduLength MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityKeepAliveHoldTimer MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityHelloHoldTimer MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityInitSesThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityLabelDistMethod MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityLabelRetentionMode MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityPathVectorLimit MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityHopCountLimit MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityTargetPeer MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityTargetPeerAddrType SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } MIN-ACCESS read-only DESCRIPTION "Write access is not required. An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsLdpEntityTargetPeerAddr SYNTAX InetAddress (SIZE(0|4|16)) MIN-ACCESS read-only DESCRIPTION "Write access is not required. An implementation is only required to support IPv4 and may optionally support IPv6 addresses." OBJECT mplsLdpEntityLabelType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityRowStatus SYNTAX RowStatus { active(1) } MIN-ACCESS read-only DESCRIPTION "Write access is not required, and active is the only status that needs to be supported." OBJECT mplsFecType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsFecAddrLength MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsFecAddrFamily SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } MIN-ACCESS read-only DESCRIPTION "Write access is not required. An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsFecAddr SYNTAX InetAddress (SIZE(0|4|16)) MIN-ACCESS read-only DESCRIPTION "Write access is not required. An implementation is only required to support IPv4 and may optionally support IPv6 addresses." OBJECT mplsFecStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsFecRowStatus SYNTAX RowStatus { active(1) } MIN-ACCESS read-only DESCRIPTION "Write access is not required, and active is the only status that needs to be supported." OBJECT mplsLdpLspFecRowStatus SYNTAX RowStatus { active(1) } MIN-ACCESS read-only DESCRIPTION "Write access is not required, and active is the only status that needs to be supported." OBJECT mplsLdpSesPeerNextHopAddrType SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } DESCRIPTION "An implementation is only required to support 'unknown(0)', and IPv4 addresses. Supporting IPv6 addresses is optional." OBJECT mplsLdpSesPeerNextHopAddr SYNTAX InetAddress (SIZE(0|4|16)) DESCRIPTION "An implementation is only required to support IPv4 and may optionally support IPv6 addresses." ::= { mplsLdpCompliances 2 } -- units of conformance mplsLdpGeneralGroup OBJECT-GROUP OBJECTS { mplsLdpLsrId, mplsLdpLsrLoopDetectionCapable, mplsLdpEntityLastChange, mplsLdpEntityIndexNext, mplsLdpEntityProtocolVersion, mplsLdpEntityAdminStatus, mplsLdpEntityOperStatus, mplsLdpEntityTcpDscPort, mplsLdpEntityUdpDscPort, mplsLdpEntityMaxPduLength, mplsLdpEntityKeepAliveHoldTimer, mplsLdpEntityHelloHoldTimer, mplsLdpEntityInitSesThreshold, mplsLdpEntityLabelDistMethod, mplsLdpEntityLabelRetentionMode, mplsLdpEntityPathVectorLimit, mplsLdpEntityHopCountLimit, mplsLdpEntityTargetPeer, mplsLdpEntityTargetPeerAddrType, mplsLdpEntityTargetPeerAddr, mplsLdpEntityLabelType, mplsLdpEntityDiscontinuityTime, mplsLdpEntityStorageType, mplsLdpEntityRowStatus, mplsLdpAttemptedSessions, mplsLdpSesRejectedNoHelloErrors, mplsLdpSesRejectedAdErrors, mplsLdpSesRejectedMaxPduErrors, mplsLdpSesRejectedLRErrors, mplsLdpBadLdpIdentifierErrors, mplsLdpBadPduLengthErrors, mplsLdpBadMessageLengthErrors, mplsLdpBadTlvLengthErrors, mplsLdpMalformedTlvValueErrors, mplsLdpKeepAliveTimerExpErrors, mplsLdpShutdownNotifReceived, mplsLdpShutdownNotifSent, mplsLdpPeerLastChange, mplsLdpPeerLabelDistMethod, mplsLdpPeerPathVectorLimit, mplsLdpHelloAdjHoldTimeRem, mplsLdpHelloAdjType, mplsLdpSesStateLastChange, mplsLdpSesState, mplsLdpSesProtocolVersion, mplsLdpSesKeepAliveHoldTimeRem, mplsLdpSesMaxPduLength, mplsLdpSesDiscontinuityTime, mplsLdpSesStatsUnkMesTypeErrors, mplsLdpSesStatsUnkTlvErrors, mplsLdpSesPeerNextHopAddrType, mplsLdpSesPeerNextHopAddr, mplsFecIndexNext, mplsFecType, mplsFecAddrFamily, mplsFecAddrLength, mplsFecAddr, mplsFecStorageType, mplsFecRowStatus, mplsLdpLspFecOperStatus, mplsLdpLspFecLastChange, mplsLdpLspFecRowStatus } STATUS current DESCRIPTION "Objects that apply to all MPLS LDP implementations." ::= { mplsLdpGroups 1 } mplsLdpLspGroup OBJECT-GROUP OBJECTS { mplsLdpLspLabelType, mplsLdpLspType } STATUS current DESCRIPTION "These objects are specific to LDP LSPs." ::= { mplsLdpGroups 2 } mplsLdpLsrGroup OBJECT-GROUP OBJECTS { mplsLdpLspLsrInSegmentPointer, mplsLdpLspLsrOutSegmentPointer, mplsLdpLspLsrXCPointer } STATUS current DESCRIPTION "These objects are optional and only need to be supported for LDP implementations which support the following tables in the LSR MIB: mplsInSegmentTable, mplsOutSegmentTable and mplsXCTable." ::= { mplsLdpGroups 3 } mplsLdpNotificationsGroup NOTIFICATION-GROUP NOTIFICATIONS { mplsLdpInitSesThresholdExceeded, mplsLdpPathVectorLimitMismatch, mplsLdpSessionUp, mplsLdpSessionDown } STATUS current DESCRIPTION "The notification(s) which an MPLS LDP implemention is required to implement." ::= { mplsLdpGroups 4 } END -- -- Copyright (C) The Internet Society (2002). 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.