summaryrefslogtreecommitdiff
path: root/MIBS/junos/VPLS-GENERIC-DRAFT-01-MIB
blob: cfe3d8a7d2c85b59a85adfa0983bc86ec3e355dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
VPLS-GENERIC-DRAFT-01-MIB DEFINITIONS ::= BEGIN

      IMPORTS
      MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
      Unsigned32, Counter32, transmission
         FROM SNMPv2-SMI                    -- RFC2578

      OBJECT-GROUP, NOTIFICATION-GROUP
         FROM SNMPv2-CONF                   -- RFC2580

      TruthValue, RowStatus, StorageType, TEXTUAL-CONVENTION
         FROM SNMPv2-TC                     -- RFC2579

      SnmpAdminString
         FROM SNMP-FRAMEWORK-MIB            -- RFC3411

      jnxExperiment
	FROM JUNIPER-SMI

    --  PwIndexType
    --    FROM PW-TC-STD-MIB

      VPNIdOrZero
        FROM VPN-TC-STD-MIB;                -- RFC4265
        
   jnxVplsGenericDraft01MIB MODULE-IDENTITY
      LAST-UPDATED "201103261200Z"  -- 26 March 2011 12:00:00 GMT
      ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN)
                                 Working  Group"
      CONTACT-INFO
          "
           Thomas D. Nadeau
           Email:  tnadeau@cisco.com

           The L2VPN Working Group (email distribution l2vpn@ietf.org,
           http://www.ietf.org/html.charters/l2vpn-charter.html)
           "

      DESCRIPTION
          "Copyright (C) The IETF Trust (2010). The initial
           version of this MIB module was published in RFC XXXX.
   -- RFC Editor: Please replace XXXX with RFC number & remove
   --                    this note.

           For full legal notices see the RFC itself or see:
           http://www.ietf.org/copyrights/ianamib.html

           This MIB module contains generic managed object definitions
           for Virtual Private LAN Services as in [RFC4762] and
           [RFC4761]

           This MIB module enables the use of any underlying PseudoWire
           network."

      -- Revision history.
      REVISION
          "201103261200Z"  -- 26 March 2011 12:00:00 GMT
      DESCRIPTION
          "Removed inline definition of VPNIdOrZero in favor
           of importing the definition from VPN-TC-STD-MIB.
          "
      REVISION
          "200608301200Z"  -- 30 August 2006 12:00:00 GMT
      DESCRIPTION
          "Changes from previous version:
           1) Moved LDP Specific information to VPLS-LDP-DRAFT-01-MIB
           2) Created the vplsStatusTable to store status information.
           3)



          "
      REVISION
          "200606041200Z"  -- 4 June 2006 12:00:00 GMT
      DESCRIPTION "Initial version published as part of RFC YYYY."
   -- RFC Editor: please replace YYYY with IANA assigned value, and
   -- delete this note.

         ::= { jnxExperiment 8 }

   -- RFC Editor: please replace XXXX with IANA assigne value, and
   -- delete this note.

   -- Top-level components of this MIB.

    PwIndexType ::= TEXTUAL-CONVENTION
    STATUS	      current
    DESCRIPTION
	"Pseudowire Index. A unique value, greater than zero,
	 for each locally-defined PW for indexing
	 several MIB tables associated with the particular PW.
	 It is recommended that values are assigned contiguously
	 starting from 1. The value for each PW MUST remain
	 constant at least from one re-initialization
	 to the next re-initialization.
	"
    SYNTAX  Unsigned32	(1..4294967295)

    -- Vpls BGP Autodiscovery specific Textual Convention

    JnxVplsBgpRouteDistinguisher ::= TEXTUAL-CONVENTION
      STATUS        current
      DESCRIPTION
          "Syntax for a route distinguisher. For a complete
           definition of a route distinguisher, see [RFC4364].
           For more details on use of a route distinguisher
           for a VPLS service, see [RFC4761]"
      REFERENCE
          "[RFC4364]"
      SYNTAX  OCTET STRING(SIZE (0..256))

    JnxVplsBgpRouteTarget ::= TEXTUAL-CONVENTION
      STATUS        current
      DESCRIPTION
          "Syntax for a route target. For a complete
           definition of a route target, see [RFC4364]."
      REFERENCE
          "[RFC4364]"
      SYNTAX  OCTET STRING(SIZE (0..256))    

    JnxVplsBgpRouteTargetType ::= TEXTUAL-CONVENTION
      STATUS        current
      DESCRIPTION
       "Used to define the type of a route target usage.
        Route targets can be specified to be imported,
        exported, or both.  For a complete definition of a
        route target, see [RFC4364]."
      REFERENCE
        "[RFC4364]"
      SYNTAX INTEGER { import(1), export(2), both(3) }

   -- Notifications
   jnxVplsNotifications OBJECT IDENTIFIER
                                 ::= { jnxVplsGenericDraft01MIB 0 }
   -- Tables, Scalars
   jnxVplsObjects       OBJECT IDENTIFIER
                                 ::= { jnxVplsGenericDraft01MIB 1 }
   -- Conformance
   jnxVplsConformance   OBJECT IDENTIFIER
                                 ::= { jnxVplsGenericDraft01MIB 2 }

   -- PW Virtual Connection Table

   jnxVplsConfigIndexNext OBJECT-TYPE
      SYNTAX            Unsigned32
      MAX-ACCESS        read-only
      STATUS            current
      DESCRIPTION
          "This object contains an appropriate value to be used
           for jnxVplsConfigIndex when creating entries in the
           jnxVplsConfigTable. The value 0 indicates that no
           unassigned entries are available.  To obtain the
           value of jnxVplsConfigIndex for a new entry in the
           jnxVplsConfigTable, the manager issues a management
           protocol retrieval operation to obtain the current
           value of jnxVplsConfigIndex.  After each retrieval
           operation, the agent should modify the value to
           reflect the next unassigned index.  After a manager
           retrieves a value the agent will determine through
           its local policy when this index value will be made
           available for reuse."
      ::= { jnxVplsObjects 1 }

      jnxVplsConfigTable OBJECT-TYPE
          SYNTAX          SEQUENCE OF JnxVplsConfigEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
               "This table specifies information for configuring
                and monitoring Virtual Private Lan Services(VPLS).
                "
          ::= { jnxVplsObjects 2 }

      jnxVplsConfigEntry OBJECT-TYPE
          SYNTAX          JnxVplsConfigEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
           "A row in this table represents a Virtual Private Lan
            Service(VPLS) in a packet network. It is indexed by
            jnxVplsConfigIndex, which uniquely identifies a single VPLS.

            A row is created by the operator or by the agent if a
            VPLS service is created by non-SNMP application or
            due to autodiscovery process.

            None of the read-create objects values can be
            changed when jnxVplsConfigRowStatus is in the active(1)
            state. Changes are allowed when the jnxVplsConfigRowStatus
            is in notInService(2) or notReady(3) states only.
            If the operator need to change one of the values
            for an active row the jnxVplsConfigRowStatus should be
            first changed to notInService(2), the objects may
            be changed now, and later to active(1) in order to
            re-initiate the signaling process with the new
            values in effect.
            "
          INDEX           { jnxVplsConfigIndex }
          ::= { jnxVplsConfigTable 1 }

     JnxVplsConfigEntry ::=
        SEQUENCE {
         jnxVplsConfigIndex                                Unsigned32,
         jnxVplsConfigName                                 SnmpAdminString,
         jnxVplsConfigDescr                                SnmpAdminString,
         jnxVplsConfigAdminStatus                          INTEGER,
         jnxVplsConfigMacLearning                          TruthValue,
         jnxVplsConfigDiscardUnknownDest                   TruthValue,
         jnxVplsConfigMacAging                             TruthValue,
         jnxVplsConfigFwdFullHighWatermark                 Unsigned32,
         jnxVplsConfigFwdFullLowWatermark                  Unsigned32,

         jnxVplsConfigRowStatus                            RowStatus,
         jnxVplsConfigMtu                                  Unsigned32,
         jnxVplsConfigVpnId                                VPNIdOrZero,
         jnxVplsConfigServiceType                          INTEGER,
         jnxVplsConfigStorageType                          StorageType
          }

      jnxVplsConfigIndex  OBJECT-TYPE
          SYNTAX          Unsigned32 (1.. 2147483647)
--          MAX-ACCESS      not-accessible
          MAX-ACCESS      read-only 
          STATUS          current
          DESCRIPTION
               "Unique index for the conceptual row identifying
                a VPLS service."
          ::= { jnxVplsConfigEntry 1 }

      jnxVplsConfigName  OBJECT-TYPE
          SYNTAX          SnmpAdminString
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "A textual name of the VPLS.
                If there is no local name, or this object is
                otherwise not applicable, then this object MUST
                contain a zero-length octet string."
          DEFVAL           { "" }
          ::= { jnxVplsConfigEntry 2 }

      jnxVplsConfigDescr  OBJECT-TYPE
          SYNTAX          SnmpAdminString
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "A textual string containing information about the
               VPLS service. If there is no information for this VPLS
               service, then this object MUST contain a zero-length
               octet string."
          DEFVAL           { "" }
          ::= { jnxVplsConfigEntry 3 }

      jnxVplsConfigAdminStatus OBJECT-TYPE
          SYNTAX          INTEGER {
                              up(1),
                              down(2),
                              testing(3)   -- in some test mode

                          }
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "The desired administrative state of the VPLS
                service. If the administrative status of the
                Vpls service is changed to enable then this
                service is able to utilize the pseudo wire to
                perform the tasks of a VPLS service.
                The testing(3) state indicates that no operational
                packets can be passed. "
          DEFVAL           { down }
          ::= { jnxVplsConfigEntry 4 }

      jnxVplsConfigMacLearning OBJECT-TYPE
          SYNTAX          TruthValue
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "This object specifies if MAC Learning is enabled
                in this service. If this object is true then Mac
                Learning is enabled. If false, then Mac Learning is
                disabled."
          DEFVAL          { true }
          ::= { jnxVplsConfigEntry 6 }

      jnxVplsConfigDiscardUnknownDest OBJECT-TYPE
          SYNTAX          TruthValue
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "If the value of this object is 'true', then frames
                received with an unknown destination MAC are discarded
                in this VPLS. If 'false', then the packets are
                processed."
          DEFVAL          { false }
          ::= { jnxVplsConfigEntry 7 }

      jnxVplsConfigMacAging OBJECT-TYPE
          SYNTAX          TruthValue
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "If the value of this object is 'true'
                then the MAC ageing process is enabled in
                this VPLS. If 'false', then the MAC ageing process
                is disabled"
          DEFVAL          { true }
          ::= { jnxVplsConfigEntry 8 }

      jnxVplsConfigFwdFullHighWatermark OBJECT-TYPE
          SYNTAX          Unsigned32 (0..100)
          UNITS           "percentage"
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "This object specifies the utilization of the
                forwarding database for this VPLS instance at
                which the jnxVplsFwdFullAlarmRaised notification
                will be sent."
          DEFVAL          { 95 }
          ::= { jnxVplsConfigEntry 10 }

      jnxVplsConfigFwdFullLowWatermark OBJECT-TYPE
          SYNTAX          Unsigned32 (0..100)
          UNITS           "percentage"
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "This object specifies the utilization of the
                forwarding database for this VPLS instance
                at which the jnxVplsFwdFullAlarmCleared
                notification will be sent."
          DEFVAL          { 90 }
          ::= { jnxVplsConfigEntry 11 }

      jnxVplsConfigRowStatus OBJECT-TYPE
          SYNTAX          RowStatus
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "For creating, modifying, and deleting this row.
                None of the read-create objects in the
                conceptual rows may be changed when this
                object is in the active(1) state."
          ::= { jnxVplsConfigEntry 12 }

      jnxVplsConfigMtu OBJECT-TYPE
          SYNTAX          Unsigned32 (64..1518)
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "The value of this object specifies the MTU of this
                vpls instance."
          DEFVAL          { 1518 }
          ::= { jnxVplsConfigEntry 13 }

      jnxVplsConfigVpnId OBJECT-TYPE
          SYNTAX          VPNIdOrZero
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "This objects indicates the IEEE 802-1990
                VPN ID of the associated VPLS service."
          ::= { jnxVplsConfigEntry 14 }

      jnxVplsConfigServiceType OBJECT-TYPE
          SYNTAX          INTEGER {
                           vlan     (1),
                           ethernet (2)
                          }
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "The value of this object specifies the type of 
                service emulated by this vpls instance."
          DEFVAL          { vlan }
          ::= { jnxVplsConfigEntry 15 }

  jnxVplsConfigStorageType OBJECT-TYPE   
          SYNTAX        StorageType  
          MAX-ACCESS    read-only  
          STATUS        current  
          DESCRIPTION  
               "This variable indicates the storage type for this row."  
          DEFVAL { volatile }
          ::= { jnxVplsConfigEntry 16 }  

-- VPLS Status table

      jnxVplsStatusTable OBJECT-TYPE
          SYNTAX          SEQUENCE OF JnxVplsStatusEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
                "This table provides information for monitoring
                Virtual Private Lan Services(VPLS).
                "
          ::= { jnxVplsObjects 3 }

      jnxVplsStatusEntry OBJECT-TYPE
          SYNTAX          JnxVplsStatusEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
           "A row in this table represents a Virtual Private Lan
            Service(VPLS) in a packet network. It is indexed by
            jnxVplsConfigIndex, which uniquely identifies a single VPLS.

            A row in this table is automatically created by the agent
            when a VPLS service is configured.
            "
          INDEX           { jnxVplsConfigIndex }
          ::= { jnxVplsStatusTable 1 }

     JnxVplsStatusEntry ::=
        SEQUENCE {
         jnxVplsStatusOperStatus                        INTEGER,
         jnxVplsStatusPeerCount                         Counter32
          }

      jnxVplsStatusOperStatus OBJECT-TYPE
          SYNTAX          INTEGER {
                              other(0),
                              up(1),
                              down(2)
                          }
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "The current operational state of this VPLS Service."
          ::= { jnxVplsStatusEntry 1 }

      jnxVplsStatusPeerCount OBJECT-TYPE
          SYNTAX          Counter32
          MAX-ACCESS      read-only
          STATUS          current
          DESCRIPTION
               "This objects specifies the number of peers
                present in this vpls instance."
          ::= { jnxVplsStatusEntry 2 }

      -- VPLS PW Binding Table

      jnxVplsPwBindTable OBJECT-TYPE
          SYNTAX          SEQUENCE OF JnxVplsPwBindEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
               "This table provides an association between a
                VPLS service and the corresponding Pseudo
                Wires. A service can have more than one Pseudo
                Wire association. Pseudo Wires are defined in
                the pwTable"
          ::= { jnxVplsObjects 4 }

      jnxVplsPwBindEntry OBJECT-TYPE
          SYNTAX          JnxVplsPwBindEntry
          MAX-ACCESS      not-accessible
          STATUS          current
          DESCRIPTION
               "Each row represents an association between a
                VPLS instance and one or more Pseudo Wires
                defined in the pwTable. Each index is unique
                in describing an entry in this table. However
                both indexes are required to define the one
                to many association of service to
                pseudowire."
          INDEX  { jnxVplsConfigIndex, jnxVplsPwBindIndex }
          ::= { jnxVplsPwBindTable 1 }

      JnxVplsPwBindEntry ::=
          SEQUENCE {
              jnxVplsPwBindConfigType              INTEGER,
              jnxVplsPwBindType                  INTEGER,
              jnxVplsPwBindRowStatus             RowStatus,
              jnxVplsPwBindStorageType             StorageType,
	      jnxVplsPwBindIndex		      PwIndexType
          }

      jnxVplsPwBindConfigType   OBJECT-TYPE
           SYNTAX          INTEGER {
                                   manual        (1),
                                   autodiscovery (2)
                           }
           MAX-ACCESS      read-only
           STATUS          current
           DESCRIPTION
                "The value of this object indicates
                 whether the Pseudo Wire binding was created
                 manually or via autodiscovery.

                 The value of this object must be
                 specifed when the row is created and cannot
                 be changed while the row status is active(1)"
          ::= { jnxVplsPwBindEntry 1 }

      jnxVplsPwBindType   OBJECT-TYPE
           SYNTAX          INTEGER {
                                   mesh  (1),
                                   spoke (2)
                           }
           MAX-ACCESS      read-only
           STATUS          current
           DESCRIPTION
                "The value of this object indicates
                 whether the Pseudo Wire binding is of
                 type mesh or spoke.

                 The value of this object must be
                 specifed when the row is created and cannot
                 be changed while the row status is active(1)"
          ::= { jnxVplsPwBindEntry 2 }

      jnxVplsPwBindRowStatus  OBJECT-TYPE
           SYNTAX          RowStatus
           MAX-ACCESS      read-only
           STATUS          current
           DESCRIPTION
                "For creating, modifying, and deleting this row.
                 None of the read-create objects in the
                 conceptual rows may be changed when this
                 object is in the active(1) state"
          ::= { jnxVplsPwBindEntry 3 }

      jnxVplsPwBindStorageType OBJECT-TYPE   
           SYNTAX        StorageType  
           MAX-ACCESS    read-only 
           STATUS        current  
           DESCRIPTION  
               "This variable indicates the storage type for this row."  
           DEFVAL { volatile }
           ::= { jnxVplsPwBindEntry 4 }  

-- Joe Added xxx
      jnxVplsPwBindIndex	 OBJECT-TYPE   
           SYNTAX        PwIndexType  
--           MAX-ACCESS    not-accessible 
           MAX-ACCESS    read-only 
           STATUS        current  
           DESCRIPTION  
               "Secondary Index for the conceptual row identifying
		a pseudowire within the PwEntry which MUST 
		match an entry from the PW-STD-MIB's PwTable
		which represents an already-provisioned
	        pseudowire that is then associated with this
		VPLS instance.
		"  
           ::= { jnxVplsPwBindEntry 5 }  

-- jnxVplsBgpADConfigTable 

      jnxVplsBgpADConfigTable OBJECT-TYPE 
            SYNTAX          SEQUENCE OF JnxVplsBgpADConfigEntry 
            MAX-ACCESS      not-accessible 
            STATUS          current 
            DESCRIPTION 
            "This table specifies information for configuring 
             BGP Auto-discovery parameters for a given Vpls service. 
            " 
            ::= { jnxVplsObjects 5 } 

      jnxVplsBgpADConfigEntry OBJECT-TYPE 
            SYNTAX          JnxVplsBgpADConfigEntry 
            MAX-ACCESS      not-accessible 
            STATUS          current 
            DESCRIPTION 
            "A row in this table represents BGP based autodiscovery 
             is in use for this instance of Vpls. 
             A row in this table is indexed by jnxVplsConfigIndex, which 
             uniquely identifies a single VPLS.  
             None of the read-create objects can be changed when  
             jnxVplsBGPADConfigRowStatus is in active(1) state. Changes 
             are allowed when the jnxVplsBGPADConfigRowStatus is in  
             notInService(2) or notReady(3) states only.  
             If the operator need to change one of the values 
             for an active row the jnxVplsConfigRowStatus should be 
             first changed to notInService(2), the objects may 
             be changed now, and later to active(1) in order to 
             re-initiate the signaling process with the new 
             values in effect. 
            " 
            INDEX      { jnxVplsConfigIndex } 
            ::= { jnxVplsBgpADConfigTable 1 } 

      JnxVplsBgpADConfigEntry ::= 
         SEQUENCE { 
          jnxVplsBgpADConfigRouteDistinguisher   JnxVplsBgpRouteDistinguisher, 
          jnxVplsBgpADConfigPrefix               Unsigned32, 
          jnxVplsBgpADConfigVplsId               JnxVplsBgpRouteDistinguisher, 
          jnxVplsBgpADConfigRowStatus            RowStatus 
         } 

      jnxVplsBgpADConfigRouteDistinguisher OBJECT-TYPE 
            SYNTAX          JnxVplsBgpRouteDistinguisher 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            " The route distinguisher for this VPLS. See [RFC4364]  
            for a complete definition of a route distinguisher. 
            for more details on use of a route distinguisher 
            for a VPLS service, see [RFC4761] 
            " 
            ::= { jnxVplsBgpADConfigEntry 1 } 

            jnxVplsBgpADConfigPrefix      OBJECT-TYPE 
            SYNTAX          Unsigned32 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            " In case of auto-discovery the default prefix advertised 
            is the ip address of the loopback. In case the user wants 
            to override the loopback address, jnxVplsBgpADConfigPrefix  
            should be set. When this value if non-zero it is used 
            as the advertised IP address in the NLRI. 
            " 
            DEFVAL { 0 } 
            ::= { jnxVplsBgpADConfigEntry 2 } 

      jnxVplsBgpADConfigVplsId          OBJECT-TYPE 
            SYNTAX          JnxVplsBgpRouteDistinguisher 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            " VplsId is a unique identifier for all VSIs belonging to 
            the same VPLS. It is advertised as an extended community 
            "
            ::= { jnxVplsBgpADConfigEntry 3 } 

      jnxVplsBgpADConfigRowStatus OBJECT-TYPE 
            SYNTAX          RowStatus 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION     
	    " For creating, modifying, and deleting this row. 
            None of the read-create objects in the 
            conceptual rows may be changed when this 
            object is in the active(1) state. 
            " 
            ::= { jnxVplsBgpADConfigEntry 4 } 


    -- jnxVplsBgpRteTargetTable 

      jnxVplsBgpRteTargetTable   OBJECT-TYPE 
            SYNTAX          SEQUENCE OF JnxVplsBgpRteTargetEntry 
            MAX-ACCESS      not-accessible 
            STATUS          current 
            DESCRIPTION 
            " This table specifies the list of Route Targets 
              imported or exported by BGP during auto-discovery of VPLS. 
            "    
            ::= { jnxVplsObjects 6 } 

      jnxVplsBgpRteTargetEntry   OBJECT-TYPE 
            SYNTAX          JnxVplsBgpRteTargetEntry 
            MAX-ACCESS      not-accessible 
            STATUS          current 
            DESCRIPTION 
              "An entry in this table specifies the value of the 
               Route Target being used by BGP. Depending on the value
               of jnxVplsBgpRteTargetType an RT might be exported or 
               imported or both. Every VPLS which 
              uses auto-discovery for finding peer nodes can import and
              export multiple Route Targets. This representation allows 
              support for hierarchical VPLS. 
            " 
            INDEX     { jnxVplsConfigIndex, jnxVplsBgpRteTargetIndex } 
            ::= { jnxVplsBgpRteTargetTable 1 } 

      JnxVplsBgpRteTargetEntry ::=  
         SEQUENCE { 
          jnxVplsBgpRteTargetIndex          Unsigned32, 
          jnxVplsBgpRteTargetRTType         JnxVplsBgpRouteTargetType, 
          jnxVplsBgpRteTargetRT             JnxVplsBgpRouteTarget, 
          jnxVplsBgpRteTargetRTRowStatus    RowStatus 
         } 

      jnxVplsBgpRteTargetIndex   OBJECT-TYPE 
            SYNTAX          Unsigned32 
            MAX-ACCESS      not-accessible 
            STATUS          current 
            DESCRIPTION 
            "This index along with jnxVplsConfigIndex,identifies one entry 
             in the jnxVplsBgpRteTargetTable. By keeping jnxVplsConfigIndex 
             constant and using new value of jnxVplsBgpRteTargetIndex user 
              can configure multiple Route Targets for the same Vpls. 
            " 
            ::= { jnxVplsBgpRteTargetEntry 1 } 

      jnxVplsBgpRteTargetRTType  OBJECT-TYPE 
            SYNTAX          JnxVplsBgpRouteTargetType 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            " Used to define the type of a route target usage. 
              Route targets can be specified to be imported, 
              exported, or both.  For a complete definition of a 
              route target, see [RFC4364]. 
            " 
            ::= { jnxVplsBgpRteTargetEntry 2 } 

      jnxVplsBgpRteTargetRT     OBJECT-TYPE 
            SYNTAX          JnxVplsBgpRouteTarget 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            " The route target associated with the VPLS service. 
              For more details on use of route targets 
              for a VPLS service, see [RFC4761] 
            " 
            ::= { jnxVplsBgpRteTargetEntry 3 } 

      jnxVplsBgpRteTargetRTRowStatus     OBJECT-TYPE 
            SYNTAX          RowStatus 
            MAX-ACCESS      read-only 
            STATUS          current 
            DESCRIPTION 
            "This variable is used to create, modify, and/or 
             delete a row in this table.  When a row in this 
             table is in active(1) state, no objects in that row 
             can be modified 
            " 
            ::= { jnxVplsBgpRteTargetEntry 4 } 

      jnxVplsStatusNotifEnable  OBJECT-TYPE 
            SYNTAX      TruthValue 
            MAX-ACCESS  read-write 
            STATUS      current 
            DESCRIPTION 
            "If this object is set to true(1), then it enables 
             the emission of jnxVplsStatusChanged 
             notification; otherwise this notification is not 
             emitted." 
            REFERENCE 
            "See also [RFC3413] for explanation that
            notifications are under the ultimate control of the
            MIB module in this document."
            DEFVAL { false }
            ::= { jnxVplsObjects 7 }

       jnxVplsNotificationMaxRate OBJECT-TYPE
          SYNTAX       Unsigned32
          MAX-ACCESS   read-write
          STATUS       current
          DESCRIPTION
           "This object indicates the maximum number of
            notifications issued per second. If events occur
            more rapidly, the implementation may simply fail to
            emit these notifications during that period, or may
            queue them until an appropriate time. A value of 0
            means no throttling is applied and events may be
            notified at the rate at which they occur."
          DEFVAL       { 0 }
          ::= { jnxVplsObjects 8 }

      -- VPLS Service Notifications

      jnxVplsStatusChanged NOTIFICATION-TYPE
          OBJECTS {
              jnxVplsConfigVpnId,
              jnxVplsConfigAdminStatus,
              jnxVplsStatusOperStatus
          }
          STATUS          current
          DESCRIPTION
               "The jnxVplsStatusChanged notification is generated
                when there is a change in the administrative or
                operating status of a VPLS service."
          ::= { jnxVplsNotifications 1 }

      jnxVplsFwdFullAlarmRaised NOTIFICATION-TYPE
          OBJECTS {
              jnxVplsConfigVpnId,
              jnxVplsConfigFwdFullHighWatermark,
              jnxVplsConfigFwdFullLowWatermark
          }
          STATUS          current
          DESCRIPTION
               "The jnxVplsFwdFullAlarmRaised notification is
                generated when the utilization of the Forwarding
                database is above the value specified by
                jnxVplsConfigFwdFullHighWatermark."
          ::= { jnxVplsNotifications 2 }

      jnxVplsFwdFullAlarmCleared NOTIFICATION-TYPE
          OBJECTS {
              jnxVplsConfigVpnId,
              jnxVplsConfigFwdFullHighWatermark,
              jnxVplsConfigFwdFullLowWatermark
          }
          STATUS          current
          DESCRIPTION
               "The jnxVplsFwdFullAlarmCleared notification is
                generated when the utilization of the Forwarding
                database is below the value specified by
                jnxVplsConfigFwdFullLowWatermark."
          ::= { jnxVplsNotifications 3 }

       END