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


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

Работа №132959

Тип работы

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

Предмет

информационные системы

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

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


Введение 4
1. Постановка задачи 6
2. Обзор 7
2.1. Blockchain 7
2.2. Инструменты нагрузочного тестирования 7
3. Анализ реализаций blockchain 9
3.1. Общий механизм работы 9
3.2. Различия 10
4. Нагрузочное тестирование реализаций blockchain 11
4.1. Метод нагрузочного тестирования 11
4.2. Ограничения 12
4.3. Параметры тестирования 12
4.4. Сравнение с BLOCKBENCH 13
5. Архитектура 15
5.1. Управляющий модуль 15
5.2. Логирующий модуль 17
5.3. Нагрузочный модуль 17
6. Апробация 18
Заключение 19
Список литературы 20


Технология blockchain представляет собой децентрализованную распределенную базу данных особого вида, обеспечивающую высокую надёжность хранения и добавления данных участниками, не доверяющими друг другу. Начало развитию технологии blockchain положила криптовалюта Bitcoin [3] в 2008 году.
С тех пор всё больше и больше финансовых и технологических компаний обращают внимание на blockchain, разрабатывают свои вариации, проводят эксперименты, внедряют в бизнес, создают консорциумы и вступают в них для совместных исследований этой технологии. Примерами таких консорциумов являются Hyperledger [8] и R3CEV [16]. Интерес проявляют даже государственные структуры. Например, Шведский земельный реестр [13] занимается тестированием blockchain для проведения сделок с землей и недвижимостью. Всё это показывает актуальность технологии blockchain.
За последние годы было представлено множество различных реализаций blockchain: Ethereum [7], Hyperledger Fabric [9], Nxt [15], Multichain [14], Eris [6] и другие. Но при выборе той или иной реализации возникает вопрос, сможет ли она обеспечить определенный уровень производительности для решения конкретной задачи. Более того, поведение даже одной и той же реализации при различных настройках может отличаться, что ставит вопрос о нахождении подходящих параметров.
На момент начала данной работы, в свободном доступе не было найдено инструмента, позволяющего ответить на вышепоставленные вопросы касательно различных реализаций, что послужило причиной создания проекта Blockchain Benchmarking, посвященного изучению производительности различных реализаций blockchain.
В рамках этого проекта были выделены следующие задачи:
• Разработка системы автоматизированного нагрузочного тестирования реализаций blockchain.
• Разработка универсального API для взаимодействия с реализациями blockchain.
• Анализ производительности реализаций blockchain.
Однако стоит отметить, что недавно появилась работа [2], посвященная анализу производительности реализаций blockchain, что также подчёркивает актуальность данной проблемы. При этом, наш подход предоставляет более подробные данные о работе blockchain, на основе которых можно построить множество метрик.

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

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

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


В рамках данной работы были достигнуты следующие результаты:
• Проведен анализ существующих реализаций blockchain и выделен общий механизм работы этих реализаций.
• Предложен независимый от конкретной реализации blockchain метод нагрузочного тестирования для получения данных, позволяющих провести анализ производительности.
• Разработана архитектура системы для нагрузочного тестирования реализаций blockchain.
• Реализован прототип системы и представлены примеры использования для следующих реализаций blockchain: Hyperledger Fabric, Ethereum.
• Результаты данной работы представлены на конференции SEIM 2017.
В дальнейшем планируются следующие шаги:
• Добавить примеры использования данной системы для следующих реализаций: MultiChain, Bitcoin, Chain [5]
• Расширить систему для изучения устойчивости и надёжности реализаций blockchain
• Автоматизировать поиск предельной нагрузки, при которой сеть в целом остаётся стабильной.



[1] Amazon Web Services, EC2.— 2017.— URL: https://aws.amazon. com/ec2/ (online; accessed: 10.03.2017).
[2] BLOCKBENCH: A Framework for Analyzing Private Blockchains.— 2017. — URL: https://arxiv.org/abs/1703.04057 (online; accessed: 15.05.2017).
[3] Bitcoin.— 2017.— URL: https://www.bitcoin.com/ (online;
accessed: 10.03.2017).
[4] Brian F. Cooper Adam Silberstein Erwin Tam Raghu Ramakrishnan Russell Sears. Benchmarking cloud serving systems with YCSB.— 2010.— P. 143-154.— URL: http://dl.acm.org/citation.cfm?id= 1807152.
[5] Chain.— 2017.— URL: https://chain.com/ (online; accessed: 10.03.2017).
[6] Eris.— 2017.— URL: https://monax.io/ (online; accessed:
10.03.2017).
[7] Ethereum.— 2017.— URL: https://www.ethereum.org/ (online; accessed: 10.03.2017).
[8] Hyperledger. — 2017. — URL: https://www.hyperledger.org/
(online; accessed: 10.03.2017).
[9] Hyperledger Fabric. — 2017. — URL: https://hyperledger-fabric. readthedocs.io/en/latest/ (online; accessed: 10.03.2017).
[10] JMeter.— 2017.— URL: http://jmeter.apache.org/index.html (online; accessed: 10.03.2017).
[11] JSch.— 2017.— URL: http://www.jcraft.com/jsch/ (online; accessed: 10.03.2017).
[12] Jakobsson Markus, Juels Ari. Proofs of Work and Bread Pudding
Protocols.— 1999.— URL: https://www.emc.com/emc-plus/
rsa-labs/staff-associates/proofs-of-work-protocols.htm.
[13] Lantmateriet.— 2017.— URL: https://www.
lantmateriet.se/en/Nyheter-pa-Lantmateriet/ lantmateriet-har-tittat-pa-blockkedjetekniken/ (online;
accessed: 10.03.2017).
[14] Multichain.— 2017.— URL: http://www.multichain.com/ (online; accessed: 10.03.2017).
[15] Nxt.— 2017.— URL: https://hyperledger-fabric.readthedocs. io/en/latest/ (online; accessed: 10.03.2017).
[16] R3CEV.— 2017.— URL: http://www.r3cev.com/ (online; accessed: 10.03.2017).
[17] Wikipedia. Proof-of-stake // Википедия, свободная энциклопедия. — 2017.— URL: https://en.wikipedia.org/wiki/Proof-of-stake (online; accessed: 10.03.2017).
[18] Wikipedia. Byzantine fault tolerance // Википедия, свободная энциклопедия.— 2017.— URL: https://en.wikipedia.org/wiki/ Byzantine_fault_tolerance (online; accessed: 10.03.2017).



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




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