idnits 2.17.1 draft-glenn-mo-aggr-mib-08.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 14. -- Found old boilerplate from RFC 3978, Section 5.5 on line 1355. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1366. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1373. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1379. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 36 longer pages, the longest (page 2) being 60 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == The document seems to use 'NOT RECOMMENDED' as an RFC 2119 keyword, but does not include the phrase in its RFC 2119 key words list. -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (December 24, 2005) is 6691 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'MOI' is mentioned on line 190, but not defined ** Downref: Normative reference to an Informational RFC: RFC 1951 Summary: 4 errors (**), 0 flaws (~~), 5 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Glenn Mansfield Keeni 3 INTERNET-DRAFT Cyber Solutions Inc. 4 Expires: June 24, 2006 December 24, 2005 6 The Managed Object Aggregation MIB 7 9 Status of this Memo 11 By submitting this Internet-Draft, each author represents that any 12 applicable patent or other IPR claims of which he or she is aware 13 have been or will be disclosed, and any of which he or she becomes 14 aware will be disclosed, in accordance with Section 6 of BCP 79. 16 Internet-Drafts are working documents of the Internet Engineering 17 Task Force (IETF), its areas, and its working groups. Note that 18 other groups may also distribute working documents as Internet- 19 Drafts. 21 Internet-Drafts are draft documents valid for a maximum of six months 22 and may be updated, replaced, or obsoleted by other documents at any 23 time. It is inappropriate to use Internet-Drafts as reference 24 material or to cite them other than as "work in progress." 26 The list of current Internet-Drafts can be accessed at 27 http://www.ietf.org/ietf/1id-abstracts.txt. 29 The list of Internet-Draft Shadow Directories can be accessed at 30 http://www.ietf.org/shadow.html. 32 Comments are solicited and should be addressed to the author. 34 This Internet-Draft will expire on June 24, 2006. 36 Copyright Notice 38 Copyright (C) The Internet Society (2005). 40 Abstract 42 This memo defines a portion of the Management Information Base (MIB), 43 the Aggregation MIB modules, for use with network management 44 protocols in the Internet community. In particular, the Aggregation 45 MIB modules will be used to configure a network management agent to 46 aggregate the values of a (user) specified set of Managed Object 47 instances and to service queries related to the aggregated Managed 48 Object instances. 50 Table of Contents 52 1. The Internet-Standard Management Framework .................... 3 53 2. Background .................................................... 3 54 3. MO Aggregation: The Concept ................................... 4 55 4. The Requirements for Managed Object Aggregation ............... 7 56 5. MIB Design .................................................... 8 57 6. The Aggregation MIB modules ................................... 9 58 7. Security Considerations .......................................30 59 8. IANA Considerations ...........................................32 60 9. References ....................................................32 61 10. Acknowledgments ...............................................33 62 11. Authors' Addresses ............................................33 63 12. Full Copyright Statement ......................................34 65 1. The Internet-Standard Management Framework 67 For a detailed overview of the documents that describe the current 68 Internet-Standard Management Framework, please refer to section 7 of 69 RFC 3410 [RFC3410]. 71 Managed objects are accessed via a virtual information store, termed 72 the Management Information Base or MIB. MIB objects are generally 73 accessed through the Simple Network Management Protocol (SNMP). 75 Objects in the MIB are defined using the mechanisms defined in the 76 Structure of Management Information (SMI). This memo specifies a MIB 77 module that is compliant to the SMIv2, which is described in STD 58, 78 RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 79 [RFC2580]. 81 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 82 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 83 document are to be interpreted as described in BCP 14, RFC 2119 84 [RFC2119]. 86 2. Background 88 For the purpose of management it is necessary to access Managed 89 Objects (MOs). The SNMP framework provides a mechanism for naming and 90 describing managed objects. These objects are accessed via a virtual 91 information store termed a Management Information Base (MIB). MIBs 92 have been defined by equipment, protocol and application developers 93 to provide management access to the managed entities. We will call 94 the MOs defined in these MIBs - simple MOs (SMO). Management 95 applications will access one or more instances of these SMOs, one or 96 more times, to monitor the target entity. 98 There is a cost associated with accessing MOs. The cost is the 99 network bandwidth and the packet header processing overhead at the 100 command generator (manager) and the command responder (agent). This 101 cost constrains the number of MO instances that can be polled and the 102 interval at which polling can be carried out. 104 The overhead reduction can be carried out by reducing the number of 105 query-response packets. This will reduce the packet processing 106 overhead and to some extent the bandwidth. 108 The payload in a typical SNMP "get" packet and the corresponding 109 response are as shown in Fig. 1. In this example polling is carried 110 out for 'n' Managed Object instances OID1, OID2, .., OIDn. It is 111 obvious that a substantial amount of the payload in an SNMP packet 112 consists of the OIDs. 114 3. MO Aggregation: The Concept 116 In this draft, a mechanism of MO aggregation for payload compression 117 is defined. The idea is simple: we introduce the concept of an 118 Aggregate MO (AgMO). An AgMO is just another MO as far as the SNMP 119 protocol is concerned. No new protocol operations will be required to 120 handle these MOs. As in the case of any other MO, it requires 121 additional instrumentation at the command responder (agent) and at 122 the (command generator) manager. In this mechanism the user defines 123 an Aggregate MO (AgMO) corresponding to one or more (predefined) MO 124 instances. Semantically, the value of an AgMO instance will be 125 equivalent to the concatenation of the values of the corresponding MO 126 instances. The order of the concatenation will be determined by the 127 order in which the MO instances are specified in the AgMO definition. 128 With the definitions done, the user can, as and when the necessity 129 arises, do an SNMP 'get' on instances of the AgMO to fetch the value 130 of the constituent MO instances. There is substantial savings on 131 bandwidth as only one instance object identifier is carried in the 132 request and the response. In the normal case, instance object 133 identifiers for each of the constituent MO instances would be carried 134 in the requests and the responses. This is the basic concept of 135 Aggregate Managed Objects. For every AgMO an ErrorStatus Managed 136 Object is defined. This MO indicates errors, if any, that has been 137 encountered while fetching the values of the constituent MO 138 instances. The error indication comprises of the index of the MO 139 instance and the corresponding error. If there are no errors the 140 ErrorStatus Managed Object instance will have a null value. This is 141 the basic concept of Aggregate Managed Objects. 143 The concepts are explained in Fig. 2. An aggregate managed object 144 AgMOx has been defined for MO instances MOI1, ... MOIn. The value of 145 an instance of AgMOx will be a concatenation of the values of MOI1, 146 ... MOIn, in that order. 148 Polling for MO Instances [MOI1, MOI2, ... MOIn] : 150 +--------+------+-------+... -+------+------+ 151 Query: |Get req | MOI1 | NULL | | MOIn | NULL | 152 +--------+------+-------+... -+------+------+ 154 +--------+------+-------+... -+------+------+ 155 Response: |Get resp| MOI1 | Val1 | | MOIn | Valn | 156 +--------+------+-------+... -+------+------+ 158 Fig. 1 Polling for MO instances 160 Polling for an instance (AgMOIx) of an aggregate MO 161 (AgMOx): 162 AgMOx = aggr{AgMOI1, AgMOI2, ......AgMOIn} 164 +--------+--------+-------+ 165 Query: |Get req | AgMOIx | NULL | 166 +--------+--------+-------+ 168 +--------+--------+------------------------+ 169 Response: |Get resp| AgMOIx | Val1,Val2,...,Valn | 170 +--------+--------+------------------------+ 172 Fig. 2 MO aggregation 174 As a further refinement of the AgMO, we introduce the Time-based 175 Aggregated Managed Object (TAgMO). The TAgMO is an MO that 176 represents the values of a (user) specified MO instance sampled at 177 (user) specified intervals for a (user) specified number of times. 178 In this case the user defines a TAgMO by specifying the MO instance 179 that needs to be sampled, the sampling interval and the desired 180 number of samples that will be included in one TAgMO. The value of a 181 TAgMO instance will include the timestamp (sysUpTime) at which the 182 first sample was taken. The start time is not specified when the 183 TAgMO is defined. Implementations may choose to align the start time 184 with the appropriate time boundaries (e.g. seconds, minutes, hours 185 etc.) With the definitions done the user can do an SNMP "get" on an 186 instance of the TAgMO to fetch the values of the constituent MO 187 instance sampled at the specified intervals. This is the concept of 188 time-based aggregation. 190 Polling for 'n' samples of an MO Instance [MOI] at an interval 'i' : 192 Query Time Response 193 ===== ==== ======== 194 +--------+-----+-----------+ 195 |Get req | MOI | NULL | t 196 +--------+-----+-----------+ : +--------+-----+--------------+ 197 : |Get resp| MOI | Val(t) | 198 : +--------+-----+--------------+ 199 +--------+-----+-----------+ t+i 200 |Get req | MOI | NULL | : 201 +--------+-----+-----------+ : +--------+-----+--------------+ 202 : |Get resp| MOI | Val(t+i) | 203 X +--------+-----+--------------+ 204 X 205 : 206 +--------+-----+-----------+ t+(n-1)i 207 |Get req | MOI | NULL | : 208 +--------+-----+-----------+ : +--------+-----+--------------+ 209 : |Get resp| MOI | Val(t+(n-1)i)| 210 +--------+-----+--------------+ 212 Fig. 3 Periodic polling for samples of an MO instance 214 Polling for an instance (TAgMOIx) of a time-based aggregate MO 215 (TAgMOx): 216 TAgMOx = aggr{'n' polled samples of an instance (MOI) of MO 217 at intervals = 'i' microseconds} 219 +--------+---------+-------+ 220 Query: |Get req | TAgMOIx | NULL | 221 +--------+---------+-------+ 223 +--------+---------+--------------------------------------+ 224 Response: |Get resp| TAgMOIx | t,Val(t),Val(t+i),.,Val(t + (n-1)*i) | 225 +--------+---------+--------------------------------------+ 227 Fig. 4 Time-based aggregation 228 The TAgMO instance is a "bucket" of data representing the value of 229 the corresponding MO instance sampled at 'i' microsecond intervals, 230 'n' times i.e. over a 'n' X 'i' microsecond window. The TAgMO 231 instance value gets updated at 'n' X 'i' microsecond intervals. 233 4. The Requirements for Managed Object Aggregation 235 The general requirements of managed object aggregation are as 236 follows: 238 o It should lead to lesser number of packets 239 o It should lead to lesser bandwidth consumption 240 o It should not lead to loss of information 242 In the case of time-based aggregation there will be a delay involved 243 in getting the actual data. The minimum delay in this case will be 244 the duration of the aggregation. 246 The manager application is expected to configure AgMOs (Aggregate 247 MOs) and TAgMOs (Time based Aggregate MOs) with care so that the 248 response size is not too large. In case the resultant response size 249 is larger than the maximum acceptable message size of the originator 250 or larger than the local maximum message size then the error-status 251 field will be set to "tooBig". 253 It must be noted that an aggregate MO can be defined only when all 254 the constituent MO instances of interest are known. This scheme 255 cannot be employed if a manager/application does not know the 256 specific MO instances (of interest) that are serviced by the 257 management target. In such cases, the application may "discover" the 258 MO instances of interest by some means e.g. by "walking" through the 259 MIB tree on the agent. Based on the results of the "walk", the 260 application can define an appropriate aggregate MO that will serve 261 the purpose. Considering the cost involved in this exercise, this 262 method is recommended only if the aggregate MO will be used 263 repeatedly, so that the benefits of aggregation outweigh the costs of 264 configuration. 266 5. MIB Design. 268 The basic principle has been to keep the MIB as simple as possible 269 and at the same time to make it flexible enough so that a large 270 number of users and applications can use the MIB to configure 271 aggregate MOs conveniently. 273 Two separate MIB modules have been defined. The AggrMIB supports the 274 aggregation of independent MO instances while TAggrMIB suports the 275 aggregation of several samples of the same MO instance. Both the MIB 276 modules use the textual conventions defined in RMON-MIB[RFC2819] and 277 SNMP-FRAMEWORK-MIB[RFC3411]. 279 The AggrMIB comprises of three tables described below. 280 - The aggrCtlTable controls the aggregation process. Each row in 281 this table defines the attributes of aggregate object defined in 282 the aggrMOTable. 284 - The aggrMOTable defines the primary MO-based aggregation 285 i.e. the MOs that will be aggregated. 287 - The aggrDataTable contains the details of the aggregated object. 289 The TAggrMIB comprises of two tables described below. 290 - The tAggrCtlTable controls the aggregation process. Each row in 291 this table defines the attributes of the aggregate object defined 292 in the aggrMOTable. 294 - The tAggrDataTable contains the details of the aggregated object. 296 6. The Aggregation MIB modules. 298 AGGREGATE-MIB DEFINITIONS ::= BEGIN 299 IMPORTS 300 MODULE-IDENTITY, experimental, Unsigned32, 301 OBJECT-TYPE, Opaque 302 FROM SNMPv2-SMI 303 OwnerString 304 FROM RMON-MIB 305 RowStatus, StorageType, TEXTUAL-CONVENTION 306 FROM SNMPv2-TC 307 MODULE-COMPLIANCE, OBJECT-GROUP 308 FROM SNMPv2-CONF 309 SnmpAdminString 310 FROM SNMP-FRAMEWORK-MIB; 312 aggrMIB MODULE-IDENTITY 313 LAST-UPDATED "200512250000Z" -- 25th December, 2005 314 ORGANIZATION "Cyber Solutions Inc. NetMan Working Group" 315 CONTACT-INFO 316 " Glenn Mansfield Keeni 317 Postal: Cyber Solutions Inc. 318 6-6-3, Minami Yoshinari 319 Aoba-ku, Sendai, Japan 989-3204. 320 Tel: +81-22-303-4012 321 Fax: +81-22-303-4015 322 E-mail: glenn@cysols.com 324 Support Group E-mail: mibsupport@cysols.com" 326 DESCRIPTION 327 " The MIB for servicing aggregate objects. 329 Copyright (C) The Internet Society (2005). This 330 version of this MIB module is part of RFC XXXX; 331 see the RFC itself for full legal notices. 332 " 333 -- RFC Ed.: replace XXXX with the actual RFC number & remove this 334 -- note 336 REVISION "200512250000Z" -- 25th December, 2005 337 DESCRIPTION "Initial version, published as RFC XXXX." 339 -- RFC Ed.: replace XXXX with the actual RFC number & remove this 340 -- note 342 ::= { experimental xxx } -- will be assigned by IANA 344 -- IANA Reg.: Please assign a value for "xxx" under the 345 -- 'experimental' subtree and record the assignment in the SMI 346 -- Numbers registry. 348 -- RFC Ed.: When the above assignment has been made, please 349 -- remove the above note 350 -- replace "xxx" here with the assigned value and 351 -- remove this note. 353 AggrMOErrorStatus ::= TEXTUAL-CONVENTION 354 STATUS current 355 DESCRIPTION 356 "This data type is used to model the error status of the 357 constituent MO instances. The error status for a 358 constituent MO instance is given in terms of two elements - 359 o the moIndex which indicates the position of the MO 360 instance (starting at 1) in the value of the aggregated 361 MO instance. 362 o the moError which indicates the error that was 363 encountered in fetching that MO instance. 364 The syntax in ASN.1 Notation will be 365 ErrorStatus :: = SEQUENCE { 366 moIndex Integer32, 367 moError SnmpPduErrorStatus 368 } 369 AggrMOErrorStatus ::= SEQUENCE OF { 370 ErrorStatus 371 } 372 Note1: the command responder will supply values for all 373 constituent MO instances and in the same order in 374 which the MO instances are specified for the AgMO. 375 If an error is encountered for an MO instance then 376 the corresponding value will have an ASN.1 value NULL 377 and, an error flagged in the corresponding 378 AggrMOErrorStatus object. 379 Only MOs for which errors have been encountered will 380 have the corresponding moIndex and moError values set. 381 Note2: the error code for the component MO instances will be 382 in accordance with the SnmpPduErrorStatus TC defined 383 in the DISMAN-SCHEDULE-MIB[RFC3231]. 384 Note3: the command generator will need to know 385 constituent MO instances and their order to correctly 386 interpret AggrMOErrorStatus. 387 " 388 SYNTAX Opaque (SIZE (0..1024)) 390 AggrMOValue ::= TEXTUAL-CONVENTION 391 STATUS current 392 DESCRIPTION 393 "This data type is used to model the aggregate 394 MOs. It will have a format dependent on the constituent 395 MOs, a sequence of values. The syntax in ASN.1 Notation will 396 be 397 MOValue :: = SEQUENCE { 398 value ObjectSyntax 399 } 400 Where, 'value' is the value of a constituent MO instance. 401 AggrMOValue :: = SEQUENCE OF { 402 MOValue 403 } 405 Note: the command generator will need to know the 406 the constituent MO instances and their order to 407 correctly interpret AggrMOValue." 408 SYNTAX Opaque (SIZE (0..1024)) 410 AggrMOCompressedValue ::= TEXTUAL-CONVENTION 411 STATUS current 412 DESCRIPTION 413 "This data type is used to model the compressed 414 aggregate MOs. " 415 SYNTAX OCTET STRING (SIZE (0..1024)) 417 -- 418 -- The aggregation control table 419 -- There will be a row for each aggregate MO 420 -- 421 aggrCtlTable OBJECT-TYPE 422 SYNTAX SEQUENCE OF AggrCtlEntry 423 MAX-ACCESS not-accessible 424 STATUS current 425 DESCRIPTION 426 " A table that controls the aggregation of the MOs." 427 ::= {aggrMIB 1} 429 aggrCtlEntry OBJECT-TYPE 430 SYNTAX AggrCtlEntry 431 MAX-ACCESS not-accessible 432 STATUS current 433 DESCRIPTION 434 "A row of the control table that defines one aggregated 435 MO. 436 Entries in this table are required to survive a reboot 437 of the managed entity depending on the value of the 438 corresponding aggrCtlEntryStorageType instance. 439 " 440 INDEX {aggrCtlEntryID } 441 ::= {aggrCtlTable 1 } 443 AggrCtlEntry ::= SEQUENCE { 444 aggrCtlEntryID 445 SnmpAdminString, 446 aggrCtlMOIndex 447 Unsigned32, 448 aggrCtlMODescr 449 SnmpAdminString, 450 aggrCtlCompressionAlgorithm 451 INTEGER, 452 aggrCtlEntryOwner 453 OwnerString, 454 aggrCtlEntryStorageType 455 StorageType, 456 aggrCtlEntryStatus 457 RowStatus 458 } 460 aggrCtlEntryID OBJECT-TYPE 461 SYNTAX SnmpAdminString (SIZE(1..32)) 462 MAX-ACCESS not-accessible 463 STATUS current 464 DESCRIPTION 465 " A locally-unique administratively assigned name 466 for this aggregated MO. It is used as an index to 467 uniquely identify this row in the table." 468 ::= { aggrCtlEntry 1 } 470 aggrCtlMOIndex OBJECT-TYPE 471 SYNTAX Unsigned32 (1..2147483647) 472 MAX-ACCESS read-create 473 STATUS current 474 DESCRIPTION 475 " A pointer to a group of MOs identified by aggrMOEntryID 476 in the aggrMOTable. This is the group of MOs that will 477 be aggregated." 478 ::= { aggrCtlEntry 2 } 480 aggrCtlMODescr OBJECT-TYPE 481 SYNTAX SnmpAdminString (SIZE(0..64)) 482 MAX-ACCESS read-create 483 STATUS current 484 DESCRIPTION 485 " A textual description of the object that is 486 being aggregated." 487 ::= {aggrCtlEntry 3} 489 -- only one compression algorithm is defined as of now. 490 aggrCtlCompressionAlgorithm OBJECT-TYPE 491 SYNTAX INTEGER { 492 none (1), 493 deflate (2) 494 } 495 MAX-ACCESS read-create 496 STATUS current 497 DESCRIPTION 498 " The compression algorithm that will be used by 499 the agent to compress the value of the aggregated 500 object. 501 The deflate algorithm and corresponding data format 502 specification is described in RFC1951. It is 503 compatible with the widely used gzip utility. 504 " 505 REFERENCE 506 "RFC1951 : DEFLATE Compressed Data Format Specification 507 version 1.3 508 " 509 DEFVAL { none } 510 ::= {aggrCtlEntry 4} 512 aggrCtlEntryOwner OBJECT-TYPE 513 SYNTAX OwnerString 514 MAX-ACCESS read-create 515 STATUS current 516 DESCRIPTION 517 " The entity that created this entry." 518 ::= {aggrCtlEntry 5} 520 aggrCtlEntryStorageType OBJECT-TYPE 521 SYNTAX StorageType 522 MAX-ACCESS read-create 523 STATUS current 524 DESCRIPTION 525 "This object defines whether the parameters defined in 526 this row are kept in volatile storage and lost upon 527 reboot or are backed up by non-volatile (permanent) 528 storage. 530 Conceptual rows having the value ''permanent'' need not 531 allow write-access to any columnar objects in the row. 532 " 533 ::= {aggrCtlEntry 6} 535 aggrCtlEntryStatus OBJECT-TYPE 536 SYNTAX RowStatus 537 MAX-ACCESS read-create 538 STATUS current 539 DESCRIPTION 540 "The row status variable, used according to row 541 installation and removal conventions. 542 Objects in a row can be modified only when the value of 543 this object in the corresponding conceptual row is not 544 ''active''. 545 Thus to modify one or more of the objects in this 546 conceptual row, 547 a. change the row status to ''notInService'', 548 b. change the values of the row 549 c. change the row status to ''active'' 550 The aggrCtlEntryStatus may be changed to ''active'' iff 551 all the MOs in the conceptual row have been assigned 552 valid values. 553 " 554 ::= {aggrCtlEntry 7} 556 -- 557 -- The Table of primary(simple) MOs 558 -- 559 aggrMOTable OBJECT-TYPE 560 SYNTAX SEQUENCE OF AggrMOEntry 561 MAX-ACCESS not-accessible 562 STATUS current 563 DESCRIPTION 564 "The table of primary(simple) MOs that will be aggregated. 565 Each row in this table represents a MO which will be 566 aggregated. The aggrMOEntryID index is used to identify 567 the group of MOs that will be aggregated. The aggrMOIndex 568 instance in the corresponding row of the aggrCtlTable 569 will have value equal to the value of aggrMOEntryID. 570 The aggrMOEntryMOID index is used to identify an MO in 571 the group. 572 " 573 ::= {aggrMIB 2} 575 aggrMOEntry OBJECT-TYPE 576 SYNTAX AggrMOEntry 577 MAX-ACCESS not-accessible 578 STATUS current 579 DESCRIPTION 580 "A row of the table that specifies one MO. 581 Entries in this table are required to survive a reboot 582 of the managed entity depending on the value of the 583 corresponding aggrMOEntryStorageType instance. 584 " 585 INDEX { aggrMOEntryID, aggrMOEntryMOID } 586 ::= {aggrMOTable 1 } 588 AggrMOEntry ::= SEQUENCE { 589 aggrMOEntryID 590 Unsigned32, 591 aggrMOEntryMOID 592 Unsigned32, 593 aggrMOInstance 594 OBJECT IDENTIFIER, 595 aggrMODescr 596 SnmpAdminString, 597 aggrMOEntryStorageType 598 StorageType, 599 aggrMOEntryStatus 600 RowStatus 601 } 603 aggrMOEntryID OBJECT-TYPE 604 SYNTAX Unsigned32 (1..2147483647) 605 MAX-ACCESS not-accessible 606 STATUS current 607 DESCRIPTION 608 " An index uniquely identifying a group of MOs 609 that will be aggregated." 610 ::= { aggrMOEntry 1 } 612 aggrMOEntryMOID OBJECT-TYPE 613 SYNTAX Unsigned32 (1..65535) 614 MAX-ACCESS not-accessible 615 STATUS current 616 DESCRIPTION 617 " An index to uniquely identify an MO instance in the 618 group of MO instances that will be aggregated." 619 ::= { aggrMOEntry 2 } 621 aggrMOInstance OBJECT-TYPE 622 SYNTAX OBJECT IDENTIFIER 623 MAX-ACCESS read-create 624 STATUS current 625 DESCRIPTION 626 " The OID of the MO instance - the value of which will 627 be sampled by the agent." 628 ::= { aggrMOEntry 3 } 630 aggrMODescr OBJECT-TYPE 631 SYNTAX SnmpAdminString (SIZE(0..64)) 632 MAX-ACCESS read-create 633 STATUS current 634 DESCRIPTION 635 " A textual description of the object that will 636 be aggregated." 637 ::= {aggrMOEntry 4} 639 aggrMOEntryStorageType OBJECT-TYPE 640 SYNTAX StorageType 641 MAX-ACCESS read-create 642 STATUS current 643 DESCRIPTION 644 "This object defines whether the parameters defined in 645 this row are kept in volatile storage and lost upon 646 reboot or are backed up by non-volatile (permanent) 647 storage. 648 Conceptual rows having the value ''permanent'' need not 649 allow write-access to any columnar objects in the row. 650 " 651 ::= {aggrMOEntry 5} 653 aggrMOEntryStatus OBJECT-TYPE 654 SYNTAX RowStatus 655 MAX-ACCESS read-create 656 STATUS current 657 DESCRIPTION 658 "The row status variable, used according to row 659 installation and removal conventions. 660 Objects in a row can be modified only when the value of 661 this object in the corresponding conceptual row is not 662 ''active''. 663 Thus to modify one or more of the objects in this 664 conceptual row, 665 a. change the row status to ''notInService'', 666 b. change the values of the row 667 c. change the row status to ''active'' 668 The aggrMOEntryStatus may be changed to ''active'' iff 669 all the MOs in the conceptual row have been assigned 670 valid values. 671 " 672 ::= {aggrMOEntry 6} 674 -- 675 -- aggrDataTable: The Table of Data. Each row represents a Data 676 -- set. aggrCtlEntryID is the key to the table. It 677 -- is used to identify instances of the aggregated 678 -- MO that are present in the table. 679 -- 680 aggrDataTable OBJECT-TYPE 681 SYNTAX SEQUENCE OF AggrDataEntry 682 MAX-ACCESS not-accessible 683 STATUS current 684 DESCRIPTION 685 " Each row of this table contains information 686 about an aggregateMO indexed by aggrCtlEntryID." 687 ::= {aggrMIB 3} 689 aggrDataEntry OBJECT-TYPE 690 SYNTAX AggrDataEntry 691 MAX-ACCESS not-accessible 692 STATUS current 693 DESCRIPTION 694 " Entry containing information pertaining to 695 an aggregate MO." 696 INDEX {aggrCtlEntryID} 697 ::= {aggrDataTable 1 } 699 AggrDataEntry ::= SEQUENCE { 700 aggrDataRecord 701 AggrMOValue, 702 aggrDataRecordCompressed 703 AggrMOCompressedValue, 704 aggrDataErrorRecord 705 AggrMOErrorStatus 706 } 708 aggrDataRecord OBJECT-TYPE 709 SYNTAX AggrMOValue 710 MAX-ACCESS read-only 711 STATUS current 712 DESCRIPTION 713 "The snapshot value of the aggregated MO. 714 Note that the access privileges to this object will be 715 governed by the access privileges of the component 716 objects. Thus, an entity attempting to access an instance 717 of this MO MUST have access rights to all the component 718 instance objects and this MO instance. 719 " 720 ::= { aggrDataEntry 1} 722 aggrDataRecordCompressed OBJECT-TYPE 723 SYNTAX AggrMOCompressedValue 724 MAX-ACCESS read-only 725 STATUS current 726 DESCRIPTION 727 "The compressed value of the aggregated MO. 728 The compression algorithm will depend on the 729 aggrCtlCompressionAlgorithm given in the corresponding 730 aggrCtlEntry. In case the value of the corresponding 731 aggrCtlCompressionAlgorithm is (1) 'none' then the value 732 of all instances of this object will be a string of zero 733 length. 734 Note that the access privileges to this object will be 735 governed by the access privileges of the component 736 objects. Thus, an entity attempting to access an instance 737 of this MO MUST have access rights to all the component 738 instance objects and this MO instance. 739 " 740 ::= { aggrDataEntry 2} 742 aggrDataErrorRecord OBJECT-TYPE 743 SYNTAX AggrMOErrorStatus 744 MAX-ACCESS read-only 745 STATUS current 746 DESCRIPTION 747 " The error status corresponding to the MO instances 748 aggregated in aggrDataRecord (and 749 aggrDataRecordCompressed)." 750 ::= { aggrDataEntry 3} 752 -- Conformance information 753 aggrConformance OBJECT IDENTIFIER ::= { aggrMIB 4 } 754 aggrGroups OBJECT IDENTIFIER ::= { aggrConformance 1 } 755 aggrCompliances OBJECT IDENTIFIER ::= { aggrConformance 2 } 757 -- Compliance statements 758 aggrMibCompliance MODULE-COMPLIANCE 759 STATUS current 760 DESCRIPTION 761 "The compliance statement for SNMP entities 762 which implement the 763 AGGREGATE-MIB." 764 MODULE -- this module 765 MANDATORY-GROUPS { aggrMibBasicGroup } 766 ::= { aggrCompliances 1 } 768 -- Units of conformance 769 aggrMibBasicGroup OBJECT-GROUP 770 OBJECTS { 771 aggrCtlMOIndex, 772 aggrCtlMODescr, 773 aggrCtlCompressionAlgorithm, 774 aggrCtlEntryOwner, 775 aggrCtlEntryStorageType, 776 aggrCtlEntryStatus, 777 aggrMOInstance, 778 aggrMODescr, 779 aggrMOEntryStorageType, 780 aggrMOEntryStatus, 781 aggrDataRecord, 782 aggrDataRecordCompressed, 783 aggrDataErrorRecord 784 } 785 STATUS current 786 DESCRIPTION 787 " A collection of objects for aggregation of MOs." 788 ::= { aggrGroups 1 } 789 END 790 TIME-AGGREGATE-MIB DEFINITIONS ::= BEGIN 791 IMPORTS 792 MODULE-IDENTITY, experimental, 793 OBJECT-TYPE, Opaque, Integer32 794 FROM SNMPv2-SMI 795 OwnerString 796 FROM RMON-MIB 797 RowStatus, StorageType, TEXTUAL-CONVENTION 798 FROM SNMPv2-TC 799 MODULE-COMPLIANCE, OBJECT-GROUP 800 FROM SNMPv2-CONF 801 SnmpAdminString 802 FROM SNMP-FRAMEWORK-MIB; 804 tAggrMIB MODULE-IDENTITY 805 LAST-UPDATED "200509160000Z" -- 16th September 2005 806 ORGANIZATION "Cyber Solutions Inc. NetMan Working Group" 807 CONTACT-INFO 808 " Glenn Mansfield Keeni 809 Postal: Cyber Solutions Inc. 810 6-6-3, Minami Yoshinari 811 Aoba-ku, Sendai, Japan 989-3204. 812 Tel: +81-22-303-4012 813 Fax: +81-22-303-4015 814 E-mail: glenn@cysols.com 816 Support Group E-mail: mibsupport@cysols.com" 818 DESCRIPTION 819 " The MIB for servicing time-based Aggregate 820 objects. 822 Copyright (C) The Internet Society (2005). This 823 version of this MIB module is part of RFC NNNN; 824 see the RFC itself for full legal notices. 825 " 826 -- RFC Ed.: Please replace NNNN with actual RFC number & remove 827 -- this note 829 REVISION "200509160000Z" -- 16th September, 2005 830 DESCRIPTION "Initial version, published as RFC NNNN." 832 -- RFC Ed.: Please replace NNNN with actual RFC number & remove 833 -- this note 835 ::= { experimental nnn } -- will be assigned by IANA 837 -- IANA Reg.: Please assign a value for "nnn" under the 838 -- 'experimental' subtree and record the assignment in 839 -- the SMI Numbers registry. 841 -- RFC Ed.: When the above assignment has been made, please 842 -- remove the above note 843 -- replace "nnn" here with the assigned value and 844 -- remove this note. 846 TAggrMOErrorStatus ::= TEXTUAL-CONVENTION 847 STATUS current 848 DESCRIPTION 849 "This data type is used to model the error status of the 850 sampled MO instance. The error status for a sampled MO 851 instance is given in terms of two elements - 852 o the moIndex which indicates the sample number of the MO 853 instance (starting at 1) in the value of the time 854 aggregated MO instance. 855 o the moError which indicates the error that was 856 encountered in sampling that MO instance. 857 The syntax in ASN.1 Notation will be 858 ErrorStatus :: = SEQUENCE { 859 moIndex Integer32, 860 moError SnmpPduErrorStatus 861 } 862 TAggrMOErrorStatus ::= SEQUENCE OF { 863 ErrorStatus 864 } 865 Note1: the command responder will supply values for all 866 the samples of the MO instance. If an error is 867 encountered for a sample then the corresponding 868 value will have an ASN.1 value NULL and, an error 869 will be flagged in the corresponding 870 TAggrMOErrorStatus object. 871 Only MOs for which errors have been encountered will 872 have the corresponding moIndex and moError values set. 873 Note2: the error code for the component MO instances will be 874 in accordance with the SnmpPduErrorStatus TC defined 875 in the DISMAN-SCHEDULE-MIB[RFC3231]. 876 " 877 SYNTAX Opaque (SIZE (0..1024)) 879 TimeAggrMOValue ::= TEXTUAL-CONVENTION 880 STATUS current 881 DESCRIPTION 882 "This data type is used to model the time aggregated MOs. It 883 will be a sequence of values. The syntax in ASN.1 Notation 884 will be 885 MOSampleValue :: = SEQUENCE { 886 value ObjectSyntax 887 } 888 TimeAggrMOValue ::= SEQUENCE OF { 889 MOSampleValue 890 } 891 Where, the first MOSampleValue, if any, will always be the 892 timestamp of the first sample in the aggregated object. The 893 subsequent values are the values of the MO instance sampled 894 at the specified intervals for the specified number of times. 895 Note: the command generator will need to know the 896 constituent MO instance and the sampling interval to 897 correctly interpret TimeAggrMOValue. 898 " 899 SYNTAX Opaque (SIZE (0..1024)) 901 CompressedTimeAggrMOValue ::= TEXTUAL-CONVENTION 902 STATUS current 903 DESCRIPTION 904 "This data type is used to model the compressed 905 TAgMOs. " 906 SYNTAX Opaque (SIZE (0..1024)) 908 -- 909 -- The time-based aggregation control table 910 -- 911 tAggrCtlTable OBJECT-TYPE 912 SYNTAX SEQUENCE OF TAggrCtlEntry 913 MAX-ACCESS not-accessible 914 STATUS current 915 DESCRIPTION 916 "The time-based aggregation control table. It controls 917 the aggregation of the samples of MO instances. There 918 will be a row for each TAgMO. 919 " 920 ::= {tAggrMIB 1} 922 tAggrCtlEntry OBJECT-TYPE 923 SYNTAX TAggrCtlEntry 924 MAX-ACCESS not-accessible 925 STATUS current 926 DESCRIPTION 927 "A row of the control table that defines one time-based 928 aggregate MO (TAgMO)." 929 INDEX {tAggrCtlEntryID } 930 ::= {tAggrCtlTable 1 } 932 TAggrCtlEntry ::= SEQUENCE { 933 tAggrCtlEntryID 934 SnmpAdminString, 935 tAggrCtlMOInstance 936 OBJECT IDENTIFIER, 937 tAggrCtlAgMODescr 938 SnmpAdminString, 939 tAggrCtlInterval 940 Integer32, 941 tAggrCtlSamples 942 Integer32, 943 tAggrCtlCompressionAlgorithm 944 INTEGER, 945 tAggrCtlEntryOwner 946 OwnerString, 947 tAggrCtlEntryStorageType 948 StorageType, 949 tAggrCtlEntryStatus 950 RowStatus 951 } 953 tAggrCtlEntryID OBJECT-TYPE 954 SYNTAX SnmpAdminString (SIZE(1..32)) 955 MAX-ACCESS not-accessible 956 STATUS current 957 DESCRIPTION 958 " A locally-unique administratively assigned name 959 for this aggregated MO. It is used as an index to 960 uniquely identify this row in the table." 961 ::= { tAggrCtlEntry 1 } 963 tAggrCtlMOInstance OBJECT-TYPE 964 SYNTAX OBJECT IDENTIFIER 965 MAX-ACCESS read-create 966 STATUS current 967 DESCRIPTION 968 " The sampled values of this MO instance will be 969 aggregated by the TAgMO. 970 " 971 ::= { tAggrCtlEntry 2 } 973 tAggrCtlAgMODescr OBJECT-TYPE 974 SYNTAX SnmpAdminString (SIZE(0..64)) 975 MAX-ACCESS read-create 976 STATUS current 977 DESCRIPTION 978 " A textual description of the aggregate object." 979 ::= {tAggrCtlEntry 3} 981 tAggrCtlInterval OBJECT-TYPE 982 SYNTAX Integer32 983 UNITS "micro seconds" 984 MAX-ACCESS read-create 985 STATUS current 986 DESCRIPTION 987 " The interval in microseconds at which the MO instance 988 pointed at by tAggrInstance, will be sampled for 989 time-based aggregation. 990 " 991 ::= {tAggrCtlEntry 4} 993 tAggrCtlSamples OBJECT-TYPE 994 SYNTAX Integer32 995 MAX-ACCESS read-create 996 STATUS current 997 DESCRIPTION 998 " The number of times at which the MO instance referred 999 to by tAaggrInstance, will be sampled for time-based 1000 aggregation." 1001 ::= {tAggrCtlEntry 5} 1003 -- only one compression algorithm is defined as of now. 1004 tAggrCtlCompressionAlgorithm OBJECT-TYPE 1005 SYNTAX INTEGER { 1006 none (1), 1007 deflate (2) 1008 } 1009 MAX-ACCESS read-create 1010 STATUS current 1011 DESCRIPTION 1012 " The compression algorithm that will be used by 1013 the agent to compress the value of the TAgMO. 1014 The deflate algorithm and corresponding data format 1015 specification is described in RFC1951. It is 1016 compatible with the widely used gzip utility. 1017 " 1018 REFERENCE 1019 "RFC1951 : DEFLATE Compressed Data Format Specification 1020 version 1.3 1021 " 1022 DEFVAL { none } 1023 ::= {tAggrCtlEntry 6} 1025 tAggrCtlEntryOwner OBJECT-TYPE 1026 SYNTAX OwnerString 1027 MAX-ACCESS read-create 1028 STATUS current 1029 DESCRIPTION 1030 " A textual description of the entity that created 1031 this entry. 1032 " 1033 ::= {tAggrCtlEntry 7} 1035 tAggrCtlEntryStorageType OBJECT-TYPE 1036 SYNTAX StorageType 1037 MAX-ACCESS read-create 1038 STATUS current 1039 DESCRIPTION 1040 "This object defines whether the parameters defined in 1041 this row are kept in volatile storage and lost upon 1042 reboot or are backed up by non-volatile (permanent) 1043 storage. 1044 Conceptual rows having the value ''permanent'' need not 1045 allow write-access to any columnar objects in the row. 1046 " 1047 ::= {tAggrCtlEntry 8} 1049 tAggrCtlEntryStatus OBJECT-TYPE 1050 SYNTAX RowStatus 1051 MAX-ACCESS read-create 1052 STATUS current 1053 DESCRIPTION 1054 "The row status variable, used according to row 1055 installation and removal conventions. 1056 Objects in a row can be modified only when the value of 1057 this object in the corresponding conceptual row is not 1058 ''active''. 1059 Thus, to modify one or more of the objects in this 1060 conceptual row, 1061 a. change the row status to ''notInService'', 1062 b. change the values of the row 1063 c. change the row status to ''active'' 1064 The tAggrCtlEntryStatus may be changed to ''active'' iff 1065 all the MOs in the conceptual row have been assigned 1066 valid values. 1067 " 1068 ::= {tAggrCtlEntry 9} 1070 -- 1071 -- tAggrDataTable: The data table. 1072 -- 1073 tAggrDataTable OBJECT-TYPE 1074 SYNTAX SEQUENCE OF TAggrDataEntry 1075 MAX-ACCESS not-accessible 1076 STATUS current 1077 DESCRIPTION 1078 " This is the data table. Each row of this table contains 1079 information about a TAgMO indexed by tAggrCtlEntryID. 1080 tAggrCtlEntryID is the key to the table. It is used to 1081 identify instances of the TAgMO that are present in the 1082 table. 1083 " 1084 ::= {tAggrMIB 2} 1086 tAggrDataEntry OBJECT-TYPE 1087 SYNTAX TAggrDataEntry 1088 MAX-ACCESS not-accessible 1089 STATUS current 1090 DESCRIPTION 1091 " Entry containing information pertaining 1092 to a TAgMO." 1093 INDEX {tAggrCtlEntryID} 1094 ::= {tAggrDataTable 1 } 1096 TAggrDataEntry ::= SEQUENCE { 1097 tAggrDataRecord 1098 TimeAggrMOValue, 1099 tAggrDataRecordCompressed 1100 CompressedTimeAggrMOValue, 1101 tAggrDataErrorRecord 1102 TAggrMOErrorStatus 1103 } 1105 tAggrDataRecord OBJECT-TYPE 1106 SYNTAX TimeAggrMOValue 1107 MAX-ACCESS read-only 1108 STATUS current 1109 DESCRIPTION 1110 "The snapshot value of the TAgMO." 1111 ::= { tAggrDataEntry 1} 1113 tAggrDataRecordCompressed OBJECT-TYPE 1114 SYNTAX CompressedTimeAggrMOValue 1115 MAX-ACCESS read-only 1116 STATUS current 1117 DESCRIPTION 1118 "The compressed value of the TAgMO. 1119 The compression algorithm will depend on the 1120 tAggrCtlCompressionAlgorithm given in the corresponding 1121 tAggrCtlEntry. In case the value of the corresponding 1122 tAggrCtlCompressionAlgorithm is (1) 'none' then the 1123 value of all instances of this object will be a string 1124 of zero length. 1125 Note that the access privileges to this object will be 1126 governed by the access privileges of the corresponding MO 1127 instance. Thus an entity attempting to access an instance 1128 of this MO MUST have access rights to the instance object 1129 pointed at by tAggrCtlMOInstance and this MO instance. 1130 " 1131 ::= { tAggrDataEntry 2} 1133 tAggrDataErrorRecord OBJECT-TYPE 1134 SYNTAX TAggrMOErrorStatus 1135 MAX-ACCESS read-only 1136 STATUS current 1137 DESCRIPTION 1138 " The error status corresponding to the MO instance 1139 samples aggregated in tAggrDataRecord (and 1140 tAggrDataRecordCompressed)." 1141 ::= { tAggrDataEntry 3} 1143 -- Conformance information 1144 tAggrConformance OBJECT IDENTIFIER ::= { tAggrMIB 3 } 1145 tAggrGroups OBJECT IDENTIFIER ::= { tAggrConformance 1 } 1146 tAggrCompliances OBJECT IDENTIFIER ::= { tAggrConformance 2 } 1148 -- Compliance statements 1149 tAggrMibCompliance MODULE-COMPLIANCE 1150 STATUS current 1151 DESCRIPTION 1152 "The compliance statement for SNMP entities 1153 which implement the 1154 TIME-AGGREGATE-MIB." 1155 MODULE -- this module 1156 MANDATORY-GROUPS { tAggrMibBasicGroup } 1157 ::= { tAggrCompliances 1 } 1159 -- Units of conformance 1160 tAggrMibBasicGroup OBJECT-GROUP 1161 OBJECTS { 1162 tAggrCtlMOInstance, 1163 tAggrCtlAgMODescr, 1164 tAggrCtlInterval, 1165 tAggrCtlSamples, 1166 tAggrCtlCompressionAlgorithm, 1167 tAggrCtlEntryOwner, 1168 tAggrCtlEntryStorageType, 1169 tAggrCtlEntryStatus, 1170 tAggrDataRecord, 1171 tAggrDataRecordCompressed, 1172 tAggrDataErrorRecord 1173 } 1174 STATUS current 1175 DESCRIPTION 1176 " A collection of objects for time-based aggregation 1177 of MOs." 1178 ::= { tAggrGroups 1 } 1179 END 1181 7. Security Considerations 1183 There are management objects in the MIB modules defined in this 1184 document that have a MAX-ACCESS clause of read-create. Such objects 1185 may be considered sensitive or vulnerable in some network 1186 environments. The support for SET operations in a non-secure 1187 environment without proper protection can have a negative effect on 1188 network operations. The objects and corresponding vulnerabilities 1189 are discussed below. 1191 The following MOs are used to configure an agent that implements the 1192 aggregate MIB modules. 1193 aggrCtlMOIndex, 1194 aggrCtlMODescr, 1195 aggrCtlCompressionAlgorithm, 1196 aggrCtlEntryOwner, 1197 aggrCtlEntryStorageType, 1198 aggrCtlEntryStatus, 1199 aggrMOInstance, 1200 aggrMODescr, 1201 aggrMOEntryStorageType, 1202 aggrMOEntryStatus, 1203 tAggrCtlMOInstance, 1204 tAggrCtlAgMODescr, 1205 tAggrCtlInterval, 1206 tAggrCtlSamples, 1207 tAggrCtlCompressionAlgorithm, 1208 tAggrCtlEntryOwner, 1209 tAggrCtlEntryStorageType, 1210 tAggrCtlEntryStatus, 1212 Access to these objects may be abused to affect the operation of the 1213 data collection system. In particular, 1214 - by changing the value of an instance of aggrCtlEntryStatus, 1215 tAggrCtlEntryStatus, aggrMOEntryStatus or tAggrMOEntryStatus 1216 to 'notInService' or 'destroy', the data aggregation 1217 operation for the corresponding entry will become 1218 unavailable to the management system. 1219 - by changing the value of an instance of aggrMOInstance or 1220 tAggrCtlMOInstance, the data aggregation operation 1221 may be subverted. This may result in wrong information 1222 being fed to the management system. 1223 - by adding several rows in the aggrMOTable corresponding 1224 to an aggregate MO it is possible to make the value of 1225 the aggregate MOs very large. A similar effect may be 1226 achieved by manipulating the value of the tAggrCtlSamples 1227 instance corresponding to a time-based aggregate MO. 1228 This could result in very heavy management traffic and/or 1229 fragmentation of response packets. In some cases the 1230 responder may refuse to send the data and will simply 1231 respond with an error message indicating that the response 1232 packet size is too big. 1234 An entity attempting to access an instance of an aggregated MO MUST 1235 have access rights to all the component instance objects and the 1236 aggregate MO instance. Implementation MUST follow this requirement. 1237 Lax adherence to this requirement will breach the security model and 1238 make the system vulnerable to illegal accesses. 1240 SNMP versions prior to SNMPv3 did not include adequate security. 1241 Even if the network itself is secure (for example by using IPSec), 1242 there is no control as to who on the secure network is allowed to 1243 access and GET/SET (read/change/create/delete) the objects in this 1244 MIB module. 1246 It is RECOMMENDED that implementers consider the security features as 1247 provided by the SNMPv3 framework (see [RFC3410], section 8), 1248 including full support for the SNMPv3 cryptographic mechanisms (for 1249 authentication and privacy). 1251 Further, deployment of SNMP versions prior to SNMPv3 is NOT 1252 RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to 1253 enable cryptographic security. It is then a customer/operator 1254 responsibility to ensure that the SNMP entity giving access to an 1255 instance of this MIB module is properly configured to give access to 1256 the objects only to those principals (users) that have legitimate 1257 rights to indeed GET or SET (change/create/delete) them. 1259 8. IANA Considerations 1261 The MIB modules in this document use the following IANA-assigned 1262 OBJECT IDENTIFIER values recorded in the SMI Numbers registry: 1264 Descriptor OBJECT IDENTIFIER value 1265 ---------- ----------------------- 1267 aggrMIB { experimental xxx } 1268 tAggrMIB { experimental nnn } 1270 IANA Reg.: Please assign a base arc each in the 'experimental' 1271 OID subtree for the 'aggrMIB' MODULE-IDENTITY and the 1272 'tAggrMIB' MODULE-IDENTITY defined in the AGGREGATE-MIB 1273 and the TIME-AGGREGATE-MIB, respectively, and record the 1274 assignment in the SMI Numbers registry. 1276 RFC Ed.: When the above assignments have been made, please 1277 - remove the above note 1278 - replace "xxx" and "nnn" here with the respective 1279 assigned values and 1280 - remove this note. 1282 9. References 1284 9.1 Normative References 1286 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1287 Requirements Levels", BCP 14, RFC 2119, March 1997. 1289 [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 1290 Rose, M., and S. Waldbusser, "Structure of Management 1291 Information Version 2 (SMIv2)", STD 58, RFC 2578, 1292 April 1999 1294 [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 1295 Rose, M., and S. Waldbusser, "Textual Conventions for 1296 SMIv2", STD 58, RFC 2579, April 1999 1298 [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 1299 Rose, M., and S. Waldbusser, "Conformance Statements for 1300 SMIv2", STD 58, RFC 2580, April 1999 1302 [RFC2819] Waldbusser, S., "Remote Network Monitoring 1303 Management Information Base", STD 59, RFC 2819, 1304 May 2000. 1306 [RFC3411] Harrington, D., Presuhn, R. and B. Wijnen, "An Architecture 1307 for Describing Simple Network Management Protocol (SNMP) 1308 Management Frameworks", STD 62, RFC 3411, December 2002. 1310 [RFC3231] Levi. D. and Schoenwaelder, J., "Definitions of Managed 1311 Objects for Scheduling Management Operations", RFC3231, 1312 January 2002 1314 [RFC1951] Deutsch. P., "DEFLATE Compressed Data Format Specification 1315 version 1.3", RFC 1951, May 1996. 1317 9.2 Informative References 1319 [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, 1320 "Introduction and Applicability Statements for the 1321 Internet-Standard Management Framework", RFC 3410, 1322 December 2002. 1324 10. Acknowledgments 1326 This draft is the product of discussions and deliberations carried 1327 out in the WIDE-netman group. Bert Wijnen and Glenn Waters reviewed 1328 the document and provided valuable comments. 1330 11. Authors' Addresses 1332 Glenn Mansfield Keeni 1333 Cyber Solutions Inc. 1334 6-6-3 Minami Yoshinari 1335 Aoba-ku, Sendai 989-3204 1336 Japan 1338 Phone: +81-22-303-4012 1339 EMail: glenn@cysols.com 1341 12. Full Copyright Statement 1343 Copyright (C) The Internet Society (2005). 1345 This document is subject to the rights, licenses and restrictions 1346 contained in BCP 78, and except as set forth therein, the authors 1347 retain all their rights. 1349 This document and the information contained herein are provided on an 1350 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE 1351 REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE 1352 INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR 1353 IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1354 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1355 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1357 Intellectual Property 1359 The IETF takes no position regarding the validity or scope of any 1360 Intellectual Property Rights or other rights that might be claimed 1361 to pertain to the implementation or use of the technology 1362 described in this document or the extent to which any license 1363 under such rights might or might not be available; nor does it 1364 represent that it has made any independent effort to identify any 1365 such rights. Information on the procedures with respect to 1366 rights in RFC documents can be found in BCP 78 and BCP 79. 1368 Copies of IPR disclosures made to the IETF Secretariat and any 1369 assurances of licenses to be made available, or the result of an 1370 attempt made to obtain a general license or permission for the use 1371 of such proprietary rights by implementers or users of this 1372 specification can be obtained from the IETF on-line IPR repository 1373 at http://www.ietf.org/ipr. 1375 The IETF invites any interested party to bring to its attention 1376 any copyrights, patents or patent applications, or other 1377 proprietary rights that may cover technology that may be required 1378 to implement this standard. Please address the information to the 1379 IETF at ietf-ipr@ietf.org. 1381 Acknowledgment 1383 Funding for the RFC Editor function is currently provided by the 1384 Internet Society. 1386 List of changes since draft-glenn-mo-aggr-mib-07.txt a. Changed the 1387 DEFVAL spec from 'number' to 'name' 1388 MO: aggrCtlCompressionAlgorithm 1389 old: DEFVAL { 1 } 1390 new: DEFVAL { none } 1392 MO: tAggrCtlCompressionAlgorithm 1393 old: DEFVAL { 1 } 1394 new: DEFVAL { none } b. Revised the Acknowledgments section. 1396 List of changes since draft-glenn-mo-aggr-mib-06.txt 1398 a. Changed the bounds of aggrMOEntryID 1399 old: aggrMOEntryID (1..65535) 1400 new: aggrMOEntryID (1..2147483647) 1402 b. Revised the Acknowledgments section 1404 List of changes since draft-glenn-mo-aggr-mib-05.txt 1406 a. Revised Fig. 3 for Periodic polling b. Added reference tags for 1407 RMON-MIB [RFC2819] 1408 SNMP-FRAMEWORK-MIB[RFC3411] 1410 c. changed the prefix of the MOs in aggrCtlEntry 1411 to aggrCtl 1413 d. added a compression algorithm "deflate" to 1414 aggrCtlCompressionAlgorithm 1416 e. moved the comments on aggrMOTable to the DECRIPTION clause 1418 f. changed the range of aggrMOEntryID and aggrMOEntryMOID 1419 from (0..65535) to (1..65535) 1421 g. renamed aggrDataRec, aggrDataRecC, aggrErrorRec to 1422 aggrDataRecord, aggrDataRecordCompressed, aggrDataErrorRecord 1423 respectively. 1425 h. revised the DESCRIPTION of aggrDataRecordCompressed to make 1426 the value a zero length string in case there is no compression. i. 1427 renamed aggrDataCompliance and aggrDataGroup to 1428 aggrMibCompliance and aggrMibBasicGroup , respectively. 1430 j. Revised the DESCRIPTION of TimeAggrMOValue 1431 old: MOValue :: = SEQUENCE 1432 new: MOSampleValue :: = SEQUENCE 1433 old: Where, the first MOSampleValue will always be the timestamp 1434 new: Where, the first MOSampleValue, if any, will always be the 1435 timestamp k. updated the DESCRIPTION of tAggrCtlTable l. renamed 1436 the prefix of the MOs in tAggrCtlEntry to tAggrCtl m. added a 1437 compression algorithm "deflate" to 1438 tAggrCtlCompressionAlgorithm n. updated the DESCRIPTION of 1439 tAggrDataTable o. renamed tAggrDataRec, tAggrDataRecC, tAggrErrorRec to 1440 tAggrDataRecord, tAggrDataRecordCompressed, tAggrDataErrorRecord 1441 respectively. p. revised the DESCRIPTION of 1442 tAggrDataRecordCompressed to make 1443 the value a zero length string in case there is no compression. q. 1444 renamed tAggrDataCompliance and tAggrDataGroup to 1445 tAggrMibCompliance and tAggrMibBasicGroup, respectively 1447 r. added a paragraph about the strict accesscontrol requirements 1448 for component MOs 1450 s. Revised the IANA considerations section 1452 t. Added references 1453 [RFC2119], [RFC2819], [RFC3411], [RFC1951]