Border Gateway Protocol, skraćeno BGP omogućava brz pristup najudaljenijim dijelovima interneta, no također može uz uzrokovati havariju poput one kojoj smo svjedočili u slučaju Facebooka
Facebook je ovog ponedjeljka u cijelosti sišao s globalne mreže, povukavši za sobom Instagram, WhatsApp, kao i niz drugih internetskih stranica. Velik broj ljudi je za pad optužio BGP, odnosno Border Gateway Protocol. Glasine su potvrdili i neki insajderi na Facebooku i naravno - dobri stari postulat: 'Ili je DNS ili je BGP'.
Što je to, pobogu, BGP?
BGP je, bez da kompliciramo, jedan od internetskih sustava koji podacima omogućavaju čim brži put od i do vašeg računala. S obzirom da na internetu imamo hrpe pružatelja usluga, routera i servera koji služe da biste vi vaši podaci mogli otići do, primjerice, Facebooka - postoji velik broj različitih ruta koje će vaš paket podataka uzeti. BGP-ov je zadatak osigurati da oni putuju najboljim putem.
BGP bi se, ako ste vizualni tip, najlakše mogao opisati kao mapa na kojoj stalno radi hrpa ljudi koju ju nadograđuju ne bi li vam pokazali put to YouTubea ili Facebooka, objašnjava Verge.
Kad govorimo o BGP-u, internet moramo razdvojiti na nekoliko velikih mreža poznatih kao autonomni sustavi. Zamislite ih kao masivne razdvojene otoke - svakog od njih kontrolira jedan vladar koji bi mogao biti pružatelj usluga poput Hrvatskog Telekoma, kompanija poput Facebooka ili organizacija poput vlada ili velikih učilišta. Posao izrade mostova između svakog od tih otoka bio bi složen zadatak, a BGP-ov je zadatak reći vam koji od tih otoka (autonomnih sustava) morate posjetiti da biste došli do vašeg odredišta.
S obzirom da se internet cijelo vrijeme mijenja, ove mape se moraju nadograđivati - nitko ne želi da ga pružatelj pošalje starom cestom koja ne vodi do Googlea. Upravo zato jer bi ažuriranje tih mapa interneta tražilo velik pothvat, autonomni sustavi međusobno dijele male izmjene. Povermeno će razgovarati sa 'susjednim otocima' ne bi li vidjeli jesu li se nadogradili te sukladno tome - ažurirati svoju mapu.
Skreni prema lijevo u provaliju
Uzmemo li usporedbu s mapama, vrlo je lako zamisliti kako je nešto pošlo po zlu. Kad su korisnici po prvi put dobili pristup GPS-u, šale su obično spominjale let s litice ili gubljenje u pustinji, no ista stvar može se dogoditi BGP-u. Ako netko pogriješi, promet će otići u nepoželjnom smijeru. Ako se taj problem ne riješi odmah, ostali će ga kopirati na svoje mape i rezultat će biti kaos.
Zadatak BGP-a je napraviti najbrži i najbolji put od vas do internetske stranice. Nažalost, najbrži put i dalje ne mora biti najbolji - jedan od faktora mogla bi biti i cijena, s obzirom da neke mreže naplaćuju drugima ako žele provesti promet kroz njih - zamislite ovo kao cestarine. Još jedan razlog zašto je ažuriranje 'mape' važno je stalno mijenjanje lokacije internetskih stranica - ponekad se prebace na drugog pružatelja usluge, odu od jedne zemlje do druge i na internetu je da se s time svime jednostavno - snađe.
Facebook - Sam svoj majstor
Umjesto da se oslanja samo na globalni, Facebook je odlučio napraviti svoj interni BGP sustav koji mu dozvoljava, njihovim riječima, 'brze inkrementalne nadogradnje'. Ovaj interni sustav napravljen je za lakšu komunikaciju između Facebookovih servera te je, prema analitičaru Bryanu Krebsu, mogao uzrokovati pad sustava 'rutinskom nadogradnjom BGP-a'.
U službenoj Facebookovoj objavi pisalo je da su problem uzrokovali 'promjene konfiguracije na ruterima koji koordiniraju mrežni promet između naših podatkovnih centara'. Ta promjena dovela je do 'efekta domina koji je utjecao na način na koji Facebookovi serveri komuniciraju, što je rezultiralo općim zastojem svih njihovih usluga'. Čini se da je, prema ovome, Facebook pao zato jer je naišao na problem pri internoj komunikaciji, a ne prema komunikaciji sa vanjskim svijetom.
Koje veze DNS ima sa svime ovim?
DNS vam objasni kamo idete, a BGP vam objasni kako tamo doći. DNS je metoda kojom računala znaju na kojoj se internetskoj adresi nalazi internetska stranica ili neki drugi resurs, no to znanje nije od nikakve koristi - ako pitate prijatelja gdje mu je kuća, i dalje ćete morati upaliti GPS da biste do nje došli.
Što je pošlo po zlu sa BGP-om?
Kratka verzija? Puno toga. Prema Cloudflareu, dva istaknuta incidenta uključuju turskog pružatelja usluga koji je 2004. slučajno preusmjerio sav internet na sebe, kao i pakistanskog koji je, misleći da blokira YouTube samo u svojoj zemlji, isti uspio blokirati na cijelom planetu. BGP se, podsjećamo, može širiti s jednog autonomnog sustava na drugi te se brzo ažurirati (što je, usput, jedna od stvari koje ga čine izvrsnim), jedna lokalizirana pogreška može rezultirati globalnim krahom. Opći kaos može uzrokovati i grupa hakera koja se, kao što se do dogodilo 2018. domogla Amazonovog DNS-a i pokrala tisuće dolara u Etheriumu hakiranjem BGP servera odovjenih pružatelja usluga. Amazon nije pretrpio napad - no promet koji je trebao ići prema njemu išao je nekamo drugdje.
I da, prije nego što pitate, moguće je izbrisati cijelu uslugu s interneta jednom lošom nadogradnjom BGP-a. Postoji razlog zbog kojeg, naime, ovaj sustav mnogi nazivaju izolir trakom interneta.
Ok - što je onda bilo sa Facebookom?
Čini se da su Facebookovi serveri u nekom trenu rekli svima ostalima da ih maknu s karte. Facebook je dao inicijalno izvješće, ali je također bio vrlo tajnovit oko sočnijih detalja. Moguće je da kompanija uskoro planira izdati detaljnije objašnjenje, kao što je jednako moguće da će o cijeloj stvari službeno šutiti do sljedećeg globalnog izumiranja.
Cloudflareov tehnološki direktor tvrdi da je usluga pokrenula hrpu BGP nadogradnji od kojih je većina brisala 'staze' koje ostatak interneta vode do Facebooka nekoliko trenutaka prije nego što je nastupio pad, dok su istu stvar potvrdile kompanije poput Fastlyja.
Kako je Facebook ispravio problem?
Kratka verzija? Jako teško. Facebook je morao ispravkom osigurati da cijeli svijet dobije vrlo jasnu i vrlo točnu 'rutu' do njegovih servera te omogućiti da te mape vide apsolutno svi. Problem je, doduše, što velik broj zaposlenika koji su to trebali odraditi nisu imali dovoljno ovlasti - štoviše, oni koji su imali ovlasti za jedan dio nisu mogli komunicirati sa onima koji imaju ovlasti za drugi, što je dovelo do situacije gdje su skupine inženjera morali, piše Verge, doslovno otići do Facebookovog podatkovnog centra u Kaliforniji kako bi taj problem pokušali ispraviti.
Mala teorija zavjere za kraj...
Mnogi inkvizitivni internauti povukli su podudarnost pada Facebooka sa objavom zvizdašice koja je na televiziji govorila o Facebookovom prljavom rublju. Također je, naravno, vrlo moguće da je za cijeli pad sustava odgovrna jedan vrlo, vrlo nesretan član Facebookovog IT sektora.
Ako ikom to išta znači, Facebookovo objašnjenje i dalje je 'neispravna promjena konfiguracije', a ne zlokobni hakeri.