Anycast vs Unicast: čo je lepšie zvoliť v každom prípade

Mnoho ľudí už pravdepodobne počulo o Anycast. Pri tomto spôsobe sieťového adresovania a smerovania je jedna IP adresa priradená viacerým serverom v sieti. Tieto servery môžu byť dokonca umiestnené v dátových centrách, ktoré sú od seba vzdialené. Myšlienka Anycast je taká, že v závislosti od umiestnenia zdroja požiadavky sa údaje odosielajú na najbližší (podľa topológie siete, presnejšie smerovacieho protokolu BGP) server. Týmto spôsobom môžete znížiť počet skokov v sieti a latenciu.

V podstate je rovnaká trasa inzerovaná z viacerých dátových centier po celom svete. Klienti tak budú posielaní do „najlepšieho“ a „najbližšieho“ na základe trás BGP, teda do dátového centra. Prečo práve Anycast? Prečo používať Anycast namiesto Unicast?

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Unicast je skutočne vhodný pre stránky s jedným webovým serverom a miernou návštevnosťou. Ak má však služba milióny predplatiteľov, zvyčajne používa mnoho webových serverov, z ktorých každý má rovnakú IP adresu. Tieto servery sú distribuované geograficky, aby optimálne slúžili požiadavkám.

V tomto scenári Anycast zlepší výkon (prevádzka je odosielaná používateľovi s minimálnym oneskorením), zabezpečí spoľahlivosť služby (vďaka záložným serverom) a vyvažovanie záťaže – smerovanie na niekoľko serverov efektívne rozloží záťaž medzi nimi, čím sa zvýši rýchlosť lokality.

Operátori ponúkajú klientom rôzne typy vyvažovania záťaže na báze Anycast a DNS. Klienti môžu špecifikovať IP adresy, na ktoré sa budú odosielať požiadavky na základe geografickej polohy lokality. To umožňuje flexibilnejšie distribuovať požiadavky používateľov.

Predpokladajme, že existuje niekoľko stránok, medzi ktoré musíte rozdeliť zaťaženie (používateľov), napríklad internetový obchod so 100 000 požiadavkami za deň alebo populárny blog. Ak chcete obmedziť región, z ktorého používatelia pristupujú na konkrétnu stránku, môžete použiť možnosť Geo Community. Umožňuje vám obmedziť región, v rámci ktorého bude operátor trasu inzerovať.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Anycast a Unicast: rozdiely

Anycast sa často používa v aplikáciách, ako je DNS (Domain Name System) a CDN (Content Delivery Networks), čo umožňuje rozhodnutia o smerovaní, ktoré zlepšujú výkon siete. Siete na doručovanie obsahu využívajú Anycast, pretože sa zaoberajú veľkým objemom návštevnosti a Anycast v tomto prípade poskytuje množstvo výhod (viac o nich nižšie). V DNS vám Anycast umožňuje výrazne zvýšiť úroveň spoľahlivosti a odolnosti voči chybám služby.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
V Anycast IP, keď používate BGP, existuje viacero trás ku konkrétnemu hostiteľovi. V skutočnosti ide o kópie hostiteľov vo viacerých dátových centrách, ktoré sa používajú na vytvorenie pripojení s nižšou latenciou.

Takže v sieti Anycast je rovnaká IP adresa inzerovaná z rôznych miest a sieť sa rozhoduje, kam smerovať požiadavku používateľa na základe „ceny“ trasy. BGP sa napríklad často používa na určenie najkratšej trasy na prenos dát. Keď používateľ odošle požiadavku Anycast, BGP určí najlepšiu trasu pre dostupné servery Anycast v sieti.

Výhody Anycastu

Zníženie latencie
Systémy s Anycast môžu znížiť latenciu pri spracovaní požiadaviek používateľov, pretože vám umožňujú prijímať údaje z najbližšieho servera. To znamená, že používatelia sa budú vždy pripájať k „najbližšiemu“ (z hľadiska smerovacieho protokolu) serveru DNS. Výsledkom je, že Anycast skracuje čas interakcie znížením sieťovej vzdialenosti medzi klientom a serverom. To nielen znižuje latenciu, ale poskytuje aj vyrovnávanie záťaže.

Rýchlosť

Keďže prevádzka je smerovaná do najbližšieho uzla a latencia medzi klientom a uzlom je znížená, výsledkom je optimalizovaná rýchlosť doručovania bez ohľadu na to, odkiaľ klient požaduje informácie.

Zvýšená stabilita a odolnosť voči chybám

Ak niekoľko serverov po celom svete používa rovnakú IP adresu, potom ak jeden zo serverov zlyhá alebo je odpojený, prevádzka bude presmerovaná na najbližší server. Výsledkom je, že Anycast robí službu odolnejšou a poskytuje lepší prístup k sieti / latenciu / rýchlosť. 

Vďaka tomu, že používatelia majú neustále k dispozícii viacero serverov, napríklad Anycast zlepšuje stabilitu DNS. Ak uzol zlyhá, požiadavky používateľov budú presmerované na iný server DNS bez akéhokoľvek manuálneho zásahu alebo prekonfigurovania. Anycast poskytuje prakticky transparentné prepínanie na iné stránky jednoduchým odstránením trás problematickej stránky. 

Rozdelenie výkonu

V Anycast je sieťová prevádzka distribuovaná medzi rôzne servery. To znamená, že funguje ako vyrovnávač zaťaženia a bráni akémukoľvek jednotlivému serveru prijímať väčšinu prenosu. Vyvažovanie záťaže možno použiť napríklad vtedy, keď existuje viacero sieťových uzlov v rovnakej geografickej vzdialenosti od zdroja požiadavky. V tomto prípade je zaťaženie rozdelené medzi uzly.

Znížte vplyv útokov DoS 

Ďalšou vlastnosťou Anycastu je odolnosť voči DDoS. DDoS útoky pravdepodobne nedokážu zničiť systém Anycast, pretože by museli zavaliť všetky servery v takejto sieti lavínou požiadaviek. 

DDoS útoky často využívajú botnety, ktoré dokážu generovať toľko návštevnosti, že preťažia napadnutý server. Výhodou použitia Anycastu v tejto situácii je, že každý server je schopný „absorbovať“ časť útoku, čo znižuje zaťaženie daného servera. Útok odmietnutia služby bude s najväčšou pravdepodobnosťou lokalizovaný na server a neovplyvní celú službu.

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

Systémy Anycast sú vhodné pre služby s veľkým objemom prevádzky. Ak služba využívajúca Anycast vyžaduje nové servery na zvládnutie zvýšenej premávky, do siete možno pridať nové servery, ktoré to spravia. Môžu byť umiestnené na nových alebo existujúcich lokalitách. 

Ak určité miesto zaznamenáva veľký nárast návštevnosti, pridanie servera pomôže vyrovnať zaťaženie tohto webu. Pridanie servera na novú lokalitu pomôže skrátiť čakacie doby vytvorením novej najkratšej trasy pre niektorých používateľov. Obidve metódy tiež pomáhajú zlepšiť stabilitu služby, keď sú v sieti dostupné nové servery. Týmto spôsobom, ak je server preťažený, môžete jednoducho nasadiť iný server na miesto, ktoré mu umožní prijať určitú časť požiadaviek preťaženého servera. To si nevyžaduje žiadnu konfiguráciu zo strany klientov. 

Iba týmto spôsobom môžu byť obsluhované terabity prevádzky a veľmi veľký počet používateľov, keď má server iba niekoľko portov 10 alebo 25 Gbps. 100 hostiteľov s jednou IP adresou umožní spracovať terabitové objemy prevádzky.

Jednoduchá správa konfigurácie

Ako je uvedené vyššie, zaujímavým využitím Anycastu je DNS. Na sieťové uzly môžete umiestniť niekoľko rôznych serverov DNS, ale použite jednu adresu DNS. V závislosti od toho, kde sa zdroj nachádza, sú požiadavky smerované do najbližšieho uzla. To poskytuje určité vyváženie prevádzky a redundanciu v prípade zlyhania servera DNS. Týmto spôsobom namiesto konfigurácie rôznych serverov DNS v závislosti od toho, kde sa nachádzajú, možno konfiguráciu jedného servera DNS rozšíriť na všetky uzly.

Siete Anycast je možné nakonfigurovať tak, aby smerovali požiadavky nielen na základe vzdialenosti, ale aj parametrov, ako je prítomnosť servera, počet vytvorených spojení. alebo čas odozvy.

Na používanie technológie Anycast nie sú potrebné žiadne špeciálne servery, siete ani špeciálne komponenty na strane klienta. Anycast má však aj svoje negatíva. Predpokladá sa, že jeho implementácia je zložitá úloha, ktorá si vyžaduje dodatočné vybavenie, spoľahlivých poskytovateľov a správne smerovanie prevádzky.

Ďaleko od čistého zdroja ku kráse

Hoci Anycast smeruje používateľov na základe najmenšieho počtu skokov, nemusí to nevyhnutne znamenať najnižšiu latenciu. Latencia je zložitejšia metrika, pretože môže byť vyššia pre jeden prechod ako pre desať.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Príklad: Medzikontinentálna komunikácia môže zahŕňať jeden skok s veľmi vysokou latenciou.

Anycast sa primárne používa pre 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 je lepšie zvoliť v každom prípade
Príklad: Klientska pracovná stanica DNS s adresou IP Anycast DNS 123.10.10.10 vykonáva preklad DNS pre najbližší z troch názvových serverov DNS nasadených pomocou rovnakej adresy IP Anycast. Ak smerovač R1 alebo server A zlyhá, klientske pakety DNS budú automaticky presmerované na ďalší najbližší server DNS prostredníctvom smerovačov R2 a R3. Okrem toho bude cesta na náš server A odstránená zo smerovacích tabuliek, čím sa zabráni ďalšiemu používaniu tohto nameservera.

Scenáre nasadenia

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

  • Sieťová vrstva Anycast. Pripojí používateľa k najbližšiemu serveru. Tu je dôležitá sieťová cesta od používateľa k serveru.
  • Anycast na aplikačnej úrovni. Táto schéma má viac vypočítaných metrík vrátane dostupnosti servera, času odozvy, počtu pripojení atď. Závisí to od externého monitora, ktorý poskytuje štatistiku siete.

CDN založené na Anycast

Vráťme sa teraz k používaniu Anycastu v sieťach na doručovanie obsahu. Anycast je určite zaujímavým sieťovým konceptom a získava čoraz väčšie uznanie medzi poskytovateľmi CDN novej generácie.

CDN je distribuovaná sieť serverov, ktoré doručujú obsah koncovým používateľom s vysokou dostupnosťou a nízkou latenciou. Siete na doručovanie obsahu dnes zohrávajú dôležitú úlohu ako chrbtica mnohých online mediálnych služieb a spotrebitelia sú čoraz menej tolerantní k nízkej rýchlosti sťahovania. Video a hlasové aplikácie sú obzvlášť citlivé na chvenie siete a latenciu.

CDN spája všetky servery do jednej siete a zabezpečuje rýchlejšie načítanie obsahu. Niekedy je možné skrátiť čakaciu dobu používateľa o 5-6 sekúnd. Účelom CDN je optimalizovať doručovanie poskytovaním obsahu zo servera, ktorý je najbližšie ku koncovému používateľovi. Je to veľmi podobné Anycastu, kde sa najbližší server vyberá na základe polohy koncového používateľa. Zdalo by sa, že každý poskytovateľ služieb CDN by štandardne používal Anycast, no v skutočnosti to tak nie je.

Aplikácie, ktoré používajú protokoly ako HTTP/TCP, sa spoliehajú na nadviazanie spojenia. Ak sa vyberie nový uzol Anycast (napríklad v dôsledku zlyhania servera), služba môže byť prerušená. To je dôvod, prečo bol Anycast predtým odporúčaný pre služby bez pripojenia, ako sú UDP a DNS. Anycast však funguje dobre aj pre protokoly orientované na pripojenie, napríklad TCP funguje dobre v režime Anycast.

Niektorí poskytovatelia CDN používajú smerovanie založené na Anycast, iní uprednostňujú smerovanie založené na DNS: najbližší server sa vyberie podľa toho, kde sa nachádza server DNS používateľa.

Hybridné a multi-dátové centrá infraštruktúry sú ďalším príkladom využitia Anycast. IP adresa na vyrovnávanie záťaže prijatá od poskytovateľa vám umožňuje rozdeliť záťaž medzi IP adresy rôznych klientskych služieb v dátovom centre poskytovateľa. Vďaka technológii akéhokoľvek zariadenia poskytuje lepší výkon pri hustej premávke, odolnosť voči chybám a pomáha optimalizovať čas odozvy pri práci s veľkým počtom používateľov.

V hybridných infraštruktúrach viacerých dátových centier môžete distribuovať prevádzku medzi servery alebo dokonca virtuálne stroje na dedikovaných serveroch.

Existuje teda obrovský výber technických riešení pre budovanie infraštruktúry. Môžete tiež nakonfigurovať vyrovnávanie záťaže medzi adresami IP vo viacerých dátových centrách a zacieliť na akékoľvek zariadenie v skupine s cieľom optimalizovať výkon lokality.

Prevádzku môžete distribuovať podľa vlastných pravidiel, pričom definujete „váhu“ každého z distribuovaných serverov v každom dátovom centre. Táto konfigurácia je užitočná najmä vtedy, keď existuje distribuovaný serverový park a výkon služieb je nerovnomerný. To umožní častejšie distribuovať prevádzku, aby sa zlepšil výkon servera.

Na vytvorenie monitorovacieho systému pomocou príkazu ping je možné nakonfigurovať sondy. To umožňuje správcovi definovať svoje vlastné monitorovacie postupy a získať jasnejší obraz o stave každého komponentu v infraštruktúre. Týmto spôsobom je možné definovať kritériá prístupnosti.

Je možné vybudovať hybridnú infraštruktúru: niekedy je vhodné nechať back office v podnikovej sieti a outsourcovať časť rozhrania poskytovateľovi.

Je možné pridať SSL certifikáty pre vyvažovanie záťaže, šifrovanie prenášaných dát a zabezpečenie komunikácie medzi návštevníkmi stránky a firemnou infraštruktúrou. V prípade vyrovnávania záťaže medzi dátovými centrami je možné použiť aj SSL.

Službu Anycast s vyrovnávaním zaťaženia adries môžete získať od svojho poskytovateľa. Táto funkcia pomôže zlepšiť interakciu používateľov s aplikáciami na základe polohy. Stačí oznámiť, aké služby sú v dátovom centre dostupné a prevádzka bude presmerovaná do najbližšej infraštruktúry. Ak existujú dedikované servery, napríklad vo Francúzsku alebo Severnej Amerike, klienti budú presmerovaní na najbližší server v sieti.

Jednou z možností využitia Anycastu je optimálny výber bodu prítomnosti operátora (PoP). Dajme si 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 zlepšiť svoju sieťovú infraštruktúru pre rýchlejšie doručovanie obsahu. Pre toto dynamické poskytovanie obsahu LinkedIn aktívne využíva PoP – body prítomnosti. Anycast sa používa na nasmerovanie používateľov k najbližšiemu PoP.

Dôvodom je, že v prípade Unycast má každý LinkedIn PoP jedinečnú IP adresu. Používatelia sú potom priradení k PoP na základe ich geografickej polohy pomocou DNS. Problémom je, že pri používaní DNS bolo asi 30 % používateľov v USA presmerovaných na neoptimálny PoP. S postupnou implementáciou Anycastu kleslo suboptimálne priradenie PoP z 31 % na 10 %.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Výsledky pilotného testu sú uvedené v grafe, kde os Y predstavuje percento optimálneho priradenia PoP. Ako sa Anycast rozbiehal, mnohé štáty USA zaznamenali zlepšenie percenta návštevnosti smerom k optimálnemu PoP.

Monitorovanie siete Anycast

Siete Anycast sú teoreticky jednoduché: viacerým fyzickým serverom je priradená rovnaká IP adresa, ktorú BGP používa na určenie trasy. Implementácia a návrh platforiem Anycast je však zložitý a siete Anycast odolné voči chybám sú tým obzvlášť známe. Ešte náročnejšie je efektívne monitorovanie siete Anycast s cieľom rýchlo identifikovať a izolovať chyby.

Ak služby využívajú na poskytovanie svojho obsahu poskytovateľa CDN tretej strany, je veľmi dôležité, aby monitorovali a overovali výkon siete. Monitorovanie CDN založené na Anycast sa zameriava na meranie latencie medzi koncovými bodmi a predposledného skokového výkonu, aby ste pochopili, ktoré dátové centrum obsluhuje obsah. Analýza hlavičiek servera HTTP je ďalším spôsobom, ako určiť, odkiaľ údaje pochádzajú.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Príklad: Hlavičky odpovede HTTP označujúce umiestnenie servera CDN.

CloudFlare napríklad používa svoju vlastnú hlavičku CF-Ray v správach HTTP Response, ktorá obsahuje označenie dátového centra, ktorému bola požiadavka odoslaná. V prípade Zendesk je hlavička CF-Ray pre oblasť Seattlu CF-RAY: 2a21675e65fd2a3d-SEA a pre Amsterdam je to CF-RAY: 2a216896b93a0c71-AMS. Na určenie, kde sa obsah nachádza, môžete použiť aj hlavičky HTTP-X z odpovede HTTP.

Iné spôsoby adresovania

Existujú aj iné spôsoby adresovania na smerovanie požiadaviek používateľov na konkrétny koncový bod siete:

unicast

Väčšina internetu dnes používa túto metódu. Unicast – unicast prenos, IP adresa je priradená iba jednému konkrétnemu uzlu v sieti. Toto sa nazýva priraďovanie jedna k jednej. 

multicast

Multicast používa vzťah jeden k mnohým alebo mnoho k mnohým. Multicast umožňuje, aby bola požiadavka od odosielateľa odoslaná súčasne na rôzne vybrané koncové body. To dáva klientovi možnosť stiahnuť súbor po častiach z viacerých hostiteľov súčasne (čo je užitočné pri streamovaní zvuku alebo videa). Multicast sa často zamieňa s Anycast, ale hlavný rozdiel je v tom, že Anycast nasmeruje odosielateľa na jeden konkrétny uzol, aj keď je dostupných viacero uzlov.

Prenos

Datagram od jedného odosielateľa sa prepošle na všetky koncové body spojené s adresou vysielania. Sieť automaticky replikuje datagramy, aby sa mohla dostať ku všetkým príjemcom vo vysielaní (zvyčajne v rovnakej podsieti).

Geocast

Geocast je niečo podobné ako Multicast: požiadavky od odosielateľa sú odosielané do viacerých koncových bodov súčasne. Rozdiel je však v tom, že adresát je určený svojou geografickou polohou. Ide o špecializovanú formu multicastu, ktorú používajú niektoré smerovacie protokoly pre mobilné ad hoc siete.

Geografický smerovač vypočíta svoju obsluhovanú oblasť a aproximuje ju. Georoutery, výmena servisných oblastí, vytváranie smerovacích tabuliek. Systém georouter má hierarchickú štruktúru.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Unicast, Multicast a Broadcast.

Používanie technológie Anycast zvyšuje úroveň spoľahlivosti, odolnosti voči chybám a bezpečnosti DNS. Pomocou tejto technológie operátori ponúkajú svojim klientom služby pre rôzne typy vyvažovania záťaže na základe DNS. V ovládacom paneli môžete určiť adresy IP, na ktoré sa budú odosielať požiadavky v závislosti od geografickej polohy. Klienti tak získajú možnosť flexibilnejšie distribuovať požiadavky používateľov.

Niektorí operátori implementujú možnosti sledovania trasy v každom bode prítomnosti (POP): systém automaticky analyzuje najkratšie lokálne a globálne trasy pre body prítomnosti a smeruje ich cez geografické miesta s najnižšou latenciou s nulovými prestojmi.

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

Doména .ru podporuje 35 serverov DNS Anycast, zoskupených do 20 uzlov, distribuovaných v piatich cloudoch Anycast. V tomto prípade sa využíva princíp konštrukcie na základe geografických charakteristík, t.j. Geocast. Pri umiestňovaní uzlov DNS sa počíta s ich presunom do geograficky rozptýlených lokalít v blízkosti najaktívnejších používateľov, s maximálnou koncentráciou ruských poskytovateľov v mieste, kde sa uzol nachádza, ako aj s dostupnosťou voľnej kapacity a jednoduchosťou interakciu so stránkou.

Ako vytvoriť CDN?

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

CDN vám umožňuje používať servery, ktoré sú najbližšie k cieľovému publiku. To skracuje čas čakania a pomáha zrýchliť načítanie obsahu stránok pre všetkých návštevníkov, čo je obzvlášť dôležité pre stránky s veľkými súbormi alebo multimediálnymi službami. Typickými aplikáciami pre CDN sú elektronický obchod a zábava.

Sieť ďalších serverov vytvorených v infraštruktúre CDN, ktoré sú umiestnené čo najbližšie k používateľom, prispieva k stabilnejšiemu a rýchlejšiemu doručovaniu 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? Nastavenie CDN pomocou vlastného riešenia Anycast môže byť dosť drahý projekt, existujú však lacnejšie možnosti. Môžete napríklad použiť GeoDNS a bežné servery s jedinečnými IP adresami. Pomocou služieb GeoDNS môžete vytvoriť CDN s geolokačnými schopnosťami, kde sa rozhodnutia prijímajú na základe skutočnej polohy návštevníka, a nie na základe polohy DNS resolvera. Zónu DNS môžete nakonfigurovať tak, aby návštevníkom z USA zobrazovala adresy IP servera v USA, ale európski návštevníci uvidia európsku adresu IP.

Pomocou GeoDNS môžete vrátiť rôzne odpovede DNS v závislosti od adresy IP používateľa. Na tento účel je server DNS nakonfigurovaný tak, aby vracal rôzne adresy IP v závislosti od zdrojovej adresy IP v požiadavke. Databáza GeoIP sa zvyčajne používa na určenie oblasti, z ktorej je požiadavka odoslaná. Geolokácia pomocou DNS vám umožňuje odosielať obsah používateľom z blízkej lokality.

GeoDNS určuje IP adresu klienta, ktorý odoslal DNS požiadavku, alebo IP adresu rekurzívneho DNS servera poskytovateľa, ktorý sa používa pri spracovaní klientskej požiadavky. Krajina/región je určená IP a GeoIP databázou klienta. Klient potom získa IP adresu najbližšieho CDN servera. Môžete si prečítať viac o nastavení GeoDNS tu.

Anycast alebo GeoDNS?

Zatiaľ čo Anycast je skvelý spôsob, ako poskytovať obsah v globálnom meradle, chýba mu špecifickosť. Tu prichádza na pomoc GeoDNS. Táto služba vám umožňuje vytvárať pravidlá, ktoré posielajú používateľov do jedinečných koncových bodov na základe ich polohy.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade
Príklad: Používatelia z Európy sú presmerovaní na iný koncový bod.

Prístup k doménam môžete zamietnuť aj zrušením všetkých žiadostí. Ide najmä o rýchly spôsob, ako odrezať votrelcov.

GeoDNS poskytuje presnejšie odpovede ako Anycast. Ak je v prípade Anycast najkratšia trasa určená počtom skokov, potom v GeoDNS smerovanie pre koncových používateľov nastáva v závislosti od ich fyzickej polohy. To znižuje latenciu a zlepšuje presnosť pri vytváraní podrobných pravidiel smerovania.

Pri navigácii na doménu prehliadač kontaktuje najbližší server DNS, ktorý v závislosti od domény vydá IP adresu na načítanie stránky. Predpokladajme, že internetový obchod je populárny v USA a Európe, ale servery DNS preň sú dostupné iba v Európe. Potom budú používatelia z USA, ktorí chcú využívať služby obchodu, nútení poslať požiadavku na najbližší server, a keďže je veľmi ďaleko, budú musieť dlho čakať na odpoveď – stránka sa nenačíta rýchlo.

Keď je server GeoDNS umiestnený v USA, používatelia k nemu už budú mať prístup. Odozva bude rýchla, čo ovplyvní rýchlosť načítania stránky.

V situácii s existujúcim serverom DNS v Spojených štátoch, keď používateľ zo Spojených štátov prejde na danú doménu, bude kontaktovať najbližší server, ktorý poskytne požadovanú IP. Používateľ bude presmerovaný na server, ktorý obsahuje obsah stránky, ale keďže servery s obsahom sú ďaleko, nedostane ho rýchlo.

Ak hosťujete servery CDN v USA s údajmi uloženými vo vyrovnávacej pamäti, potom pri načítaní prehliadač klienta odošle požiadavku najbližšiemu serveru DNS, ktorý odošle späť požadovanú IP adresu. Prehliadač s prijatou IP kontaktuje najbližší server CDN a hlavný server a server CDN odošle obsah uložený vo vyrovnávacej pamäti prehliadaču. Počas načítavania obsahu z vyrovnávacej pamäte sú súbory, ktoré chýbajú na načítanie celej lokality, prijímané z hlavného servera. Výsledkom je skrátenie času načítania stránky, pretože z hlavného servera sa odosiela oveľa menej súborov.

Určenie presnej polohy konkrétnej IP adresy nie je vždy jednoduchá úloha: do hry vstupuje veľa faktorov a majitelia určitého rozsahu IP adries sa môžu rozhodnúť inzerovať ho na druhom konci sveta (potom musia čakať, kým sa databáza aktualizovať, aby ste získali správnu polohu). Niekedy poskytovatelia VPS priraďujú adresy, ktoré sa údajne nachádzajú v USA, VPS v Singapure.

Na rozdiel od používania adries Anycast sa distribúcia vykonáva počas rozlíšenia názvov, a nie počas pripájania k serveru vyrovnávacej pamäte. Ak rekurzívny server nepodporuje podsiete klienta EDNS, použije sa umiestnenie tohto rekurzívneho servera a nie používateľa, ktorý sa pripojí k serveru vyrovnávacej pamäte.

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

Väčšina používa servery DNS svojho poskytovateľa internetových služieb alebo servery DNS, ktoré sú geograficky blízko k nim, ale ak sa niekto v USA z nejakého dôvodu rozhodne použiť prekladač DNS umiestnený v Austrálii, pravdepodobne skončí s adresou IP servera, ktorá je najbližšie k Austrálii.

Ak chcete používať GeoDNS, je dôležité si uvedomiť tieto funkcie, pretože v niektorých prípadoch môže zvýšiť vzdialenosť medzi servermi vyrovnávacej pamäte a klientom.

Zhrnutie: ak chcete skombinovať niekoľko VPS do CDN, potom najlepšou možnosťou nasadenia je použiť balík serverov DNS s funkciou GeoDNS + Anycast hneď po vybalení.

Anycast vs Unicast: čo je lepšie zvoliť v každom prípade

Zdroj: hab.com

Pridať komentár