Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة

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

بشكل أساسي، يتم الإعلان عن نفس المسار من مراكز بيانات متعددة حول العالم. وبالتالي، سيتم إرسال العملاء إلى "الأفضل" و"الأقرب" بناءً على طرق BGP، أي مركز البيانات. لماذا أني كاست؟ لماذا نستخدم Anycast بدلاً من Unicast؟

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
يعد Unicast مناسبًا حقًا لموقع به خادم ويب واحد وكمية معتدلة من حركة المرور. ومع ذلك، إذا كانت الخدمة تضم ملايين المشتركين، فإنها عادةً ما تستخدم العديد من خوادم الويب، لكل منها عنوان IP نفسه. يتم توزيع هذه الخوادم جغرافيًا لخدمة الطلبات على النحو الأمثل.

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

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

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

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
Anycast وUncast: الاختلافات

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

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
في Anycast IP، عند استخدام BGP، هناك طرق متعددة لمضيف معين. هذه في الواقع نسخ من الأجهزة المضيفة في مراكز بيانات متعددة، تُستخدم لإنشاء اتصالات ذات زمن استجابة أقل.

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

فوائد Anycast

تقليل الكمون
يمكن للأنظمة المزودة بـ Anycast تقليل زمن الوصول عند معالجة طلبات المستخدم لأنها تسمح لك بتلقي البيانات من أقرب خادم. وهذا يعني أن المستخدمين سيتصلون دائمًا بخادم DNS "الأقرب" (من وجهة نظر بروتوكول التوجيه). ونتيجة لذلك، يقلل Anycast من وقت التفاعل عن طريق تقليل مسافة الشبكة بين العميل والخادم. وهذا لا يقلل من زمن الوصول فحسب، بل يوفر أيضًا موازنة التحميل.

سرعة

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

زيادة الاستقرار والتسامح مع الخطأ

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

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

توزيع الحمل

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

تقليل تأثير هجمات DoS 

ميزة أخرى لـ Anycast هي مقاومة DDoS. من غير المرجح أن تتمكن هجمات DDoS من إسقاط نظام Anycast، حيث سيتعين عليها إرباك جميع الخوادم في مثل هذه الشبكة بسيل كبير من الطلبات. 

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

قابلية التوسع الأفقية العالية

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

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

بهذه الطريقة فقط يمكن خدمة تيرابايت من حركة المرور وعدد كبير جدًا من المستخدمين عندما يكون لدى الخادم عدد قليل من منافذ 10 أو 25 جيجابت في الثانية فقط. 100 مضيف بعنوان IP واحد سيجعل من الممكن معالجة كميات كبيرة من حركة المرور بالتيرابت.

إدارة التكوين سهلة

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

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

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

بعيدًا عن المصدر النقي للجمال

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

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
على سبيل المثال: قد تتضمن الاتصالات العابرة للقارات قفزة واحدة ذات زمن وصول مرتفع جدًا.

يتم استخدام Anycast بشكل أساسي للخدمات المستندة إلى UDP مثل DNS. يتم توجيه طلبات المستخدم إلى مركز البيانات "الأفضل" و"الأقرب" استنادًا إلى مسارات BGP.

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
مثال: تقوم محطة عمل عميل DNS التي تحمل عنوان Anycast DNS IP وهو 123.10.10.10 بإجراء تحليل DNS إلى أقرب خوادم أسماء DNS الثلاثة المنتشرة باستخدام نفس عنوان Anycast IP. إذا فشل جهاز التوجيه R1 أو الخادم A، فسيتم إعادة توجيه حزم عميل DNS تلقائيًا إلى أقرب خادم DNS التالي من خلال جهازي التوجيه R2 وR3. بالإضافة إلى ذلك، ستتم إزالة المسار إلى خادمنا A من جداول التوجيه، مما يمنع الاستخدام الإضافي لخادم الأسماء هذا.

سيناريوهات النشر

هناك نظامان عامان يتم استخدامهما لتحديد الخادم الذي يتصل به المستخدم:

  • طبقة شبكة Anycast. Соединяет пользователя с ближайшим сервером. Здесь важен сетевой путь от пользователя к серверу.
  • مستوى التطبيق Anycast. يحتوي هذا المخطط على مقاييس محسوبة أكثر، بما في ذلك توفر الخادم ووقت الاستجابة وعدد الاتصالات وما إلى ذلك. ويعتمد هذا على شاشة خارجية توفر إحصائيات الشبكة.

CDN يعتمد على Anycast

لنعد الآن إلى استخدام Anycast في شبكات توصيل المحتوى. من المؤكد أن Anycast هو مفهوم شبكات مثير للاهتمام ويحظى بقبول متزايد بين موفري CDN من الجيل التالي.

CDN عبارة عن شبكة موزعة من الخوادم التي تقدم المحتوى للمستخدمين النهائيين بتوفر عالٍ وزمن وصول منخفض. تلعب شبكات توصيل المحتوى دورًا مهمًا اليوم باعتبارها العمود الفقري للعديد من خدمات الوسائط عبر الإنترنت، وأصبح المستهلكون أقل تسامحًا بشكل متزايد مع سرعات التنزيل البطيئة. تعتبر تطبيقات الفيديو والصوت حساسة بشكل خاص لاهتزاز الشبكة وزمن الوصول.

تقوم شبكة CDN بتوصيل جميع الخوادم في شبكة واحدة وتضمن تحميل المحتوى بشكل أسرع. في بعض الأحيان يكون من الممكن تقليل وقت انتظار المستخدم بمقدار 5-6 ثوانٍ. الغرض من CDN هو تحسين التسليم من خلال تقديم المحتوى من الخادم الأقرب إلى المستخدم النهائي. وهذا مشابه جدًا لـ Anycast، حيث يتم تحديد أقرب خادم بناءً على موقع المستخدم النهائي. يبدو أن كل مزود خدمة CDN سيستخدم Anycast افتراضيًا، ولكن في الواقع ليس هذا هو الحال.

تعتمد التطبيقات التي تستخدم بروتوكولات مثل HTTP/TCP على الاتصال الجاري إنشاؤه. إذا تم تحديد عقدة Anycast جديدة (على سبيل المثال، بسبب فشل الخادم)، فقد تتم مقاطعة الخدمة. ولهذا السبب تمت التوصية باستخدام Anycast مسبقًا للخدمات غير المتصلة مثل UDP وDNS. ومع ذلك، يعمل Anycast أيضًا بشكل جيد مع البروتوكولات الموجهة للاتصال؛ على سبيل المثال، يعمل TCP بشكل جيد في وضع Anycast.

يستخدم بعض موفري CDN التوجيه المستند إلى Anycast، والبعض الآخر يفضل التوجيه المستند إلى DNS: يتم تحديد أقرب خادم بناءً على مكان وجود خادم DNS الخاص بالمستخدم.

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

في البنى التحتية المختلطة لمراكز البيانات المتعددة، يمكنك توزيع حركة المرور عبر الخوادم أو حتى الأجهزة الافتراضية على خوادم مخصصة.

وبالتالي، هناك مجموعة كبيرة من الحلول التقنية لبناء البنية التحتية. يمكنك أيضًا تكوين موازنة التحميل عبر عناوين IP عبر مراكز بيانات متعددة، واستهداف أي جهاز في مجموعة لتحسين أداء الموقع.

يمكنك توزيع حركة المرور وفقًا لقواعدك الخاصة، مع تحديد "وزن" كل خادم من الخوادم الموزعة في كل مركز بيانات. يكون هذا التكوين مفيدًا بشكل خاص عندما يكون هناك منتزه خادم موزع ويكون أداء الخدمات غير متساوٍ. سيسمح هذا بتوزيع حركة المرور بشكل أكثر تكرارًا لتحسين أداء الخادم.

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

من الممكن بناء بنية تحتية هجينة: في بعض الأحيان يكون من المناسب ترك المكتب الخلفي في شبكة الشركة، والاستعانة بمصادر خارجية لجزء الواجهة للموفر.

من الممكن إضافة شهادات SSL لموازنة التحميل وتشفير البيانات المرسلة وأمن الاتصال بين زوار الموقع والبنية التحتية للشركة. في حالة موازنة التحميل بين مراكز البيانات، يمكن أيضًا استخدام SSL.

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

أحد خيارات استخدام Anycast هو الاختيار الأمثل لنقطة تواجد المشغل (PoP). هيا نعطي مثال. تسعى LinkedIn (المحظورة في روسيا) ليس فقط إلى تحسين أداء وسرعة منتجاتها - تطبيقات الهاتف المحمول والويب، ولكن أيضًا إلى تحسين البنية التحتية لشبكتها من أجل توصيل المحتوى بشكل أسرع. من أجل تقديم المحتوى الديناميكي هذا، يستخدم LinkedIn نقاط التواجد (PoPs) بشكل فعال. يتم استخدام Anycast لتوجيه المستخدمين إلى أقرب نقطة وصول (PoP).

والسبب هو أنه في حالة Unycast، يكون لكل LinkedIn PoP عنوان IP فريد. يتم بعد ذلك تعيين المستخدمين إلى PoP بناءً على موقعهم الجغرافي باستخدام DNS. تكمن المشكلة في أنه عند استخدام DNS، تتم إعادة توجيه حوالي 30% من المستخدمين في الولايات المتحدة إلى نقطة اتصال دون المستوى الأمثل. مع التنفيذ المرحلي لـ Anycast، انخفض تخصيص PoP دون المستوى الأمثل من 31% إلى 10%.

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
تظهر نتائج الاختبار التجريبي في الرسم البياني، حيث يمثل المحور Y النسبة المئوية لتعيين PoP الأمثل. مع تكثيف Anycast، شهدت العديد من الولايات الأمريكية تحسنًا في النسبة المئوية لحركة المرور نحو نقطة الاتصال المثالية.

مراقبة شبكة Anycast

تعتبر شبكات Anycast بسيطة من الناحية النظرية: يتم تعيين نفس عنوان IP لعدة خوادم فعلية، والذي يستخدمه BGP لتحديد المسار. لكن تنفيذ وتصميم منصات Anycast أمر معقد، وتشتهر شبكات Anycast المتسامحة مع الأخطاء بشكل خاص بهذا. والأكثر صعوبة هو مراقبة شبكة Anycast بشكل فعال لتحديد الأخطاء وعزلها بسرعة.

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

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
مثال: رؤوس استجابة HTTP تشير إلى موقع خادم CDN.

على سبيل المثال، يستخدم CloudFlare رأس CF-Ray الخاص به في رسائل استجابة HTTP، والذي يتضمن إشارة إلى مركز البيانات الذي تم تقديم الطلب إليه. في حالة Zendesk، يكون رأس CF-Ray لمنطقة سياتل هو CF-RAY: 2a21675e65fd2a3d-SEA، وبالنسبة لأمستردام فهو CF-RAY: 2a216896b93a0c71-AMS. يمكنك أيضًا استخدام رؤوس HTTP-X من استجابة HTTP لتحديد مكان وجود المحتوى.

طرق معالجة أخرى

هناك طرق معالجة أخرى لتوجيه طلبات المستخدم إلى نقطة نهاية شبكة محددة:

الإرسال

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

الإرسال المتعدد

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

بث

تتم إعادة توجيه مخطط البيانات من مرسل واحد إلى جميع نقاط النهاية المرتبطة بعنوان البث. تقوم الشبكة تلقائيًا بنسخ مخططات البيانات لتتمكن من الوصول إلى جميع المستلمين في البث (عادةً على نفس الشبكة الفرعية).

البث الجغرافي

يشبه Geocast إلى حد ما البث المتعدد: يتم إرسال الطلبات من المرسل إلى نقاط نهاية متعددة في وقت واحد. لكن الفرق هو أن المرسل إليه يتم تحديده حسب موقعه الجغرافي. هذا هو شكل متخصص من البث المتعدد الذي تستخدمه بعض بروتوكولات التوجيه لشبكات المحمول المخصصة.

يقوم جهاز التوجيه الجغرافي بحساب منطقة الخدمة الخاصة به وتقريبها. تقوم أجهزة التوجيه الجغرافية، التي تتبادل مناطق الخدمة، ببناء جداول التوجيه. يحتوي نظام التوجيه الجغرافي على هيكل هرمي.

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
البث الأحادي والبث المتعدد والبث.

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

يقوم بعض المشغلين بتنفيذ إمكانات مراقبة المسار في كل نقطة تواجد (POP): يقوم النظام تلقائيًا بتحليل أقصر الطرق المحلية والعالمية لنقاط التواجد وتوجيهها عبر المواقع الجغرافية ذات زمن الاستجابة الأقل مع عدم التوقف عن العمل.

في الوقت الحالي، يعد Anycast الحل الأكثر استقرارًا وموثوقية لبناء خدمات DNS عالية التحميل، والتي لها متطلبات عالية من حيث الاستقرار والموثوقية.

Домен .ru поддерживает 35 серверов Anycast DNS, сгруппированных в 20 узлов, распределенных по пяти Anycast-облакам. При этом используется принцип построения по географическому признаку, т.е. Geocast. При размещении узлов DNS предусматривается их вынос в географически разнесенные локации, приближенные к наиболее активным пользователям, максимальная концентрация российских провайдеров в точке размещения узла, а также наличие свободных емкостей и удобство взаимодействия с площадкой.

كيفية بناء CDN؟

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

CDN позволяет использовать серверы, которые находятся к целевой аудитории ближе всего. Это сокращает время ожидания, помогает ускорить загрузку контента сайтов для всех посетителей, что особенно критично для сайтов с файлами большого объема или мультимедиа-сервисов. Типичные области применения CDN —  электронная коммерция и сфера развлечений.

تساهم شبكة الخوادم الإضافية التي تم إنشاؤها في البنية التحتية لـ CDN، والتي تقع في أقرب مكان ممكن من المستخدمين، في تسليم البيانات بشكل أكثر استقرارًا وسرعة. وفقًا للإحصائيات، فإن استخدام CDN يقلل زمن الوصول عند الوصول إلى موقع ما بنسبة تزيد عن 70% مقارنة بالمواقع التي لا تحتوي على CDN.

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

باستخدام GeoDNS، يمكنك إرجاع استجابات DNS مختلفة اعتمادًا على عنوان IP الخاص بالمستخدم. للقيام بذلك، تم تكوين خادم DNS لإرجاع عناوين IP مختلفة اعتمادًا على عنوان IP المصدر في الطلب. عادةً ما يتم استخدام قاعدة بيانات GeoIP لتحديد المنطقة التي يتم تقديم الطلب منها. يتيح لك تحديد الموقع الجغرافي باستخدام DNS إرسال المحتوى إلى المستخدمين من موقع قريب.

يحدد GeoDNS عنوان IP للعميل الذي أرسل طلب DNS، أو عنوان IP لخادم DNS العودي الخاص بالموفر، والذي يتم استخدامه عند معالجة طلب العميل. يتم تحديد البلد/المنطقة من خلال قاعدة بيانات IP وGeoIP الخاصة بالعميل. ثم يحصل العميل على عنوان IP الخاص بأقرب خادم CDN. يمكنك قراءة المزيد حول إعداد GeoDNS هنا.

Anycast أو GeoDNS؟

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

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة
مثال: يتم توجيه المستخدمين من أوروبا إلى نقطة نهاية مختلفة.

يمكنك أيضًا رفض الوصول إلى المجالات عن طريق تجاهل جميع الطلبات. وهذه، على وجه الخصوص، طريقة سريعة لقطع الطريق على المتسللين.

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

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

عندما يكون خادم GeoDNS موجودًا في الولايات المتحدة الأمريكية، سيتمكن المستخدمون من الوصول إليه بالفعل. وستكون الاستجابة سريعة مما سيؤثر على سرعة تحميل الموقع.

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

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

إن تحديد الموقع الدقيق لعنوان IP معين ليس دائمًا مهمة سهلة: فهناك العديد من العوامل المؤثرة، وقد يقرر مالكو مجموعة من عناوين IP الإعلان عنه على الجانب الآخر من العالم (وعندئذ سيتعين عليك انتظر حتى يتم تحديث قاعدة البيانات للحصول على الموقع الصحيح). في بعض الأحيان يقوم موفرو VPS بتعيين عناوين من المفترض أنها موجودة في الولايات المتحدة لـ VPS في سنغافورة.

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

تعد شبكات العميل الفرعية في DNS امتدادًا لـ DNS (RFC7871) الذي يحدد كيف يمكن لخوادم DNS المتكررة إرسال معلومات العميل إلى خادم DNS، وخاصة معلومات الشبكة التي يمكن لخادم GeoDNS استخدامها لتحديد موقع العميل بشكل أكثر دقة.

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

إذا كنت تريد استخدام GeoDNS، فمن المهم أن تكون على دراية بهذه الميزات، لأنها في بعض الحالات يمكن أن تزيد المسافة بين خوادم التخزين المؤقت والعميل.

ملخص: إذا كنت تريد دمج عدة VPS في CDN، فإن أفضل خيار للنشر هو استخدام حزمة خادم DNS مع وظيفة GeoDNS + Anycast خارج الصندوق.

Anycast مقابل Unicast: أيهما أفضل للاختيار في كل حالة

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

إضافة تعليق