الخلاصة

  • اقترح RFC 992 بثّ أخبار الفشل والتعافي ضمن رسائل جماعية مرتبة، كي يرى أعضاء مجموعة العمليات تسلسلاً واحداً لتغير العضوية.
  • خُصص GBCAST لتغيرات المجموعة، وABCAST لترتيب العمليات المشتركة، وCBCAST لحفظ السببية مع ترك الرسائل المستقلة تسير بحرية.

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

كتب Kenneth Birman وThomas Joseph هذه المعضلة في RFC 992 الصادر في نوفمبر 1986 عن أبحاث ISIS في Cornell. تناول RFC 966 وRFC 988 مجموعات المضيفين والبث إلى أكثر من جهة. أما العقدة هنا فتظهر عندما تتبدل قائمة المستقبلين أثناء سفر الرسالة. من هم «كل الأعضاء» في تلك اللحظة؟ وصول أمر العمل وحده لا يحسم المسألة إذا اختلفت لدى المستقبلين صورة المجموعة التي استقبلته.

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

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

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

تغيب الآلة المعطلة عن الاجتماع. على الأقل يتسلم الباقون المحضر بالترتيب ذاته.