6 CASE STUDIES
Case 2: Capturing the effect using the Gossip protocol
751
In this case, we compare the number of chain forks at the end of several simulation runs, where we
752
interchangeably activate and deactivate the gossiping property in a PoW-based BC. Accordingly, one can
753
notice the effect of gossiping on ledger finality under different conditions, namely the puzzle difficulty
754
and the transmission delay between miners. As it was mentioned in Subsection 5.3.1, gossiping is a
755
continuous process during the life time of the network, which implies that miners would mostly have
756
different chain versions at any given moment. In this case, we detect the number of chain versions at
757
the end of simulation runs, which can be decreased to one version under strictly designed parameters,
758
such medium network size, high puzzle difficulty, low transmission delay, low number of neighbors
759
per miner, etc. Nevertheless, our goal in this case is to demonstrate how the activation of the gossiping
760
property during a simulation run on FoBSim can decrease the number of chain versions and, thus, it can
761
positively contribute to the consistency of the distributed ledger. For this case, we also deployed the
762
FoBSim environment on the Google Cloud Platform, using a C2-standard-16 VM (up to 3.8 GHz, 16
763
vCPUs, 64 GB memory), with Ubuntu OS.
764
Table 11 presents the initial configuration in each simulation scenario, while Tables 12 and 13 present
765
the results we obtained by running the described scenarios, which are depicted in Figures 13 and 14.
766
As can be noted from the results, the default gossip protocol in FoBSim could decrease the number of
767
chain versions at the end of each simulation run. Although the number of chain versions did not reach the
768
optimum value (i.e. one chain version), it is obvious that activating the gossiping property decreases the
769
number of chain versions at each simulation run and, thus, enhances the distributed ledger consistency.
770
Simulation parameter Puzzle difficulty effect Transmission delay effect
no. of Fog Nodes 5 5
no. of users per fog node 5 5
no. of TX per user 5 5
no. of miners 100 100
no. of neighbours per miner 2 2
no. of TX per Block 5 5
puzzle difficulty 5, 10, 15, 20 20
Max enduser payment 100 100
miners initial wallet value 100 100
mining award 5 5
delay between neighbors 0 0, 5, 10, 15, 20
Table 11.Simulation parameters configuration for Case-2, where the Gossiping property is interchangeably activated and deactivated
Configuration diff.=5 diff.=10 diff.=15 diff.=20
Gossip activated 81 70 57 16
Gossip deactivated 92 98 100 67
Table 12.Results of Case-2, where the puzzle difficulty ranged from 5–20, and the Gossiping in FoBSim was interchangeably activated and deactivated
Configuration T.D.=0 T.D.=5 T.D.=10 T.D.=15 T.D.=25
Gossip activated 12 18 14 26 33
Gossip deactivated 15 39 59 68 76
Table 13.Results of Case-2, where the transmission delay between neighbors ranged from 0–25 ms., and the Gossiping in FoBSim was interchangeably activated and deactivated
Figure 13.The effect of activating the gossiping protocol in FoBSim, on the number of chain versions at the end of PoW-based BC simulation runs, where the puzzle difficulty fluctuates from 5 to 20
Figure 14.The effect of activating the gossiping protocol in FoBSim, on the number of chain versions at the end of PoW-based BC simulation runs, where the transmission delay between neighboring miners fluctuates from 0 to 25 ms.
7 CONCLUSIONS
771
In this paper, we proposed a novel simulation tool called FobSim that mimics the interaction between
772
the entities of an integrated Fog-Blockchain system. We briefly described the architectural elements of
773
Fog Computing (FC) and Blockchain (BC) technologies, and designed FoBSim in order to cover all
774
the elements we described. We deployed three different consensus algorithms, namely PoW, PoS and
775
PoA, and different deployment options of the BC in an FC architecture, namely the end-user layer and
776
the fog layer. Additionally, we fine tuned the FoBSim modules so that various services, provided by
777
FC and BC, can be adopted for any proposed integration scenario. The services that can be simulated
778
are distributed Payment services, distributed Identity services, distributed Data storage and distributed
779
Computational services (through Smart Contracts). In our paper, we described the modules of FoBSim, the
780
transaction modelling, the Genesis block generation, the gossiping in FoBSim, the Consensus Algorithms,
781
transaction and block validation, incentive mechanisms, and other FoBSim strategies. We validated
782
FoBSim with two case studies: the first compares the average time consumption for block confirmation in
783
different consensus algorithms, while the second analyzes the effect of gossiping on the consistency of
784
the distributed ledger, in fluctuated puzzle difficulty and transmission delay configurations.
785
In the future releases of FoBSim, we are willing to make more CAs available, as well as enhancing the
786
identity management scheme in FoBSim. We will further investigate adding the Reputation management
787
service in a generalized and simple manner so that analysis can be provided, while proposed reputation
788
management ideas, conditions, or properties can be easily implemented/modified.
789
ACKNOWLEDGEMENT
790
This research was supported by the Hungarian Scientific Research Fund under the grant number OTKA
791
FK 131793, and by the Hungarian Government under the grant number EFOP-3.6.1-16-2016-00008.
792
REFERENCES
793
[1] Smart Dubai Department.BLOCKCHAIN. 2020 (accessed October, 27, 2020). URL:https :
794
//www.smartdubai.ae/initiatives/blockchain.
795
[2] Global Times.China launches blockchain-based smart city identification system. 2019 (accessed
796
October, 27, 2020). URL: https : / / www . globaltimes . cn / content / 1168878 .
797
shtml.
798
[3] Smartcity Press.China Taking A Big Leap With Blockchain. 2019 (accessed October, 27, 2020).
799
URL:https://www.smartcity.press/blockchain-technology-china/.
800
[4] Roman Beck et al.Blockchain technology in business and information systems research. 2017.
801
[5] Bitcoin.org.Bitcoin is an innovative payment network and a new kind of money.2009 (accessed
802
October, 27, 2020).URL:https://bitcoin.org/en/.
803
[6] Evangelos K Markakis et al. “EXEGESIS: Extreme edge resource harvesting for a virtualized fog
804
environment”. In:IEEE Communications Magazine55.7 (2017), pp. 173–179.
805
[7] Pooyan Habibi et al. “Fog Computing: A Comprehensive Architectural Survey”. In:IEEE Access8
806
(2020), pp. 69105–69133.
807
[8] Amir Vahid Dastjerdi et al. “Fog computing: Principles, architectures, and applications”. In:Internet
808
of things. Elsevier, 2016, pp. 61–75.
809
[9] OpenFog Consortium et al. “OpenFog reference architecture for fog computing”. In:Architecture
810
Working Group(2017), pp. 1–162.
811
[10] Flavio Bonomi et al. “Fog computing: A platform for internet of things and analytics”. In:Big data
812
and internet of things: A roadmap for smart environments. Springer, 2014, pp. 169–186.
813
[11] Hamza Baniata and Attila Kertesz. “A Survey on Blockchain-Fog Integration Approaches”. In:
814
IEEE Access8 (2020), pp. 102657–102668.
815
[12] Alberto Montresor and M´ark Jelasity. “PeerSim: A scalable P2P simulator”. In:2009 IEEE Ninth
816
International Conference on Peer-to-Peer Computing. IEEE. 2009, pp. 99–100.
817
[13] Ioan Petri et al. “Blockchain for energy sharing and trading in distributed prosumer communities”.
818
In:Computers in Industry123 (2020), p. 103282.
819
[14] Jari Kreku et al. “Evaluating the Efficiency of Blockchains in IoT with Simulations.” In:IoTBDS.
820
2017, pp. 216–223.
821
[15] Sotirios Liaskos, Tarun Anand, and Nahid Alimohammadi. “Architecting blockchain network
822
simulators: a model-driven perspective”. In:2020 IEEE International Conference on Blockchain
823
and Cryptocurrency (ICBC). IEEE. 2020, pp. 1–3.
824
[16] Andras Markus and Attila Kertesz. “A survey and taxonomy of simulation environments modelling
825
fog computing”. In:Simulation Modelling Practice and Theory101 (2020), p. 102042.
826
[17] Zahra Nikdel, Bing Gao, and Stephen W Neville. “DockerSim: Full-stack simulation of
container-827
based Software-as-a-Service (SaaS) cloud deployments and environments”. In:2017 IEEE Pacific
828
Rim Conference on Communications, Computers and Signal Processing (PACRIM). IEEE. 2017,
829
pp. 1–6.
830
[18] Tariq Qayyum et al. “FogNetSim++: A toolkit for modeling and simulation of distributed fog
831
environment”. In:IEEE Access6 (2018), pp. 63570–63583.
832
[19] Cagatay Sonmez, Atay Ozgovde, and Cem Ersoy. “Edgecloudsim: An environment for
perfor-833
mance evaluation of edge computing systems”. In:Transactions on Emerging Telecommunications
834
Technologies29.11 (2018), e3493.
835
[20] Ubaid Ur Rahman et al. “Nutshell—Simulation Toolkit for Modeling Data Center Networks and
836
Cloud Computing”. In:IEEE Access7 (2019), pp. 19922–19942.
837
[21] Rodrigo N Calheiros et al. “CloudSim: a toolkit for modeling and simulation of cloud computing
838
environments and evaluation of resource provisioning algorithms”. In:Software: Practice and
839
experience41.1 (2011), pp. 23–50.
840
[22] Ashkan Yousefpour et al. “All one needs to know about fog computing and related edge computing
841
paradigms: A complete survey”. In:Journal of Systems Architecture98 (2019), pp. 289–330.
842
[23] Harshit Gupta et al. “iFogSim: A toolkit for modeling and simulation of resource management
843
techniques in the Internet of Things, Edge and Fog computing environments”. In:Software: Practice
844
and Experience47.9 (2017), pp. 1275–1296.
845
[24] Mohammed Islam Naas et al. “An extension to ifogsim to enable the design of data placement
846
strategies”. In:2018 IEEE 2nd International Conference on Fog and Edge Computing (ICFEC).
847
IEEE. 2018, pp. 1–8.
848
[25] Ruben Mayer et al. “Emufog: Extensible and scalable emulation of large-scale fog computing
849
infrastructures”. In:2017 IEEE Fog World Congress (FWC). IEEE. 2017, pp. 1–6.
850
[26] Antonio Coutinho et al. “Fogbed: A rapid-prototyping emulation environment for fog computing”.
851
In:2018 IEEE International Conference on Communications (ICC). IEEE. 2018, pp. 1–7.
852
[27] M´arcio Moraes Lopes et al. “Myifogsim: A simulator for virtual machine migration in fog
com-853
puting”. In:Companion Proceedings of the10th International Conference on Utility and Cloud
854
Computing. 2017, pp. 47–52.
855
[28] Tanesh Kumar et al. “BlockEdge: Blockchain-Edge Framework for Industrial IoT Networks”. In:
856
IEEE Access(2020).
857
[29] Hamza Baniata. “Fog-enhanced Blockchain Simulation”. In:The 12th Conference of PhD Students
858
in Computer Science (CS2). University of Szeged. 2020, pp. 83–87.
859
[30] Vysakh Anilkumar et al. “Blockchain Simulation and Development platforms: Survey, Issues and
860
Challenges”. In:2019 International Conference on Intelligent Computing and Control Systems
861
(ICCS). IEEE. 2019, pp. 935–939.
862
[31] Ethereum. Remix Platform. 2020 (accessed October, 27, 2020). URL: https : / / remix .
863
ethereum.org/.
864
[32] Truffle Blockchain Group. TRUFFLE OVERVIEW. 2020 (accessed October, 27, 2020). URL:
865
https://www.trufflesuite.com/docs/truffle/overview.
866
[33] Arshdeep Bahga and Vijay Madisetti.Blockchain applications: a hands-on approach. Vpt, 2017.
867
[34] Bruno.Explaining Ethereum Tools: What Are Geth and Mist?2018 (accessed October, 27, 2020).
868
URL:https : / / bitfalls . com / 2018 / 02 / 12 / explaining ethereum tools
-869
geth-mist/.
870
[35] Maher Alharby and Aad van Moorsel. “Blocksim: a simulation framework for blockchain systems”.
871
In:ACM SIGMETRICS Performance Evaluation Review46.3 (2019), pp. 135–138.
872
[36] Carlos Faria and Miguel Correia. “BlockSim: Blockchain Simulator”. In:2019 IEEE International
873
Conference on Blockchain (Blockchain). IEEE. 2019, pp. 439–446.
874
[37] Bozhi Wang et al. “A simulation approach for studying behavior and quality of blockchain
net-875
works”. In:International Conference on Blockchain. Springer. 2018, pp. 18–31.
876
[38] Arthur Gervais et al. “On the security and performance of proof of work blockchains”. In:
Pro-877
ceedings of the 2016 ACM SIGSAC conference on computer and communications security. 2016,
878
pp. 3–16.
879
[39] Raheel Ahmed Memon et al. “Modeling of blockchain based systems using queuing theory
880
simulation”. In:2018 15th International Computer Conference on Wavelet Active Media Technology
881
and Information Processing (ICCWAMTIP). IEEE. 2018, pp. 107–111.
882
[40] Fangyuan Zhao, Xin Guo, and Wai Kin Victor Chan. “Individual Green Certificates on Blockchain:
883
A Simulation Approach”. In:Sustainability12.9 (2020), p. 3942.
884
[41] Pierre-Yves Piriou and Jean-Francois Dumas. “Simulation of stochastic blockchain models”. In:
885
2018 14th European Dependable Computing Conference (EDCC). IEEE. 2018, pp. 150–157.
886
[42] Aditya Deshpande, Pezhman Nasirifard, and Hans-Arno Jacobsen. “eVIBES: Configurable and
887
Interactive Ethereum Blockchain Simulation Framework”. In:Proceedings of the 19th International
888
Middleware Conference (Posters). 2018, pp. 11–12.
889
[43] Bozhi Wang et al. “Security analysis on tangle-based blockchain through simulation”. In:
Aus-890
tralasian Conference on Information Security and Privacy. Springer. 2020, pp. 653–663.
891
[44] Ravi Kiran Raman et al. “A Scalable Blockchain Approach for Trusted Computation and Verifiable
892
Simulation in Multi-Party Collaborations”. In:2019 IEEE International Conference on Blockchain
893
and Cryptocurrency (ICBC). IEEE. 2019, pp. 277–284.
894
[45] The Linux Foundation.What is Hyperledger?2020 (accessed October, 27, 2020).URL:https:
895
//www.hyperledger.org/.
896
[46] Mozhdeh Farhadi et al. “A systematic approach toward security in Fog computing: Assets,
vulnera-897
bilities, possible countermeasures”. In:Software: Practice and Experience50.6 (2020), pp. 973–
898
997.
899
[47] Stephane Herman Maes et al.Orchestrating hybrid cloud services. US Patent 9,882,829. Jan. 2018.
900
[48] Andrea Coladangelo and Or Sattath. “A Quantum Money Solution to the Blockchain Scalability
901
Problem”. In:arXiv preprint arXiv:2002.11998(2020).
902
[49] Satoshi Nakamoto.Bitcoin: A peer-to-peer electronic cash system. Tech. rep. Manubot, 2019.
903
[50] Dejan Vujiˇci´c, Dijana Jagodi´c, and Siniˇsa Randi´c. “Blockchain technology, bitcoin, and Ethereum:
904
A brief overview”. In:2018 17th international symposium infoteh-jahorina (infoteh). IEEE. 2018,
905
pp. 1–6.
906
[51] Sunny King and Scott Nadal. “Ppcoin: Peer-to-peer crypto-currency with proof-of-stake”. In:
907
self-published paper, August19 (2012), p. 1.
908
[52] Daniel Larimer. “Transactions as proof-of-stake”. In:Nov-2013(2013).
909
[53] Iddo Bentov, Ariel Gabizon, and Alex Mizrahi. “Cryptocurrencies without proof of work”. In:
910
International conference on financial cryptography and data security. Springer. 2016, pp. 142–157.
911
[54] Evangelos Deirmentzoglou, Georgios Papakyriakopoulos, and Constantinos Patsakis. “A survey on
912
long-range attacks for proof of stake protocols”. In:IEEE Access7 (2019), pp. 28712–28725.
913
[55] Rong Zhang and Wai Kin Victor Chan. “Evaluation of Energy Consumption in Block-Chains with
914
Proof of Work and Proof of Stake”. In:Journal of Physics: Conference Series. Vol. 1584. 1. IOP
915
Publishing. 2020, p. 012023.
916
[56] JP Buntinx. “What is Proof of Elapsed Time”. In:The Merkle Hash. Available online: https://themerkle.
917
com/what-is-proof-of-elapsed-time/(accessed on 8 August 2020)(2017).
918
[57] Anushree A Avasthi and Ankur Saxena. “Two Hop Blockchain Model: Resonating between Proof
919
of Work (PoW) and Proof of Authority (PoA)”. In:International Journal of Information Systems &
920
Management Science1.1 (2018).
921
[58] J Manning. “Proof-of-work vs. proof-of-stake explained”. In:ETHNews, November. Available at:
922
https://www. ethnews. com/proof-of-work-vs-proofof-stake-explained (Accessed: 6 January 2018)
923
(2016).
924
[59] Pranav Kumar Singh et al. “Managing smart home appliances with proof of authority and
925
blockchain”. In: International Conference on Innovations for Community Services. Springer.
926
2019, pp. 221–232.
927
[60] Lin Chen et al. “On security analysis of proof-of-elapsed-time (poet)”. In:International Symposium
928
on Stabilization, Safety, and Security of Distributed Systems. Springer. 2017, pp. 282–297.
929
[61] Hamza Baniata and Attila Kert´esz. “PF-BVM: A Privacy-aware Fog-enhanced Blockchain
Valida-930
tion Mechanism.” In:CLOSER. 2020, pp. 430–439.
931
[62] Hamza Baniata, Ahmad Anaqreh, and Attila Kertesz. “PF-BTS: A Privacy-aware Fog-enhanced
932
Blockchain-assisted Task Scheduling”. In:Information Processing and Management58 (2021).
933
[63] Hamza Baniata and Attila Kertesz.FoBSim. 2020 (accessed October, 27, 2020).URL:https:
934
//github.com/sed-szeged/FobSim.
935
[64] Hamza Baniata, Wesam Almobaideen, and Attila Kertesz. “A Privacy Preserving Model for
Fog-936
enabled MCC systems using 5G Connection”. In:2020 Fifth International Conference on Fog and
937
Mobile Edge Computing (FMEC). IEEE. 2020, pp. 223–230.
938
[65] Piotr Fr¨ohlich, Erol Gelenbe, and Mateusz P Nowak. “Smart SDN management of fog services”.
939
In:2020 Global Internet of Things Summit (GIoTS). IEEE. 2020, pp. 1–6.
940
[66] Mazin Debe et al. “IoT public fog nodes reputation system: A decentralized solution using Ethereum
941
blockchain”. In:IEEE Access7 (2019), pp. 178082–178093.
942
[67] Bastian Blywis et al.A survey of flooding, gossip routing, and related schemes for wireless multi-hop
943
networks. Tech. rep. Berlin, Germany: Freie Universitat, 2011.URL:
https://refubium.fu-944
berlin.de/bitstream/handle/fub188/18401/2010-Gossip-Routing.pdf?
945
sequence=1.
946
[68] Xiaowei He, Yiju Cui, and Yunchao Jiang. “An Improved Gossip Algorithm Based on
Semi-947
Distributed Blockchain Network”. In:2019 International Conference on Cyber-Enabled Distributed
948
Computing and Knowledge Discovery (CyberC). IEEE. 2019, pp. 24–27.
949
[69] David Kempe, Alin Dobra, and Johannes Gehrke. “Gossip-based computation of aggregate
informa-950
tion”. In:44th Annual IEEE Symposium on Foundations of Computer Science, 2003. Proceedings.
951
IEEE. 2003, pp. 482–491.
952
[70] Wilfried N Gansterer et al. “Scalable and fault tolerant orthogonalization based on randomized
953
distributed data aggregation”. In:Journal of Computational Science4.6 (2013), pp. 480–488.
954
[71] G´abor Danner and M´ark Jelasity. “Robust decentralized mean estimation with limited
communica-955
tion”. In:European Conference on Parallel Processing. Springer. 2018, pp. 447–461.
956
[72] Caixiang Fan et al. “Performance Evaluation of Blockchain Systems: A Systematic Survey”. In:
957
IEEE Access8 (2020), pp. 126927–126950.
958
[73] Jiang Lan et al. “Consistency maintenance in peer-to-peer file sharing networks”. In:Proceedings
959
the Third IEEE Workshop on Internet Applications. WIAPP 2003. IEEE. 2003, pp. 90–94.
960
[74] Nabhendra Bisnik and Alhussein A Abouzeid. “Optimizing random walk search algorithms in P2P
961
networks”. In:Computer networks51.6 (2007), pp. 1499–1514.
962
[75] The Python Software Foundation.The Python Standard Library.https://docs.python.
963
org / 3 / library / multiprocessing . shared _ memory . html. 2020 (Last accessed
964
September 14, 2020).
965
[76] The Python Software Foundation.The Python Standard Library.https://docs.python.
966
org/2/library/multiprocessing.html. 2020 (Last accessed September 14, 2020).
967
[77] Arvind Narayanan et al.Bitcoin and cryptocurrency technologies: a comprehensive introduction.
968
Princeton University Press, 2016.
969
[78] Ghassan O Karame, Elli Androulaki, and Srdjan Capkun. “Double-spending fast payments in
970
bitcoin”. In:Proceedings of the 2012 ACM conference on Computer and communications security.
971
2012, pp. 906–917.
972
[79] Kevin Alarc´on Negy, Peter R Rizun, and Emin G¨un Sirer. “Selfish Mining Re-Examined”. In:
973
International Conference on Financial Cryptography and Data Security. Springer. 2020, pp. 61–78.
974
[80] Ali Hassan Sodhro et al. “Towards Blockchain-Enabled Security Technique for Industrial Internet
975
of Things Based Decentralized Applications”. In:Journal of Grid Computing(2020), pp. 1–14.
976
[81] Umer Majeed, Kitae Kim, and Choong Seon Hong. “Mining Pool Selection Strategy in Blockchain
977
Networks: A Probabilistic Approach”. In:KIISE Transactions on Computing Practices26.6 (2020),
978
pp. 280–285.
979
[82] Robert G Sargent. “Verification and validation of simulation models”. In:Journal of simulation7.1
980
(2013), pp. 12–24.
981
[83] Stefano De Angelis et al. “PBFT vs Proof-of-Authority: Applying the CAP Theorem to
Permis-982
sioned Blockchain”. In: ().
983
[84] Binance Academy.Proof of Authority Explained. 2020 (accessed October, 27, 2020).URL:https:
984
//academy.binance.com/en/articles/proof-of-authority-explained.
985
[85] Rafael Belchior et al. “A Survey on Blockchain Interoperability: Past, Present, and Future Trends”.
986
In:arXiv preprint arXiv:2005.14282(2020).
987
[86] Jelena Misic, Vojislav B Misic, and Xiaolin Chang. “Performance of Bitcoin network with
syn-988
chronizing nodes and a mix of regular and compact blocks”. In:IEEE Transactions on Network
989
Science and Engineering(2020).
990
[87] Bin Cao et al. “Performance analysis and comparison of PoW, PoS and DAG based blockchains”.
991
In:Digital Communications and Networks(2020).
992