SWIM Protocol
اسکیل ایبل ویکلی کنسسٹینٹ انفیکشن اسٹائل پروسیس گروپ ممبرشپ (ایس ڈبلیو آئی ایم) پروٹوکول ایک گروپ ممبرشپ پروٹوکول ہے جو تقسیم شدہ نظاموں میں استعمال ہونے والی "آؤٹ سورسڈ ہارٹ بیٹس" پر مبنی ہے، جسے سب سے پہلے 2001 میں اندرانیل گپتا نے متعارف کرایا تھا۔ یہ ایک ہائبرڈ الگورتھم ہے جو گروپ کی رکنیت کے پھیلاؤ کے ساتھ ناکامی کا پتہ لگانے کو جوڑتا ہے۔ پروٹوکول کے دو اجزاء ہوتے ہیں، ناکامی کا پتہ لگانے والا جزو اور پھیلاؤ کا جزو۔ ناکامی کا پتہ لگانے والا جزو مندرجہ ذیل طریقے سے کام کرتا ہے: ہر ٹی 'ٹائم یونٹ، ہر نوڈ () اپنی رکنیت کی فہرست میں بے ترتیب دوسرے نوڈ () کو پنگ بھیجتا ہے۔ اگر کوئی جواب موصول ہوتا ہے، تو اسے صحت مند ہونے کا فیصلہ کیا جاتا ہے اور N1 اپنے "آخری بار سنا ہوا" ٹائم اسٹیمپ کو موجودہ وقت کے لیے اپ ڈیٹ کرتا ہے۔ اگر کوئی جواب موصول نہیں ہوتا ہے، تو اس کی فہرست () کے دوسرے نوڈس سے رابطہ کریں، اور درخواست کریں کہ وہ پنگ کریں۔ اگر وقت کی ٹی اکائیوں کے بعد: اگر کوئی کامیاب جواب موصول نہیں ہوتا ہے، تو ناکام کے طور پر نشان زد کریں۔ پھیلاؤ جزو مندرجہ ذیل کام کرتا ہے: ایک ناکام نوڈ کا پتہ لگانے پر، اس کی رکنیت کی فہرست میں باقی نوڈس کو ایک ملٹی کاسٹ پیغام بھیجتا ہے، جس میں ناکام نوڈ کے بارے میں معلومات ہوتی ہیں۔ گروپ میں داخل ہونے/چھوڑنے کے لیے نوڈ کے لیے رضاکارانہ درخواستیں بھی ملٹی کاسٹ کے ذریعے بھیجی جاتی ہیں۔ خصوصیات پروٹوکول مندرجہ ذیل ضمانت فراہم کرتا ہے: مضبوط تکمیل: مکمل تکمیل کی ضمانت ہے (مثال کے طور پر۔ گروپ میں کسی بھی نوڈ کی کریش ناکامی کا پتہ بالآخر تمام لائیو نوڈس کے ذریعے لگایا جاتا ہے)۔ پتہ لگانے کا وقت: پتہ لگانے کے وقت کی متوقع قیمت (نوڈ کی ناکامی سے لے کر پتہ لگانے تک) ہے، جہاں پروٹوکول کی مدت کی لمبائی ہے، اور یہ گروپ میں غیر ناقص نوڈس کا حصہ ہے۔ توسیعات اصل ایس ڈبلیو آئی ایم پیپر پروٹوکول کو مزید مضبوط بنانے کے لیے درج ذیل توسیعات کی فہرست دیتا ہے: شکوک و شبہات: وہ نوڈز جو پنگ پیغامات کے لیے غیر ذمہ دار ہوتے ہیں انہیں ابتدائی طور پر ناکام کے طور پر نشان زد نہیں کیا جاتا ہے۔ اس کے بجائے، انہیں "مشکوک" کے طور پر نشان زد کیا جاتا ہے ؛ نوڈس جو "مشکوک" نوڈ کو دریافت کرتے ہیں پھر بھی اس میکانزم سمیت دیگر تمام نوڈس کو ملٹی کاسٹ بھیجتے ہیں۔ اگر کوئی "مشکوک" نوڈ کچھ ٹائم آؤٹ حد سے پہلے پنگ کا جواب دیتا ہے، تو نوڈ سے "مشکوک" لیبل کو ہٹانے کے لیے ملٹی کاسٹ کے ذریعے ایک "زندہ" پیغام بھیجا جاتا ہے۔ انفیکشن-اسٹائل پھیلاؤ: ملٹی کاسٹ کے ذریعے نوڈ کی ناکامی کی معلومات کو پھیلانے کے بجائے، پروٹوکول پیغامات کو نوڈ کے زندہ رہنے کا تعین کرنے کے لیے استعمال ہونے والے پنگ پیغامات پر پگی بیک کیا جاتا ہے۔ یہ افواہیں پھیلانے کے مترادف ہے۔ راؤنڈ-رابن پروب ٹارگٹ سلیکشن ": ہر پروٹوکول ٹائم اسٹیپ کے دوران بے ترتیب طور پر تحقیقات کے لیے نوڈ کا انتخاب کرنے کے بجائے، پروٹوکول میں ترمیم کی جاتی ہے تاکہ ہر نوڈ تحقیقات کے ہدف کا راؤنڈ-رابن انتخاب انجام دے۔ یہ پتہ لگانے کے اوسط وقت کو کم کیے بغیر پروٹوکول کے بدترین کیس کا پتہ لگانے کے وقت کو محدود کرتا ہے۔ یہ بھی دیکھیں ناکامی کا پتہ لگانے والا کریش (کمپیوٹنگ) حوالہ جات غلطی برداشت کرنے والے کمپیوٹر سسٹم تقسیم شدہ الگورتھم تقسیم شدہ کمپیوٹنگ