snmp_mib_archive/CISCO-PORT-STORM-CONTROL-MIB.my
Heston Snodgrass 89bf4b016e initial commit
2016-12-15 15:03:18 -07:00

722 lines
24 KiB
Plaintext

-- CISCO-PORT-STORM-CONTROL-MIB.my
-- MIB support for the Port Storm Control Feature
--
-- Copyright (c) 2003, 2007 by Cisco Systems, Inc.
-- All rights reserved
CISCO-PORT-STORM-CONTROL-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE,
Integer32,
Counter64
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
ifIndex
FROM IF-MIB
TruthValue,
TEXTUAL-CONVENTION,
TimeStamp
FROM SNMPv2-TC
ciscoMgmt
FROM CISCO-SMI;
ciscoPortStormControlMIB MODULE-IDENTITY
LAST-UPDATED "200710190000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems
Customer Services
Postal: 170 W Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: cs-lan-switch-snmp@cisco.com"
DESCRIPTION
"The MIB module for managing Cisco Port Storm Control."
REVISION "200710190000Z"
DESCRIPTION
"cpscEvent notification is deprecated and replaced by new
notification cpscEventRev1."
REVISION "200307030000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 362 }
-- A LAN storm occurs when packets flood the LAN creating excessive
-- traffic. Storm control is a mechanism to mitigate the effect of
-- the storm, by controlling the amount of received broadcast,
-- multicast, or unicast traffic.
--
-- The port storm control MIB allows the Network Management Station
-- to configure the storm control feature on supported physical
-- interfaces.
--
--
-- MIB Groups
ciscoPortStormControlMIBNotifs OBJECT IDENTIFIER
::= { ciscoPortStormControlMIB 0 }
ciscoPortStormControlMIBObjects OBJECT IDENTIFIER
::= { ciscoPortStormControlMIB 1 }
ciscoPortStormControlMIBConform OBJECT IDENTIFIER
::= { ciscoPortStormControlMIB 2 }
cpscConfigObjects OBJECT IDENTIFIER
::= { ciscoPortStormControlMIBObjects 1 }
cpscStatusObjects OBJECT IDENTIFIER
::= { ciscoPortStormControlMIBObjects 2 }
-- Textual Conventions
--
--
-- Traffic Types that can be regulated by Storm Control
CPortStormControlTrafficType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The type of traffic that can be configured to be
regulated per physical interface."
SYNTAX INTEGER {
broadcast(1),
multicast(2),
unicast(3),
all(4)
}
-- Storm control Action that the user can configure on a port
CPortStormControlActionType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The type of storm control action that is configured on
a port.
An action of filter indicates that packets should be
filtered if a storm event is detected on a port.
An action of shutdown indicates that the port should be
shutdown if a storm event is detected on a port."
SYNTAX INTEGER {
filter(1),
shutdown(2)
}
CPortStormControlStatusType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The current status of storm control on a given
interface for a given traffic type.
inactive - Indicates that storm control is not enabled
for the given traffic type.
forwarding - Indicates that storm control is monitoring
the traffic type, but no storm event has
been detected.
trafficTypeFiltered - Indicates that a storm event has
has occurred and the particular
traffic type is being filtered
allTrafficFiltered - Indicates that a storm event has
occurred and all traffic received
on the interface is being filtered
shutdown - Indicates that the interface has been
shutdown in response to a storm event."
SYNTAX INTEGER {
inactive(1),
forwarding(2),
trafficTypeFiltered(3),
allTrafficFiltered(4),
shutdown(5)
}
-- Storm Control Configuration
-- A management station needs to do a couple of things to
-- configure storm control on an interface
-- One is to configure the thresholds for the particular traffic
-- type(s) and the other is to configure the desired action
cpscThresholdTable OBJECT-TYPE
SYNTAX SEQUENCE OF CPortSCThresholdEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of storm control threshold configuration entries."
::= { cpscConfigObjects 1 }
cpscThresholdEntry OBJECT-TYPE
SYNTAX CPortSCThresholdEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A collection of storm control threshold configuration
entries.
Storm control can be configured for multiple traffic types
on a given interface. One entry is created for each
interface and the traffic type that can be monitored by
the device."
INDEX {
ifIndex,
cpscTrafficType
}
::= { cpscThresholdTable 1 }
CPortSCThresholdEntry ::= SEQUENCE {
cpscTrafficType CPortStormControlTrafficType,
cpscUpperThreshold INTEGER,
cpscLowerThreshold INTEGER
}
cpscTrafficType OBJECT-TYPE
SYNTAX CPortStormControlTrafficType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object identifies a particular traffic type
for which a management station desires to configure
storm control on the given interface (which is identified
by its ifIndex)."
::= { cpscThresholdEntry 1 }
cpscUpperThreshold OBJECT-TYPE
SYNTAX INTEGER (0..10000)
UNITS "0.01 Percentage"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object represents the upper threshold of total
amount of a particular traffic type that can be seen
on a given interface, after which a storm event is
declared and storm control action is taken.
The value represents the traffic as a percentage of
total bandwidth of the interface, in units of 0.01 %.
For example, if a management station sets the value of
cpscUpperThreshold.3.1 as 4000, it means the
following:
a) storm control is enabled on the interface with
ifIndex = 3 for broadcast (1) packets
b) if the broadcast traffic received per second
on the interface is more than (4000*0.01 = 40%) of
the total interface bandwidth, then the system will
take storm control actions, as indicated by
cpscAction.3 .
It should be noted that setting the upper threshold value
to anything other than 100% results in storm control being
automatically enabled on the given interface, for the
given traffic type.
An implementation may not be able to support different
threshold values for different traffic types, in which
case changing the value for one traffic type will
automatically result in the threshold value for other
types also modified.
The default value of this object is implementation-
dependent."
::= { cpscThresholdEntry 2 }
cpscLowerThreshold OBJECT-TYPE
SYNTAX INTEGER (0..10000)
UNITS "0.01 Percentage"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object represents the lower threshold of total
amount of a particular traffic type.
When a filter action (see cpscAction) is
in effect on an interface because of a previous storm
event, the value of this object determines when the
system will stop the filter action.
The value represents traffic as percent of total bandwidth
of the interface, in units of 0.01 %.
For example, if a broadcast(1) storm occurred on an
interface with ifIndex 3, and the value of
cpscLowerThreshold.3.1 is 2500 (25%), then
the system will stop filtering broadcast traffic on that
interface if it drops below 25% of the total bandwidth.
This value will be ignored if a shutdown action is
configured. The value of this object must be
equal to or less than the value of the upper threshold
specified by cpscUpperThreshold for the same entry.
The default value of this object is implementation-
dependent.
On platforms that only support one threshold level for
this traffic type and interface,this object is read-only
and always has the same value of the corresponding
cpscUpperThreshold for the same entry."
::= { cpscThresholdEntry 3 }
-- Per interface storm action configuration table
cpscActionTable OBJECT-TYPE
SYNTAX SEQUENCE OF CPortSCActionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of storm control action entries."
::= { cpscConfigObjects 2 }
cpscActionEntry OBJECT-TYPE
SYNTAX CPortSCActionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing the storm control action
configuration information. An entry is created for each
interface that can support the storm control feature."
INDEX { ifIndex }
::= { cpscActionTable 1 }
CPortSCActionEntry ::= SEQUENCE {
cpscAction CPortStormControlActionType,
cpscNotificationControl INTEGER
}
cpscAction OBJECT-TYPE
SYNTAX CPortStormControlActionType
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object represents the storm control action
taken when the traffic of a particular type exceeds
the configured upper threshold values."
::= { cpscActionEntry 1 }
cpscNotificationControl OBJECT-TYPE
SYNTAX INTEGER {
none(1),
stormOccurred(2),
stormCleared(3),
both(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object controls when a storm control notification
will be generated.
If the object is set to none(1), no notifications will
be generated.
A notification will be generated when a storm event is
detected or cleared when the object is set to
stormOccurred(2) or stormCleared(3) respectively.
If the object is set to both(4), a notification will be
generated both when a storm event is detected and
cleared.
NOTE:
a) The default value of this object is none(1).
b) Irrespective of the value of this object, the
value of the global object cpscNotificationThreshold
controls whether or not a notification will be
generated at a given point."
::= { cpscActionEntry 2 }
-- Global Storm control notification configuration
cpscNotificationThreshold OBJECT-TYPE
SYNTAX INTEGER (0..1000)
UNITS "Notifications per Minute"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value of object controls the global rate of storm
control notifications generated by an entity per minute.
A value of 0 indicates no limit, and the entity will
generate notifications for each storm event as governed by
the cpscNotificationControl for a given interface."
::= { cpscConfigObjects 3 }
-- Storm control status information
cpscStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF CPortSCStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of storm control status entries."
::= { cpscStatusObjects 1 }
cpscStatusEntry OBJECT-TYPE
SYNTAX CPortSCStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A collection of storm control status entries, one per
interface and traffic type.
An entry is created for each storm control capable
interface and the traffic type with the storm control
status information."
INDEX {
ifIndex,
cpscTrafficType
}
::= { cpscStatusTable 1 }
CPortSCStatusEntry ::= SEQUENCE {
cpscStatus CPortStormControlStatusType,
cpscCurrentLevel INTEGER,
cpscSuppressedPacket Counter64
}
cpscStatus OBJECT-TYPE
SYNTAX CPortStormControlStatusType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object identifies the status of storm control
on the interface (identified by ifIndex) corresponding
to a particular traffic type (identified by
cpscTrafficType).
A value of inactive indicates that no storm control
has been enabled on the interface for the traffic type."
::= { cpscStatusEntry 1 }
cpscCurrentLevel OBJECT-TYPE
SYNTAX INTEGER (0..10000)
UNITS "0.01 Percentage"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object identifies the current level of traffic of
a particular type on a given interface, as a percentage
of the total interface bandwidth.
When storm control is inactive, the value is 10000,
indicating the maximum level (100% of the particular
traffic type is allowed to be received)."
::= { cpscStatusEntry 2 }
cpscSuppressedPacket OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represents the total number of packets
of a particular traffic type that have been suppressed
on a given interface by storm control filter action."
::= { cpscStatusEntry 3 }
-- Storm control history table
-- Provides information about storm events that
-- occurred on a given interface, if available
cpscHistoryTable OBJECT-TYPE
SYNTAX SEQUENCE OF CPortSCHistoryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual table to represent the history
of storm events on an interface.
Management station can use this to get
information about the timeline of storm events as
to when each event occurred, and when it ended."
::= { cpscStatusObjects 2 }
cpscHistoryEntry OBJECT-TYPE
SYNTAX CPortSCHistoryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A collection of storm control history entries
per interface and per traffic type. The number of such
entries available is implementation-dependent."
INDEX {
ifIndex,
cpscHistoryTrafficType,
cpscHistoryIndex
}
::= { cpscHistoryTable 1 }
CPortSCHistoryEntry ::= SEQUENCE {
cpscHistoryTrafficType CPortStormControlTrafficType,
cpscHistoryIndex Integer32,
cpscHistoryStartTime TimeStamp,
cpscHistoryEndTime TimeStamp
}
cpscHistoryTrafficType OBJECT-TYPE
SYNTAX CPortStormControlTrafficType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The traffic type corresponding to this storm history
entry."
::= { cpscHistoryEntry 1 }
cpscHistoryIndex OBJECT-TYPE
SYNTAX Integer32 (1..1024 )
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A number that uniquely identifies one storm control
history entry for a given interface. The index starts
at 1 and increases by 1.
Although this MIB specification stipulates a maximum of
1K entries, the actual maximum number of history entries
returned per interface is implementation-dependent.
When the value of this index reaches the actual maximum
number of entries supported by an implementation, it will
wrap around to 1."
::= { cpscHistoryEntry 2 }
cpscHistoryStartTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when the storm event was declared
on the interface for the particular traffic type, and
storm control measures were taken."
::= { cpscHistoryEntry 3 }
cpscHistoryEndTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when the storm ceased to exist
and the interface was set to its previous normal state.
If the interface was shutdown due to user configuration,
then the value will be equal to the value of sysUpTime
when the interface was shutdown.
If the storm event continues to persist when this object
is queried, the value returned will be 0."
::= { cpscHistoryEntry 4 }
-- Notifications
cpscNotificationsPrefix OBJECT IDENTIFIER
::= { ciscoPortStormControlMIBNotifs 1 }
cpscEventRev1 NOTIFICATION-TYPE
OBJECTS { cpscStatus }
STATUS current
DESCRIPTION
"This notification is sent by the implementation when
a storm event occurs on an interface with respect to
a particular traffic type.
cpscEventRev1 deprecates cpscEvent to make it RFC 2578
compliant. According to section 8.5 of RFC 2578, the next
to last sub-identifier in the name of any newly-defined
notification must have the value zero."
::= { ciscoPortStormControlMIBNotifs 2 }
cpscEvent NOTIFICATION-TYPE
OBJECTS { cpscStatus }
STATUS deprecated
DESCRIPTION
"This notification is sent by the implementation when
a storm event occurs on an interface with respect to
a particular traffic type.
cpscEvent is deprecated and replaced by cpscEventRev1."
::= { cpscNotificationsPrefix 1 }
-- MIB Conformance statements
ciscoPortStormControlMIBCompliances OBJECT IDENTIFIER
::= { ciscoPortStormControlMIBConform 1 }
ciscoPortStormControlMIBGroups OBJECT IDENTIFIER
::= { ciscoPortStormControlMIBConform 2 }
ciscoPortStormControlMIBCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for the cisco port storm
control MIB."
MODULE -- this module
MANDATORY-GROUPS { cpscConfigurationGroup }
GROUP cpscNotifConfigurationGroup
DESCRIPTION
"This group is mandatory if the managed system supports
notifications for storm events."
GROUP cpscNotificationGroup
DESCRIPTION
"This group is mandatory if the managed system supports
notifications for storm events."
GROUP cpscStatusGroup
DESCRIPTION
"This group is mandatory if the storm control status
information is available in the managed system."
GROUP cpscStatisticsGroup
DESCRIPTION
"This group is mandatory if the storm control statistics
information is available in the managed system."
GROUP cpscHistoryGroup
DESCRIPTION
"This group is mandatory if the managed system maintains
such storm control history information."
OBJECT cpscLowerThreshold
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT cpscAction
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { ciscoPortStormControlMIBCompliances 1 }
ciscoPortStormControlMIBComplianceRev1 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Please enter description here"
MODULE -- this module
MANDATORY-GROUPS { cpscConfigurationGroup }
GROUP cpscNotifConfigurationGroup
DESCRIPTION
"This group is mandatory if the managed system supports
notifications for storm events."
GROUP cpscNotificationGroupRev1
DESCRIPTION
"This group is mandatory if the managed system supports
notifications for storm events."
GROUP cpscStatusGroup
DESCRIPTION
"This group is mandatory if the storm control status
information is available in the managed system."
GROUP cpscStatisticsGroup
DESCRIPTION
"This group is mandatory if the storm control statistics
information is available in the managed system."
GROUP cpscHistoryGroup
DESCRIPTION
"This group is mandatory if the managed system maintains
such storm control history information."
OBJECT cpscLowerThreshold
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT cpscAction
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { ciscoPortStormControlMIBCompliances 2 }
cpscConfigurationGroup OBJECT-GROUP
OBJECTS {
cpscUpperThreshold,
cpscLowerThreshold,
cpscAction
}
STATUS current
DESCRIPTION
"A collection of objects to configure the Port Storm
Control feature on a given interface."
::= { ciscoPortStormControlMIBGroups 1 }
cpscStatusGroup OBJECT-GROUP
OBJECTS {
cpscStatus,
cpscCurrentLevel
}
STATUS current
DESCRIPTION
"A collection of objects to provide storm control
status on a given interface."
::= { ciscoPortStormControlMIBGroups 2 }
cpscNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS { cpscEvent }
STATUS deprecated
DESCRIPTION
"A collection of notification objects for user with
the cisco port storm control mib."
::= { ciscoPortStormControlMIBGroups 3 }
cpscNotifConfigurationGroup OBJECT-GROUP
OBJECTS {
cpscNotificationControl,
cpscNotificationThreshold
}
STATUS current
DESCRIPTION
"A collection of objects to configure notification
information."
::= { ciscoPortStormControlMIBGroups 4 }
cpscStatisticsGroup OBJECT-GROUP
OBJECTS { cpscSuppressedPacket }
STATUS current
DESCRIPTION
"A collection of objects to provide storm control
statistics information."
::= { ciscoPortStormControlMIBGroups 5 }
cpscHistoryGroup OBJECT-GROUP
OBJECTS {
cpscHistoryStartTime,
cpscHistoryEndTime
}
STATUS current
DESCRIPTION
"A collection of objects to provide storm control
history information on a given interface."
::= { ciscoPortStormControlMIBGroups 6 }
cpscNotificationGroupRev1 NOTIFICATION-GROUP
NOTIFICATIONS { cpscEventRev1 }
STATUS current
DESCRIPTION
"A collection of notification objects for user with
the cisco port storm control mib."
::= { ciscoPortStormControlMIBGroups 7 }
END