اختيار أقرب العقد في الشبكة

اختيار أقرب العقد في الشبكة

يؤثر زمن استجابة الشبكة بشكل كبير على أداء التطبيقات أو الخدمات التي تتفاعل مع الشبكة. كلما انخفض زمن الوصول، زاد الأداء. وينطبق هذا على أي خدمة شبكة، بدءًا من موقع الويب العادي وحتى قاعدة البيانات أو وحدة تخزين الشبكة.

وخير مثال على ذلك هو نظام اسم المجال (DNS). DNS هو بطبيعته نظام موزع، مع العقد الجذرية المنتشرة في جميع أنحاء الكوكب. للوصول إلى أي موقع ويب ببساطة، تحتاج أولاً إلى الحصول على عنوان IP الخاص به.

لن أصف العملية الكاملة للمرور بشكل متكرر عبر "شجرة" مناطق النطاق، لكنني سأقتصر على حقيقة أنه من أجل تحويل المجال إلى عنوان IP، نحتاج إلى محلل DNS الذي سيقوم بكل هذا العمل من أجل نحن.

إذًا، من أين تحصل على عنوان محلل DNS؟

  1. يوفر مزود خدمة الإنترنت عنوان محلل DNS الخاص به.
  2. ابحث عن عنوان أحد المحللين العامين على الإنترنت.
  3. التقط جهازًا خاصًا بك أو استخدم الجهاز المدمج في جهاز التوجيه المنزلي الخاص بك.

سيسمح لك أي من هذه الخيارات بالاستمتاع بالتصفح الخالي من الهموم على شبكة الويب العالمية، ولكن إذا كنت بحاجة إلى تحويل عدد كبير من المجالات إلى IP، فيجب عليك التعامل مع اختيار المحلل بعناية أكبر.

كما كتبت بالفعل، بالإضافة إلى محلل ISP، هناك العديد من العناوين العامة، على سبيل المثال، يمكنك التحقق من هذه القائمة. قد يكون بعضها أكثر تفضيلاً لأنها تتمتع باتصال شبكة أفضل من المحلل الافتراضي.

عندما تكون القائمة صغيرة، يمكنك بسهولة "اختبار الاتصال" بها يدويًا ومقارنة أوقات التأخير، ولكن إذا أخذت القائمة المذكورة أعلاه، فستصبح هذه المهمة غير سارة.

لذلك، لتسهيل هذه المهمة، قمت، وأنا مصاب بمتلازمة المحتال، برسم دليل على مفهوم فكرتي حول Go يسمى اقترب أكثر.

على سبيل المثال، لن أتحقق من القائمة الكاملة للمحللات، لكنني سأقتصر على الأكثر شيوعًا فقط.

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

في وقت ما، عندما كنت أختار محللًا لنفسي، اقتصرت على التحقق فقط من العناوين الرئيسية (1.1.1.1، 8.8.8.8، 9.9.9.9) - فهي جميلة جدًا، وماذا يمكن أن تتوقع منها عناوين النسخ الاحتياطي القبيحة.

ولكن بما أن هناك طريقة آلية لمقارنة التأخيرات، فلماذا لا نقوم بتوسيع القائمة...

كما أظهر الاختبار، فإن عنوان Cloudflare "الاحتياطي" هو أكثر ملاءمة بالنسبة لي، لأنه متصل بـ spb-ix، وهو أقرب إلي بكثير من msk-ix، الذي يحتوي على 1.1.1.1 الجميل الموصول به.

الفرق، كما ترون، كبير، لأنه حتى أسرع شعاع الضوء لا يمكن أن يصل من سانت بطرسبرغ إلى موسكو في أقل من 10 مللي ثانية.

بالإضافة إلى اختبار الاتصال البسيط، تتمتع تقنية PoC أيضًا بفرصة مقارنة التأخيرات الخاصة بالبروتوكولات الأخرى، مثل http وtcp، بالإضافة إلى الوقت اللازم لتحويل النطاقات إلى IP من خلال محلل محدد.

توجد خطط لمقارنة عدد العقد بين الأجهزة المضيفة باستخدام نظام التتبع لتسهيل العثور على الأجهزة المضيفة التي لها مسار أقصر إليها.

الكود بسيط، ويفتقر إلى مجموعة من عمليات التحقق، ولكنه يعمل بشكل جيد على البيانات النظيفة. وسأكون ممتنا أي ردود فعل، والنجوم githabe، وإذا أعجب أي شخص فكرة المشروع، فمرحبا بك ليصبح مساهما.

المصدر: www.habr.com

إضافة تعليق