CISCO-CEF-MIB

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.

Imported Objects

CefIpVersion, CefCCStatus, CefCCAction, CefCCType, CefFailureReason, CefOperStatus, CefAdminStatus, CefMplsLabelList, CefForwardingElementSpecialType, CefPrefixSearchState, CefPathType, CefAdjacencySource, CefAdjLinkTypeCISCO-CEF-TC
ciscoMgmtCISCO-SMI
EntPhysicalIndexOrZeroCISCO-TC
entPhysicalIndex, PhysicalIndexENTITY-MIB
CounterBasedGauge64HCNUM-TC
ifIndex, InterfaceIndexOrZeroIF-MIB
InetAddressType, InetAddressPrefixLength, InetAddressINET-ADDRESS-MIB
MplsVpnIdMPLS-VPN-MIB
SnmpAdminStringSNMP-FRAMEWORK-MIB
OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUPSNMPv2-CONF
MODULE-IDENTITY, Unsigned32, Gauge32, Integer32, Counter32, Counter64, NOTIFICATION-TYPE, OBJECT-TYPESNMPv2-SMI
RowStatus, TimeStamp, TruthValue, TestAndIncrSNMPv2-TC
ciscoCefMIB.1.3.6.1.4.1.9.9.492
ciscoCefMIBNotifs .1.3.6.1.4.1.9.9.492.0
cefResourceFailure .1.3.6.1.4.1.9.9.492.0.1
cefPeerStateChange .1.3.6.1.4.1.9.9.492.0.2
cefPeerFIBStateChange .1.3.6.1.4.1.9.9.492.0.3
cefInconsistencyDetection .1.3.6.1.4.1.9.9.492.0.4
ciscoCefMIBObjects .1.3.6.1.4.1.9.9.492.1
cefFIB .1.3.6.1.4.1.9.9.492.1.1
cefFIBSummary .1.3.6.1.4.1.9.9.492.1.1.1
cefFIBSummaryTable .1.3.6.1.4.1.9.9.492.1.1.1.1
cefFIBSummaryEntry .1.3.6.1.4.1.9.9.492.1.1.1.1.1
cefFIBIpVersion .1.3.6.1.4.1.9.9.492.1.1.1.1.1.1
cefFIBSummaryFwdPrefixes .1.3.6.1.4.1.9.9.492.1.1.1.1.1.2
cefPrefixTable .1.3.6.1.4.1.9.9.492.1.1.2
cefPrefixEntry .1.3.6.1.4.1.9.9.492.1.1.2.1
cefPrefixType .1.3.6.1.4.1.9.9.492.1.1.2.1.1
cefPrefixInternalNRHCPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.10
cefPrefixInternalNRBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.11
cefPrefixInternalNRHCBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.12
cefPrefixExternalNRPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.13
cefPrefixExternalNRHCPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.14
cefPrefixExternalNRBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.15
cefPrefixExternalNRHCBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.16
cefPrefixAddr .1.3.6.1.4.1.9.9.492.1.1.2.1.2
cefPrefixLen .1.3.6.1.4.1.9.9.492.1.1.2.1.3
cefPrefixForwardingInfo .1.3.6.1.4.1.9.9.492.1.1.2.1.4
cefPrefixPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.5
cefPrefixHCPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.6
cefPrefixBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.7
cefPrefixHCBytes .1.3.6.1.4.1.9.9.492.1.1.2.1.8
cefPrefixInternalNRPkts .1.3.6.1.4.1.9.9.492.1.1.2.1.9
cefLMPrefixSpinLock .1.3.6.1.4.1.9.9.492.1.1.3
cefLMPrefixTable .1.3.6.1.4.1.9.9.492.1.1.4
cefLMPrefixEntry .1.3.6.1.4.1.9.9.492.1.1.4.1
cefLMPrefixDestAddrType .1.3.6.1.4.1.9.9.492.1.1.4.1.1
cefLMPrefixDestAddr .1.3.6.1.4.1.9.9.492.1.1.4.1.2
cefLMPrefixState .1.3.6.1.4.1.9.9.492.1.1.4.1.3
cefLMPrefixAddr .1.3.6.1.4.1.9.9.492.1.1.4.1.4
cefLMPrefixLen .1.3.6.1.4.1.9.9.492.1.1.4.1.5
cefLMPrefixRowStatus .1.3.6.1.4.1.9.9.492.1.1.4.1.6
cefPathTable .1.3.6.1.4.1.9.9.492.1.1.5
cefPathEntry .1.3.6.1.4.1.9.9.492.1.1.5.1
cefPathId .1.3.6.1.4.1.9.9.492.1.1.5.1.1
cefPathType .1.3.6.1.4.1.9.9.492.1.1.5.1.2
cefPathInterface .1.3.6.1.4.1.9.9.492.1.1.5.1.3
cefPathNextHopAddr .1.3.6.1.4.1.9.9.492.1.1.5.1.4
cefPathRecurseVrfName .1.3.6.1.4.1.9.9.492.1.1.5.1.5
cefAdj .1.3.6.1.4.1.9.9.492.1.2
cefAdjSummary .1.3.6.1.4.1.9.9.492.1.2.1
cefAdjSummaryTable .1.3.6.1.4.1.9.9.492.1.2.1.1
cefAdjSummaryEntry .1.3.6.1.4.1.9.9.492.1.2.1.1.1
cefAdjSummaryLinkType .1.3.6.1.4.1.9.9.492.1.2.1.1.1.1
cefAdjSummaryComplete .1.3.6.1.4.1.9.9.492.1.2.1.1.1.2
cefAdjSummaryIncomplete .1.3.6.1.4.1.9.9.492.1.2.1.1.1.3
cefAdjSummaryFixup .1.3.6.1.4.1.9.9.492.1.2.1.1.1.4
cefAdjSummaryRedirect .1.3.6.1.4.1.9.9.492.1.2.1.1.1.5
cefAdjTable .1.3.6.1.4.1.9.9.492.1.2.2
cefAdjEntry .1.3.6.1.4.1.9.9.492.1.2.2.1
cefAdjNextHopAddrType .1.3.6.1.4.1.9.9.492.1.2.2.1.1
cefAdjHCPkts .1.3.6.1.4.1.9.9.492.1.2.2.1.10
cefAdjBytes .1.3.6.1.4.1.9.9.492.1.2.2.1.11
cefAdjHCBytes .1.3.6.1.4.1.9.9.492.1.2.2.1.12
cefAdjNextHopAddr .1.3.6.1.4.1.9.9.492.1.2.2.1.2
cefAdjConnId .1.3.6.1.4.1.9.9.492.1.2.2.1.3
cefAdjSource .1.3.6.1.4.1.9.9.492.1.2.2.1.4
cefAdjEncap .1.3.6.1.4.1.9.9.492.1.2.2.1.5
cefAdjFixup .1.3.6.1.4.1.9.9.492.1.2.2.1.6
cefAdjMTU .1.3.6.1.4.1.9.9.492.1.2.2.1.7
cefAdjForwardingInfo .1.3.6.1.4.1.9.9.492.1.2.2.1.8
cefAdjPkts .1.3.6.1.4.1.9.9.492.1.2.2.1.9
cefFE .1.3.6.1.4.1.9.9.492.1.3
cefFESelectionTable .1.3.6.1.4.1.9.9.492.1.3.1
cefFESelectionEntry .1.3.6.1.4.1.9.9.492.1.3.1.1
cefFESelectionName .1.3.6.1.4.1.9.9.492.1.3.1.1.1
cefFESelectionVrfName .1.3.6.1.4.1.9.9.492.1.3.1.1.10
cefFESelectionWeight .1.3.6.1.4.1.9.9.492.1.3.1.1.11
cefFESelectionId .1.3.6.1.4.1.9.9.492.1.3.1.1.2
cefFESelectionSpecial .1.3.6.1.4.1.9.9.492.1.3.1.1.3
cefFESelectionLabels .1.3.6.1.4.1.9.9.492.1.3.1.1.4
cefFESelectionAdjLinkType .1.3.6.1.4.1.9.9.492.1.3.1.1.5
cefFESelectionAdjInterface .1.3.6.1.4.1.9.9.492.1.3.1.1.6
cefFESelectionAdjNextHopAddrType .1.3.6.1.4.1.9.9.492.1.3.1.1.7
cefFESelectionAdjNextHopAddr .1.3.6.1.4.1.9.9.492.1.3.1.1.8
cefFESelectionAdjConnId .1.3.6.1.4.1.9.9.492.1.3.1.1.9
cefGlobal .1.3.6.1.4.1.9.9.492.1.4
cefCfgTable .1.3.6.1.4.1.9.9.492.1.4.1
cefCfgEntry .1.3.6.1.4.1.9.9.492.1.4.1.1
cefCfgAdminState .1.3.6.1.4.1.9.9.492.1.4.1.1.1
cefCfgOperState .1.3.6.1.4.1.9.9.492.1.4.1.1.2
cefCfgDistributionAdminState .1.3.6.1.4.1.9.9.492.1.4.1.1.3
cefCfgDistributionOperState .1.3.6.1.4.1.9.9.492.1.4.1.1.4
cefCfgAccountingMap .1.3.6.1.4.1.9.9.492.1.4.1.1.5
cefCfgLoadSharingAlgorithm .1.3.6.1.4.1.9.9.492.1.4.1.1.6
cefCfgLoadSharingID .1.3.6.1.4.1.9.9.492.1.4.1.1.7
cefCfgTrafficStatsLoadInterval .1.3.6.1.4.1.9.9.492.1.4.1.1.8
cefCfgTrafficStatsUpdateRate .1.3.6.1.4.1.9.9.492.1.4.1.1.9
cefResourceTable .1.3.6.1.4.1.9.9.492.1.4.2
cefResourceEntry .1.3.6.1.4.1.9.9.492.1.4.2.1
cefResourceMemoryUsed .1.3.6.1.4.1.9.9.492.1.4.2.1.1
cefResourceFailureReason .1.3.6.1.4.1.9.9.492.1.4.2.1.2
cefInterface .1.3.6.1.4.1.9.9.492.1.5
cefIntTable .1.3.6.1.4.1.9.9.492.1.5.1
cefIntEntry .1.3.6.1.4.1.9.9.492.1.5.1.1
cefIntSwitchingState .1.3.6.1.4.1.9.9.492.1.5.1.1.1
cefIntLoadSharing .1.3.6.1.4.1.9.9.492.1.5.1.1.2
cefIntNonrecursiveAccouting .1.3.6.1.4.1.9.9.492.1.5.1.1.3
cefPeer .1.3.6.1.4.1.9.9.492.1.6
cefPeerTable .1.3.6.1.4.1.9.9.492.1.6.1
cefPeerEntry .1.3.6.1.4.1.9.9.492.1.6.1.1
entPeerPhysicalIndex .1.3.6.1.4.1.9.9.492.1.6.1.1.1
cefPeerOperState .1.3.6.1.4.1.9.9.492.1.6.1.1.2
cefPeerNumberOfResets .1.3.6.1.4.1.9.9.492.1.6.1.1.3
cefPeerFIBTable .1.3.6.1.4.1.9.9.492.1.6.2
cefPeerFIBEntry .1.3.6.1.4.1.9.9.492.1.6.2.1
cefPeerFIBOperState .1.3.6.1.4.1.9.9.492.1.6.2.1.1
cefCC .1.3.6.1.4.1.9.9.492.1.7
cefCCGlobalTable .1.3.6.1.4.1.9.9.492.1.7.1
cefCCGlobalEntry .1.3.6.1.4.1.9.9.492.1.7.1.1
cefCCGlobalAutoRepairEnabled .1.3.6.1.4.1.9.9.492.1.7.1.1.1
cefCCGlobalAutoRepairDelay .1.3.6.1.4.1.9.9.492.1.7.1.1.2
cefCCGlobalAutoRepairHoldDown .1.3.6.1.4.1.9.9.492.1.7.1.1.3
cefCCGlobalErrorMsgEnabled .1.3.6.1.4.1.9.9.492.1.7.1.1.4
cefCCGlobalFullScanAction .1.3.6.1.4.1.9.9.492.1.7.1.1.5
cefCCGlobalFullScanStatus .1.3.6.1.4.1.9.9.492.1.7.1.1.6
cefCCTypeTable .1.3.6.1.4.1.9.9.492.1.7.2
cefCCTypeEntry .1.3.6.1.4.1.9.9.492.1.7.2.1
cefCCType .1.3.6.1.4.1.9.9.492.1.7.2.1.1
cefCCEnabled .1.3.6.1.4.1.9.9.492.1.7.2.1.2
cefCCCount .1.3.6.1.4.1.9.9.492.1.7.2.1.3
cefCCPeriod .1.3.6.1.4.1.9.9.492.1.7.2.1.4
cefCCQueriesSent .1.3.6.1.4.1.9.9.492.1.7.2.1.5
cefCCQueriesIgnored .1.3.6.1.4.1.9.9.492.1.7.2.1.6
cefCCQueriesChecked .1.3.6.1.4.1.9.9.492.1.7.2.1.7
cefCCQueriesIterated .1.3.6.1.4.1.9.9.492.1.7.2.1.8
cefInconsistencyRecordTable .1.3.6.1.4.1.9.9.492.1.7.3
cefInconsistencyRecordEntry .1.3.6.1.4.1.9.9.492.1.7.3.1
cefInconsistencyRecId .1.3.6.1.4.1.9.9.492.1.7.3.1.1
cefInconsistencyPrefixType .1.3.6.1.4.1.9.9.492.1.7.3.1.2
cefInconsistencyPrefixAddr .1.3.6.1.4.1.9.9.492.1.7.3.1.3
cefInconsistencyPrefixLen .1.3.6.1.4.1.9.9.492.1.7.3.1.4
cefInconsistencyVrfName .1.3.6.1.4.1.9.9.492.1.7.3.1.5
cefInconsistencyCCType .1.3.6.1.4.1.9.9.492.1.7.3.1.6
cefInconsistencyEntity .1.3.6.1.4.1.9.9.492.1.7.3.1.7
cefInconsistencyReason .1.3.6.1.4.1.9.9.492.1.7.3.1.8
entLastInconsistencyDetectTime .1.3.6.1.4.1.9.9.492.1.7.4
cefInconsistencyReset .1.3.6.1.4.1.9.9.492.1.7.5
cefInconsistencyResetStatus .1.3.6.1.4.1.9.9.492.1.7.6
cefStats .1.3.6.1.4.1.9.9.492.1.8
cefStatsPrefixLenTable .1.3.6.1.4.1.9.9.492.1.8.1
cefStatsPrefixLenEntry .1.3.6.1.4.1.9.9.492.1.8.1.1
cefStatsPrefixLen .1.3.6.1.4.1.9.9.492.1.8.1.1.1
cefStatsPrefixQueries .1.3.6.1.4.1.9.9.492.1.8.1.1.2
cefStatsPrefixHCQueries .1.3.6.1.4.1.9.9.492.1.8.1.1.3
cefStatsPrefixInserts .1.3.6.1.4.1.9.9.492.1.8.1.1.4
cefStatsPrefixHCInserts .1.3.6.1.4.1.9.9.492.1.8.1.1.5
cefStatsPrefixDeletes .1.3.6.1.4.1.9.9.492.1.8.1.1.6
cefStatsPrefixHCDeletes .1.3.6.1.4.1.9.9.492.1.8.1.1.7
cefStatsPrefixElements .1.3.6.1.4.1.9.9.492.1.8.1.1.8
cefStatsPrefixHCElements .1.3.6.1.4.1.9.9.492.1.8.1.1.9
cefSwitchingStatsTable .1.3.6.1.4.1.9.9.492.1.8.2
cefSwitchingStatsEntry .1.3.6.1.4.1.9.9.492.1.8.2.1
cefSwitchingIndex .1.3.6.1.4.1.9.9.492.1.8.2.1.1
cefSwitchingPath .1.3.6.1.4.1.9.9.492.1.8.2.1.2
cefSwitchingDrop .1.3.6.1.4.1.9.9.492.1.8.2.1.3
cefSwitchingHCDrop .1.3.6.1.4.1.9.9.492.1.8.2.1.4
cefSwitchingPunt .1.3.6.1.4.1.9.9.492.1.8.2.1.5
cefSwitchingHCPunt .1.3.6.1.4.1.9.9.492.1.8.2.1.6
cefSwitchingPunt2Host .1.3.6.1.4.1.9.9.492.1.8.2.1.7
cefSwitchingHCPunt2Host .1.3.6.1.4.1.9.9.492.1.8.2.1.8
cefNotifCntl .1.3.6.1.4.1.9.9.492.1.9
cefResourceFailureNotifEnable .1.3.6.1.4.1.9.9.492.1.9.1
cefPeerStateChangeNotifEnable .1.3.6.1.4.1.9.9.492.1.9.2
cefPeerFIBStateChangeNotifEnable .1.3.6.1.4.1.9.9.492.1.9.3
cefNotifThrottlingInterval .1.3.6.1.4.1.9.9.492.1.9.4
cefInconsistencyNotifEnable .1.3.6.1.4.1.9.9.492.1.9.5
ciscoCefMIBConform .1.3.6.1.4.1.9.9.492.2
cefMIBGroups .1.3.6.1.4.1.9.9.492.2.1
cefMIBCompliances .1.3.6.1.4.1.9.9.492.2.2