CEF wird hauptsächlich verwendet, um die Paketvermittlungsgeschwindigkeit zu erhöhen, indem der Overhead und die Verzögerungen verringert werden, die durch andere Routingtechniken verursacht werden. CEF besteht aus zwei Schlüsselkomponenten: Der Forwarding Information Base (FIB) und Adjacencies.
Die FIB ähnelt der Routing-Tabelle, die von mehreren Routing-Protokollen generiert wird, wobei nur die Next-Hop-Adresse für eine bestimmte IP-Route beibehalten wird.
Die Adjazenztabelle verwaltet Layer-2- oder Switching-Informationen, die mit einem bestimmten FIB-Eintrag verknüpft sind, sodass für jede Tabellensuche keine ARP-Anforderung (Address Resolution Protocol) erforderlich ist. Es gibt verschiedene Arten von Adjazenzen. Einige sind unten aufgeführt:
- Cache-Adjazenz: Dieser Eintragstyp enthält die richtige ausgehende Schnittstelle und die richtige MAC-Adresse (Medium Access Control) für seinen FIB-Eintrag. Die MAC-Adresse ist die MAC-Adresse der IP-Adresse, wenn das Subnetz des Ziels direkt mit dem Router verbunden ist, oder die MAC-Adresse des Routers, an den das Paket gesendet werden muss, wenn das Subnetz des Ziels nicht direkt mit dem Router verbunden ist, der das Paket derzeit verarbeitet.
- Receive adjacency: Diese Art von Eintrag behandelt Pakete, zu deren endgültigen Zielen der Router selbst gehört. Dazu gehören Pakete, deren IP-Adressen dem Router selbst zugewiesen sind, Broadcast-Pakete und Multicasts, die den Router selbst als eines der Ziele eingerichtet haben.
- Null adjacency: Behandelt Pakete, die für eine NULL-Schnittstelle bestimmt sind. Pakete mit FIB-Einträgen, die auf NULL-Adjacencies zeigen, werden normalerweise verworfen.
- Punt adjacency: Befasst sich mit Paketen, die eine spezielle Behandlung erfordern oder von CEF nicht umgeschaltet werden können. Solche Pakete werden an die nächste Vermittlungsschicht weitergeleitet (im Allgemeinen schnelles Schalten), wo sie verarbeitet und hoffentlich korrekt weitergeleitet werden können.
- Nachbarschaft nachlesen: Diese Nachbarschaft entsteht, wenn der Router weiß, dass entweder das Subnetz der Ziel-IP direkt mit dem Router selbst verbunden ist und die MAC-Adresse dieses Zielgeräts nicht kennt, oder der Router die IP-Adresse des Routers kennt, an den ein Paket für ein Ziel weitergeleitet werden soll, aber er kennt die MAC-Adresse dieses Routers nicht. Pakete, die diesen Eintrag auslösen, generieren eine ARP-Anforderung.
- Adjazenz verwerfen: FIB-Einträge, die auf diese Art von Adjazenz verweisen, werden verworfen.
- Drop adjacency: Pakete, die auf diesen Eintrag verweisen, werden gelöscht, aber das Präfix wird überprüft.
Um CEF voll auszunutzen, wird empfohlen, Distributed CEF (dCEF) zu verwenden, bei dem sich auf jeder der Linienkarten eine FIB-Tabelle befindet. Dadurch wird vermieden, dass der Hauptprozessor oder die Routingtabelle abgefragt werden müssen, um die Next-Hop-Informationen abzurufen. Stattdessen wird ein schnelles Umschalten auf der Leitungskarte selbst durchgeführt.
CEF unterstützt derzeit Ethernet, Frame Relay, ATM, PPP, FDDI, Tunnel und Cisco HDLC.