Вступ до алгоритмів розподілених обчислень (кн дввс)

Тип: На вибір студента

Кафедра: інформаційних систем

Навчальний план

СеместрКредитиЗвітність
84Залік

Лекції

СеместрК-сть годинЛекторГрупа(и)
828професор, ст. наук. співробітник Жолткевич Г. М.ПМі-41, ПМі-42, ПМі-43, ПМі-44, ПМі-45, ПМі-46

Лабораторні

СеместрК-сть годинГрупаВикладач(і)
828ПМі-41професор, ст. наук. співробітник Жолткевич Г. М.
ПМі-42професор, ст. наук. співробітник Жолткевич Г. М.
ПМі-43професор, ст. наук. співробітник Жолткевич Г. М.
ПМі-44професор, ст. наук. співробітник Жолткевич Г. М.
ПМі-45професор, ст. наук. співробітник Жолткевич Г. М.
ПМі-46професор, ст. наук. співробітник Жолткевич Г. М.

Опис курсу

Навчальна дисципліна присвячена вивченню фундаментальних принципів проектування та аналізу розподілених алгоритмів – специфікацій процесів обробки інформації, що виконуються множиною локальних процесів, об’єднаних мережею. На відміну від багатопроцесних систем, де взаємодія відбувається через спільну пам’ять, у розподілених системах кожен процес має монопольний доступ до власної пам’яті та координує свої дії виключно через обмін повідомленнями.

Актуальність курсу зумовлена необхідністю створення високонадійних систем, що забезпечують масштабованість обчислень, відмовостійкість та ефективне використання географічно розподілених ресурсів. У межах дисципліни розглядаються ключові чинники складності розробки такого ПЗ: відсутність глобального часу, недетермінованість через паралелізм подій, гетерогенність вузлів та відсутність єдиної точки відмови.

Програма курсу охоплює такі ключові напрямки.

  • Моделювання та синхронізація: вивчення мереж як комунікаційних графів та опанування концепції причинно-наслідкового порядку подій. Студенти вивчають механізми логічних годинників (зокрема годинники Лемпорта), які дозволяють впорядковувати події в системі без потреби у фізичній синхронізації часу.
  • Базові класи алгоритмів: дослідження хвильових та обхідних алгоритмів (алгоритм Таррі, DFS-обхід), що забезпечують обмін інформацією та прийняття рішень усіма вузлами мережі.
  • Стабільність та виживання системи: опанування методів створення глобальних знімків стану (Snapshots) за алгоритмами Чанді-Лемпорта та Лаї-Янга, що необхідно для діагностики та відновлення систем. Також розглядаються алгоритми виборів лідера у кільцевих та деревних топологіях для відновлення координації після збоїв.
  • Управління ресурсами та завершенням: виявлення та усунення взаємних блокувань (deadlocks) за допомогою графів очікування, а також методи розподіленого збирання сміття (непрямий та зважений підрахунок посилань).

Ефективна комунікація: побудова таблиць маршрутизації за алгоритмом Мерліна-Сігалла для пошуку найкоротших шляхів передачі даних.

Рекомендована література

Основна література:

  1. Tel G. Introduction to Distributed Algorithms. 2nd ed. Cambridge University Press; 2000.
  2. Wan Fokkink. Distributed algorithms: an intuitive approach. Massachusetts Institute of Technology, 2013.

Додаткова література:

  1. Lynch N. A. Distributed Algorithms. Morgan Kaufmann Publishers Inc; 1996.
  2. Lamport L. Time, clocks, and the ordering of events in a distributed system. CACM, vol. 21(7), 1978. Pages 558 – 565.
  3. Chandy K. M., Lamport L. Distributed snapshots: determining global states of distributed systems. TOCS, vol. 3(1), 1985. Pages 63 – 75.
  4. Chang E., Roberts R. An improved algorithm for decentralized extrema-finding in circular configurations of processes. CACM, vol. 22(5), 1979. Pages 281 – 283.
  5. Dijkstra E. W., Scholten C. S. Termination Detection for Diffusing Computations. Information Processing, vol. 11, 1980. Pages 1-4.
  6. Merlin P., Segall A. A Failsafe Distributed Routing Protocol. IEEE Transactions on Communications, vol. 27(9), 1979, Pages 1280 – 1287.

Силабус:

Завантажити силабус