مسئله فرماندهان بیزانسی چیست؟
فرض کنید گروهی از فرماندهان بیزانسی یک شهر را به محاصره خود درآوردهاند و هر یک از ایشان فرماندهی بخشی از ارتش بیزانس را به عهده دارد. پیش از آغاز روز بعد، فرماندهان باید در مورد حمله به شهر یا عقبنشینی تصمیمگیری کنند. برخی از ایشان طرفدار حمله به شهر هستند و برخی دیگر تمایلی به حمله ندارند و میخواهند عقبنشینی کنند. اما آنچه بیش از اقدام به حمله یا اقدام به عقبنشینی اهمیت دارد، انجام یک اقدام واحد توسط همه فرماندهان است زیرا در صورت حملهی ناقص یا عقبنشینی ناقص، جان تعداد زیادی از سربازان به خطر میافتد.
در میان این ارتش فرماندهان خائنی وجود دارد که قصد دارند این هماهنگی را بر هم بزنند. آنها به برخی از فرماندهان میگویند که حمله میکنیم و به برخی دیگر میگویند که عقبنشینی میکنیم و بدینصورت در میان کل ارتش اختلاف ایجاد میکنند.
از سوی دیگر، به دلیل آنکه فرماندهان ازنظر مسافت با یکدیگر فاصلهدارند، برای انتقال پیامها از نامهرسان استفاده میکنند. استفاده از نامهرسانها راهحل مشکل را پیچیدهتر میکند، زیرا ممکن است این نامهرسانها نامه را بهدرستی به فرمانده هان دیگر انتقال ندهند و یا حتی بین راه کشته شوند و پیام به مقصد نرسد.
حل مسئله فرماندهان بیزانسی
مسئله فرماندهان بیزانسی (BGP) یک مسئله کلاسیک است که هر سامانه کامپیوتری با آن مواجه است. لیکن به دلیل ویژگیهای سامانههای توزیعشده، حل این مسئله در این سامانهها از اهمیتی بیشتری برخوردار است. تفاوتهایی میان سامانههای متمرکز، غیرمتمرکز و توزیعشده وجود دارد که بدین شرح است:
در سامانههای متمرکز همیشه یک مرکز فرماندهی، مانند سرور وجود دارد. بقیه اعضای متصل به این سامانه باید از تمام قوانین و مقررات مرکز فرماندهی تبعیت نمایند.
در سامانههای غیرمتمرکز چند سرور وجود دارد که پیامها را از یک سرور مرکزی دریافت میکنند. در این سامانهها، کاربران به سرورهای ثانویه متصل میشوند و اطلاعات خود را تبادل میکنند. همچنین سرورهای ثانویه میتوانند ازلحاظ سلسلهمراتب مانند سرور مرکزی عمل نمایند.
در سامانههای توزیعشده هیچ قدرت مرکزی وجود ندارد. سرورهای این شبکه همگی دارای یک قدرت و یک سطح مشخصی از حق اختیار هستند که بهطور کامل میان همه یکسان است و کاربران میتوانند به هر یک از این سرورها متصل شوند، هرچند ممکن است این سرورها دارای توان پردازش متفاوتی باشند.
در شبکههای بلاکچینی و همچنین در سامانههای مبتنی بر فناوری دفتر کل توزیعشده مانند بیتکوین، اتریوم، استلار، ققنوس و تقریباً تمامی رمزارزها، به دلیل عدم وجود ژنرال یا سرور مرکزی و عدم وجود سلسلهمراتب، مسئله ژنرال بیزانسی پیچیدهتر است. در این شبکهها میزبانهای شبکه (فرماندهها) ازلحاظ درجه و سلسلهمراتب با یکدیگر برابر هستند و هر تصمیمی در شبکه گرفته میشود باید توسط کل شبکه پیروی شود.
اگر یک یا چند تن از فرماندهها خائن باشند یا پیامهای دستکاریشده ارسال کنند تا سایرین را گمراه کنند، شبکه بهطور کامل تحت تأثیر قرار نمیگیرد و در برابر این حمله مقاومت میکند. زیرا این پیام باید توسط بیش از نیمی از میزبانهای شبکه (فرماندهها) موردبررسی و تأیید قرار گیرد. بهطورکلی میتوان گفت که هر پیام ارسالشده از میزبانها تنها در صورتی در شبکه اعمال میشود که مورد تأیید بیش از نیمی از میزبانها قرار گیرد. این توافق در اصطلاح “اجماع” نامیده میشود.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.