Este documento describe los sistemas autónomos (AS) en BGP. Un AS es un grupo de routers que comparten las mismas políticas de enrutamiento y están bajo el mismo dominio administrativo. BGP se utiliza para el intercambio de rutas entre AS. Los AS se identifican por números asignados por organismos de registro. BGP también se utiliza para establecer sesiones entre routers dentro de un mismo AS (iBGP) y entre AS diferentes (eBGP).
2. Sistema Autónomo
• Un Sistema Autónomo (AS) está formado por un conjunto de
routers que tienen:
– Un protocolo de routing común (posiblemente también rutas
estáticas)
– Una gestión común
• Normalmente cada ISP tiene al menos un sistema autónomo (a
veces varios).
• También las grandes organizaciones (las que están conectadas a
más de un proveedor).
• El AS se identifica por un número de 16 bits. Los números de
AS los asignan los RIR (Registros Regionales).
• Los valores del 64512 al 65535 están reservados para uso privado
(RFC 1930). Equivalen a las direcciones privadas
• Ejemplos de AS: RedIRIS: 766. Univ. Valencia: 65432
3. Un AS es un grupo de routers que comparten las mismas
políticas de enrutamiento, y están bajo un mismo dominio
administrativo.
Un AS puede ser una colección de routers corriendo un mismo
IGP, o bien, usando variados protocolos de enrutamiento pero
dichos routers perteneciendo a una misma organización.
En cualquier caso, el mundo exterior verá al AS como una solo
entidad.
4. Un AS es un conjunto de redes o equipos de redes bajo una
misma administración técnica.
Los IGPs operan al interior de un AS.
BGP es usado entre ASs.
BGP garantiza el intercambio de información de enrutamiento
libre de loops.
5. Protocolo de routing externo
(entre ASes): BGP (Border
Gateway Protocol)
• Necesario incluir factores „políticos‟ en el cálculo de
rutas entre ASes. Requiere otros protocolos.
• Hasta 1990 se usaba EGP (Exterior Gateway Protocol).
• En 1989 se desarrolló BGP. Hoy se usa la versión 4
(BGP-4 incluye soporte de CIDR)
• Usado por prácticamente todos los proveedores de
Internet en la comunicación de rutas entre ASes.
6. BGP (Border Gateway Protocol)
• Algoritmo de vector distancia modificado: además de la interfaz y
el costo se incluye la ruta completa en cada caso.
• El router descubre y descarta las rutas que pasan por él mismo.
Así evita el problema de la cuenta a infinito.
• La métrica suele ser la más simple posible: número de saltos.
• Permite introducir restricciones o reglas „políticas‟. Una ruta que
viola estas reglas recibe una distancia infinito.
7. Modelo jerárquico de Internet
Proveedor ISP de ISP de ISP de
tránsito tránsito tránsito
Cliente
ISP ISP ISP
nacional ISP
nacional nacional
nacional
ISP ISP ISP ISP ISP
regional regional regional regional regional
ISP ISP ISP ISP ISP ISP
local local local local local local
8. Aspectos basicos
Cada enrutador que utiliza BGP debe usar un número de AS.
Éstos pueden ser privados o públicos.
La Internet Assigned Numbers Authority (IANA) está llevando
a cabo una política en que insta a las organizaciones que se
conectan a un solo ISP, y que están bajo sus políticas de
enrutamiendo, a usar números de AS privados (64512 al 65535).
Estos números de AS privados aparecen sólo dentro de la red del
proveedor y son reemplazados por el o los números de AS
públicos una vez que estas actualizaciones dejan el AS privado.
10. Sesiones BGP
Un “BGP peer”, también conocido como “compañero BGP” es un
término usado para describir a un router que ha establecido una
relación con otro a través de BGP.
2 routers que hayan formado una conexión TCP (puerto 179) para
intercambiar información de enrutamiento por medio de BGP,
son llamados “BGP Peers”.
11. Sesiones eBGP
Cuando BGP está corriendo entre vecinos que pertenecen a
distintos AS, se dice que entre ellos existe una sesión eBGP.
Compañeros eBGP, por defecto, necesitan estar directamente
conectados.
12. Sesiones iBGP
Cuando BGP está corriendo entre vecinos dentro de un mismo
AS, se dice que han establecido una sesión iBGP.
13. Tipos de mensajes BGP
BGP define los siguientes mensajes:
Open
Se anuncia Holdtime y BGP router ID entre otros parámetros.
Keepalive
Update
Se publican los atributos de un trayecto en particular, así como las
rutas o prefijos que pueden ser alcanzados a través de dicho
trayecto.
Notification
Se envían cuando se ha detectado un error.
La sesión BGP es cerrada una vez que se ha enviado o recibido.
14. Tablas usadas por
BGP
Tabla de Vecinos o “Neighbor”
Lista los vecinos BGP, es decir, aquellos routers con quienes se ha
establecido una sesión iBGP o eBGP.
Tabla BGP (forwarding database)
Lista las redes aprendidas de cada vecino o neighbor.
Puede contener múltiples trayectorias hacia una red en particular.
Contiene los atributos BGP para cada trayectoria.
Tabla de enrutamiento IP
Lista de las mejores trayectorias para cada red. de destino.
18. Ejemplo: BGP Peering
RouterA# show ip bgp summary
BGP router identifier 10.1.1.1, local AS number 65001
BGP table version is 124, main routing table version 124
9 network entries using 1053 bytes of memory
22 path entries using 1144 bytes of memory
12/5 BGP path/bestpath attribute entries using 1488 bytes of memory
6 BGP AS-PATH entries using 144 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 3829 total bytes of memory
BGP activity 58/49 prefixes, 72/50 paths, scan interval 60 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.1.0.2 4 65001 11 11 124 0 0 00:02:28 8
172.31.1.3 4 64998 21 18 124 0 0 00:01:13 6
172.31.11.4 4 64999 11 10 124 0 0 00:01:11 6
19. Ejemplo: Comando
show ip bgp neighbors
RouterA#sh ip bgp neighbors
BGP neighbor is 172.31.1.3, remote AS 64998, external link
BGP version 4, remote router ID 172.31.2.3
BGP state = Established, up for 00:19:10
Last read 00:00:10, last write 00:00:10, hold time is 180, keepalive
interval is 60 seconds
Neighbor capabilities:
Route refresh: advertised and received(old & new)
Address family IPv4 Unicast: advertised and received
Message statistics:
InQ depth is 0
OutQ depth is 0
Sent Rcvd
Opens: 7 7
Notifications: 0 0
Updates: 13 38
<output omitted>
20. Ejemplo: Comando show ip bgp
router#show ip bgp
BGP table version is 14, local router ID is 172.31.11.1
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal, r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.1.0.0/24 0.0.0.0 0 32768 i
* i 10.1.0.2 0 100 0 i
*> 10.1.1.0/24 0.0.0.0 0 32768 i
*>i10.1.2.0/24 10.1.0.2 0 100 0 i
*> 10.97.97.0/24 172.31.1.3 0 64998 64997 i
* 172.31.11.4 0 64999 64997 i
* i 172.31.11.4 0 100 0 64999 64997 i
*> 10.254.0.0/24 172.31.1.3 0 0 64998 i
* 172.31.11.4 0 64999 64998 i
* i 172.31.1.3 0 100 0 64998 i
r> 172.31.1.0/24 172.31.1.3 0 0 64998 i
r 172.31.11.4 0 64999 64998 i
r i 172.31.1.3 0 100 0 64998 i
*> 172.31.2.0/24 172.31.1.3 0 0 64998 i
<output omitted>
22. Resetando una sesión BGP
Cuando se alteran listas de filtrado de rutas o atributos BGP, los
cambios toman efecto inmediatamente, pero sólo la próxima vez
que se publique o reciba una actualización referente a esa ruta,
la nueva política será usada.
Esto puede tomar un tiempo considerable, por lo cual es
necesario forzar a que una actualización se publique o solicite,
acelerando el proceso.
Es necesario gatillar una actualización para asegurar que la
nueva política sea inmediatamente aplicada a todos los prefijos y
rutas en cuestión.
Formas de realizar esto:
Hard reset
Soft reset
Route refresh
23. Hard Reset de sesiones
Router#
clear ip bgp *
Resetea todas las sesiones BGP presentes
Tabla de forwaring BGP es descartada.
Sesión BGP realiza una transición desde Established a Idle; todo
debe ser reaprendido.
Router#
clear ip bgp [neighbor-address]
Resetea una sesión en particular.
La sesión BGP realiza una transición desde Established a Idle;
todo lo que provino de este vecino debe ser reaprendido.
Menos drástico que clear ip bgp *.
24. Soft Reset de salida
Router#
clear ip bgp {*|neighbor-address} [soft out]
Las rutas aprendidas de ese vecino no se pierden.
El router reenvía toda la información BGP al vecino sin
necesidad de resetear la conexión.
La conexión permanece establecida.
Esta opción es altamente recomendada cuando se está
cambiando una política de salida.
La opción NO ayuda si se está cambiando una política de
entrada.