Hi all,
I think there are two types of congestion that needs to be considered for EIP-1559:
-
Non-urgent congestion. There is a small spike / temporary congestion of the network. e.g. there are 1000+ transactions in the pending pool, but this is due to a small spike in usage.
-
Urgent congestion. There is a significant spike / temporary congestion on the network. There are more urgent transactions in the pending pool (10,000+) than what the underling blockchain can process. e.g. a Black Thursday event with 200+ gwei fees.
The EIP has two mechanisms for dealing with congestion:
-
Self-inspect congestion. A consensus protocol can self-inspect blocks to detect congestion (e.g. more transactions are processed than average use).
-
Increasing burn rate. A mechanism to deterministically increase the fee base rate when the network is congested.
Note the EIP mentions the inefficiency of first-priced auctions, but I will argue that since “tip” can freely be set by the user, then EIP-1559 is still has a first-priced auction mechanism - it only becomes useful/apparent during urgent
congestion.
So I think its worth evaluating how the two mechanisms impact each goal.
Non-urgent congestion & the mechanisms. I believe the EIP is focused solely on this case and its goal is to smooth out the gas price spikes if there is a slight spike in usage. Generally, it is assumed that most users place a bid at price X and they are happy to pay at most price Y. If the network becomes slightly congested, then the price moves from X -> Y. All transactions get confirmed in a timely manner since the network still has capacity to deal with the slight spike in congestion.
My gut tells me the EIP works ok for this case. Although, if there really is 6 million gas in extra capacity that is safe to use, then you might as well use it. There is no need for a gas-size war here or “nudging” behaviour. Just let people pay the price X instead of Y (i.e. KISS principle)
Urgent congestion & the mechanisms. As we have seen with Black Thursday (and several other congestion events), there are times of wide-spread urgency to use the blockchain. For example, users may want to save CDPs or deposit your coins into an exchange before the price crashes. During times of urgency, users participate in gas price auctions and front-run each other to get their transaction in first. The EIP facilitates this first-priced auction / front running with the “tip”.
From the miners perspective, they will always include transactions that pay them the most money. One simply strategy is for the miners to sort all pending transactions by the “tip” and process them one-by-one. Now the EIP has an in-built mechanism to gradually burn base fee until one of two things happen:
I suspect after the “super super super 1000 gwei transactions” are processed, we would see some convergence on users giving up (e.g. pending 200 gwei fees) and miners giving up. The network just ends up with empty blocks and most likely an ever-increasing pending pool. That doesn’t seem like a great outcome for either party.
Now there was one argument by @dankrad that is worth exploring around miner collusion and the urgent congestion scenario. One argument is that there is a tragedy of the commons. e.g. in the long term all miners want to collect most rewards, but in the short-term they want to maximise their profit. One long-term strategy for the miners to collude and only mine 10m gas blocks. The end-result is that it will maximise their profit as the transaction fees are not burnt and the pending pool continues to grow in size. Of course, in the short-term, the argument is that miners will just include transactions above the 10m gas limit, even if the tip is small, to maximise their reward. Assuming miners cannot coordinate, latter short-term case should happen.
There are two things to highlight for the collusion case:
-
Revert via soft-fork. If the miners collude, then reverting to the pre-EIP1559 mechanism is a soft-fork, especially since the “tip” is set by the user. There is no consensus rule to stop it and that is a problem for the EIP.
-
Miners do collude. If we look at 2015-2017 era of Bitcoin and the “blocksize/segwit wars”, there are countless examples of when it was industry + miners vs a fraction of the bitcoin community. In fact, at Scaling Bitcoin HK over 80% of the hashrate (~7 dudes) sat on a panel. As well, I think they went to the pub together. I’m not fully familiar with the Ethereum mining community, but I have no reason to believe it will be any different, especially as the mining industry becomes more competitive with tight-margin profit. At some point, we should expect them to collude and somehow defend against it.
My assessment above could be missing some fundamental assumption. But I feel it covers at least 90% of EIP-1559. My biggest fear and please take this with a pinch of salt, is that EIP-1559 might end up like GasToken or the Uncle Rewards issue. There may be some unintended consequence of changing the fee marketing that is for the worse, especially since it does not ultimately get rid of the first-priced auction mechanism (it only alleviates it in the non-urgent congestion case).