Примечание редактора: По мере расширения экосистемы Ethereum, ключевой проблемой становится масштабирование сети без ущерба для безопасности и децентрализации. В этой статье Виталик Бутерин подробно излагает путь масштабирования Ethereum: краткосрочные улучшения, такие как оптимизация механизма Gas и параллелизация проверки блоков, для повышения эффективности выполнения, и долгосрочные решения, включая ZK-EVM и архитектуру данных blobs, для увеличения пропускной способности сети.
В целом, эта дорожная карта предлагает поэтапный подход к масштабированию, направленный на создание основы для持续ного увеличения емкости сети Ethereum в ближайшие годы.
Ниже следует оригинальный текст:
Теперь поговорим о масштабировании (scaling). Здесь есть две основные части: краткосрочное и долгосрочное масштабирование.
Краткосрочное масштабирование
О краткосрочном масштабировании я уже писал в других местах. Основная идея大致如下:
· Списки доступа на уровне блоков (block-level access lists) (будут представлены в обновлении Glamsterdam) позволят并行化 проверку блоков.
· ePBS (также появится в Glamsterdam) обладает несколькими特性, одно из которых: он позволяет безопасно использовать большую часть времени в каждом слоте для проверки блоков, вместо нынешних нескольких сотен миллисекунд.
· Переоценка Gas (gas repricing) обеспечит соответствие стоимости gas для различных операций их фактическому времени выполнения (и другим затратам, которые они несут). Мы также на ранней стадии исследуем механизм multidimensional gas (многомерный gas), позволяющий устанавливать лимиты для разных ресурсов отдельно. В сочетании это позволит нам использовать большую долю времени слота для проверки блоков, не опасаясь экстремальных случаев.
Что касается multidimensional gas, у нас есть поэтапная дорожная карта. Первый этап — в обновлении Glamsterdam — отделение «стоимости создания состояния» от «стоимости выполнения и calldata».
Например, сейчас: операция SSTORE, которая изменяет ячейку хранения с ненулевого на ненулевое значение, стоит 5000 gas; с нулевого на ненулевое — 20000 gas.
При переоценке gas в Glamsterdam эта дополнительная стоимость будет значительно повышена (например, до 60000). Цель — повысить лимит gas так, чтобы возможность выполнения масштабировалась гораздо быстрее, чем размер состояния.
О причинах я уже писал: https://ethresear.ch/t/hyper-scaling-state-by-creating-new-forms-of-state/24052
Таким образом, в Glamsterdam: эта операция SSTORE будет消耗 5000 «обычного gas» и, например, 55000 «gas создания состояния».
Важно отметить: gas создания состояния не будет учитываться в лимите gas транзакций, который составляет около 16 миллионов.
Это означает: станет возможным создание контрактов большего размера, чем сейчас.
Как multidimensional gas реализуется в EVM?
Здесь возникает вопрос: дизайн EVM по умолчанию предполагает, что gas имеет только одно измерение, например, опкоды GAS, CALL и другие основаны на этом предположении.
Наш метод решения — сохранение двух инвариантов:
Если вы инициируете call с X gas, то этот call будет иметь X gas, которые можно использовать для «обычных операций», или «создания состояния», или других измерений, которые могут появиться в будущем.
Если опкод GAS показывает, что у вас есть Y gas, и затем вы инициируете call,消耗 X gas, то после возврата из call у вас все еще будет как минимум Y − X gas для последующих операций.
Конкретный способ реализации: мы вводим N+1 измерений gas. По умолчанию N = 1 (создание состояния), дополнительное измерение называется reservoir (резервуар).
Логика выполнения EVM такова:
По возможности в первую очередь消耗 gas из专用 измерений.
Если его недостаточно, то消耗 из reservoir.
Например, если у вас есть: (100000 gas создания состояния, 100000 reservoir)
Если вы создаете три новых состояния с помощью SSTORE, процесс изменения gas будет таким: (100000, 100000)→ (45000, 95000)→ (0, 80000)→ (0, 20000)
При таком дизайне:
Опкод GAS возвращает значение reservoir.
CALL передает указанное количество gas из reservoir, а также весь не-reservoir gas.
Многомерное ценообразование на Gas
В дальнейшем мы введем multidimensional pricing (многомерное ценообразование), позволяющее разным измерениям ресурсов иметь разные плавающие цены gas.
Это принесет:
Лучшую долгосрочную экономическую устойчивость.
Более оптимальную эффективность распределения ресурсов.
Подробнее: https://vitalik.eth.limo/general/2024/05/09/multidim.html
А механизм reservoir как раз решает проблему подвызовов (sub-call), упомянутую в конце той статьи.
Долгосрочное масштабирование
Долгосрочное масштабирование в основном включает два направления: ZK-EVM и Blobs.
Blobs
Для blobs мы планируем持续迭代 PeerDAS, в конечном итоге希望 достичь пропускной способности данных大约 8 МБ/с.
Этот масштаб:
Достаточен для собственных потребностей Ethereum.
Не предназначен стать «глобальным уровнем данных».
В настоящее время blobs в основном используются для L2. В будущем планируется, что сами данные блоков Ethereum будут записываться непосредственно в blobs.
Цель этого — позволить людям проверять сильно масштабированную сеть Ethereum без необходимости скачивать и перевыполнять всю цепочку:
ZK-SNARKs устраняют необходимость перевыполнения.
PeerDAS + blobs позволяют проверять доступность данных без загрузки всех данных.
ZK-EVM
Для ZK-EVM наша цель — постепенно увеличивать依赖ность сети от него.
2026 год: Появятся клиенты с поддержкой ZK-EVM, позволяющие узлам участвовать в attestation с помощью ZK-EVM.但它们还不足够安全,不能让整个网络依赖它运行。不过,如果约 5% 的网络使用它们是可以接受的。(如果 ZK-EVM 出现问题,你不会被罚没质押,但可能会构建在无效区块上,从而损失收益。)
2027 год: Мы начнем рекомендовать большей доле узлов запускать ZK-EVM, одновременно уделяя внимание формальной верификации и повышению безопасности. Даже если только 20% сети используют ZK-EVM, это позволит нам значительно повысить лимит gas, поскольку это предоставляет solo staker путь проверки с низкой стоимостью, а доля самих solo staker также составляет менее 20%.
После技术成熟: Мы введем механизм обязательных доказательств 3-of-5. То есть, блок должен содержать как минимум 3 доказательства из 5 различных систем доказательств, чтобы считаться действительным. К тому времени мы ожидаем, что большинство узлов, кроме тех, которым необходимо индексирование, будут依赖ться на доказательства ZK-EVM.
Долгосрочная перспектива: Продолжать улучшать ZK-EVM, делая его более надежным, и проводить более строгую формальную верификацию. Этот этап также может涉及 изменения на уровне виртуальной машины, например, в направлении RISC-V и других.
Подробнее: https://ethresear.ch/t/hyper-scaling-state-by-creating-new-forms-of-state/24052








