CEF viene utilizzato principalmente per aumentare la velocità di commutazione di pacchetto riducendo il sovraccarico e ritardi introdotti da altre tecniche di routing. Il CEF è costituito da due componenti chiave: la base di informazioni di inoltro (FIB) e le adiacenze.
Il FIB è simile alla tabella di routing generata da più protocolli di routing, mantenendo solo l’indirizzo next-hop per un particolare percorso IP.
La tabella di adiacenza mantiene le informazioni di livello 2 o di commutazione collegate a una particolare voce FIB, evitando la necessità di una richiesta ARP (Address Resolution Protocol) per ogni ricerca di tabella. Esistono diversi tipi di adiacenze. Alcuni sono elencati di seguito:
- Adiacenza cache: questo tipo di voce contiene l’interfaccia in uscita corretta e l’indirizzo MAC (Medium Access Control) corretto per la sua voce FIB. L’indirizzo MAC è l’indirizzo MAC dell’indirizzo IP se la subnet della destinazione è direttamente collegata al router o è l’indirizzo MAC del router a cui il pacchetto deve essere inviato se la subnet della destinazione non è direttamente collegata al router che sta elaborando il pacchetto.
- Receive adjacency: Questo tipo di voce gestisce i pacchetti le cui destinazioni finali includono il router stesso. Ciò include i pacchetti i cui indirizzi IP sono assegnati al router stesso, i pacchetti broadcast e i multicast che hanno impostato il router stesso come una delle destinazioni.
- Adiacenza null: gestisce i pacchetti destinati a un’interfaccia NULL. I pacchetti con voci FIB che puntano a adiacenze NULLE verranno normalmente eliminati.
- Adiacenza Punt: si occupa di pacchetti che richiedono una gestione speciale o che non possono essere commutati da CEF. Tali pacchetti vengono inoltrati al livello di commutazione successivo (generalmente fast switching) dove possono essere elaborati e, si spera, inoltrati correttamente.
- Spigolare adiacenza: Questa adiacenza viene creata quando il router sa che la sottorete dell’IP di destinazione è direttamente collegata al router stesso e non conosce l’indirizzo MAC del dispositivo di destinazione o il router conosce l’indirizzo IP del router per inoltrare un pacchetto a una destinazione, ma non conosce l’indirizzo MAC del router. I pacchetti che attivano questa voce genereranno una richiesta ARP.
- Elimina adiacenza: le voci FIB che puntano a questo tipo di adiacenza verranno scartate.
- Adiacenza di rilascio: i pacchetti che puntano a questa voce vengono eliminati, ma il prefisso verrà controllato.
Per sfruttare appieno il CEF, si consiglia di utilizzare CEF distribuito (DCEF), dove c’è una tabella FIB su ciascuna delle schede di linea. Ciò evita la necessità di interrogare il processore principale o la tabella di routing per ottenere le informazioni di next-hop. Invece, la commutazione veloce verrà eseguita sulla scheda di linea stessa.
CEF attualmente supporta Ethernet, Frame Relay, ATM, PPP, FDDI, tunnel e Cisco HDLC.