Solo un camino en el espejo

10

Entiendo que solo el mejor camino se anuncia a los vecinos de eBGP, pero ¿es esto cierto para iBGP? Si me relaciono con dos proveedores, tengo la impresión de que cualquier otra persona que se relacione con mis dos proveedores tendría dos caminos para mí. Después de inspeccionar varios espejos, parece que esto no es así.

Dennis Olvany
fuente

Respuestas:

12

BGP siempre solo anuncia el mejor camino hacia sus pares. Esto es cierto para eBGP, iBGP, la reflexión de ruta (que es simplemente un caso especial de iBGP) y cualquier otra forma en que pueda usar BGP.

Pero sí, tiene razón, si está enviando anuncios a los proveedores A y B, y tengo conexiones y sesiones de BGP también con los proveedores A y B, entonces debería ver ambas rutas en mis tablas de BGP. Es posible que no vea múltiples rutas creadas en mis tablas de enrutamiento ... esa es una cuestión de la configuración de mis dispositivos y si permito que se inserten múltiples rutas de igual longitud de ruta AS en la tabla de enrutamiento ... normalmente BGP solo instalará un ruta única Sin embargo, las tablas BGP deben mostrar anuncios de ambos proveedores.

En realidad ... incluso si me estoy emparejando con los proveedores B y C, o incluso C y D, aún debería ver múltiples rutas en mis tablas BGP siempre que sea accesible a través de B, C y D. Todas las demás cosas son igual, mis dispositivos deberían elegir B ​​porque esa debería ser la RUTA AS más corta, pero aún así vería las rutas con las RUTA AS más largas de C y D. Ahora, tal vez C y D hayan decidido que la ruta a través de A es mejor que el camino a través de B, entonces los caminos que vería tendrían COMO RUTA de "AC" y "AD", por lo que parecería que no estuvieras conectado a B en absoluto, pero si el camino a través de A desapareciera, entonces el camino a través de B se propagaría hacia adelante a través de C y D.

Si puede dar algunos detalles ... tal vez incluso los bloques que está anunciando si está dispuesto a compartir eso ... otros pueden echar un vistazo a lo que estamos viendo y tal vez dar una orientación más específica.

Jeff McAdams
fuente
2

Un aspecto aún no cubierto por estas respuestas es el "add-path" de BGP que permite que un par de BGP envíe no solo su mejor ruta, sino también algunas o todas sus alternativas.

Esto es más útil (y es probable que funcione) en iBGP, y ofrece un mejor ECMP.

Para EBGP, si tiene varias sesiones con el mismo par en un solo enrutador, debería usar BGP "multipath" para permitir ECMP. Dependiendo de cómo y dónde se realiza la reflexión de ruta en una red SP, esto puede resultar en el uso de todas las sesiones de manera bastante uniforme.

Aquí hay una presentación de Dave Ward (entonces en Juniper, ahora en Cisco) sobre add-path:

http://www.nanog.org/meetings/nanog48/presentations/Tuesday/Ward_AddPath_N48.pdf

LapTop006
fuente
2

Por lo general, los pares BGP solo pueden enviar una ruta única entre sí, y las actualizaciones de esa ruta reemplazan a la existente.

Sin embargo, existe una extensión para BGP, típicamente conocida como la additional-pathsque coloca un identificador en cada ruta enviada a un par y, por lo tanto, permite a los pares BGP intercambiar múltiples rutas a una ruta, lo que le brinda no solo un mayor alcance para la ingeniería de tráfico, sino también un tiempo de convergencia reducido en caso de retirada de ruta ya que los prefijos que no son de la mejor ruta pueden instalarse en la FIB como ruta (s) de respaldo que se utilizarán en el momento en que se retire la mejor ruta; esto es particularmente significativo si usted ' está ejecutando tablas de Internet completas, ya que el escáner BGP en un enrutador Cisco se ejecutará cada 30 segundos en el mejor de los casos y caminar más de 300,000 rutas tiene su precio.

Tenga en cuenta que las rutas adicionales de BGP no tienen nada que ver con ECMP ya que, obviamente, estamos hablando de recibir múltiples prefijos con el mismo siguiente salto, con la única excepción de los casos en los que está ejecutando iBGP y no está usando next-hop-self(o haciendo cosas sucias) con eBGP donde se conserva el nexthop)

Dado que es una extensión, ambos enrutadores deben admitirlo y negociar la función en el momento de la conexión (o, como alternativa, tener capacidad dinámica negociada). Se puede usar tanto con eBGP como con iBGP.

Olipro
fuente
0

Intentar buscar sus propias rutas en espejos no siempre funciona de la manera esperada, especialmente si compra a alguien que compra mucho tránsito. Por ejemplo, Internap compra tránsito de muchos otros ISP grandes. Si compra en Internap y luego en otra persona, existe una buena posibilidad de que su ruta en el otro proveedor se oculte en virtud de no ser la mejor. La mayoría de los ISP prefieren sus propias rutas de clientes. Ver o no ver sus propias rutas en un espejo tiene muy poco que ver si su ruta se propaga correctamente o no.

Aaron
fuente
0

Su pregunta no afecta a BGP, sino a las políticas de ISP. No siempre, ya sea por política o por error, sus proveedores anunciarán su espacio a los proveedores. ¿Estás usando PI o PA por cierto?

Łukasz Bromirski
fuente
0

Hay tanto filtrado entre usted y el LG (espejo) que puede eliminar su prefijo del camino u otro. ¿Cuál es la longitud de su prefijo anunciado? ¿Tiene espacio PI o PA? Dado que el bestpath se anuncia a sus pares, ustedes dos caminos pueden competir entre sí río arriba y solo uno está llegando al LG. Si cierra uno de sus caminos, ¿aparece en el LG después de la convergencia? Eso te dirá que estás perdiendo uno por bestpath. Pruebe LG con sus proveedores para confirmar que su prefijo esté allí primero, luego intente avanzar hasta el próximo SP.

Para su pregunta iBGP bestpath, el valor predeterminado es anunciar solo uno.

generalnetworkerror
fuente
-1

La respuesta no es un simple "sí" o "no", pero creo que esencialmente su observación es realmente cierta de que "esto no es así".

Para más detalles, ver aquí .

Sin embargo, en aras de la curación, SE prefiere las respuestas que son puramente enlaces a otras páginas, por lo que reproduciré algo de eso aquí en caso de que algún día la fuente desaparezca o cambie.

Cómo funciona el mejor algoritmo de ruta

BGP asigna la primera ruta válida como la mejor ruta actual. Luego, BGP compara la mejor ruta con la siguiente ruta de la lista, hasta que BGP llega al final de la lista de rutas válidas. Esta lista proporciona las reglas que se utilizan para determinar la mejor ruta:

1) Prefiere el camino con el PESO más alto.

Nota: PESO es un parámetro específico de Cisco. Es local para el enrutador en el que está configurado.

2) Prefiere la ruta con el LOCAL_PREF más alto.

Nota: Se considera que una ruta sin LOCAL_PREF tiene el valor establecido con el comando de preferencia local predeterminado bgp, o que tiene un valor de 100 por defecto.

3) Prefiera la ruta que se originó localmente a través de una red o un subcomando BGP agregado o mediante la redistribución desde un IGP.

Las rutas locales que se obtienen de la red o los comandos de redistribución son preferibles a los agregados locales que se obtienen del comando de dirección de agregado.

4) Prefiere la ruta con el AS_PATH más corto.

Nota: Tenga en cuenta estos elementos:

Este paso se omite si ha configurado el comando ignorar bgp bestpath as-path.

Un AS_SET cuenta como 1, sin importar cuántos AS hay en el conjunto.

AS_CONFED_SEQUENCE y AS_CONFED_SET no están incluidos en la longitud AS_PATH.

5) Prefiere la ruta con el tipo de origen más bajo.

Nota: IGP es menor que el Protocolo de puerta de enlace exterior (EGP), y EGP es menor que INCOMPLETO.

6) Prefiera la ruta con el discriminador de salida múltiple más bajo (MED).

Nota: Tenga en cuenta estos elementos:

Esta comparación solo ocurre si el primer AS (el vecino) es el mismo en las dos rutas. Cualquier confederación sub-AS se ignora.

En otras palabras, los MED se comparan solo si el primer AS en AS_SEQUENCE es el mismo para múltiples rutas. Cualquier AS_CONFED_SEQUENCE precedente se ignora.

Si bgp always-compare-med está habilitado, los MED se comparan para todas las rutas.

Debe deshabilitar esta opción en todo el AS. De lo contrario, pueden ocurrir bucles de enrutamiento.

Si bgp bestpath med-confed está habilitado, los MED se comparan para todas las rutas que consisten solo en AS_CONFED_SEQUENCE.

Estos caminos se originaron dentro de la confederación local.

El MED de las rutas que se reciben de un vecino con un MED de 4,294,967,295 se cambia antes de la inserción en la tabla BGP. El MED cambia a 4.294.967.294.

Las rutas recibidas sin MED tienen asignado un MED de 0, a menos que haya habilitado bgp bestpath med missing-as-peor.

Si ha habilitado bgp bestpath med missing-as-peor, a las rutas se les asigna un MED de 4,294,967,294.

El comando bgp deterministic-med también puede influir en este paso.

Consulte cómo los enrutadores BGP usan el discriminador de salida múltiple para la mejor selección de ruta para una demostración.

7) Prefiere eBGP sobre las rutas iBGP.

Si se selecciona bestpath, vaya al paso 9 (ruta múltiple).

Nota: Las rutas que contienen AS_CONFED_SEQUENCE y AS_CONFED_SET son locales de la confederación. Por lo tanto, estas rutas se tratan como rutas internas. No hay distinción entre Confederación Externa y Confederación Interna.

8) Prefiera la ruta con la métrica IGP más baja al siguiente salto de BGP.

Continuar, incluso si bestpath ya está seleccionado.

9) Determine si varias rutas requieren instalación en la tabla de enrutamiento para BGP Multipath.

Continúe, si bestpath aún no está seleccionado.

10) Cuando ambas rutas son externas, prefiera la ruta que se recibió primero (la más antigua).

Este paso minimiza el aleteo de ruta porque una ruta más nueva no desplaza a una más antigua, incluso si la ruta más nueva sería la ruta preferida según los siguientes criterios de decisión (Pasos 11, 12 y 13).

Omita este paso si alguno de estos elementos es verdadero:

Ha habilitado el comando bgp best path compare-routerid.

Nota: Las versiones de software Cisco IOS 12.0.11S, 12.0.11SC, 12.0.11S3, 12.1.3, 12.1.3AA, 12.1.3.T y 12.1.3.E introdujeron este comando.

La ID del enrutador es la misma para varias rutas porque las rutas se recibieron desde el mismo enrutador.

No hay mejor camino actual.

La mejor ruta actual se puede perder cuando, por ejemplo, el vecino que ofrece la ruta se cae.

11) Prefiera la ruta que viene del enrutador BGP con la ID de enrutador más baja.

La ID del enrutador es la dirección IP más alta en el enrutador, con preferencia dada a las direcciones de bucle invertido. Además, puede usar el comando bgp router-id para configurar manualmente la ID del enrutador.

Nota: Si una ruta contiene atributos de reflector de ruta (RR), la ID del originador se sustituye por la ID del enrutador en el proceso de selección de ruta.

12) Si la identificación del originador o enrutador es la misma para múltiples rutas, prefiera la ruta con la longitud mínima de la lista de clúster.

Esto solo está presente en entornos BGP RR. Permite a los clientes ver con RR o clientes en otros clústeres. En este escenario, el cliente debe conocer el atributo BGP específico de RR.

13) Prefiere la ruta que proviene de la dirección de vecino más baja.

Esta dirección es la dirección IP que se utiliza en la configuración de vecino BGP. La dirección corresponde al par remoto que se usa en la conexión TCP con el enrutador local.

Dicho esto, sin embargo, podría estar equivocado. Soy más bien un novato en este campo.

Osteoboon
fuente
Si bien el algoritmo de decisión BGP es definitivamente útil y algo que uno debería saber bastante bien, no creo que responda particularmente la pregunta de los OP (a menos que lo haya leído mal)
Aaron
Redes SOHO, redes empresariales, redes de proveedores ... todo se basa en los mismos fundamentos.
Dennis Olvany