الخلاصة

  • أتاحت RFC 2443 لعدة خوادم MARS فوق ATM مشاركة حالة العملاء ومجموعات البث المتعدد، مع بقاء كل عميل مسجلاً لدى خادم واحد.
  • بعد غياب تحديثين متتاليين لإشارة الحياة، كان على الخوادم النظيرة إسقاط العضويات التي تعلمتها من ذلك الخادم. ثم يسجل العميل لدى خادم احتياطي وينضم إلى مجموعاته مجدداً.

ثلاث نسخ متطابقة، ومصدر واحد صامت

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

كان هذا الفصل جوهر التصميم. شرحت RFC 2022 خادم MARS لحل عناوين البث المتعدد بوصفه وسيلة لتوزيع معلومات الاتصال والعضوية من الطبقة الثالثة فوق ATM. وفي نموذج MARS الموزع، كان يلزم أن يستطيع كل خادم داخل الشبكة الفرعية المنطقية IP (LIS) الإجابة عن أي مجموعة في تلك الشبكة. صدرت RFC 2443 في نوفمبر 1998 بوصفها RFC تجريبية، وكيّفت بروتوكول مزامنة مخابئ الخوادم (SCSP) لنسخ السجلات بين خوادم MARS.

انتقلت السجلات، لا علاقة العميل الأصلية

قدم SCSP إطاراً للمزامنة: تنشأ علاقة بين الخوادم، وتتطابق محتويات المخابئ، ثم تنتشر التغييرات الجديدة. خصصت RFC 2443 معرّف البروتوكول 0x0003 لحالة MARS، وجعلت LIS حدود مجموعة الخوادم. عندما يسجل عميل لدى خادم، يرسل ذلك الخادم التسجيل والتغييرات اللاحقة في العضوية إلى أقرانه. ومع ذلك، لا يسجل العميل إلا لدى خادم MARS واحد، ويتصل عبر الدائرة الافتراضية للتحكم بالعنقود أو الدائرة الافتراضية للتحكم بالخادم لذلك الخادم. توسع النسخ ما تراه المجموعة، لكنها لا تنقل علاقة التحكم الأصلية إلى كل خادم.

ولم تحل المزامنة مسألة من يخصص المعرّفات. يحتاج كل عميل MARS إلى معرّف عضو عنقود فريد في كل LIS. افترضت RFC 2443 أن لكل خادم نطاقاً منفصلاً من المعرّفات؛ ويمكن لآلية خارجية أن تخصصها، لكنها خارج نطاق الوثيقة. تستطيع قواعد البيانات تكرار تخصيص متعارض بصورة متسقة، لكنها لا تنشئ وحدها جهة تضمن التفرد.

كان نبض الحياة قاعدة لإبطال المعرفة القديمة

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

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

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

ضيّق التحقق من الهوية نطاق الدخول، لكنه وسّع أثر الثقة

لم تشفر RFC 2443 الجزء الخاص بـMARS من سجل حالة المخبأ؛ بل أحالت إلى وسائل الأمان في الجزء العام من SCSP. قد يسمح التحقق من الهوية برفض حزم غير موثقة، لكن RFC صرحت أيضاً بأن معلومات أي خادم موثّق على نحو صحيح تُعد موثوقة وتنتشر في مجموعة الخوادم. لذلك يمكن لاختراق خادم موثوق واحد أن يفسد قاعدة البيانات المشتركة انطلاقاً منه. يحدد التحقق من الهوية من يستطيع الإرسال، لكنه لا يجعل بيانات المرسل صحيحة ولا يحاصر ضرر اختراق النظير.

في 2004، أشارت RFC 3790 إلى أن RFC 2443 تضع قيماً افتراضية لـIPv4 وتسمح بالتوسعة إلى IPv6 مع تعريفات IANA مناسبة. هذا توثيق لقابلية التوسعة المقصودة، لا دليل على تنفيذها أو انتشارها. توثق RFC المتطلبات والتحذيرات؛ ولا تثبت مدى الاستخدام أو أن كل تطبيق التزم بالقواعد.

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

المصادر