Está en la página 1de 6

Border Gateway Protocol

Ir a la navegaci�n
Ir a la b�squeda
M�quina de estados de BGP.

En telecomunicaciones, el protocolo de puerta de enlace de frontera o BGP (del


ingl�s Border Gateway Protocol)1? es un protocolo mediante el cual se intercambia
informaci�n de encaminamiento entre sistemas aut�nomos. Por ejemplo, los
proveedores de servicio registrados en Internet suelen componerse de varios
sistemas aut�nomos y para este caso es necesario un protocolo como BGP.

Entre los sistemas aut�nomos de los ISP se intercambian sus tablas de rutas a
trav�s del protocolo BGP. Este intercambio de informaci�n de encaminamiento se hace
entre los routers externos de cada sistema aut�nomo, los cuales deben ser
compatibles con BGP. Se trata del protocolo m�s utilizado para redes con intenci�n
de configurar un protocolo de puerta de enlace exterior (Exterior Gateway
Protocol).

La forma de configurar y delimitar la informaci�n que contiene e intercambia el


protocolo BGP es creando lo que se conoce como sistema aut�nomo o AS. Cada uno
tendr� conexiones o sesiones internas (iBGP), as� como sesiones externas (eBGP).

El protocolo de puerta de enlace de frontera (BGP) es un ejemplo de protocolo de


puerta de enlace exterior (EGP). BGP intercambia informaci�n de encaminamiento
entre sistemas aut�nomos a la vez que garantiza una elecci�n de rutas libres de
bucles. Es el protocolo principal de publicaci�n de rutas utilizado por las
compa��as m�s importantes de ISP en Internet. BGP4 es la primera versi�n que admite
encaminamiento entre dominios sin clase (CIDR) y agregado de rutas. A diferencia de
los protocolos de puerta de enlace internos (IGP), como RIP, OSPF y EIGRP, no usa
m�tricas como n�mero de saltos, ancho de banda o retardo. En cambio, BGP toma
decisiones de encaminamiento bas�ndose en pol�ticas de la red, o reglas que
utilizan varios atributos de ruta BGP.
�ndice

1 Introducci�n
2 Relaciones entre AS
3 Tipos de mensajes
4 Formato de los paquetes
5 Ingenier�a de tr�fico
5.1 ORIGIN
5.2 AS-PATH
5.3 NEXT-HOP
5.4 MULTI-EXIT-DISCRIMINATOR (MED)
5.5 LOCAL-PREF
5.6 ATOMIC AGGREGATE
5.7 COMMUNITY
6 Selecci�n de rutas
7 Incidencias
8 V�ase tambi�n
9 Referencias
10 Bibliograf�a
11 Enlaces externos

Introducci�n

BGP juega un papel cr�tico en las comunicaciones en Internet. Facilita el


intercambio de informaci�n sobre redes IP y la comunicaci�n entre sistemas
aut�nomos (AS). Por tanto, BGP es un protocolo interdominio (entre sistemas
aut�nomos) e intradominio (dentro del mismo sistema aut�nomo).
El protocolo BGP se utiliza para intercambiar informaci�n mediante el
establecimiento de una sesi�n de comunicaci�n entre los enrutadores de frontera de
los sistemas aut�nomos. Para conseguir una entrega fiable de la informaci�n, se
hace uso de una sesi�n de comunicaci�n basada en TCP en el puerto n�mero 179. Esta
sesi�n debe mantenerse activa debido a que ambos extremos de la comunicaci�n
peri�dicamente se intercambian y actualizan informaci�n. Al principio, cada router
env�a al vecino toda su informaci�n de encaminamiento y despu�s �nicamente se
enviar�n las nuevas rutas, las actualizaciones o la eliminaci�n de rutas
transmitidas con anterioridad. Adem�s peri�dicamente se env�an mensajes para
garantizar la conectividad.

Cuando una conexi�n TCP se interrumpe por alguna raz�n, cada extremo de la
comunicaci�n est� obligado a dejar de utilizar la informaci�n que ha recibido del
otro extremo. En otras palabras, la sesi�n TCP sirve como un enlace virtual entre
dos sistemas aut�nomos vecinos, y cuando hay una falta de intercambio de
comunicaci�n indica que el enlace virtual se ha ca�do. Cabe destacar que esa uni�n
virtual tendr� m�s de un enlace f�sico que conecte a los dos enrutadores frontera,
pero si una conexi�n virtual se cae no indica necesariamente que la conexi�n f�sica
se haya ca�do.

Desde el punto de vista de su topolog�a, se puede considerar como un gr�fico de


conexi�n de sistemas aut�nomos conectados mediante enlaces virtuales. En la figura
a continuaci�n se pueden ver cuatro sistemas aut�nomos llamados AS1, AS2, AS3 y AS4
conectados por enlaces virtuales. Es decir, que mantienen sesiones BGP sobre TCP
para la comunicaci�n entre los sistemas aut�nomos. Cada sistema aut�nomo contiene
una o m�s redes que se identificaron como N1, N2 y N3 en AS1, y as� sucesivamente.
Simplemente observando la figura se puede mostrar que existe m�s de una ruta
posible entre dos sistemas aut�nomos determinados. Como tambi�n es posible tener
uno o m�s de un router de borde en el mismo sistema aut�nomo.

Para la puesta en funcionamiento de la red anterior se debe proveer de un mecanismo


de intercambio de rutas que permita comunicar correctamente ambos sistemas. El
protocolo BGP utiliza el protocolo de vector de caminos, en ingl�s, Path vector
protocol para el intercambio de informaci�n de encaminamiento en la red. Se
transmite una lista con identificaci�n de los AS por los que pasa el anuncio. De
esa manera se conseguir� saber c�mo llegar a cualquier direcci�n del prefijo
propagado as� como estar preparado para cursar tr�fico para cualquier direcci�n del
prefijo.
Red2.png

Antes de enunciar la mec�nica de selecci�n de rutas se deben introducir las dos


formas de proceder cuando se cuenta con un escenario en el que implantar BGP. Se
debe distinguir entre BGP externo (eBGP) y BGP interno (iBGP) en funci�n de si la
informaci�n se intercambia dentro de un AS o entre dos AS. Se puede observar en la
figura anterior que el sistema aut�nomo AS1 debe propagar tres prefijos IP (N1, N2
y N3) para que sean alcanzables desde los equipos de otros sistemas aut�nomos.
Adem�s, estas tres redes deber�n establecer cierta pol�tica de decisi�n de rutas
hacia otros sistemas aut�nomos. IBGP conforma una topolog�a virtual mallada de modo
que todos los enrutadores de un sistema aut�nomo se encuentren conectados para que
el intercambio de rutas sea directo desde el router al que le llega el anuncio
hacia todos los de su sistema aut�nomo.
Relaciones entre AS
DiagramaDistribucionRed.png

Las relaciones que existen entre distintos sistemas aut�nomos son principalmente de
interconexi�n voluntaria (peering) y de tr�nsito. B�sicamente una relaci�n de
tr�nsito es la que existe entre un proveedor y un cliente, de modo que el cliente
pague por los recursos de Internet que le puede suministrar su proveedor. Las
relaciones de peering no suelen ser pagadas y consisten en un enlace para comunicar
dos sistemas aut�nomos con el fin de reducir costes, latencia, p�rdida de paquetes
y obtener caminos redundantes. Se suele hacer peering con sistemas aut�nomos
potencialmente similares en cuanto a tama�o. Por tanto, no se hace peering con un
cliente potencial ya que saldr�a uno de los dos sistemas aut�nomos beneficiado.

En la figura se muestra una topolog�a de red con diferentes tipos de relaciones.


Los proveedores de nivel 1 (tier 1) son los que por definici�n no pagan a otros
proveedores y ofrecen servicio y conectividad a muy larga distancia. Los dem�s
proveedores mostrados pagan al menos el tr�nsito con un tier 1. Los clientes
pagar�n a los proveedores con los que tengan un enlace de tr�nsito.

BGP adem�s permite la agregaci�n de rutas de modo que las rutas manejadas por un
router en concreto sean las menores posibles.

Un escenario que se suele repetir es uno llamado multiconexi�n, multi-ISP o


multihoming. Este t�rmino hace referencia a un cliente que contrata a dos
proveedores de tr�nsito, lo que implica que existen dos rutas de salida, de modo
que se deber� decidir entre un camino u otro dependiendo de ciertas
especificaciones, necesidades o simples pol�ticas que se impongan en el sistema
aut�nomo. Un ejemplo se puede ver en la figura prestando atenci�n a Cliente A. Las
especificaciones pueden ser para equilibrar el tr�fico, para poner un enlace como
preferido antes que otro (por ejemplo, porque tenga m�s velocidad), por tolerancia
a fallos, etc. La gesti�n de estas prioridades es lo que se llama ingenier�a de
tr�fico y se consigue gracias a los atributos BGP que se definen en el protocolo.
Tipos de mensajes

Existen cuatro tipos de mensajes BGP que son los siguientes:

OPEN: se utiliza para el establecimiento de una sesi�n BGP una vez haya sido
establecida la conexi�n TCP. Se suelen negociar ciertos par�metros que caractericen
a esa sesi�n. Por ejemplo, es muy posible que los miembros de la sesi�n no tengan
la misma versi�n de BGP por lo que es importante indicar el n�mero de versi�n en
este mensaje.

UPDATE: es un mensaje de actualizaci�n, de mucha importancia en las operaciones de


BGP ya que contiene los anuncios de nuevos prefijos. Se generar�n mensajes de
actualizaci�n cada vez que se determine una nueva mejor ruta para cierto destino o
haya una modificaci�n sobre alguna existente.

KEEPALIVE: una vez que la sesi�n BGP est� activa se env�a peri�dicamente un mensaje
para mantener viva la conexi�n o KEEPALIVE para confirmar que el otro extremo sigue
estando activo en la sesi�n BGP. Generalmente se acuerda un tiempo m�ximo de espera
durante el intercambio inicial de mensajes OPEN. El KEEPALIVE suele ser
aproximadamente una vez cada tercio del tiempo de espera, pero no m�s de una vez
cada segundo. Los mensajes KEEPALIVE no se deben generar si el tiempo de espera es
cero ya que en ese caso se entiende que la sesi�n es completamente fiable.

NOTIFICATION: se env�a al cerrar una sesi�n BGP y esto sucede cuando ocurre alg�n
error que requiera el cierre de la misma. De modo que es un mensaje que permite
informar nada.

Formato de los paquetes

Los paquetes BGP tienen una cabecera de 19 bytes, consistente en los siguientes
campos:
� Un campo de 16 bytes de Marcado (Marker): para detectar la p�rdida de
sincronizaci�n o autenticaci�n de mensajes BGP entrantes,

� Un campo de 2 bytes de Longitud de Paquete (Length): que especifica la longitud


del mensaje BGP en bytes (la longitud no puede ser menor a los 19 bytes de la
cabecera sin datos ni mayor a 4096), y

� Un campo de 1 byte de Tipo (Type): que indica el tipo de mensaje.

Los datos que siguen a la cabecera del paquete pueden ser de 0 hasta 4.077 bytes,
para dar una longitud m�xima posible de 4.096.

Ingenier�a de tr�fico

La ingenier�a de tr�fico en BGP es el modo en que se gestiona la red a partir de


los atributos con los que cuenta dicho protocolo para satisfacer determinadas
caracter�sticas o imposiciones de un escenario BGP.

Se definen caracter�sticas para el tr�fico saliente y para el entrante, siendo este


�ltimo algo m�s dif�cil de controlar. De modo que esta gesti�n de la red se hace a
partir de la selecci�n de las rutas que cualquier router va a propagar en una red y
de las rutas que va a escoger como preferentes y alternativas.

Para ello se cuenta con un conjunto de atributos que dan informaci�n para la toma
de decisi�n para filtrar o seleccionar rutas. Se definen a continuaci�n dichos
atributos:
ORIGIN

Identifica el mecanismo por el cual se anunci� el prefijo IP por primera vez. Se


puede especificar como IGP (0), EGP (1) o INCOMPLETE (2). IGP indica que el prefijo
IP se aprendi� por un protocolo interior al sistema aut�nomo como por ejemplo OSPF.
EGP indica que el prefijo IP se aprendi� por un protocolo exterior como podr�a ser
BGP, por ejemplo puede ser debido a que se ha realizado agregaci�n. Cualquier otra
ruta que no caen en IGP o EGP recaen en INCOMPLETE, ya que la informaci�n de origen
est� incompleta, y por tanto no se sabe de d�nde procede.

Generalmente si el origen es INCOMPLETE es porque se ha aprendido de forma


est�tica. Si se quisiera decidir una selecci�n de rutas sobre la base de este
prefijo se escoge la que tiene un valor ORIGIN m�s bajo, por lo que se prefieren
las rutas aprendidas por IGP antes que las de EGP y �stas �ltimas antes que
INCOMPLETE.
AS-PATH

El atributo AS-PATH almacena una secuencia de n�meros de AS que identifican la ruta


de los AS por los que ha pasado el anuncio. Cada vez que un router de borde propaga
una ruta hacia otro lado a�ade a este atributo su n�mero de AS constituyendo as� la
lista de los AS que se pretend�a tener. La lista permanece intacta si se usa IBGP,
es decir, si no se sale del sistema aut�nomo.

Si se quisiera utilizar el AS-PATH como m�todo de selecci�n de rutas se escoger�a


el que tuviera una lista AS-PATH m�s peque�a. Esto es una forma de medir que haya
menos saltos hacia el destino aunque no es exactamente as� porque no se tienen en
cuenta los posibles saltos debidos a los routers dentro de un sistema aut�nomo.
NEXT-HOP

NEXT-HOP o siguiente salto identifica la direcci�n IP del router correspondiente al


siguiente salto hacia el destino. Se debe tener en cuenta que un prefijo IP se
anuncia fuera de un sistema aut�nomo, por lo que el siguiente salto es el destino
que se conoce y al que hay que enviar el tr�fico de los usuarios que quieran llegar
a un destino final.

La informaci�n de NEXT-HOP se procesa con los datos de tabla de encaminamiento IP.


Ahora se contar� con una tabla IP (con la que ya se contaba anteriormente) y con
una tabla BGP que contendr� el siguiente salto para cada destino. Se obtendr� una
ruta hacia el destino BGP pasando por los saltos que indique la tabla de
encaminamiento IP.

Si se quisiera seleccionar una ruta por este atributo se seleccionar�a la que


suponga menor coste hacia el siguiente salto, es decir, menor n�mero de saltos
hacia el siguiente salto.
MULTI-EXIT-DISCRIMINATOR (MED)

Es un indicador dise�ado para ser utilizado cuando desde un sistema aut�nomo


existen m�ltiples enlaces hacia un mismo sistema aut�nomo. Se puede observar m�s
f�cilmente en la siguiente figura.
Med.png

Como puede verse, desde un mismo sistema aut�nomo se realizan dos enlaces a otro
sistema aut�nomo. Este atributo se puede utilizar para como balanceo de carga, de
modo que hacia unos prefijos se tenga un valor de MED que haga preferente cierto
prefijo y hacia otros prefijos se haga preferente otro diferente. Esta m�trica es
local entre dos sistemas aut�nomos, no se propaga fuera de ese �mbito. Si se
quisiera seleccionar una ruta por medio de este atributo se considerar�a preferida
la que tuviese un valor de MED menor.
LOCAL-PREF

Este atributo es �til en un escenario en el que un sistema aut�nomo tiene


conectividad con m�ltiples sistemas aut�nomos, de manera que pueda haber m�ltiples
rutas hacia un mismo destino. Este atributo dar� preferencia al env�o de tr�fico
por un enlace en concreto, por tanto solo tendr� sentido dentro de un mismo sistema
aut�nomo, luego solo se transmite por iBGP.

Se escoger� el env�o de datos por el enlace que tenga un LOCAL-PREF m�s alto,
siendo el LOCAL-PREF por defecto de valor 100.
ATOMIC AGGREGATE

Este atributo lo que hace es indicarnos que la ruta correspondiente se ha obtenido


mediante agregaci�n de otras rutas m�s precisas.
COMMUNITY

Se puede gestionar la distribuci�n de informaci�n de encaminamiento a un grupo de


destinatarios que forman una comunidad (COMMUNITY). La idea es que una vez suscrito
a un grupo de destinatarios se les pueda aplicar una pol�tica de encaminamiento
concreta. De ese modo se simplifica el trabajo agregando informaci�n de
encaminamiento as� como se proporciona una herramienta para tener un entorno m�s
vigilado en la red.

Se consigue mediante un n�mero que act�a como una etiqueta que califica a la ruta.
Selecci�n de rutas

Todos estos atributos pueden ser utilizados conjuntamente para la selecci�n de


rutas, sin embargo se debe imponer un orden de preferencia de manera que si se
tienen varias rutas que pueden ser preferente solo se elija una. Se recorrer� la
siguiente lista y se eliminar�n las rutas que no empatan en el mejor valor de cada
uno de los criterios. Se ha de tener en cuenta que los criterios de decisi�n de
enrutamiento que incluyen normas de desempate se aplican a cada prefijo IP o
conjunto de prefijos IP destino.

Si el siguiente NEXT-HOP no est� disponible se ignora la ruta.


Eliminar las rutas con menor LOCAL-PREF.
Eliminar las rutas con AS-PATH m�s largo.
Eliminar las rutas con ORIGIN m�s alto.
Eliminar las rutas con mayor MED.
Eliminar las rutas aprendidas por IBGP si las hay aprendidas por eBGP.
Eliminar las rutas con mayor coste hacia el NEXT-HOP.
Preferir la ruta que ha anunciado el router con menor identificador BGP.
Preferir la ruta recibida desde la interfaz con menor direcci�n para el vecino.

Las �ltimas dos entradas de la lista son una forma de selecci�n de rutas de alguna
manera arbitrarias, ya que no indican una pol�tica regulada como tal por un
administrador. Sin embargo es una manera que pone BGP para en el caso en que no se
pueda decidir, se seleccione alguna ruta.
Incidencias

A lo largo de su historia la el Border Gateway Protocol, ha presentado una serie de


incidencias,2? de las cuales las m�s importantes han sido las siguientes:

Durante las protestas de Egipto de 2011 el gobierno de Hosni Mubarak orden� a


todos los proveedores de acceso que operan en el pa�s �rabe el corte de las
conexiones internacionales. Como consecuencia de los cortes y bloqueos en la noche
del 27 al 28 de enero los enrutadores egipcios dejaron de anunciar hasta 3.500
rutas de BGP, dejando al resto de enrutadores sin la informaci�n necesaria para
intercambiar tr�fico con los servidores egipcios.3?
El 24 de junio de 2019 una peque�a compa��a en Pensilvania se convirti� en un
"embudo" cuando el tr�fico de Verizon AS701,4?5? un gran cliente de tr�nsito de
Internet, se volc� en �l por una pol�tica de filtrado de rutas. Esto ocasion� que
los sitios web (muchos de ellos alojados y/o monitorizados por Cloudflare, as� como
otros proveedores)6? tuvieran un restraso considerable en su servicio.

También podría gustarte