BGP
Border Gateway Protocol
(RFC 1771)
Inicios de Internet
Direccionamiento Classfull
Desperdicio de direcciones
Demasiadas rutas (2M clases C)
1990s CIDR
Reduce desperdicio con Prefijos
Reduce asignacin (NAT/PAT)
Reduce tablas de ruteo
Asignacin de direcciones
Compaa A
Obtiene 198.133.219.16/29
Compaa A
Asigna 4
198.133.219.16/29
NA-ISP1
Obtiene 198.133.0.0/16
NA-ISP 1
1
ARIN necesita un nuevo
bloque /8, 198.0.0.0/8
est disponible
Asigna 3
198.133.0.0/16
ARIN (RIR)
Obtiene 198.0.0.0/8
Asigna 198.0.0.0/8
IANA
Agrupacin de rutas
198.133.219.16/29
Compaa A
NA-ISP 2
1 ruta para 198.133.0.0/16
1 ruta para
198.133.219.16/29
NA-ISP 1
Europa
Sudamrica
BGP basics
Establece una relacin con los vecinos
Configuracin explcita (no descubre)
Vecinos remotos (fuera de sus redes conectadas)
Utiliza TCP port 179
Utiliza PAs (Path Attributes) en lugar de mtrica
para seleccionar el mejor camino
Escalable no ms eficiente
Path Vector (similar a Distance Vector)
Descripcion
Reservado
1 ~ 64.495
64.496 ~ 65.511
64.512 ~ 65.534
Uso Privado
65.535
Reservado
Ver dawhois.com
AS_Path PA
Un router BGP publica una ruta (perfix/length)
junto con el atributo AS_Path
El AS_Path lista los ASNs que forman parte de
la ruta
BGP utiliza AS_Path para:
Elegir la mejor ruta (shortest AS_Path)
Prevenir loops (ignora updates con su propio
ASN en el path)
Internet
Compaa A
ISP 1 ASN 1
Compaa B
192.31.7.32/29
198.133.219.16/29
ASN 11
ASN 12
ISP 3 ASN 3
ISP 2 ASN 2
Ejemplo de AS_Path
ISP 1 ASN 1
ASN 12
192.31.7.32/29
AS_PATH = (12,2,1)
192.31.7.32/29
AS_PATH = (12,2,3)
192.31.7.32/29
2
192.31.7.32/29 AS_PATH = (12,2)
AS_PATH = (12,2,1)
2
192.31.7.32/29
AS_PATH = (12,2)
ISP 3 ASN 3
ISP 2 ASN 2
1
192.31.7.32/29
AS_PATH = (12)
Ruteo en Internet
B1
Core 1
WAN 1
default
B2
WAN 2
default
Core 2
default
B3
default
E1
Internet
Dual-homed Internet
ASN 1000
ISP 1 ASN 1
E1
E2
ASN 1000
ISP 1 ASN 1
E1
E2
ISP 2 ASN 2
E1
E2
BGP updates
Default route only: El ISP publica una ruta
default, pero ninguna otra
Full updates: El ISP enva su tabla BGP
completa (500k rutas)
Partial updates: El ISP enva solo aquellos
prefijos con mejor mtrica + una ruta default
BGP
BGP opera de manera similar a otros protocolos de
ruteo:
Aprende las rutas de sus vecinos
Incorpora esta informacin en una tabla la Tabla
BGP
Analiza esta tabla para elegir la mejor ruta para
cada prefijo y la introduce en la tabla de ruteo
BGP
La configuracin mnima que requiere BGP para
operar es:
El propio ASN del router
La direccin IP de cada vecino, junto con su ASN
La configuracin de ASN local del router debe coincidir con
la referencia configurada en el vecino
El BGP RID (Router-ID) debe ser diferente
La direccin IP del vecino referenciada debe ser alcanzable
Mensaje Update
Length (bytes) of withdrawn Routes Section
Withdrawn routes (variable)
Length of Path Attributes Section
Path Attributes (variable)
Prefix Length
Prefix
Prefix Length
Prefix
.
.
.
BGP PAs
AS_Path Cantidad de ASNs en el AS Patch
Next_Hop Lista el prximo salto utilizado para
alcanzar un prefijo
Local_Preference Valor numrico (0 ~ 2^32 -1)
usado para influenciar la eleccin de mejor ruta
dentro del AS
Origin I=prefijo inyectado desde un IGP, E=desde un
EGP, ?=incompleto
Multi-Exit-Discriminator seteado en un AS, para
influenciar la decisin de routers en otros ASs
(mtrica)
Seleccin de rutas
El proceso de seleccin analiza la tabla BGP para
identificar aquellas que se incluirn en la tabla
de ruteo.
Los PAs influyen esta decisin, a saber:
Next_Hop Si no es alcanzable, se descarta
Local_Preference Mayor valor, mejor
AS_Path Menor valor
Origin I > E > ?
MED Menor valor