1-- ********************************************************************
2-- CISCO-CABLE-AVAILABILITY-MIB.my:
3--       Cisco Cable Availability MIB file for HCCP
4--
5-- May 2001, Sunethra Jawahar
6--
7-- Copyright (c) 2001, 2002 by Cisco Systems, Inc.
8-- All rights reserved.
9-- ********************************************************************
10
11--
12-- This is the MIB module for management of Hot Standby
13-- Connection to Connection Protocol (HCCP) features. HCCP is
14-- Cisco proprietary solution for High System Availability
15-- for Cable Modem Termination Systems(CMTS).
16--
17-- The HCCP protocol is primarily responsible for failure
18-- detection and to initiate switchover from one CMTS to
19-- another.
20--
21-- The CMTS protection is at RF MAC domain level,
22-- where protecting and working CMTS cable interfaces operate
23-- on the same downstream and upstream frequency.
24--
25-- HCCP Terminology:
26-- HCCP group : A set of RF MAC interfaces which communicate using
27--              HCCP messaging.
28--
29-- HCCP member :Each RF MAC interface configured for HCCP.
30--
31-- Protect :    A member in a HCCP group which acts as the
32--              hot standby and protecting other members.
33--
34-- Working :    The member in a HCCP group that is being
35--              protected.
36--
37-- Thus a 'HCCP group' consists of 'HCCP members' which are
38-- RF MAC interfaces configured to function as  'Protect' or
39-- 'Working'.
40
41CISCO-CABLE-AVAILABILITY-MIB DEFINITIONS ::= BEGIN
42
43IMPORTS
44        MODULE-IDENTITY,
45        NOTIFICATION-TYPE,
46        OBJECT-TYPE,
47        Integer32,
48        Counter32
49                FROM SNMPv2-SMI
50        TruthValue,
51        DisplayString
52                FROM SNMPv2-TC
53        SnmpAdminString
54           FROM SNMP-FRAMEWORK-MIB
55        InetAddress,
56        InetAddressType
57                FROM INET-ADDRESS-MIB
58        OBJECT-GROUP,
59        MODULE-COMPLIANCE,
60        NOTIFICATION-GROUP
61                FROM SNMPv2-CONF
62        ifIndex
63                FROM IF-MIB
64        ciscoMgmt
65                FROM CISCO-SMI;
66
67ciscoCableAvailabilityMIB MODULE-IDENTITY
68        LAST-UPDATED    "200302200000Z"
69        ORGANIZATION    "Cisco Systems, Inc."
70        CONTACT-INFO
71            "        Cisco Systems
72                     Customer Service
73
74             Postal: Cisco Systems
75                     170 West Tasman Drive
76                     San Jose, CA 95134
77                     U.S.A.
78             Phone:  +1 800 553-NETS
79             E-mail: cs-ubr@cisco.com"
80
81        DESCRIPTION
82            "This is the MIB module for management of Hot Standby
83            Connection to Connection Protocol (HCCP) features. HCCP is
84            a Cisco proprietary solution for High System Availability
85            for Cable Modem Termination Systems (CMTS).
86
87            The HCCP protocol is primarily responsible for failure
88            detection and to initiate switchover from one CMTS to
89            another.
90
91            The CMTS protection is at the RF mac domain level,
92            where protecting and working CMTS cable interfaces operate
93            on the same downstream and upstream frequency.
94
95            HCCP Terminology:
96            HCCP group:  A set of RF MAC interfaces which communicate
97                         using HCCP messaging.
98
99            HCCP member: Each RF MAC interface configured for HCCP.
100
101            Protect:     A member in a HCCP group which acts as the
102                         hot standby and protecting other members.
103
104            Working:     The member in a HCCP group that is being
105                         protected.
106
107            Thus a 'HCCP group' consists of 'HCCP members' which are
108            RF MAC interfaces configured to function as  'Protect' or
109            'Working'.
110
111            Some RF mac interfaces are configured to form a
112            'HCCP group' and members within one 'HCCP group'
113            communicate with each other using HCCP messaging.
114            By HCCP messaging, some member acting as 'Protect' or
115            hot standby can detect a failure on the other members
116            which are designated as 'Working' in the same HCCP group.
117            The 'Protect' can then take over traffic on the failed
118            interface.
119
120            Protection scenarios can be N+1 or 1+1. In the N+1
121            protection scenario, there is only one CMTS designated
122            for protection of N CMTS.
123
124            For example in 1+1 : When one linecard fails, the other
125            automatically takes over its traffic. During normal
126            operation, only one linecard forwards traffic, the other
127            linecard stands by and listens to the messages passed
128            from the active one. While in the standby mode, the
129            linecard does not forward traffic. HCCP will automatically
130            switchover to the standby in cases of software failures
131            (crash), linecard insertion/removal, interface shutdowns
132            and cable wiring failures etc.
133
134            Both Protect and Working are preconfigured on the CMTS
135            and all HCCP configuration must comply with the actual
136            cable plant deployment for correct operation of the HCCP
137            protocol.
138
139            This MIB includes objects to support the HCCP feature
140            on the CMTS."
141
142        REVISION        "200302200000Z"
143        DESCRIPTION
144            "Changed range of object ccaHCCPMemChanSwitchPosition
145            and added ciscoCableAvailabilityComplianceRev1 to
146            allow MIN-ACCESS as read-only for the same. "
147
148        REVISION        "200111250000Z"
149        DESCRIPTION
150            "Initial version of this MIB module."
151        ::= { ciscoMgmt 242 }
152
153
154ciscoCableAvailabilityMIBObjects OBJECT IDENTIFIER
155                                 ::= { ciscoCableAvailabilityMIB 1 }
156
157ccaHCCPObjects            OBJECT IDENTIFIER
158                          ::= { ciscoCableAvailabilityMIBObjects 1 }
159
160
161--
162-- ccaHCCPObjects :
163-- Cisco Cable Availability HCCP (Hot standby Connection to Connection
164-- protocol) group
165--
166-- This group provides the objects that allow HCCP configuration on
167-- the CMTS.
168--
169
170ccaHCCPVersion OBJECT-TYPE
171        SYNTAX     INTEGER {
172                        others(1),
173                        version1(2),
174                        version2(3),
175                        version3(4)
176                    }
177        MAX-ACCESS  read-only
178        STATUS      current
179        DESCRIPTION
180            "The current version of HCCP features.
181            others(1)   : Any other HCCP Version other than the
182                          following list.
183
184            version1(2) : HCCP Version 1.0 supports for 1+1
185                          Availability. (1 RF MAC protecting 1
186                          RF MAC without load sharing on the
187                          same upstream and downstream frequencies with
188                          DOCSIS1.0+ features)
189
190            version2(3) : HCCP Version 2.0 supports for 1+1
191                          Availability. (1 RF MAC protecting 1
192                          RF MAC without load sharing on the
193                          same upstream and downstream frequencies with
194                          DOCSIS1.1 features)
195
196            version3(4) : HCCP Version 3.0 supports for N+1
197                          Availability. (1 RF MAC protecting N
198                          RF MAC without load sharing on different
199                          upstream and downstream frequencies with
200                          DOCSIS1.1 features)."
201
202        REFERENCE
203             "Data-Over-Cable Service Interface Specifications (DOCSIS)
204             Radio Frequency Interface Specification"
205        ::= { ccaHCCPObjects 1 }
206
207
208--
209-- ccaHCCPGroupTable:
210--
211-- This table provides information about the HCCP groups configured
212-- on the Cable Modem Termination Systems (CMTS).
213--
214-- Each set of Working along with a Protect form a HCCP group with a
215-- unique group ID number(1-255) within a domain. Each protection
216-- group is assigned an identification. Only members within a group are
217-- allowed to communicate with each other via HCCP messaging.
218-- Each of them is protected by authentication .
219--
220--
221
222ccaHCCPGroupTable OBJECT-TYPE
223        SYNTAX      SEQUENCE OF CcaHCCPGroupEntry
224        MAX-ACCESS  not-accessible
225        STATUS      current
226        DESCRIPTION
227            "This table contains information of the HCCP groups
228            on the CMTS.
229
230            A HCCP group consists of a set of Working along with
231            a Protect and each group is identified by a unique group
232            ID number. Only members within a group are allowed to
233            communicate with each other via HCCP messaging. "
234        ::= { ccaHCCPObjects 2 }
235
236ccaHCCPGroupEntry OBJECT-TYPE
237        SYNTAX      CcaHCCPGroupEntry
238        MAX-ACCESS  not-accessible
239        STATUS      current
240        DESCRIPTION
241            "A set of attributes of a HCCP group on the CMTS.
242            An entry in this table exists for each configured
243            HCCP group on the CMTS."
244        INDEX { ccaHCCPGroupID }
245        ::= { ccaHCCPGroupTable 1 }
246
247CcaHCCPGroupEntry ::= SEQUENCE {
248             ccaHCCPGroupID                Integer32,
249             ccaHCCPGroupAuthentication    INTEGER,
250             ccaHCCPGroupAuthKeyChain      SnmpAdminString,
251             ccaHCCPGroupHelloTime         Integer32,
252             ccaHCCPGroupHoldTime          Integer32,
253             ccaHCCPGroupRevertEnable      TruthValue,
254             ccaHCCPGroupProtectIpAddrType InetAddressType,
255             ccaHCCPGroupProtectIpAddress  InetAddress
256        }
257
258ccaHCCPGroupID OBJECT-TYPE
259        SYNTAX          Integer32 (1..255)
260        MAX-ACCESS      not-accessible
261        STATUS          current
262        DESCRIPTION
263            "Identification of the HCCP protection group. Only members
264            of the same group talk to each other via HCCP messaging."
265        ::= { ccaHCCPGroupEntry 1 }
266
267ccaHCCPGroupAuthentication OBJECT-TYPE
268        SYNTAX          INTEGER {
269                            none(1),
270                            md5(2),
271                            text(3)
272                        }
273        MAX-ACCESS      read-only
274        STATUS          current
275        DESCRIPTION
276            "The value of this object specifies the type of
277            authentication method used.
278            none(1) : No authentication is performed on that group.
279            md5(2)  : The MD5 Message Digest algorithm.
280            text(3) : Authentication based on a textual string. "
281        REFERENCE
282            "Rivest, R., 'The MD5 Message-Digest Algorithm', RFC1321,
283             MIT LCS & RSA Data Security, Inc., April 1992."
284        ::= { ccaHCCPGroupEntry 2 }
285
286ccaHCCPGroupAuthKeyChain OBJECT-TYPE
287        SYNTAX          SnmpAdminString
288        MAX-ACCESS      read-only
289        STATUS          current
290        DESCRIPTION
291            "This object is the name of a globally configured key
292            chain. It is used to enable authentication and determine
293            the set of keys which may be used on a particular group.
294
295            If ccaHCCPGroupAuthentication is text(3), it is used as the
296            authentication password.
297            If ccaHCCPGroupAuthentication is md5(2), it is used as the
298            message digest for md5.
299
300            If a key chain has not been configured, no authentication
301            is performed on that group."
302        ::= { ccaHCCPGroupEntry 3 }
303
304ccaHCCPGroupHelloTime OBJECT-TYPE
305        SYNTAX         Integer32(333..5000)
306        UNITS          "milliseconds"
307        MAX-ACCESS     read-only
308        STATUS         current
309        DESCRIPTION
310            "Hello time is the interval(in milliseconds) between
311            consecutive HELLO messages.
312
313            HELLO is a one-way message in HCCP sent from Protect to all
314            Working in the group. It indicates that Protect is ready
315            to receive data and expects HELLO_ACK. HELLO message
316            indicates the existence and state of Protect. Failing to
317            send this message indicates Protect is not in service."
318        ::= { ccaHCCPGroupEntry 4 }
319
320ccaHCCPGroupHoldTime  OBJECT-TYPE
321        SYNTAX         Integer32(1000..25000)
322        UNITS          "milliseconds"
323        MAX-ACCESS     read-only
324        STATUS         current
325        DESCRIPTION
326            "Hold time is the interval(in milliseconds) between the
327            time of receiving the last HELLO ACK message and the time to
328            assume that the cable interface is out of service.
329
330            In the case of Working, it is the interval in milliseconds
331            between the time when the Working receives a HELLO
332            message and the time to assume that Protect
333	    has failed.
334            In the case of Protect, it is the interval in
335            milliseconds between the time when the Protect sends
336            last HELLO message without seeing HELLO_ACK and the
337            time to assume that Working has failed.
338
339            It is carried by HELLO message and is used by Protect
340            and all Working."
341        ::= { ccaHCCPGroupEntry 5 }
342
343ccaHCCPGroupRevertEnable OBJECT-TYPE
344        SYNTAX         TruthValue
345        MAX-ACCESS     read-only
346        STATUS         current
347        DESCRIPTION
348            "Enable or disable the Protect to revert switchover after
349            Working is restored to operation. It can be
350            disabled (default) if user wants to perform some tests
351            before revert switching."
352        ::= { ccaHCCPGroupEntry 6 }
353
354ccaHCCPGroupProtectIpAddrType OBJECT-TYPE
355        SYNTAX          InetAddressType
356        MAX-ACCESS      read-only
357        STATUS          current
358        DESCRIPTION
359            "The type of internet address of ccaHCCPGroupProtectIpAddress."
360        ::= { ccaHCCPGroupEntry 7 }
361
362ccaHCCPGroupProtectIpAddress OBJECT-TYPE
363        SYNTAX          InetAddress
364        MAX-ACCESS      read-only
365        STATUS          current
366        DESCRIPTION
367            "The IP address of the Protect interface for the group that
368            sends the HELLO message. "
369        ::= { ccaHCCPGroupEntry 8 }
370
371
372
373-- ccaHCCPGroupIfTable
374--
375-- This tables provides the mapping of the RF MAC interfaces on the CMTS
376-- to its functionality in the HCCP group.
377--
378
379ccaHCCPGroupIfTable OBJECT-TYPE
380        SYNTAX      SEQUENCE OF CcaHCCPGroupIfEntry
381        MAX-ACCESS  not-accessible
382        STATUS      current
383        DESCRIPTION
384            "This table provides the mapping of the RF MAC interfaces
385            on the CMTS to its functionality in the HCCP group.
386            It indicates if the RF MAC interface has been configured
387            as Protect or as a Working.It provides interface specific
388            configuration and state information as well as statistics."
389        ::= { ccaHCCPObjects 3 }
390
391ccaHCCPGroupIfEntry OBJECT-TYPE
392        SYNTAX      CcaHCCPGroupIfEntry
393        MAX-ACCESS  not-accessible
394        STATUS      current
395        DESCRIPTION
396            "A mapping of a RF MAC interface to its configured
397            functionality as Protect or Working. It provides
398            interface specific configuration and state
399            information as well as statistics.
400            Entries in this table exist for each ifEntry with ifType
401            of docsCableUpstream(129)."
402        INDEX { ccaHCCPGroupID , ifIndex }
403        ::= { ccaHCCPGroupIfTable 1 }
404
405CcaHCCPGroupIfEntry ::= SEQUENCE {
406             ccaHCCPGroupIfStatus            INTEGER,
407             ccaHCCPGroupIfRevertTime       Integer32,
408             ccaHCCPGroupIfTrackEnable      TruthValue,
409             ccaHCCPGroupIfState            INTEGER,
410             ccaHCCPGroupIfLastSwitchReason INTEGER,
411             ccaHCCPGroupIfOnTransitions    Counter32,
412             ccaHCCPGroupIfOffTransitions   Counter32
413             }
414
415ccaHCCPGroupIfStatus  OBJECT-TYPE
416        SYNTAX          INTEGER {
417                            unknown(1),
418                            protect(2),
419                            working(3)
420                        }
421        MAX-ACCESS      read-only
422        STATUS          current
423        DESCRIPTION
424            "The value of this object identifies if the interface is
425            functioning as Working or Protect in the HCCP group."
426        ::= { ccaHCCPGroupIfEntry 1 }
427
428ccaHCCPGroupIfRevertTime OBJECT-TYPE
429        SYNTAX         Integer32(1..65535)
430        MAX-ACCESS     read-only
431        STATUS         current
432        DESCRIPTION
433            "Revert time used by Working specifies the time interval
434            to wait before automatic revert switching.
435            Within that time interval, manual switchover is allowed
436            to happen."
437        ::= { ccaHCCPGroupIfEntry 2 }
438
439ccaHCCPGroupIfTrackEnable  OBJECT-TYPE
440        SYNTAX         TruthValue
441        MAX-ACCESS     read-only
442        STATUS         current
443        DESCRIPTION
444            "Enable or disable failover based on interface state. The
445            interface can be any interface on the router, which is
446            monitored by keep alive timer.
447
448            If it is set to true, ccaHCCPGroupTrackInterfaceTable
449            contains the list of interfaces that are being tracked.
450
451            By default the current interface is under tracking."
452        ::= { ccaHCCPGroupIfEntry 3 }
453
454ccaHCCPGroupIfState  OBJECT-TYPE
455        SYNTAX         INTEGER {
456                          forwarding(1),
457                          blocking(2)
458                       }
459        MAX-ACCESS     read-only
460        STATUS         current
461        DESCRIPTION
462            "The current state of the HCCP group. The members can
463            either be forwarding traffic or blocking all traffic. "
464        ::= { ccaHCCPGroupIfEntry 4 }
465
466ccaHCCPGroupIfLastSwitchReason  OBJECT-TYPE
467        SYNTAX         INTEGER {
468                          none(1),
469                          holdTimeExpire(2),
470                          hwIfDown(3),
471                          failTest(4),
472                          failLinkDown(5),
473                          failBundleDown(6),
474                          internal(7)
475                       }
476        MAX-ACCESS     read-only
477        STATUS         current
478        DESCRIPTION
479            "The reason for last switch.
480            none(1)            : No switchover has occurred.
481            holdTimeExpire(2)  : Occurs when HCCP fails to hear
482                                 HELLO/HELLO_ACK and the hold time
483                                 expires.
484            hwIfDown(3)        : Occurs when the hardware interface
485                                 is down. (eg shut/no shut)
486            failTest(3)        : Failover was CLI initiated or SNMP
487                                 initiated through
488                                 ccaHCCPGroupSwitchNow.
489            failLinkDown(4)    : Failure in the cable wiring or a
490                                 hardware interface.
491            failBundleDown(5)  : A bundled interface failure.
492            internal(6)        : All other failures . "
493        ::= { ccaHCCPGroupIfEntry 5 }
494
495ccaHCCPGroupIfOnTransitions  OBJECT-TYPE
496        SYNTAX        Counter32
497        MAX-ACCESS    read-only
498        STATUS        current
499        DESCRIPTION
500            "Number of times the value of ccaHCCPGroupIfState transitioned
501            from 'blocking' to 'forwarding'."
502        ::= { ccaHCCPGroupIfEntry 6 }
503
504ccaHCCPGroupIfOffTransitions  OBJECT-TYPE
505        SYNTAX        Counter32
506        MAX-ACCESS    read-only
507        STATUS        current
508        DESCRIPTION
509            "Number of times the value of ccaHCCPGroupIfState transitioned
510            from 'forwarding' to 'blocking'. "
511        ::= { ccaHCCPGroupIfEntry 7 }
512
513
514--
515-- ccaHCCPGroupTrackInterfaceTable
516--
517-- This table contains the list of all the interfaces that are being
518-- tracked by this interface in the group. Tracking means enabling
519-- failover based on interface state. The interface can be any
520-- interface on the router, which is monitored by keep alive timer.
521--
522
523ccaHCCPGroupTrackInterfaceTable  OBJECT-TYPE
524        SYNTAX      SEQUENCE OF CcaHCCPGroupTrackInterfaceEntry
525        MAX-ACCESS  not-accessible
526        STATUS      current
527        DESCRIPTION
528            "This table contains the attributes of all the interfaces
529            that are being tracked by this group. The interface
530            can be any interface on the chassis, which is monitored
531            by a keep alive timer."
532        ::= { ccaHCCPObjects 4 }
533
534ccaHCCPGroupTrackInterfaceEntry OBJECT-TYPE
535        SYNTAX      CcaHCCPGroupTrackInterfaceEntry
536        MAX-ACCESS  not-accessible
537        STATUS      current
538        DESCRIPTION
539            "A set of attributes of an interfaces being tracked
540            within a group. "
541        INDEX { ccaHCCPGroupID, ifIndex, ccaHCCPGroupTrackIfID }
542        ::= { ccaHCCPGroupTrackInterfaceTable 1 }
543
544CcaHCCPGroupTrackInterfaceEntry ::= SEQUENCE {
545              ccaHCCPGroupTrackIfID         Integer32,
546              ccaHCCPGroupTrackIfDescr      DisplayString
547        }
548
549ccaHCCPGroupTrackIfID  OBJECT-TYPE
550        SYNTAX          Integer32(1..100)
551        MAX-ACCESS      not-accessible
552        STATUS          current
553        DESCRIPTION
554            "The value of this object uniquely identifies an
555            interface that is being tracked within this group."
556        ::= { ccaHCCPGroupTrackInterfaceEntry 1 }
557
558ccaHCCPGroupTrackIfDescr OBJECT-TYPE
559        SYNTAX          DisplayString (SIZE (0..255))
560        MAX-ACCESS      read-only
561        STATUS          current
562        DESCRIPTION
563            "A textual string containing information about the
564            interface that is being tracked. This corresponds to the
565            ifDescr of the tracked interface."
566        ::= { ccaHCCPGroupTrackInterfaceEntry 2 }
567
568--
569-- ccaHCCPMemberTable
570--
571-- Each RF MAC interface configured for HCCP is called a HCCP member.
572-- This table provides information about the HCCP members on the
573-- Cable Modem Termination Systems (CMTS).
574-- Only members within a HCCP group are allowed to communicate with
575-- each other via HCCP messaging.
576--
577
578ccaHCCPMemberTable  OBJECT-TYPE
579        SYNTAX      SEQUENCE OF CcaHCCPMemberEntry
580        MAX-ACCESS  not-accessible
581        STATUS      current
582        DESCRIPTION
583            "This table contains the attributes of HCCP members.
584            Each RF MAC interface configured for HCCP is called a
585            HCCP member.
586            Entries in this table are created for all members.
587
588            In the case of Protect, it gives information of all the
589            Working members under it's protection group. In the case
590            of Working, it gives information about itself."
591        ::= { ccaHCCPObjects 5 }
592
593ccaHCCPMemberEntry OBJECT-TYPE
594        SYNTAX      CcaHCCPMemberEntry
595        MAX-ACCESS  not-accessible
596        STATUS      current
597        DESCRIPTION
598            "A configurable attributes of a HCCP member within a
599            group. "
600        INDEX { ccaHCCPGroupID , ifIndex , ccaHCCPMemberID }
601        ::= { ccaHCCPMemberTable 1 }
602
603CcaHCCPMemberEntry ::= SEQUENCE {
604              ccaHCCPMemberID            Integer32,
605              ccaHCCPMemberIpAddrType    InetAddressType,
606              ccaHCCPMemberIpAddress     InetAddress,
607              ccaHCCPMemberState         INTEGER,
608              ccaHCCPMemberSwitchNow     TruthValue
609        }
610
611ccaHCCPMemberID OBJECT-TYPE
612        SYNTAX          Integer32 (1..255)
613        MAX-ACCESS      not-accessible
614        STATUS          current
615        DESCRIPTION
616            "The value of this object identifies the Working member's
617            ID inside a group.
618
619            Members within the same group are uniquely identified by
620            this ID. The ID can be reused outside the group."
621        ::= { ccaHCCPMemberEntry 1 }
622
623ccaHCCPMemberIpAddrType OBJECT-TYPE
624        SYNTAX          InetAddressType
625        MAX-ACCESS      read-only
626        STATUS          current
627        DESCRIPTION
628            "The type of internet address of ccaHCCPMemberIpAddress."
629        ::= { ccaHCCPMemberEntry 2 }
630
631ccaHCCPMemberIpAddress OBJECT-TYPE
632        SYNTAX          InetAddress
633        MAX-ACCESS      read-only
634        STATUS          current
635        DESCRIPTION
636            "The IP address of the member. If the member functions
637            as Working it represents an IP address on its interface.
638            However in case of Protect, it represents IP address of
639            the Working member that are being protected."
640        ::= { ccaHCCPMemberEntry 3 }
641
642ccaHCCPMemberState  OBJECT-TYPE
643        SYNTAX         INTEGER {
644                           active(1),
645                           standby(2),
646                           nonFunctional(3)
647                       }
648        MAX-ACCESS     read-only
649        STATUS         current
650        DESCRIPTION
651            "The current status of to this HCCP group member.
652
653            If the RF MAC interface is Working, this
654            represents the status of the Working member.
655            active(1)       : Working member is forwarding traffic.
656            standby(2)      : Working member is blocking traffic.
657
658            If the RF MAC interface is Protect, this represents
659            the Protect status to this member.
660            active(1)       : The Protect is taking over and
661                              forwarding the traffic from this Working
662                              member which is now blocking.
663            standby(2)      : The Protect is standby(blocking). This
664                              means that Working member is forwarding
665                              traffic and thus works fine.
666
667            nonFunctional(3): This member is disabled."
668        ::= { ccaHCCPMemberEntry 4 }
669
670ccaHCCPMemberSwitchNow OBJECT-TYPE
671        SYNTAX         TruthValue
672        MAX-ACCESS     read-write
673        STATUS         current
674        DESCRIPTION
675            "This object is used to initiate the switchover.
676            When it is set to true(1) and this interface is Protect,
677            it will cause the switchover to specified Working member.
678            When it is set to true(1), and if this interface is
679            Working, it will cause the switchover to the Protect in
680            it's protection group.
681
682            Switchover can thus be initiated by either the Protect or
683            the Working.
684
685            Reading this object will always return false(2)."
686        ::= { ccaHCCPMemberEntry 5 }
687
688
689--
690-- ccaHCCPMemChanSwitchTable :
691--
692-- This table provides information about the HCCP channel switch
693-- which is used to switch the upstreams and
694-- downstreams.This table is used to specify the channel switch
695-- type, the RF switch over group, RF switch module.
696--
697
698ccaHCCPMemChanSwitchTable OBJECT-TYPE
699        SYNTAX      SEQUENCE OF CcaHCCPMemChanSwitchEntry
700        MAX-ACCESS  not-accessible
701        STATUS      current
702        DESCRIPTION
703            "This is an adjunct to ccaHCCPMemberTable. It provides
704            information of HCCP member channel switches. It specifies
705            the RF channel switch type, the RF switch over
706            group and the RF switch module. The upconvertor IP addresses
707            can also be retrieved from this table.
708
709            This table does not exist if no channel switch has been
710            enabled for this member in the group."
711        ::= { ccaHCCPObjects 6 }
712
713ccaHCCPMemChanSwitchEntry OBJECT-TYPE
714        SYNTAX      CcaHCCPMemChanSwitchEntry
715        MAX-ACCESS  not-accessible
716        STATUS      current
717        DESCRIPTION
718            "A set of attributes of the channel switch
719            specifying  the channel switch details per member
720            (ccaHCCPMemberID) on an interface (ifType is
721            docsCableMaclayer(127)) of a HCCP group. "
722        INDEX { ccaHCCPGroupID,
723                ifIndex,
724                ccaHCCPMemberID,
725                ccaHCCPMemChanSwitchID }
726        ::= { ccaHCCPMemChanSwitchTable 1 }
727
728CcaHCCPMemChanSwitchEntry ::= SEQUENCE {
729        ccaHCCPMemChanSwitchID              Integer32,
730        ccaHCCPMemChanSwitchType            INTEGER,
731        ccaHCCPMemChanSwitchIpAddrType      InetAddressType,
732        ccaHCCPMemChanSwitchIpAddress       InetAddress,
733        ccaHCCPMemChanSwitchModule          Integer32,
734        ccaHCCPMemChanSwitchProtIpAddrType  InetAddressType,
735        ccaHCCPMemChanSwitchProtIpAddr      InetAddress,
736        ccaHCCPMemChanSwitchProtModule      Integer32,
737        ccaHCCPMemChanSwitchPosition        Integer32,
738        ccaHCCPMemChanSwitchSnmpEnable      TruthValue
739        }
740
741ccaHCCPMemChanSwitchID OBJECT-TYPE
742        SYNTAX      Integer32(1..100)
743        MAX-ACCESS  not-accessible
744        STATUS      current
745        DESCRIPTION
746            "Uniquely identifies the entry for channel switch for a
747            member. The channel switch is the RF component that allows
748            downstream and upstream channel switching."
749        ::= { ccaHCCPMemChanSwitchEntry 1 }
750
751ccaHCCPMemChanSwitchType OBJECT-TYPE
752        SYNTAX      INTEGER {
753                        others(1),
754                        ucWavecom(2),
755                        rfSwitchGrp(3),
756                        rfSwitchModule(4)
757                    }
758        MAX-ACCESS  read-only
759        STATUS      current
760        DESCRIPTION
761            "Type of the channel switch.
762            others(1)         : Any other channel switch which is not
763                                in the following list.
764
765            ucWavecom(2)      : Represents the Wavecom upconvertor.
766
767            rfSwitchGrp(3)    : Weinschel channel switch.
768                                If ccaHCCPMemChanSwitchModule represents
769                                the bitmap of selected modules inside a
770                                RF switch chassis.
771
772            rfSwitchModule(4) : Weinschel channel switch.
773                                If ccaHCCPMemChanSwitchModule represents
774                                the switch module number inside RF switch
775                                chassis."
776        ::= { ccaHCCPMemChanSwitchEntry 2 }
777
778ccaHCCPMemChanSwitchIpAddrType  OBJECT-TYPE
779        SYNTAX      InetAddressType
780        MAX-ACCESS  read-only
781        STATUS      current
782        DESCRIPTION
783            "The type of internet address of ccaHCCPMemChanSwitchIpAddress."
784        ::= { ccaHCCPMemChanSwitchEntry 3 }
785
786ccaHCCPMemChanSwitchIpAddress OBJECT-TYPE
787        SYNTAX      InetAddress
788        MAX-ACCESS  read-only
789        STATUS      current
790        DESCRIPTION
791            "The Ipv4 Address of channel switch.
792
793            It represents the IP address of the upconverter that this
794            Working member connects to if ccaHCCPMemChanSwitchType
795            is ucWavecom(2).
796
797            It specifies the RF Switch's IP address if
798            ccaHCCPMemChanSwitchType is rfSwitchGrp(3) or
799            rfSwitchModule(4)."
800        ::= { ccaHCCPMemChanSwitchEntry 4 }
801
802ccaHCCPMemChanSwitchModule OBJECT-TYPE
803        SYNTAX      Integer32(1..255)
804        MAX-ACCESS  read-only
805        STATUS      current
806        DESCRIPTION
807            "The module number of channel switch for this member .
808            It is the module number on the upconverter that this
809            member connects to if ccaHCCPMemChanSwitchType is
810            ucWavecom(2).
811
812            It specifies the RF Switch module number inside an RF Switch
813            chassis if ccaHCCPMemChanSwitchType is rfSwitchModule(4).
814
815            It is the bitmap of selected modules inside a
816            RF Switch chassis if ccaHCCPMemChanSwitchType is
817            rfSwitchGrp(3)."
818        ::= { ccaHCCPMemChanSwitchEntry 5 }
819
820ccaHCCPMemChanSwitchProtIpAddrType OBJECT-TYPE
821        SYNTAX      InetAddressType
822        MAX-ACCESS  read-only
823        STATUS      current
824        DESCRIPTION
825            "The type of internet address of ccaHCCPMemChanSwitchProtIpAddr."
826        ::= { ccaHCCPMemChanSwitchEntry 6 }
827
828ccaHCCPMemChanSwitchProtIpAddr OBJECT-TYPE
829        SYNTAX      InetAddress
830        MAX-ACCESS  read-only
831        STATUS      current
832        DESCRIPTION
833            "The IP address of the Wavecom upconvertor
834            that is connected to the corresponding Protect for this
835            Working member.
836
837            This object is meaningful only if
838            ccaHCCPMemChanSwitchType is ucWavecom(2) and has no
839            meaning for other types of switches and is ignored in
840            this case."
841        ::= { ccaHCCPMemChanSwitchEntry 7 }
842
843ccaHCCPMemChanSwitchProtModule OBJECT-TYPE
844        SYNTAX      Integer32(1..255)
845        MAX-ACCESS  read-only
846        STATUS      current
847        DESCRIPTION
848            "The module number on the Wavecom upconvertor that
849            is connected to the corresponding Protect for this
850            Working member.
851
852            This object is meaningful only if
853            ccaHCCPMemChanSwitchType is ucWavecom(2)."
854        ::= { ccaHCCPMemChanSwitchEntry 8 }
855
856ccaHCCPMemChanSwitchPosition OBJECT-TYPE
857        SYNTAX      Integer32(1..8)
858        MAX-ACCESS  read-write
859        STATUS      current
860        DESCRIPTION
861            "The position within a switch module for this Working
862            member. This object is valid for
863            ccaHCCPMemChanSwitchType rfSwitchGrp(3) and
864            rfSwitchModule(4). "
865        ::= { ccaHCCPMemChanSwitchEntry 9 }
866
867ccaHCCPMemChanSwitchSnmpEnable OBJECT-TYPE
868        SYNTAX      TruthValue
869        MAX-ACCESS  read-write
870        STATUS      current
871        DESCRIPTION
872            "This object is used to enable SNMP remote control
873            on the Wavecom upconvertor.
874            When it is set to true(1), SNMP remote control is
875            enabled on the upconvertor.
876            When it is set to false(2), SNMP remote control is
877            disabled and front panel manual operation is enabled.
878
879            This object is meaningful only if
880            ccaHCCPMemChanSwitchType is ucWavecom(2)."
881        ::= { ccaHCCPMemChanSwitchEntry 10 }
882
883ccaHCCPOnOffNotificationEnable OBJECT-TYPE
884        SYNTAX      TruthValue
885        MAX-ACCESS  read-write
886        STATUS      current
887        DESCRIPTION
888            "An indication of whether the ccaHCCPOnNotification
889            and ccaHCCPOffNotification are enabled or disabled."
890        DEFVAL { false }
891        ::= { ccaHCCPObjects 7 }
892
893--
894-- The Cisco Cable Availability MIB Notifications
895--
896
897ciscoCableAvailabilityMIBNotificationsPrefix   OBJECT IDENTIFIER
898                ::= { ciscoCableAvailabilityMIB 2 }
899
900ciscoCableAvailabilityMIBNotifications      OBJECT IDENTIFIER
901                ::= { ciscoCableAvailabilityMIBNotificationsPrefix 0 }
902
903ccaHCCPOnNotification  NOTIFICATION-TYPE
904       OBJECTS {
905            ccaHCCPGroupIfStatus,
906            ccaHCCPGroupIfLastSwitchReason,
907            ccaHCCPMemberState
908       }
909       STATUS current
910       DESCRIPTION
911           "A notification that is sent when failover occurred and
912           this interface is taking over the traffic from the peer.
913
914           For example if Protect is taking over a Working member
915           from it's protection group,this notification is
916           sent by the Protect. When Working is restored to operation
917           and is now taking over from the Protect, this
918           notification is sent by Working."
919       ::= { ciscoCableAvailabilityMIBNotifications 1 }
920
921ccaHCCPOffNotification  NOTIFICATION-TYPE
922       OBJECTS {
923            ccaHCCPGroupIfStatus,
924            ccaHCCPGroupIfLastSwitchReason,
925            ccaHCCPMemberState
926       }
927       STATUS current
928       DESCRIPTION
929           "A notification that is sent when failover occurs and this
930           interface is turning over all traffic to it's peer and is
931           now blocking.
932
933           For example if Protect is taking over a Working member
934           from it's protection group,this notification is
935           sent by the Working. When Working is restored to operation
936           and is now taking over from the Protect, this
937           notification is sent by Protect."
938       ::= { ciscoCableAvailabilityMIBNotifications 2 }
939
940ciscoCableAvailabilityMIBConformance         OBJECT IDENTIFIER
941                ::= { ciscoCableAvailabilityMIB 3 }
942
943ciscoCableAvailabilityMIBCompliances         OBJECT IDENTIFIER
944                ::= { ciscoCableAvailabilityMIBConformance 1 }
945
946ciscoCableAvailabilityMIBGroups              OBJECT IDENTIFIER
947                ::= { ciscoCableAvailabilityMIBConformance 2 }
948
949
950-- compliance statements
951
952ciscoCableAvailabilityCompliance  MODULE-COMPLIANCE
953        STATUS      deprecated
954        DESCRIPTION
955            "The compliance statement for CMTS devices that implement
956            the Hot Standby Connection to Connection Protocol. "
957        MODULE -- this module
958                MANDATORY-GROUPS {
959                        ccaHCCPGroup,
960                        ccaHCCPMemberGroup,
961                        ccaHCCPNotificationGroup
962                        }
963        ::= { ciscoCableAvailabilityMIBCompliances 1 }
964
965
966ciscoCableAvailabilityComplianceRev1  MODULE-COMPLIANCE
967        STATUS      current
968        DESCRIPTION
969            "The compliance statement for CMTS devices that implement
970            the Hot Standby Connection to Connection Protocol. "
971        MODULE -- this module
972                MANDATORY-GROUPS {
973                        ccaHCCPGroup,
974                        ccaHCCPMemberGroup,
975                        ccaHCCPNotificationGroup
976                        }
977        OBJECT      ccaHCCPMemChanSwitchPosition
978        MIN-ACCESS  read-only
979        DESCRIPTION
980            "Write access is not required."
981        ::= { ciscoCableAvailabilityMIBCompliances 2 }
982
983
984-- units of conformance
985
986
987ccaHCCPGroup OBJECT-GROUP
988        OBJECTS {
989             ccaHCCPVersion,
990             ccaHCCPOnOffNotificationEnable,
991             ccaHCCPGroupAuthentication,
992             ccaHCCPGroupAuthKeyChain,
993             ccaHCCPGroupHelloTime,
994             ccaHCCPGroupHoldTime,
995             ccaHCCPGroupRevertEnable,
996             ccaHCCPGroupProtectIpAddrType,
997             ccaHCCPGroupProtectIpAddress,
998             ccaHCCPGroupIfRevertTime,
999             ccaHCCPGroupIfTrackEnable,
1000             ccaHCCPGroupIfStatus,
1001             ccaHCCPGroupIfLastSwitchReason,
1002             ccaHCCPGroupIfOnTransitions,
1003             ccaHCCPGroupIfOffTransitions,
1004             ccaHCCPGroupTrackIfDescr,
1005             ccaHCCPGroupIfState
1006             }
1007        STATUS    current
1008        DESCRIPTION
1009            "Group of objects implemented in CMTS
1010            providing HCCP group information. "
1011        ::= { ciscoCableAvailabilityMIBGroups 1 }
1012
1013ccaHCCPMemberGroup OBJECT-GROUP
1014        OBJECTS {
1015             ccaHCCPMemberIpAddrType,
1016             ccaHCCPMemberIpAddress,
1017             ccaHCCPMemberState,
1018             ccaHCCPMemberSwitchNow,
1019             ccaHCCPMemChanSwitchType,
1020             ccaHCCPMemChanSwitchIpAddrType,
1021             ccaHCCPMemChanSwitchIpAddress,
1022             ccaHCCPMemChanSwitchModule,
1023             ccaHCCPMemChanSwitchProtIpAddrType,
1024             ccaHCCPMemChanSwitchProtIpAddr,
1025             ccaHCCPMemChanSwitchProtModule,
1026             ccaHCCPMemChanSwitchPosition,
1027             ccaHCCPMemChanSwitchSnmpEnable
1028             }
1029        STATUS    current
1030        DESCRIPTION
1031            "Group of objects implemented in CMTS
1032            providing HCCP member and channel
1033            switch information."
1034        ::= { ciscoCableAvailabilityMIBGroups 2 }
1035
1036ccaHCCPNotificationGroup NOTIFICATION-GROUP
1037        NOTIFICATIONS {
1038             ccaHCCPOnNotification,
1039             ccaHCCPOffNotification
1040             }
1041        STATUS        current
1042        DESCRIPTION
1043            "The notification which a CISCO-CABLE-AVAILABILITY-MIB
1044            entity is required to implement."
1045        ::= { ciscoCableAvailabilityMIBGroups 3 }
1046END
1047