• Sistemas autónomos • BGPv4 • Peering - Redes

Anuncio
Autonomous Systems and BGPv4
• Sistemas autónomos
• BGPv4
–
–
–
–
Protocolo interno y externo
Mensajes
Atributos
Reflectores y confederaciones
• Peering
– Tipos de peering
– Puntos neutros
– Multihoming
Autonomous Systems and BGPv4
• Sistema Autónomo (AS): conjunto de routers con una
misma política de encaminamiento dentro de un único
dominio administrativo
– Un AS se identifica con un número de 16 bits (65535 AS’s)
• AS’s ≥ 64512 se reservan como números privados
– Los AS’s se interconectan con protocolos de encaminamiento
externos (EGP) como BGPv4
AS2
AS1
IGP
EGP
IGP
AS3
IGP
Autonomous Systems and BGPv4
• Objetivo de BGPv4:
– El objetivo de BGPv4 es el de anunciar prefijos de red entre AS’s
dependiendo de una política de encaminamiento
– Política de encaminamiento o “routing policy”: si tenemos una red
perteneciente a un AS, una política de encaminamiento es la decisión
del AS de anunciar (“export policy”) la red a otro AS y es el
privilegio del otro AS el aceptar (“import policy”) la información de
encaminamiento de forma que puedan luego fluir paquetes de datos
AS=100
Flujo de tráfico
AS=200
Net1
Net1
Export policy
Import policy
Autonomous Systems and BGPv4
• Tipos de AS’s:
– Stub AS o single-homed: AS que alcanza redes de otros AS’s a
través de un solo punto de salida
AS=1 es un stub AS
AS=2
AS=4
AS=1
AS=3
Autonomous Systems and BGPv4
• Tipos de AS’s:
– Multi-homed non-transit AS: AS que alcanza redes de otros AS’s a
través de más de un punto de salida y no admiten transito de tráfico
AS=1 es un multi-homed non-transit AS
AS=2
Un usuario del AS=2 no puede transitar AS=1
para llegar a AS=3
AS=1
AS=4
AS=3
Autonomous Systems and BGPv4
• Tipos de AS’s:
– Multi-homed transit AS: AS que alcanza redes de otros AS’s a
través de más de un punto de salida y admiten transito de tráfico
AS=1 es un multi-homed transit AS
Un usuario del AS=2 puede transitar AS=1
para llegar a AS=3
AS=2
AS=1
AS=4
AS=3
Autonomous Systems and BGPv4
• BGPv4:
– Es protocolo de encaminamiento basado en políticas
– No usa métricas (saltos, bandwidth, delay, ...)
– Usa TCP como protocolo de transporte de mensajes BGP, es decir,
entre dos routers BGP pertenecientes a distintos AS’s tiene que
existir una conexión TCP (aceptada por ambos)
• ISP (Internet Service Provider)
– Un ISP es una entidad administrativa que puede tener uno o más
números AS asignados dependiendo de la estructura que tenga
– En casi todas las ocasiones un AS se corresponde con un ISP, pero
no siempre (e.g.; un AS de transito o un punto neutro)
– Aclararemos el concepto de ISP en el capítulo de “peering”
Autonomous Systems and BGPv4
• Cuando se usa BGP en un AS:
– Cuando un AS permite el transito de paquetes para alcanzar otro AS
– Cuando un AS es multi-homed (tiene varias conexiones con otros
AS’s)
– Cuando el flujo de tráfico que entra y sale del AS tiene que ser
manipulado
• Cuando no usar BGP (usar rutas estáticas)
– Cuando solo se tiene una sola conexión con Internet u otro AS y se
tiene una misma política de encaminamiento a la de tu ISP
– No hay interés en tener políticas de encaminamiento o selección
(filtrado) de rutas
– Falta de memoria o potencia de proceso en los routers de salida (más
de 120.000 redes y 14000 AS’s)
– Bajo ancho de banda entre AS’s
Autonomous Systems and BGPv4
• RIPE-263: “Autonomous System
Assignment Policies and Procedures”
(AS)
Number
– documento que indica la política de asignación de AS#
– “An Autonomous System (AS) is a group of IP networks run by one
or more network operators with a single, clearly defined routing
policy. When exchanging exterior routing information each AS is
identified by a unique number”
– Normalmente una empresa solo usa un único AS, sin embargo si
requiere de una política de encaminamiento externa distinta, puede
requerir un nuevo AS#
• RFC 1930, "Guidelines for creation, selection, and
registration of an Autonomous System (AS)“
– Se exige que el AS sea multi-homed y que se registre la política de
encaminamiento (single-homed deberían emplazar sus prefijos en la
política de su ISP)
Autonomous Systems and BGPv4
• BGPv4:
– Dos AS’s pueden tener:
• Conexiones físicas: una subred o enlace que conecta los dos AS’s
y que transporta tráfico
• Conexiones BGP: hay una sesión BGP (usando TCP con puerto
179) entre dos routers, cada uno de ellos perteneciente a un AS
– Dos routers que abren una conexión BGP se les llama vecinos
(“neighbours”) o parejas (“peers”)
Sesión BGP
AS=2
AS=1
Conexión física
BGP usa triggered
updates (sino TCP no
sería adecuado) para
informar de cambios en
rutas y “keepalives” para
comprobar que la
conexión sigue “viva”
Autonomous Systems and BGPv4
• BGPv4:
– Routers BGP intercambian información sobre como
alcanzar redes atravesando AS’s
• Intercambian vectores con atributos del camino (incluida una
lista de los AS’s) para llegar a una red determinada
• Este vector de atributos debe estar libre de bucles (no puede
aparecer en medio el AS al que pertenece la red)
• Los atributos son los que definen las políticas de
encaminamiento entre AS’s
• Conexiones entre dos routers BGP pertenecientes al mismo AS
usan I-BGP (enlaces internos)
• Conexiones entre dos routers BGP pertenecientes a distintos
AS’s usan E-BGP (enlaces externos)
– CUIDADO: NO existen dos protocolos BGP distintos, I-BGP y EBGP son el mismo protocolo BGP pero aplicado a distintos
escenarios
Autonomous Systems and BGPv4
• Mensajes BGP:
– Los routers se envían mensajes BGP encapsulados en segmentos TCP
– Los mensajes pueden ser de tipo
•
•
•
•
OPEN: abre la conexión BGP
KEEPALIVE: comprueban que la conexión TCP está abierta
UPDATE: llevan los atributos o políticas de encaminamiento
NOTIFICATION: notificación de errores
Tout
Tout
BGP
peer
BGP
peer
3WHS
3WHS
OPEN
UPDATE UPDATE
KEEP
ALIVE
Tout
Tout
UPDATE UPDATE
Tout
Autonomous Systems and BGPv4
• Mensajes BGP
– Inicialmente al establecer una sesión BGP entre dos routers se
intercambian TODAS las rutas posibles conocidas por ambos routers
– UPDATE: se envían una lista con el NLRI=<length,prefix>
(Network Layer Reachibility Information) conjuntamente con una
serie de atributos que indica una lista de destinos que pueden ser
alcanzados vía el router BGP que envía el mensaje UPDATE
NLRI=<length, prefix>= <24, 12.23.2.0>
N3 , N 4
Rutas
N1
N1
N2
N4
R2
R1
N2
N3
N3
AS=1
N4
AS=2
N1 , N 2
Rutas
N1
N2
N3
N4
Autonomous Systems and BGPv4
• Mensajes BGP
– Si hay algún cambio (nueva ruta o una ruta que desaparece)
– UPDATE: se envía un mensaje update con el NLRI conjuntamente
con una serie de atributos indicando SOLO el cambio que se ha
producido
– Si los routers no tienen ningún cambio en las rutas, la sesión BGP
SOLO intercambia mensajes KEEPALIVE cada 60 segundos para
asegurarse de que la sesión TCP sigue abierta
Retira N1
Rutas
N1
N1
N2
R1
N2
N3
N4
N3
AS=1
R2
N4
AS=2
Rutas
N1
N2
N3
N4
Autonomous Systems and BGPv4
• Mensaje UPDATE
– “Unfeasible routes length”: número de rutas (expresado en bytes que ocupa
el campo “withdraw routes”) que hay que retirar (si 0 entonces no hay rutas
a retirar). La NLRI de las rutas a eliminar viene en el campo “withdraw
routes”
– Total path atributes: longitud del vector de rutas especificado en el campo
“path attributes”
– Path attributes: descripción de los distintos atributos
– NLRI (Network Layer Reachibility Information)
0
15
Unfeasible routes length
Withdraw routes (variable)
Total path attribute length
Rutas no alcanzables
Path
Path attributes (variable)
Length
Prefix (variable)
..................
NLRI’s
Autonomous Systems and BGPv4
• I-BGP y E-BGP
– Los enlaces internos (I-BGP) no tienen porque estar conectados
físicamente (R3 y R5 están conectados lógicamente a través de R4)
La conexión TCP I-BGP entre routers R3 y R5 es
entre direcciones IP 125.5.5.1 y 125.5.5.6
Sesión I-BGP
Sesión E-BGP
AS=1
Sesión E-BGP
AS=2
R5
AS=3
R3
.6/30
R1
R2
R6
.1/30
R7
R4
122.5.5.0/30
122.5.5.4/30
Autonomous Systems and BGPv4
• E-BGP
– Los enlaces externos (E-BGP) están conectados directamente:
• La conexión TCP coincide con el enlace físico
• Si el enlace físico cae, cae la conexión TCP y por tanto la sesión BGP
La conexión TCP E-BGP entre routers R3 y R4 es
entre direcciones IP 125.5.5.1 y 125.5.5.2
R1
122.5.5.0/30
AS=2
.1/30
AS=1
R3
R2
I-BGP
E-BGP
.2/30
R4
Autonomous Systems and BGPv4
• I-BGP
– I-BGP se utiliza para coordinar la política de encaminamiento dentro de un AS
• Prefijos aprendidos por un vecino E-BGP se pueden advertir a un vecino I-BGP
• Prefijos aprendidos por un vecino I-BGP se pueden advertir a un vecino E-BGP
• I-BGP routers no advierten rutas aprendidas vía un router I-BGP a otro router I-BGP
– routers I-BGP deben formar una malla completa à solución: “route
reflectors” y “confederaciones”
• R3 aprende rutas de R4, R1 y R2
R1
AS=2
AS=1
R3
R2
I-BGP
E-BGP
R4
• pero R3 no puede advertir rutas
aprendidas de R1 a R2
• es necesario que R1 y R2
establezcan una comunicación IBGP à malla completa en AS=1
con I-BGP (independiente de la
red física)
Autonomous Systems and BGPv4
• I-BGP
– I-BGP routers no advierten rutas aprendidas vía un router I-BGP a otro
router I-BGP ¿Porqué es necesaria esta regla ?
• Los routers BGP anuncian un vector de AS que atraviesan. Este vector es el
que permite detectar bucles. E.g.; vector AS=(1 2 5 6 2 8) pasa dos veces
por el AS=2, debería ser AS=(1 2 8)
• Solo se inserta el AS en el vector si se atraviesa un router E-BGP, no se
inserta en I-BGP ya que no salimos del AS. Luego no podemos detectar
bucles (entre R1 y R2) para llegar a una ruta
R1
AS=2
AS=1
R3
R2
I-BGP
E-BGP
R4
Autonomous Systems and BGPv4
• I-BGP
– Si la conexión I-BGP entre R1 y R3 es entre las direcciones 11.2.2.1 y
11.2.2.2 y cae el enlace físico à se pierde la conexión I-BGP
– Pero todavía es posible alcanzar R3 vía R2. Sería mejor desacoplar la
conexión I-BGP de las interfaces físicas à usar interfaces virtuales
(e.g.; loopback) con direcciones IP distintas de las físicas (no
necesariamente la 127.0.0.0/8)
11.2.2.0/30
R1
122.5.5.0/30
AS=2
.1/30
AS=1
R3
R2
11.2.2.4/30
.2/30
R4
La conexión TCP I-BGP entre
routers R1 y R3 mejor entre
direcciones en interfaces
virtuales (loopback)
I-BGP
E-BGP
Conexión física
Autonomous Systems and BGPv4
• I-BGP
– usar interfaces virtuales con direcciones IP distintas de las físicas
– Es necesario que todos los routers sepan llegar a las interfaces loopback
de los demás à usar un protocolo IGP
Conexión I-BGP entre R1 y
R3 en direcciones 11.2.128.1
y 11.2.128.9, ....
lo: 11.2.128.1/30
11.2.2.0/30
R1
122.5.5.0/30
AS=2
.1/30
11.2.2.4/30
R3
AS=1
R2
lo:11.2.128.5/30
.2/30
R4
11.2.2.4/30
I-BGP
lo:11.2.128.9/30
E-BGP
Conexión física
Autonomous Systems and BGPv4
• Atributos BGP:
– Un mensaje BGP de tipo UPDATE lleva atributos que indican las
políticas de encaminamiento
• Un atributo puede ser
– Conocido (“well-known”, deben ser soportados por todas las implementaciones
BGP) u opcional (no tienen por que ser soportados por todos las
implementaciones BGP)
– Mandatorio o discrecional (ambos solo si conocido)
– Transitivo o no-transitivo (ambos solo si opcional)
– Completo o Parcial (ambos solo si opcional transitivo)
• No todas las combinaciones son posibles, solo las siguientes
–
–
–
–
Conocido y mandatorio: AS-PATH, NEXT-HOP, ORIGIN
Conocido y discrecional: LOCAL-PREFERENCE, ATOMIC AGGREGATE
Opcional y transitivo: AGGREGATOR, COMMUNITY
Opcional y no-transitivo: MED (también llamada “metric”)
• Los atributos opcionales y transitivos pueden ser marcados como parciales
si uno de los routers BGP intermedios en el camino no implementa ese
atributo y como completo si todos los routers BGP implementan el atributo
Autonomous Systems and BGPv4
• Mensaje UPDATE
0
15
Unfeasible routes length
Withdraw routes (variable)
Total path attribute length
Path attributes (variable)
Length
Attribute type (2 B)
Attribute length (1-2 B)
Prefix (variable)
..................
Attribute value (variable)
Attribute Flags (1B)
Optional Bit
0=well-known
1=optional
Transitive Bit
0=non-transitive
1=transitive
Attribute Type Code (1B)
Partial Bit
0=complete
1=partial
Whether the optional information
is transitive or non-transitive
Extended Length bit
0=1Byte
1=2 Bytes
Whether the information in the optional
transitive is complete or partial
Autonomous Systems and BGPv4
• Tabla BGP en un router
– Datos de G. Houston en artículos del IPJ “Internet Protocol Journal”
– Actualmente hay unos 15.000 AS’s en Internet (va creciendo)
Autonomous Systems and BGPv4
• Tabla BGP en un router
– Proyección en el número de AS’s
Autonomous Systems and BGPv4
• Tabla BGP en un router
– Actualmente hay unas 140.000 redes en Internet (va creciendo) (no crece tan
exponencial últimamente à años 2000/2001 crecimiento ISP à boom en Internet)
Autonomous Systems and BGPv4
• Tabla BGP en un router
– Predicción en el número de direcciones IP
Autonomous Systems and BGPv4
• Tabla BGP en un router
– Incluye entre otras cosas la red destino (prefijo y máscara), el siguiente salto,
algunos atributos (siempre aparece el AS-PATH)
– Un AS puede recibir entradas de “N” AS’s, luego tendrá “N” entradas
a una ruta determinada à proceso de decisión de la mejor entrada a
esa ruta en función de los atributos
• Depende de las implementaciones, pero los routers suelen tener una tabla
de encaminamiento y una tabla de encaminamiento BGP
• Mantienen una DB por cada sesión BGP que tienen activa y a partir de la
unión de estas DB forman la tabla de encaminamiento BGP donde marcan
con el símbolo “>” cual es la mejor ruta a una red
• Un router sólo anuncia su “mejor ruta” a los otros routers BGP
– Visión parcial de Internet ya que un AS sólo ve lo que le cuentan otros AS’s
Autonomous Systems and BGPv4
• Tabla BGP en un router
Network
Next Hop
* 4.0.0.0
206.157.77.11
*>
Atributo CISCO
Atributos
R2# show ip bgp
Metric
LocPrf
Weight
AS-Path
75
100
0
1673 1 i
12.127.0.249
0
200
0
7018 1 i
*
204.70.4.89
0
100
0
3561 1 i
*
204.42.253.253
0
300
0
267 1225 1239 1 i
*
205.158.2.126
0
300
0
2828 4908 3561 1 i
105
200
0
1673 1239 568 721 1455 i
………………………..
* 6.0.0.0
206.157.77.11
*
12.127.0.249
0
100
0
7018 7170 1455 i
*>
198.32.8.252
0
100
0
11537 7170 1455 i
*
204.70.4.89
0
100
0
3561 568 721 1455 i
Autonomous Systems and BGPv4
• NEXT-HOP (conocido y mandatorio):
– Para una sesión E-BGP es la @IP del BGP vecino que anuncio la ruta
– Para una sesión I-BGP es la @IP del BGP vecino que anuncio la ruta
• Es necesario que R5 sepa llegar a la dirección @IPR3I
– Una sesión I-BGP mantiene inalterado el next-hop anunciado por un E-BGP
• Es necesario que R5 sepa llegar a @IPR2E
19.5.5.0/24: NEXT-HOP= @IPR2E
AS=1
R1
19.5.5.0/24
AS=2
R2
@IPR3E
@IPR2E
@IPR5I
@IPR3I
R5
@IPR5E
R6
AS=3
@IPR6E
R3
11.1.1.0/24
R7
R4
19.5.5.0/24: NEXT-HOP= @IPR5E
19.5.5.0/24: NEXT-HOP= @IPR2E
11.1.1.0/24: NEXT-HOP= @IPR3I
Autonomous Systems and BGPv4
• NEXT-HOP:
– Ejercicio: dar la tabla de routing del router R5
AS=1
R1
5.5.5.0/30
4.4.4.0/30
AS=2
R2
19.5.5.0/24
7.7.7.0/30
R5
R7
R4
12.12.2.0/24
3.3.3.0/30
2.2.2.0/30
AS=3
6.6.6.0/30
R3
11.1.1.0/24
R6
Autonomous Systems and BGPv4
• NEXT-HOP en una red BMA:
– R1 y R2 mantienen una conexión BGP. R2 debe anunciar como next-hop R3
para que no haya un salto innecesario ya que R1 puede alcanzar R3 sin pasar
por R2
12.12.2.0/24: NEXTHOP= @IPR3E
AS=1
R2
@IPR2E
R1
@IPR1E
AS=2
R3
@IPR3E
12.12.2.0/24
Autonomous Systems and BGPv4
• ORIGIN (conocido y mandatorio):
– Indica quien origino una ruta
• IGP: la ruta fue originada por un protocolo interno (en CISCO es
advertido con el comando “network”) al AS y se indica con el carácter “i”
en la tabla de encaminamiento
• EGP: la ruta fue originada por un protocolo externo (e.g.; vía E-BGP
procedente de otro AS) y se indica con el carácter “e” en la tabla de
encaminamiento
• Incomplete: origen desconocido (e.g.; redistribuido en BGP) y se indica
con el carácter “?” en la tabla de encaminamiento ya que puede provenir
de cualquier sitio
Autonomous Systems and BGPv4
• AS-PATH (conocido y mandatorio):
– Representa el camino de AS’s que se deben atravesar para llegar a una red
– Siempre que se genera un mensaje UPDATE, el AS añade un vector
inicializado con su AS#
– Cada AS atravesado añade su AS# al vector
19.5.5.0/24: AS-PATH=(1)
AS=1
R1
19.5.5.0/24
19.5.5.0/24: AS-PATH=(2,1)
AS=2
R2
@IPR2E
R5
@IPR5E
R6
AS=3
@IPR6E
R3
R7
R4
Path to network 19.5.5.0/24 is
AS’s (2,1), next-hop is @IPR
5
Autonomous Systems and BGPv4
• Manipulación del atributo AS-PATH:
– BGP siempre prefiere el camino más corto a un AS (en terminos de AS’S)
– Aumentar (“prepending”) el tamaño del camino a una red
AS=1
R1
19.5.5.0/24: ASPATH=(1)
AS=2
R2
19.5.5.0/24
19.5.5.0/24: ASPATH=(2,2,2,2,1)
R5
Path to network 19.5.5.0/24 is
AS’s (5,4,1), next-hop is @IPR
C
R6
AS=3
R3
R7
R4
19.5.5.0/24: AS-PATH=(5,4,1)
19.5.5.0/24: AS-PATH=(1)
19.5.5.0/24: ASPATH=(3,2,2,2,2,1)
19.5.5.0/24: AS-PATH=(4,1)
RC
RB
RA
AS=4
AS=5
Autonomous Systems and BGPv4
• LOCAL-PREFERENCE (conocido y discrecional):
– Atributo que proporciona una indicación a los routers dentro del AS acerca de que router
es preferido para salir del AS
– Mientras más alto sea el valor del Loc-Prf mayor la preferencia (valor por defecto=100)
Net
Next-hop Loc-Prf AS-path Origin
>2.5.5.0/24 @IPR3E
300
1 5
i
2.5.5.0/24 @IPR5E
200
3 5
i
AS=2
R5
2.5.5.0/24: ASPATH=(3,5)
R3
Loc-Prf=300
Link de muy
alta velocidad
R6
AS=3
Loc-Prf=200
R7
R4
2.5.5.0/24: ASPATH=(1,5)
2.5.5.0/24: ASPATH=(5)
RB
RA
AS=1
RC
2.5.5.0/24: ASPATH=(5)
2.5.5.0/24
AS=5
Autonomous Systems and BGPv4
• ATOMIC AGGREGATE (conocido y discrecional)
– Informa a un AS vecino que el router originario de la ruta a efectuado
“agregación de rutas”
• AGGREGATOR (Opcional y transitivo)
– Informa del identificador BGP y del AS# del router que efectúo “agregación
de rutas”
• Community (opcional y transitivo)
– Grupo de destinos que comparten ciertas propiedades (e.g.; routers de las
universidades Españolas)
– Una comunidad no tiene límites físicos (redes o AS’s)
Autonomous Systems and BGPv4
• MED, Multi-Exit-Discriminator (opcional y no-transitivo)
– También llamado “metric”, es una indicación a vecinos externos acerca del
camino preferido para entrar en el AS
– El valor menor es el preferido
2.5.5.0/24
R3
R5
MED=200
AS=2
MED=300
Net
Tráfico a 2.5.5.0/24
Next-hop Loc-Prf metric AS-path Origin
2.5.5.0/24 @IPR3E
100
300
2
i
>2.5.5.0/24 @IPR5E
100
200
2
i
RC
AS=1
Autonomous Systems and BGPv4
•
Proceso de decisión
–
Es dependiente de la implementación en el router. E.g.; en un router
CISCO
1.
2.
3.
4.
5.
6.
7.
8.
9.
Si el camino es interno, sincronización ON y el router no está
sincronizado à rechazar la ruta
Si el “next-hop” es no alcanzable à rechazar la ruta
Prefiere una ruta con el máximo “weight” (propietario CISCO)
Múltiples rutas con igual “weight”, escoge la de mayor Loc-Prf
Múltiples rutas con igual Loc-Pref, escoge la de mínimo AS-path
Múltiples rutas con igual AS-path, escoge la de menor “origin”
(IGP<EGP<Incomplete)
Múltiples rutas con igual “origin”, escoge la de menor MED (a
igualdad de ruta del mismo AS)
....
Escoge la ruta del router BGP con menor router ID y si hay más de una
ruta del mismo router la de interfaz con menor @IP
Autonomous Systems and BGPv4
• Agregación de direcciones
– Un mensaje UPDATE de BGPv4 envía el prefijo y la longitud del prefijo
– Un router BGP puede agregar direcciones al advertirlas a otro router BGP
– Aunque la ruta esté agregada, el atributo AS-path puede indicar un vector de
todos los AS’s que ha atravesado la ruta agregada (puede usar el atributo
AGGREGATOR para indicar el ID del AS que agrego)
AS=2
AS=3
RB
RC 159.5.2.0/24
RD
AS=4
159.5.1.0/24
159.5.0.0/16
AS-path=(1), {3,4}
RA
AS=1
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Split-horizon:
• una ruta aprendida por un router I-BGP no es propagada a otro router I-BGP vecino
• Hay que tener una topología mallada (“mesh”) à si N routers à N (N-1)/2
conexiones I-BGP
– Si desactivamos split-horizon no podemos garantizar que haya bucles
RB
RA
RC
AS=1
RB
RD
RA
I-BGP
Conexión física
RC
AS=1
RD
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Reflectores de rutas (“Route Reflectors”): modifica la regla de split-horizon
para que el reflector de rutas pueda propagar rutas aprendidas de un I-BGP a
un I-BGP vecino reduciendo el número de sesiones BGP TCP en el AS
– Para diseñar una red con reflectores se usan “clusters”
• El reflector de rutas es la cabeza de un cluster
• El reflector de rutas mantiene sesiones I-BGP con sus clientes (routers que
pertenecen al cluster)
• Los reflectores de rutas (cabezas del cluster) deben formar una topología
totalmente mallada con no-clientes (el resto de routers )
• No evitamos usar un protocolo IGP para transportar rutas internas y “next-hops”
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Reflectores de rutas (“Route Reflectors”) à una ruta no la devuelve por la
interfaz que le ha llegado (regla clásica de split-horizon)
I-BGP
E-BGP
Ruta viene de otro
reflector (no-cliente): el
reflector de rutas lo
propaga solo a todos sus
clientes
RA
RB
RC
AS=1
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Reflectores de rutas (“Route Reflectors”) à una ruta no la devuelve por la
interfaz que le ha llegado (regla clásica de split-horizon)
I-BGP
E-BGP
Ruta viene de fuera: el
reflector de rutas lo
propaga a todos sus
clientes y no-clientes
RA
RB
RC
Hay 9 routers:
• sin reflectores de rutas à
9*8/2 = 36 sesiones I-BGP
• con reflectores de rutas y
la topología fijada à 9
sesiones I-BGP
AS=1
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Reflectores de rutas (“Route Reflectors”) à una ruta no la devuelve por la
interfaz que le ha llegado (regla clásica de split-horizon)
I-BGP
E-BGP
Ruta viene de un cliente:
el reflector de rutas lo
propaga a todos sus
clientes (excepto el que lo
origino) y a todos los noclientes
RA
RB
RC
AS=1
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Confederaciones es otra solución al problema de tener todos los
routers I-BGP totalmente mallados.
• Consiste en crear un mini-AS dentro de un AS
• Cada mini-AS tiene que estar totalmente mallado
• Cada mini-AS tiene una sesión E-BGP con otros mini-AS aunque
intercambian UPDATES como si fuesen I-BGPs
– manteniendo atributos como son next-hop, MED, Loc-Prf
• Para el exterior se comportan como si fuesen un solo AS
Autonomous Systems and BGPv4
• Escalabilidad en BGP
– Confederaciones
I-BGP
E-BGP
AS=65530
RA
RB
AS=65520
RC
AS=65510
AS=1
Autonomous Systems and BGPv4
• Sincronización en BGP
– BGP espera antes de propagar una ruta aprendida de I-BGP a que el IGP la haya
propagado por todo el AS
– Antes de que un router BGP quiera advertir a otro AS una ruta aprendida de otro
router BGP (externo) todos los routers del AS deben saber llegar a esa ruta
I-BGP
R6
E-BGP
Conexión física
R2
AS=2
R5
R3
19.5.5.0/24: AS-PATH=(1)
R1
R4
AS=1
RA
RB
19.5.5.0/24
AS=3
19.5.5.0/24:
AS-PATH=(1)
19.5.5.0/24: ASPATH=(1,2)
RC
RD
Autonomous Systems and BGPv4
• Sincronización en BGP
– Soluciones:
• Redistribuir rutas aprendidas por BGP en el IGP del AS, de forma que
todos los routers del AS aprenden como llegar a la ruta
– necesita que todos los routers del AS soporten tablas de encaminamiento
muy grandes
• Que los routers desactiven la opción de sincronización (es dependiente
de la implementación BGP en un router, e.g.; CISCO lo permite) à el
router BGP advertirá la ruta al par BGP externo, aunque haya routers de
su AS que no sepan llegar a esa ruta (usan rutas por defecto)
– Se usa esta opción si el AS no es de transito
– Todos los routers del camino (R1, R2, R3 y R4) usan I-BGP (con una
topología en malla !!!) que se encarga de sincronizar los routers por los
que se llega a esa ruta. Routers que no estén en el camino (R5 y R6) usan
rutas por defecto
Descargar