Introducción
Este documento describe Cisco Express Forwarding (CEF).
Prerequisites
Requirements
No hay requisitos específicos para este documento.
Componentes Utilizados
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Overview
El switching de Cisco Express Forwarding (CEF) es una forma propietaria de switching escalable diseñada para abordar los problemas asociados con el almacenamiento en caché de la demanda. CEF es una arquitectura avanzada de switching IP de capa 3 integrada en Cisco IOS que reemplaza el antiguo modelo de caché de rutas. Mantiene su propia tabla de reenvío altamente optimizada más tablas de adyacencia separadas, lo que permite el reenvío de paquetes a velocidad de línea con una participación mínima de la CPU. Cada vez que un paquete llega a un router o switch, el dispositivo debe decidir dónde reenviarlo. Una vez que se confirma la validez del paquete y que ha pasado cualquier lista de control de acceso u otras condiciones de descarte, el dispositivo consulta su tabla de routing para determinar la mejor interfaz saliente. Los routers y switches de Cisco pueden realizar esta búsqueda de tres maneras: process switching, fast switching o Cisco Express Forwarding.
Con CEF, el dispositivo calcula proactivamente todas las rutas e las instala en dos estructuras de datos optimizadas, la Base de información de reenvío (FIB) y las tablas de adyacencia, en lugar de esperar a que cada paquete active una búsqueda. En las plataformas modernas, estas tablas se sincronizan con el plano de reenvío de hardware, lo que da como resultado una menor sobrecarga de CPU por paquete, un mayor rendimiento de paquetes por segundo y un comportamiento de reenvío coherente. Por este motivo, CEF está habilitado de forma predeterminada en las plataformas Cisco modernas y sigue siendo fundamental para las redes IP de alto rendimiento.
Componentes principales de CEF
- Tabla de Base de información de reenvío (FIB): CEF utiliza FIB para tomar decisiones basadas en prefijos de destino IP; en otras palabras, FIB es la base de datos de acceso a quién para CEF. FIB es un reflejo uno a uno de la Base de información de routing (RIB) IP del router, pero se reorganiza para realizar la búsqueda de prefijos más rápida posible en el hardware. Siempre que cambia la tabla de ruteo IP (debido a las actualizaciones del protocolo de ruteo, los cambios de ruta estática, etc.), esos cambios se reflejan inmediatamente en la FIB para que el reenvío siempre utilice información de topología actualizada. Cada entrada FIB consta de un prefijo de destino y uno o más punteros de salto siguiente; cuando se configura ECMP (múltiples trayectorias de igual costo), la FIB contiene múltiples punteros por prefijo para soportar el balanceo de carga por paquete o por destino. Al contener todas las rutas conocidas (en lugar de solo una caché a petición de las rutas utilizadas recientemente), la FIB elimina la necesidad de mantenimiento de la caché de rutas y evita la amenaza de la caché durante la pérdida de topología, lo que ofrece un rendimiento de reenvío estable y predecible.
-
Tabla de adyacencia – Se dice que los nodos de la red son adyacentes si pueden alcanzarse entre sí con un solo salto en una capa de link. Además de la FIB, CEF utiliza tablas de adyacencia para anexar información de direccionamiento de Capa 2 (dirección MAC, etiqueta VLAN, interfaz, etc.) necesaria para reenviar el paquete en ese link. La tabla de adyacencia mantiene las direcciones de siguiente salto de la Capa 2 para todas las entradas FIB, estas entradas se llenan a medida que se descubren las adyacencias (por ejemplo, a través de mecanismos como el Protocolo de resolución de direcciones (ARP)).
Modos de funcionamiento de CEF
-
Modo CEF central: cuando se habilita el modo CEF central, la FIB y las tablas de adyacencia residen en el procesador de ruta, y el procesador de ruta realiza el reenvío rápido. Puede utilizar el modo CEF cuando las tarjetas de línea no estén disponibles para el switching CEF, cuando necesite utilizar funciones no compatibles con el switching CEF distribuido o cuando esté ejecutando en una plataforma no distribuida.
-
Modo CEF distribuido (dCEF): cuando el modo dCEF está activado, las tarjetas de línea mantienen copias idénticas de la FIB y las tablas de adyacencia. Las tarjetas de línea pueden realizar el reenvío rápido por sí mismas, y esto libera al procesador principal que mejora el rendimiento del sistema. Este modo está pensado para aumentar la escalabilidad y está disponible en plataformas distribuidas o modulares que pueden distribuir las tareas de procesamiento en dos o más tarjetas de línea. dCEF utiliza un mecanismo de comunicación interprocesos (IPC) para garantizar la sincronización de FIB y las tablas de adyacencia en el procesador de rutas y las tarjetas de línea.
Flujo de paquetes básico de CEF
La siguiente lista de pasos proporciona una explicación sobre cómo se conmuta un paquete CEF:
- El procesador de interfaz del dispositivo lee el paquete de los medios de red y lo almacena en la memoria intermedia, denominada anillo de recepción (RX) de la interfaz.
- El procesador de interfaz del dispositivo envía una interrupción de recepción al procesador principal. El resto del switching ocurre durante esta interrupción.
- El dispositivo realiza una búsqueda de coincidencias de mayor duración para el destino en la FIB, utilizando la dirección IP de destino como clave de búsqueda. Si la búsqueda de FIB falla, el paquete se descarta. Si la búsqueda se realiza correctamente, se selecciona una ruta FIB y el dispositivo utiliza su puntero a la entrada de adyacencia correspondiente.
- El dispositivo reescribe el encabezado de Capa 2 usando la cadena de encapsulación de la tabla de adyacencia y coloca el paquete en la cola de salida correcta para la transmisión en la interfaz saliente.
- El paquete conmutado correctamente se pone en cola en el anillo de transmisión (TX) de la interfaz saliente.
Información Relacionada