Actualizado el 6 de Abril del 2020 (Publicado el 16 de Abril del 2017)
782 visualizaciones desde el 16 de Abril del 2017
2,7 MB
49 paginas
Creado hace 20a (13/10/2004)
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
AS1
IGP
AS2
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
Net1
Flujo de tráfico
AS=200
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=1
AS=4
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
Un usuario del AS=2 no puede transitar AS=1
para llegar a AS=3
AS=2
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 (AS) Number
Assignment Policies and Procedures”
– 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”)
AS=1
Sesión BGP
Conexión física
AS=2
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
encaminamiento entre AS’s
son
los que definen
las políticas de
• 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 E-
BGP 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
OPEN
UPDATE
UPDATE
3WHS
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 , N4
N1
N2
AS=1
N3
N4
R1
R2
AS=2
N1 , N2
Rutas
N1
N2
N3
N4
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
N1
N2
AS=1
N3
N4
R1
R2
AS=2
Rutas
N1
N2
N3
N4
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)
15
0
Unfeasible routes length
Withdraw routes (variable)
Total path attribute length
Path attributes (variable)
Length
Prefix (variable)
..................
Rutas no alcanzables
Path
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 E-BGP
Sesión I-BGP
Sesión E-BGP
AS=1
R1
R2
R3
AS=2
R5
.6/30
.1/30
R4
122.5.5.0/30
122.5.5.4/30
AS=3
R6
R7
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
AS=1
R1
R2
AS=2
R4
122.5.5.0/30
.1/30
.2/30
R3
I-BGP
E-BGP
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”
AS=1
R1
R2
R3
I-BGP
E-BGP
AS=2
R4
• R3 aprende rutas de R4, R1 y R2
• pero R3 no puede advertir rutas
aprendidas de R1 a R2
• es necesario que R1 y R2
establezcan una comunicación I-
BGP 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
Comentarios de: Autonomous Systems and BGPv4 (0)
No hay comentarios