Распределенные алгоритмы и системы — различия между версиями
Материал из Кафедра математической кибернетики
Строка 1: | Строка 1: | ||
− | Обязательный курс для магистров 521 группы 10 семестра обучения. Курс читает профессор [[Захаров Владимир Анатольевич|В. А. Захаров]]. | + | Обязательный курс для магистров 521 группы 10 семестра обучения. |
+ | |||
+ | Курс читает профессор [[Захаров Владимир Анатольевич|В. А. Захаров]]. | ||
+ | |||
Лекционная нагрузка — 48 ч., семинары — 16 ч. | Лекционная нагрузка — 48 ч., семинары — 16 ч. | ||
Строка 6: | Строка 9: | ||
#:<h4>Часть 1. Математические модели.</h4> | #:<h4>Часть 1. Математические модели.</h4> | ||
− | #Характерные особенности и примеры распределенных систем компьютерные сети, локальные и глобальные сети, многопроцессорные компьютеры). | + | #Характерные особенности и примеры распределенных систем компьютерные сети, локальные и глобальные сети, многопроцессорные компьютеры). Архитектура распределенных систем. Стандарт ISO Open System Interconnection. Алгоритмические проблемы организации вычислений распределенных систем. Особенности распределенных алгоритмов. |
− | #Математическая модель распределенных систем. Системы переходов. Синхронный и асинхронный обмен сообщениями. Зависимые и независимые события. | + | #Математическая модель распределенных систем. Системы переходов. Синхронный и асинхронный обмен сообщениями. Зависимые и независимые события. Причинно-следственный порядок событий. Эквивалентность выполнений. Вычисления. Логические часы. Топологии распределенных систем. |
#: | #: | ||
#:<h4>Часть 2. Коммуникационные протоколы.</h4> | #:<h4>Часть 2. Коммуникационные протоколы.</h4> | ||
Строка 18: | Строка 21: | ||
#: | #: | ||
#Волновые алгоритмы: определение, основные свойства, область применения. Древесный алгоритм. | #Волновые алгоритмы: определение, основные свойства, область применения. Древесный алгоритм. | ||
− | #Алгоритм эха. Фазовый алгоритм. Алгоритм Финна. Алгоритмы обхода. Распределенный обход в глубину. | + | #Алгоритм эха. Фазовый алгоритм. Алгоритм Финна. Алгоритмы обхода. Распределенный обход в глубину. Алгоритмы обхода Авербаха и Сидон. |
− | #Задача избрания лидера. Избрание лидера на кольцах: алгоритм Ченя-Робертса, оптимальный алгоритм Патерсона –Долева-Клейва-Роде. | + | #Задача избрания лидера. Избрание лидера на кольцах: алгоритм Ченя-Робертса, оптимальный алгоритм Патерсона –Долева-Клейва-Роде. Избрание лидера в произвольных сетях: алгоритм Галладжера-Хамблета-Спиры, алгоритм Кораха-Каттена-Морана. |
− | + | #Задача обнаружения завершения вычисления. Алгоритм Дейкстры-Шолтена. Алгоритм Шави-Франчеза. Алгоритм возвращения кредитов. Алгоритм Раны. Применение алгоритмов обнаружения завершения вычислений для выявления блокировки вычислений. | |
− | #Задача обнаружения завершения вычисления. Алгоритм Дейкстры-Шолтена. Алгоритм Шави-Франчеза. Алгоритм возвращения кредитов. Алгоритм Раны. | + | |
#Задача сохранения моментального состояния. Алгоритм Чанди-Лампорта. Алгоритм Лаи-Янга. | #Задача сохранения моментального состояния. Алгоритм Чанди-Лампорта. Алгоритм Лаи-Янга. | ||
+ | #: | ||
+ | #:<h4>Часть 4. Вопросы надежности распределенных алгоритмов.</h4> | ||
+ | #: | ||
+ | #Задача обеспечения отказоустойчивости распределенных систем. Невозможность построения робастных асин-хронных систем. Синхронные робастные алгоритмы принятия решения. Использование криптографических примитивов для повышения отказоустойчивости. | ||
+ | #Стабилизирующиеся алгоритмы. Пример Дейкстры. Общие принципы построения стабилизирующихся алгоритмов. | ||
#([[Media:Tasks.pdf|Список задач.(pdf)]]) | #([[Media:Tasks.pdf|Список задач.(pdf)]]) | ||
== Литература == | == Литература == | ||
− | #G. Tel. Introduction to Distributed Algorithms. Cambridge University Press. 2000. | + | #G. Tel. Introduction to Distributed Algorithms. Cambridge University Press. 2000. (русск. пер. Ж. Тель. Введение в распределенные алгоритмы, изд-во МЦНМО, 2009 г., 616 с.) |
[[Категория:Лекционные курсы кафедры МК]] | [[Категория:Лекционные курсы кафедры МК]] |
Версия 13:31, 8 февраля 2016
Обязательный курс для магистров 521 группы 10 семестра обучения.
Курс читает профессор В. А. Захаров.
Лекционная нагрузка — 48 ч., семинары — 16 ч.
Содержание
Программа
Часть 1. Математические модели.
- Характерные особенности и примеры распределенных систем компьютерные сети, локальные и глобальные сети, многопроцессорные компьютеры). Архитектура распределенных систем. Стандарт ISO Open System Interconnection. Алгоритмические проблемы организации вычислений распределенных систем. Особенности распределенных алгоритмов.
- Математическая модель распределенных систем. Системы переходов. Синхронный и асинхронный обмен сообщениями. Зависимые и независимые события. Причинно-следственный порядок событий. Эквивалентность выполнений. Вычисления. Логические часы. Топологии распределенных систем.
Часть 2. Коммуникационные протоколы.
- Коммуникационные протоколы. Ошибки, возникающие при передаче сообщений. Задача надежного обмена сообщениями. Симметричные протокол раздвижного окна: устройство протокола и обоснование его корректности. Протокол альтернирующего бита.
- Коммуникационный протокол с таймером: устройство и обоснование корректности.
- Задача маршрутизации. Алго-ритмы построения кратчай-ших путей в графе. Алгоритм Флойда-Уоршалла. Алгоритм Туэга. Алгоритм Мерлина-Сигала. Алгоритм Чанди-Мизры. Алгоритм Netchange.
Часть 3. Распределенные алгоритмы.
- Волновые алгоритмы: определение, основные свойства, область применения. Древесный алгоритм.
- Алгоритм эха. Фазовый алгоритм. Алгоритм Финна. Алгоритмы обхода. Распределенный обход в глубину. Алгоритмы обхода Авербаха и Сидон.
- Задача избрания лидера. Избрание лидера на кольцах: алгоритм Ченя-Робертса, оптимальный алгоритм Патерсона –Долева-Клейва-Роде. Избрание лидера в произвольных сетях: алгоритм Галладжера-Хамблета-Спиры, алгоритм Кораха-Каттена-Морана.
- Задача обнаружения завершения вычисления. Алгоритм Дейкстры-Шолтена. Алгоритм Шави-Франчеза. Алгоритм возвращения кредитов. Алгоритм Раны. Применение алгоритмов обнаружения завершения вычислений для выявления блокировки вычислений.
- Задача сохранения моментального состояния. Алгоритм Чанди-Лампорта. Алгоритм Лаи-Янга.
Часть 4. Вопросы надежности распределенных алгоритмов.
- Задача обеспечения отказоустойчивости распределенных систем. Невозможность построения робастных асин-хронных систем. Синхронные робастные алгоритмы принятия решения. Использование криптографических примитивов для повышения отказоустойчивости.
- Стабилизирующиеся алгоритмы. Пример Дейкстры. Общие принципы построения стабилизирующихся алгоритмов.
- (Список задач.(pdf))
Литература
- G. Tel. Introduction to Distributed Algorithms. Cambridge University Press. 2000. (русск. пер. Ж. Тель. Введение в распределенные алгоритмы, изд-во МЦНМО, 2009 г., 616 с.)