Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / mibs / ietf / APS-MIB
1 APS-MIB DEFINITIONS ::= BEGIN
2
3 IMPORTS
4         MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE,
5         Gauge32, Counter32, Integer32, transmission
6                 FROM SNMPv2-SMI
7
8         TEXTUAL-CONVENTION, RowStatus,
9         TimeStamp, StorageType
10                 FROM SNMPv2-TC
11
12         SnmpAdminString
13                 FROM SNMP-FRAMEWORK-MIB
14
15
16
17
18
19         ifIndex, InterfaceIndex
20                 FROM IF-MIB
21
22         MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
23                 FROM SNMPv2-CONF;
24
25 apsMIB MODULE-IDENTITY
26     LAST-UPDATED        "200302280000Z"  -- February 28, 2003
27     ORGANIZATION        "IETF AToMMIB Working Group"
28     CONTACT-INFO
29         "       Jim Kuhfeld
30                 Postal: RedBack Networks. Inc.
31                 300 Holger Way
32                 San Jose, CA 95134-1362
33                 Tel: +1 408 750 5465
34                 Email: jkuhfeld@redback.com
35
36                 Jeff Johnson
37                 Postal: RedBack Networks. Inc.
38                 300 Holger Way
39                 San Jose, CA 95134-1362
40                 Tel: +1 408 750 5460
41                 Email: jeff@redback.com
42
43                 Michael Thatcher
44                 Postal: RedBack Networks. Inc.
45                 300 Holger Way
46                 San Jose, CA 95134-1362
47                 Tel: +1 408 750 5449
48                 Email: thatcher@redback.com"
49     DESCRIPTION
50         "This management information module supports the configuration
51          and management of SONET linear APS groups. The definitions and
52          descriptions used in this MIB have been derived from
53          Synchronous Optical Network (SONET) Transport Systems:
54          Common Generic Criteria, GR-253-CORE Issue 3, September 2000,
55          section 5.3. The MIB is also consistent with the Multiplex
56          Section Protection (MSP) protocol as specified in ITU-T
57          Recommendation G.783, Characteristics of synchronous digital
58          hierarchy (SDH) equipment function blocks, Annex A and B.
59
60          Copyright (C) The Internet Society (2003).  This version of
61          this MIB module is part of RFC 3498; see the RFC itself for
62          full legal notices.
63          "
64
65
66
67
68
69
70     REVISION      "200302280000Z"  -- February 28, 2003
71     DESCRIPTION
72           "Initial version of this MIB, published as RFC 3498."
73         ::= { transmission 49 }
74
75 apsMIBObjects OBJECT IDENTIFIER
76         ::= { apsMIB 1 }
77
78 apsMIBNotifications OBJECT IDENTIFIER
79         ::= { apsMIB 2 }
80
81 apsMIBConformance OBJECT IDENTIFIER
82         ::= { apsMIB 3 }
83
84 ApsK1K2 ::= TEXTUAL-CONVENTION
85     STATUS current
86     DESCRIPTION
87         "This Textual Convention describes an object that stores
88          a SONET K1 and K2 byte APS protocol field.
89
90          K1 is located in the first octet, K2 is located in
91          the second octet. Bits are numbered from left to right.
92
93          Bits 1-4 of the K1 byte indicate a request.
94
95          1111  Lockout of Protection
96          1110  Forced Switch
97          1101  SF - High Priority
98          1100  SF - Low Priority
99          1011  SD - High Priority
100          1010  SD - Low Priority
101          1001  not used
102          1000  Manual Switch
103          0111  not used
104          0110  Wait-to-Restore
105          0101  not used
106          0100  Exercise
107          0011  not used
108          0010  Reverse Request
109          0001  Do Not Revert
110          0000  No Request
111
112          Bits 5-8 of the K1 byte indicate the channel associated with
113          the request defined in bits 1-4.
114
115          0000 is the Null channel.
116
117
118
119
120
121          1-14 are working channels.
122          15   is the extra traffic channel
123
124          Bits 1-4 of the K2 byte indicate a channel. The channel is
125          defined with the same syntax as K1 Bits 5-8.
126
127          Bit 5 of the K2 byte indicates the
128          architecture.
129
130          0 if the architecture is 1+1
131          1 if the architecture is 1:n
132
133          Bits 6-8 of the K2 byte indicates the mode.
134
135          000 - 011 are reserved for future use
136          100  indicates the mode is unidirectional
137          101  indicates the mode is bidirectional
138          110  RDI-L
139          111  AIS-L
140         "
141     REFERENCE
142         "Bellcore (Telcordia Technologies) GR-253-CORE, Issue 3,
143         September 2000, 5.3.5."
144     SYNTAX      OCTET STRING (SIZE (2))
145
146 ApsSwitchCommand ::= TEXTUAL-CONVENTION
147     STATUS       current
148     DESCRIPTION
149         "An APS switch command allows a user to perform protection
150          switch actions.
151
152          If the APS switch command cannot be executed because an
153          equal or higher priority request is in effect, an
154          inconsistentValue error is returned.
155
156          The Switch command values are:
157
158          noCmd
159
160          This value should be returned by a read request when no switch
161          command has been written to the object in question since
162          initialization. This value may not be used in a write
163          operation.  If noCmd is used in a write operation a wrongValue
164          error is returned.
165
166
167
168
169
170
171
172          clear
173
174          Clears all of the switch commands listed below for the
175          specified channel.
176
177          lockoutOfProtection
178
179          Prevents any of the working channels from switching to the
180          protection line. The specified channel should be the protection
181          channel, otherwise an inconsistentValue error is returned.
182
183          forcedSwitchWorkToProtect
184
185          Switches the specified working channel to the protection line.
186          If the protection channel is specified an inconsistentValue
187          error is returned.
188
189          forcedSwitchProtectToWork
190
191          Switches the working channel back from the protection
192          line to the working line. The specified channel should be
193          the protection channel, otherwise an inconsistentValue
194          error is returned.
195
196          manualSwitchWorkToProtect
197
198          Switches the specified working channel to the protection line.
199          If the protection channel is specified an inconsistentValue
200          error is returned.
201
202          manualSwitchProtectToWork
203
204          Switches the working channel back from the protection
205          line to the working line. The specified channel should be
206          the protection channel, otherwise an inconsistentValue
207          error is returned.
208
209          exercise
210
211          Exercises the protocol for a protection switch of the specified
212          channel by issuing an Exercise request for that channel and
213          checking the response on the APS channel. "
214     SYNTAX       INTEGER {
215                      noCmd(1),
216                      clear(2),
217                      lockoutOfProtection(3),
218                      forcedSwitchWorkToProtect(4),
219                      forcedSwitchProtectToWork(5),
220
221
222
223                      manualSwitchWorkToProtect(6),
224                      manualSwitchProtectToWork(7),
225                      exercise(8)
226                  }
227
228 ApsControlCommand ::= TEXTUAL-CONVENTION
229     STATUS       current
230     DESCRIPTION
231         "An APS control command applies only to LTE that support the
232          1:n architecture and performs the following actions.
233
234          The Control command values are:
235
236          noCmd
237
238          This value should be returned by a read request when no control
239          command has been written to the object in question since
240          initialization. This value may not be used in a write
241          operation.  If noCmd is used in a write operation a wrongValue
242          error is returned.
243
244          lockoutWorkingChannel
245
246          Prevents the specified working channel from switching to the
247          protection line. If the protection line is specified an
248          inconsistentValue error is returned.
249
250          clearLockoutWorkingChannel
251
252          Clears the lockout a working channel command for the channel
253          specified. If the protection line is specified an
254          inconsistentValue error is returned."
255     SYNTAX       INTEGER {
256                      noCmd(1),
257                      lockoutWorkingChannel(2),
258                      clearLockoutWorkingChannel(3)
259                  }
260
261 --
262 -- APS Configuration Table
263 --
264 -- This table supports the addition, configuration and deletion of APS
265 -- groups.
266 --
267
268 apsConfig     OBJECT IDENTIFIER ::= { apsMIBObjects 1 }
269
270
271
272
273
274 apsConfigGroups OBJECT-TYPE
275     SYNTAX      Gauge32
276     MAX-ACCESS  read-only
277     STATUS      current
278     DESCRIPTION
279         "The count of APS groups. This count includes all rows in
280          apsConfigTable, regardless of the value of apsConfigRowStatus."
281     ::= { apsConfig 1 }
282
283 apsConfigTable OBJECT-TYPE
284     SYNTAX      SEQUENCE OF ApsConfigEntry
285     MAX-ACCESS  not-accessible
286     STATUS      current
287     DESCRIPTION
288         "This table lists the APS groups that have been configured
289          on the system."
290     ::= { apsConfig 2 }
291
292 apsConfigEntry OBJECT-TYPE
293     SYNTAX      ApsConfigEntry
294     MAX-ACCESS  not-accessible
295     STATUS      current
296     DESCRIPTION
297         "A conceptual row in the apsConfigTable."
298     INDEX { IMPLIED apsConfigName }
299     ::= { apsConfigTable  1 }
300
301 ApsConfigEntry ::= SEQUENCE {
302     apsConfigName                  SnmpAdminString,
303     apsConfigRowStatus             RowStatus,
304     apsConfigMode                  INTEGER,
305     apsConfigRevert                INTEGER,
306     apsConfigDirection             INTEGER,
307     apsConfigExtraTraffic          INTEGER,
308     apsConfigSdBerThreshold        Integer32,
309     apsConfigSfBerThreshold        Integer32,
310     apsConfigWaitToRestore         Integer32,
311     apsConfigCreationTime          TimeStamp,
312     apsConfigStorageType           StorageType
313 }
314
315 apsConfigName OBJECT-TYPE
316     SYNTAX      SnmpAdminString (SIZE (1..32))
317     MAX-ACCESS  not-accessible
318     STATUS      current
319     DESCRIPTION
320         "A textual name for the APS group."
321     ::= { apsConfigEntry 1 }
322
323
324
325 apsConfigRowStatus OBJECT-TYPE
326     SYNTAX      RowStatus
327     MAX-ACCESS  read-create
328     STATUS      current
329     DESCRIPTION
330         "The status of this APS group entry.
331
332         An entry may not exist in the active state unless all
333         objects in the entry have an appropriate value. Also,
334         all associated apsChanConfigEntry rows must represent
335         a set of consecutive channel numbers beginning with
336         0 or 1, depending on the selected architecture.
337
338         When set to notInService changes may be made to apsConfigMode,
339         apsConfigRevert, apsConfigDirection, apsConfigExtraTraffic,
340         apsConfigSdBerThreshold, apsConfigSfBerThreshold,
341         and apsConfigWaitToRestore. Also, associated apsChanConfigTable
342         objects may be added, deleted and modified."
343     ::= { apsConfigEntry 2 }
344
345 apsConfigMode OBJECT-TYPE
346     SYNTAX      INTEGER {
347                         onePlusOne(1),
348                         oneToN(2),
349                         onePlusOneCompatible(3),
350                         onePlusOneOptimized(4)
351                         }
352     MAX-ACCESS  read-create
353     STATUS      current
354     DESCRIPTION
355        "The architecture of the APS group.
356
357         onePlusOne
358
359         The 1+1 architecture permanently bridges the working
360         line to the protection line.
361
362         oneToN
363
364         The 1:n architecture allows one protection channel to
365         protect up to n working channels. When a fault is detected
366         on one of the n working channels that channel is bridged
367         over the protection channel.
368
369         onePlusOneCompatible
370
371
372
373
374
375
376         This refers to 1 + 1 bidirectional switching compatible with
377         1:n bidirectional switching as specified in ITU-T
378         Recommendation G.783 (04/97) section A.3.4.1. Since this
379         mode necessitates bidirectional switching, apsConfigDirection
380         must be set to bidirectional whenever onePlusOneCompatible
381         is set.
382
383         onePlusOneOptimized
384
385         This refers to 1 + 1 bidirectional switching optimized
386         for a network using predominantly 1 + 1 bidirectional
387         switching as specified in ITU-T Recommendation G.783 (04/97)
388         section B.1. Since this mode necessitates bidirectional
389         switching, apsConfigDirection must be set to bidirectional
390         whenever onePlusOneOptimized is set.
391
392         This object may not be modified if the associated
393         apsConfigRowStatus object is equal to active(1)."
394     DEFVAL {onePlusOne}
395     ::= { apsConfigEntry 3 }
396
397 apsConfigRevert OBJECT-TYPE
398     SYNTAX      INTEGER { nonrevertive(1), revertive(2) }
399     MAX-ACCESS  read-create
400     STATUS      current
401     DESCRIPTION
402        "The revertive mode of the APS group.
403
404         nonrevertive
405
406         Traffic remains on the protection line until another switch
407         request is received.
408
409         revertive
410
411         When the condition that caused a switch to the protection
412         line has been cleared the signal is switched back to the
413         working line. Since switching is revertive with the 1:n
414         architecture, apsConfigRevert must be set to revertive if
415         apsConfigMode is set to oneToN.
416
417         Switching may optionally be revertive with the 1+1 architecture.
418
419         This object may not be modified if the associated
420         apsConfigRowStatus object is equal to active(1). "
421     DEFVAL { nonrevertive }
422     ::= { apsConfigEntry 4 }
423
424
425
426
427 apsConfigDirection OBJECT-TYPE
428     SYNTAX      INTEGER { unidirectional(1), bidirectional(2) }
429     MAX-ACCESS  read-create
430     STATUS      current
431     DESCRIPTION
432        "The directional mode of the APS group.
433
434         unidirectional
435
436         The unidirectional mode provides protection in one direction.
437
438         bidirectional
439
440         The bidirectional mode provides protection in both
441         directions.
442
443         This object may not be modified if the associated
444         apsConfigRowStatus object is equal to active(1). "
445     DEFVAL {unidirectional}
446     ::= { apsConfigEntry 5 }
447
448 apsConfigExtraTraffic OBJECT-TYPE
449     SYNTAX      INTEGER { enabled(1), disabled(2) }
450     MAX-ACCESS  read-create
451     STATUS      current
452     DESCRIPTION
453        "This object enables or disables the transfer of extra traffic
454         on the protection channel in a 1:n architecture. This object
455         must be set to disabled if the architecture is 1+1. It may be
456         necessary to disable this in order to interwork with other SONET
457         network elements that don't support extra traffic.
458
459         This object may not be modified if the associated
460         apsConfigRowStatus object is equal to active(1). "
461     DEFVAL { disabled }
462     ::= { apsConfigEntry 6 }
463
464 apsConfigSdBerThreshold OBJECT-TYPE
465     SYNTAX      Integer32 (5..9)
466     MAX-ACCESS  read-create
467     STATUS      current
468     DESCRIPTION
469         "The Signal Degrade Bit Error Rate.
470
471          The negated value of this number is used as the exponent of
472          10 for computing the threshold value for the Bit Error Rate
473          (BER). For example, a value of 5 indicates a BER threshold of
474          10^-5.
475
476
477
478          This object may be modified if the associated
479          apsConfigRowStatus object is equal to active(1)."
480     DEFVAL { 5 }
481     ::= { apsConfigEntry 7 }
482
483 apsConfigSfBerThreshold OBJECT-TYPE
484     SYNTAX      Integer32 (3..5)
485     MAX-ACCESS  read-create
486     STATUS      current
487     DESCRIPTION
488         "The Signal Failure Bit Error Rate.
489
490          The negated value of this number is used as the exponent of
491          10 for computing the threshold value for the Bit Error Rate
492          (BER). For example, a value of 5 indicates a BER threshold of
493          10^-5.
494
495          This object may be modified if the associated
496          apsConfigRowStatus object is equal to active(1)."
497     DEFVAL { 3 }
498     ::= { apsConfigEntry 8 }
499
500 apsConfigWaitToRestore OBJECT-TYPE
501     SYNTAX      Integer32 (0..720)
502     UNITS       "seconds"
503     MAX-ACCESS  read-create
504     STATUS      current
505     DESCRIPTION
506         "The Wait To Restore period in seconds.
507
508          After clearing of a condition that necessitated an
509          automatic switch, the wait to restore period must elapse
510          before reverting. This is intended to avoid rapid switch
511          oscillations.
512
513          GR-253-CORE specifies a Wait To Restore range of 5 to 12
514          minutes. G.783 defines a 5 to 12 minute Wait To Restore
515          range in section 5.4.1.1.3, but also allows for a shorter
516          WTR period in  Table 2-1,
517          WaitToRestore value (MI_WTRtime: 0..(5)..12 minutes).
518
519          This object may not be modified if the associated
520          apsConfigRowStatus object is equal to active(1)."
521     DEFVAL { 300 }
522     ::= { apsConfigEntry 9 }
523
524
525
526
527
528
529 apsConfigCreationTime OBJECT-TYPE
530     SYNTAX      TimeStamp
531     MAX-ACCESS  read-only
532     STATUS      current
533     DESCRIPTION
534         "The value of sysUpTime at the time the row was
535          created"
536     ::= { apsConfigEntry 10 }
537
538 apsConfigStorageType OBJECT-TYPE
539     SYNTAX      StorageType
540     MAX-ACCESS  read-create
541     STATUS      current
542     DESCRIPTION
543         "The storage type for this conceptual row.
544          Conceptual rows having the value 'permanent' need not
545          allow write-access to any columnar objects in the row."
546     DEFVAL      { nonVolatile }
547     ::= { apsConfigEntry 11 }
548
549 --
550 -- APS Status Table
551 --
552 -- This table provides APS group statistics.
553 --
554
555 apsStatusTable OBJECT-TYPE
556     SYNTAX      SEQUENCE OF ApsStatusEntry
557     MAX-ACCESS  not-accessible
558     STATUS      current
559     DESCRIPTION
560         "This table provides status information about APS groups
561          that have been configured on the system."
562     ::= { apsMIBObjects 2 }
563
564 apsStatusEntry OBJECT-TYPE
565     SYNTAX      ApsStatusEntry
566     MAX-ACCESS  not-accessible
567     STATUS      current
568     DESCRIPTION
569         "A conceptual row in the apsStatusTable."
570     AUGMENTS { apsConfigEntry }
571     ::= { apsStatusTable  1 }
572
573 ApsStatusEntry ::= SEQUENCE {
574     apsStatusK1K2Rcv               ApsK1K2,
575     apsStatusK1K2Trans             ApsK1K2,
576     apsStatusCurrent               BITS,
577
578
579
580     apsStatusModeMismatches        Counter32,
581     apsStatusChannelMismatches     Counter32,
582     apsStatusPSBFs                 Counter32,
583     apsStatusFEPLFs                Counter32,
584     apsStatusSwitchedChannel       Integer32,
585     apsStatusDiscontinuityTime     TimeStamp
586 }
587
588 apsStatusK1K2Rcv OBJECT-TYPE
589     SYNTAX      ApsK1K2
590     MAX-ACCESS  read-only
591     STATUS      current
592     DESCRIPTION
593         "The current value of the K1 and K2 bytes received on the
594          protection channel."
595     ::= { apsStatusEntry 1 }
596
597 apsStatusK1K2Trans OBJECT-TYPE
598     SYNTAX        ApsK1K2
599     MAX-ACCESS    read-only
600     STATUS        current
601     DESCRIPTION
602         "The current value of the K1 and K2 bytes transmitted on the
603          protection channel."
604     ::= { apsStatusEntry 2 }
605
606 apsStatusCurrent OBJECT-TYPE
607     SYNTAX      BITS {
608                   modeMismatch(0),
609                   channelMismatch(1),
610                   psbf(2),
611                   feplf(3),
612                   extraTraffic(4)
613                  }
614     MAX-ACCESS  read-only
615     STATUS      current
616     DESCRIPTION
617         "The current status of the APS group.
618
619          modeMismatch
620
621          Modes other than 1+1 unidirectional monitor protection line
622          K2 bit 5, which indicates the architecture and K2 bits
623          6-8, which indicate if the mode is unidirectional or
624          bidirectional. A conflict between the current local mode
625          and the received K2 mode information constitutes a
626          mode mismatch.
627
628
629
630
631          channelMismatch
632
633          This bit indicates a  mismatch between the transmitted K1
634          channel and the received K2 channel has been detected.
635
636          psbf
637
638          This bit indicates a Protection Switch Byte Failure (PSBF) is
639          in effect. This condition occurs when either an inconsistent
640          APS byte or an invalid code is detected. An inconsistent APS
641          byte occurs when no three consecutive K1 bytes of the last 12
642          successive frames are identical, starting with the last frame
643          containing a previously consistent byte. An invalid code occurs
644          when the incoming K1 byte contains an unused code or a code
645          irrelevant for the specific switching operation (e.g., Reverse
646          Request while no switching request is outstanding) in three
647          consecutive frames. An invalid code also occurs when the
648          incoming K1 byte contains an invalid channel number in three
649          consecutive frames.
650
651          feplf
652
653          Modes other than 1+1 unidirectional monitor the K1 byte
654          for Far-End Protection-Line failures. A Far-End
655          Protection-Line defect is declared based on receiving
656          SF on the protection line.
657
658          extraTraffic
659
660          This bit indicates whether extra traffic is currently being
661          accepted on the protection line. "
662     ::= { apsStatusEntry 3 }
663
664 apsStatusModeMismatches OBJECT-TYPE
665     SYNTAX     Counter32
666     MAX-ACCESS read-only
667     STATUS     current
668     DESCRIPTION
669         "A count of Mode Mismatch conditions.
670
671          Discontinuities in the value of this counter can occur at
672          re-initialization of the management system, and at other
673          times as indicated by the value of
674          apsStatusDiscontinuityTime."
675     ::= { apsStatusEntry 4 }
676
677
678
679
680
681
682 apsStatusChannelMismatches OBJECT-TYPE
683     SYNTAX     Counter32
684     MAX-ACCESS read-only
685     STATUS     current
686     DESCRIPTION
687         "A count of Channel Mismatch conditions.
688
689          Discontinuities in the value of this counter can occur at
690          re-initialization of the management system, and at other
691          times as indicated by the value of
692          apsStatusDiscontinuityTime."
693     ::= { apsStatusEntry 5 }
694
695 apsStatusPSBFs OBJECT-TYPE
696     SYNTAX     Counter32
697     MAX-ACCESS read-only
698     STATUS     current
699     DESCRIPTION
700         "A count of Protection Switch Byte Failure conditions.
701          This condition occurs when either an inconsistent APS
702          byte or an invalid code is detected. An inconsistent APS
703          byte occurs when no three consecutive K1 bytes of the last
704          12 successive frames are identical, starting with the last
705          frame containing a previously consistent byte. An invalid
706          code occurs when the incoming K1 byte contains an unused
707          code or a code irrelevant for the specific switching
708          operation (e.g., Reverse Request while no switching request
709          is outstanding) in three consecutive frames. An invalid code
710          also occurs when the incoming K1 byte contains an invalid
711          channel number in three consecutive frames.
712
713          Discontinuities in the value of this counter can occur at
714          re-initialization of the management system, and at other
715          times as indicated by the value of
716          apsStatusDiscontinuityTime."
717     ::= { apsStatusEntry 6 }
718
719 apsStatusFEPLFs OBJECT-TYPE
720     SYNTAX     Counter32
721     MAX-ACCESS read-only
722     STATUS     current
723     DESCRIPTION
724         "A count of Far-End Protection-Line Failure conditions.
725          This condition is declared based on receiving SF on
726          the protection line in the K1 byte.
727
728
729
730
731
732
733          Discontinuities in the value of this counter can occur at
734          re-initialization of the management system, and at other
735          times as indicated by the value of
736          apsStatusDiscontinuityTime."
737     ::= { apsStatusEntry 7 }
738
739 apsStatusSwitchedChannel OBJECT-TYPE
740     SYNTAX     Integer32
741     MAX-ACCESS read-only
742     STATUS     current
743     DESCRIPTION
744         "This field is set to the number of the channel that is
745          currently switched to protection. The value 0 indicates no
746          channel is switched to protection. The values 1-14 indicate
747          that working channel is switched to protection."
748     ::= { apsStatusEntry 8 }
749
750 apsStatusDiscontinuityTime OBJECT-TYPE
751     SYNTAX      TimeStamp
752     MAX-ACCESS  read-only
753     STATUS      current
754     DESCRIPTION
755         "The value of sysUpTime on the most recent occasion at which
756          any one or more of this APS group's counters suffered a
757          discontinuity.  The relevant counters are the specific
758          instances associated with this APS group of any Counter32
759          object contained in apsStatusTable. If no such
760          discontinuities have occurred since the last re-initialization
761          of the local management subsystem, then this object contains
762          a zero value."
763     ::= { apsStatusEntry 9 }
764
765 --
766 -- APS Map Group
767 --
768 -- Lists the SONET LTE interfaces that may be used to create APS groups.
769 --
770
771 apsMap      OBJECT IDENTIFIER ::= { apsMIBObjects 3 }
772
773 apsChanLTEs OBJECT-TYPE
774     SYNTAX      Gauge32
775     MAX-ACCESS  read-only
776     STATUS      current
777     DESCRIPTION
778         "The count of SONET LTE interfaces on the system.
779          Each interface that is included has an ifType value of
780          sonet(39)."
781
782
783
784     ::= { apsMap 1 }
785
786 apsMapTable OBJECT-TYPE
787     SYNTAX      SEQUENCE OF ApsMapEntry
788     MAX-ACCESS  not-accessible
789     STATUS      current
790     DESCRIPTION
791         "This table lists the SONET LTE interfaces on the system.
792          Each interface that is listed has an ifType value of
793          sonet(39)."
794     ::= { apsMap 2 }
795
796 apsMapEntry OBJECT-TYPE
797     SYNTAX      ApsMapEntry
798     MAX-ACCESS  not-accessible
799     STATUS      current
800     DESCRIPTION
801         "A conceptual row in the apsMapTable."
802     INDEX { ifIndex }
803     ::= { apsMapTable  1 }
804
805 ApsMapEntry ::= SEQUENCE {
806     apsMapGroupName             SnmpAdminString,
807     apsMapChanNumber            Integer32
808 }
809
810 apsMapGroupName OBJECT-TYPE
811     SYNTAX      SnmpAdminString (SIZE (0..32))
812     MAX-ACCESS  read-only
813     STATUS      current
814     DESCRIPTION
815         "A textual name for the APS group which this channel is
816          included in. If the channel is not part of an APS group
817          this value is set to a string of size 0.
818
819          When an instance of apsChanConfigIfIndex is set equal to an
820          instance of ifIndex that has an ifType value of sonet(39),
821          apsMapGroupName is set equal to the corresponding value of
822          apsChanConfigGroupName.
823
824          If an instance of ifIndex that has an ifType value of
825          sonet(39) ceases to be equal to an instance of
826          apsChanConfigIfIndex, either because of a change in the value
827          of apsChanConfigIfIndex, or because of row deletion in the
828          ApsChanConfigTable, apsMapGroupName is set to a string of
829          size 0."
830     ::= { apsMapEntry 2 }
831
832
833
834
835 apsMapChanNumber OBJECT-TYPE
836     SYNTAX     Integer32 (-1..14)
837     MAX-ACCESS read-only
838     STATUS     current
839     DESCRIPTION
840         "This field is set to a unique channel number within an APS
841          group.  The value 0 indicates the null channel. The values
842          1-14 define a working channel. If the SONET LTE is not part
843          of an APS group this value is set to -1.
844
845          When an instance of apsChanConfigIfIndex is set equal to an
846          instance of ifIndex that has an  ifType value of sonet(39),
847          apsMapChanNumber is set equal to the corresponding value of
848          apsChanConfigNumber.
849
850          If an instance of ifIndex that has an  ifType value of
851          sonet(39) ceases to be equal to an instance of
852          apsChanConfigIfIndex, either because of a change in the
853          value of apsChanConfigIfIndex, or because of row deletion
854          in the ApsChanConfigTable, apsMapChanNumber is set to -1."
855     ::= { apsMapEntry 3 }
856
857 --
858 -- APS Channel Configuration Table
859 --
860 -- This table supports the addition, configuration and deletion of
861 -- channels in APS groups.
862 --
863
864 apsChanConfigTable OBJECT-TYPE
865     SYNTAX      SEQUENCE OF ApsChanConfigEntry
866     MAX-ACCESS  not-accessible
867     STATUS      current
868     DESCRIPTION
869         "This table lists the APS channels that have been configured
870          in APS groups."
871     ::= { apsMIBObjects 4 }
872
873 apsChanConfigEntry OBJECT-TYPE
874     SYNTAX      ApsChanConfigEntry
875     MAX-ACCESS  not-accessible
876     STATUS      current
877     DESCRIPTION
878         "A conceptual row in the apsChanConfigTable."
879     INDEX {apsChanConfigGroupName, apsChanConfigNumber}
880     ::= { apsChanConfigTable  1 }
881
882
883
884
885
886 ApsChanConfigEntry ::= SEQUENCE {
887     apsChanConfigGroupName             SnmpAdminString,
888     apsChanConfigNumber                Integer32,
889     apsChanConfigRowStatus             RowStatus,
890     apsChanConfigIfIndex               InterfaceIndex,
891     apsChanConfigPriority              INTEGER,
892     apsChanConfigStorageType           StorageType
893 }
894
895 apsChanConfigGroupName OBJECT-TYPE
896     SYNTAX      SnmpAdminString (SIZE (1..32))
897     MAX-ACCESS  not-accessible
898     STATUS      current
899     DESCRIPTION
900         "A textual name for the APS group which this channel is
901          included in."
902     ::= { apsChanConfigEntry 1 }
903
904 apsChanConfigNumber OBJECT-TYPE
905     SYNTAX     Integer32 (0..14)
906     MAX-ACCESS not-accessible
907     STATUS     current
908     DESCRIPTION
909         "This field is set to a unique channel number within an APS
910          group.  The value 0 indicates the null channel.  The values
911          1-14 define a working channel.
912
913          This field must be assigned a unique number within the group."
914     ::= { apsChanConfigEntry 2 }
915
916 apsChanConfigRowStatus OBJECT-TYPE
917     SYNTAX      RowStatus
918     MAX-ACCESS  read-create
919     STATUS      current
920     DESCRIPTION
921         "The status of this APS channel entry.
922
923          An entry may not exist in the active state unless all
924          objects in the entry have an appropriate value.
925
926          A row in the apsChanConfigTable may not be created,
927          deleted, set to notInService or otherwise modified
928          if the apsChanConfigGroupName value is equal to an
929          apsConfigName value and the associated apsConfigRowStatus
930          object is equal to active. However, if the apsConfigRowStatus
931          object is equal to notInService, a row may be created, deleted
932          or modified. In other words, a channel may not be added,
933          deleted or modified if the group is active.
934
935
936
937          A row may be created with an apsChanConfigGroupName value
938          that is not equal to any existing instance of apsConfigName.
939          This action is the initial step in adding a SONET LTE to a
940          new APS group.
941
942          If this object is set to destroy, the associated instance
943          of apsMapGroupName will be set to a string of size 0 and
944          the apsMapChanNumber will be set to -1. The channel status
945          entry will also be deleted by this action.
946
947          apsChanConfigNumber must be set to a unique channel number
948          within the APS group. The value 0 indicates the null channel.
949          The values 1-14 define a working channel. When an attempt is
950          made to set the  corresponding apsConfigRowStatus field to
951          active the apsChanConfigNumber values of all entries with equal
952          apsChanConfigGroupName fields must represent a set of
953          consecutive integer values beginning with 0 or 1, depending on
954          the architecture of the group, and ending with n, where n is
955          greater than or equal to 1 and less than or equal to 14.
956          Otherwise, the error inconsistentValue is returned to the
957          apsConfigRowStatus set attempt."
958     ::= { apsChanConfigEntry 3 }
959
960 apsChanConfigIfIndex OBJECT-TYPE
961     SYNTAX     InterfaceIndex
962     MAX-ACCESS read-create
963     STATUS     current
964     DESCRIPTION
965         "The Interface Index assigned to a SONET LTE. This is an
966          interface with ifType sonet(39). The value of this object
967          must be unique among all instances of apsChanConfigIfIndex.
968          In other words, a particular SONET LTE can only be configured
969          in one APS group.
970
971          This object cannot be set if the apsChanConfigGroupName
972          instance associated with this row is equal to an instance of
973          apsConfigName and the corresponding apsConfigRowStatus object
974          is set to active.  In other words this value cannot be changed
975          if the APS group is active. However, this value may be changed
976          if the apsConfigRowStatus value is equal to notInService."
977     ::= { apsChanConfigEntry 4 }
978
979 apsChanConfigPriority OBJECT-TYPE
980     SYNTAX     INTEGER {low(1), high(2)}
981     MAX-ACCESS read-create
982     STATUS     current
983     DESCRIPTION
984         "The priority of the channel.
985
986
987
988          This field determines whether high or low priority
989          SD and SF codes are used in K1 requests.
990
991          This field is only applicable if the channel is to be included
992          in a group using the 1:n architecture. It is not applicable if
993          the channel is to be included in a group using the 1+1
994          architecture, and is ignored in that case.
995
996          This object cannot be set if the apsChanConfigGroupName
997          instance associated with this row is equal to an instance of
998          apsConfigName and the corresponding apsConfigRowStatus object
999          is set to active.  In other words this value cannot be changed
1000          if the APS group is active.  However, this value may be changed
1001          if the apsConfigRowStatus value is equal to notInService."
1002     DEFVAL { low }
1003     ::= { apsChanConfigEntry 5 }
1004
1005 apsChanConfigStorageType OBJECT-TYPE
1006     SYNTAX      StorageType
1007     MAX-ACCESS  read-create
1008     STATUS      current
1009     DESCRIPTION
1010         "The storage type for this conceptual row.
1011          Conceptual rows having the value 'permanent' need not
1012          allow write-access to any columnar objects in the row."
1013     DEFVAL { nonVolatile }
1014     ::= { apsChanConfigEntry 6 }
1015
1016 --
1017 -- APS Command Table
1018 --
1019 -- This table provides the ability to initiate APS commands.
1020 --
1021
1022 apsCommandTable OBJECT-TYPE
1023     SYNTAX      SEQUENCE OF ApsCommandEntry
1024     MAX-ACCESS  not-accessible
1025     STATUS      current
1026     DESCRIPTION
1027         "This table allows commands to be sent to configured APS
1028           groups."
1029     ::= { apsMIBObjects 5 }
1030
1031 apsCommandEntry OBJECT-TYPE
1032     SYNTAX      ApsCommandEntry
1033     MAX-ACCESS  not-accessible
1034     STATUS      current
1035     DESCRIPTION
1036
1037
1038
1039         "A conceptual row in the apsCommandTable. This row exists only
1040          if the associated apsConfigEntry is active."
1041     INDEX {apsChanConfigGroupName, apsChanConfigNumber}
1042     ::= { apsCommandTable  1 }
1043
1044 ApsCommandEntry ::= SEQUENCE {
1045     apsCommandSwitch         ApsSwitchCommand,
1046     apsCommandControl        ApsControlCommand
1047 }
1048
1049 apsCommandSwitch OBJECT-TYPE
1050     SYNTAX      ApsSwitchCommand
1051     MAX-ACCESS  read-write
1052     STATUS      current
1053     DESCRIPTION
1054         "Allows the initiation of an APS switch command on the
1055          APS group and channel specified by the index values.
1056
1057          When read this object returns the last command written
1058          or noCmd if no command has been written to this
1059          channel since initialization. The return of the last command
1060          written does not imply that this command is currently in
1061          effect.  This request may have been preempted by a higher
1062          priority local or remote request. In order to determine the
1063          current state of the APS group it is necessary to read
1064          the objects apsStatusK1K2Rcv and apsStatusK1K2Trans.
1065
1066          The value lockoutOfProtection should only be applied to the
1067          protection line channel since that switch command prevents any
1068          of the working channels from switching to the protection line.
1069          Following the same logic, forcedSwitchProtectToWork and
1070          manualSwitchProtectToWork should only be applied to the
1071          protection line channel.
1072
1073          forcedSwitchWorkToProtect and manualSwitchWorkToProtect
1074          should only be applied to a working channel."
1075     ::= { apsCommandEntry 1 }
1076
1077 apsCommandControl OBJECT-TYPE
1078     SYNTAX      ApsControlCommand
1079     MAX-ACCESS  read-write
1080     STATUS      current
1081     DESCRIPTION
1082         "Allows the initiation of an APS control command on the
1083          APS group and channel specified by the index values.
1084
1085
1086
1087
1088
1089
1090          When read this object returns the last command written or
1091          noCmd if no command has been written to this channel since
1092          initialization.
1093
1094          This object does not apply to the protection line."
1095     ::= { apsCommandEntry 2 }
1096
1097 --
1098 -- APS Channel Status Table
1099 --
1100 -- This table provides APS channel statistics.
1101 --
1102
1103 apsChanStatusTable OBJECT-TYPE
1104     SYNTAX      SEQUENCE OF ApsChanStatusEntry
1105     MAX-ACCESS  not-accessible
1106     STATUS      current
1107     DESCRIPTION
1108         "This table contains status information for all SONET LTE
1109          interfaces that are included in APS groups."
1110     ::= { apsMIBObjects 6 }
1111
1112 apsChanStatusEntry OBJECT-TYPE
1113     SYNTAX      ApsChanStatusEntry
1114     MAX-ACCESS  not-accessible
1115     STATUS      current
1116     DESCRIPTION
1117         "A conceptual row in the apsChanStatusTable."
1118     AUGMENTS { apsChanConfigEntry }
1119     ::= { apsChanStatusTable  1 }
1120
1121 ApsChanStatusEntry ::= SEQUENCE {
1122     apsChanStatusCurrent               BITS,
1123     apsChanStatusSignalDegrades        Counter32,
1124     apsChanStatusSignalFailures        Counter32,
1125     apsChanStatusSwitchovers           Counter32,
1126     apsChanStatusLastSwitchover        TimeStamp,
1127     apsChanStatusSwitchoverSeconds     Counter32,
1128     apsChanStatusDiscontinuityTime     TimeStamp
1129 }
1130
1131 apsChanStatusCurrent OBJECT-TYPE
1132     SYNTAX     BITS {
1133                lockedOut(0),
1134                sd(1),
1135                sf(2),
1136                switched(3),
1137                wtr(4)
1138
1139
1140
1141             }
1142     MAX-ACCESS read-only
1143     STATUS     current
1144     DESCRIPTION
1145         "Indicates the current state of the port.
1146
1147          lockedOut
1148
1149          This bit, when applied to a working channel, indicates that
1150          the channel is prevented from switching to the protection
1151          line.  When applied to the null channel, this bit indicates
1152          that no working channel may switch to the protection line.
1153
1154          sd
1155
1156          A signal degrade condition is in effect.
1157
1158          sf
1159
1160          A signal failure condition is in effect.
1161
1162          switched
1163
1164          The switched bit is applied to a working channel if that
1165          channel is currently switched to the protection line.
1166
1167          wtr
1168
1169          A Wait-to-Restore state is in effect."
1170     ::= { apsChanStatusEntry 1 }
1171
1172 apsChanStatusSignalDegrades OBJECT-TYPE
1173     SYNTAX     Counter32
1174     MAX-ACCESS read-only
1175     STATUS     current
1176     DESCRIPTION
1177         "A count of Signal Degrade conditions. This condition
1178          occurs when the line Bit Error Rate exceeds the currently
1179          configured value of the relevant instance of
1180          apsConfigSdBerThreshold.
1181
1182          Discontinuities in the value of this counter can occur at
1183          re-initialization of the management system, and at other
1184          times as indicated by the value of
1185          apsChanStatusDiscontinuityTime."
1186
1187     ::= { apsChanStatusEntry 2 }
1188
1189
1190
1191
1192 apsChanStatusSignalFailures OBJECT-TYPE
1193     SYNTAX     Counter32
1194     MAX-ACCESS read-only
1195     STATUS     current
1196     DESCRIPTION
1197         "A count of Signal Failure conditions that have been
1198          detected on the incoming signal. This condition occurs
1199          when a loss of signal, loss of frame, AIS-L or a Line
1200          bit error rate exceeding the currently configured value of
1201          the relevant instance of apsConfigSfBerThreshold.
1202
1203          Discontinuities in the value of this counter can occur at
1204          re-initialization of the management system, and at other
1205          times as indicated by the value of
1206          apsChanStatusDiscontinuityTime."
1207
1208     ::= { apsChanStatusEntry 3 }
1209
1210 apsChanStatusSwitchovers OBJECT-TYPE
1211     SYNTAX     Counter32
1212     MAX-ACCESS read-only
1213     STATUS     current
1214     DESCRIPTION
1215         "When queried with index value apsChanConfigNumber other than
1216          0, this object will return the number of times this channel
1217          has switched to the protection line.
1218
1219          When queried with index value apsChanConfigNumber set to 0,
1220          which is the protection line, this object will return the
1221          number of times that any working channel has been switched
1222          back to the working line from this protection line.
1223
1224          Discontinuities in the value of this counter can occur at
1225          re-initialization of the management system, and at other
1226          times as indicated by the value of
1227          apsChanStatusDiscontinuityTime."
1228
1229     ::= { apsChanStatusEntry 4 }
1230
1231 apsChanStatusLastSwitchover OBJECT-TYPE
1232     SYNTAX     TimeStamp
1233     MAX-ACCESS read-only
1234     STATUS     current
1235     DESCRIPTION
1236         "When queried with index value apsChanConfigNumber other than
1237          0, this object will return the value of sysUpTime when this
1238          channel last completed a switch to the protection line. If
1239
1240
1241
1242
1243          this channel has never switched to the protection line, the
1244          value 0 will be returned.
1245
1246          When queried with index value apsChanConfigNumber set to 0,
1247          which is the protection line, this object will return the
1248          value of sysUpTime the last time that a working channel was
1249          switched back to the working line from this protection line.
1250          If no working channel has ever switched back to the working
1251          line from this protection line, the value 0 will be returned."
1252
1253     ::= { apsChanStatusEntry 5 }
1254
1255 apsChanStatusSwitchoverSeconds OBJECT-TYPE
1256     SYNTAX     Counter32
1257     MAX-ACCESS read-only
1258     STATUS     current
1259     DESCRIPTION
1260         "The cumulative Protection Switching Duration (PSD) time in
1261          seconds. For a working channel, this is the cumulative number
1262          of seconds that service was carried on the protection line.
1263          For the protection line, this is the cumulative number of
1264          seconds that the protection line has been used to carry any
1265          working channel traffic. This information is only valid if
1266          revertive switching is enabled. The value 0 will be returned
1267          otherwise.
1268
1269          Discontinuities in the value of this counter can occur at
1270          re-initialization of the management system, and at other
1271          times as indicated by the value of
1272          apsChanStatusDiscontinuityTime. For example, if the value
1273          of an instance of apsChanStatusSwitchoverSeconds changes
1274          from a non-zero value to zero due to revertive switching
1275          being disabled, it is expected that the corresponding
1276          value of apsChanStatusDiscontinuityTime will be updated
1277          to reflect the time of the configuration change.
1278          "
1279     ::= { apsChanStatusEntry 6 }
1280
1281 apsChanStatusDiscontinuityTime OBJECT-TYPE
1282     SYNTAX      TimeStamp
1283     MAX-ACCESS  read-only
1284     STATUS      current
1285     DESCRIPTION
1286         "The value of sysUpTime on the most recent occasion at which
1287          any one or more of this channel's counters suffered a
1288          discontinuity.  The relevant counters are the specific
1289          instances associated with this channel of any Counter32
1290          object contained in apsChanStatusTable. If no such
1291
1292
1293
1294          discontinuities have occurred since the last re-initialization
1295          of the local management subsystem, then this object contains
1296          a zero value."
1297     ::= { apsChanStatusEntry 7 }
1298
1299 apsNotificationEnable OBJECT-TYPE
1300     SYNTAX     BITS {
1301                switchover(0),
1302                modeMismatch(1),
1303                channelMismatch(2),
1304                psbf(3),
1305                feplf(4)
1306             }
1307     MAX-ACCESS read-write
1308     STATUS     current
1309     DESCRIPTION
1310         "Provides the ability to enable and disable notifications
1311          defined in this MIB.
1312
1313          switchover
1314
1315          Indicates  apsEventSwitchover notifications
1316          should be generated.
1317
1318          modeMismatch
1319
1320          Indicates  apsEventModeMismatch notifications
1321          should be generated.
1322
1323          channelMismatch
1324
1325          Indicates  apsEventChannelMismatch notifications
1326          should be generated.
1327
1328          psbf
1329
1330          Indicates  apsEventPSBF notifications
1331          should be generated.
1332
1333          feplf
1334
1335          Indicates  apsEventFEPLF notifications
1336          should be generated. "
1337     DEFVAL { { } }
1338     ::= { apsMIBObjects 7 }
1339
1340 --
1341 -- APS EVENTS
1342
1343
1344
1345 --
1346
1347 apsNotificationsPrefix OBJECT IDENTIFIER
1348         ::= { apsMIBNotifications 0 }
1349
1350 apsEventSwitchover NOTIFICATION-TYPE
1351     OBJECTS { apsChanStatusSwitchovers, apsChanStatusCurrent }
1352     STATUS  current
1353     DESCRIPTION
1354         "An apsEventSwitchover notification is sent when the
1355         value of an instance of apsChanStatusSwitchovers increments."
1356     ::= { apsNotificationsPrefix 1 }
1357
1358 apsEventModeMismatch NOTIFICATION-TYPE
1359     OBJECTS { apsStatusModeMismatches, apsStatusCurrent }
1360     STATUS  current
1361     DESCRIPTION
1362         "An apsEventModeMismatch notification is sent when the
1363         value of an instance of apsStatusModeMismatches increments."
1364     ::= { apsNotificationsPrefix 2 }
1365
1366 apsEventChannelMismatch NOTIFICATION-TYPE
1367     OBJECTS { apsStatusChannelMismatches, apsStatusCurrent }
1368     STATUS  current
1369     DESCRIPTION
1370         "An apsEventChannelMismatch notification is sent when the
1371         value of an instance of apsStatusChannelMismatches increments."
1372     ::= { apsNotificationsPrefix 3 }
1373
1374 apsEventPSBF NOTIFICATION-TYPE
1375     OBJECTS { apsStatusPSBFs, apsStatusCurrent }
1376     STATUS  current
1377     DESCRIPTION
1378         "An apsEventPSBF notification is sent when the
1379         value of an instance of apsStatusPSBFs increments."
1380     ::= { apsNotificationsPrefix 4 }
1381
1382 apsEventFEPLF NOTIFICATION-TYPE
1383     OBJECTS { apsStatusFEPLFs, apsStatusCurrent }
1384     STATUS  current
1385     DESCRIPTION
1386         "An apsEventFEPLFs notification is sent when the
1387         value of an instance of apsStatusFEPLFs increments."
1388     ::= { apsNotificationsPrefix 5 }
1389
1390 -- conformance information
1391
1392
1393
1394
1395
1396 apsGroups      OBJECT IDENTIFIER ::= { apsMIBConformance 1 }
1397 apsCompliances OBJECT IDENTIFIER ::= { apsMIBConformance 2 }
1398
1399 apsFullCompliance MODULE-COMPLIANCE
1400     STATUS  current
1401     DESCRIPTION
1402         "When this MIB is implemented with support for read-create, then
1403         such an implementation can claim read/write compliance. Linear
1404         APS groups can then be both monitored and configured with this
1405         MIB.
1406
1407         Note that An agent is not required to process SNMP Set Requests
1408         that affect multiple control objects within this MIB. This is
1409         intended to simplify the processing of Set Requests for the
1410         various control tables by eliminating the possibility that a
1411         single Set PDU will contain multiple varbinds which are in
1412         conflict. "
1413
1414     MODULE
1415     MANDATORY-GROUPS { apsConfigGeneral, apsStatusGeneral,
1416                        apsChanGeneral }
1417
1418         OBJECT  apsConfigRowStatus
1419         SYNTAX INTEGER { active(1) }
1420         WRITE-SYNTAX INTEGER { createAndGo(4), destroy(6) }
1421         DESCRIPTION
1422             "Support for createAndWait and notInService is not
1423              required."
1424
1425         OBJECT  apsChanConfigRowStatus
1426         SYNTAX INTEGER { active(1) }
1427         WRITE-SYNTAX INTEGER { createAndGo(4), destroy(6) }
1428         DESCRIPTION
1429             "Support for createAndWait and notInService is not
1430              required."
1431
1432         GROUP       apsConfigWtr
1433         DESCRIPTION
1434             "Implementation of this group is optional for all
1435              linear APS implementations. The information is
1436              applicable to groups supporting a configurable
1437              WTR period."
1438
1439         GROUP       apsCommandOnePlusOne
1440         DESCRIPTION
1441             "Implementation of this group is optional for all
1442              linear APS implementations. The information is
1443              applicable to groups implementing the linear
1444
1445
1446
1447              APS 1+1 architecture and supporting set operations."
1448
1449        GROUP       apsCommandOneToN
1450         DESCRIPTION
1451             "Implementation of this group is optional for all
1452              linear APS implementations. The information is
1453              applicable to groups implementing the linear
1454              APS 1:n architecture and supporting set operations."
1455
1456        GROUP       apsChanOneToN
1457         DESCRIPTION
1458             "Implementation of this group is optional for all
1459              linear APS implementations. The information is
1460              applicable to groups implementing the linear
1461              APS 1:n architecture."
1462
1463        GROUP       apsTotalsGroup
1464         DESCRIPTION
1465             "Implementation of this group is optional for all
1466              linear APS implementations."
1467
1468        GROUP       apsMapGroup
1469         DESCRIPTION
1470             "Implementation of this group is optional for all
1471              linear APS implementations."
1472
1473        GROUP       apsEventGroup
1474         DESCRIPTION
1475             "Implementation of this group is optional for all
1476              linear APS implementations."
1477
1478     ::= { apsCompliances 1 }
1479
1480 --
1481 -- Read-Only Compliance
1482 --
1483
1484 apsReadOnlyCompliance MODULE-COMPLIANCE
1485     STATUS  current
1486     DESCRIPTION
1487         "When this MIB is implemented without support for read-create
1488          (i.e. in read-only mode), then that implementation can claim
1489          read-only compliance. In that case, linear APS groups can be
1490          monitored but cannot be configured with this MIB."
1491
1492     MODULE
1493     MANDATORY-GROUPS { apsConfigGeneral, apsStatusGeneral,
1494                        apsChanGeneral }
1495
1496
1497
1498         OBJECT  apsConfigMode
1499         MIN-ACCESS  read-only
1500         DESCRIPTION
1501             "Write access is not required."
1502
1503         OBJECT  apsConfigRevert
1504         MIN-ACCESS  read-only
1505         DESCRIPTION
1506             "Write access is not required."
1507
1508         OBJECT  apsConfigDirection
1509         MIN-ACCESS  read-only
1510         DESCRIPTION
1511             "Write access is not required."
1512
1513         OBJECT  apsConfigExtraTraffic
1514         MIN-ACCESS  read-only
1515         DESCRIPTION
1516             "Write access is not required."
1517
1518         OBJECT  apsConfigSdBerThreshold
1519         MIN-ACCESS  read-only
1520         DESCRIPTION
1521             "Write access is not required."
1522
1523         OBJECT  apsConfigSfBerThreshold
1524         MIN-ACCESS  read-only
1525         DESCRIPTION
1526             "Write access is not required."
1527
1528         OBJECT  apsConfigWaitToRestore
1529         MIN-ACCESS  read-only
1530         DESCRIPTION
1531             "Write access is not required."
1532
1533         OBJECT  apsConfigRowStatus
1534         SYNTAX  INTEGER { active(1) }
1535         MIN-ACCESS  read-only
1536         DESCRIPTION
1537             "Write access is not required, and active is the only status
1538              that needs to be supported."
1539
1540         OBJECT  apsConfigStorageType
1541         MIN-ACCESS  read-only
1542         DESCRIPTION
1543             "Write access is not required."
1544
1545         OBJECT  apsChanConfigIfIndex
1546
1547
1548
1549         MIN-ACCESS  read-only
1550         DESCRIPTION
1551             "Write access is not required."
1552
1553         OBJECT  apsChanConfigPriority
1554         MIN-ACCESS  read-only
1555         DESCRIPTION
1556             "Write access is not required."
1557
1558         OBJECT  apsChanConfigRowStatus
1559         SYNTAX  INTEGER { active(1) }
1560         MIN-ACCESS  read-only
1561         DESCRIPTION
1562             "Write access is not required, and active is the only status
1563              that needs to be supported."
1564
1565         OBJECT  apsChanConfigStorageType
1566         MIN-ACCESS  read-only
1567         DESCRIPTION
1568             "Write access is not required."
1569
1570         OBJECT  apsNotificationEnable
1571         MIN-ACCESS  read-only
1572         DESCRIPTION
1573             "Write access is not required."
1574
1575         GROUP       apsConfigWtr
1576         DESCRIPTION
1577             "Implementation of this group is optional for all
1578              linear APS implementations. The information is
1579              applicable to groups supporting a configurable
1580              WTR period."
1581
1582         GROUP       apsCommandOnePlusOne
1583         DESCRIPTION
1584             "Implementation of this group is optional for all
1585              linear APS implementations. The information is
1586              applicable to groups implementing the linear
1587              APS 1+1 architecture and supporting set operations."
1588
1589        GROUP       apsCommandOneToN
1590         DESCRIPTION
1591             "Implementation of this group is optional for all
1592              linear APS implementations. The information is
1593              applicable to groups implementing the linear
1594              APS 1:n architecture and supporting set operations."
1595
1596        GROUP       apsChanOneToN
1597
1598
1599
1600         DESCRIPTION
1601             "Implementation of this group is optional for all
1602              linear APS implementations. The information is
1603              applicable to groups implementing the linear
1604              APS 1:n architecture."
1605
1606        GROUP       apsTotalsGroup
1607         DESCRIPTION
1608             "Implementation of this group is optional for all
1609              linear APS implementations."
1610
1611        GROUP       apsMapGroup
1612         DESCRIPTION
1613             "Implementation of this group is optional for all
1614              linear APS implementations."
1615
1616        GROUP       apsEventGroup
1617         DESCRIPTION
1618             "Implementation of this group is optional for all
1619              linear APS implementations."
1620
1621     ::= { apsCompliances 2 }
1622
1623 -- units of conformance
1624
1625 apsConfigGeneral    OBJECT-GROUP
1626     OBJECTS
1627     {
1628         apsConfigMode,
1629         apsConfigRevert,
1630         apsConfigDirection,
1631         apsConfigExtraTraffic,
1632         apsConfigSdBerThreshold,
1633         apsConfigSfBerThreshold,
1634         apsConfigCreationTime,
1635         apsConfigRowStatus,
1636         apsConfigStorageType,
1637         apsNotificationEnable
1638     }
1639     STATUS  current
1640     DESCRIPTION
1641         "A collection of apsConfigTable objects providing configuration
1642          information applicable to all linear APS groups."
1643     ::= { apsGroups 1 }
1644
1645 apsConfigWtr    OBJECT-GROUP
1646     OBJECTS
1647     {
1648
1649
1650
1651         apsConfigWaitToRestore
1652     }
1653     STATUS  current
1654     DESCRIPTION
1655         "The apsConfigTable object that provides information which is
1656          applicable to groups supporting a configurable WTR period."
1657     ::= { apsGroups 2 }
1658
1659 --  If set operations are not supported neither of the following two
1660 --  groups are implemented. If sets are supported only one of these
1661 --  groups is implemented for a linear APS group instance.
1662
1663 apsCommandOnePlusOne    OBJECT-GROUP
1664     OBJECTS
1665     {
1666         apsCommandSwitch
1667     }
1668     STATUS  current
1669     DESCRIPTION
1670         "The  apsCommandTable object which is applicable to groups
1671          implementing the linear APS 1+1 architecture. Also, set
1672          operations must be supported."
1673     ::= { apsGroups 3 }
1674
1675 apsCommandOneToN    OBJECT-GROUP
1676     OBJECTS
1677     {
1678         apsCommandSwitch,
1679         apsCommandControl
1680     }
1681     STATUS  current
1682     DESCRIPTION
1683         "A collection of apsCommandTable objects which are applicable to
1684          groups implementing the linear APS 1:n architecture. Also, set
1685          operations must be supported."
1686     ::= { apsGroups 4 }
1687
1688 apsStatusGeneral    OBJECT-GROUP
1689     OBJECTS
1690     {
1691         apsStatusK1K2Rcv,
1692         apsStatusK1K2Trans,
1693         apsStatusCurrent,
1694         apsStatusModeMismatches,
1695         apsStatusChannelMismatches,
1696         apsStatusPSBFs,
1697         apsStatusFEPLFs,
1698         apsStatusSwitchedChannel,
1699
1700
1701
1702         apsStatusDiscontinuityTime
1703     }
1704     STATUS  current
1705     DESCRIPTION
1706         "A collection of apsStatusTable objects providing status
1707          information applicable to all linear APS groups."
1708     ::= { apsGroups 5 }
1709
1710 apsChanGeneral    OBJECT-GROUP
1711     OBJECTS
1712     {
1713         apsChanConfigIfIndex,
1714         apsChanConfigRowStatus,
1715         apsChanConfigStorageType,
1716         apsChanStatusCurrent,
1717         apsChanStatusSignalDegrades,
1718         apsChanStatusSignalFailures,
1719         apsChanStatusSwitchovers,
1720         apsChanStatusLastSwitchover,
1721         apsChanStatusSwitchoverSeconds,
1722         apsChanStatusDiscontinuityTime
1723    }
1724     STATUS  current
1725     DESCRIPTION
1726         "A collection of channel objects providing information
1727          applicable to all linear APS channels."
1728     ::= { apsGroups 6 }
1729
1730 apsChanOneToN    OBJECT-GROUP
1731     OBJECTS
1732     {
1733         apsChanConfigPriority
1734     }
1735     STATUS  current
1736     DESCRIPTION
1737         "The apsChanConfigTable object that provides information which
1738          is only applicable to groups implementing the linear APS 1:n
1739          architecture."
1740     ::= { apsGroups 7 }
1741
1742 apsTotalsGroup OBJECT-GROUP
1743     OBJECTS
1744     {
1745         apsConfigGroups,
1746         apsChanLTEs
1747     }
1748     STATUS  current
1749     DESCRIPTION
1750
1751
1752
1753         "A collection of objects providing optional counts of configured
1754          APS groups and SONET LTE interfaces."
1755     ::= { apsGroups 8 }
1756
1757 apsMapGroup OBJECT-GROUP
1758     OBJECTS
1759     {
1760         apsMapGroupName,
1761         apsMapChanNumber
1762     }
1763     STATUS  current
1764     DESCRIPTION
1765         "A collection of apsMapTable objects providing a mapping
1766          from sonet(39) InterfaceIndex to group name and channel
1767          number for assigned APS channels and a list of unassigned
1768          sonet(39) interfaces."
1769     ::= { apsGroups 9 }
1770
1771 apsEventGroup NOTIFICATION-GROUP
1772     NOTIFICATIONS {apsEventSwitchover, apsEventModeMismatch,
1773                    apsEventChannelMismatch, apsEventPSBF,
1774                    apsEventFEPLF }
1775     STATUS    current
1776     DESCRIPTION
1777         "A collection of SONET linear APS notifications."
1778     ::= { apsGroups 10 }
1779
1780 END