Inleiding
Dit document beschrijft Cisco Express Forwarding (CEF).
Voorwaarden
Vereisten
Er zijn geen specifieke vereisten van toepassing op dit document.
Gebruikte componenten
Dit document is niet beperkt tot specifieke software- en hardware-versies.
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Overzicht
Cisco Express Forwarding (CEF) switching is een merkgebonden vorm van schaalbare switching bedoeld om de problemen in verband met de vraag caching aan te pakken. CEF is een geavanceerde Layer‑3 IP‑switching-architectuur die is ingebouwd in Cisco IOS en die het oude route‑cachemodel vervangt. Het onderhoudt zijn eigen sterk geoptimaliseerde doorstuurtabel plus afzonderlijke aangrenzende tabellen, waardoor lijnsnelheid packet forwarding met minimale CPU betrokkenheid. Telkens wanneer een pakket op een router of switch aankomt, moet het apparaat beslissen waar het naartoe moet worden doorgestuurd. Zodra de geldigheid van het pakket is bevestigd en het alle toegangscontrolelijsten of andere dropvoorwaarden heeft doorstaan, raadpleegt het apparaat de routeringstabel om de beste uitgaande interface te bepalen. Cisco-routers en -switches kunnen dit opzoeken op drie manieren uitvoeren: processwitching, snel schakelen of Cisco Express Forwarding.
Met CEF berekent het apparaat proactief alle routes en installeert deze in twee geoptimaliseerde gegevensstructuren, de Forwarding Information Base (FIB) en de aangrenzende tabellen, in plaats van te wachten tot elk pakket een zoekopdracht activeert. Op moderne platforms worden deze tabellen gesynchroniseerd met het hardware forwarding-vlak, wat resulteert in lagere CPU-overhead per pakket, hogere packet-per-seconde doorvoer en consistent doorstuurgedrag, wat de reden is dat CEF standaard is ingeschakeld op moderne Cisco-platforms en fundamenteel blijft voor krachtige IP-netwerken.
CEF-kerncomponenten
- Forwarding Information Base (FIB) -tabel - CEF gebruikt FIB om op IP-bestemmingsprefix gebaseerde beslissingen te nemen, met andere woorden, FIB is de who-to-reach-database voor CEF. FIB is een één-op-één spiegel van de IP Routing Information Base (RIB) van de router, maar gereorganiseerd voor het snelst mogelijke opzoeken van prefix in hardware. Wanneer de IP-routeringstabel verandert (als gevolg van updates van het routeringsprotocol, statische routewijzigingen, enzovoort), worden deze wijzigingen onmiddellijk weergegeven in de FIB, zodat doorsturen altijd actuele topologische informatie gebruikt. Elk FIB-item bestaat uit een voorvoegsel voor een bestemming en een of meer aanwijzers voor de volgende stap. Als ECMP (Equal-Cost Multipath) is geconfigureerd, heeft de FIB meerdere aanwijzers per voorvoegsel om taakverdeling per pakket of per bestemming te ondersteunen. Doordat de FIB elke bekende route bevat (in plaats van alleen een vraagcache van recent gebruikte routes), wordt het onderhoud van de route-cache overbodig en wordt cache-thrash voorkomen tijdens topologiekarnen, waardoor stabiele, voorspelbare doorstuurprestaties worden geleverd.
-
Adjaccency table - Nodes in het netwerk worden gezegd naast elkaar te zijn als ze elkaar kunnen bereiken met een enkele hop over een link laag. Naast de FIB gebruikt CEF aangrenzende tabellen om Layer 2-adresgegevens (MAC-adres, VLAN-tag, interface, enzovoort) toe te voegen die nodig zijn om het pakket op die koppeling door te sturen. De aangrenzende tabel onderhoudt Layer 2 next-hop-adressen voor alle FIB-vermeldingen, deze vermeldingen worden ingevuld als aangrenzende adressen worden ontdekt (bijvoorbeeld via mechanismen zoals Address Resolution Protocol (ARP)).
CEF-bedrijfsmodi
-
Centrale CEF-modus - Wanneer de centrale CEF-modus is ingeschakeld, bevinden de FIB- en aangrenzende tabellen zich op de routeprocessor en voert de routeprocessor de express forwarding uit. U kunt de CEF-modus gebruiken wanneer lijnkaarten niet beschikbaar zijn voor CEF-switching, wanneer u functies moet gebruiken die niet compatibel zijn met gedistribueerde CEF-switching of wanneer u op een niet-gedistribueerd platform draait.
-
Distributed CEF (dCEF)-modus - Wanneer de dCEF-modus is ingeschakeld, behouden lijnkaarten identieke kopieën van de FIB en aangrenzende tabellen. De lijnkaarten kunnen de express forwarding zelf uitvoeren, en dit verlicht de hoofdprocessor die de systeemprestaties verbetert. Deze modus is bedoeld om de schaalbaarheid te vergroten en is beschikbaar in gedistribueerde of modulaire platforms die verwerkingstaken over twee of meer lijnkaarten kunnen verdelen. dCEF maakt gebruik van een Inter-Process Communication (IPC) -mechanisme om synchronisatie van FIB's en aangrenzende tabellen op de routeprocessor en lijnkaarten te garanderen.
CEF Basic Packet Flow
De volgende lijst met stappen geeft een uitleg over hoe een pakket is omgeschakeld naar CEF:
- De interfaceprocessor van het apparaat leest het pakket van het netwerkmedium en slaat het op in buffergeheugen, de RX-ring (receive) van de interface genoemd.
- De interfaceprocessor van het apparaat verzendt een ontvangstonderbreking naar de hoofdprocessor. De rest van de overschakeling vindt plaats tijdens deze onderbreking.
- Het apparaat zoekt met de langste overeenkomst naar de bestemming in de FIB en gebruikt het IP-adres van de bestemming als zoeksleutel. Als de FIB-zoekopdracht mislukt, wordt het pakket verwijderd. Als het opzoeken slaagt, wordt een FIB-pad geselecteerd en gebruikt het apparaat de aanwijzer om de corresponderende vermelding voor de nabijheid te selecteren.
- Het apparaat herschrijft de Layer 2-header met behulp van de inkapselingsreeks uit de aangrenzende tabel en plaatst het pakket in de juiste uitvoerwachtrij voor verzending op de uitgaande interface.
- Het met succes geschakelde pakket wordt vervolgens in de wachtrij geplaatst op de transmissie-ring (TX) van de uitgaande interface.
Gerelateerde informatie