-
Notifications
You must be signed in to change notification settings - Fork 224
neo-cli: tune MaxTransactionsPerBlock for testnet #850
neo-cli: tune MaxTransactionsPerBlock for testnet #850
Conversation
Allow to flush the mempool in just 10 blocks.
Follow ExecFeeFactor changes for MaxBlockSystemFee and make it possible to fit 5K transactions into the block. Related to neo-project/neo-node#850.
Do we have an approximate maximum execution time of a single transction, just in case of Resource Exhaustion Attack? |
It's strongly correlated with GAS cost and we have MaxBlockSystemFee limit (somewhat optimistic I'd say, but still). We also know that C# node can handle several thousands of NEO transfers per second, so with 15s block time 5K doesn't seem to be a lot of transactions. |
Pull Request Test Coverage Report for Build 1803322398
💛 - Coveralls |
@roman-khimov I know the awesome benchmark u made on neo N3. Actually I always wanna know what exactly makes C# slower than go node. But anyway, benchmark won't stop resource exhaustion attack, strict gas restrictions may work, I will check it out. |
DoS scenarios are always limited by GAS, sending lots of transactions costs something and it's not hard to calculate the cost of the attack. Actually, this change raises the cost of the attack because to cause some noticeable delays one would need to send more transactions and spend more GAS. As for computational overhead of big blocks, |
I understand. You can keep working on this pr, I will do a thorough benchmark on opcodes in another work. |
Take a look at neo-project/neo#1875 also, although both VMs have improved since then I think. |
Thank you. |
@roman-khimov Could you push it to |
Sure, done. |
Follow ExecFeeFactor changes for MaxBlockSystemFee and make it possible to fit 5K transactions into the block. Related to neo-project/neo-node#850. Co-authored-by: Owen Zhang <38493437+superboyiii@users.noreply.github.com>
Allow to flush the mempool in just 10 blocks.