536 lines
21 KiB
Plaintext
536 lines
21 KiB
Plaintext
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
|