Esta semana, durante *RIPE 91*, se presentó una charla muy interesante sobre el atributo *BGP ORIGIN*, su uso y la distribución de sus tres posibles valores en las tablas de enrutamiento global.
El atributo *ORIGIN* es un *atributo “well-known mandatory”* definido en el RFC 4271. En el proceso de selección de rutas de BGP se evalúa *después* de atributos más determinantes como LOCAL_PREF y AS_PATH. Sin embargo, cuando varias rutas empatan en los criterios anteriores, el valor de ORIGIN puede ser *decisivo* para determinar la mejor ruta.
Sus posibles valores son:
-
*IGP (0):* indica que el prefijo se originó dentro del propio AS (por ejemplo, mediante el comando network en BGP). -
*EGP (1):* originado a través del antiguo protocolo EGP, hoy prácticamente en desuso. -
*INCOMPLETE (2):* aprendido por otros medios, por ejemplo al redistribuir rutas desde OSPF u otro protocolo hacia BGP.
Durante la presentación *“BGP Origin Type”*, *James Bensley* (Inter.link) explicó que los *principales carriers de tránsito* están reescribiendo el atributo ORIGIN de INCOMPLETE a IGP para que sus rutas sean más preferidas y así atraer más tráfico hacia sus redes. Comentó que, como proveedor de tránsito, *Inter.link había intentado resistirse a esa práctica*, pero al ver que el problema persistía decidió *hablar del tema públicamente* en la comunidad.
Al contactar a algunos de esos operadores, varios justificaban el cambio a pesar de lo indicado en el *RFC 4271, sección 5.1.1*, que establece:
“Its value SHOULD NOT be changed by any other speaker.”
Sin embargo, estos ISPs argumentaron que la expresión *“SHOULD NOT”* permite excepciones cuando existe una justificación operacional, alegando que la “normalización” del atributo mejora la estabilidad y la predictibilidad del enrutamiento. Bensley también mencionó el concepto de *“convergencia estratégica”*, señalando que, si todos los proveedores adoptan el mismo comportamiento, el atributo ORIGIN perdería su valor práctico.
Motivada por esta discusión, realicé un análisis de las *tablas de rutas filtrando por prefijos de Chile*, y encontré que cerca del *15 % de los prefijos IPv4* y el *27 % de los prefijos IPv6* se anuncian con ORIGIN = INCOMPLETE. A continuación, algunos resultados agrupados por ASN:
IPv4 ASN Cantidad ---------------------- 27651 307 27901 157 6429 101 20191 45 27995 40 6535 38
IPv6 ASN Cantidad ---------------------- 27651 354 64610 35 64139 12 27901 9 272022 4
Finalmente, me gustaría conocer su opinión: ¿Deberíamos en la comunidad seguir la tendencia descrita y "normalizar" el atributo ORIGIN a IGP por razones operacionales, o mantenernos fieles al principio del RFC 4271 para conservar la transparencia en el enrutamiento?