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