This table gives the difference between the SNMPv1 and SNMPv2 traps.
SNMPv1 Trap and SNMPv2 Notification, notification is advance
Trap | Notification |
1. Contains agent address.
|
1. Does not contain agent address.
|
2. It has information about specific trap and generic trap value.
|
2. It has Trap OID in the second varbind.
|
3. It does not have error index and status.
|
3. It has error index and status.
|
4. Does not support confirmed trap.
|
4. Supports Confirmed Notification (INFORM).
|
SNMPv2 PDUs fixed this by introducing the notion of an INFORM, which is nothing more than an acknowledged TRAP.
SNMP Protocol data units (PDUs)
PDU Type may be get, get next, set, trap
TC means TEXTUAL-CONVENTION
CISCO-SMI contain the first starting OID for cisco assigned by IANA.
----------------------snip ---------------------------
cisco MODULE-IDENTITY
LAST-UPDATED "9704090000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
" Cisco Systems
Customer Service
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"The Structure of Management Information for the
Cisco enterprise."
REVISION "9704090000Z"
DESCRIPTION
"Added ciscoPartnerProducts to generate sysObjectID
for partner platforms"
REVISION "9505160000Z"
DESCRIPTION
"New oid assignments for Cisco REPEATER MIB and others."
REVISION "9404262000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { enterprises 9 } -- assigned by IANA
ciscoProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoProducts is the root OBJECT IDENTIFIER from
which sysObjectID values are assigned. Actual
values are defined in CISCO-PRODUCTS-MIB."
::= { cisco 1 }
local OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 MIBS were built."
::= { cisco 2 }
temporary OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 experiments were
placed."
::= { cisco 3 }
------------------------sniip---------------
TC MIB example
----------------------- snip of TC MIB -----------------
CISCO-ENTITY-REDUNDANCY-TC-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC
ciscoMgmt FROM CISCO-SMI
;
ciscoEntityRedunTcMIB MODULE-IDENTITY
LAST-UPDATED "200510010000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems, Inc.
Customer Service
Postal: 170 W. Tasman Drive
San Jose, CA 95134-1706
USA
Tel: +1 800 553-NETS
Email: cs-ha@cisco.com"
DESCRIPTION
"This module defines the textual conventions used within
Cisco Entity Redundancy MIBs.
"
REVISION "200510010000Z"
DESCRIPTION
"The initial version of this MIB module."
::= { ciscoMgmt 494 }
-- Start of Textual Conventions
CeRedunType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Defines the following group redundancy types:
other(1)
Indicates a type of redundancy which doesn't fall into
any other listed category.
yCable(2)
A form of redundancy in which signals from a common line
are connected to ports on two redundant members using a
special Y-shaped splitter/combiner cable. The receive
signals are split and fed to the receive ports on each
redundant member. The transmit signals are combined from
the transmit ports on each member. However, only the active
redundant member transmits a signal, while the standby
member suppresses sending a signal into the Y-combiner.
aps(3)
Automatic Protection Switching. A form of redundancy
using redundant lines with one connected to the working
port on the primary member and the other connected to
the protection port on the secondary member. APS
redundancy protects against line (or fiber) failures in
addition to protecting against port module hardware
failures.
featureCard(4)
The featureCard option is used when the module
does not have external line interfaces. Examples are
modules which provide packet processing, additional
memory or even fans or power supplies.
externalSwitch(5)
A form of redundancy similar to yCable but using an
external switch to select or direct the receive or
transmit signals from a common line to ports on
redundant members. Additional control (not provided in
this general MIB) may be necessary in order to control
and monitor the external switch.
slotPair(6)
Some platforms require the user to configure a slot-pair
group in order to allow internal signals to be bridged to
redundant linecards in the slot-pair. But redundancy groups
would also need to be configured for contained entities,
such as ports. Switchovers should take place independently
for each contained entity (e.g. port).
The slotPair groups support only basic group and member
configuration including the primary/secondary designation.
Switchovers may only be supported for the contained
entity. The primary/secondary roles of contained group
members must match the primary/secondary role of the
containing entity.
cmts(7)
redundancy is provided for Cable Modem Termination Systems.
"
SYNTAX INTEGER {
other(1),
yCable(2),
aps(3),
featureCard(4),
externalSwitch(5),
slotPair(6),
cmts(7)
}
----------------------- snip of TC MIB -----------------
MIB example
----------------------- snip of MIB -----------------
CISCO-ENTITY-REDUNDANCY-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
NOTIFICATION-TYPE,
OBJECT-TYPE,
Gauge32,
Counter64,
Unsigned32,
Integer32
FROM SNMPv2-SMI
RowStatus,
TimeStamp,
TruthValue,
StorageType,
AutonomousType
FROM SNMPv2-TC
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
PhysicalIndex
FROM ENTITY-MIB
InetAddressType,
InetAddress
FROM INET-ADDRESS-MIB
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
CeRedunType,
CeRedunScope,
CeRedunArch,
CeRedunSwitchCommand,
CeRedunMode,
CeRedunMbrStatus,
CeRedunStateCategories,
CeRedunReasonCategories
FROM CISCO-ENTITY-REDUNDANCY-TC-MIB
ciscoMgmt
FROM CISCO-SMI
;
ciscoEntityRedunMIB MODULE-IDENTITY
LAST-UPDATED "200510010000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems, Inc.
Customer Service
Postal: 170 W. Tasman Drive
San Jose, CA 95134-1706
USA
Tel: +1 800 553-NETS
Email: cs-ha@cisco.com"
DESCRIPTION
"This management information module supports
configuration, control and monitoring of redundancy
protection for various kinds of components on
Cisco managed devices.
It is meant to be generic enough to handle basic
redundancy control and monitoring for many types of
redundant member components and redundancy architectures
as long as there is an Entity MIB entPhysicalIndex and
entPhysicalVendorType assigned to each member component.
It is designed so that the tables can be augmented in
other extension MIBS which build upon this MIB by
adding additional objects that may be specific to a
particular type of redundancy or member component.
This MIB can also be used in cases where some types of
redundancy groups and members don't require explicit
user configuration. One example may be redundant fan
assemblies. In those cases, the managed system should
internally assign group and member indexes, so that
it can provide read-only access to the group and member
tables. This allows MIB monitoring for these types of
redundant entities.
"
REVISION "200510010000Z"
DESCRIPTION
"The initial version of this MIB module."
::= { ciscoMgmt 498 }
ciscoEntityRedunMIBNotifs OBJECT IDENTIFIER
::= { ciscoEntityRedunMIB 0 }
ciscoEntityRedunMIBObjects OBJECT IDENTIFIER
::= { ciscoEntityRedunMIB 1 }
ciscoEntityRedunMIBConform OBJECT IDENTIFIER
::= { ciscoEntityRedunMIB 2 }
--
-- Redundancy Group Tables
--
-- These tables allow managed systems to report information about
-- the types of redundancy groups available on the reporting system.
-- They also allow configuration and monitoring of objects which
-- apply to each redundancy group.
--
ceRedunGroup OBJECT IDENTIFIER ::= {ciscoEntityRedunMIBObjects 1 }
-- Redundancy Group Types Table
ceRedunGroupTypesTable OBJECT-TYPE
SYNTAX SEQUENCE OF CeRedunGroupTypesEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists the basic types of redundancy groups
supported on the managed device along with additional
information about each group type.
"
::= {ceRedunGroup 1 }
ceRedunGroupTypesEntry OBJECT-TYPE
SYNTAX CeRedunGroupTypesEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row in the ceRedunGroupTypesTable."
INDEX { ceRedunGroupTypeIndex }
::= {ceRedunGroupTypesTable 1 }
CeRedunGroupTypesEntry ::= SEQUENCE {
ceRedunGroupTypeIndex Unsigned32,
ceRedunGroupTypeName SnmpAdminString,
ceRedunGroupCounts Gauge32,
ceRedunNextUnusedGroupIndex Unsigned32,
ceRedunMaxMbrsInGroup Unsigned32,
ceRedunUsesGroupName TruthValue,
ceRedunGroupDefinitionChanged TimeStamp
}
ceRedunGroupTypeIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index assigned for each type of redundancy group supported
on a managed system that requires its own table listing
entPhysicalVendorTypes allowed as members for its groups.
For instance, port groups have a different set of allowed
entPhysicalVendorTypes than linecard groups. So each should
have a separate ceRedunGroupTypeIndex.
For this example, a command line interface may differentiate
by using separate keywords (port-group versus linecard-group)
rather than exposing the ceRedunGroupTypeIndex to a user.
"
::= { ceRedunGroupTypesEntry 1 }
ceRedunGroupTypeName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The textual name of the redundancy group type. The value
of this object should be the name of the redundancy group
type assigned by the local device as it would appear
for display commands entered at the device's `console'.
Examples are port-group, linecard-group, fan-group, etc.
"
::= { ceRedunGroupTypesEntry 2 }
ceRedunGroupCounts OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current count of redundancy groups for a specific
ceRedunGroupTypeIndex. This count indicates the number
of rows in the ceRedunGroupTable for a specific
ceRedunGroupTypeIndex.
"
::= { ceRedunGroupTypesEntry 3 }
ceRedunNextUnusedGroupIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The next unused group index available for configuring
a new redundancy group for this group type.
In order to avoid unnecessary collisions between competing
management stations, `adjacent' retrievals of this object
should give different index values.
But in order to prevent leaks of unused indexes, it is
acceptable to cycle through and report unused indexes again
if all of the indexes have already been retrieved previously,
yet some remain unused. So the retrieval of an index
should not be considered a permanent longterm reservation.
If there are no more unused group indexes available, the
managed system should return 0.
Note: 0 may be an acceptable group index on some
managed systems.
"
::= { ceRedunGroupTypesEntry 4 }
ceRedunMaxMbrsInGroup OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum number of primary plus secondary members allowed
in a group for a specific ceRedunGroupTypeIndex. If only
1:1 or 1+1 is supported, this should be 2.
If the maximum number is unknown or not determinable, the
managed system should return 0.
"
::= { ceRedunGroupTypesEntry 5 }
ceRedunUsesGroupName OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Boolean to indicate whether this type of redundancy group
uses the ceRedunGroupString object as a group name
identifier. If it is reported as 'true', the
ceRedunGroupString name must contain no internal spaces.
If it's reported as 'false', the ceRedunGroupString object
is just used as an optional description for the group
rather than as the group name.
"
::= { ceRedunGroupTypesEntry 6 }
----------------------- snip of MIB -----------------