Перейти к основному контенту

How gas fees, limits, and network fees work

примечание

Новичок в крипте и web3?

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

Gas (or network fees) is the unit of measurement for how much computational work is required to process transactions and smart contracts. По сути, это комиссия за транзакцию. Термин происходит из Ethereum, где он обозначает вычисление, осуществляемое Виртуальной машиной Ethereum (EVM). Термин происходит от Ethereum, в котором он относится к вычислению, осуществляемому Ethereum Virtual Machine (EVM). которые приняли аналогичные модели.

Other networks

Other networks like Solana and Bitcoin also have network fees, though they may be calculated differently. Luckily, MetaMask automatically calculates the network fee for you when you confirm a transaction, taking the guesswork out of it.

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

Метод расчета платы за газ зависит от сети. For example, on Ethereum Mainnet, you pay a base fee for every unit of gas, which is burned (read: it is deleted, and disappears) upon successful completion of the transaction. В дополнение к базовой комиссии вы добавляете плату за приоритет, опять же за единицу газа, сумма которой зависит от того, насколько быстро вы хотите выполнить транзакцию.

В широком спектре доступных EVM-совместимых сетей газ и его аналогично работающие альтернативы стали стандартным методом расчета транзакционных издержек. Fees are paid in the network's native token: for example, any transaction on Ethereum requires ETH; using BSC requires BNB; using Polygon requires POL (previously MATIC). Some networks have adopted Ethereum's EIP-1559 model wholesale, such as Polygon, while others have made adjustments, including Avalanche, for their C-Chain (which burns both the base fee and priority fee, rather than just the former).

Gas included transactions

On Ethereum Mainnet, BNB Smart Chain, Polygon, Arbitrum, and Base, MetaMask allows you to pay the network fee using different tokens. This means you do not need to have enough of the network's native token to cover the network fee, but can do so using other tokens.

On the backend, MetaMask will swap your selected token for the network's native token, and then use that to pay the network fee. MetaMask uses the simplest, cheapest method to do this.

On the frontend, you won't need to worry about swapping a token for the network's native token, because MetaMask will do it for you. Simply select the token you want to use to pay the network fee, and MetaMask will handle the rest.

Подробнее об этом см. здесь.

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

совет

In MetaMask, you'll see 'Network fee' in the transaction confirmation screen. This is the gas fee.

Here are some details for dealing with gas:

Лимит газа (единицы использованного газа)

Лимит газа — это максимальное количество единиц газа, которое вы готовы заплатить за проведение транзакции или EVM-операции. Для различных операций требуется различное количество единиц газа. Стандартная транзакция по отправке ETH или токена обычно стоит 21 000 газа, тогда как доступ к токенам ERC-20 требует 45 000. Многие сети, такие как EVM-совместимый блокчейн Harmony, используют идентичную модель, в которой стандартные транзакции также стоят 21000 газа.

информация

Нужно ли редактировать лимит газа?

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

Базовая комиссия

Каждый блок в сети Ethereum имеет базовую комиссию, определяемую спросом сети: базовая комиссия основана на размере предыдущего блока в сравнении с размером целевого блока (где размер относится к общему количеству газа, используемого для всех транзакций, которые включает блок). Если размер предыдущего блока превышает целевой, базовая комиссия следующего блока увеличивается на 12,5%. Это дает пользователю (или его кошельку) полную уверенность относительно базовой комиссии предстоящего блока. Для включения в блок общая плата за газ должна как минимум соответствовать этой цене.

Плата за приоритет

Плата за приоритет, также называемая «„чаевые“ майнеру, побуждает майнеров отдавать приоритет вашей транзакции при обработке.

Naturally, whether this does actually go to a miner depends on the consensus mechanism they use: Ethereum Mainnet became a Proof of Stake network following the Merge in September 2022, so the priority fee goes to validators instead of miners.

Максимальная комиссия

Максимальная комиссия — это общая сумма, уплаченная за вашу транзакцию. Она рассчитывается как: (базовая комиссия + плата за приоритет) x количество единиц использованного газа. MetaMask изначально устанавливает эту сумму исходя из истории предыдущего блока. Однако пользователи могут отредактировать эту сумму через индивидуальные настройки (см. ниже). Разница между максимальной комиссией за единицу газа и суммой базовой комиссии и максимальной платы за приоритет за единицу газа «возвращается» пользователю.


Basefee

Дополнительные концепции

Gwei

Гвей — это единица эфира наименьшего номинала, которая обозначает gigawei (или 1 000 000 000). Гвей используется для внесения платы за газ или, скорее, платежей, производимых пользователями, чтобы компенсировать вычислительную энергию, необходимую для обработки и проверки транзакций в блокчейне Ethereum.

Другие сети также рассчитывают затраты с использованием гвей, например, Fantom, Harmony и Avalanche.

Проскальзывание

Проскальзывание — это ожидаемая процентная разница между котировкой и ценой исполнения.

Плата за газ

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

Базовая комиссия

Генерируется протоколом. Представляет собой минимальный множитель «gasUsed», необходимый для включения транзакции в блок (т. е. для совершения транзакции). Это часть комиссии за транзакцию, которая сжигается.

Advanced gas controls

Если вы хотите разобраться в тонкостях управления газом (например, это может быть полезно, если вы тестируете dapp), MetaMask может помочь! Полную версию статьи смотрите здесь.

Out of gas errors

A problem you may encounter is a transaction failing with an "out of gas" error like in the screenshot below.

out of gas error

This means that all the gas units up to the limit you set were used up before the transaction could be fully processed.

To avoid another "out of gas" error, you will need to increase the gas limit of your next transaction. This can be done just before sending your next transaction by customizing gas settings.

MetaMask gas limit recommendations

The vast majority of the time, the gas limit that MetaMask automatically sets for your transaction will be sufficient.

Selecting a gas limit is mostly a personal preference, but it may be helpful to review recent successful transactions of the executing smart contract to understand what is a sufficient gas limit for your transaction.

Recommended steps:

  1. While reviewing your transaction with the "out of gas" error on Etherscan, click the link to the Contract address in the "To:" section directly above the out of gas error
  2. Scroll down to the list of Transactions and click on the Txn Hash of any completed transaction (non-pending)
  3. Ensure that the transaction shows Status as Success. If not, go back and choose another transaction.
  4. Click on Click to show more
  5. Make a note of the Gas Limit that was chosen for the transaction
  6. Optional: repeat steps 1-4 to better estimate a gas limit that will be sufficient for your transaction
  7. Once you have a good idea of a value for your gas limit, make sure to adjust the gas limit when sending out your next transaction.
Was this helpful?