Углубленная интерпретация параллельного выполнения: потенциал, проблемы и будущее

Ethereum представил программируемые смарт-контракты через EVM.

Исходное название: "Parallel Power Unlocked"

Написано: РОБЕРТ МАКТЕГЮ, инвестиционный аналитик, Amber Labs

Составлено: Ивонн

Текущие проблемы, стоящие перед индустрией блокчейнов

В настоящее время основные блокчейны предоставляют ряд приложений, включая DeFi, NFT, социальные сети и даже игры. Однако качество и возможности этих приложений ограничены фундаментальным ограничением: сложностью блокчейнов в одновременной обработке нескольких транзакций. Параллельное выполнение имеет решающее значение в децентрализованных приложениях, поскольку оно позволяет платформам смарт-контрактов одновременно обрабатывать несколько транзакций, увеличивая общую пропускную способность и скорость отклика сети. Чтобы устранить это критическое препятствие, отраслевые разработки за последние пять лет были сосредоточены на повышении производительности блокчейна за счет распараллеливания.

В предыдущих отчетах мы рассмотрели различные способы повышения масштабируемости, демонстрируя модульные конструкции, инновационные архитектуры, такие как DAG, и тематические исследования, такие как Aptos и Sui. Тем не менее, в пространстве блокчейна часто упускают из виду то, как сеть обрабатывает параллельное выполнение и как эти подходы сравниваются.

Этот исследовательский отчет направлен на то, чтобы пролить свет на будущие блокчейны уровня 1, которые помогут решить проблемы текущих блокчейнов и создать основу таксономии для будущего параллельного выполнения. Мы сосредоточимся на том, как эти решения обеспечивают параллельное выполнение, и сравним их подходы к преодолению ограничений существующих сетей блокчейнов. Изучая различные стратегии и методы, используемые этими блокчейнами следующего поколения, мы надеемся предоставить ценную информацию о будущем параллельного выполнения и его роли в продвижении инноваций блокчейна.

ЭВМ

Большинство платформ смарт-контрактов сегодня полагаются на виртуальную машину Ethereum (EVM), но у нее есть серьезный недостаток: она не может выполнять транзакции одновременно. Это ограничение подтолкнуло к разработке новой волны решений L1, в которых упор делается на параллельное выполнение как средство повышения масштабируемости и эффективности.

Блокчейн смарт-контрактов состоит из двух основных компонентов: механизма консенсуса, который помогает узлам согласовывать порядок и включение транзакций, и виртуальную машину, которая запускает код приложения и обновляет состояние приложения и балансы счетов. Ethereum представил программируемые смарт-контракты через EVM, общую систему, в которой каждый узел хранит копию всех приложений и их состояния. Несмотря на свою популярность, блокчейны, использующие EVM, ограничены с точки зрения скорости обработки. Например, Ethereum может обрабатывать около 10 транзакций в секунду (tps), в то время как самая быстрая цепочка EVM, BinanceChain, может достигать только более 200 tps. Эта неэффективность связана с последовательной моделью обработки EVM, т. е. транзакции обрабатываются одна за другой.

Monad, L1, ориентированный на масштабируемость, делает этот анализ прямо в недавнем посте: «Для справки: простая карточная игра с 10 000 пользователей, перемещающихся каждые 10 секунд, требует 1000 транзакций в секунду». много транзакций в одной цепочке.

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

Что такое параллельное выполнение?

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

Применяя эту аналогию к цепочке блоков, несколько дорожек оформления заказа представляют разные пути или полосы для обработки транзакций. При параллельном выполнении эти каналы существуют в рамках одной системы, что позволяет одновременно обрабатывать несколько транзакций. Эта настройка позволяет единой системе блокчейна более эффективно обрабатывать больший объем транзакций, повышая общую производительность.

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

Как работает параллельное выполнение?

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

Основная проблема в достижении параллельного выполнения состоит в том, чтобы определить, какие транзакции не коррелированы, а какие независимы. Это включает в себя понимание того, как каждая транзакция влияет на данные блокчейна. Со многими взаимосвязанными приложениями определение того, какие транзакции зависят друг от друга, может оказаться сложной задачей.

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

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

В следующих разделах мы рассмотрим три различных подхода к достижению параллельного выполнения в системах блокчейна: доступ к состоянию/оптимизм, сегментирование и параллельное выполнение на основе вычислений. Стоит отметить, что традиционно только модель доступа к состоянию и оптимистичные модели считались другими участниками индустрии блокчейна действительно параллельными методами выполнения, поскольку они позволяют единому блокчейну обрабатывать транзакции одновременно. Однако с появлением сложных протоколов межцепочечной связи концепция параллельного выполнения значительно расширилась. Например, сегментирование, которое традиционно не рассматривается как средство параллельного выполнения, облегчает параллельную обработку транзакций между несколькими сегментами, поэтому его стоит рассмотреть. Наконец, мы рассмотрим относительно новую концепцию параллельного выполнения на основе вычислений. Эта инновационная модель, хотя и малоизвестная, представляет собой революционный подход к параллельной обработке транзакций в блокчейн-системах, который мы подробно опишем далее в этой статье. По мере изучения этих подходов мы обнаружим, как каждый из них предлагает уникальные преимущества и проблемы для более эффективной и масштабируемой технологии блокчейна.

Параллельное выполнение: доступ к состоянию и оптимистичная модель

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

Солана: пионер параллельных блокчейнов

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

Думайте об этом как о гигантской файловой системе. Каждая транзакция отправляет запрос на доступ к определенному файлу. Транзакции могут обрабатываться независимо, если запрос файла уникален. Но если они запрашивают одни и те же файлы, эти транзакции переплетаются и требуют координации. Настоящая хитрость заключается в том, чтобы определить, какая транзакция запрашивает какой файл.

В качестве первого параллельного блокчейна Solana представляет решение. Каждая транзакция должна предварительно объявить, к какому файлу она намеревается получить доступ. Это требование содержится в модели исполнения Solana «SeaLevel», где все функции работают в рамках структуры, основанной на учетных записях. Доступ к каждой учетной записи возможен только для связанных с ней транзакций, что предотвращает возможные конфликты.

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

Sui: концепция объектов

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

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

Для иллюстрации предположим, что Алиса владеет уникальным NFT, который представлен как объект в контексте Sui, а «Алиса» указана как его «владелец». Если Алиса передает этот NFT Бобу, транзакция рассматривается как транзакция отдельного объекта в обход процесса консенсуса. Однако если Алиса решит выполнить более сложную операцию, например, купить NFT через торговую площадку, динамика изменится. Поскольку объектами могут манипулировать другие транзакции, транзакция может быть обозначена как зависимая транзакция, и перед ее выполнением может потребоваться упорядочение.

Топливо: используйте UTXO для повышения производительности

Fuel является лидером в области блокчейна и в полной мере использует модель UTXO (выход неизрасходованных транзакций). Если вы думаете о модели UTXO как о физической транзакции с наличными, это похоже на покупку чего-то за 7 долларов с купюрой в 10 долларов и получение 3 долларов сдачи. Используя модель UTXO, Fuel может эффективно обрабатывать транзакции параллельно. Это связано с тем, что модель UTXO позволяет легко идентифицировать независимые транзакции — те, которые не пересекаются в объектах или «счетах», с которыми они взаимодействуют. Эта независимость означает, что эти транзакции могут обрабатываться одновременно без конфликтов, что значительно увеличивает пропускную способность транзакций.

Биткойн также использует модель UTXO, которую Fuel использует для создания строгих списков доступа. Эти списки действуют как регуляторы, контролирующие, какие части состояния блокчейна доступны. Стратегия опирается на идею канонического упорядочения транзакций, то, как она упорядочивает транзакции внутри блока, упрощает процесс выявления зависимостей между транзакциями.

Компания Fuel воплотила эту концепцию в жизнь, разработав новую виртуальную машину FuelVM и инновационный язык программирования Sway. FuelVM разработан как компактная, но полностью совместимая замена виртуальной машине Ethereum (EVM), которая позволяет разработчикам более непосредственно интегрироваться в экосистему Fuel.

Кроме того, Fuel делает упор на модульную структуру блокчейна. Этот модульный подход позволяет проводить транзакции, выполняемые в рамках Fuel, в основной сети Ethereum. В результате у Fuel есть возможность обрабатывать большое количество транзакций, все из которых консолидированы и рассчитаны на Ethereum. Этот стратегический шаг позволяет Fuel эффективно управлять большими транзакционными нагрузками.

Aptos: работайте с оптимизмом

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

Aptos использует подход под названием Block Software Transactional Memory (Block-STM) для применения оптимистического исполнения. Aptos построен на основе языка Diem’s Move и MoveVM, который автоматически обнаруживает ссылки на транзакции. От транзакций не требуется, чтобы они сообщали, к какой части состояния блокчейна (например, к ячейке памяти) они относятся.

  • *

Источник: Белая книга Block-STM

(На диаграмме видно, что если какие-то транзакции подключены, то проверка будет приостановлена, результаты будут удалены, а затем запущены снова.)

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

Успех Block-STM во многом зависит от связей между транзакциями. По словам команды Aptos, использование 32 вычислительных ядер обеспечивает ускорение в 8 раз, когда транзакции сильно коррелированы, и ускорение в 16 раз, когда транзакции менее коррелированы. Однако, если каждая транзакция в блоке объединена, block-stm может привести к небольшому замедлению по сравнению с выполнением по одной.

Monad: Лидер цепочки EVM

Monad впервые применил новый подход в блокчейнах, совместимых с EVM, и стал первым блокчейном, представившим параллельную архитектуру на первом уровне EVM. Как и Aptos, он выбирает оптимистичный путь выполнения, работая в предположении, что транзакции не связаны между собой, и разрешая зависимости по мере их возникновения.

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

Возьмем, к примеру, Polygon и BinanceSmartChain. Два известных блокчейна сейчас пытаются обновить свои системы, используя схожие стратегии. Важность новаторской работы монад над оптимистичной реализацией невозможно переоценить, поскольку она повлияла на крупные платформы, чтобы они переоценили и пересмотрели свои собственные архитектуры.

Например, у Polygon высокая пропускная способность и миллионы ежедневных транзакций. Его сетевой API уже предоставляет достаточно данных для управления распараллеливаемым движком, и, изучив специфичный для EVM Block-STM, им удалось избежать изменений в API. Однако, учитывая огромный объем транзакций в цепочке PolygonPoS, предположение об отсутствии зависимостей между любыми блоками нереалистично. Поэтому они приняли подход с минимальными метаданными, записывая зависимости транзакций в виде метаданных в блоках, уменьшая избыточность и требования к вычислениям.

Точно так же BinanceSmartChain также изучает возможности распараллеливания исполнения в своей цепочке EVM за счет оптимистичного исполнения, что отражает влияние инновационного подхода Monad на отрасль в целом.

Инновационный дух Monad и ее стремление раздвинуть границы технологии блокчейна создали новую тенденцию в области EVM. Его подход к принятию параллельной архитектуры на уровне 1 EVM не только повышает эффективность его собственной системы, но также влияет на других важных игроков в этой области и вдохновляет их следовать этому примеру, знаменуя собой серьезный сдвиг в будущем индустрии блокчейнов.

Параллельное выполнение на основе шардинга

До сих пор мы обсуждали, как различные блокчейны нарушают последовательный порядок и достигают параллелизма с помощью таких концепций, как учетные записи, объекты, UTXO и оптимистичные модели. Однако следующее поколение блокчейнов, которые мы собираемся изучить, использует уникальный подход к распараллеливанию. Эти платформы напоминают модель шардинга, а не имеют единую цепочку блоков, способную обрабатывать транзакции параллельно. Блокчейн разделен на несколько частей, каждая из которых отвечает за обработку своих транзакций.

Shardeum: метод шардинга EVM

Shardeum предлагает революционный подход к масштабируемости блокчейна за счет динамического сегментирования, обеспечивающего линейную масштабируемость. Шарды — это подразделы сети, и каждый сегмент обрабатывает часть сетевых транзакций, повышая эффективность использования ресурсов и пропускную способность. Рассмотрим пользователя, выполняющего транзакцию в децентрализованном приложении (dapp), размещенном на Shardeum, которое назначается определенному сегменту на основе связанных с ним данных. Шард обрабатывает транзакции одновременно с другими шардами, находящимися под его юрисдикцией, как мини-блокчейн. Пользователи выигрывают от более быстрой обработки, оптимизируя пользовательский опыт.

Ключевой особенностью Shardeum является его совместимость с виртуальной машиной Ethereum (EVM). Разработчики могут легко перенести свои децентрализованные приложения на основе Ethereum в Shardeum, сочетая динамическое разделение и параллельную обработку Shardeum с обширной экосистемой Ethereum.

Динамическое сегментирование обеспечивает адаптивность сети к изменяющимся требованиям, а также способствует масштабируемости и высокой эффективности системы. Shardeum автоматизирует межсегментные транзакции, обеспечивая плавное выполнение сложных приложений, требующих ввода от нескольких пользователей, повышая масштабируемость.

Что делает Shardeum уникальным, так это его способность линейно масштабироваться. Сеть масштабируется линейно по мере добавления узлов, что означает, что пропускная способность транзакций увеличивается пропорционально количеству узлов. Это линейное масштабирование в сочетании с гибкостью узлов и возможностями автоматического масштабирования позволяет Shardeum оптимально справляться с различными рабочими нагрузками и ростом сети. Shardeum предоставляет практическое решение для реальных транзакционных потребностей, повышая масштабируемость сложных приложений и предоставляя практическое решение для реальных транзакционных потребностей.

Linera: революционный многоцепочечный протокол

Инновационное решение Linera для масштабируемости блокчейна выделяется своим динамическим многоцепочечным протоколом, который включает в себя пользовательские цепочки, общедоступные цепочки и эфемерные цепочки.

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

В отличие от Shardeum, где Linera впервые разработала концепцию цепочек, контролируемых пользователями, Shardeum делит свою сеть на множество цепочек сегментов, каждая из которых отвечает за подмножество транзакций. Этот гранулярный подход дает пользователям больше контроля и автономии, оптимизируя распределение ресурсов в сети.

Цепочки пользователей, которые принадлежат исключительно пользователям и контролируются ими, составляют основу архитектуры Linera. Эти цепочки обрабатывают транзакции для конкретных конечных пользователей независимо друг от друга, обеспечивая параллельное выполнение и значительно увеличивая пропускную способность при одновременном снижении задержки.

Публичная сеть — еще одна важная часть дизайна Linera. Эти сети являются домом для децентрализованных приложений, таких как Automated Market Makers (AMM). Общедоступная сеть открыта для всех участников сети, предоставляя общую платформу для приложений, требующих открытого и неограниченного взаимодействия.

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

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

В отличие от других протоколов, таких как Cosmos, где каждая цепочка блоков или «зона» управляется отдельным набором валидаторов, Linera объединяет все цепочки в один набор валидаторов. Этот унифицированный подход повышает эффективность и безопасность протокола Linera, упрощая взаимодействие между цепочками за счет устранения сложности проверки с помощью отдельных наборов валидаторов, что может привести к увеличению задержки или расхождений. В результате транзакции обрабатываются более эффективно во всей экосистеме, что значительно снижает риск конфликтов.

QuaiNetwork: усиление параллелизма и взаимодействия с помощью Proof-of-Work

QuaiNetwork проложила свой собственный путь в индустрии блокчейнов благодаря своему уникальному подходу к масштабируемости. Реализуя динамическую и функционально совместимую многоцепочечную архитектуру, Quai предлагает уникальное решение проблемы масштабируемости, основанное на доказательстве выполнения работы, что позволяет распараллеливать транзакции за счет бесконечного выполнения сегментов. Этот подход отличает Quai от таких протоколов, как Linera, которые используют цепочки, контролируемые пользователем, и в то же время имеет некоторое сходство с динамическим сегментированием Shardeum.

Версия сегментирования, которую использует Quai, аналогична традиционным методам, используемым для повышения производительности базы данных в централизованных системах. Однако Quai отличается от типичных схем сегментирования тем, что имеет динамичную, адаптируемую, глубоко переплетенную многоцепочечную архитектуру. Это чем-то похоже на динамическое сегментирование Shardeum, где сеть разделена на цепочки сегментов, которые обрабатывают транзакции независимо друг от друга. Однако Quai координирует эти разные сегменты, используя объединенную иерархию майнинга, создавая уникальное соединение, которое позволяет выполнять операции параллельно в сети. В отличие от всех существующих реализаций сегментирования, которые вводят некоторые новые механизмы доверия для облегчения взаимодействия (транзакции между сегментами), сеть Quai использует слияние майнинга для соединения сегментов, гарантируя, что майнинг является единственным механизмом. Уникальный подход QuaiNetwork к функциональной совместимости посредством объединенного майнинга значительно увеличивает пропускную способность и обеспечивает возможность обработки большого количества одновременных транзакций без ущерба для децентрализации или производительности.

Чтобы иметь возможность координировать неограниченное количество сегментов выполнения, сеть Quai вводит новый механизм консенсуса, называемый PoEM. PoEM основан на консенсусе Proof-of-Work (PoW), но, в отличие от других механизмов консенсуса, он первым устраняет форки на основе консенсуса. При запуске PoEM все узлы всегда будут иметь одинаковое предпочтение для немедленного следующего блока в последовательности, учитывая тот же набор информации. PoEM позволяет всем узлам немедленно и объективно сравнивать любой предлагаемый блок, устраняя все неопределенности из консенсуса. Обеспечивая мгновенное достижение консенсуса, PoEM обеспечивает необходимую предпосылку для бесконечного сегментирования. Если для достижения консенсуса требуется какое-то время, существует жесткое ограничение на количество исполняемых сегментов, которые можно скоординировать. Как первый метод достижения консенсуса с нулевым временем, PoEM является первым и единственным алгоритмом консенсуса, подходящим для координации бесконечно растущих наборов цепочек.

Отличительной чертой архитектуры Quai является введение параллельных потоков выполнения (PET), называемых в Quai «регионами». Каждая «область» или параллельный поток выполнения обрабатывает транзакции независимо и асинхронно. Способность каждого потока выполнения Quai независимо обрабатывать транзакции поддерживает возможности параллельной обработки сети, что является одной из основных концепций масштабируемости Quai.

Количество цепочек в QuaiNetwork является динамическим и адаптируемым, как и динамическое сегментирование Shardeum. Однако использование QuaiNetwork механизма консенсуса PoEM уникально тем, что позволяет бесконечно выполнять этот динамический шаблон сегментирования без снижения производительности. QuaiNetwork добавляет исполнительные сегменты посредством динамического сегментирования с очевидным компромиссом: чем больше исполнительных сегментов добавляется в сеть, тем больше времени требуется для того, чтобы межсетевые транзакции ссылались на их целевые сегменты. Эта взаимосвязь является сублинейной — например, масштабирование Quai с 9 до 16 сегментов увеличит среднее время для межсетевой транзакции, чтобы достичь места назначения с 3300 до 4400 секунд. Дальнейшее масштабирование до 25 сегментов увеличивает среднее время примерно до 5500 секунд. Теоретически, если Quai расширится до 100 сегментов, среднее время до глобального межсетевого расчета составит около 11 000 секунд. Алгоритм динамического сегментирования QuaiNetwork отслеживает лимит газа в сети и частоту блоков uncle, чтобы понять, когда требуется дополнительная пропускная способность, и автоматически вплетает дополнительные фрагменты выполнения в консенсус, чтобы удовлетворить возросшие требования к пропускной способности.

Кроме того, плетеная структура Quai поддерживает компонуемые смарт-контракты с несколькими цепочками и обеспечивает эффективное взаимодействие контрактов между цепочками. Каждый поток выполнения Quai имеет EVM, и введены новые коды операций для связи с EVM, расположенным на альтернативном сегменте. Эта возможность позволяет разработчикам развертывать контракты в нескольких или во всех цепочках Quai, обеспечивая работоспособность децентрализованных приложений (dapps) в сети.

Инновационное применение QuaiNetwork для сегментирования в сочетании с его функциональной совместимостью слиянием и потоками параллельного выполнения представляет собой значительный прогресс в масштабируемости блокчейна в рамках механизма консенсуса на основе работы. Надежная обработка межсетевых транзакций и расширенные возможности смарт-контрактов делают Quai заметным вкладчиком в растущей области масштабируемых протоколов блокчейна.

Параллельное выполнение на основе вычислений

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

Kindelia: электростанция параллельного выполнения на основе вычислений

Kindelia стала многообещающим решением для моделей параллельного выполнения на основе вычислений в блокчейнах. Разработанная корпорацией HigherOrder, она основана на уникальной среде выполнения, называемой виртуальной машиной высшего порядка (HVM), которая обеспечивает эффективные параллельные вычисления.

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

  • *

*Рисунок Виктора Таэлина (генеральный директор HigherOrderCompany) показывает нам, как уменьшить сеть взаимодействия. *

Преимуществ у этой модели множество. Благодаря присущему ему параллелизму он обеспечивает более быстрые и эффективные вычисления, значительно превосходя традиционные модели последовательных вычислений. Кроме того, он открывает область применения в различных областях компьютерных наук. Kindelia выделяется как первая по-настоящему параллельная виртуальная машина в контексте блокчейна, достигающая многих целей, к которым стремится altL1. Однако из-за того, что они полагаются на архитектуры на основе машин Тьюринга, эти конкуренты могут никогда не достичь такого же уровня параллелизма.

Дизайн Kindelia требует меньше вычислительных шагов для выполнения функций, максимально использует вычислительные ядра и обеспечивает выполнение операций в правильном порядке — и все это с минимальными дополнительными усилиями со стороны разработчиков. Этот упрощенный процесс выполнения в сочетании с более высоким уровнем безопасности делает Kindelia передовым примером параллельного выполнения на основе вычислений в технологии блокчейн.

Хотя теоретическая основа Kindelia и HVM несколько продвинута, практическое значение легко понять: повысить скорость, эффективность и безопасность вычислений на блокчейне. С Kindelia мы являемся свидетелями революционного скачка в технологии блокчейна, знаменующего собой важную веху в продолжающемся развитии этой преобразующей области.

Проблемы с параллельным выполнением

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

Параллельные блокчейны распределяют обработку транзакций между многочисленными узлами, тем самым увеличивая пропускную способность обработки транзакций. Однако такое распределение может также привести к концентрации власти в пределах нескольких узлов, что приведет к определенной степени централизации. Такая централизация может подорвать надежность и безопасность блокчейна, сделав его более уязвимым для атак. Кроме того, параллельные блокчейны увеличивают риск простоя сети. Например, в сентябре 2021 года в сети Solana произошел сбой из-за чрезмерных запросов на транзакции. Инцидент подчеркивает потенциальные риски, связанные с масштабированием сетей блокчейнов, и подчеркивает необходимость решений, способных обрабатывать большие объемы транзакций без ущерба для стабильности.

Уровень конфликтов транзакций является еще одним важным вопросом. Это соотношение относится к проценту транзакций, которые не могут быть выполнены одновременно из-за конфликтов. Высокий уровень конфликтов может привести к большому количеству переделок транзакций в параллельных цепочках блоков. Согласно отчету Flashbots, конфликтность транзакций Ethereum в 2017 году составила около 35%. Поскольку в сети Ethereum доминируют такие крупные приложения, как OpenSea и Uniswap, уровень конфликтов, вероятно, будет еще выше.

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

в заключение

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

Посмотреть Оригинал
Содержание носит исключительно справочный характер и не является предложением или офертой. Консультации по инвестициям, налогообложению или юридическим вопросам не предоставляются. Более подробную информацию о рисках см. в разделе «Дисклеймер».
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить