1-- ***************************************************************** 2-- CISCO-FLOW-MONITOR-MIB 3-- Definitions of managed objects describing flow monitoring. 4-- 5-- October 2008, Patrick R. Gili 6-- 7-- Copyright (c) 2008 by Cisco Systems, Inc. 8-- All rights reserved. 9-- ***************************************************************** 10 11CISCO-FLOW-MONITOR-TC-MIB DEFINITIONS ::= BEGIN 12 13IMPORTS 14 Integer32, 15 MODULE-IDENTITY, 16 Unsigned32 17 FROM SNMPv2-SMI 18 TEXTUAL-CONVENTION 19 FROM SNMPv2-TC 20 ciscoMgmt 21 FROM CISCO-SMI; 22 23 24ciscoFlowMonitorTcMIB MODULE-IDENTITY 25 LAST-UPDATED "200812090000Z" 26 ORGANIZATION "Cisco Systems, Inc." 27 CONTACT-INFO 28 "Cisco Systems 29 Customer Service 30 31 Postal: 170 W Tasman Drive 32 San Jose, CA 95134 33 34 Tel: +1 800 553-NETS 35 36 E-mail: cs-snmp@cisco.com" 37 DESCRIPTION 38 "This MIB module defines textual conventions used by the MIB 39 modules defining objects describing flow monitoring. 40 41 GLOSSARY 42 ============ 43 44 Alarm Action - a method used by the device to signal changes in 45 an alarm condition. 46 47 Alarm Aggregation - a technique used to efficiently monitor the 48 same standing condition for a flow set. 49 50 Alarm Condition - a standing condition for which the device 51 signals changes in state. 52 53 Alarm Group - a flow set for which the device monitors a 54 configured standing condition, raising an alarm when a 55 configured number of flows in the flow set assert the 56 standing standing. 57 58 Alarm Severity - the relative disposition of an alarm condition 59 when raised by the device. For example, a provider may 60 regard a flow stop alarm as having a higher severity than a 61 flow's loss fraction exceeding a configured threshold. 62 63 Flow Monitor - a hardware or software entity that classifies 64 traffic flows, collects flow data, and periodically 65 computes flow metrics. 66 67 Flow Metric - a measurement that reflects the quality of a 68 traffic flow. 69 70 Flow Point - represents the ingress or egress of a traffic flow. 71 72 Flow Set - a group of traffic flows. 73 74 Measurement Interval - the length of time over which a flow 75 monitor collects data related to a traffic flow, after which 76 the flow monitor computes flow metrics using the collected 77 data. 78 79 Standing Condition - represents a lasting error, fault, or 80 warning resulting from the application of a set of criteria 81 to the state of an entity, such as a flow monitor or traffic 82 flow. For example, a flow monitor may assert a standing 83 condition if the number of traffic flows that expire in a 84 meansurement interval exceeds a configured threshold. 85 86 Traffic Flow - a unidirectional stream of packets conforming to 87 a classifier. For example, packets having a particular 88 source IP address, destination IP address, protocol type, 89 source port number, and destination port number. 90 " 91 REVISION "200812090000Z" 92 DESCRIPTION 93 "The initial version of the MIB module." 94 ::= { ciscoMgmt 688 } 95 96 97 98FlowMonitorIdentifier ::= TEXTUAL-CONVENTION 99 DISPLAY-HINT "d" 100 STATUS current 101 DESCRIPTION 102 "This textual convention denotes an arbitrary integer-value 103 that uniquely identifies a flow monitor." 104 SYNTAX Unsigned32 (1..4294967295) 105 106FlowIdentifier ::= TEXTUAL-CONVENTION 107 DISPLAY-HINT "d" 108 STATUS current 109 DESCRIPTION 110 "This textual convention denotes an arbitrary integer-value 111 that uniquely identifies a traffic flow within the scope of the 112 flow monitor that collects data and periodically computes 113 metrics for the traffic flow." 114 SYNTAX Unsigned32 (1..4294967295) 115 116FlowPointType ::= TEXTUAL-CONVENTION 117 STATUS current 118 DESCRIPTION 119 "This textual convention denotes an enumerated integer-value 120 that represents a point at which a flow monitor collects data 121 for a traffic flow: 122 123 'other' 124 The implementation of the MIB module using this textual 125 convention does not recognize the flow point. 126 127 'unknown' 128 The device is unable to ascertain the point at which 129 the flow monitor collects data for the traffic flow. 130 131 'none' 132 There is no point at which the flow monitor collects 133 data for the traffic flow. 134 135 'interface' 136 The flow point is an interface represented by a row in 137 the ifTable (defined by the IF-MIB [RFC2863]. 138 139 'dot1qVlan' 140 The flow point is an IEEE 802.1q VLAN represented by a 141 row in the ifTable (defined by the IF-MIB [RFC2863]) and 142 a tag representing the VLAN. 143 144 With the exception of the values 'unknown' and 'none', each 145 definition of a concrete FlowPointType value MUST have a 146 corresponding textual convention for use with the particular 147 type of flow point. 148 149 To support future extensions, a MIB module SHOULD NOT sub-type 150 the FlowPointType textual convention in an object type 151 definition. However, a compliance statement MAY sub-type it in 152 order to require only a subset of the flow point types for a 153 compliant implementation. 154 155 Implementations must ensure that FlowPointType objects and any 156 dependent objects (e.g., FlowPointIdentifier objects) are 157 consistent. For example, an implementation must respond with an 158 'inconsistentValue' error if an attempt is made to modify a 159 FlowPointType object without changing the corresponding 160 FlowPointIdentifier object." 161 162 REFERENCE 163 "K. McCloghrie and F. Kastenholz, 'The Interfaces Group MIB', 164 RFC-2863, June 2000." 165 SYNTAX INTEGER { 166 other(1), 167 unknown(2), 168 none(3), 169 interface(4), 170 dot1qVlan(5) 171 } 172 173FlowPointIdentifier ::= TEXTUAL-CONVENTION 174 DISPLAY-HINT "1x:" 175 STATUS current 176 DESCRIPTION 177 "This textual convention denotes an octet string-value that 178 identifies a point at which a flow monitor collects data for a 179 traffic flow. 180 181 An implementation MUST ALWAYS interpret a FlowPointIdentifier 182 value within the context of a FlowPointType value. Every use 183 of the FlowPointIdentifier textual convention requires the 184 specification of a FlowPointType object to provide the context. 185 A MIB module SHOULD logically register the FlowPointType object 186 before the FlowPointIdentifier object(s). 187 188 The value of a FlowPointIdentifier object MUST BE the null 189 string if the value of the FlowPointType object providing the 190 context is 'unknown' or 'none'. 191 192 Implementations must ensure that a FlowPointIdentifier object 193 remains consistent with the FlowPointType object providing the 194 context. For example, an implementation must respond with an 195 'inconsistentValue' error if an attempt is made to modify a 196 FlowPointIdentifier object without changing the corresponding 197 FlowPointType object." 198 SYNTAX OCTET STRING (SIZE (0..255)) 199 200FlowPointInterface ::= TEXTUAL-CONVENTION 201 DISPLAY-HINT "4d" 202 STATUS current 203 DESCRIPTION 204 "This textual convention denotes an octet string-value 205 identifying a row in ifTable (defined by the IF-MIB [RFC2863]). 206 207 Octets Contents Encoding 208 ========================================= 209 1-4 ifIndex-value network-byte order 210 211 The corresponding FlowPointType value is 'interface'. 212 213 A MIB module SHOULD NOT directly use this textual convention in 214 defining object, as it restricts flow points to specific type. 215 However, if a MIB module does chose to directly use the textual 216 convention, it MAY chose to do so without a FlowPointType object 217 to define the context, since this textual convention implies the 218 context." 219 220 REFERENCE 221 "K. McCloghrie and F. Kastenholz, 'The Interfaces Group 222 MIB', 223 RFC-2863, June 2000." 224 SYNTAX OCTET STRING (SIZE (4)) 225 226FlowPointDot1qVlan ::= TEXTUAL-CONVENTION 227 DISPLAY-HINT "4d,2d" 228 STATUS current 229 DESCRIPTION 230 "This textual convention denotes an octet string-value 231 identifying an IEEE 802.1q VLAN. 232 233 Octets Contents Encoding 234 ========================================= 235 1-4 ifIndex-value network-byte order 236 5-6 VLAN tag network-byte order 237 238 The corresponding FlowPointType value is 'dot1qVlan'. 239 240 A MIB module SHOULD NOT directly use this textual convention in 241 defining object, as it restricts flow points to specific type. 242 However, if a MIB module does chose to directly use the textual 243 convention, it MAY chose to do so without a FlowPointType object 244 to define the context, since this textual convention implies the 245 context." 246 247 REFERENCE 248 "K. McCloghrie and F. Kastenholz, 'The Interfaces Group MIB', 249 RFC-2863, June 2000." 250 SYNTAX OCTET STRING (SIZE (6)) 251 252FlowMetrics ::= TEXTUAL-CONVENTION 253 STATUS current 254 DESCRIPTION 255 "This textual convention denotes an enumerated integer-value 256 that represents a set of metrics: 257 258 'mdi' 259 This set of metrics consists of the Media Delivery Index 260 (MDI) [RFC4445] 261 262 'rtp' 263 This set of metrics consists of data similar to that 264 computed and sent by a RTP client in a RTCP receiver 265 report [RFC3550]. 266 267 'ipCbr' 268 This set of metrics complements MDI, measuring the 269 notion of Media Rate Variation (MRV)." 270 271 REFERENCE 272 "H. Schulzrinne, S. Casner, R. Fredrick, and V. Jacobson, 'RTP: 273 A Transport Protocol for Real-Time Applications', RFC-3550, July 274 2003. 275 276 J. Welch and J. Clark, 'A Proposed Media Delivery Index 277 (MDI)', RFC-4445, APril 2006." 278 SYNTAX BITS { 279 mdi(0), 280 rtp(1), 281 ipCbr(2) 282 } 283 284FlowCfgRateType ::= TEXTUAL-CONVENTION 285 STATUS current 286 DESCRIPTION 287 "This textual convention denotes an enumerated integer-value 288 that represents the media rate used by the flow monitor to 289 compute the delay factor for a traffic flow: 290 291 'auto' 292 The device automatically determines the media rate. 293 294 'ipPktRate' 295 The device uses a configured media rate expressed as an 296 IP packet rate. 297 298 'ipBitRate' 299 The device uses a configured media rate expressed as an 300 IP packet rate. 301 302 'mediaRate' 303 The device uses a configured media rate expressed as a 304 media bit rate. 305 " 306 REFERENCE 307 "J. Welch and J. Clark, 'A Proposed Media Delivery Index (MDI)', 308 RFC-4445, APril 2006." 309 SYNTAX INTEGER { 310 auto(1), 311 ipPktRate(2), 312 ipBitRate(3), 313 mediaRate(4) 314 } 315 316FlowBitRateUnits ::= TEXTUAL-CONVENTION 317 STATUS current 318 DESCRIPTION 319 "This textual convention denotes an enumerated integer-value 320 that represents the units used when presenting a bit rate value. 321 322 'bps' 323 The device presents the rate of a traffic flow in bits 324 per second (bps). 325 326 'kbps' 327 The device presents the rate of a traffic flow in Kbps. 328 329 'mbps' 330 The device presents the rate of a traffic flow in Mbps. 331 332 'gbps' 333 The device presents the rate of a traffic flow in Gbps." 334 SYNTAX INTEGER { 335 bps(1), 336 kbps(2), 337 mbps(3), 338 gbps(4) 339 } 340 341FlowMetricScale ::= TEXTUAL-CONVENTION 342 STATUS current 343 DESCRIPTION 344 "This textual convention denotes an enumerated integer-value 345 that represents an International System of Units (SI) prefix 346 used as a scaling factor for fixed-point values: 347 348 Prefix Scale Factor 349 ========================= 350 'yocto' 10E-24 351 'zepto' 10E-21 352 'atto' 10E-18 353 'femto' 10E-15 354 'pico' 10E-12 355 'nano' 10E-9 356 'micro' 10E-6 357 'milli' 10E-3 358 'units' 10E0 359 'kilo' 10E3 360 'mega' 10E6 361 'giga' 10E9 362 'tera' 10E12 363 'exa' 10E15 364 'peta' 10E18 365 'zetta' 10E21 366 'yotta' 10E24 367 368 A MIB module may abstract a fixed-point value by defining three 369 objects together: 370 371 1) A FlowMetricScale object, which indicates the scale of the 372 value. 373 374 2) A FlowMetricPrecision object, which indicates the precision 375 of the value. In the case that the value has a fractional 376 portion, this object indicates the number of digits 377 comprising the fractional portion. 378 379 3) A FlowMetricValue object, which indicates the value before 380 scaling." 381 SYNTAX INTEGER { 382 yocto(1), 383 zepto(2), 384 atto(3), 385 femto(4), 386 pico(5), 387 nano(6), 388 micro(7), 389 milli(8), 390 units(9), 391 kilo(10), 392 mega(11), 393 giga(12), 394 tera(13), 395 exa(14), 396 peta(15), 397 zetta(16), 398 yotta(17) 399 } 400 401FlowMetricPrecision ::= TEXTUAL-CONVENTION 402 DISPLAY-HINT "d" 403 STATUS current 404 DESCRIPTION 405 "This textual convention denotes the precision or accuracy of a 406 fixed-point value. 407 408 A MIB module may abstract a fixed-point value by defining three 409 objects together: 410 411 1) A FlowMetricScale object, which indicates the scale of the 412 value. 413 414 2) A FlowMetricPrecision object, which indicates the precision 415 of the value. In the case that the value has a fractional 416 portion, this object indicates the number of digits 417 comprising the fractional portion. 418 419 3) A FlowMetricValue object, which indicates the value before 420 scaling. 421 422 If an instance of an object of this type has a value in the 423 range of 1 to 9, then it represents the precision of the 424 associated value; that is, the number of decimal places in the 425 fractional part of the associated value. For example, if the 426 Media Loss Rate (MLR) computed for a traffic flow is 350.9E-6, 427 then the FlowMetricScale object is 'micro', the 428 FlowMetricPrecision object is 1, and the object indicating the 429 value is 3509. 430 431 If an instance of an object of this type has a value in the 432 range of -8 to -1, then it represents the number of accurate 433 digits in the associated value. For example, if the jitter 434 measured for a traffic flow can range between -100,000 and 435 100,000 microseconds in 10 microsecond increments, with an 436 accuracy of +/- 5 microseconds, the FlowMetricScale object is 437 'micro', the FlowMetricPrecision object is -2, and the object 438 indicating the value has range of -100,000 to 100,000." 439 SYNTAX Integer32 (-8..-1 | 1..9) 440 441FlowMetricValue ::= TEXTUAL-CONVENTION 442 DISPLAY-HINT "d" 443 STATUS current 444 DESCRIPTION 445 "This textual convention denotes the value of a fixed-point 446 value. 447 448 A MIB module may abstract a fixed-point value by defining three 449 objects together: 450 451 1) A FlowMetricScale object, which indicates the scale of the 452 value. 453 454 2) A FlowMetricPrecision object, which indicates the precision 455 of the value. In the case that the value has a fractional 456 portion, this object indicates the number of digits 457 comprising the fractional portion. 458 459 3) A FlowMetricValue object, which indicates the value before 460 scaling." 461 SYNTAX Integer32 (-1000000000..1000000000) 462 463FlowMonitorConditions ::= TEXTUAL-CONVENTION 464 DISPLAY-HINT "1x:" 465 STATUS current 466 DESCRIPTION 467 "This textual convention denotes a octet string-value that 468 represents the standing conditions associated with an entity, 469 such as a flow monitor a traffic flow. 470 471 Each bit in the string corresponds to a single standing 472 condition. The device should present a description of the 473 standing condition in the cfmConditionTable, which uniquely 474 identifies such a description by the following tuple: 475 476 [cfmConditionProfile, cfmConditionId] 477 478 where cfmConditionProfile uniquely identifies the conditions 479 profile containing the description and cfmConditionId 480 corresponds to the bit position within the string. The figure 481 below illustrates a representation of the string containing N 482 octets: 483 484 Octet 0 Octet N-1 485 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 486 +-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ 487 | |...| | 488 +-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ 489 | | | | | | | | | | | | | | | | 490 | | | | | | | | | | | | | | | +- Condition 8(n-1) 491 | | | | | | | | | | | | | | +--- Condition 8(n-1)+1 492 | | | | | | | | | | | | | +----- Condition 8(n-1)+2 493 | | | | | | | | | | | | +------- Condition 8(n-1)+3 494 | | | | | | | | | | | +--------- Condition 8(n-1)+4 495 | | | | | | | | | | +----------- Condition 8(n-1)+5 496 | | | | | | | | | +------------- Condition 8(n-1)+6 497 | | | | | | | | +--------------- Condition 8(n-1)+7 498 | | | | | | | | : 499 | | | | | | | | : 500 | | | | | | | +--------------------- Condition 0 501 | | | | | | +----------------------- Condition 1 502 | | | | | +------------------------- Condition 2 503 | | | | +--------------------------- Condition 3 504 | | | +----------------------------- Condition 4 505 | | +------------------------------- Condition 5 506 | +--------------------------------- Condition 6 507 +----------------------------------- Condition 7" 508 SYNTAX OCTET STRING (SIZE (0..255)) 509 510FlowMonitorConditionsProfile ::= TEXTUAL-CONVENTION 511 DISPLAY-HINT "d" 512 STATUS current 513 DESCRIPTION 514 "This textual convention denotes an arbitrary integer-value 515 that uniquely identifies a conditions profile. A conditions 516 profile is a set of descriptions of standing/alarm conditions 517 that can be applied to an entity, such as a flow alarm or a 518 traffic flow." 519 SYNTAX Unsigned32 (1..4294967295) 520 521FlowMonitorConditionsProfileOrZero ::= TEXTUAL-CONVENTION 522 DISPLAY-HINT "d" 523 STATUS current 524 DESCRIPTION 525 "This textual convention serves as an extension of the 526 FlowMonitorConditionsProfile textual convention, which permits 527 the value '0'. The use of the value '0' is specific to an 528 object, thus requiring the descriptive text associated with the 529 object to describe the semantics of its use." 530 SYNTAX Unsigned32 (0..4294967295) 531 532FlowMonitorConditionIdentifier ::= TEXTUAL-CONVENTION 533 DISPLAY-HINT "d" 534 STATUS current 535 DESCRIPTION 536 "This textual convention denotes an integer-value representing 537 a standing/alarm condition within a conditions profile. It has 538 a direct correspondence to the position of the bit representing 539 the standing/alarm condition in a FlowMonitorConditions object." 540 SYNTAX Unsigned32 (0..2039) 541 542FlowMonitorAlarmGroupIdentifier ::= TEXTUAL-CONVENTION 543 DISPLAY-HINT "d" 544 STATUS current 545 DESCRIPTION 546 "This textual convention denotes an arbitrary integer-value 547 that uniquely identifies an alarm group. An alarm group 548 represents an alarm condition that the device raises if a 549 configured number of traffic flows in a configured set of 550 traffic flows asserts a given standing condition." 551 SYNTAX Unsigned32 (1..4294967295) 552 553FlowSetIdentifier ::= TEXTUAL-CONVENTION 554 DISPLAY-HINT "d" 555 STATUS current 556 DESCRIPTION 557 "This textual convention denotes an arbitrary integer-value 558 that uniquely identifies a set of traffic flows." 559 SYNTAX Unsigned32 (1..4294967295) 560 561END 562 563 564 565 566 567 568 569 570 571 572