Tarmoqdagi eng yaqin tugunlarni tanlash

Tarmoqdagi eng yaqin tugunlarni tanlash

Tarmoqning kechikishi tarmoq bilan o'zaro aloqada bo'lgan ilovalar yoki xizmatlarning ishlashiga sezilarli ta'sir ko'rsatadi. Kechikish qancha past bo'lsa, unumdorlik shunchalik yuqori bo'ladi. Bu oddiy veb-saytdan ma'lumotlar bazasi yoki tarmoq xotirasigacha bo'lgan har qanday tarmoq xizmatiga tegishli.

Yaxshi misol bu domen nomlari tizimi (DNS). DNS tabiatan taqsimlangan tizim bo'lib, ildiz tugunlari butun sayyora bo'ylab tarqalgan. Har qanday veb-saytga oddiygina kirish uchun avval uning IP manzilini olishingiz kerak.

Men domen zonalarining "daraxtini" rekursiv ravishda o'tish jarayonini tasvirlamayman, lekin domenni IP-manzilga aylantirish uchun bizga bu ishlarni bajaradigan DNS-resolver kerakligi bilan cheklanaman. Biz.

Xo'sh, DNS-resolver manzilini qayerdan olasiz?

  1. Internet-provayder o'zining DNS-rezolyutsiyasi manzilini beradi.
  2. Internetda umumiy hal qiluvchining manzilini toping.
  3. O'zingizni tanlang yoki uy routeringizga o'rnatilganidan foydalaning.

Ushbu variantlardan har biri sizga World Wide Web-da bemalol sayohat qilish imkonini beradi, ammo agar sizda ko'p sonli domenlarni IP-ga aylantirish kerak bo'lsa, siz hal qiluvchi tanlashga ehtiyotkorlik bilan yondashishingiz kerak.

Men allaqachon yozganimdek, ISP-ni hal qiluvchidan tashqari, ko'plab umumiy manzillar mavjud, masalan, siz ushbu ro'yxatni ko'rishingiz mumkin. Ulardan ba'zilari ko'proq afzalroq bo'lishi mumkin, chunki ular standart hal qiluvchiga qaraganda yaxshiroq tarmoq ulanishiga ega.

Ro'yxat kichik bo'lsa, siz uni qo'lda osongina "ping" qilishingiz va kechikish vaqtlarini solishtirishingiz mumkin, lekin agar siz hatto yuqorida aytib o'tilgan ro'yxatni olsangiz, bu vazifa allaqachon yoqimsiz bo'lib qoladi.

Shuning uchun, bu vazifani osonlashtirish uchun, men yolg'onchi sindromi bilan to'lib-toshgan holda, Go'dagi g'oyamning kontseptsiyasini isbotladim. yaqinlashish.

Misol tariqasida, men hal qiluvchilarning to'liq ro'yxatini tekshirmayman, lekin o'zimni faqat eng mashhurlari bilan cheklayman.

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

Bir vaqtlar men o'zim uchun rezolyutsiyani tanlayotganda, men faqat asosiy manzillarni (1.1.1.1, 8.8.8.8, 9.9.9.9) tekshirish bilan chegaralangan edim - axir ular juda chiroyli va undan nimani kutish mumkin yomon zaxira manzillar.

Ammo kechikishlarni solishtirishning avtomatlashtirilgan usuli borligi sababli, nega ro'yxatni kengaytirmaysiz ...

Sinov shuni ko'rsatdiki, "zaxira" Cloudflare manzili men uchun ko'proq mos keladi, chunki u spb-ix-ga ulangan, bu menga chiroyli 1.1.1.1 ulangan msk-ix-ga qaraganda ancha yaqinroq.

Ko'rib turganingizdek, farq juda muhim, chunki hatto eng tez yorug'lik nuri ham Sankt-Peterburgdan Moskvaga 10 ms dan kamroq vaqt ichida etib bora olmaydi.

Oddiy ping bilan bir qatorda, PoC ham http va tcp kabi boshqa protokollar uchun kechikishlarni, shuningdek, ma'lum bir hal qiluvchi orqali domenlarni IP-ga o'tkazish vaqtini solishtirish imkoniyatiga ega.

Xostlar o'rtasidagi tugunlar sonini traceroute yordamida solishtirish, ularga qisqaroq yo'lga ega xostlarni topishni osonlashtirish rejalashtirilmoqda.

Kod qo'pol, unda bir nechta tekshiruvlar yo'q, lekin u toza ma'lumotlarda juda yaxshi ishlaydi. Men har qanday fikr-mulohaza uchun minnatdor bo'lardim, yulduzlar github, va agar kimgadir loyiha g'oyasi yoqqan bo'lsa, unda ishtirokchi bo'lishga xush kelibsiz.

Manba: www.habr.com

a Izoh qo'shish