1-- *****************************************************************
2-- MPLS-LDP-MIB.my
3--
4-- August 2000, Robert Schmitt
5--
6-- Copyright (c) 2000, 2005 by cisco Systems, Inc.
7-- All rights reserved.
8--
9-- *****************************************************************
10MPLS-LDP-MIB DEFINITIONS ::= BEGIN
11
12     IMPORTS
13         OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE,
14         Integer32, Counter32, Unsigned32
15             FROM SNMPv2-SMI
16         MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
17             FROM SNMPv2-CONF
18
19         TEXTUAL-CONVENTION, RowStatus, TimeInterval, TruthValue,
20         TimeStamp, StorageType, RowPointer
21             FROM SNMPv2-TC
22         InterfaceIndex, InterfaceIndexOrZero
23             FROM IF-MIB
24         -- AtmInterfaceType, AtmVcIdentifier, AtmVpIdentifier
25         -- FROM ATM-TC-MIB
26     ciscoExperiment
27             FROM CISCO-SMI
28
29         AddressFamilyNumbers
30             FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB;
31
32     mplsLdpMIB MODULE-IDENTITY
33         LAST-UPDATED "200601040000Z"
34         ORGANIZATION "Multiprotocol Label Switching (mpls)
35                       Working Group"
36         CONTACT-INFO
37             "Joan Cucchiara (jcucchiara@brixnet.com)
38              Brix Networks
39
40              Hans Sjostrand (hans.sjostrand@etx.ericsson.se)
41              Ericsson
42
43              James V. Luciani (jluciani@tollbridgetech.com)
44              TollBridge Technologies"
45         DESCRIPTION
46             "This MIB contains managed object definitions for the
47             Multiprotocol Label Switching, Label Distribution
48             Protocol, LDP, as defined in draft-ietf-mpls-ldp-06.txt."
49         REVISION     "200601040000Z"
50         DESCRIPTION  "Imported Unsigned32 from SNMPv2-SMI."
51         REVISION     "200003041200Z"
52         DESCRIPTION  "Initial version of the mib module."
53         ::= { ciscoExperiment 65 }
54
55     --****************************************************************
56     -- MPLS LDP Textual Conventions
57     --****************************************************************
58     --
59
60     MplsLsrIdentifier ::= TEXTUAL-CONVENTION
61         STATUS      current
62         DESCRIPTION
63             "The Label Switch Router (LSR) identifier
64             is the first 4 bytes or the IP Address component
65             of the Label Distribution Protocol (LDP) identifier."
66         SYNTAX      OCTET STRING (SIZE (4))
67
68     --
69     -- A similar TC is also used in RFC2677.txt, perhaps
70     -- this should be made general and not MPLS specific.
71     --
72     MplsLdpGenAddr ::= TEXTUAL-CONVENTION
73         STATUS      current
74         DESCRIPTION
75             "The value of an network layer or data link
76             layer address."
77         SYNTAX      OCTET STRING (SIZE (0..64))
78
79     -- following label is taken from the
80     -- draft-ietf-mpls-lsr-mib-01.txt
81     -- It is reproduced here and modified to reflect
82     -- the Frame Relay Forum's
83     -- recent decision to drop 17-bit DLCI support,
84     -- and other modifications.  Also, added
85     -- reference 3. to REFERENCE clause.
86
87
88     MplsLabel ::= TEXTUAL-CONVENTION
89         STATUS        current
90         DESCRIPTION
91             "Represents an MPLS label. The label contents are
92             are specific to the label being represented.
93
94             The label carried in an MPLS shim header
95             (for LDP, the Generic Label) is a 20-bit number
96             represented by 4 octets. Bits 0-19 contain a
97             label or a reserved label value.  Bits 20-31 MUST
98             be zero.
99
100             The frame relay label can be either 10-bits or
101             23-bits depending on the DLCI field size and the
102             upper 22-bits or upper 9-bits must be zero, respectively.
103
104             For an ATM label the lower 16-bits represents the VCI,
105             the next 8-bits represents the VPI and the remaining
106             bits MUST be zero."
107        REFERENCE
108            "1. 'MPLS Label Stack Encoding', Rosen et al., draft-
109             ietf-mpls-label-encaps-07.txt, September 1999.
110             2. 'Use of Label Switching on Frame Relay Networks',
111             Conta et al., draft-ietf-mpls-fr-03.txt,
112             November 1998.
113             3. 'MPLS using LDP and ATM VC Switching', Davie et al.,
114             draft-ietf-mpls-atm-02.txt, April 1999."
115        SYNTAX       Unsigned32 (0..4294967295)
116
117     MplsLdpIdentifier ::= TEXTUAL-CONVENTION
118         STATUS      current
119         DESCRIPTION
120             "The LDP identifier is a six octet quantity
121             which is used to identify an Label Switch Router
122             (LSR) label space.
123
124             The first four octets encode an IP address
125             assigned to the LSR, and the last two octets
126             identify a specific label space within the LSR."
127         SYNTAX      OCTET STRING (SIZE (6))
128
129     MplsLdpLabelTypes ::= TEXTUAL-CONVENTION
130         STATUS      current
131         DESCRIPTION
132             "The Layer 2 label types which are defined for
133             MPLS LDP are generic(1), atm(2), or frameRelay(3)."
134         SYNTAX              INTEGER {
135                                generic(1),
136                                atm(2),
137                                frameRelay(3)
138                             }
139--   The next two TC's added in lieu of actually IMPORTING ATM-TC-MIB
140     AtmVcIdentifier ::= TEXTUAL-CONVENTION
141        STATUS  current
142        DESCRIPTION
143            "The VCI value for a VCL. The maximum VCI value
144            cannot exceed the value allowable by
145            atmInterfaceMaxVciBits defined in ATM-MIB."
146        SYNTAX   INTEGER (0..65535)
147
148     AtmVpIdentifier ::= TEXTUAL-CONVENTION
149        STATUS  current
150        DESCRIPTION
151            "The VPI value for a VPL or VCL. The value VPI=0
152            is only allowed for a VCL. For ATM UNIs supporting
153            VPCs the VPI value ranges from 0 to 255.  The VPI
154            value 0 is supported for ATM UNIs conforming to
155            the ATM Forum UNI 4.0 Annex 8 (Virtual UNIs)
156            specification. For ATM UNIs supporting VCCs the
157            VPI value ranges from 0 to 255.  For ATM NNIs the
158            VPI value ranges from 0 to 4095.  The maximum VPI
159            value cannot exceed the value allowable by
160            atmInterfaceMaxVpiBits defined in ATM-MIB."
161        SYNTAX    INTEGER (0..4095)
162
163
164     -- Top-level structure of the MIB (the following is proposed)
165--   mpls                 OBJECT IDENTIFIER ::= { mplsProtocols }
166
167--   mplsProtocols        OBJECT IDENTIFIER ::= { mplsLdpObjects }
168     -- under mplsProtocols will be LDP, CR-LDP,
169     --       and other MPLS "Protocols".
170
171     mplsLdpObjects       OBJECT IDENTIFIER ::= { mplsLdpMIB 1 }
172     mplsLdpNotifications OBJECT IDENTIFIER ::= { mplsLdpMIB 2 }
173     mplsLdpConformance   OBJECT IDENTIFIER ::= { mplsLdpMIB 3 }
174
175     --****************************************************************
176     -- MPLS LDP Objects
177     --****************************************************************
178
179     mplsLdpLsrObjects    OBJECT IDENTIFIER ::= { mplsLdpObjects 1 }
180
181     mplsLdpEntityObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 2 }
182
183     --
184     -- The MPLS Label Distribution Protocol's
185     -- Label Switch Router Objects
186     --
187
188     mplsLdpLsrId OBJECT-TYPE
189         SYNTAX      MplsLsrIdentifier
190         MAX-ACCESS  read-only
191         STATUS      current
192         DESCRIPTION
193             "The LSR's Identifier."
194         ::= { mplsLdpLsrObjects 1 }
195
196     mplsLdpLsrLabelRetentionMode OBJECT-TYPE
197         SYNTAX      INTEGER {
198                         conservative(1),
199                         liberal(2)
200                     }
201         MAX-ACCESS  read-write
202         STATUS      current
203         DESCRIPTION
204             "The LSR can be configured to use either
205             conservative or liberal label retention mode.
206
207             If the value of this object is conservative(1)
208             then advertized label mappings are retained
209             only if they will be used to forward packets,
210             i.e. if label came from a valid next hop.
211
212             If the value of this object is liberal(2)
213             then all advertized label mappings are retained
214             whether they are from a valid next hop or not."
215         ::= { mplsLdpLsrObjects 2 }
216
217     mplsLdpLsrLoopDetectionCapable OBJECT-TYPE
218         SYNTAX      INTEGER {
219                                none(1),
220                                other(2),
221                                hopCount(3),
222                                pathVector(4),
223                                hopCountAndPathVector(5)
224                             }
225         MAX-ACCESS  read-only
226         STATUS      current
227         DESCRIPTION
228             "A indication of whether this LSR supports
229             loop detection.
230
231             none(1) -- Loop Detection is not supported
232                        on this LSR.
233
234             other(2) -- Loop Detection is supported but
235                         by a method other than those
236                         listed below.
237
238             hopCount(3) -- Loop Detection is supported by
239                            Hop Count only.
240
241             pathVector(4) -- Loop Detection is supported by
242                             Path Vector only.
243
244             hopCountAndPathVector(5) -- Loop Detection is
245                                  supported by both Hop Count
246                                  And Path Vector.
247
248             Since Loop Detection is determined during
249             Session Initialization, an individual session
250             may not be running with loop detection.  This
251             object simply gives an indication of whether or not the
252             LSR has the ability to support Loop Detection and
253             which types."
254         ::= { mplsLdpLsrObjects 3 }
255
256     --
257     -- The MPLS Label Distribution Protocol Entity Objects
258     --
259
260     mplsLdpEntityIndexNext  OBJECT-TYPE
261         SYNTAX      Unsigned32 (0..4294967295)
262         MAX-ACCESS     read-only
263         STATUS         current
264         DESCRIPTION
265             "This object contains an appropriate value to
266             be used for mplsLdpEntityIndex when creating
267             entries in the mplsLdpEntityTable. The value
268             0 indicates that no unassigned entries are
269             available. To obtain the mplsLdpEntityIndex
270             value for a new entry, the manager issues a
271             management protocol retrieval operation to obtain
272             the current value of this object.  After each
273             retrieval, the agent should modify the value to
274             the next unassigned index."
275        ::= { mplsLdpEntityObjects 1 }
276
277     mplsLdpEntityTable OBJECT-TYPE
278         SYNTAX      SEQUENCE OF MplsLdpEntityEntry
279         MAX-ACCESS  not-accessible
280         STATUS      current
281         DESCRIPTION
282             "This table contains information about the
283             MPLS Label Distribution Protocol Entities which
284             exist on this Label Switch Router (LSR)."
285         ::= { mplsLdpEntityObjects 2 }
286
287     mplsLdpEntityEntry OBJECT-TYPE
288         SYNTAX      MplsLdpEntityEntry
289         MAX-ACCESS  not-accessible
290         STATUS      current
291         DESCRIPTION
292             "An entry in this table represents an LDP entity.
293             An entry can be created by a network administrator
294             or by an SNMP agent as instructed by LDP."
295         INDEX       {  mplsLdpEntityLdpId, mplsLdpEntityIndex  }
296         ::= { mplsLdpEntityTable 1 }
297
298     MplsLdpEntityEntry ::= SEQUENCE {
299         mplsLdpEntityLdpId                       MplsLdpIdentifier,
300         mplsLdpEntityIndex                       Unsigned32,
301         mplsLdpEntityProtocolVersion             Integer32,
302         mplsLdpEntityAdminStatus                 INTEGER,
303         mplsLdpEntityOperStatus                  INTEGER,
304         mplsLdpEntityWellKnownDiscoveryPort      Unsigned32,
305         mplsLdpEntityMaxPduLength                Unsigned32,
306         mplsLdpEntityKeepAliveHoldTimer          Integer32,
307         mplsLdpEntityHelloHoldTimer              Integer32,
308         mplsLdpEntityFailedInitSessionTrapEnable INTEGER,
309         mplsLdpEntityFailedInitSessionThreshold  Integer32,
310         mplsLdpEntityLabelDistributionMethod     INTEGER,
311         mplsLdpEntityPVLimitMismatchTrapEnable   INTEGER,
312         mplsLdpEntityPathVectorLimit             Integer32,
313         mplsLdpEntityHopCountLoopDetection       INTEGER,
314         mplsLdpEntityHopCount                    Unsigned32,
315         mplsLdpEntityTargetedPeer                TruthValue,
316         mplsLdpEntityTargetedPeerAddrType        AddressFamilyNumbers,
317         mplsLdpEntityTargetedPeerAddr            MplsLdpGenAddr,
318         mplsLdpEntityOptionalParameters          MplsLdpLabelTypes,
319         mplsLdpEntityDiscontinuityTime           TimeStamp,
320         mplsLdpEntityStorageType                 StorageType,
321         mplsLdpEntityRowStatus                   RowStatus
322     }
323
324     mplsLdpEntityLdpId OBJECT-TYPE
325         SYNTAX      MplsLdpIdentifier
326         MAX-ACCESS  not-accessible
327         STATUS      current
328         DESCRIPTION
329             "The LDP identifier.
330
331             The first four octets encode an IP address
332             assigned to the LSR, and the last two octets
333             identify a specific label space within the
334             LSR."
335         REFERENCE
336             "LDP Specification, Section on LDP Identifiers."
337         ::= { mplsLdpEntityEntry 1 }
338
339     mplsLdpEntityIndex OBJECT-TYPE
340         SYNTAX      Unsigned32 (1..4294967295)
341         MAX-ACCESS  not-accessible
342         STATUS      current
343         DESCRIPTION
344             "This index is used as a secondary index to uniquely
345             identify this row.  Before creating a row in this table,
346             the 'mplsLdpEntityIndexNext' object should be retrieved.
347             That value should be used for the value of this index
348             when creating a row in this table.  (NOTE:  if a value
349             of zero (0) is retrieved, that indicates that no rows
350             can be created in this table at this time."
351         ::= { mplsLdpEntityEntry 2 }
352
353     mplsLdpEntityProtocolVersion OBJECT-TYPE
354         SYNTAX      Integer32
355         MAX-ACCESS  read-create
356         STATUS      current
357         DESCRIPTION
358            "The version number of the protocol.  The value of 0 on a
359            read indicates that the version of the protocol is unknown.
360            Otherwise, the value of this object represents the version
361            of the LDP protocol."
362         ::= { mplsLdpEntityEntry 3 }
363
364     mplsLdpEntityAdminStatus OBJECT-TYPE
365         SYNTAX      INTEGER {
366                       enable(1),
367                       disable(2)
368                     }
369         MAX-ACCESS  read-create
370         STATUS      current
371         DESCRIPTION
372             "The administrative status of this LDP Entity.
373             If this object is changed from 'enable' to 'disable'
374             and this entity has already attempted to establish
375             contact with a Peer (which implies that the
376             'mplsLdpEntityRowStatus' object has been set to
377             'active'), then all contact with that
378             Peer is lost and all information from that Peer
379             needs to be removed from the MIB.
380
381             At this point the user is able to change values
382             which are related to this entity.
383
384             When the admin status is set back to 'up', then
385             this Entity will attempt to establish new sessions
386             with the Peer."
387         DEFVAL  { enable }
388         ::= { mplsLdpEntityEntry 4 }
389
390     mplsLdpEntityOperStatus OBJECT-TYPE
391         SYNTAX      INTEGER {
392                       unknown(0),
393                       enabled(1),
394                       disabled(2)
395                     }
396         MAX-ACCESS  read-only
397         STATUS      current
398         DESCRIPTION
399             "The operational status of this LDP Entity."
400         ::= { mplsLdpEntityEntry 5 }
401
402     mplsLdpEntityWellKnownDiscoveryPort OBJECT-TYPE
403         SYNTAX      Unsigned32
404         MAX-ACCESS  read-create
405         STATUS      current
406         DESCRIPTION
407             "The well known LDP Discovery Port."
408         ::= { mplsLdpEntityEntry 6 }
409
410     mplsLdpEntityMaxPduLength OBJECT-TYPE
411         SYNTAX      Unsigned32 (0..65535)
412         MAX-ACCESS  read-create
413         STATUS      current
414         DESCRIPTION
415            "The maximum PDU Length that is sent in
416            the Common Session Parameters of an Initialization
417            Message. A value of 255 or less specifies the
418            default maximum length of 4096 octets."
419         REFERENCE
420            "See Section on the 'Initialization Message' in the
421            LDP Specification."
422         ::= { mplsLdpEntityEntry 7 }
423
424     mplsLdpEntityKeepAliveHoldTimer OBJECT-TYPE
425         SYNTAX      Integer32 (1..65535)
426         UNITS       "seconds"
427         MAX-ACCESS  read-create
428         STATUS      current
429         DESCRIPTION
430             "The two octet value which is the proposed keep alive hold
431             timer for this LDP Entity."
432         ::= { mplsLdpEntityEntry 8 }
433
434     mplsLdpEntityHelloHoldTimer OBJECT-TYPE
435         SYNTAX      Integer32 (0..65535)
436         UNITS       "seconds"
437         MAX-ACCESS  read-create
438         STATUS      current
439         DESCRIPTION
440             "The two octet value which is the proposed Hello hold
441             timer for this LDP Entity. A value of 0 means use the
442             default, which is 15 seconds for Link Hellos and 45
443             seconds for Targeted Hellos.  A value of 65535 means
444             infinite."
445         DEFVAL { 0 }
446         ::= { mplsLdpEntityEntry 9 }
447
448     mplsLdpEntityFailedInitSessionTrapEnable OBJECT-TYPE
449         SYNTAX      INTEGER {
450                                enabled(1),
451                                disabled(2)
452                             }
453         MAX-ACCESS  read-create
454         STATUS      current
455         DESCRIPTION
456             "Indicates whether the
457             'mplsLdpFailedInitSessionThresholdExceeded'
458             trap should be generated.
459
460             If the value of this object is 'enabled(1)'
461             then the trap will generated.  If the value
462             of this object is 'disabled(2)' then the
463             trap will not be generated.  The DEFVAL
464             is set to 'enabled(1)'."
465         DEFVAL { enabled }
466         ::= { mplsLdpEntityEntry 10 }
467
468     mplsLdpEntityFailedInitSessionThreshold OBJECT-TYPE
469         SYNTAX      Integer32
470         MAX-ACCESS  read-create
471         STATUS      current
472         DESCRIPTION
473             "When attempting to establish a session with a
474             given Peer, the given LDP Entity should
475             send out the SNMP notification,
476             'mplsLdpFailedInitSessionThresholdExceeded', when
477             the number of Session Initialization messages sent
478             exceeds this threshold.
479
480             A value of 0 (zero) for this object
481             indicates that the threshold is infinity, and
482             the SNMP notification will never be sent
483             when the value of this object is 0 (zero)."
484         ::= { mplsLdpEntityEntry 11 }
485
486     mplsLdpEntityLabelDistributionMethod OBJECT-TYPE
487         SYNTAX      INTEGER {
488                        downstreamOnDemand(1),
489                        downstreamUnsolicited(2)
490                     }
491         MAX-ACCESS  read-create
492         STATUS      current
493         DESCRIPTION
494             "For any given LDP session, the method of
495             label distribution must be specified."
496         ::= { mplsLdpEntityEntry 12 }
497
498     mplsLdpEntityPVLimitMismatchTrapEnable OBJECT-TYPE
499         SYNTAX      INTEGER {
500                                enabled(1),
501                                disabled(2)
502                             }
503         MAX-ACCESS  read-create
504         STATUS      current
505         DESCRIPTION
506             "Indicates whether the 'mplsLdpPathVectorLimitMismatch'
507             trap should be generated.
508
509             If the value of this object is 'enabled(1)'
510             then the trap will generated.  If the value
511             of this object is 'disabled(2)' then the
512             trap will not be generated.  The DEFVAL
513             is set to 'enabled(1)'."
514         DEFVAL { enabled }
515         ::= { mplsLdpEntityEntry 13 }
516
517     mplsLdpEntityPathVectorLimit OBJECT-TYPE
518         SYNTAX      Integer32 (0..255)
519         MAX-ACCESS  read-create
520         STATUS      current
521         DESCRIPTION
522             "If the value of this object is 0 (zero) then
523             Loop Dection for Path Vectors is disabled.
524
525             Otherwise, if this object has a value greater than
526             zero, then Loop Dection for Path Vectors is enabled,
527             and the Path Vector Limit is this value.
528             Also, the value of the object,
529             'mplsLdpLsrLoopDetectionCapable', must be set to
530             either 'pathVector(4)' or 'hopCountAndPathVector(5)',
531             if this object has a value greater than 0 (zero)."
532         ::= { mplsLdpEntityEntry 14 }
533
534     mplsLdpEntityHopCountLoopDetection OBJECT-TYPE
535         SYNTAX     INTEGER {
536                               disabled(0),
537                               enabled(1)
538                            }
539         MAX-ACCESS read-create
540         STATUS     current
541         DESCRIPTION
542             "An indication of whether loop detection based
543             on hop count is disabled or enabled for this
544             Entity.  If this object has the value of
545             'disabled(0)', then loop detection using
546             hop counts is disabled.
547
548             Otherwise, if this object has a value of 'enabled(1)',
549             then loop detection based on hop counts is enabled.
550             Also, the value of the object,
551             'mplsLdpLsrLoopDetectionCapable', must have the value
552             of either: 'hopCount(3)' or 'hopCountAndPathVector(5)'."
553         ::= { mplsLdpEntityEntry 15 }
554
555     mplsLdpEntityHopCount  OBJECT-TYPE
556         SYNTAX      Unsigned32 (0..255)
557         MAX-ACCESS  read-create
558         STATUS      current
559         DESCRIPTION
560             "If the value of 'mplsLdpEntityHopCountLoopDetection'
561             for this entry is 'enabled(1)', then this object
562             represents the initial Hop Count for this Entity.
563
564             If the value of 'mplsLdpEntityHopCountLoopDetection'
565             is 'disabled(0)', then the value of this object is
566             undefined."
567         ::= { mplsLdpEntityEntry 16 }
568
569     mplsLdpEntityTargetedPeer OBJECT-TYPE
570         SYNTAX      TruthValue
571         MAX-ACCESS  read-create
572         STATUS      current
573         DESCRIPTION
574             "If this LDP entity uses targeted peer then set
575             this to true."
576         DEFVAL { false }
577         ::= { mplsLdpEntityEntry 17 }
578
579     mplsLdpEntityTargetedPeerAddrType OBJECT-TYPE
580         SYNTAX      AddressFamilyNumbers
581         MAX-ACCESS  read-create
582         STATUS      current
583         DESCRIPTION
584             "The type of the internetwork layer address used for
585             the Extended Discovery. This object indicates how
586             the value of mplsLdpEntityTargetedPeerAddr is to
587             be interpreted."
588         ::= { mplsLdpEntityEntry 18 }
589
590     mplsLdpEntityTargetedPeerAddr OBJECT-TYPE
591         SYNTAX      MplsLdpGenAddr
592         MAX-ACCESS  read-create
593         STATUS      current
594         DESCRIPTION
595             "The value of the internetwork layer address used for
596             the Extended Discovery."
597        ::= { mplsLdpEntityEntry 19 }
598
599     mplsLdpEntityOptionalParameters OBJECT-TYPE
600         SYNTAX      MplsLdpLabelTypes
601         MAX-ACCESS  read-create
602         STATUS      current
603         DESCRIPTION
604             "Specifies the optional parameters for the LDP
605             Initialization Message.  If the value is generic(1)
606             then no optional parameters will be sent in
607             the LDP Initialization message associated with
608             this Entity.
609
610             If the value is atmParameters(2) then
611             a row must be created in the mplsLdpEntityAtmParms
612             Table, which corresponds to this entry.
613
614             If the value is frameRelayParameters(3) then
615             a row must be created in the mplsLdpEntityFrameRelayParms
616             Table, which corresponds to this entry."
617         ::= { mplsLdpEntityEntry 20 }
618
619     mplsLdpEntityDiscontinuityTime OBJECT-TYPE
620         SYNTAX      TimeStamp
621         MAX-ACCESS  read-only
622         STATUS      current
623         DESCRIPTION
624             "The value of sysUpTime on the most recent occasion
625             at which any one or more of this entity's counters
626             suffered a discontinuity.  The relevant counters are the
627             specific instances associated with this entity of
628             any Counter32, or Counter64 object contained
629             in the 'mplsLdpEntityStatsTable'.  If no such
630             discontinuities have occurred since the last
631             re-initialization of the local management
632             subsytem, then this object contains a zero
633             value."
634         ::= { mplsLdpEntityEntry 21 }
635
636     mplsLdpEntityStorageType  OBJECT-TYPE
637         SYNTAX      StorageType
638         MAX-ACCESS  read-create
639         STATUS      current
640         DESCRIPTION
641                  "The storage type for this entry."
642         ::= { mplsLdpEntityEntry 22 }
643
644     mplsLdpEntityRowStatus OBJECT-TYPE
645         SYNTAX      RowStatus
646         MAX-ACCESS  read-create
647         STATUS      current
648         DESCRIPTION
649             "An object that allows entries in this table to
650              be created and deleted using the
651              RowStatus convention.
652
653              Once the 'mplsLdpEntityAdminStatus' object has
654              the value of 'up' and this object has the value
655              of 'active' then the Entity will atttempt to
656              contact an LDP Peer.  If the value of this object
657              is changed to 'notInService', then the Entity looses
658              contact with the LDP Peer and all information related
659              to that Peer must be removed from the MIB.  This has
660              the same effect as changing 'mplsLdpEntityAdminStatus'
661              from 'enable' to 'disable'.
662
663              When this object is set to 'active' and the value of
664              the 'mplsLdpEntityAdminStatus' is 'enable' then
665              this Entity will attempt to contact the Peer and
666              establish new sessions."
667         ::= { mplsLdpEntityEntry 23 }
668
669     --
670     -- Ldp Entity Objects for Generic Labels
671     --
672
673     mplsLdpEntityGenericObjects  OBJECT IDENTIFIER ::=
674                                   { mplsLdpEntityObjects 3 }
675
676     mplsLdpEntityConfGenericTable  OBJECT-TYPE
677         SYNTAX      SEQUENCE OF MplsLdpEntityConfGenericEntry
678         MAX-ACCESS  not-accessible
679         STATUS      current
680         DESCRIPTION
681             "This table provides a way to configure Generic Labels
682             associated with LDP entities on the LSR."
683         ::= { mplsLdpEntityGenericObjects 1 }
684
685     mplsLdpEntityConfGenericEntry OBJECT-TYPE
686         SYNTAX      MplsLdpEntityConfGenericEntry
687         MAX-ACCESS  not-accessible
688         STATUS      current
689         DESCRIPTION
690             "An entry in this table provides a way to configure
691             a 'Generic Label' for LDP.
692
693             An entry in the 'mplsLdpEntityTable' will only have
694             associated entries in this Table if Generic Labels
695             are configured for a specific 'mplsLdpEntityEntry'.
696             Thus, not every 'mplsLdpEntityEntry' will have
697             associated entries in this table.
698             The InterfaceIndex value for a Generic Label is
699             from the 'ifLayer' where the label is created.  Likewise,
700             the ifType of the interface is the 'ifLayer' where the
701             label is created.  For example, if an implementation
702             creates the generic label at the ifLayer which
703             has the 'ifType' of 'mpls', then the
704             'mplsLdpConfGenericIfIndexOrZero' object
705             should be set to the value of the InterfaceIndex
706             for this 'ifLayer'.
707
708             If the value of 'mplsLdpConfGenericIfIndexOrZero' is zero
709             then the InterfaceIndex value of this object is not known.
710             If this Generic Label is used, i.e. a session has been
711             established successfully and data is forwarded using this
712             label, then the value of the
713             'mplsLdpConfGenericIfIndexOrZero'  object MUST be
714             updated by the network management  entity
715             (e.g. SNMP agent) to reflect the InterfaceIndex
716             value for the 'ifLayer' that created  the Generic Label.
717
718             To summarize, not all implementations may assign ifIndices
719             at a label's creation time, thus, an ifIndex value
720             may not be known, until a subsequent time.  However,
721             once that ifIndex value is known, the
722             'mplsLdpConfGenericIfIndexOrZero' object
723             should be changed to reflect the ifIndex value."
724         INDEX       {  mplsLdpEntityLdpId,
725                        mplsLdpEntityIndex,
726                        mplsLdpConfGenericIndex
727                     }
728         ::= { mplsLdpEntityConfGenericTable 1 }
729
730     MplsLdpEntityConfGenericEntry ::= SEQUENCE {
731         mplsLdpConfGenericIndex          Unsigned32,
732         mplsLdpConfGenericIfIndexOrZero  InterfaceIndexOrZero,
733         mplsLdpConfGenericLabel          Unsigned32,
734         mplsLdpConfGenericStorageType    StorageType,
735         mplsLdpConfGenericRowStatus      RowStatus
736     }
737
738     mplsLdpConfGenericIndex OBJECT-TYPE
739         SYNTAX      Unsigned32(1..4294967295)
740         MAX-ACCESS  not-accessible
741         STATUS      current
742         DESCRIPTION
743            "This index is used to distinguish between multiple
744            Generic Labels configured for the same LDP Entity."
745         ::= { mplsLdpEntityConfGenericEntry 1 }
746
747     mplsLdpConfGenericIfIndexOrZero OBJECT-TYPE
748         SYNTAX      InterfaceIndexOrZero
749         MAX-ACCESS  read-create
750         STATUS      current
751         DESCRIPTION
752            "This value represents either the InterfaceIndex of
753            the 'ifLayer' where this Generic Label was created, or
754            0 (zero).  The value of zero means that the InterfaceIndex
755            is not known.  For example, if the InterfaceIndex is
756            created subsequent to the Generic Label's creation, then
757            it would not be known.  However, if the InterfaceIndex
758            is known, then it must be represented by this value.
759
760            If an InterfaceIndex becomes known, then the
761            network management entity (e.g. SNMP agent) responsible
762            for this object MUST change the value from 0 (zero) to the
763            value of the InterfaceIndex.  If this Generic Label is
764            being used in forwarding data, then the value of this
765            object MUST be the InterfaceIndex."
766         ::= { mplsLdpEntityConfGenericEntry 2 }
767
768     mplsLdpConfGenericLabel OBJECT-TYPE
769         SYNTAX      Unsigned32(0..1048575)
770         MAX-ACCESS  read-create
771         STATUS      current
772         DESCRIPTION
773            "The value of this object represents the Generic Label
774            used in the Generic Label TLV."
775         REFERENCE
776            "Generic Label TLV Section of the LDP Specification."
777         ::= { mplsLdpEntityConfGenericEntry 3 }
778
779     mplsLdpConfGenericStorageType  OBJECT-TYPE
780         SYNTAX      StorageType
781         MAX-ACCESS  read-create
782         STATUS      current
783         DESCRIPTION
784                  "The storage type for this entry."
785         ::= { mplsLdpEntityConfGenericEntry 4 }
786
787     mplsLdpConfGenericRowStatus OBJECT-TYPE
788         SYNTAX      RowStatus
789         MAX-ACCESS  read-create
790         STATUS      current
791         DESCRIPTION
792            "An object that allows entries in this table to
793             be created and deleted using the
794             RowStatus convention.
795
796             NOTE:  This RowStatus object should
797             have the same value of the 'mplsLdpEntityRowStatus'
798             related to this entry."
799         ::= { mplsLdpEntityConfGenericEntry 5 }
800
801     --
802     -- Ldp Entity Objects for ATM
803     --
804
805     mplsLdpEntityAtmObjects  OBJECT IDENTIFIER ::=
806                                   { mplsLdpEntityObjects 4 }
807
808     mplsLdpEntityAtmParmsTable  OBJECT-TYPE
809         SYNTAX      SEQUENCE OF MplsLdpEntityAtmParmsEntry
810         MAX-ACCESS  not-accessible
811         STATUS      current
812         DESCRIPTION
813             "This table contains information about the
814             ATM specific information which could be used
815             in the 'Optional Parameters' and other ATM specific
816             information."
817         ::= { mplsLdpEntityAtmObjects 1 }
818
819     mplsLdpEntityAtmParmsEntry OBJECT-TYPE
820         SYNTAX      MplsLdpEntityAtmParmsEntry
821         MAX-ACCESS  not-accessible
822         STATUS      current
823         DESCRIPTION
824             "An entry in this table represents the ATM parameters
825             and ATM information for this LDP entity."
826         INDEX       {  mplsLdpEntityLdpId,
827                        mplsLdpEntityIndex
828                     }
829         ::= { mplsLdpEntityAtmParmsTable 1 }
830
831     MplsLdpEntityAtmParmsEntry ::= SEQUENCE {
832         mplsLdpEntityAtmIfIndexOrZero        InterfaceIndexOrZero,
833         mplsLdpEntityAtmMergeCap             INTEGER,
834         mplsLdpEntityAtmLabelRangeComponents Unsigned32,
835         mplsLdpEntityAtmVcDirectionality     INTEGER,
836         mplsLdpEntityAtmLsrConnectivity      INTEGER,
837         mplsLdpEntityDefaultControlVpi       AtmVpIdentifier,
838         mplsLdpEntityDefaultControlVci       AtmVcIdentifier,
839         mplsLdpEntityUnlabTrafVpi            AtmVpIdentifier,
840         mplsLdpEntityUnlabTrafVci            AtmVcIdentifier,
841         mplsLdpEntityAtmStorageType          StorageType,
842         mplsLdpEntityAtmRowStatus            RowStatus
843     }
844
845     mplsLdpEntityAtmIfIndexOrZero  OBJECT-TYPE
846         SYNTAX      InterfaceIndexOrZero
847         MAX-ACCESS  read-create
848         STATUS      current
849         DESCRIPTION
850            "This value represents either the InterfaceIndex of
851            the 'ifLayer' where the ATM Labels 'owned' by this
852            entry were created, or 0 (zero).  The value of zero
853            means that the InterfaceIndex is not known.  For example,
854            if the InterfaceIndex is created subsequent to the
855            ATM Label's creation, then it would not be known.
856            However, if the InterfaceIndex is known, then it must
857            be represented by this value.
858
859            If an InterfaceIndex becomes known, then the
860            network management entity (e.g. SNMP agent) responsible
861            for this object MUST change the value from 0 (zero) to the
862            value of the InterfaceIndex.  If an ATM Label is
863            being used in forwarding data, then the value of this
864            object MUST be the InterfaceIndex."
865         ::= { mplsLdpEntityAtmParmsEntry 1 }
866
867     mplsLdpEntityAtmMergeCap OBJECT-TYPE
868         SYNTAX      INTEGER {
869                         notSupported(0),
870                         vpMerge(1),
871                         vcMerge(2),
872                         vpAndVcMerge(3)
873                     }
874         MAX-ACCESS  read-create
875         STATUS      current
876         DESCRIPTION
877                  "Denotes the Merge Capability of this Entity."
878         ::= { mplsLdpEntityAtmParmsEntry 2 }
879
880     mplsLdpEntityAtmLabelRangeComponents OBJECT-TYPE
881         SYNTAX      Unsigned32 (1..65535)
882         MAX-ACCESS  read-create
883         STATUS      current
884         DESCRIPTION
885             "Number of LabelRange Components in the Initialization
886             message.  This also represents the number of entries
887             in the mplsLdpLabelRangeComponentsTable which correspond
888             to this entry."
889         ::= { mplsLdpEntityAtmParmsEntry 3 }
890
891     mplsLdpEntityAtmVcDirectionality OBJECT-TYPE
892         SYNTAX      INTEGER {
893                                bidirectional(0),
894                                unidirectional(1)
895                             }
896         MAX-ACCESS  read-create
897         STATUS      current
898         DESCRIPTION
899             "If the value of this object is 'bidirectional(0)',
900             a given VCI, within a given VPI, is used as a
901             label for both directions independently.
902
903             If the value of this object is 'unidirectional(1)',
904             a given VCI within a VPI designates one direction."
905         ::= { mplsLdpEntityAtmParmsEntry 4 }
906
907     mplsLdpEntityAtmLsrConnectivity OBJECT-TYPE
908         SYNTAX      INTEGER {
909                        direct(1),
910                        indirect(2)
911                     }
912         MAX-ACCESS  read-create
913         STATUS      current
914         DESCRIPTION
915             "The peer LSR may be connected indirectly by means of an
916             ATM VP so that the VPI values may be different on either
917             endpoint so the label MUST be encoded entirely within the
918             VCI field."
919         REFERENCE
920            "draft-ietf-mpls-atm-02.txt, Section 7"
921         DEFVAL { direct }
922         ::= { mplsLdpEntityAtmParmsEntry 5 }
923
924     mplsLdpEntityDefaultControlVpi OBJECT-TYPE
925         SYNTAX      AtmVpIdentifier
926         MAX-ACCESS  read-create
927         STATUS      current
928         DESCRIPTION
929             "The default VPI value for the non-MPLS connection.  The
930             default value of this is 0 (zero) but other values may
931             be configured.  This object allows a different value
932             to be configured."
933         REFERENCE
934            "draft-ietf-mpls-atm-02.txt, Section 7.1"
935         DEFVAL
936             { 0 }
937         ::= { mplsLdpEntityAtmParmsEntry 6 }
938
939     mplsLdpEntityDefaultControlVci OBJECT-TYPE
940         SYNTAX      AtmVcIdentifier
941         MAX-ACCESS  read-create
942         STATUS      current
943         DESCRIPTION
944             "The Default VCI value for a non-MPLS connection.  The
945             default value of this is 32 but other values may be
946             configured.  This object allows a different value to
947             be configured."
948         REFERENCE
949            "draft-ietf-mpls-atm-02.txt, Section 7.1"
950         DEFVAL
951             { 32 }
952         ::= { mplsLdpEntityAtmParmsEntry 7 }
953
954     mplsLdpEntityUnlabTrafVpi OBJECT-TYPE
955         SYNTAX      AtmVpIdentifier
956         MAX-ACCESS  read-create
957         STATUS      current
958         DESCRIPTION
959             "VPI value of the VCC supporting unlabelled traffic.  This
960             non-MPLS connection is used to carry unlabelled (IP)
961             packets."
962         DEFVAL  { 0 }
963         ::= { mplsLdpEntityAtmParmsEntry 8 }
964
965     mplsLdpEntityUnlabTrafVci OBJECT-TYPE
966         SYNTAX      AtmVcIdentifier
967         MAX-ACCESS  read-create
968         STATUS      current
969         DESCRIPTION
970             "VCI value of the VCC supporting unlabelled traffic.
971             This non-MPLS connection is used to carry unlabelled (IP)
972             packets."
973         DEFVAL  { 32 }
974         ::= { mplsLdpEntityAtmParmsEntry 9 }
975
976     mplsLdpEntityAtmStorageType  OBJECT-TYPE
977         SYNTAX      StorageType
978         MAX-ACCESS  read-create
979         STATUS      current
980         DESCRIPTION
981                  "The storage type for this entry."
982         ::= { mplsLdpEntityAtmParmsEntry 10 }
983
984     mplsLdpEntityAtmRowStatus OBJECT-TYPE
985         SYNTAX      RowStatus
986         MAX-ACCESS  read-create
987         STATUS      current
988         DESCRIPTION
989             "An object that allows entries in this table to
990             be created and deleted using the
991             RowStatus convention.
992
993             NOTE:  This RowStatus object should
994             have the same value of the 'mplsLdpEntityRowStatus'
995             related to this entry."
996         ::= { mplsLdpEntityAtmParmsEntry 11 }
997
998     --
999     -- The MPLS LDP Entity Configurable ATM Label Range Table
1000     --
1001
1002     mplsLdpEntityConfAtmLabelRangeTable OBJECT-TYPE
1003         SYNTAX SEQUENCE OF MplsLdpEntityConfAtmLabelRangeEntry
1004         MAX-ACCESS not-accessible
1005         STATUS current
1006         DESCRIPTION
1007             "The MPLS LDP Entity Configurable ATM Label Range Table.
1008             The purpose of this table is to provide a mechanism
1009             for specifying a contiguous range of vpi's
1010             with a contiguous range of vci's, or a 'label range'
1011             for LDP Entities.
1012
1013             LDP Entities which use ATM must have at least one
1014             entry in this table."
1015         ::= { mplsLdpEntityAtmObjects 2 }
1016
1017     mplsLdpEntityConfAtmLabelRangeEntry OBJECT-TYPE
1018         SYNTAX MplsLdpEntityConfAtmLabelRangeEntry
1019         MAX-ACCESS not-accessible
1020         STATUS current
1021         DESCRIPTION
1022             "A row in the LDP Entity Configurable ATM Label
1023             Range Table.  One entry in this table contains
1024             information on a single range of labels
1025             represented by the configured Upper and Lower
1026             Bounds VPI/VCI pairs.  These are the same
1027             data used in the Initialization Message.
1028
1029             NOTE:  The ranges for a specific LDP Entity
1030             are UNIQUE and non-overlapping.  For example,
1031             for a specific LDP Entity index, there could
1032             be one entry having ConfLowerBound vpi/vci == 0/32, and
1033             ConfUpperBound vpi/vci == 0/100, and a second entry
1034             for this same interface with ConfLowerBound
1035             vpi/vci == 0/101 and ConfUpperBound vpi/vci == 0/200.
1036             However, there could not be a third entry with
1037             ConfLowerBound vpi/vci == 0/200 and
1038             ConfUpperBound vpi/vci == 0/300 because this label
1039             range overlaps with the second entry (i.e. both
1040             entries now have 0/200).
1041
1042             A row will not be created unless a unique and
1043             non-overlapping range is specified.  Thus, row
1044             creation implies a one-shot row creation of
1045             LDP EntityID and ConfLowerBound vpi/vci and
1046             ConfUpperBound vpi/vci.  At least one label
1047             range entry for a specific LDP Entity MUST
1048             include the default VPI/VCI  values denoted
1049             in the LDP Entity Table."
1050         INDEX       {  mplsLdpEntityLdpId,
1051                        mplsLdpEntityIndex,
1052                        mplsLdpEntityConfAtmLabelRangeMinimumVpi,
1053                        mplsLdpEntityConfAtmLabelRangeMinimumVci
1054                     }
1055         ::= { mplsLdpEntityConfAtmLabelRangeTable 1 }
1056
1057     MplsLdpEntityConfAtmLabelRangeEntry ::= SEQUENCE {
1058         mplsLdpEntityConfAtmLabelRangeMinimumVpi  AtmVpIdentifier,
1059         mplsLdpEntityConfAtmLabelRangeMinimumVci  AtmVcIdentifier,
1060         mplsLdpEntityConfAtmLabelRangeMaximumVpi  AtmVpIdentifier,
1061         mplsLdpEntityConfAtmLabelRangeMaximumVci  AtmVcIdentifier,
1062         mplsLdpEntityConfAtmLabelRangeStorageType StorageType,
1063         mplsLdpEntityConfAtmLabelRangeRowStatus   RowStatus
1064     }
1065
1066     mplsLdpEntityConfAtmLabelRangeMinimumVpi OBJECT-TYPE
1067         SYNTAX AtmVpIdentifier
1068         MAX-ACCESS not-accessible
1069         STATUS current
1070         DESCRIPTION
1071             "The minimum VPI number configured for this range."
1072         ::= { mplsLdpEntityConfAtmLabelRangeEntry 1 }
1073
1074     mplsLdpEntityConfAtmLabelRangeMinimumVci OBJECT-TYPE
1075         SYNTAX AtmVcIdentifier
1076         MAX-ACCESS not-accessible
1077         STATUS current
1078         DESCRIPTION
1079             "The minimum VCI number configured for this range."
1080         ::= { mplsLdpEntityConfAtmLabelRangeEntry 2 }
1081
1082     mplsLdpEntityConfAtmLabelRangeMaximumVpi OBJECT-TYPE
1083         SYNTAX AtmVpIdentifier
1084         MAX-ACCESS read-create
1085         STATUS current
1086         DESCRIPTION
1087             "The maximum VPI number configured for this range."
1088         ::= { mplsLdpEntityConfAtmLabelRangeEntry 3 }
1089
1090     mplsLdpEntityConfAtmLabelRangeMaximumVci OBJECT-TYPE
1091         SYNTAX AtmVcIdentifier
1092         MAX-ACCESS read-create
1093         STATUS current
1094         DESCRIPTION
1095             "The maximum VCI number configured for this range."
1096        ::= { mplsLdpEntityConfAtmLabelRangeEntry 4 }
1097
1098     mplsLdpEntityConfAtmLabelRangeStorageType  OBJECT-TYPE
1099         SYNTAX      StorageType
1100         MAX-ACCESS  read-create
1101         STATUS      current
1102         DESCRIPTION
1103                  "The storage type for this entry."
1104         ::= { mplsLdpEntityConfAtmLabelRangeEntry 5 }
1105
1106     mplsLdpEntityConfAtmLabelRangeRowStatus OBJECT-TYPE
1107         SYNTAX RowStatus
1108         MAX-ACCESS read-create
1109         STATUS current
1110         DESCRIPTION
1111             "An object that allows entries in this
1112             table to be created and deleted using
1113             the RowStatus convention.
1114
1115             There must exist at least one entry in this
1116             table for every LDP Entity that has
1117             'mplsLdpEntityOptionalParameters' object with
1118             a value of 'atmSessionParameters'.
1119
1120             NOTE:  This RowStatus object should
1121             have the same value of the 'mplsLdpEntityRowStatus'
1122             related to this entry."
1123         ::= { mplsLdpEntityConfAtmLabelRangeEntry 6 }
1124
1125     --
1126     -- Ldp Entity Objects for Frame Relay
1127     --
1128
1129     mplsLdpEntityFrameRelayObjects OBJECT IDENTIFIER ::=
1130                                         { mplsLdpEntityObjects 5 }
1131
1132     mplsLdpEntityFrameRelayParmsTable  OBJECT-TYPE
1133         SYNTAX      SEQUENCE OF MplsLdpEntityFrameRelayParmsEntry
1134         MAX-ACCESS  not-accessible
1135         STATUS      current
1136         DESCRIPTION
1137             "This table contains information about the
1138             Optional Parameters to specify what this Entity is
1139             going to specify for Frame Relay specific
1140             LDP Intialization Messages."
1141         ::= { mplsLdpEntityFrameRelayObjects 1 }
1142
1143     mplsLdpEntityFrameRelayParmsEntry OBJECT-TYPE
1144         SYNTAX      MplsLdpEntityFrameRelayParmsEntry
1145         MAX-ACCESS  not-accessible
1146         STATUS      current
1147         DESCRIPTION
1148             "An entry in this table represents the Frame Relay
1149             optional parameters associated with the LDP entity."
1150         INDEX       {  mplsLdpEntityLdpId,
1151                        mplsLdpEntityIndex
1152                     }
1153         ::= { mplsLdpEntityFrameRelayParmsTable 1 }
1154
1155     MplsLdpEntityFrameRelayParmsEntry ::= SEQUENCE {
1156         mplsLdpEntityFrIfIndexOrZero        InterfaceIndexOrZero,
1157         mplsLdpEntityFrMergeCap             INTEGER,
1158         mplsLdpEntityFrLabelRangeComponents Unsigned32,
1159         mplsLdpEntityFrLen                  INTEGER,
1160         mplsLdpEntityFrVcDirectionality     INTEGER,
1161         mplsLdpEntityFrParmsStorageType     StorageType,
1162         mplsLdpEntityFrParmsRowStatus       RowStatus
1163     }
1164
1165     mplsLdpEntityFrIfIndexOrZero OBJECT-TYPE
1166         SYNTAX      InterfaceIndexOrZero
1167         MAX-ACCESS  read-create
1168         STATUS      current
1169         DESCRIPTION
1170            "This value represents either the InterfaceIndex of
1171            the 'ifLayer' where the Frame Relay Labels 'owned' by this
1172            entry were created, or 0 (zero).  The value of zero
1173            means that the InterfaceIndex is not known.  For example,
1174            if the InterfaceIndex is created subsequent to the
1175            Frame Relay Label's creation, then it would not be known.
1176            However, if the InterfaceIndex is known, then it must
1177            be represented by this value.
1178
1179            If an InterfaceIndex becomes known, then the
1180            network management entity (e.g. SNMP agent) responsible
1181            for this object MUST change the value from 0 (zero) to the
1182            value of the InterfaceIndex.  If an Frame Relay Label is
1183            being used in forwarding data, then the value of this
1184            object MUST be the InterfaceIndex."
1185         ::= { mplsLdpEntityFrameRelayParmsEntry 1 }
1186
1187     mplsLdpEntityFrMergeCap OBJECT-TYPE
1188         SYNTAX      INTEGER {
1189                         notSupported(0),
1190                         supported(1)
1191                     }
1192         MAX-ACCESS  read-create
1193         STATUS      current
1194         DESCRIPTION
1195             "This represents whether or not Frame Relay merge
1196             capability is supported."
1197         ::= { mplsLdpEntityFrameRelayParmsEntry 2 }
1198
1199     mplsLdpEntityFrLabelRangeComponents OBJECT-TYPE
1200         SYNTAX      Unsigned32 (1..65535)
1201         MAX-ACCESS  read-create
1202         STATUS      current
1203         DESCRIPTION
1204             "Number of LabelRange Components in the Initialization
1205             message.  This also represents the number of entries
1206             in the mplsLdpEntityConfFrLabelRangeTable which correspond
1207             to this entry."
1208         ::= { mplsLdpEntityFrameRelayParmsEntry 3 }
1209
1210     mplsLdpEntityFrLen OBJECT-TYPE
1211         SYNTAX      INTEGER {
1212                         tenDlciBits(0),
1213                         twentyThreeDlciBits(2)
1214                     }
1215         MAX-ACCESS  read-create
1216         STATUS      current
1217         DESCRIPTION
1218             "This object specifies the DLCI bits."
1219         ::= { mplsLdpEntityFrameRelayParmsEntry 4 }
1220
1221     mplsLdpEntityFrVcDirectionality OBJECT-TYPE
1222         SYNTAX      INTEGER {
1223                               bidirectional(0),
1224                               unidirection(1)
1225                             }
1226         MAX-ACCESS  read-create
1227         STATUS      current
1228         DESCRIPTION
1229             "If the value of this object is 'bidirectional(0)', then
1230             the LSR supports the use of a given DLCI as a label for
1231             both directions independently.  If the value of
1232             this object is 'unidirectional(1)', then the LSR
1233             uses the given DLCI as a label in only one direction."
1234         ::= { mplsLdpEntityFrameRelayParmsEntry 5 }
1235
1236     mplsLdpEntityFrParmsStorageType  OBJECT-TYPE
1237         SYNTAX      StorageType
1238         MAX-ACCESS  read-create
1239         STATUS      current
1240         DESCRIPTION
1241                  "The storage type for this entry."
1242         ::= { mplsLdpEntityFrameRelayParmsEntry 6 }
1243
1244     mplsLdpEntityFrParmsRowStatus OBJECT-TYPE
1245         SYNTAX      RowStatus
1246         MAX-ACCESS  read-create
1247         STATUS      current
1248         DESCRIPTION
1249             "An object that allows entries in this table to
1250             be created and deleted using the
1251             RowStatus convention.
1252
1253             NOTE:  This RowStatus object should
1254             have the same value of the 'mplsLdpEntityRowStatus'
1255             related to this entry."
1256         ::= { mplsLdpEntityFrameRelayParmsEntry 7 }
1257
1258     --
1259     -- Frame Relay Label Range Components
1260     --
1261
1262     mplsLdpEntityConfFrLabelRangeTable  OBJECT-TYPE
1263         SYNTAX      SEQUENCE OF MplsLdpEntityConfFrLabelRangeEntry
1264         MAX-ACCESS  not-accessible
1265         STATUS      current
1266         DESCRIPTION
1267             "This table contains information about the
1268             Optional Parameters to specify what this Entity is
1269             going to specify for Frame Relay specific
1270             LDP Intialization Messages."
1271         ::= { mplsLdpEntityFrameRelayObjects 2 }
1272
1273     mplsLdpEntityConfFrLabelRangeEntry OBJECT-TYPE
1274         SYNTAX      MplsLdpEntityConfFrLabelRangeEntry
1275         MAX-ACCESS  not-accessible
1276         STATUS      current
1277         DESCRIPTION
1278             "An entry in this table represents the Frame Relay
1279             optional parameters associated with the LDP entity."
1280         INDEX       {  mplsLdpEntityLdpId,
1281                        mplsLdpEntityIndex,
1282                        mplsLdpConfFrMinimumDlci
1283                     }
1284         ::= { mplsLdpEntityConfFrLabelRangeTable 1 }
1285
1286     MplsLdpEntityConfFrLabelRangeEntry ::= SEQUENCE {
1287         mplsLdpConfFrMinimumDlci                  Integer32,
1288         mplsLdpConfFrMaximumDlci                  Integer32,
1289         mplsLdpConfFrStorageType                  StorageType,
1290         mplsLdpConfFrRowStatus                    RowStatus
1291     }
1292
1293     mplsLdpConfFrMinimumDlci OBJECT-TYPE
1294         SYNTAX      Integer32(0..4194303)
1295         MAX-ACCESS  not-accessible
1296         STATUS      current
1297         DESCRIPTION
1298             "The lower bound which is supported.  This value should
1299             be the same as that in the Frame Relay Label Range
1300             Component's Minimum DLCI field."
1301         ::= { mplsLdpEntityConfFrLabelRangeEntry 1 }
1302
1303     mplsLdpConfFrMaximumDlci OBJECT-TYPE
1304         SYNTAX      Integer32 (0..4194303)
1305         MAX-ACCESS  read-create
1306         STATUS      current
1307         DESCRIPTION
1308             "The upper bound which is supported.  This value should
1309             be the same as that in the Frame Relay Label Range
1310             Component's Maximum DLCI field."
1311         ::= { mplsLdpEntityConfFrLabelRangeEntry 2 }
1312
1313     mplsLdpConfFrStorageType  OBJECT-TYPE
1314         SYNTAX      StorageType
1315         MAX-ACCESS  read-create
1316         STATUS      current
1317         DESCRIPTION
1318                  "The storage type for this entry."
1319         ::= { mplsLdpEntityConfFrLabelRangeEntry 3 }
1320
1321     mplsLdpConfFrRowStatus OBJECT-TYPE
1322         SYNTAX      RowStatus
1323         MAX-ACCESS  read-create
1324         STATUS      current
1325         DESCRIPTION
1326             "An object that allows entries in this table to
1327             be created and deleted using the
1328             RowStatus convention.
1329
1330             If the value of the object
1331             'mplsLdpEntityOptionalParameters' contains the
1332             value of 'frameRelaySessionParameters(3)' then
1333             there must be at least one corresponding entry
1334             in this table.
1335
1336             NOTE:  This RowStatus object should
1337             have the same value of the 'mplsLdpEntityRowStatus'
1338             related to this entry."
1339         ::= { mplsLdpEntityConfFrLabelRangeEntry 4 }
1340
1341     --
1342     -- The MPLS LDP Entity Statistics Table
1343     --
1344
1345     mplsLdpEntityStatsTable OBJECT-TYPE
1346         SYNTAX      SEQUENCE OF MplsLdpEntityStatsEntry
1347         MAX-ACCESS  not-accessible
1348         STATUS      current
1349         DESCRIPTION
1350             "This table is a read-only table which augments
1351             the mplsLdpEntityTable.  The purpose of this
1352             table is to keep statistical information about
1353             the LDP Entities on the LSR."
1354         ::= { mplsLdpEntityObjects 6 }
1355
1356     mplsLdpEntityStatsEntry OBJECT-TYPE
1357         SYNTAX      MplsLdpEntityStatsEntry
1358         MAX-ACCESS  not-accessible
1359         STATUS      current
1360         DESCRIPTION
1361             "A row in this table contains statistical information
1362             about an LDP Entity.  Some counters contained in a
1363             row are for fatal errors received during a former
1364             LDP Session associated with this entry.  For example,
1365             an Ldp Pdu received on a TCP connection for an
1366             LDP Session which contains a fatal error is counted
1367             here, because the session is terminated.
1368             If the error is NOT fatal (i.e. and the Session
1369             remains), then the error is counted in the
1370             mplsLdpSessionStatsEntry."
1371         AUGMENTS       {   mplsLdpEntityEntry  }
1372         ::= { mplsLdpEntityStatsTable 1 }
1373
1374     MplsLdpEntityStatsEntry ::= SEQUENCE {
1375         mplsLdpAttemptedSessions                  Counter32,
1376         mplsLdpSessionRejectedNoHelloErrors       Counter32,
1377         mplsLdpSessionRejectedAdvertisementErrors Counter32,
1378         mplsLdpSessionRejectedMaxPduErrors        Counter32,
1379         mplsLdpSessionRejectedLabelRangeErrors    Counter32,
1380         mplsLdpBadLdpIdentifierErrors             Counter32,
1381         mplsLdpBadPduLengthErrors                 Counter32,
1382         mplsLdpBadMessageLengthErrors             Counter32,
1383         mplsLdpBadTlvLengthErrors                 Counter32,
1384         mplsLdpMalformedTlvValueErrors            Counter32,
1385         mplsLdpKeepAliveTimerExpiredErrors        Counter32,
1386         mplsLdpShutdownNotifReceived              Counter32,
1387         mplsLdpShutdownNotifSent                  Counter32
1388     }
1389
1390     mplsLdpAttemptedSessions OBJECT-TYPE
1391         SYNTAX      Counter32
1392         MAX-ACCESS  read-only
1393         STATUS      current
1394         DESCRIPTION
1395             "A count of the total attempted sessions for
1396             this LDP Entity."
1397         ::= { mplsLdpEntityStatsEntry 1 }
1398
1399     mplsLdpSessionRejectedNoHelloErrors OBJECT-TYPE
1400         SYNTAX      Counter32
1401         MAX-ACCESS  read-only
1402         STATUS      current
1403         DESCRIPTION
1404             "A count of the Session Rejected/No Hello Error
1405             Notification Messages sent or received by
1406             this LDP Entity."
1407         ::= { mplsLdpEntityStatsEntry 2 }
1408
1409     mplsLdpSessionRejectedAdvertisementErrors OBJECT-TYPE
1410         SYNTAX      Counter32
1411         MAX-ACCESS  read-only
1412         STATUS      current
1413         DESCRIPTION
1414             "A count of the Session Rejected/Parameters
1415             Advertisement Mode Error Notification Messages sent
1416             or received by this LDP Entity."
1417         ::= { mplsLdpEntityStatsEntry 3 }
1418
1419     mplsLdpSessionRejectedMaxPduErrors OBJECT-TYPE
1420         SYNTAX      Counter32
1421         MAX-ACCESS  read-only
1422         STATUS      current
1423         DESCRIPTION
1424             "A count of the Session Rejected/Parameters
1425             Max Pdu Length Error Notification Messages sent
1426             or received by this LDP Entity."
1427         ::= { mplsLdpEntityStatsEntry 4 }
1428
1429     mplsLdpSessionRejectedLabelRangeErrors OBJECT-TYPE
1430         SYNTAX      Counter32
1431         MAX-ACCESS  read-only
1432         STATUS      current
1433         DESCRIPTION
1434             "A count of the Session Rejected/Parameters
1435             Label Range Notification Notification Messages sent
1436             or received by this LDP Entity."
1437         ::= { mplsLdpEntityStatsEntry 5 }
1438
1439     mplsLdpBadLdpIdentifierErrors OBJECT-TYPE
1440         SYNTAX      Counter32
1441         MAX-ACCESS  read-only
1442         STATUS      current
1443         DESCRIPTION
1444             "This object counts the number of Bad LDP Identifier
1445             Fatal Errors detected by the session(s)
1446             (past and present) associated with this LDP Entity."
1447         REFERENCE
1448            "LDP Specification, Section 3.5.1.2."
1449         ::= { mplsLdpEntityStatsEntry 6 }
1450
1451     mplsLdpBadPduLengthErrors OBJECT-TYPE
1452         SYNTAX      Counter32
1453         MAX-ACCESS  read-only
1454         STATUS      current
1455         DESCRIPTION
1456             "This object counts the number of Bad Pdu Length
1457             Fatal Errors detected by the session(s)
1458             (past and present) associated with this LDP Entity."
1459         REFERENCE
1460            "LDP Specification, Section 3.5.1.2."
1461         ::= { mplsLdpEntityStatsEntry 7 }
1462
1463     mplsLdpBadMessageLengthErrors OBJECT-TYPE
1464         SYNTAX      Counter32
1465         MAX-ACCESS  read-only
1466         STATUS      current
1467         DESCRIPTION
1468             "This object counts the number of Bad Message
1469             Length Fatal Errors detected by the session(s)
1470             (past and present) associated with this LDP Entity."
1471         REFERENCE
1472            "LDP Specification, Section 3.5.1.2."
1473         ::= { mplsLdpEntityStatsEntry 8 }
1474
1475     mplsLdpBadTlvLengthErrors OBJECT-TYPE
1476         SYNTAX      Counter32
1477         MAX-ACCESS  read-only
1478         STATUS      current
1479         DESCRIPTION
1480             "This object counts the number of Bad TLV
1481             Length Fatal Errors detected by the session(s)
1482             (past and present) associated with this LDP Entity."
1483         REFERENCE
1484            "LDP Specification, Section 3.5.1.2."
1485         ::= { mplsLdpEntityStatsEntry 9 }
1486
1487     mplsLdpMalformedTlvValueErrors OBJECT-TYPE
1488         SYNTAX      Counter32
1489         MAX-ACCESS  read-only
1490         STATUS      current
1491         DESCRIPTION
1492             "This object counts the number of Malformed TLV
1493             Value Fatal Errors detected by the session(s)
1494             (past and present) associated with this
1495             LDP Entity."
1496         REFERENCE
1497            "LDP Specification, Section 3.5.1.2."
1498         ::= { mplsLdpEntityStatsEntry 10 }
1499
1500     mplsLdpKeepAliveTimerExpiredErrors OBJECT-TYPE
1501         SYNTAX      Counter32
1502         MAX-ACCESS  read-only
1503         STATUS      current
1504         DESCRIPTION
1505             "This object counts the number of Session Keep Alive
1506             Timer Expired Errors detected by the session(s)
1507             (past and present) associated with this LDP Entity."
1508         REFERENCE
1509            "LDP Specification, Section 3.5.1.2."
1510         ::= { mplsLdpEntityStatsEntry 11 }
1511
1512     mplsLdpShutdownNotifReceived OBJECT-TYPE
1513         SYNTAX      Counter32
1514         MAX-ACCESS  read-only
1515         STATUS      current
1516         DESCRIPTION
1517             "This object counts the number of Shutdown Notfications
1518             received related to session(s) (past and present)
1519             associated with this LDP Entity."
1520         ::= { mplsLdpEntityStatsEntry 12 }
1521
1522     mplsLdpShutdownNotifSent OBJECT-TYPE
1523         SYNTAX      Counter32
1524         MAX-ACCESS  read-only
1525         STATUS      current
1526         DESCRIPTION
1527             "This object counts the number of Shutdown Notfications
1528             sent related to session(s) (past and present) associated
1529             with this LDP Entity."
1530         ::= { mplsLdpEntityStatsEntry 13 }
1531
1532     --
1533     -- The MPLS LDP Entity Peer Table
1534     --
1535
1536     mplsLdpEntityPeerObjects OBJECT IDENTIFIER ::=
1537                                              { mplsLdpObjects 3 }
1538
1539     mplsLdpEntityPeerTable OBJECT-TYPE
1540         SYNTAX      SEQUENCE OF MplsLdpEntityPeerEntry
1541         MAX-ACCESS  not-accessible
1542         STATUS      current
1543         DESCRIPTION
1544             "Information about LDP peers known by Entities in
1545             the mplsLdpEntityTable.  The information in this table
1546             is based on information from the Entity-Peer interaction
1547             but is not appropriate for the mplsLdpSessionTable."
1548         ::= { mplsLdpEntityPeerObjects 1 }
1549
1550     mplsLdpEntityPeerEntry OBJECT-TYPE
1551         SYNTAX      MplsLdpEntityPeerEntry
1552         MAX-ACCESS  not-accessible
1553         STATUS      current
1554         DESCRIPTION
1555             "Information about a single Peer which is related
1556             to an entity."
1557         INDEX       { mplsLdpEntityLdpId,
1558                       mplsLdpEntityIndex,
1559                       mplsLdpPeerLdpId }
1560         ::= { mplsLdpEntityPeerTable 1 }
1561
1562     MplsLdpEntityPeerEntry ::= SEQUENCE {
1563         mplsLdpPeerLdpId                      MplsLdpIdentifier,
1564         mplsLdpPeerLabelDistributionMethod    INTEGER,
1565         mplsLdpPeerLoopDetectionForPV         INTEGER,
1566         mplsLdpPeerPathVectorLimit            Integer32
1567     }
1568
1569     mplsLdpPeerLdpId OBJECT-TYPE
1570         SYNTAX      MplsLdpIdentifier
1571         MAX-ACCESS  not-accessible
1572         STATUS      current
1573         DESCRIPTION
1574             "The LDP identifier of this LDP Peer."
1575         ::= { mplsLdpEntityPeerEntry 1 }
1576
1577     mplsLdpPeerLabelDistributionMethod OBJECT-TYPE
1578         SYNTAX      INTEGER {
1579                        downstreamOnDemand(1),
1580                        downstreamUnsolicited(2)
1581                     }
1582         MAX-ACCESS  read-only
1583         STATUS      current
1584         DESCRIPTION
1585             "For any given LDP session, the method of
1586             label distribution must be specified."
1587         REFERENCE
1588             "draft-ietf-mpls-arch-06.txt [20]."
1589         ::= { mplsLdpEntityPeerEntry 2 }
1590
1591     mplsLdpPeerLoopDetectionForPV OBJECT-TYPE
1592         SYNTAX      INTEGER {
1593                        disabled(0),
1594                        enabled(1)
1595                     }
1596         MAX-ACCESS  read-only
1597         STATUS      current
1598         DESCRIPTION
1599             "An indication of whether loop detection based
1600             on path vectors is disabled or enabled for this Peer.
1601
1602             If this object has a value of disabled(0),
1603             then loop detection is disabled.  Otherwise, if this
1604             object has a value of enabled(1), then loop detection
1605             based on path vectors is enabled."
1606         ::= { mplsLdpEntityPeerEntry 3 }
1607
1608     mplsLdpPeerPathVectorLimit OBJECT-TYPE
1609         SYNTAX      Integer32 (0..255)
1610         MAX-ACCESS  read-only
1611         STATUS      current
1612         DESCRIPTION
1613             "If the value of 'mplsLdpPeerLoopDetectionForPV' for
1614             this entry is 'enabled(1)', the this object represents
1615             that Path Vector Limit for this peer.
1616
1617             If the value of 'mplsLdpPeerLoopDetectionForPV' for
1618             this entry is 'disabled(0)', then this value should
1619             be 0 (zero)."
1620         ::= { mplsLdpEntityPeerEntry 4 }
1621
1622     --
1623     -- The MPLS LDP Hello Adjacency Table
1624     --
1625
1626     mplsLdpHelloAdjacencyObjects OBJECT IDENTIFIER ::=
1627                                   { mplsLdpEntityPeerObjects 2 }
1628
1629     mplsLdpHelloAdjacencyTable OBJECT-TYPE
1630         SYNTAX      SEQUENCE OF MplsLdpHelloAdjacencyEntry
1631         MAX-ACCESS  not-accessible
1632         STATUS      current
1633         DESCRIPTION
1634             "A table of Hello Adjacencies for Sessions."
1635         ::= { mplsLdpHelloAdjacencyObjects 1 }
1636
1637     mplsLdpHelloAdjacencyEntry OBJECT-TYPE
1638         SYNTAX      MplsLdpHelloAdjacencyEntry
1639         MAX-ACCESS  not-accessible
1640         STATUS      current
1641         DESCRIPTION
1642             "Each row represents a single LDP Hello Adjacency.
1643             An LDP Session can have one or more Hello adjacencies."
1644              INDEX       { mplsLdpEntityLdpId,
1645                            mplsLdpEntityIndex,
1646                            mplsLdpPeerLdpId,
1647                            mplsLdpHelloAdjacencyIndex }
1648         ::= { mplsLdpHelloAdjacencyTable 1 }
1649
1650     MplsLdpHelloAdjacencyEntry ::= SEQUENCE {
1651         mplsLdpHelloAdjacencyIndex                  Unsigned32,
1652         mplsLdpHelloAdjacencyHoldTimeRemaining      TimeInterval,
1653         mplsLdpHelloAdjacencyType                   INTEGER
1654     }
1655
1656     mplsLdpHelloAdjacencyIndex OBJECT-TYPE
1657         SYNTAX      Unsigned32 (1..4294967295)
1658         MAX-ACCESS  not-accessible
1659         STATUS      current
1660         DESCRIPTION
1661             "An identifier for this specific adjacency."
1662         ::= { mplsLdpHelloAdjacencyEntry 1 }
1663
1664     mplsLdpHelloAdjacencyHoldTimeRemaining OBJECT-TYPE
1665         SYNTAX      TimeInterval
1666         MAX-ACCESS  read-only
1667         STATUS      current
1668         DESCRIPTION
1669             "The time remaining for this Hello Adjacency.
1670             This interval will change when the 'next'
1671             Hello message which corresponds to this
1672             Hello Adjacency is received."
1673         ::= { mplsLdpHelloAdjacencyEntry 2 }
1674
1675     mplsLdpHelloAdjacencyType OBJECT-TYPE
1676         SYNTAX      INTEGER {
1677                        link(1),
1678                        targeted(2)
1679                     }
1680         MAX-ACCESS  read-only
1681         STATUS      current
1682         DESCRIPTION
1683             "This adjacency is the result of a 'link'
1684             hello if the value of this object is link(1).
1685             Otherwise, it is a result of a 'targeted'
1686             hello, targeted(2)."
1687         ::= { mplsLdpHelloAdjacencyEntry 3 }
1688
1689     --
1690     -- The MPLS LDP Sessions Table
1691     --
1692
1693     mplsLdpSessionObjects OBJECT IDENTIFIER ::=
1694                                 { mplsLdpEntityPeerObjects 3 }
1695
1696     mplsLdpSessionUpDownTrapEnable OBJECT-TYPE
1697         SYNTAX      INTEGER {
1698                                enabled(1),
1699                                disabled(2)
1700                             }
1701         MAX-ACCESS  read-write
1702         STATUS      current
1703         DESCRIPTION
1704             "Indicates whether the traps, 'mplsLdpSessionUp' and
1705             'mplsLdpSessionDown' will be generated or not.
1706
1707             If the value of this object is 'enabled(1)'
1708             then the traps will generated.  If the value
1709             of this object is 'disabled(2)' then the
1710             traps will not be generated.  The DEFVAL
1711             is set to 'disabled(1)'."
1712         DEFVAL { disabled }
1713         ::= { mplsLdpSessionObjects 1 }
1714
1715     mplsLdpSessionTable OBJECT-TYPE
1716         SYNTAX      SEQUENCE OF MplsLdpSessionEntry
1717         MAX-ACCESS  not-accessible
1718         STATUS      current
1719         DESCRIPTION
1720             "A table of Sessions between the LDP Entities and
1721             LDP Peers.  Each row represents a single session."
1722         ::= { mplsLdpSessionObjects 2 }
1723
1724     mplsLdpSessionEntry OBJECT-TYPE
1725         SYNTAX      MplsLdpSessionEntry
1726         MAX-ACCESS  not-accessible
1727         STATUS      current
1728         DESCRIPTION
1729             "An entry in this table represents information on a
1730             single session between an LDP Entity and LDP Peer.
1731             The information contained in a row is read-only."
1732         INDEX       { mplsLdpEntityLdpId,
1733                       mplsLdpEntityIndex,
1734                       mplsLdpPeerLdpId
1735                     }
1736         ::= { mplsLdpSessionTable 1 }
1737
1738     MplsLdpSessionEntry ::= SEQUENCE {
1739         mplsLdpSessionState                          INTEGER,
1740         mplsLdpSessionProtocolVersion                Integer32,
1741         mplsLdpSessionKeepAliveHoldTimeRemaining     TimeInterval,
1742         mplsLdpSessionMaxPduLength                   Unsigned32,
1743         mplsLdpSessionDiscontinuityTime              TimeStamp
1744     }
1745
1746     mplsLdpSessionState OBJECT-TYPE
1747         SYNTAX      INTEGER {
1748                        nonexistent(1),
1749                        initialized(2),
1750                        openrec(3),
1751                        opensent(4),
1752                        operational(5)
1753                     }
1754         MAX-ACCESS  read-only
1755         STATUS      current
1756         DESCRIPTION
1757             "The current state of the session, all of the
1758             states 1 - 5 are based on the state machine for
1759             session negotiation behavior."
1760         ::= { mplsLdpSessionEntry 1 }
1761
1762     mplsLdpSessionProtocolVersion OBJECT-TYPE
1763              SYNTAX      Integer32(1..65535)
1764              MAX-ACCESS  read-only
1765              STATUS      current
1766              DESCRIPTION
1767                  "The version of the LDP Protocol which
1768                  this session is using."
1769              ::= { mplsLdpSessionEntry 2 }
1770
1771     mplsLdpSessionKeepAliveHoldTimeRemaining OBJECT-TYPE
1772         SYNTAX      TimeInterval
1773         MAX-ACCESS  read-only
1774         STATUS      current
1775         DESCRIPTION
1776             "The keep alive hold time remaining for this session."
1777         ::= { mplsLdpSessionEntry 3 }
1778
1779     mplsLdpSessionMaxPduLength OBJECT-TYPE
1780         SYNTAX      Unsigned32 (1..65535)
1781         MAX-ACCESS  read-only
1782         STATUS      current
1783         DESCRIPTION
1784             "The value of maximum allowable length for LDP PDUs for
1785             this session.  This value may have been negotiated during
1786             the Session Initialization."
1787         ::= { mplsLdpSessionEntry 4 }
1788
1789     mplsLdpSessionDiscontinuityTime OBJECT-TYPE
1790         SYNTAX      TimeStamp
1791         MAX-ACCESS  read-only
1792         STATUS      current
1793         DESCRIPTION
1794             "The value of sysUpTime on the most recent occasion at
1795             which any one or more of this session's counters
1796             suffered a discontinuity.  The relevant counters are
1797             the specific instances associated with this session
1798             of any Counter32 or Counter64 object contained in the
1799             mplsLdpSessionStatsTable.  If no such discontinuities have
1800             occurred since the last re-initialization of the local
1801             management subsystem, then this object contains a zero
1802             value.
1803
1804             Also, an NMS can distinguish when a session
1805             between a given Entity and Peer goes away and then is
1806             're-established'.  This value would change and
1807             thus indicate to the NMS that this is a
1808             different session."
1809         ::= { mplsLdpSessionEntry 5 }
1810
1811     --
1812     -- MPLS LDP ATM Session Information
1813     --
1814
1815     mplsLdpAtmSessionTable OBJECT-TYPE
1816         SYNTAX      SEQUENCE OF MplsLdpAtmSessionEntry
1817         MAX-ACCESS  not-accessible
1818         STATUS      current
1819         DESCRIPTION
1820             "A table which relates Sessions in the
1821             'mplsLdpSessionTable' and their label
1822             range intersections.  There could be one
1823             or more label range intersections between an
1824             LDP Entity and LDP Peer using ATM as the underlying
1825             media. Each row represents a single label range
1826             intersection.
1827
1828             NOTE:  this table cannot use the 'AUGMENTS'
1829             clause because there is not necessarily a one-to-one
1830             mapping between this table and the mplsLdpSessionTable."
1831         ::= { mplsLdpSessionObjects 4 }
1832
1833     mplsLdpAtmSessionEntry OBJECT-TYPE
1834         SYNTAX      MplsLdpAtmSessionEntry
1835         MAX-ACCESS  not-accessible
1836         STATUS      current
1837         DESCRIPTION
1838             "An entry in this table represents information on a
1839             single label range intersection between an LDP Entity
1840             and LDP Peer.
1841
1842             The information contained in a row is read-only."
1843         INDEX       { mplsLdpEntityLdpId,
1844                       mplsLdpEntityIndex,
1845                       mplsLdpPeerLdpId,
1846                       mplsLdpSessionAtmLabelRangeLowerBoundVpi,
1847                       mplsLdpSessionAtmLabelRangeLowerBoundVci
1848
1849                     }
1850         ::= { mplsLdpAtmSessionTable 1 }
1851
1852     MplsLdpAtmSessionEntry ::= SEQUENCE {
1853         mplsLdpSessionAtmLabelRangeLowerBoundVpi     AtmVpIdentifier,
1854         mplsLdpSessionAtmLabelRangeLowerBoundVci     AtmVcIdentifier,
1855         mplsLdpSessionAtmLabelRangeUpperBoundVpi     AtmVpIdentifier,
1856         mplsLdpSessionAtmLabelRangeUpperBoundVci     AtmVcIdentifier
1857     }
1858
1859     mplsLdpSessionAtmLabelRangeLowerBoundVpi OBJECT-TYPE
1860         SYNTAX AtmVpIdentifier
1861         MAX-ACCESS not-accessible
1862         STATUS current
1863         DESCRIPTION
1864             "The minimum VPI number for this range."
1865         ::= { mplsLdpAtmSessionEntry 1 }
1866
1867     mplsLdpSessionAtmLabelRangeLowerBoundVci OBJECT-TYPE
1868         SYNTAX AtmVcIdentifier
1869         MAX-ACCESS not-accessible
1870         STATUS current
1871         DESCRIPTION
1872             "The minimum VCI number for this range."
1873         ::= { mplsLdpAtmSessionEntry 2 }
1874
1875     mplsLdpSessionAtmLabelRangeUpperBoundVpi OBJECT-TYPE
1876         SYNTAX AtmVpIdentifier
1877         MAX-ACCESS read-only
1878         STATUS current
1879         DESCRIPTION
1880             "The maximum VPI number for this range."
1881         ::= { mplsLdpAtmSessionEntry 3 }
1882
1883     mplsLdpSessionAtmLabelRangeUpperBoundVci OBJECT-TYPE
1884         SYNTAX AtmVcIdentifier
1885         MAX-ACCESS read-only
1886         STATUS current
1887         DESCRIPTION
1888             "The maximum VCI number for this range."
1889         ::= { mplsLdpAtmSessionEntry 4 }
1890
1891     --
1892     -- MPLS LDP Frame Relay Session Information
1893     --
1894
1895     mplsLdpFrameRelaySessionTable OBJECT-TYPE
1896         SYNTAX      SEQUENCE OF MplsLdpFrameRelaySessionEntry
1897         MAX-ACCESS  not-accessible
1898         STATUS      current
1899         DESCRIPTION
1900             "A table of Frame Relay label range intersections
1901             between the LDP Entities and LDP Peers.
1902             Each row represents a single label range intersection.
1903
1904             NOTE:  this table cannot use the 'AUGMENTS'
1905             clause because there is not necessarily a one-to-one
1906             mapping between this table and the mplsLdpSessionTable."
1907         ::= { mplsLdpSessionObjects 5 }
1908
1909     mplsLdpFrameRelaySessionEntry OBJECT-TYPE
1910         SYNTAX      MplsLdpFrameRelaySessionEntry
1911         MAX-ACCESS  not-accessible
1912         STATUS      current
1913         DESCRIPTION
1914             "An entry in this table represents information on a
1915             single label range intersection between an
1916             LDP Entity and LDP Peer.
1917
1918             The information contained in a row is read-only."
1919         INDEX       { mplsLdpEntityLdpId,
1920                       mplsLdpEntityIndex,
1921                       mplsLdpPeerLdpId,
1922                       mplsLdpFrSessionMinDlci
1923                     }
1924         ::= { mplsLdpFrameRelaySessionTable 1 }
1925
1926     MplsLdpFrameRelaySessionEntry ::= SEQUENCE {
1927         mplsLdpFrSessionMinDlci    Integer32,
1928         mplsLdpFrSessionMaxDlci    Integer32,
1929         mplsLdpFrSessionLen        INTEGER
1930     }
1931
1932     mplsLdpFrSessionMinDlci OBJECT-TYPE
1933         SYNTAX      Integer32(0..4194303)
1934         MAX-ACCESS  not-accessible
1935         STATUS      current
1936         DESCRIPTION
1937             "The lower bound of DLCIs which are supported."
1938         ::= { mplsLdpFrameRelaySessionEntry 1 }
1939
1940     mplsLdpFrSessionMaxDlci OBJECT-TYPE
1941         SYNTAX      Integer32 (0..4194303)
1942         MAX-ACCESS  read-only
1943         STATUS      current
1944         DESCRIPTION
1945             "The upper bound of DLCIs which are supported."
1946         ::= { mplsLdpFrameRelaySessionEntry 2 }
1947
1948     mplsLdpFrSessionLen OBJECT-TYPE
1949         SYNTAX      INTEGER {
1950                         tenDlciBits(0),
1951                         twentyThreeDlciBits(2)
1952                     }
1953         MAX-ACCESS  read-only
1954         STATUS      current
1955         DESCRIPTION
1956             "This object specifies the DLCI bits."
1957         ::= { mplsLdpFrameRelaySessionEntry 3 }
1958
1959     --
1960     -- The MPLS LDP Session Statistics Table
1961     --
1962
1963     mplsLdpSessionStatsTable OBJECT-TYPE
1964         SYNTAX      SEQUENCE OF MplsLdpSessionStatsEntry
1965         MAX-ACCESS  not-accessible
1966         STATUS      current
1967         DESCRIPTION
1968             "A table of statistics for Sessions between
1969             LDP Entities and LDP Peers."
1970         ::= { mplsLdpSessionObjects 6 }
1971
1972
1973     mplsLdpSessionStatsEntry OBJECT-TYPE
1974         SYNTAX      MplsLdpSessionStatsEntry
1975         MAX-ACCESS  not-accessible
1976         STATUS      current
1977         DESCRIPTION
1978             "An entry in this table represents statistical
1979             information on a single session between an LDP
1980             Entity and LDP Peer."
1981         AUGMENTS       { mplsLdpSessionEntry }
1982         ::= { mplsLdpSessionStatsTable 1 }
1983
1984     MplsLdpSessionStatsEntry ::= SEQUENCE {
1985         mplsLdpSessionStatsUnknownMessageTypeErrors Counter32,
1986         mplsLdpSessionStatsUnknownTlvErrors         Counter32
1987     }
1988
1989     mplsLdpSessionStatsUnknownMessageTypeErrors OBJECT-TYPE
1990         SYNTAX      Counter32
1991         MAX-ACCESS  read-only
1992         STATUS      current
1993         DESCRIPTION
1994             "This object counts the number of Unknown Message Type
1995             Errors detected during this session.
1996
1997             Discontinuities in the value of this counter can occur
1998             at re-initialization of the management system, and at
1999             other times as indicated by the value of
2000             mplsLdpSeeionDiscontinuityTime."
2001         ::= { mplsLdpSessionStatsEntry 1 }
2002
2003     mplsLdpSessionStatsUnknownTlvErrors OBJECT-TYPE
2004         SYNTAX      Counter32
2005         MAX-ACCESS  read-only
2006         STATUS      current
2007         DESCRIPTION
2008             "This object counts the number of Unknown TLV Errors
2009             detected during this session.
2010
2011             Discontinuities in the value of this counter can occur
2012             at re-initialization of the management system, and at
2013             other times as indicated by the value of
2014             mplsLdpSeeionDiscontinuityTime."
2015         ::= { mplsLdpSessionStatsEntry 2 }
2016
2017     --
2018     -- Address Message/Address Withdraw Message Information
2019     --
2020     -- This information is associated with a specific Session
2021     -- because Label Address Messages are sent after session
2022     -- initialization has taken place.
2023     --
2024
2025     mplsLdpSessionPeerAddressTable OBJECT-TYPE
2026         SYNTAX      SEQUENCE OF MplsLdpSessionPeerAddressEntry
2027         MAX-ACCESS  not-accessible
2028         STATUS      current
2029         DESCRIPTION
2030             "This table 'extends' the mplsLdpSessionTable.
2031             This table is used to store Label Address Information
2032             from Label Address Messages received by this LSR from
2033             Peers.  This table is read-only and should be updated
2034             when Label Withdraw Address Messages are received, i.e.
2035             Rows should be deleted as apropriate.
2036
2037             NOTE:  since more than one address may be contained
2038             in a Label Address Message, this table 'extends',
2039             rather than 'AUGMENTS' the mplsLdpSessionTable's
2040             information."
2041         ::= { mplsLdpSessionObjects 7 }
2042
2043     mplsLdpSessionPeerAddressEntry OBJECT-TYPE
2044         SYNTAX      MplsLdpSessionPeerAddressEntry
2045         MAX-ACCESS  not-accessible
2046         STATUS      current
2047         DESCRIPTION
2048             "An entry in this table represents information on
2049             session's for a single next hop address which was
2050             advertised in an Address Message from the LDP peer.
2051             The information contained in a row is read-only."
2052         INDEX       { mplsLdpEntityLdpId,
2053                       mplsLdpEntityIndex,
2054                       mplsLdpPeerLdpId,
2055                       mplsLdpSessionPeerAddressIndex
2056                     }
2057         ::= { mplsLdpSessionPeerAddressTable 1 }
2058
2059     MplsLdpSessionPeerAddressEntry ::= SEQUENCE {
2060         mplsLdpSessionPeerAddressIndex           Unsigned32,
2061         mplsLdpSessionPeerNextHopAddressType     AddressFamilyNumbers,
2062         mplsLdpSessionPeerNextHopAddress         MplsLdpGenAddr
2063     }
2064
2065     mplsLdpSessionPeerAddressIndex OBJECT-TYPE
2066         SYNTAX      Unsigned32 (1..4294967295)
2067         MAX-ACCESS  not-accessible
2068         STATUS      current
2069         DESCRIPTION
2070             "An index which uniquely identifies this entry within
2071             a given session."
2072         ::= { mplsLdpSessionPeerAddressEntry 1 }
2073
2074     mplsLdpSessionPeerNextHopAddressType OBJECT-TYPE
2075         SYNTAX      AddressFamilyNumbers
2076         MAX-ACCESS  read-only
2077         STATUS      current
2078         DESCRIPTION
2079             "The internetwork layer address type of this Next Hop
2080             Address as specified in the Label Address Message
2081             associated with this Session. The value of this
2082             object indicates how to interpret the value of
2083             mplsLdpSessionPeerNextHopAddress."
2084         ::= { mplsLdpSessionPeerAddressEntry 2 }
2085
2086     mplsLdpSessionPeerNextHopAddress OBJECT-TYPE
2087         SYNTAX      MplsLdpGenAddr
2088         MAX-ACCESS  read-only
2089         STATUS      current
2090         DESCRIPTION
2091             "The value of the next hop address."
2092         REFERENCE
2093             "LDP Specification [18] defines only IPv4 for LDP Protocol
2094             Version 1, see section 3.4.3."
2095         ::= { mplsLdpSessionPeerAddressEntry 3 }
2096
2097     --
2098     -- MPLS LDP LIB Table
2099     --
2100
2101     mplsLdpLibObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 6 }
2102
2103     mplsLdpLibLspUpDownTrapEnable OBJECT-TYPE
2104        SYNTAX      INTEGER { enabled(1), disabled(2) }
2105        MAX-ACCESS  read-write
2106        STATUS      current
2107        DESCRIPTION
2108           "Indicates whether traps related to
2109           an LSP's operation status should be sent.
2110
2111           If the value of this object is 'enabled(1)'
2112           then the 'mplsLdpLibLspUp' and the
2113           'mplsLdpLibLspDown' traps will be sent.
2114
2115           If the value of this object is 'disabled(2)'
2116           then those traps will not be sent."
2117         DEFVAL { disabled }
2118         ::= { mplsLdpLibObjects 1 }
2119
2120     mplsLdpLibTable OBJECT-TYPE
2121         SYNTAX      SEQUENCE OF MplsLdpLibEntry
2122         MAX-ACCESS  not-accessible
2123         STATUS      current
2124         DESCRIPTION
2125             "This table represents LIB (Label Information Base)
2126             Information.  The table is read-only."
2127         ::= { mplsLdpLibObjects 2 }
2128
2129     mplsLdpLibEntry OBJECT-TYPE
2130         SYNTAX      MplsLdpLibEntry
2131         MAX-ACCESS  not-accessible
2132         STATUS      current
2133         DESCRIPTION
2134             "Each row represents a single LDP LIB entry."
2135         INDEX       { mplsLdpLibLspId }
2136         ::= { mplsLdpLibTable 1 }
2137
2138     MplsLdpLibEntry ::= SEQUENCE {
2139         mplsLdpLibLspId                             Unsigned32,
2140         mplsLdpLibLabelInIfIndex                    InterfaceIndex,
2141         mplsLdpLibLabelOutIfIndex                   InterfaceIndex,
2142         mplsLdpLibInLabelType                       MplsLdpLabelTypes,
2143         mplsLdpLibInLabel                           MplsLabel,
2144         mplsLdpLibOutLabelType                      MplsLdpLabelTypes,
2145         mplsLdpLibOutLabel                          MplsLabel,
2146         mplsLdpLibOperationStatus                   INTEGER,
2147         mplsLdpLibLspLastChange                     TimeStamp
2148
2149     }
2150
2151     mplsLdpLibLspId  OBJECT-TYPE
2152         SYNTAX       Unsigned32 (1..4294967295)
2153         MAX-ACCESS   not-accessible
2154         STATUS       current
2155         DESCRIPTION
2156             "This number is used to uniquely identify this row,
2157             since this row is associated with a specific LSP,
2158             it may also be used to describe a unique number
2159             for an LSP.  This number is used in the
2160             mplsLdpFecTable to identify which FECs or FEC is
2161             associated with this LIB entry."
2162         ::= { mplsLdpLibEntry 1 }
2163
2164     mplsLdpLibLabelInIfIndex OBJECT-TYPE
2165         SYNTAX       InterfaceIndex
2166         MAX-ACCESS   read-only
2167         STATUS       current
2168         DESCRIPTION
2169             "The ifIndex of the 'mplsLdpInLabel'."
2170         ::= { mplsLdpLibEntry 2 }
2171
2172     mplsLdpLibLabelOutIfIndex OBJECT-TYPE
2173         SYNTAX       InterfaceIndex
2174         MAX-ACCESS   read-only
2175         STATUS       current
2176         DESCRIPTION
2177             "The ifIndex of the 'mplsLdpOutLabel'."
2178         ::= { mplsLdpLibEntry 3 }
2179
2180     mplsLdpLibInLabelType  OBJECT-TYPE
2181         SYNTAX        MplsLdpLabelTypes
2182         MAX-ACCESS    read-only
2183         STATUS        current
2184         DESCRIPTION
2185             "The Layer 2 Label Type for 'mplsLdpInLabel'."
2186         ::= { mplsLdpLibEntry 4 }
2187
2188     mplsLdpLibInLabel OBJECT-TYPE
2189         SYNTAX        MplsLabel
2190         MAX-ACCESS    read-only
2191         STATUS        current
2192         DESCRIPTION
2193             "The incoming label of this LSP."
2194         ::= { mplsLdpLibEntry 5 }
2195
2196     mplsLdpLibOutLabelType  OBJECT-TYPE
2197         SYNTAX        MplsLdpLabelTypes
2198         MAX-ACCESS    read-only
2199         STATUS        current
2200         DESCRIPTION
2201             "The Layer 2 Label Type for 'mplsLdpOutLabel'."
2202         ::= { mplsLdpLibEntry 6 }
2203
2204     mplsLdpLibOutLabel OBJECT-TYPE
2205         SYNTAX         MplsLabel
2206         MAX-ACCESS     read-only
2207         STATUS         current
2208         DESCRIPTION
2209            "The outgoing label of this LSP."
2210         ::= { mplsLdpLibEntry 7 }
2211
2212     mplsLdpLibOperationStatus  OBJECT-TYPE
2213         SYNTAX         INTEGER {
2214                           unknown(1),     -- cannot be determined
2215                           up(2),          -- LSP is up
2216                           down(3)         -- LSP is down
2217                        }
2218         MAX-ACCESS     read-only
2219         STATUS         current
2220         DESCRIPTION
2221            "The operation status of this LSP.
2222             unknown(1),     -- cannot be determined
2223             up(2),          -- LSP is up
2224             down(3)         -- LSP is down."
2225         ::= { mplsLdpLibEntry 8 }
2226
2227     mplsLdpLibLspLastChange   OBJECT-TYPE
2228         SYNTAX         TimeStamp
2229         MAX-ACCESS     read-only
2230         STATUS         current
2231         DESCRIPTION
2232            "The value of sysUpTime on the most recent occasion
2233            that the 'mplsLdpLibOperationStatus' changed.  If the
2234            status has not changed since the last re-initialization
2235            of the network management entity (i.e. SNMP agent), then
2236            this object should have the value of 0 (zero)."
2237         ::= { mplsLdpLibEntry 9 }
2238
2239     --
2240     -- Mpls Ldp FEC Table
2241     --
2242
2243     mplsLdpFecTable OBJECT-TYPE
2244         SYNTAX      SEQUENCE OF MplsLdpFecEntry
2245         MAX-ACCESS  not-accessible
2246         STATUS      current
2247         DESCRIPTION
2248             "This table represents the FEC
2249             (Forwarding Equivalence Class)
2250             Information associated with an LSP.
2251             The table is read-only."
2252         ::= { mplsLdpLibObjects 3 }
2253
2254     mplsLdpFecEntry OBJECT-TYPE
2255         SYNTAX      MplsLdpFecEntry
2256         MAX-ACCESS  not-accessible
2257         STATUS      current
2258         DESCRIPTION
2259             "Each row represents a single FEC Element."
2260         INDEX       { mplsLdpFecType,
2261                       mplsLdpFecAddressFamily,
2262                       mplsLdpFecAddressLength,
2263                       mplsLdpFecAddress,
2264                       mplsLdpFecLspId
2265                     }
2266         ::= { mplsLdpFecTable 1 }
2267
2268     MplsLdpFecEntry ::= SEQUENCE {
2269         mplsLdpFecType              INTEGER,
2270         mplsLdpFecAddressFamily     AddressFamilyNumbers,
2271         mplsLdpFecAddressLength     Integer32,
2272         mplsLdpFecAddress           MplsLdpGenAddr,
2273         mplsLdpFecLspId             Unsigned32,
2274         mplsLdpFecSessionRowPointer RowPointer
2275
2276     }
2277
2278     mplsLdpFecType  OBJECT-TYPE
2279         SYNTAX      INTEGER {
2280                        prefix(1),
2281                        hostAddress(2)
2282                     }
2283         MAX-ACCESS  not-accessible
2284         STATUS      current
2285         DESCRIPTION
2286             "The type of the FEC.  If the value of this object
2287             is 'prefix(1)' then the FEC type described by this
2288             row is for address prefixes.
2289
2290             If the value of this object is 'hostAddress(2)' then
2291             the FEC type described by this row is a host address."
2292         ::= { mplsLdpFecEntry 1 }
2293
2294     mplsLdpFecAddressFamily  OBJECT-TYPE
2295         SYNTAX      AddressFamilyNumbers
2296         MAX-ACCESS  not-accessible
2297         STATUS      current
2298         DESCRIPTION
2299             "The value of this object is from the Address Family
2300             Numbers."
2301         ::= { mplsLdpFecEntry 2 }
2302
2303     mplsLdpFecAddressLength  OBJECT-TYPE
2304         SYNTAX      Integer32(0..255)
2305         MAX-ACCESS  not-accessible
2306         STATUS      current
2307         DESCRIPTION
2308             "If the value of 'mplsLdpFecType' is 'prefix(1)'
2309             then the value of this object is the length in
2310             bits of the address prefix represented by
2311             'mplsLdpFecAddress', or if the length is zero then
2312             this is a special value which indicates that the
2313             prefix matches all addresses.  In this case the
2314             prefix is also zero (i.e. 'mplsLdpFecAddress' will
2315             have the value of zero.)"
2316         ::= { mplsLdpFecEntry 3 }
2317
2318     mplsLdpFecAddress  OBJECT-TYPE
2319         SYNTAX      MplsLdpGenAddr
2320         MAX-ACCESS  not-accessible
2321         STATUS      current
2322         DESCRIPTION
2323             "If the value of 'mplsLdpFecType' is 'prefix(1)'
2324             then the value of this object is the address prefix.
2325             If the value of the 'mplsLdpFecAddressLength'
2326             is object is zero, then this object should also be
2327             zero."
2328         ::= { mplsLdpFecEntry 4 }
2329
2330     mplsLdpFecLspId OBJECT-TYPE
2331         SYNTAX       Unsigned32 (1..4294967295)
2332         MAX-ACCESS   not-accessible
2333         STATUS       current
2334         DESCRIPTION
2335             "This number represents the LSP which is related to
2336             this FEC.  The value of this index should correspond
2337             to the 'mplsLdpLibLspId' in the LIB table."
2338         ::= { mplsLdpFecEntry 5 }
2339
2340     mplsLdpFecSessionRowPointer OBJECT-TYPE
2341         SYNTAX       RowPointer
2342         MAX-ACCESS   read-only
2343         STATUS       current
2344         DESCRIPTION
2345             "A pointer to a row in the 'mplsLdpSessionTable' which
2346             is related to this FEC entry.
2347
2348             The NULL OID zeroDotzero is interpreted to mean
2349             there is no known Session related to this FEC."
2350         ::= { mplsLdpFecEntry 6 }
2351
2352     ---
2353     --- Notifications
2354     ---
2355
2356     mplsLdpNotificationPrefix   OBJECT IDENTIFIER ::=
2357                                      { mplsLdpNotifications 0 }
2358
2359     mplsLdpFailedInitSessionThresholdExceeded NOTIFICATION-TYPE
2360          OBJECTS     {
2361                        mplsLdpEntityFailedInitSessionThreshold
2362                      }
2363          STATUS      current
2364          DESCRIPTION
2365             "This notification is generated when the value of
2366             the 'mplsLdpEntityPVLimitMismatchTrapEnable' object
2367             is 'enabled(1)' and  the value of the object,
2368             'mplsLdpEntityFailedInitSessionThreshold' has
2369             been exceeded."
2370          ::= { mplsLdpNotificationPrefix 1 }
2371
2372     mplsLdpPathVectorLimitMismatch NOTIFICATION-TYPE
2373          OBJECTS     {
2374                        mplsLdpEntityPathVectorLimit,
2375                        mplsLdpPeerPathVectorLimit
2376                      }
2377          STATUS      current
2378          DESCRIPTION
2379             "This notification is generated when the value
2380             of the value of the object,
2381             'mplsLdpEntityFailedInitSessionTrapEnable' is
2382             'enabled(1)' and the
2383             'mplsLdpEntityPathVectorLimit' does NOT match
2384             the value of the 'mplsLdpPeerPathVectorLimit' for
2385             a specific Entity."
2386          REFERENCE
2387             "LDP Specification, Section 3.5.3."
2388          ::= { mplsLdpNotificationPrefix 2 }
2389
2390     mplsLdpSessionUp NOTIFICATION-TYPE
2391          OBJECTS     {
2392                         mplsLdpSessionState
2393                      }
2394          STATUS      current
2395          DESCRIPTION
2396             "Generation of this trap occurs when the
2397             'mplsLdpSessionUpDownTrapEnable' object is 'enabled(1)'
2398             and the value of mplsLdpSessionState changes from
2399             any state accept 'nonexistent(1)' to 'operational(5)'."
2400          ::= { mplsLdpNotificationPrefix 3 }
2401
2402     mplsLdpSessionDown NOTIFICATION-TYPE
2403          OBJECTS     {
2404                         mplsLdpSessionState
2405                      }
2406          STATUS      current
2407          DESCRIPTION
2408             "Generation of this trap occurs when the
2409             'mplsLdpSessionUpDownTrapEnable' object is 'enabled(1)'
2410             and the value of mplsLdpSessionState changes from
2411             'operational(5)' to any other state."
2412          ::= { mplsLdpNotificationPrefix 4 }
2413
2414     mplsLdpLibLspUp NOTIFICATION-TYPE
2415          OBJECTS     {
2416                        mplsLdpLibOperationStatus
2417                      }
2418          STATUS      current
2419          DESCRIPTION
2420             "Generation of this trap occurs when the
2421             'mplsLdpLibLspUpDownTrapEnable' object is 'enabled(1)'
2422             and the LSP operation status changes from any state
2423             to 'up'."
2424          ::= { mplsLdpNotificationPrefix 5 }
2425
2426     mplsLdpLibLspDown NOTIFICATION-TYPE
2427          OBJECTS     {
2428                        mplsLdpLibOperationStatus
2429                      }
2430          STATUS      current
2431          DESCRIPTION
2432             "Generation of this trap occurs when the
2433             'mplsLdpLibLspUpDownTrapEnable' object is 'enabled(1)'
2434             and the LSP operation status changes from any state
2435             to 'down'."
2436          ::= { mplsLdpNotificationPrefix 6 }
2437
2438     --****************************************************************
2439     -- Module Conformance Statement
2440     --****************************************************************
2441
2442     mplsLdpGroups
2443         OBJECT IDENTIFIER ::= { mplsLdpConformance 1 }
2444
2445     mplsLdpCompliances
2446         OBJECT IDENTIFIER ::= { mplsLdpConformance 2 }
2447
2448     --
2449     -- Compliance Statements
2450     --
2451
2452     mplsLdpModuleCompliance MODULE-COMPLIANCE
2453         STATUS current
2454         DESCRIPTION
2455             "The basic implentation requirements for agents that
2456             support the MPLS LDP MIB."
2457         MODULE -- this module
2458             MANDATORY-GROUPS    { mplsLdpGeneralGroup,
2459                                   mplsLdpNotificationsGroup
2460                                 }
2461         GROUP mplsLdpAtmGroup
2462         DESCRIPTION
2463             "This group must be supported if ATM is used in the
2464             MPLS LDP implementation."
2465
2466         GROUP mplsLdpFrameRelayGroup
2467         DESCRIPTION
2468             "This group must be supported if Frame Relay is used
2469             in the MPLS LDP implementation."
2470
2471         GROUP  mplsLdpGenericGroup
2472         DESCRIPTION
2473             "Support for this group is not required."
2474         ::= { mplsLdpCompliances 1 }
2475
2476     -- units of conformance
2477
2478     mplsLdpGeneralGroup OBJECT-GROUP
2479         OBJECTS {
2480         mplsLdpLsrId,
2481         mplsLdpLsrLabelRetentionMode,
2482         mplsLdpLsrLoopDetectionCapable,
2483         mplsLdpEntityIndexNext,
2484         mplsLdpEntityProtocolVersion,
2485         mplsLdpEntityAdminStatus,
2486         mplsLdpEntityOperStatus,
2487         mplsLdpEntityWellKnownDiscoveryPort,
2488         mplsLdpEntityMaxPduLength,
2489         mplsLdpEntityKeepAliveHoldTimer,
2490         mplsLdpEntityHelloHoldTimer,
2491         mplsLdpEntityFailedInitSessionTrapEnable,
2492         mplsLdpEntityFailedInitSessionThreshold,
2493         mplsLdpEntityLabelDistributionMethod,
2494         mplsLdpEntityPVLimitMismatchTrapEnable,
2495         mplsLdpEntityPathVectorLimit,
2496         mplsLdpEntityHopCountLoopDetection,
2497         mplsLdpEntityHopCount,
2498         mplsLdpEntityTargetedPeer,
2499         mplsLdpEntityTargetedPeerAddrType,
2500         mplsLdpEntityTargetedPeerAddr,
2501         mplsLdpEntityOptionalParameters,
2502         mplsLdpEntityDiscontinuityTime,
2503         mplsLdpEntityStorageType,
2504         mplsLdpEntityRowStatus,
2505         mplsLdpAttemptedSessions,
2506         mplsLdpSessionRejectedNoHelloErrors,
2507         mplsLdpSessionRejectedAdvertisementErrors,
2508         mplsLdpSessionRejectedMaxPduErrors,
2509         mplsLdpSessionRejectedLabelRangeErrors,
2510         mplsLdpBadLdpIdentifierErrors,
2511         mplsLdpBadPduLengthErrors,
2512         mplsLdpBadMessageLengthErrors,
2513         mplsLdpBadTlvLengthErrors,
2514         mplsLdpMalformedTlvValueErrors,
2515         mplsLdpKeepAliveTimerExpiredErrors,
2516         mplsLdpShutdownNotifReceived,
2517         mplsLdpShutdownNotifSent,
2518         mplsLdpPeerLabelDistributionMethod,
2519         mplsLdpPeerLoopDetectionForPV,
2520         mplsLdpPeerPathVectorLimit,
2521         mplsLdpHelloAdjacencyHoldTimeRemaining,
2522         mplsLdpHelloAdjacencyType,
2523         mplsLdpSessionUpDownTrapEnable,
2524         mplsLdpSessionState,
2525         mplsLdpSessionProtocolVersion,
2526         mplsLdpSessionKeepAliveHoldTimeRemaining,
2527         mplsLdpSessionMaxPduLength,
2528         mplsLdpSessionDiscontinuityTime,
2529         mplsLdpSessionStatsUnknownMessageTypeErrors,
2530         mplsLdpSessionStatsUnknownTlvErrors,
2531         mplsLdpSessionPeerNextHopAddressType,
2532         mplsLdpSessionPeerNextHopAddress,
2533         mplsLdpLibLspUpDownTrapEnable,
2534         mplsLdpLibLabelInIfIndex,
2535         mplsLdpLibLabelOutIfIndex,
2536         mplsLdpLibInLabelType,
2537         mplsLdpLibInLabel,
2538         mplsLdpLibOutLabelType,
2539         mplsLdpLibOutLabel,
2540         mplsLdpLibOperationStatus,
2541         mplsLdpLibLspLastChange,
2542         mplsLdpFecSessionRowPointer
2543
2544         }
2545         STATUS    current
2546         DESCRIPTION
2547             "Objects that apply to all MPLS LDP implementations."
2548         ::= { mplsLdpGroups 1 }
2549
2550     mplsLdpGenericGroup OBJECT-GROUP
2551         OBJECTS {
2552         mplsLdpConfGenericIfIndexOrZero,
2553         mplsLdpConfGenericLabel,
2554         mplsLdpConfGenericStorageType,
2555         mplsLdpConfGenericRowStatus
2556         }
2557         STATUS    current
2558         DESCRIPTION
2559             "Objects that apply to all MPLS LDP implementations
2560             using Generic Lables."
2561         ::= { mplsLdpGroups 2 }
2562
2563     mplsLdpAtmGroup OBJECT-GROUP
2564         OBJECTS {
2565         mplsLdpEntityAtmIfIndexOrZero,
2566         mplsLdpEntityAtmMergeCap,
2567         mplsLdpEntityAtmLabelRangeComponents,
2568         mplsLdpEntityAtmVcDirectionality,
2569         mplsLdpEntityAtmLsrConnectivity,
2570         mplsLdpEntityDefaultControlVpi,
2571         mplsLdpEntityDefaultControlVci,
2572         mplsLdpEntityUnlabTrafVpi,
2573         mplsLdpEntityUnlabTrafVci,
2574         mplsLdpEntityAtmStorageType,
2575         mplsLdpEntityAtmRowStatus,
2576         mplsLdpEntityConfAtmLabelRangeMaximumVpi,
2577         mplsLdpEntityConfAtmLabelRangeMaximumVci,
2578         mplsLdpEntityConfAtmLabelRangeStorageType,
2579         mplsLdpEntityConfAtmLabelRangeRowStatus,
2580         mplsLdpSessionAtmLabelRangeUpperBoundVpi,
2581         mplsLdpSessionAtmLabelRangeUpperBoundVci
2582
2583         }
2584         STATUS    current
2585         DESCRIPTION
2586             "Objects that apply to all MPLS LDP implementations
2587             over ATM."
2588         ::= { mplsLdpGroups 3 }
2589
2590     mplsLdpFrameRelayGroup OBJECT-GROUP
2591         OBJECTS {
2592         mplsLdpEntityFrIfIndexOrZero,
2593         mplsLdpEntityFrMergeCap,
2594         mplsLdpEntityFrLabelRangeComponents,
2595         mplsLdpEntityFrLen,
2596         mplsLdpEntityFrVcDirectionality,
2597         mplsLdpEntityFrParmsStorageType,
2598         mplsLdpEntityFrParmsRowStatus,
2599         mplsLdpConfFrMaximumDlci,
2600         mplsLdpConfFrStorageType,
2601         mplsLdpConfFrRowStatus,
2602         mplsLdpFrSessionMaxDlci,
2603         mplsLdpFrSessionLen
2604         }
2605         STATUS    current
2606         DESCRIPTION
2607             "Objects that apply to all MPLS LDP implementations over
2608             Frame Relay."
2609         ::= { mplsLdpGroups 4 }
2610
2611         mplsLdpNotificationsGroup NOTIFICATION-GROUP
2612             NOTIFICATIONS { mplsLdpFailedInitSessionThresholdExceeded,
2613                             mplsLdpPathVectorLimitMismatch,
2614                             mplsLdpSessionUp,
2615                             mplsLdpSessionDown,
2616                             mplsLdpLibLspUp,
2617                             mplsLdpLibLspDown
2618                            }
2619             STATUS   current
2620             DESCRIPTION
2621                 "The notification(s) which an MPLS LDP implemention
2622                 is required to implement."
2623             ::= { mplsLdpGroups 5 }
2624
2625END
2626