CSC   24412
CENTRO DE SIMULACION COMPUTACIONAL PARA APLICACIONES TECNOLOGICAS
Unidad Ejecutora - UE
artículos
Título:
Using Network Emulation to Study Blockchain Distributed Systems: The Ethereum Case
Autor/es:
GEIER, MAXIMILIANO; VILERIÑO, SILVIO; TESSONE, CLAUDIO J.; MÁRQUEZ, DAVID GONZÁLEZ; VANOTTI, MARCO; MOCSKOS, ESTEBAN
Revista:
Proceedings - 27th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2019
Editorial:
Institute of Electrical and Electronics Engineers Inc.
Referencias:
Lugar: Pavia; Año: 2019 p. 51 - 58
Resumen:
Large-scale distributed systems are becoming more widespread and, at the same time, their sizes grow day by day. In this type of systems, the adoption of blockchains is gaining particular traction for data storage in a secure and distributed manner. Nevertheless, design and testing of new protocols and features face the challenge of determining whether the proposed modifications would actually improve the system as expected. In the case of existing cryptocurrency systems, building an evaluation platform poses additional difficulties due to the resource-consuming nature of the associated processes. In this paper, we propose a novel methodology that relies on container-based network emulation to create scalable local testbeds in which Proof-of-Work-based blockchain systems can be evaluated. Using one of the mainstream Ethereum clients, we replaced the mining algorithm with a simulation model built upon the statistical characteristics of the mining process and instrumented the client to capture relevant network events. These events are used to create an offline reconstruction of the global view of the blockchain and all forking events, and to completely characterize the working conditions under arbitrary setups. Based on the versatility and scalability of our platform, we are able to test several network scenarios of increasing size in which we analyze the incidence of the target time in the generation of contradictory views of the blockchain (i.e. forks). We show that even using a limited testbed constituted by just commodity hardware, it is possible to use our platform to study the dynamics of blockchain-based systems up to hundreds of nodes.