idnits 2.17.1 draft-ietf-diffserv-mib-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. 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 ** 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 is more than 15 pages and seems to lack a Table of Contents. == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 65 longer pages, the longest (page 2) being 61 lines == It seems as if not all pages are separated by form feeds - found 0 form feeds but 67 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an Introduction section. (A line matching the expected section header was found, but with an unexpected indentation: ' 3.1. Overview' ) ** The document seems to lack a Security Considerations section. (A line matching the expected section header was found, but with an unexpected indentation: ' 6. Security Considerations' ) ** 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 an Authors' Addresses Section. ** There are 14 instances of too long lines in the document, the longest one being 11 characters in excess of 72. ** The abstract seems to contain references ([EF], [ActQMgmt], [15], [2], [16], [3], [Model], [Architecture], [4], [5], [6], [7], [AF], [8], [9], [IFMIB], [INETADDR], [10], [11], [DSPIB], [12], [INETADDRESS], [DSCP], [13], [14], [1]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 421: '... packet counters MUST be used. For in...' RFC 2119 keyword, line 423: '...second, 32-bit packet counters MUST be...' RFC 2119 keyword, line 424: '...t octet counters MUST be used. For in...' RFC 2119 keyword, line 426: '...ND 64-bit octet counters MUST be used....' Miscellaneous warnings: ---------------------------------------------------------------------------- -- 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.) -- Couldn't find a document date in the document -- date freshness check skipped. 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 section? 'Architecture' on line 2900 looks like a reference -- Missing reference section? 'Model' on line 2911 looks like a reference -- Missing reference section? '1' on line 2802 looks like a reference -- Missing reference section? '2' on line 2807 looks like a reference -- Missing reference section? '3' on line 2812 looks like a reference -- Missing reference section? '4' on line 2816 looks like a reference -- Missing reference section? '5' on line 2820 looks like a reference -- Missing reference section? '6' on line 2827 looks like a reference -- Missing reference section? '7' on line 2833 looks like a reference -- Missing reference section? '8' on line 2839 looks like a reference -- Missing reference section? '9' on line 2845 looks like a reference -- Missing reference section? '10' on line 2854 looks like a reference -- Missing reference section? '11' on line 2860 looks like a reference -- Missing reference section? '12' on line 2866 looks like a reference -- Missing reference section? '13' on line 2871 looks like a reference -- Missing reference section? '14' on line 2877 looks like a reference -- Missing reference section? '15' on line 2881 looks like a reference -- Missing reference section? '16' on line 2887 looks like a reference -- Missing reference section? 'DSCP' on line 2893 looks like a reference -- Missing reference section? 'INETADDR' on line 227 looks like a reference -- Missing reference section? 'ActQMgmt' on line 2930 looks like a reference -- Missing reference section? 'IFMIB' on line 2915 looks like a reference -- Missing reference section? 'AF' on line 2905 looks like a reference -- Missing reference section? 'EF' on line 2908 looks like a reference -- Missing reference section? 'DSPIB' on line 2919 looks like a reference -- Missing reference section? 'INETADDRESS' on line 2924 looks like a reference Summary: 12 errors (**), 0 flaws (~~), 3 warnings (==), 28 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force F. Baker 3 Diffserv Working Group Cisco Systems 4 INTERNET-DRAFT K. Chan 5 Expires:September 2000 Nortel Networks 6 A. Smith 7 Extreme Networks 9 Management Information Base for the 10 Differentiated Services Architecture 12 draft-ietf-diffserv-mib-02.txt 14 Abstract 16 This memo describes a proposed MIB for the Differentiated 17 Services Architecture [Architecture] and described by the 18 Differentiated Services Router Conceptual Model [Model]. 20 Currently total agreement on content of this MIB has not been 21 reached, especially in the dropping and queueing mechanism 22 attributes. Further discussion on these topics are required 23 for finalizing this memo. 25 1. Status of this Memo 27 This document is an Internet-Draft and is in full conformance 28 with all provisions of Section 10 of RFC 2026. Internet-Drafts 29 are working documents of the Internet Engineering Task Force 30 (IETF), its areas, and its working groups. Note that other 31 groups may also distribute working documents as Internet- 32 Drafts. 34 Internet-Drafts are draft documents valid for a maximum of six 35 months and may be updated, replaced, or obsoleted by other 36 documents at any time. It is inappropriate to use Internet 37 Drafts as reference material or to cite them other than as 38 "work in progress." 40 The list of current Internet-Drafts can be accessed at 41 http://www.ietf.org/ietf/1id-abstracts.txt 43 The list of Internet-Draft Shadow Directories can be accessed 44 at http://www.ietf.org/shadow.html. 46 This particular draft is being developed in the Differentiated 47 Services Working Group. Discussion of it therefore belongs on 48 that list. The charter for Differentiated Services may be 50 Draft Differentiated Services MIB March 2000 52 found at http://www.ietf.org/html.charters/diffserv- 53 charter.html 55 2. The SNMP Management Framework 57 The SNMP Management Framework presently consists of five major 58 components: 60 o An overall architecture, described in RFC 2571 [1]. 62 o Mechanisms for describing and naming objects and 63 events for the purpose of management. The first 64 version of this Structure of Management Information 65 (SMI) is called SMIv1 and described in RFC 1155 [2], 66 RFC 1212 [3] and RFC 1215 [4]. The second version, 67 called SMIv2, is described in RFC 2578 [5], RFC 2579 68 [6] and RFC 2580 [7]. 70 o Message protocols for transferring management 71 information. The first version of the SNMP message 72 protocol is called SNMPv1 and described in RFC 1157 73 [8]. A second version of the SNMP message protocol, 74 which is not an Internet standards track protocol, is 75 called SNMPv2c and described in RFC 1901 [9] and RFC 76 1906 [10]. The third version of the message protocol 77 is called SNMPv3 and described in RFC 1906 [10], RFC 78 2572 [11] and RFC 2574 [12]. 80 o Protocol operations for accessing management 81 information. The first set of protocol operations and 82 associated PDU formats is described in RFC 1157 [8]. A 83 second set of protocol operations and associated PDU 84 formats is described in RFC 1905 [13]. 86 o A set of fundamental applications described in RFC 87 2573 [14] and the view-based access control mechanism 88 described in RFC 2575 [15]. 90 A more detailed introduction to the current SNMP Management 91 Framework can be found in RFC 2570 [16]. 93 Managed objects are accessed via a virtual information store, 94 termed the Management Information Base or MIB. Objects in the 95 MIB are defined using the mechanisms defined in the SMI. 97 This memo specifies a MIB module that is compliant to the 98 SMIv2. A MIB conforming to the SMIv1 can be produced through 100 Draft Differentiated Services MIB March 2000 102 the appropriate translations. The resulting translated MIB 103 must be semantically equivalent, except where objects or 104 events are omitted because no translation is possible (use of 105 Counter64). Some machine-readable information in SMIv2 will be 106 converted into textual descriptions in SMIv1 during the 107 translation process. However, this loss of machine readable 108 information is not considered to change the semantics of the 109 MIB. 111 Draft Differentiated Services MIB March 2000 113 3. Structure of this MIB 115 This MIB is designed according to the Differentiated Services 116 implementation conceptual model documented in [Model]. 118 3.1. Overview 120 In principle, if one were to construct a network entirely out 121 of two-port routers (in appropriate places connected by LANs 122 or similar media), then it would be necessary for each router 123 to perform exactly four QoS control functions on traffic in 124 each direction: 126 - Classify each message according to some set of rules 128 - In edge devices, determine whether the data stream the 129 message is part of is within or outside its rate 131 - Perform some set of resulting actions, minimally 132 including applying a drop policy appropriate to the 133 classification and queue in question, and in edge devices 134 perhaps additionally marking the traffic with a 135 Differentiated Services Code Point (DSCP) as defined in 136 [DSCP]. 138 - Enqueue the traffic for output in the appropriate queue, 139 which may shape the traffic or simply forward it with 140 some minimum rate or maximum latency. 142 If we build the network out of N-port routers, we expect the 143 behavior of the network to be identical. We are forced, 144 therefore, to provide essentially the same set of functions on 145 the ingress port of a router as on the egress port of a 146 router. Some interfaces will be "edge" interfaces and some 147 will be "interior" to the Differentiated Services domain. The 148 one point of difference between an ingress and an egress 149 interface is that all traffic on an egress interface is 150 queued, while traffic on an ingress interface will typically 151 be queued only for shaping purposes. 153 Hence, in this MIB, we model them identically, making the 154 distinction between ingress and egress interfaces an index 155 variable. 157 The MIB therefore contains the following elements: 158 - IP Six Tuple Multi-Field Classification Table 159 - Classifier Table 161 Draft Differentiated Services MIB March 2000 163 - Meter Table 164 - Action and Action Type Tables 165 - Queue Set, Queue, and Queue Measurement Tables 167 3.2. Classifier Table 169 The classifier table indicates how traffic is sorted out. It 170 identifies separable classes of traffic, by reference to an 171 appropriate classifier, which may be anything from an 172 individual micro-flow to aggregates identified by DSCP. It 173 then sends these classified streams to an appropriate meter or 174 action. In a multi-stage meter, sub-classes of traffic may be 175 sent to different stages. For example, in AF1, AF11 traffic 176 might be sent to the first meter, AF12 traffic might be sent 177 to the second, and AF13 traffic sent to the second meter 178 stage's failure action. 180 The structure of the classifier table is a sequence of 181 unambiguous tests. Within each step in the sequence, it should 182 not be important in which order - if order is present at all - 183 the tests are made. This is to facilitate optimized 184 implementations such as index trees. Sequence is present in 185 order to resolve ambiguity. 187 For example, one might want first to disallow certain 188 applications from using the network at all, or to classify 189 some individual traffic streams that are not diff-serv marked. 190 Traffic that fails those tests might then be inspected for a 191 DSCP. "Then" implies sequence, and the sequence must be 192 somehow specified. 194 An important form of classifier is "everything else". The 195 final stage of the classifier should be configured to be 196 complete, as the result of an incomplete classifier is not 197 necessarily deterministic. 199 The actual classifier definition is referenced via a 200 RowPointer, this enable the use of any sort of classification 201 table that one might wish to design, public or proprietary. 202 That classifier table need not be found in this MIB. When 203 ambiguity is present, we disambiguate by explicitly ordering 204 the application of classification rules. 206 The classifiers specified here are at the per interface level, 207 they may be derived from some higher level policies, but such 208 discussion is out- side the scope of this document. 210 Draft Differentiated Services MIB March 2000 212 3.2.1. IP Six Tuple Classifier Table 214 This MIB currently specifies the IP Six Tuple Classifier, used 215 for IP traffic classification. Entry of this Classifier Table 216 is referenced from the entries of the diffServClassifierTable 217 via a RowPointer, namely diffServClassifierPattern attribute 218 of diffServClassifierEntry object. 220 The Behavior Aggregate (BA) Classifier is a simple form of the 221 IP Six Tuple Classifier. It is represented by having the 222 diffServSixTupleClfrDscp attribute set to the desired DSCP, 223 and all other classification attributes set to match-all, the 224 default setting. 226 Each entry in the IP Six Tuple Classifier Table defines a 227 single Classifier, with the use of InetAddress [INETADDR] for 228 both IPv4 and IPv6 addressing. The use of IP Six Tuple 229 Classifiers is discussed in [Architecture] and abstract 230 examples of how they might be configured are provided in 231 [Model]. 233 3.3. Meter Table 235 A meter, according to the conceptual model, measures the rate 236 at which a stream of traffic passes it, compares it to some 237 set of thresholds, and produces some number (two or more) 238 potential results. A given message is said to "conform" to the 239 meter if at the time that the message is being looked at the 240 stream appears to be within the meter's limit rate. In the 241 MIB, the structure of SNMP makes it easiest to implement this 242 as a set of one or more simple pass/fail tests, which are 243 cascaded. It is to be understood that the meter in a Traffic 244 Control Block is therefore implemented as a set of if-then- 245 else constructs. 247 The concept of conformance to a meter bears a comment. The 248 concept applied in several rate-control architectures, 249 including ATM, Frame Relay, Integrated Services, and 250 Differentiated Services, is variously described as a "leaky 251 bucket" or a "token bucket". 253 A leaky bucket algorithm is primarily used for traffic 254 shaping: traffic theoretically departs from the switch at a 255 flat rate of one bit every so many time units, and in fact 256 departs in packets at a rate approximating that. It is also 257 possible to build multi-rate leaky buckets, in which traffic 259 Draft Differentiated Services MIB March 2000 261 departs from the switch at varying rates depending on recent 262 activity or inactivity. 264 A token bucket is used to measure the behavior of a peer's 265 leaky bucket, for verification purposes. It is, by definition, 266 a relationship 268 interval = burst/rate, or 269 rate = burst/interval 271 for some defined burst size, in bits, rate, in bits per 272 second, and time interval. Multi-rate token buckets (token 273 buckets with both a peak and a mean rate, and sometimes more 274 rates) are commonly used. In this case, the burst size for the 275 baseline traffic is conventionally referred to as the 276 "committed burst", and the time interval is as specified by 278 interval = committed burst/mean rate 280 but additional burst sizes (each an increment over its 281 predecessor) are defined, which are conventionally referred to 282 as "excess" burst sizes. The peak rate therefore equals the 283 sum of the burst sizes per interval. 285 A data stream is said to "conform" to a simple token bucket if 286 the switch receives at most the burst size in a given time 287 interval. In the multi-rate case, the traffic is said to 288 conform to the token bucket at a given level if its rate does 289 not exceed the sum of the relevant burst sizes in a given 290 interval. Received traffic pre-classified at one of the 291 "excess" rates (e.g., AF12 or AF13 traffic) is only compared 292 to the relevant excess buckets. 294 The fact that data is organized into variable length packets 295 introduces some uncertainty in this. For this reason, the 296 token bucket accepts a packet if any of its bits would have 297 been accepted, and "borrows" any excess capacity required from 298 that allotted to equivalently classified traffic in a previous 299 or subsequent interval. More information about this is 300 available in [Model]. 302 Multiple classes of traffic, as identified by the classifier 303 table, may be presented to the same meter. Imagine, for 304 example, that we desire to drop all traffic that uses any DSCP 305 that has not been publicly defined. A classifier entry might 306 exist for each such DSCP, shunting it to an "accepts 307 everything" meter, and dropping all traffic that conforms to 309 Draft Differentiated Services MIB March 2000 311 only that meter. 313 Clearly, it is necessary to identify what is to be done with 314 messages that conform to the meter, and with messages that do 315 not. It is also necessary for the meter to be arbitrarily 316 extensible, as some PHBs require the successive application of 317 an arbitrary number of meters. The approach taken in this 318 design is to have each meter indicate what action is to be 319 taken for conforming traffic, and what meter is to be used for 320 traffic which fails to conform. With the definition of a 321 special type of meter to which all traffic conforms, we now 322 have the necessary flexibility. 324 3.4. Action Table 326 Considerable discussion has taken place regarding the possible 327 actions. Suggested actions include "no action", "mark the 328 traffic", "drop the traffic, based on some algorithm", "shape 329 the traffic", "count it". This MIB attempts to make the 330 specification of the action flexible by using the Action Table 331 to organize one Action's relationship with the Meter element 332 before it, with the Queueing element following it, and with 333 other Action elements to allow multiple Actions be applied to 334 a single traffic stream. The parameters needed will depend on 335 the type of Action to be taken. Hence there are Action Tables 336 for the different Action Types. This MIB currently defines 337 parameters for: 1. Mark Action, 2. Count Action, 3. Drop 338 Action, 340 This flexibility allows additional Actions be specified in 341 future revisions of this MIB, or in other MIBs. And possible 342 usage of propietary Action without impact to the Actions 343 provided here. 345 The Mark Action is relatively straight forward. 347 For Count Action, when it is specified, it will always be 348 applied first, before any other type of Actions. For example, 349 when both Count and a Drop Action is specified, the Count 350 Action will always count the total counts of this traffic 351 stream, before any traffic gets dropped, even if the Action 352 entries are chained with the Drop Action first, before the 353 Count Action. There are counters in the Drop Actions to 354 indicate the ammount of traffic dropped, within the drop 355 context. 357 The Drop Actions require close relationship with queueing, 359 Draft Differentiated Services MIB March 2000 361 with detail as follows: 363 The Tail Drop Action requires the specification of a maximum 364 queue depth, at which point any traffic exceeding the maximum 365 queue depth gets discarded. 367 *Editor's Note Start* 368 There is still debates on what 369 attributes are needed and how they may be related to queueing. 370 The following is viewed as the complex description of how it 371 may be done. The following set of attributes and its 372 description may be simplified before this memo is finalized. 373 There is a more detail discussion of why these attributes are 374 required in [ActQMgmt]. 375 *Editor's Note End* 377 The Random Drop Action requires the specification of its drop 378 characteristic with the following parameters (drop 379 characteristic described using a plot with drop probability, 380 P, as Y axis, and average queue length, Q, as X axis): 381 1. Pmin and Qmin defines the start of the characteristic plot. 382 Normally Pmin=0, meaning with average queue length below 383 Qmin, there will be no drops. 384 2. Pmax and Qmax defines a "knee" on the plot, after which 385 point the drop probability become more progressive (greater 386 slope). 387 Qclip defines the average queue length at which all packets 388 will be dropped, probability = 1. Notice this is different 389 from Tail Drop because this uses average queue length. 390 It is possible for Qclip = Qmax, meaning when the average 391 queue length exceeds Qmax, all packets will be dropped. 392 3. The sampling interval and average weight parameters are used 393 for calculation of average queue. These parameters are 394 important because they can affect the behavior and outcome 395 of the drop process. They can also be very sensitive and 396 may have a wide range of possible values due to wide range 397 of link speeds, hence the use of real number format for 398 average weight. 400 Deterministic Drop Action can be viewed as a special case of 401 Random Drop with drop probability restricted to zero and one. 402 Hence Deterministic Drop Action can be described as follows: 403 1. Pmin = 0 and Pmax = 1. 2. Qmin = Qmax = Qclip indicating 404 the average queue length that drop occurs. 406 Draft Differentiated Services MIB March 2000 408 For the drop actions, each drop process specification is 409 associated with a queue. This allows multiple drop processes 410 (of same or different types) be associated with the same 411 queue, as different PHB implementation may require. This 412 setup allows the flexibility for Action specification, 413 including multiple sequential drop processes if necessary. 415 When counters are specified, two sizes of objects are defined. 416 These are defined in accordance with the method found in 417 [IFMIB]; both 32 and 64 bit counters are defined, with the 418 expectation that the 32 bit counter is simply the least 419 significant bits of the 64 bit counter. For interfaces that 420 operate at 20,000,000 (20 million) bits per second or less, 421 32-bit byte and packet counters MUST be used. For interfaces 422 that operate faster than 20,000,000 bits/second, and slower 423 than 650,000,000 bits/second, 32-bit packet counters MUST be 424 used and 64-bit octet counters MUST be used. For interfaces 425 that operate at 650,000,000 bits/second or faster, 64-bit 426 packet counters AND 64-bit octet counters MUST be used. 428 Multiple Actions can be chained using the ActionNext 429 attribute. The last Action's ActionNext attribute points to 430 the next TCB, normally a Queue Entry for the Queue element. 432 3.5. Queueing Element 434 The Queueing element consists of Queue Table and Queue Set 435 Table. With Queue Table containing relatively simple FIFO 436 queues. Using the Queue Set Table to allow flexibility in 437 constructing both simple and complex queueing hierarchies. 439 The queue entries in the Queue Table have simple attributes, 440 it includes a reference to which queue set the queue belongs 441 to, and a weight parameter. For Priority Queueing, the weight 442 parameter indicates the priority of this queue with respect to 443 all the other queues within the same queue set. A higher 444 weight value queue will be service first over a lower weight 445 value queue in the same queue set. For weighed queueing 446 algorithms, the weight parameter is a percentage number. With 447 the value of 1,000 meaning 1 percent, allowing fine control of 448 bandwidth allocation when needed. A higher weight value queue 449 will have higher probability of being service when compared to 450 a lower weight value queue in the same queue set. The weight 451 values for all the queues within a queue set must add up to 452 less than or equal to 100,000 (100%). Each queue is capable 453 of acting as a work-conserving queue, one which transmits as 455 Draft Differentiated Services MIB March 2000 457 rapidly as its weight allows, but guarantees to its class of 458 traffic, as a side effect of its weight, a minimum rate. Or 459 acting as a non-work-conserving "shaping" queue. 461 The entries in the Queue Set Table describes the attributes 462 common to all queues within the queue set. This includes the 463 dequeueing Method, or algorithm used amongst the queues in the 464 queue set. Currently, priority queueing, Weighed Fair 465 Queueing, Weighed Round Robin are listed as the possible 466 chooses, other methods/algorithms, e.g. Class Base Queueing, 467 can be added. 469 The rates, both minimum and maximum, are specified for the 470 queue set instead of per queue. This allows 472 A hierarchical tree of queue sets can be constructed using the 473 parent/child queue set concept. The attributes QSetParentId 474 and QSetWeight is used for this purpose, with QSetParentId 475 indicating the parent's QSetId, and QSetWeight used as the 476 child queue set's total weight amongst the queues in the 477 parent queue set. There can be multiple children queue set 478 under one parent queue set, with each child queue set looks 479 like a queue from the parent queue set's perspective. Hence 480 queue sets can be recursively defined, inter mixing with 481 queues at any level. 483 A mixed dequeue scheduling discipline can be built for an 484 interface. For example, with the following queues and queue 485 sets: 487 Q Parameters Q Set Parameters 489 QId QSetId QWeight Method MinRate ParentId QSetWeight 490 --- ------ ------- ------ ------- -------- ---------- 491 11 61 100 PQ 0 0 0 492 12 61 99 PQ 0 0 0 494 21 71 50,000 WFQ 10000 61 98 495 22 71 30,000 WFQ 10000 61 98 496 23 71 20,000 WFQ 10000 61 98 498 31 81 70,000 WRR 500 61 97 499 32 81 30,000 WRR 500 61 97 501 Notice in this example there are three queue sets: Queue Set 502 61 uses Priority Queueing, it have 2 child Queue Sets. Queue 503 Set 71 uses Weighed Fair Queueing with KBPS as RateUnit. 505 Draft Differentiated Services MIB March 2000 507 Queue Set 81 uses Weighed Round Robin with Packets/Sec as 508 RateUnit. 510 Queues 11, 12, queue sets 71 and 81 belongs to Queue Set 61. 511 Queues 21, 22, 23 belongs to Queue Set 71. Queues 31, 32 512 belongs to Queue Set 81. 514 All traffic in queue 11 will be serviced first, then all 515 traffic in queue 12 will be serviced second. After traffic in 516 queues 11 and 12 are serviced, queues 21, 22, 23 are serviced 517 among themselves in a fair queueing fashion, based on their 518 respective weight. After traffic in queues 21, 22, 23 are 519 serviced, queues 31, 32 are serviced among themselves in a 520 round robin fashion, based on their respective weight. Notice 521 Queue Set 71 uses KBPS RateUnit, resulting in bit/byte fair 522 queueing. Queue Set 81 uses Packet RateUnit, resulting in 523 packet fair queueing. 525 The rates for each queue can be derived: Queue 21 have 526 minimum rate of 50% of 10000 KBPS, 5000 KBPS. Queue 31 have 527 minimum rate of 70% of 500 Pkt/Sec, 350 Pkt/Sec. 529 Other types of scheduling algorithms can be used in the parent 530 or child queue sets, creating different queueing behaviors. 532 The queue set can also operate as a traffic shaper by using 533 the maximum rate attribute. 535 Chains of Queues/Queue Sets can be built using the NextTCB 536 attribute in Queue Set entry. 538 Multiple meters may direct their traffic to the same queue. 539 For example, the Assured Forwarding PHB suggests that all 540 traffic marked AF11, AF12, or AF13 be placed in the same queue 541 without reordering. 543 3.6. The use of RowPointer 545 RowPointer is a textual convention used to identify a 546 conceptual row in an SNMP Table by pointing to one of its 547 objects. In this MIB, it is used in two ways: to indicate 548 indirection, and to indicate succession. 550 When used for indirection, as in the Classifier table, the 551 idea is to allow other MIBs, including proprietary ones, to 552 identify new and arcane classifiers - MAC headers, IP4 and IP6 554 Draft Differentiated Services MIB March 2000 556 headers, BGP Communities, and all sorts of things. 558 When used for succession, it answers the question "what 559 happens next?". Rather than presume that the next table must 560 be as specified in the conceptual model and providing its 561 index, the RowPointer takes you to the MIB row representing 562 that thing. In the Meter Table, for example, the "FailNext" 563 RowPointer might take you to another meter, while the 564 "SucceedNext" RowPointer would take you to an action. 566 Draft Differentiated Services MIB March 2000 568 4. MIB Definition 570 DIFF-SERV-MIB DEFINITIONS ::= BEGIN 572 IMPORTS 573 Unsigned32, Counter32, Counter64, OBJECT-TYPE, 574 MODULE-IDENTITY, zeroDotZero, mib-2 FROM SNMPv2-SMI 575 TEXTUAL-CONVENTION, RowStatus, RowPointer, TestAndIncr 576 FROM SNMPv2-TC 577 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF 578 ifIndex FROM IF-MIB 579 DisplayString FROM RFC1213-MIB 580 InetAddressType, InetAddress FROM INET-ADDRESS-MIB; 582 diffServMib MODULE-IDENTITY 583 LAST-UPDATED "9907190100Z" -- Mon Jul 19 01:00:00 PDT 1999 584 ORGANIZATION "Cisco Systems" 585 CONTACT-INFO 586 " Fred Baker 587 Postal: 519 Lado Drive 588 Santa Barbara, California 93111 589 Tel: +1 (408) 526-4257 590 FAX: +1 (805) 681-0115 591 E-mail: fred@cisco.com 593 Kwok Ho Chan 594 Postal: 600 Technology Park Drive 595 Billerica, Massachusetts 01821, USA 596 Tel: +1 (978) 288-8175 597 FAX: +1 (978) 288-4690 598 E-mail: khchan@nortelnetworks.com 600 Andrew Smith 601 Postal: 3585 Monroe St. 602 Santa Clara, California 95051 603 Tel: +1 (408) 579 2821 604 FAX: +1 (408) 579 3000 605 E-mail: andrew@extremenetworks.com" 606 DESCRIPTION 607 "This MIB defines the objects necessary to manage a 608 device that uses the Differentiated Services 609 Architecture described in RFC 2475 and the Conceptual 610 Model for DiffServ Routers in draft-ietf-diffserv- 611 model-01.txt." 612 REVISION "9907190100Z" -- Mon Jul 19 01:00:00 PDT 1999 613 DESCRIPTION 614 "Initial version, published as RFC xxxx." 616 Draft Differentiated Services MIB March 2000 618 ::= { mib-2 12345 } -- anybody who uses this unassigned 619 -- number deserves the wrath of IANA 621 diffServObjects OBJECT IDENTIFIER ::= { diffServMib 1 } 622 diffServTables OBJECT IDENTIFIER ::= { diffServMib 2 } 623 diffServAugments OBJECT IDENTIFIER ::= { diffServMib 3 } 624 diffServMIBConformance OBJECT IDENTIFIER ::= { diffServMib 4 } 626 -- 627 -- These textual conventions has no effect on either the syntax 628 -- nor the semantics of any managed object. Objects defined 629 -- using this convention are always encoded by means of the 630 -- rules that define their primitive type. 631 -- 632 Dscp ::= TEXTUAL-CONVENTION 633 DISPLAY-HINT "d" 634 STATUS current 635 DESCRIPTION 636 "The code point used for discriminating a traffic 637 stream." 638 SYNTAX INTEGER (-1 | 0..63) 640 SixTupleClfrL4Port ::= TEXTUAL-CONVENTION 641 DISPLAY-HINT "d" 642 STATUS current 643 DESCRIPTION 644 "A value indicating a Layer-4 protocol port number." 645 SYNTAX INTEGER (0..65535) 647 Draft Differentiated Services MIB March 2000 649 -- 650 -- Classifiers 651 -- 652 -- The tools for IP Six Tuple Classification. 654 -- This object allows a configuring system to obtain a 655 -- unique value for diffServSixTupleClfrId for purposes 656 -- of configuration. 658 diffServSixTupleClfrUnique OBJECT-TYPE 659 SYNTAX TestAndIncr 660 MAX-ACCESS read-write 661 STATUS current 662 DESCRIPTION 663 "The diffServSixTupleClfrUnique object yields a unique new 664 value for diffServSixTupleClfrId when read and subsequently 665 set. This value must be tested for uniqueness." 666 ::= { diffServObjects 1 } 668 diffServSixTupleClfrTable OBJECT-TYPE 669 SYNTAX SEQUENCE OF DiffServSixTupleClfrEntry 670 MAX-ACCESS not-accessible 671 STATUS current 672 DESCRIPTION 673 "A table of IP Six Tuple Classifier entries that a 674 system may use to identify traffic." 675 ::= { diffServTables 1 } 677 diffServSixTupleClfrEntry OBJECT-TYPE 678 SYNTAX DiffServSixTupleClfrEntry 679 MAX-ACCESS not-accessible 680 STATUS current 681 DESCRIPTION 682 "An IP Six Tuple Classifier entry describes a single 683 classifier." 684 INDEX { diffServSixTupleClfrId } 685 ::= { diffServSixTupleClfrTable 1 } 687 DiffServSixTupleClfrEntry ::= SEQUENCE { 688 diffServSixTupleClfrId Unsigned32, 689 diffServSixTupleClfrAddrType InetAddressType, 690 diffServSixTupleClfrDstAddr InetAddress, 691 diffServSixTupleClfrDstAddrMask InetAddress, 692 diffServSixTupleClfrSrcAddr InetAddress, 693 diffServSixTupleClfrSrcAddrMask InetAddress, 694 diffServSixTupleClfrDscp Dscp, 695 diffServSixTupleClfrProtocol INTEGER, 697 Draft Differentiated Services MIB March 2000 699 diffServSixTupleClfrDstL4PortMin SixTupleClfrL4Port, 700 diffServSixTupleClfrDstL4PortMax SixTupleClfrL4Port, 701 diffServSixTupleClfrSrcL4PortMin SixTupleClfrL4Port, 702 diffServSixTupleClfrSrcL4PortMax SixTupleClfrL4Port, 703 diffServSixTupleClfrStatus RowStatus 704 } 706 diffServSixTupleClfrId OBJECT-TYPE 707 SYNTAX Unsigned32 (1..2147483647) 708 MAX-ACCESS not-accessible 709 STATUS current 710 DESCRIPTION 711 "A unique id for the classifier. This object is meant 712 to be pointed to by a RowPointer from other tables, 713 such as the diffServClassifierPattern." 714 ::= { diffServSixTupleClfrEntry 1 } 716 diffServSixTupleClfrAddrType OBJECT-TYPE 717 SYNTAX InetAddressType 718 MAX-ACCESS read-write 719 STATUS current 720 DESCRIPTION 721 "The type of IP address used by this classifier entry." 722 ::= { diffServSixTupleClfrEntry 2 } 724 diffServSixTupleClfrDstAddr OBJECT-TYPE 725 SYNTAX InetAddress 726 MAX-ACCESS read-write 727 STATUS current 728 DESCRIPTION 729 "The IP address to match against the packet's 730 destination IP address." 731 ::= { diffServSixTupleClfrEntry 3 } 733 diffServSixTupleClfrDstAddrMask OBJECT-TYPE 734 SYNTAX InetAddress 735 MAX-ACCESS read-write 736 STATUS current 737 DESCRIPTION 738 "A mask for the matching of the destination IP address. 739 A zero bit in the mask means that the corresponding bit 740 in the address always matches." 741 DEFVAL {0} 742 ::= { diffServSixTupleClfrEntry 4 } 744 diffServSixTupleClfrSrcAddr OBJECT-TYPE 745 SYNTAX InetAddress 747 Draft Differentiated Services MIB March 2000 749 MAX-ACCESS read-write 750 STATUS current 751 DESCRIPTION 752 "The IP address to match against the source IP address 753 of each packet." 754 ::= { diffServSixTupleClfrEntry 5 } 756 diffServSixTupleClfrSrcAddrMask OBJECT-TYPE 757 SYNTAX InetAddress 758 MAX-ACCESS read-write 759 STATUS current 760 DESCRIPTION 761 "A mask for the matching of the source IP address. A 762 zero bit in the mask means that the corresponding bit 763 in the address always matches." 764 DEFVAL {0} 765 ::= { diffServSixTupleClfrEntry 6 } 767 diffServSixTupleClfrDscp OBJECT-TYPE 768 SYNTAX Dscp 769 MAX-ACCESS read-write 770 STATUS current 771 DESCRIPTION 772 "The value that the DSCP in the packet must have to 773 match this entry. A value of -1 indicates that a 774 specific DSCP value has not been defined and thus all 775 DSCP values are considered a match." 776 DEFVAL {-1} 777 ::= { diffServSixTupleClfrEntry 7 } 779 diffServSixTupleClfrProtocol OBJECT-TYPE 780 SYNTAX INTEGER (0..255) 781 MAX-ACCESS read-write 782 STATUS current 783 DESCRIPTION 784 "The IP protocol to match against the IPv4 protocol 785 number in the packet. A value of zero means match all." 786 DEFVAL {0} 787 ::= { diffServSixTupleClfrEntry 8 } 789 diffServSixTupleClfrDstL4PortMin OBJECT-TYPE 790 SYNTAX SixTupleClfrL4Port 791 MAX-ACCESS read-create 792 STATUS current 793 DESCRIPTION 794 "The minimum value that the layer-4 destination port 795 number in the packet must have in order to match this 797 Draft Differentiated Services MIB March 2000 799 classifier entry." 800 DEFVAL {0} 801 ::= { diffServSixTupleClfrEntry 9 } 803 diffServSixTupleClfrDstL4PortMax OBJECT-TYPE 804 SYNTAX SixTupleClfrL4Port 805 MAX-ACCESS read-write 806 STATUS current 807 DESCRIPTION 808 "The maximum value that the layer-4 destination port 809 number in the packet must have in order to match this 810 classifier entry. This value must be equal to or 811 greater that the value specified for this entry in 812 diffServSixTupleClfrDstL4PortMin." 813 DEFVAL {65535} 814 ::= { diffServSixTupleClfrEntry 10 } 816 diffServSixTupleClfrSrcL4PortMin OBJECT-TYPE 817 SYNTAX SixTupleClfrL4Port 818 MAX-ACCESS read-write 819 STATUS current 820 DESCRIPTION 821 "The minimum value that the layer-4 source port number 822 in the packet must have in order to match this 823 classifier entry." 824 DEFVAL {0} 825 ::= { diffServSixTupleClfrEntry 11 } 827 diffServSixTupleClfrSrcL4PortMax OBJECT-TYPE 828 SYNTAX SixTupleClfrL4Port 829 MAX-ACCESS read-write 830 STATUS current 831 DESCRIPTION 832 "The maximum value that the layer-4 source port number 833 in the packet must have in oder to match this 834 classifier entry. This value must be equal to or 835 greater that the value specified for this entry in 836 dsSixTupleIpSrcL4PortMin." 837 DEFVAL {65535} 838 ::= { diffServSixTupleClfrEntry 12 } 840 diffServSixTupleClfrStatus OBJECT-TYPE 841 SYNTAX RowStatus 842 MAX-ACCESS read-create 843 STATUS current 844 DESCRIPTION 845 "The RowStatus variable controls the activation, 847 Draft Differentiated Services MIB March 2000 849 deactivation, or deletion of a classifier. Any writable 850 variable may be modified whether the row is active or 851 notInService." 852 ::= { diffServSixTupleClfrEntry 13 } 854 -- Classifier Table 855 -- This object allows a configuring system to obtain a 856 -- unique value for diffServClassifierNumber for purposes of 857 -- configuration 859 diffServClassifierUnique OBJECT-TYPE 860 SYNTAX TestAndIncr 861 MAX-ACCESS read-write 862 STATUS current 863 DESCRIPTION 864 "The diffServClassifierUnique object yields a unique 865 new value for diffServClassifierId when read and 866 subsequently set. This value must be tested for 867 uniqueness." 868 ::= { diffServObjects 2 } 870 -- The Classifier Table allows us to enumerate the relationship 871 -- between arbitrary classifiers and the meters which apply 872 -- to classified streams. 874 diffServClassifierTable OBJECT-TYPE 875 SYNTAX SEQUENCE OF DiffServClassifierEntry 876 MAX-ACCESS not-accessible 877 STATUS current 878 DESCRIPTION 879 "The classifier table defines the classifiers that a 880 system applies to incoming traffic. Specific 881 classifiers are defined by RowPointers in this table 882 which identify entries in classifier tables of specific 883 type, e.g. Multi-field classifiers for IP are defined 884 in diffServSixTupleClfrTable. Other classifier types 885 may be defined elsewhere." 886 ::= { diffServTables 2 } 888 diffServClassifierEntry OBJECT-TYPE 889 SYNTAX DiffServClassifierEntry 890 MAX-ACCESS not-accessible 891 STATUS current 892 DESCRIPTION 893 "An entry in the classifier table describes a single 895 Draft Differentiated Services MIB March 2000 897 classifier." 898 INDEX { ifIndex, diffServInterfaceDirection, 899 diffServClassifierId } 900 ::= { diffServClassifierTable 1 } 902 DiffServClassifierEntry ::= SEQUENCE { 903 diffServInterfaceDirection INTEGER, 904 diffServClassifierId Unsigned32, 905 diffServClassifierPattern RowPointer, 906 diffServClassifierNext RowPointer, 907 diffServClassifierPrecedence Unsigned32, 908 diffServClassifierStatus RowStatus 909 } 911 diffServInterfaceDirection OBJECT-TYPE 912 SYNTAX INTEGER { 913 inbound(1), -- ingress interface 914 outbound(2) -- egress interface 915 } 916 MAX-ACCESS not-accessible 917 STATUS current 918 DESCRIPTION 919 "Specifies the direction for this entry on the 920 interface. 'inbound' traffic is operated on during 921 receipt, while 'outbound' traffic is operated on prior 922 to transmission." 923 ::= { diffServClassifierEntry 1 } 925 diffServClassifierId OBJECT-TYPE 926 SYNTAX Unsigned32 (1..2147483647) 927 MAX-ACCESS not-accessible 928 STATUS current 929 DESCRIPTION 930 "Classifier Id enumerates the classifier entry." 931 ::= { diffServClassifierEntry 2 } 933 diffServClassifierPattern OBJECT-TYPE 934 SYNTAX RowPointer 935 MAX-ACCESS read-create 936 STATUS current 937 DESCRIPTION 938 "A pointer to a valid entry in another table that 939 describes the applicable classification pattern, e.g. 940 an entry in diffServSixTupleClfrTable. If the row 941 pointed to does not exist, the classifier is ignored. 943 The value zeroDotZero is interpreted to match anything 945 Draft Differentiated Services MIB March 2000 947 not matched by another classifier - only one such entry 948 may exist in this table." 949 DEFVAL { zeroDotZero } 950 ::= { diffServClassifierEntry 3 } 952 diffServClassifierNext OBJECT-TYPE 953 SYNTAX RowPointer 954 MAX-ACCESS read-create 955 STATUS current 956 DESCRIPTION 957 "The 'next' variable selects the next datapath element 958 to handle the classified flow. For example, this can 959 points to an entry in the meter or action table." 960 ::= { diffServClassifierEntry 4 } 962 diffServClassifierPrecedence OBJECT-TYPE 963 SYNTAX Unsigned32 964 MAX-ACCESS read-create 965 STATUS current 966 DESCRIPTION 967 "The relative precedence in which classifiers are 968 applied, higer numbers represent classifiers with 969 higher precedence. Classifiers with the same 970 precedence must be unambiguous, i.e. they must define 971 non-overlapping patterns. Classifiers with different 972 precedence may overlap in their patterns: the 973 classifier with the highest precedence that matches is 974 taken." 975 DEFVAL { 0 } 976 ::= { diffServClassifierEntry 5 } 978 diffServClassifierStatus OBJECT-TYPE 979 SYNTAX RowStatus 980 MAX-ACCESS read-create 981 STATUS current 982 DESCRIPTION 983 "The RowStatus variable controls the activation, 984 deactivation, or deletion of a classifier. Any writable 985 variable may be modified whether the row is active or 986 notInService." 987 ::= { diffServClassifierEntry 6 } 989 Draft Differentiated Services MIB March 2000 991 -- 992 -- Meters 993 -- 995 -- This MIB includes definitions for Token-Bucket 996 -- Meters as one example of possible meters. 998 -- This object allows a configuring system to obtain a 999 -- unique value for diffServTBMeterId for purposes of 1000 -- configuration 1002 diffServTBMeterUnique OBJECT-TYPE 1003 SYNTAX TestAndIncr 1004 MAX-ACCESS read-write 1005 STATUS current 1006 DESCRIPTION 1007 "The diffServTBMeterUnique object yields a unique new 1008 value for diffServTBMeterId when read and subsequently 1009 set. This value must be tested for uniqueness." 1010 ::= { diffServObjects 3 } 1012 diffServTBMeterTable OBJECT-TYPE 1013 SYNTAX SEQUENCE OF DiffServTBMeterEntry 1014 MAX-ACCESS not-accessible 1015 STATUS current 1016 DESCRIPTION 1017 "The Meter Table enumerates specific token bucket 1018 meters that a system may use to police a stream of 1019 classified traffic. The traffic stream is defined by 1020 the classifier. It may include all traffic." 1021 ::= { diffServTables 3 } 1023 diffServTBMeterEntry OBJECT-TYPE 1024 SYNTAX DiffServTBMeterEntry 1025 MAX-ACCESS not-accessible 1026 STATUS current 1027 DESCRIPTION 1028 "An entry in the meter table describes a single token 1029 bucket meter. Note that a meter has exactly one rate, 1030 defined as the burst size each time interval. Multiple 1031 meters may be cascaded should a multi-rate token bucket 1032 be needed in a given Per-Hop Behavior. An example of 1033 such a PHB is AF." 1034 INDEX { ifIndex, diffServInterfaceDirection, 1035 diffServTBMeterId } 1036 ::= { diffServTBMeterTable 1 } 1038 Draft Differentiated Services MIB March 2000 1040 DiffServTBMeterEntry ::= SEQUENCE { 1041 diffServTBMeterId Unsigned32, 1042 diffServTBMeterRate Unsigned32, 1043 diffServTBMeterBurstSize Unsigned32, 1044 diffServTBMeterFailNext RowPointer, 1045 diffServTBMeterSucceedNext RowPointer, 1046 diffServTBMeterStatus RowStatus 1047 } 1049 diffServTBMeterId OBJECT-TYPE 1050 SYNTAX Unsigned32 (1..2147483647) 1051 MAX-ACCESS not-accessible 1052 STATUS current 1053 DESCRIPTION 1054 "MeterId enumerates the meter entry." 1055 ::= { diffServTBMeterEntry 1 } 1057 diffServTBMeterRate OBJECT-TYPE 1058 SYNTAX Unsigned32 1059 UNITS "KBPS" 1060 MAX-ACCESS read-create 1061 STATUS current 1062 DESCRIPTION 1063 "The token bucket rate, in kilo-bits per second (KBPS). 1064 Note that if multiple meters are cascaded onto one PHB, 1065 the peak rate of the data stream is the sum of their 1066 rates." 1067 ::= { diffServTBMeterEntry 2 } 1069 diffServTBMeterBurstSize OBJECT-TYPE 1070 SYNTAX Unsigned32 1071 UNITS "bytes" 1072 MAX-ACCESS read-create 1073 STATUS current 1074 DESCRIPTION 1075 "The number of bytes in a single transmission burst. 1076 The interval can be derived with (BurstSizex8)/Rate." 1077 ::= { diffServTBMeterEntry 3 } 1079 diffServTBMeterFailNext OBJECT-TYPE 1080 SYNTAX RowPointer 1081 MAX-ACCESS read-create 1082 STATUS current 1083 DESCRIPTION 1084 "If the traffic does NOT conform to the meter, FailNext 1085 indicates the next datapath element to handle the 1086 traffic. For example, an Action or Meter datapath 1088 Draft Differentiated Services MIB March 2000 1090 element. The value zeroDotZero in this variable 1091 indicates no further DiffServ treatment is performed on 1092 this flow by the current interface for this interface 1093 direction." 1094 DEFVAL { zeroDotZero } 1095 ::= { diffServTBMeterEntry 4 } 1097 diffServTBMeterSucceedNext OBJECT-TYPE 1098 SYNTAX RowPointer 1099 MAX-ACCESS read-create 1100 STATUS current 1101 DESCRIPTION 1102 "If the traffic does conform to the meter, SucceedNext 1103 indicates the next datapath element to handle the 1104 traffic. For example, an Action or Meter datapath 1105 element. The value zeroDotZero in this variable 1106 indicates no further DiffServ treatment is performed on 1107 this flow by the current interface for this interface 1108 direction." 1109 DEFVAL { zeroDotZero } 1110 ::= { diffServTBMeterEntry 5 } 1112 diffServTBMeterStatus OBJECT-TYPE 1113 SYNTAX RowStatus 1114 MAX-ACCESS read-create 1115 STATUS current 1116 DESCRIPTION 1117 "The RowStatus variable controls the activation, 1118 deactivation, or deletion of a meter. Any writable 1119 variable may be modified whether the row is active or 1120 notInService." 1121 ::= { diffServTBMeterEntry 6 } 1123 Draft Differentiated Services MIB March 2000 1125 -- 1126 -- Actions 1127 -- 1128 -- Notice the Drop Action attributes are referenced by the 1129 -- action table rather than by the queue table because 1130 -- Differentiated Services PHBs, such as the Assured Service, 1131 -- permit differently classified traffic to have different 1132 -- drop parameters even though they occupy the same queue." 1133 -- 1135 -- Mark Action Table 1136 -- Rows of this table is pointed to by diffServAction to 1137 -- provide detail parameters specific to an Action Type. 1139 -- This object allows a configuring system to obtain a 1140 -- unique value for diffServMarkActId for purposes of 1141 -- configuration. 1143 diffServMarkActUnique OBJECT-TYPE 1144 SYNTAX TestAndIncr 1145 MAX-ACCESS read-write 1146 STATUS current 1147 DESCRIPTION 1148 "The diffServMarkActUnique object yields a unique new 1149 value for diffServMarkActId when read and subsequently 1150 set. This value must be tested for uniqueness." 1151 ::= { diffServObjects 4 } 1153 diffServMarkActTable OBJECT-TYPE 1154 SYNTAX SEQUENCE OF DiffServMarkActEntry 1155 MAX-ACCESS not-accessible 1156 STATUS current 1157 DESCRIPTION 1158 "The mark action table enumerates specific DSCPs used 1159 for marking or remarking the DSCP field. The entries 1160 of this table is meant to be referenced by the 1161 diffServAction attribute of entries in 1162 diffServActionTable for diffServActionType = mark." 1163 ::= { diffServTables 4 } 1165 diffServMarkActEntry OBJECT-TYPE 1166 SYNTAX DiffServMarkActEntry 1167 MAX-ACCESS not-accessible 1168 STATUS current 1169 DESCRIPTION 1170 "An entry in the mark action table describes a single 1171 DSCP used for marking." 1173 Draft Differentiated Services MIB March 2000 1175 INDEX { diffServMarkActId } 1176 ::= { diffServMarkActTable 1 } 1178 DiffServMarkActEntry ::= SEQUENCE { 1179 diffServMarkActId Unsigned32, 1180 diffServMarkActDscp Dscp, 1181 diffServMarkActStatus RowStatus 1182 } 1184 diffServMarkActId OBJECT-TYPE 1185 SYNTAX Unsigned32 (1..2147483647) 1186 MAX-ACCESS not-accessible 1187 STATUS current 1188 DESCRIPTION 1189 "Mark Action Id enumerates the Mark Action entry." 1190 ::= { diffServMarkActEntry 1 } 1192 diffServMarkActDSCP OBJECT-TYPE 1193 SYNTAX Dscp 1194 MAX-ACCESS read-create 1195 STATUS current 1196 DESCRIPTION 1197 "The DSCP this Action TCB uses for marking/remarking 1198 traffic with." Note that if the classifier is working 1199 from the same DSCP value, no effective change in the 1200 DSCP results. 1202 Differentiated Services may result in packet remarking 1203 both on ingress to a network and on egress, and it is 1204 quite possible that ingress and egress would occur in 1205 the same router." 1206 ::= { diffServMarkActEntry 2 } 1208 diffServMarkActStatus OBJECT-TYPE 1209 SYNTAX RowStatus 1210 MAX-ACCESS read-create 1211 STATUS current 1212 DESCRIPTION 1213 "The RowStatus variable controls the activation, 1214 deactivation, or deletion of this entry. Any writable 1215 variable may be modified whether the row is active or 1216 notInService." 1217 ::= { diffServMarkActEntry 3 } 1219 -- Count Action Table 1220 -- Rows of this table is pointed to by diffServAction to 1222 Draft Differentiated Services MIB March 2000 1224 -- provide detail parameters specific to Count Action. 1226 -- This object allows a configuring system to obtain a 1227 -- unique value for diffServCountActId for purposes of 1228 -- configuration. 1230 diffServCountActUnique OBJECT-TYPE 1231 SYNTAX TestAndIncr 1232 MAX-ACCESS read-write 1233 STATUS current 1234 DESCRIPTION 1235 "The diffServCountActUnique object yields a unique new 1236 value for diffServCountActId when read and subsequently 1237 set. This value must be tested for uniqueness." 1238 ::= { diffServObjects 5 } 1240 diffServCountActTable OBJECT-TYPE 1241 SYNTAX SEQUENCE OF DiffServCountActEntry 1242 MAX-ACCESS not-accessible 1243 STATUS current 1244 DESCRIPTION 1245 "The count action table contains flow specific 1246 counters. The entries of this table is meant to be 1247 referenced by the diffServAction attribute of entries 1248 in diffServActionTable for diffServActionType = count." 1249 ::= { diffServTables 5 } 1251 diffServCountActEntry OBJECT-TYPE 1252 SYNTAX DiffServCountActEntry 1253 MAX-ACCESS not-accessible 1254 STATUS current 1255 DESCRIPTION 1256 "An entry in the count action table describes a single 1257 set of flow specific counters. This counter entry is 1258 associated with a traffic flow via the 1259 diffServActionEntry pointing to it." 1260 INDEX { diffServActionId, diffServCountActId } 1261 ::= { diffServCountActTable 1 } 1263 DiffServCountActEntry ::= SEQUENCE { 1264 diffServCountActId Unsigned32, 1265 diffServCountActOctetsCnt Counter32, 1266 diffServCountActPktsCnt Counter32, 1267 diffServCountActStatus RowStatus 1268 } 1270 diffServCountActId OBJECT-TYPE 1272 Draft Differentiated Services MIB March 2000 1274 SYNTAX Unsigned32 (1..2147483647) 1275 MAX-ACCESS not-accessible 1276 STATUS current 1277 DESCRIPTION 1278 "Count Action Id enumerates the Count Action entry." 1279 ::= { diffServCountActEntry 1 } 1281 diffServCountActOctetsCnt OBJECT-TYPE 1282 SYNTAX Counter32 1283 UNITS "octets" 1284 MAX-ACCESS read-only 1285 STATUS current 1286 DESCRIPTION 1287 "The number of Octets at the Action datapath element. 1288 Meaning the octets has been classified and possibly 1289 metered, and prior to any dropping process. This object 1290 may be used on low speed interfaces, and represents the 1291 least significant 32 bits of diffServCountActOctetsHCnt 1292 in the augmented extension. 1294 Discontinuities in the value of this counter can occur 1295 at re-initialization of the management system, and at 1296 other times as indicated by the value of 1297 ifCounterDiscontinuityTime." 1298 ::= { diffServCountActEntry 2 } 1300 diffServCountActPktsCnt OBJECT-TYPE 1301 SYNTAX Counter32 1302 UNITS "packets" 1303 MAX-ACCESS read-only 1304 STATUS current 1305 DESCRIPTION 1306 "The number of Packets at the Action datapath element. 1307 Meaning the packets has been classified and possibly 1308 metered, and prior to any dropping process. This object 1309 may be used on low speed interfaces, and represents the 1310 least significant 32 bits of diffServCountActPktsHCount 1311 in the augmented extension. 1313 Discontinuities in the value of this counter can occur 1314 at re-initialization of the management system, and at 1315 other times as indicated by the value of 1316 ifCounterDiscontinuityTime." 1317 ::= { diffServCountActEntry 3 } 1319 diffServCountActStatus OBJECT-TYPE 1320 SYNTAX RowStatus 1322 Draft Differentiated Services MIB March 2000 1324 MAX-ACCESS read-create 1325 STATUS current 1326 DESCRIPTION 1327 "The RowStatus variable controls the activation, 1328 deactivation, or deletion of this entry. Any writable 1329 variable may be modified whether the row is active or 1330 notInService." 1331 ::= { diffServCountActEntry 4 } 1333 -- 1334 -- High Capacity Counter Extension for Count Action Table 1335 -- 1337 diffServCountActXTable OBJECT-TYPE 1338 SYNTAX SEQUENCE OF DiffServCountActXEntry 1339 MAX-ACCESS not-accessible 1340 STATUS current 1341 DESCRIPTION 1342 "This table contains the high capacity counters for the 1343 counters in the Count Action Table. These objects are 1344 all 64-bit versions of the basic counters, having the 1345 same basic semantics as their 32-bit counterparts, with 1346 syntax extended to 64 bits." 1347 AUGMENTS { diffServCountActEntry } 1348 ::= { diffServAugments 1 } 1350 diffServCountActXEntry OBJECT-TYPE 1351 SYNTAX DiffServCountActXEntry 1352 MAX-ACCESS not-accessible 1353 STATUS current 1354 DESCRIPTION 1355 "An entry containing the 64 bit counters applicable to 1356 a specific drop action entry." 1357 ::= { diffServActionXTable 1 } 1359 DiffServCountActXEntry ::= SEQUENCE { 1360 diffServCountActOctetsHCnt Counter64, 1361 diffServCountActPktsHCnt Counter64 1362 } 1364 diffServCountActOctetsHCnt OBJECT-TYPE 1365 SYNTAX Counter64 1366 MAX-ACCESS read-only 1367 STATUS current 1368 DESCRIPTION 1369 "The number of Octets at the Action datapath element. 1370 Meaning the packets has been classified and possibly 1372 Draft Differentiated Services MIB March 2000 1374 metered, and prior to any dropping process. This 1375 object should be used on high speed interfaces. 1377 Discontinuities in the value of this counter can occur 1378 at re-initialization of the management system, and at 1379 other times as indicated by the value of 1380 ifCounterDiscontinuityTime." 1381 ::= { diffServCountActXEntry 1 } 1383 diffServCountActPktsHCnt OBJECT-TYPE 1384 SYNTAX Counter64 1385 MAX-ACCESS read-only 1386 STATUS current 1387 DESCRIPTION 1388 "The number of Packets at the Action datapath element. 1389 Meaning the packets has been classified and possibly 1390 metered, and prior to any dropping process. This 1391 object should be used on high speed interfaces. 1393 Discontinuities in the value of this counter can occur 1394 at re-initialization of the management system, and at 1395 other times as indicated by the value of 1396 ifCounterDiscontinuityTime." 1397 ::= { diffServCountActXEntry 2 } 1399 -- Drop Action Table 1400 -- Rows of this table is pointed to by diffServAction to 1401 -- provide detail parameters specific to an Action Type. 1403 -- Notice the use of diffServQueueId as part of this 1404 -- table's index. Hence each entry is queue specific. 1406 -- This object allows a configuring system to obtain a 1407 -- unique value for diffServDropActId for purposes of 1408 -- configuration. 1410 diffServDropActUnique OBJECT-TYPE 1411 SYNTAX TestAndIncr 1412 MAX-ACCESS read-write 1413 STATUS current 1414 DESCRIPTION 1415 "The diffServDropActUnique object yields a unique new 1416 value for diffServDropActId when read and subsequently 1417 set. This value must be tested for uniqueness." 1418 ::= { diffServObjects 6 } 1420 Draft Differentiated Services MIB March 2000 1422 diffServDropActTable OBJECT-TYPE 1423 SYNTAX SEQUENCE OF DiffServDropActEntry 1424 MAX-ACCESS not-accessible 1425 STATUS current 1426 DESCRIPTION 1427 "The drop action table enumerates sets of attributes 1428 used to represent a drop process. Each set is normally 1429 associated with a queue. The entries of this table is 1430 meant to be referenced by the diffServAction attribute 1431 of entries in diffServActionTable. The entries of this 1432 table is used for: Tail Drop Action when 1433 diffServActionType = tailDrop Random Drop Action when 1434 diffServActionType = randomDrop Deterministic Drop 1435 Action when diffServActionType = deterDrop" 1436 ::= { diffServTables 6 } 1438 diffServDropActEntry OBJECT-TYPE 1439 SYNTAX DiffServDropActEntry 1440 MAX-ACCESS not-accessible 1441 STATUS current 1442 DESCRIPTION 1443 "An entry in the drop action table describes a single 1444 drop process's configuration. For Tail Drop Process: 1446 For Random Drop Process: (QMin,PMin) and (QMax,PMax) 1447 defines the drop probability used for the random drop 1448 process. Normally PMin have a value of zero. QClip 1449 defines the guaranteed average queue depth, after which 1450 the drop probability reaches 100%. For Deterministic 1451 Drop Process: QMeasure points to an entry providing 1452 Queue Measurement needed for the drop process." 1453 INDEX { diffServQueueId, diffServDropActId } 1454 ::= { diffServTable 1 } 1456 DiffServDropActEntry ::= SEQUENCE { 1457 diffServDropActId Unsigned32, 1458 diffServDropActQMin Unsigned32, 1459 diffServDropActQMax Unsigned32, 1460 diffServDropActQClip Unsigned32, 1461 diffServDropActPMin Unsigned32, 1462 diffServDropActPMax Unsigned32, 1463 diffServDropActPCur Unsigned32, 1464 diffServDropActQMeasure RowPointer, 1465 diffServDropActOctetsCnt Counter32, 1466 diffServDropActPktsCnt Counter32, 1467 diffServDropActStatus RowStatus 1468 } 1470 Draft Differentiated Services MIB March 2000 1472 diffServDropActId OBJECT-TYPE 1473 SYNTAX Unsigned32 (1..2147483647) 1474 MAX-ACCESS not-accessible 1475 STATUS current 1476 DESCRIPTION 1477 "Drop Action Id enumerates the Drop Action entry." 1478 ::= { diffServDropActEntry 1 } 1480 diffServDropActQMin OBJECT-TYPE 1481 SYNTAX Unsigned32 1482 UNITS "Kilo Bits" 1483 MAX-ACCESS read-create 1484 STATUS current 1485 DESCRIPTION 1486 "QMin, with PMin, defines the lowerest drop probability 1487 point for this random drop process. With PMin=0, the 1488 queue may drop if a packet is presented to it and the 1489 average queue depth exceeds QMin." 1490 ::= { diffServDropActEntry 2 } 1492 diffServDropActQMax OBJECT-TYPE 1493 SYNTAX Unsigned32 1494 UNITS "Kilo Bits" 1495 MAX-ACCESS read-create 1496 STATUS current 1497 "QMax, with PMax, defines the higher point of drop 1498 probability for random drop process. For Tail Drop 1499 Process: This represents the measure by which the 1500 queue will drop if a packet is presented to it." 1501 ::= { diffServDropActEntry 3 } 1503 diffServDropActQClip OBJECT-TYPE 1504 SYNTAX Unsigned32 1505 UNITS "Kilo Bits" 1506 MAX-ACCESS read-create 1507 STATUS current 1508 "The average queue length at which point the drop 1509 probability reaches 100%." 1510 ::= { diffServDropActEntry 4 } 1512 diffServDropActPMin OBJECT-TYPE 1513 SYNTAX Unsigned32 (0..1000000) 1514 UNITS "per-micro-age" 1515 MAX-ACCESS read-write 1516 STATUS current 1517 "QMin, with PMin, defines the lowerest drop probability 1518 point for this random drop process. With PMin=0, the 1520 Draft Differentiated Services MIB March 2000 1522 queue may drop if a packet is presented to it and the 1523 average queue depth exceeds QMin. This drop 1524 probability is expressed in per-micro-age, the value in 1525 this attribute needs to be divided by 1,000,000 to 1526 obtain the drop probability between 0 and 1." 1527 ::= { diffServDropActEntry 5 } 1529 diffServDropActPMax OBJECT-TYPE 1530 SYNTAX Unsigned32 (0..1000000) 1531 UNITS "per-micro-age" 1532 MAX-ACCESS read-write 1533 STATUS current 1534 "QMax and PMax are part of the drop probability 1535 configuration. This drop probability is expressed in 1536 per-micro-age, the value in this attribute needs to be 1537 divided by 1,000,000 to obtain the drop probability 1538 between 0 and 1." 1539 ::= { diffServDropActEntry 6 } 1541 diffServDropActPCur OBJECT-TYPE 1542 SYNTAX Unsigned32 (0..1000000) 1543 UNITS "per-micro-age" 1544 MAX-ACCESS read-only 1545 STATUS current 1546 "The current drop probability. This drop probability 1547 is expressed in per-micro-age, the value in this 1548 attribute needs to be divided by 1,000,000 to obtain 1549 the drop probability between 0 and 1." 1550 ::= { diffServDropActEntry 7 } 1552 diffServDropActQMeasure OBJECT-TYPE 1553 SYNTAX RowPointer 1554 MAX-ACCESS read-create 1555 STATUS current 1556 "Points to an entry in the diffServQMeasureTable for 1557 queue information required by the drop process." 1558 ::= { diffServDropActEntry 8 } 1560 diffServDropActOctetsCnt OBJECT-TYPE 1561 SYNTAX Counter32 1562 MAX-ACCESS read-only 1563 STATUS current 1564 DESCRIPTION 1565 "The number of octets that have been dropped by a drop 1566 process. On high speed devices, this object implements 1567 the least significant 32 bits of 1568 diffServDropActOctetsHCnt. 1570 Draft Differentiated Services MIB March 2000 1572 Discontinuities in the value of this counter can occur 1573 at re-initialization of the management system, and at 1574 other times as indicated by the value of 1575 ifCounterDiscontinuityTime." 1576 ::= { diffServDropActEntry 9 } 1578 diffServDropActPktsCnt OBJECT-TYPE 1579 SYNTAX Counter32 1580 MAX-ACCESS read-only 1581 STATUS current 1582 DESCRIPTION 1583 "The number of packets that have been dropped by a drop 1584 process. On high speed devices, this object implements 1585 the least significant 32 bits of 1586 diffServDropActPktsHCnt. 1588 Discontinuities in the value of this counter can occur 1589 at re-initialization of the management system, and at 1590 other times as indicated by the value of 1591 ifCounterDiscontinuityTime." 1592 ::= { diffServDropActEntry 10 } 1594 diffServDropActStatus OBJECT-TYPE 1595 SYNTAX RowStatus 1596 MAX-ACCESS read-create 1597 STATUS current 1598 DESCRIPTION 1599 "The RowStatus variable controls the activation, 1600 deactivation, or deletion of this entry. Any writable 1601 variable may be modified whether the row is active or 1602 notInService." 1603 ::= { diffServDropActEntry 11 } 1605 -- 1606 -- High Capacity Counter Extension for Drop Action Table 1607 -- 1609 diffServDropActXTable OBJECT-TYPE 1610 SYNTAX SEQUENCE OF DiffServDropActXEntry 1611 MAX-ACCESS not-accessible 1612 STATUS current 1613 DESCRIPTION 1614 "This table contains the high capacity counters for the 1615 counters in the Drop Action Table. These objects are 1616 all 64 bit versions of the basic counters, having the 1617 same basic semantics as their 32-bit counterparts, with 1618 syntax extended to 64 bits." 1620 Draft Differentiated Services MIB March 2000 1622 AUGMENTS { diffServDropActEntry } 1623 ::= { diffServAugments 2 } 1625 diffServDropActXEntry OBJECT-TYPE 1626 SYNTAX DiffServDropActXEntry 1627 MAX-ACCESS not-accessible 1628 STATUS current 1629 DESCRIPTION 1630 "An entry containing the 64 bit counters applicable to 1631 a specific drop action entry." 1632 ::= { diffServDropActXTable 1 } 1634 DiffServDropActXEntry ::= SEQUENCE { 1635 diffServDropActOctetsHCnt Counter64, 1636 diffServDropActPktsHCnt Counter64 1637 } 1639 diffServDropActOctetsHCnt OBJECT-TYPE 1640 SYNTAX Counter64 1641 MAX-ACCESS read-only 1642 STATUS current 1643 DESCRIPTION 1644 "The number of octets that have been dropped by a drop 1645 process. This object should be used on high speed 1646 interfaces. 1648 Discontinuities in the value of this counter can occur 1649 at re-initialization of the management system, and at 1650 other times as indicated by the value of 1651 ifCounterDiscontinuityTime." 1652 ::= { diffServDropActXEntry 1 } 1654 diffServDropActPktsHCnt OBJECT-TYPE 1655 SYNTAX Counter64 1656 MAX-ACCESS read-only 1657 STATUS current 1658 DESCRIPTION 1659 "The number of packets that have been dropped by a drop 1660 process. This object should be used on high speed 1661 interfaces. 1663 Discontinuities in the value of this counter can occur 1664 at re-initialization of the management system, and at 1665 other times as indicated by the value of 1666 ifCounterDiscontinuityTime." 1667 ::= { diffServDropActXEntry 2 } 1669 Draft Differentiated Services MIB March 2000 1671 -- This object allows a configuring system to obtain a 1672 -- unique value for diffServActionId for purposes of 1673 -- configuration 1675 diffServActionUnique OBJECT-TYPE 1676 SYNTAX TestAndIncr 1677 MAX-ACCESS read-write 1678 STATUS current 1679 DESCRIPTION 1680 "The diffServActionUnique object yields a unique new 1681 value for diffServActionId when read and subsequently 1682 set. This value must be tested for uniqueness." 1683 ::= { diffServObjects 7 } 1685 -- The Action Table allows us to enumerate the different 1686 -- types of actions to be applied to a flow. 1688 diffServActionTable OBJECT-TYPE 1689 SYNTAX SEQUENCE OF DiffServActionEntry 1690 MAX-ACCESS not-accessible 1691 STATUS current 1692 DESCRIPTION 1693 "The Action Table enumerates actions that can be 1694 performed to a stream of traffic. Multiple Actions can 1695 be concatenated. For example, marking of a stream of 1696 traffic exiting a meter (conforming or non-conforming), 1697 then perform a drop process with dropped traffic counts 1698 maintained. Notice counting is considered as a type of 1699 action. The set of flow specific counters in the Count 1700 Action Table maintains statistics for a flow that 1701 arrives to this Action datapath element. This count is 1702 always taken before any drop processing is performed." 1703 ::= { diffServTables 7 } 1705 diffServActionEntry OBJECT-TYPE 1706 SYNTAX DiffServActionEntry 1707 MAX-ACCESS not-accessible 1708 STATUS current 1709 DESCRIPTION 1710 "An entry in the action table describes the actions 1711 applied to traffic exiting a given meter." 1712 INDEX { ifIndex, diffServInterfaceDirection, 1713 diffServActionId } 1714 ::= { diffServActionTable 1 } 1716 DiffServActionEntry ::= SEQUENCE { 1717 diffServActionId Unsigned32, 1719 Draft Differentiated Services MIB March 2000 1721 diffServActionNext RowPointer, 1722 diffServActionType INTEGER, 1723 diffServAction RowPointer, 1724 diffServActionStatus RowStatus 1725 } 1727 diffServActionId OBJECT-TYPE 1728 SYNTAX Unsigned32 (1..2147483647) 1729 MAX-ACCESS not-accessible 1730 STATUS current 1731 DESCRIPTION 1732 "Action Id enumerates the Action entry." 1733 ::= { diffServActionEntry 1 } 1735 diffServActionNext OBJECT-TYPE 1736 SYNTAX RowPointer 1737 MAX-ACCESS read-create 1738 STATUS current 1739 DESCRIPTION 1740 "The Next pointer indicates the next datapath element 1741 to handle the traffic. For example, a queue datapath 1742 element. The value zeroDotZero in this variable 1743 indicates no further DiffServ treatment is performed on 1744 this flow by the current interface for this interface 1745 direction." 1746 DEFVAL { zeroDotZero } 1747 ::= { diffServActionEntry 2 } 1749 diffServActionType OBJECT-TYPE 1750 SYNTAX INTEGER { 1751 other(1), -- types not specified here. 1752 mark(2), -- mark or remark 1753 count(3), -- count 1754 alwaysDrop(4), -- disallow traffic 1755 tailDrop(5), -- fix queue size Drop 1756 randomDrop(6), -- Random Drop 1757 deterDrop(7) -- Deterministic Drop 1758 } 1759 MAX-ACCESS read-write 1760 STATUS current 1761 DESCRIPTION 1762 "Indicates the type of action diffServAction points 1763 to." 1764 ::= { diffServActionEntry 3 } 1766 diffServAction OBJECT-TYPE 1767 SYNTAX RowPointer 1769 Draft Differentiated Services MIB March 2000 1771 MAX-ACCESS read-create 1772 STATUS current 1773 DESCRIPTION 1774 "Points to a row in a Action Type Table that provides 1775 all the parameters for the type of action indicated in 1776 diffServActionType. Can also points to a row in some 1777 other MIB to provide some proprietary action type." 1778 ::= { diffServActionEntry 4 } 1780 diffServActionStatus OBJECT-TYPE 1781 SYNTAX RowStatus 1782 MAX-ACCESS read-create 1783 STATUS current 1784 DESCRIPTION 1785 "The RowStatus variable controls the activation, 1786 deactivation, or deletion of a meter. Any writable 1787 variable may be modified whether the row is active or 1788 notInService." 1789 ::= { diffServActionEntry 5 } 1791 Draft Differentiated Services MIB March 2000 1793 -- 1794 -- Queue Set Table 1795 -- The Queue Set Table is used for organizing queues 1796 -- defined in the Queue Table into Queue Sets, with 1797 -- queue scheduling defined in the queue set entry. 1798 -- Queue Set Table provides flexibility in queue 1799 -- organization and allows more complex hierarchical 1800 -- scheduling algorithms be defined. For example, 1801 -- multiple scheduling algorithms, each with multiple 1802 -- queues, used on the same logical/physical interface. 1803 -- 1805 -- This object allows a configuring system to obtain a 1806 -- unique value for diffServQSetId for purposes of 1807 -- configuration 1809 diffServQSetUnique OBJECT-TYPE 1810 SYNTAX TestAndIncr 1811 MAX-ACCESS read-write 1812 STATUS current 1813 DESCRIPTION 1814 "The diffServQSetUnique object yields a unique new 1815 value for diffServQSetId when read and subsequently 1816 set. This value must be tested for uniqueness." 1817 ::= { diffServObjects 8 } 1819 diffServQSetTable OBJECT-TYPE 1820 SYNTAX SEQUENCE OF DiffServQSetEntry 1821 MAX-ACCESS not-accessible 1822 STATUS current 1823 DESCRIPTION 1824 "The Queue Set Table enumerates the queue sets. Queue 1825 Sets are used to organize queues based on their 1826 scheduling algorithms. Multiple sheduling algorithms 1827 can be used, with each algorithm described by one Queue 1828 Set Entry. Multiple instances of a single sheduling 1829 algorithm, each with different scheduling parameters 1830 can also be expressed, each described by its own Queue 1831 Set Entry. Relationships between Queue Sets are used 1832 to build scheduling algorithm hierarchies. For 1833 example, a weighed fair queueing queue set can be a 1834 part of a priority queueing queue set, having the 1835 weighed fair queueing queue set be a branch of the 1836 priority queueing queue set. More complex hierarchies 1837 can also be expressed using this mechanism." 1838 ::= { diffServTables 8 } 1840 Draft Differentiated Services MIB March 2000 1842 diffServQSetEntry OBJECT-TYPE 1843 SYNTAX DiffServQSetEntry 1844 MAX-ACCESS not-accessible 1845 STATUS current 1846 DESCRIPTION 1847 "An entry in the Queue Set Table describes a single 1848 queue set." 1849 INDEX { ifIndex, diffServInterfaceDirection, 1850 diffServQSetId } 1851 ::= { diffServQSetTable 1 } 1853 DiffServQSetEntry ::= SEQUENCE { 1854 diffServQSetId Unsigned32, 1855 diffServQSetParentId Unsigned32, 1856 diffServQSetWeight Unsigned32, 1857 diffServQSetMethod INTEGER, 1858 diffServQSetRateUnit INTEGER, 1859 diffServQSetMinRate Unsigned32, 1860 diffServQSetMaxRate Unsigned32, 1861 diffServQSetNext RowPointer, 1862 diffServQSetStatus RowStatus 1863 } 1865 diffServQSetId OBJECT-TYPE 1866 SYNTAX Unsigned32 (1..2147483647) 1867 MAX-ACCESS not-accessible 1868 STATUS current 1869 DESCRIPTION 1870 "The Queue Set Id enumerates the Queue Set entry." 1871 ::= { diffServQSetEntry 1 } 1873 diffServQSetParentId OBJECT-TYPE 1874 SYNTAX Unsigned32 (1..2147483647) 1875 MAX-ACCESS not-accessible 1876 STATUS current 1877 DESCRIPTION 1878 "The Queue Set Parent Id allows the formation of 1879 hierarchical relationships between scheduling 1880 algorithms." 1881 ::= { diffServQSetEntry 2 } 1883 diffServQSetWeight OBJECT-TYPE 1884 SYNTAX Unsigned32 1885 MAX-ACCESS read-create 1886 STATUS current 1887 DESCRIPTION 1888 "Used with QSetParentId in hierarchical scheduling 1890 Draft Differentiated Services MIB March 2000 1892 setup. QSetWeight represent the weight of all queues 1893 within this queue set, with respect to queues in other 1894 queue sets in hierarchical scheduling. For example, 1895 this queue set represents the weighed fair queueing 1896 scheduling amongst all the queues in this queue set. 1897 This set of weighted fair queueing queues as a whole 1898 belongs to a priority queueing queue set. QSetWeight 1899 determines this queue set's priority/weight in the 1900 parent queue set's priority queueing scheduling 1901 algorithm. There can be more than one weighed fair 1902 queueing queue sets belonging to the same priority 1903 queueing parent queue set." 1904 ::= { diffServQSetEntry 3 } 1906 diffServQSetMethod OBJECT-TYPE 1907 SYNTAX INTEGER { 1908 other(1), -- not listed here 1909 pq(2), -- Priority Queueing 1910 wfq(3), -- Weighed Fair Queueing 1911 wrr(4) -- Weighed Round Robin 1912 } 1913 MAX-ACCESS read-create 1914 STATUS current 1915 DESCRIPTION 1916 "The scheduling algorithm used by queues in this queue 1917 set." 1918 ::= { diffServQSetEntry 4 } 1920 diffServQSetRateUnit OBJECT-TYPE 1921 SYNTAX INTEGER { 1922 kbps(1), -- kilo bits per second 1923 packets(2) -- packets per second 1924 } 1925 MAX-ACCESS read-create 1926 STATUS current 1927 DESCRIPTION 1928 "The unit of measure for the MinRate and MaxRate 1929 attributes. The packet unit allows packet fair 1930 algorithms in addition to bit fair algorithms." 1931 ::= { diffServQSetEntry 5 } 1933 diffServQSetMinRate OBJECT-TYPE 1934 SYNTAX Unsigned32 1935 UNITS "KBPS" 1936 MAX-ACCESS read-create 1937 STATUS current 1938 DESCRIPTION 1940 Draft Differentiated Services MIB March 2000 1942 "The minimum rate for the whole queue set. If the 1943 value is zero, then there is effectively no minimum 1944 rate. If the value is non-zero, the queue set will 1945 seek to assure this class of traffic at least this 1946 rate." 1947 ::= { diffServQSetEntry 6 } 1949 diffServQSetMaxRate OBJECT-TYPE 1950 SYNTAX Unsigned32 1951 UNITS "KBPS" 1952 MAX-ACCESS read-create 1953 STATUS current 1954 DESCRIPTION 1955 "The maximum rate for the whole queue set. If the 1956 value is zero, then there is effectively no maximum 1957 rate. If the value is non-zero, the queue set will 1958 seek to assure this class of traffic at most this 1959 rate." 1960 ::= { diffServQSetEntry 7 } 1962 diffServQSetNext OBJECT-TYPE 1963 SYNTAX RowPointer 1964 MAX-ACCESS read-create 1965 STATUS current 1966 DESCRIPTION 1967 "Selects the next data path component, which can be 1968 another Queue Set. One usage of multiple serial Queue 1969 Sets is for Class Base Queueing (CBQ). The value 1970 zeroDotZero in this variable indicates no further 1971 DiffServ treatment is performed on this flow by the 1972 current interface for this interface direction. For 1973 example, for an inbound interface the value zeroDotZero 1974 indicates that the packet flow has now completed 1975 inbound DiffServ treatment and should be forwarded on 1976 to the appropriate outbound interface." 1977 DEFVAL { zeroDotZero } 1978 ::= { diffServQSetEntry 8 } 1980 diffServQSetStatus OBJECT-TYPE 1981 SYNTAX RowStatus 1982 MAX-ACCESS read-create 1983 STATUS current 1984 DESCRIPTION 1985 "The RowStatus variable controls the activation, 1986 deactivation, or deletion of a queue. Any writable 1987 variable may be modified whether the row is active or 1988 notInService." 1990 Draft Differentiated Services MIB March 2000 1992 ::= { diffServQSetEntry 9 } 1994 Draft Differentiated Services MIB March 2000 1996 -- 1997 -- Queue Table 1998 -- 2000 -- This object allows a configuring system to obtain a 2001 -- unique value for diffServQId for purposes of 2002 -- configuration. 2004 diffServQUnique OBJECT-TYPE 2005 SYNTAX TestAndIncr 2006 MAX-ACCESS read-write 2007 STATUS current 2008 DESCRIPTION 2009 "The diffServQUnique object yields a unique new value 2010 for diffServQId when read and subsequently set. This 2011 value must be tested for uniqueness." 2012 ::= { diffServObjects 9 } 2014 -- The Queue Table allows us to describe individual queues 2016 diffServQTable OBJECT-TYPE 2017 SYNTAX SEQUENCE OF DiffServQEntry 2018 MAX-ACCESS not-accessible 2019 STATUS current 2020 DESCRIPTION 2021 "The Queue Table enumerates the queues on an 2022 interface." 2023 ::= { diffServTables 9 } 2025 diffServQEntry OBJECT-TYPE 2026 SYNTAX DiffServQEntry 2027 MAX-ACCESS not-accessible 2028 STATUS current 2029 DESCRIPTION 2030 "An entry in the Queue Table describes a single FIFO 2031 queue." 2032 INDEX { diffServQQSetId, diffServQId } 2033 ::= { diffServQTable 1 } 2035 DiffServQEntry ::= SEQUENCE { 2036 diffServQId Unsigned32, 2037 diffServQQSetId Unsigned32, 2038 diffServQSchedulerWeight Unsigned32, 2039 diffServQStatus RowStatus 2040 } 2042 diffServQId OBJECT-TYPE 2044 Draft Differentiated Services MIB March 2000 2046 SYNTAX Unsigned32 (1..2147483647) 2047 MAX-ACCESS not-accessible 2048 STATUS current 2049 DESCRIPTION 2050 "The Queue Id enumerates the Queue entry." 2051 ::= { diffServQEntry 1 } 2053 diffServQQSetId OBJECT-TYPE 2054 SYNTAX Unsigned32 (1..2147483647) 2055 MAX-ACCESS not-accessible 2056 STATUS current 2057 DESCRIPTION 2058 "Indicates the Queue Set this queue is part of." 2059 ::= { diffServQEntry 2 } 2061 diffServQSchedulerWeight OBJECT-TYPE 2062 SYNTAX Unsigned32 2063 MAX-ACCESS read-create 2064 STATUS current 2065 DESCRIPTION 2066 "The weight or priority of the queue, depending on the 2067 scheduling method used. Notice only the weight of the 2068 queue is used, instead of the rate. The rate can be 2069 derived based on the rate of the queue set. This is to 2070 facilitate changing link speed and/or changing 2071 scheduling method without reconfiguring the queues." 2072 ::= { diffServQEntry 3 } 2074 diffServQStatus OBJECT-TYPE 2075 SYNTAX RowStatus 2076 MAX-ACCESS read-create 2077 STATUS current 2078 DESCRIPTION 2079 "The RowStatus variable controls the activation, 2080 deactivation, or deletion of a queue. Any writable 2081 variable may be modified whether the row is active or 2082 notInService." 2083 ::= { diffServQEntry 4 } 2085 -- Queue Measurement Table 2087 -- This object allows a configuring system to obtain a 2088 -- unique value for diffServQMeasureId for purposes of 2089 -- configuration. 2091 diffServQMeasureUnique OBJECT-TYPE 2092 SYNTAX TestAndIncr 2094 Draft Differentiated Services MIB March 2000 2096 MAX-ACCESS read-write 2097 STATUS current 2098 DESCRIPTION 2099 "The diffServQMeasureUnique object yields a unique new 2100 value for diffServQMeasureId when read and subsequently 2101 set. This value must be tested for uniqueness." 2102 ::= { diffServObjects 10 } 2104 diffServQMeasureTable OBJECT-TYPE 2105 SYNTAX SEQUENCE OF DiffServQMeasureEntry 2106 MAX-ACCESS not-accessible 2107 STATUS current 2108 DESCRIPTION 2109 "The Queue Measurement Table contains entries 2110 describing the state of queues, this include states for 2111 implementing traffic treatment algorithms. Notice 2112 multiple queue measurement entries for the same queue 2113 is allowed." 2114 ::= { diffServTables 10 } 2116 diffServQMeasureEntry OBJECT-TYPE 2117 SYNTAX DiffServQMeasureEntry 2118 MAX-ACCESS not-accessible 2119 STATUS current 2120 DESCRIPTION 2121 "An entry in the Queue Measure Table describes a single 2122 set of measurement for a specific queue." 2123 INDEX { diffServQMeasureQId, diffServQMeasureId } 2124 ::= { diffServQMeasureTable 1 } 2126 DiffServQMeasureEntry ::= SEQUENCE { 2127 diffServQMeasureId Unsigned32, 2128 diffServQMeasureQId Unsigned32, 2129 diffServQMeasureAvgSampleInt Unsigned32, 2130 diffServQMeasureAvgWeightExp Unsigned32, 2131 diffServQMeasureAvgWeightMan Unsigned32, 2132 diffServQMeasureQAverage Unsigned32, 2133 diffServQMeasureStatus RowStatus 2134 } 2136 diffServQMeasureId OBJECT-TYPE 2137 SYNTAX Unsigned32 (1..2147483647) 2138 MAX-ACCESS not-accessible 2139 STATUS current 2140 DESCRIPTION 2141 "The Queue Measure Id enumerates the Queue Measure 2142 entry." 2144 Draft Differentiated Services MIB March 2000 2146 ::= { diffServQMeasureEntry 1 } 2148 diffServQMeasureQId OBJECT-TYPE 2149 SYNTAX Unsigned32 (1..2147483647) 2150 MAX-ACCESS not-accessible 2151 STATUS current 2152 DESCRIPTION 2153 "Indicates the queue this measurement is associated 2154 with." 2155 ::= { diffServQMeasureEntry 2 } 2157 diffServQMeasureAvgSampleInt OBJECT-TYPE 2158 SYNTAX Unsigned32 2159 UNIT millisecond 2160 MAX-ACCESS read-create 2161 STATUS current 2162 DESCRIPTION 2163 "The sampling interval for queue average calculation, 2164 in milliseconds. For queue sampling based on packet 2165 enqueueing or dequeueing intervals, this attribute 2166 should contain the value of zero." 2167 ::= { diffServQMeasureEntry 3 } 2169 diffServQMeasureAvgWeightExp OBJECT-TYPE 2170 SYNTAX Unsigned32 2171 MAX-ACCESS read-create 2172 STATUS current 2173 "The exponent part of weight (in real number format) 2174 for queue average calculation. This is a base 10 2175 exponent, with the attribute representing a negative 2176 value. For example, with 8 in this attribute meaning 2177 10 to the power of -8. An 8 bit value here will be 2178 sufficient." 2179 ::= { diffServQMeasureEntry 4 } 2181 diffServQMeasureAvgWeightMan OBJECT-TYPE 2182 SYNTAX Unsigned32 2183 MAX-ACCESS read-create 2184 STATUS current 2185 "The mantissa part of weight (in real number format) 2186 for queue average calculation. Always a positive 2187 number. Need 16 bits of accuracy." 2188 ::= { diffServQMeasureEntry 5 } 2190 diffServQMeasureQAverage OBJECT-TYPE 2191 SYNTAX Unsigned32 2192 UNITS kilo-bits 2194 Draft Differentiated Services MIB March 2000 2196 MAX-ACCESS read-only 2197 STATUS current 2198 "The current queue average in kilo bits." 2199 ::= { diffServQMeasureEntry 6 } 2201 diffServQMeasureStatus OBJECT-TYPE 2202 SYNTAX RowStatus 2203 MAX-ACCESS read-create 2204 STATUS current 2205 DESCRIPTION 2206 "The RowStatus variable controls the activation, 2207 deactivation, or deletion of a queue. Any writable 2208 variable may be modified whether the row is active or 2209 notInService." 2210 ::= { diffServQMeasureEntry 7 } 2212 Draft Differentiated Services MIB March 2000 2214 -- MIB Compliance statements. Three variations of 2215 -- compliance are described, for optical, LAN, and low speed 2216 -- interfaces. The difference is the implementation of 2217 -- diffServActionOctetsHCnt, diffServActionPktsHCnt 2218 -- and diffServCountActOctetsHCnt, diffServCountActPktsHCnt. 2220 diffServMIBCompliances OBJECT IDENTIFIER ::= { diffServMIBConformance 1 } 2221 diffServMIBGroups OBJECT IDENTIFIER ::= { diffServMIBConformance 2 } 2223 diffServMIBCompliance MODULE-COMPLIANCE 2224 STATUS current 2225 DESCRIPTION 2226 "This MIB may be implemented as a read-only or as a 2227 read-create MIB. As a result, it may be used for 2228 monitoring or for configuration. 2230 Standard compliance implies that the implementation 2231 complies for interfaces for which an interface's octet 2232 counter might wrap at most once an hour, which by the 2233 IFMIB's convention applies to interfaces under 20 MBPS. 2234 It thus applies to any device which might implement a 2235 low speed serial line, Ethernet, Token Ring." 2236 MODULE -- This Module 2237 MANDATORY-GROUPS { 2238 diffServMIBClassifierGroup, diffServMIBMeterGroup, 2239 diffServMIBQueueGroup, diffServMIBActionGroup 2241 -- note that diffServMIBHCCounterGroup is 2242 -- mandatory for medium and high speed interfaces 2244 -- note that diffServMIBVHCCounterGroup is 2245 -- mandatory for high speed interfaces 2247 -- note that the diffServMIBStaticGroup is 2248 -- mandatory for implementations that implement a 2249 -- read-write or read-create mode. 2250 } 2252 GROUP diffServMIBHCCounterGroup 2253 DESCRIPTION 2254 "This group is mandatory for those network interfaces 2255 for which the value of the corresponding instance of 2256 ifSpeed is greater than 20,000,000 bits/second." 2258 GROUP diffServMIBVHCCounterGroup 2259 DESCRIPTION 2260 "This group is mandatory for those network interfaces 2262 Draft Differentiated Services MIB March 2000 2264 for which the value of the corresponding instance of 2265 ifSpeed is greater than 650,000,000 bits/second." 2267 OBJECT diffServClassifierMatchObject 2268 MIN-ACCESS read-only 2269 DESCRIPTION 2270 "Write access is not required." 2272 OBJECT diffServClassifierNext 2273 MIN-ACCESS read-only 2274 DESCRIPTION 2275 "Write access is not required." 2277 OBJECT diffServClassifierSequence 2278 MIN-ACCESS read-only 2279 DESCRIPTION 2280 "Write access is not required." 2282 OBJECT diffServClassifierStatus 2283 MIN-ACCESS read-only 2284 DESCRIPTION 2285 "Write access is not required." 2287 OBJECT diffServTBMeterInterval 2288 MIN-ACCESS read-only 2289 DESCRIPTION 2290 "Write access is not required." 2292 OBJECT diffServTBMeterBurstSize 2293 MIN-ACCESS read-only 2294 DESCRIPTION 2295 "Write access is not required." 2297 OBJECT diffServTBMeterFailNext 2298 MIN-ACCESS read-only 2299 DESCRIPTION 2300 "Write access is not required." 2302 OBJECT diffServTBMeterSucceedNext 2303 MIN-ACCESS read-only 2304 DESCRIPTION 2305 "Write access is not required." 2307 OBJECT diffServTBMeterStatus 2308 MIN-ACCESS read-only 2309 DESCRIPTION 2310 "Write access is not required." 2312 Draft Differentiated Services MIB March 2000 2314 OBJECT diffServActionNext 2315 MIN-ACCESS read-only 2316 DESCRIPTION 2317 "Write access is not required." 2319 OBJECT diffServActionDSCP 2320 MIN-ACCESS read-only 2321 DESCRIPTION 2322 "Write access is not required." 2324 OBJECT diffServActionMinThreshold 2325 MIN-ACCESS read-only 2326 DESCRIPTION 2327 "Write access is not required." 2329 OBJECT diffServActionMaxThreshold 2330 MIN-ACCESS read-only 2331 DESCRIPTION 2332 "Write access is not required." 2334 OBJECT diffServActionDropPolicy 2335 MIN-ACCESS read-only 2336 DESCRIPTION 2337 "Write access is not required." 2339 OBJECT diffServActionStatus 2340 MIN-ACCESS read-only 2341 DESCRIPTION 2342 "Write access is not required." 2344 OBJECT diffServQueueMinimumRate 2345 MIN-ACCESS read-only 2346 DESCRIPTION 2347 "Write access is not required." 2349 OBJECT diffServQueueMaximumRate 2350 MIN-ACCESS read-only 2351 DESCRIPTION 2352 "Write access is not required." 2354 OBJECT diffServQueuePriority 2355 MIN-ACCESS read-only 2356 DESCRIPTION 2357 "Write access is not required." 2359 OBJECT diffServQueueNextTCB 2360 MIN-ACCESS read-only 2362 Draft Differentiated Services MIB March 2000 2364 DESCRIPTION 2365 "Write access is not required." 2367 OBJECT diffServQueueStatus 2368 MIN-ACCESS read-only 2369 DESCRIPTION 2370 "Write access is not required." 2371 ::= { diffServMIBCompliances 1 } 2373 Draft Differentiated Services MIB March 2000 2375 diffServMIBVHCCompliance MODULE-COMPLIANCE 2376 STATUS current 2377 DESCRIPTION 2378 "This MIB may be implemented as a read-only or as a 2379 read-create MIB. As a result, it may be used for 2380 monitoring or for configuration. 2382 Very High Speed compliance implies that the 2383 implementation complies for interfaces for which an 2384 interface's packet or octet counters might wrap more 2385 than once an hour, which by the IFMIB's convention 2386 applies to interfaces over 650 MBPS, or OC-12." 2387 MODULE -- This Module 2388 MANDATORY-GROUPS { 2389 diffServMIBClassifierGroup, diffServMIBMeterGroup, 2390 diffServMIBQueueGroup, diffServMIBHCCounterGroup, 2391 diffServMIBVHCCounterGroup, diffServMIBActionGroup 2393 -- note that the diffServMIBStaticGroup is 2394 -- mandatory for implementations that implement a 2395 -- read-write or read-create mode. 2396 } 2398 OBJECT diffServClassifierMatchObject 2399 MIN-ACCESS read-only 2400 DESCRIPTION 2401 "Write access is not required." 2403 OBJECT diffServClassifierNext 2404 MIN-ACCESS read-only 2405 DESCRIPTION 2406 "Write access is not required." 2408 OBJECT diffServClassifierSequence 2409 MIN-ACCESS read-only 2410 DESCRIPTION 2411 "Write access is not required." 2413 OBJECT diffServClassifierStatus 2414 MIN-ACCESS read-only 2415 DESCRIPTION 2416 "Write access is not required." 2418 OBJECT diffServTBMeterInterval 2419 MIN-ACCESS read-only 2420 DESCRIPTION 2422 Draft Differentiated Services MIB March 2000 2424 "Write access is not required." 2426 OBJECT diffServTBMeterBurstSize 2427 MIN-ACCESS read-only 2428 DESCRIPTION 2429 "Write access is not required." 2431 OBJECT diffServTBMeterFailNext 2432 MIN-ACCESS read-only 2433 DESCRIPTION 2434 "Write access is not required." 2436 OBJECT diffServTBMeterSucceedNext 2437 MIN-ACCESS read-only 2438 DESCRIPTION 2439 "Write access is not required." 2441 OBJECT diffServTBMeterStatus 2442 MIN-ACCESS read-only 2443 DESCRIPTION 2444 "Write access is not required." 2446 OBJECT diffServActionNext 2447 MIN-ACCESS read-only 2448 DESCRIPTION 2449 "Write access is not required." 2451 OBJECT diffServActionDSCP 2452 MIN-ACCESS read-only 2453 DESCRIPTION 2454 "Write access is not required." 2456 OBJECT diffServActionMinThreshold 2457 MIN-ACCESS read-only 2458 DESCRIPTION 2459 "Write access is not required." 2461 OBJECT diffServActionMaxThreshold 2462 MIN-ACCESS read-only 2463 DESCRIPTION 2464 "Write access is not required." 2466 OBJECT diffServActionDropPolicy 2467 MIN-ACCESS read-only 2468 DESCRIPTION 2469 "Write access is not required." 2471 Draft Differentiated Services MIB March 2000 2473 OBJECT diffServActionStatus 2474 MIN-ACCESS read-only 2475 DESCRIPTION 2476 "Write access is not required." 2478 OBJECT diffServQueueMinimumRate 2479 MIN-ACCESS read-only 2480 DESCRIPTION 2481 "Write access is not required." 2483 OBJECT diffServQueueMaximumRate 2484 MIN-ACCESS read-only 2485 DESCRIPTION 2486 "Write access is not required." 2488 OBJECT diffServQueuePriority 2489 MIN-ACCESS read-only 2490 DESCRIPTION 2491 "Write access is not required." 2493 OBJECT diffServQueueNextTCB 2494 MIN-ACCESS read-only 2495 DESCRIPTION 2496 "Write access is not required." 2498 OBJECT diffServQueueStatus 2499 MIN-ACCESS read-only 2500 DESCRIPTION 2501 "Write access is not required." 2502 ::= { diffServMIBCompliances 2 } 2504 Draft Differentiated Services MIB March 2000 2506 diffServMIBHCCompliance MODULE-COMPLIANCE 2507 STATUS current 2508 DESCRIPTION 2509 "This MIB may be implemented as a read-only or as a 2510 read-create MIB. As a result, it may be used for 2511 monitoring or for configuration. 2513 High Speed compliance implies that the implementation 2514 complies for interfaces for which an interface's octet 2515 counters might wrap more than once an hour, which by 2516 the IFMIB's convention applies to interfaces over 20 2517 MBPS, but under 650 MBPS. It thus applies to devices 2518 which implement a 100 MBPS Ethernet, FDDI, E3, DS3, or 2519 SONET/SDH interface up to OC-12." 2520 MODULE -- This Module 2521 MANDATORY-GROUPS { 2522 diffServMIBClassifierGroup, diffServMIBMeterGroup, 2523 diffServMIBQueueGroup, diffServMIBHCCounterGroup, 2524 diffServMIBActionGroup 2526 -- note that diffServMIBVHCCounterGroup is 2527 -- mandatory for high speed interfaces 2529 -- note that the diffServMIBStaticGroup is 2530 -- mandatory for implementations that implement a 2531 -- read-write or read-create mode. 2532 } 2534 GROUP diffServMIBVHCCounterGroup 2535 DESCRIPTION 2536 "This group is mandatory for those network interfaces 2537 for which the value of the corresponding instance of 2538 ifSpeed is greater than 650,000,000 bits/second." 2540 OBJECT diffServClassifierMatchObject 2541 MIN-ACCESS read-only 2542 DESCRIPTION 2543 "Write access is not required." 2545 OBJECT diffServClassifierNext 2546 MIN-ACCESS read-only 2547 DESCRIPTION 2548 "Write access is not required." 2550 OBJECT diffServClassifierSequence 2551 MIN-ACCESS read-only 2552 DESCRIPTION 2554 Draft Differentiated Services MIB March 2000 2556 "Write access is not required." 2558 OBJECT diffServClassifierStatus 2559 MIN-ACCESS read-only 2560 DESCRIPTION 2561 "Write access is not required." 2563 OBJECT diffServTBMeterInterval 2564 MIN-ACCESS read-only 2565 DESCRIPTION 2566 "Write access is not required." 2568 OBJECT diffServTBMeterBurstSize 2569 MIN-ACCESS read-only 2570 DESCRIPTION 2571 "Write access is not required." 2573 OBJECT diffServTBMeterFailNext 2574 MIN-ACCESS read-only 2575 DESCRIPTION 2576 "Write access is not required." 2578 OBJECT diffServTBMeterSucceedNext 2579 MIN-ACCESS read-only 2580 DESCRIPTION 2581 "Write access is not required." 2583 OBJECT diffServTBMeterStatus 2584 MIN-ACCESS read-only 2585 DESCRIPTION 2586 "Write access is not required." 2588 OBJECT diffServActionNext 2589 MIN-ACCESS read-only 2590 DESCRIPTION 2591 "Write access is not required." 2593 OBJECT diffServActionDSCP 2594 MIN-ACCESS read-only 2595 DESCRIPTION 2596 "Write access is not required." 2598 OBJECT diffServActionMinThreshold 2599 MIN-ACCESS read-only 2600 DESCRIPTION 2601 "Write access is not required." 2603 Draft Differentiated Services MIB March 2000 2605 OBJECT diffServActionMaxThreshold 2606 MIN-ACCESS read-only 2607 DESCRIPTION 2608 "Write access is not required." 2610 OBJECT diffServActionDropPolicy 2611 MIN-ACCESS read-only 2612 DESCRIPTION 2613 "Write access is not required." 2615 OBJECT diffServActionStatus 2616 MIN-ACCESS read-only 2617 DESCRIPTION 2618 "Write access is not required." 2620 OBJECT diffServQueueMinimumRate 2621 MIN-ACCESS read-only 2622 DESCRIPTION 2623 "Write access is not required." 2625 OBJECT diffServQueueMaximumRate 2626 MIN-ACCESS read-only 2627 DESCRIPTION 2628 "Write access is not required." 2630 OBJECT diffServQueuePriority 2631 MIN-ACCESS read-only 2632 DESCRIPTION 2633 "Write access is not required." 2635 OBJECT diffServQueueNextTCB 2636 MIN-ACCESS read-only 2637 DESCRIPTION 2638 "Write access is not required." 2640 OBJECT diffServQueueStatus 2641 MIN-ACCESS read-only 2642 DESCRIPTION 2643 "Write access is not required." 2644 ::= { diffServMIBCompliances 3 } 2646 Draft Differentiated Services MIB March 2000 2648 diffServMIBClassifierGroup OBJECT-GROUP 2649 OBJECTS { 2650 diffServAggregateDSCP, 2651 diffServClassifierMatchObject, 2652 diffServClassifierNext, 2653 diffServClassifierSequence, 2654 diffServClassifierStatus 2655 } 2656 STATUS current 2657 DESCRIPTION 2658 "The Classifier Group defines the MIB Objects that 2659 describe a classifier." 2660 ::= { diffServMIBGroups 1 } 2662 diffServMIBMeterGroup OBJECT-GROUP 2663 OBJECTS { 2664 diffServTBMeterInterval, diffServTBMeterBurstSize, 2665 diffServTBMeterSucceedNext, diffServTBMeterFailNext, 2666 diffServTBMeterStatus 2667 } 2668 STATUS current 2669 DESCRIPTION 2670 "The Meter Group defines the objects used in describing 2671 a meter." 2672 ::= { diffServMIBGroups 2 } 2674 diffServMIBActionGroup OBJECT-GROUP 2675 OBJECTS { 2676 diffServActionDropPolicy, 2677 diffServActionRandomDrops, 2678 diffServActionTailDrops, 2679 diffServActionMinThreshold, 2680 diffServActionMaxThreshold, diffServActionDSCP, 2681 diffServActionNext, 2682 diffServActionConformingPackets, 2683 diffServActionConformingOctets, 2684 diffServActionStatus 2685 } 2686 STATUS current 2687 DESCRIPTION 2688 "The Action Group defines the objects used in 2689 describing an action." 2690 ::= { diffServMIBGroups 3 } 2692 diffServMIBHCCounterGroup OBJECT-GROUP 2693 OBJECTS { 2694 diffServActionHCConformingOctets 2696 Draft Differentiated Services MIB March 2000 2698 } 2699 STATUS current 2700 DESCRIPTION 2701 "At 20,000,000 bits per second or greater, the number 2702 of octets a given class may count can overflow a 32 bit 2703 counter in under an hour. Therefore, by convention 2704 established in the IFMIB, the 64 bit counter must be 2705 implemented as well." 2706 ::= { diffServMIBGroups 4 } 2708 diffServMIBVHCCounterGroup OBJECT-GROUP 2709 OBJECTS { 2710 diffServActionHCConformingPackets, 2711 diffServActionHCRandomDrops, 2712 diffServActionHCTailDrops 2713 } 2714 STATUS current 2715 DESCRIPTION 2716 "At 650,000,000 bits per second or greater, the number 2717 of packets a given class may count can overflow a 32 2718 bit counter in under an hour. Therefore, by convention 2719 established in the IFMIB, the 64 bit counter must be 2720 implemented as well." 2721 ::= { diffServMIBGroups 5 } 2723 diffServMIBQueueGroup OBJECT-GROUP 2724 OBJECTS { 2725 diffServQueueMinimumRate, 2726 diffServQueueMaximumRate, 2727 diffServQueuePriority, diffServQueueStatus, 2728 diffServQueueNextTCB 2729 } 2730 STATUS current 2731 DESCRIPTION 2732 "The Queue Group contains the objects that describe an 2733 interface's queues." 2734 ::= { diffServMIBGroups 6 } 2736 diffServMIBStaticGroup OBJECT-GROUP 2737 OBJECTS { 2738 diffServClassifierUnique, diffServTBMeterUnique, 2739 diffServQueueUnique, diffServActionUnique 2740 } 2741 STATUS current 2742 DESCRIPTION 2743 "The Static Group contains scalar objects used in 2744 creating unique enumerations for classifiers, meters, 2746 Draft Differentiated Services MIB March 2000 2748 and queues." 2749 ::= { diffServMIBGroups 7 } 2750 END 2752 Draft Differentiated Services MIB March 2000 2754 5. Acknowledgments 2756 This MIB has been developed with active involvement from a 2757 number of sources, but most notably Yoram Bernet, Steve Blake, 2758 Brian Carpenter, Kwok Chan, Dave Durham, Jeremy Greene, Roch 2759 Guerin, Scott Hahn, Keith McCloghrie, Kathleen Nichols, Ping 2760 Pan, Andrew Smith, and Bert Wijnen. 2762 6. Security Considerations 2764 It is clear that this MIB is potentially useful for 2765 configuration, and anything that can be configured can be 2766 misconfigured, with potentially disastrous effect. 2768 At this writing, no security holes have been identified beyond 2769 those that SNMP Security is itself intended to address. These 2770 relate to primarily controlled access to sensitive information 2771 and the ability to configure a device - or which might result 2772 from operator error, which is beyond the scope of any security 2773 architecture. 2775 There are a number of management objects defined in this MIB 2776 that have a MAX-ACCESS clause of read-write and/or read- 2777 create. Such objects may be considered sensitive or vulnerable 2778 in some network environments. The support for SET operations 2779 in a non-secure environment without proper protection can have 2780 a negative effect on network operations. The use of SNMP 2781 Version 3 is recommended over prior versions, for 2782 configuration control, as its security model is improved. 2784 There are a number of managed objects in this MIB that may 2785 contain information that may be sensitive from a business 2786 perspective, in that they may represent a customer's service 2787 contract or the filters that the service provider chooses to 2788 apply to a customer's ingress or egress traffic. There are no 2789 objects which are sensitive in their own right, such as 2790 passwords or monetary amounts. 2792 It may be important to control even GET access to these 2793 objects and possibly to even encrypt the values of these 2794 object when sending them over the network via SNMP. Not all 2795 versions of SNMP provide features for such a secure 2796 environment. 2798 Draft Differentiated Services MIB March 2000 2800 7. References 2802 [1] Harrington, D., Presuhn, R., and B. Wijnen, "An 2803 Architecture for Describing SNMP Management Frameworks", 2804 RFC 2571, Cabletron Systems, Inc., BMC Software, Inc., 2805 IBM T. J. Watson Research, April 1999 2807 [2] Rose, M., and K. McCloghrie, "Structure and 2808 Identification of Management Information for TCP/IP-based 2809 Internets", RFC 1155, STD 16, Performance Systems 2810 International, Hughes LAN Systems, May 1990 2812 [3] Rose, M., and K. McCloghrie, "Concise MIB Definitions", 2813 RFC 1212, STD 16, Performance Systems International, 2814 Hughes LAN Systems, March 1991 2816 [4] M. Rose, "A Convention for Defining Traps for use with 2817 the SNMP", RFC 1215, Performance Systems International, 2818 March 1991 2820 [5] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 2821 Rose, M., and S. Waldbusser, "Structure of Management 2822 Information Version 2 (SMIv2)", RFC 2578, STD 58, Cisco 2823 Systems, SNMPinfo, TU Braunschweig, SNMP Research, First 2824 Virtual Holdings, International Network Services, April 2825 1999 2827 [6] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 2828 Rose, M., and S. Waldbusser, "Textual Conventions for 2829 SMIv2", RFC 2579, STD 58, Cisco Systems, SNMPinfo, TU 2830 Braunschweig, SNMP Research, First Virtual Holdings, 2831 International Network Services, April 1999 2833 [7] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., 2834 Rose, M., and S. Waldbusser, "Conformance Statements for 2835 SMIv2", RFC 2580, STD 58, Cisco Systems, SNMPinfo, TU 2836 Braunschweig, SNMP Research, First Virtual Holdings, 2837 International Network Services, April 1999 2839 [8] Case, J., Fedor, M., Schoffstall, M., and J. Davin, 2840 "Simple Network Management Protocol", RFC 1157, STD 15, 2841 SNMP Research, Performance Systems International, 2842 Performance Systems International, MIT Laboratory for 2843 Computer Science, May 1990. 2845 [9] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, 2846 "Introduction to Community-based SNMPv2", RFC 1901, SNMP 2848 Draft Differentiated Services MIB March 2000 2850 Research, Inc., Cisco Systems, Inc., Dover Beach 2851 Consulting, Inc., International Network Services, January 2852 1996. 2854 [10] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, 2855 "Transport Mappings for Version 2 of the Simple Network 2856 Management Protocol (SNMPv2)", RFC 1906, SNMP Research, 2857 Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc., 2858 International Network Services, January 1996. 2860 [11] Case, J., Harrington D., Presuhn R., and B. Wijnen, 2861 "Message Processing and Dispatching for the Simple 2862 Network Management Protocol (SNMP)", RFC 2572, SNMP 2863 Research, Inc., Cabletron Systems, Inc., BMC Software, 2864 Inc., IBM T. J. Watson Research, April 1999 2866 [12] Blumenthal, U., and B. Wijnen, "User-based Security Model 2867 (USM) for version 3 of the Simple Network Management 2868 Protocol (SNMPv3)", RFC 2574, IBM T. J. Watson Research, 2869 April 1999 2871 [13] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, 2872 "Protocol Operations for Version 2 of the Simple Network 2873 Management Protocol (SNMPv2)", RFC 1905, SNMP Research, 2874 Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc., 2875 International Network Services, January 1996. 2877 [14] Levi, D., Meyer, P., and B. Stewart, "SNMPv3 2878 Applications", RFC 2573, SNMP Research, Inc., Secure 2879 Computing Corporation, Cisco Systems, April 1999 2881 [15] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based 2882 Access Control Model (VACM) for the Simple Network 2883 Management Protocol (SNMP)", RFC 2575, IBM T. J. Watson 2884 Research, BMC Software, Inc., Cisco Systems, Inc., April 2885 1999 2887 [16] Case, J., Mundy, R., Partain, D., and B. Stewart, 2888 "Introduction to Version 3 of the Internet-standard 2889 Network Management Framework", RFC 2570, SNMP Research, 2890 Inc., TIS Labs at Network Associates, Inc., Ericsson, 2891 Cisco Systems, April 1999 2893 [DSCP] 2894 K. Nichols, S. Blake, F. Baker, D. Black, "Definition of 2895 the Differentiated Services Field (DS Field) in the IPv4 2896 and IPv6 Headers." RFC 2474, December 1998. 2898 Draft Differentiated Services MIB March 2000 2900 [Architecture] 2901 S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, W. 2902 Weiss, "An Architecture for Differentiated Service." RFC 2903 2475, December 1998. 2905 [AF] J. Heinanen, F. Baker, W. Weiss, J. Wroclawski, "Assured 2906 Forwarding PHB Group." RFC 2597, June 1999. 2908 [EF] V. Jacobson, K. Nichols, K. Poduri. "An Expedited 2909 Forwarding PHB." RFC 2598, June 1999. 2911 [Model] 2912 Bernet et al, "A Conceptual Model for Diffserv Routers", 2913 March 2000, draft-ietf-diffserv-model-02.txt 2915 [IFMIB] 2916 K. McCloghrie, F. Kastenholz. "The Interfaces Group MIB 2917 using SMIv2", Request for Comments 2233, November 1997. 2919 [DSPIB] 2920 M. Fine, K. McCloghrie, J. Seligson, K. Chan, S. Hahn, A. 2921 Smith "Differentiated Services Policy Information Base", 2922 March 2000, draft-ietf-diffserv-pib-00.txt 2924 [INETADDRESS] 2925 Daniele, M., Haberman, B., Routhier, S., Schoenwaelder, 2926 J. "Textual Conventions for Internet Network 2927 Addresses.", February 17, 2000, draft-ops-endpoint-mib- 2928 07.txt 2930 [ActQMgmt] 2931 V. Firoiu, M. Borden "A Study of Active Queue Management 2932 for Congestion Control", March 2000, In IEEE Infocom 2933 2000, http://www.ieee-infocom.org/2000/papers/405.pdf 2935 8. Authors' Addresses: 2937 Fred Baker 2938 519 Lado Drive 2939 Santa Barbara, California 93111 2940 fred@cisco.com 2942 Kwok Ho Chan 2943 Nortel Networks 2944 600 Technology Park Drive 2945 Billerica, MA 01821 2946 khchan@nortelnetworks.com 2948 Draft Differentiated Services MIB March 2000 2950 Andrew Smith 2951 Extreme Networks 2952 3585 Monroe Street 2953 Santa Clara, CA 95051 2954 USA 2955 andrew@extremenetworks.com