نظریه سیستم‌های توزیع‌شده

Theory of Distributed Systems

شماره درس: ۴۰۶۶۱ تعداد واحد: ۳
مقطع: کارشناسی ارشد نوع درس: نظری
پیش‌نیاز: – هم‌نیاز: –

اهداف درس

هدف از ارائه این درس آشنایی دانشجویان با اصول نظری و مفاهیم اساسی توزیع‌شدگی به ویژه توصیف، طراحی و تحلیل الگوریتم‌های مورد نیاز برای حل مسائل مطرح در مدل‌های مختلف سیستم‌های توزیع شده شامل مدل‌های هم‌گام یا نا‌هم‌گام و مدل‌های ارتباطی مبتنی بر حافظه مشترک یا مبتنی بر تبادل پیغام است. برخی از مسائل اصلی که به بررسی و تحلیل الگوریتم‌های آن پرداخته می‌شود عبارتند از: مساله انتخاب رهبر در انواع مدل‌های توزیع‌شده‌گی، حل توزیع شده برخی مسائل پایه گراف مانند مسایل کوتاه‌ترین مسیر، درخت پوشای کمینه، مجموعه مستقل بیشینه و جستجوی عرضی گراف، انواع مسئله توافق (مانند Agreement و Commitment)، مساله اجماع (Consensus)، انواع روشهای برآوردن نیازمندی انحصار متقابل (Mutual Exclusion). همچنین به مسائل مرتبط با زمانمندی سیستم‌ها مانند هم‌گام کردن ساعت‌ها (Clock Synchronization) به ویژه با فرض وجود شکست (Failure) یا اشکال (Fault) در سیستم توزیع‌شده می‌پردازد. علاوه بر مباحث الگوریتمی فوق، این درس همچنین به موضوع اثبات صوری درستی عملکرد الگوریتم‌ها و پروتکل‌های توزیع شده و به خصوص روش‌های اثبات آن که ویژگی‌های لازم مانند ویژگی‌های سرزندگی (Liveness)، انصاف (Fairness) و فارغ از بن‌بست بودن (Deadlock Freeness) را ارضا می‌کنند می‌پردازد. بنابراین به عنوان ابزاری برای این گونه اثبات‌ها، این درس به روش‌های صوری مدل‌سازی سیستم‌های توزیع شده نیز می‌پردازد. در نهایت، به عنوان مطالب به روز و موضوعات پژوهشی، می‌توان به کاربرد تحلیلی الگوریتم‌ها و روش‌های فرمال فوق در برخی سیستم‌های توزیع شده بر بستر‌های ارتباطی جدید مانند سیستم‌های بی‌سیم به خصوص شبکه‌های موبایل و ad hoc پرداخت.

ریز مواد

ارزیابی

مراجع

  1. N. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.
  2. H. Attiya and J. Welch. Distributed Computing: Fundamentals, Simulations, and Advanced Topics. 2nd edition, Wiley, 2004.
  3. G. Tel. Introduction to Distributed Algorithms. 2nd edition, Cambridge University Press, 2000.