mibs/MIBS/cisco/CISCO-CEF-MIB

2966 lines
103 KiB
Plaintext
Raw Permalink Normal View History

2023-12-05 12:25:34 +01:00
-- *------------------------------------------------------------------
-- * CISCO-CEF-MIB.my: Cisco CEF MIB.
-- *
-- * Jan 2006, Rohit Mendiratta
-- *
-- * This MIB module is used to manage CISCO Express Forwarding
-- * (CEF).
-- *
-- * Copyright (c) 2006 by Cisco Systems, Inc.
-- * All rights reserved.
-- *
-- *------------------------------------------------------------------
CISCO-CEF-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE,
Counter64,
Counter32,
Integer32,
Gauge32,
Unsigned32
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
TimeStamp,
RowStatus,
TruthValue,
TestAndIncr
FROM SNMPv2-TC
CounterBasedGauge64
FROM HCNUM-TC
ifIndex,
InterfaceIndexOrZero
FROM IF-MIB
entPhysicalIndex,
PhysicalIndex
FROM ENTITY-MIB
InetAddressType,
InetAddress,
InetAddressPrefixLength
FROM INET-ADDRESS-MIB
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
MplsVpnId
FROM MPLS-VPN-MIB
EntPhysicalIndexOrZero
FROM CISCO-TC
CefIpVersion,
CefAdjLinkType,
CefAdjacencySource,
CefPathType,
CefPrefixSearchState,
CefForwardingElementSpecialType,
CefMplsLabelList,
CefAdminStatus,
CefOperStatus,
CefFailureReason,
CefCCType,
CefCCAction,
CefCCStatus
FROM CISCO-CEF-TC
ciscoMgmt
FROM CISCO-SMI;
ciscoCefMIB MODULE-IDENTITY
LAST-UPDATED "200601300000Z"
ORGANIZATION "Cisco System, Inc."
CONTACT-INFO
"Postal: Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
Tel: +1 800 553-NETS
E-mail: cs-cef@cisco.com"
DESCRIPTION
"Cisco Express Forwarding (CEF) describes a high speed
switching mechanism that a router uses to forward packets
from the inbound to the outbound interface.
CEF uses two sets of data structures
or tables, which it stores in router memory:
Forwarding information base (FIB) - Describes a database
of information used to make forwarding decisions. It is
conceptually similar to a routing table or route-cache,
although its implementation is different.
Adjacency - Two nodes in the network are said to be
adjacent if they can reach each other via a single hop
across a link layer.
CEF path is a valid route to reach to a destination
IP prefix. Multiple paths may exist out of a router to the
same destination prefix. CEF Load balancing capability
share the traffic to the destination IP prefix over all
the active paths.
After obtaining the prefix in the CEF table with the
longest match, output forwarding follows the chain of
forwarding elements.
Forwarding element (FE) may process the packet, forward
the packet, drop or punt the packet or it may also
pass the packet to the next forwarding element in the
chain for further processing.
Forwarding Elements are of various types
but this MIB only represents the forwarding elements of
adjacency and label types. Hence a forwarding element
chain will be represented as a list of labels and
adjacency. The adjacency may point to a forwarding element
list again, if it is not the last forwarding element in this
chain.
For the simplest IP forwarding case, the prefix entry will
point at an adjacency forwarding element.
The IP adjacency processing function will apply the output
features, add the encapsulation (performing any required
fixups), and may send the packet out.
If loadbalancing is configured, the prefix entry will point
to lists of forwarding elements. One of these lists will be
selected to forward the packet.
Each forwarding element list dictates which of a set of
possible packet transformations to apply on the way to
the same neighbour.
The following diagram represents relationship
between three of the core tables in this MIB module.
cefPrefixTable cefFESelectionTable
+---------------+ points +--------------+
| | | | a set +----> | | | | |
|---------------| of FE | |--------------|
| | | | Selection | | | | | |
|---------------| Entries | |--------------|
| | | |------------+ | |<----+
|---------------| |--------------| |
| | +--------------| | | | | |
+---------------+ | +--------------+ |
| |
points to an |
adjacency entry |
| |
| cefAdjTable |
| +---------------+ may point |
+->| | | | to a set |
|---------------| of FE |
| | | | Selection |
|---------------| Entries |
| | | |----------------+
|---------------|
| |
+---------------+
Some of the Cisco series routers (e.g. 7500 & 12000)
support distributed CEF (dCEF), in which the line cards
(LCs) make the packet forwarding decisions using locally
stored copies of the same Forwarding information base (FIB)
and adjacency tables as the Routing Processor (RP).
Inter-Process Communication (IPC) is the protocol used
by routers that support distributed packet forwarding.
CEF updates are encoded as external Data Representation
(XDR) information elements inside IPC messages.
This MIB reflects the distributed nature of CEF, e.g. CEF
has different instances running on the RP and the line cards.
There may be instances of inconsistency between the
CEF forwarding databases(i.e between CEF forwarding
database on line cards and the CEF forwarding database
on the RP). CEF consistency checkers (CC) detects
this inconsistency.
When two databases are compared by a consistency checker,
a set of records from the first (master) database is
looked up in the second (slave).
There are two types of consistency checkers,
active and passive. Active consistency checkers
are invoked in response to some stimulus, i.e.
when a packet cannot be forwarded because the
prefix is not in the forwarding table or
in response to a Management Station request.
Passive consistency checkers operate in the background,
scanning portions of the databases on a periodic basis.
The full-scan checkers are active consistency checkers
which are invoked in response to a Management Station
Request.
If 64-bit counter objects in this MIB are supported,
then their associated 32-bit counter objects
must also be supported. The 32-bit counters will
report the low 32-bits of the associated 64-bit
counter count (e.g., cefPrefixPkts will report the
least significant 32 bits of cefPrefixHCPkts).
The same rule should be applied for the 64-bit gauge
objects and their assocaited 32-bit gauge objects.
If 64-bit counters in this MIB are not supported,
then an agent MUST NOT instantiate the corresponding
objects with an incorrect value; rather, it MUST
respond with the appropriate error/exception
condition (e.g., noSuchInstance or noSuchName).
Counters related to CEF accounting (e.g.,
cefPrefixPkts) MUST NOT be instantiated if the
corresponding accounting method has been disabled.
This MIB allows configuration and monitoring of CEF
related objects."
REVISION "200601300000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 492 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- CISCO CEF MIB Object Groups
--
-- This MIB module contains the following groups:
-- CEF FIB Group
-- CEF Adjacency Group
-- CEF Forwarding Element Group
-- CEF Cfg Group
-- CEF Interface Group
-- CEF Peer Group
-- CEF Consistency Checker (CC) group
-- CEF Stats Group
-- CEF Notification Control Group.
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
ciscoCefMIBNotifs OBJECT IDENTIFIER ::= {ciscoCefMIB 0}
ciscoCefMIBObjects OBJECT IDENTIFIER ::= {ciscoCefMIB 1}
ciscoCefMIBConform OBJECT IDENTIFIER ::= {ciscoCefMIB 2}
cefFIB OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 1 }
cefAdj OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 2 }
cefFE OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 3 }
cefGlobal OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 4 }
cefInterface OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 5 }
cefPeer OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 6 }
cefCC OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 7 }
cefStats OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 8 }
cefNotifCntl OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 9 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF FIB Summary
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefFIBSummary OBJECT IDENTIFIER
::= { cefFIB 1 }
cefFIBSummaryTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefFIBSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the summary information
for the cefPrefixTable."
::= { cefFIBSummary 1 }
cefFIBSummaryEntry OBJECT-TYPE
SYNTAX CefFIBSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the FIB summary related
attributes for the managed entity.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex, cefFIBIpVersion }
::= { cefFIBSummaryTable 1}
CefFIBSummaryEntry ::= SEQUENCE {
cefFIBIpVersion CefIpVersion,
cefFIBSummaryFwdPrefixes Unsigned32
}
cefFIBIpVersion OBJECT-TYPE
SYNTAX CefIpVersion
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The version of IP forwarding."
::= { cefFIBSummaryEntry 1 }
cefFIBSummaryFwdPrefixes OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of forwarding Prefixes
in FIB for the IP version specified
by cefFIBIpVersion object."
::= { cefFIBSummaryEntry 2 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Forwarding Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPrefixTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of CEF forwarding prefixes."
::= { cefFIB 2 }
cefPrefixEntry OBJECT-TYPE
SYNTAX CefPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the forwarding
prefix attributes.
CEF prefix based non-recursive stats are maintained
in internal and external buckets (depending upon the
value of cefIntNonrecursiveAccouting object in the
CefIntEntry).
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefPrefixType,
cefPrefixAddr,
cefPrefixLen
}
::= { cefPrefixTable 1}
CefPrefixEntry ::= SEQUENCE {
cefPrefixType InetAddressType,
cefPrefixAddr InetAddress,
cefPrefixLen InetAddressPrefixLength,
cefPrefixForwardingInfo SnmpAdminString,
cefPrefixPkts Counter32,
cefPrefixHCPkts Counter64,
cefPrefixBytes Counter32,
cefPrefixHCBytes Counter64,
cefPrefixInternalNRPkts Counter32,
cefPrefixInternalNRHCPkts Counter64,
cefPrefixInternalNRBytes Counter32,
cefPrefixInternalNRHCBytes Counter64,
cefPrefixExternalNRPkts Counter32,
cefPrefixExternalNRHCPkts Counter64,
cefPrefixExternalNRBytes Counter32,
cefPrefixExternalNRHCBytes Counter64
}
cefPrefixType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Network Prefix Type.
This object specifies the address type
used for cefPrefixAddr.
Prefix entries are only valid for the address
type of ipv4(1) and ipv6(2)."
::= { cefPrefixEntry 1 }
cefPrefixAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Network Prefix Address.
The type of this address is determined by
the value of the cefPrefixType object.
This object is a Prefix Address containing the
prefix with length specified by cefPrefixLen.
Any bits beyond the length specified by
cefPrefixLen are zeroed."
::= { cefPrefixEntry 2 }
cefPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Length in bits of the FIB Address prefix."
::= { cefPrefixEntry 3 }
cefPrefixForwardingInfo OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the associated forwarding element
selection entries in cefFESelectionTable.
The value of this object is index value (cefFESelectionName)
of cefFESelectionTable."
::= { cefPrefixEntry 4 }
cefPrefixPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of packets switched to this prefix."
::= { cefPrefixEntry 5 }
cefPrefixHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of packets switched to this prefix.
This object is a 64-bit version of
cefPrefixPkts."
::= { cefPrefixEntry 6 }
cefPrefixBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of bytes switched to this prefix."
::= { cefPrefixEntry 7 }
cefPrefixHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of bytes switched to this prefix.
This object is a 64-bit version of
cefPrefixBytes."
::= { cefPrefixEntry 8 }
cefPrefixInternalNRPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the internal bucket
switched using this prefix."
::= { cefPrefixEntry 9 }
cefPrefixInternalNRHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the internal bucket
switched using this prefix.
This object is a 64-bit version of
cefPrefixInternalNRPkts."
::= { cefPrefixEntry 10 }
cefPrefixInternalNRBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the internal
bucket switched using this prefix."
::= { cefPrefixEntry 11 }
cefPrefixInternalNRHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the internal
bucket switched using this prefix.
This object is a 64-bit version of
cefPrefixInternalNRBytes."
::= { cefPrefixEntry 12 }
cefPrefixExternalNRPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the external bucket
switched using this prefix."
::= { cefPrefixEntry 13 }
cefPrefixExternalNRHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the external bucket
switched using this prefix.
This object is a 64-bit version of
cefPrefixExternalNRPkts."
::= { cefPrefixEntry 14 }
cefPrefixExternalNRBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the external
bucket switched using this prefix."
::= { cefPrefixEntry 15 }
cefPrefixExternalNRHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the external
bucket switched using this prefix.
This object is a 64-bit version of
cefPrefixExternalNRBytes."
::= { cefPrefixEntry 16 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Longest Match Prefix Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefLMPrefixSpinLock OBJECT-TYPE
SYNTAX TestAndIncr
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"An advisory lock used to allow cooperating SNMP
Command Generator applications to coordinate their
use of the Set operation in creating Longest
Match Prefix Entries in cefLMPrefixTable.
When creating a new longest prefix match entry,
the value of cefLMPrefixSpinLock should be retrieved.
The destination address should be determined to be
unique by the SNMP Command Generator application by
consulting the cefLMPrefixTable. Finally, the longest
prefix entry may be created (Set), including the
advisory lock.
If another SNMP Command Generator application has
altered the longest prefix entry in the meantime,
then the spin lock's value will have changed,
and so this creation will fail because it will specify
the wrong value for the spin lock.
Since this is an advisory lock, the use of this lock
is not enforced, but not using this lock may lead
to conflict with the another SNMP command responder
application which may also be acting on the
cefLMPrefixTable."
::= { cefFIB 3 }
cefLMPrefixTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefLMPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Longest Match Prefix Query requests.
Generator application should utilize the
cefLMPrefixSpinLock to try to avoid collisions.
See DESCRIPTION clause of cefLMPrefixSpinLock."
::= { cefFIB 4 }
cefLMPrefixEntry OBJECT-TYPE
SYNTAX CefLMPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the managed device, then each
entry represents a longest Match Prefix request.
A management station wishing to get the longest
Match prefix for a given destination address
should create the associate instance of the
row status. The row status should be set to
active(1) to initiate the request. Note that
this entire procedure may be initiated via a
single set request which specifies a row status
of createAndGo(4).
Once the request completes, the management station
should retrieve the values of the objects of
interest, and should then delete the entry. In order
to prevent old entries from clogging the table,
entries will be aged out, but an entry will never be
deleted within 5 minutes of completion.
Entries are lost after an agent restart.
I.e. to find out the longest prefix match for
destination address of A.B.C.D on entity whose
entityPhysicalIndex is 1, the Management station
will create an entry in cefLMPrefixTable with
cefLMPrefixRowStatus.1(entPhysicalIndex).1(ipv4).A.B.C.D
set to createAndGo(4). Management Station may query the
value of objects cefLMPrefix and cefLMPrefixLen
to find out the corresponding prefix entry from the
cefPrefixTable once the value of cefLMPrefixState
is set to matchFound(2).
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF.
"
INDEX { entPhysicalIndex,
cefLMPrefixDestAddrType,
cefLMPrefixDestAddr }
::= { cefLMPrefixTable 1}
CefLMPrefixEntry ::= SEQUENCE {
cefLMPrefixDestAddrType InetAddressType,
cefLMPrefixDestAddr InetAddress,
cefLMPrefixState CefPrefixSearchState,
cefLMPrefixAddr InetAddress,
cefLMPrefixLen InetAddressPrefixLength,
cefLMPrefixRowStatus RowStatus
}
cefLMPrefixDestAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Destination Address Type.
This object specifies the address type
used for cefLMPrefixDestAddr.
Longest Match Prefix entries are only valid
for the address type of ipv4(1) and ipv6(2)."
::= { cefLMPrefixEntry 1 }
cefLMPrefixDestAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Destination Address.
The type of this address is determined by
the value of the cefLMPrefixDestAddrType object."
::= { cefLMPrefixEntry 2 }
cefLMPrefixState OBJECT-TYPE
SYNTAX CefPrefixSearchState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the state of this prefix search request."
::= { cefLMPrefixEntry 3 }
cefLMPrefixAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Network Prefix Address. Index to the cefPrefixTable.
The type of this address is determined by
the value of the cefLMPrefixDestAddrType object."
::= { cefLMPrefixEntry 4 }
cefLMPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Network Prefix Length. Index to the cefPrefixTable."
::= { cefLMPrefixEntry 5 }
cefLMPrefixRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The status of this table entry. Once the entry
status is set to active(1), the associated entry
cannot be modified until the request completes
(cefLMPrefixState transitions to matchFound(2)
or noMatchFound(3)).
Once the longest match request has been created
(i.e. the cefLMPrefixRowStatus has been made active),
the entry cannot be modified - the only operation
possible after this is to delete the row."
::= { cefLMPrefixEntry 6 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Path Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPathTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPathEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"CEF prefix path is a valid route to reach to a
destination IP prefix. Multiple paths may exist
out of a router to the same destination prefix.
This table specify lists of CEF paths."
::= { cefFIB 5 }
cefPathEntry OBJECT-TYPE
SYNTAX CefPathEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contain a CEF prefix path.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefPrefixType,
cefPrefixAddr,
cefPrefixLen,
cefPathId
}
::= { cefPathTable 1 }
CefPathEntry ::= SEQUENCE {
cefPathId Integer32,
cefPathType CefPathType,
cefPathInterface InterfaceIndexOrZero,
cefPathNextHopAddr InetAddress,
cefPathRecurseVrfName MplsVpnId
}
cefPathId OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this prefix path entry."
::= { cefPathEntry 1 }
cefPathType OBJECT-TYPE
SYNTAX CefPathType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Type for this CEF Path."
::= { cefPathEntry 2 }
cefPathInterface OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Interface associated with this CEF path.
A value of zero for this object will indicate
that no interface is associated with this path
entry."
::= { cefPathEntry 3 }
cefPathNextHopAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Next hop address associated with this CEF path.
The value of this object is only relevant
for attached next hop and recursive next hop
path types (when the object cefPathType is
set to attachedNexthop(4) or recursiveNexthop(5)).
and will be set to zero for other path types.
The type of this address is determined by
the value of the cefPrefixType object."
::= { cefPathEntry 4 }
cefPathRecurseVrfName OBJECT-TYPE
SYNTAX MplsVpnId
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The recursive vrf name associated with this path.
The value of this object is only relevant
for recursive next hop path types (when the
object cefPathType is set to recursiveNexthop(5)),
and '0x00' will be returned for other path types."
::= { cefPathEntry 5 }
-- End of cefPathTable
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Adjacency Summary
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefAdjSummary OBJECT IDENTIFIER
::= { cefAdj 1 }
cefAdjSummaryTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefAdjSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the summary information
for the cefAdjTable."
::= { cefAdjSummary 1 }
cefAdjSummaryEntry OBJECT-TYPE
SYNTAX CefAdjSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the CEF Adjacency
summary related attributes for the
Managed entity. A row exists for
each adjacency link type.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex, cefAdjSummaryLinkType}
::= { cefAdjSummaryTable 1}
CefAdjSummaryEntry ::= SEQUENCE {
cefAdjSummaryLinkType CefAdjLinkType,
cefAdjSummaryComplete Unsigned32,
cefAdjSummaryIncomplete Unsigned32,
cefAdjSummaryFixup Unsigned32,
cefAdjSummaryRedirect Unsigned32
}
cefAdjSummaryLinkType OBJECT-TYPE
SYNTAX CefAdjLinkType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The link type of the adjacency."
::= { cefAdjSummaryEntry 1 }
cefAdjSummaryComplete OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of complete adjacencies.
The total number of adjacencies which can be used
to switch traffic to a neighbour."
::= { cefAdjSummaryEntry 2 }
cefAdjSummaryIncomplete OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of incomplete adjacencies.
The total number of adjacencies which cannot be
used to switch traffic in their current state."
::= { cefAdjSummaryEntry 3 }
cefAdjSummaryFixup OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of adjacencies for which
the Layer 2 encapsulation string (header) may be
updated (fixed up) at packet switch time."
::= { cefAdjSummaryEntry 4 }
cefAdjSummaryRedirect OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of adjacencies for which
ip redirect (or icmp redirection) is enabled.
The value of this object is only relevant for
ipv4 and ipv6 link type (when the index object
cefAdjSummaryLinkType value is ipv4(1) or ipv6(2))
and will be set to zero for other link types.
"
REFERENCE
"1. Internet Architecture Extensions for Shared Media,
RFC 1620, May 1994."
::= { cefAdjSummaryEntry 5 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Adjacency Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefAdjTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefAdjEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of CEF adjacencies."
::= { cefAdj 2 }
cefAdjEntry OBJECT-TYPE
SYNTAX CefAdjEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the adjacency
attributes. Adjacency entries may exist
for all the interfaces on which packets
can be switched out of the device.
The interface is instantiated by ifIndex.
Therefore, the interface index must have been
assigned, according to the applicable procedures,
before it can be meaningfully used.
Generally, this means that the interface must exist.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX {
entPhysicalIndex,
ifIndex,
cefAdjNextHopAddrType,
cefAdjNextHopAddr,
cefAdjConnId,
cefAdjSummaryLinkType
}
::= { cefAdjTable 1}
CefAdjEntry ::= SEQUENCE {
cefAdjNextHopAddrType InetAddressType,
cefAdjNextHopAddr InetAddress,
cefAdjConnId Unsigned32,
cefAdjSource CefAdjacencySource,
cefAdjEncap SnmpAdminString,
cefAdjFixup SnmpAdminString,
cefAdjMTU Unsigned32,
cefAdjForwardingInfo SnmpAdminString,
cefAdjPkts Counter32,
cefAdjHCPkts Counter64,
cefAdjBytes Counter32,
cefAdjHCBytes Counter64
}
cefAdjNextHopAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Address type for the cefAdjNextHopAddr.
This object specifies the address type
used for cefAdjNextHopAddr.
Adjacency entries are only valid for the
address type of ipv4(1) and ipv6(2)."
::= { cefAdjEntry 1 }
cefAdjNextHopAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The next Hop address for this adjacency.
The type of this address is determined by
the value of the cefAdjNextHopAddrType object."
::= { cefAdjEntry 2 }
cefAdjConnId OBJECT-TYPE
SYNTAX Unsigned32(0 | 1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"In cases where cefLinkType, interface and the
next hop address are not able to uniquely define
an adjacency entry (e.g. ATM and Frame Relay
Bundles), this object is a unique identifier
to differentiate between these adjacency entries.
In all the other cases the value of this
index object will be 0."
::= { cefAdjEntry 3 }
cefAdjSource OBJECT-TYPE
SYNTAX CefAdjacencySource
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If the adjacency is created because some neighbour
discovery mechanism has discovered a neighbour
and all the information required to build a frame header to
encapsulate traffic to the neighbour is available
then the source of adjacency is set to the mechanism
by which the adjacency is learned."
::= { cefAdjEntry 4 }
cefAdjEncap OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The layer 2 encapsulation string to be used
for sending the packet out using this adjacency."
::= { cefAdjEntry 5 }
cefAdjFixup OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"For the cases, where the encapsulation string
is decided at packet switch time, the adjacency
encapsulation string specified by object cefAdjEncap
require a fixup. I.e. for the adjacencies out of IP
Tunnels, the string prepended is an IP header which has
fields which can only be setup at packet switch time.
The value of this object represent the kind of fixup
applied to the packet.
If the encapsulation string doesn't require any fixup,
then the value of this object will be of zero length."
::= { cefAdjEntry 6 }
cefAdjMTU OBJECT-TYPE
SYNTAX Unsigned32(0..65535)
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Layer 3 MTU which can be transmitted using
this adjacency."
::= { cefAdjEntry 7 }
cefAdjForwardingInfo OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object selects a forwarding info entry
defined in the cefFESelectionTable. The
selected target is defined by an entry in the
cefFESelectionTable whose index value (cefFESelectionName)
is equal to this object.
The value of this object will be of zero length if
this adjacency entry is the last forwarding
element in the forwarding path."
::= { cefAdjEntry 8 }
cefAdjPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of pkts transmitted using this adjacency."
::= { cefAdjEntry 9 }
cefAdjHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of pkts transmitted using this adjacency.
This object is a 64-bit version of cefAdjPkts."
::= { cefAdjEntry 10 }
cefAdjBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of bytes transmitted using this adjacency."
::= { cefAdjEntry 11 }
cefAdjHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of bytes transmitted using this adjacency.
This object is a 64-bit version of cefAdjBytes."
::= { cefAdjEntry 12 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Forwarding Element Selection Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefFESelectionTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefFESelectionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of forwarding element selection entries."
::= { cefFE 1 }
cefFESelectionEntry OBJECT-TYPE
SYNTAX CefFESelectionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contain a CEF forwarding element
selection list.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefFESelectionName,
cefFESelectionId }
::= { cefFESelectionTable 1 }
CefFESelectionEntry ::= SEQUENCE {
cefFESelectionName SnmpAdminString,
cefFESelectionId Integer32,
cefFESelectionSpecial CefForwardingElementSpecialType,
cefFESelectionLabels CefMplsLabelList,
cefFESelectionAdjLinkType CefAdjLinkType,
cefFESelectionAdjInterface InterfaceIndexOrZero,
cefFESelectionAdjNextHopAddrType InetAddressType,
cefFESelectionAdjNextHopAddr InetAddress,
cefFESelectionAdjConnId Unsigned32,
cefFESelectionVrfName MplsVpnId,
cefFESelectionWeight Unsigned32
}
cefFESelectionName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier used
to select a set of forwarding element lists."
::= { cefFESelectionEntry 1 }
cefFESelectionId OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Secondary index to identify a forwarding elements List
in this Table."
::= { cefFESelectionEntry 2 }
cefFESelectionSpecial OBJECT-TYPE
SYNTAX CefForwardingElementSpecialType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Special processing for a destination
is indicated through the use of special
forwarding element.
If the forwarding element list contains the
special forwarding element, then this object
represents the type of special forwarding element."
::= { cefFESelectionEntry 3 }
cefFESelectionLabels OBJECT-TYPE
SYNTAX CefMplsLabelList
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the MPLS Labels
associated with this forwarding Element List.
The value of this object will be irrelevant and will
be set to zero length if the forwarding element list
doesn't contain a label forwarding element. A zero
length label list will indicate that there is no label
forwarding element associated with this selection entry."
::= { cefFESelectionEntry 4 }
cefFESelectionAdjLinkType OBJECT-TYPE
SYNTAX CefAdjLinkType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the link type for
the adjacency associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to unknown(5) if the forwarding element list
doesn't contain an adjacency forwarding element."
::= { cefFESelectionEntry 5 }
cefFESelectionAdjInterface OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the interface for
the adjacency associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to zero if the forwarding element list doesn't
contain an adjacency forwarding element."
::= { cefFESelectionEntry 6 }
cefFESelectionAdjNextHopAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the next hop address type for
the adjacency associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to unknown(0) if the forwarding element list
doesn't contain an adjacency forwarding element."
::= { cefFESelectionEntry 7 }
cefFESelectionAdjNextHopAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the next hop address for
the adjacency associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to zero if the forwarding element list doesn't
contain an adjacency forwarding element."
::= { cefFESelectionEntry 8 }
cefFESelectionAdjConnId OBJECT-TYPE
SYNTAX Unsigned32(0 | 1..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the connection id for
the adjacency associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to zero if the forwarding element list doesn't
contain an adjacency forwarding element.
In cases where cefFESelectionAdjLinkType, interface
and the next hop address are not able to uniquely
define an adjacency entry (e.g. ATM and Frame Relay
Bundles), this object is a unique identifier
to differentiate between these adjacency entries."
::= { cefFESelectionEntry 9 }
cefFESelectionVrfName OBJECT-TYPE
SYNTAX MplsVpnId
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the Vrf name for
the lookup associated with this forwarding
Element List.
The value of this object will be irrelevant and will
be set to a string containing the single octet
0x00 if the forwarding element list
doesn't contain a lookup forwarding element."
::= { cefFESelectionEntry 10 }
cefFESelectionWeight OBJECT-TYPE
SYNTAX Unsigned32(0 | 1..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represent the weighting for
load balancing between multiple Forwarding Element
Lists. The value of this object will be zero if
load balancing is associated with this selection
entry."
::= { cefFESelectionEntry 11 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Cfg Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefCfgTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefCfgEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains global config parameter
of CEF on the Managed device."
::= { cefGlobal 1 }
cefCfgEntry OBJECT-TYPE
SYNTAX CefCfgEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If the Managed device supports CEF,
each entry contains the CEF config
parameter for the managed entity.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefFIBIpVersion }
::= { cefCfgTable 1}
CefCfgEntry ::= SEQUENCE {
cefCfgAdminState CefAdminStatus,
cefCfgOperState CefOperStatus,
cefCfgDistributionAdminState CefAdminStatus,
cefCfgDistributionOperState CefOperStatus,
cefCfgAccountingMap BITS,
cefCfgLoadSharingAlgorithm INTEGER,
cefCfgLoadSharingID Unsigned32,
cefCfgTrafficStatsLoadInterval Unsigned32,
cefCfgTrafficStatsUpdateRate Unsigned32
}
cefCfgAdminState OBJECT-TYPE
SYNTAX CefAdminStatus
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The desired state of CEF."
::= { cefCfgEntry 1 }
cefCfgOperState OBJECT-TYPE
SYNTAX CefOperStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current operational state of CEF.
If the cefCfgAdminState is disabled(2), then
cefOperState will eventually go to the down(2)
state unless some error has occurred.
If cefCfgAdminState is changed to enabled(1) then
cefCfgOperState should change to up(1) only if the
CEF entity is ready to forward the packets using
Cisco Express Forwarding (CEF) else it should remain
in the down(2) state. The up(1) state for this object
indicates that CEF entity is forwarding the packet
using Cisco Express Forwarding."
::= { cefCfgEntry 2 }
cefCfgDistributionAdminState OBJECT-TYPE
SYNTAX CefAdminStatus
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The desired state of CEF distribution."
::= { cefCfgEntry 3 }
cefCfgDistributionOperState OBJECT-TYPE
SYNTAX CefOperStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current operational state of CEF distribution.
If the cefCfgDistributionAdminState is disabled(2), then
cefDistributionOperState will eventually go to the down(2)
state unless some error has occurred.
If cefCfgDistributionAdminState is changed to enabled(1)
then cefCfgDistributionOperState should change to up(1)
only if the CEF entity is ready to forward the packets
using Distributed Cisco Express Forwarding (dCEF) else
it should remain in the down(2) state. The up(1) state
for this object indicates that CEF entity is forwarding
the packet using Distributed Cisco Express Forwarding."
::= { cefCfgEntry 4 }
cefCfgAccountingMap OBJECT-TYPE
SYNTAX BITS {
nonRecursive(0),
perPrefix(1),
prefixLength(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object represents a bitmap of network
accounting options.
CEF network accounting is disabled by default.
CEF network accounting can be enabled
by selecting one or more of the following
CEF accounting option for the value
of this object.
nonRecursive(0): enables accounting through
nonrecursive prefixes.
perPrefix(1): enables the collection of the numbers
of pkts and bytes express forwarded
to a destination (prefix)
prefixLength(2): enables accounting through
prefixlength.
Once the accounting is enabled, the corresponding stats
can be retrieved from the cefPrefixTable and
cefStatsPrefixLenTable.
"
::= { cefCfgEntry 5 }
cefCfgLoadSharingAlgorithm OBJECT-TYPE
SYNTAX INTEGER {
none (1), -- Load sharing is disabled
original (2),
tunnel (3),
universal(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates the CEF Load balancing algorithm.
Setting this object to none(1) will disable
the Load sharing for the specified entry.
CEF load balancing can be enabled by setting
this object to one of following Algorithms:
original(2) : This algorithm is based on a
source and destination hash
tunnel(3) : This algorithm is used in
tunnels environments or in
environments where there are
only a few source
universal(4) : This algorithm uses a source and
destination and ID hash
If the value of this object is set to 'tunnel'
or 'universal', then the FIXED ID for these
algorithms may be specified by the managed
object cefLoadSharingID.
"
::= { cefCfgEntry 6 }
cefCfgLoadSharingID OBJECT-TYPE
SYNTAX Unsigned32(0 | 1..4294967295)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The Fixed ID associated with the managed object
cefCfgLoadSharingAlgorithm. The hash of this object
value may be used by the Load Sharing Algorithm.
The value of this object is not relevant and will
be set to zero if the value of managed object
cefCfgLoadSharingAlgorithm is set to none(1) or original(2).
The default value of this object is calculated by
the device at the time of initialization."
::= { cefCfgEntry 7 }
cefCfgTrafficStatsLoadInterval OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The interval time over which the CEF traffic statistics
are collected."
::= { cefCfgEntry 8 }
cefCfgTrafficStatsUpdateRate OBJECT-TYPE
SYNTAX Unsigned32(0 | 1..65535)
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The frequency with which the line card sends the
traffic load statistics to the Router Processor.
Setting the value of this object to 0 will disable
the CEF traffic statistics collection."
::= { cefCfgEntry 9 }
cefResourceTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefResourceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains global resource
information of CEF on the Managed device."
::= { cefGlobal 2 }
cefResourceEntry OBJECT-TYPE
SYNTAX CefResourceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If the Managed device supports CEF,
each entry contains the CEF Resource
parameters for the managed entity.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex }
::= { cefResourceTable 1}
CefResourceEntry ::= SEQUENCE {
cefResourceMemoryUsed Gauge32,
cefResourceFailureReason CefFailureReason
}
cefResourceMemoryUsed OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the number of bytes from
the Processor Memory Pool that
are currently in use by CEF on the
managed entity."
::= { cefResourceEntry 1 }
cefResourceFailureReason OBJECT-TYPE
SYNTAX CefFailureReason
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The CEF resource failure reason which may lead to CEF
being disabled on the managed entity."
::= { cefResourceEntry 2 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Interface Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefIntTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefIntEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This Table contains interface specific
information of CEF on the Managed
device."
::= { cefInterface 1 }
cefIntEntry OBJECT-TYPE
SYNTAX CefIntEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the CEF attributes
associated with an interface.
The interface is instantiated by ifIndex.
Therefore, the interface index must have been
assigned, according to the applicable procedures,
before it can be meaningfully used.
Generally, this means that the interface must exist.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex, cefFIBIpVersion, ifIndex }
::= { cefIntTable 1}
CefIntEntry ::= SEQUENCE {
cefIntSwitchingState INTEGER,
cefIntLoadSharing INTEGER,
cefIntNonrecursiveAccouting INTEGER
}
cefIntSwitchingState OBJECT-TYPE
SYNTAX INTEGER {
cefEnabled (1),
distCefEnabled (2),
cefDisabled (3)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The CEF switching State for the interface.
If CEF is enabled but distributed CEF(dCEF) is
disabled then CEF is in cefEnabled(1) state.
If distributed CEF is enabled, then CEF is in
distCefEnabled(2) state. The cefDisabled(3) state
indicates that CEF is disabled.
The CEF switching state is only applicable to the
received packet on the interface."
::= { cefIntEntry 1 }
cefIntLoadSharing OBJECT-TYPE
SYNTAX INTEGER {
perPacket (1),
perDestination (2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The status of load sharing on the
interface.
perPacket(1) : Router to send data packets
over successive equal-cost paths
without regard to individual hosts
or user sessions.
perDestination(2) : Router to use multiple, equal-cost
paths to achieve load sharing
Load sharing is enabled by default
for an interface when CEF is enabled."
::= { cefIntEntry 2 }
cefIntNonrecursiveAccouting OBJECT-TYPE
SYNTAX INTEGER {
internal(1),
external(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The CEF accounting mode for the interface.
CEF prefix based non-recursive accounting
on an interface can be configured to store
the stats for non-recursive prefixes in a internal
or external bucket.
internal(1) : Count input traffic in the nonrecursive
internal bucket
external(2) : Count input traffic in the nonrecursive
external bucket
The value of this object will only be effective if
value of the object cefAccountingMap is set to enable
nonRecursive(1) accounting."
::= { cefIntEntry 3 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Peer Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPeerTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPeerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Entity acting as RP (Routing Processor) keeps
the CEF states for the line card entities and
communicates with the line card entities using
XDR. This Table contains the CEF information
related to peer entities on the managed device."
::= { cefPeer 1 }
cefPeerEntry OBJECT-TYPE
SYNTAX CefPeerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the CEF related attributes
associated with a CEF peer entity.
entPhysicalIndex and entPeerPhysicalIndex are
also indexes for this table which represents
entities of 'module' entPhysicalClass which are
capable of running CEF."
INDEX { entPhysicalIndex, entPeerPhysicalIndex }
::= { cefPeerTable 1}
CefPeerEntry ::= SEQUENCE {
entPeerPhysicalIndex PhysicalIndex,
cefPeerOperState INTEGER,
cefPeerNumberOfResets Counter32
}
entPeerPhysicalIndex OBJECT-TYPE
SYNTAX PhysicalIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The entity index for the CEF peer entity.
Only the entities of 'module'
entPhysicalClass are included here."
::= { cefPeerEntry 1 }
cefPeerOperState OBJECT-TYPE
SYNTAX INTEGER {
peerDisabled (1),
peerUp (2),
peerHold (3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current CEF operational state of the CEF peer entity.
Cef peer entity oper state will be peerDisabled(1) in
the following condition:
: Cef Peer entity encounters fatal error i.e. resource
allocation failure, ipc failure etc
: When a reload/delete request is received from the Cef
Peer Entity
Once the peer entity is up and no fatal error is encountered,
then the value of this object will transits to the peerUp(3)
state.
If the Cef Peer entity is in held stage, then the value
of this object will be peerHold(3). Cef peer entity can only
transit to peerDisabled(1) state from the peerHold(3) state."
::= { cefPeerEntry 2 }
cefPeerNumberOfResets OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of times the session with CEF peer entity
has been reset."
::= { cefPeerEntry 3 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Peer FIB Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPeerFIBTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPeerFIBEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Entity acting as RP (Routing Processor) keep
the CEF FIB states for the line card entities and
communicate with the line card entities using
XDR. This Table contains the CEF FIB State
related to peer entities on the managed device."
::= { cefPeer 2 }
cefPeerFIBEntry OBJECT-TYPE
SYNTAX CefPeerFIBEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the CEF FIB State
associated a CEF peer entity.
entPhysicalIndex and entPeerPhysicalIndex are
also indexes for this table which represents
entities of 'module' entPhysicalClass which are
capable of running CEF."
INDEX { entPhysicalIndex,
entPeerPhysicalIndex,
cefFIBIpVersion }
::= { cefPeerFIBTable 1}
CefPeerFIBEntry ::= SEQUENCE {
cefPeerFIBOperState INTEGER
}
cefPeerFIBOperState OBJECT-TYPE
SYNTAX INTEGER {
peerFIBDown (1),
peerFIBUp (2),
peerFIBReloadRequest(3),
peerFIBReloading (4),
peerFIBSynced (5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current CEF FIB Operational State for the
CEF peer entity.
"
::= { cefPeerFIBEntry 1 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Prefix Length Stats Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefStatsPrefixLenTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefStatsPrefixLenEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies the CEF stats based
on the Prefix Length."
::= { cefStats 1 }
cefStatsPrefixLenEntry OBJECT-TYPE
SYNTAX CefStatsPrefixLenEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device
and if CEF accounting is set to enable
prefix length based accounting (value of
cefCfgAccountingMap object in the
cefCfgEntry is set to enable 'prefixLength'
accounting), each entry contains the traffic
statistics for a prefix length.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefFIBIpVersion,
cefStatsPrefixLen }
::= { cefStatsPrefixLenTable 1}
CefStatsPrefixLenEntry ::= SEQUENCE {
cefStatsPrefixLen InetAddressPrefixLength,
cefStatsPrefixQueries Counter32,
cefStatsPrefixHCQueries Counter64,
cefStatsPrefixInserts Counter32,
cefStatsPrefixHCInserts Counter64,
cefStatsPrefixDeletes Counter32,
cefStatsPrefixHCDeletes Counter64,
cefStatsPrefixElements Gauge32,
cefStatsPrefixHCElements CounterBasedGauge64
}
cefStatsPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Length in bits of the Destination IP prefix.
As 0.0.0.0/0 is a valid prefix, hence
0 is a valid prefix length."
::= { cefStatsPrefixLenEntry 1 }
cefStatsPrefixQueries OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of queries received in the FIB database
for the specified IP prefix length."
::= { cefStatsPrefixLenEntry 2 }
cefStatsPrefixHCQueries OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of queries received in the FIB database
for the specified IP prefix length.
This object is a 64-bit version of
cefStatsPrefixQueries."
::= { cefStatsPrefixLenEntry 3 }
cefStatsPrefixInserts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of insert operations performed to the FIB
database for the specified IP prefix length."
::= { cefStatsPrefixLenEntry 4 }
cefStatsPrefixHCInserts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of insert operations performed to the FIB
database for the specified IP prefix length.
This object is a 64-bit version of
cefStatsPrefixInsert."
::= { cefStatsPrefixLenEntry 5 }
cefStatsPrefixDeletes OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of delete operations performed to the FIB
database for the specified IP prefix length."
::= { cefStatsPrefixLenEntry 6 }
cefStatsPrefixHCDeletes OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of delete operations performed to the FIB
database for the specified IP prefix length.
This object is a 64-bit version of
cefStatsPrefixDelete."
::= { cefStatsPrefixLenEntry 7 }
cefStatsPrefixElements OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of elements in the FIB database for the
specified IP prefix length."
::= { cefStatsPrefixLenEntry 8 }
cefStatsPrefixHCElements OBJECT-TYPE
SYNTAX CounterBasedGauge64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of elements in the FIB database for the
specified IP prefix length.
This object is a 64-bit version of
cefStatsPrefixElements."
::= { cefStatsPrefixLenEntry 9 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Switching Stats Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefSwitchingStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefSwitchingStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies the CEF switch stats."
::= { cefStats 2 }
cefSwitchingStatsEntry OBJECT-TYPE
SYNTAX CefSwitchingStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry specifies the switching stats.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefFIBIpVersion,
cefSwitchingIndex
}
::= { cefSwitchingStatsTable 1}
CefSwitchingStatsEntry ::= SEQUENCE {
cefSwitchingIndex Integer32,
cefSwitchingPath SnmpAdminString,
cefSwitchingDrop Counter32,
cefSwitchingHCDrop Counter64,
cefSwitchingPunt Counter32,
cefSwitchingHCPunt Counter64,
cefSwitchingPunt2Host Counter32,
cefSwitchingHCPunt2Host Counter64
}
cefSwitchingIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this switching stats entry."
::= { cefSwitchingStatsEntry 1 }
cefSwitchingPath OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(1..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Switch path where the feature was executed.
Available switch paths are platform-dependent.
Following are the examples of switching paths:
RIB : switching with CEF assistance
Low-end switching (LES) : CEF switch path
PAS : CEF turbo switch path.
"
::= { cefSwitchingStatsEntry 2 }
cefSwitchingDrop OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets dropped by CEF."
::= { cefSwitchingStatsEntry 3 }
cefSwitchingHCDrop OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets dropped by CEF.
This object is a 64-bit version of cefSwitchingDrop."
::= { cefSwitchingStatsEntry 4 }
cefSwitchingPunt OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets that could not be switched
in the normal path and were punted to the
next-fastest switching vector."
::= { cefSwitchingStatsEntry 5 }
cefSwitchingHCPunt OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets that could not be switched
in the normal path and were punted to the
next-fastest switching vector.
This object is a 64-bit version of cefSwitchingPunt."
::= { cefSwitchingStatsEntry 6 }
cefSwitchingPunt2Host OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets that could not be switched
in the normal path and were punted to the host
(process switching path).
For most of the switching paths, the value of
this object may be similar to cefSwitchingPunt."
::= { cefSwitchingStatsEntry 7 }
cefSwitchingHCPunt2Host OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets that could not be switched
in the normal path and were punted to the host
(process switching path).
For most of the switching paths, the value of
this object may be similar to cefSwitchingPunt.
This object is a 64-bit version of cefSwitchingPunt2Host."
::= { cefSwitchingStatsEntry 8 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF IP Prefix Consistency Checker Group
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefCCGlobalTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefCCGlobalEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains CEF consistency checker
(CC) global parameters for the managed device."
::= { cefCC 1 }
cefCCGlobalEntry OBJECT-TYPE
SYNTAX CefCCGlobalEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If the managed device supports CEF,
each entry contains the global consistency
checker parameter for the managed device.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device."
INDEX { cefFIBIpVersion }
::= { cefCCGlobalTable 1}
CefCCGlobalEntry ::= SEQUENCE {
cefCCGlobalAutoRepairEnabled TruthValue,
cefCCGlobalAutoRepairDelay Unsigned32,
cefCCGlobalAutoRepairHoldDown Unsigned32,
cefCCGlobalErrorMsgEnabled TruthValue,
cefCCGlobalFullScanAction CefCCAction,
cefCCGlobalFullScanStatus CefCCStatus
}
cefCCGlobalAutoRepairEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Once an inconsistency has been detected,
CEF has the ability to repair the problem.
This object indicates the status of auto-repair
function for the consistency checkers."
::= { cefCCGlobalEntry 1 }
cefCCGlobalAutoRepairDelay OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indiactes how long the consistency checker
waits to fix an inconsistency.
The value of this object has no effect when the
value of object cefCCGlobalAutoRepairEnabled
is 'false'."
::= { cefCCGlobalEntry 2 }
cefCCGlobalAutoRepairHoldDown OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates how long the consistency checker
waits to re-enable auto-repair after
auto-repair runs.
The value of this object has no effect when the
value of object cefCCGlobalAutoRepairEnabled
is 'false'."
::= { cefCCGlobalEntry 3 }
cefCCGlobalErrorMsgEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Enables the consistency checker to generate
an error message when it detects an inconsistency."
::= { cefCCGlobalEntry 4 }
cefCCGlobalFullScanAction OBJECT-TYPE
SYNTAX CefCCAction
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Setting the value of this object to ccActionStart(1)
will start the full scan consistency checkers.
The Management station should poll the
cefCCGlobalFullScanStatus object to get the
state of full-scan operation.
Once the full-scan operation completes (value
of cefCCGlobalFullScanStatus object is ccStatusDone(3)),
the Management station should retrieve the values of the
related stats object from the cefCCTypeTable.
Setting the value of this object to ccActionAbort(2) will
abort the full-scan operation.
The value of this object can't be set to ccActionStart(1),
if the value of object cefCCGlobalFullScanStatus
is ccStatusRunning(2).
The value of this object will be set to cefActionNone(1)
when the full scan consistency checkers have never
been activated.
A Management Station cannot set the value of
this object to cefActionNone(1)."
DEFVAL { ccActionNone }
::= { cefCCGlobalEntry 5 }
cefCCGlobalFullScanStatus OBJECT-TYPE
SYNTAX CefCCStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the status of the full scan consistency
checker request."
::= { cefCCGlobalEntry 6 }
--
-- Consistency Checker Type Table
--
cefCCTypeTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefCCTypeEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains CEF consistency
checker types specific parameters on the managed device.
All detected inconsistency are signaled to the
Management Station via cefInconsistencyDetection
notification.
"
::= { cefCC 2 }
cefCCTypeEntry OBJECT-TYPE
SYNTAX CefCCTypeEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If the managed device supports CEF,
each entry contains the consistency
checker statistics for a consistency
checker type.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device."
INDEX { cefFIBIpVersion,
cefCCType }
::= { cefCCTypeTable 1}
CefCCTypeEntry ::= SEQUENCE {
cefCCType CefCCType,
cefCCEnabled TruthValue,
cefCCCount Unsigned32,
cefCCPeriod Unsigned32,
cefCCQueriesSent Counter32,
cefCCQueriesIgnored Counter32,
cefCCQueriesChecked Counter32,
cefCCQueriesIterated Counter32
}
cefCCType OBJECT-TYPE
SYNTAX CefCCType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Type of the consistency checker."
::= { cefCCTypeEntry 1 }
cefCCEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Enables the passive consistency checker.
Passive consistency checkers are disabled
by default.
Full-scan consistency checkers are always enabled.
An attempt to set this object to 'false' for
an active consistency checker will result in
'wrongValue' error."
::= { cefCCTypeEntry 2 }
cefCCCount OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of prefixes to check per scan.
The default value for this object
depends upon the consistency checker type.
The value of this object will be irrelevant
for some of the consistency checkers and
will be set to 0.
A Management Station cannot set the value of
this object to 0."
::= { cefCCTypeEntry 3 }
cefCCPeriod OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The period between scans for the consistency
checker."
::= { cefCCTypeEntry 4 }
cefCCQueriesSent OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of prefix consistency queries sent to CEF
forwarding databases by this consistency checker."
::= { cefCCTypeEntry 5 }
cefCCQueriesIgnored OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of prefix consistency queries for which
the consistency checks were not performed by this
consistency checker. This may be because of some
internal error or resource failure."
::= { cefCCTypeEntry 6 }
cefCCQueriesChecked OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of prefix consistency queries processed by this
consistency checker."
::= { cefCCTypeEntry 7 }
cefCCQueriesIterated OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of prefix consistency queries iterated back to
the master database by this consistency checker."
::= { cefCCTypeEntry 8 }
--
-- Inconsistency Record Table
--
cefInconsistencyRecordTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefInconsistencyRecordEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains CEF inconsistency
records."
::= { cefCC 3 }
cefInconsistencyRecordEntry OBJECT-TYPE
SYNTAX CefInconsistencyRecordEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If the managed device supports CEF,
each entry contains the inconsistency
record."
INDEX { cefFIBIpVersion,
cefInconsistencyRecId }
::= { cefInconsistencyRecordTable 1}
CefInconsistencyRecordEntry ::= SEQUENCE {
cefInconsistencyRecId Integer32,
cefInconsistencyPrefixType InetAddressType,
cefInconsistencyPrefixAddr InetAddress,
cefInconsistencyPrefixLen InetAddressPrefixLength,
cefInconsistencyVrfName MplsVpnId,
cefInconsistencyCCType CefCCType,
cefInconsistencyEntity EntPhysicalIndexOrZero,
cefInconsistencyReason INTEGER
}
cefInconsistencyRecId OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this inconsistency record entry."
::= { cefInconsistencyRecordEntry 1 }
cefInconsistencyPrefixType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The network prefix type associated with this inconsistency
record."
::= { cefInconsistencyRecordEntry 2 }
cefInconsistencyPrefixAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The network prefix address associated with this
inconsistency record.
The type of this address is determined by
the value of the cefInconsistencyPrefixType object."
::= { cefInconsistencyRecordEntry 3 }
cefInconsistencyPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Length in bits of the inconsistency address prefix."
::= { cefInconsistencyRecordEntry 4 }
cefInconsistencyVrfName OBJECT-TYPE
SYNTAX MplsVpnId
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Vrf name associated with this inconsistency record."
::= { cefInconsistencyRecordEntry 5 }
cefInconsistencyCCType OBJECT-TYPE
SYNTAX CefCCType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of consistency checker who generated this
inconsistency record."
::= { cefInconsistencyRecordEntry 6 }
cefInconsistencyEntity OBJECT-TYPE
SYNTAX EntPhysicalIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The entity for which this inconsistency record was
generated. The value of this object will be
irrelevant and will be set to 0 when the inconsisency
record is applicable for all the entities."
::= { cefInconsistencyRecordEntry 7 }
cefInconsistencyReason OBJECT-TYPE
SYNTAX INTEGER {
missing (1),
checksumErr(2),
unknown (3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The reason for generating this inconsistency record.
missing(1): the prefix is missing
checksumErr(2): checksum error was found
unknown(3): reason is unknown
"
::= { cefInconsistencyRecordEntry 8 }
--
-- Global objects for CEF Inconsistency
--
-- last change time stamp for the whole MIB
entLastInconsistencyDetectTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the time an
inconsistency is detecetd."
::= { cefCC 4 }
cefInconsistencyReset OBJECT-TYPE
SYNTAX CefCCAction
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Setting the value of this object to ccActionStart(1)
will reset all the active consistency checkers.
The Management station should poll the
cefInconsistencyResetStatus object to get the
state of inconsistency reset operation.
This operation once started, cannot be aborted.
Hence, the value of this object cannot be set to
ccActionAbort(2).
The value of this object can't be set to ccActionStart(1),
if the value of object cefInconsistencyResetStatus
is ccStatusRunning(2).
"
DEFVAL { ccActionNone }
::= { cefCC 5 }
cefInconsistencyResetStatus OBJECT-TYPE
SYNTAX CefCCStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the status of the consistency reset
request."
::= { cefCC 6 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Notif Control Group
--
-- This group of objects controls the sending of CEF Notifications
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefResourceFailureNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether or not a notification should be
generated on the detection of CEF resource Failure."
::= { cefNotifCntl 1 }
cefPeerStateChangeNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether or not a notification should be
generated on the detection of CEF peer state change."
::= { cefNotifCntl 2 }
cefPeerFIBStateChangeNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether or not a notification should be
generated on the detection of CEF FIB peer state change."
::= { cefNotifCntl 3 }
cefNotifThrottlingInterval OBJECT-TYPE
SYNTAX Integer32 (0 | 1..3600)
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object controls the generation of the
cefInconsistencyDetection notification.
If this object has a value of zero,
then the throttle control is disabled.
If this object has a non-zero value, then the agent
must not generate more than one
cefInconsistencyDetection 'notification-event' in the
indicated period, where a 'notification-event' is the
transmission of a single trap
or inform PDU to a list of notification destinations.
If additional inconsistency is detected within the
throttling period, then notification-events
for these inconsistencies should be suppressed by the agent
until the current throttling period expires. At the end of a
throttling period, one notification-event should be generated
if any inconsistency was detected since the start of the
throttling period. In such a case, another throttling period
is started right away.
An NMS should periodically poll cefInconsistencyRecordTable
to detect any missed cefInconsistencyDetection
notification-events, e.g., due to throttling or transmission
loss.
If cefNotifThrottlingInterval notification generation
is enabled, the suggested default throttling period is
60 seconds, but generation of the cefInconsistencyDetection
notification should be disabled by default.
If the agent is capable of storing non-volatile
configuration, then the value of this object must be
restored after a re-initialization of the management
system.
The actual transmission of notifications is controlled
via the MIB modules in RFC 3413."
DEFVAL { 0 }
::= { cefNotifCntl 4 }
cefInconsistencyNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether cefInconsistencyDetection notification
should be generated for this managed device."
::= { cefNotifCntl 5 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- CEF Notifications
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefResourceFailure NOTIFICATION-TYPE
OBJECTS {
cefResourceFailureReason
}
STATUS current
DESCRIPTION
"A cefResourceFailure notification is generated when
CEF resource failure on the managed entity is
detected. The reason for this failure is indicated
by cefResourcefFailureReason."
::= { ciscoCefMIBNotifs 1 }
cefPeerStateChange NOTIFICATION-TYPE
OBJECTS {
cefPeerOperState
}
STATUS current
DESCRIPTION
"A cefPeerStateChange notification is generated if
change in cefPeerOperState is detected for the
peer entity."
::= { ciscoCefMIBNotifs 2 }
cefPeerFIBStateChange NOTIFICATION-TYPE
OBJECTS {
cefPeerFIBOperState
}
STATUS current
DESCRIPTION
"A cefPeerFIBStateChange notification is generated if
change in cefPeerFIBOperState is detected for the
peer entity."
::= { ciscoCefMIBNotifs 3 }
cefInconsistencyDetection NOTIFICATION-TYPE
OBJECTS {
entLastInconsistencyDetectTime
}
STATUS current
DESCRIPTION
"A cefInconsistencyDetection notification is generated
when CEF consistency checkers detects an inconsistent
prefix in one of the CEF forwarding databases.
Note that the generation of cefInconsistencyDetection
notifications is throttled by the agent, as specified
by the 'cefNotifThrottlingInterval' object."
::= { ciscoCefMIBNotifs 4 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Conformance Information
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefMIBGroups OBJECT IDENTIFIER
::= { ciscoCefMIBConform 1 }
cefMIBCompliances OBJECT IDENTIFIER
::= { ciscoCefMIBConform 2 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Compliance Statements
-- +++++++++++++++++++++++++++++++++++ ++++++++++++++++++++
cefMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMP Agents which
implement this MIB."
MODULE -- this module
MANDATORY-GROUPS { cefGroup,
cefNotifCntlGroup,
cefNotificationGroup
}
GROUP cefDistributedGroup
DESCRIPTION
"This group should be supported on the agents
which support distributed CEF (dCEF)."
GROUP cefHCStatsGroup
DESCRIPTION
"This group should be supported on the agents
which support 64-bit counters."
-- OBJECT cefFESelectionAdjNextHopAddrType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support global IPv4
-- and/or IPv6 addresses, depending on its support for
-- IPv4 and IPv6."
OBJECT cefFESelectionAdjNextHopAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support for
IPv4 and IPv6."
-- OBJECT cefInconsistencyPrefixType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support global IPv4
-- and/or IPv6 addresses, depending on its support for
-- IPv4 and IPv6."
OBJECT cefInconsistencyPrefixAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support for
IPv4 and IPv6."
::= { cefMIBCompliances 1 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Units of Conformance
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefGroup OBJECT-GROUP
OBJECTS {
cefFIBSummaryFwdPrefixes,
cefPrefixForwardingInfo,
cefPrefixPkts,
cefPrefixBytes,
cefPrefixInternalNRPkts,
cefPrefixInternalNRBytes,
cefPrefixExternalNRPkts,
cefPrefixExternalNRBytes,
cefLMPrefixSpinLock,
cefLMPrefixState,
cefLMPrefixAddr,
cefLMPrefixLen,
cefLMPrefixRowStatus,
cefPathType,
cefPathInterface,
cefPathNextHopAddr,
cefPathRecurseVrfName,
cefAdjSummaryComplete,
cefAdjSummaryIncomplete,
cefAdjSummaryFixup,
cefAdjSummaryRedirect,
cefAdjSource,
cefAdjEncap,
cefAdjFixup,
cefAdjMTU,
cefAdjForwardingInfo,
cefAdjPkts,
cefAdjBytes,
cefFESelectionSpecial,
cefFESelectionLabels,
cefFESelectionAdjLinkType,
cefFESelectionAdjInterface,
cefFESelectionAdjNextHopAddrType,
cefFESelectionAdjNextHopAddr,
cefFESelectionAdjConnId,
cefFESelectionVrfName,
cefFESelectionWeight,
cefCfgAdminState,
cefCfgOperState,
cefCfgAccountingMap,
cefCfgLoadSharingAlgorithm,
cefCfgLoadSharingID,
cefCfgTrafficStatsLoadInterval,
cefCfgTrafficStatsUpdateRate,
cefResourceMemoryUsed,
cefResourceFailureReason,
cefIntSwitchingState,
cefIntLoadSharing,
cefIntNonrecursiveAccouting,
cefStatsPrefixQueries,
cefStatsPrefixInserts,
cefStatsPrefixDeletes,
cefStatsPrefixElements,
cefSwitchingPath,
cefSwitchingDrop,
cefSwitchingPunt,
cefSwitchingPunt2Host
}
STATUS current
DESCRIPTION
"This group consists of all the managed objects
which are applicable to CEF irrespective
of the value of object cefDistributionOperState."
::= { cefMIBGroups 1 }
cefDistributedGroup OBJECT-GROUP
OBJECTS {
cefCfgDistributionAdminState,
cefCfgDistributionOperState,
cefPeerOperState,
cefPeerNumberOfResets,
cefPeerFIBOperState,
cefCCGlobalAutoRepairEnabled,
cefCCGlobalAutoRepairDelay,
cefCCGlobalAutoRepairHoldDown,
cefCCGlobalErrorMsgEnabled,
cefCCGlobalFullScanStatus,
cefCCGlobalFullScanAction,
cefCCEnabled,
cefCCCount,
cefCCPeriod,
cefCCQueriesSent,
cefCCQueriesIgnored,
cefCCQueriesChecked,
cefCCQueriesIterated,
entLastInconsistencyDetectTime,
cefInconsistencyPrefixType,
cefInconsistencyPrefixAddr,
cefInconsistencyPrefixLen,
cefInconsistencyVrfName,
cefInconsistencyCCType,
cefInconsistencyEntity,
cefInconsistencyReason,
cefInconsistencyReset,
cefInconsistencyResetStatus
}
STATUS current
DESCRIPTION
"This group consists of all the Managed objects
which are only applicable to CEF is
the value of object cefDistributionOperState
is 'up'."
::= { cefMIBGroups 2 }
cefHCStatsGroup OBJECT-GROUP
OBJECTS {
cefPrefixHCPkts,
cefPrefixHCBytes,
cefPrefixInternalNRHCPkts,
cefPrefixInternalNRHCBytes,
cefPrefixExternalNRHCPkts,
cefPrefixExternalNRHCBytes,
cefAdjHCPkts,
cefAdjHCBytes,
cefStatsPrefixHCQueries,
cefStatsPrefixHCInserts,
cefStatsPrefixHCDeletes,
cefStatsPrefixHCElements,
cefSwitchingHCDrop,
cefSwitchingHCPunt,
cefSwitchingHCPunt2Host
}
STATUS current
DESCRIPTION
"This group consists of all the 64-bit
counter objects which are applicable to
CEF irrespective of the value of object
cefDistributionOperState."
::= { cefMIBGroups 3 }
cefNotifCntlGroup OBJECT-GROUP
OBJECTS {
cefResourceFailureNotifEnable,
cefPeerStateChangeNotifEnable,
cefPeerFIBStateChangeNotifEnable,
cefNotifThrottlingInterval,
cefInconsistencyNotifEnable
}
STATUS current
DESCRIPTION
"This group of objects controls the sending of
CEF Notifications."
::= { cefMIBGroups 5 }
cefNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
cefResourceFailure,
cefPeerStateChange,
cefPeerFIBStateChange,
cefInconsistencyDetection
}
STATUS current
DESCRIPTION
"This group contains the notifications for the CEF MIB."
::= { cefMIBGroups 6 }
END