Как стать автором
Обновить

Kонсенсус в Exonum: как он работает

Время на прочтение 6 мин
Количество просмотров 4.6K
Всего голосов 24: ↑23 и ↓1 +22
Комментарии 5

Комментарии 5

а как у вас решен вопрос накопления большого количества блокчейнов? вы делаете новую ветку от старой, как предлагали в Ethereum?
как ниже уже ответил aleks_raiden, форки как таковые в Exonum невозможны благодаря консенсусу, каждый блокчейн Exonum независим от других, у нас не общая платформа, а инструмент для отдельных решений.

Я не автор, но работаю в этой области и в том числе, пробовали работать с Exonum. Хотя ваш вопрос не касается напрямую конкретного фреймворка. В консенсусе pBFT, который как раз в ексонуме, нет принципиальной возможности хардфорков сети (насколько я изучил этот вопрос), так что указанной вами проблемы нет.
Еще в середине 80-х годов было доказано, что для обеспечения устойчивости распределенной системы она должна работать в условиях частичной синхронности.

Небольшая поправка — на самом деле частичная синхронность нужна только для детерминированной системы, в которой гарантируется достижение консенсуса за определенное число раундов. Однако есть полностью асинхронные протоколы, в которых консенсус достигается за случайное число раундов, но при этом матожидание этого числа вполне конечно.


узлы валидаторы голосуют за добавление блока в блокчейн, транслируя сообщение prevote

А что происходит, если propose от ведущего в данном раунде узла не пришел? Шлются nil- prevote по таймауту? Запоминаются ли ситуации, когда какие-то узлы тормозили с отсылкой propose, чтобы реже их выбирать "ведущими"?


Чтобы оценить возможности консенсуса, мы проверяли работу блокчейна на базе двух конфигураций: в одном дата-центре и нескольких, географически распределенных, дата-центрах.

Приходилось ли как-то настраивать таймауты для работы в одном дата-центре и нескольких? Измеряли ли производительность системы, когда некоторые узлы (в пределах 1/3 от общего числа) выключались или тормозили?


В Exonum-блокчейне фиксируются операции с деталями для поездов и данные техпаспорта каждого вагона. Это дает возможность отслеживать перемещение всех запчастей от официальных поставщиков и обнаруживать подделки.

Если не секрет — а кто при этом держит ноды? Какая-то одна организация, или по ноде на контрагента?


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

Опять же — кто держит ноды? Если один университет — то возможность вносить изменения в документы все-таки есть, хотя любой держатель observer-ноды легко об этом узнает, но помешать не сможет.

Коллега, про тесты с отключенными валидаторами есть на странице 24 в документации. Показатель TPS оставался примерно на том же уровне
Зарегистрируйтесь на Хабре , чтобы оставить комментарий