Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde

Mange mennesker har sikkert hørt om Anycast. I denne metode til netværksadressering og routing tildeles en enkelt IP-adresse til flere servere på et netværk. Disse servere kan endda være placeret i datacentre fjernt fra hinanden. Ideen med Anycast er, at afhængigt af placeringen af ​​anmodningskilden, sendes dataene til den nærmeste (ifølge netværkstopologien, mere præcist, BGP-routingprotokollen) server. På denne måde kan du reducere antallet af netværkshop og latens.

I det væsentlige annonceres den samme rute fra flere datacentre rundt om i verden. Således vil klienter blive sendt til "bedste" og "nærmeste" baseret på BGP-ruter, datacenteret. Hvorfor Anycast? Hvorfor bruge Anycast i stedet for Unicast?

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Unicast er virkelig velegnet til et websted med én webserver og en moderat mængde trafik. Men hvis en tjeneste har millioner af abonnenter, bruger den normalt mange webservere, hver med den samme IP-adresse. Disse servere er fordelt geografisk for at betjene forespørgsler optimalt.

I dette scenarie vil Anycast forbedre ydeevnen (trafik sendes til brugeren med minimal forsinkelse), sikre pålideligheden af ​​tjenesten (takket være backup-servere) og belastningsbalancering - routing til flere servere vil effektivt fordele belastningen mellem dem, hvilket forbedrer hastigheden af webstedet.

Operatører tilbyder kunderne forskellige typer belastningsbalancering baseret på Anycast og DNS. Klienter kan angive IP-adresser, som anmodninger sendes til baseret på webstedets geografiske placering. Dette gør det muligt at distribuere brugerønsker mere fleksibelt.

Antag, at der er flere websteder, som du skal fordele belastningen (brugere), for eksempel en online butik med 100 anmodninger om dagen eller en populær blog. For at begrænse den region, hvorfra brugere får adgang til et bestemt websted, kan du bruge indstillingen Geo Community. Det giver dig mulighed for at begrænse den region, inden for hvilken operatøren vil annoncere ruten.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Anycast og Unicast: forskelle

Anycast bruges ofte i applikationer som DNS (Domain Name System) og CDN (Content Delivery Networks), hvilket muliggør routingbeslutninger, der forbedrer netværkets ydeevne. Indholdsleveringsnetværk bruger Anycast, fordi de håndterer store mængder trafik, og Anycast giver en række fordele i dette tilfælde (mere om dem nedenfor). I DNS giver Anycast dig mulighed for betydeligt at øge niveauet af pålidelighed og fejltolerance af tjenesten.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
I Anycast IP, når du bruger BGP, er der flere ruter til en bestemt vært. Disse er faktisk kopier af værter i flere datacentre, der bruges til at etablere forbindelser med lavere latenstid.

Så i et Anycast-netværk annonceres den samme IP-adresse fra forskellige steder, og netværket bestemmer, hvor brugerens anmodning skal rutes, baseret på "prisen" på ruten. For eksempel bruges BGP ofte til at bestemme den korteste rute til datatransmission. Når en bruger sender en Anycast-anmodning, bestemmer BGP den bedste rute for tilgængelige Anycast-servere på netværket.

Fordele ved Anycast

Reduktion af latens
Systemer med Anycast kan reducere forsinkelsen ved behandling af brugeranmodninger, fordi de giver dig mulighed for at modtage data fra den nærmeste server. Det vil sige, at brugere altid vil oprette forbindelse til den "nærmeste" (fra et routingprotokol synspunkt) DNS-server. Som et resultat reducerer Anycast interaktionstiden ved at reducere netværksafstanden mellem klienten og serveren. Dette reducerer ikke kun latens, men giver også belastningsbalancering.

hastighed

Fordi trafikken dirigeres til den nærmeste knude, og latensen mellem klienten og knudepunktet reduceres, er resultatet optimeret leveringshastighed, uanset hvor klienten anmoder om information fra.

Øget stabilitet og fejltolerance

Hvis flere servere rundt om i verden bruger den samme IP, vil trafikken blive omdirigeret til den nærmeste server, hvis en af ​​serverne fejler eller afbrydes. Som følge heraf gør Anycast tjenesten mere robust og giver bedre netværksadgang/latency/hastighed. 

Således, ved at have flere servere konstant tilgængelige for brugerne, forbedrer Anycast for eksempel DNS-stabiliteten. Hvis en node fejler, vil brugeranmodninger blive omdirigeret til en anden DNS-server uden nogen manuel indgriben eller omkonfiguration. Anycast giver praktisk talt gennemsigtig skift til andre websteder ved blot at fjerne ruterne på det problematiske websted. 

Lastbalancering

I Anycast er netværkstrafik fordelt på tværs af forskellige servere. Det vil sige, at den fungerer som en belastningsbalancer, der forhindrer enhver enkelt server i at modtage hovedparten af ​​trafikken. Lastbalancering kan f.eks. bruges, når der er flere netværksknuder i samme geografiske afstand fra anmodningskilden. I dette tilfælde er belastningen fordelt mellem knudepunkterne.

Reducer virkningen af ​​DoS-angreb 

En anden funktion ved Anycast er dens DDoS-modstand. Det er usandsynligt, at DDoS-angreb vil kunne ødelægge et Anycast-system, da de skulle overvælde alle servere i et sådant netværk med en lavine af anmodninger. 

DDoS-angreb bruger ofte botnets, som kan generere så meget trafik, at det overbelaster den angrebne server. Fordelen ved at bruge Anycast i denne situation er, at hver server er i stand til at "absorbere" en del af angrebet, hvilket reducerer belastningen på den pågældende server. Et lammelsesangreb vil højst sandsynligt være lokaliseret til serveren og vil ikke påvirke hele tjenesten.

Høj horisontal skalerbarhed

Anycast-systemer er velegnede til tjenester med store mængder trafik. Hvis en tjeneste, der bruger Anycast, kræver nye servere for at håndtere øget trafik, kan der tilføjes nye servere til netværket for at håndtere det. De kan placeres på nye eller eksisterende websteder. 

Hvis en bestemt placering oplever en stor stigning i trafik, vil tilføjelse af en server hjælpe med at balancere belastningen for det pågældende websted. Tilføjelse af en server på et nyt websted vil hjælpe med at reducere ventetider ved at skabe en ny korteste rute for nogle brugere. Begge metoder hjælper også med at forbedre stabiliteten af ​​tjenesten, efterhånden som nye servere bliver tilgængelige på netværket. På denne måde, hvis en server er overbelastet, kan du simpelthen installere en anden på et sted, der tillader den at acceptere en del af den overbelastede servers anmodninger. Dette kræver ikke nogen konfiguration fra klientens side. 

Kun på denne måde kan terabits af trafik og et meget stort antal brugere betjenes, når serveren kun har nogle få 10 eller 25 Gbps porte. 100 værter med én IP-adresse vil gøre det muligt at behandle terabit-mængder af trafik.

Nem konfigurationsstyring

Som nævnt ovenfor er en interessant brug af Anycast DNS. Du kan placere flere forskellige DNS-servere på netværksknuder, men brug én DNS-adresse. Afhængigt af hvor kilden er placeret, dirigeres anmodninger til den nærmeste knude. Dette giver en vis trafikbalancering og redundans i tilfælde af en DNS-serverfejl. På denne måde, i stedet for at konfigurere forskellige DNS-servere afhængigt af hvor de er placeret, kan konfigurationen af ​​én DNS-server udbredes til alle noder.

Anycast-netværk kan konfigureres til at dirigere anmodninger ikke kun baseret på afstand, men også på parametre såsom tilstedeværelsen af ​​en server, antallet af etablerede forbindelser. eller svartid.

Der kræves ingen specielle servere, netværk eller specielle komponenter på klientsiden for at bruge Anycast-teknologi. Men Anycast har også sine ulemper. Det menes, at implementeringen er en kompleks opgave, der kræver ekstra udstyr, pålidelige udbydere og korrekt trafikruting.

Langt fra ren kilde til skønhed

Selvom Anycast ruter brugere baseret på de færreste hop, betyder det ikke nødvendigvis den laveste latency. Latency er en mere kompleks metrik, fordi den kan være højere for én overgang end for ti.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Eksempel: Interkontinental kommunikation kan involvere et enkelt hop med meget høj latenstid.

Anycast bruges primært til UDP-baserede tjenester såsom DNS. Brugeranmodninger dirigeres til det "bedste" og "nærmeste" datacenter baseret på BGP-ruter.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Eksempel: En DNS-klientarbejdsstation med en Anycast DNS IP-adresse på 123.10.10.10 udfører DNS-opløsning til den nærmeste af tre DNS-navneservere, der er implementeret med den samme Anycast IP-adresse. Hvis Router R1 eller Server A fejler, videresendes DNS-klientpakker automatisk til den næstnærmeste DNS-server gennem routere R2 og R3. Derudover vil ruten til vores server A blive fjernet fra routingtabellerne, hvilket forhindrer yderligere brug af den navneserver.

Implementeringsscenarier

Der er to generelle skemaer, der bruges til at bestemme, hvilken server en bruger opretter forbindelse til:

  • Anycast netværkslag. Forbinder brugeren til den nærmeste server. Netværksstien fra brugeren til serveren er vigtig her.
  • Ansøgningsniveau anycast. Denne ordning har mere beregnede metrics, herunder servertilgængelighed, responstid, antal forbindelser osv. Dette afhænger af en ekstern skærm, der leverer netværksstatistik.

CDN baseret på Anycast

Lad os nu vende tilbage til at bruge Anycast i indholdsleveringsnetværk. Anycast er bestemt et interessant netværkskoncept og vinder stigende accept blandt næste generations CDN-udbydere.

CDN er et distribueret netværk af servere, der leverer indhold til slutbrugere med høj tilgængelighed og lav latenstid. Indholdsleveringsnetværk spiller en vigtig rolle i dag som rygraden i mange online medietjenester, og forbrugerne er i stigende grad mindre tolerante over for langsomme downloadhastigheder. Video- og stemmeapplikationer er særligt følsomme over for netværksjitter og latency.

Et CDN forbinder alle servere til ét netværk og sikrer hurtigere indlæsning af indhold. Nogle gange er det muligt at reducere brugerens ventetid med 5-6 sekunder. Formålet med et CDN er at optimere leveringen ved at servere indhold fra den server, der er tættest på slutbrugeren. Dette minder meget om Anycast, hvor den nærmeste server vælges baseret på slutbrugerens placering. Det ser ud til, at enhver CDN-tjenesteudbyder ville bruge Anycast som standard, men i virkeligheden er dette ikke tilfældet.

Programmer, der bruger protokoller såsom HTTP/TCP, er afhængige af, at forbindelsen er etableret. Hvis en ny Anycast-node vælges (f.eks. på grund af en serverfejl), kan tjenesten blive afbrudt. Derfor blev Anycast tidligere anbefalet til forbindelsesløse tjenester som UDP og DNS. Anycast fungerer dog også godt til forbindelsesorienterede protokoller; for eksempel fungerer TCP godt i Anycast-tilstand.

Nogle CDN-udbydere bruger Anycast-baseret routing, andre foretrækker DNS-baseret routing: den nærmeste server vælges baseret på, hvor brugerens DNS-server er placeret.

Hybrid- og multidatacenterinfrastrukturer er et andet eksempel på brugen af ​​Anycast. Load Balancing IP-adressen modtaget fra udbyderen giver dig mulighed for at fordele belastningen mellem IP-adresserne på forskellige klienttjenester i udbyderens datacenter. Takket være en hvilken som helst enhedsteknologi giver den bedre ydeevne under tung trafik, fejltolerance og hjælper med at optimere responstiden, når man har at gøre med et stort antal brugere.

I hybrid multi-datacenter-infrastrukturer kan du distribuere trafik på tværs af servere eller endda virtuelle maskiner på dedikerede servere.

Der er således et kæmpe udvalg af tekniske løsninger til at bygge infrastruktur. Du kan også konfigurere belastningsbalancering på tværs af IP-adresser på tværs af flere datacentre og målrette mod enhver enhed i en gruppe for at optimere webstedets ydeevne.

Du kan distribuere trafik i overensstemmelse med dine egne regler og definere "vægten" af hver af de distribuerede servere i hvert datacenter. Denne konfiguration er især nyttig, når der er en distribueret serverpark, og ydelsen af ​​tjenester er ujævn. Dette vil tillade trafik at blive distribueret oftere for at forbedre serverens ydeevne.

For at oprette et overvågningssystem ved hjælp af ping-kommandoen er det muligt at konfigurere sonder. Dette giver administratoren mulighed for at definere deres egne overvågningsprocedurer og få et klarere billede af status for hver komponent i infrastrukturen. På denne måde kan tilgængelighedskriterier defineres.

Det er muligt at bygge en hybrid infrastruktur: Nogle gange er det praktisk at forlade backoffice i virksomhedens netværk og outsource grænsefladedelen til udbyderen.

Det er muligt at tilføje SSL-certifikater til belastningsbalancering, kryptering af transmitterede data og sikkerhed for kommunikation mellem besøgende på webstedet og virksomhedens infrastruktur. I tilfælde af belastningsbalancering mellem datacentre kan SSL også bruges.

Anycast-tjeneste med adressebelastningsbalancering kan fås hos din udbyder. Denne funktion hjælper med at forbedre, hvordan brugere interagerer med apps baseret på placering. Det er nok at meddele, hvilke tjenester der er tilgængelige i datacentret, og trafikken vil blive omdirigeret til den nærmeste infrastruktur. Hvis der er dedikerede servere, for eksempel i Frankrig eller Nordamerika, vil klienter blive dirigeret til den nærmeste server på netværket.

En af mulighederne for at bruge Anycast er det optimale valg af en operatørs point of presence (PoP). Lad os give eksempel. LinkedIn (blokeret i Rusland) stræber ikke kun efter at forbedre ydeevnen og hastigheden af ​​sine produkter - mobil- og webapplikationer, men også at forbedre sin netværksinfrastruktur for hurtigere indholdslevering. Til denne dynamiske indholdslevering bruger LinkedIn aktivt PoPs – points of presence. Anycast bruges til at dirigere brugere til den nærmeste PoP.

Årsagen er, at i tilfælde af Unycast har hver LinkedIn PoP en unik IP-adresse. Brugere tildeles derefter til PoP baseret på deres geografiske placering ved hjælp af DNS. Problemet er, at når man brugte DNS, blev omkring 30 % af brugerne i USA omdirigeret til en suboptimal PoP. Med den gradvise implementering af Anycast faldt suboptimal PoP-tildeling fra 31 % til 10 %.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Resultaterne af pilottesten er vist i grafen, hvor Y-aksen er procentdelen af ​​optimal PoP-tildeling. Efterhånden som Anycast steg op, oplevede mange amerikanske stater en forbedring i procentdelen af ​​trafikken mod den optimale PoP.

Anycast netværksovervågning

Anycast-netværk er enkle i teorien: Flere fysiske servere tildeles den samme IP-adresse, som BGP bruger til at bestemme ruten. Men implementeringen og designet af Anycast-platforme er kompleks, og fejltolerante Anycast-netværk er særligt berømte for dette. Endnu mere udfordrende er det effektivt at overvåge et Anycast-netværk for hurtigt at identificere og isolere fejl.

Hvis tjenester bruger en tredjeparts CDN-udbyder til at betjene deres indhold, er det meget vigtigt for dem at overvåge og verificere netværkets ydeevne. Anycast-baseret CDN-overvågning fokuserer på at måle end-to-end latency og næstsidste hop-ydeevne for at forstå, hvilket datacenter der serverer indholdet. At analysere HTTP-serverheadere er en anden måde at bestemme, hvor data kommer fra.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Eksempel: HTTP-svar-headere, der angiver placeringen af ​​CDN-serveren.

For eksempel bruger CloudFlare sin egen CF-Ray-header i HTTP Response-meddelelser, som inkluderer en indikation af det datacenter, som anmodningen blev sendt til. I tilfælde af Zendesk er CF-Ray-headeren for Seattle-regionen CF-RAY: 2a21675e65fd2a3d-SEA, og for Amsterdam er det CF-RAY: 2a216896b93a0c71-AMS. Du kan også bruge HTTP-X-headere fra HTTP-svaret til at bestemme, hvor indholdet er placeret.

Andre adresseringsmetoder

Der er andre adresseringsmetoder til at dirigere brugeranmodninger til et specifikt netværksslutpunkt:

unicast

Det meste af internettet i dag bruger denne metode. Unicast - unicast-transmission, IP-adressen er kun knyttet til én specifik node på netværket. Dette kaldes en-til-en-matching. 

Multicast

Multicast bruger et en-til-mange- eller mange-til-mange-forhold. Multicast gør det muligt at sende en anmodning fra en afsender samtidigt til forskellige udvalgte slutpunkter. Dette giver klienten mulighed for at downloade en fil i bidder fra flere værter samtidigt (hvilket er nyttigt til streaming af lyd eller video). Multicast forveksles ofte med Anycast, men den største forskel er, at Anycast dirigerer afsenderen til én specifik node, selvom flere noder er tilgængelige.

Broadcast

Et datagram fra en enkelt afsender videresendes til alle endepunkter, der er knyttet til udsendelsesadressen. Netværket replikerer automatisk datagrammer for at kunne nå alle modtagere i udsendelsen (normalt på samme undernet).

Geocast

Geocast minder lidt om Multicast: anmodninger fra afsenderen sendes til flere endepunkter samtidigt. Forskellen er dog, at adressaten er bestemt af dens geografiske placering. Dette er en specialiseret form for multicast, der bruges af nogle routingprotokoller til mobile ad hoc-netværk.

En geografisk router beregner sit serviceområde og tilnærmer det. Georoutere, udveksle serviceområder, bygge rutetabeller. Georoutersystemet har en hierarkisk struktur.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Unicast, Multicast og Broadcast.

Brug af Anycast-teknologi øger niveauet af pålidelighed, fejltolerance og sikkerhed for DNS. Ved hjælp af denne teknologi tilbyder operatører deres kunder tjenester til forskellige typer belastningsbalancering baseret på DNS. I kontrolpanelet kan du angive IP-adresser, som anmodninger sendes til afhængigt af geografisk placering. Dette vil give kunderne mulighed for at distribuere brugeranmodninger mere fleksibelt.

Nogle operatører implementerer ruteovervågningsfunktioner ved hvert tilstedeværelse (POP): Systemet analyserer automatisk de korteste lokale og globale ruter for tilstedeværelsespunkter og dirigerer dem gennem de geografiske placeringer med lavest ventetid uden nedetid.

I øjeblikket er Anycast den mest stabile og pålidelige løsning til opbygning af højbelastede DNS-tjenester, som har høje krav til stabilitet og pålidelighed.

.ru-domænet understøtter 35 Anycast DNS-servere, grupperet i 20 noder, fordelt på fem Anycast-skyer. I dette tilfælde anvendes princippet om konstruktion baseret på geografiske karakteristika, dvs. Geocast. Når DNS-knudepunkter placeres, forudses det, at de vil blive flyttet til geografisk spredte lokationer tæt på de mest aktive brugere, den maksimale koncentration af russiske udbydere på det punkt, hvor knudepunktet er placeret, samt tilgængeligheden af ​​ledig kapacitet og lethed ved interaktion med webstedet.

Hvordan bygger man et CDN?

CDN er et netværk af servere, der fremskynder leveringen af ​​indhold til brugerne. Indholdsleveringsnetværk samler alle servere i ét netværk og sikrer hurtigere indholdsindlæsning. Afstanden fra serveren til brugeren spiller en vigtig rolle for indlæsningshastigheden.

CDN giver dig mulighed for at bruge servere, der er tættest på målgruppen. Dette reducerer ventetiden og hjælper med at fremskynde indlæsningen af ​​webstedsindhold for alle besøgende, hvilket er særligt vigtigt for websteder med store filer eller multimedietjenester. Typiske applikationer for CDN er e-handel og underholdning.

Netværket af yderligere servere skabt i CDN-infrastrukturen, som er placeret så tæt som muligt på brugerne, bidrager til mere stabil og hurtigere datalevering. Ifølge statistikker reducerer brug af et CDN forsinkelsen ved adgang til et websted med mere end 70 % sammenlignet med websteder uden et CDN.

Som oprette CDN ved hjælp af DNS? Opsætning af et CDN ved hjælp af Anycasts egen løsning kan være et ret dyrt projekt, men der er billigere muligheder. For eksempel kan du bruge GeoDNS og almindelige servere med unikke IP-adresser. Ved at bruge GeoDNS-tjenester kan du oprette et CDN med geolocation-funktioner, hvor beslutninger træffes baseret på den besøgendes faktiske placering frem for placeringen af ​​DNS-resolveren. Du kan konfigurere din DNS-zone til at vise amerikanske server-IP-adresser til amerikanske besøgende, men europæiske besøgende vil se den europæiske IP-adresse.

Med GeoDNS kan du returnere forskellige DNS-svar afhængigt af brugerens IP-adresse. For at gøre dette er DNS-serveren konfigureret til at returnere forskellige IP-adresser afhængigt af kilde-IP-adressen i anmodningen. Typisk bruges en GeoIP-database til at bestemme den region, hvorfra en anmodning sendes. Geolocation ved hjælp af DNS giver dig mulighed for at sende indhold til brugere fra et nærliggende websted.

GeoDNS bestemmer IP-adressen på den klient, der sendte DNS-anmodningen, eller IP-adressen på udbyderens rekursive DNS-server, som bruges ved behandling af klientanmodningen. Landet/regionen bestemmes af klientens IP- og GeoIP-database. Klienten får derefter IP-adressen på den nærmeste CDN-server. Du kan læse mere om opsætning af GeoDNS her.

Anycast eller GeoDNS?

Selvom Anycast er en fantastisk måde at levere indhold på globalt plan, mangler det specificitet. Det er her GeoDNS kommer til undsætning. Denne service giver dig mulighed for at oprette regler, der sender brugere til unikke slutpunkter baseret på deres placering.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde
Eksempel: Brugere fra Europa dirigeres til et andet slutpunkt.

Du kan også nægte adgang til domæner ved at kassere alle anmodninger. Dette er især en hurtig måde at afskære ubudne gæster.

GeoDNS giver mere præcise svar end Anycast. Hvis i tilfælde af Anycast er den korteste rute bestemt af antallet af hop, så sker der i GeoDNS routing for slutbrugere afhængigt af deres fysiske placering. Dette reducerer latens og forbedrer nøjagtigheden, når du opretter granulære routingregler.

Når man navigerer til et domæne, kontakter browseren den nærmeste DNS-server, som afhængigt af domænet udsteder en IP-adresse for at indlæse siden. Lad os antage, at en onlinebutik er populær i USA og Europa, men DNS-servere til den er kun tilgængelige i Europa. Så vil amerikanske brugere, der ønsker at bruge butikkens tjenester, blive tvunget til at sende en anmodning til den nærmeste server, og da den er meget langt væk, skal de vente længe på et svar - siden indlæses ikke hurtigt.

Når en GeoDNS-server er placeret i USA, vil brugerne allerede få adgang til den. Svaret vil være hurtigt, hvilket vil påvirke sidens indlæsningshastighed.

I en situation med en eksisterende DNS-server i USA, når en bruger fra USA navigerer til et givet domæne, vil han kontakte den nærmeste server, der vil levere den nødvendige IP. Brugeren vil blive dirigeret til den server, der indeholder sidens indhold, men da serverne med indholdet er langt væk, vil han ikke modtage det hurtigt.

Hvis du hoster CDN-servere i USA med cachelagrede data, vil klientbrowseren ved indlæsning sende en anmodning til den nærmeste DNS-server, som sender den nødvendige IP-adresse tilbage. Browseren med den modtagne IP kontakter den nærmeste CDN-server og hovedserveren, og CDN-serveren serverer det cachelagrede indhold til browseren. Mens det cachelagrede indhold indlæses, modtages de filer, der mangler for at indlæse hele webstedet, fra hovedserveren. Som et resultat reduceres webstedets indlæsningstid, da meget færre filer sendes fra hovedserveren.

At bestemme den nøjagtige placering af en specifik IP-adresse er ikke altid en let opgave: der er mange faktorer, der spiller ind, og ejerne af en række IP-adresser kan beslutte at annoncere for den på den anden side af verden (så bliver du nødt til at vente på, at databasen opdateres for at få den korrekte placering). Nogle gange tildeler VPS-udbydere adresser, der angiveligt er placeret i USA, til VPS i Singapore.

I modsætning til at bruge Anycast-adresser, sker distributionen under navneopløsning i stedet for under forbindelse til caching-serveren. Hvis den rekursive server ikke understøtter EDNS-klientundernet, bruges placeringen af ​​den rekursive server i stedet for den bruger, der vil oprette forbindelse til cacheserveren.

Klientundernet i DNS er en udvidelse af DNS (RFC7871), der definerer, hvordan rekursive DNS-servere kan sende klientoplysninger til DNS-serveren, især netværksoplysninger, som GeoDNS-serveren kan bruge til mere præcist at bestemme klientens placering.

De fleste bruger deres internetudbyders DNS-servere eller DNS-servere, der er geografisk tæt på dem, men hvis nogen i USA af en eller anden grund beslutter sig for at bruge en DNS-resolver placeret i Australien, vil de sandsynligvis ende med en IP-serveradresse tættest på Australien.

Hvis du ønsker at bruge GeoDNS, er det vigtigt at være opmærksom på disse funktioner, da det i nogle tilfælde kan øge afstanden mellem caching-serverne og klienten.

Resumé: hvis du vil kombinere flere VPS til et CDN, så er den bedste implementeringsmulighed at bruge en DNS-serverbundt med GeoDNS + Anycast-funktionen ud af kassen.

Anycast vs Unicast: hvilket er bedre at vælge i hvert enkelt tilfælde

Kilde: www.habr.com

Tilføj en kommentar