Оптимизация эффективности газа Ethereum с многомерным EIP-1559

Продвинутый2/25/2025, 7:33:00 AM
Исследуйте, как многомерный EIP-1559 оптимизирует эффективность газа Ethereum путем разделения затрат на ресурсы, улучшения масштабируемости и повышения использования сети.

Введение

Многомерный EIP-1559 возник как тема исследования после представления Виталиком Бутериным в EthResearch поств январе 2022 года. Хотя этот вопрос не получил такого же внимания, как другие исследовательские темы, такие как rollups, MEV или решения для доступа к данным, это активная область исследований. Недавно опубликованные научные статьиГильермо Ангерис и Тео Диамандисисследовать теоретические основы и надежность многомерных рынков комиссий и предложить, как они должны быть построены.

Фактически, многомерные рынки комиссий уже используются сегодня. С принятием EIP-4844 в марте 2024 года Ethereum представил газ blob, создавая отдельный рынок комиссий для транзакций blob. Это стало сдвигом от одномерной модели газа к двумерному рынку комиссий.

Однако все еще существует необходимость увеличить количество измерений ресурсов для оптимизации использования ресурсов транзакций. Расширение многомерных рынков комиссий является решением масштабируемости для улучшения способности Ethereum управлять разнообразными ресурсами более эффективно.

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

Давайте сначала вглубь разберемся, что такое многомерное ценообразование на газ.

Что такое многомерное ценообразование на газ?

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

В настоящее время Ethereum объединяет все затраты на ресурсы, такие как вычисления, хранение и пропускная способность, в единицу газа. Многомерное ценообразование на газ вместо этого разделяет эти ресурсы, оптимизируя их распределение, сохраняя при этом безопасность и децентрализацию Ethereum.

Чтобы понять, почему это выгодно, давайте рассмотрим аналогию из реального мира.

Фитнес-клуб как аналогия

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

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

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

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

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

Как это применимо к Ethereum

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

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

Одним из ярких примеров этой неэффективности является то, как ранее роллапы хранили данные о транзакциях. До EIP-4844 роллапы размещали данные о своих транзакциях в поле calldata Ethereum и оплачивали газовые сборы на основе ценообразования calldata. Однако с принятием EIP-4844 в марте 2024 года роллапы теперь используют отдельную единицу под названием газовый блоб, что позволяет им хранить данные в специальных структурах, называемых блобами.

Хотя EIP-4844 представил второе измерение газа (газ блоба) для данных rollup, оно остается ограниченным в области применения: Газ блоба применяется только к транзакциям блоба. Другие компоненты транзакции, включая выполнение EVM, calldata и хранение, все еще оцениваются по единой модели газа. Транзакции Ethereum все еще потребляют несколько независимых ресурсов, но все они оцениваются в газе, что приводит к неэффективным крайним случаям.

Например, предположим, что одна транзакция потребляет весь предел газа (в настоящее время 36 миллионов) при выполнении в EVM. Даже если узлы Ethereum могли бы безопасно обрабатывать большие размеры данных, транзакция не может распространять дополнительные данные, поскольку газ рассматривается как единственное ограничение, а не как несколько независимых пределов.

Эта проблема становится еще более очевидной, если посмотреть на распределение размера блоков Ethereum. С июля 2024 года по декабрь 2024 года средний размер блока составлял ~73 КБ, при этом большинство блоков были значительно меньше 100 КБ. Однако в блоке #21419230, максимальный размер блока достиг 1,48 МБ, в 20 раз больше среднего.

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

Статьи Виталика Бутерина предлагают несколько ключевых типов ресурсов для разделения. Давайте рассмотрим эти кандидатские ресурсы и почему их разделение может улучшить масштабируемость Ethereum.

Какие ресурсы могут быть разделены через многомерное ценообразование на газ?

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

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

По своей сути узел Ethereum — это компьютер, управляющий несколькими ресурсами параллельно. Традиционные аппаратные ресурсы категоризируются на отдельные компоненты, которые могут оптимизироваться независимо друг от друга:

  • Вычисление (ЦП) – Выполнение операций, таких как ADD, MULTIPLY, и выполнение смарт-контрактов.
  • Память I/O (ОЗУ) – Чтение/запись временных данных, влияющих на скорость выполнения.
  • Хранение I/O (SSD/HDD Чтение/Запись) – Постоянный доступ к состоянию, влияющий на эффективность долгосрочного хранения.
  • Увеличение хранилища (увеличение дискового пространства) - расширение хранимых данных, влияющее на устойчивость узла.
  • Пропускная способность (передача сетевых данных) - Возможность передачи транзакций и блочных данных.

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

В отличие от компьютеров, операции Ethereum не вписываются в одну категорию. Многие операции потребляют несколько ресурсов одновременно, что затрудняет их идеальное разделение. Например

  • Данные вызова транзакции в первую очередь потребляют полосу пропускания, поскольку они должны быть переданы по сети. Они также способствуют росту хранения, поскольку они остаются в блокчейне навсегда.
  • SLOAD (Storage Read) использует хранение ввода-вывода, но если узел является бессостоятельным, ему также требуется пропускная способность для получения доказательств состояния от полного узла.
  • Записи хранения (SSTORE) дороже для чтения, потому что они увеличивают постоянное состояние Ethereum, способствуя увеличению долгосрочного накопления данных.

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

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

  • Вычисление (выполнение EVM) - Простые операции, такие как ADD и MULTIPLY, являются чистыми задачами ЦП.
  • Ввод-вывод хранилища (sstore/sload) — постоянные операции чтения и записи, влияющие на раздувание состояния Ethereum.
  • Данные вызова транзакции - в основном используют полосу пропускания, но также вносят вклад в хранение.
  • Следящие данные — влияют на пропускную способность и ввод-вывод хранилища, особенно для клиентов без отслеживания состояния.

Согласовывая эти категории с тем, как компьютерные системы управляют ресурсами, мы можем сделать структуру комиссий Ethereum более интуитивно понятной и эффективной.

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

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

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

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

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

Один из подходов к реализации многомерной ценообразования на газ заключается в создании независимых рынков сборов для каждого ресурса, что обеспечивает более эффективное распределение. Этот метод уже был частично реализован через EIP-4844, который ввел blob gas в качестве отдельной единицы для хранения данных роллапа.

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

Для формализации этого подхода давайте определим bi как базовую плату за ресурс i, gi как потребление ресурса i в транзакции, а ki как лимит ресурса i в одном блоке.

Общая комиссия за транзакцию будет вычисляться как ibi*gi​, и блок должен удовлетворять ограничению all txbi ki , для всех i для всех ресурсов i. Как и в текущей модели EIP-1559, bi динамически корректируется на основе предыдущего использования блока. Ethereum могла бы принять экспоненциальные модели ценообразования (как используется для газа blob) или другой механизм обновления комиссий для регулирования потребления ресурсов.

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

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

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

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

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

Реализация многомерной ценообразования на газ 2: Сохранение газа в качестве основной единицы

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

Определим стоимость газа для ресурса i как ci, а количество используемого ресурса как gi. Комиссия за транзакцию определяется следующим образом:

(c1g1 , c2g2 , c3*g3,…)

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

Например, рассмотрим транзакцию, которая потребляет 50 000 газа для выполнения EVM и 200 000 газа для calldata. В соответствии с этой моделью, комиссия за транзакцию составляет 200 000 газа, поскольку calldata является доминирующим ресурсом, а стоимость выполнения фактически игнорируется.

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

  • Соображения справедливости: транзакция, использующая 200 тыс. газа для calldata и 50 тыс. для выполнения, платит ту же комиссию, что и транзакция, использующая 200 тыс. газа для calldata и 150 тыс. для исполнения. Это стимулирует объединение, когда несколько транзакций стратегически объединяются для использования преимуществ в издержках. В результате опытные оптимизаторы могут получить выгоду, что сделает транзакционные издержки менее предсказуемыми для обычных пользователей и DApps.
  • Неэффективность ресурсов: Поскольку важен только ресурс с наибольшим потреблением, пользователи могут намеренно злоупотреблять другими ресурсами без дополнительных затрат. В предыдущем примере выполнение EVM до 150 тыс. газа не требует дополнительной платы, создавая расточительные транзакции, которые раздувают сеть без увеличения затрат.

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

EIP-7623, которое будет реализовано в Обновление Pectra, следует аналогичному, но немного модифицированному подходу. Он вводит механизм двойного ценообразования для транзакций с большим объемом данных, обеспечивая, что транзакции с неразумно высоким использованием данных будут платить более высокие комиссии. Хотя это не полноценная многомерная модель ценообразования газа, это представляет собой шаг к лучшему разграничению ресурсов без переделывания структуры газа Ethereum.

Как связан EIP-7623 с многомерной ценой газа?

EIP-7623 вводит повышенные комиссии за транзакции доступности данных (DA), особенно когда использование calldata значительно превышает использование газа выполнения. Этот механизм гарантирует, что транзакции, потребляющие избыточные calldata, платят более высокие комиссии, отговаривая от ненужного хранения данных без необходимости в новых единицах ценообразования.

Упрощенный вариант расчета газа EIP-7623 выглядит следующим образом:

total_gas_used max(4tokens_in_calldata + evm_gas_used, 10*tokens_in_calldata)

Что еще больше упрощает:

total_gas_used 4tokens_in_calldata + max(evm_gas_used, 6*tokens_in_calldata)

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

EIP-7623 - это упрощенная версия многомерной цены на газ, потому что он вводит неявное различие между газом исполнения и газом calldata, поощряя более сбалансированное распределение сетевых ресурсов.

Заключение

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

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

Отказ:

  1. Эта статья перепечатана из [Исследование 2077]. Все авторские права принадлежат автору оригинала [Seongwan Park]. Если есть возражения по поводу этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Отказ от ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно мнением автора и не являются инвестиционными советами.
  3. Команда gate Learn занимается переводом статьи на другие языки. Копирование, распространение или плагиат переведенных статей запрещены, если не указано иное.

Пригласить больше голосов

Оптимизация эффективности газа Ethereum с многомерным EIP-1559

Продвинутый2/25/2025, 7:33:00 AM
Исследуйте, как многомерный EIP-1559 оптимизирует эффективность газа Ethereum путем разделения затрат на ресурсы, улучшения масштабируемости и повышения использования сети.

Введение

Многомерный EIP-1559 возник как тема исследования после представления Виталиком Бутериным в EthResearch поств январе 2022 года. Хотя этот вопрос не получил такого же внимания, как другие исследовательские темы, такие как rollups, MEV или решения для доступа к данным, это активная область исследований. Недавно опубликованные научные статьиГильермо Ангерис и Тео Диамандисисследовать теоретические основы и надежность многомерных рынков комиссий и предложить, как они должны быть построены.

Фактически, многомерные рынки комиссий уже используются сегодня. С принятием EIP-4844 в марте 2024 года Ethereum представил газ blob, создавая отдельный рынок комиссий для транзакций blob. Это стало сдвигом от одномерной модели газа к двумерному рынку комиссий.

Однако все еще существует необходимость увеличить количество измерений ресурсов для оптимизации использования ресурсов транзакций. Расширение многомерных рынков комиссий является решением масштабируемости для улучшения способности Ethereum управлять разнообразными ресурсами более эффективно.

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

Давайте сначала вглубь разберемся, что такое многомерное ценообразование на газ.

Что такое многомерное ценообразование на газ?

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

В настоящее время Ethereum объединяет все затраты на ресурсы, такие как вычисления, хранение и пропускная способность, в единицу газа. Многомерное ценообразование на газ вместо этого разделяет эти ресурсы, оптимизируя их распределение, сохраняя при этом безопасность и децентрализацию Ethereum.

Чтобы понять, почему это выгодно, давайте рассмотрим аналогию из реального мира.

Фитнес-клуб как аналогия

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

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

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

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

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

Как это применимо к Ethereum

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

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

Одним из ярких примеров этой неэффективности является то, как ранее роллапы хранили данные о транзакциях. До EIP-4844 роллапы размещали данные о своих транзакциях в поле calldata Ethereum и оплачивали газовые сборы на основе ценообразования calldata. Однако с принятием EIP-4844 в марте 2024 года роллапы теперь используют отдельную единицу под названием газовый блоб, что позволяет им хранить данные в специальных структурах, называемых блобами.

Хотя EIP-4844 представил второе измерение газа (газ блоба) для данных rollup, оно остается ограниченным в области применения: Газ блоба применяется только к транзакциям блоба. Другие компоненты транзакции, включая выполнение EVM, calldata и хранение, все еще оцениваются по единой модели газа. Транзакции Ethereum все еще потребляют несколько независимых ресурсов, но все они оцениваются в газе, что приводит к неэффективным крайним случаям.

Например, предположим, что одна транзакция потребляет весь предел газа (в настоящее время 36 миллионов) при выполнении в EVM. Даже если узлы Ethereum могли бы безопасно обрабатывать большие размеры данных, транзакция не может распространять дополнительные данные, поскольку газ рассматривается как единственное ограничение, а не как несколько независимых пределов.

Эта проблема становится еще более очевидной, если посмотреть на распределение размера блоков Ethereum. С июля 2024 года по декабрь 2024 года средний размер блока составлял ~73 КБ, при этом большинство блоков были значительно меньше 100 КБ. Однако в блоке #21419230, максимальный размер блока достиг 1,48 МБ, в 20 раз больше среднего.

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

Статьи Виталика Бутерина предлагают несколько ключевых типов ресурсов для разделения. Давайте рассмотрим эти кандидатские ресурсы и почему их разделение может улучшить масштабируемость Ethereum.

Какие ресурсы могут быть разделены через многомерное ценообразование на газ?

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

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

По своей сути узел Ethereum — это компьютер, управляющий несколькими ресурсами параллельно. Традиционные аппаратные ресурсы категоризируются на отдельные компоненты, которые могут оптимизироваться независимо друг от друга:

  • Вычисление (ЦП) – Выполнение операций, таких как ADD, MULTIPLY, и выполнение смарт-контрактов.
  • Память I/O (ОЗУ) – Чтение/запись временных данных, влияющих на скорость выполнения.
  • Хранение I/O (SSD/HDD Чтение/Запись) – Постоянный доступ к состоянию, влияющий на эффективность долгосрочного хранения.
  • Увеличение хранилища (увеличение дискового пространства) - расширение хранимых данных, влияющее на устойчивость узла.
  • Пропускная способность (передача сетевых данных) - Возможность передачи транзакций и блочных данных.

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

В отличие от компьютеров, операции Ethereum не вписываются в одну категорию. Многие операции потребляют несколько ресурсов одновременно, что затрудняет их идеальное разделение. Например

  • Данные вызова транзакции в первую очередь потребляют полосу пропускания, поскольку они должны быть переданы по сети. Они также способствуют росту хранения, поскольку они остаются в блокчейне навсегда.
  • SLOAD (Storage Read) использует хранение ввода-вывода, но если узел является бессостоятельным, ему также требуется пропускная способность для получения доказательств состояния от полного узла.
  • Записи хранения (SSTORE) дороже для чтения, потому что они увеличивают постоянное состояние Ethereum, способствуя увеличению долгосрочного накопления данных.

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

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

  • Вычисление (выполнение EVM) - Простые операции, такие как ADD и MULTIPLY, являются чистыми задачами ЦП.
  • Ввод-вывод хранилища (sstore/sload) — постоянные операции чтения и записи, влияющие на раздувание состояния Ethereum.
  • Данные вызова транзакции - в основном используют полосу пропускания, но также вносят вклад в хранение.
  • Следящие данные — влияют на пропускную способность и ввод-вывод хранилища, особенно для клиентов без отслеживания состояния.

Согласовывая эти категории с тем, как компьютерные системы управляют ресурсами, мы можем сделать структуру комиссий Ethereum более интуитивно понятной и эффективной.

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

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

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

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

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

Один из подходов к реализации многомерной ценообразования на газ заключается в создании независимых рынков сборов для каждого ресурса, что обеспечивает более эффективное распределение. Этот метод уже был частично реализован через EIP-4844, который ввел blob gas в качестве отдельной единицы для хранения данных роллапа.

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

Для формализации этого подхода давайте определим bi как базовую плату за ресурс i, gi как потребление ресурса i в транзакции, а ki как лимит ресурса i в одном блоке.

Общая комиссия за транзакцию будет вычисляться как ibi*gi​, и блок должен удовлетворять ограничению all txbi ki , для всех i для всех ресурсов i. Как и в текущей модели EIP-1559, bi динамически корректируется на основе предыдущего использования блока. Ethereum могла бы принять экспоненциальные модели ценообразования (как используется для газа blob) или другой механизм обновления комиссий для регулирования потребления ресурсов.

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

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

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

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

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

Реализация многомерной ценообразования на газ 2: Сохранение газа в качестве основной единицы

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

Определим стоимость газа для ресурса i как ci, а количество используемого ресурса как gi. Комиссия за транзакцию определяется следующим образом:

(c1g1 , c2g2 , c3*g3,…)

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

Например, рассмотрим транзакцию, которая потребляет 50 000 газа для выполнения EVM и 200 000 газа для calldata. В соответствии с этой моделью, комиссия за транзакцию составляет 200 000 газа, поскольку calldata является доминирующим ресурсом, а стоимость выполнения фактически игнорируется.

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

  • Соображения справедливости: транзакция, использующая 200 тыс. газа для calldata и 50 тыс. для выполнения, платит ту же комиссию, что и транзакция, использующая 200 тыс. газа для calldata и 150 тыс. для исполнения. Это стимулирует объединение, когда несколько транзакций стратегически объединяются для использования преимуществ в издержках. В результате опытные оптимизаторы могут получить выгоду, что сделает транзакционные издержки менее предсказуемыми для обычных пользователей и DApps.
  • Неэффективность ресурсов: Поскольку важен только ресурс с наибольшим потреблением, пользователи могут намеренно злоупотреблять другими ресурсами без дополнительных затрат. В предыдущем примере выполнение EVM до 150 тыс. газа не требует дополнительной платы, создавая расточительные транзакции, которые раздувают сеть без увеличения затрат.

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

EIP-7623, которое будет реализовано в Обновление Pectra, следует аналогичному, но немного модифицированному подходу. Он вводит механизм двойного ценообразования для транзакций с большим объемом данных, обеспечивая, что транзакции с неразумно высоким использованием данных будут платить более высокие комиссии. Хотя это не полноценная многомерная модель ценообразования газа, это представляет собой шаг к лучшему разграничению ресурсов без переделывания структуры газа Ethereum.

Как связан EIP-7623 с многомерной ценой газа?

EIP-7623 вводит повышенные комиссии за транзакции доступности данных (DA), особенно когда использование calldata значительно превышает использование газа выполнения. Этот механизм гарантирует, что транзакции, потребляющие избыточные calldata, платят более высокие комиссии, отговаривая от ненужного хранения данных без необходимости в новых единицах ценообразования.

Упрощенный вариант расчета газа EIP-7623 выглядит следующим образом:

total_gas_used max(4tokens_in_calldata + evm_gas_used, 10*tokens_in_calldata)

Что еще больше упрощает:

total_gas_used 4tokens_in_calldata + max(evm_gas_used, 6*tokens_in_calldata)

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

EIP-7623 - это упрощенная версия многомерной цены на газ, потому что он вводит неявное различие между газом исполнения и газом calldata, поощряя более сбалансированное распределение сетевых ресурсов.

Заключение

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

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

Отказ:

  1. Эта статья перепечатана из [Исследование 2077]. Все авторские права принадлежат автору оригинала [Seongwan Park]. Если есть возражения по поводу этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Отказ от ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно мнением автора и не являются инвестиционными советами.
  3. Команда gate Learn занимается переводом статьи на другие языки. Копирование, распространение или плагиат переведенных статей запрещены, если не указано иное.
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!