Artimiausių tinklo mazgų pasirinkimas

Artimiausių tinklo mazgų pasirinkimas

Tinklo delsa turi didelę įtaką programų ar paslaugų, kurios sąveikauja su tinklu, našumui. Kuo mažesnis delsos laikas, tuo didesnis našumas. Tai galioja bet kuriai tinklo paslaugai, nuo įprastos svetainės iki duomenų bazės ar tinklo saugyklos.

Puikus pavyzdys yra domenų vardų sistema (DNS). DNS iš prigimties yra paskirstyta sistema, kurios šakniniai mazgai yra išsibarstę po visą planetą. Norėdami tiesiog pasiekti bet kurią svetainę, pirmiausia turite gauti jos IP adresą.

Neaprašysiu viso rekursyvaus perėjimo per domenų zonų „medį“ proceso, o apsiribosiu tuo, kad norint konvertuoti domeną į IP adresą, mums reikia DNS sprendiklio, kuris atliks visą šį darbą. mus.

Taigi, kur gauti DNS sprendiklio adresą?

  1. IPT pateikia savo DNS sprendiklio adresą.
  2. Internete suraskite viešojo sprendimo adresą.
  3. Pasiimkite savo arba naudokite įmontuotą namų maršrutizatoriuje.

Bet kuri iš šių parinkčių leis jums mėgautis nerūpestingu naršymu žiniatinklyje, tačiau jei jums reikia konvertuoti daug domenų į IP, turėtumėte atidžiau pasirinkti sprendimą.

Kaip jau rašiau, be ISP solver, yra daug viešųjų adresų, pavyzdžiui, galite peržiūrėti šį sąrašą. Kai kurie iš jų gali būti daug geresni, nes jie turi geresnį tinklo ryšį nei numatytasis sprendimas.

Kai sąrašas yra mažas, galite lengvai jį „pinguoti“ rankiniu būdu ir palyginti vėlavimo laiką, tačiau net paėmus aukščiau minėtą sąrašą, ši užduotis tampa nemaloni.

Todėl, kad būtų lengviau atlikti šią užduotį, aš, kupinas apsimetėlio sindromo, nubraižiau savo idėjos koncepcijos įrodymą „Go“. priartėti.

Kaip pavyzdį, aš nepatikrinsiu viso sprendimo priemonių sąrašo, o apsiribosiu tik populiariausiais.

$ 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]

Vienu metu, rinkdamasi sau sprendimą, apsiribojau tik pagrindinių adresų (1.1.1.1, 8.8.8.8, 9.9.9.9) patikrinimu - juk jie tokie gražūs, o ko čia tikėtis bjaurūs atsarginiai adresai.

Tačiau kadangi yra automatizuotas būdas palyginti vėlavimus, kodėl gi neišplėtus sąrašo...

Kaip parodė testas, man labiau tinka „atsarginis“ „Cloudflare“ adresas, nes jis yra prijungtas prie spb-ix, kuris man yra daug artimesnis nei msk-ix, prie kurio prijungtas gražus 1.1.1.1

Skirtumas, kaip matote, yra reikšmingas, nes net greičiausias šviesos spindulys negali pasiekti iš Sankt Peterburgo į Maskvą greičiau nei per 10 ms.

Be paprasto ping, PoC taip pat turi galimybę palyginti kitų protokolų, tokių kaip http ir tcp, delsą, taip pat laiką, per kurį domenai konvertuojami į IP naudojant konkretų sprendimą.

Planuojama palyginti mazgų skaičių tarp kompiuterių naudojant traceroute, kad būtų lengviau rasti pagrindinius kompiuterius, kurių kelias iki jų yra trumpesnis.

Kodas yra neapdorotas, jam trūksta daugybės patikrinimų, tačiau jis gana gerai veikia su švariais duomenimis. Būčiau dėkingas už bet kokį atsiliepimą, žvaigždės github, o jei kam patiko projekto idėja, kviečiame tapti bendradarbiu.

Šaltinis: www.habr.com

Добавить комментарий