د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول په لومړي ځل کې تشریح شوی علمي مقاله ډیویډ مازیر په 2015 کې. دا د "فدرالي بازنطین تړون سیسټم" دی چې غیر متمرکز، بې رهبري کمپیوټري شبکو ته اجازه ورکوي چې په اغیزمنه توګه د پریکړې په اړه موافقې ته ورسیږي. د سټیلر تادیې شبکه د سټیلر توافق پروتوکول (SCP) کاروي ترڅو د راکړې ورکړې ثابت تاریخ وساتي چې ټولو برخه اخیستونکو ته لیدل کیږي.

د توافق پروتوکولونه د پوهیدلو لپاره ستونزمن ګڼل کیږي. SCP د ډیری په پرتله ساده دی، مګر بیا هم دا شهرت شریکوي - یو څه د غلط نظر له امله چې "فدرالي رایه ورکول"، چې د ساینسي مقالې لومړۍ نیمایي موضوع ده، SCP دی. خو دا رښتیا نه ده! دا یوازې یو مهم ودانۍ بلاک دی چې د مقالې دویمه نیمه یې د جوړولو لپاره کاروي واقعي د ستوري توافق پروتوکول.

په دې مقاله کې به موږ په لنډ ډول تشریح کړو چې د "تړونونو سیسټم" څه شی دی، څه شی کولی شي دا "بازنطین" کړي او ولې د بازنطین سیسټم "فدرالي" جوړوي. بیا به موږ د فدرالي رایې ورکولو طرزالعمل تشریح کړو چې د SCP په مقاله کې تشریح شوي، او په پای کې به موږ پخپله د SCP پروتوکول تشریح کړو.

د تړون سیسټمونه

د موافقتنامې سیسټم د ګډون کونکو یوې ډلې ته اجازه ورکوي چې په یوه موضوع باندې توافق ته ورسیږي، لکه د غرمې لپاره څه حکم وکړي.

په Interstellar کې، موږ خپل د خواړو تړون سیسټم پلي کړی: موږ هغه څه امر کوو چې زموږ د عملیاتي مدیر جان، وايي. دا یو ساده او اغیزمن تړون سیسټم دی. موږ ټول په جان باور لرو او باور لرو چې هغه به هره ورځ یو څه په زړه پوري او تغذیه ومومي.

مګر که چیرې جان زموږ له باور څخه ناوړه ګټه پورته کړي؟ هغه کولی شي په یوه لاس پریکړه وکړي چې موږ ټول باید ویګان شو. په یوه یا دوو اونیو کې، موږ به شاید هغه ړنګ کړو او واک به الیزابیت ته وسپارو. مګر ناڅاپه هغه د اینچویو سره ایوکاډو سره مینه لري او فکر کوي چې هرڅوک باید ورته وي. ځواک فاسد کوي. نو دا به غوره وي چې یو څه نور ډیموکراتیک میتود ومومئ: د دې ډاډ ترلاسه کولو لپاره یوه لاره چې مختلف غوره توبونه په پام کې نیول شوي ، پداسې حال کې چې په وخت او ناڅرګنده پایله تضمین کیږي ، ترڅو هیڅوک د غرمې ډوډۍ حکم نه کوي ، یا پنځه کسان مختلف حکمونه ورکوي ، یا بحث. ماښام ته ځي.

داسې ښکاري چې حل ساده دی: رایه ورکړئ! مګر دا یو غلط تاثر دی. څوک به رای پاڼې راټولوي او د پایلو راپور به ورکوي؟ او ولې نور باید په هغه څه باور وکړي چې هغه وايي؟ شاید موږ کولی شو په لومړی کې هغه مشر ته رایه ورکړئ چې موږ یې د رایې ورکولو رهبري کولو باور لرو - مګر څوک به یې رهبري کړي первым د رایې ورکولو له لارې؟ که موږ د یو مشر سره موافق نه شو نو څه به وي؟ یا څه که موږ یوې موافقې ته ورسیږو، مګر دا مشر په ناسته کې ودریږي یا ناروغ رخصت شي؟

ورته ستونزې په ویشل شوي کمپیوټر شبکې کې پیښیږي. ټول برخه اخیستونکي یا نوډونه باید په ځینې پریکړې موافق وي ، لکه د چا وار دا دی چې د شریک فایل تازه کول یا د پروسس کولو کتار څخه دنده لرې کول دي. د کریپټو کارنسي شبکه کې، نوډونه په مکرر ډول باید غوره کړي چې بشپړ کیسه د څو ممکنه نسخو څخه څه ډول ښکاري، کوم چې ځینې وختونه شخړه کوي. د دې شبکې تړون ترلاسه کونکي ته ډاډ ورکوي چې سکه (a) معتبره ده (جعلي نه ده) او (b) تر اوسه په بل ځای کې نه ده لګول شوې. دا هم ډاډ ورکوي چې هغه به وکولی شي په راتلونکي کې سکې مصرف کړي ځکه چې نوي ترلاسه کونکي به د ورته دلیلونو لپاره ورته تضمین ولري.

د توزیع شوي کمپیوټري شبکې کې د موافقې هر سیسټم باید د غلطۍ زغمونکی وي: دا باید د غلطو لینکونو ، غیر ځواب ویونکي نوډونو ، او غلط پیغام ترتیب کولو په څیر د غلطیو سره سره دوامداره پایلې تولید کړي. بازنطینی د موافقتنامې سیسټم سربیره پردې د "بازنطین" غلطیو په وړاندې مقاومت لري: نوډونه چې غلط معلومات ورکوي ، که د غلطۍ له امله وي یا په قصدي هڅه کې چې سیسټم ضعیف کړي یا څه ګټه ترلاسه کړي. د "بازنطین" غلطی زغم - د یوې ډلې پریکړې باور کولو وړتیا حتی کله چې د ډلې ځینې غړي دروغ وي یا بل ډول د پریکړې کولو قواعد تعقیب نکړي - ویل کیږي د بازنطین امپراتورۍ د جنرالانو په اړه مثالچا هڅه کوله چې برید همغږي کړي. ښه توضیحات په انتوني سټیونز کې.

د کریپټو سکې مالک الیس په پام کې ونیسئ ، څوک چې باید له باب څخه د خوندور آیس کریم پیرود او د کارول پور تادیه کولو ترمینځ غوره کړي. شاید الیس غواړي چې په درغلۍ سره د ورته سکې په مصرفولو سره دواړه په یوځل کې تادیه کړي. د دې کولو لپاره، هغه باید د باب کمپیوټر قانع کړي چې سکې هیڅکله کارول ته نه دي ورکړل شوي، او د کارول کمپیوټر قانع کړي چې سکه هیڅکله باب ته نه وه ورکړل شوې. د بایزنطیني تړونونو سیسټم دا په حقیقت کې ناممکن کوي، د اکثریت حاکمیت په نوم یادیږي. کورم. په داسې شبکه کې یو نوډ د تاریخ یوې ځانګړې نسخې ته له تګ څخه انکار کوي تر هغه چې دا وګوري چې کافي شمیر ملګري - یو کورم - د داسې لیږد سره موافق وي. یوځل چې دا پیښ شي ، دوی به د رایې ورکولو بلاک رامینځته کړي چې دومره لوی وي ترڅو د شبکې پاتې نوډونه مجبور کړي چې د دوی پریکړې سره موافق وي. الیس کولی شي ځینې نوډونه مجبور کړي چې د هغې په استازیتوب دروغ ووایي، مګر که شبکه کافي لویه وي، د هغې هڅه به د صادق نوډونو رایو له امله ضایع شي.

د کورم لپاره څو نوډونو ته اړتیا ده؟ لږترلږه، اکثریت، یا بلکه، د غلطیو او درغلۍ سره د مبارزې لپاره وړ اکثریت. مګر د اکثریت شمیرلو لپاره، تاسو اړتیا لرئ چې د ګډون کوونکو ټول شمیر پوه شئ. د انټرسټیلر دفتر یا د ولسوالیو په ټاکنو کې، دا شمیرې موندل اسانه دي. مګر که ستاسو ګروپ یو نرم تعریف شوی شبکه وي په کوم کې چې نوډونه د مرکز له تصویب پرته دننه کیدی شي او پریږدي ، نو تاسو اړتیا لرئ فدرالي د بایزنټین تړون سیسټم د دې وړتیا لري چې نصابونه د نوډونو له مخکې ټاکل شوي لیست څخه نه ، بلکه په متحرک ډول د تل بدلیدونکي او په لازمي ډول د نوډونو نامکمل عکس څخه په ټاکل شوي وخت کې.

په پراخه شبکه کې د یو واحد نوډ له لید څخه د کورم رامینځته کول ممکن ناممکن ښکاري ، مګر دا ممکنه ده. دا ډول نصاب کولی شي حتی د غیر متمرکزې رایې ورکولو پایلې تضمین کړي. د SCP سپینه پاڼه ښیې چې دا څنګه د پروسې په نوم یادیږي د فدرالي رایې له لارې.

د بې صبرۍ لپاره

پاتې مقاله د فدرالي رایې ورکولو او د سټیلر موافقت پروتوکول په ډیر تفصیل سره بیانوي. که تاسو د جزیاتو سره علاقه نه لرئ، دلته د پروسې عمومي کتنه ده.

  1. نوډونه د "نوماندانو" په اړه د فدرالي رای ورکولو پړاوونه ترسره کوي. د فدرالي رای ورکولو پړاو معنی لري:
    • نوډ ځینې بیان ته رایه ورکوي، د بیلګې په توګه، "زه د V ارزښت وړاندیز کوم"؛
    • نوډ د ملګرو غږونو ته غوږ نیسي تر هغه چې یو څوک ومومي چې "ترلاسه" کولی شي؛
    • نوډ د دې ادعا لپاره "کورم" ګوري. یو کورم نوماند "تایید" کوي.
  2. یوځل چې یو نوډ کولی شي یو یا څو نوماندان تایید کړي، دا هڅه کوي چې د فدرالي رای ورکولو د څو پړاوونو له لارې "رای پاڼې" چمتو کړي.
  3. یوځل چې یو نوډ وکوالی شي تصدیق کړي چې رای پاڼه چمتو ده، دا هڅه کوي چې دا د فدرالي رای ورکولو حتی نورو پړاوونو له لارې ترسره کړي.
  4. یوځل چې یو نوډ کولی شي د رایې ورکولو ژمنې تایید کړي، دا کولی شي د یوې موافقې پایلې په توګه په کارولو سره د دې رایې ارزښت "بهرني" کړي.

په دې پړاوونو کې د فدرالي رای ورکولو څو پړاوونه شامل دي، چې په ټولیز ډول د SCP یو پړاو جوړوي. راځئ چې نږدې وګورو چې په هر ګام کې څه پیښیږي.

فدرالي رایه ورکول

فدرالي رایه ورکول د دې معلومولو لپاره یوه کړنلاره ده چې ایا شبکه کولی شي په وړاندیز موافقه وکړي. د رایې ورکولو په پړاو کې، هر نوډ باید د احتمالي ډیری احتمالي ارزښتونو څخه یو غوره کړي. دا نشي کولی دا کار وکړي مګر دا چې ډاډه نه وي چې په شبکه کې نور نوډونه به بله پایله غوره نکړي. د دې د ډاډ ترلاسه کولو لپاره، نوډونه د پیغامونو بیرغ شاته او شاته تبادله کوي ترڅو هرڅوک پخلی وکړدا کورم غوږونه اخلي ورته شی پریکړه. د دې برخې پاتې برخه پدې جمله کې شرایط تشریح کوي او دا چې ټوله پروسه څنګه پیښیږي.

د نصاب او کورم سلائسونه

راځئ چې د نصاب په ټاکلو سره پیل وکړو. لکه څنګه چې موږ پورته بحث وکړ، په غیر متمرکز شبکه کې د متحرک غړیتوب سره، دا ناشونې ده چې مخکې له مخکې د نوډونو شمیره معلومه شي او له همدې امله د اکثریت لپاره څومره اړتیا وي. فدرالي رایه ورکول دا ستونزه د نوي مفکورې په معرفي کولو سره حل کوي د کورم کمول (کورم سلائس): د همکارانو یوه کوچنۍ ډله چې یو نوډ باور لري ترڅو د رایې ورکولو وضعیت معلومات د شبکې پاتې برخې ته ورسوي. هر نوډ خپل د کورم سلائس ټاکي (له هغې څخه دا په حقیقت کې غړی کیږي).

د کورم تشکیل د کورم کمولو سره پیل کیږي. د هر نوډ لپاره، د هغې کټ نوډونه اضافه شوي. بیا د ټوټې شرایط اضافه کیږي دا نوډونه او همداسی پسی. لکه څنګه چې تاسو ادامه ورکوئ، دلته ډیر نور نوډونه شتون لري چې تاسو نشئ کولی اضافه کړئ ځکه چې دوی دمخه په ټوټه کې شامل شوي. کله چې د اضافه کولو لپاره نور نوي نوډونه شتون ونلري، پروسه ودریږي: موږ د ابتدايي نوډ د کورم سلائس د "انتقالي بند" په واسطه نصاب جوړ کړی دی.

د ستوري توافق پروتوکول درک کول
د ورکړل شوي نوډ څخه د کورم موندلو لپاره ...

د ستوري توافق پروتوکول درک کول
... د دې ټوټې غړي اضافه کړئ ...

د ستوري توافق پروتوکول درک کول
... بیا موږ د دې نوډونو ټوټې غړي اضافه کوو.

د ستوري توافق پروتوکول درک کول
موږ دوام ورکوو تر هغه چې د اضافه کولو لپاره هیڅ نوډونه پاتې نه وي.

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول
د اضافه کولو لپاره هیڅ نوډونه پاتې ندي. دا یو نصاب دی.

په حقیقت کې، هر نوډ کولی شي په ډیرو برخو کې ښکاره شي. د کورم د جوړولو لپاره، یوازې یوه ټوټه غوره کړئ او غړي اضافه کړئ؛ بیا د هر غړي لپاره هره ټوټه غوره کړئ او غړي اضافه کړئ دا کټ او داسې نور. دا پدې مانا ده چې هر نوډ د ډیری ممکنه کورمونو غړی دی.

د ستوري توافق پروتوکول درک کول
په هر ګام کې یوازې د کورم سلائس غوره کړئ.

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول
یو احتمالي کورم. یا یو بدیل ...

د ستوري توافق پروتوکول درک کول
... نورې ټوټې غوره کړئ...

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول
…(کله چې امکان ولري)…

د ستوري توافق پروتوکول درک کول
... بل کورم جوړوي.

نوډ څنګه پوهیږي چې نور نوډونه په کومو برخو کې دي؟ په ورته ډول د نورو نوډونو په اړه نور معلومات: د لیږدونو څخه چې هر نوډ شبکې ته خپروي کله چې د رایې ورکولو حالت بدل شي. په هره خپرونه کې د لیږلو نوډ سلائسونو په اړه معلومات شامل دي. د SCP سپینه پاڼه د ارتباط میکانیزم نه مشخص کوي. تطبیقونه عموما کارول کیږي د ګپ شپ پروتوکول په ټوله شبکه کې د پیغامونو د تضمین شوي نشر لپاره.

په یاد ولرئ چې د موافقتنامې غیر فدرالي بازنطین سیسټم کې ، کورم د ټولو نوډونو اکثریت په توګه تعریف شوی. د بازنطین تړون سیسټم د پوښتنې له نظره ډیزاین شوی: سیسټم څومره بې ایمانه نوډونه زغملی شي؟ د N نوډونو په سیسټم کې چې د f ناکامیو څخه د ژوندي پاتې کیدو لپاره ډیزاین شوی ، نوډ باید د N−f همکارانو څخه د فیډبیک ترلاسه کولو له لارې پرمختګ وکړي ځکه چې ممکن د دوی f ټیټ وي. مګر د N−f همکارانو څخه د ځواب ترلاسه کولو سره، موږ کولی شو فکر وکړو چې ټول f ملګري (له کوم څخه چې نوډ ځواب نه دی ترلاسه کړی) په حقیقت کې صادق دي. په دې توګه، د N−f ملګرو څخه (د کوم ځای څخه ځواب ترلاسه شوی) ناوړه دي. د دې لپاره چې نوډونه ورته توافق ته ورسیږي، د پاتې نوډونو اکثریت باید صادق وي، دا دی، موږ اړتیا لرو چې N−f د 2f یا N > 3f څخه لوی وي. نو په عموم ډول یو سیسټم چې د f ناکامیو څخه د ژوندي پاتې کیدو لپاره ډیزاین شوی د N=3f+1 نوډونه او د کورم اندازه به د 2f+1 وي. یوځل چې یو وړاندیز د نصاب حد تیریږي، د شبکې پاتې برخه په دې باور ده چې کوم سیالي وړاندیزونه به ناکام شي. په دې توګه شبکه د پایلې سره بدلیږي.

مګر د فدرالي بازنطین تړون سیسټم کې، نه یوازې دا چې اکثریت شتون نلري (ځکه چې هیڅوک د شبکې ټوله اندازه نه پوهیږي)، مګر د اکثریت مفهوم په بشپړه توګه بې ګټې دی! که چیرې په سیسټم کې غړیتوب خلاص وي، نو یو څوک کولی شي په ساده ډول د سیبیل برید په ترسره کولو سره اکثریت ترلاسه کړي: په مکرر ډول د ډیری نوډونو له لارې شبکې سره یوځای کیدل. نو ولې د انتقالي ټوټې تړل بلل کیدی شي کورم، او دا څنګه توان لري چې سیالي کونکي وړاندیزونه ودروي؟

په تخنیکي توګه، هیڅ لاره! د شپږو نوډونو یوه شبکه تصور کړئ، چیرې چې دوه درې ګوني د یو بل د کورم سلائسونو کې جلا شوي دي. لومړی فرعي ګروپ ممکن پریکړه وکړي چې دویمه به یې هیڅکله نه اوري، او برعکس. د دې شبکې لپاره اجماع ته د رسیدو لپاره هیڅ لاره نشته (پرته له تصادف څخه).

له همدې امله، SCP اړتیا لري چې د فدرالي رای ورکولو لپاره (او د کاغذ مهم تیورۍ پلي کولو لپاره)، شبکه باید یو ملکیت ولري د نصاب تقاطع. د دې ملکیت سره په شبکه کې ، هر دوه کورمونه چې جوړ کیدی شي تل لږترلږه په یوه نوډ کې تیریږي. د شبکې د موجوده احساس د ټاکلو لپاره، دا د اکثریت درلودلو په څیر ښه دی. په شعوري توګه، دا پدې مانا ده چې که کوم نصاب د X بیان سره موافق وي، هیڅ کوم بل کورم هیڅکله د بل کوم شی سره موافقه نشي کولی، ځکه چې دا به د لومړي نصاب څخه ځینې نوډونه شامل کړي چې مخکې یې X ته رایه ورکړې وي.

د ستوري توافق پروتوکول درک کول
که چیرې په شبکه کې د نصاب تقاطع شتون ولري ...

د ستوري توافق پروتوکول درک کول
...بیا هر دوه کورمونه چې تاسو کولی شئ جوړ کړئ ...

د ستوري توافق پروتوکول درک کول
... تل به سره یو ځای شي.

د ستوري توافق پروتوکول درک کول

د ستوري توافق پروتوکول درک کول

(البته، د پورته کولو نوډونه کیدای شي د بازنطین دروغ وي یا بل ډول خراب وي. په دې حالت کې، د نصاب تقاطع د شبکې سره موافقه نه کوي. د دې دلیل لپاره، د SCP په سپینه پاڼه کې ډیری پایلې پر بنسټ والړ دي. ښکاره انګیرنې، لکه هغه څه چې د شبکې په نصاب کې پاتې کیږي حتی د خراب نوډونو لرې کولو وروسته. د سادگي لپاره، راځئ چې دا انګیرنې پریږدو نغښتی د مقالې په پاتې برخه کې).

دا ممکن غیر معقول ښکاري چې تمه وکړئ چې د خپلواک نوډونو په شبکه کې د اعتبار وړ کورم کراس ممکن وي. مګر دوه دلیلونه شتون لري چې ولې داسې کیږي.

لومړی دلیل پخپله د انټرنیټ شتون دی. انټرنیټ د خپلواک نوډونو د شبکې یوه ښه بیلګه ده چې د قطع کولو کورمونو سره. په انټرنیټ کې ډیری نوډونه یوازې یو څو نورو محلي نوډونو سره وصل دي ، مګر دا کوچني سیټونه دومره ډیریږي چې هر نوډ د یوې لارې په اوږدو کې له هر بل نوډ څخه رسیدلی شي.

دوهم دلیل د سټیلر تادیې شبکې لپاره ځانګړی دی (د SCP ترټولو عام کارول). د سټیلر په شبکه کې هره شتمنۍ یو جاري کونکی لري، او د سټیلر لارښوونې هر صادرونکي ته اړتیا لري چې په شبکه کې یو یا څو نوډونه ډیزاین کړي ترڅو د خلاصون غوښتنې پروسس کړي. دا ستاسو په ګټه ده چې په مستقیم یا غیر مستقیم ډول دا نوډونه د هرې شتمنۍ لپاره چې تاسو یې لیوالتیا لرئ د کورم سلائسونو کې شامل کړئ. د ټولو نوډونو لپاره چې په ورکړل شوي شتمنۍ کې لیوالتیا لري بیا به لږ تر لږه په دې خلاصون نوډونو کې تکرار شي. په ډیری شتمنیو کې علاقه لرونکي نوډونه به د اړونده جاري کونکو ټول خلاصون نوډونه د دوی په کورم سلائسونو کې شامل کړي ، او دوی به د ټولو شتمنیو یوځای کولو هڅه وکړي. برسېره پردې، کومې شتمنۍ چې په دې طریقه په شبکه کې نورو سره تړلې ندي، او باید وصل نه شي - دا د دې لپاره ډیزاین شوی چې د دې شبکې لپاره کوم کورم اوورلپ شتون نلري (د مثال په توګه، د ډالر زون بانکونه کله ناکله غواړي د یورو زون بانکونو او د پیسو زون بانکونو سره تجارت وکړي، نو دوی په ورته شبکه کې دي، مګر هیڅ نه. له دوی څخه د بیسبال کارتونو پلورونکو ماشومانو جلا شبکې ته پاملرنه کوي).

البته، انتظار د کورم کراس نه دی تضمین. د بازنطین تړون نور سیسټمونه د دوی ډیری پیچلتیا د کورمونو تضمین پورې اړه لري. د SCP یو مهم نوښت دا دی چې دا پخپله د توافق الګوریتم څخه د نصاب رامینځته کولو مسؤلیت لرې کوي او د غوښتنلیک کچې ته راوړي. په دې توګه، که څه هم فدرالي رایه ورکول دومره عمومي دي چې په هره مسله کې رایه ورکړي، د هغې اعتبار په حقیقت کې د دې معنی په پراخه معنی پورې اړه لري. ځینې ​​فرضي کارول ممکن د نورو په څیر د ښه وصل شوي شبکو رامینځته کولو لپاره مناسب نه وي.

رایه ورکول، منل او تاییدول

د رای ورکولو په فدراسیون پړاو کې، یو نوډ په اختیاري توګه د یو څه ارزښت V لپاره رایه ورکول پیل کوي. دا پدې مانا ده چې شبکې ته یو پیغام خپروي: "زه نوډ N یم، زما د کورم سلائسونه Q دي، او زه V ته رایه ورکوم." کله چې یو نوډ پدې ډول رایه ورکوي، دا ژمنه کوي چې هیڅکله یې د V په وړاندې رایه نه ده ورکړې او هیڅکله به یې نه وي.

په ګډه سره په خپرونو کې، هر نوډ ګوري چې نور څنګه رایه ورکوي. یوځل چې یو نوډ د دې پیغامونو کافي اندازه راټول کړي ، دا کولی شي د کورم سلائسونه تعقیب کړي او د کورمونو موندلو هڅه وکړي. که چیرې هغه د همکارانو نصاب وګوري چې V ته هم رایه ورکوي، هغه کولی شي پرمخ ولاړ شي اخستل V او دا نوی پیغام یې شبکې ته خپور کړ: "زه نوډ N یم، زما د کورم سلائسونه Q دي، او زه V منم." منل د ساده رایې ورکولو په پرتله قوي تضمین چمتو کوي. کله چې یو نوډ V ته رایه ورکوي، دا هیڅکله نشي کولی نورو انتخابونو ته رایه ورکړي. مګر که یو نوډ V ومني، په شبکه کې هیڅ نوډ به هیڅکله بل اختیار ونه مني (د SCP په سپین کاغذ کې تیورم 8 دا ثابتوي).

البته، ډیر احتمال شتون لري چې سمدستي به د نوډونو نصاب شتون ونلري چې د V سره موافق وي. نور نوډونه ممکن نورو ارزښتونو ته رایه ورکړي. مګر د نوډ لپاره بله لاره شتون لري چې د ساده رایې ورکولو څخه منلو ته حرکت وکړي. N ممکن د W لپاره مختلف ارزښت ومني، حتی که هغه هغې ته رایه نه وي ورکړې، او حتی که هغه د دې لپاره نصاب ونه ګوري. د خپلې رایې بدلولو پریکړه کولو لپاره، یوازې وګورئ بلاک کول هغه نوډونه چې W منلي دي. د بلاک کولو سیټ د هرې کورم سلائسو څخه یو نوډ دی. لکه څنګه چې نوم وړاندیز کوي، دا کولی شي بلاک کوم بل معنی. که په داسې یوه ټولګه کې ټول نوډونه W ومني، نو (د تیورم 8 لخوا) دا به هیڅکله امکان ونلري چې یو نصاب جوړ کړي چې مختلف ارزښت ولري، او له همدې امله د N لپاره هم خوندي دی چې W ومني.

د ستوري توافق پروتوکول درک کول
نوډ N د دریو کورم سلائسونو سره.

د ستوري توافق پروتوکول درک کول
BDF د N لپاره د بلاک کولو سیټ دی: پدې کې د N هرې سلائسو څخه یو نوډ شامل دی.

د ستوري توافق پروتوکول درک کول
BE د N لپاره د بلاک کولو سیټ هم دی ځکه چې E د N په دوه برخو کې څرګندیږي.

مګر د بلاک کولو سیټ نصاب ندی. دا به ډیره اسانه وي چې د نوډ N څخه د غوښتل شوي ارزښت منلو لپاره چلول که دا بس وي چې د N په هر سلائس کې یوازې یو نوډ هیک کړئ. نو د ارزښت منل د رایې ورکولو پای نه دی. پرځای یې، N باید ارزښت تایید کړي، دا دی، د نوډونو کورم وګورئ چې دا یې مني. که دا دومره لرې شي، نو بیا، لکه څنګه چې د SCP سپینه پاڼه ثابتوي (په تیورم 11 کې)، د شبکې پاتې برخه به هم په پای کې ورته ارزښت تایید کړي، نو N به د پایلې په توګه د یو ځانګړي ارزښت سره فدرالي رایې پای ته ورسوي.

د ستوري توافق پروتوکول درک کول
فدرالي رایه ورکول.

د رایې ورکولو، منلو، او تایید پروسه د فدرالي رای ورکولو یو بشپړ پړاو جوړوي. د ستوري توافق پروتوکول د دې ډیری پړاوونو سره یوځای کوي ترڅو د بشپړ توافق سیسټم رامینځته کړي.

د ستوري توافق پروتوکول

د توافق سیسټم دوه مهم ملکیتونه دي - خونديتوب и بقا. د توافق الګوریتم "خوندي" دی که چیرې دا هیڅکله مختلف ګډون کونکو ته مختلفې پایلې نشي ورکولی (د باب تاریخ کاپي به هیڅکله د کارول سره مخالفت ونه کړي). "ژوندیتوب" پدې معنی دی چې الګوریتم به تل پایله رامینځته کړي ، دا دی ، دا به نه ودریږي.

د فدرالي رای ورکولو طرزالعمل تشریح شوی خوندي په دې معنی چې که یو نوډ د V ارزښت تایید کړي، هیڅ بل نوډ به بل ارزښت تایید کړي. مګر "بل معنی به تایید نکړي" پدې معنی ندي چې دا به لازمي یو څه تایید کړي. برخه اخیستونکي کولی شي په ډیری مختلف ارزښتونو رایه ورکړي چې هیڅ شی به د منلو حد ته ونه رسیږي. دا پدې مانا ده چې په فدرالي رای ورکولو کې هیڅ نشته بقا.

د ستوري توافق پروتوکول فدرالي رایې په داسې طریقه کاروي چې امنیت او بقا دواړه تضمین کړي. (د SCP امنیت او د ژوندي پاتې کیدو تضمینونه یو نظري حد لري. ډیزاین خورا پیاوړی امنیتي تضمین غوره کوي، د ژوندي پاتې کیدو لږ کمښت قرباني کوي، مګر په کافي وخت کې، د اجماع د رسیدو احتمال ډیر دی.) په لنډه توګه، مفکوره دا ده چې په څو ارزښتونو کې ډیری فدرالي رایې ولري تر هغه چې یو یې د SCP د رایې ورکولو ټولو مرحلو له لارې لاندې تشریح کړي.

هغه ارزښتونه چې SCP یې په اړه توافق غواړي د لیږد تاریخ یا د غرمې امر یا بل څه کیدی شي، مګر دا مهمه ده چې یادونه وکړو چې دا هغه ارزښتونه ندي چې منل شوي یا تایید شوي. پرځای یې، د فدرالي رای ورکولو سره سم واقع کیږي د دې ارزښتونو په اړه بیانونه.

د فدرالي رای ورکولو لومړی پړاو به د شنبې په ورځ ترسره شي د نومونې مرحله (د نومونې مرحله)، د بیانونو په یوه مجموعه کې لکه "زه V نوموم،" شاید د V د ډیری مختلف ارزښتونو لپاره. د نومونې هدف د یو یا ډیرو بیانونو موندل دي چې د منلو او تایید څخه تیریږي.

د تایید وړ نوماندانو له موندلو وروسته، SCP د رایې ورکولو مرحلې ته ځي، چیرې چې هدف د یو مشخص موندلو لپاره دی. خبرتیا (دا د وړاندیز شوي ارزښت لپاره یو کانټینر دی) او یو کورم چې کولی شي اعلان کړي ژمن د دې لپاره (ژمنه). که چیرې یو نصاب رایه ورکړي، د هغې ارزښت د توافق په توګه منل کیږي. مګر مخکې لدې چې یو نوډ د رایې ورکولو ژمنې ته رایه ورکړي ، دا باید لومړی تایید کړي لغوه کول ټول رای پاڼې د ټیټ کاونټر ارزښت سره. دا مرحلې - د رای پاڼو لغوه کول د داسې یو موندلو لپاره چې ژمن کیدی شي - د رای ورکولو ډیری ادعاګانو باندې د فدرالي رای ورکولو ډیری پړاوونه شامل دي.

لاندې برخې د نوم لیکنې او رایې ورکولو په اړه په ډیر تفصیل سره تشریح کوي.

نومونې

د نومونې مرحلې په پیل کې، هر نوډ کولی شي په ناڅاپه توګه د V لپاره ارزښت وټاکي او "زه V نوموم" بیان ته رایه ورکړي. په دې مرحله کې موخه دا ده چې د فدرالي رایې له لارې د ځینې ارزښت نومول تایید کړي.

شاید کافي نوډونه په کافي ډول مختلف وړاندیزونو ته رایه ورکړي چې هیڅ نومونې نشي کولی د منلو حد ته ورسیږي. له همدې امله، د خپلو نوماندانو رایو خپرولو سربیره، نوډونه د خپلو همکارانو نومونه "انعکاس" کوي. د اکو معنی دا ده چې که یو نوډ د نومونې V ته رایه ورکړي، مګر د یو ګاونډي څخه پیغام وګوري چې د نومونې لپاره رایه ورکوي، دا به اوس V او W دواړو ته رایه ورکړي. مختلف نوماندان. SCP د دې رایو د تنظیم کولو میکانیزم لري. په لنډه توګه، د نوډ له نظره د ملګري "لومړیتوب" ټاکلو لپاره یو فورمول شتون لري، او یوازې د لوړ لومړیتوب نوډونو رایې منعکس کیږي. نوډ د هغو همکارانو ټولګه پراخوي چې رایه به یې منعکس کړي. د لومړیتوب فورمول کې د سلاټ شمیره د هغې د یوې برخې په توګه شامله ده، نو د یو سلاټ لپاره د لوړ لومړیتوب ملګری ممکن د ټیټ لومړیتوب ملګری وي. بل، او برعکس).

په مفهوم سره، نوم لیکنه موازي ده، V او W دواړه جلا فدرالي رایې دي، هر یو په انفرادي ډول د منلو یا تایید ترلاسه کولو توان لري. په عمل کې، د SCP پروتوکول پیغامونه دا انفرادي رایې یوځای بسته کوي.

که څه هم د V د نومونې لپاره رایه ورکول یوه ژمنه ده چې هیڅکله به د V د نومونې په وړاندې رایه ورنکړي، دا د غوښتنلیک په کچه کې ده - پدې حالت کې SCP - دا ټاکل کیږي چې "مخالف" څه معنی لري. SCP داسې بیان نه ګوري چې د "زه نومول X" رایه سره تضاد لري، دا دی، هیڅ "زه د X نومولو خلاف یم" پیغام شتون نلري، نو نوډ کولی شي د هر ارزښتونو نومولو لپاره رایه ورکړي. ډیری دا نومونې به هیڅ ځای ته لاړ نشي، مګر په نهایت کې نوډ به د دې وړتیا ولري چې یو یا څو ارزښتونه ومني یا تایید کړي. یوځل چې یو نوماند تایید شي، هغه کیږي نوماند.

د ستوري توافق پروتوکول درک کول
د فدرالي رای ورکولو په کارولو سره د SCP نوم لیکنه. ډیری "B" ارزښتونه شتون لري چې د ملګرو لخوا وړاندې کیږي او د نوډ لخوا "انعکاس شوي" دي.

نومونه کیدای شي د ډیرو تایید شویو کاندیدانو پایله ولري. له همدې امله، SCP د غوښتنلیک پرت ته اړتیا لري ترڅو د کاندیدانو سره یوځای کولو ځینې میتود چمتو کړي مرکب (مجموعه). د یوځای کیدو طریقه هر څه کیدی شي. اصلي شی دا ده چې که دا طریقه ټاکونکی وي، نو هر نوډ به ورته نوماندان سره یوځای کړي. د غرمې د رای ورکولو په سیسټم کې، "یووالی" ممکن په ساده ډول د دوو نوماندانو څخه د یو ردولو معنی ولري. (مګر په ټاکونکي ډول: هر نوډ باید د بیا تنظیم کولو لپاره ورته ارزښت وټاکي. د بیلګې په توګه، د الفبا په ترتیب کې پخوانی انتخاب). د سټیلر تادیې شبکې کې ، چیرې چې د لیږد تاریخ ته رایه ورکول کیږي ، د دوه وړاندیز شوي نوماندانو یوځای کول د هغه لیږدونو یوځای کول شامل دي چې دوی پکې شامل دي او د دوی وروستي دوه ټایم سټیمپونه.

د SCP سپینه پاڼه ثابتوي (Theorem 12) چې د تمدید مرحلې په پای کې، شبکه په پای کې یو واحد مرکب ته بدلیږي. مګر یوه ستونزه شتون لري: فدرالي رایه ورکول یو غیر متناسب پروتوکول دی (لکه SCP). په بل عبارت، نوډونه د وخت سره همغږي نه دي، مګر یوازې د پیغامونو له لارې چې دوی یې لیږي. د نوډ له نظره، دا روښانه نده چې کله ختم شو د تمدید پړاو. او که څه هم ټول نوډونه به په پای کې ورته مرکب ته ورسیږي، دوی ممکن د لارې په اوږدو کې مختلفې لارې ونیسي، د لارې په اوږدو کې مختلف مرکب نوماندان رامینځته کړي، او هیڅکله نشي ویلای چې کوم یو وروستی دی.

مګر دا نورمال دی. نوم لیکنه یوازې تیاری دی. اصلي خبره دا ده چې د کاندیدانو شمیر محدود کړي ترڅو موافقې ته ورسیږي، کوم چې په پروسه کې پیښیږي د دفتر لپاره چلول (رایه ورکول).

چلول

بلیټین یو جوړه ده ، چیرې چې counter یو عدد دی چې په 1 پیل کیږي او ارزښت د نوماندۍ مرحلې څخه نوماند دی. دا کیدی شي د نوډ خپل کاندید یا د ګاونډی نوډ کاندید وي چې د دې نوډ لخوا منل شوی وي. په لنډه توګه ووایو، په رای پاڼه کې تکراري هڅې شاملې دي چې شبکه دې ته اړ کړي چې د رایې ورکولو په بیانونو کې د احتمالي ډیری فدرالي رایو په درلودلو سره په ځینو رای پاڼو کې د یو نوماند په اړه توافق ته ورسیږي. په رای پاڼو کې شمیرونکي د ترسره شویو هڅو تعقیب ساتي، او د لوړې شمیرې رای پاڼې د ټیټو شمیرل شویو رایو په پرتله لومړیتوب لري. که خبری ودریږي، نوې رایې پیل کیږي، اوس په رای پاڼه کې .

دا مهمه ده چې توپیر وکړئ ارزښتونه (د مثال په توګه، د غرمې ډوډۍ باید څه وي: پیزا یا سلاد) خبر لیکونه (د مقابل ارزښت جوړه) او بیانات د رای پاڼو په اړه. د SCP پړاو کې د فدرالي رای ورکولو څو پړاوونه شامل دي، په ځانګړې توګه په لاندې بیانونو کې:

  • "زه د B رایې ورکولو ته چمتو یم" او
  • "زه د B رایې ورکولو ژمنې اعلانوم"

د ورکړل شوي نوډ له نظره، موافقت ته رسیږي کله چې دا د B رای پاڼې ومومي کوم چې دا تصدیق کولی شي (یعنې د منلو وړ نصاب ومومئ) دا بیان "زه د B رای ورکوم." له دې ځایه، دا خوندي دی چې په B کې مشخص شوي ارزښت باندې عمل وکړئ - د بیلګې په توګه، د غرمې لپاره دا امر ځای پرځای کول. دې ته وایې بهرنی کول معنی یوځل چې د رای پاڼې منل تایید شي، نوډ کولی شي ډاډ ترلاسه کړي چې کوم بل نوډ ورته ارزښت بهر کړی یا په راتلونکي کې به دا کار وکړي.

که څه هم ډیری فدرالي رایې په مفکوره کې د ډیری بیلابیلو رای پاڼو لپاره د ادعاوو په اساس ترسره کیږي، دوی ډیری پیغامونه نه تبادله کوي ځکه چې هر پیغام یو شمیر رای پاڼې پوښي. یو پیغام په دې توګه په یوځل کې د ډیری فدرالي رایو حالت ته وده ورکوي، د بیلګې په توګه: "زه د ژمنې رایې منو مخکې "

د "تیار" او "ژمنې" اصطلاحات څه معنی لري؟

یو نوډ د رایې ورکولو ژمنې ته رایه ورکوي کله چې دا ډاډه وي چې نور نوډونه به د مختلف ارزښتونو سره رای پاڼې ونه کړي. د دې قانع کول د غوښتنلیک چمتو کولو هدف دی. یوه رایه چې وايي "زه د B رای ورکولو ته چمتو یم" دا ژمنه ده چې هیڅکله به د B څخه کوچنۍ رایې ونه کړي، د بیلګې په توګه د لږ شمیر سره (SCP اړتیا لري په رای پاڼو کې ارزښتونه په یو ټاکلي ترتیب کې وي. په دې توګه، خبر پاڼه لږ ، که N1

ولې "زه د B رای ورکولو ته چمتو یم" پدې معنی چې "زه ژمنه کوم چې هیڅکله به د B څخه کوچنۍ رایې ونه کړم"؟ ځکه چې SCP سقط د ژمنې برعکس تعریفوي. د رای پاڼې د چمتو کولو لپاره رایه هم د ځینو نورو رای پاڼو د غیرقانوني کولو لپاره رایه هم شامله ده، او لکه څنګه چې موږ مخکې بحث وکړ، یو شی ته رایه ورکول یوه ژمنه ده چې هیڅکله به د هغې په وړاندې رایه ورنکړي.

د ژمنې خپرولو دمخه ، نوډ باید لومړی یو بلیټین ومومي چې دا د چمتو شوي تصدیق تصدیق کولی شي. په بل عبارت، دا د "زه B رای ورکولو ته چمتو یم" موضوع باندې فدرالي رایه ترسره کوي، احتمالا په ډیری بیلابیلو رای پاڼو کې، تر هغه چې دا یو څوک ومومي چې د نصاب منل وي.

د رایو د چمتو کولو لپاره رای پاڼې له کوم ځای څخه راځي؟ لومړی، نوډ د <1,C> لپاره د رایې ورکولو لپاره چمتووالی خپروي، چیرته چې C د نومونې په مرحله کې تولید شوی جامع کاندید دی. په هرصورت، حتی وروسته له دې چې د رایې ورکولو لپاره چمتووالی پیل شي، د نوم لیکنې پایله کیدای شي اضافي کاندیدان د نوي رای پاڼو په بڼه وي. په عین وخت کې، ملګري کولی شي مختلف کاندیدان ولري، او دوی کولی شي د بلاک کولو سیټ جوړ کړي چې دا مني چې "زه د B2 رایې ورکولو ته چمتو یم"، کوم چې به نوډ قانع کړي چې دا هم ومني. په نهایت کې، د وخت پای ته رسیدو میکانیزم شتون لري چې د نوي رای پاڼو په اړه د فدرالي رای ورکولو نوي پړاوونه رامینځته کوي که چیرې اوسنۍ رایې ودریږي نو د لوړې شمیرې سره.

هرڅومره ژر چې نوډ د رای پاڼې B ومومي چې دا کولی شي د چمتو شوي په توګه تایید کړي، دا یو نوی پیغام خپروي "د رای ورکولو B ته ژمنه وکړئ." دا رایه خپلوانو ته وایي چې نوډ به هیڅکله B نه پریږدي. په حقیقت کې، که B یوه رایه وي ، بیا "رایه ورکړئ د هرې رای پاڼې د چمتووالي لپاره د رایې ورکولو لپاره غیر مشروط رضایت معنی لري ته <∞, s>. دا اضافي ارزښت د نورو همکارانو سره مرسته کوي چې د ژمنې ملګري سره یوځای شي که چیرې دوی لاهم د پروتوکول په لومړیو مرحلو کې وي.

په دې مرحله کې، دا یو ځل بیا ټینګار کولو ارزښت لري چې دا غیر متناسب پروتوکولونه دي. یوازې د دې لپاره چې یو نوډ د ژمنې لپاره رایې لیږي پدې معنی ندي چې ملګري یې هم کوي. ځینې ​​​​یې ممکن د رایې ورکولو لپاره د چمتووالي لپاره په بیانونو کې رایه ورکړي، نور ممکن لا دمخه د دې معنی بهرنۍ کړي. SCP تشریح کوي چې څنګه یو نوډ باید د مرحلې په پام کې نیولو پرته هر ډول شریک پیغام پروسس کړي.

که پیغام "ما ژمنه اعلان کړه » ترلاسه یا تایید نشي، دا د پیغام د منلو یا تایید احتمال یا - یا، په هر حالت کې، د C ارزښت سره کومه رای پاڼه، او بله نه، ځکه چې نوډ لا دمخه ژمنه کړې چې هیڅکله به لغوه نه کړي . تر هغه وخته چې نوډ د ژمنې لپاره رایې خپروي ، دا به C یا هیڅ نه وي ، پدې پورې اړه لري چې اجماع څومره پرمخ ځي. په هرصورت، دا لا تر اوسه د نوډ لپاره کافي ندي چې C بهر کړي. ځینې بایزنټین ملګري (چې زموږ د امنیت انګیرنې پراساس له کورم څخه کم تشکیلوي) ممکن نوډ ته دروغ وي. د ځینو رای پاڼو منل او بیا تایید کول (یا د رای پاڼو لړۍ) هغه څه دي چې نوډ ته په پای کې د C بهرنۍ کولو باور ورکوي.

د ستوري توافق پروتوکول درک کول
SCP د فدرالي رای ورکولو له لارې رایه ورکول. نه ښودل شوي: ټایمر ممکن هر وخت ودریږي، د رای پاڼې شمیر زیات کړي (او ممکن د اضافي نومول شویو نوماندانو یو نوی ترکیب رامینځته کړي).

او دا ټول دي! یوځل چې شبکه توافق ته ورسیده، دا چمتو دی چې دا بیا بیا ترسره کړي. د سټیلر تادیې شبکې کې، دا په هرو 5 ثانیو کې نږدې یو ځل پیښیږي: یو کار چې د SCP لخوا تضمین شوي امنیت او بقا دواړه ته اړتیا لري.

SCP کولی شي دا د فدرالي رای ورکولو په څو پړاوونو باندې تکیه کولو سره ترلاسه کړي. فدراسیون رایه اچونه د کورم سلائسونو مفهوم لخوا ممکنه شوې ده: د همکارانو سیټونه چې هر نوډ پریکړه کړې چې د هغې (مضمون) کورم برخې په توګه باور وکړي. دا ترتیب پدې معنی دی چې اجماع ته رسیدلی شي حتی په شبکه کې د خلاص غړیتوب او بازنطین فریبونو سره.

مخ پر وړاندی لوستل

  • د SCP اصلي سپین کاغذ موندل کیدی شي دلتهاو دلته د پلي کولو لپاره د مشخصاتو مسوده.
  • د SCP پروتوکول اصلي لیکوال، ډیویډ مازیر، دا په ساده (مګر لاهم تخنیکي) طریقه تشریح کوي. دلته.
  • تاسو شاید حیران شوي یاست چې پدې مقاله کې د "کان کیندنې" یا "د کار ثبوت" شرایط ونه موندل. SCP دا میتودونه نه کاروي، مګر ځینې نور توافق الګوریتمونه کوي. زین ویدرسپون د لاسرسي وړ لیکلی د توافق الګوریتم عمومي کتنه.
  • ګام په ګام توضیحات یوه ساده شبکه چې د SCP په یوه بشپړ پړاو کې موافقې ته رسي.
  • د هغو لوستونکو لپاره چې د SCP پلي کولو سره علاقه لري: وګورئ C++ کوډد سټیلر تادیې شبکې لخوا کارول کیږي، یا کوډ ته لاړ شه، کوم چې ما د SCP د ښه پوهیدو لپاره لیکلی و.

سرچینه: www.habr.com

Add a comment