خطأ بيزنطي

الخطأ البيزنطي هو حالة تصيب النظام، وخاصةً أنظمة الحوسبة الموزعة ، حيث يحدث عطلٌ يؤدي إلى ظهور أعراض مختلفة لدى مختلف المراقبين، بما في ذلك معلومات غير كاملة حول ما إذا كان أحد مكونات النظام قد تعطل. ويستمد المصطلح اسمه من معضلة "الجنرالات البيزنطيين" [ 1 ] ، التي وُضعت لوصف حالةٍ يتعين فيها على الجهات الفاعلة في النظام، لتجنب الفشل الكارثي، الاتفاق على استراتيجية، إلا أن بعض هذه الجهات غير موثوقة، مما يدفع جهات أخرى (جيدة) إلى الاختلاف في هذه الاستراتيجية، وقد لا تكون على دراية بهذا الاختلاف.

يُعرف الخطأ البيزنطي أيضًا باسم مشكلة الجنرالات البيزنطيين ، أو مشكلة الاتفاق البيزنطي ، أو الفشل البيزنطي .

إن تحمل الأخطاء البيزنطية ( BFT ) هو مرونة نظام الكمبيوتر المتسامح مع الأخطاء أو نظام مماثل في مواجهة مثل هذه الظروف.

تعريف

الخطأ البيزنطي هو أي خطأ يُظهر أعراضًا مختلفة لمراقبين مختلفين. [ 2 ] الفشل البيزنطي هو فقدان خدمة النظام بسبب خطأ بيزنطي في الأنظمة التي تتطلب توافقًا بين مكونات متعددة. [ 3 ]

إذا هاجم جميع القادة بتنسيق تام، يُحسم النصر (يسار). أما إذا أعلن قائدان زوراً نيتهما الهجوم، ثم تراجعا، يُخسر النصر (يمين).

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

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

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

عادةً ما يُمثّل هذا التشبيه أنظمة الحاسوب، حيث تُمثّل الحواسيب القادة، وتُمثّل روابط أنظمة الاتصالات الرقمية الرسل. ورغم أن المشكلة تُصاغ في التشبيه كمشكلة اتخاذ قرار وأمن، إلا أنه في مجال الإلكترونيات، لا يُمكن حلّها بالتوقيعات الرقمية المشفرة وحدها، لأن أعطالًا مثل الفولتية غير الصحيحة يُمكن أن تنتشر خلال عملية التشفير. وبالتالي، يُمكن إرسال رسالة خاطئة بحيث يكتشفها بعض المُستلمين على أنها خاطئة (توقيع خاطئ)، بينما يراها آخرون بتوقيع صحيح، ويرى فريق ثالث أيضًا توقيعًا صحيحًا ولكن بمحتوى رسالة مختلف عن الفريق الثاني. [ 2 ]

تاريخ

طُرحت مشكلة التوصل إلى توافق بيزنطي وصاغها روبرت شوستاك ، الذي أطلق عليها اسم مشكلة الاتساق التفاعلي . أُنجز هذا العمل عام ١٩٧٨ في إطار مشروع SIFT [ ٥ ] الذي رعته وكالة ناسا في مختبر علوم الحاسوب التابع لمعهد SRI الدولي . كان مشروع SIFT (اختصارًا لـ Software Implemented Fault Tolerance) من بنات أفكار جون وينسلي، واعتمد على فكرة استخدام عدة حواسيب متعددة الأغراض تتواصل فيما بينها عبر الرسائل الثنائية للوصول إلى توافق في الآراء، حتى في حال وجود أعطال في بعضها.

في بداية المشروع، لم يكن واضحًا عدد الحواسيب اللازمة لضمان عدم قدرة مجموعة من n حاسوبًا معيبًا على "إحباط" جهود الحواسيب السليمة للوصول إلى توافق في الآراء. بيّن شوستاك أن الحد الأدنى المطلوب هو 3n + 1، وابتكر بروتوكول مراسلة من جولتين 3n +1 يعمل عند n =1. عمّم زميله مارشال بيس الخوارزمية لأي قيمة n > 0، مُثبتًا أن 3n + 1 ضروري وكافٍ. نُشرت هذه النتائج، بالإضافة إلى برهان لاحق من ليزلي لامبورت على كفاية 3n باستخدام التوقيعات الرقمية، في الورقة البحثية الرائدة " التوصل إلى اتفاق في وجود أعطال". [ 6 ] مُنح المؤلفون جائزة إدسكار دبليو ديكسترا لعام 2005 عن هذه الورقة.

لتسهيل فهم مشكلة الاتساق التفاعلي، ابتكر لامبورت استعارةً شيقةً تُصوّر مجموعةً من جنرالات الجيش وهم يضعون خطةً لمهاجمة مدينة. في نسختها الأصلية، صُوِّر الجنرالات كقادة للجيش الألباني . تم تغيير الاسم، ليستقر في النهاية على " بيزنطي "، بناءً على اقتراح جاك غولدبيرغ لتجنب أي إساءة محتملة في المستقبل. [ 7 ] عُرضت هذه الصياغة للمشكلة، إلى جانب بعض النتائج الإضافية، من قِبل المؤلفين أنفسهم في ورقتهم البحثية عام 1982 بعنوان "مشكلة الجنرالات البيزنطيين". [ 4 ]

التخفيف

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

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

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

يُستخدم مصطلحا "العطل" و"الفشل" هنا وفقًا للتعريفات القياسية [ 8 ] التي وضعتها في الأصل لجنة مشتركة معنية بـ"المفاهيم والمصطلحات الأساسية" شكلتها اللجنة الفنية للحوسبة الموثوقة وتحمل الأعطال التابعة لجمعية مهندسي الكهرباء والإلكترونيات (IEEE) ومجموعة العمل 10.4 التابعة للاتحاد الدولي لمعالجة المعلومات (IFIP) والمعنية بالحوسبة الموثوقة وتحمل الأعطال. [ 9 ] انظر أيضًا: الموثوقية .

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

الحلول

وصف لامبورت وشوستاك وبيس العديد من الحلول المبكرة في عام 1982. [ 4 ] بدأوا بالإشارة إلى أن مشكلة الجنرالات يمكن اختزالها إلى حل مشكلة "القائد والملازمين" حيث يجب على جميع الملازمين المخلصين العمل بتناغم وأن عملهم يجب أن يتوافق مع ما أمر به القائد في حالة ولاء القائد:

  • أحد الحلول المطروحة يتناول سيناريوهات قد تُزوَّر فيها الرسائل، لكنها ستتحمل أخطاء بيزنطية طالما أن عدد الجنرالات الخونة أقل من ثلث الجنرالات. إن استحالة التعامل مع ثلث أو أكثر من الخونة تُختزل في نهاية المطاف إلى إثبات استحالة حل مشكلة القائد الواحد ونائبيه إذا كان القائد خائنًا. ولتوضيح ذلك، لنفترض أن لدينا قائدًا خائنًا (أ)، ونائبين (ب) و(ج): عندما يأمر (أ) (ب) بالهجوم و(ج) بالانسحاب، ويرسل (ب) و(ج) رسائل لبعضهما البعض، مع إعادة توجيه رسالة (أ)، لا يستطيع (ب) ولا (ج) تحديد الخائن، لأنه ليس بالضرورة (أ) - فقد يكون النائب الآخر قد زوّر الرسالة المنسوبة إلى (أ). ويمكن إثبات أنه إذا كان (ن) هو العدد الإجمالي للجنرالات، و (ت) هو عدد الخونة ضمن (ن) ، فإن حلول المشكلة موجودة فقط عندما يكون (ن) > 3 × ت ، ويكون الاتصال متزامنًا (تأخير محدود). [ 10 ] تتضمن مجموعة متطلبات اختبار تحمل الأعطال البيزنطية (BFT) ما يلي: لكل عدد F من الأعطال البيزنطية، يجب وجود 3 مناطق احتواء أعطال ( F +1) على الأقل، ومسارين اتصال مستقلين (F +1)، وجولات اتصال (F +1). قد توجد نماذج أعطال هجينة حيث يمكن أن تتواجد أعطال حميدة (غير بيزنطية) وأعطال بيزنطية في آن واحد. لكل عطل حميد إضافي يجب تحمله، يجب زيادة الأرقام المذكورة أعلاه بمقدار واحد. في حال عدم وجود جولات اتصال كافية لاختبار تحمل الأعطال البيزنطية، يمكن أن تحدث الأعطال البيزنطية حتى في غياب أي عطل في الأجهزة.
  • يتطلب الحل الثاني توقيعات رسائل غير قابلة للتزوير. يمكن للتوقيعات الرقمية أن توفر تحملًا للأخطاء البيزنطية في وجود عدد غير محدود من الجنرالات الخونة، شريطة أن يكون n > F + 1 (وإلا تصبح المشكلة غير ذات جدوى). على وجه الخصوص، يمكن لقائد واحد واثنين من مساعديه التوصل إلى توافق في الآراء في وجود خائن واحد، لأن الخائن لا يستطيع انتحال شخصيات الآخرين. وقد طُوّرت حلول أخرى تعتمد على أدوات تشفير أساسية أخرى، مثل رموز مصادقة الرسائل (MACs)، لاحقًا [ 11 ] .
  • كما يُعرض أيضاً شكلٌ مُعدّلٌ من الحلين الأولين يسمح بسلوكٍ مُتسامحٍ مع الأخطاء البيزنطية في بعض الحالات التي لا يستطيع فيها جميع القادة التواصل مباشرةً مع بعضهم البعض. [ 1 ]

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

صُممت عدة بنى أنظمة في حوالي عام 1980 لتطبيق تقنية تحمل الأعطال البيزنطية. وتشمل هذه: نظام FTMP من دريبر، [ 12 ] ونظام MMFCS من هانيويل، [ 13 ] ونظام SIFT من معهد ستانفورد للأبحاث. [ 5 ]

في عام 1999، قدم ميغيل كاسترو وباربرا ليسكوف خوارزمية "التسامح العملي مع الأخطاء البيزنطية" (PBFT) [ 11 ] ، والتي توفر نسخًا عالي الأداء لآلة الحالة البيزنطية ، ومعالجة آلاف الطلبات في الثانية مع زيادات أقل من جزء من الألف من الثانية في زمن الوصول.

بعد بروتوكول PBFT، طُرحت عدة بروتوكولات BFT لتحسين متانته وأدائه. على سبيل المثال، عالجت بروتوكولات Q/U [ 14 ] وHQ [ 15 ] و Zyzzyva [ 16 ] وABSTRACTs [ 17 ] مشكلات الأداء والتكلفة؛ بينما عالجت بروتوكولات أخرى، مثل Aardvark [ 18 ] وRBFT [ 19 ] مشكلات المتانة. علاوة على ذلك، حاول بروتوكول Adapt [ 20 ] الاستفادة من بروتوكولات BFT الحالية، من خلال التبديل بينها بطريقة تكيفية، لتحسين متانة النظام وأدائه مع تغير الظروف الأساسية. كما طُرحت بروتوكولات BFT تستفيد من المكونات الموثوقة لتقليل عدد النسخ المتماثلة، مثل A2M-PBFT-EA [ 21 ] وMinBFT [ 22 ] .

تتناول الأبحاث الحديثة حدود قابلية التوسع لتطبيقات BFT التقليدية (والتي غالبًا ما تتسبب فييا(ن2){\displaystyle O(n^{2})}يُحسّن بروتوكول سيربيروس من تعقيد الاتصال من خلال موازاة عملية الإجماع. فعلى سبيل المثال، يربط هذا البروتوكول البيانات بمساحة حالة ثابتة وكبيرة لربط عمليات الإجماع بمجموعات معاملات محددة. وهذا يسمح بتشغيل عمليات BFT بشكل مستقل ومتوازٍ، مما يُتيح قابلية التوسع الخطي بالنسبة لحجم الشبكة. [ 23 ]

التطبيقات

وردت عدة أمثلة على حالات فشل بيزنطية في ورقتين بحثيتين متكافئتين. [ 2 ] [ 3 ] وتم وصف هذه الأمثلة وغيرها على صفحات الويب الخاصة بمشروع ناسا داشلينك. [ 24 ]

تطبيقات في مجال الحوسبة

تستخدم آليات تحمل الأخطاء البيزنطية مكوناتٍ تُعيد إرسال الرسالة الواردة (أو توقيعها فقط، والذي يمكن اختزاله إلى بت واحد من المعلومات في حال استخدام أزواج التحقق الذاتي للعُقد) إلى مُستقبلي تلك الرسالة. تفترض جميع هذه الآليات أن إعادة إرسال الرسالة تمنع انتشار أعراض الأخطاء البيزنطية. بالنسبة للأنظمة ذات الأهمية الأمنية العالية، يجب إثبات صحة هذه الافتراضات بمستوى مقبول من تغطية الأخطاء . عند تقديم الإثبات من خلال الاختبار، تكمن إحدى الصعوبات في إنشاء نطاق واسع بما فيه الكفاية من الإشارات التي تحمل أعراض الأخطاء البيزنطية. [ 25 ] من المرجح أن يتطلب هذا الاختبار مُحقِّنات أخطاء مُتخصصة . [ 26 ] [ 27 ]

التطبيقات العسكرية

لوحظت أخطاء بيزنطية بشكل غير متكرر وفي نقاط غير منتظمة أثناء اختبارات التحمل للغواصة الجديدة من فئة فيرجينيا ، على الأقل حتى عام 2005 (عندما تم الإبلاغ عن المشكلات علنًا). [ 28 ]

تطبيقات العملات المشفرة

تعمل شبكة بيتكوين بالتوازي لإنشاء سلسلة كتل باستخدام آلية إثبات العمل ، مما يسمح للنظام بتجاوز الأخطاء البيزنطية والوصول إلى رؤية شاملة ومتماسكة لحالة النظام. [ 29 ] [ 30 ] كما تستخدم بعض سلاسل الكتل التي تعتمد على آلية إثبات الحصة خوارزميات BFT. [ 31 ]

تقنية البلوك تشين

يُعدّ تحمّل الأخطاء البيزنطية مفهومًا أساسيًا في تقنية البلوك تشين ، إذ يضمن استمرار عمل الشبكة حتى في حال تعطل بعض العُقد [ 32 ] (المشاركين) أو قيامها بأعمال خبيثة. هذا التحمّل ضروري لأن أنظمة البلوك تشين لا مركزية ولا تخضع لسلطة مركزية، مما يجعل تحقيق الإجماع بين العُقد أمرًا بالغ الأهمية، حتى في حال محاولة البعض تعطيل العملية.

الذكاء الاصطناعي

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

التطبيقات والأمثلة

آليات السلامة
تستخدم سلاسل الكتل المختلفة آليات إجماع متنوعة قائمة على تحمل الأخطاء البيزنطية، مثل PBFT وTendermint و DPoS، لمعالجة هذه الأخطاء. تضمن هذه البروتوكولات موافقة أغلبية العقد الموثوقة على الكتلة التالية في السلسلة، مما يحمي الشبكة من الهجمات ويمنع الإنفاق المزدوج وأنواع الاحتيال الأخرى. ومن الأمثلة العملية على هذه الشبكات: Hyperledger Fabric و Cosmos و Klever .
تخفيف الهجوم بنسبة 51%
بينما تستخدم سلاسل الكتل التقليدية مثل بيتكوين إثبات العمل (PoW)، وهو عرضة لهجوم بنسبة 51٪ ، فإن الأنظمة القائمة على BFT مصممة لتحمل ما يصل إلى ثلث العقد المعيبة أو الخبيثة دون المساس بسلامة الشبكة.
الثقة اللامركزية
يُعدّ التسامح مع الأخطاء البيزنطية أساس نموذج الثقة في الشبكات اللامركزية . فبدلاً من الاعتماد على سلطة مركزية، يعتمد أمن الشبكة على قدرة العُقد النزيهة على التفوق عددياً وعلى المناورة على العُقد الخبيثة.
سلاسل الكتل الخاصة والمرخصة
يُعدّ بروتوكول BFT ذا أهمية خاصة في سلاسل الكتل الخاصة أو المُرخّصة، حيث يحتاج عدد محدود من المشاركين المعروفين إلى التوصل إلى إجماع بسرعة وأمان. وغالبًا ما تستخدم هذه الشبكات بروتوكولات BFT لتحسين الأداء والأمان.

في مجال الطيران

تستخدم بعض أنظمة الطائرات، مثل نظام إدارة معلومات الطائرة بوينغ 777 (عبر شبكة SAFEbus الخاصة به ARINC 659)، ونظام التحكم في الطيران لطائرتي بوينغ 777 وبوينغ 787، تقنية تحمل الأعطال البيزنطية؛ ولأن هذه الأنظمة تعمل في الوقت الفعلي، يجب أن تتميز حلول تحمل الأعطال البيزنطية فيها بزمن استجابة منخفض للغاية. على سبيل المثال، يمكن لشبكة SAFEbus تحقيق تحمل الأعطال البيزنطية في غضون ميكروثانية واحدة من زمن الاستجابة الإضافي. [ 34 ] [ 35 ] [ 36 ]

في الأنظمة الفضائية

يُراعي تصميم مركبة دراغون التابعة لشركة سبيس إكس مقاومة الأعطال البيزنطية. [ 37 ] وتستخدم إلكترونيات صاروخ آريس ، المعروف الآن باسم نظام الإطلاق الفضائي (SLS)، نظامًا ثلاثيًا مع مرحلة وسيطة لتحقيق مرونة بيزنطية. [ 38 ] [ 39 ] وتستخدم مركبة أوريون الفضائية أزواجًا ذاتية الفحص للكشف عن الأعطال البيزنطية وإخفائها. [ 40 ]

في الديمقراطية والمجتمعات المدنية

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

انظر أيضاً

مراجع

  1. 1 2 لامبورت، ل .؛ شوستاك، ر.؛ بيس، م. (1982). "مشكلة الجنرالات البيزنطيين" (ملف PDF) . معاملات ACM في لغات البرمجة والأنظمة . 4 (3): 382-401 . CiteSeerX 10.1.1.64.2312 . doi : 10.1145/357172.357176 . S2CID 55899582. مؤرشف (ملف PDF) من الأصل في 13 يونيو 2018.  
  2. 1 2 3 دريسكول، ك.؛ هول، ب.؛ باوليتش، م.؛ زومستيج، ب.؛ سيفينكرونا، هـ. (2004). "الجنرالات البيزنطيون الحقيقيون". المؤتمر الثالث والعشرون لأنظمة إلكترونيات الطيران الرقمية (IEEE Cat. No. 04CH37576) . الصفحات 6.D.4–61–11. doi : 10.1109/DASC.2004.1390734 . ISBN  978-0-7803-8539-9. S2CID 15549497 . 
  3. 1 2 دريسكول، كيفن؛ هول، بريندان؛ سيفينكرونا، هاكان؛ زومستيج، فيل (2003). "تحمل الأخطاء البيزنطية، من النظرية إلى الواقع". سلامة الحاسوب، والموثوقية، والأمن . سلسلة محاضرات في علوم الحاسوب. المجلد 2788. الصفحات 235-248 . doi : 10.1007/978-3-540-39878-3_19 . ISBN   978-3-540-20126-7ISSN 0302-9743 . S2CID 12690337 .​  
  4. 1 2 3 لامبورت، ل .؛ شوستاك، ر.؛ بيس، م. (1982). "مشكلة الجنرالات البيزنطيين" (ملف PDF) . معاملات ACM في لغات البرمجة والأنظمة . 4 (3): 387-389 . CiteSeerX 10.1.1.64.2312 . doi : 10.1145/357172.357176 . S2CID 55899582. مؤرشف من الأصل (ملف PDF) في 7 فبراير 2017.  
  5. 1 2 "SIFT: تصميم وتحليل حاسوب مقاوم للأعطال للتحكم في الطائرات". موثوقية الإلكترونيات الدقيقة . 19 (3): 190. 1979. doi : 10.1016/0026-2714(79)90211-7 . ISSN 0026-2714 . 
  6. بيس، مارشال؛ شوستاك، روبرت؛ لامبورت، ليزلي (أبريل 1980). "التوصل إلى اتفاق في ظل وجود أعطال". مجلة رابطة آلات الحوسبة . 27 (2): 228-234 . CiteSeerX 10.1.1.68.4044 . doi : 10.1145/322186.322188 . S2CID 6429068 .  
  7. لامبورت، ليزلي (19 ديسمبر 2016). "مشكلة الجنرالات البيزنطيين" . معاملات ACM في لغات البرمجة والأنظمة . معهد SRI الدولي . تم الاطلاع عليه بتاريخ 18 مارس 2019 .
  8. أفيزينيس، أ.؛ لابري، ج.-س.؛ راندل، برايان ؛ لاندوير، س. (2004). "المفاهيم الأساسية وتصنيف الحوسبة الموثوقة والآمنة". معاملات IEEE في الحوسبة الموثوقة والآمنة . 1 (1): 11-33 . Bibcode : 2004ITDSC...1...11A . doi : 10.1109/TDSC.2004.2 . hdl : 1903/6459 . ISSN 1545-5971 . S2CID 215753451 .  
  9. "الحوسبة الموثوقة وتحمل الأعطال" . جمعية مهندسي الكهرباء والإلكترونيات (IEEE). مؤرشف من الأصل بتاريخ 2015-04-02 . تم الاطلاع عليه بتاريخ 2015-03-02 .
  10. فيلدمان، ب.؛ ميكالي، س. (1997). "بروتوكول احتمالي أمثل للاتفاق البيزنطي المتزامن" (ملف PDF) . مجلة SIAM للحوسبة . 26 (4): 873-933 . doi : 10.1137/s0097539790187084 . مؤرشف (ملف PDF) من الأصل بتاريخ 2016-03-05 . تم الاطلاع عليه بتاريخ 2012-06-14 .
  11. 1 2 كاسترو، م.؛ ليسكوف، ب. (2002). "التسامح العملي مع الأخطاء البيزنطية والاستعادة الاستباقية". معاملات ACM لأنظمة الحاسوب . 20 (4). رابطة آلات الحوسبة : 398-461 . CiteSeerX 10.1.1.127.6130 . doi : 10.1145/571637.571640 . S2CID 18793794 .  
  12. هوبكنز، ألبرت ل.؛ لالا، جاينارايان هـ.؛ سميث، ت. باسيل (1987). "تطور الحوسبة المقاومة للأعطال في مختبر تشارلز ستارك درابر، 1955-1985". تطور الحوسبة المقاومة للأعطال . الحوسبة الموثوقة والأنظمة المقاومة للأعطال. المجلد 1. الصفحات 121-140 . doi : 10.1007/978-3-7091-8871-2_6 . ISBN   978-3-7091-8873-6ISSN 0932-5581 
  13. دريسكول، كيفن؛ بابادوبولوس، غريغوري؛ نيلسون، سكوت؛ هارتمان، غاري؛ راموهالي، غوثام (1984)، نظام التحكم في الطيران متعدد المعالجات الدقيقة (تقرير فني)، قاعدة رايت باترسون الجوية، أوهايو: قيادة أنظمة القوات الجوية الأمريكية AFWAL/FIGL، AFWAL-TR-84-3076
  14. عبد الملك، م.؛ جانجر، ج.؛ جودسون، ج.؛ رايتر، م.؛ وايلي، ج. (2005). "خدمات قابلة للتوسع في حالات الأعطال البيزنطية ومتسامحة مع الأعطال". مجلة ACM SIGOPS لأنظمة التشغيل . 39 (5). رابطة آلات الحوسبة : 59. doi : 10.1145/1095809.1095817 .
  15. كاولينغ، جيمس؛ مايرز، دانيال؛ ليسكوف، باربرا ؛ رودريغز، رودريغو؛ شريرا، ليوبا (2006). تكرار المقر الرئيسي: بروتوكول نصاب هجين لتحمل الأخطاء البيزنطية . وقائع ندوة USENIX السابعة حول تصميم وتنفيذ أنظمة التشغيل. الصفحات 177-190 . ISBN  1-931971-47-1.
  16. كوتلا، راماكريشنا؛ ألفيسي، لورينزو؛ داهلين، مايك؛ كليمنت، ألين؛ وونغ، إدموند (ديسمبر 2009). "زيزيفا: تحمل الأخطاء البيزنطية التخمينية". معاملات ACM لأنظمة الحاسوب . 27 (4). رابطة آلات الحوسبة : 1-39 . doi : 10.1145/1658357.1658358 .
  17. غيراوي، رشيد؛ كنيزيفيتش، نيكولا؛ فوكوليتش، ماركو؛ كيما، فيفيان (2010). بروتوكولات BFT السبعمائة التالية . وقائع المؤتمر الأوروبي الخامس لأنظمة الحاسوب. يوروسيس. مؤرشف من الأصل في 2011-10-02 . تم الاسترجاع في 2011-10-04 .
  18. كليمنت، أ.؛ وونغ، إ.؛ ألفيسي، ل.؛ داهلين، م.؛ ماركيتي، م. (22-24 أبريل 2009). جعل الأنظمة المقاومة للأخطاء البيزنطية قادرة على تحمل هذه الأخطاء (ملف PDF) . ندوة حول تصميم وتنفيذ الأنظمة الشبكية. USENIX . مؤرشف (ملف PDF) من الأصل بتاريخ 25 ديسمبر 2010. تم الاطلاع عليه بتاريخ 17 فبراير 2010 .
  19. أوبلين، ب. ل.؛ بن مختار، س.؛ كيما، ف. (8-11 يوليو 2013). RBFT: تحمل الأخطاء البيزنطية الزائدة . المؤتمر الدولي الثالث والثلاثون لأنظمة الحوسبة الموزعة التابع لمعهد مهندسي الكهرباء والإلكترونيات. المؤتمر الدولي لأنظمة الحوسبة الموزعة . مؤرشف من الأصل في 5 أغسطس 2013.
  20. بهسون، ج.ب.؛ غيراوي، ر.؛ شوكر، أ. (2015-05-01). "جعل بروتوكولات BFT قابلة للتكيف حقًا" . ندوة IEEE الدولية للمعالجة المتوازية والموزعة لعام 2015. الصفحات 904-913 . doi : 10.1109/IPDPS.2015.21 . ISBN  978-1-4799-8649-1. S2CID 16310807 . 
  21. تشون، بيونغ غون؛ مانياتيس، بيتروس؛ شينكر، سكوت؛ كوبياتوفيتش، جون (1 يناير 2007). "ذاكرة الإضافة فقط الموثقة". وقائع ندوة ACM SIGOPS الحادية والعشرين حول مبادئ أنظمة التشغيل . SOSP '07. مدينة نيويورك: ACM. الصفحات 189-204 . doi : 10.1145/1294261.1294280 . ISBN  9781595935915. S2CID 6685352 . 
  22. فيرونيز، جي إس؛ كوريا، إم؛ بيساني، إيه إن؛ لونغ، إل سي؛ فيريسيمو، بي. (2013-01-01). "التسامح الفعال مع الأخطاء البيزنطية". معاملات IEEE في الحوسبة . 62 (1): 16-30 . Bibcode : 2013ITCmp..62...16V . CiteSeerX 10.1.1.408.9972 . doi : 10.1109/TC.2011.221 . ISSN 0018-9340 . S2CID 8157723 .   
  23. هيلينغز، جيلي؛ سادوغي، محمد (2021). "ByShard: التجزئة في بيئة بيزنطية" (ملف PDF) . وقائع مؤسسة VLDB . 14 (11): 2230-2243 . doi : 10.14778/3476249.3476275 .
  24. دريسكول، كيفن (11 ديسمبر 2012). "أعطال الأنظمة الحقيقية" . داشلينك . ناسا . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 2 مارس 2015 .
  25. نانيا، ت.؛ غوسن، هـ. أ. (1989). "نموذج عطل الأجهزة البيزنطية". معاملات IEEE في التصميم بمساعدة الحاسوب للدوائر والأنظمة المتكاملة . 8 (11): 1226-1231 . Bibcode : 1989ITCAD...8.1226N . doi : 10.1109/43.41508 . ISSN 0278-0070 . 
  26. ^ مارتينز ، رولاندو. غاندي، راجيف؛ ناراسيمهان، بريا؛ بيرت، سويلا؛ كاسيميرو، أنطونيو؛ كروتز، دييغو؛ فيريسيمو، باولو (2013). "تجارب مع حقن الخطأ في بروتوكول التسامح مع الأخطاء البيزنطية" . الوسيطة 2013 ملاحظات محاضرة في علوم الكمبيوتر. المجلد. 8275. ص 41 – 61. دوى : 10.1007 / 978-3-642-45065-5_3 . رقم ISBN   978-3-642-45064-8ISSN 0302-9743 . S2CID 31337539 .​  
  27. ↑ براءة الاختراع الأمريكية رقم 7475318 ، كيفن ر. دريسكول، "طريقة لاختبار نطاق الإدخال الحساس للمرشحات البيزنطية"، الصادرة في 2009-01-06، والمخصصة لشركة هانيويل الدولية. 
  28. والتر، سي.؛ إليس، ب.؛ لافالي، ب. (2005). "خدمة المنصة الموثوقة: بنية خدمة متسامحة مع الأعطال قائمة على الخصائص". المؤتمر الدولي التاسع لهندسة الأنظمة عالية الموثوقية (HASE'05) . الصفحات 34-43 . doi : 10.1109/HASE.2005.23 . ISBN  978-0-7695-2377-4. S2CID 21468069 . 
  29. روبي، مات (20 يناير 2024). "كيف ترتبط مشكلة الجنرالات البيزنطيين بك في عام 2024" . سوان بيتكوين . تم الاسترجاع في 27 يناير 2024 .
  30. ثولونيات، بيير؛ غرامولي، فنسنت (2022)، "التحقق الرسمي من تحمل أخطاء بيزنطية في تقنية البلوك تشين" ، في تران، دوك أ.؛ تاي، ماي ت.؛ كريشناماشاري، بهاسكار (محررون)، دليل تقنية البلوك تشين، سبرينغر: التحسين وتطبيقاته، تشام: سبرينغر، ص 389-412 ، arXiv : 1909.07453 ، doi : 10.1007/978-3-031-07535-3_12 ، ISBN  978-3-031-07535-3تم الاطلاع عليه بتاريخ 27 يناير 2024
  31. ^ ديرمنتزوجلو، باباكيرياكوبولوس وباتساكيس 2019 ، ص. 28716.
  32. "عمليات العقدة" .
  33. دي فادوس، جون (2025). "نهج تحمل الأخطاء البيزنطية نحو سلامة الذكاء الاصطناعي". arXiv : 2504.14668 [ cs.DC ].
  34. م.، باوليتش؛ دريسكول، ك. (9 يناير 2015). "الفصل 48: ناقل SAFE" . في: زورافسكي، ريتشارد (محرر). دليل تكنولوجيا الاتصالات الصناعية ( الطبعة الثانية). مطبعة CRC. الصفحات 48-1-48-26. ISBN   978-1-4822-0733-0.
  35. راشبي، جون (26 سبتمبر 2001). هينزينجر، توماس أ.؛ كيرش، كريستوف م. (محرران). بنى ناقل البيانات للأنظمة المدمجة ذات الأهمية البالغة للسلامة (ملف PDF) . البرمجيات المدمجة: ورشة العمل الدولية الأولى، 8-10 أكتوبر 2001. تاهو سيتي، كاليفورنيا: سبرينغر ساينس آند بيزنس ميديا. ص 307 وما بعدها. ISBN  978-3-540-42673-8تمت أرشفة الملف (PDF) من النسخة الأصلية بتاريخ 22-09-2015 . تم الاطلاع عليه بتاريخ 05-03-2015 .
  36. يه، واي سي (2001). إلكترونيات الطيران بالغة الأهمية للسلامة لنظام التحكم الأساسي في طيران طائرة 777. المؤتمر العشرون لأنظمة إلكترونيات الطيران الرقمية (رقم التصنيف 01CH37219). المجلد 1. الصفحات 1C2/1–1C2/11. doi : 10.1109/DASC.2001.963311 . ISBN   978-0-7803-7034-0. S2CID 61489128 . 
  37. "ELC: دروس مستفادة من SpaceX" . LWN . مؤرشف من الأصل بتاريخ 2016-08-05 . تم الاطلاع عليه بتاريخ 2016-07-21 .
  38. "إلكترونيات نظام الإطلاق الفضائي (SLS): "عقول" نظام الإطلاق الفضائي" (ملف PDF) . nasa.gov . MSFS-12-2024-SLS-4964.
  39. لوفليس، أندرو (7 نوفمبر 2016). "بنية تصويت افتراضية 1FT مع إيثرنت مُفعّل زمنيًا" (ملف PDF) . nasa.gov .
  40. باجرمان، كلينت (2 أغسطس 2013). "بنية نظام إلكترونيات الطيران لمركبة ناسا أوريون" . ntrs.nasa.gov .

مصادر

  • التسامح مع الأخطاء البيزنطية في RKBExplorer