El Border Gateway Protocol (BGP) es el pilar del enrutamiento de Internet, y su algoritmo de selección de rutas se basa en una secuencia determinista de atributos de ruta. Uno de estos, el atributo ORIGIN, indica cómo una ruta fue inyectada en BGP y, según RFC4271, no debería ser modificado después de su origen. Sin embargo, este artículo expone una manipulación sistemática y extendida del atributo ORIGIN por parte de ASes, particularmente los de alto rango, para influir en la selección de rutas y atraer tráfico.
Esta práctica, aunque contraviene las directrices del RFC, se ha convertido en una 'carrera armamentista' impulsada por incentivos económicos. La reescritura del ORIGIN a 'IGP' (el valor más preferido) permite a los proveedores de tránsito desviar el tráfico hacia sus redes, generando ingresos. La prevalencia de esta manipulación, observada en hasta el 70% de las rutas en experimentos controlados, plantea serias preguntas sobre la integridad y la equidad del enrutamiento global, y la relevancia del atributo ORIGIN en el Internet moderno.
Arquitectura del Sistema
El Border Gateway Protocol (BGP) opera sobre el concepto de Sistemas Autónomos (ASes) que intercambian información de alcanzabilidad de prefijos IP. Cada anuncio de prefijo incluye un conjunto de atributos de ruta, como AS_PATH, Local Preference y ORIGIN. El algoritmo de selección de ruta de BGP procesa estos atributos en un orden específico para determinar la 'mejor' ruta hacia un prefijo. El atributo ORIGIN, con valores 'IGP' (0), 'EGP' (1) e 'INCOMPLETE' (2), es evaluado tempranamente en el proceso de selección de ruta, después de Local Preference y AS_PATH length, donde un valor numérico más bajo (IGP) es preferido.
La metodología de investigación involucró el anuncio de prefijos IPv4 e IPv6 con diferentes valores ORIGIN desde ubicaciones de peering usando BGP Anycast. Se utilizaron herramientas como BGPKIT para parsear mensajes BGP Update de MRT dumps de colectores públicos (RIPE RIS, RouteViews) y datos BMP locales. El análisis se centró en identificar ASes que modificaban el ORIGIN, comenzando con AS_PATHs de dos saltos y extendiéndose a rutas más largas mediante un algoritmo iterativo que construía un conjunto de ASes 'confiables' (que preservan el ORIGIN) y 'modificadores'. La atribución de ASes se validó utilizando el AS Rank de CAIDA para evaluar la centralidad de los ASes manipuladores.
Flujo de Manipulación de Atributo BGP ORIGIN
- 1 AS Origen Anuncia prefijo con ORIGIN INCOMPLETE
- 2 AS64502 (Cliente) Propaga anuncio, preserva ORIGIN INCOMPLETE
- 3 AS64503 (Cliente/Manipulador) Recibe anuncio, modifica ORIGIN a IGP
- 4 AS64504 (Cliente Común) Recibe dos rutas: una con INCOMPLETE, otra con IGP
- 5 AS64504 (Selección) Elige la ruta con ORIGIN IGP (de AS64503) por ser preferida
- 6 Tráfico El tráfico hacia el prefijo fluye a través de AS64503
Metodología de Detección de Manipuladores
- 1 Cloudflare Anuncia prefijos con ORIGIN IGP/EGP/INCOMPLETE vía Anycast
- 2 Colectores BGP (RIPE RIS, RouteViews,... Capturan mensajes BGP Update
- 3 BGPKIT Toolkit Parseo de MRT dumps para extraer atributos de ruta
- 4 Algoritmo de Atribución Identifica ASes que modifican ORIGIN en AS_PATHs de 2+ saltos
- 5 CAIDA AS Rank Evalúa la centralidad de los ASes manipuladores
- 6 Análisis de Impacto Cuantifica el desvío de tráfico y la ganancia de rutas
| Capa | Tecnología | Justificación |
|---|---|---|
| networking | BGP (Border Gateway Protocol) | Protocolo de enrutamiento inter-AS fundamental para la conectividad global de Internet. |
| data-processing | BGPKIT | Toolkit para el análisis y parsing de datos BGP (MRT dumps, mensajes Update). |
| networking | BGP Anycast | Método de anuncio de prefijos desde múltiples ubicaciones para experimentos de propagación de rutas. |
| observability | RIPE RIS / RouteViews | Colectores públicos de datos de enrutamiento BGP, utilizados para obtener una visión global de la tabla de enrutamiento. |
| observability | BMP (BGP Monitoring Protocol) | Protocolo para monitorear el estado de las tablas de enrutamiento BGP directamente desde routers de borde. |
Trade-offs
Ganancias
- ▲ Atracción de tráfico y generación de ingresos para ASes manipuladores
- ▲ Mayor control sobre el flujo de tráfico para ASes manipuladores
Costes
- ▲ Inconsistencia y falta de equidad en el enrutamiento global
- ▲ Reducción de la previsibilidad y la transparencia del enrutamiento BGP
- ▲ Desvío de tráfico de rutas potencialmente más óptimas o conformes al RFC
Fundamentos Teóricos
El problema de la manipulación del atributo BGP ORIGIN se relaciona con los fundamentos de la teoría de juegos y la economía de redes, donde los participantes (ASes) actúan de manera egoísta para maximizar su beneficio, incluso si esto degrada la eficiencia o la equidad del sistema global. Este comportamiento es análogo a los desafíos observados en sistemas distribuidos donde la confianza y la cooperación son asumidas, pero la realidad operativa introduce incentivos para la desviación.
Conceptualmente, se conecta con la investigación sobre la robustez y la seguridad de los protocolos de enrutamiento, como los trabajos de L. Gao y J. Rexford sobre la estabilidad de BGP y los problemas de convergencia (2001), o estudios más recientes sobre la propagación de rutas maliciosas o incorrectas. La propuesta de deprecación del atributo ORIGIN o la estandarización de su valor a IGP refleja un intento de simplificar el espacio de decisión de BGP para reducir vectores de manipulación, un principio subyacente en el diseño de protocolos distribuidos que buscan la simplicidad para la robustez.