1--
2-- ********************************************************************
3-- CISCO-CABLE-QOS-MONITOR-MIB.my:
4--       Cisco Cable QoS Monitoring MIB file
5--
6-- Jan 2003, Sunethra Jawahar
7-- Oct 2003, Gaurav Aggarwal
8--
9-- Copyright (c) 2003, 2004 by Cisco Systems, Inc.
10-- All rights reserved.
11-- ********************************************************************
12--
13--
14-- This is the MIB module for subscriber QoS monitoring for
15-- DOCSIS-compliant Cable Modem Termination Systems (CMTS).
16--
17-- QoS Monitoring is a software feature provided in the CMTS so that
18-- the CMTS may identify subscribers who over consume resources
19-- based on their QoS parameters, report them to a management
20-- entity, and automatically mitigate the problem where possible.
21-- This is done by penalyzing the violating subscribers by changing
22-- their QoS parameters to enforced QoS parameters.
23--
24-- The MIB allows to create enforce rules which are used to determine the
25-- over consumption of resources. The enforce rule contains monitoring
26-- and enforced QoS parameters.
27--
28-- The MIB also provides a unified view of all over-consuming subscribers.
29--
30--
31
32CISCO-CABLE-QOS-MONITOR-MIB DEFINITIONS ::= BEGIN
33
34IMPORTS
35        MODULE-IDENTITY,
36        OBJECT-TYPE,
37        Unsigned32,
38        NOTIFICATION-TYPE
39                FROM SNMPv2-SMI
40        TEXTUAL-CONVENTION,
41        TruthValue,
42        MacAddress,
43        RowStatus,
44        DisplayString,
45        DateAndTime
46                FROM SNMPv2-TC
47        OBJECT-GROUP,
48        MODULE-COMPLIANCE,
49        NOTIFICATION-GROUP
50                FROM SNMPv2-CONF
51        ifIndex
52                FROM IF-MIB
53        ciscoMgmt
54                FROM CISCO-SMI;
55
56
57ciscoCableQosMonitorMIB MODULE-IDENTITY
58        LAST-UPDATED    "200402200000Z"
59        ORGANIZATION    "Cisco Systems, Inc."
60        CONTACT-INFO
61            "        Cisco Systems
62                     Customer Service
63
64             Postal: Cisco Systems
65                     170 West Tasman Drive
66                     San Jose, CA 95134
67                     U.S.A.
68             Phone:  +1 800 553-NETS
69             E-mail: cs-ubr@cisco.com"
70
71        DESCRIPTION
72            "This is the MIB module for subscriber QoS monitoring
73             for DOCSIS-compliant Cable Modem Termination Systems
74             (CMTS).
75
76             Several subscriber behavior can be monitored:
77             1. When the subscriber requests for more resources than
78             as defined by its QoS parameter set. In this case,
79             though requested for more rate-limiting happens in
80             the CMTS, hence, the subscriber will get only as much
81             resources as defined by its registered QoS parameter
82             set. In this mib, QoS parameter set refers to QoS
83             profiles for 1.0 modems and refer to service class
84             names for 1.1 and 2.0 modems.
85
86             2.	When the subscriber continuously utilizes the resources
87             to the upper limit or very near to the upper limit as
88             defined by its QoS parameter set.
89
90             3.	When the subscriber sometimes or never utilizes the
91             resources as defined by the upper limit of the QoS
92             parameter set.
93
94             In the first two cases, we need to monitor the subscribers
95             as upstream/downstream is a shared medium, and if all
96             subscribers start consuming resources as per their peak
97             rate, or a percentage of it, CMTS will be hard pressed for
98             resources. So, even though such subscribers are using
99             resources within the limits as defined by their QoS
100             parameter set, from the CMTS point of view, they are
101             over consuming.
102             Through out this MIB, we refer to this behavior of
103             subscribers as over consumption of resources and such
104             subscribers will be the violating subscribers.
105
106             The subscriber QoS Monitoring is a software feature
107             provided on the CMTS so that the CMTS may identify such
108             subscribers who over consume resources based on their QoS
109             parameter set, report them to a management entity, and
110             automatically mitigate the problem where possible.
111             This is done by penalizing the violating subscribers by
112             changing their QoS parameter set to enforced QoS
113             parameter set.
114
115             The MIB allows to create enforce rules which are used to
116             determine the over consumption of resources. The enforce
117             rule contains monitoring and enforced QoS parameter set.
118
119             The subscribers who over consume their bandwidth are
120             flagged and NMS notified of all such violations.
121             The MIB also provides a unified view of all over-consuming
122             subscribers."
123
124        REVISION        "200402200000Z"
125        DESCRIPTION
126       "Added objects in ccqmCmtsEnforceRuleTable to support DOCSIS1.1,
127        DOCSIS2.0 modems and peak/off-peak monitoring.
128            The objects are:
129               ccqmCmtsEnfRuleAvgRate,
130               ccqmCmtsEnfRuleDocsVer,
131               ccqmCmtsEnfRuleRegSerClassName,
132               ccqmCmtsEnfRuleEnfSerClassName,
133               ccqmCmtsEnfRuleMonType,
134               ccqmCmtsEnfRuleFirstPeakTime,
135               ccqmCmtsEnfRuleFirstDuration,
136               ccqmCmtsEnfRuleFirstAvgRate,
137               ccqmCmtsEnfRuleSecondPeakTime,
138               ccqmCmtsEnfRuleSecondDuration,
139               ccqmCmtsEnfRuleSecondAvgRate,
140               ccqmCmtsEnfRuleOffPeakDuration,
141               ccqmCmtsEnfRuleOffPeakAvgRate
142
143        Added ccqmCmtsIfBwUtilTable to provide thresholds for
144        downstream/upstream bandwidth utilization.
145
146        Removed ccqmCmtsEnfRuleByteCount which was obsoleted."
147
148        REVISION        "200304030000Z"
149        DESCRIPTION
150            "Changed ranges of few objects."
151
152        REVISION        "200303040000Z"
153        DESCRIPTION
154            "Initial version of this MIB module."
155
156        ::= { ciscoMgmt 341 }
157
158CCQMRuleDirection ::= TEXTUAL-CONVENTION
159   STATUS      current
160   DESCRIPTION
161       "The CCQMRuleDirection is used to indicate the direction to
162       which the enforce rule applies to.
163       It has the following defined values:
164       - 'upstream', is used for an enforce rule in the direction from
165          subscriber to CMTS
166       - 'downstream', is used for an enforce rule in the direction from
167          CMTS to the subscriber.
168       - 'bidirection', which can mean neither upstream or downstream
169          but a combined enforce rule. "
170
171   SYNTAX      INTEGER {
172                  upstream(1),
173                  downstream(2),
174                  bidirection(3)
175               }
176
177
178ciscoCableQosMonitorMIBObjects
179         OBJECT IDENTIFIER ::= { ciscoCableQosMonitorMIB 1 }
180
181ccqmEnforceRuleObjects
182         OBJECT IDENTIFIER ::= { ciscoCableQosMonitorMIBObjects 1 }
183
184ccqmRuleViolateObjects
185         OBJECT IDENTIFIER ::= { ciscoCableQosMonitorMIBObjects 2 }
186
187ccqmRuleIfBwUtilObjects
188         OBJECT IDENTIFIER ::= { ciscoCableQosMonitorMIBObjects 3 }
189
190--
191-- Cmts Qos Enforce Rule Table
192--
193-- CMTS maintains a list of QoS enforce rules.
194-- These enforce rules define :
195-- 1) Criteria for identifying violating subscribers:
196--    This criteria could be as simple as bytes transmitted over
197--    the last monitoring duration and checked at a rate equal
198--    to the sample rate.
199--    In the sliding window concept used, the monitoring duration
200--    is the size of the window. This window slides by an amount
201--    that is equal to the sample rate. At every sample rate the bytes
202--    transmitted in the time equal to a monitoring duration is
203--    checked. If this is found to be larger than the byte count which
204--    is calculated by multiplying the defined average rate by the
205--    monitoring duration limit per monitoring duration, the subscriber
206--    is flagged as over consuming or violating the enforce rule.
207--    Else the monitoring will continue.
208--    For example let the monitoring duration be 360 minutes and sample
209--    rate be 30 minutes. If the average rate is 2kbits/sec, so
210--    the total byte count for the monitoring duration would be
211--    5.4Mbytes then every 30 minutes we check if the bytes
212--    transmitted in the last 360 minutes exceeded 5.4Mbytes. If so,
213--    the subscriber is over consuming.
214--
215--    |< Monitoring duration     >|
216--
217--    |S rate |
218--    |___________________________|
219--            |____________________________|
220--                     |_____________________________|
221--                              |______________________________|
222--    X       X        X        X          X         X         X
223--
224--    X -> Check made to see if byte count is exceeded.
225--    S rate -> Sample rate
226--
227-- 2) Registered and Enforced QoS parameter set:
228--    Enforce rules have a one to one mapping to QoS profiles
229--    (for 1.0 modems) and service class names (for 1.1 and 2.0 modems)
230--    that subscribers have registered with. Through out the mib
231--    QoS parameter set refers to QoS profiles for 1.0 modems
232--    and they refer to service class names for 1.1 and 2.0 modems. If
233--    subscribers are found to violate parameters as defined by
234--    their Registered Qos parameter set then the  Enforced QoS
235--    parameter set will be enforced on such subscribers. The rule
236--    can be configured such that the enforcement happens automatically
237--    or based on some manual settings by NMS.
238-- 3) Penalty Period:
239--    This defines the time period for which the  Enforced Qos
240--    parameter set will be applicable. The registered QoS
241--    parameter set will be restored when the penalty period
242--    expires again based on whether automation was desired.
243--
244
245ccqmCmtsEnforceRuleTable  OBJECT-TYPE
246       SYNTAX      SEQUENCE OF CcqmCmtsEnforceRuleEntry
247       MAX-ACCESS  not-accessible
248       STATUS      current
249       DESCRIPTION
250           "This table contains the attributes of the QoS enforce rules
251           present on the CMTS.
252
253           These enforce rules define the criteria for identifying
254           subscribers who over consume resources. This could be as
255           simple as bytes transmitted over the last monitoring
256           duration and checked at a rate equal to the sample rate.
257
258           In the sliding window concept used, the monitoring duration
259           is the size of the window. This window slides by an amount
260           that is equal to the sample rate. At every sample rate the
261           bytes transmitted in the time equal to a monitoring duration
262           is  checked. If this is found to be larger than the threshold
263           limit which is calculated by multiplying the defined average
264           rate by the monitoring duration per monitoring duration,
265           the subscriber is flagged as over consuming.  Else the
266           monitoring will continue.
267
268           For example let the monitoring duration be 360 minutes and
269           sample rate be 30 minutes. If the average rate is 2kbits/sec
270           then every 30 minutes we check if the bytes transmitted in
271           the last 360 minutes exceeded 5.4Mbytes bytes. If so, the
272           subscriber is over consuming.
273
274           The enforce rule has a one to one mapping to QoS profiles
275           in case of DOCSIS1.0 (and DOCSIS1.0+ modems) and to
276           service class names in case of DOCSIS1.1 and
277           DOCSIS2.0 modems.
278
279           It defines the registered QoS parameter set and an enforced
280           QoS parameter set be applied if found to be violating the
281           registered QoS parameter set.
282           The enforce rule also defines a penalty period for which
283           the enforced QoS parameter set will be applied. The
284           registered QoS parameter set will be restored when the
285           penalty period expires.
286
287           The monitoring can be of two types:
288           1) Legacy/Basic monitoring: There is only one threshold and
289              one monitoring-duration and the monitoring-duration
290              can be more than one day and within a day there is no
291              distinction among hours as peak or offpeak hours. An
292              example would be:
293              monitoring duration   : 2 days
294              Average rate          : 2kbits/sec
295
296           2) Peak-offPeak monitoring: A maximum of two peak durations
297              can be defined with in a day and the remaining hours are
298              treated as off-peak and the monitoring will happen during
299              these offpeak hours if the offpeak duration and threhold
300              are defined. The monitoring-duration and threshold for
301              all three, first peak, second peak and offpeak can be
302              different. Here, the monitoring duration for any of the
303              peaks or offpeak cannot be more than a day. An
304              example when both peaks and offpeak are defined is:
305              First peak:
306                    monitoring duration: Between 6am to 9am i.e., 3hours
307                    Average rate       : 2kbits/sec
308              Second peak:
309                    monitoring duration: Between 6pm to 10pm i.e., 4hrs
310                    Average rate       : 3kbits/sec
311              Off peak:
312                    Remaining hours in the day i.e.,
313                    12 midnight to 6:00am,
314                    9am to 6pm and 10pm to 12mignight.
315                    monitoring duration: 2 hours
316                    Average rate       : 1kbits/sec."
317       ::= { ccqmEnforceRuleObjects 1 }
318
319ccqmCmtsEnforceRuleEntry OBJECT-TYPE
320        SYNTAX      CcqmCmtsEnforceRuleEntry
321        MAX-ACCESS  not-accessible
322        STATUS      current
323        DESCRIPTION
324            "A set of attributes of a enforce rule on the CMTS.
325            One entry exists for each QoS enforce rule. It is
326            indexed by ccqmCmtsEnfRuleName as each enforce rule
327            is associated with a unique name. The user can define
328            the legacy/basic monitoring as:
329            Suppose, the duration is 2 hours and the average rate
330            is 2kbits/sec, so the following object would be need
331            to set:
332            ccqmCmtsEnfRuleMonType = 1 (Basic)
333            ccqmCmtsEnfRuleMonDuration = 120 (minutes)
334            ccqmCmtsEnfRuleAvgRate = 2 (kbits/sec)
335            Consider the example of setting the following peak-offpeak
336            monitoring:
337            First peak time:
338                   Morning 6:00am to 9:00am.
339                   Average rate is 2kbits/sec.
340             Second peak time:
341                   Evening 6:00pm to 10:00pm.
342                   Average rate is 3kbits/sec.
343             Offpeak time:
344                   The remaining time i.e., 12:00 midnight to 6:00am
345                   and from 9:00am to 6:00pm and 10:00pm to 12:00
346                   midnight would constitute the offpeak time.
347                   Let us assume the monitoring-duration is 2 hours
348                   and the average rate is 1kbits/sec.
349             And so the relevant objects would look like:
350                   ccqmCmtsEnfRuleMonType = 2 (peakOffPeak)
351                   ccqmCmtsEnfRuleFirstPeakTime = 6 (0600 hours)
352                   ccqmCmtsEnfRuleFirstDuration = 180 min (3 hours)
353                   ccqmCmtsEnfRuleFirstAvgRate = 2 (kbits/sec)
354                   ccqmCmtsEnfRuleSecondPeakTime = 18 (1800 hours)
355                   ccqmCmtsEnfRuleSecondDuration = 240 min (4 hours)
356                   ccqmCmtsEnfRuleSecondAvgRate = 3 (kbits/sec)
357                   ccqmCmtsEnfRuleOffPeakDuration = 160 min (2 hours)
358                   ccqmCmtsEnfRuleOffPeakAvgRate = 1 (kbits/sec)."
359        INDEX { ccqmCmtsEnfRuleName }
360        ::= { ccqmCmtsEnforceRuleTable 1 }
361
362CcqmCmtsEnforceRuleEntry ::= SEQUENCE {
363            ccqmCmtsEnfRuleName             DisplayString,
364            ccqmCmtsEnfRuleRegQoS           Unsigned32,
365            ccqmCmtsEnfRuleEnfQos           Unsigned32,
366            ccqmCmtsEnfRuleMonDuration      Unsigned32,
367            ccqmCmtsEnfRuleSampleRate       Unsigned32,
368            ccqmCmtsEnfRulePenaltyPeriod    Unsigned32,
369            ccqmCmtsEnfRuleByteCount        Unsigned32,
370            ccqmCmtsEnfRuleDirection        CCQMRuleDirection,
371            ccqmCmtsEnfRuleAutoEnforce      TruthValue,
372            ccqmCmtsEnfRuleRowStatus        RowStatus,
373            ccqmCmtsEnfRuleAvgRate          Unsigned32,
374            ccqmCmtsEnfRuleDocsVer          INTEGER,
375            ccqmCmtsEnfRuleRegSerClassName  DisplayString,
376            ccqmCmtsEnfRuleEnfSerClassName  DisplayString,
377            ccqmCmtsEnfRuleMonType          INTEGER,
378            ccqmCmtsEnfRuleFirstPeakTime    Unsigned32,
379            ccqmCmtsEnfRuleFirstDuration    Unsigned32,
380            ccqmCmtsEnfRuleFirstAvgRate     Unsigned32,
381            ccqmCmtsEnfRuleSecondPeakTime   Unsigned32,
382            ccqmCmtsEnfRuleSecondDuration   Unsigned32,
383            ccqmCmtsEnfRuleSecondAvgRate    Unsigned32,
384            ccqmCmtsEnfRuleOffPeakDuration  Unsigned32,
385            ccqmCmtsEnfRuleOffPeakAvgRate   Unsigned32
386        }
387
388
389ccqmCmtsEnfRuleName OBJECT-TYPE
390        SYNTAX      DisplayString (SIZE(1..15))
391        MAX-ACCESS  not-accessible
392        STATUS      current
393        DESCRIPTION
394            "The name of the enforce rule."
395        ::= { ccqmCmtsEnforceRuleEntry 1 }
396
397ccqmCmtsEnfRuleRegQoS OBJECT-TYPE
398        SYNTAX      Unsigned32 (0..16383)
399        MAX-ACCESS  read-create
400        STATUS      current
401        DESCRIPTION
402            "This object represents a pointer to the object
403            describing the quality of service attributes
404            associated with the registered service of the
405            subscriber.
406            For DOCSIS1.0 (DOCSIS1.0+) subscribers it is the
407            index in the docsIfQosProfileTable. If no associated
408            entry in docsIfQosProfileTable exists, this object
409            returns a value of zero. Similarly this object
410            can be set to 0 to indicate no entry in the
411            docsIfQosProfileTable associated with this QoS profile.
412            This object is applicable for DOCSIS1.0 (and
413            DOCSIS1.0+) modems and it can be set only when
414            ccqmCmtsEnfRuleDocsVer is set to docsis10(2).
415            This object cannot be changed when
416            ccqmCmtsEnfRuleRowStatus is active(1)."
417        REFERENCE
418            "docsIfQosProfIndex from
419             draft-ietf-ipcdn-docs-rfmibv2-05.txt"
420        ::= { ccqmCmtsEnforceRuleEntry 2 }
421
422ccqmCmtsEnfRuleEnfQos OBJECT-TYPE
423        SYNTAX      Unsigned32 (0..16383)
424        MAX-ACCESS  read-create
425        STATUS      current
426        DESCRIPTION
427            "This object represents a pointer to the object
428            describing the quality of service attributes
429            associated with the registered service of the
430            subscriber.
431            For DOCSIS1.0 (and DOCSIS1.0+) subscribers it is the
432            index in the docsIfQosProfileTable. If no associated
433            entry in docsIfQosProfileTable exists, this object
434            returns a value of zero. Similarly this object
435            can be set to 0 to indicate no entry in the
436            docsIfQosProfileTable associated with this QoS profile.
437            This object is applicable for DOCSIS1.0 (and
438            DOCSIS1.0+) modems and it can be set only when
439            ccqmCmtsEnfRuleDocsVer is set to docsis10(2).
440            This object cannot be changed when
441            ccqmCmtsEnfRuleRowStatus is active(1)."
442        REFERENCE
443            "docsIfQosProfIndex from
444             draft-ietf-ipcdn-docs-rfmibv2-05.txt"
445        DEFVAL      { 0 }
446        ::= { ccqmCmtsEnforceRuleEntry 3 }
447
448ccqmCmtsEnfRuleMonDuration OBJECT-TYPE
449        SYNTAX      Unsigned32(10..44640)
450        UNITS       "minutes"
451        MAX-ACCESS  read-create
452        STATUS      current
453        DESCRIPTION
454            "This object represents the duration for which
455            subscribers would be monitored to determine if they
456            were over consuming resources.
457            This object can be set only when ccqmCmtsEnfRuleMonType
458            is set to basic(1).
459            If peak-offpeak monitoring is enabled i.e.,
460            ccqmCmtsEnfRuleMonType and is set to peakOffPeak (2) this
461            object when polled would return the duration value valid
462            at that time of the day and 0 if no monitoring is taking
463            place at that time.
464            Both ccqmCmtsEnfRuleMonDuration and
465            ccqmCmtsEnfRuleAvgRate need to be set before legacy/basic
466            monitoring can be started.
467            This object cannot be changed when
468            ccqmCmtsEnfRuleRowStatus is active(1)."
469        DEFVAL      { 360 }
470        ::= { ccqmCmtsEnforceRuleEntry 4 }
471
472ccqmCmtsEnfRuleSampleRate OBJECT-TYPE
473        SYNTAX      Unsigned32
474        UNITS       "minutes"
475        MAX-ACCESS  read-create
476        STATUS      current
477        DESCRIPTION
478            "This object represents the interval at which a decision
479            would be made to check if the subscriber over consumed his
480            resources based on the subscriber usage in the past
481            duration.
482            Since the duration can range between 10 minutes to 30
483            days hence the range of sample rate would change
484            accordingly too. Some empirical calculations for the
485            same are:
486            The maximum memory to be used per line card for STM is
487            10 MBytes. The maximum number of modems that can be
488            supported is 6000 per line card. Now, per sample memory
489            consumption is 8 bytes hence approximately, the maximum
490            number of samples that can be allowed are
491            10 * 10 ^ 6 / (6 * 10 ^ 3 * 2 * 8) ~ 100
492            Hence, given the duration the sample rate would be
493            calculated as duration / 100 = sample rate only if the
494            duration happens to be more than 1440. For cases when
495            the duration is less than 1440, the sample rate range
496            would be between 10 to 30.
497            This object cannot be changed when
498            ccqmCmtsEnfRuleRowStatus is active(1)."
499        ::= { ccqmCmtsEnforceRuleEntry 5 }
500
501ccqmCmtsEnfRulePenaltyPeriod OBJECT-TYPE
502        SYNTAX      Unsigned32(1..10080)
503        UNITS       "minutes"
504        MAX-ACCESS  read-create
505        STATUS      current
506        DESCRIPTION
507            "This object represents the period in which the
508            enforced QoS parameter set will be in effect from
509            the time of detection.
510            When the time as defined by this object expires, the
511            registered QoS parameter set would be restored.
512            This object cannot be changed when
513            ccqmCmtsEnfRuleRowStatus is active(1)."
514        DEFVAL      { 10080 }
515        ::= { ccqmCmtsEnforceRuleEntry 6 }
516
517
518ccqmCmtsEnfRuleByteCount OBJECT-TYPE
519        SYNTAX      Unsigned32
520        UNITS       "1000 bytes"
521        MAX-ACCESS  read-create
522        STATUS      obsolete
523        DESCRIPTION
524            "The number of kbytes that the subscriber can transmit in
525             the monitoring duration as indicated by
526             ccqmCmtsEnfRuleMonDuration before being flagged as over
527             consuming.
528             This object cannot be changed when
529             ccqmCmtsEnfRuleRowStatus is active(1)."
530        ::= { ccqmCmtsEnforceRuleEntry 7 }
531
532ccqmCmtsEnfRuleDirection OBJECT-TYPE
533        SYNTAX      CCQMRuleDirection
534        MAX-ACCESS  read-create
535        STATUS      current
536        DESCRIPTION
537            "Specifies if the average rate specified by
538             ccqmCmtsEnfRuleAvgRate is for the upstream/downstream
539             direction.
540             Setting to bidirection(3) is not permitted.
541             This object cannot be changed when
542             ccqmCmtsEnfRuleRowStatus is active(1)."
543        ::= { ccqmCmtsEnforceRuleEntry 8 }
544
545ccqmCmtsEnfRuleAutoEnforce OBJECT-TYPE
546        SYNTAX      TruthValue
547        MAX-ACCESS  read-create
548        STATUS      current
549        DESCRIPTION
550            "If the ccqmCmtsEnfRuleAutoEnforce is TRUE, the enforced QoS
551             parameter set as specified by ccqmCmtsEnfRuleEnfQos for
552             DOCSIS1.0 (and DOCSIS1.0+) modems or
553             ccqmCmtsEnfRuleEnfSerClassName for DOCSIS1.1 and
554             DOCSIS2.0 modems will be automatically enforced when
555             an over consuming subscriber is detected. Otherwise the
556             change should be done manually.
557             This object cannot be changed when
558             ccqmCmtsEnfRuleRowStatus is active(1)."
559       DEFVAL        { false }
560        ::= { ccqmCmtsEnforceRuleEntry 9 }
561
562ccqmCmtsEnfRuleRowStatus OBJECT-TYPE
563        SYNTAX      RowStatus
564        MAX-ACCESS  read-create
565        STATUS      current
566        DESCRIPTION
567            "The object controls and reflects the status of rows in this
568            table. All row status values are supported.
569            The status of the row needs to be changed from active(1) to
570            notInService(2) in cases when any of the enforce rule
571            objects need to be changed. If there is any monitoring
572            associated with this enforce rule ongoing at this time, it
573            as well as all the statistics collected over the sample
574            rate and monitoring duration will be cleared when the
575            row status is changed from active(1) to notInService(2).
576            The monitoring will start again only when the row status
577            is changed to active(1)."
578        ::= { ccqmCmtsEnforceRuleEntry 10 }
579
580ccqmCmtsEnfRuleAvgRate OBJECT-TYPE
581        SYNTAX      Unsigned32
582        UNITS       "kbits/sec"
583        MAX-ACCESS  read-create
584        STATUS      current
585        DESCRIPTION
586            "This object defines the rate at which the subscriber is
587            allowed to consume for the monitoring duration. So, if
588            this rate is defined to be 2kbits/sec and the monitoring
589            duration is set to be 120 minutes, then every sample period
590            the subscribers consumption in the last monitoring duration
591            would be compared against 1.8Mbytes.
592            This object can be set only when ccqmCmtsEnfRuleMonType is
593            set to basic(1) else when polled it will return the
594            rate valid at that time of the day and 0 if no
595            monitoring is taking place at that time."
596        ::= { ccqmCmtsEnforceRuleEntry 11 }
597
598ccqmCmtsEnfRuleDocsVer OBJECT-TYPE
599        SYNTAX      INTEGER {
600                       others(1),
601                       docsis10(2)
602                    }
603        MAX-ACCESS  read-create
604        STATUS      current
605        DESCRIPTION
606            "This defines the DOCSIS version of the modems that the
607            enforce rule would be applicable to. If it is set to
608            docsis10(2) then only ccqmCmtsEnfRuleRegQoS
609            and ccqmCmtsEnfRuleEnfQoS can be set and if previously
610            ccqmCmtsEnfRuleRegSerClassName and
611            ccqmCmtsEnfRuleEnfSerClassName were set, they will be
612            reset to NULL and if it set to others(1) then
613            only ccqmCmtsEnfRuleRegSerClassName and
614            ccqmCmtsEnfRuleEnfSerClassName can be set and if previously
615            ccqmCmtsEnfRuleRegQoS and ccqmCmtsEnfRuleEnfQoS were set
616            they will be reset to 0."
617        DEFVAL        { docsis10 }
618        ::= { ccqmCmtsEnforceRuleEntry 12 }
619
620ccqmCmtsEnfRuleRegSerClassName OBJECT-TYPE
621        SYNTAX      DisplayString (SIZE(1..16))
622        MAX-ACCESS  read-create
623        STATUS      current
624        DESCRIPTION
625            "This object represents a pointer to the object
626            describing the quality of service attributes
627            associated with the registered service of the
628            subscriber. For DOCSIS1.1 and DOCSIS2.0 subscribers it is
629            same as docsQosParamSetServiceClassName in
630            docsQosParamSetTable. This object is applicable for
631            DOCSIS1.1 and DOCSIS2.0 modems and it can be set only
632            when ccqmCmtsEnfRuleDocsVer is set to others(1).
633            This object cannot be changed when
634            ccqmCmtsEnfRuleRowStatus is active(1)."
635        ::= { ccqmCmtsEnforceRuleEntry 13 }
636
637ccqmCmtsEnfRuleEnfSerClassName OBJECT-TYPE
638        SYNTAX      DisplayString (SIZE(1..16))
639        MAX-ACCESS  read-create
640        STATUS      current
641        DESCRIPTION
642            "This object represents a pointer to the object
643            describing the quality of service attributes
644            associated with the registered service of the
645            subscriber. For DOCSIS1.1 and DOCSIS2.0 subscribers it
646            is same as docsQosParamSetServiceClassName in
647            docsQosParamSetTable. This object is applicable only for
648            DOCSIS1.1 modems and DOCSIS2.0 and it can be set only when
649            ccqmCmtsEnfRuleDocsVer is set to others(1).
650            This object cannot be changed when
651            ccqmCmtsEnfRuleRowStatus is active(1)."
652        ::= { ccqmCmtsEnforceRuleEntry 14 }
653
654ccqmCmtsEnfRuleMonType OBJECT-TYPE
655        SYNTAX      INTEGER {
656                       basic(1),
657                       peakOffPeak(2)
658                    }
659        MAX-ACCESS  read-create
660        STATUS      current
661        DESCRIPTION
662            "This object defines the monitoring type. If it is set
663            to basic(1), then ccqmCmtsEnfRuleMonDuration and
664            ccqmCmtsEnfRuleAvgRate are used to define the monitoring
665            and if the peak-offpeak objects were set before, they will
666            all be reset to 0 and if the user sets this object to
667            peakOffPeak(2) the peak-offpeak objects are used to define
668            the monitoring and ccqmCmtsEnfRuleMonDuration and
669            ccqmCmtsEnfRuleAvgRate, if set before, will be reset to 0."
670        DEFVAL        { basic }
671        ::= { ccqmCmtsEnforceRuleEntry 15 }
672
673ccqmCmtsEnfRuleFirstPeakTime OBJECT-TYPE
674        SYNTAX      Unsigned32(0..23)
675        MAX-ACCESS  read-create
676        STATUS      current
677        DESCRIPTION
678            "The user can define two peak times and the
679             remaining hours will be treated as offpeak and the
680             monitoring will happen for these offpeak hours if
681             ccqmCmtsEnfRuleOffPeakDuration and
682             ccqmCmtsEnfRuleOffPeakAvgRate are defined. The first
683             peak parameters are defined using
684             ccqmCmtsEnfRuleFirstPeakTime,
685             ccqmCmtsEnfRuleFirstDuration and
686             ccqmCmtsEnfRuleFirstAvgRate objects while the second
687             peak parameters can be defined using
688             ccqmCmtsEnfRuleSecondPeakTime,
689             ccqmCmtsEnfRuleSecondDuration and
690             ccqmCmtsEnfRuleSecondAvgRate. Each peak time has an
691             associated average rate and a duration for which that
692             average rate holds good.
693             Defining the first peak is mandatory, though
694             defining the second peak and offpeak is not mandatory.
695             Both these peak times should be defined such that they
696             don't overlap and the first peak time has to be an earlier
697             time than the second peak time.
698             User would need to use 24 hour clock for setting this.
699             This object cannot be changed when
700             ccqmCmtsEnfRuleRowStatus is active(1)."
701        ::= { ccqmCmtsEnforceRuleEntry 16 }
702
703ccqmCmtsEnfRuleFirstDuration OBJECT-TYPE
704        SYNTAX      Unsigned32(60..1440)
705        UNITS       "minutes"
706        MAX-ACCESS  read-create
707        STATUS      current
708        DESCRIPTION
709            "This object defines the duration for which the first
710             peak time would be applicable. When
711             ccqmCmtsEnfRuleMonDuration is polled during first peak,
712             it will return this value. The ccqmCmtsEnfRuleFirstPeakTime
713             has to be defined before defining this object else it
714             will be taken to start from 0.
715             This object cannot be changed when
716             ccqmCmtsEnfRuleRowStatus is active(1)."
717        ::= { ccqmCmtsEnforceRuleEntry 17 }
718
719ccqmCmtsEnfRuleFirstAvgRate OBJECT-TYPE
720        SYNTAX      Unsigned32
721        UNITS       "kbits/sec"
722        MAX-ACCESS  read-create
723        STATUS      current
724        DESCRIPTION
725            "This object defines the rate at which the subscriber is
726             allowed to consume during the first peak duration. The
727             ccqmCmtsEnfRuleFirstDuration has to be defined before
728             defining this value.
729             This object cannot be changed when
730             ccqmCmtsEnfRuleRowStatus is active(1)."
731        ::= { ccqmCmtsEnforceRuleEntry 18 }
732
733ccqmCmtsEnfRuleSecondPeakTime OBJECT-TYPE
734        SYNTAX      Unsigned32(0..23)
735        MAX-ACCESS  read-create
736        STATUS      current
737        DESCRIPTION
738            "The user can define two peak times in a day. The second
739             peak is defined using ccqmCmtsEnfRuleSecondPeakTime,
740             ccqmCmtsEnfRuleSecondDuration and
741             ccqmCmtsEnfRuleSecondThreshold objects while the first
742             peak is defined using ccqmCmtsEnfRuleFirstPeakTime,
743             ccqmCmtsEnfRuleFirstDuration and
744             ccqmCmtsEnfRuleFirstDuration. For the remaining hours in
745             the day, the off-peak monitoring would happen if
746             both  ccqmCmtsEnfRuleOffPeakDuration and
747             ccqmCmtsEnfRuleOffPeakThreshold are defined.
748             Defining the first peak is mandatory, though
749             defining the second peak and offpeak is not mandatory.
750             Both these peak times should be defined such that they
751             don't overlap and the first peak time has to be an earlier
752             time than the second peak time.
753             ccqmCmtsEnfRuleSecondDuration can be set to 0 to
754             indicate that the second peak monitoring no longer
755             needs to be performed. The first peak has to be
756             defined before defining the second peak time.
757             User would need to use 24 hour clock for setting this.
758             This object cannot be changed when
759             ccqmCmtsEnfRuleRowStatus is active(1)."
760        ::= { ccqmCmtsEnforceRuleEntry 19 }
761
762ccqmCmtsEnfRuleSecondDuration OBJECT-TYPE
763        SYNTAX      Unsigned32(0..1380)
764        UNITS       "minutes"
765        MAX-ACCESS  read-create
766        STATUS      current
767        DESCRIPTION
768            "This object defines the duration for which the second
769             peak time would be applicable. When
770             ccqmCmtsEnfRuleMonDuration is polled during second peak,
771             it will return this value. It can be set to 0 to
772             indicate that the second peak monitoring no longer needs
773             to be performed. The ccqmCmtsEnfRuleSecondPeakTime has
774             to be defined before defining this object.
775             This object cannot be changed when
776             ccqmCmtsEnfRuleRowStatus is active(1)."
777        ::= { ccqmCmtsEnforceRuleEntry 20 }
778
779ccqmCmtsEnfRuleSecondAvgRate OBJECT-TYPE
780        SYNTAX      Unsigned32
781        UNITS       "kbits/sec"
782        MAX-ACCESS  read-create
783        STATUS      current
784        DESCRIPTION
785            "This object defines the rate at which the subscriber is
786             allowed to consume during the second peak duration. The
787             ccqmCmtsEnfRuleSecondDuration has to be defined before
788             defining this value.
789             This object cannot be changed when
790             ccqmCmtsEnfRuleRowStatus is active(1)."
791        ::= { ccqmCmtsEnforceRuleEntry 21 }
792
793ccqmCmtsEnfRuleOffPeakDuration OBJECT-TYPE
794        SYNTAX      Unsigned32(0..1380)
795        UNITS       "minutes"
796        MAX-ACCESS  read-create
797        STATUS      current
798        DESCRIPTION
799            "This object defines the monitoring-duration that
800             would be applicable for the offpeak times of the day.
801             The off peak times are the times during the day when
802             none of the first peak and second peak times are defined.
803             If this object is set, when ccqmCmtsEnfRuleMonDuration
804             is polled during offpeak times, it would return this value.
805             Since only defining the first peak is mandatory, and
806             defining second peak and off peak are optional the
807             monitoring combinations during the day could be:
808             1) Only first peak
809             2) First peak and second peak
810             3) First peak and off peak
811             4) All three i.e., first peak, second peak and off peak.
812             It can be set to 0 to indicate that the offpeak monitoring
813             no longer needs to be performed. The first peak
814             parameters have to be defined before defining this object.
815             This object cannot be changed when
816             ccqmCmtsEnfRuleRowStatus is active(1)."
817        ::= { ccqmCmtsEnforceRuleEntry 22 }
818
819ccqmCmtsEnfRuleOffPeakAvgRate OBJECT-TYPE
820        SYNTAX      Unsigned32
821        UNITS       "kbits/sec"
822        MAX-ACCESS  read-create
823        STATUS      current
824        DESCRIPTION
825            "This object defines the rate at which the subscriber is
826             allowed to consume during the off-peak duration. The
827             ccqmCmtsEnfRuleOffPeakDuration has to be defined before
828             defining this value.
829             This object cannot be changed when
830             ccqmCmtsEnfRuleRowStatus is active(1)."
831        ::= { ccqmCmtsEnforceRuleEntry 23 }
832
833--
834-- ccqmEnfRuleViolateTable provides a snapshot of all the
835-- subscribers who violated their enforce rule over the
836-- monitoring period.
837--
838-- A sliding window, the size of the monitoring duration
839-- is used. This window slides by an amount that is equal
840-- to the sample rate. At every sample rate the bytes
841-- transmitted in the time equal to a monitoring duration is
842-- checked. If this is found to be larger than the defined
843-- byte count limit per monitoring duration, the subscriber
844-- is flagged as over consuming or violating the enforce rule.
845--
846-- This table will show all violating subscribers irrespective
847-- if they are associated with an enforced QoS parameter
848-- set or not.
849--
850
851ccqmEnfRuleViolateTable OBJECT-TYPE
852        SYNTAX      SEQUENCE OF CcqmEnfRuleViolateEntry
853        MAX-ACCESS  not-accessible
854        STATUS      current
855        DESCRIPTION
856            "This table contains information of the subscribers
857            who violated their enforce rule over the monitoring
858            duration.
859            In the sliding window concept used, the monitoring duration
860            is the size of the window. This window slides by an amount
861            that is equal to the sample rate. At every sample rate
862            the bytes transmitted in the time equal to a monitoring
863            duration is checked. If this is found to be larger than
864            the defined byte count limit per monitoring duration, the
865            subscriber is flagged as over consuming or to have violated
866            his enforce rule.
867            This table has entries for each of these violating
868            subscribers. In case the violating subscriber has
869            a enforced QoS parameter set, the QoS parameter set for
870            such subscribers will be changed to the enforced QoS
871            parameter set for the penalty time. When the penalty time
872            expires, the subscriber gets his registered QoS parameter
873            set restored and will no longer appear in this table but
874            will be monitored. "
875        ::= { ccqmRuleViolateObjects 2 }
876
877ccqmEnfRuleViolateEntry OBJECT-TYPE
878        SYNTAX      CcqmEnfRuleViolateEntry
879        MAX-ACCESS  not-accessible
880        STATUS      current
881        DESCRIPTION
882            "A set of attributes of a subscriber who violated
883            his enforce rule in the monitoring period.
884            An entry in this table exists for each subscriber
885            who over-consumed resources based on his configured
886            QoS parameter set. However those subscribers who
887            have an enforced QoS parameter set associated with
888            their enforce rule, will be removed from this table
889            once their penalty time expires. An entry in this table
890            can exist for ifEntry with an ifType of
891            docsCableMaclayer(127)."
892        INDEX { ifIndex, ccqmEnfRuleViolateID }
893        ::= { ccqmEnfRuleViolateTable 1 }
894
895CcqmEnfRuleViolateEntry ::= SEQUENCE {
896             ccqmEnfRuleViolateID              Unsigned32,
897             ccqmEnfRuleViolateMacAddr         MacAddress,
898             ccqmEnfRuleViolateRuleName        DisplayString,
899             ccqmEnfRuleViolateByteCount       Unsigned32,
900             ccqmEnfRuleViolateLastDetectTime  DateAndTime,
901             ccqmEnfRuleViolatePenaltyExpTime  DateAndTime
902        }
903
904ccqmEnfRuleViolateID  OBJECT-TYPE
905        SYNTAX      Unsigned32
906        MAX-ACCESS  not-accessible
907        STATUS      current
908        DESCRIPTION
909            "An index assigned to the service flow by the CMTS.
910            This represents an internal service flow ID."
911        ::= { ccqmEnfRuleViolateEntry 1 }
912
913ccqmEnfRuleViolateMacAddr OBJECT-TYPE
914        SYNTAX      MacAddress
915        MAX-ACCESS  read-only
916        STATUS      current
917        DESCRIPTION
918            "MAC address of this subscriber. If the subscriber has
919            multiple MAC addresses, this is the MAC address associated
920            with the Cable interface."
921        ::= { ccqmEnfRuleViolateEntry 2 }
922
923ccqmEnfRuleViolateRuleName  OBJECT-TYPE
924        SYNTAX      DisplayString (SIZE(1..15))
925        MAX-ACCESS  read-only
926        STATUS      current
927        DESCRIPTION
928            "A pointer to the enforce rule associated with this
929             subscriber. It provides for referencing the enforce rule
930             to determine the QoS monitoring parameters. This is same
931             as ccqmCmtsEnfRuleName for the corresponding enforce rule
932             in ccqmCmtsEnforceRuleTable."
933        ::= { ccqmEnfRuleViolateEntry 3 }
934
935ccqmEnfRuleViolateByteCount  OBJECT-TYPE
936        SYNTAX      Unsigned32
937        UNITS       "kbytes"
938        MAX-ACCESS  read-only
939        STATUS      current
940        DESCRIPTION
941            "The total kbytes consumed by the subscriber in the
942            monitoring duration as specified in the corresponding
943            enforce rule object ccqmCmtsEnfRuleMonDuration. If the
944            monitoring is restarted due to change in enforce rule
945            or any other circumstance this count will be reset."
946        ::= { ccqmEnfRuleViolateEntry 4 }
947
948ccqmEnfRuleViolateLastDetectTime  OBJECT-TYPE
949        SYNTAX      DateAndTime
950        MAX-ACCESS  read-only
951        STATUS      current
952        DESCRIPTION
953            "The time at which the subscriber was found to have violated
954            his enforce rule and the time from which the enforced QoS
955            parameter set, if any, was in effect. "
956        ::= { ccqmEnfRuleViolateEntry 5 }
957
958ccqmEnfRuleViolatePenaltyExpTime  OBJECT-TYPE
959        SYNTAX      DateAndTime
960        MAX-ACCESS  read-only
961        STATUS      current
962        DESCRIPTION
963            "The time when the original QoS parameter set will be
964            restored for this violating subscriber. If there was
965            no enforced QoS parameter set configured for this
966            subscriber this object returns 0."
967        ::= { ccqmEnfRuleViolateEntry 6 }
968
969--
970-- To provide additional level of control, user can set thresholds
971-- for downstream/upstream bandwidth utilization, and only when these
972-- thresholds are exceeded will the monitoring of modems (their
973-- appropriate service flows) will take place. So, for example, if the
974-- threshold for downstream bandwidth utilization is set at 90% and for
975-- upstream it is 80%, the primary downstream service flow for the
976-- modem attached to this downstream will take place when the load on
977-- the downstream exceeds 90% while for the upstream service flow it
978-- will be monitored if the load on the upstream bandwidth utilization
979-- to which the modem is associated with exceeds 80%. This threshold is
980-- the upper threshold, suppose the interface bandwidth utilization
981-- drops below this upper threshold, the monitoring would keep
982-- happening till it drops below another threshold which is the lower
983-- threshold. Thus, for the above case, for instance the monitoring
984-- for the downstream service flow would stop after the interface
985-- bandwidth utilization drops below 40% while the same for upstream
986-- could be 30%. This hysteresis is to take care of fluctuations in
987-- the load on the interface.
988--
989ccqmCmtsIfBwUtilTable OBJECT-TYPE
990       SYNTAX      SEQUENCE OF CcqmCmtsIfBwUtilEntry
991       MAX-ACCESS  not-accessible
992       STATUS      current
993       DESCRIPTION
994           "This table contains the attributes which define the
995            bandwidth utilization thresholds for the upstream and
996            downstream interfaces and when the load on these interfaces
997            exceeds the upper threshold, the monitoring of the
998            associated modems service flows starts, and it stops when
999            the interface utilization drops below the lower threshold.
1000            For the monitoring to start, there should be appropriate
1001            enforce-rules defined. In case no thresholds are defined,
1002            by default the monitoring of modems would take place if
1003            the appropriate enforce-rules are present."
1004       ::= { ccqmRuleIfBwUtilObjects 1 }
1005
1006ccqmCmtsIfBwUtilEntry OBJECT-TYPE
1007        SYNTAX      CcqmCmtsIfBwUtilEntry
1008        MAX-ACCESS  not-accessible
1009        STATUS      current
1010        DESCRIPTION
1011            "A set of attributes to provide additional level of
1012            control for monitoring modems. It is indexed by the
1013            ifIndex of upstream/downstream interface, thus, only
1014            docsCableDownstreamInterface(128) and
1015            docsCableUpstreamInterface(129) are allowed to be
1016            configured."
1017        INDEX { ifIndex }
1018        ::= { ccqmCmtsIfBwUtilTable 1 }
1019
1020CcqmCmtsIfBwUtilEntry ::= SEQUENCE {
1021            ccqmCmtsIfBwUtilUpThreshold Unsigned32,
1022            ccqmCmtsIfBwUtilLoThreshold Unsigned32,
1023            ccqmCmtsIfBwUtilRowStatus   RowStatus
1024     }
1025
1026ccqmCmtsIfBwUtilUpThreshold OBJECT-TYPE
1027        SYNTAX      Unsigned32 (1..99)
1028        UNITS       "percent"
1029        MAX-ACCESS  read-create
1030        STATUS      current
1031        DESCRIPTION
1032            "This object defines the upper threshold for the interface
1033             bandwidth utilization and when interface bandwidth
1034             utilization exceeds this threshold, monitoring of the
1035             appropriate modem's service flow will start if there is an
1036             asociated enforce-rule present. This object can't be set
1037             to a value lower than ccqmCmtsIfBwUtilLoThreshold."
1038        DEFVAL     { 80 }
1039        ::= { ccqmCmtsIfBwUtilEntry 1 }
1040
1041ccqmCmtsIfBwUtilLoThreshold OBJECT-TYPE
1042        SYNTAX      Unsigned32 (1..99)
1043        UNITS       "percent"
1044        MAX-ACCESS  read-create
1045        STATUS      current
1046        DESCRIPTION
1047            "This object defines the lower threshold for the interface
1048             bandwidth utilization and when interface bandwidth
1049             utilization drops below this threshold, the monitoring of
1050             the appropriate modem's service flow will stop. This
1051             object can't be set to a value higher than
1052             ccqmCmtsIfBwUtilUpThreshold."
1053        DEFVAL     { 40 }
1054        ::= { ccqmCmtsIfBwUtilEntry 2 }
1055
1056ccqmCmtsIfBwUtilRowStatus  OBJECT-TYPE
1057        SYNTAX      RowStatus
1058        MAX-ACCESS  read-create
1059        STATUS      current
1060        DESCRIPTION
1061            "The object controls and reflects the status of rows in this
1062             table. create-and-wait is not supported.
1063             The objects can be changed even when the row status is
1064             active(1)."
1065        ::= { ccqmCmtsIfBwUtilEntry 3 }
1066
1067
1068--
1069-- Object to enable and disable sending traps to indicate Enforce Rule
1070-- violations
1071--
1072ccqmEnfRuleViolateNotifEnable  OBJECT-TYPE
1073        SYNTAX      TruthValue
1074        MAX-ACCESS  read-write
1075        STATUS      current
1076        DESCRIPTION
1077            "An indication of whether the ccqmEnfRuleViolateNotification
1078            is enabled or disabled."
1079        DEFVAL { false }
1080        ::= { ccqmRuleViolateObjects 3 }
1081
1082
1083--
1084-- The Cisco Cable QoS Monitoring MIB Notifications
1085--
1086
1087ccqmMIBNotificationsPrefix   OBJECT IDENTIFIER
1088                ::= { ciscoCableQosMonitorMIB  2 }
1089
1090ccqmMIBNotifications         OBJECT IDENTIFIER
1091                ::= { ccqmMIBNotificationsPrefix 0 }
1092
1093ccqmEnfRuleViolateNotification  NOTIFICATION-TYPE
1094       OBJECTS {
1095            ccqmEnfRuleViolateMacAddr,
1096            ccqmEnfRuleViolateRuleName,
1097            ccqmEnfRuleViolatePenaltyExpTime,
1098            ccqmEnfRuleViolateByteCount
1099       }
1100       STATUS current
1101       DESCRIPTION
1102           "A notification that is sent when the subscriber
1103           if found to have violated his enforce rule. This
1104           indicates that this subscriber was found to be
1105           over consuming resources. If the enforce rule
1106           associated with this subscriber has a enforced QoS
1107           parameter set configured, the trap also indicates
1108           that the QoS parameter set of this subscriber are
1109           changed to the enforced QoS parameter set. "
1110       ::= { ccqmMIBNotifications 1 }
1111
1112
1113ccqmMIBConformance         OBJECT IDENTIFIER
1114                ::= { ciscoCableQosMonitorMIB 3 }
1115
1116ccqmMIBCompliances         OBJECT IDENTIFIER
1117                ::= { ccqmMIBConformance 1 }
1118
1119ccqmMIBGroups              OBJECT IDENTIFIER
1120                ::= { ccqmMIBConformance 2 }
1121
1122-- compliance statements
1123
1124ccqmCompliance  MODULE-COMPLIANCE
1125        STATUS  obsolete -- superseded by ccqmComplianceRev1
1126        DESCRIPTION
1127            "The compliance statement for CMTS devices that implement
1128            the Qos Monitoring feature. "
1129        MODULE -- this module
1130                MANDATORY-GROUPS {
1131                        ccqmEnfRuleGroup,
1132                        ccqmEnfRuleViolateGroup,
1133                        ccqmEnfRuleViolateNotifGroup
1134                        }
1135        OBJECT       ccqmCmtsEnfRuleSampleRate
1136        WRITE-SYNTAX Unsigned32 (10..30)
1137        DESCRIPTION
1138            "Currently only the range 10 to 30 minutes
1139            is supported."
1140        ::= { ccqmMIBCompliances 1 }
1141
1142ccqmComplianceRev1  MODULE-COMPLIANCE
1143        STATUS  current
1144        DESCRIPTION
1145            "The compliance statement for CMTS devices that implement
1146            the Qos Monitoring feature. "
1147        MODULE -- this module
1148                MANDATORY-GROUPS {
1149                        ccqmEnfRuleGroupRev1,
1150                        ccqmEnfRuleViolateGroup,
1151                        ccqmCmtsRuleIfBwUtilGroup,
1152                        ccqmEnfRuleViolateNotifGroup
1153                        }
1154        ::= { ccqmMIBCompliances 2 }
1155
1156-- units of conformance
1157
1158ccqmEnfRuleGroup OBJECT-GROUP
1159        OBJECTS {
1160              ccqmCmtsEnfRuleRegQoS,
1161              ccqmCmtsEnfRuleEnfQos,
1162              ccqmCmtsEnfRuleMonDuration,
1163              ccqmCmtsEnfRuleSampleRate,
1164              ccqmCmtsEnfRulePenaltyPeriod,
1165              ccqmCmtsEnfRuleByteCount,
1166              ccqmCmtsEnfRuleDirection,
1167              ccqmCmtsEnfRuleAutoEnforce,
1168              ccqmCmtsEnfRuleRowStatus
1169             }
1170        STATUS    obsolete -- superseded by ccqmEnfRuleGroupRev1
1171        DESCRIPTION
1172            "Group of objects implemented in CMTS
1173            providing enforce rule and QoS monitoring
1174            information. "
1175        ::= { ccqmMIBGroups 1 }
1176
1177ccqmEnfRuleViolateGroup OBJECT-GROUP
1178        OBJECTS {
1179              ccqmEnfRuleViolateRuleName,
1180              ccqmEnfRuleViolateMacAddr,
1181              ccqmEnfRuleViolateByteCount,
1182              ccqmEnfRuleViolateLastDetectTime,
1183              ccqmEnfRuleViolatePenaltyExpTime,
1184              ccqmEnfRuleViolateNotifEnable
1185             }
1186        STATUS    current
1187        DESCRIPTION
1188            "Group of objects implemented in CMTS
1189            providing information of enforce rule
1190            violations. "
1191        ::= { ccqmMIBGroups 2 }
1192
1193ccqmEnfRuleViolateNotifGroup NOTIFICATION-GROUP
1194        NOTIFICATIONS {
1195             ccqmEnfRuleViolateNotification
1196             }
1197        STATUS        current
1198        DESCRIPTION
1199            "The notification which a CISCO-CABLE-QOS-MONITOR-MIB
1200            is required to implement."
1201        ::= { ccqmMIBGroups 3 }
1202
1203ccqmEnfRuleGroupRev1 OBJECT-GROUP
1204        OBJECTS {
1205              ccqmCmtsEnfRuleRegQoS,
1206              ccqmCmtsEnfRuleEnfQos,
1207              ccqmCmtsEnfRuleMonDuration,
1208              ccqmCmtsEnfRuleSampleRate,
1209              ccqmCmtsEnfRulePenaltyPeriod,
1210              ccqmCmtsEnfRuleDirection,
1211              ccqmCmtsEnfRuleAutoEnforce,
1212              ccqmCmtsEnfRuleRowStatus,
1213              ccqmCmtsEnfRuleAvgRate,
1214              ccqmCmtsEnfRuleDocsVer,
1215              ccqmCmtsEnfRuleRegSerClassName,
1216              ccqmCmtsEnfRuleEnfSerClassName,
1217              ccqmCmtsEnfRuleMonType,
1218              ccqmCmtsEnfRuleFirstPeakTime,
1219              ccqmCmtsEnfRuleFirstDuration,
1220              ccqmCmtsEnfRuleFirstAvgRate,
1221              ccqmCmtsEnfRuleSecondPeakTime,
1222              ccqmCmtsEnfRuleSecondDuration,
1223              ccqmCmtsEnfRuleSecondAvgRate,
1224              ccqmCmtsEnfRuleOffPeakDuration,
1225              ccqmCmtsEnfRuleOffPeakAvgRate
1226             }
1227        STATUS    current
1228        DESCRIPTION
1229            "Group of objects implemented in CMTS
1230            providing enforce rule and QoS monitoring
1231            information. "
1232        ::= { ccqmMIBGroups 4 }
1233
1234ccqmCmtsRuleIfBwUtilGroup OBJECT-GROUP
1235        OBJECTS {
1236               ccqmCmtsIfBwUtilUpThreshold,
1237               ccqmCmtsIfBwUtilLoThreshold,
1238               ccqmCmtsIfBwUtilRowStatus
1239             }
1240        STATUS    current
1241        DESCRIPTION
1242            "Group of objects implemented in CMTS
1243            providing information of interface utilization
1244            thresholds. "
1245        ::= { ccqmMIBGroups 5 }
1246
1247END
1248