El incidente en Cloudflare fue causado por una interacción compleja entre una actualización de firmware, el comportamiento por defecto del UEFI y la automatización de arranque de red. La causa raíz principal fue la búsqueda lineal y exhaustiva de interfaces de arranque de red por parte del firmware UEFI después de una actualización. Cada intento fallido de arranque de red (IPv4 HTTPS, IPv4 iPXE) tenía un timeout de aproximadamente cinco minutos, lo que resultaba en una penalización de 20 minutos por cada ciclo de arranque hasta que se encontraba la interfaz IPv6 HTTPS correcta. Esta penalización se multiplicaba en los procesos de actualización de firmware que requerían múltiples reinicios secuenciales, extendiendo el tiempo total de actualización a casi cuatro horas por servidor.
Las salvaguardas existentes fallaron porque la lógica de arranque de red del firmware no estaba optimizada para el entorno de Cloudflare. La automatización de Cloudflare esperaba un comportamiento de arranque rápido y predecible, pero el firmware, por defecto, realizaba una búsqueda exhaustiva. Además, la capacidad de configurar programáticamente el orden de arranque estaba limitada por peculiaridades del firmware (carga perezosa de estructuras de datos, configuraciones inmutables del vendor) y la falta de estandarización en los strings de identificación de las NICs entre diferentes vendors. Esto impidió que la automatización declarara directamente la interfaz de arranque correcta, forzando la costosa búsqueda lineal.
La cascada de fallo se manifestó en la ralentización masiva de los despliegues de firmware, el aumento de las ventanas de mantenimiento, la necesidad de intervención manual por parte de los ingenieros y la ineficiencia en la puesta en marcha de nueva capacidad. La falta de visibilidad y control programático sobre el proceso de arranque UEFI fue un factor clave, ya que la automatización no podía influir en la decisión del firmware sobre qué interfaz de red usar primero. La interacción con los vendors para modificar el firmware y la adaptación de las herramientas internas fueron cruciales para resolver el problema, destacando la importancia de la colaboración con los proveedores de hardware en entornos de infraestructura bare-metal a gran escala.