IP : Cisco Express Forwarding (CEF)

Cómo elegir el Mejor Trayecto de Switching del Router para Su Red

18 Octubre 2015 - Traducción Automática
Otras Versiones: PDFpdf | Inglés (22 Agosto 2015) | Comentarios


Contenido


Introducción

Hay una plétora de trayectos de Switching disponibles para las diversas versiones de los routeres Cisco y de Cisco IOS�. ¿Cuál es el mejor para su red, y cómo funcionan todos ellos? Este informe oficial intenta explicar cada uno de los siguientes trayectos de conmutación para que pueda tomar la mejor decisión en cuanto a qué trayecto de conmutación se adecua a su red.

Primero, examine el proceso de reenvío sí mismo. Hay tres pasos a remitir un paquete a través de un router:

  1. Determine si el destino del paquete es alcanzable.

  2. Determine el salto siguiente hacia el destino, y la interfaz a través de la cual ese salto siguiente es accesible.

  3. Reescriba el encabezado de Control de acceso de medios (MAC) en el paquete de modo que llegue correctamente a su salto siguiente.

Cada uno de estos pasos es crítico para lograr que el paquete llegue a destino.

Nota: En este documento, el trayecto de IP Switching se utiliza como un ejemplo; casi toda la información proporcionada aquí se aplica a trayectos de conmutación equivalentes para otros protocolos, en caso de que éstos existan.

Proceso de Switching

El process switching es el denominador común más bajo de los trayectos de Switching; está disponible en cada versión del IOS, en cada plataforma, y para cada tipo de tráfico que es conmutado. El process switching es definido por dos conceptos esenciales:

  • La decisión de reenvío y la información utilizada para volver a escribir el encabezado MAC en el paquete se toman de la tabla de ruteo (de la base de información de ruteo o RIB) y de la memoria caché del Protocolo de resolución de dirección (ARP); o bien, de alguna otra tabla que incluya la información del encabezado MAC correlacionada con la dirección IP de cada host que está conectado directamente al router.

  • El paquete es conmutado por un proceso normal que se ejecuta dentro del IOS. Es decir la decisión de reenvío es tomada por un proceso programado con el planificador IOS y el funcionamiento como par a otros procesos en el router, tal como Routing Protocol. Los procesos que se ejecutan normalmente en el router no se interrumpen para procesar el Switch un paquete.

La figura abajo ilustra el trayecto del process switching.

http://www.cisco.com/c/dam/en/us/support/docs/ip/express-forwarding-cef/13706-20a.gif

Examine este diagrama con mayor detenimiento:

  1. El procesador de interfaz primero detecta si hay algún paquete en los medios de la red y transfiere este paquete a la memoria de entrada/salida del router.

  2. El procesador de interfaz genera una interrupción de la recepción. Durante esta interrupción, el procesador central determina qué tipo de paquete es éste (asuma que es un paquete del IP), y lo copia en la memoria del procesador en caso necesario (esta decisión es dependiente de la plataforma). Finalmente, el procesador coloca el paquete en la cola de entrada de los procesos apropiados y se libera la interrupción.

  3. La próxima vez que el programador se ejecuta, advierte el paquete en la cola de entrada de ip_input (entrada de ip) y programa este proceso para su ejecución.

  4. Cuando el ip_input se ejecuta, consulta el RIB para determinar el salto siguiente y la interfaz de salida, después consulta la memoria caché ARP para determinar a la dirección de la capa física correcta para este salto siguiente.

  5. ip_input luego reescribe el paquete del encabezado MAC y lo ubica en la cola de salida de la interfaz de salida correcta.

  6. El paquete se copia de la cola de salida de la interfaz de salida a la cola de transmisión de la interfaz de salida; cualquier calidad de servicio de salida tiene lugar entre estas dos colas.

  7. El procesador de interfaz de salida detecta el paquete en la cola de transmisión y transfiere el paquete al medio de red.

Casi todas las características que efectúan el packet switching, tal como Network Address Translation (NAT) y Policy Routing, hacen su principio en el trayecto del process switching. Una vez que se han probado, y se han optimizado, estas características pudieron, o no pudieron, aparecer en el Interrupt Context Switching.

Conmutación de contexto de la interrupción

El Interrupt Context Switching es el segundo de los métodos de Switching primarios usados por los routeres Cisco. Las diferencias principales entre el Interrupt Context Switching y el process switching son:

  • El proceso que se ejecuta actualmente en el procesador se interrumpe para conmutar el paquete. Los paquetes se conmutan a pedido, bastante que conmutados solamente cuando el proceso del ip_input puede ser programado.

  • El procesador utiliza una cierta forma de memoria caché de ruta para encontrar toda la información necesitada para conmutar el paquete.

Esta figura ilustra el Interrupt Context Switching:

http://www.cisco.com/c/dam/en/us/support/docs/ip/express-forwarding-cef/13706-20b.gif

Examine este diagrama con mayor detenimiento:

  1. El procesador de interfaz primero detecta si hay algún paquete en los medios de la red y transfiere este paquete a la memoria de entrada/salida del router.

  2. El procesador de interfaz genera una interrupción de la recepción. Durante esta interrupción, el procesador central determina qué tipo de paquete es éste (asuma que es un paquete del IP), y después comienza a conmutar el paquete.

  3. Es el procesador busca memoria caché de ruta para determinar si el destino del paquete es accesible, qué la interfaz de salida debe ser, qué el salto siguiente hacia este destino, y finalmente, qué encabezado MAC el paquete si tenga que con éxito alcanzar el salto siguiente. El procesador utiliza esta información para reescribir el encabezado MAC del paquete.

  4. El paquete ahora se copia al transmitir o a la cola de salida de la interfaz de salida (dependiendo de los diversos factores). La interrupción de la recepción ahora vuelve, y el proceso que se ejecutaba en el procesador antes de que ocurriera la interrupción continúa ejecutándose.

  5. El procesador de interfaz de salida detecta el paquete en la cola de transmisión y transfiere el paquete al medio de red.

La primera pregunta que viene importar después de leer esta descripción es “cuál está en el caché?” Hay tres respuestas posibles, dependiendo del tipo de Interrupt Context Switching:

Fast Switching

La transferencia rápida salva la información de reenvío y la cadena de reescritura de encabezado MAC usando un árbol binario para la búsqueda rápida y la referencia. Esta figura ilustra un árbol binario:

20c.gif

En la transferencia rápida, la información de alcance es indicada por la existencia de un nodo en el árbol binario para el destino del paquete. El encabezado MAC y la interfaz de salida para cada destino se salvan como parte de la información del nodo dentro del árbol. El árbol binario puede realmente tener 32 niveles (el árbol antedicho se abrevia extremadamente con el fin del ejemplo).

Para buscar un árbol binario, usted sale simplemente de la izquierda (con el dígito más significativo) en el número (del binario) que usted está buscando, y ramifica a la derecha o a la izquierda en el árbol basado en ese número. Por ejemplo, si usted está buscando el relacionado con la información al número 4 en este árbol, usted comenzaría por la derecha de ramificación, porque el primer dígito binario. es 1. Debe seguir el árbol hacia abajo, comparando en dígito siguiente en el número (binario), hasta alcanzar el final.

Características de la transferencia rápida

La transferencia rápida tiene varias características que sean un resultado de la estructura arborescente de árbol binario y el almacenamiento de la información de reescritura del encabezado MAC como parte de los nodos árbol.

  • Porque no hay correlación entre la tabla de ruteo y el contenido del caché rápido (reescritura de encabezado MAC, por ejemplo), la construcción de las entradas del caché implica todo el proceso que se debe hacer en el trayecto del process switching. Por lo tanto, se construyen las entradas del caché rápido pues los paquetes son proceso conmutado.

  • Porque no hay correlación entre los encabezados MAC (usados para las reescrituras) en la memoria caché ARP y la estructura del caché rápido, cuando la tabla ARP cambia, una cierta porción del caché rápido debe ser invalidada (y reconstruido con el process switching de los paquetes).

  • La memoria caché rápida sólo puede generar entradas a una profundidad (una longitud de prefijo) para cualquier destino en la tabla de ruteo.

  • No hay manera de señalar a partir de una entrada a otra dentro del caché rápido (se espera que el encabezado MAC y la información de interfaz de salida estén dentro del nodo), así que todas las repeticiones de la encaminamiento deben ser resueltas mientras que a entrada de caché rápido se está construyendo. Es decir las rutas recurrentes no se pueden resolver dentro del caché rápido sí mismo.

Entradas Desactualizadas de Fast Switching

Para guardar las entradas rápidas de la transferencia de perder su sincronización con la tabla de ruteo y la memoria caché ARP, y mantener las entradas sin utilizar el caché rápido de la memoria indebidamente consumidora en el router, las as/20o del caché rápido se invalidan, aleatoriamente, cada minuto. Si la memoria del Routers cae debajo de una filigrana muy baja, la a/5o de las entradas del caché rápido se invalida cada minuto.

Longitud de Prefijo de Fast Switching

¿Para qué longitud de prefijo el fast switching construye entradas si únicamente puede construir una longitud de prefijo para cada destino? Dentro de los términos de la transferencia rápida, un destino es un único destino alcanzable dentro de la tabla de ruteo, o una red principal. Las reglas para decidir qué longitud del prefijo para construir una entrada de caché dada sea:

  • Si se construye una entrada de política rápida , siempre almacene en la memoria caché a /32

  • Si construye una entrada contra un Multiprotocolo en un circuito virtual ATM (MPOA VC), siempre almacene en memoria caché a /32.

  • Si la red no está constituida en subredes (es una entrada de red principal):

    • Si está conectado directamente, el uso /32;

    • De lo contrario, utilice la máscara de red principal.

  • Si es una superred utilice la máscara de superred.

  • Si la red está conectada en subredes:

    • Si está conectado directamente, uso /32;

    • Si hay múltiples trayectos para esta subred, utilice /32;

    • En todos los otros casos, utilice la longitud de prefijo más larga en esta red principal.

Carga a compartir

La transferencia rápida es totalmente destino basado; la carga a compartir ocurre sobre una base del por destino. Si hay Trayectos múltiples de igual costo para una red de destino determinado, el caché rápido tiene una entrada para cada host accesible dentro de esa red, pero todo trafica destinado a un host determinado sigue un link.

Optimum Switching

El Optimum Switching salva la información de reenvío y la información de reescritura del encabezado MAC en las direcciones del árbol multidireccional 256 (camino mtree 256). Usando un mtree reduce el número de medidas que deban ser tomadas al mirar para arriba un prefijo, como se ilustra en la figura siguiente.

20d.gif

Utilizan a cada octeto para determinar que de las ramificaciones 256 a tomar en cada nivel del árbol, que significa hay, a lo sumo, 4 operaciones de búsqueda implicadas en encontrar cualquier destino. Para longitudes del prefijo más cortas, solamente las operaciones de búsqueda del one-three pueden ser requeridas. La información de reescritura de encabezado MAC e interfaz de salida se salva como parte del nodo árbol, así que la invalidación de caché y todavía el envejecimiento ocurren como en la transferencia rápida.

Optimum switching también determina la longitud del prefijo para cada entrada de caché de la misma manera que fast switching.

Cisco Express Forwarding

El Cisco Express Forwarding, también utiliza una estructura de datos de la manera 256 para salvar la expedición y la información de reescritura del encabezado MAC, pero no utiliza un árbol. El Cisco Express Forwarding utiliza un trie, que significa que la información que es buscada para no está en la estructura de datos; en lugar, los datos se salvan en una estructura de datos diferente, y el trie señala simplemente a él. Es decir bastante que salvando la interfaz de salida y la reescritura de encabezado MAC dentro del árbol sí mismo, el Cisco Express Forwarding salva esta información en una estructura de datos diferente llamada la tabla de adyacencia.

http://www.cisco.com/c/dam/en/us/support/docs/ip/express-forwarding-cef/13706-20e.gif

Esta separación de la información de alcance (en la tabla de Cisco Express Forwarding) y de la información de envío (en la tabla de adyacencia), otorga varios beneficios:

  • La tabla de adyacencia puede crearse independientemente de la tabla Cisco Express de reenvío, lo que permite crearla sin el proceso de conmutar paquetes.

  • La reescritura de encabezado MAC usada para remitir un paquete no se salva en las entradas del caché, cambia tan en una cadena de reescritura de encabezado MAC no requiere la anulación de las entradas del caché.

  • Usted puede señalar directamente a la información de reenvío, bastante que al salto siguiente recursed, para resolver las rutas recurrentes.

Esencialmente, todo desactualización de caché se elimina, y el caché PRE-se construye sobre la base de la información contenida en la tabla de ruteo y la memoria caché ARP. No hay necesidad de procesar el Switch ningún paquete para construir una entrada de caché.

Otras entradas en la Tabla de Adyacencia.

La tabla de adyacencia puede contener las entradas con excepción de las cadenas de reescritura de encabezado MAC y de la información de interfaz de salida. Algunos de los diversos tipos de entradas que se puedan poner en la tabla de adyacencia incluyen:

  • caché — Una cadena de reescritura de encabezado MAC y una interfaz de salida usadas para alcanzar un host o a un router adyacente determinado.

  • reciba — Los paquetes destinados a esta dirección IP se deben recibir por el router. Esto incluye las direcciones de broadcast y los direccionamientos configurados en el router sí mismo.

  • descenso — Los paquetes destinados a esta dirección IP deben ser caídos. Esto se podía utilizar para el tráfico negado por una lista de acceso, o ruteado a una interfaz nula.

  • batea — El Cisco Express Forwarding no puede conmutar este paquete; derívelo al siguiente mejor método de switching (generalmente fast switching) para el procesamiento.

  • espigue — El salto siguiente se asocia directamente, pero no hay cadenas de reescritura de encabezado MAC actualmente disponibles.

Adyacencias de recolección

Una entrada de la adyacencia de recolección indica que un salto siguiente determinado debe ser conectado directamente, pero no hay información de reescritura del encabezado MAC disponible. ¿Cómo éstos consiguen construidos y utilizados? Un router que está ejecutando Cisco Express Forwarding y está conectado a una red de transmisión, como se muestra en la figura ubicada a continuación, crea de forma predeterminada una cantidad de entradas de tabla de adyacencia.

http://www.cisco.com/c/dam/en/us/support/docs/ip/express-forwarding-cef/13706-20f.gif

Las cuatro entradas de tabla de adyacencias construidas por abandono son:

10.1.1.0/24, version 17, attached, connected
0 packets, 0 bytes
  via Ethernet2/0, 0 dependencies
    valid glean adjacency
10.1.1.0/32, version 4, receive
10.1.1.1/32, version 3, receive
10.1.1.255/32, version 5, receive

Tenga en cuenta que hay cuatro entradas: tres recibe, y uno espiga. Cada uno recibe la entrada representa una dirección de broadcast o un direccionamiento configurado en el router, mientras que la entrada del espigueo representa el resto del espacio de la dirección en la red conectada. Si un paquete se recibe para el host 10.1.1.50, el router intenta conmutarlo, y lo encuentra resuelto a esta adyacencia de recolección. El Cisco Express Forwarding entonces señala que una entrada de memoria caché ARP es necesaria para 10.1.1.50, el proceso ARP envía un paquete ARP, y la entrada de tabla de adyacencias apropiada se construye de la nueva información de la memoria caché ARP. Después de que este paso sea completo, la tabla de adyacencia tiene una entrada para 10.1.1.50.

10.1.1.0/24, version 17, attached, connected
0 packets, 0 bytes
  via Ethernet2/0, 0 dependencies
    valid glean adjacency
10.1.1.0/32, version 4, receive
10.1.1.1/32, version 3, receive
10.1.1.50/32, version 12, cached adjacency 208.0.3.2
0 packets, 0 bytes
  via 208.0.3.2, Ethernet2/0, 1 dependency
    next hop 208.0.3.2, Ethernet2/0
    valid cached adjacency
10.1.1.255/32, version 5, receive

El próximo paquete destinado a 10.1.1.50 que recibe el router se conmuta mediante esta nueva adyacencia.

Carga a compartir

El Cisco Express Forwarding también se aprovecha de la separación entre la tabla del Cisco Express Forwarding y la tabla de adyacencia para proporcionar una mejor forma de carga a compartir que cualquier otro modo del Interrupt Context Switching. Una tabla loadshare se inserta entre la tabla del Cisco Express Forwarding y la tabla de adyacencia, como se ilustra en esta figura:

20g.gif

La tabla del Cisco Express Forwarding señala a esta tabla loadshare, que contiene los punteros a las diversas entradas de tabla de adyacencias para los trayectos paralelos disponibles. Pasan las direcciones de origen y de destino a través de un algoritmo de troceo para determinar que entrada de tabla loadshare a utilizar para cada paquete. Por la distribución de carga de paquete puede ser configurado, en este caso cada paquete utiliza una diversa entrada de tabla loadshare.

Cada tabla loadshare tiene 16 entradas entre las cuales las trayectorias disponibles se dividan sobre la base del contador del tráfico compartido en la tabla de ruteo. Si los contadores del tráfico compartido en la tabla de ruteo son el 1 (como en el caso de los Trayectos múltiples de igual costo), cada salto siguiente posible recibe un mismo número de punteros de la tabla loadshare. Si el número de trayectos disponibles no es uniformemente divisible en 16 (puesto que hay 16 entradas de tabla loadshares), algunas trayectorias tendrán más entradas que otras.

Comenzando en el Cisco IOS Software Release 12.0, el número de entradas en la tabla loadshare se reduce para hacer cierta cada trayectoria tiene un número proporcionado de entradas de tabla loadshares. Por ejemplo, si hay tres trayectos de igual costos en la tabla de ruteo, sólo se utilizan 15 entradas de tabla loadshares.

¿Qué Trayecto de Switching es mejor?

Siempre que sea posible, usted quisiera que su Routers conmutara en el contexto de la interrupción porque es por lo menos una orden una magnitud de más rápido que la transferencia del nivel de proceso. El Cisco Express Forwarding Switching es definitivamente más rápido y mejor que cualquier otro Switching Mode. Le recomendamos Cisco Express Forwarding del uso si el protocolo y el IOS que usted se está ejecutando lo soporta. Esto es determinado verdad si usted tiene varios links paralelos a través de los cuales el tráfico deba ser carga compartida. Acceda la página del Cisco Feature Navigator (clientes registrados solamente) para determinar que el IOS usted necesita para el soporte CEF.

Discusiones relacionadas de la comunidad de soporte de Cisco

La Comunidad de Soporte de Cisco es un foro donde usted puede preguntar y responder, ofrecer sugerencias y colaborar con colegas.


Información Relacionada


Document ID: 13706