Тип работы:
Предмет:
Язык работы:


Разработка технологии моделирования взаимодействия распределенных реестров и приложений с использованием платформы контейнеризации

Работа №125982

Тип работы

Бакалаврская работа

Предмет

модели данных

Объем работы31
Год сдачи2019
Стоимость4750 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
35
Не подходит работа?

Узнай цену на написание


Введение 3
Постановка задачи 5
Обзор литературы 6
Глава 1. Система моделирования 7
1.1. Моделирование работы узлов приложения 7
1.2. Моделирование сетевых взаимодействий 8
1.3. Распределение нагрузки на узлы кластера 10
Глава 2. Программный интерфейс описания и запуска модели 11
2.1. Общие принципы организации API 11
2.2. Описание узлов приложения и логической структуры сети 11
2.3. Настройка динамической маршрутизации 12
2.4. Создание виртуальных локальных сетей 13
2.5. Запуск и остановка модели 13
Глава 3. Пользовательский интерфейс мониторинга и управ­ления моделью 14
3.1. Обзор пользовательского интерфейса системы моделиро­вания 14
3.2. Управление качеством работы виртуальной сети 15
3.3. Программный интерфейс подсистемы мониторинга 16
3.4. Пользовательский интерфейс подсистемы мониторинга 18
Глава 4. Демонстрация работы системы 20
4.1. Подготовка приложения для использования в системе 20
4.2. Описание моделей, используемых в тестировании 21
4.3. Ход тестирования приложения 22
4.4. Результаты тестирования 23
Выводы 25
Заключение 28
Список литературы 28

Закон Мура гласит, что количество транзисторов на чипе микропро­цессора удваивается каждые два года в ходе совершенствования техноло­гии производства [1]. Впервые сформулированный в 1965 году, он полвека диктовал темп развития вычислительной техники. Однако проблемы, свя­занные с выводом генерируемого транзисторами тепла, не позволяют про­изводителям продолжать удваивать их количество на чипе [1]. Связанное с этим замедление темпа увеличения производительности вычислительной техники заставляет разработчиков искать новые пути развития для повы­шения производительности их продуктов [2]. Одним из способов, способных обеспечить необходимый эффект, является распределение вычислительной нагрузки на несколько компьютеров. Основанные на этом принципе систе­мы называются распределёнными, а используемые для непосредственных вычислений машины — узлами системы. По мере увеличения пропускной способности глобальной сети распределённые системы получают всё боль­шее распространение [3][4].
Вне зависимости от используемого в распределённой системе алго­ритма организации совместной работы и разбиения нагрузки, её узлы будут использовать сетевые соединения для координации рабочего процесса. При разработке такой системы необходимо обеспечить её тестирование с учётом логической структуры и различных возможных состояний физической се­ти, поверх которой должно будет работать приложение. (Под логической структурой сети здесь имеется в виду способ объединения узлов в группы, используемый для организации её работы) Проведение такого тестирова­ния связано с большими трудностями, однако, если проигнорировать его и предположить все узлы напрямую соединёнными между собой идеальной сетью, то даже успешное тестирование приложения сможет гарантировать его правильную работу в реальных условиях только при нормальном со­стоянии сети и не позволяет оценить влияние на него проблем сетевого плана.
Так, для децентрализованных сервисов, построенных на платфор­ме Ethereum, было показано, что изменение скорости передачи сообщений между узлами может повлиять на соотношение их мощностей при майнинге [5]. Для другой распределёной системы, предполагавшейся защищённой по свой архитектуре криптовалюты “Bitcoin” [6], существуют доказательства проведения успешных атак, основанных на манипуляциях с протоколами динамической маршрутизации пакетов в глобальной сети, поверх которой работает система [7].
Данная работа описывает основанную на технологии контейнериза­ции систему симуляции распределённых систем MADT ("Modeling and Analysys of Distributed Technologies"), обеспечивающую возможность тестирования их работы при изменяющемся поведении сети и анализа влияния логиче­ской структуры сети на такие системы. Система моделирует работу узлов системы и логическую структуру нижележащей сети и позволяет динами­чески манипулировать качеством её работы. В качестве вычислительных ресурсов для моделирования система может использовать как одну маши­ну, так и кластер, таким образом позволяя моделировать работу систем со значительным (более 1000) количеством узлов. Для сравнения, коли­чество полноценных узлов во всей сети Bitcoin оценивается как 10000 [8]. Для доступа к информации, получаемой в ходе тестирования, была реа­лизована система мониторинга, визуализирующая данные, генерируемые моделью, в реальном времени и с учётом структуры сети, позволяя со­относить изменения в работе сети с изменениями в поведении системы и упрощая планирование дальнейшего направления тестирования.
В качестве демонстрации работы созданной системы симуляции был проведён анализ поведения узлов DHT Kademlia при нарушении работы се­ти, в ходе которого были обнаружены временное замедление работы всей сети при отключении одного узла, продолжение работы отсечённого от остальной сети набора узлов и невозможность переподключения узла после кратковременного нарушения его соединения с остальной сетью, что вме­сте позволяет владельцу физической сети разделять глобальную сеть DHT Kademlia на локальные участки посредством кратковременных нарушений передачи сообщений.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Построенная в ходе данной работы система моделирования распреде­лённых приложений MADT позволяет моделировать работу приложений с большим количеством узлов при разной логической структуре нижележа­щей сети и изменять качество работы сети в реальном времени. Это даёт разработчикам таких систем испытывать их работу в условиях, прибли­женным к реальным, в частности при высоких нагрузках и плохой или пе­ременчивой работе сети. Возможность использования динамической марш­рутизации и IP-маскарадинга дополнительно увеличивает реалистичность моделей относительно реальных распределённых приложений, развёрну­тых поверх сети интернет.
Тестирование с помощью MADT может быть полезным в нескольких случаях. Прежде всего, оно может помочь повысить скорость разработки новых распределённых систем, позволяя заранее находить проблемы при работе приложения с сетью и упрощая проведение стресс-тестирования. Другим возможным применением системы является анализ защищённости распределённых приложений относительно атак сетевого плана, возмож­ный благодаря наличию возможности динамически регулировать качество работы отдельных сегментов сети и поддержке моделирования протоколов динамической маршрутизации. Кроме того, возможность моделирования работы разных технологий поверх сетей произвольной логической струк­туры делает возможным использование MADT для бенчмаркинга распре­делённых систем в специфических условиях. Это может значительно упро­стить пользователям выбор распределённой системы, подходящей для их условий.


[1] Etiemble, Daniel. <<45-year CPU Evolution: one law and two equations.»arXiv preprint arXiv:1803.00254 (2018).
[2] 13. Waldrop, M. Mitchell. «More than Moore.»Nature, vol. 530, no. 7589, 2016, p. 144+
[3] K. Skala, D. Davidovic, T. Lipic and I. Sovic, < [4] Nielsen, «J. Nielsen’s law of internet bandwidth.>>[Электронный ре­сурс]: URL: http://www.useit.com/alertbox/980405.html (дата обраще­ния: 24.05.2018).
[5] A. Shurov, D. Malevanniy, O. Iakushkin, and V. Korkhov, «Blockchain network threats: the case of PoW and Ethereum>in Proceedings of International Conference on Computational Science and Applications’19, Lecture Notes in Computer Science, in press
[6] Nakamoto, S. Bitcoin: A peer-to-peer electronic cash system. [Элек­тронный ресурс]: URL: http://bitcoin.org/bitcoin.pdf (дата обращения: 24.05.2018).
[7] Apostolaki, Maria, Aviv Zohar, and Laurent Vanbever. «Hijacking bitcoin: Routing attacks on cryptocurrencies.>2017 IEEE Symposium on Security and Privacy (SP). IEEE, 2017
[8] Global Bitcoin Nodes Distribution - Bitnodes [Электронный ресурс]: URL: http://bitnodes.earn.com (дата обращения: 24.05.2018).
[9] Rekhter, Yakov, et al. «Application of the border gateway protocol in the internet. >(1990).
[10] Henderson, Thomas R., et al. «Network simulations with the ns-3 simulator.>>SIGCOMM demonstration 14.14 (2008): 527.
[11] Alberto Montresor and Mark Jelasity. «PeerSim: A scalable P2P simulator>In Proc. of the 9th Int. Conference on Peer-to-Peer (P2P’09), pages 99-100. Seattle, WA, September 2009.
[12] M. Feldotto, K. Graffi. «Comparative Evaluation of Peer-to-Peer Systems Using PeerfactSim.KOM »In Proc. of IEEE International Conference on High Performance Computing and Simulation (IEEE HPCS’13), 2013
[13] Dinh, Tien Tuan Anh, et al. «Blockbench: A framework for analyzing private blockchains.«Proceedings of the 2017 ACM International Conference on Management of Data. ACM, 2017.
[14] Lyubomir Stoykov, Kaiwen Zhang, and Hans-Arno Jacobsen. «VIBES: fast blockchain simulations for large-scale peer-to-peer networks: demoIn Proceedings of the 18th ACM/IFIP/USENIX Middleware Conference: Posters and Demos (Middleware ’17). ACM, New York, NY, USA, 19-20.
[15] Docker: Enterprise Application Container Platform [Электронный ре­сурс]: URL: https://docker.org (дата обращения: 24.05.2018).
...


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ