Anycast vs. Unicast: čo si vybrať v každom prípade

O Anycast-e určite počuli mnohí. Pri tejto metóde sieťového adresovania a smerovania je jeden IP adresa priradená viacerým serverom v sieti. Tieto servery môžu byť dokonca vzdialené od seba v rôznych dátových centrách. Myšlienka Anycastu spočíva v tom, že v závislosti od polohy zdroja požiadaviek sa dáta posielajú na najbližší (podľa topológie siete, presnejšie — protokolu smerovania BGP) server. Takto je možné znížiť počet sieťových skokov (hop) a oneskorenie (latency).

V podstate sa vyhlasuje jedna a tá istá trasa z viacerých dátových centier po celom svete. Takto sú zákazníci nasmerovaní do „najlepšieho“ a „najbližšieho“ dátového centra podľa trás BGP. Prečo teda Anycast? Prečo používať Anycast namiesto Unicastu?

Anycast vs. Unicast: čo si vybrať v každom prípade
Unicast skutočne vyhovuje pre webovú stránku s jedným webovým serverom a umierneným objemom prevádzky. Avšak ak má služba milióny sledovateľov, zvyčajne využíva množstvo webových serverov, z ktorých každý má rovnakú IP adresu. Tieto servery sú geograficky rozložené pre optimálne spracovanie požiadaviek.

V takomto scenári Anycast prinesie zlepšenie výkonu (prevádzka je smerovaná k používateľovi s minimálnym oneskorením), zabezpečí spoľahlivosť služby (vďaka záložným serverom) a vyváženie záťaže — smerovanie na niekoľko serverov účinne rozdelí záťaž medzi nimi, čím zlepší rýchlosť fungovania webovej stránky.

Operátori ponúkajú zákazníkom rôzne typy vyváženia záťaže na základe Anycastu a DNS. Zákazníci môžu určiť IP adresy, na ktoré budú požiadavky smerované v závislosti od geografickej polohy stránky. To umožňuje flexibilnejšie rozdeľovanie požiadaviek používateľov.

Predpokladajme, že je niekoľko lokalít, medzi ktorými je potrebné rozložiť záťaž (užívateľov), napríklad e-shop s 100 000 požiadavkami denne alebo populárny blog. Na obmedzenie regiónu, z ktorého používatelia vstupujú na konkrétnu lokalitu, je možné využiť možnosť Geo Community. Umožňuje to obmedziť región, v rámci ktorého operátor oznámi trasu.

Anycast vs. Unicast: čo si vybrať v každom prípade

Anycast vs. Unicast: čo si vybrať v každom prípade
Anycast a Unicast: rozdiely

Anycast sa často využíva v aplikáciách, ako sú DNS (systém doménových mien) a CDN (siete na distribúciu obsahu), čím umožňuje rozhodovanie o smerovaní, ktoré zvyšuje výkonnosť siete. Siete na distribúciu obsahu využívajú Anycast, pretože čelí veľkým objemom prenosu, a Anycast v tomto prípade poskytuje niekoľko výhod (o ktorých sa dozviete nižšie). V DNS Anycast umožňuje výrazne zvýšiť úroveň spoľahlivosti a odolnosti služby.

Anycast vs. Unicast: čo si vybrať v každom prípade
V Anycast IP, pri použití BGP, existuje niekoľko ciest k konkrétnemu hostiteľovi. V skutočnosti ide o kópie hostiteľov v niekoľkých dátových centrách, ktoré sa používajú na nadviazanie spojenia s nižšou latenciou.

Takže v sieti Anycast je rovnaká IP adresa ohlasovaná z rôznych miest, a sieť rozhoduje, kam nasmerovať požiadavku používateľa na základe "nákladov" cesty. Napríklad, na určenie najkratšej cesty prenosu dát sa často používa protokol BGP. Keď používateľ odošle požiadavku Anycast, BGP určuje najlepší smer pre dostupné servery v sieti Anycast.

Výhody Anycast

Zníženie latencie
Systémy s Anycast sú schopné znížiť latenciu pri spracovaní používateľských požiadaviek, pretože umožňujú získavať dáta z najbližšieho servera. To znamená, že používatelia sa vždy pripoja k "najbližšiemu" (z pohľadu smerovacieho protokolu) DNS serveru. V dôsledku toho Anycast znižuje čas interakcie zmenšením vzdialenosti medzi klientom a serverom. To nielen znižuje latenciu, ale aj zabezpečuje vyváženie záťaže.

Rýchlosť

Keďže je prenos dát nasmerovaný na najbližší uzol a znižuje sa latencia medzi klientom a uzlom, výsledkom bude optimalizácia rýchlosti doručenia, nezávisle od toho, odkiaľ klient žiada informácie.

Zvýšená stabilita a odolnosť

Ak niekoľko serverov po celom svete používa rovnakú IP adresu, v prípade zlyhania jedného zo serverov alebo jeho odpojenia bude prenos nasmerovaný na najbližší server. V dôsledku toho Anycast robí službu odolnejšou a zabezpečuje lepší prístup k sieti/latenciu/rýchlosť. 

Týmto spôsobom, vďaka existencii niekoľkých serverov neustále dostupných pre používateľov, Anycast zvyšuje stabilitu DNS. Pri výpadku uzla sa používateľské požiadavky presmerujú na iný DNS server bez akejkoľvek manuálnej intervencie alebo prekonfigurovania. Anycast zabezpečuje prakticky bezproblémový prechod na iné stránky, jednoducho odstránením trás problémovej stránky. 

Vyváženie záťaže

V systéme Anycast sa sieťový traffic rozdeľuje medzi rôzne servery. To znamená, že funguje ako vyvažovač záťaže, zabraňujúc tomu, aby akýkoľvek jednotlivý server dostal hlavnú časť trafficu. Vyváženie záťaže sa môže používať, napríklad, keď sa nachádza niekoľko sieťových uzlov na tej istej geografickej vzdialenosti od zdroja požiadaviek. V tomto prípade sa záťaž rozdeľuje medzi uzly.

Zníženie dopadu DoS útokov 

Ďalšou vlastnosťou Anycastu je odolnosť voči DDoS. DDoS útokom sa pravdepodobne nepodarí odstaviť systém Anycast, pretože by bolo potrebné zdolať všetky servery v sieti záplavou požiadaviek. 

V DDoS útokoch sa často používajú botnety, ktoré môžu generovať taký objem trafficu, že preťaží napadnutý server. Výhodou používania Anycastu v tejto situácii je, že každý server dokáže 'pohltit' časť útoku, čo znižuje záťaž na konkrétny server. Útok typu 'odmietnutie služby' pravdepodobne zostane lokalizovaný na serveri a neovplyvní celý servis.

Vysoká horizontálna škálovateľnosť

Systémy Anycast sú veľmi vhodné pre služby s veľkými objemami trafficu. Ak služba využívajúca Anycast potrebuje nové servery na spracovanie rastúceho trafficu, môžu sa do siete pridať nové servery na jeho spracovanie. Môžu byť umiestnené na nových alebo už existujúcich lokalitách. 

Ak v konkrétnom mieste dochádza k veľkému nárastu prevádzky, pridanie servera pomôže vyvážiť záťaž pre danú lokalitu. Pridanie servera na novej lokalite pomôže skrátiť čas čakania, čím vytvorí pre niektorých používateľov nový najkratší smer. Obe metódy tiež pomáhajú zvýšiť stabilitu služby, keďže sa v sieti stávajú dostupné nové servery. Takže ak je server preťažený, je možné jednoducho nasadiť ďalší na mieste, ktoré mu umožní prijímať časť požiadaviek preťaženého servera. Pri tom nebude potrebná úprava zo strany klientov. 

Len týmto spôsobom je možné obslúžiť terabity prevádzky a veľmi veľký počet používateľov, keď má server iba niekoľko portov 10 alebo 25 Gbit/s. 100 hostiteľov s jednou IP adresou umožní spracovať terabitové objemy prevádzky.

Jednoduchosť správy konfigurácie

Ako už bolo spomenuté vyššie, zaujímavé využitie Anycastu je DNS. Môže sa umiestniť v uzloch siete niekoľko rôznych DNS serverov, ale použiť jednu DNS adresu. V závislosti od toho, kde sa nachádza zdroj, sú požiadavky smerované na najbližší uzol. To zabezpečuje určitú vyváženosť prevádzky a redundanciu v prípade zlyhania DNS servera. Takže namiesto toho, aby sa nastavovali rôzne DNS servery v závislosti od toho, kde sa nachádzajú, môže sa konfigurácia jedného DNS servera šíriť na všetky uzly.

Siete Anycast je možné nastaviť na smerovanie požiadaviek nielen na základe vzdialenosti, ale aj na základe takých parametrov, ako sú dostupnosť servera, počet aktívnych pripojení alebo doba odozvy.

Na používanie technológie Anycast zo strany klienta nie sú potrebné žiadne špeciálne servery, siete alebo špeciálne komponenty. Avšak Anycast má aj nevýhody. Považuje sa za náročné na implementáciu, vyžaduje dodatočné vybavenie, spoľahlivých poskytovateľov a správne smerovanie prevádzky.

Od čistého prameňa do krásneho diaľava

Hoci Anycast nasmeruje používateľov na základe najmenšieho počtu prechodov, to ešte nemusí znamenať minimálnu latenciu. Latencia je zložitejšia metrika, pretože pri jednom prechode môže byť vyššia ako pri desiatich.

Anycast vs. Unicast: čo si vybrať v každom prípade
Príklad: medzištátne komunikácie môžu zahŕňať jeden prechod s veľmi vysokou latenciou.

Anycast sa prevažne používa na služby založené na UDP, ako je DNS. Požiadavky používateľov sú smerované do "najlepšieho" a "najbližšieho" dátového centra na základe trás BGP.

Anycast vs. Unicast: čo si vybrať v každom prípade
Príklad: pracovná stanica DNS-klienta s IP adresou Anycast DNS 123.10.10.10 vykonáva preklad DNS pre najbližší z troch DNS serverov s rovnakou IP adresou Anycast. V prípade zlyhania smerovača R1 alebo servera A budú pakety DNS-klienta automaticky presmerované na nasledujúci najbližší DNS server cez smerovače R2 a R3. Okrem toho bude trasa k nášmu serveru A odstránená z tabuliek smerovania, čo zabráni ďalšiemu používaniu tohto servera mien.

Scenáre nasadenia

Existujú dve bežné schémy, ktoré sa používajú na určenie toho, ku ktorému serveru sa používateľ pripája:

  • Anycast na úrovni siete. Spojuje používateľa s najbližším serverom. Tu je dôležitá sieťová cesta od používateľa k serveru.
  • Anycast na úrovni aplikácie. V tejto schéme je viac vypočítaných metrik, vrátane dostupnosti servera, doby odozvy, počtu pripojení atď. Závisí to od externého monitora, ktorý poskytuje štatistiky o sieti.

CDN založené na Anycast

Teraz sa vráťme k používaniu Anycast v sieťach dodávky obsahu. Anycast určite predstavuje zaujímavú sieťovú koncepciu a získava čoraz väčšie uznanie u poskytovateľov CDN novej generácie.

CDN je distribuovaná sieť serverov, ktoré dodávajú obsah konečným používateľom s vysokou dostupnosťou a nízkou latenciou. Siete dodávky obsahu zohrávajú dnes dôležitú úlohu, keďže sú základom mnohých multimediálnych online služieb a spotrebitelia sú čoraz menej trpezliví voči pomalým rýchlostiam načítania. Video a hlasové aplikácie sú obzvlášť citlivé na jitter a latenciu v sieti.

CDN spája všetky servery do jednej siete a zabezpečuje rýchlejšie načítanie obsahu. Niekedy sa podarí skrátiť čas čakania používateľa o 5-6 sekúnd. Cieľom CDN je optimalizácia dodávky prostredníctvom poskytovania obsahu zo servera, ktorý je najbližšie k koncovému používateľovi. Je to veľmi podobné ako Anycast, kde sa vyberá najbližší server na základe polohy koncového používateľa. Zdalo by sa, že každý poskytovateľ CDN by predvolene mal používať Anycast, ale v skutočnosti to tak nie je.

Aplikácie, ktoré používajú protokoly ako HTTP/TCP, sa spoliehajú na nadväzované spojenie. Ak je vybraný nový uzol Anycast (napríklad pri výpadku servera), môže dôjsť k prerušenému servisu. Práve preto bol Anycast predtým odporúčaný pre služby bez nadväzovania spojenia, ako sú UDP a DNS. Napriek tomu Anycast dobre funguje aj pre protokoly orientované na spojenie, napríklad TCP perfektné funguje v režime Anycast.

Niektorí poskytovatelia CDN používajú smerovanie na základe Anycast, iní dávajú prednosť smerovaniu na základe DNS: najbližší server sa vyberá na základe polohy DNS servera používateľa.

Hybridné infraštruktúry a infraštruktúry s viacerými datacentrami – ďalší príklad aplikácie Anycastu. Adresa Load Balancing IP získaná od poskytovateľa umožňuje rozložiť záťaž medzi IP adresy rôznych služieb klientov v datacentre poskytovateľa. Vďaka technológii adresovania akémukoľvek zariadeniu to zabezpečuje lepší výkon pri vysokom prevádzke, odolnosť proti výpadkom a pomáha optimalizovať čas odozvy pri veľkom počte používateľov.

V hybridných infraštruktúrach s viacerými datacentrami je možné rozložiť prenos medzi servermi alebo dokonca virtuálnymi strojmi na vyhradených serveroch.

Takže existuje obrovský výber technických riešení pre výstavbu infraštruktúry. Je tiež možné nastaviť vyváženie zaťaženia na základe IP adries v niekoľkých datacentrách, pomocou adresovania akémukoľvek zariadeniu skupiny na optimalizáciu výkonu webovej stránky.

Možno rozširovať traffic podľa vlastných pravidiel, určením „váhy“ každého z rozdelených serverov v každom dátovom centre. Táto konfigurácia je obzvlášť užitočná, keď je k dispozícii rozdelený serverový park a výkon služieb nie je rovnaký. To umožní častejšie rozdeľovať traffic na zlepšenie výkonu serverov.

Pre vytvorenie systému kontroly pomocou príkazu ping je možné konfigurovať sondy. To umožňuje administrátorovi definovať vlastné kontrolné procedúry a získať jasnejší prehľad o stave každého komponentu v infraštruktúre. Týmto spôsobom môžu byť stanovené kritériá dostupnosti.

Existuje možnosť postaviť hybridnú infraštruktúru: niekedy je výhodné nechať back-office v firemnej sieti, zatiaľ čo rozhranie sa outsourcuje poskytovateľovi.

Je možné pridať certifikáty SSL pre vyvažovanie záťaže, šifrovanie prenášaných údajov a zabezpečenie komunikácie medzi návštevníkmi webu a firemnou infraštruktúrou. Pri vyvažovaní záťaže medzi dátovými centrami je tiež možné aplikovať SSL.

Službu Anycast s vyvažovaním záťaže adries je možné získať od poskytovateľa. Táto funkcia pomôže zlepšiť algoritmus interakcie používateľov s aplikáciami v závislosti od polohy. Stačí oznámiť, aké služby sú k dispozícii v dátovom centre, a traffic bude presmerovaný na najbližšiu infraštruktúru. Ak sú k dispozícii dedikované servery napríklad vo Francúzsku alebo v Severnej Amerike, klienti budú presmerovaní na najbližší server v sieti.

Jeden z variantov použitia Anycast je optimálny výber bodu prítomnosti operátora (PoP). Uvedieme príklad. LinkedIn (blokovaný v Rusku) sa snaží nielen zlepšiť výkon a rýchlosť svojich produktov — mobilných a webových aplikácií, ale aj zdokonaľovať sieťovú infraštruktúru pre urýchlené doručovanie obsahu. Na tento účel LinkedIn aktívne používa PoP – body prítomnosti. Aby sa užívatelia dostali k najbližšiemu PoP, používa sa Anycast.

Príčinou je, že v prípade Unycast má každé PoP LinkedIn unikátnu IP adresu. Používatelia sú potom priraďovaní k PoP na základe ich geografickej polohy pomocou DNS. Problém spočíva v tom, že pri využívaní DNS sa približne 30 % používateľov v Spojených štátoch presmerovalo na suboptimálne PoP. Vďaka implementácii Anycast sa suboptimálne priradenie PoP znížilo z 31 % na 10 %.

Anycast vs. Unicast: čo si vybrať v každom prípade
Výsledky pilotného testu sú zobrazené na grafe, kde os Y predstavuje percento optimálneho priradenia PoP. S nárastom Anycast v mnohých štátoch USA nastalo zlepšenie v percentách toku k optimálnemu PoP.

Monitorovanie siete Anycast

Teoreticky sú siete Anycast jednoduché: niekoľkým fyzickým serverom je pridelená rovnaká IP adresa, ktorú BGP používa na určenie trasy. Avšak implementácia a návrh platforiem Anycast sú zložité, najmä tie, ktoré sú známe vysokou dostupnosťou. Efektívne monitorovanie siete Anycast na rýchle odhalenie a lokalizáciu porúch je ešte zložitejšie.

Ak služby používajú na poskytovanie svojho obsahu externého poskytovateľa CDN, je veľmi dôležité sledovať a overovať výkon siete. Pri monitorovaní CDN na základe Anycast je hlavné zameranie na meranie end-to-end latencií a charakteristík predposledného skoku, aby sa pochopilo, ktorý dátový centrálr poskytuje obsah. Analýza hlavičiek HTTP servera je ďalší spôsob, ako určiť, odkiaľ údaje prichádzajú.

Anycast vs. Unicast: čo si vybrať v každom prípade
Príklad: hlavičky odpovede HTTP, ktoré uvádzajú umiestnenie servera CDN.

Napríklad, CloudFlare používa vlastnú hlavičku CF-Ray v HTTP odpovediach, ktorá obsahuje informácie o dátovom centre, ku ktorému bola žiadosť zaslaná. V prípade Zendesk predstavuje hlavička CF-Ray pre región Seattle CF-RAY: 2a21675e65fd2a3d-SEA a pre Amsterdam CF-RAY: 2a216896b93a0c71-AMS. Na určenie, kde sa nachádza obsah, je možné tiež využiť HTTP-X hlavičky z HTTP odpovede.

Iné metódy adresovania

Existujú aj iné metódy adresovania na smerovanie používateľských požiadaviek na konkrétny koncový bod siete:

Unicast

Väčšina internetu dnes používa práve túto metódu. Unicast je unidirectional prenos, IP adresa je spojená iba s jedným konkrétnym uzlom v sieti. Tento prenos sa nazýva vzájomne jednoznačné zodpovedanie. 

Multicast

Multicast využíva prenos „jeden k mnohým“ alebo „mnohí k mnohým“. Mnohoprevádzkový prenos umožňuje odosielať požiadavku od odosielateľa súčasne na rôzne vybrané koncové body. To dáva zákazníkovi možnosť sťahovať súbor po častiach z viacerých hostiteľov súčasne (čo je užitočné pri streamovaní audia alebo videa). Mnohoprevádzkový prenos sa často pletie s Anycast, avšak hlavný rozdiel spočíva v tom, že Anycast smeruje odosielateľa k jednému konkrétnemu uzlu, aj keď sú k dispozícii viaceré uzly.

Broadcast

Datagram od jediného odosielateľa je smerovaný na všetky koncové body pripojené k širokopásmovému adresu. Sieť automaticky replikuje datagramy, aby mohla komunikovať so všetkými prijímateľmi v širokopásmovom prenose (zvyčajne v jednej podsieti).

Geocast

Geocast je do určitej miery podobný Mnohoprevádzkovému prenosu: požiadavky od odosielateľa sú smerované súčasne niekoľkým koncovým bodom. Rozdiel spočíva v tom, že adresát je definovaný svojou geografickou polohou. Toto je špecializovaná forma skupinového adresovania používaná niektorými smerovacími protokolmi pre mobilné peer-to-peer siete.

Geografický smerovač (Geo Router) vypočítava svoju oblasť pokrytia a aproximuje ju. Geosmerovače, vymieňajúc si oblasti pokrytia, stavajú smerovacie tabuľky. Systém geosmerovačov má hierarchickú štruktúru.

Anycast vs. Unicast: čo si vybrať v každom prípade
Anycast vs. Unicast: čo si vybrať v každom prípade
Anycast vs. Unicast: čo si vybrať v každom prípade
Unicast, Multicast a Broadcast.

Použitie technológie Anycast zvyšuje úroveň spoľahlivosti, odolnosti voči chybám a bezpečnosti DNS. Použitím tejto technológie ponúkajú operátori svojim zákazníkom služby rôzneho typu vyváženia záťaže na základe DNS. V riadiacom rozhraní je možné uvádzať IP adresy, na ktoré budú smerované požiadavky v závislosti od geografickej lokalizácie. To dáva zákazníkom možnosť flexibilnejšie rozdeľovať požiadavky používateľov.

Niektorí operátori používajú prostriedky na monitorovanie trasy na každom mieste prítomnosti (POP): systém automaticky analyzuje najkratšie miestne a globálne trasy pre miesta prítomnosti a presmerováva ich cez geografické lokality s najnižšou latenciou a nulovým časom nečinnosti.

V súčasnosti je Anycast najstabilnejším a najspoľahlivejším riešením na budovanie vysoko zaťažených DNS služieb, ktoré majú vysoké nároky na stabilitu a spoľahlivosť.

Doména .ru podporuje 35 serverov Anycast DNS, usporiadaných v 20 uzloch rozmiestnených v piatich Anycast cloudoch. Pri tom sa uplatňuje zásada budovania na geografickom základe, t.j. Geocast. Pri umiestňovaní uzlov DNS sa predpokladá ich presun do geograficky rozptýlených lokalít, priblížených k najaktívnejším používateľom, s maximálnou koncentráciou ruských poskytovateľov v mieste umiestnenia uzla, ako aj s dostupnosťou voľných kapacít a pohodlnosťou interakcie s lokalitou.

Ako postaviť CDN?

CDN – sieť serverov, ktorá urýchľuje dodávku obsahu používateľom. Sieť na dodávku obsahu spája všetky servery do jednej siete a zabezpečuje rýchlejšie načítanie obsahu. V rýchlosti načítania hrá dôležitú úlohu vzdialenosť od servera k používateľovi.

CDN umožňuje využívať servery, ktoré sú najbližšie k cieľovej skupine. To skracuje čas čakania, pomáha urýchliť načítanie obsahu stránok pre všetkých návštevníkov, čo je obzvlášť kritické pre stránky s veľkými súbormi alebo multimediálnymi službami. Typické oblasti použitia CDN sú elektronický obchod a zábavný priemysel.

Vytvorená sieť dodatočných serverov v infraštruktúre CDN, ktoré sú umiestnené čo najbližšie k používateľom, prispieva k stabilnejšej a rýchlejšej dodávke dát. Podľa štatistík používanie CDN znižuje latenciu pri prístupe na stránku o viac ako 70 % v porovnaní so stránkami bez CDN.

Ako vytvoriť CDN pomocou DNS? Настройка CDN с использованием собственного решения Anycast может быть достаточно дорогим проектом, но есть более дешевые варианты. Например, можно использовать GeoDNS и обычные серверы с уникальными IP-адресами. С помощью сервисов GeoDNS можно создать CDN с функциями геолокации, в которой решения принимаются на основе реального местоположения посетителя, а не местоположения ресолвера DNS. Можно настроить свою DNS-зону так, чтобы показывать IP-адреса американских серверов посетителям из США, а европейские посетители будут видеть IP-адрес из Европы.

S pomocou GeoDNS je možné vracať rôzne odpovede DNS v závislosti od IP adresy používateľa. Na tento účel sa DNS server nastavuje tak, aby vracal rôzne IP adresy v závislosti od zdrojovej IP adresy v dopyte. Zvyčajne sa na určenie regiónu, z ktorého sa dopyt vykonáva, používa databáza GeoIP. Geolokácia pomocou DNS umožňuje zasielať používateľom obsah z najbližšej lokality.

GeoDNS určuje IP adresu klienta, ktorý poslal DNS požiadavku, alebo IP adresu rekurzívneho DNS servera poskytovateľa, ktorý sa používa pri spracovaní požiadavky klienta. Podľa IP adresy klienta a databázy GeoIP sa určuje krajina/región. Potom klient dostane IP adresu najbližšieho CDN servera. O nastavení GeoDNS sa môžete dočítať viac. tu.

Anycast alebo GeoDNS?

Hoci Anycast je skvelý spôsob dodávky obsahu na globálnej úrovni, chýba mu špecifičnosť. Tu prichádza GeoDNS na pomoc. Tento servis umožňuje nastaviť pravidlá, ktoré posielajú používateľov na jedinečné koncové body v závislosti od ich polohy.

Anycast vs. Unicast: čo si vybrať v každom prípade
Príklad: používatelia z Európy sú smerovaní k inému koncovému bodu.

Taktiež je možné zakázať prístup k doménam tým, že zamietneme všetky požiadavky. To je, mimochodom, rýchly spôsob, ako sa zbaviť útočníkov.

GeoDNS poskytuje presnejšie odpovede ako Anycast. Kým v prípade Anycast je najkratšia cesta určená počtom skokov, v GeoDNS sa smerovanie pre koncových používateľov deje na základe ich fyzickej polohy. To znižuje latenciu a zvyšuje presnosť pri vytváraní granulárnych smerovacích pravidiel.

Pri prechode na doménu sa prehliadač obracia na najbližší DNS server, ktorý v závislosti od domény vydáva IP adresu na načítanie webovej stránky. Predpokladajme, že internetový obchod je populárny v USA a Európe, a DNS servery pre neho sú len v Európe. Vtedy používatelia z USA, ktorí si chcú využiť služby obchodu, budú nútení posielať požiadavku najbližšiemu serveru, a keďže je veľmi ďaleko, budú dlho čakať na odpoveď - načítanie stránky nebude rýchle.

Pri umiestnení GeoDNS servera v USA, budú používatelia už smerovať k nemu. Odpoveď bude rýchla, čo ovplyvní rýchlosť načítania webovej stránky.

V situácii s existujúcim DNS serverom v USA, pri prechode na danú doménu, používateľ z USA sa obráti na najbližší server, ktorý vydá potrebnú IP. Používateľ sa smeruje na server, ktorý obsahuje obsah stránky, ale keďže servery s obsahom sú ďaleko, rýchlo ho nezíska.

Ak umiestnite servery v USA a CDN servery s vyrovnanými dátami, pri načítaní klientského prehliadača sa odošle požiadavka na najbližší DNS server, ktorý pošle späť požadovanú IP adresu. Prehliadač s prijatou IP adresou osloví najbližší CDN server a hlavný server, pričom CDN server prenesie do prehliadača vyrovnaný obsah. Počas načítania vyrovnaného obsahu sú z hlavného servera zasielané chýbajúce súbory pre úplné načítanie webovej stránky. Výsledkom je skrátenie času načítania webovej stránky, pretože sa posiela mnoho menej súborov z hlavného servera.

Určenie presného umiestnenia konkrétnej IP adresy nie je vždy jednoduchá úloha: pôsobí tu mnoho faktorov a vlastníci IP rozsahov môžu rozhodnúť o jeho vyhlásení na inej strane sveta (potom bude treba čakať, kým sa databáza aktualizuje, aby sa získalo správne umiestnenie). Niekedy poskytovatelia VPS priraďujú adresy, ktoré údajne sú v USA, pre VPS v Singapure.

Na rozdiel od použitia adries Anycast sa distribúcia vykonáva počas riešenia mien, a nie pri pripojení k vyrovnávaciemu serveru. Ak rekursívny server nepodporuje klientské podsiete EDNS, používa sa umiestnenie tohto rekursívneho servera a nie používateľa, ktorý sa pripojí k vyrovnávaciemu serveru.

Klientské podsiete v DNS sú rozšírením DNS (RFC7871), ktoré definuje, ako rekursívne DNS servery môžu posielať informácie o klientovi na DNS server, najmä informácie o sieti, ktoré GeoDNS server môže využiť na presnejšie určenie umiestnenia klienta.

Väčšina používateľov používa DNS servery svojho poskytovateľa internetu alebo DNS servery, ktoré sú geograficky blízko, ale ak by niekto v USA z nejakého dôvodu rozhodol použiť DNS resolver nachádzajúci sa v Austrálii, pravdepodobne dostane IP adresu servera, ktorý je najbližší k Austrálii.

Ak chcete používať GeoDNS, je dôležité vedieť o takýchto zvláštnostiach, pretože v niektorých prípadoch to môže zvýšiť vzdialenosť medzi vyrovnávacími servermi a klientom.

Zhrnutie: ak chcete kombinovať niekoľko VPS do CDN, najlepšou možnosťou nasadenia je použitie spojenia DNS servera s funkciou GeoDNS + Anycast „z krabice“.

Anycast vs. Unicast: čo si vybrať v každom prípade

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster