Topaz: DNS autoritativo declarativo y verificable a escala de CDN
Detalles
ACM SIGCOMM 2024 Conference, Sydney NSW Australia, August 4-8, 2024.
Resumen
Hoy en día, cuando un servidor de nombres de un CDN recibe una consulta DNS para un dominio de un cliente, decide qué dirección IP del CDN debe devolver en función de objetivos de nivel de servicio como la gestión de la carga o el mantenimiento del rendimiento, pero también necesidades internas como las pruebas de división. Muchas de estas decisiones se toman a priori por sistemas de asignación que generan imperativamente mapas de consulta DNS a dirección(es) IP. Desafortunadamente, las asignaciones imperativas ocultan el comportamiento del servidor de nombres, especialmente cuando objetivos diferentes entran en conflicto.
En este artículo presentamos Topaz, una nueva arquitectura de servidor de nombres autoritativo para CDNs anycast que codifica los objetivos DNS como programas modulares declarativos llamados políticas. Los servidores de nombres ejecutan las políticas directamente en respuesta a consultas en vivo. Para entender o cambiar el comportamiento DNS, los operadores simplemente leen o modifican la lista de programas de políticas. Además, porque las políticas están escritas en un lenguaje específico de dominio formalmente verificado (topaz-lang), Topaz puede detectar conflictos de políticas antes de la implementación. Topaz maneja ~1M de consultas DNS por segundo en un CDN global, decidiendo dinámicamente direcciones para millones de nombres en seis continentes. Evaluamos Topaz y mostramos que las sobrecargas de latencia que introduce son aceptables.