Choice of Ethereum Clients for Private Blockchain: Assessment from Proof of Authority Perspective
Résumé
Enterprises are realizing their distributed ledger use-cases with private blockchains as it is more secure, efficient,and reliable compared to the public networks. We evaluate the behavior and performance of Ethereum clients namely Geth, OpenEthereum (Parity), and Hyperledger Besu along with their Proof of Authority consensus algorithms of Clique, Aura, and IBFT 2.0 in the private ecosystem. In this process, we propose a new testing methodology overcoming the drawbacks of existing works. We perform the test in Microsoft Azure Cloud to analyze the behavior in each of the clients from different Ethereum focused parameters. We test using generic smart contract transactions as private enterprises mostly develop DAPP or smart contract-based applications instead of traditional crypto-currency transfers. We propose a novel load-balancer middleware specific to Ethereum and integrate in our test tool for uniform and reliable distribution of transactions without failures. We analyze the bottlenecks and their root causes in each of the clients during testing. Finally, we also assess the issues frequently noticed during testing such as node stalling at Geth’s EVM layer, Clique’s frequent forks, and Clique’s fork deadlocks.