Compania Cloudflare, o rețea de livrare a conținutului pentru 27 de milioane de resurse online și gestionează 13% din traficul celor mai mari 1000 de site-uri, detaliile incidentului care a dus la întreruperea activității multor segmente ale rețelei Cloudflare timp de 27 de minute, inclusiv cele responsabile de livrarea traficului în Londra, Chicago, Los Angeles, Washington, Amsterdam, Paris, Moscova și Sankt Petersburg. Problema a fost cauzată de o modificare incorectă a configurației pe un router din Atlanta. În timpul incidentului, care a avut loc pe 17 iulie între 21:12 și 21:39 (UTC), volumul total de trafic în rețeaua Cloudflare a scăzut cu aproximativ 50%.
În timpul efectuării lucrărilor tehnice, dorind să reducă o parte din trafic de pe unul dintre backbone-uri, inginerii au șters o linie din blocul de setări care definea lista de rute acceptate prin backbone, filtrate conform listei specificate de prefixe. Ar fi fost corect să dezactiveze întregul bloc, dar din greșeală a fost eliminată doar linia cu lista de prefixe.
{master}[edit]
atl01# show | compare
[edit policy-options policy-statement 6-BBONE-OUT term 6-SITE-LOCAL from]
! inactive: prefix-list 6-SITE-LOCAL { … }
Conținutul blocului:
from {
prefix-list 6-SITE-LOCAL;
}
then {
local-preference 200;
community add SITE-LOCAL-ROUTE;
community add ATL01;
community add NORTH-AMERICA;
accept;
}
Din cauza eliminării legăturii cu lista de prefixe, restul blocului a început să se aplice tuturor prefixelor, iar routerul a început să împrăștie toate rutele sale BGP către routerele altor backbone-uri. Din întâmplare, noile rute aveau o prioritate mai mare (local-preference 200) în comparație cu prioritatea (100) setată pentru celelalte rute de sistemul automat de optimizare a traficului. Astfel, în loc să elimine rutarea de pe backbone, a avut loc o scurgere de rute BGP cu prioritate mai mare, ceea ce a dus la redirecționarea traficului destinat altor backbone-uri spre Atlanta, provocând o suprasarcină a routerului și colapsul unei părți a rețelei.
Pentru a preveni apariția unor incidente similare în viitor, luni sunt planificate câteva modificări în setările backbone-urilor Cloudflare. Se va adăuga o restricție pentru sesiuni BGP referitoare la numărul maxim de prefiksuri (maximum-prefix), care va bloca backbone-ul problemat în cazul în care sunt direcționate prea multe prefiksuri prin acesta. Dacă această restricție ar fi fost implementată anterior, problema considerată ar fi dus la deconectarea backbone-ului din Atlanta, dar nu ar fi afectat funcționarea întregii rețele, deoarece rețeaua Cloudflare este proiectată pentru a suporta defecțiuni ale backbone-urilor individuale. Dintre modificările deja acceptate, se remarcă revizuirea priorităților (local-preference) pentru rutele locale, ceea ce va împiedica un router să influențeze traficul în alte părți ale rețelei.
Sursa: opennet.ro
