CEF
From Internetworkpro
Cisco Express Forwarding or CEF is Cisco's method of forwarding layer 3 data on modern devices.
Contents |
[edit] Components
The primary components to CEF are the Forwarding Information Base, or FIB, and the Adjacency table.
[edit] Forwarding Information Base
The FIB is essentially a hardware copy of the routing table (commonly referred to as the Routing Information Base, or RIB). The main concept is to associate the layer 3 information in hardware with links to layer 2 information, eliminating the need to ARP for an initial routing table lookup.
Generally, the FIB is programmed by the control plane (for example, on the 6500). In this case, a software process will run routing protocols (such as OSPF) and build up its RIB. This will then be programmed in to the hardware as the FIB. From here on, we do not need to query the software portion of the router, as every route and its layer 2 rewrite information is already programmed in hardware.
[edit] Adjacency Table
The Adjacency Table links FIB entries to layer 2. For example, we may have source and destination MAC address rewrite information, as well as our egress port.
[edit] Distributed CEF
Distributed CEF (or dCEF) is where the CEF table itself is maintained on local line cards. The advantage here is that switching is no longer centralised and thus faster switching may occur, especially if it's across a single line card. This is mainly present on high-end routers such as the 7600 or the GSR.
[edit] MPLS and CEF
With MPLS, a new table is introduced, the Label Forwarding Information Base, or LFIB. The LFIB is similar to the FIB, except it associates MPLS labels with the adjacency table and is composed via the Label Information Base, or LIB, and the FIB. The LIB is made from MPLS protocols, such as LDP.

