ce este anycast?
Anycast, cunoscut și sub numele de IP anycast, este o tehnică de rețea care permite mai multor mașini să partajeze aceeași adresă IP. Pe baza locației cererii utilizatorului, routerele o trimit la mașină în rețeaua cea mai apropiată. Acest lucru este benefic, deoarece, printre altele, reduce latența și crește redundanța. Dacă un anumit centru de date ar fi deconectat, un IP anycasted ar alege cea mai bună cale pentru utilizatori și le-ar redirecționa automat către următorul centru de date cel mai apropiat. Următoarele prezintă câteva dintre avantajele și dezavantajele care sunt asociate cu configurarea anycast.
Pro
- Viteză. Traficul către un nod anycast va fi direcționat către cel mai apropiat nod, reducând astfel latența dintre client și nodul în sine. Acest lucru asigură că vitezele vor fi optimizate indiferent de locul în care clientul solicită informații.
- redundanță. Anycast îmbunătățește redundanța prin plasarea mai multor servere pe tot globul folosind același IP. Acest lucru permite redirecționarea traficului către următorul server cel mai apropiat în cazul în care un server eșuează sau se deconectează.
- atenuarea DDoS. Atacurile DDoS sunt cauzate de botnet-uri care pot genera atât de mult trafic încât copleșesc o mașină tipică Unicast. Beneficiul de a avea o configurație anycast în această situație este că fiecare server este capabil să „absoarbă” o parte din atac, rezultând o presiune mai mică asupra serverului în general.
- echilibrarea sarcinii. Echilibrarea sarcinii poate fi utilizată în cazul în care există mai multe noduri, toate la aceeași distanță geografică față de cerere. Acest lucru ia unele dintre cerințele de resurse de pe un nod singular și le dispersează pe mai multe noduri.
contra
- dificil de implementat. Implementarea IP anycast este un efort complex care necesită hardware suplimentar, furnizori de încredere în amonte și rutare adecvată a traficului.
Protocolul gateway-ului de frontieră și sistemele autonome
Protocolul gateway-ului de frontieră (BGP) și sistemele autonome (AS) sunt părți integrante în modul în care funcționează IP anycast. BGP schimbă informații de rutare și accesibilitate între AS. Acesta ia decizii de rutare bazate pe căi, politici și seturi de reguli, care este o componentă cheie a ceea ce oferă IP anycast. În cadrul rutării BGP există mai multe rute pentru aceeași adresă IP care indică locații diferite.
un sistem autonom este o rețea unică sau o colecție de rețele administrate de același administrator. Sistemele autonome au fiecare un ASN unic sau un număr de sistem autonom, pentru utilizare în rutarea BGP, deoarece fiecare ASN identifică fiecare rețea de pe internet.
instrumente precum ExaBGP pot fi folosite pentru a transforma mesajele BGP în text sau JSON, care pot fi apoi gestionate prin scripturi simple. Acest lucru permite administratorilor să detecteze și să gestioneze cu ușurință eșecurile de rețea sau de serviciu.
cum funcționează anycast?
după cum sa menționat anterior, anycast direcționează cererile utilizatorilor către cel mai apropiat nod pentru a reduce latența paginii. Ea face acest lucru urmând acești pași.
- mai multe instanțe de servicii anunță că au aceeași adresă IP.
- când browserul utilizatorului face o solicitare, routerul primește acea solicitare și alege pur și simplu ruta cu cea mai scurtă distanță până la cel mai apropiat server pe baza căii AS.
folosind Unicast, care va fi explicat în secțiunea următoare, calea va duce doar la o destinație indiferent de distanță. Folosind anycast, traseul este optimizat datorită faptului că selectează întotdeauna cea mai bună cale. În cazul în care un server este defect, BGP va găsi pur și simplu următoarea cale cea mai bună și va direcționa cererea acolo.
trebuie remarcat totuși că anycast poate fi configurat nu numai pentru a solicita ruta pe baza distanței, ci și a altor factori, de exemplu:
- disponibilitatea serverului
- număr de conexiuni
- timp până la răspuns
alte metode de adresare
există și alte metodologii de adresare pentru direcționarea cererilor utilizatorilor către un anumit punct final de rețea. Acestea includ unicast, multicast, broadcast și geocast. Vom intra în detalii suplimentare pentru fiecare în secțiunile de mai jos.
Unicast
majoritatea Internetului folosește astăzi această metodă. Unicast restricționează o adresă IP să fie asociată la un singur nod special într-o rețea. Aceasta este cunoscută ca o asociere unu-la-unu. Deși o mare parte din internet folosește această metodă, este sub-optimă datorită restricțiilor de a putea asocia o adresă IP doar cu un singur nod.
Multicast
Multicast folosește o asociere unu-la-mulți-de-mulți sau mulți-La-mulți-de-mulți. Multicast permite ca o cerere de la un expeditor să fie direcționată simultan către diferite puncte finale selectate. Acest lucru permite unui client să descarce un fișier în bucăți de la mai multe gazde în același timp (util pentru streaming audio sau video). Multicast este adesea confundat cu anycast, cu toate acestea, principala diferență este că Anycast direcționează expeditorul către un nod specific, chiar dacă mai multe noduri sunt disponibile pentru utilizare.
Broadcast
Broadcast utilizează o asociere unu-la-toate. O datagramă de la un expeditor singular este direcționată către toate punctele finale asociate cu adresa broadbast. Rețeaua reproduce automat datagramele astfel încât să poată ajunge la toți destinatarii din cadrul difuzării, care constă în general dintr-o întreagă subrețea de rețea.
Geocast
Geocast este oarecum similar cu multicast în care cererile de la un expeditor sunt direcționate către mai multe puncte finale simultan, cu toate acestea, diferența este că rețeaua este definită de locația lor geografică.
Anycast și IPv4 vs IPv6
Anycast nu este acceptat oficial în IPv4 cu toate acestea, acest lucru poate fi rezolvat prin utilizarea BGP. În esență, mai multe gazde primesc același IP unicast și rutele sunt anunțate prin BGP. Prin urmare, routerele interpretează acest lucru ca mai multe rute către aceeași destinație, în timp ce, de fapt, sunt direcționate către destinații diferite cu aceeași adresă.
dezavantajul acestei abordări este însă că rețeaua poate efectua ceea ce se numește „comutator POP” care schimbă pachetele de rutare în cazul în care există congestie sau modificări în rețea.
IPv6 pe de altă parte, sprijină în mod explicit anycast. Routerele IPv6 de obicei nu vor distinge un pachet anycast de un pachet unicast prin rețea, deși este necesară o manipulare specială de la routerele din apropierea destinației.
mai mult, același proces utilizat în IPv4 poate fi utilizat și în IPv6. Această metodă nu depinde de routerele Anycast-aware, cu toate acestea, veți întâmpina aceleași probleme ca cele discutate mai sus.
rezumat
este clar că anycast este o tehnică puternică pentru, printre altele, reducerea latenței paginii și atenuarea atacurilor. Deși este un efort complex de implementat, câștigul este vast atât pentru utilizatori, cât și pentru furnizorii de servicii.
KeyCDN este bucuros să ofere anycast pentru a ajuta la îmbunătățirea eficienței globale a serviciilor pentru clienții noștri.