Скануйте, щоб завантажити додаток Gate
qrCode
Більше варіантів завантаження
Не нагадувати сьогодні

Чому Ethereum наважується підняти ліміт Gas до 60 мільйонів?

Автор: Чжісюн Пан

Протягом минулого року ліміт газу (Gas Limit) для блоку Ethereum швидко зріс з приблизно 30 мільйонів до 60 мільйонів. За цим стрибком стоїть кілька факторів, які працюють разом, зокрема контроль за найгіршим розміром блоку на рівні протоколу, значна оптимізація продуктивності виконавчих клієнтів та систематичне тестування для вищого ліміту газу.

Простими словами, розробники зменшили ризики підвищення межі Gas шляхом вдосконалення правил протоколу Ethereum, що суттєво підвищило швидкість обробки великих блоків різними клієнтами, і довели, що мережа може своєчасно генерувати та поширювати блоки навіть під високим навантаженням.

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

Газовий ліміт та Blob: визначення та відмінності

Ліміт газу (Gas Limit) є параметром, що вимірює максимальний обсяг обчислювальної роботи в кожному блоці в Ethereum, тобто максимальну кількість газу, яку може містити кожен блок для виконання транзакцій. Чим вище ліміт газу, тим більше транзакцій може вмістити один блок, що підвищує пропускну спроможність мережі. Але побічним ефектом є те, що вищий ліміт газу збільшує навантаження на учасників мережі: валідатори блоків повинні упакувати та транслювати більші блоки за фіксований час, а всі вузли мережі також повинні завантажувати та виконувати більші блоки, що призводить до збільшення навантаження на мережеву пропускну здатність та апаратне забезпечення вузлів.

Blob – це ще один тип вмісту блоку, який є новим елементом, введеним для розширення доступності даних Ethereum. Blob походить з пропозиції EIP-4844, яка дозволяє тимчасово розміщувати велику кількість двійкових даних, призначених для використання Layer 2, у блоці, при цьому вартість вимірюється незалежно від споживання Gas звичайними транзакціями. Простими словами, Blob забезпечує додатковий простір, спеціально призначений для даних L2 Rollup, тоді як Gas Limit вимірює верхню межу обсягу звичайних обчислень EVM. Обидва поняття не є безпосередньо порівнянними: збільшення кількості Blob в основному впливає на ємність L2-даних, які можна додати до блоку, тоді як збільшення Gas Limit безпосередньо збільшує обчислювальну ємність виконання транзакцій L1.

Ця стаття зосереджується на обговоренні теми Gas Limit, тоді як зміна ємності Blob не буде розглянута.

Історичний контекст: чому в минулому не наважувалися підвищити Gas Limit?

У перші дні Ethereum обережно ставився до підвищення ліміту газу в блоці. Після впровадження EIP-1559 у 2021 році Ethereum встановив цільовий показник блокового газу близько 15 мільйонів (приблизно до 30 мільйонів для одного блоку) і не збільшував його протягом багатьох років. Причина цього полягала в тому, що кілька ключових вузьких місць ще не були вирішені, а раптове підвищення ліміту газу може поставити під загрозу безпеку мережі та децентралізацію:

  • Виконання продуктивності: Чи може програмне забезпечення клієнта достатньо швидко виконувати більше транзакцій? Якщо блок занадто великий і не дозволяє вузлам завершити виконання та верифікацію протягом інтервалу блоку, це може призвести до пропуску своєчасного створення блоку або виникнення розгалуження ланцюга.
  • Мережева передача: Великі блоки повинні бути транслювані в мережі протягом 12 секунд циклу створення блоків, особливо протягом 4 секунд, щоб бути отриманими більшістю валідаторів для своєчасної подачі доказів часток. Занадто великі блоки можуть затримувати передачу, що призводить до проблем з консенсусом.
  • Зростання стану: вища пропускна спроможність прискорить розширення глобального стану Ethereum (дані бухгалтерського обліку), що призведе до збільшення навантаження на синхронізацію вузлів та зберігання, що в довгостроковій перспективі може підірвати децентралізацію мережі.
  • Апаратні вимоги: Вищезгадані фактори в сукупності означають підвищення вимог до апаратної конфігурації для роботи вузлів. Якщо звичайним користувачам важко слідкувати за цим на домашніх комп'ютерах, то вищий ліміт Gas може призвести до концентрації мережі на меншій кількості високопродуктивних вузлів, що негативно вплине на децентралізацію.

Внаслідок вищезазначених побоювань, протягом тривалого часу ліміт Gas на основній мережі Ethereum залишався стабільним і не перевищував 30 мільйонів. Особливо після появи Rollup, велика кількість транзакцій стискає дані та публікує їх на L1 за низькою ціною через calldata, що призводить до поступового наближення середнього розміру блоку Ethereum до межі, в екстремальних випадках один блок може досягати кількох мегабайт.

Без інших покращень підвищення ліміту Gas лише збільшить розмір блоку та проблеми з продуктивністю. Тому спільнота Ethereum тоді вирішила в основному покладатися на розширення Layer 2, а не поспішати з підвищенням ліміту Gas на L1.

Основна причина швидкого зростання Gas Limit сьогодні

Отже, чому після 2025 року Ethereum зможе швидко підвищити ліміт Gas більш ніж у два рази, зберігаючи при цьому безпеку? Основна причина полягає в тому, що одночасно реалізовано кілька технологічних вдосконалень, які усувають перешкоди для масштабування.

!

Обмеження на розмір блоку у найгіршому випадку для оновлення протоколу

Ефіріум запровадив нові правила протоколу, щоб зменшити верхню межу розміру блоку у «найгіршому випадку». Ключовим моментом є пропозиція EIP-7623, яка значно зменшує кількість дешевих даних, які можуть бути включені в один блок у крайніх випадках, шляхом підвищення витрат на Gas для даних calldata у транзакціях.

Перш ніж впровадити EIP-7623, зловмисники могли використовувати наднизьку ціну на газ для calldata, щоб заповнити блок даними обсягом до кількох МБ; після підвищення ціни дані такого ж обсягу вимагатимуть більше газу, що фактично зменшує максимальний розмір блоку і полегшує проблему “занадто великої різниці між середнім і екстремальним значенням” розміру блоку.

Ця зміна дозволила уникнути неконтрольованого розширення загального обсягу байтів блоку, навіть якщо підвищити загальний ліміт Gas, що забезпечує безпечний запас для підвищення ліміту Gas. Іншими словами, протокольний рівень активно зменшив витрати на рівні даних, гарантуючи, що «обсяг обчислень подвоюється, розмір блоку не подвоюється», що стало основою для збільшення ліміту Gas з 30 мільйонів до 60 мільйонів.

Водночас, основна мережа почала впроваджувати спеціалізовані транзакції Blob даних для Rollup у EIP-4844, що також зменшило залежність Rollup від дешевих calldata. Коли дані Rollup поступово переходять з звичайного Gas простору в Blob простір, звичайний Gas блоків більше зосереджується на справжніх обчисленнях контрактів, середній блок стає “легшим”, що також опосередковано створює більш сприятливі умови для підвищення ліміту Gas.

Значне покращення продуктивності клієнта

Команди виконувальних клієнтів Ethereum провели глибоке тестування продуктивності програмного забезпечення та оптимізацію, що суттєво підвищило швидкість обробки великих блоків. Рамки тестування Gas, які очолюються командами, такими як Nethermind, заповнюють повний блок виконання однотипних інструкцій або попередньо скомпільованих контрактів, щоб протестувати межі обробної потужності клієнтів (вимірюючи продуктивність у «мільйон Gas на секунду»).

За допомогою цього єдиного стандарту розробники виявили та виправили деякі приховані раніше вузькі місця виконання. Наприклад, під час тестування було виявлено, що в деяких крайніх випадках попередньо скомпільоване “модульне піднесення до ступеня” (ModExp) займає набагато більше часу, ніж його ціна в Gas, що стало спільним вузьким місцем для всіх основних клієнтів.

У відповідь на ці відкриття, спільнота швидко запропонувала EIP-7883 для повторної оцінки Gas для попередньо скомпільованого ModExp і координувала алгоритми оптимізації клієнтів. У той же час інші витратні криптографічні операції (такі як обчислення еліптичних кривих BLS12-381, BN256, хешування тощо) також були оптимізовані або повторно оцінені командами клієнтів.

Згідно зі статистикою, після середньострокового «Berlin Interop» перформанс-спурту 2025 року, швидкість обробки блоків у всіх виконавчих клієнтах значно покращилася в найгіршому випадку, більшість операцій досягли рівня обробки приблизно 20 мільйонів Gas на секунду.

Перекладаючи, якщо клієнт може виконувати 20 мільйонів Gas за секунду, то теоретично можна обробити до 80M Gas в блоці за інтервал PoS в 4 секунди. Це означає, що підвищення верхньої межі блоку до 60M Gas все ще в межах безпечної зони.

Ці покращення продуктивності усунули раніше висловлені побоювання щодо «швидкості виконання, що не відповідає ліміту Gas», забезпечуючи, що навіть якщо блок містить удвічі більше транзакцій, ніж раніше, клієнт зможе завершити верифікацію в установлені терміни, не пропустивши термін консенсусу через повільне виконання.

повна перевірка мережевих меж поширення

Перед впровадженням будь-якого підвищення ліміту Gas в основній мережі, розробники провели всебічне тестування в кількох спеціалізованих мережах, щоб забезпечити своєчасну передачу більших блоків та їх прийняття більшістю вузлів.

Наприклад, у 2025 році розробники Ethereum на тестовій мережі Sepolia та новій розробленій мережі Hoodi підвищили ліміт газу блоку до 60M та продовжили спостерігати за показниками продуктивності мережі. Результати показали, що навіть при використанні максимальної величини газу блоку 60M, пропозиції блоків у цих мережах все ще можуть бути упаковані вчасно та швидко передані через P2P мережу: 90% вузлів отримали блок приблизно через 0.7~1.0 секунди після його створення, майже всі вузли завершили верифікацію та прийняли блок як новий голова ланцюга протягом 4 секунд.

Іншими словами, навіть якщо використання газу в блоці подвоїться, блок все ще може розповсюджуватись мережею до терміну подачі доказу, встановленого Ethereum, у 4 секунди. Під час цих стрес-тестів розробники контролювали, чи вчасно пропонуючі вузли створюють блоки, розподіл часу, необхідного всім вузлам мережі для прийняття нового блоку, та інші ключові дані, і не виявили помітних аномалій.

Оскільки статус тестової мережі в масштабі та топології вузлів відрізняється від основної мережі, розробники зберігають обережний оптимізм, але результати тестування підтвердили, що в теорії та інженерії блоки об'ємом 60M Gas є можливими. Одночасно, щоб забезпечити безпеку шару консенсусу, розробники також врахували обмеження на рівні сигнальної мережі (наприклад, на даний момент є обмеження на максимальний обсяг Gossip для одного блоку близько ~10MB). Завдяки згаданим вище методам, таким як EIP-7623, для зменшення кількості байтів в одному блоці, а також уникненню одночасного появи занадто великої кількості штрафних транзакцій та інших найгірших сценаріїв, виконуване навантаження 60M Gas не досягло цих обмежень.

!

Узагальнюючи, усі тести та коригування дали основній команді достатнє розуміння ризиків підвищення ліміту газу на основній мережі з 30 мільйонів до 60 мільйонів, що додало впевненості. Після того, як більшість валідаторів висловили сигнал підтримки (близько 150 тисяч + валідаторів проголосували за підвищення), Ethereum нарешті в 2025 році розпочне підвищення ліміту газу на основній мережі і планує в подальших оновленнях офіційно змінити значення за замовчуванням на 60M.

Перспективи на майбутнє: що ще потрібно для подальшого підвищення?

Спільнота Ethereum не планує зупинятися на 60M Gas. У наступних планах оновлення, таких як Fusaka, розробники окреслили шлях до подальшого підвищення ліміту Gas блоку до 100M або навіть вище. Для досягнення цієї мети ще залишаються кілька технічних проблем, які потрібно вирішити або постійно стежити за ними:

  • Подальша оптимізація важких обчислювальних операцій: як вже згадувалося раніше, алгоритм ModExp, наразі завдяки EIP-7883, перезавантаженню цін і оптимізації клієнтів, в основному усунув вузькі місця. Але для підтримки блоків рівня 100M, можливо, потрібно буде оптимізувати або додати спеціалізовані прискорювачі для інших криптографічних обчислень з високим споживанням газу (таких як перевірка підпису на основі еліптичних кривих, перевірка доказів з нульовим знанням тощо). На щастя, команда клієнтів вже розпочала співпрацю в цих напрямках, під час тестування в 2025 році вони вже налаштували реалізацію попередньо скомпільованих функцій, пов'язаних з еліптичною кривою BN256, щоб їхня продуктивність більше не гальмувала. Можна передбачити, що з впровадженням Ethereum більшої кількості високопродуктивних криптографічних примітивів (навіть розглядаючи можливість рідної підтримки STARK тощо), виконавчі вузькі місця продовжать долати, відкриваючи шлях для підвищення ліміту газу.
  • Контроль за масштабом стану та витратами на вузли: вищі ліміти Gas означають, що стан на ланцюзі може швидше зростати. Якщо не вжити заходів, через кілька років зберігання повних вузлів та синхронізація нових вузлів стане значно складнішою. Розробники Ethereum вже досліджують проблему зростання стану, наприклад, пропонуючи оренду стану або періодичне обрізання історичного стану, щоб уникнути безкінечного розширення. Однак ці довгострокові механізми все ще обговорюються. У короткостроковій перспективі, з підвищенням ліміту Gas, оператори вузлів можуть потребувати частіше оновлювати апаратуру (таку як швидші SSD та більша пам'ять), щоб встигати за зростанням стану та обсягу даних. Спільнота під час підвищення ліміту Gas також підкреслює, що не буде жертвувати децентралізацією, тому до того часу, поки рішення з управління станом не буде зрілим, буде обережно оцінювати вплив кожного кроку розширення на звичайні вузли.
  • Поліпшення рівня консенсусу та оптимізація мережевих протоколів: якщо в майбутньому потрібно буде підтримувати 100M Gas або більші блоки, деякі параметри консенсусу та мережі можуть потребувати коригування. Наприклад, наразі блоки Beacon Chain мають загальний розмірний обмеження, що включає виконавчий навантаження, дані Blob та дані доказів. Розробникам, можливо, потрібно підвищити верхню межу розміру повідомлень на рівні P2P або зменшити затримки великих блоків за допомогою технологій стиснення, розподілу фрагментів тощо. Крім того, Ethereum впроваджує PeerDAS (мережа взірцевого обміну даними), щоб ефективно обробляти розподіл даних Blob, що в певній мірі зменшить тиск на розподіл блоків виконавчого рівня. Після забезпечення безпечного функціонування виконавчого рівня з 60M+ Gas, поліпшення рівня даних та мережі стануть основою наступного етапу масштабування.

Дивлячись у майбутнє, якщо вдосконалення наведених вище етапів буде здійснено синхронно, подальше підвищення максимального ліміту Gas у основній мережі Ethereum не є недосяжною метою. Розробники вже перевірили на тестовій мережі можливість підвищення з 36M до 45M, 60M, наступним кроком також планується рух до 100M. Варто підкреслити, що спільнота Ethereum дотримується традиційно обережного підходу до масштабування: кожне підвищення завжди проходить «спочатку тестування, потім основна мережа», і реалізується лише за умови, що це не загрожує безпеці мережі та децентралізації.

В цілому, значне підвищення Gas Limit за минулий рік є результатом синергії інновацій в кількох сферах: зменшення ризиків на рівні протоколу, підвищення продуктивності клієнтів, надання тестових даних для впевненості. Завдяки цим зусиллям Ethereum успішно зробив важливий крок у масштабуванні L1 і заклав основу для подальшого збільшення потужності та підтримки більшої кількості додатків.

ETH-0.1%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити