• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2022/2023

Децентрализованные системы

Направление: 01.03.02. Прикладная математика и информатика
Когда читается: 4-й курс, 3 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для всех кампусов НИУ ВШЭ
Преподаватели: Грищенко Виктор Сергеевич
Язык: русский
Кредиты: 4
Контактные часы: 44

Программа дисциплины

Аннотация

Распределённые системы строят, когда других опций нет - это значительно сложней систем централизованных. Тот же Internet создали под угрозой атомной войны, ни много ни мало. Распределённые системы, однако, обладают уникальными возможностями: масштабируемостью, открытостью, исключительной живучестью. Целью курса является ознакомить слушателей с широким набором технологий построения децентрализованных и распределённых систем, а также сетевых протоколов в целом, а также выработать необходимый минимум практических навыков. Курс рассчитан на один семестр и состоит из одной пары теории и одной пары практики в неделю. Студенты должны сделать командный проект - распределённую систему любого типа.
Цель освоения дисциплины

Цель освоения дисциплины

  • В целом, студент должен чётко представлять шаги и приёмы разработки сетевых протоколов и общее устройство популярных децентрализованных систем.
Планируемые результаты обучения

Планируемые результаты обучения

  • По результатам курса, у студентов должно быть понимание основ инцентивизации
  • По результатам курса, у студентов должно быть понимание основ коллаборации
  • По результатам курса, у студентов должно быть понимание основ консенсуса
  • По результатам курса, у студентов должно быть понимание основ криптографии
  • По результатам курса, у студентов должно быть понимание основ марштуризации
  • По результатам курса, у студентов должно быть понимание основ сериализации
Содержание учебной дисциплины

Содержание учебной дисциплины

  • git: устройство, история и эволюция
  • BitTorrent: устройство, история и эволюция
  • BitCoin и блокчейны: устройство, история и эволюция
  • Основы криптографии
  • Основы форматов сериализации
  • Основы сетевых протоколов
  • Основы консенсуса: 2PC, 3PC, Paxos/Raft, PoW, PoS, PoX
  • Маршрутизация, перколация и топологии сетей
  • Микснеты и степени скрытности общения
  • Фаззинг форматов и протоколов
  • Комбинаторика сложности форматов и протоколов
  • Внутреннее устройство криптовалют
  • Языки и VM на блокчейне
  • DHT vs gossip vs HTTP на примере BitTorrent
  • IPFS и друзья: облако данных
Элементы контроля

Элементы контроля

  • неблокирующий Проверочные работы
    Как правило, задача имеет характер checklist базовой грамотности: например, получить и расшифровать сообщение. Проводятся на семинаре.
  • неблокирующий Командный проект
    Задача: в группе, за семестр сделать простую децентрализованную систему одного из рассматриваемых типов, либо изучить живую систему по данным сканирования, дампам, итд. В течение первого месяца студенты разбиваются на команды и берут либо придумывают проекты децентрализованных систем. К сессии проекты должны работать в своей основной функции.
Промежуточная аттестация

Промежуточная аттестация

  • 2022/2023 учебный год 3 модуль
    0.3 * Проверочные работы + 0.7 * Командный проект
Список литературы

Список литературы

Рекомендуемая основная литература

  • Shapiro, M., Preguiça, N., Baquero, C., & Zawirski, M. (2011). A comprehensive study of Convergent and Commutative Replicated Data Types. Https://Hal.Inria.Fr/Inria-00555588 ; [Research Report] RR-7506, Inria – Centre Paris-Rocquencourt; INRIA. 2011, Pp.50.
  • Tanenbaum, A. S., & Steen, M. van. (2014). Distributed Systems: Pearson New International Edition : Principles and Paradigms (Vol. 2nd ed). Harlow, Essex: Pearson. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1418515
  • Высоконагруженные приложения : программирование, масштабирование, поддержка, Клеппман, М., 2019

Рекомендуемая дополнительная литература

  • Shapiro, M., Preguiça, N., Baquero, C., & Zawirski, M. (2011). Conflict-free Replicated Data Types. Https://Hal.Inria.Fr/Inria-00609399 ; [Research Report] RR-7687, INRIA. 2011, Pp.18.