Ethereum Foundation объявил, что его жесткая вилка Fusaka введет потолок на потребление газа для каждой транзакции в 16,777,216 единиц, впервые в истории, когда сеть вводит отдельный лимит на транзакцию, отличающийся от блокового лимита газа. Изменение, формализованное как EIP-7825, уже активно на тестовых сетях Holesky и Sepolia и будет развернуто на основной сети, когда активируется Fusaka.
Что нужно знать:
- Ethereum ограничит отдельные транзакции 2²⁴ газовыми единицами (около 16,78 миллионов), предотвращая монополизацию целых блоков одиночными чрезмерно большими вызовами.
- Фонд рассматривает лимит как основу для параллельного выполнения, требуя разбиения рабочих нагрузок, превышающих порог, на более мелкие последовательно вызовы.
- Все основные клиенты реализовали изменения в версиях, готовых к Fusaka, и разработчикам рекомендуется тестировать на тестовых сетях и соответственно корректировать логику оценки газа.
Фонд связывает лимит с параллельной стратегией выполнения
Тони Вахрштеттер изложил мотивы в посте от 21 октября, заявив, что лимит поможет смягчить угрозы отказа в обслуживании, улучшая предсказуемость упаковки блоков. Фонд подчеркнул, что большинство пользователей не заметят практического влияния, так как распределение транзакций в реальном мире находится намного ниже порога. Поверхность рисков сосредоточена на контрактах с большими пакетами, скриптах развертывания и специализированных маршрутизаторах, которые ранее могли приближаться к полному блоковому целевому значению газа около 45 миллионов единиц.
EIP-7825 отделяет сложность на уровне транзакций от пропускной способности на системном уровне.
Исключительно большие вызовы создавали проблемы с таймингов и планированием для создателей и валидаторов до лимита. Новый потолок заставляет рабочие нагрузки, превышающие 16,78 миллиона газа, разбиваться на более мелкие операции.
Фонд явно связывает лимит с будущими усилиями, такими как EIP-7928, ожидаемыми в эпоху Glamsterdam. Предсказуемые, ограниченные транзакции служат предпосылкой для значимой параллельности в слое выполнения. Лимит гарантирует, что по крайней мере несколько независимых транзакций могут поместиться в блок даже в сложных условиях мемпула, снижая наихудшие конфликты и упрощая проектирование планировщика для создающих параллельные пути выполнения.
Техническая реализация и влияние на разработчиков
Спецификация следует сдержанному, механическому подходу. Абстракция EIP-7825 декларирует намерение установить лимит "на уровне 16,777,216 (2^24) газа" на транзакцию, улучшая устойчивость к определенным угрозам отказа в обслуживании и делая обработку транзакций более предсказуемой по мере роста лимитов блоков. Эта простота пришлась по душе основным разработчикам как хорошо очерченная ограниченность, сохраняющая дальнейшую совместимость с более амбициозной работой по масштабированию.
Дискуссии по поводу кодирования и коммуникации потолка продолжались несколько месяцев.
Обсуждения на Ethereum Magicians и во время звонков AllCoreDevs исследовали наименование и параметризацию. Один поток резюмировал ключевую гарантию: соответствие блоковых целей целым числам 2²⁴, чтобы создатели всегда могли включать по крайней мере n транзакций, если мемпул содержит n подходящих.
Geth, Erigon, Reth, Nethermind и Besu все реализовали изменение в версиях, готовых к Fusaka. Фонд отметил, что семантика eth_call остается без изменений, но заранее подписанные транзакции с лимитами газа, превышающими 2²⁴, потребуют повторного подписания ниже потолка.
Разработчикам следует тестировать на Holesky или Sepolia, перепроектировать пакетные операции, приближающиеся к лимиту, и корректировать логику оценки газа, чтобы быстро прекращать, когда конструкции превышают потолок.
Основные понятия
Газ измеряет вычислительные усилия в Ethereum. Каждая операция стоит определенное количество газа, за которое пользователи платят в эфирах. Лимит газа блока ограничивает общий газ, который могут потребить все транзакции в блоке. Жесткие вилки - это обновления всей сети, требующие от всех узлов обновления своего программного обеспечения. Тестовые сети, такие как Holesky и Sepolia, позволяют разработчикам пробовать изменения перед внедрением на основной сети.
Параллельное выполнение позволило бы сети обрабатывать несколько неконфликтных транзакций одновременно, а не последовательно. Векторы отказа в обслуживании - это методы атаки, которые могут замедлить или остановить работу сети. Мемпул удерживает ожидающие транзакции, ожидающие включения в блоки.
Контекст политики и рыночная реакция
Разработческая философия Ethereum предпочитает минимальные, универсальные ограничения, которые перекладывают сложность на более высокие уровни. EIP-7825 соответствует этому образцу, устанавливая верхнюю границу, которая защищает живучесть сети, не диктуя поведение контрактов. Изменение обходит изменения на рынке комиссий и оставляет экономику пространств блоков и целевых значений блоков другим предложениям.
Фонд описал потолок как создание "более безопасной и предсказуемой основы для более высокой пропускной способности в будущих вилках". Эта формулировка отражает компромисс между ограничением размера отдельных транзакций и подготовкой инфраструктуры для большей общей емкости. На момент публикации эфириум торговался по $3,835.
Заключительные мысли
Жесткая вилка Fusaka представляет собой первый на уровне протокола потолок газа на транзакцию в Ethereum, установленный на уровне 16,777,216 единиц. Фонд представляет этот лимит как инфраструктуру для параллельного выполнения с одновременной минимизацией рисков отказа в обслуживании, ожидая минимального влияния на типичных пользователей.