Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / mibs / ietf / DOCS-CABLE-DEVICE-MIB
1 DOCS-CABLE-DEVICE-MIB DEFINITIONS ::= BEGIN
2
3 IMPORTS
4         MODULE-IDENTITY,
5         OBJECT-TYPE,
6         IpAddress,
7         Unsigned32,
8         Counter32,
9         Integer32,
10         zeroDotZero,
11         mib-2
12                 FROM SNMPv2-SMI           -- RFC 2578
13         RowStatus,
14         RowPointer,
15         DateAndTime,
16         TruthValue,
17         StorageType
18                 FROM SNMPv2-TC            -- RFC 2579
19         InetAddressType,
20         InetAddress
21                 FROM INET-ADDRESS-MIB     -- RFC 4001
22         OBJECT-GROUP,
23         MODULE-COMPLIANCE
24                 FROM SNMPv2-CONF          -- RFC 2580
25         SnmpAdminString
26                 FROM SNMP-FRAMEWORK-MIB   -- RFC 3411
27         InterfaceIndexOrZero
28                 FROM IF-MIB               -- RFC 2863
29         ZeroBasedCounter32
30                 FROM RMON2-MIB            -- RFC 4502
31         diffServMIBDataPathGroup,
32         diffServMIBClfrGroup,
33         diffServMIBClfrElementGroup,
34         diffServMIBMultiFieldClfrGroup,
35         diffServMIBActionGroup,
36         diffServMIBDscpMarkActGroup,
37         diffServMIBCounterGroup,
38         diffServMIBAlgDropGroup,
39
40
41
42         diffServDataPathStatus,
43         diffServClfrStatus,
44         diffServClfrElementStatus,
45         diffServMultiFieldClfrAddrType,
46         diffServMultiFieldClfrSrcAddr,
47         diffServMultiFieldClfrDstAddr,
48         diffServAlgDropStatus,
49         diffServDataPathStorage,
50         diffServClfrStorage,
51         diffServClfrElementStorage,
52         diffServMultiFieldClfrStorage,
53         diffServActionStorage,
54         diffServCountActStorage,
55         diffServAlgDropStorage,
56         diffServAlgDropType
57                 FROM DIFFSERV-MIB;        -- RFC 3289
58
59
60 docsDev MODULE-IDENTITY
61         LAST-UPDATED    "200612200000Z" -- December 20, 2006
62         ORGANIZATION    "IETF IP over Cable Data Network
63                          Working Group"
64         CONTACT-INFO
65             "        Rich Woundy
66              Postal: Comcast Cable
67                      27 Industrial Avenue
68                      Chelmsford, MA 01824 U.S.A.
69              Phone:  +1 978 244 4010
70              E-mail: richard_woundy@cable.comcast.com
71
72                      Kevin Marez
73              Postal: Motorola Corporation
74                      6450 Sequence Drive
75                      San Diego, CA 92121 U.S.A.
76              Phone:  +1 858 404 3785
77              E-mail: kevin.marez@motorola.com
78
79              IETF IPCDN Working Group
80              General Discussion: ipcdn@ietf.org
81              Subscribe: http://www.ietf.org/mailman/listinfo/ipcdn
82              Archive: ftp://ftp.ietf.org/ietf-mail-archive/ipcdn
83              Co-chairs: Richard Woundy,
84                         richard_woundy@cable.comcast.com
85                         Jean-Francois Mule,
86                         jf.mule@cablelabs.com"
87
88         DESCRIPTION
89             "This is the MIB Module for DOCSIS-compliant cable modems
90
91
92
93              and cable-modem termination systems.
94
95              Copyright (C) The IETF Trust (2006).  This version
96              of this MIB module was published in RFC 4639; for full
97              legal notices see the RFC itself."
98
99         REVISION "200612200000Z" -- December 20, 2006
100         DESCRIPTION
101             "Second version, published as RFC 4639.
102
103              Modifications to this MIB module since RFC 2669 include:
104              - Deprecation of the docsDevFilter group in favor of the
105                DiffServ MIB groups, to enable support for IPv6
106                filtering and DiffServ Code Point (DSCP) marking.
107              - Deprecation of the docsDevCpeGroup in favor of the
108                docsDevCpeInetGroup, to enable support of IPv6.
109              - Addition of various InetAddress objects to enable
110                support of IPv6.
111              - Deprecation of docsDevNmAccessTable in favor of SNMP
112                Coexistence and SNMPv3 -- yet adding
113                docsDevNmAccessTrapVersion and clarifying
114                docsDevNmAccessIp for current use of this table,
115              - Addition of docsDevIgmpModeControl for management and
116                control of the IGMP mode of operation,
117              - Addition of docsDevMaxCpe for management of the
118                maxmium number of CPEs permitted access through a
119                cable modem,
120              - Addition of docsDevSwServerTransportProtocol, and
121                modifications to docsDevSoftware object DESCRIPTIONS,
122                to enable software downloads via either TFTP or HTTP,
123              - Replacement of docsDevEvThrottleInhibited with
124                docsDevEvThrottleThresholdExceeded to simplify
125                event threshold management,
126              - Modification of docsDevEvReporting to enable local
127                logging to the internal volatile log, and not to the
128                internal non-volatile log,
129              - Modification of the compliance statement to make the
130                docsDevCpe objects optional
131              - Created placeholders for two OIDs in the
132                docsDevFilterPolicyTable that were never used
133              - Modified the DESCRIPTION of
134                docsDevSwServerTransportProtocol and
135                docsDevSwServerAddressType to address the
136                dependence between each object
137              - Added a reference to docsDevServerConfigTftpAddress
138              - Clarified the scope of notifications that are covered
139                by docsDevEvThrottleThreshold
140              - Clarified an error condition that could occur when
141
142
143
144                doing a SET to docsDevEvReporting
145              - Defined each of the enumerated types for both
146                docsDevEvLevel and docsDevEvPriority
147              - Added UNITS clause to docsDevFilterLLCMatches,
148                docsDevFilterIpMatches, docsDevMaxCpe,
149                docsDevEvThrottleThreshold and docsDevEvCounts.
150              - Added REFERENCE clause to docsDevFilterIpProtocol
151              - Modified DESCRIPTION of docsDevCpeInetAddr to be
152                more protocol-neutral
153              - Removed the enumerated value (1) from both
154                docsDevCpeInetSource and docsDevCpeSource
155              - Covered additional read-write and read-create objects
156                in the Security Considerations section
157              - Modified the default value of docsDevNmAccessIpMask
158                to be consistent with OSSI specification
159              - Modified the SYNTAX of docsDevNmAccessCommunity and
160                docsDevNmAccessInterfaces in the Conformance
161                Statement section
162              - Added SYNTAX clause to docsDevEvReporting in the
163                Conformance Statement section
164              - Modified SYNTAX clause of docsDevEvReporting to
165                move new enumerated type to byte boundary
166              - Added references to DOCSIS 2.0 specifications to
167                multiple objects
168              - Clarified non-persistency across reboots for
169                all tables
170              - Clarified functionality of docsDevSw objects as
171                they relate to docsDevSwOperStatus
172              - Clarified enumerated types (9) and (10) for
173                docsDevServerBootState
174              - Defined the state of unknown(0) for the following
175                objects:  docsDevServerDhcpAddressType,
176                docsDevServerTimeAddressType,
177                docsDevServerConfigTftpAddressType and
178                docsDevServerConfigTftpAddressType
179              - Modified the value in docsDevFilterIpDaddr to be
180                consistent with the SYNTAX
181              - Specified which rows could be modified in an
182                active row for docsDevFilterPolicyStatus
183              - Defined the term 'manually' in docsDevCpeEnroll
184              - Clarified the description for
185                docsDevFilterTosOrMask
186              - Covered the case of a non-existent row for
187                docsDevFilterPolicyPtr
188              - Added DEFVAL clauses for multiple objects
189              - Replaced docsDevNotification OBJECT IDENTIFIER
190                with docsDevNotifications to address possible
191                compatibility issues
192
193
194
195              - Added support for the usage of RFC 3413 and RFC 3014
196                as event notification mechanisms
197              - Removed docsDevFilterPolicyObsoleteGroup
198              - Added stdInterface(9) type to docsDevEvReporting to
199                support the usage of RFC3413 and RFC3014
200              - Modified DESCRIPTION for docsDevMaxCpe"
201
202         REVISION "199908190000Z"
203         DESCRIPTION
204             "Initial version, published as RFC 2669."
205
206         ::= { mib-2 69 }
207
208 docsDevMIBObjects  OBJECT IDENTIFIER ::= { docsDev 1 }
209
210 docsDevBase OBJECT IDENTIFIER ::= { docsDevMIBObjects 1 }
211
212 --
213 -- For the following object, there is no concept in the
214 -- RFI specification corresponding to a backup CMTS.  The
215 -- enumeration is provided here in case someone is able
216 -- to define such a role or device.
217 --
218
219 docsDevRole OBJECT-TYPE
220         SYNTAX INTEGER {
221             cm(1),
222             cmtsActive(2),
223             cmtsBackup(3)
224         }
225         MAX-ACCESS  read-only
226         STATUS      current
227         DESCRIPTION
228             "Defines the current role of this device.  cm(1) is a
229              Cable Modem, cmtsActive(2) is a Cable Modem Termination
230              System that is controlling the system of cable modems,
231              and cmtsBackup(3) is a CMTS that is currently connected
232              but is not controlling the system (not currently used).
233
234              In general, if this device is a 'cm', its role will not
235              change during operation or between reboots.  If the
236              device is a 'cmts' it may change between cmtsActive and
237              cmtsBackup and back again during normal operation.  NB:
238              At this time, the DOCSIS standards do not support the
239              concept of a backup CMTS, but cmtsBackup is included for
240              completeness."
241         ::= { docsDevBase 1 }
242
243
244
245
246 docsDevDateTime OBJECT-TYPE
247         SYNTAX      DateAndTime
248         MAX-ACCESS  read-write
249         STATUS      current
250         DESCRIPTION
251             "The current date and time, with time zone information
252              (if known).
253
254              If the real data and time cannot be determined, this
255              shall represent elapsed time from boot relative to
256              the standard epoch '1970-1-1,0:0:0.0'.  In other
257              words, if this agent has been up for 3 minutes and
258              not been able to determine what the actual date and
259              time are, this object will return the value
260              '1970-1-1,0:03:0.0'."
261         ::= { docsDevBase 2 }
262
263 docsDevResetNow OBJECT-TYPE
264         SYNTAX      TruthValue
265         MAX-ACCESS  read-write
266         STATUS      current
267         DESCRIPTION
268             "Setting this object to true(1) causes the device to
269              reset.  Reading this object always returns false(2)."
270         ::= { docsDevBase 3 }
271
272 docsDevSerialNumber OBJECT-TYPE
273         SYNTAX      SnmpAdminString
274         MAX-ACCESS  read-only
275         STATUS      current
276         DESCRIPTION
277             "The manufacturer's serial number for this device."
278         ::= { docsDevBase 4 }
279
280 docsDevSTPControl OBJECT-TYPE
281         SYNTAX INTEGER {
282             stEnabled(1),
283             noStFilterBpdu(2),
284             noStPassBpdu(3)
285         }
286         MAX-ACCESS  read-write
287         STATUS      current
288         DESCRIPTION
289             "This object controls operation of the spanning tree
290              protocol (as distinguished from transparent bridging).
291
292              If set to stEnabled(1), then the spanning tree protocol
293              is enabled, subject to bridging constraints.
294
295
296
297              If noStFilterBpdu(2), then spanning tree is not active,
298              and Bridge PDUs received are discarded.
299
300              If noStPassBpdu(3), then spanning tree is not active,
301              and Bridge PDUs are transparently forwarded.
302
303              Note that a device need not implement all of these
304              options, but that noStFilterBpdu(2) is required."
305         DEFVAL { noStFilterBpdu }
306         ::= { docsDevBase 5 }
307
308 docsDevIgmpModeControl OBJECT-TYPE
309         SYNTAX INTEGER {
310             passive(1),
311             active(2)
312         }
313         MAX-ACCESS  read-write
314         STATUS      current
315         DESCRIPTION
316             "This object controls the IGMP mode of operation for
317              the CM or CMTS.  In passive mode, the device forwards
318              IGMP between interfaces as based on knowledge of
319              Multicast Session activity on the subscriber side
320              interface and the rules defined in the DOCSIS RFI
321              specification.  In active mode, the device terminates
322              at and initiates IGMP through its interfaces as based
323              on the knowledge of Multicast Session activity on the
324              subscriber side interface."
325         REFERENCE
326             "DOCSIS RFI 1.1 Specification, Section 3.3.1. and
327              DOCSIS RFI 2.0 Specification, Section 5.3.1."
328         DEFVAL { passive }
329         ::= { docsDevBase 6 }
330
331 docsDevMaxCpe OBJECT-TYPE
332         SYNTAX      Unsigned32 (0..255)
333         UNITS       "CPEs"
334         MAX-ACCESS  read-only
335         STATUS      current
336         DESCRIPTION
337             "The maximum number of CPEs that can be granted access
338              through a CM during a CM epoch.  This value can be
339              obtained from the CM configuration file; however,
340              it may be adjusted by the CM according to hardware or
341              software limitations that have been imposed on the
342              implementation."
343         REFERENCE
344             "DOCSIS RFI 1.0 Specification, Appendix C.7.20., and
345
346
347
348              DOCSIS RFI 1.1 Specification, Appendix C.1.1.7. and
349              DOCSIS RFI 2.0 Specification, Appendix C.1.1.7."
350         ::= { docsDevBase 7 }
351
352
353 --
354 -- The following table provides one level of security for access
355 -- to the device by network management stations.
356 -- Note that access is also constrained by the
357 -- community strings and any vendor-specific security.
358 --
359
360 docsDevNmAccessTable OBJECT-TYPE
361         SYNTAX      SEQUENCE OF DocsDevNmAccessEntry
362         MAX-ACCESS  not-accessible
363         STATUS      deprecated
364         DESCRIPTION
365             "This table controls access to SNMP objects by network
366              management stations.  If the table is empty, access to
367              SNMP objects is unrestricted.  The objects in this table
368              MUST NOT persist across reboots.  The objects in this
369              table are only accessible from cable devices that are
370              not capable of operating in SNMP Coexistence mode
371              (RFC 3584) or in SNMPv3 mode (RFC 3410).
372              See the conformance section for
373              details.  Note that some devices are required by other
374              specifications (e.g., the DOCSIS OSSIv1.1 specification)
375              to support the legacy SNMPv1/v2c docsDevNmAccess mode
376              for backward compatibility.
377
378              This table is deprecated.  Instead, use the SNMP
379              coexistence MIBs from RFC 3584, the TARGET and
380              NOTIFICATION MIBs from RFC 3413, and
381              the View-Based Access Control Model (VACM) MIBs for
382              all SNMP protocol versions from RFC 3415."
383         ::= { docsDevMIBObjects 2 }
384
385 docsDevNmAccessEntry OBJECT-TYPE
386         SYNTAX      DocsDevNmAccessEntry
387         MAX-ACCESS  not-accessible
388         STATUS      deprecated
389         DESCRIPTION
390             "An entry describing access to SNMP objects by a
391              particular network management station.  An entry in
392              this table is not readable unless the management station
393              has read-write permission (either implicit if the table
394              is empty, or explicit through an entry in this table).
395              Entries are ordered by docsDevNmAccessIndex.  The first
396
397
398
399              matching entry (e.g., matching IP address and community
400              string) is used to derive access."
401         INDEX { docsDevNmAccessIndex }
402         ::= {  docsDevNmAccessTable 1 }
403
404 DocsDevNmAccessEntry ::= SEQUENCE {
405             docsDevNmAccessIndex         Integer32,
406             docsDevNmAccessIp            IpAddress,
407             docsDevNmAccessIpMask        IpAddress,
408             docsDevNmAccessCommunity     OCTET STRING,
409             docsDevNmAccessControl       INTEGER,
410             docsDevNmAccessInterfaces    OCTET STRING,
411             docsDevNmAccessStatus        RowStatus,
412             docsDevNmAccessTrapVersion   INTEGER
413         }
414
415 docsDevNmAccessIndex OBJECT-TYPE
416         SYNTAX      Integer32 (1..2147483647)
417         MAX-ACCESS  not-accessible
418         STATUS      deprecated
419         DESCRIPTION
420             "Index used to order the application of access
421              entries."
422         ::= { docsDevNmAccessEntry 1 }
423
424 docsDevNmAccessIp OBJECT-TYPE
425         SYNTAX      IpAddress
426         MAX-ACCESS  read-create
427         STATUS      deprecated
428         DESCRIPTION
429             "The IP address (or subnet) of the network management
430              station.  The address 0.0.0.0 is defined to mean
431              any Network Management Station (NMS).  If traps are
432              enabled for this entry, then the value must be the
433              address of a specific device.  Implementations MAY
434              recognize 255.255.255.255 as equivalent to 0.0.0.0."
435         DEFVAL { '00000000'h }
436         ::= { docsDevNmAccessEntry 2 }
437
438 docsDevNmAccessIpMask OBJECT-TYPE
439         SYNTAX      IpAddress
440         MAX-ACCESS  read-create
441         STATUS      deprecated
442         DESCRIPTION
443             "The IP subnet mask of the network management stations.
444              If traps are enabled for this entry, then the value must
445              be 0.0.0.0.  Implementations MAY recognize
446              255.255.255.255 as equivalent to 0.0.0.0."
447
448
449
450         DEFVAL { '00000000'h }
451         ::= { docsDevNmAccessEntry 3 }
452
453 docsDevNmAccessCommunity OBJECT-TYPE
454         SYNTAX      OCTET STRING
455         MAX-ACCESS  read-create
456         STATUS      deprecated
457         DESCRIPTION
458             "The community string to be matched for access by this
459              entry.  If set to a zero-length string, then any
460              community string will match.  When read, this object
461              SHOULD return a zero-length string."
462         DEFVAL { "public" }
463         ::= { docsDevNmAccessEntry 4 }
464
465 docsDevNmAccessControl OBJECT-TYPE
466         SYNTAX         INTEGER {
467             none(1),
468             read(2),
469             readWrite(3),
470             roWithTraps(4),
471             rwWithTraps(5),
472             trapsOnly(6)
473         }
474         MAX-ACCESS  read-create
475         STATUS      deprecated
476         DESCRIPTION
477             "Specifies the type of access allowed to this NMS.
478              Setting this object to none(1) causes the table entry
479              to be destroyed.  Read(2) allows access by 'get' and
480              'get-next' PDUs.  ReadWrite(3) allows access by 'set' as
481              well.  RoWithtraps(4), rwWithTraps(5), and trapsOnly(6)
482              control distribution of Trap PDUs transmitted by this
483              device."
484         DEFVAL { read }
485         ::= { docsDevNmAccessEntry 5 }
486
487 -- The syntax of the following object was copied from RFC 1493,
488 -- dot1dStaticAllowedToGoTo.
489
490 docsDevNmAccessInterfaces OBJECT-TYPE
491         SYNTAX      OCTET STRING (SIZE (1..32))
492         MAX-ACCESS  read-create
493         STATUS      deprecated
494         DESCRIPTION
495             "Specifies the set of interfaces from which requests from
496              this NMS will be accepted.  Each octet within
497              the value of this object specifies a set of eight
498
499
500
501              interfaces, the first octet specifying ports 1
502              through 8, the second octet specifying interfaces 9
503              through 16, etc.  Within each octet, the most
504              significant bit represents the lowest numbered
505              interface, and the least significant bit represents the
506              highest numbered interface.  Thus, each interface is
507              represented by a single bit within the value of this
508              object.  If that bit has a value of '1' then that
509              interface is included in the set.
510
511              Note that entries in this table apply only to link-layer
512              interfaces (e.g., Ethernet and CATV MAC).  Bits
513              representing upstream and downstream channel interfaces
514              MUST NOT be set to '1'.
515
516              Note that if bits corresponding to non-existing
517              interfaces are set, the result is implementation
518              specific.
519
520              Note that according to the DOCSIS OSSIv1.1
521              specification, when ifIndex '1' is included in the
522              set, then this row applies to all CPE
523              (customer-facing) interfaces.
524
525              The size of this object is the minimum required to
526              represent all configured interfaces for this device."
527         ::= { docsDevNmAccessEntry 6 }
528
529 docsDevNmAccessStatus OBJECT-TYPE
530         SYNTAX      RowStatus
531         MAX-ACCESS  read-create
532         STATUS      deprecated
533         DESCRIPTION
534             "Controls and reflects the status of rows in this
535              table.  Rows in this table may be created by either the
536              create-and-go or create-and-wait paradigm.  There is no
537              restriction on changing values in a row of this table
538              while the row is active.
539
540              The following objects MUST have valid values before this
541              object can be set to active: docsDevNmAccessIp,
542              docsDevNmAccessStatus, docsDevNmAccessIpMask,
543              docsDevNmAccessCommunity, docsDevNmAccessControl, and
544              docsDevNmAccessInterfaces."
545         ::= { docsDevNmAccessEntry 7 }
546
547 docsDevNmAccessTrapVersion OBJECT-TYPE
548         SYNTAX      INTEGER {
549
550
551
552             disableSNMPv2trap(1),
553             enableSNMPv2trap(2)
554         }
555         MAX-ACCESS  read-create
556         STATUS      deprecated
557         DESCRIPTION
558             "Specifies the TRAP version that is sent to this NMS.
559              Setting this object to disableSNMPv2trap (1) causes the
560              trap in SNMPv1 format to be sent to a particular NMS.
561              Setting this object to enableSNMPv2trap (2) causes the
562              trap in SNMPv2 format be sent to a particular NMS."
563         DEFVAL { disableSNMPv2trap }
564         ::= { docsDevNmAccessEntry 8 }
565
566 --
567 -- The following group describes control objects used for downloading
568 -- firmware to a cable device.  Procedures for software download are
569 -- described in Section 3.2.1 of the RFC containing this MIB module.
570 --
571
572 docsDevSoftware OBJECT IDENTIFIER ::= { docsDevMIBObjects 3 }
573
574 docsDevSwServer OBJECT-TYPE
575         SYNTAX      IpAddress
576         MAX-ACCESS  read-write
577         STATUS      deprecated
578         DESCRIPTION
579             "The address of the TFTP server used for software
580              upgrades.  If the TFTP server is unknown or is a
581              non-IPv4 address, return 0.0.0.0.
582
583              This object is deprecated.  See docsDevSwServerAddress
584              for its replacement.  This object will have its value
585              modified, given a valid SET to docsDevSwServerAddress."
586         ::= { docsDevSoftware 1 }
587
588 docsDevSwFilename OBJECT-TYPE
589         SYNTAX      SnmpAdminString (SIZE (0..64))
590         MAX-ACCESS  read-write
591         STATUS      current
592         DESCRIPTION
593             "The filename of the software image to be downloaded via
594              TFTP, or the abs_path (as defined in RFC 2616) of the
595              software image to be downloaded via HTTP.
596
597              Unless set via SNMP, this is the filename or abs_path
598              specified by the provisioning server during the boot
599              process that corresponds to the software version that
600
601
602
603              is desired for this device.
604
605              If unknown, the value of this object is the zero-length
606              string."
607         ::= { docsDevSoftware 2 }
608
609 docsDevSwAdminStatus OBJECT-TYPE
610         SYNTAX INTEGER {
611             upgradeFromMgt(1),
612             allowProvisioningUpgrade(2),
613             ignoreProvisioningUpgrade(3)
614         }
615         MAX-ACCESS  read-write
616         STATUS      current
617         DESCRIPTION
618             "If set to upgradeFromMgt(1), the device will initiate a
619              TFTP or HTTP software image download.  After
620              successfully receiving an image, the device will set
621              its state to ignoreProvisioningUpgrade(3) and reboot.
622              If the download process is interrupted (e.g., by a reset
623              or power failure), the device will load the previous
624              image and, after re-initialization, continue to attempt
625              loading the image specified in docsDevSwFilename.
626
627              If set to allowProvisioningUpgrade(2), the device will
628              use the software version information supplied by the
629              provisioning server when next rebooting (this does not
630              cause a reboot).
631
632              When set to ignoreProvisioningUpgrade(3), the device
633              will disregard software image upgrade information
634              from the provisioning server.
635
636              Note that reading this object can return
637              upgradeFromMgt(1).  This indicates that a software
638              download is currently in progress, and that the device
639              will reboot after successfully receiving an image."
640         DEFVAL { allowProvisioningUpgrade }
641         ::= { docsDevSoftware 3 }
642
643 docsDevSwOperStatus OBJECT-TYPE
644         SYNTAX INTEGER {
645             inProgress(1),
646             completeFromProvisioning(2),
647             completeFromMgt(3),
648             failed(4),
649             other(5)
650         }
651
652
653
654         MAX-ACCESS  read-only
655         STATUS      current
656         DESCRIPTION
657             "InProgress(1) indicates that a TFTP or HTTP download is
658              underway, either as a result of a version mismatch at
659              provisioning or as a result of a upgradeFromMgt request.
660              No other docsDevSw* objects can be modified in
661              this state.
662
663              CompleteFromProvisioning(2) indicates that the last
664              software upgrade was a result of version mismatch at
665              provisioning.
666
667              CompleteFromMgt(3) indicates that the last software
668              upgrade was a result of setting docsDevSwAdminStatus to
669              upgradeFromMgt.
670
671              Failed(4) indicates that the last attempted download
672              failed, ordinarily due to TFTP or HTTP timeout."
673         REFERENCE
674             "DOCSIS RFI 1.0 Specification, Section 8.2., and
675              DOCSIS RFI 1.1 Specification, Section 10.1. and
676              DOCSIS RFI 2.0 Specification, Section 12.1."
677         ::= { docsDevSoftware 4 }
678
679 docsDevSwCurrentVers OBJECT-TYPE
680         SYNTAX      SnmpAdminString
681         MAX-ACCESS  read-only
682         STATUS      current
683         DESCRIPTION
684             "The software version currently operating in this device.
685              This string's syntax is that used by the
686              individual vendor to identify software versions.
687              For a CM, this string will describe the current
688              software load.  For a CMTS, this object SHOULD contain
689              a human-readable representation either of the vendor
690              specific designation of the software for the chassis,
691              or of the software for the control processor.  If
692              neither of these is applicable, the value MUST be a
693              zero-length string."
694         ::= { docsDevSoftware 5 }
695
696 docsDevSwServerAddressType OBJECT-TYPE
697         SYNTAX      InetAddressType
698         MAX-ACCESS  read-write
699         STATUS      current
700         DESCRIPTION
701             "The type of address of the TFTP or HTTP server used for
702
703
704
705              software upgrades.
706
707              If docsDevSwServerTransportProtocol is currently set to
708              tftp(1), attempting to set this object to dns(16) MUST
709              result in an error."
710         ::= { docsDevSoftware 6 }
711
712 docsDevSwServerAddress OBJECT-TYPE
713         SYNTAX      InetAddress
714         MAX-ACCESS  read-write
715         STATUS      current
716         DESCRIPTION
717             "The address of the TFTP or HTTP server used for software
718              upgrades.
719
720              If the TFTP/HTTP server is unknown, return the zero-
721              length address string (see the TextualConvention).
722
723              If docsDevSwServer is also implemented in this agent,
724              this object is tied to it.  A set of this object to an
725              IPv4 address will result in also setting the value of
726              docsDevSwServer to that address.  If this object is set
727              to an IPv6 address, docsDevSwServer is set to 0.0.0.0.
728              If docsDevSwServer is set, this object is also set to
729              that value.  Note that if both are set in the same
730              action, the order of which one sets the other is
731              undefined."
732         ::= { docsDevSoftware 7 }
733
734 docsDevSwServerTransportProtocol OBJECT-TYPE
735         SYNTAX INTEGER {
736             tftp(1),
737             http(2)
738         }
739         MAX-ACCESS  read-write
740         STATUS      current
741         DESCRIPTION
742             "This object specifies the transport protocol (TFTP or
743              HTTP) to be used for software upgrades.
744
745              If the value of this object is tftp(1), then the cable
746              device uses TFTP (RFC 1350) read request packets to
747              download the docsDevSwFilename from the
748              docsDevSwServerAddress in octet mode.
749
750              If the value of this object is http(2), then the cable
751              device uses HTTP 1.0 (RFC 1945) or HTTP 1.1 (RFC 2616)
752              GET requests sent to host docsDevSwServerAddress to
753
754
755
756              download the software image from path docsDevSwFilename.
757
758              If docsDevSwServerAddressType is currently set to
759              dns(16), attempting to set this object to tftp(1) MUST
760              result in an error."
761         DEFVAL { tftp }
762         ::= { docsDevSoftware 8 }
763
764 --
765 -- The following group describes server access and parameters used
766 -- for initial provisioning and bootstrapping.
767 --
768
769 docsDevServer OBJECT IDENTIFIER ::= { docsDevMIBObjects 4 }
770
771 docsDevServerBootState OBJECT-TYPE
772         SYNTAX INTEGER {
773             operational(1),
774             disabled(2),
775             waitingForDhcpOffer(3),
776             waitingForDhcpResponse(4),
777             waitingForTimeServer(5),
778             waitingForTftp(6),
779             refusedByCmts(7),
780             forwardingDenied(8),
781             other(9),
782             unknown(10)
783         }
784         MAX-ACCESS  read-only
785         STATUS      current
786         DESCRIPTION
787             "If operational(1), the device has completed loading and
788              processing of configuration parameters, and the CMTS has
789              completed the Registration exchange.
790
791              If disabled(2), then the device was administratively
792              disabled, possibly by being refused network access in
793              the configuration file.
794
795              If waitingForDhcpOffer(3), then a Dynamic Host
796              Configuration Protocol (DHCP) Discover has been
797              transmitted, and no offer has yet been received.
798
799              If waitingForDhcpResponse(4), then a DHCP Request has
800              been transmitted, and no response has yet been received.
801
802              If waitingForTimeServer(5), then a Time Request has been
803              transmitted, and no response has yet been received.
804
805
806
807              If waitingForTftp(6), then a request to the TFTP
808              parameter server has been made, and no response
809              received.
810
811              If refusedByCmts(7), then the Registration
812              Request/Response exchange with the CMTS failed.
813
814              If forwardingDenied(8), then the registration process
815              was completed, but the network access option in the
816              received configuration file prohibits forwarding.
817
818              If other(9), then the registration process reached a
819              point that does not fall into one of the above
820              categories.
821
822              If unknown(10), then the device has not yet begun the
823              registration process or is in some other indeterminate
824              state."
825         REFERENCE
826             "DOCSIS RFI 1.0 Specification, Figure 7-1, and
827              DOCSIS RFI 1.1 Specification, Figure 9-1 and
828              DOCSIS RFI 2.0 Specification, Figure 11-1."
829         ::= { docsDevServer 1 }
830
831 docsDevServerDhcp OBJECT-TYPE
832         SYNTAX      IpAddress
833         MAX-ACCESS  read-only
834         STATUS      deprecated
835         DESCRIPTION
836             "The IP address of the DHCP server that assigned an IP
837              address to this device.  Returns 0.0.0.0 if DHCP is not
838              used for IP address assignment, or if this agent is
839              not assigned an IPv4 address.
840
841              This object is deprecated and is replaced by
842              docsDevServerDhcpAddress."
843         ::= { docsDevServer 2 }
844
845 docsDevServerTime OBJECT-TYPE
846         SYNTAX      IpAddress
847         MAX-ACCESS  read-only
848         STATUS      deprecated
849         DESCRIPTION
850             "The IP address of the Time server (RFC 0868).  Returns
851              0.0.0.0 if the time server IP address is unknown, or if
852              the time server is not an IPv4 server.
853
854              This object is deprecated and is replaced by
855
856
857
858              docsDevServerTimeAddress."
859         ::= { docsDevServer 3 }
860
861 docsDevServerTftp OBJECT-TYPE
862         SYNTAX      IpAddress
863         MAX-ACCESS  read-only
864         STATUS      deprecated
865         DESCRIPTION
866             "The IP address of the TFTP server responsible for
867              downloading provisioning and configuration parameters
868              to this device.  Returns 0.0.0.0 if the TFTP server
869              address is unknown or is not an IPv4 address.
870
871              This object is deprecated and is replaced by
872              docsDevServerConfigTftpAddress."
873         ::= { docsDevServer 4 }
874
875 docsDevServerConfigFile OBJECT-TYPE
876         SYNTAX      SnmpAdminString
877         MAX-ACCESS  read-only
878         STATUS      current
879         DESCRIPTION
880             "The name of the device configuration file read from
881              the TFTP server.  Returns a zero-length string if
882              the configuration file name is unknown."
883         ::= { docsDevServer 5 }
884
885 docsDevServerDhcpAddressType OBJECT-TYPE
886         SYNTAX      InetAddressType
887         MAX-ACCESS  read-only
888         STATUS      current
889         DESCRIPTION
890             "The type of address of docsDevServerDhcpAddress.  If
891              DHCP was not used, this value should return
892              unknown(0)."
893         ::= { docsDevServer 6 }
894
895 docsDevServerDhcpAddress OBJECT-TYPE
896         SYNTAX      InetAddress
897         MAX-ACCESS  read-only
898         STATUS      current
899         DESCRIPTION
900             "The internet address of the DHCP server that assigned
901              an IP address to this device.  Returns the zero length
902              octet string if DHCP was not used for IP address
903              assignment."
904         ::= { docsDevServer 7 }
905
906
907
908
909 docsDevServerTimeAddressType OBJECT-TYPE
910         SYNTAX      InetAddressType
911         MAX-ACCESS  read-only
912         STATUS      current
913         DESCRIPTION
914             "The type of address of docsDevServerTimeAddress.  If
915              no time server exists, this value should return
916              unknown(0)."
917         ::= { docsDevServer 8 }
918
919 docsDevServerTimeAddress OBJECT-TYPE
920         SYNTAX      InetAddress
921         MAX-ACCESS  read-only
922         STATUS      current
923         DESCRIPTION
924             "The Internet address of the RFC 868 Time server,
925              as provided by DHCP option 4.
926
927              Note that if multiple values are provided to the
928              CM in DHCP option 4, the value of this MIB object
929              MUST be the Time server address from which the Time
930              of Day reference was acquired as based on the DOCSIS
931              RFI specification.  During the period of time where
932              the Time of Day have not been acquired, the Time
933              server address reported by the CM may report the
934              first address value in the DHCP option value or the
935              last server address the CM attempted to get the Time
936              of day value.
937
938              Returns the zero-length octet string if the time server
939              IP address is not provisioned."
940         REFERENCE
941             "DOCSIS RFI 1.1 Specification, Section 9.2.7. and
942              DOCSIS RFI 2.0 Specification, Section 11.2.7."
943         ::= { docsDevServer 9 }
944
945 docsDevServerConfigTftpAddressType OBJECT-TYPE
946         SYNTAX      InetAddressType
947         MAX-ACCESS  read-only
948         STATUS      current
949         DESCRIPTION
950             "The type of address of docsDevServerConfigTftpAddress.
951              If no TFTP server exists, this value should return
952              unknown(0)."
953         ::= { docsDevServer 10 }
954
955 docsDevServerConfigTftpAddress OBJECT-TYPE
956         SYNTAX      InetAddress
957
958
959
960         MAX-ACCESS  read-only
961         STATUS      current
962         DESCRIPTION
963             "The internet address of the TFTP server responsible for
964              downloading provisioning and configuration parameters
965              to this device.  Returns the zero-length octet string if
966              the config server address is unknown.  There are certain
967              security risks that are involved with using TFTP."
968         REFERENCE
969             "RFC 3617, Section 5"
970         ::= { docsDevServer 11 }
971
972
973 --
974 -- Event Reporting
975 --
976
977 docsDevEvent OBJECT IDENTIFIER ::= { docsDevMIBObjects 5 }
978
979 docsDevEvControl OBJECT-TYPE
980         SYNTAX INTEGER {
981             resetLog(1),
982             useDefaultReporting(2)
983         }
984         MAX-ACCESS  read-write
985         STATUS      current
986         DESCRIPTION
987             "Setting this object to resetLog(1) empties the event
988              log.  All data is deleted.  Setting it to
989              useDefaultReporting(2) returns all event priorities to
990              their factory-default reporting.  Reading this object
991              always returns useDefaultReporting(2)."
992         ::= { docsDevEvent 1 }
993
994 docsDevEvSyslog OBJECT-TYPE
995         SYNTAX      IpAddress
996         MAX-ACCESS  read-write
997         STATUS      deprecated
998         DESCRIPTION
999             "The IP address of the Syslog server.  If 0.0.0.0, either
1000              syslog transmission is inhibited, or the Syslog server
1001              address is not an IPv4 address.
1002
1003              This object is deprecated and is replaced by
1004              docsDevEvSyslogAddress."
1005         ::= { docsDevEvent 2 }
1006
1007 docsDevEvThrottleAdminStatus OBJECT-TYPE
1008
1009
1010
1011         SYNTAX INTEGER {
1012             unconstrained(1),
1013             maintainBelowThreshold(2),
1014             stopAtThreshold(3),
1015             inhibited(4)
1016         }
1017         MAX-ACCESS  read-write
1018         STATUS      current
1019         DESCRIPTION
1020             "Controls the transmission of traps and syslog messages
1021              with respect to the trap pacing threshold.
1022
1023              unconstrained(1) causes traps and syslog messages to be
1024              transmitted without regard to the threshold settings.
1025
1026              maintainBelowThreshold(2) causes trap transmission and
1027              syslog messages to be suppressed if the number of traps
1028              would otherwise exceed the threshold.
1029
1030              stopAtThreshold(3) causes trap transmission to cease at
1031              the threshold and not to resume until directed to do so.
1032
1033              inhibited(4) causes all trap transmission and syslog
1034              messages to be suppressed.
1035
1036              A single event is always treated as a single event for
1037              threshold counting.  That is, an event causing both a
1038              trap and a syslog message is still treated as a single
1039              event.
1040
1041              Writing to this object resets the thresholding state."
1042         DEFVAL { unconstrained }
1043         ::= { docsDevEvent 3 }
1044
1045 docsDevEvThrottleInhibited OBJECT-TYPE
1046         SYNTAX      TruthValue
1047         MAX-ACCESS  read-only
1048         STATUS      deprecated
1049         DESCRIPTION
1050             "If true(1), trap and syslog transmission is currently
1051              inhibited due to thresholds and/or the current setting
1052              of docsDevEvThrottleAdminStatus.  In addition, this is
1053              true(1) when transmission is inhibited because no
1054              syslog (docsDevEvSyslog) or trap (docsDevNmAccessEntry)
1055              destinations have been set.
1056
1057              This object is deprecated and is replaced by
1058              docsDevEvThrottleThresholdExceeded."
1059
1060
1061
1062         ::= { docsDevEvent 4 }
1063
1064 docsDevEvThrottleThreshold OBJECT-TYPE
1065         SYNTAX      Unsigned32
1066         UNITS       "events"
1067         MAX-ACCESS  read-write
1068         STATUS      current
1069         DESCRIPTION
1070             "Number of events per docsDevEvThrottleInterval permitted
1071              before throttling is to occur.
1072
1073              A single event, whether the notification could result in
1074              messages transmitted using syslog, SNMP, or both
1075              protocols, and regardless of the number of destinations,
1076              (including zero) is always treated as a single event for
1077              threshold counting.  For example, an event causing both
1078              a trap and a syslog message is still treated as a single
1079              event.
1080
1081              All system notifications that occur within the device
1082              should be taken into consideration when calculating
1083              and monitoring the threshold."
1084         DEFVAL { 0 }
1085         ::= { docsDevEvent 5 }
1086
1087 docsDevEvThrottleInterval OBJECT-TYPE
1088         SYNTAX      Integer32 (1..2147483647)
1089         UNITS       "seconds"
1090         MAX-ACCESS  read-write
1091         STATUS      current
1092         DESCRIPTION
1093             "The interval over which docsDevEvThrottleThreshold
1094              applies."
1095         DEFVAL { 1 }
1096         ::= { docsDevEvent 6 }
1097
1098 --
1099 -- The following table controls the reporting of the various classes
1100 -- of events.
1101 --
1102
1103 docsDevEvControlTable OBJECT-TYPE
1104         SYNTAX      SEQUENCE OF DocsDevEvControlEntry
1105         MAX-ACCESS  not-accessible
1106         STATUS      current
1107         DESCRIPTION
1108             "This table allows control of the reporting of event
1109              classes.  For each event priority, a combination of
1110
1111
1112
1113              logging and reporting mechanisms may be chosen.  The
1114              mapping of event types to priorities is
1115              vendor dependent.  Vendors may also choose to allow
1116              the user to control that mapping through proprietary
1117              means.  Table entries MUST persist across reboots for
1118              CMTS devices and MUST NOT persist across reboots for CM
1119              devices."
1120         ::= {  docsDevEvent 7 }
1121
1122 docsDevEvControlEntry OBJECT-TYPE
1123         SYNTAX      DocsDevEvControlEntry
1124         MAX-ACCESS  not-accessible
1125         STATUS      current
1126         DESCRIPTION
1127             "Allows configuration of the reporting mechanisms for a
1128              particular event priority."
1129         INDEX { docsDevEvPriority }
1130         ::= { docsDevEvControlTable 1 }
1131
1132 DocsDevEvControlEntry ::= SEQUENCE {
1133             docsDevEvPriority        INTEGER,
1134             docsDevEvReporting       BITS
1135         }
1136
1137 docsDevEvPriority OBJECT-TYPE
1138         SYNTAX INTEGER {
1139             emergency(1),
1140             alert(2),
1141             critical(3),
1142             error(4),
1143             warning(5),
1144             notice(6),
1145             information(7),
1146             debug(8)
1147         }
1148         MAX-ACCESS  not-accessible
1149         STATUS      current
1150         DESCRIPTION
1151             "The priority level that is controlled by this
1152              entry.  These are ordered from most (emergency) to least
1153              (debug) critical.  Each event with a CM or CMTS has a
1154              particular priority level associated with it (as defined
1155              by the vendor).
1156
1157              emergency(1) events indicate vendor-specific fatal
1158              hardware or software errors that prevent normal system
1159              operation.
1160
1161
1162
1163
1164              alert(2) events indicate a serious failure that causes
1165              the reporting system to reboot but is not caused by
1166              hardware or software malfunctioning.
1167
1168              critical(3) events indicate a serious failure that
1169              requires attention and prevents the device from
1170              transmitting data but that could be recovered without
1171              rebooting the system.
1172
1173              error(4) and warning(5) events indicate that a failure
1174              occurred that could interrupt the normal data flow but
1175              that does not cause the device to re-register.
1176
1177              notice(6) and information(7) events indicate a
1178              milestone or checkpoint in normal operation that could
1179              be of particular importance for troubleshooting.
1180
1181              debug(8) events are reserved for vendor-specific
1182              events.
1183
1184              During normal operation, no event more
1185              critical than notice(6) should be generated.  Events
1186              between warning and emergency should be generated at
1187              appropriate levels of problems (e.g., emergency when the
1188              box is about to crash)."
1189         ::= { docsDevEvControlEntry 1 }
1190
1191 docsDevEvReporting OBJECT-TYPE
1192         SYNTAX BITS {
1193             local(0),
1194             traps(1),
1195             syslog(2),
1196             -- The following are extensions to the original set of
1197             -- labels.  The extensions start at an octet boundary.
1198             -- So for bits 3 - 7, one MUST set them to zero on send
1199             -- and one MUST ignore them on receipt.
1200             localVolatile(8),
1201             stdInterface(9)
1202         }
1203         MAX-ACCESS  read-write
1204         STATUS      current
1205         DESCRIPTION
1206             "Defines the action to be taken on occurrence of this
1207              event class.  Implementations may not necessarily
1208              support all options for all event classes but at
1209              minimum must allow traps and syslogging to be
1210              disabled.
1211
1212
1213
1214
1215              If the local(0) bit is set, then log to the internal
1216              log and update non-volatile store, for backward
1217              compatibility with the original RFC 2669 definition.
1218              If the traps(1) bit is set, then generate
1219              an SNMP trap; if the syslog(2) bit is set, then
1220              send a syslog message (assuming that the syslog address
1221              is set).  If the localVolatile(8) bit is set, then
1222              log to the internal log without updating non-volatile
1223              store.  If the stdInterface(9) bit is set, then the
1224              agent ignores all other bits except the local(0),
1225              syslog(2), and localVolatile(8) bits.  Setting the
1226              stdInterface(9) bit indicates that RFC3413 and
1227              RFC3014 are being used to control event reporting
1228              mechanisms."
1229         ::= { docsDevEvControlEntry 2 }
1230
1231 docsDevEventTable OBJECT-TYPE
1232         SYNTAX      SEQUENCE OF DocsDevEventEntry
1233         MAX-ACCESS  not-accessible
1234         STATUS      current
1235         DESCRIPTION
1236             "Contains a log of network and device events that may be
1237              of interest in fault isolation and troubleshooting.
1238              If the local(0) bit is set in docsDevEvReporting,
1239              entries in this table MUST persist across reboots."
1240         ::= {  docsDevEvent 8 }
1241
1242 docsDevEventEntry OBJECT-TYPE
1243         SYNTAX      DocsDevEventEntry
1244         MAX-ACCESS  not-accessible
1245         STATUS      current
1246         DESCRIPTION
1247             "Describes a network or device event that may be of
1248              interest in fault isolation and troubleshooting.
1249              Multiple sequential identical events are represented by
1250              incrementing docsDevEvCounts and setting
1251              docsDevEvLastTime to the current time rather than
1252              creating multiple rows.
1253
1254              Entries are created with the first occurrence of an
1255              event.  docsDevEvControl can be used to clear the
1256              table.  Individual events cannot be deleted."
1257         INDEX { docsDevEvIndex }
1258         ::= { docsDevEventTable 1 }
1259
1260 DocsDevEventEntry ::= SEQUENCE {
1261             docsDevEvIndex           Integer32,
1262             docsDevEvFirstTime       DateAndTime,
1263
1264
1265
1266             docsDevEvLastTime        DateAndTime,
1267             docsDevEvCounts          Counter32,
1268             docsDevEvLevel           INTEGER,
1269             docsDevEvId              Unsigned32,
1270             docsDevEvText            SnmpAdminString
1271         }
1272
1273 docsDevEvIndex OBJECT-TYPE
1274         SYNTAX      Integer32 (1..2147483647)
1275         MAX-ACCESS  not-accessible
1276         STATUS      current
1277         DESCRIPTION
1278             "Provides relative ordering of the objects in the event
1279              log.  This object will always increase except when
1280              (a) the log is reset via docsDevEvControl,
1281              (b) the device reboots and does not implement
1282              non-volatile storage for this log, or (c) it reaches
1283              the value 2^31.  The next entry for all the above
1284              cases is 1."
1285         ::= { docsDevEventEntry 1 }
1286
1287 docsDevEvFirstTime OBJECT-TYPE
1288         SYNTAX      DateAndTime
1289         MAX-ACCESS  read-only
1290         STATUS      current
1291         DESCRIPTION
1292             "The value of docsDevDateTime at the time this entry was
1293              created."
1294         ::= { docsDevEventEntry 2 }
1295
1296 docsDevEvLastTime OBJECT-TYPE
1297         SYNTAX      DateAndTime
1298         MAX-ACCESS  read-only
1299         STATUS      current
1300         DESCRIPTION
1301             "When an entry reports only one event, this object will
1302              have the same value as the corresponding instance of
1303              docsDevEvFirstTime.  When an entry reports multiple
1304              events, this object will record the value that
1305              docsDevDateTime had when the most recent event for this
1306              entry occurred."
1307         ::= { docsDevEventEntry 3 }
1308
1309 -- This object was renamed from docsDevEvCount to meet naming
1310 -- requirements for Counter32
1311 docsDevEvCounts OBJECT-TYPE
1312         SYNTAX      Counter32
1313         UNITS       "events"
1314
1315
1316
1317         MAX-ACCESS  read-only
1318         STATUS      current
1319         DESCRIPTION
1320             "The number of consecutive event instances reported by
1321              this entry.  This starts at 1 with the creation of this
1322              row and increments by 1 for each subsequent duplicate
1323              event."
1324         ::= { docsDevEventEntry 4 }
1325 docsDevEvLevel OBJECT-TYPE
1326         SYNTAX INTEGER {
1327             emergency(1),
1328             alert(2),
1329             critical(3),
1330             error(4),
1331             warning(5),
1332             notice(6),
1333             information(7),
1334             debug(8)
1335         }
1336         MAX-ACCESS  read-only
1337         STATUS      current
1338         DESCRIPTION
1339             "The priority level of this event, as defined by the
1340              vendor.  These are ordered from most serious (emergency)
1341              to least serious (debug).
1342
1343              emergency(1) events indicate vendor-specific fatal
1344              hardware or software errors that prevent normal system
1345              operation.
1346
1347              alert(2) events indicate a serious failure that causes
1348              the reporting system to reboot but that is not caused by
1349              hardware or software malfunctioning.
1350
1351              critical(3) events indicate a serious failure that
1352              requires attention and prevents the device from
1353              transmitting data but that could be recovered without
1354              rebooting the system.
1355
1356              error(4) and warning(5) events indicate that a failure
1357              occurred that could interrupt the normal data flow but
1358              that does not cause the device to re-register.
1359
1360              notice(6) and information(7) events indicate a
1361              milestone or checkpoint in normal operation that could
1362              be of particular importance for troubleshooting.
1363
1364              debug(8) events are reserved for vendor-specific
1365
1366
1367
1368              events.
1369
1370              During normal operation, no event more
1371              critical than notice(6) should be generated.  Events
1372              between warning and emergency should be generated at
1373              appropriate levels of problems (e.g., emergency when the
1374              box is about to crash)."
1375         ::= { docsDevEventEntry 5 }
1376
1377 --
1378 -- It is strongly recommended that implementors follow the CableLabs
1379 -- enumerations for docsDevEvId, per the DOCSIS OSSIv1.1 spec
1380 -- and follow-on specifications.
1381 --
1382
1383 docsDevEvId OBJECT-TYPE
1384         SYNTAX      Unsigned32
1385         MAX-ACCESS  read-only
1386         STATUS      current
1387         DESCRIPTION
1388             "For this product, uniquely identifies the type of event
1389              that is reported by this entry."
1390         REFERENCE
1391             "DOCSIS OSSI 1.1 Specification, Appendix H and
1392              DOCSIS OSSI 2.0 Specification, Annex D."
1393         ::= { docsDevEventEntry 6 }
1394
1395 docsDevEvText OBJECT-TYPE
1396         SYNTAX      SnmpAdminString
1397         MAX-ACCESS  read-only
1398         STATUS      current
1399         DESCRIPTION
1400             "Provides a human-readable description of the event,
1401              including all relevant context (interface numbers,
1402              etc.)."
1403         ::= { docsDevEventEntry 7 }
1404
1405 docsDevEvSyslogAddressType OBJECT-TYPE
1406         SYNTAX      InetAddressType
1407         MAX-ACCESS  read-write
1408         STATUS      current
1409         DESCRIPTION
1410             "The type of address of docsDevEvSyslogAddress.  If
1411              no syslog server exists, this value should return
1412              unknown(0)."
1413         DEFVAL { unknown }
1414         ::= { docsDevEvent 9 }
1415
1416
1417
1418
1419 docsDevEvSyslogAddress OBJECT-TYPE
1420         SYNTAX      InetAddress
1421         MAX-ACCESS  read-write
1422         STATUS      current
1423         DESCRIPTION
1424             "The Internet address of the Syslog server, as provided
1425              by DHCP option 7 or set via SNMP management.  If the
1426              address of the server is set to the zero-length
1427              string, the 0.0.0.0 IPv4 address, or the 0: IPv6
1428              address, Syslog transmission is inhibited.
1429
1430              Note that if multiple values are provided to the CM in
1431              DHCP option 7, the value of this MIB object MUST be the
1432              first Syslog server address received.
1433
1434              By default at agent boot, this object returns the zero
1435              length string."
1436         ::= { docsDevEvent 10 }
1437
1438 docsDevEvThrottleThresholdExceeded OBJECT-TYPE
1439         SYNTAX TruthValue
1440         MAX-ACCESS read-only
1441         STATUS current
1442         DESCRIPTION
1443             "If true(1), trap and syslog transmission is currently
1444              inhibited due to exceeding the trap/syslog event
1445              threshold in the current interval."
1446         ::= { docsDevEvent 11 }
1447
1448 --
1449 -- Link Level Control Filtering
1450 --
1451
1452 docsDevFilter OBJECT IDENTIFIER ::= { docsDevMIBObjects 6 }
1453
1454 docsDevFilterLLCUnmatchedAction OBJECT-TYPE
1455         SYNTAX INTEGER {
1456             discard(1),
1457             accept(2)
1458         }
1459         MAX-ACCESS  read-write
1460         STATUS      current
1461         DESCRIPTION
1462             "LLC (Link Level Control) filters can be defined on an
1463              inclusive or exclusive basis: CMs can be configured to
1464              forward only packets matching a set of layer three
1465              protocols, or to drop packets matching a set of layer
1466              three protocols.  Typical use of these filters is to
1467
1468
1469
1470              filter out possibly harmful (given the context of a
1471              large metropolitan LAN) protocols.
1472
1473              If set to discard(1), any L2 packet that does not match
1474              at least one filter in the docsDevFilterLLCTable will be
1475              discarded.  If set to accept(2), any L2 packet that
1476              does not match at least one filter in the
1477              docsDevFilterLLCTable will be accepted for further
1478              processing (e.g., bridging).  In other words, if the
1479              packet does not match an entry in the table, it takes
1480              this action; if it does match an entry in the table, it
1481              takes the opposite of this action."
1482         DEFVAL { accept }
1483         ::= { docsDevFilter 1 }
1484
1485 docsDevFilterLLCTable OBJECT-TYPE
1486         SYNTAX      SEQUENCE OF DocsDevFilterLLCEntry
1487         MAX-ACCESS  not-accessible
1488         STATUS      current
1489         DESCRIPTION
1490             "A list of filters to apply to (bridged) LLC
1491              traffic.  The filters in this table are applied to
1492              incoming traffic on the appropriate interface(s)  prior
1493              to any further processing (e.g., before the packet
1494              is handed off for level 3 processing, or for bridging).
1495              The specific action taken when no filter is matched is
1496              controlled by docsDevFilterLLCUnmatchedAction.  Table
1497              entries MUST NOT persist across reboots for any device."
1498         ::= { docsDevFilter 2 }
1499
1500 docsDevFilterLLCEntry OBJECT-TYPE
1501         SYNTAX      DocsDevFilterLLCEntry
1502         MAX-ACCESS  not-accessible
1503         STATUS      current
1504         DESCRIPTION
1505             "Describes a single filter to apply to (bridged) LLC
1506              traffic received on a specified interface. "
1507         INDEX { docsDevFilterLLCIndex }
1508         ::= { docsDevFilterLLCTable 1 }
1509
1510 DocsDevFilterLLCEntry ::= SEQUENCE {
1511             docsDevFilterLLCIndex               Integer32,
1512             docsDevFilterLLCStatus              RowStatus,
1513             docsDevFilterLLCIfIndex             InterfaceIndexOrZero,
1514             docsDevFilterLLCProtocolType        INTEGER,
1515             docsDevFilterLLCProtocol            Integer32,
1516             docsDevFilterLLCMatches             Counter32
1517         }
1518
1519
1520
1521 docsDevFilterLLCIndex OBJECT-TYPE
1522         SYNTAX      Integer32 (1..2147483647)
1523         MAX-ACCESS  not-accessible
1524         STATUS      current
1525         DESCRIPTION
1526             "Index used for the identification of filters (note that
1527              LLC filter order is irrelevant)."
1528         ::= { docsDevFilterLLCEntry 1 }
1529 docsDevFilterLLCStatus OBJECT-TYPE
1530         SYNTAX      RowStatus
1531         MAX-ACCESS  read-create
1532         STATUS      current
1533         DESCRIPTION
1534             "Controls and reflects the status of rows in this
1535              table.  There is no restriction on changing any of the
1536              associated columns for this row while this object is set
1537              to active.
1538
1539              Specifying only this object (with the
1540              appropriate index) on a CM is sufficient to create a
1541              filter row that matches all inbound packets on the
1542              ethernet interface and results in the packets being
1543              discarded.  docsDevFilterLLCIfIndex (at least) must be
1544              specified on a CMTS to create a row."
1545         ::= { docsDevFilterLLCEntry 2}
1546
1547 docsDevFilterLLCIfIndex OBJECT-TYPE
1548         SYNTAX      InterfaceIndexOrZero
1549         MAX-ACCESS  read-create
1550         STATUS      current
1551         DESCRIPTION
1552             "The entry interface to which this filter applies.  The
1553              value corresponds to ifIndex for either a CATV MAC or
1554              another network interface.  If the value is zero, the
1555              filter applies to all interfaces.  In Cable Modems, the
1556              default value is the customer side interface(s).  In
1557              CMTSs, this object has to be specified to
1558              create a row in this table.
1559
1560              Note that according to the DOCSIS OSSIv1.1
1561              specification, ifIndex '1' in the CM means that this
1562              row applies to all Cable Modem-to-CPE Interfaces
1563              (CMCI)."
1564         REFERENCE
1565             "DOCSIS OSSI 1.1 Specification, Section 3.3.4.1. and
1566              DOCSIS OSSI 2.0 Specification, Section 6.3.4.1."
1567         ::= { docsDevFilterLLCEntry 3 }
1568
1569
1570
1571
1572 docsDevFilterLLCProtocolType OBJECT-TYPE
1573         SYNTAX INTEGER {
1574             ethertype(1),
1575             dsap(2)
1576         }
1577         MAX-ACCESS  read-create
1578         STATUS      current
1579         DESCRIPTION
1580             "The format of the value in docsDevFilterLLCProtocol:
1581              either a two-byte Ethernet Ethertype, or a one-byte
1582              802.2 Service Access Point (SAP) value.  ethertype(1)
1583              also applies to Standard Network Access Protocol
1584              (SNAP) encapsulated frames."
1585         DEFVAL { ethertype }
1586         ::= { docsDevFilterLLCEntry 4 }
1587
1588 docsDevFilterLLCProtocol OBJECT-TYPE
1589         SYNTAX      Integer32 (0..65535)
1590         MAX-ACCESS  read-create
1591         STATUS      current
1592         DESCRIPTION
1593             "The layer-three protocol for which this filter applies.
1594              The protocol value format depends on
1595              docsDevFilterLLCProtocolType.  Note that for SNAP
1596              frames, ethertype filtering is performed rather than
1597              Destination Service Access Point (DSAP) =0xAA."
1598         DEFVAL { 0 }
1599         ::= { docsDevFilterLLCEntry 5 }
1600
1601 docsDevFilterLLCMatches OBJECT-TYPE
1602         SYNTAX      Counter32
1603         UNITS       "matches"
1604         MAX-ACCESS  read-only
1605         STATUS      current
1606         DESCRIPTION
1607             "Counts the number of times this filter was matched."
1608         ::= { docsDevFilterLLCEntry 6 }
1609
1610 --
1611 -- IPv4 Filtering
1612 --
1613
1614 docsDevFilterIpDefault OBJECT-TYPE
1615         SYNTAX INTEGER {
1616             discard(1),
1617             accept(2)
1618         }
1619         MAX-ACCESS  read-write
1620
1621
1622
1623         STATUS      deprecated
1624         DESCRIPTION
1625             "The default behavior for (bridged) packets that do not
1626              match IP filters (or Internet filters, if implemented)
1627              is defined by docsDevFilterIpDefault.
1628
1629              If set to discard(1), all packets not matching an IP
1630              filter in docsDevFilterIpTable will be discarded.  If
1631              set to accept(2), all packets not matching an IP filter
1632              or an Internet filter will be accepted for further
1633              processing (e.g., bridging)."
1634         DEFVAL { accept }
1635         ::= { docsDevFilter 3 }
1636
1637 docsDevFilterIpTable OBJECT-TYPE
1638         SYNTAX      SEQUENCE OF DocsDevFilterIpEntry
1639         MAX-ACCESS  not-accessible
1640         STATUS      deprecated
1641         DESCRIPTION
1642             "An ordered list of filters or classifiers to apply to
1643              IP traffic.  Filter application is ordered by the filter
1644              index, rather than by a best match algorithm (note that
1645              this implies that the filter table may have gaps in the
1646              index values).  Packets that match no filters will have
1647              policy 0 in the docsDevFilterPolicyTable applied to
1648              them, if it exists.  Otherwise, Packets that match no
1649              filters are discarded or forwarded according to the
1650              setting of docsDevFilterIpDefault.
1651
1652              Any IP packet can theoretically match multiple rows of
1653              this table.  When considering a packet, the table is
1654              scanned in row index order (e.g., filter 10 is checked
1655              before filter 20).  If the packet matches that filter
1656              (which means that it matches ALL criteria for that row),
1657              actions appropriate to docsDevFilterIpControl and
1658              docsDevFilterPolicyId are taken.  If the packet was
1659              discarded processing is complete.  If
1660              docsDevFilterIpContinue is set to true, the filter
1661              comparison continues with the next row in the table,
1662              looking for additional matches.
1663
1664              If the packet matches no filter in the table, the packet
1665              is accepted or dropped for further processing
1666              according to the setting of docsDevFilterIpDefault.
1667              If the packet is accepted, the actions specified by
1668              policy group 0 (e.g., the rows in
1669              docsDevFilterPolicyTable that have a value of 0 for
1670              docsDevFilterPolicyId) are taken, if that policy
1671
1672
1673
1674              group exists.
1675
1676              Logically, this table is consulted twice during the
1677              processing of any IP packet: once upon its acceptance
1678              from the L2 entity, and once upon its transmission to
1679              the L2 entity.  In actuality, for cable modems, IP
1680              filtering is generally the only IP processing done for
1681              transit traffic.  This means that inbound and outbound
1682              filtering can generally be done at the same time with
1683              one pass through the filter table.
1684
1685              The objects in this table are only accessible from cable
1686              devices that are not operating in DiffServ MIB mode
1687              (RFC 3289).  See the conformance section for details.
1688
1689              Note that some devices are required by other
1690              specifications (e.g., the DOCSIS OSSIv1.1 specification)
1691              to support the legacy SNMPv1/v2c docsDevFilter mode
1692              for backward compatibility.
1693
1694              Table entries MUST NOT persist across reboots for any
1695              device.
1696
1697              This table is deprecated.  Instead, use the DiffServ MIB
1698              from RFC 3289."
1699         ::= { docsDevFilter 4 }
1700
1701 docsDevFilterIpEntry OBJECT-TYPE
1702         SYNTAX      DocsDevFilterIpEntry
1703         MAX-ACCESS  not-accessible
1704         STATUS      deprecated
1705         DESCRIPTION
1706             "Describes a filter to apply to IP traffic received on a
1707              specified interface.  All identity objects in this table
1708              (e.g., source and destination address/mask, protocol,
1709              source/dest port, TOS/mask, interface and direction)
1710              must match their respective fields in the packet for
1711              any given filter to match.
1712
1713              To create an entry in this table, docsDevFilterIpIfIndex
1714              must be specified."
1715         INDEX { docsDevFilterIpIndex }
1716         ::= { docsDevFilterIpTable 1 }
1717
1718 DocsDevFilterIpEntry ::= SEQUENCE {
1719             docsDevFilterIpIndex             Integer32,
1720             docsDevFilterIpStatus            RowStatus,
1721             docsDevFilterIpControl           INTEGER,
1722
1723
1724
1725             docsDevFilterIpIfIndex           InterfaceIndexOrZero,
1726             docsDevFilterIpDirection         INTEGER,
1727             docsDevFilterIpBroadcast         TruthValue,
1728             docsDevFilterIpSaddr             IpAddress,
1729             docsDevFilterIpSmask             IpAddress,
1730             docsDevFilterIpDaddr             IpAddress,
1731             docsDevFilterIpDmask             IpAddress,
1732             docsDevFilterIpProtocol          Integer32,
1733             docsDevFilterIpSourcePortLow     Integer32,
1734             docsDevFilterIpSourcePortHigh    Integer32,
1735             docsDevFilterIpDestPortLow       Integer32,
1736             docsDevFilterIpDestPortHigh      Integer32,
1737             docsDevFilterIpMatches           ZeroBasedCounter32,
1738             docsDevFilterIpTos               OCTET STRING,
1739             docsDevFilterIpTosMask           OCTET STRING,
1740             docsDevFilterIpContinue          TruthValue,
1741             docsDevFilterIpPolicyId          Integer32
1742         }
1743
1744 docsDevFilterIpIndex OBJECT-TYPE
1745         SYNTAX      Integer32 (1..2147483647)
1746         MAX-ACCESS  not-accessible
1747         STATUS      deprecated
1748         DESCRIPTION
1749             "Index used to order the application of filters.
1750              The filter with the lowest index is always applied
1751              first."
1752         ::= { docsDevFilterIpEntry 1 }
1753
1754 docsDevFilterIpStatus OBJECT-TYPE
1755         SYNTAX      RowStatus
1756         MAX-ACCESS  read-create
1757         STATUS      deprecated
1758         DESCRIPTION
1759             "Controls and reflects the status of rows in this
1760              table.  Specifying only this object (with the
1761              appropriate index) on a CM is sufficient to create a
1762              filter row that matches all inbound packets on the
1763              ethernet interface and results in the packets being
1764              discarded.  docsDevFilterIpIfIndex (at least) must be
1765              specified on a CMTS to create a row.  Creation of the
1766              rows may be done via either create-and-wait or
1767              create-and-go, but the filter is not applied until this
1768              object is set to (or changes to) active.  There is no
1769              restriction in changing any object in a row while this
1770              object is set to active."
1771         ::= { docsDevFilterIpEntry 2 }
1772
1773
1774
1775
1776 docsDevFilterIpControl OBJECT-TYPE
1777         SYNTAX INTEGER {
1778             discard(1),
1779             accept(2),
1780             policy(3)
1781         }
1782         MAX-ACCESS  read-create
1783         STATUS      deprecated
1784         DESCRIPTION
1785             "If set to discard(1), all packets matching this filter
1786              will be discarded, and scanning of the remainder of the
1787              filter list will be aborted.  If set to accept(2), all
1788              packets matching this filter will be accepted for
1789              further processing (e.g., bridging).  If
1790              docsDevFilterIpContinue is set to true, see if there
1791              are other matches; otherwise, done.  If set to
1792              policy (3), execute the policy entries
1793              matched by docsDevFilterIpPolicyId in
1794              docsDevFilterPolicyTable.
1795
1796              If docsDevFilterIpContinue is set to true, continue
1797              scanning the table for other matches; otherwise, done."
1798         DEFVAL { discard }
1799         ::= { docsDevFilterIpEntry 3 }
1800
1801 docsDevFilterIpIfIndex OBJECT-TYPE
1802         SYNTAX      InterfaceIndexOrZero
1803         MAX-ACCESS  read-create
1804         STATUS      deprecated
1805         DESCRIPTION
1806             "The entry interface to which this filter applies.  The
1807              value corresponds to ifIndex for either a CATV MAC or
1808              another interface.  If the value is zero, the
1809              filter applies to all interfaces.  Default value in CMs
1810              is the index of the customer-side (e.g., ethernet)
1811              interface(s).  In CMTSes, this object MUST be
1812              specified to create a row in this table.
1813
1814              Note that according to the DOCSIS OSSIv1.1
1815              specification, ifIndex '1' in the Cable Modem means
1816              that this row applies to all CMCI (customer-facing)
1817              interfaces."
1818         REFERENCE
1819             "DOCSIS OSSI 1.1 Specification, Section 3.3.4.1. and
1820              DOCSIS OSSI 2.0 Specification, Section 6.3.4.1."
1821         ::= { docsDevFilterIpEntry 4 }
1822
1823 docsDevFilterIpDirection OBJECT-TYPE
1824
1825
1826
1827         SYNTAX INTEGER {
1828             inbound(1),
1829             outbound(2),
1830             both(3)
1831         }
1832         MAX-ACCESS  read-create
1833         STATUS      deprecated
1834         DESCRIPTION
1835             "Determines whether the filter is applied to inbound(1)
1836              traffic, outbound(2) traffic, or traffic in both(3)
1837              directions."
1838         DEFVAL { inbound }
1839         ::= { docsDevFilterIpEntry 5 }
1840
1841 docsDevFilterIpBroadcast OBJECT-TYPE
1842         SYNTAX      TruthValue
1843         MAX-ACCESS  read-create
1844         STATUS      deprecated
1845         DESCRIPTION
1846             "If set to true(1), the filter only applies to multicast
1847              and broadcast traffic.  If set to false(2), the filter
1848              applies to all traffic."
1849         DEFVAL { false }
1850         ::= { docsDevFilterIpEntry 6 }
1851
1852 docsDevFilterIpSaddr OBJECT-TYPE
1853         SYNTAX      IpAddress
1854         MAX-ACCESS  read-create
1855         STATUS      deprecated
1856         DESCRIPTION
1857             "The source IP address, or portion thereof, that is to be
1858              matched for this filter.  The source address is first
1859              masked (ANDed) against docsDevFilterIpSmask before
1860              being compared to this value.  A value of 0 for this
1861              object and 0 for the mask matches all IP addresses."
1862         DEFVAL { '00000000'h }
1863         ::= { docsDevFilterIpEntry 7 }
1864
1865 docsDevFilterIpSmask OBJECT-TYPE
1866         SYNTAX      IpAddress
1867         MAX-ACCESS  read-create
1868         STATUS      deprecated
1869         DESCRIPTION
1870             "A bit mask that is to be applied to the source address
1871              prior to matching.  This mask is not necessarily the
1872              same as a subnet mask, but 1s bits must be leftmost and
1873              contiguous."
1874         DEFVAL { '00000000'h }
1875
1876
1877
1878         ::= { docsDevFilterIpEntry 8 }
1879
1880 docsDevFilterIpDaddr OBJECT-TYPE
1881         SYNTAX      IpAddress
1882         MAX-ACCESS  read-create
1883         STATUS      deprecated
1884         DESCRIPTION
1885             "The destination IP address, or portion thereof, that is
1886              to be matched for this filter.  The destination address
1887              is first masked (ANDed) against docsDevFilterIpDmask
1888              before being compared to this value.  A value of
1889              00000000 for this object and 00000000 for the mask
1890              matches all IP addresses."
1891         DEFVAL { '00000000'h }
1892         ::= { docsDevFilterIpEntry 9 }
1893
1894 docsDevFilterIpDmask OBJECT-TYPE
1895         SYNTAX      IpAddress
1896         MAX-ACCESS  read-create
1897         STATUS      deprecated
1898         DESCRIPTION
1899             "A bit mask that is to be applied to the destination
1900              address prior to matching.  This mask is not necessarily
1901              the same as a subnet mask, but 1s bits MUST be leftmost
1902              and contiguous."
1903         DEFVAL { '00000000'h }
1904         ::= { docsDevFilterIpEntry 10 }
1905
1906 docsDevFilterIpProtocol OBJECT-TYPE
1907         SYNTAX Integer32 (0..256)
1908         MAX-ACCESS  read-create
1909         STATUS      deprecated
1910         DESCRIPTION
1911             "The IP protocol value that is to be matched.  For
1912              example, icmp is 1, tcp is 6, and udp is 17.  A value of
1913              256 matches ANY protocol."
1914         REFERENCE "www.iana.org/assignments/protocol-numbers"
1915         DEFVAL { 256 }
1916         ::= { docsDevFilterIpEntry 11 }
1917
1918 docsDevFilterIpSourcePortLow OBJECT-TYPE
1919         SYNTAX      Integer32 (0..65535)
1920         MAX-ACCESS  read-create
1921         STATUS      deprecated
1922         DESCRIPTION
1923             "This is the inclusive lower bound of the transport-layer
1924              source port range that is to be matched.  If the IP
1925              protocol of the packet is neither UDP nor TCP, this
1926
1927
1928
1929              object is ignored during matching."
1930         REFERENCE "www.iana.org/assignments/port-numbers"
1931         DEFVAL { 0 }
1932         ::= { docsDevFilterIpEntry 12 }
1933
1934 docsDevFilterIpSourcePortHigh OBJECT-TYPE
1935         SYNTAX      Integer32 (0..65535)
1936         MAX-ACCESS  read-create
1937         STATUS      deprecated
1938         DESCRIPTION
1939             "This is the inclusive upper bound of the transport-layer
1940              source port range that is to be matched.  If the IP
1941              protocol of the packet is neither UDP nor TCP, this
1942              object is ignored during matching."
1943         REFERENCE "www.iana.org/assignments/port-numbers"
1944         DEFVAL { 65535 }
1945         ::= { docsDevFilterIpEntry 13 }
1946
1947 docsDevFilterIpDestPortLow OBJECT-TYPE
1948         SYNTAX      Integer32 (0..65535)
1949         MAX-ACCESS  read-create
1950         STATUS      deprecated
1951         DESCRIPTION
1952             "This is the inclusive lower bound of the transport-layer
1953              destination port range that is to be matched.  If the IP
1954              protocol of the packet is neither UDP nor TCP, this
1955              object is ignored during matching."
1956         REFERENCE "www.iana.org/assignments/port-numbers"
1957         DEFVAL { 0 }
1958         ::= { docsDevFilterIpEntry 14 }
1959
1960 docsDevFilterIpDestPortHigh OBJECT-TYPE
1961         SYNTAX      Integer32 (0..65535)
1962         MAX-ACCESS  read-create
1963         STATUS      deprecated
1964         DESCRIPTION
1965             "This is the inclusive upper bound of the transport-layer
1966              destination port range that is to be matched.  If the IP
1967              protocol of the packet is neither UDP nor TCP, this
1968              object is ignored during matching."
1969         REFERENCE "www.iana.org/assignments/port-numbers"
1970         DEFVAL { 65535 }
1971         ::= { docsDevFilterIpEntry 15 }
1972
1973 docsDevFilterIpMatches OBJECT-TYPE
1974         SYNTAX      ZeroBasedCounter32
1975         UNITS       "matches"
1976         MAX-ACCESS  read-only
1977
1978
1979
1980         STATUS      deprecated
1981         DESCRIPTION
1982             "Counts the number of times this filter was matched.
1983              This object is initialized to 0 at boot, or at row
1984              creation, and is reset only upon reboot."
1985         ::= { docsDevFilterIpEntry 16 }
1986
1987 docsDevFilterIpTos  OBJECT-TYPE
1988         SYNTAX      OCTET STRING (SIZE (1))
1989         MAX-ACCESS  read-create
1990         STATUS      deprecated
1991         DESCRIPTION
1992             "This is the value to be matched to the packet's
1993              TOS (Type of Service) value (after the TOS value
1994              is ANDed with docsDevFilterIpTosMask).  A value for this
1995              object of 0 and a mask of 0 matches all TOS values."
1996         DEFVAL { '00'h }
1997         ::= { docsDevFilterIpEntry 17 }
1998
1999 docsDevFilterIpTosMask OBJECT-TYPE
2000         SYNTAX      OCTET STRING (SIZE (1))
2001         MAX-ACCESS  read-create
2002         STATUS      deprecated
2003         DESCRIPTION
2004             "The mask to be applied to the packet's TOS value before
2005              matching."
2006         DEFVAL { '00'h }
2007         ::= { docsDevFilterIpEntry 18 }
2008
2009 docsDevFilterIpContinue OBJECT-TYPE
2010         SYNTAX      TruthValue
2011         MAX-ACCESS  read-create
2012         STATUS      deprecated
2013         DESCRIPTION
2014             "If this value is set to true and docsDevFilterIpControl
2015              is anything but discard (1), continue scanning and
2016              applying policies.  See Section 3.3.3 for more
2017              details."
2018         DEFVAL { false }
2019         ::= { docsDevFilterIpEntry 19 }
2020
2021 docsDevFilterIpPolicyId OBJECT-TYPE
2022         SYNTAX      Integer32 (0..2147483647)
2023         MAX-ACCESS  read-create
2024         STATUS      deprecated
2025         DESCRIPTION
2026             "This object points to an entry in
2027              docsDevFilterPolicyTable.  If docsDevFilterIpControl
2028
2029
2030
2031              is set to policy (3), execute all matching policies
2032              in docsDevFilterPolicyTable.  If no matching policy
2033              exists, treat as if docsDevFilterIpControl were set
2034              to accept (1).  If this object is set to the value of
2035              0, there is no matching policy, and
2036              docsDevFilterPolicyTable MUST NOT be consulted."
2037         DEFVAL { 0 }
2038         ::= { docsDevFilterIpEntry 20 }
2039
2040 --
2041 -- Policy Mapping Table
2042 --
2043
2044 docsDevFilterPolicyTable OBJECT-TYPE
2045         SYNTAX      SEQUENCE OF DocsDevFilterPolicyEntry
2046         MAX-ACCESS  not-accessible
2047         STATUS      deprecated
2048         DESCRIPTION
2049             "A Table that maps between a policy group ID and a set
2050              of pointers to policies to be applied.  All rows with
2051              the same docsDevFilterPolicyId are part of the same
2052              group of policy pointers and are applied in the order
2053              in this table.  docsDevFilterPolicyTable exists to
2054              allow multiple policy actions (referenced by policy
2055              pointers) to be applied to any given classified packet.
2056              The policy actions are applied in index order.
2057              For example:
2058
2059              Index   ID    Type    Action
2060               1      1      TOS     1
2061               9      5      TOS     1
2062               12     1      IPSEC   3
2063
2064              This says that a packet that matches a filter with
2065              policy id 1 first has TOS policy 1 applied (which might
2066              set the TOS bits to enable a higher priority) and next
2067              has the IPSEC policy 3 applied (which may result in the
2068              packets being dumped into a secure VPN to a remote
2069              encryptor).
2070
2071              Policy ID 0 is reserved for default actions and is
2072              applied only to packets that match no filters in
2073              docsDevFilterIpTable.
2074
2075              Table entries MUST NOT persist across reboots for any
2076              device.
2077
2078              This table is deprecated.  Instead, use the DiffServ MIB
2079
2080
2081
2082              from RFC 3289."
2083         ::= { docsDevFilter 5 }
2084
2085 docsDevFilterPolicyEntry OBJECT-TYPE
2086         SYNTAX      DocsDevFilterPolicyEntry
2087         MAX-ACCESS  not-accessible
2088         STATUS      deprecated
2089         DESCRIPTION
2090             "An entry in the docsDevFilterPolicyTable.  Entries are
2091              created by Network Management.  To create an entry,
2092              docsDevFilterPolicyId MUST be specified."
2093         INDEX { docsDevFilterPolicyIndex }
2094         ::= { docsDevFilterPolicyTable 1 }
2095
2096 DocsDevFilterPolicyEntry ::= SEQUENCE {
2097             docsDevFilterPolicyIndex   Integer32,
2098             docsDevFilterPolicyId      Integer32,
2099 --          docsDevFilterPolicyType    INTEGER,
2100 --          docsDevFilterPolicyAction  Integer32,
2101             docsDevFilterPolicyStatus  RowStatus,
2102             docsDevFilterPolicyPtr     RowPointer
2103         }
2104
2105 docsDevFilterPolicyIndex OBJECT-TYPE
2106         SYNTAX      Integer32 (1..2147483647)
2107         MAX-ACCESS  not-accessible
2108         STATUS      deprecated
2109         DESCRIPTION "Index value for the table."
2110         ::= { docsDevFilterPolicyEntry 1 }
2111
2112 docsDevFilterPolicyId OBJECT-TYPE
2113         SYNTAX      Integer32 (0..2147483647)
2114         MAX-ACCESS  read-create
2115         STATUS      deprecated
2116         DESCRIPTION
2117             "Policy ID for this entry.  If a policy ID can apply to
2118              multiple rows of this table, all relevant policies are
2119              executed.  Policy 0 (if populated) is applied to all
2120              packets that do not match any of the filters.  N.B. If
2121              docsDevFilterIpPolicyId is set to 0, it DOES NOT match
2122              policy 0 of this table."
2123         ::= { docsDevFilterPolicyEntry 2 }
2124
2125 -- The following two objects were removed and never used; however,
2126 -- to preserve OID numbering, they are simply commented out to
2127 -- to ensure that they are not used again.
2128 -- docsDevFilterPolicyType ::= { docsDevFilterPolicyEntry 3 }
2129 -- docsDevFilterPolicyAction ::= { docsDevFilterPolicyEntry 4 }
2130
2131
2132
2133 docsDevFilterPolicyStatus OBJECT-TYPE
2134         SYNTAX      RowStatus
2135         MAX-ACCESS  read-create
2136         STATUS      deprecated
2137         DESCRIPTION
2138             "Object used to create an entry in this table.  There is
2139              no restriction in changing any object in a row while
2140              this object is set to active.
2141              The following object MUST have a valid value before this
2142              object can be set to active:  docsDevFilterPolicyPtr."
2143         ::= { docsDevFilterPolicyEntry 5 }
2144
2145 docsDevFilterPolicyPtr OBJECT-TYPE
2146         SYNTAX      RowPointer
2147         MAX-ACCESS  read-create
2148         STATUS      deprecated
2149         DESCRIPTION
2150             "This object points to a row in an applicable filter
2151              policy table.  Currently, the only standard policy
2152              table is docsDevFilterTosTable.
2153
2154              Per the textual convention, this object points to the
2155              first accessible object in the row; e.g., to point to a
2156              row in docsDevFilterTosTable with an index of 21, the
2157              value of this object would be the object identifier
2158              docsDevTosStatus.21.
2159
2160              Vendors are recommended to adhere to the same convention
2161              when adding vendor-specific policy table extensions.
2162
2163              If this pointer references an empty or non-existent
2164              row, then no policy action is taken.
2165
2166              The default upon row creation is a null pointer that
2167              results in no policy action being taken."
2168         DEFVAL { zeroDotZero }
2169         ::= { docsDevFilterPolicyEntry 6 }
2170
2171 --
2172 -- TOS Policy action table
2173 --
2174
2175 docsDevFilterTosTable OBJECT-TYPE
2176         SYNTAX      SEQUENCE OF DocsDevFilterTosEntry
2177         MAX-ACCESS  not-accessible
2178         STATUS      deprecated
2179         DESCRIPTION
2180             "Table used to describe Type of Service (TOS) bits
2181
2182
2183
2184              processing.
2185
2186              This table is an adjunct to the docsDevFilterIpTable
2187              and the docsDevFilterPolicy table.  Entries in the
2188              latter table can point to specific rows in this (and
2189              other) tables and cause specific actions to be taken.
2190              This table permits the manipulation of the value of the
2191              Type of Service bits in the IP header of the matched
2192              packet as follows:
2193
2194              Set the tosBits of the packet to
2195                 (tosBits & docsDevFilterTosAndMask) |
2196                 docsDevFilterTosOrMask
2197
2198              This construct allows you to do a clear and set of all
2199              the TOS bits in a flexible manner.
2200
2201              Table entries MUST NOT persist across reboots for any
2202              device.
2203
2204              This table is deprecated.  Instead, use the DiffServ MIB
2205              from RFC 3289."
2206         ::= { docsDevFilter 6 }
2207
2208 docsDevFilterTosEntry OBJECT-TYPE
2209         SYNTAX      DocsDevFilterTosEntry
2210         MAX-ACCESS  not-accessible
2211         STATUS      deprecated
2212         DESCRIPTION
2213             "A TOS policy entry."
2214         INDEX { docsDevFilterTosIndex }
2215         ::= { docsDevFilterTosTable 1 }
2216
2217 DocsDevFilterTosEntry ::= SEQUENCE {
2218             docsDevFilterTosIndex   Integer32,
2219             docsDevFilterTosStatus  RowStatus,
2220             docsDevFilterTosAndMask OCTET STRING,
2221             docsDevFilterTosOrMask  OCTET STRING
2222         }
2223
2224 docsDevFilterTosIndex OBJECT-TYPE
2225         SYNTAX      Integer32 (1..2147483647)
2226         MAX-ACCESS  not-accessible
2227         STATUS      deprecated
2228         DESCRIPTION
2229             "The unique index for this row.  There are no ordering
2230              requirements for this table, and any valid index may be
2231              specified."
2232
2233
2234
2235         ::= { docsDevFilterTosEntry 1 }
2236
2237 docsDevFilterTosStatus OBJECT-TYPE
2238         SYNTAX      RowStatus
2239         MAX-ACCESS  read-create
2240         STATUS      deprecated
2241         DESCRIPTION
2242             "The object used to create and delete entries in this
2243              table.  A row created by specifying just this object
2244              results in a row that specifies no change to the TOS
2245              bits.  A row may be created using either the
2246              create-and-go or create-and-wait paradigms.  There is
2247              no restriction on the ability to change values in this
2248              row while the row is active."
2249         ::= { docsDevFilterTosEntry 2 }
2250
2251 docsDevFilterTosAndMask OBJECT-TYPE
2252         SYNTAX      OCTET STRING (SIZE (1))
2253         MAX-ACCESS  read-create
2254         STATUS      deprecated
2255         DESCRIPTION
2256             "This value is bitwise ANDed with the matched packet's
2257              TOS bits."
2258         DEFVAL { 'ff'h }
2259         ::= { docsDevFilterTosEntry 3 }
2260
2261 docsDevFilterTosOrMask OBJECT-TYPE
2262         SYNTAX      OCTET STRING (SIZE (1))
2263         MAX-ACCESS  read-create
2264         STATUS      deprecated
2265         DESCRIPTION
2266             "This value is bitwise ORed with the result from the
2267              AND procedure (tosBits & docsDevFilterTosAndMask).
2268              The result then replaces the packet's TOS bits."
2269         DEFVAL { '00'h }
2270         ::= { docsDevFilterTosEntry 4 }
2271
2272 --
2273 -- CPE IP Management and anti-spoofing group.  Only implemented on
2274 -- Cable Modems.
2275 --
2276
2277 docsDevCpe OBJECT IDENTIFIER ::= { docsDevMIBObjects 7 }
2278
2279 docsDevCpeEnroll OBJECT-TYPE
2280         SYNTAX      INTEGER {
2281             none(1),
2282             any(2)
2283
2284
2285
2286         }
2287         MAX-ACCESS  read-write
2288         STATUS      current
2289         DESCRIPTION
2290             "This object controls the population of
2291              docsDevFilterCpeTable.
2292              If set to none, the filters must be set manually
2293              by a network management action (either configuration
2294              or SNMP set).
2295              If set to any, the CM wiretaps the packets originating
2296              from the ethernet and enrolls up to docsDevCpeIpMax
2297              addresses as based on the source IPv4 or v6 addresses of
2298              those packets."
2299         DEFVAL { any }
2300         ::= { docsDevCpe 1 }
2301
2302 docsDevCpeIpMax OBJECT-TYPE
2303         SYNTAX      Integer32 (-1..2147483647)
2304         MAX-ACCESS  read-write
2305         STATUS      current
2306         DESCRIPTION
2307             "This object controls the maximum number of CPEs allowed
2308              to be learned behind this device.  If set to zero, any
2309              number of CPEs may connect up to the maximum permitted
2310              for the device.
2311              If set to -1, no filtering is done on CPE source
2312              addresses, and no entries are made in the
2313              docsDevFilterCpeTable via learning.  If an attempt is
2314              made to set this to a number greater than that
2315              permitted for the device, it is set to that maximum."
2316         DEFVAL { -1 }
2317         ::= { docsDevCpe 2 }
2318
2319 docsDevCpeTable OBJECT-TYPE
2320         SYNTAX      SEQUENCE OF DocsDevCpeEntry
2321         MAX-ACCESS  not-accessible
2322         STATUS      deprecated
2323         DESCRIPTION
2324             "This table lists the IPv4 addresses seen (or permitted)
2325              as source addresses in packets originating from the
2326              customer interface on this device.  In addition, this
2327              table can be provisioned with the specific addresses
2328              permitted for the CPEs via the normal row creation
2329              mechanisms.  Table entries MUST NOT persist across
2330              reboots for any device.
2331
2332              N.B.  Management action can add entries in this table
2333              and in docsDevCpeIpTable past the value of
2334
2335
2336
2337              docsDevCpeIpMax.  docsDevCpeIpMax ONLY restricts the
2338              ability of the CM to add learned addresses
2339              automatically.
2340
2341              This table is deprecated and is replaced by
2342              docsDevCpeInetTable."
2343         ::= { docsDevCpe 3 }
2344
2345 docsDevCpeEntry OBJECT-TYPE
2346         SYNTAX      DocsDevCpeEntry
2347         MAX-ACCESS  not-accessible
2348         STATUS      deprecated
2349         DESCRIPTION
2350             "An entry in the docsDevFilterCpeTable.  There is one
2351              entry for each IPv4 CPE seen or provisioned.  If
2352              docsDevCpeIpMax is set to -1, this table is ignored;
2353              otherwise, upon receipt of an IP packet from the
2354              customer interface of the CM, the source IP address is
2355              checked against this table.  If the address is in the
2356              table, packet processing continues.  If the address is
2357              not in the table but docsDevCpeEnroll is set to any
2358              and the sum of the table sizes of docsDevCpeTable and
2359              docsDevCpeInetTable is less than docsDevCpeIpMax, the
2360              address is added to the table, and packet processing
2361              continues.  Otherwise, the packet is dropped.
2362
2363              The filtering actions specified by this table occur
2364              after any LLC filtering (docsDevFilterLLCTable), but
2365              prior to any IP filtering (docsDevFilterIpTable,
2366              docsDevNmAccessTable)."
2367         INDEX   { docsDevCpeIp }
2368         ::= {docsDevCpeTable 1 }
2369
2370 DocsDevCpeEntry ::= SEQUENCE {
2371             docsDevCpeIp      IpAddress,
2372             docsDevCpeSource  INTEGER,
2373             docsDevCpeStatus  RowStatus
2374         }
2375
2376 docsDevCpeIp OBJECT-TYPE
2377         SYNTAX      IpAddress
2378         MAX-ACCESS  not-accessible
2379         STATUS      deprecated
2380         DESCRIPTION
2381             "The IPv4 address to which this entry applies.
2382
2383              N.B.  Attempts to set all zeros or all ones address
2384              values MUST be rejected."
2385
2386
2387
2388         ::= { docsDevCpeEntry 1 }
2389
2390 docsDevCpeSource OBJECT-TYPE
2391         SYNTAX      INTEGER {
2392             other(1),
2393             manual(2),
2394             learned(3)
2395         }
2396
2397         MAX-ACCESS  read-only
2398         STATUS      deprecated
2399         DESCRIPTION
2400             "This object describes how this entry was created.  If
2401              the value is manual(2), this row was created by a
2402              network management action (either configuration or
2403              SNMP set).  If set to learned(3), then it was found via
2404              looking at the source IPv4 address of a received packet.
2405              The value other(1) is used for any entries that do not
2406              meet manual(2) or learned(3) criteria."
2407         ::= { docsDevCpeEntry 2 }
2408
2409 docsDevCpeStatus OBJECT-TYPE
2410         SYNTAX  RowStatus
2411         MAX-ACCESS  read-create
2412         STATUS  deprecated
2413         DESCRIPTION
2414             "Standard object to manipulate rows.  To create a row in
2415              this table, one only needs to specify this object.
2416              Management stations SHOULD use the create-and-go
2417              mechanism for creating rows in this table."
2418         ::= { docsDevCpeEntry 3 }
2419
2420 --
2421 -- Internet CPE Management and anti spoofing group, for support of
2422 -- non-IPv4 CPEs.
2423 --
2424
2425 docsDevCpeInetTable OBJECT-TYPE
2426         SYNTAX      SEQUENCE OF DocsDevCpeInetEntry
2427         MAX-ACCESS  not-accessible
2428         STATUS      current
2429         DESCRIPTION
2430             "This table lists the IP addresses seen (or permitted) as
2431              source addresses in packets originating from the
2432              customer interface on this device.  In addition, this
2433              table can be provisioned with the specific addresses
2434              permitted for the CPEs via the normal row creation
2435              mechanisms.
2436
2437
2438
2439              N.B.  Management action can add entries in this table
2440              and in docsDevCpeIpTable past the value of
2441              docsDevCpeIpMax.  docsDevCpeIpMax ONLY restricts the
2442              ability of the CM to add learned addresses
2443              automatically.
2444
2445              Table entries MUST NOT persist across reboots for any
2446              device.
2447
2448              This table exactly mirrors docsDevCpeTable and applies
2449              to IPv4 and IPv6 addresses."
2450         ::= { docsDevCpe 4 }
2451
2452 docsDevCpeInetEntry OBJECT-TYPE
2453         SYNTAX      DocsDevCpeInetEntry
2454         MAX-ACCESS  not-accessible
2455         STATUS      current
2456         DESCRIPTION
2457             "An entry in the docsDevFilterCpeInetTable.  There is one
2458              entry for each IP CPE seen or provisioned.  If
2459              docsDevCpeIpMax is set to -1, this table is ignored;
2460              otherwise, upon receipt of an IP packet from the
2461              customer interface of the CM, the source IP address is
2462              checked against this table.  If the address is in the
2463              table, packet processing continues.  If the address is
2464              not in the table but docsDevCpeEnroll is set to any and
2465              the sum of the table sizes for docsDevCpeTable and
2466              docsDevCpeInetTable is less than docsDevCpeIpMax, the
2467              address is added to the table, and packet processing
2468              continues.  Otherwise, the packet is dropped.
2469
2470              The filtering actions specified by this table occur
2471              after any LLC filtering (docsDevFilterLLCTable), but
2472              prior to any IP filtering (docsDevFilterIpTable,
2473              docsDevNmAccessTable).
2474
2475              When an agent (cable modem) restarts, then all
2476              dynamically created rows are lost."
2477         INDEX   { docsDevCpeInetType, docsDevCpeInetAddr }
2478         ::= { docsDevCpeInetTable 1 }
2479
2480 DocsDevCpeInetEntry ::= SEQUENCE {
2481             docsDevCpeInetType      InetAddressType,
2482             docsDevCpeInetAddr      InetAddress,
2483             docsDevCpeInetSource    INTEGER,
2484             docsDevCpeInetRowStatus RowStatus
2485         }
2486
2487
2488
2489
2490 docsDevCpeInetType OBJECT-TYPE
2491         SYNTAX      InetAddressType
2492         MAX-ACCESS  not-accessible
2493         STATUS      current
2494         DESCRIPTION
2495             "The type of internet address of docsDevCpeInetAddr."
2496          ::= { docsDevCpeInetEntry 1 }
2497
2498 docsDevCpeInetAddr OBJECT-TYPE
2499         SYNTAX      InetAddress
2500         MAX-ACCESS  not-accessible
2501         STATUS      current
2502         DESCRIPTION
2503             "The Internet address to which this entry applies.
2504
2505              Implementors need to be aware that if the size of
2506              docsDevCpeInetAddr exceeds 114 octets OIDs of
2507              instances of columns in this row will have more
2508              than 128 sub-identifiers and cannot be accessed
2509              using SNMPv1, SNMPv2c, or SNMPv3.  Only unicast
2510              address are allowed for this object."
2511         ::= { docsDevCpeInetEntry 2 }
2512
2513 docsDevCpeInetSource OBJECT-TYPE
2514         SYNTAX      INTEGER {
2515             manual(2),
2516             learned(3)
2517         }
2518         MAX-ACCESS  read-only
2519         STATUS      current
2520         DESCRIPTION
2521             "This object describes how this entry was created.  If
2522              the value is manual(2), this row was created by a
2523              network management action (either configuration or
2524              SNMP set).  If set to learned(3), then it was found
2525              via looking at the source IP address of a received
2526              packet."
2527         ::= { docsDevCpeInetEntry 3 }
2528
2529 docsDevCpeInetRowStatus OBJECT-TYPE
2530         SYNTAX  RowStatus
2531         MAX-ACCESS  read-create
2532         STATUS  current
2533         DESCRIPTION
2534             "Standard object to manipulate rows.  To create a row in
2535              this table, one only needs to specify this object.
2536              Management stations SHOULD use the create-and-go
2537              mechanism for creating rows in this table."
2538
2539
2540
2541         ::= { docsDevCpeInetEntry 4 }
2542
2543
2544 --
2545 -- Placeholder for notifications/traps.
2546 --
2547
2548 -- erroneous, DO NOT USE docsDevNotification
2549 docsDevNotification OBJECT IDENTIFIER   ::= { docsDev 2 }
2550 -- erroneous, DO NOT USE docsDevNotification
2551
2552 docsDevNotifications OBJECT IDENTIFIER   ::= { docsDev 0 }
2553
2554
2555 --
2556 -- RFC 2669 Conformance definitions
2557 --
2558
2559 docsDevConformance  OBJECT IDENTIFIER   ::= { docsDev 3 }
2560 docsDevGroups       OBJECT IDENTIFIER   ::= { docsDevConformance 1 }
2561 docsDevCompliances  OBJECT IDENTIFIER   ::= { docsDevConformance 2 }
2562
2563 docsDevBasicCompliance MODULE-COMPLIANCE
2564         STATUS  deprecated
2565         DESCRIPTION
2566             "The RFC 2669 compliance statement for MCNS/DOCSIS
2567              Cable Modems and Cable Modem Termination Systems."
2568
2569 MODULE  -- docsDev
2570
2571 -- conditionally mandatory groups
2572
2573 GROUP docsDevBaseGroup
2574         DESCRIPTION
2575             "Mandatory in Cable Modems, optional in Cable Modem
2576              Termination Systems."
2577
2578 GROUP docsDevEventGroup
2579         DESCRIPTION
2580             "Mandatory in Cable Modems, optional in Cable Modem
2581              Termination Systems."
2582
2583 GROUP docsDevFilterGroup
2584         DESCRIPTION
2585             "Mandatory in Cable Modems, optional in Cable Modem
2586              Termination Systems."
2587
2588 GROUP docsDevNmAccessGroup
2589
2590
2591
2592         DESCRIPTION
2593             "This group is only implemented in devices that do not
2594              implement the SNMPv3 User Security Model.  It SHOULD NOT
2595              be implemented by devices that conform to SNMPv3.
2596
2597              For devices that do not implement SNMPv3 or later, this
2598              group is Mandatory in Cable Modems and is optional
2599              in Cable Modem Termination Systems."
2600
2601 GROUP docsDevServerGroup
2602         DESCRIPTION
2603             "This group is implemented only in Cable Modems, and is
2604              not implemented in Cable Modem Termination Systems."
2605
2606 GROUP docsDevSoftwareGroup
2607         DESCRIPTION
2608             "This group is Mandatory in Cable Modems and optional in
2609              Cable Modem Termination Systems."
2610
2611 GROUP docsDevCpeGroup
2612         DESCRIPTION
2613             "This group is Mandatory in Cable Modems, and is
2614              not implemented in Cable Modem Termination Systems."
2615
2616 OBJECT docsDevSTPControl
2617         MIN-ACCESS read-only
2618         DESCRIPTION
2619             "It is compliant to implement this object as read-only.
2620              Devices need only support noStFilterBpdu(2)."
2621
2622 OBJECT docsDevNmAccessIp
2623         DESCRIPTION
2624             "It is compliant to recognize the IP address
2625              255.255.255.255 as referring to any NMS."
2626
2627 OBJECT docsDevEvReporting
2628          MIN-ACCESS read-only
2629          DESCRIPTION
2630              "It is compliant to implement this object as read-only.
2631               Devices need only support local(0).  An agent need not
2632               enforce that trap or syslog logging be accompanied
2633               by local(0) or localVolatile(3) logging."
2634          ::= { docsDevCompliances 1 }
2635
2636 docsDevBaseGroup OBJECT-GROUP
2637         OBJECTS {
2638              docsDevRole,
2639              docsDevDateTime,
2640
2641
2642
2643              docsDevResetNow,
2644              docsDevSerialNumber,
2645              docsDevSTPControl
2646         }
2647         STATUS      current
2648         DESCRIPTION
2649             "A collection of objects providing device status and
2650              control."
2651         ::= { docsDevGroups 1 }
2652
2653 docsDevNmAccessGroup OBJECT-GROUP
2654         OBJECTS {
2655              docsDevNmAccessIp,
2656              docsDevNmAccessIpMask,
2657              docsDevNmAccessCommunity,
2658              docsDevNmAccessControl,
2659              docsDevNmAccessInterfaces,
2660              docsDevNmAccessStatus
2661         }
2662         STATUS      deprecated
2663         DESCRIPTION
2664             "A collection of objects for controlling access to SNMP
2665              objects on cable devices.
2666
2667              This group has been deprecated because all the
2668              objects have been deprecated in favor of SNMPv3 and
2669              Coexistence MIBs."
2670         ::= { docsDevGroups 2 }
2671
2672 docsDevSoftwareGroup OBJECT-GROUP
2673         OBJECTS {
2674             docsDevSwServer,
2675             docsDevSwFilename,
2676             docsDevSwAdminStatus,
2677             docsDevSwOperStatus,
2678             docsDevSwCurrentVers
2679         }
2680         STATUS      deprecated
2681         DESCRIPTION
2682             "A collection of objects for controlling software
2683              downloads.
2684
2685              This group has been deprecated and replaced by
2686              docsDevSoftwareGroupV2.  Object docsDevSwServer
2687              has been replaced by docsDevSwServerAddressType
2688              and docsDevSwServerAddress, and
2689              docsDevSwServerTransportProtocol has been added to
2690              support TFTP and HTTP firmware downloads."
2691
2692
2693
2694         ::= { docsDevGroups 3 }
2695
2696 docsDevServerGroup OBJECT-GROUP
2697         OBJECTS {
2698             docsDevServerBootState,
2699             docsDevServerDhcp,
2700             docsDevServerTime,
2701             docsDevServerTftp,
2702             docsDevServerConfigFile
2703         }
2704         STATUS      deprecated
2705         DESCRIPTION
2706             "A collection of objects providing status about server
2707              provisioning.
2708
2709              This group has been deprecated and replaced by
2710              docsDevServerGroupV2.  The objects docsDevServerDhcp,
2711              docsDevServerTime, and docsDevServerTftp have
2712              been replaced by docsDevServerDhcpAddressType,
2713              docsDevServerDhcpAddress, docsDevServerTimeAddressType,
2714              docsDevServerTimeAddress,
2715              docsDevServerConfigTftpAddressType, and
2716              docsDevServerConfigTftpAddress."
2717         ::= { docsDevGroups 4 }
2718
2719 docsDevEventGroup OBJECT-GROUP
2720         OBJECTS {
2721             docsDevEvControl,
2722             docsDevEvSyslog,
2723             docsDevEvThrottleAdminStatus,
2724             docsDevEvThrottleInhibited,
2725             docsDevEvThrottleThreshold,
2726             docsDevEvThrottleInterval,
2727             docsDevEvReporting,
2728             docsDevEvFirstTime,
2729             docsDevEvLastTime,
2730             docsDevEvCounts,
2731             docsDevEvLevel,
2732             docsDevEvId,
2733             docsDevEvText
2734         }
2735         STATUS      deprecated
2736         DESCRIPTION
2737             "A collection of objects used to control and monitor
2738              events.
2739
2740              This group has been deprecated and replaced by
2741              docsDevEventGroupV2.  The object docsDevEvSyslog has
2742
2743
2744
2745              been replaced by docsDevEvSyslogAddressType and
2746              docsDevEvSyslogAddress, and docsDevEvThrottleInhibited
2747              has been replaced by
2748              docsDevEvThrottleThresholdExceeded."
2749         ::= { docsDevGroups 5 }
2750
2751 docsDevFilterGroup OBJECT-GROUP
2752         OBJECTS {
2753             docsDevFilterLLCUnmatchedAction,
2754             docsDevFilterIpDefault,
2755             docsDevFilterLLCStatus,
2756             docsDevFilterLLCIfIndex,
2757             docsDevFilterLLCProtocolType,
2758             docsDevFilterLLCProtocol,
2759             docsDevFilterLLCMatches,
2760             docsDevFilterIpControl,
2761             docsDevFilterIpIfIndex,
2762             docsDevFilterIpStatus,
2763             docsDevFilterIpDirection,
2764             docsDevFilterIpBroadcast,
2765             docsDevFilterIpSaddr,
2766             docsDevFilterIpSmask,
2767             docsDevFilterIpDaddr,
2768             docsDevFilterIpDmask,
2769             docsDevFilterIpProtocol,
2770             docsDevFilterIpSourcePortLow,
2771             docsDevFilterIpSourcePortHigh,
2772             docsDevFilterIpDestPortLow,
2773             docsDevFilterIpDestPortHigh,
2774             docsDevFilterIpMatches,
2775             docsDevFilterIpTos,
2776             docsDevFilterIpTosMask,
2777             docsDevFilterIpContinue,
2778             docsDevFilterIpPolicyId,
2779             docsDevFilterPolicyId,
2780             docsDevFilterPolicyStatus,
2781             docsDevFilterPolicyPtr,
2782             docsDevFilterTosStatus,
2783             docsDevFilterTosAndMask,
2784             docsDevFilterTosOrMask
2785         }
2786         STATUS      deprecated
2787         DESCRIPTION
2788             "A collection of objects to specify filters at the link
2789              layer and IPv4 layer.
2790
2791              This group has been deprecated and replaced by various
2792              groups from the DiffServ MIB."
2793
2794
2795
2796         ::= { docsDevGroups 6 }
2797
2798 docsDevCpeGroup OBJECT-GROUP
2799         OBJECTS {
2800            docsDevCpeEnroll,
2801            docsDevCpeIpMax,
2802            docsDevCpeSource,
2803            docsDevCpeStatus
2804         }
2805         STATUS      deprecated
2806         DESCRIPTION
2807             "A collection of objects used to control the number
2808              and specific values of IPv4 addresses allowed for
2809              associated Customer Premises Equipment (CPE).
2810
2811              This group has been deprecated and replaced by
2812              docsDevInetCpeGroup.  The object docsDevCpeSource has
2813              been replaced by docsDevCpeInetSource, and
2814              docsDevCpeStatus has been replaced by
2815              docsDevCpeInetRowStatus."
2816         ::= { docsDevGroups 7 }
2817
2818 --
2819 -- RFC 4639 Conformance definitions
2820 --
2821
2822 docsDevGroupsV2       OBJECT IDENTIFIER  ::= { docsDevConformance 3 }
2823 docsDevCompliancesV2  OBJECT IDENTIFIER  ::= { docsDevConformance 4 }
2824
2825 docsDevCmCompliance MODULE-COMPLIANCE
2826          STATUS  current
2827          DESCRIPTION
2828              "The compliance statement for DOCSIS Cable Modems.
2829
2830               This compliance statement applies to implementations
2831               of DOCSIS versions that are not IPv6 capable."
2832
2833 MODULE DIFFSERV-MIB -- RFC 3289
2834
2835 MANDATORY-GROUPS {
2836            diffServMIBDataPathGroup,
2837            diffServMIBClfrGroup,
2838            diffServMIBClfrElementGroup,
2839            diffServMIBMultiFieldClfrGroup,
2840            diffServMIBActionGroup,
2841            diffServMIBDscpMarkActGroup,
2842            diffServMIBCounterGroup,
2843            diffServMIBAlgDropGroup
2844
2845
2846
2847            }
2848
2849 OBJECT diffServDataPathStatus  -- same as RFC 3289
2850          SYNTAX RowStatus { active(1) }
2851          WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) }
2852          DESCRIPTION
2853              "Support for createAndWait and notInService is not
2854               required."
2855
2856 OBJECT diffServClfrStatus  -- same as RFC 3289
2857          SYNTAX RowStatus { active(1) }
2858          WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) }
2859          DESCRIPTION
2860              "Support for createAndWait and notInService is not
2861               required."
2862
2863 OBJECT diffServClfrElementStatus  -- same as RFC 3289
2864          SYNTAX RowStatus { active(1) }
2865          WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) }
2866          DESCRIPTION
2867              "Support for createAndWait and notInService is not
2868               required."
2869
2870 OBJECT diffServMultiFieldClfrAddrType
2871          SYNTAX  InetAddressType { ipv4(1) }
2872          DESCRIPTION
2873              "An implementation is only required to support IPv4
2874               addresses."
2875
2876 OBJECT diffServMultiFieldClfrSrcAddr
2877          SYNTAX  InetAddress (SIZE(4))
2878          DESCRIPTION
2879              "An implementation is only required to support IPv4
2880               addresses."
2881
2882 OBJECT diffServMultiFieldClfrDstAddr
2883          SYNTAX  InetAddress (SIZE(4))
2884          DESCRIPTION
2885              "An implementation is only required to support IPv4
2886               addresses."
2887
2888 OBJECT diffServAlgDropStatus  -- same as RFC 3289
2889          SYNTAX RowStatus { active(1) }
2890          WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) }
2891          DESCRIPTION
2892              "Support for createAndWait and notInService is not
2893               required."
2894
2895
2896
2897
2898 OBJECT diffServDataPathStorage
2899          SYNTAX StorageType { volatile(2) }
2900          DESCRIPTION
2901              "An implementation is only required to support
2902               volatile storage."
2903
2904 OBJECT diffServClfrStorage
2905          SYNTAX StorageType { volatile(2) }
2906          DESCRIPTION
2907              "An implementation is only required to support
2908               volatile storage."
2909
2910 OBJECT diffServClfrElementStorage
2911          SYNTAX StorageType { volatile(2) }
2912          DESCRIPTION
2913              "An implementation is only required to support
2914               volatile storage."
2915
2916 OBJECT diffServMultiFieldClfrStorage
2917          SYNTAX StorageType { volatile(2) }
2918          DESCRIPTION
2919              "An implementation is only required to support
2920               volatile storage."
2921
2922 OBJECT diffServActionStorage
2923          SYNTAX StorageType { volatile(2) }
2924          DESCRIPTION
2925              "An implementation is only required to support
2926               volatile storage."
2927
2928 OBJECT diffServCountActStorage
2929          SYNTAX StorageType { volatile(2) }
2930          DESCRIPTION
2931              "An implementation is only required to support
2932               volatile storage."
2933
2934 OBJECT diffServAlgDropStorage
2935          SYNTAX StorageType { volatile(2) }
2936          DESCRIPTION
2937              "An implementation is only required to support
2938               volatile storage."
2939
2940 OBJECT diffServAlgDropType
2941          SYNTAX  INTEGER { alwaysDrop(5) }
2942          DESCRIPTION
2943              "This object is only used to provide packet
2944               filtering.  Implementations need not support other
2945               values of this enumeration."
2946
2947
2948
2949 MODULE  -- docsDev
2950
2951 MANDATORY-GROUPS {
2952            docsDevBaseGroup,
2953            docsDevBaseIgmpGroup,
2954            docsDevBaseMaxCpeGroup,
2955            docsDevSoftwareGroupV2,
2956            docsDevServerGroupV2,
2957            docsDevEventGroupV2,
2958            docsDevFilterLLCGroup
2959            }
2960
2961 -- conditionally mandatory groups
2962
2963 GROUP docsDevInetCpeGroup
2964         DESCRIPTION
2965             "This group is optional in Cable Modems."
2966
2967 OBJECT docsDevDateTime
2968          MIN-ACCESS read-only
2969          DESCRIPTION
2970              "It is compliant to implement this object as read-only."
2971
2972 OBJECT docsDevSTPControl
2973          SYNTAX INTEGER { noStFilterBpdu(2) }
2974          MIN-ACCESS read-only
2975          DESCRIPTION
2976              "It is compliant to implement this object as read-only.
2977               Devices need only support noStFilterBpdu(2)."
2978
2979 OBJECT docsDevIgmpModeControl
2980          SYNTAX INTEGER { passive(1) }
2981          MIN-ACCESS read-only
2982          DESCRIPTION
2983              "It is compliant to implement this object as read-only.
2984               Devices need only support passive(1)."
2985
2986 OBJECT docsDevSwServerAddressType
2987          SYNTAX InetAddressType { ipv4(1) }
2988          DESCRIPTION
2989              "An implementation is only required to support IPv4
2990               addresses."
2991
2992 OBJECT docsDevSwServerAddress
2993          SYNTAX  InetAddress (SIZE(4))
2994          DESCRIPTION
2995              "An implementation is only required to support IPv4
2996               addresses."
2997
2998
2999
3000 OBJECT docsDevServerDhcpAddressType
3001          SYNTAX InetAddressType { ipv4(1) }
3002          DESCRIPTION
3003              "An implementation is only required to support IPv4
3004               addresses."
3005
3006 OBJECT docsDevServerDhcpAddress
3007          SYNTAX  InetAddress (SIZE(4))
3008          DESCRIPTION
3009              "An implementation is only required to support IPv4
3010               addresses."
3011
3012 OBJECT docsDevServerTimeAddressType
3013          SYNTAX InetAddressType { ipv4(1) }
3014          DESCRIPTION
3015              "An implementation is only required to support IPv4
3016               addresses."
3017
3018 OBJECT docsDevServerTimeAddress
3019          SYNTAX  InetAddress (SIZE(4))
3020          DESCRIPTION
3021              "An implementation is only required to support IPv4
3022               addresses."
3023
3024 OBJECT docsDevServerConfigTftpAddressType
3025          SYNTAX InetAddressType { ipv4(1) }
3026          DESCRIPTION
3027              "An implementation is only required to support IPv4
3028               addresses."
3029
3030 OBJECT docsDevServerConfigTftpAddress
3031          SYNTAX  InetAddress (SIZE(4))
3032          DESCRIPTION
3033              "An implementation is only required to support IPv4
3034               addresses."
3035
3036 OBJECT docsDevEvReporting
3037          MIN-ACCESS read-only
3038          DESCRIPTION
3039              "It is compliant to implement this object as read-only.
3040               Devices need only support local(0)."
3041
3042 OBJECT docsDevEvSyslogAddressType
3043          SYNTAX InetAddressType { ipv4(1) }
3044          DESCRIPTION
3045              "An implementation is only required to support IPv4
3046               addresses."
3047
3048
3049
3050
3051 OBJECT docsDevEvSyslogAddress
3052          SYNTAX  InetAddress (SIZE(4))
3053          DESCRIPTION
3054              "An implementation is only required to support IPv4
3055               addresses."
3056
3057 OBJECT docsDevSwServerTransportProtocol
3058          SYNTAX INTEGER { tftp(1) }
3059          DESCRIPTION
3060              "An implementation is only required to support TFTP
3061               software image downloads."
3062
3063          ::= { docsDevCompliancesV2 1 }
3064
3065 docsDevCmtsCompliance MODULE-COMPLIANCE
3066          STATUS  current
3067          DESCRIPTION
3068              "The compliance statement for DOCSIS Cable Modem
3069               Termination Systems.
3070
3071               This compliance statement applies to implementations
3072               of DOCSIS versions that are not IPv6 capable."
3073
3074 MODULE  -- docsDev
3075
3076 -- conditionally mandatory groups
3077
3078 GROUP docsDevBaseGroup
3079         DESCRIPTION
3080             "Optional in Cable Modem Termination Systems."
3081
3082 GROUP docsDevBaseIgmpGroup
3083         DESCRIPTION
3084             "Optional in Cable Modem Termination Systems."
3085
3086 GROUP docsDevBaseMaxCpeGroup
3087         DESCRIPTION
3088             "This group MUST NOT be implemented in Cable Modem
3089              Termination Systems."
3090
3091 GROUP docsDevSoftwareGroupV2
3092         DESCRIPTION
3093             "Optional in Cable Modem Termination Systems."
3094
3095 GROUP docsDevServerGroupV2
3096         DESCRIPTION
3097             "This group MUST NOT be implemented in Cable Modem
3098              Termination Systems."
3099
3100
3101
3102 GROUP docsDevEventGroupV2
3103         DESCRIPTION
3104             "Optional in Cable Modem Termination Systems."
3105
3106 GROUP docsDevFilterLLCGroup
3107         DESCRIPTION
3108             "This group MUST NOT be implemented in Cable Modem
3109              Termination Systems.  See the Subscriber Management
3110              MIB for similar CMTS capability."
3111
3112 GROUP docsDevInetCpeGroup
3113         DESCRIPTION
3114             "This group MUST NOT be implemented in Cable Modem
3115              Termination Systems.  See the Subscriber Management
3116              MIB for similar CMTS capability."
3117
3118 OBJECT docsDevDateTime
3119          MIN-ACCESS read-only
3120          DESCRIPTION
3121              "It is compliant to implement this object as read-only."
3122
3123 OBJECT docsDevSTPControl
3124          SYNTAX INTEGER { noStFilterBpdu(2) }
3125          MIN-ACCESS read-only
3126          DESCRIPTION
3127              "It is compliant to implement this object as read-only.
3128               Devices need only support noStFilterBpdu(2)."
3129
3130 OBJECT docsDevIgmpModeControl
3131          SYNTAX INTEGER { passive(1) }
3132          MIN-ACCESS read-only
3133          DESCRIPTION
3134              "It is compliant to implement this object as read-only.
3135               Devices need only support passive(1)."
3136
3137 OBJECT docsDevSwServerAddressType
3138          SYNTAX InetAddressType { ipv4(1) }
3139          DESCRIPTION
3140              "An implementation is only required to support IPv4
3141               addresses."
3142
3143 OBJECT docsDevSwServerAddress
3144          SYNTAX  InetAddress (SIZE(4))
3145          DESCRIPTION
3146              "An implementation is only required to support IPv4
3147               addresses."
3148
3149 OBJECT docsDevEvReporting
3150
3151
3152
3153          MIN-ACCESS read-only
3154          DESCRIPTION
3155              "It is compliant to implement this object as read-only.
3156               Devices need only support local(0)."
3157
3158 OBJECT docsDevEvSyslogAddressType
3159          SYNTAX InetAddressType { ipv4(1) }
3160          DESCRIPTION
3161              "An implementation is only required to support IPv4
3162               addresses."
3163
3164 OBJECT docsDevEvSyslogAddress
3165          SYNTAX  InetAddress (SIZE(4))
3166          DESCRIPTION
3167              "An implementation is only required to support IPv4
3168               addresses."
3169
3170 OBJECT docsDevSwServerTransportProtocol
3171          SYNTAX INTEGER { tftp(1) }
3172          DESCRIPTION
3173              "An implementation is only required to support TFTP
3174               software image downloads."
3175
3176          ::= { docsDevCompliancesV2 2 }
3177
3178 docsDevBaseIgmpGroup OBJECT-GROUP
3179         OBJECTS {
3180              docsDevIgmpModeControl
3181         }
3182         STATUS      current
3183         DESCRIPTION
3184             "An object providing cable device IGMP status and
3185              control."
3186         ::= { docsDevGroupsV2 1 }
3187
3188 docsDevBaseMaxCpeGroup OBJECT-GROUP
3189         OBJECTS {
3190              docsDevMaxCpe
3191         }
3192         STATUS      current
3193         DESCRIPTION
3194             "An object providing management of the maximum number of
3195              CPEs permitted access through a cable modem."
3196         ::= { docsDevGroupsV2 2 }
3197
3198 docsDevNmAccessExtGroup OBJECT-GROUP
3199         OBJECTS {
3200              docsDevNmAccessTrapVersion
3201
3202
3203
3204         }
3205         STATUS      deprecated
3206         DESCRIPTION
3207             "An object, in addition to the objects in
3208              docsDevNmAccessGroup, for controlling access to
3209              SNMP objects on cable devices.
3210
3211              This group is included in this MIB due to existing
3212              implementations of docsDevNmAccessTrapVersion in
3213              DOCSIS cable modems.
3214
3215              This group has been deprecated because the object has
3216              been deprecated in favor of SNMPv3 and Coexistence
3217              MIBs."
3218         ::= { docsDevGroupsV2 3 }
3219
3220 docsDevSoftwareGroupV2 OBJECT-GROUP
3221         OBJECTS {
3222             docsDevSwFilename,
3223             docsDevSwAdminStatus,
3224             docsDevSwOperStatus,
3225             docsDevSwCurrentVers,
3226             docsDevSwServerAddressType,
3227             docsDevSwServerAddress,
3228             docsDevSwServerTransportProtocol
3229         }
3230         STATUS      current
3231         DESCRIPTION
3232             "A collection of objects for controlling software
3233              downloads.  This group replaces docsDevSoftwareGroup."
3234         ::= { docsDevGroupsV2 4 }
3235
3236 docsDevServerGroupV2 OBJECT-GROUP
3237         OBJECTS {
3238             docsDevServerBootState,
3239             docsDevServerDhcpAddressType,
3240             docsDevServerDhcpAddress,
3241             docsDevServerTimeAddressType,
3242             docsDevServerTimeAddress,
3243             docsDevServerConfigTftpAddressType,
3244             docsDevServerConfigTftpAddress,
3245             docsDevServerConfigFile
3246         }
3247         STATUS      current
3248         DESCRIPTION
3249             "A collection of objects providing status about server
3250              provisioning.  This group replaces docsDevServerGroup."
3251         ::= { docsDevGroupsV2 5 }
3252
3253
3254
3255 docsDevEventGroupV2 OBJECT-GROUP
3256         OBJECTS {
3257             docsDevEvControl,
3258             docsDevEvThrottleAdminStatus,
3259             docsDevEvThrottleThreshold,
3260             docsDevEvThrottleInterval,
3261             docsDevEvReporting,
3262             docsDevEvFirstTime,
3263             docsDevEvLastTime,
3264             docsDevEvCounts,
3265             docsDevEvLevel,
3266             docsDevEvId,
3267             docsDevEvText,
3268             docsDevEvSyslogAddressType,
3269             docsDevEvSyslogAddress,
3270             docsDevEvThrottleThresholdExceeded
3271         }
3272         STATUS      current
3273         DESCRIPTION
3274             "A collection of objects used to control and monitor
3275              events.  This group replaces docsDevEventGroup.
3276              The event reporting mechanism, and more specifically
3277              docsDevEvReporting, can be used to take advantage of
3278              the event reporting features of RFC3413 and RFC3014."
3279         ::= { docsDevGroupsV2 6 }
3280
3281 docsDevFilterLLCGroup OBJECT-GROUP
3282         OBJECTS {
3283             docsDevFilterLLCUnmatchedAction,
3284             docsDevFilterLLCStatus,
3285             docsDevFilterLLCIfIndex,
3286             docsDevFilterLLCProtocolType,
3287             docsDevFilterLLCProtocol,
3288             docsDevFilterLLCMatches
3289         }
3290         STATUS      current
3291         DESCRIPTION
3292             "A collection of objects to specify link layer filters."
3293         ::= { docsDevGroupsV2 7 }
3294
3295 docsDevInetCpeGroup OBJECT-GROUP
3296         OBJECTS {
3297            docsDevCpeEnroll,
3298            docsDevCpeIpMax,
3299            docsDevCpeInetSource,
3300            docsDevCpeInetRowStatus
3301         }
3302         STATUS     current
3303
3304
3305
3306         DESCRIPTION
3307             "A collection of objects used to control the number
3308              and specific values of Internet (e.g., IPv4 and IPv6)
3309              addresses allowed for associated Customer Premises
3310              Equipment (CPE)."
3311         ::= { docsDevGroupsV2 8 }
3312
3313 END