1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
|
SFLOW-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, enterprises
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
OwnerString
FROM RMON-MIB
InetAddressType, InetAddress
FROM INET-ADDRESS-MIB
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF;
sFlowMIB MODULE-IDENTITY
LAST-UPDATED "200309240000Z" -- September 24, 2003
ORGANIZATION "Netgear Inc"
CONTACT-INFO ""
DESCRIPTION
"The MIB module for managing the generation and transportation
of sFlow data records."
--
-- Revision History
--
REVISION "200310180000Z" -- November 18, 2003
DESCRIPTION
"Version 1.3 (draft 5)
Allow set to SFlowReceiver if it doesn't change
value."
REVISION "200309240000Z" -- September 24, 2003
DESCRIPTION
"Version 1.3 (draft 4)
Default value of sFlowRcvrAddress should be '00000000' h.
Default value of sFlowCpReceiver should be 0."
REVISION "200304080000Z" -- April 8, 2003
DESCRIPTION
"Version 1.3 (draft 3)
Clarify semantics of counter polling interval,
sFlowCpInterval."
REVISION "200209170000Z" -- September 17, 2002
DESCRIPTION
"Version 1.3 (draft 2)
Adds support for multiple sFlow samplers per sFlowDataSource.
Moved to sflow.org enterprise number.
Splits flow sampling, counter polling and receiver
specification into separate tables."
REVISION "200107310000Z" -- July 31, 2001
DESCRIPTION
"Version 1.2
Brings MIB into SMI v2 compliance."
REVISION "200105010000Z" -- May 1, 2001
DESCRIPTION
"Version 1.1
Adds sfDatagramVersion."
::= { enterprises sflow(14706) 1 }
sFlowAgent OBJECT IDENTIFIER ::= { sFlowMIB 1 }
SFlowDataSource ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Identifies a source of sFlow data.
The following data source types are currently defined:
- ifIndex.<I>
SFlowDataSources of this traditional form are called
'port-based'. Ideally the sampling entity will perform
- smonVlanDataSource.<V>
An SFlowDataSource of this form refers to a 'Packet-based VLAN'
and is called a 'VLAN-based' dataSource. <V> is the VLAN
ID as defined by the IEEE 802.1Q standard. The
value is between 1 and 4094 inclusive, and it represents
an 802.1Q VLAN-ID with global scope within a given
bridged domain.
Note: Since each SFlowDataSource operates independently a
packet that crosses multiple DataSources may generate
multiple flow records."
SYNTAX OBJECT IDENTIFIER
SFlowInstance ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"If more than one sFlow sampler is available for this
SFlowDataSource then individual samplers are distinguished
using the SFlowInstance variable. The value of
SFlowInstance ranges from 1..n where n is the number of
samplers associated with this SFlowDataSource.
Note: Each sFlow sampler instance must operate
independently of all other instances. Setting
an attribute of one sampler must not alter the
the behavior and settings of other sampler
instances."
SYNTAX Integer32 (1..65535)
SFlowReceiver ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Identify the sFlow receiver associated with this resource.
A value of zero indicates that this resource is available.
If non-zero the value must correspond to a valid, active
sFlowRcvrIndex.
If the value is currently zero it may be set to any
active entry in the sFlowRcvrTable. If the value is
not zero then a set to anything other than zero or
its current value will result in an SNMP error (bad value)."
SYNTAX Integer32
sFlowVersion OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Uniquely identifies the version and implementation of this MIB.
The version string must have the following structure:
<MIB Version>;<Organization>;<Software Revision>
where:
<MIB Version> must be '1.3', the version of this MIB.
<Organization> the name of the organization responsible
for the agent implementation.
<Revision> the specific software build of this agent.
The MIB Version will change with each revision of the SFLOW
MIB.
Management entities must check the MIB Version and not attempt
to manage agents with MIB Versions greater than that for which
they were designed.
Note: The sFlow Datagram Format has an independent version
number which may change independently from <MIB Version>.
<MIB Version> applies to the structure and semantics of
the SFLOW MIB only."
DEFVAL { "1.3;;" }
::= { sFlowAgent 1 }
sFlowAgentAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The address type of the address associated with this agent.
Only ipv4 and ipv6 types are supported."
::= { sFlowAgent 2 }
sFlowAgentAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The IP address associated with this agent. In the case of a
multi-homed agent, this should be the loopback address of the
agent. The sFlowAgent address must provide SNMP connectivity
to the agent. The address should be an invariant that does not
change as interfaces are reconfigured, enabled, disabled,
added or removed. A manager should be able to use the
sFlowAgentAddress as a unique key that will identify this
agent over extended periods of time so that a history can
be maintained."
::= { sFlowAgent 3 }
--
-- Receiver Table
--
sFlowRcvrTable OBJECT-TYPE
SYNTAX SEQUENCE OF SFlowRcvrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of the receivers of sFlow information."
::= { sFlowAgent 4 }
sFlowRcvrEntry OBJECT-TYPE
SYNTAX SFlowRcvrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Attributes of an sFlow Receiver."
INDEX { sFlowRcvrIndex }
::= { sFlowRcvrTable 1 }
SFlowRcvrEntry ::= SEQUENCE {
sFlowRcvrIndex Integer32,
sFlowRcvrOwner OwnerString,
sFlowRcvrTimeout Integer32,
sFlowRcvrMaximumDatagramSize Integer32,
sFlowRcvrAddressType InetAddressType,
sFlowRcvrAddress InetAddress,
sFlowRcvrPort Integer32,
sFlowRcvrDatagramVersion Integer32
}
sFlowRcvrIndex OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Index into sFlowReceiverTable."
::= { sFlowRcvrEntry 1 }
sFlowRcvrOwner OBJECT-TYPE
SYNTAX OwnerString
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The entity making use of this sFlowRcvrTable entry. The empty
string indicates that the entry is currently unclaimed.
An entity wishing to claim an sFlowRcvrTable entry must ensure
that the entry is unclaimed before trying to claim it.
The entry is claimed by setting the owner string. The entry
must be claimed before any changes can be made to other sampler
objects.
In order to avoid a race condition, the entity taking control
of the sampler must set both the owner and a value for
sFlowRcvrTimeout in the same SNMP set request.
When a management entity is finished using the sampler,
it should set the value of sFlowRcvrOwner back to unclaimed.
The agent must restore all other entities this row to their
default values when the owner is set to unclaimed. It must
also free all other resources associated with this
sFlowRcvrTable entry.
This mechanism provides no enforcement and relies on the
cooperation of management entities in order to ensure that
competition for a receiver entry is fairly resolved."
DEFVAL { "" }
::= { sFlowRcvrEntry 2 }
sFlowRcvrTimeout OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The time (in seconds) remaining before the sampler is released
and stops sampling. When set, the owner establishes control
for the specified period. When read, the remaining time in the
interval is returned.
A management entity wanting to maintain control of the sampler
is responsible for setting a new value before the old one
expires.
When the interval expires, the agent is responsible for
restoring all other entities in this row to their default
values. It must also free all other resources associated with
this sFlowRcvrTable entry."
DEFVAL { 0 }
::= { sFlowRcvrEntry 3 }
sFlowRcvrMaximumDatagramSize OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of data bytes that can be sent in a single
sample datagram. The manager should set this value to avoid
fragmentation of the sFlow datagrams."
DEFVAL { 1400 }
::= { sFlowRcvrEntry 4 }
sFlowRcvrAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The type of sFlowRcvrCollectorAddress."
DEFVAL { ipv4 }
::= { sFlowRcvrEntry 5 }
sFlowRcvrAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The IP address of the sFlow collector.
If set to 0.0.0.0 not sFlow datagrams will be sent."
DEFVAL { '00000000'h } -- 0.0.0.0
::= { sFlowRcvrEntry 6 }
sFlowRcvrPort OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The destination port for sFlow datagrams."
DEFVAL { 6343 }
::= { sFlowRcvrEntry 7 }
sFlowRcvrDatagramVersion OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The version of sFlow datagrams that should be sent.
When set to a value not support by the agent, the agent should
adjust the value to the highest supported value less than the
requested value, or return an SNMP bad value error if no
such value exists."
DEFVAL { 5 }
::= { sFlowRcvrEntry 8 }
--
-- Flow Sampling Table
--
sFlowFsTable OBJECT-TYPE
SYNTAX SEQUENCE OF SFlowFsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of the flow samplers within a device."
::= { sFlowAgent 5 }
sFlowFsEntry OBJECT-TYPE
SYNTAX SFlowFsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Attributes of a flow sampler."
INDEX { sFlowFsDataSource, sFlowFsInstance }
::= { sFlowFsTable 1 }
SFlowFsEntry ::= SEQUENCE {
sFlowFsDataSource SFlowDataSource,
sFlowFsInstance SFlowInstance,
sFlowFsReceiver SFlowReceiver,
sFlowFsPacketSamplingRate Integer32,
sFlowFsMaximumHeaderSize Integer32
}
sFlowFsDataSource OBJECT-TYPE
SYNTAX SFlowDataSource
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"sFlowDataSource for this flow sampler."
::= { sFlowFsEntry 1 }
sFlowFsInstance OBJECT-TYPE
SYNTAX SFlowInstance
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The sFlow instance for this flow sampler."
::= { sFlowFsEntry 2 }
sFlowFsReceiver OBJECT-TYPE
SYNTAX SFlowReceiver
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The SFlowReceiver for this flow sampler."
DEFVAL { 0 }
::= { sFlowFsEntry 3 }
sFlowFsPacketSamplingRate OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The statistical sampling rate for packet sampling from this
source.
Set to N to sample 1/Nth of the packets in the monitored flows.
An agent should choose its own algorithm to introduce variance
into the sampling so that exactly every Nth packet is not
counted. A sampling rate of 1 counts all packets. A sampling
rate of 0 disables sampling.
The agent is permitted to have minimum and maximum allowable
values for the sampling rate. A minimum rate lets the agent
designer set an upper bound on the overhead associated with
sampling, and a maximum rate may be the result of hardware
restrictions (such as counter size). In addition not all values
between the maximum and minimum may be realizable as the
sampling rate (again because of implementation considerations).
When the sampling rate is set the agent is free to adjust the
value so that it lies between the maximum and minimum values
and has the closest achievable value.
When read, the agent must return the actual sampling rate it
will be using (after the adjustments previously described). The
sampling algorithm must converge so that over time the number
of packets sampled approaches 1/Nth of the total number of
packets in the monitored flows."
DEFVAL { 0 }
::= { sFlowFsEntry 4 }
sFlowFsMaximumHeaderSize OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of bytes that should be copied from a
sampled packet. The agent may have an internal maximum and
minimum permissible sizes. If an attempt is made to set this
value outside the permissible range then the agent should
adjust the value to the closest permissible value."
DEFVAL { 128 }
::= { sFlowFsEntry 5 }
--
-- Counter Polling Table
--
sFlowCpTable OBJECT-TYPE
SYNTAX SEQUENCE OF SFlowCpEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of the counter pollers within a device."
::= { sFlowAgent 6 }
sFlowCpEntry OBJECT-TYPE
SYNTAX SFlowCpEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Attributes of a counter poller."
INDEX { sFlowCpDataSource, sFlowCpInstance }
::= { sFlowCpTable 1 }
SFlowCpEntry ::= SEQUENCE {
sFlowCpDataSource SFlowDataSource,
sFlowCpInstance SFlowInstance,
sFlowCpReceiver SFlowReceiver,
sFlowCpInterval Integer32
}
sFlowCpDataSource OBJECT-TYPE
SYNTAX SFlowDataSource
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Identifies the source of the data for the counter poller."
::= { sFlowCpEntry 1 }
sFlowCpInstance OBJECT-TYPE
SYNTAX SFlowInstance
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The sFlowInstance for this counter poller."
::= { sFlowCpEntry 2 }
sFlowCpReceiver OBJECT-TYPE
SYNTAX SFlowReceiver
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The SFlowReciever associated with this counter poller."
DEFVAL { 0 }
::= { sFlowCpEntry 3 }
sFlowCpInterval OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of seconds between successive samples of the
counters associated with this data source. A sampling interval
of 0 disables counter sampling."
DEFVAL { 0 }
::= { sFlowCpEntry 4 }
sFlowMIBConformance OBJECT IDENTIFIER ::= { sFlowMIB 2 }
sFlowMIBGroups OBJECT IDENTIFIER ::= { sFlowMIBConformance 1 }
sFlowMIBCompliances OBJECT IDENTIFIER ::= { sFlowMIBConformance 2 }
sFlowCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance statements for the sFlow Agent."
MODULE -- this module
MANDATORY-GROUPS { sFlowAgentGroup }
OBJECT sFlowAgentAddressType
SYNTAX InetAddressType
DESCRIPTION
"Agents need only support ipv4."
OBJECT sFlowRcvrAddressType
SYNTAX InetAddressType
DESCRIPTION
"Agents need only support ipv4."
::= { sFlowMIBCompliances 1 }
sFlowAgentGroup OBJECT-GROUP
OBJECTS { sFlowVersion, sFlowAgentAddressType, sFlowAgentAddress,
sFlowRcvrOwner, sFlowRcvrTimeout,
sFlowRcvrMaximumDatagramSize, sFlowRcvrAddressType,
sFlowRcvrAddress, sFlowRcvrPort,
sFlowRcvrDatagramVersion, sFlowFsReceiver,
sFlowFsPacketSamplingRate, sFlowFsMaximumHeaderSize,
sFlowCpReceiver, sFlowCpInterval }
STATUS current
DESCRIPTION
"A collection of objects for managing the generation and
transportation of sFlow data records."
::= { sFlowMIBGroups 1 }
END
|