Abstract
Sharding is one of the most prominent concepts which involves the division of the network into shards for concurrent processing of transactions. Different sharding protocols are being implemented in blockchains to enhance its scalability. The existing blockchain systems create shards using proof-of-work consensus protocol. This research aims at developing a machine learning-based sharding process that uses the nodes’ geographical locations—latitudes and longitudes. IP addresses of the nodes are mapped to geographical coordinates, and these coordinates are then divided into shards using a suitable clustering algorithm. The nodes in the shards are geographically closer, thereby reducing the propagation delay in the network during intra-shard communication. GeoSharding has been tested to be significantly faster as compared to PoW-based sharding. This optimizes the network sharding process, thus escalating the scalability to a new level.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Gupta M.: Blockchain for Dummies. 2nd IBM Limited edn. John Wiley & Sons, Inc, Hoboken, NJ (2018)
Nakamoto, S.: Bitcoin: A Peer-to-Peer Electronic Cash System
Croman, K., Decker, C., Eyal, I., Gencer, A., Juels, A., Kosba, A., Miller, A., Saxena, P., Shi, E., Sirer, E., Song, D., Wattenhofer, R.: On Scaling Decentralized Blockchains (A Position Paper)
Sharding in Blockchain, https://medium.com/edchain/what-is-sharding-in-blockchain-8afd9ed4cff0
Haversine Formula, https://en.wikipedia.org/wiki/Haversine_formula
Ganeshan D.: GPS Clustering and Analytics, http://web.cs.wpi.edu/~emmanuel/courses/cs528/F17/slides/papers/deepak_ganesan_GPS_clustering.pdf
Propagation Delay, https://en.wikipedia.org/wiki/Propagation_delay
Computational Resources, https://en.wikipedia.org/wiki/Computational_resource
Eyal, I., Gencer, A., Sirer, E., Renesse, R.: Bitcoin-NG: A Scalable Blockchain Protocol. In: Proceedings of the 13th USENIX Symposium on Networked Systems Design and Implementation, Santa Clara, CA, USA (2016)
Obeidat, A., Gubarev, V.: Leader Election in Peer-to-Peer Systems
Perlin/noise-Library, https://github.com/perlin-network/noise
K-means implementation in Go, https://github.com/MathieuMailhos/gomeans
The Go Programming Language, https://tour.golang.org
GeoIP2 City Dataset,https://dev.maxmind.com/geoip/geoip2/geoip2-city-country-csv-databases/
Luu, L., Narayanan, V., Zheng, C., Baweja, K., Gilbert, S., Saxena, P.: A Secure Sharding Protocol For Open Blockchains
Google MyMaps, https://www.google.com/mymaps
The Zilliqa Team: The Zilliqa Project: A Secure, Scalable Blockchain Platform. Version 1.0 (May 2018)
The Zilliqa Team (Aug. 2017) The ZILLIQA Technical Whitepaper. Version 1
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Ruparel, H., Chiplunkar, S., Shah, S., Goradia, M., Shirole, M. (2020). GeoSharding—A Machine Learning-Based Sharding Protocol. In: Patel, D., et al. IC-BCT 2019. Blockchain Technologies. Springer, Singapore. https://doi.org/10.1007/978-981-15-4542-9_10
Download citation
DOI: https://doi.org/10.1007/978-981-15-4542-9_10
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-4541-2
Online ISBN: 978-981-15-4542-9
eBook Packages: Physics and AstronomyPhysics and Astronomy (R0)