Latenza baxxa tad-DNS hija essenzjali għall-ibbrawżjar mgħaġġel fuq l-internet. Biex timminimizzaha, huwa importanti li tagħżel bir-reqqa s-servers DNS u
Din hija r-raġuni għaliex id-DNS kien oriġinarjament iddisinjat bħala protokoll ħafna cacheable. L-amministraturi taż-żona jistabbilixxu time to live (TTL) għal daħliet individwali, u s-solventi jużaw din l-informazzjoni meta jaħżnu l-entrati fil-memorja biex jevitaw traffiku mhux meħtieġ.
Il-caching huwa effettiv? Ftit snin ilu, ir-riċerka żgħira tiegħi wriet li ma kinitx perfetta. Ejja nagħtu ħarsa lejn l-istat attwali tal-affarijiet.
Biex tiġbor l-informazzjoni I patched
Is-sett tad-dejta li jirriżulta jikkonsisti minn 1 rekord (isem, qtype, TTL, timestamp). Hawnhekk hawn id-distribuzzjoni ġenerali TTL (l-assi X huwa TTL f'sekondi):
Apparti minn ħotob minuri f'86 (l-aktar għar-rekords SOA), huwa pjuttost ċar li t-TTLs huma fil-medda baxxa. Ejja nagħtu ħarsa aktar mill-qrib:
Tajjeb, TTLs akbar minn siegħa mhumiex statistikament sinifikanti. Imbagħad ejja niffukaw fuq il-medda 1−0:
Il-biċċa l-kbira tat-TTLs huma minn 0 sa 15-il minuta:
Il-maġġoranza l-kbira huma minn 0 sa 5 minuti:
Mhuwiex tajjeb ħafna.
Id-distribuzzjoni kumulattiva tagħmel il-problema saħansitra aktar ovvja:
Nofs it-tweġibiet tad-DNS għandhom TTL ta' minuta jew inqas, u tliet kwarti għandhom TTL ta' 1 minuti jew inqas.
Imma stenna, fil-fatt huwa agħar. Wara kollox, dan huwa TTL minn servers awtorevoli. Madankollu, risolvers tal-klijenti (eż. routers, caches lokali) jirċievu TTL minn resolvers upstream, u jonqos kull sekonda.
Allura l-klijent jista 'attwalment juża kull dħul għal, bħala medja, nofs it-TTL oriġinali qabel ma jibgħat talba ġdida.
Forsi dawn it-TTLs baxxi ħafna japplikaw biss għal talbiet mhux tas-soltu u mhux websajts u APIs popolari? Ejja nagħtu ħarsa:
L-assi X huwa TTL, l-assi Y huwa popolarità tal-mistoqsija.
Sfortunatament, il-mistoqsijiet l-aktar popolari huma wkoll l-agħar għall-cache.
Ejja nżumjaw:
Verdett: huwa tassew ħażin. Kien diġà ħażin qabel, iżda marret saħansitra għall-agħar. Il-caching tad-DNS sar prattikament inutli. Hekk kif inqas nies jużaw is-solvent DNS tal-ISP tagħhom (għal raġunijiet tajba), iż-żieda fil-latency ssir aktar notevoli.
Il-caching tad-DNS sar utli biss għal kontenut li ħadd ma jżur.
Jekk jogħġbok innota wkoll li s-softwer jista '
Għaliex?
Għaliex ir-rekords tad-DNS huma stabbiliti għal tali TTL baxx?
- Bilanċaturi tat-tagħbija legacy tħallew b'settings default.
- Hemm miti li l-ibbilanċjar tat-tagħbija tad-DNS jiddependi fuq it-TTL (dan mhux minnu - minn żmien Netscape Navigator, il-klijenti għażlu indirizz IP każwali minn sett ta' RRs u ppruvaw ieħor b'mod trasparenti jekk ma jistgħux jikkonnettjaw)
- L-amministraturi jridu japplikaw il-bidliet immedjatament, għalhekk huwa aktar faċli li tippjana.
- L-amministratur ta 'server DNS jew load balancer jara l-kompitu tiegħu bħala li juża b'mod effiċjenti l-konfigurazzjoni li jitolbu l-utenti, u mhux iħaffef is-siti u s-servizzi.
- TTLs baxxi jagħtuk paċi tal-moħħ.
- In-nies inizjalment iffissaw TTLs baxxi għall-ittestjar u mbagħad jinsew ibiddluhom.
Ma inkludiex "failover" fil-lista għax qed issir dejjem inqas rilevanti. Jekk għandek bżonn tindirizza mill-ġdid lill-utenti lejn netwerk ieħor biss biex turi paġna ta 'żball meta assolutament kollox ikun miksur, dewmien ta' aktar minn minuta huwa probabbilment aċċettabbli.
Barra minn hekk, TTL ta’ minuta tfisser li jekk servers DNS awtorevoli jiġu mblukkati għal aktar minn minuta, ħadd ieħor ma jkun jista’ jaċċessa servizzi dipendenti. U redundancy mhux se jgħin jekk il-kawża hija żball ta 'konfigurazzjoni jew hack. Min-naħa l-oħra, b'TTLs raġonevoli, ħafna klijenti se jkomplu jużaw il-konfigurazzjoni preċedenti u qatt ma jindunaw xejn.
Servizzi CDN u load balancers huma fil-biċċa l-kbira tat-tort għal TTLs baxxi, speċjalment meta jikkombinaw CNAMEs ma 'TTLs baxxi u rekords ma' TTLs ugwalment baxxi (iżda indipendenti):
$ drill raw.githubusercontent.com raw.githubusercontent.com. 9 IN CNAME github.map.fastly.net. github.map.fastly.net. 20 IN A 151.101.128.133 github.map.fastly.net. 20 IN A 151.101.192.133 github.map.fastly.net. 20 IN A 151.101.0.133 github.map.fastly.net. 20 IN A 151.101.64.133
Kull meta jiskadi s-CNAME jew xi wieħed mir-rekords A, trid tintbagħat talba ġdida. It-tnejn għandhom TTL ta' 30 sekonda, iżda mhuwiex l-istess. It-TTL medju attwali se jkun ta '15-il sekonda.
Imma stenna! Huwa saħansitra agħar. Xi resolvers jaġixxu ħażin ħafna f'din is-sitwazzjoni b'żewġ TTLs baxxi assoċjati:
$ drill raw.githubusercontent.com @4.2.2.2 raw.githubusercontent.com. 1 FIS-CNAME github.map.fastly.net. github.map.fastly.net. 1 F’A 151.101.16.133
Is-solvent Level3 probabbilment jaħdem fuq BIND. Jekk tkompli tibgħat din it-talba, dejjem jintbagħat lura TTL ta' 1. raw.githubusercontent.com
qatt ma jiġi cached.
Hawn eżempju ieħor ta 'sitwazzjoni bħal din b'dominju popolari ħafna:
$ drill detectportal.firefox.com @1.1.1.1 detectportal.firefox.com. 25 IN CNAME detectportal.prod.mozaws.net. detectportal.prod.mozaws.net. 26 IN CNAME detectportal.firefox.com-v2.edgesuite.net. detectportal.firefox.com-v2.edgesuite.net. 10668 IN CNAME a1089.dscd.akamai.net. a1089.dscd.akamai.net. 10 IN A 104.123.50.106 a1089.dscd.akamai.net. 10 IN A 104.123.50.88
Mill-inqas tliet rekords CNAME. Ay. Wieħed għandu TTL deċenti, iżda huwa kompletament inutli. CNAMEs oħra għandhom TTL inizjali ta '60 sekonda, iżda għal oqsma akamai.net
it-TTL massimu huwa ta' 20 sekonda u l-ebda wieħed minnhom ma huwa f'fażi.
Xi ngħidu dwar oqsma li kontinwament jivvutaw it-tagħmir Apple?
$ drill 1-courier.push.apple.com @4.2.2.2 1-courier.push.apple.com. 1253 IN CNAME 1.courier-push-apple.com.akadns.net. 1.courier-push-apple.com.akadns.net. 1 IN CNAME gb-courier-4.push-apple.com.akadns.net. gb-courier-4.push-apple.com.akadns.net. 1 IN A 17.57.146.84 gb-courier-4.push-apple.com.akadns.net. 1 IN A 17.57.146.85
L-istess problema bħal Firefox u TTL se jkunu mwaħħla f'sekonda l-biċċa l-kbira tal-ħin meta tuża r-resolver Level1.
Dropbox?
$ drill client.dropbox.com @8.8.8.8 client.dropbox.com. 7 FIS-CNAME client.dropbox-dns.com. client.dropbox-dns.com. 59 F'A 162.125.67.3 $ drill client.dropbox.com @4.2.2.2 client.dropbox.com. 1 FIS-CNAME client.dropbox-dns.com. client.dropbox-dns.com. 1 F'A 162.125.64.3
Fl-irrekordjar safebrowsing.googleapis.com
Il-valur TTL huwa ta '60 sekonda, bħal domains Facebook. U, għal darb'oħra, mill-perspettiva tal-klijent, dawn il-valuri jitnaqqsu bin-nofs.
Kif dwar l-iffissar ta 'TTL minimu?
Bl-użu tal-isem, it-tip ta 'talba, TTL, u l-timestamp inizjalment maħżun, ktibt script biex jissimula 1,5 miljun talba li jgħaddu minn resolver caching biex jistma l-volum ta' talbiet mhux meħtieġa mibgħuta minħabba dħul cache skadut.
47,4% tat-talbiet saru wara li kien skada rekord eżistenti. Dan huwa għoli bla raġuni.
X'se jkun l-impatt fuq il-caching jekk jiġi stabbilit it-TTL minimu?
L-assi X huwa l-valuri minimi TTL. Rekords b'TTLs tas-sors 'il fuq minn dan il-valur mhumiex affettwati.
L-assi Y huwa l-perċentwal ta' talbiet minn klijent li diġà għandu dħul fil-cache, iżda skada u qed jagħmel talba ġdida.
Is-sehem ta’ talbiet “extra” jitnaqqas minn 47% għal 36% billi sempliċiment jiġi stabbilit it-TTL minimu għal 5 minuti. Billi tistabbilixxi t-TTL minimu għal 15-il minuta, in-numru ta 'dawn it-talbiet jinżel għal 29%. TTL minimu ta' siegħa jnaqqashom għal 1%. Differenza sinifikanti!
Kif dwar li ma tbiddel xejn fuq in-naħa tas-server, iżda minflok tissettja t-TTL minimu fil-caches DNS tal-klijenti (routers, resolvers lokali)?
In-numru ta' talbiet meħtieġa jinżel minn 47% għal 34% b'TTL minimu ta' 5 minuti, għal 25% b'minimu ta' 15-il minuta, u għal 13% b'minimu ta' siegħa. Forsi 1 minuta hija l-aħjar.
L-impatt ta’ din il-bidla żgħira huwa enormi.
X'inhuma l-konsegwenzi?
Naturalment, is-servizz jista 'jiġi mċaqlaq għal fornitur ġdid ta' sħab, server ġdid, netwerk ġdid, li jeħtieġ li l-klijenti jużaw l-aħħar rekords DNS. U TTL pjuttost żgħir jgħin biex tagħmel tali transizzjoni bla xkiel u imperċettibbli. Iżda bit-tranżizzjoni għal infrastruttura ġdida, ħadd ma jistenna li l-klijenti jemigraw lejn rekords DNS ġodda fi żmien minuta, 1 minuti jew 5-il minuta. L-issettjar tat-TTL minimu għal 15 minuta minflok 40 minuti mhux se jipprevjeni lill-utenti milli jaċċessaw is-servizz.
Madankollu, dan se jnaqqas b'mod sinifikanti l-latenza u jtejjeb il-privatezza u l-affidabbiltà billi jevita talbiet mhux meħtieġa.
Naturalment, l-RFCs jgħidu li TTL għandu jiġi segwit b'mod strett. Iżda r-realtà hija li s-sistema DNS saret wisq ineffiċjenti.
Jekk qed taħdem ma' servers DNS awtorevoli, jekk jogħġbok iċċekkja t-TTL tiegħek. Tassew għandek bżonn valuri ridiculously baxxi bħal dawn?
Naturalment, hemm raġunijiet tajbin biex jiġu stabbiliti TTLs żgħar għar-rekords DNS. Iżda mhux għall-75% tat-traffiku DNS li għadu prattikament mhux mibdul.
U jekk għal xi raġuni verament għandek bżonn tuża TTLs baxxi għad-DNS, fl-istess ħin kun żgur li s-sit tiegħek ma jkollux il-caching attivat. Għall-istess raġunijiet.
Jekk għandek cache DNS lokali taħdem, bħal
Sors: www.habr.com