Ce este BGP și de ce depinde Internetul de el?
Publicat: 2022-01-29Întreruperea de șase ore a Facebook din 4 octombrie 2021 i-a făcut pe oameni să se chinuie să afle exact ce se întâmplă. O parte a răspunsului constă într-o parte integrantă a internetului numită Border Gateway Protocol sau BGP.
Oricum, ce este BGP?
Mai multe metafore foarte potrivite au fost folosite în articole recente pentru a explica BGP. Oamenii l-au comparat cu orice, de la un controlor de trafic aerian la o hartă a internetului în continuă evoluție. A fost numit chiar „banda adezivă a internetului”. Și sunt în regulă.
BGP este protocolul care spune cererilor de date ce cale trebuie să urmeze pentru a ajunge la server. Dacă, de exemplu, vă conectați la Facebook sau deschideți aplicația pentru a vă deschide feedul, BGP este cel care vă ghidează pachetul de date pe calea cea mai rapidă pentru a prelua acele date pentru dvs. de pe serverele Facebook.
Cloudflare descrie BGP ca fiind „serviciul poștal al internetului”, prin aceea că alege cea mai rapidă și mai eficientă rută pentru ca cererile dvs. să ajungă la serverul dorit. BGP analizează toate rutele disponibile pe care le-ar putea lua datele, apoi alege ceea ce consideră că este cel mai bun.
Adesea, asta va însemna direcționarea datelor prin sistemele autonome care alcătuiesc internetul în ansamblu. BGP își dă seama ce sisteme vorbesc între ele, apoi trimite datele dumneavoastră pe calea cea mai rapidă dintre ele, astfel încât să poată ajunge la destinația potrivită.
Continuând metafora oficiului poștal, fiecare sistem autonom de pe internet este ca o sucursală a oficiului poștal. Chiar dacă orașul tău ar putea avea mii de cutii poștale, fiecare scrisoare trebuie să treacă prin oficiul poștal înainte de a fi livrată.
Exemple de sisteme autonome de pe internet includ:
- Un furnizor de servicii de internet (ISP) precum Comcast, AT&T, Verizon etc.
- O companie ca Facebook
- Alte organizații mari, cum ar fi guverne sau universități
Mitchell Clark, scriind pentru The Verge , aseamănă BGP cu o hartă care se actualizează constant și cu sistemele autonome cu insulele de pe harta respectivă. Deoarece există prea multe „insule” pe internet pentru a construi punți între fiecare și fiecare, BGP vă spune unde sunt deja punțile.
Există, de fapt, două tipuri de BGP:
- BGP extern (eBGP) : protocolul utilizat de internet în general. În metafora oficiului poștal, acest lucru este asemănător cu transportul internațional.
- BGP intern (iBGP) : un protocol BGP intern pe care sistemele autonome pot alege să-l folosească pentru a ruta date în propriile rețele. Acest lucru este similar cu serviciile de corespondență din diferite țări.
Nu este necesar să aveți iBGP configurat pentru a accesa eBGP-ul internetului mai larg, dar unele sisteme autonome, cum ar fi marile companii de tehnologie, folosesc oricum iBGP pentru a direcționa traficul intern.
Cum funcționează BGP și DNS împreună?
BGP este ceea ce face posibilă rutarea datelor pe internet, ceea ce face ca acesta să fie adezivul – sau banda adezivă – care ține internetul împreună. O parte din modul în care funcționează BGP este că face publicitate rutelor viabile pentru date. Dacă BGP nu mai funcționează, acele rute nu pot fi găsite și dispar de pe internet, așa că datele nu au încotro.
Asta face parte din ceea ce s-a întâmplat la Facebook. Vicepreședintele Facebook pentru infrastructură, Santosh Janardhan, a spus astfel în postarea sa de blog, explicând mecanismul întreruperii:
„Una dintre sarcinile efectuate de facilitățile noastre mai mici este să răspundă la interogările DNS. DNS este agenda de adrese a internetului, permițând ca numele simple de web pe care le introducem în browsere să fie traduse în adrese IP specifice serverului. Aceste interogări de traducere primesc răspuns de către serverele noastre de nume autorizate care ocupă ele însele adrese IP bine cunoscute, care, la rândul lor, sunt anunțate către restul internetului printr-un alt protocol numit protocolul gateway de frontieră (BGP).”
Cu alte cuvinte, protocolul DNS (Domain Name System) al internetului funcționează ca o listă de adrese, iar BGP este serviciul poștal care trimite poșta către acele case. Poșta nu poate fi livrată dacă aveți o adresă, dar nu aveți indicații către casă.
Janardhan continuă:
„...Serverele DNS dezactivează acele reclame BGP dacă ei înșiși nu pot vorbi cu centrele noastre de date, deoarece acesta este un indiciu al unei conexiuni nesănătoase la rețea. În recenta întrerupere, întreaga coloană vertebrală a fost scoasă din funcțiune, făcând aceste locații să se declare nesănătoase și să retragă acele reclame BGP. Rezultatul final a fost că serverele noastre DNS au devenit inaccesibile, deși erau încă operaționale. Acest lucru a făcut imposibil pentru restul internetului să ne găsească serverele.”
Cum poate BGP să încurce Internetul
Mai mulți factori pot afecta traseul pe care îl parcurg datele pe harta internetului. Costul poate fi unul, deoarece unii furnizori taxează pentru accesul la sistemele lor. Natura în schimbare a internetului în sine este alta.
Sistemele autonome și site-urile web se pot muta sau pot fi eliminate în întregime de pe harta internetului. De asemenea, pot schimba sau adăuga furnizori de servicii – un exemplu ar putea fi un colegiu care schimbă ISP-uri de la Comcast la AT&T. BGP trebuie să actualizeze în mod regulat rutele pe care le pot parcurge datele pentru a se asigura că acestea rămân la zi și că cererea dvs. nu se află într-un punct mort, în stilul Wile E. Coyote.
Sistemele autonome rulează actualizări BGP fără incidente tot timpul. Dar când greșesc, pot greși foarte mult. În articolul lor, Clark explică că, deoarece BGP este proiectat să se răspândească rapid de la un sistem la altul, o eroare poate avea un efect de undă precum cel pe care l-am văzut la Facebook.
Remedierea erorilor
Potrivit Cloudflare, o actualizare proastă a BGP din 2004 de către ISP turc TTNet a anunțat temporar TTNet drept cea mai bună destinație pentru tot traficul de pe internet. Acest lucru a dus la probleme de conexiune pentru o zi întreagă până când problema a fost rezolvată.
Incidente ca acestea indică anumite puncte slabe ale BGP, și anume că sistemele autonome care alcătuiesc internetul în general vor avea încredere implicit în ceea ce BGP le spune că este cea mai bună cale pentru date. Deși erorile nu se întâmplă des, unii au susținut necesitatea de a face BGP mai sigur. O actualizare la această scară, totuși, ar necesita ca fiecare sistem autonom de pe internet să se actualizeze odată. Asta înseamnă că implementarea unor modificări majore ale protocolului ar fi, cel puțin, o provocare.
BGP este doar unul dintre câteva elemente care fac ca internetul să funcționeze. Înțelegerea fundației vă poate ajuta să navigați și să înțelegeți întreruperile și alte probleme în viitor.
LEGATE: Cum funcționează internetul?