Facebooks BGP-maveplasker skabte ringe i hele verdens internet

6. oktober 2021 kl. 03:4510
Facebooks BGP-maveplasker skabte ringe i hele verdens internet
Illustration: Jasn | Flickr.
Brugerne af en lang række tjenester har rejst røde flag. På fascinerende vis er det gået op for hele verden, hvor stor en infrastruktur, Facebook driver, når deres tjenester ellers er oppe.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Facebook skabte røre i BGP-andedammen, da konglomeratet med en fejlagtig opdatering praktisk talt fik fjernet sine egne tjenester Facebook, Messenger og Whatsapp fra internettet.

Ingen vidste i flere timer, hvor på nettet, tjenesterne kunne findes, og det forhindrede ironisk nok Facebook i at opdatere systemet på ny og rette op på fejlen.

Teknisk set låste Facebook sig selv ude - og de kunne ligesom resten af verden ikke finde hoveddøren. De folk, der vidste, hvordan problemet skulle fikses kunne ikke tilgå serverne, der efter sigende geografisk set stod et andet sted end teknikerne.

BGP

BGP-protokollen bygger i udgangspunktet på, at man som aktør på nettet stoler på det, andre melder ud.

BGP forsøger altid at definere den korteste vej for en given datapakke.

Når en stor del af netværket pludselig forsvinder, øger det presset på den tilbageværende infrastruktur, der både skal behandle flere forespørgsler og prøve at finde de 'forsvundne' slutpunkter.

Påvirkede alle andre - og Google

Forestil dig at alle veje til København forsvandt midt i myldretiden. Interessen for at finde nye veje til hovedstaden ville være enorm, og den samme interesse oplevede alle dem, hvis DNS-servere stadig var online på egen krop.

Artiklen fortsætter efter annoncen

Googles DNS-server, 8.8.8.8, oplevede fra det ene øjeblik til det andet svartider der nærmede sig ti gange det normale niveau omkring 30-40 millisekunder.

»Det er utroligt at én aktør kan påvirke alle andre på nettet så meget. Det kan godt være, at det er noget, vi der arbejder med netværk er nødt til at kigge på, når vi ved, præcis hvad der er sket,« siger Henrik Kramselund Jereminsen, der driver konsulentforretningen Zencurity.

Også adblocker-selskabet Adguard blev påvirket. Her fortæller en af folkene bag virksomheden hvorfor og hvordan nedbruddet påvirkede dem:

Danske Teleselskaber ramt af dønninger

Ser man på siden downdetector.com, der baseret på indberetninger overvåger driftsstabiliteten på alverdens tjenester, tegner der sig et tydeligt billede. Næsten alle tjenester får ifølge tjenesten problemer fra det øjeblik, Facebook bøffer i deres BGP-opsætning og fjerner sig selv fra vores digitale verdenskort.

Det gælder også de danske tele- og internetoperatører, som Version2 har rakt ud til. Og selvom det ikke umiddelbart har ført til større driftsforstyrrelser, tændte hændelsen en advarselslampe hos Telia, der er den eneste af udbyderne, der er vendt tilbage inden Version2’s deadline.

»Vores kontrolcenter har registreret en DNS-relateret forstyrrelse, der dog ikke har haft indvirkning på den generelle brugeroplevelser/hastighed etc. Enkelte kan have oplevet en anelse forringet performance i form af lidt længere svartider,« skriver teleselskabet i en mail til Version2.

Dette kan være blevet yderligere forstærket af ‘flere brugeres gentagne, forgæves forsøg på at tilgå Facebook,’ uddyber Telia.

Interessant nok faldt den øvrige trafik i udbyderens netværk i perioden:

»Sammenlignet med sidste mandag oplevede vi i går en generel nedgang i trafikken for så vidt angår både data, tale og sms.«

Facebooks automatiserede BGP

Det er velkendt, at Facebook automatiserer selskabets implementering af BGP-opdateringer. Selskabet fortalte selv om dette på en Usenix-konference:

»We also describe our in-house BGP software implementation, and its testing and deployment pipelines. These allow us to treat BGP like any other software component, enabling fast incremental updates. Finally, we share our operational experience in running BGP and specifically shed light on critical incidents over two years across our data center fleet. We describe how those influenced our current and ongoing routing design and operation.«

Kort fortalt at Facebook automatiserer BGP-opdateringer som det også er tilfældet for store dele af selskabets øvrige kodebase.

Henrik Kramselund Jereminsenfortæller, at denne form for automatisering er nødvendig, men også at det kan gå grueligt galt, hvis uheldet er ude.

»Laver man en fejl, bliver den pumpet gennem systemet i realtid,« siger Henrik Kramselund Jereminsen. For at undgå det, har han altid en vej ind til sine services, han ikke bruger til andet end recoveries, og som ikke rammes af denne slags fejl.

Måtte Facebook bryde ind i egne servere?

Rygterne lyder, at Facebook fysisk måtte tiltvinge sig adgang til serverens egne servere - for DNS-mæssigt var de ikke på nettet.

Hvad enten det er sandt eller ej skriver Facebook selv, at de først får løst problemet, da et hold Facebook-ansatte får fysisk adgang til deres datacenter i Santa Clara.

Hele sagen tydeliggør, hvor centraliseret internettet er ved at blive og at det kan have vidtrækkende konsekvenser, hvis nogle af dets bredere skuldre pludselig ikke løfter i nogen tid. Eller som New York Times skrev: Facebook’s apps gik ned. Og verden så, hvor meget der drives af dem.

10 kommentarer.  Hop til debatten
Denne artikel er gratis...

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.

Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.

Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.

Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
10
11. oktober 2021 kl. 10:15
9
7. oktober 2021 kl. 16:47

"Eller som New York Times skrev: Facebook’s apps gik ned. Og verden så, hvor meget der drives af dem."

Som en der ikke bruger hverken FB eller deres app (og aktivt blokere dem over alt), lagde jeg ikke rigtigt mærke til at der skulle være noget galt overhovedet, bruger i forvejen 1.1.1.1 (cloudflare) som DNS, de var ikke nede, bare lidt ekstra latency, jeg ikke rigtigt lagde mærke til, lidt sjovt at se et par dage efter at mange har lagt så mange fjer i den samme kurv, at de var ramt massivt af det.

Fatter stadig ikke folk gidder bruge FB/deres andre apps, men må de jo selv om :)

8
7. oktober 2021 kl. 14:18

... en grundlæggende overflødig service ...

Internettet handler ikke rigtigt om livsnødvendige ting. I sidste ende har vi brug for tag over hovendet, mad på bordet, et varmt bad om morgenen og god rødvin. Alt andet er grundlæggende overflødigt. Men derfor vil jeg ikke undvære det alligevel ...

7
7. oktober 2021 kl. 13:33

Vi har idag gjort os voldsomt "afhængige" af en grundlæggende overflødig service som FB, når dette udfald i den grad kan præge hele Nettet og være en nyhed af så stor interesse ;-)

6
6. oktober 2021 kl. 13:07

Facebook's DNS servere er faktisk fordelt på flere AS'er. Problemet var at DNS serverne holder øje med om de kan kommunikere med en intern service - hvis ikke, så antager de at der er "noget galt" med sig selv, og fjerner automatisk DNS-serverens AS med en BGP opdatering. Måske en dårlig ide, men det er jo en måde at få stoppet trafik til en node som er nede, men hvor hele servicen har et redundant setup.

Men de fik lagt deres interne netværk ned, derfor fejlede tjekket på alle DNS serverne, som så selvfølgelig trak alle BGP annonceringer tilbage. Resultat: Facebook afkoblet fra Internet.

Deres out-of-band management afhang så af at DNS virkede, og var dermed også sat ud af spillet.

Vældig interessant blog post fra deres engineering team om sagen: https://engineering.fb.com/2021/10/05/networking-traffic/outage-details/

5
6. oktober 2021 kl. 12:59

Jeg er sikker på

Hvad baserer du din skråsikkerhed på? Jeg kan ikke finde noget i artiklen, der angiver hvor kraftigt Version2 har flagret med armene.

4
6. oktober 2021 kl. 12:59

Mange af de hårdest ramte, på downdetector.com var firmaer, hvor folk kan bruge deres FB konto, som login, her var der nu en masse kunder, som ikke kunne komme igennem, fordi FB var ude af ligningen.

En sjov ting var, at mange dagligdags brugere meldte, at internettet var gået i stykker, fordi en FB tjeneste er deres startside i div. browsere, det oplevede vi sidst, da der var en fejl på Googles hjemmeside, for nogle år siden.

Lidt trist, at så mange forbinder internettet med en enkelt funktion / hjemmeside, og skræmmende at ét firma sidder på så meget magt over resten af nettet.

3
6. oktober 2021 kl. 12:40

Det gælder også de danske tele- og internetoperatører, som Version2 har rakt ud til. Og selvom [....] Telia, der er den eneste af udbyderne, der er vendt tilbage inden Version2’s deadline.

Jeg er sikker på, at flere udbydere var vendt tilbage inden deadline, hvis Version2 havde "kontaktet", "henvendt sig til" eller ligefrem "spurgt" dem. På dansk betyder "række ud" ikke andet end at flagre med armene uden nødvendigvis at få forbindelse til målet.

2
6. oktober 2021 kl. 12:16

Og så skal man i højere grad til at passe på med afhængigheder på ens websider.

1
6. oktober 2021 kl. 11:58

a) Out-of-band-adgang til kritisk udstyr b) Fordel autoritative navneservere på flere BGP-AS

Facebook er store nok til at de kan lave en separat AS til nogen af deres nameservere, placeret rundt omkring på uafhængige forbindelser.

Dem af os som ikke er kontrolfreaks kan opnå det samme (faktisk bedre) ved at delegere til gratisdns.dk i stedet for selv at køre alle autoritative servere.