The Abstention Protocol: RCA for Clos Fabrics
تقدم هذه الورقة نظام CoreSec، وهو نظام إنتاجي لتحليل الأسباب الجذرية لشبكات Clos واسعة النطاق، يستبدل دمج النقاط غير المستقر بجبر امتناع من نمط PAM حتمي لتحقيق عزو للأعطال يتسم بالاستقرار والقابلية للتفسير والرتابة في بيئات القياس عن بُعد الصاخبة.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
في البنية التحتية الشاسعة والنابضة للحوسبة السحابية الحديثة، لا تتدفق البيانات عبر أنبوب واحد، بل عبر شبكة مترامية الأطراف ومتعددة الطبقات من الاتصالات. تخيل مدينة حيث يتصل كل مبنى بمبدل (switch) محلي في حيه، والذي يتصل بدوره بمركز منطقة، والذي يربط أخيراً بعمود فقري مركزي. هذا الهيكل، المعروف باسم نسيج "كلوس" (Clos fabric)، يسمح لملايين الخوادم بالتحدث مع بعضها البعض بسرعة مذهلة وقدرة عالية على التكرار. إذا انسد مسار ما، تجد حركة المرور ببساطة مساراً آخر. وبسبب هذا التصميم، يتميز النظام بمرونة فائقة؛ إذ يمكنه استيعاب الآلاف من الأعطال الصغيرة والعشوائية يومياً — مثل كابل مرتخٍ، أو ضوء وامض، أو خلل برمجِي عابر — دون أن يلاحظ المستخدم العادي ذلك أبداً. ومع ذلك، فإن هذا الضجيج الخلفي المستمر يخلق مشكلة عميقة للمهندسين الذين يديرون النظام. فعندما تتعطل خدمة معينة لعميل ما، يضيء النظام بمئات التحذيرات. التحدي ليس في العثور على الأجزاء المعطلة، بل في معرفة أي جزء من تلك الأجزاء الكثيرة المعطلة هو الذي تسبب فعلياً في هذا العطل المحدد.
لسنوات، كانت الطريقة القياسية لحل هذا اللغز هي تخصيص درجة لكل إشارة تحذير. فإذا كان للكابل عدد كبير من الأخطاء، يحصل على درجة عالية. وإذا أعاد مبدل تشغيل نفسه، يحصل على درجة. يقوم النظام بجمع هذه الدرجات، والكيان الذي يحصل على أعلى مجموع هو الذي يُلقى عليه اللوم في حدوث المشكلة. نجح هذا النهج بشكل جيد عندما كان الشبكة هادئة، ولكن في بيئة الحوسبة فائقة النطاق (hyperscale)، غالباً ما فشل. ولأن هناك دائماً بعض الضجيج في الخلفية، كان النظام يجد "مذنباً" حتى عندما لا يكون هناك خطأ حقيقي، أو كان يلوم جهازاً خاطئاً لأن الدرجات كانت متقاربة جداً بحيث يصعب الفصل بينها. وجد المهندسون أن محاولة ضبط هذه الدرجات بدقة لإصلاح نوع واحد من الأخطاء قد يؤدي بالخطأ إلى إفساد قدرة النظام على رصد نوع آخر. وكانت النتيجة دورة من عدم اليقين، حيث يتم أحيالاً تفعيل الإصلاحات الآلية بسبب إنذارات كاذبة، مما يجعل الوضع أسوأ بدلاً من تحسينه.
ولحل هذه المشكلة، طور فريق في مايكروسوفت نظاماً جديداً يسمى "كور سيك" (CoreSec)، والذي يغير المنطق الأساسي لكيفية اتخاذ هذه القرارات. فبدلاً من جمع الدرجات، يعامل النظام الجديد التحقيق كأنه سلسلة من الفحوصات الصارمة والمستقلة، تماماً كما يتحقق نظام أمني من هوية شخص ما. في مبنى عالي الأمن، قد يطلب الحارس كلمة مرور، وبصمة إصبع، وبطاقة تعريف. وإذا كانت كلمة المرور مفقودة، فإن الحارس لا يخمن؛ بل يرفض الدخول ببساً ويوقف العملية. يطبق "كور سيك" منطق "الامتناع" هذا على أعطال الشبكة. فهو يخصص أدواراً محددة لأنواع مختلفة من البيانات. فبعض الإشارات إلزامية: إذا كان هناك دليل مهم مفقود أو قديم، يرفض النظام اتخاذ قرار. وهناك إشارات أخرى كافية بذاتها: إذا تم العثور على خطأ محدد ولا لبس فيه، يتوقف النظام عن البحث ويحدد السبب فوراً.
يعمل النظام عبر خمس تحقيقات متوازية، كل منها ينظر إلى طبقة مختلفة من الشبكة، بدءاً من الكابلات الفردية التي تتصل بالخوادم وصولاً إلى مفاتيح الربط الضخمة (spine switches) التي تمسك بالنسيج بأكمله. يستخدم كل تحقيق مجموعة قواعد خاصة به ليقرر ما إذا كان لديه دليل كافٍ للتصويت لسبب معين. إذا كان الدليل واضحاً، فإنه يصوت. وإذا كان الدليل مفقوداً أو متناقضاً، فإنه يمتنع عن التصويت. وهذا تحول جوهري؛ ففي النظام القديم، كان الكمبيوتر مجبراً على اختيار فائز حتى لو لم يكن يعرف الإجابة. أما في النظام الجديد، فإن الاعتراف بالجهل يعد نتيجة صالحة ومفيدة. فعندما يمتنع النظام عن التصويت، فإنه يخبر المهندسين البشريين: "لا يمكنني التأكد بعد"، ويسلمهم القضية مع ملخص واضح لما كانت تنقص البيانات. هذا يمنع النظام من تقديم تخمينات واثقة ولكن خاطئة قد تؤدي إلى تفعيل عمليات إصلاح آلية غير ضرورية وربما ضارة.
بمج الله التحقيقات الخمسة المتوازية، تدخل طبقة ثانية من المنطق لدمج نتائجها. يفهم هذا المنطق الشكل الفيزيائي للشبكة؛ فهو يعلم أنه إذا تعطل مفتاح واحد، فقد يؤثر ذلك على عدد قليل من الخوادم، ولكن إذا تعطل مركز ربط عالي المستوى، فسيؤدي ذلك إلى تأثير متتابع يجعل العديد من المفاتلات تبدو وكأنها تعاني من خلل في نفس الوقت. يستخدم النظام قواعد بسيطة ومبرمجة لتحديد الطبقة المسؤولة حقاً. على سبيل_مثال، إذا كان هناك اشتباه في مفتاح ربط عالي المستوى، يتحقق النظام مما إذا كان ثلثا المفاتلات الأصغر المتصلة به تظهر أيضاً مشاكل. إذا كان الأمر كذلك، يستنتج النظام أن مفتاح الربط عالي المستوى هو السبب الجذري ويتجاهل المفاتلات الفردية الموجودة دونه. هذا يمنع النظام من التشتت بالأعراض وإلقاء اللوم على المستوى الخاطئ من الشبكة.
كانت نتائج نشر هذا النظام عبر أكثر من ستين منطقة في سحابة "آزور" (Azure) مذهلة. على مدار ثلاث سنوات، عالج النظام أكثر من 700,000 حادثة. انخفض معدل الإنذارات الكاذبة، حيث كان النظام يلوم جهازاً سليماً، من قرابة عشرين بالمائة إلى أقل من واحد بالمائة. وفي الوقت نفسه، زاد عدد المرات التي حدد فيها النظام المشكلة بشكل صحيح دون الحاجة إلى مساعدة بشرية بشكل كبير. ولعل الأهم من ذلك، أن النظام ألغى الحاجة إلى ثلاثة مهندسين بدوام كامل لمراجعة وتوفيق البيانات المتضاربة يدوياً لكل حادثة. فالمهندسون الذين كانوا يقضون ساعات في فك هذه العقد باتوا الآن يتلقون تقريراً واضحاً ومنظماً يخبرهم بالضبط بما وجده النظام، وما الذي لم يستطع الجزم به، وأين يجب عليهم البحث تالياً.
يكمن نجاح "كور سيك" في رفضه للتخمين. فمن خلال معاملة دمج مصادر البيانات المختلفة كمسألة تركيب وليس كمباراة تسجيل درجات، يحقق النظام مستوى من الاستقرار كان مستحيلاً في السابق. إنه لا يعتمد على نماذج تعلم آلي معقدة قد تغير سلوكها مع تطور الشبكة، بل يستخدم مجموعة ثابتة من القواعد المنطقية التي أثبتت نجاحها عبر مختلف الأجهزة، وأنماط حركة المرور، وتصاميم مراكز البيانات دون الحاجة إلى إعادة ضبطها. لقد أظهر النظام أنه في عالم مليء بالمعلومات الصاخبة وغير المكتملة، فإن أقوى أداة هي القدرة على قول: "أنا لا أعرف"، وانتظار دليل أفضل. لقد حول هذا النهج تحليل السبب الجذري من لعبة احتمالات إلى عملية موثوقة وقابلة للتفسير، مما سمح للسحابة بالبقاء مستقرة حتى مع استمرار نموها وزيادة تعقيدها.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.