Churn in the Bitcoin Network

Efficient and reliable propagation of blocks is vital to the scalability of the Bitcoin network. As a result, several schemes, such as the compact block protocol (BIP 152), have been proposed over the last few years to speed up the block propagation. Even so, we provide experimental evidence that (i) the vast majority (97%) of Bitcoin nodes exhibit only intermittent network connectivity (i.e., churn), and (ii) this churn results in significant number of unsuccessful compact blocks, roughly three times the statistic for continuously connected nodes. We conduct experiments on the Bitcoin network that show that churn results in a roughly five fold increase in block propagation time (i.e., 566.89 ms vs. 109.31 ms) on average. To effect our analysis, we develop a statistical model for churn, based on empirical network data, and use this model to actuate live test nodes on the Bitcoin network. The performance of the system is measured within a novel framework that we developed for logging the internal behavior of a Bitcoin node, and which we share for public use. Finally, to mitigate the problem of missing transactions in churning nodes, we propose and implement into Bitcoin Core a new synchronization protocol, dubbed MempoolSync. Our measurements show that churning nodes implementing MempoolSync experience significantly better performance than standard nodes not implementing MempoolSync, including average block propagation delay reduced by over 50%.

[1]  Joaquin Garcia-Alfaro,et al.  Data Privacy Management, Cryptocurrencies and Blockchain Technology , 2017, Lecture Notes in Computer Science.

[2]  Yaron Minsky,et al.  Set reconciliation with nearly optimal communication complexity , 2003, IEEE Trans. Inf. Theory.

[3]  David Starobinski,et al.  Churn in the Bitcoin Network: Characterization and Impact , 2019, 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC).

[4]  Sachin Agarwal,et al.  Fast PDA synchronization using characteristic polynomial interpolation , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[5]  David Starobinski,et al.  Characterizing Orphan Transactions in the Bitcoin Network , 2020, 2020 IEEE International Conference on Blockchain and Cryptocurrency (ICBC).

[6]  Daniel Stutzbach,et al.  Understanding churn in peer-to-peer networks , 2006, IMC '06.

[7]  Jia Wang,et al.  Analyzing peer-to-peer traffic across large networks , 2002, IMW '02.

[8]  Gopal Pandurangan,et al.  Stochastic analysis of a churn-tolerant structured peer-to-peer scheme , 2010, Peer-to-Peer Networking and Applications.

[9]  Jelena Misic,et al.  Modeling of Churn Process in Bitcoin Network , 2020, 2020 International Conference on Computing, Networking and Communications (ICNC).

[10]  Robert Tappan Morris,et al.  Bandwidth-efficient management of DHT routing tables , 2005, NSDI.

[11]  Michael T. Goodrich,et al.  Invertible bloom lookup tables , 2011, 2011 49th Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[12]  김대현,et al.  RMS Error , 2017, Encyclopedia of GIS.

[13]  S. Foss,et al.  An Introduction to Heavy-Tailed and Subexponential Distributions , 2011 .

[14]  Jelena Mišić,et al.  On the Benefits of Compact Blocks in Bitcoin , 2020, ICC 2020 - 2020 IEEE International Conference on Communications (ICC).

[15]  Ghassan O. Karame,et al.  Double-spending fast payments in bitcoin , 2012, CCS.

[16]  Satoshi Nakamoto Bitcoin : A Peer-to-Peer Electronic Cash System , 2009 .

[17]  Gerhard Nahler,et al.  Pearson Correlation Coefficient , 2020, Definitions.

[18]  Gavin Andresen,et al.  Graphene: A New Protocol for Block Propagation Using Set Reconciliation , 2017, DPM/CBT@ESORICS.

[19]  Thomas E. Anderson,et al.  Profiling a million user dht , 2007, IMC '07.

[20]  J. Welch Distributed Algorithmic Foundations of Dynamic Networks , 2016 .

[21]  Vojislav B. Misic,et al.  Performance of Bitcoin Network With Synchronizing Nodes and a Mix of Regular and Compact Blocks , 2020, IEEE Transactions on Network Science and Engineering.

[22]  Fabián E. Bustamante,et al.  Friendships that Last: Peer Lifespan and its Role in P2P Protocols , 2003, WCW.

[23]  Ivan Beschastnikh,et al.  Erlay: Efficient Transaction Relay for Bitcoin , 2019, CCS.

[24]  Guido Caldarelli,et al.  Blockchain inefficiency in the Bitcoin peers network , 2017, EPJ Data Science.

[25]  Hongke Zhang,et al.  Characterizing Churn in Gnutella Network in a New Aspect , 2008, 2008 The 9th International Conference for Young Computer Scientists.

[26]  Paul F. Syverson,et al.  Anonymous connections and onion routing , 1998, IEEE J. Sel. Areas Commun..

[27]  George Varghese,et al.  What's the difference?: efficient set reconciliation without prior context , 2011, SIGCOMM.

[28]  Christian Decker,et al.  Information propagation in the Bitcoin network , 2013, IEEE P2P 2013 Proceedings.

[29]  Hongke Zhang,et al.  Multi-factors oriented study of P2P Churn , 2009, Int. J. Commun. Syst..

[30]  Hatria Decor Duomo Block , 2020, Definitions.

[31]  Keith W. Ross,et al.  A Measurement Study of a Large-Scale P2P IPTV System , 2007, IEEE Transactions on Multimedia.

[32]  Krishna P. Gummadi,et al.  Measurement, modeling, and analysis of a peer-to-peer file-sharing workload , 2003, SOSP '03.

[33]  Laurent Vanbever,et al.  Hijacking Bitcoin: Routing Attacks on Cryptocurrencies , 2016, 2017 IEEE Symposium on Security and Privacy (SP).

[34]  Saeideh G. Motlagh,et al.  An analytical model for churn process in Bitcoin network with ordinary and relay nodes , 2020, Peer Peer Netw. Appl..

[35]  David Starobinski,et al.  Prioritized data synchronization for disruption tolerant networks , 2012, MILCOM 2012 - 2012 IEEE Military Communications Conference.

[36]  Hannes Hartenstein,et al.  A simulation model for analysis of attacks on the Bitcoin peer-to-peer network , 2015, 2015 IFIP/IEEE International Symposium on Integrated Network Management (IM).

[37]  Dmitri Loguinov,et al.  Modeling Heterogeneous User Churn and Local Resilience of Unstructured P2P Networks , 2006, Proceedings of the 2006 IEEE International Conference on Network Protocols.

[38]  Taieb Znati,et al.  Modeling Churn in P2P Networks , 2007, 40th Annual Simulation Symposium (ANSS'07).

[39]  Daniel Stutzbach,et al.  Towards a Better Understanding of Churn in Peer-to-Peer Networks , 2004 .

[40]  J. Jackson Wiley Series in Probability and Mathematical Statistics , 2004 .

[41]  Vojislav B. Misic,et al.  Impact of Node Churn in the Bitcoin Network , 2020, IEEE Transactions on Network Science and Engineering.

[42]  J. Nolan,et al.  Maximum likelihood estimation and diagnostics for stable distributions , 2001 .

[43]  Impact of Node Churn in the Bitcoin Network with Compact Blocks , 2020, GLOBECOM 2020 - 2020 IEEE Global Communications Conference.

[44]  Sachin Agarwal,et al.  Efficient PDA Synchronization , 2003, IEEE Trans. Mob. Comput..