Võrgu lähimate sõlmede valimine

Võrgu lähimate sõlmede valimine

Võrgu latentsusaeg mõjutab märkimisväärselt võrguga suhtlevate rakenduste või teenuste jõudlust. Mida väiksem on latentsusaeg, seda suurem on jõudlus. See kehtib kõigi võrguteenuste kohta, alates tavalisest veebisaidist kuni andmebaasi või võrgusalvestuseni.

Hea näide on domeeninimede süsteem (DNS). DNS on oma olemuselt hajutatud süsteem, mille juursõlmed on hajutatud üle kogu planeedi. Mis tahes veebisaidile pääsemiseks peate esmalt hankima selle IP-aadressi.

Ma ei kirjelda kogu domeenitsoonide "puu" rekursiivse läbimise protsessi, vaid piirdun sellega, et domeeni IP-aadressiks teisendamiseks vajame DNS-i lahendajat, mis kogu selle töö ära teeb. meie.

Niisiis, kust saate DNS-i lahendaja aadressi?

  1. ISP annab oma DNS-lahendaja aadressi.
  2. Leidke Internetist avaliku lahendaja aadress.
  3. Võtke endale ise või kasutage oma kodusesse ruuterisse ehitatud ruuterit.

Ükskõik milline neist valikutest võimaldab teil nautida muretut veebis surfamist, kuid kui teil on vajadus teisendada suur hulk domeene IP-vormingus, peaksite lahendaja valikule lähenema hoolikamalt.

Nagu ma juba kirjutasin, on lisaks ISP lahendajale palju avalikke aadresse, näiteks saab vaadata seda nimekirja. Mõned neist võivad olla palju eelistatavamad, kuna neil on parem võrguühendus kui vaikelahendajal.

Kui nimekiri on väike, saab seda hõlpsalt käsitsi “pingida” ja viiteaegu võrrelda, kuid kui võtta kasvõi ülalmainitud nimekiri, muutub see ülesanne juba ebameeldivaks.

Seetõttu visandasin selle ülesande hõlbustamiseks petisündroomi all oma idee tõestuse Go's, nn. lähemale.

Näiteks ei hakka ma kogu lahendajate loendit kontrollima, vaid piirdun ainult kõige populaarsematega.

$ get-closer ping -f dnsresolver.txt -b=0 --count=10
Closest hosts:
	1.0.0.1 [3.4582ms]
	8.8.8.8 [6.7545ms]
	1.1.1.1 [12.6773ms]
	8.8.4.4 [16.6361ms]
	9.9.9.9 [40.0525ms]

Omal ajal, kui ma endale lahendajat valisin, piirdusin ainult põhiaadresside (1.1.1.1, 8.8.8.8, 9.9.9.9) kontrollimisega - need on ju nii ilusad ja mida sealt oodata koledad varuaadressid.

Kuid kuna hilinemiste võrdlemiseks on olemas automaatne viis, siis miks mitte laiendada loendit...

Nagu test näitas, sobib mulle rohkem "varu" Cloudflare'i aadress, kuna see on ühendatud spb-ix-iga, mis on mulle palju lähemal kui msk-ix, millesse on ühendatud ilus 1.1.1.1.

Erinevus, nagu näha, on märkimisväärne, sest ka kõige kiirem valguskiir ei jõua Peterburist Moskvasse alla 10 ms.

Lisaks lihtsale pingile on PoC-l võimalus võrrelda ka teiste protokollide (nt http ja tcp) viivitusi, samuti domeenide IP-ks teisendamise aega konkreetse lahendaja kaudu.

Traceroute'i abil on kavas võrrelda hostide sõlmede arvu, et hõlbustada hostide leidmist, millel on nendeni lühem tee.

Kood on toores, sellel puudub hunnik kontrolle, kuid see töötab puhastel andmetel üsna hästi. Oleksin tänulik igasuguse tagasiside eest, tärnid edasi githabe, ja kui kellelegi projekti idee meeldis, siis tere tulemast kaastööliseks.

Allikas: www.habr.com

Lisa kommentaar