idnits 2.17.1 draft-ietf-trunkmib-ds0-mib-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Cannot find the required boilerplate sections (Copyright, IPR, etc.) in this document. Expected boilerplate is as follows today (2024-04-26) according to https://trustee.ietf.org/license-info : IETF Trust Legal Provisions of 28-dec-2009, Section 6.a: This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. IETF Trust Legal Provisions of 28-dec-2009, Section 6.b(i), paragraph 2: Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. IETF Trust Legal Provisions of 28-dec-2009, Section 6.b(i), paragraph 3: This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** Missing document type: Expected "INTERNET-DRAFT" in the upper left hand corner of the first page ** Missing expiration date. The document expiration date should appear on the first and last page. ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts. ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories. ** The document is more than 15 pages and seems to lack a Table of Contents. == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** The abstract seems to contain references ([6], [7], [8]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == Line 233 has weird spacing: '...ifIndex dsx1D...' == Line 252 has weird spacing: '...ifIndex dsx0...' == Line 274 has weird spacing: '...leIndex dsx...' == Line 283 has weird spacing: '...ifIndex dsx0D...' -- 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 () is 739384 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) ** Obsolete normative reference: RFC 1902 (ref. '1') (Obsoleted by RFC 2578) ** Downref: Normative reference to an Historic RFC: RFC 1157 (ref. '3') ** Obsolete normative reference: RFC 1905 (ref. '4') (Obsoleted by RFC 3416) ** Obsolete normative reference: RFC 2233 (ref. '5') (Obsoleted by RFC 2863) == Outdated reference: A later version (-09) exists of draft-ietf-trunkmib-ds1-mib-08 == Outdated reference: A later version (-05) exists of draft-ietf-atommib-sonetng-02 -- Possible downref: Non-RFC (?) normative reference: ref. '9' Summary: 15 errors (**), 0 flaws (~~), 7 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Definitions of Managed Objects 2 for the DS0 and DS0 Bundle Interface Type 4 Sun May 24 15:10:44 EDT 1998 6 draft-ietf-trunkmib-ds0-mib-06.txt 8 David Fowler (editor) 9 Newbridge Networks 10 davef@newbridge.com 12 Status of this Memo 14 This document is an Internet-Draft. Internet-Drafts are working 15 documents of the Internet Engineering Task Force (IETF), its areas, 16 and its working groups. Note that other groups may also distribute 17 working documents as Internet-Drafts. 19 Internet-Drafts are draft documents valid for a maximum of six months 20 and may be updated, replaced, or obsoleted by other documents at any 21 time. It is inappropriate to use Internet-Drafts as reference 22 material or to cite them other than as ``work in progress.'' 24 To view the entire list of current Internet-Drafts, please check 25 the "1id-abstracts.txt" listing contained in the Internet-Drafts 26 Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net 27 (Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au 28 (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu 29 (US West Coast). 31 Abstract 33 This memo defines an experimental portion of the Management 34 Information Base (MIB) for use with network management protocols in 35 the Internet community. In particular, it describes objects used for 36 managing DS0 and DS0 Bundle interfaces. This document is a companion 37 document with Definitions of Managed Objects for the DS1/E1/DS2/E2, 38 DS3/E3 and SONET/SDH Interface Types, RFC XXXX [6], RFC XXXX [7] and 39 RFC XXXX [8]. 41 This memo specifies a MIB module in a manner that is both compliant 42 to the SNMPv2 SMI, and semantically identical to the peer SNMPv1 43 definitions. 45 This memo does not specify a standard for the Internet community. 47 1. The SNMPv2 Network Management Framework 49 The SNMPv2 Network Management Framework consists of three major 50 components. They are: 52 o the SMI, described in RFC 1902 [1] - the mechanisms used for 53 describing and naming objects for the purpose of management. 55 o the MIB-II, STD 17, RFC 1213 [2] - the core set of managed 56 objects for the Internet suite of protocols. 58 o the protocol, STD 15, RFC 1157 [3] and/or RFC 1905 [4], - the 59 protocol for accessing managed objects. 61 The Framework permits new objects to be defined for the 62 purpose of experimentation and evaluation. 64 2. Objects 66 Managed objects are accessed via a virtual information store, termed 67 the Management Information Base or MIB. Objects in the MIB are 68 defined using the subset of Abstract Syntax Notation One (ASN.1) 69 defined in the SMI. In particular, each object type is named by an 70 OBJECT IDENTIFIER, an administratively assigned name. The object 71 type together with an object instance serves to uniquely identify a 72 specific instantiation of the object. For human convenience, we 73 often use a textual string, termed the descriptor, to also refer to 74 the object type. 76 3. Overview 78 These objects are used when the particular media being used to 79 realize an interface is a DS0 interface. At present, this applies to 80 these values of the ifType variable in the Internet-standard MIB: 82 ds0 (81) 83 ds0Bundle (82) 85 3.1. BONDing Terminology 87 Please reference The BONDing Spec [9] for definitions of terms used 88 to describe bonding modes. 90 3.2. Use of ifTable for DS0 Layer 92 The following items are defined in RFC 2233 [5]. 94 Only the ifGeneralInformationGroup and ifCounterDiscontinuityGroup 95 need to be supported. 97 ifTable Object Use for DS0 Layer 98 ====================================================================== 99 ifIndex Interface index. 101 ifDescr See interfaces MIB [5]. 103 ifType ds0(81) or ds0Bundle(82). 105 ifSpeed 64000 for ds0 (regardless of the 106 setting of robbed bit signalling) 107 or N*64000 for ds0Bundle. 109 ifPhysAddress Not used. This object should have 110 an octet string with zero length. 112 ifAdminStatus See interfaces MIB [5]. 114 ifOperStatus See interfaces MIB [5]. 116 ifLastChange See interfaces MIB [5]. 118 ifName See interfaces MIB [5]. 120 ifLinkUpDownTrapEnable Set to disabled(2). 121 Supports read-only access. 123 ifHighSpeed Set to rounded ifSpeed/1000000. 125 ifConnectorPresent Set to false(2). 127 3.3. Using ifStackTable 129 This section describes by example how to use ifStackTable to 130 represent the relationship of ds0 and ds0Bundles with ds1 interfaces. 131 Implementors of the stack table for ds0 and ds0Bundle interfaces 132 should look at the appropriate RFC for the service being stacked on 133 ds0s and ds0Bundles. Examples given below are for illustration 134 purposes only. 136 Example: A Frame Relay Service is being carried on 4 ds0s of a ds1. 138 +---------------------+ 139 | Frame Relay Service | 140 +---------------------+ 141 | 142 +---------------------+ 143 | ds0Bundle | 144 +---------------------+ 145 | | | | 146 +---+ +---+ +---+ +---+ 147 |ds0| |ds0| |ds0| |ds0| 148 +---+ +---+ +---+ +---+ 149 | | | | 150 +---------------------+ 151 | ds1 | 152 +---------------------+ 154 The assignment of the index values could for example be: 156 ifIndex Description 157 1 FrameRelayService (type 44) 158 2 ds0Bundle (type 82) 159 3 ds0 #1 (type 81) 160 4 ds0 #2 (type 81) 161 5 ds0 #3 (type 81) 162 6 ds0 #4 (type 81) 163 7 ds1 (type 18) 165 The ifStackTable is then used to show the relationships between the 166 various interfaces. 168 ifStackTable Entries 170 HigherLayer LowerLayer 171 0 1 172 1 2 173 2 3 174 2 4 175 2 5 176 2 6 177 3 7 178 4 7 179 5 7 180 6 7 181 7 0 183 In the case where the frameRelayService is using a single ds0, then 184 the ds0Bundle is not required. 186 +---------------------+ 187 | Frame Relay Service | 188 +---------------------+ 189 | 190 +---+ 191 |ds0| 192 +---+ 193 | 194 +---------------------+ 195 | ds1 | 196 +---------------------+ 198 The assignment of the index values could for example be: 200 ifIndex Description 201 1 FrameRelayService (type 44) 202 2 ds0 (type 81) 203 3 ds1 (type 18) 205 The ifStackTable is then used to show the relationships between the 206 various interfaces. 208 ifStackTable Entries 210 HigherLayer LowerLayer 211 0 1 212 1 2 213 2 3 214 3 0 216 3.3.1. Usage of Channelization for DS3, DS1, DS0 218 An example is given here to explain the channelization objects in the 219 DS3, DS1, and DS0 MIBs to help the implementor use the objects 220 correctly. Treatment of E3 and E1 would be similar, with the number of 221 DS0s being different depending on the framing of the E1. Timeslot 16 is 222 not created for framing types that do not pass data over it. 224 Assume that a DS3 (with ifIndex 1) is channelized into DS1s (without 225 DS2s). The object dsx3Channelization is set to enabledDs1. There will 226 be 28 DS1s in the ifTable. Assume the entries in the ifTable for the 227 DS1s are created in channel order and the ifIndex values are 2 through 228 29. In the DS1 MIB, there will be an entry in the dsx1ChanMappingTable 229 for each ds1. The entries will be as follows: 231 dsx1ChanMappingTable Entries 233 ifIndex dsx1Ds1ChannelNumber dsx1ChanMappedIfIndex 234 1 1 2 235 1 2 3 236 ...... 237 1 28 29 239 In addition, the DS1s are channelized into DS0s. The object 240 dsx1Channelization is set to enabledDs0 for each DS1. When this object 241 is set to this value, 24 DS0s are created by the agent. There will be 24 242 DS0s in the ifTable for each DS1. If the dsx1Channelization is set to 243 disabled, the 24 DS0s are destroyed. 245 Assume the entries in the ifTable are created in channel order and the 246 ifIndex values for the DS0s in the first DS1 are 30 through 53. In the 247 DS0 MIB, there will be an entry in the dsx0ChanMappingTable for each 248 DS0. The entries will be as follows: 250 dsx0ChanMappingTable Entries 252 ifIndex dsx0Ds0ChannelNumber dsx0ChanMappedIfIndex 253 2 1 30 254 2 2 31 255 ...... 256 2 24 53 258 3.3.2. Usage of ifIndex Mapping for DS0Bundle 260 An example is given here to explain the ifIndex mapping objects in the 261 DS0Bundle MIB to help the implementor use the objects correctly. 263 Assume that a DS1 (with ifIndex 1) is channelized into DS0s. There will 264 be 24 DS0s in the ifTable. Assume the entries in the ifTable for the 265 DS0s are created in channel order and the ifIndex values are 2 through 266 25. Now, assume that there are two bundles on the DS1. The first one 267 uses channels 1 and 2. The second uses channels 3 and 4. There will be 268 two ifTable entries for these bundles, with values of 26 and 27 for 269 ifIndex. There will be an entry in the dsx0BundleTable for each bundle. 270 The entries will be as follows: 272 dsx0BundleTable Entries 274 dsx0BundleIndex dsx0BundleIfIndex 275 1 26 276 2 27 278 There will be an entry in the dsx0ConfigTable for each DS0. The entries 279 will be as follows: 281 dsx0ConfigTable Entries 283 ifIndex dsx0Ds0ChannelNumber dsx0Ds0BundleMappedIfIndex 284 2 1 26 285 3 2 26 286 4 3 27 287 5 4 27 288 6 5 0 289 7 6 0 290 ...... 291 25 24 0 293 4. Overview of the MIB 295 This document contains 2 MIB modules, the DS0 MIB and the DS0Bundle 296 MIB. 298 4.1. DS0 MIB 300 The DS0 MIB is used to represent individual DS0s in a DS1 or E1. 301 Variables in this MIB would be created for each DS0 in the ifTable. 302 This MIB contains the following group: 304 The DS0 Config Group - This group contains configuration information 305 about a particular DS0. 307 4.2. DS0Bundle MIB 309 The DS0Bundle MIB is used to represent collections of DS0s that are 310 used together to carry data within a DS1/E1 at speeds greater than 311 that of a single DS0. DS0Bundles are created on top of DS0s and are 312 represented that way in the ifStackTable. This MIB contains the 313 following groups: 315 The DS0 Bundle Group - This group contains objects used for creating 316 new ds0Bundles. This group is mandatory. 318 The DS0 Bonding Group - This group contains information about bonding 319 for a ds0Bundle, if bonding is enabled. This group is optional. 321 5. Object Definitions for DS0 323 DS0-MIB DEFINITIONS ::= BEGIN 325 IMPORTS 326 MODULE-IDENTITY, OBJECT-TYPE, 327 transmission FROM SNMPv2-SMI 328 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF 329 DisplayString, TruthValue FROM SNMPv2-TC 330 ifIndex, InterfaceIndex, 331 InterfaceIndexOrZero FROM IF-MIB; 333 -- This is the MIB module for the DS0 Interface objects. 335 ds0 MODULE-IDENTITY 336 LAST-UPDATED "9805242010Z" 337 ORGANIZATION "IETF Trunk MIB Working Group" 338 CONTACT-INFO 339 " David Fowler 341 Postal: Newbridge Networks Corporation 342 600 March Road 343 Kanata, Ontario, Canada K2K 2E6 345 Tel: +1 613 591 3600 346 Fax: +1 613 599 3619 348 E-mail: davef@newbridge.com" 349 DESCRIPTION 350 "The MIB module to describe 351 DS0 interfaces objects." 352 REVISION "9805242010Z" 353 DESCRIPTION 354 "Initial version of the DS0-MIB." 356 ::= { transmission 81 } 358 -- The DS0 Config Group 360 -- Implementation of this group is mandatory for all 361 -- systems that use a DS0 Interface. 363 -- The DS0 Config Group consists of two tables: 364 -- DS0 Configuration Table 365 -- DS0 Channel Mapping Table 367 -- The DS0 Configuration Table 369 dsx0ConfigTable OBJECT-TYPE 370 SYNTAX SEQUENCE OF Dsx0ConfigEntry 371 MAX-ACCESS not-accessible 372 STATUS current 373 DESCRIPTION 374 "The DS0 Configuration table." 375 ::= { ds0 1 } 377 dsx0ConfigEntry OBJECT-TYPE 378 SYNTAX Dsx0ConfigEntry 379 MAX-ACCESS not-accessible 380 STATUS current 381 DESCRIPTION 382 "An entry in the DS0 Configuration table. There 383 is an entry in this table for each DS0 interface." 384 INDEX { ifIndex } 385 ::= { dsx0ConfigTable 1 } 387 Dsx0ConfigEntry ::= 388 SEQUENCE { 389 dsx0Ds0ChannelNumber INTEGER, 390 dsx0RobbedBitSignalling TruthValue, 391 dsx0CircuitIdentifier DisplayString, 392 dsx0IdleCode INTEGER, 393 dsx0SeizedCode INTEGER, 394 dsx0ReceivedCode INTEGER, 395 dsx0TransmitCodesEnable TruthValue, 396 dsx0Ds0BundleMappedIfIndex InterfaceIndexOrZero 397 } 399 dsx0Ds0ChannelNumber OBJECT-TYPE 400 SYNTAX INTEGER(0..31) 401 MAX-ACCESS read-only 402 STATUS current 403 DESCRIPTION 404 "This object indicates the channel number of the 405 ds0 on its DS1/E1." 406 ::= { dsx0ConfigEntry 1 } 408 dsx0RobbedBitSignalling OBJECT-TYPE 409 SYNTAX TruthValue 410 MAX-ACCESS read-write 411 STATUS current 412 DESCRIPTION 413 "This object indicates if Robbed Bit Signalling is 414 turned on or off for a given ds0. This only 415 applies to DS0s on a DS1 link. For E1 links the 416 value is always off (false)." 417 ::= { dsx0ConfigEntry 2 } 419 dsx0CircuitIdentifier OBJECT-TYPE 420 SYNTAX DisplayString (SIZE (0..255)) 421 MAX-ACCESS read-write 422 STATUS current 423 DESCRIPTION 424 "This object contains the transmission vendor's 425 circuit identifier, for the purpose of 426 facilitating troubleshooting." 427 ::= { dsx0ConfigEntry 3 } 429 dsx0IdleCode OBJECT-TYPE 430 SYNTAX INTEGER(0..15) 431 MAX-ACCESS read-write 432 STATUS current 433 DESCRIPTION 434 "This object contains the code transmitted in the 435 ABCD bits when the ds0 is not connected and 436 dsx0TransmitCodesEnable is enabled. The object is 437 a bitmap and the various bit positions are: 438 1 D bit 439 2 C bit 440 4 B bit 441 8 A bit" 442 ::= { dsx0ConfigEntry 4 } 444 dsx0SeizedCode OBJECT-TYPE 445 SYNTAX INTEGER(0..15) 446 MAX-ACCESS read-write 447 STATUS current 448 DESCRIPTION 449 "This object contains the code transmitted in the 450 ABCD bits when the ds0 is connected and 451 dsx0TransmitCodesEnable is enabled. The object is 452 a bitmap and the various bit positions are: 453 1 D bit 454 2 C bit 455 4 B bit 456 8 A bit" 457 ::= { dsx0ConfigEntry 5 } 459 dsx0ReceivedCode OBJECT-TYPE 460 SYNTAX INTEGER(0..15) 461 MAX-ACCESS read-only 462 STATUS current 463 DESCRIPTION 464 "This object contains the code being received in 465 the ABCD bits. The object is a bitmap and the 466 various bit positions are: 467 1 D bit 468 2 C bit 469 4 B bit 470 8 A bit" 471 ::= { dsx0ConfigEntry 6 } 473 dsx0TransmitCodesEnable OBJECT-TYPE 474 SYNTAX TruthValue 475 MAX-ACCESS read-write 476 STATUS current 477 DESCRIPTION 478 "This object determines if the idle and seized 479 codes are transmitted. If the value of this object 480 is true then the codes are transmitted." 481 ::= { dsx0ConfigEntry 7 } 483 dsx0Ds0BundleMappedIfIndex OBJECT-TYPE 484 SYNTAX InterfaceIndexOrZero 485 MAX-ACCESS read-only 486 STATUS current 487 DESCRIPTION 488 "This object indicates the ifIndex value assigned 489 by the agent for the ds0Bundle(82) ifEntry to 490 which the given ds0(81) ifEntry may belong. 492 If the given ds0(81) ifEntry does not belong to 493 any ds0Bundle(82) ifEntry, then this object has a 494 value of zero. 496 While this object provides information that can 497 also be found in the ifStackTable, it provides 498 this same information with a single table lookup, 499 rather than by walking the ifStackTable to find 500 the possibly non-existent ds0Bundle(82) ifEntry 501 that may be stacked above the given ds0(81) 502 ifTable entry." 503 ::= { dsx0ConfigEntry 8 } 505 -- The DS0 Channel Mapping Table 507 dsx0ChanMappingTable OBJECT-TYPE 508 SYNTAX SEQUENCE OF Dsx0ChanMappingEntry 509 MAX-ACCESS not-accessible 510 STATUS current 511 DESCRIPTION 512 "The DS0 Channel Mapping table. This table maps a 513 DS0 channel number on a particular DS1/E1 into an 514 ifIndex." 515 ::= { ds0 3 } 517 dsx0ChanMappingEntry OBJECT-TYPE 518 SYNTAX Dsx0ChanMappingEntry 519 MAX-ACCESS not-accessible 520 STATUS current 521 DESCRIPTION 522 "An entry in the DS0 Channel Mapping table. There 523 is an entry in this table corresponding to each 524 ds0 ifEntry within any interface that is 525 channelized to the individual ds0 ifEntry level. 527 This table is intended to facilitate mapping from 528 channelized interface / channel number to DS0 529 ifEntry. (e.g. mapping (DS1 ifIndex, DS0 Channel 530 Number) -> ifIndex) 532 While this table provides information that can 533 also be found in the ifStackTable and 534 dsx0ConfigTable, it provides this same information 535 with a single table lookup, rather than by walking 536 the ifStackTable to find the various constituent 537 ds0 ifTable entries, and testing various 538 dsx0ConfigTable entries to check for the entry 539 with the applicable DS0 channel number." 540 INDEX { ifIndex, dsx0Ds0ChannelNumber } 541 ::= { dsx0ChanMappingTable 1 } 543 Dsx0ChanMappingEntry ::= 544 SEQUENCE { 545 dsx0ChanMappedIfIndex InterfaceIndex 546 } 548 dsx0ChanMappedIfIndex OBJECT-TYPE 549 SYNTAX InterfaceIndex 550 MAX-ACCESS read-only 551 STATUS current 552 DESCRIPTION 553 "This object indicates the ifIndex value assigned 554 by the agent for the individual ds0 ifEntry that 555 corresponds to the given DS0 channel number 556 (specified by the INDEX element 557 dsx0Ds0ChannelNumber) of the given channelized 558 interface (specified by INDEX element ifIndex)." 559 ::= { dsx0ChanMappingEntry 1 } 561 -- conformance information 563 ds0Conformance OBJECT IDENTIFIER ::= { ds0 2 } 565 ds0Groups OBJECT IDENTIFIER ::= { ds0Conformance 1 } 566 ds0Compliances OBJECT IDENTIFIER ::= { ds0Conformance 2 } 568 -- compliance statements 570 ds0Compliance MODULE-COMPLIANCE 571 STATUS current 572 DESCRIPTION 573 "The compliance statement for DS0 interfaces." 574 MODULE -- this module 575 MANDATORY-GROUPS { ds0ConfigGroup } 577 OBJECT dsx0RobbedBitSignalling 578 MIN-ACCESS read-only 579 DESCRIPTION 580 "The ability to set RBS is not required." 582 OBJECT dsx0CircuitIdentifier 583 MIN-ACCESS read-only 584 DESCRIPTION 585 "The ability to set the circuit identifier is not 586 required." 588 OBJECT dsx0IdleCode 589 MIN-ACCESS read-only 590 DESCRIPTION 591 "The ability to set the idle code is not 592 required." 594 OBJECT dsx0SeizedCode 595 MIN-ACCESS read-only 596 DESCRIPTION 597 "The ability to set the seized code is not 598 required." 600 OBJECT dsx0TransmitCodesEnable 601 MIN-ACCESS read-only 602 DESCRIPTION 603 "The ability to enable and disable the 604 transmitting of idle and seized codes is not 605 required." 607 ::= { ds0Compliances 1 } 609 -- units of conformance 611 ds0ConfigGroup OBJECT-GROUP 612 OBJECTS { dsx0Ds0ChannelNumber, 613 dsx0RobbedBitSignalling, 614 dsx0CircuitIdentifier, 615 dsx0IdleCode, 616 dsx0SeizedCode, 617 dsx0ReceivedCode, 618 dsx0TransmitCodesEnable, 619 dsx0Ds0BundleMappedIfIndex, 620 dsx0ChanMappedIfIndex } 621 STATUS current 622 DESCRIPTION 623 "A collection of objects providing configuration 624 information applicable to all DS0 interfaces." 625 ::= { ds0Groups 1 } 627 END 629 6. Object Definitions for DS0 Bundle 631 DS0BUNDLE-MIB DEFINITIONS ::= BEGIN 633 IMPORTS 634 MODULE-IDENTITY, OBJECT-TYPE, 635 transmission FROM SNMPv2-SMI 636 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF 637 RowStatus, TestAndIncr FROM SNMPv2-TC 638 ifIndex, InterfaceIndex FROM IF-MIB; 640 -- This is the MIB module for the DS0Bundle Interface 641 -- objects. 643 ds0Bundle MODULE-IDENTITY 644 LAST-UPDATED "9805242010Z" 645 ORGANIZATION "IETF Trunk MIB Working Group" 646 CONTACT-INFO 647 " David Fowler 649 Postal: Newbridge Networks Corporation 650 600 March Road 651 Kanata, Ontario, Canada K2K 2E6 653 Tel: +1 613 591 3600 654 Fax: +1 613 599 3619 656 E-mail: davef@newbridge.com" 657 DESCRIPTION 658 "The MIB module to describe 659 DS0 Bundle interfaces objects." 660 REVISION "9805242010Z" 661 DESCRIPTION 662 "Initial version of the DS0BUNDLE-MIB." 664 ::= { transmission 82 } 666 -- 667 -- The DS0 Bundle Config Group 668 -- 669 -- Implementation of this group is mandatory for all 670 -- systems that use a DS0Bundle Interface. 671 -- 672 -- The DS0 Bundle Config Group consists of one table: 673 -- DS0 Bundle Table 675 -- The DS0 Bundle Table 677 dsx0BundleNextIndex OBJECT-TYPE 678 SYNTAX TestAndIncr 679 MAX-ACCESS read-write 680 STATUS current 681 DESCRIPTION 682 "This object is used to assist the manager in 683 selecting a value for dsx0BundleIndex. Because 684 this object is of syntax TestAndIncr (see the 685 SNMPv2-TC document, RFC 1903) it can also be used 686 to avoid race conditions with multiple managers 687 trying to create rows in the table. 689 If the result of the SET for dsx0BundleNextIndex 690 is not success, this means the value has been 691 changed from index (i.e. another manager used the 692 value), so a new value is required. 694 The algorithm is: 695 done = false 696 while done == false 697 index = GET (dsx0BundleNextIndex.0) 698 SET (dsx0BundleNextIndex.0=index) 699 if (set failed) 700 done = false 701 else 702 SET(dsx0BundleRowStatus.index=createAndGo) 703 if (set failed) 704 done = false 705 else 706 done = true 707 other error handling" 708 ::= { ds0Bundle 2 } 710 dsx0BundleTable OBJECT-TYPE 711 SYNTAX SEQUENCE OF Dsx0BundleEntry 712 MAX-ACCESS not-accessible 713 STATUS current 714 DESCRIPTION 715 "There is an row in this table for each ds0Bundle 716 in the system. This table can be used to 717 (indirectly) create rows in the ifTable with 718 ifType = 'ds0Bundle(82)'." 719 ::= { ds0Bundle 3 } 721 dsx0BundleEntry OBJECT-TYPE 722 SYNTAX Dsx0BundleEntry 723 MAX-ACCESS not-accessible 724 STATUS current 725 DESCRIPTION 726 "There is a row in entry in this table for each 727 ds0Bundle interface." 728 INDEX { dsx0BundleIndex } 729 ::= { dsx0BundleTable 1 } 731 Dsx0BundleEntry ::= 732 SEQUENCE { 733 dsx0BundleIndex INTEGER, 734 dsx0BundleIfIndex InterfaceIndex, 735 dsx0BundleRowStatus RowStatus 736 } 738 dsx0BundleIndex OBJECT-TYPE 739 SYNTAX INTEGER (0..2147483647) 740 MAX-ACCESS not-accessible 741 STATUS current 742 DESCRIPTION 743 "A unique identifier for a ds0Bundle. This is not 744 the same value as ifIndex. This table is not 745 indexed by ifIndex because the manager has to 746 choose the index in a createable row and the agent 747 must be allowed to select ifIndex values." 748 ::= { dsx0BundleEntry 1 } 750 dsx0BundleIfIndex OBJECT-TYPE 751 SYNTAX InterfaceIndex 752 MAX-ACCESS read-only 753 STATUS current 754 DESCRIPTION 755 "The ifIndex value the agent selected for the 756 (new) ds0Bundle interface." 757 ::= { dsx0BundleEntry 2 } 759 dsx0BundleRowStatus OBJECT-TYPE 760 SYNTAX RowStatus 761 MAX-ACCESS read-create 762 STATUS current 763 DESCRIPTION 764 "This object is used to create and delete rows in 765 this table." 766 ::= { dsx0BundleEntry 3 } 768 -- The DS0 Bonding Group 770 -- Implementation of this group is optional for all 771 -- systems that use a DS0Bundle Interface. 773 -- The DS0 Bonding Group consists of one table: 774 -- DS0 Bonding Table 776 -- The DS0 Bonding Table 778 dsx0BondingTable OBJECT-TYPE 779 SYNTAX SEQUENCE OF Dsx0BondingEntry 780 MAX-ACCESS not-accessible 781 STATUS current 782 DESCRIPTION 783 "The DS0 Bonding table." 784 ::= { ds0Bundle 1 } 786 dsx0BondingEntry OBJECT-TYPE 787 SYNTAX Dsx0BondingEntry 788 MAX-ACCESS not-accessible 789 STATUS current 790 DESCRIPTION 791 "An entry in the DS0 Bonding table. There is a 792 row in this table for each DS0Bundle interface." 793 INDEX { ifIndex } 794 ::= { dsx0BondingTable 1 } 796 Dsx0BondingEntry ::= 797 SEQUENCE { 798 dsx0BondMode INTEGER, 799 dsx0BondStatus INTEGER, 800 dsx0BondRowStatus RowStatus 802 } 804 dsx0BondMode OBJECT-TYPE 805 SYNTAX INTEGER { 806 none(1), 807 other(2), 808 mode0(3), 809 mode1(4), 810 mode2(5), 811 mode3(6) 812 } 813 MAX-ACCESS read-create 814 STATUS current 815 DESCRIPTION 816 "This object indicates which BONDing mode is used, 817 if any, for a ds0Bundle. Mode0 provides parameter 818 and number exchange with no synchronization. Mode 819 1 provides parameter and number exchange. Mode 1 820 also provides synchronization during 821 initialization but does not include inband 822 monitoring. Mode 2 provides all of the above plus 823 inband monitoring. Mode 2 also steals 1/64th of 824 the bandwidth of each channel (thus not supporting 825 n x 56/64 kbit/s data channels for most values of 826 n). Mode 3 provides all of the above, but also 827 provides n x 56/64 kbit/s data channels. Most 828 common implementations of Mode 3 add an extra 829 channel to support the inband monitoring overhead. 830 ModeNone should be used when the interface is not 831 performing bandwidth-on-demand." 832 ::= { dsx0BondingEntry 1 } 834 dsx0BondStatus OBJECT-TYPE 835 SYNTAX INTEGER { 836 idle(1), 837 callSetup(2), 838 dataTransfer(3) 839 } 840 MAX-ACCESS read-only 841 STATUS current 842 DESCRIPTION 843 "This object indicates the current status of the 844 bonding call using this ds0Bundle. idle(1) should 845 be used when the bonding mode is set to none(1)." 846 ::= { dsx0BondingEntry 2 } 848 dsx0BondRowStatus OBJECT-TYPE 849 SYNTAX RowStatus 850 MAX-ACCESS read-create 851 STATUS current 852 DESCRIPTION 853 "This object is used to create new rows in this 854 table, modify existing rows, and to delete 855 existing rows." 856 ::= { dsx0BondingEntry 3 } 858 -- conformance information 860 ds0BundleConformance OBJECT IDENTIFIER ::= { ds0Bundle 4 } 862 ds0BundleGroups OBJECT IDENTIFIER 863 ::= { ds0BundleConformance 1 } 865 ds0BundleCompliances OBJECT IDENTIFIER 866 ::= { ds0BundleConformance 2 } 868 -- compliance statements 870 ds0BundleCompliance MODULE-COMPLIANCE 871 STATUS current 872 DESCRIPTION 873 "The compliance statement for DS0Bundle 874 interfaces." 875 MODULE -- this module 876 MANDATORY-GROUPS {ds0BundleConfigGroup } 878 GROUP ds0BondingGroup 879 DESCRIPTION 880 "Implementation of this group is optional for all 881 systems that attach to a DS0Bundle Interface." 883 OBJECT dsx0BundleRowStatus 884 SYNTAX INTEGER { 885 active(1), 886 createAndGo(4), 887 destroy(6) 889 } 890 MIN-ACCESS read-only 891 DESCRIPTION 892 "The agent is not required to support a SET 893 operation to this object, and only three of the 894 six enumerated values for the RowStatus textual 895 convention need be supported. Only supporting 896 createAndGo for a creation process prevents the 897 manager from creating an inactive row in the 898 ds0BundleTable. INactive rows in the 899 ds0BundleTable do not make sense." 900 ::= { ds0BundleCompliances 1 } 902 -- units of conformance 904 ds0BondingGroup OBJECT-GROUP 905 OBJECTS { dsx0BondMode, 906 dsx0BondStatus, 907 dsx0BondRowStatus } 908 STATUS current 909 DESCRIPTION 910 "A collection of objects providing 911 configuration information applicable 912 to all DS0 interfaces." 913 ::= { ds0BundleGroups 1 } 915 ds0BundleConfigGroup OBJECT-GROUP 916 OBJECTS { dsx0BundleNextIndex, 917 dsx0BundleIfIndex, 918 dsx0BundleRowStatus } 919 STATUS current 920 DESCRIPTION 921 "A collection of objects providing the ability to 922 create a new ds0Bundle in the ifTable." 923 ::= { ds0BundleGroups 2 } 924 END 926 7. Acknowledgments 928 This document was produced by the Trunk MIB Working Group: 930 8. References 932 [1] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 933 S. Waldbusser, "Structure of Management Information for Version 934 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1902, 935 January 1996. 937 [2] McCloghrie, K., and M. Rose, Editors, "Management 938 Information Base for Network Management of TCP/IP-based 939 internets: MIB-II", STD 17, RFC 1213, Hughes LAN Systems, 940 Performance Systems International, March 1991. 942 [3] Case, J., Fedor, M., Schoffstall, M., and J. Davin. " A Simple 943 Network Management Protocol (SNMP)", STD 15, RFC 1157, SNMP 944 Research, Performance Systems International, MIT Lab for 945 Computer Science, May 1990. 947 [4] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 948 S. Waldbusser, "Protocol Operations for Version 2 of the Simple 949 Network Management Protocol (SNMPv2)", RFC 1905, January 1996. 951 [5] McCloghrie, K. and F. Kastenholz, "Evolution of the 952 Interfaces Group of MIB-II", RFC 2233, Cisco, 953 FTP Software, November 1997. 955 [6] Fowler, D., "Definitions of Managed Objects for the 956 DS1, E1, DS2 and E2 Interface Types", 957 draft-ietf-trunkmib-ds1-mib-08.txt, Newbridge Networks, 958 February 1998. 960 [7] Fowler, D., "Definitions of Managed Objects 961 for the DS3/E3 Interface Type", 962 draft-ietf-trunkmib-ds3-mib-08.txt, Newbridge Networks, 963 February 1998. 965 [8] Brown, T., and Tesink, K., "Definitions of Managed Objects 966 for the SONET/SDH Interface Type", 967 draft-ietf-atommib-sonetng-02.txt, Bell Communications 968 Research, August 1997. 970 [9] Sharp, H. (Editor), "Interoperability Requirements for Nx56/64 971 kbit/s Calls", BONDING Spec Version 1.0, BONDING Consortium, 972 Sept 1992. 974 9. Security Considerations 976 This MIB adds no security issues that are not raised by SNMP itself. 977 As a Network Management Protocol, SNMP is capable of changing the 978 configuration of a system, of denial of service attacks through 979 requiring the agent to respond to its messages, and displaying values 980 of system counters and configuration settings in the clear where an 981 adversary might read them. This, however, is not in itself a threat: 982 this is the function of the protocol, but could be misused. Such 983 misuse can be avoided or minimized through SNMP Security. 985 Setting the following objects to an inappropriate value can cause 986 loss of traffic. In the case of dsx0RobbedBitSignalling, for 987 example, the nature of the traffic flowing on the DS0 can be 988 affected. 989 dsx0RobbedBitSignalling 990 dsx0IdleCode 991 dsx0SeizedCode 992 dsx0TransmitCodesEnable 993 dsx0BundleRowStatus 994 dsx0BondMode 995 dsx0BondRowStatus 997 Setting the following objects is mischievous, but not harmful to 998 traffic. 999 dsx0CircuitIdentifier 1000 dsx0BundleNextIndex 1002 10. Authors' Addresses 1004 David Fowler 1005 Newbridge Networks 1006 600 March Road 1007 Kanata, Ontario, Canada K2K 2E6 1009 Phone: (613) 599-3600, ext 6559 1011 EMail: davef@newbridge.com 1013 Table of Contents 1015 1 The SNMPv2 Network Management Framework ...................... 2 1016 2 Objects ...................................................... 3 1017 3 Overview ..................................................... 4 1018 3.1 BONDing Terminology ........................................ 4 1019 3.2 Use of ifTable for DS0 Layer ............................... 4 1020 3.3 Using ifStackTable ......................................... 5 1021 3.3.1 Usage of Channelization for DS3, DS1, DS0 ................ 7 1022 3.3.2 Usage of ifIndex Mapping for DS0Bundle ................... 8 1023 4 Overview of the MIB .......................................... 9 1024 4.1 DS0 MIB .................................................... 9 1025 4.2 DS0Bundle MIB .............................................. 9 1026 5 Object Definitions for DS0 ................................... 10 1027 5.1 The DS0 Config Group ....................................... 11 1028 5.1.1 The DS0 Configuration Table .............................. 11 1029 5.1.2 The DS0 Channel Mapping Table ............................ 14 1030 6 Object Definitions for DS0 Bundle ............................ 18 1031 6.1 The DS0 Bundle Config Group ................................ 19 1032 6.1.1 The DS0 Bundle Table ..................................... 19 1033 6.2 The DS0 Bonding Group ...................................... 21 1034 6.2.1 The DS0 Bonding Table .................................... 21 1035 7 Acknowledgments .............................................. 24 1036 8 References ................................................... 25 1037 9 Security Considerations ...................................... 26 1038 10 Authors' Addresses .......................................... 26