Globo terráqueo sobre un fondo de fibra óptica, ilustrando el concepto de reenvío de datos de Cisco Express Forwarding (CEF).
Cisco Express Forwarding (CEF) es una tecnología clave para optimizar el rendimiento de la red. Descubre cómo revoluciona el reenvío de paquetes.

¿Qué es Cisco Express Forwarding (CEF) y Cómo Funciona?

Seguramente has escuchado el término «wirespeed» en el mundo de las redes. Es un concepto clave que promete la transferencia de paquetes sin retrasos perceptibles, y la tecnología que lo hace posible en los equipos modernos es Cisco Express Forwarding (CEF).

En este artículo, desglosaremos cómo los switches y routers manejan el tráfico y por qué CEF se ha convertido en el estándar para el reenvío de paquetes de alto rendimiento.

Diferencias Clave: Conmutación L2 vs. Enrutamiento L3

Para el resto de este artículo, las palabras «switch de capa 2» y «router» son lo mismo. Todo lo que voy a explicar sobre los switches de capa 2 de ahora en adelante también aplica para los routers.

Para entender la necesidad de tecnologías como CEF, primero debemos diferenciar cómo operan los equipos en la Capa 2 y la Capa 3.

  • Un switch de Capa 2 opera basándose en direcciones MAC. Construye una tabla MAC para conmutar tramas Ethernet dentro de una misma VLAN. Su trabajo es simple y rápido.
  • Un switch Multicapa (o router) hace lo mismo, pero además puede enrutar paquetes entre diferentes VLANs o subredes. Esto implica decisiones más complejas basadas en direcciones IP y la aplicación de filtros como las Listas de Acceso (ACLs).
Diagrama comparativo que muestra la diferencia entre un switch de capa 2 y un switch multicapa en funciones de red y VLAN.
Entiende visualmente la diferencia entre un switch de capa 2 y uno multicapa. Su principal distinción radica en la capacidad de enrutamiento.

Antiguamente, la conmutación de Capa 2 se realizaba por hardware (muy rápido), mientras que el enrutamiento de Capa 3 dependía del software (mucho más lento). Hoy, gracias a mecanismos como Cisco Express Forwarding, ambos procesos se ejecutan a velocidad de hardware.

Diagrama que muestra el procesamiento de tramas Ethernet por un switch de capa 2, usando direcciones MAC para la comunicación.
Visualiza cómo un switch de capa 2 procesa tramas Ethernet para conectar dispositivos en una red local. Las direcciones IP permanecen intactas en este nivel.

El Desafío de Procesar Paquetes IP

La vida de un switch de Capa 2 es sencilla: revisa la trama, aprende la MAC de origen y la reenvía al puerto de destino sin modificarla.

Sin embargo, cuando un switch multicapa debe enrutar un paquete IP entre dos subredes distintas, el proceso es mucho más complejo.

Imaginemos que la Computadora A (en la VLAN 10) envía un paquete a la Computadora B (en la VLAN 20), como se muestra en el siguiente diagrama. El switch multicapa debe actuar como intermediario (gateway) para que puedan comunicarse.

Diagrama de un switch multicapa procesando paquetes IP entre dos VLANs distintas (VLAN 10 y VLAN 20) para enrutamiento.
Un switch multicapa resuelve el desafío de procesar paquetes IP entre diferentes VLANs. Así se logra la comunicación entre redes lógicas separadas.

Cuando el switch recibe el paquete IP inicial de la Computadora A, debe realizar varias tareas clave:

  1. Verificar la suma de verificación (checksum) tanto de la trama Ethernet como del paquete IP para asegurar su integridad.
  2. Consultar su tabla de enrutamiento para encontrar la mejor ruta hacia la red de destino (192.168.20.0/24).
  3. Consultar su tabla ARP para encontrar la dirección MAC de la Computadora B. Si no la tiene, debe iniciar una solicitud ARP.
  4. Reescribir la trama Ethernet:
    • La dirección MAC de destino cambiará de FFF (la interfaz del switch) a BBB (la Computadora B).
    • La dirección MAC de origen cambiará de AAA (la Computadora A) a GGG (la interfaz de salida del switch).
  5. Decrementar el campo TTL (Time to Live) del paquete IP en 1.
  6. Recalcular la suma de verificación del encabezado IP y de la trama Ethernet debido a los cambios.
  7. Finalmente, enviar la nueva trama por el puerto de salida correcto (Fa0/2).

Como puedes ver, son muchos pasos que, si se hicieran por software, crearían un cuello de botella importante.

Plano de Control vs. Plano de Datos

Para gestionar esta complejidad, los equipos de red dividen sus responsabilidades en dos planos funcionales:

  • Plano de Control (Control Plane): Es el «cerebro» del dispositivo. Se encarga de tareas lentas y complejas como ejecutar protocolos de enrutamiento (OSPF, EIGRP), construir la tabla de enrutamiento y la tabla ARP, y procesar paquetes «especiales» (como los destinados al propio equipo).
  • Plano de Datos (Data Plane): Es el «músculo» encargado del reenvío rápido de paquetes. Su única misión es tomar un paquete de una interfaz de entrada y enviarlo por la de salida lo más rápido posible, basándose en la información que le proporciona el plano de control.

La siguiente imagen muestra perfectamente cómo el plano de control (arriba) utiliza la información de los protocolos de enrutamiento para construir la Tabla de Enrutamiento, la cual a su vez crea la Tabla de Reenvío que usará el plano de datos.

Diagrama que ilustra la diferencia del Plano de Control vs. Plano de Datos en un dispositivo de red con OSPF y EIGRP.
Visualiza la arquitectura de red con esta comparación del Plano de Control vs. Plano de Datos. El primero decide la ruta, el segundo reenvía el tráfico.

Una vez que estas tablas están construidas, el plano de datos puede manejar la gran mayoría del tráfico de forma independiente. Sin embargo, como se ve en este segundo diagrama, ciertos paquetes «especiales» no pueden ser manejados directamente y deben ser enviados al plano de control para un análisis más profundo.

Algunos ejemplos de estos paquetes especiales son:

  • Tráfico de protocolos de enrutamiento (OSPF, EIGRP, BGP).
  • Paquetes destinados a una de las direcciones IP del propio router.
  • Paquetes con opciones IP especiales.
  • Paquetes cuyo TTL ha expirado.
Diagrama que explica el manejo de paquetes especiales por el plano de control en un router, desviándolos del plano de datos.
El plano de control intercepta y procesa paquetes especiales para la gestión de la red. Esta separación asegura un reenvío de datos rápido y eficiente.

El objetivo es que la gran mayoría del tráfico sea manejado exclusivamente por el plano de datos, sin molestar al plano de control.

El Problema del Enrutamiento Lento: Búsquedas Recursivas

Una de las razones por las que el plano de control es lento para el reenvío es que la tabla de enrutamiento puede requerir búsquedas recursivas.

Veamos este ejemplo con tres routers. Para que R1 alcance la red 3.3.3.0/24 de R3, se configuran dos rutas estáticas.

Diagrama de red con tres routers conectados para explicar el funcionamiento de las búsquedas recursivas en enrutamiento IP.
Un ejemplo práctico con tres routers para entender las búsquedas recursivas.
R1(config)#ip route 3.3.3.0 255.255.255.0 192.168.23.3
R1(config)#ip route 192.168.23.0 255.255.255.0 192.168.12.2

La tabla de enrutamiento de R1 se ve así:

Tabla de enrutamiento de un router que muestra el problema de las búsquedas recursivas, una causa común del enrutamiento lento.
Captura de una tabla de rutas que evidencia el problema de las búsquedas recursivas.

Cada vez que R1 quiere enviar un paquete a 3.3.3.x, debe hacer tres búsquedas en su tabla:

  1. Busca 3.3.3.0/24 y ve que el siguiente salto es 192.168.23.3.
  2. Busca 192.168.23.3 y ve que el siguiente salto para esa red es 192.168.12.2.
  3. Busca 192.168.12.2 y finalmente encuentra que está en una red directamente conectada.

Este proceso de múltiples búsquedas para resolver una sola ruta se llama enrutamiento recursivo y es muy ineficiente.

El Hardware Detrás de la Velocidad: ASIC, CAM y TCAM

La razón por la que el plano de datos es tan rápido es el uso de hardware especializado llamado ASIC (Application-Specific Integrated Circuit). Dentro de estos chips, la información se almacena en memorias ultrarrápidas:

  • Tabla CAM (Content-Addressable Memory): Almacena información de Capa 2 (tabla MAC). Realiza búsquedas de coincidencias exactas a una velocidad increíble.
  • Tabla TCAM (Ternary Content-Addressable Memory): Almacena información de capas superiores (tabla de enrutamiento, ACLs). Permite búsquedas de la coincidencia más específica (longest prefix match), ideal para rangos de redes.

Por ejemplo, si la TCAM busca la IP 192.168.10.22, no necesita una coincidencia exacta. Encontrará que la mejor ruta es a través de la red 192.168.10.0/24, como se muestra a continuación.

Diagrama que explica el funcionamiento de una tabla TCAM para búsquedas de prefijos de capa 3, encontrando una coincidencia.
La tabla TCAM permite a los switches realizar búsquedas de rutas a alta velocidad. Descubre cómo encuentra la mejor coincidencia de prefijo.

La Evolución de los Métodos de Conmutación

A lo largo de los años, Cisco ha desarrollado varios métodos para reenviar paquetes:

  1. Conmutación por Procesador (Process Switching): El más lento. La CPU (plano de control) examina cada paquete.
  2. Conmutación Rápida (Fast Switching): Una mejora. El primer paquete es procesado por la CPU y la decisión se guarda en una caché para los siguientes.
  3. Cisco Express Forwarding (CEF): El más rápido y moderno. Pre-calcula toda la información de reenvío y la programa directamente en el hardware (plano de datos).

La Arquitectura de Cisco Express Forwarding (CEF)

Diagrama del plano de control y plano de datos, mostrando cómo la tabla de enrutamiento y ARP construyen la tabla de reenvío.
Este diagrama visualiza cómo la información del plano de control se utiliza para construir las tablas del plano de datos. La tabla de enrutamiento y la tabla ARP son cruciales para un reenvío de paquetes eficiente.

Cisco Express Forwarding es el estándar actual porque elimina los cuellos de botella del pasado. Lo logra creando dos tablas especializadas en el plano de datos, basadas en la información del plano de control.

CEF se compone de dos elementos principales:

  • FIB (Forwarding Information Base): Es una copia de la tabla de enrutamiento, pero optimizada para búsquedas de hardware increíblemente rápidas. Resuelve cualquier problema de recursividad de antemano, por lo que cada búsqueda es directa y eficiente.
  • Tabla de Adyacencia (Adjacency Table): Almacena la información de direccionamiento de Capa 2 (las cabeceras de trama pre-construidas) para todos los siguientes saltos. De esta manera, el switch ya tiene lista la encapsulación de Capa 2 que necesita aplicar.

Con CEF, cuando llega un paquete, el dispositivo ya sabe exactamente a dónde va y cómo debe ser la trama para llegar allí. No hay cálculos en tiempo real ni esperas. Todo el proceso ocurre a velocidad de hardware.

Conclusión

Entender Cisco Express Forwarding es fundamental para comprender cómo las redes modernas alcanzan el rendimiento «wirespeed». Al separar el plano de control del plano de datos y utilizar hardware especializado para poblar por adelantado las tablas FIB y de Adyacencia, CEF asegura que el reenvío de paquetes sea un proceso extremadamente eficiente. Es la tecnología silenciosa que permite que nuestras redes gestionen volúmenes masivos de tráfico sin esfuerzo.