4.1. The MPLS-LDP-ATM-STD-MIB Module
This MIB Module MUST be supported if LDP uses ATM as the Layer 2 medium. There are three tables in this MIB Module. Two tables are for configuring LDP to use ATM. These tables are the mplsLdpEntityAtmTable and the mplsLdpEntityAtmLRTable. The third table is the mplsLdpAtmSessionTable which is a read-only table. This MIB Module IMPORTS the AtmVpIdentifier TEXTUAL-CONVENTION from [RFC2514].
4.1.1. The LDP Entity ATM Table
The mplsLdpEntityAtmTable provides a way to configure information which would be contained in the "Optional Parameter" portion of an LDP PDU Initialization Message.4.1.2. The LDP Entity ATM Label Range Table
The mplsLdpEntityAtmLRTable provides a way to configure information which would be contained in the "ATM Label Range Components" portion of an LDP PDU Intialization Message, see [RFC3035] and [RFC3036].4.1.3. The LDP ATM Session Table
The MPLS LDP ATM Session Table is a read-only table which contains session information specific to ATM. MPLS-LDP-ATM-STD-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, MODULE-IDENTITY, Unsigned32 FROM SNMPv2-SMI -- [RFC2578] MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- [RFC2580] RowStatus, StorageType FROM SNMPv2-TC -- [RFC2579] InterfaceIndexOrZero FROM IF-MIB -- [RFC2020] AtmVpIdentifier FROM ATM-TC-MIB -- [RFC2514] mplsStdMIB, MplsAtmVcIdentifier FROM MPLS-TC-STD-MIB -- [RFC3811] mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId FROM MPLS-LDP-STD-MIB -- [RFC3813] ; mplsLdpAtmStdMIB MODULE-IDENTITY LAST-UPDATED "200406030000Z" -- June 3, 2004
ORGANIZATION "Multiprotocol Label Switching (mpls) Working Group" CONTACT-INFO "Joan Cucchiara (jcucchiara@mindspring.com) Marconi Communications, Inc. Hans Sjostrand (hans@ipunplugged.com) ipUnplugged James V. Luciani (james_luciani@mindspring.com) Marconi Communications, Inc. Working Group Chairs: George Swallow, email: swallow@cisco.com Loa Andersson, email: loa@pi.se MPLS Working Group, email: mpls@uu.net " DESCRIPTION "Copyright (C) The Internet Society (2004). The initial version of this MIB module was published in RFC 3815. For full legal notices see the RFC itself or see: http://www.ietf.org/copyrights/ianamib.html This MIB contains managed object definitions for configuring and monitoring the Multiprotocol Label Switching (MPLS), Label Distribution Protocol (LDP), utilizing Asynchronous Transfer Mode (ATM) as the Layer 2 media." REVISION "200406030000Z" -- June 3, 2004 DESCRIPTION "Initial version published as part of RFC 3815." ::= { mplsStdMIB 5 } --**************************************************************** mplsLdpAtmObjects OBJECT IDENTIFIER ::= { mplsLdpAtmStdMIB 1 } mplsLdpAtmConformance OBJECT IDENTIFIER ::= { mplsLdpAtmStdMIB 2 } --**************************************************************** -- MPLS LDP ATM Objects --**************************************************************** -- -- Ldp Entity Objects for ATM
-- mplsLdpEntityAtmObjects OBJECT IDENTIFIER ::= { mplsLdpAtmObjects 1 } mplsLdpEntityAtmTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityAtmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains ATM specific information which could be used in the 'Optional Parameters' and other ATM specific information. This table 'sparse augments' the mplsLdpEntityTable when ATM is the Layer 2 medium." ::= { mplsLdpEntityAtmObjects 1 } mplsLdpEntityAtmEntry OBJECT-TYPE SYNTAX MplsLdpEntityAtmEntry 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 } ::= { mplsLdpEntityAtmTable 1 } MplsLdpEntityAtmEntry ::= SEQUENCE { mplsLdpEntityAtmIfIndexOrZero InterfaceIndexOrZero, mplsLdpEntityAtmMergeCap INTEGER, mplsLdpEntityAtmLRComponents Unsigned32, mplsLdpEntityAtmVcDirectionality INTEGER, mplsLdpEntityAtmLsrConnectivity INTEGER, mplsLdpEntityAtmDefaultControlVpi AtmVpIdentifier, mplsLdpEntityAtmDefaultControlVci MplsAtmVcIdentifier, mplsLdpEntityAtmUnlabTrafVpi AtmVpIdentifier, mplsLdpEntityAtmUnlabTrafVci MplsAtmVcIdentifier, mplsLdpEntityAtmStorageType StorageType, mplsLdpEntityAtmRowStatus RowStatus } mplsLdpEntityAtmIfIndexOrZero OBJECT-TYPE SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create STATUS current DESCRIPTION "This value represents either the InterfaceIndex or 0 (zero). The value of zero means that the InterfaceIndex is not known. However, if the InterfaceIndex is known, then it must be represented by this value. If an InterfaceIndex becomes known, then the network management entity (e.g., SNMP agent) responsible for this object MUST change the value from 0 (zero) to the value of the InterfaceIndex. If an ATM Label is being used in forwarding data, then the value of this object MUST be the InterfaceIndex." ::= { mplsLdpEntityAtmEntry 1 } mplsLdpEntityAtmMergeCap OBJECT-TYPE SYNTAX INTEGER { notSupported(0), vpMerge(1), vcMerge(2), vpAndVcMerge(3) } MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes the Merge Capability of this Entity. This is the EXACT value for the ATM Session Parameter, field M (for ATM Merge Capabilities). The ATM Session Parameter is an optional parameter in the Initialization Message. The description from rfc3036.txt is: 'M, ATM Merge Capabilities Specifies the merge capabilities of an ATM switch. The following values are supported in this version of the specification: Value Meaning 0 Merge not supported 1 VP Merge supported 2 VC Merge supported 3 VP & VC Merge supported
If the merge capabilities of the LSRs differ, then: - Non-merge and VC-merge LSRs may freely interoperate. - The interoperability of VP-merge-capable switches with non-VP-merge-capable switches is a subject for future study. When the LSRs differ on the use of VP-merge, the session is established, but VP merge is not used.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityAtmEntry 2 } mplsLdpEntityAtmLRComponents OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "Number of Label Range Components in the Initialization message. This also represents the number of entries in the mplsLdpEntityAtmLRTable which correspond to this entry. This is the EXACT value for the ATM Session Parameter, field N (for Number of label range components). The ATM Session Parameter is an optional parameter in the Initialization Message. The description from rfc3036.txt is: 'N, Number of label range components Specifies the number of ATM Label Range Components included in the TLV.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityAtmEntry 3 } 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. This is the EXACT value for the ATM Session Parameter, field D (for VC Directionality). The ATM Session Parameter is an optional parameter in the Initialization Message. The description from rfc3036.txt is: 'D, VC Directionality A value of 0 specifies bidirectional VC capability, meaning the LSR can (within a given VPI) support the use of a given VCI as a label for both link directions independently. A value of 1 specifies unidirectional VC capability, meaning (within a given VPI) a given VCI may appear in a label mapping for one direction on the link only. When either or both of the peers specifies unidirectional VC capability, both LSRs use unidirectional VC label assignment for the link as follows. The LSRs compare their LDP Identifiers as unsigned integers. The LSR with the larger LDP Identifier may assign only odd-numbered VCIs in the VPI/VCI range as labels. The system with the smaller LDP Identifier may assign only even-numbered VCIs in the VPI/VCI range as labels.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityAtmEntry 4 } 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." DEFVAL { direct } ::= { mplsLdpEntityAtmEntry 5 } mplsLdpEntityAtmDefaultControlVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create 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." DEFVAL { 0 } ::= { mplsLdpEntityAtmEntry 6 } mplsLdpEntityAtmDefaultControlVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier 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." DEFVAL { 32 } ::= { mplsLdpEntityAtmEntry 7 } mplsLdpEntityAtmUnlabTrafVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "VPI value of the VCC supporting unlabeled traffic. This non-MPLS connection is used to carry unlabeled (IP) packets. The default value is the same as the default value of the 'mplsLdpEntityAtmDefaultControlVpi', however another value may be configured." DEFVAL { 0 } ::= { mplsLdpEntityAtmEntry 8 }
mplsLdpEntityAtmUnlabTrafVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "VCI value of the VCC supporting unlabeled traffic. This non-MPLS connection is used to carry unlabeled (IP) packets. The default value is the same as the default value of the 'mplsLdpEntityAtmDefaultControlVci', however another value may be configured." DEFVAL { 32 } ::= { mplsLdpEntityAtmEntry 9 } mplsLdpEntityAtmStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent(4)' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { mplsLdpEntityAtmEntry 10 } mplsLdpEntityAtmRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row. All writable objects in this row may be modified at any time, however, as described in detail in the section entitled, 'Changing Values After Session Establishment', and again described in the DESCRIPTION clause of the mplsLdpEntityAdminStatus object, if a session has been initiated with a Peer, changing objects in this table will wreak havoc with the session and interrupt traffic. To repeat again: the recommended procedure is to set the mplsLdpEntityAdminStatus to down, thereby explicitly causing a session to be torn down. Then, change objects in this entry, then set the mplsLdpEntityAdminStatus to enable which enables a new session to be initiated." ::= { mplsLdpEntityAtmEntry 11 } --
-- The MPLS LDP Entity ATM Label Range Table -- mplsLdpEntityAtmLRTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityAtmLREntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The MPLS LDP Entity ATM Label Range (LR) Table. The purpose of this table is to provide a mechanism for configuring 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. There must exist at least one entry in this table for every LDP Entity that has 'mplsLdpEntityOptionalParameters' object with a value of 'atmSessionParameters'." ::= { mplsLdpEntityAtmObjects 2 } mplsLdpEntityAtmLREntry OBJECT-TYPE SYNTAX MplsLdpEntityAtmLREntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A row in the LDP Entity 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 LowerBound vpi/vci == 0/32, and UpperBound vpi/vci == 0/100, and a second entry for this same interface with LowerBound vpi/vci == 0/101 and UpperBound vpi/vci == 0/200. However, there could not be a third entry with LowerBound vpi/vci == 0/200 and UpperBound 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 become active unless a unique and non-overlapping range is specified. At least one label range entry for a specific LDP Entity MUST include the default VPI/VCI values denoted in the LDP Entity Table. A request to create a row with an overlapping range should result in an inconsistentValue error." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpEntityAtmLRMinVpi, mplsLdpEntityAtmLRMinVci } ::= { mplsLdpEntityAtmLRTable 1 } MplsLdpEntityAtmLREntry ::= SEQUENCE { mplsLdpEntityAtmLRMinVpi AtmVpIdentifier, mplsLdpEntityAtmLRMinVci MplsAtmVcIdentifier, mplsLdpEntityAtmLRMaxVpi AtmVpIdentifier, mplsLdpEntityAtmLRMaxVci MplsAtmVcIdentifier, mplsLdpEntityAtmLRStorageType StorageType, mplsLdpEntityAtmLRRowStatus RowStatus } mplsLdpEntityAtmLRMinVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VPI number configured for this range. The value of zero is a valid value for the VPI portion of the label." ::= { mplsLdpEntityAtmLREntry 1 } mplsLdpEntityAtmLRMinVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VCI number configured for this range." ::= { mplsLdpEntityAtmLREntry 2 } mplsLdpEntityAtmLRMaxVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-create
STATUS current DESCRIPTION "The maximum VPI number configured for this range." ::= { mplsLdpEntityAtmLREntry 3 } mplsLdpEntityAtmLRMaxVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum VCI number configured for this range." ::= { mplsLdpEntityAtmLREntry 4 } mplsLdpEntityAtmLRStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent(4)' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { mplsLdpEntityAtmLREntry 5 } mplsLdpEntityAtmLRRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row. All writable objects in this row may be modified at any time, however, as described in detail in the section entitled, 'Changing Values After Session Establishment', and again described in the DESCRIPTION clause of the mplsLdpEntityAdminStatus object, if a session has been initiated with a Peer, changing objects in this table will wreak havoc with the session and interrupt traffic. To repeat again: the recommended procedure is to set the mplsLdpEntityAdminStatus to down, thereby explicitly causing a session to be torn down. Then, change objects in this entry, then set the mplsLdpEntityAdminStatus to enable which enables a new session to be initiated." ::= { mplsLdpEntityAtmLREntry 6 }
-- -- MPLS LDP ATM Session Information -- mplsLdpAtmSessionObjects OBJECT IDENTIFIER ::= { mplsLdpAtmObjects 2 } mplsLdpAtmSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpAtmSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table which relates sessions in the 'mplsLdpSessionTable' and their label range intersections. There could be one or more label range intersections between an LDP Entity and LDP Peer using ATM as the underlying media. Each row represents a single label range intersection. This table cannot use the 'AUGMENTS' clause because there is not necessarily a one-to-one mapping between this table and the mplsLdpSessionTable." ::= { mplsLdpAtmSessionObjects 1 } mplsLdpAtmSessionEntry OBJECT-TYPE SYNTAX MplsLdpAtmSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single label range intersection between an LDP Entity and LDP Peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpSessionAtmLRLowerBoundVpi, mplsLdpSessionAtmLRLowerBoundVci } ::= { mplsLdpAtmSessionTable 1 } MplsLdpAtmSessionEntry ::= SEQUENCE { mplsLdpSessionAtmLRLowerBoundVpi AtmVpIdentifier, mplsLdpSessionAtmLRLowerBoundVci MplsAtmVcIdentifier, mplsLdpSessionAtmLRUpperBoundVpi AtmVpIdentifier,
mplsLdpSessionAtmLRUpperBoundVci MplsAtmVcIdentifier } mplsLdpSessionAtmLRLowerBoundVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VPI number for this range." ::= { mplsLdpAtmSessionEntry 1 } mplsLdpSessionAtmLRLowerBoundVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The minimum VCI number for this range." ::= { mplsLdpAtmSessionEntry 2 } mplsLdpSessionAtmLRUpperBoundVpi OBJECT-TYPE SYNTAX AtmVpIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum VPI number for this range." ::= { mplsLdpAtmSessionEntry 3 } mplsLdpSessionAtmLRUpperBoundVci OBJECT-TYPE SYNTAX MplsAtmVcIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum VCI number for this range." ::= { mplsLdpAtmSessionEntry 4 } --************************************************************** -- Module Conformance Statement --************************************************************** mplsLdpAtmGroups OBJECT IDENTIFIER ::= { mplsLdpAtmConformance 1 } mplsLdpAtmCompliances OBJECT IDENTIFIER ::= { mplsLdpAtmConformance 2 } -- -- Full Compliance --
mplsLdpAtmModuleFullCompliance 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 { mplsLdpAtmGroup } OBJECT mplsLdpEntityAtmRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } DESCRIPTION "Support for createAndWait and notInService is not required." OBJECT mplsLdpEntityAtmLRRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } DESCRIPTION "Support for createAndWait and notInService is not required." ::= { mplsLdpAtmCompliances 1 } -- -- Read-Only Compliance -- mplsLdpAtmModuleReadOnlyCompliance 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 { mplsLdpAtmGroup } OBJECT mplsLdpEntityAtmIfIndexOrZero MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmMergeCap
MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmVcDirectionality MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmLsrConnectivity MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmDefaultControlVpi MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmDefaultControlVci MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmUnlabTrafVpi MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmUnlabTrafVci MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmRowStatus 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 mplsLdpEntityAtmLRMaxVpi MIN-ACCESS read-only
DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmLRMaxVci MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmLRStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityAtmLRRowStatus 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." ::= { mplsLdpAtmCompliances 2 } -- -- units of conformance -- mplsLdpAtmGroup OBJECT-GROUP OBJECTS { mplsLdpEntityAtmIfIndexOrZero, mplsLdpEntityAtmMergeCap, mplsLdpEntityAtmLRComponents, mplsLdpEntityAtmVcDirectionality, mplsLdpEntityAtmLsrConnectivity, mplsLdpEntityAtmDefaultControlVpi, mplsLdpEntityAtmDefaultControlVci, mplsLdpEntityAtmUnlabTrafVpi, mplsLdpEntityAtmUnlabTrafVci, mplsLdpEntityAtmStorageType, mplsLdpEntityAtmRowStatus, mplsLdpEntityAtmLRMaxVpi, mplsLdpEntityAtmLRMaxVci, mplsLdpEntityAtmLRStorageType, mplsLdpEntityAtmLRRowStatus, mplsLdpSessionAtmLRUpperBoundVpi, mplsLdpSessionAtmLRUpperBoundVci } STATUS current
DESCRIPTION "Objects that apply to all MPLS LDP implementations using ATM as the Layer 2." ::= { mplsLdpAtmGroups 1 } END4.2. The MPLS-LDP-FRAME-RELAY-STD-MIB Module
This MIB Module MUST be supported if LDP uses FRAME RELAY as the Layer 2 medium. There are three tables in this MIB Module. Two tables are to configure LDP for using Frame Relay. These tables are the mplsLdpEntityFrameRelayTable and the mplsLdpEntityFrameRelayLRTable. The third table, mplsLdpFrameRelaySessionTable, is a read-only table. This MIB Module IMPORTS the DLCI TEXTUAL-CONVENTION from [RFC2115].4.2.1. The LDP Entity Frame Relay Table
The mplsLdpEntityFrameRelayTable provides a way to configure information which would be contained in the "Optional Parameter" portion of an LDP PDU Initialization Message.4.2.2. The LDP Entity Frame Relay Label Range Table
The mplsLdpEntityFrameRelayLRTable provides a way to configure information which would be contained in the "Frame Relay Label Range Components" portion of an LDP PDU Intialization Message, see [RFC3034] and [RFC3036].4.2.3. The LDP Frame Relay Session Table
The mplsLdpFrameRelaySessionTable is a table which contains session information specific to Frame Relay. MPLS-LDP-FRAME-RELAY-STD-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, MODULE-IDENTITY, Unsigned32 FROM SNMPv2-SMI -- [RFC2578] MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- [RFC2580] RowStatus, StorageType
FROM SNMPv2-TC -- [RFC2579] DLCI FROM FRAME-RELAY-DTE-MIB -- [RFC2115] InterfaceIndexOrZero FROM IF-MIB -- [RFC2020] mplsStdMIB FROM MPLS-TC-STD-MIB -- [RFC3811] mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId FROM MPLS-LDP-STD-MIB -- [RFC3813] ; mplsLdpFrameRelayStdMIB MODULE-IDENTITY LAST-UPDATED "200406030000Z" -- June 3, 2004 ORGANIZATION "Multiprotocol Label Switching (mpls) Working Group" CONTACT-INFO "Joan Cucchiara (jcucchiara@mindspring.com) Marconi Communications, Inc. Hans Sjostrand (hans@ipunplugged.com) ipUnplugged James V. Luciani (james_luciani@mindspring.com) Marconi Communications, Inc. Working Group Chairs: George Swallow, email: swallow@cisco.com Loa Andersson, email: loa@pi.se MPLS Working Group, email: mpls@uu.net " DESCRIPTION "Copyright (C) The Internet Society (year). The initial version of this MIB module was published in RFC 3815. For full legal notices see the RFC itself or see: http://www.ietf.org/copyrights/ianamib.html This MIB contains managed object definitions for configuring and monitoring the Multiprotocol Label Switching (MPLS), Label Distribution Protocol (LDP), utilizing Frame Relay as the Layer 2 media."
REVISION "200406030000Z" -- June 6, 2004 DESCRIPTION "Initial version published as part of RFC 3815." ::= { mplsStdMIB 6 } --**************************************************************** mplsLdpFrameRelayObjects OBJECT IDENTIFIER ::= { mplsLdpFrameRelayStdMIB 1 } mplsLdpFrameRelayConformance OBJECT IDENTIFIER ::= { mplsLdpFrameRelayStdMIB 2 } --**************************************************************** -- MPLS LDP Frame Relay Objects --**************************************************************** -- -- Ldp Entity Objects for Frame Relay -- mplsLdpEntityFrameRelayObjects OBJECT IDENTIFIER ::= { mplsLdpFrameRelayObjects 1 } mplsLdpEntityFrameRelayTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityFrameRelayEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains Frame Relay specific information which could be used in the 'Optional Parameters' and other Frame Relay specific information. This table 'sparse augments' the mplsLdpEntityTable when Frame Relay is the Layer 2 medium." ::= { mplsLdpEntityFrameRelayObjects 1 } mplsLdpEntityFrameRelayEntry OBJECT-TYPE SYNTAX MplsLdpEntityFrameRelayEntry 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
} ::= { mplsLdpEntityFrameRelayTable 1 } MplsLdpEntityFrameRelayEntry ::= SEQUENCE { mplsLdpEntityFrameRelayIfIndexOrZero InterfaceIndexOrZero, mplsLdpEntityFrameRelayMergeCap INTEGER, mplsLdpEntityFrameRelayLRComponents Unsigned32, mplsLdpEntityFrameRelayVcDirectionality INTEGER, mplsLdpEntityFrameRelayStorageType StorageType, mplsLdpEntityFrameRelayRowStatus RowStatus } mplsLdpEntityFrameRelayIfIndexOrZero OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "This value represents either the InterfaceIndex of the 'ifLayer' where the Frame Relay Labels 'owned' by this entry were created, or 0 (zero). The value of zero means that the InterfaceIndex is not known. For example, if the InterfaceIndex is created subsequent to the Frame Relay Label's creation, then it would not be known. However, if the InterfaceIndex is known, then it must be represented by this value. If an InterfaceIndex becomes known, then the network management entity (e.g., SNMP agent) responsible for this object MUST change the value from 0 (zero) to the value of the InterfaceIndex. If an Frame Relay Label is being used in forwarding data, then the value of this object MUST be the InterfaceIndex." ::= { mplsLdpEntityFrameRelayEntry 1 } mplsLdpEntityFrameRelayMergeCap OBJECT-TYPE SYNTAX INTEGER { notSupported(0), supported(1) } MAX-ACCESS read-create STATUS current DESCRIPTION "This represents whether or not the Frame Relay merge capability is supported. This is the EXACT value for the Frame Relay Session Parameter, field M (for Frame Relay Merge Capabilities). The Frame Relay Session Parameter is an optional parameter in the Initialization Message.
The description from rfc3036.txt is: 'M, Frame Relay Merge Capabilities Specifies the merge capabilities of a Frame Relay switch. The following values are supported in this version of the specification: Value Meaning 0 Merge not supported 1 Merge supported Non-merge and merge Frame Relay LSRs may freely interoperate.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityFrameRelayEntry 2 } mplsLdpEntityFrameRelayLRComponents OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "Number of Label Range Components in the Initialization message. This also represents the number of entries in the mplsLdpEntityFrameRelayLRTable which correspond to this entry. This is the EXACT value for the Frame Relay Session Parameter, field N (for Number of label range components). The Frame Relay Session Parameter is an optional parameter in the Initialization Message. The description from rfc3036.txt is: 'N, Number of label range components Specifies the number of Frame Relay Label Range Components included in the TLV.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3
Initialization Message." ::= { mplsLdpEntityFrameRelayEntry 3 } mplsLdpEntityFrameRelayVcDirectionality 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. This is the EXACT value for the Frame Relay Session Parameter, field D (for VC Directionality). The Frame Relay Session Parameter is an optional parameter in the Initialization Message. The description from rfc3036.txt is: 'D, VC Directionality A value of 0 specifies bidirectional VC capability, meaning the LSR can support the use of a given DLCI as a label for both link directions independently. A value of 1 specifies unidirectional VC capability, meaning a given DLCI may appear in a label mapping for one direction on the link only. When either or both of the peers specifies unidirectional VC capability, both LSRs use unidirectional VC label assignment for the link as follows. The LSRs compare their LDP Identifiers as unsigned integers. The LSR with the larger LDP Identifier may assign only odd-numbered DLCIs in the range as labels. The system with the smaller LDP Identifier may assign only even-numbered DLCIs in the range as labels.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityFrameRelayEntry 4 }
mplsLdpEntityFrameRelayStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent(4)' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { mplsLdpEntityFrameRelayEntry 5 } mplsLdpEntityFrameRelayRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row. All writable objects in this row may be modified at any time, however, as described in detail in the section entitled, 'Changing Values After Session Establishment', and again described in the DESCRIPTION clause of the mplsLdpEntityAdminStatus object, if a session has been initiated with a Peer, changing objects in this table will wreak havoc with the session and interrupt traffic. To repeat again: the recommended procedure is to set the mplsLdpEntityAdminStatus to down, thereby explicitly causing a session to be torn down. Then, change objects in this entry, then set the mplsLdpEntityAdminStatus to enable which enables a new session to be initiated." ::= { mplsLdpEntityFrameRelayEntry 6 } -- -- Frame Relay Label Range Components -- mplsLdpEntityFrameRelayLRTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpEntityFrameRelayLREntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the
Optional Parameters for the Frame Relay Session in the LDP Initialization Message, specifically it contains information about the Frame Relay Label Range Components. If the value of the object 'mplsLdpEntityOptionalParameters' contains the value of 'frameRelaySessionParameters(3)' then there must be at least one corresponding entry in this table." ::= { mplsLdpEntityFrameRelayObjects 2 } mplsLdpEntityFrameRelayLREntry OBJECT-TYPE SYNTAX MplsLdpEntityFrameRelayLREntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents the Frame Relay Label Range Component associated with the LDP entity." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpEntityFrameRelayLRMinDlci } ::= { mplsLdpEntityFrameRelayLRTable 1 } MplsLdpEntityFrameRelayLREntry ::= SEQUENCE { mplsLdpEntityFrameRelayLRMinDlci DLCI, mplsLdpEntityFrameRelayLRMaxDlci DLCI, mplsLdpEntityFrameRelayLRLen INTEGER, mplsLdpEntityFrameRelayLRStorageType StorageType, mplsLdpEntityFrameRelayLRRowStatus RowStatus } mplsLdpEntityFrameRelayLRMinDlci OBJECT-TYPE SYNTAX DLCI 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. The value of zero is valid for the minimum DLCI field of the label." REFERENCE "RFC3034, Use of Label Switching on Frame Relay Networks Specification." ::= { mplsLdpEntityFrameRelayLREntry 1 }
mplsLdpEntityFrameRelayLRMaxDlci OBJECT-TYPE SYNTAX DLCI MAX-ACCESS read-create STATUS current DESCRIPTION "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." ::= { mplsLdpEntityFrameRelayLREntry 2 } mplsLdpEntityFrameRelayLRLen OBJECT-TYPE SYNTAX INTEGER { tenDlciBits(0), twentyThreeDlciBits(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the length of the DLCI bits. This is the EXACT value for the Len field of the Frame Relay Label Range Component. The description from rfc3036.txt is: 'Len This field specifies the number of bits of the DLCI. The following values are supported: Len DLCI bits 0 10 2 23 Len values 1 and 3 are reserved.' Please refer to the following reference for a complete description of this feature." REFERENCE "RFC3036, LDP Specification, Section 3.5.3 Initialization Message." ::= { mplsLdpEntityFrameRelayLREntry 3 } mplsLdpEntityFrameRelayLRStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION
"The storage type for this conceptual row. Conceptual rows having the value 'permanent(4)' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { mplsLdpEntityFrameRelayLREntry 4 } mplsLdpEntityFrameRelayLRRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row. All writable objects in this row may be modified at any time, however, as described in detail in the section entitled, 'Changing Values After Session Establishment', and again described in the DESCRIPTION clause of the mplsLdpEntityAdminStatus object, if a session has been initiated with a Peer, changing objects in this table will wreak havoc with the session and interrupt traffic. To repeat again: the recommended procedure is to set the mplsLdpEntityAdminStatus to down, thereby explicitly causing a session to be torn down. Then, change objects in this entry, then set the mplsLdpEntityAdminStatus to enable which enables a new session to be initiated." ::= { mplsLdpEntityFrameRelayLREntry 5 } -- -- MPLS LDP Frame Relay Session Information -- mplsLdpFrameRelaySessionObjects OBJECT IDENTIFIER ::= { mplsLdpFrameRelayObjects 2 } mplsLdpFrameRelaySessionTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLdpFrameRelaySessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Frame Relay label range intersections between the LDP Entities and LDP Peers. Each row represents a single label range intersection. NOTE: this table cannot use the 'AUGMENTS'
clause because there is not necessarily a one-to-one mapping between this table and the mplsLdpSessionTable." ::= { mplsLdpFrameRelaySessionObjects 1 } mplsLdpFrameRelaySessionEntry OBJECT-TYPE SYNTAX MplsLdpFrameRelaySessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single label range intersection between an LDP Entity and LDP Peer. The information contained in a row is read-only." INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex, mplsLdpPeerLdpId, mplsLdpFrameRelaySessionMinDlci } ::= { mplsLdpFrameRelaySessionTable 1 } MplsLdpFrameRelaySessionEntry ::= SEQUENCE { mplsLdpFrameRelaySessionMinDlci DLCI, mplsLdpFrameRelaySessionMaxDlci DLCI, mplsLdpFrameRelaySessionLen INTEGER } mplsLdpFrameRelaySessionMinDlci OBJECT-TYPE SYNTAX DLCI MAX-ACCESS not-accessible STATUS current DESCRIPTION "The lower bound of DLCIs which are supported. The value of zero is a valid value for the minimum DLCI field of the label." REFERENCE "RFC3034, Use of Label Switching on Frame Relay Networks Specification." ::= { mplsLdpFrameRelaySessionEntry 1 } mplsLdpFrameRelaySessionMaxDlci OBJECT-TYPE SYNTAX DLCI MAX-ACCESS read-only STATUS current DESCRIPTION "The upper bound of DLCIs which are supported." ::= { mplsLdpFrameRelaySessionEntry 2 }
mplsLdpFrameRelaySessionLen OBJECT-TYPE SYNTAX INTEGER { tenDlciBits(0), twentyThreeDlciBits(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object specifies the DLCI bits." ::= { mplsLdpFrameRelaySessionEntry 3 } --**************************************************************** -- Module Conformance Statement --**************************************************************** mplsLdpFrameRelayGroups OBJECT IDENTIFIER ::= { mplsLdpFrameRelayConformance 1 } mplsLdpFrameRelayCompliances OBJECT IDENTIFIER ::= { mplsLdpFrameRelayConformance 2 } -- -- Full Compliance -- mplsLdpFrameRelayModuleFullCompliance 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 { mplsLdpFrameRelayGroup } OBJECT mplsLdpEntityFrameRelayRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } DESCRIPTION "Support for createAndWait and notInService is not required." OBJECT mplsLdpEntityFrameRelayLRRowStatus SYNTAX RowStatus { active(1) } WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } DESCRIPTION "Support for createAndWait and notInService is not required."
::= { mplsLdpFrameRelayCompliances 1 } -- -- Read-Only Compliance -- mplsLdpFrameRelayModuleReadOnlyCompliance 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 { mplsLdpFrameRelayGroup } OBJECT mplsLdpEntityFrameRelayIfIndexOrZero MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayMergeCap MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayVcDirectionality MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayRowStatus 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 mplsLdpEntityFrameRelayLRMaxDlci MIN-ACCESS read-only DESCRIPTION "Write access is not required."
OBJECT mplsLdpEntityFrameRelayLRLen MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayLRStorageType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsLdpEntityFrameRelayLRRowStatus 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." ::= { mplsLdpFrameRelayCompliances 2 } -- -- units of conformance -- mplsLdpFrameRelayGroup OBJECT-GROUP OBJECTS { mplsLdpEntityFrameRelayIfIndexOrZero, mplsLdpEntityFrameRelayMergeCap, mplsLdpEntityFrameRelayLRComponents, mplsLdpEntityFrameRelayVcDirectionality, mplsLdpEntityFrameRelayStorageType, mplsLdpEntityFrameRelayRowStatus, mplsLdpEntityFrameRelayLRMaxDlci, mplsLdpEntityFrameRelayLRLen, mplsLdpEntityFrameRelayLRStorageType, mplsLdpEntityFrameRelayLRRowStatus, mplsLdpFrameRelaySessionMaxDlci, mplsLdpFrameRelaySessionLen } STATUS current DESCRIPTION "Objects that apply to all MPLS LDP implementations using Frame Relay as the Layer 2." ::= { mplsLdpFrameRelayGroups 1 } END