Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción general de Walkup for Route Filters

Utilice la característica de preparación previa si le preocupa el rendimiento de las políticas debido a los filtros de ruta dividida en varios términos de la directiva. La característica walkup permite la consolidación de filtros de ruta bajo un solo término de política.

De forma predeterminada, Junos evalúa varios filtros de ruta en un término de instrucción de política buscando primero el prefijo de coincidencia más largo y, a continuación, evaluando las condiciones asociadas al filtro de ruta, como el intervalo de prefijos. Si la condición del filtro de ruta es false (por ejemplo, el prefijo no está en el intervalo especificado), todo el término es false, incluso si hay prefijos de filtro de ruta más cortos potencialmente verdaderos. Debido a este comportamiento, puede haber problemas de rendimiento si los filtros de ruta se dividen en términos de declaración de directiva individuales. La característica de guía cambia el comportamiento predeterminado del filtro de ruta.

Algunas herramientas de políticas automatizadas (por ejemplo, las que se usan para enrutadores de borde de sistema autónomo en el Protocolo de puerta de enlace de frontera (BGP), dividen los filtros de ruta en varios términos debido al comportamiento predeterminado del filtro de ruta. Los filtros de ruta también se utilizan en protocolos de enrutamiento distintos de BGP; la función walkup no se limita a los filtros de ruta BGP.

Nota:

Técnicamente, BGP no trata las rutas de la misma manera que OSPF o IS-IS. Las "rutas" BGP se denominan más propiamente actualizaciones de información de accesibilidad de capa de red (NLRI). Sin embargo, el término "ruta" se utiliza en la mayoría de la documentación y se utiliza aquí.

Los filtros de ruta constan de tres partes principales:

  1. Un prefijo y una longitud de prefijo (por ejemplo, )10.0.0.0/8

  2. Una condición de coincidencia (por ejemplo, )exact

  3. Acción que se lleva a cabo si las dos partes anteriores (el prefijo y la condición de coincidencia) se evalúan como true (por ejemplo, )accept

Por lo tanto, el filtro de ruta tiene éxito si y solo si el prefijo considerado es exactamente.10.0.0.0/8 exact accept10.0.0.0/8 Este filtro de ruta rechaza rutas con todos los demás prefijos más largos, como , aunque puede haber otros términos de filtro de ruta en la cadena de políticas que acepten la ruta.10.0.0.0/1010.0.0.0/10

Nota:

Aunque la ruta y las variaciones no están reservadas específicamente para la documentación, el espacio de direcciones RFC 1918 privado se usa en este tema debido a la flexibilidad y los escenarios realistas que proporciona este espacio de direcciones.10.0.0.0/810.0.0.0/8

Los filtros de ruta se pueden combinar en un solo término de declaración de política. En ese caso, la evaluación se vuelve más compleja. Tenga en cuenta la siguiente directiva de enrutamiento:

Tenga en cuenta que el filtro incluye el filtro en su ámbito.10.0.0.0/8 orlonger10.0.0.0/16 prefix-length-range /22-/24 Es decir, cualquier ruta con un prefijo de 8 bits o más también podría ser una ruta con un prefijo en el rango entre 22 y 24 bits.10.0.0.0

De forma predeterminada, la evaluación de un término de instrucción de política con varios filtros de ruta es un proceso de dos pasos:

  1. El software del marco de políticas realiza una búsqueda de coincidencia más larga en la lista en función de los valores de prefijo y longitud de prefijo.

  2. El software considera la condición del filtro de ruta (, , etc.).orlongerexact La ruta cumple la condición de filtro de ruta (correcto) o no coincide con la condición de filtro de ruta (error).

En función de los resultados de estos dos pasos, la acción determinada por la coincidencia o el error se aplica a la ruta. En , esto significa que se acepta cualquier ruta que sea "verdadera" y se rechaza cualquier ruta que sea "falsa" en el término.Route-Filter-ARouteFilter-1 Esta ruta se convierte en una ruta oculta (filtrada).

Por ejemplo, considere lo que sucede cuando la ruta es evaluada por la declaración de política:10.0.0.0/18RouteFilter-A

Primero, la ruta se evalúa por el término.10.0.0.0/18RouteFilter-1 Dado que es más largo que , la ruta coincide con el prefijo de ruta más largo y específico.10.0.0.0/1610.0.0.0/810.0.0.0/18 A continuación, se produce un error en la coincidencia porque la ruta no coincide con la condición.10.0.0.0/18prefix-length-range /22-/24 Por lo tanto, la coincidencia de ruta falla en el término y la política examina el siguiente término, el término predeterminado.RouteFilter-1 La ruta se rechaza por el término predeterminado.10.0.0.0/18

Como resultado, la ruta está oculta (filtrada).10.0.0.0/18 (La ruta todavía se puede encontrar con el comando).10.0.0.0/18show route hidden

El problema es que el usuario podría querer que la ruta sea aceptada, no rechazada.10.0.0.0/18 Naturalmente, se podría agregar un filtro de ruta con una configuración.10.0.0.0/18 exact Pero en una tabla de enrutamiento troncal con 100.000 o más entradas, no es posible configurar un filtro de ruta ajustado a cada ruta posible o cada nueva ruta posible agregada a la red.

La solución predeterminada para lograr el comportamiento correcto de la directiva de enrutamiento de ejemplo es configurar un término independiente para cada filtro de enrutamiento. Esto se hace con frecuencia, de la siguiente manera:

Ahora se acepta la ruta porque, aunque todavía falla la condición de coincidencia, coincide con el nuevo término ( es la coincidencia más larga y la condición es verdadera).10.0.0.0/18RouteFilter-1RouteFilter-210.0.0.0/8orlonger El problema con este enfoque es que la directiva de enrutamiento completa ahora tarda más tiempo en evaluarse que cuando se agrupan varios filtros de ruta. Este método también hace que el mantenimiento sea más complejo.

Los problemas con el enfoque de filtros de un término por ruta se resuelven con la instrucción y la característica walkup. Walkup modifica el comportamiento predeterminado de la evaluación del filtro de ruta globalmente o por política.

La función walkup permite que los términos con múltiples filtros de ruta "suban" el proceso de evaluación para incluir rutas menos específicas, así como la coincidencia más larga. En otras palabras, la perilla cambia el comportamiento predeterminado de "si uno falla, entonces el término falla" a si "uno coincide, entonces el término coincide".

Considere la posibilidad de aplicar la característica walkup a la instrucción de directiva de ejemplo (también puede aplicar la función walk-up globalmente a todas las directivas configuradas):

Esto es lo que sucede cuando el prefijo de ruta es evaluado por la instrucción de política:10.0.0.0/18RouteFilter-A

El comportamiento predeterminado se ve alterado por la perilla de la guía. Como antes, la ruta coincide con el prefijo de ruta más largo y específico porque es más larga que .10.0.0.0/1810.0.0.0/1610.0.0.0/8 Como antes, esta coincidencia falla porque la ruta no coincide con la condición.10.0.0.0/18prefix-length-range /22-/24 Sin embargo, esta vez el proceso continúa con un "walk up" y examina el filtro de ruta menos específico .10.0.0.0/8 La condición de ruta de coincide con este filtro y, por lo tanto, la ruta es aceptada por el término.orlongerRouteFilter-1

Esto se puede verificar (para una ruta BGP) mediante el comando.show route protocol bgp 10.0.0.0/18 Esta vez, la ruta no está oculta.

Si habilita la característica walkup globalmente, puede invalidarla localmente por política con la instrucción.[edit policy-options policy-statements policy-statement-name defaults route-filter no-walkup]