Design and Evaluation of a Heterogeneous Lightweight Blockchain-Based Marketplace
<p>Nodes in a decentralized network.</p> "> Figure 2
<p>Marketplace scheme.</p> "> Figure 3
<p>Proposed network scheme.</p> "> Figure 4
<p>Marketplace-tested devices: <b>up</b>: switch; <b>bottom-left</b>: JNano; <b>bottom-middle</b>: RPi3; <b>bottom-right</b>: RPi4.</p> "> Figure 5
<p>Example of the <span class="html-italic">registerProsumer</span> function inside one of the Smart Contracts.</p> "> Figure 6
<p>Comparison of disk usage metric between the proposed marketplace and an analogue blockchain over a PC.</p> "> Figure 7
<p>Comparison of the memory allocation metric between the proposed marketplace and an analogue blockchain over a PC.</p> "> Figure 8
<p>Comparison of CPU usage metric between the proposed marketplace and an analogue blockchain over a PC.</p> "> Figure 9
<p>Percentage of CPU used for RPi3 and number of transactions per second.</p> "> Figure 10
<p>RPi3 CPU temperatures in different scenarios.</p> "> Figure 11
<p>RPi3 power consumption in different scenarios.</p> ">
Abstract
:1. Introduction
2. Review of Blockchain Applied to Energy Markets
3. Advantages of the Use of a Blockchain-Based IoT Marketplace
- DecentralizationBlockchain was born as a decentralized technology to avoid any unique authority in the network. Instead, it is distributed into different nodes, with multiple connections among them, as shown in Figure 1. This creates a solid and reliable network with many benefits, such as efficiency and data propagation. This implies that if a node is down for some reason, the rest of the marketplace will continue working without fault.
- ImmutabilityThe moment that a block is validated by the network and linked to the chain, this information is very difficult to modify; the difficulty of doing so increases with each new block added to the network. Therefore, it is very difficult to modify a validated block in a chain. With application to the marketplace, it is guaranteed that the power data in the blockchain will not be modified by a third party unless that party manages to gain control of almost all nodes.
- Distributed consensusIt is only possible to add a new block to the blockchain if most of the nodes agree on adding it. This is called validation of a block. Thus, a consensus is needed between the nodes of the network. This consensus means that the responsibility is decentralized, as there is no main individual responsible for a block’s creation. Decisions in the blockchain network are only made by a consensus in the network. This reduces possible bottlenecks due to the dependence of a unique validator. The consensus also helps to increase network reliability because, as mentioned earlier, it would be necessary to attack all validators to modify the data in the blockchain. This implies that the consensus of the network is distributed, and the truth of the information is the same for the network. Thus, if a malicious node in the marketplace changes its own information and tries to share it with the rest of the network, it will be discharged, and the misinformation will have not be distributed to the network.
- TraceabilityThe information in all of the nodes of the blockchain is public. Therefore, it is possible to access any transaction recorded in a block and obtain its hashed information, such as the user who performed the transaction, the user to whom it was sent, or the timestamp of it. Thus, if a user knows the hash of some data, it is possible to obtain all transactions related to these data and the block where they are stored. This ensures the traceability of any data in the network, so it is possible to trace the power data of a user in the marketplace.
- Speed of transactionsIntegration of the IoT infrastructure on the same nodes as the blockchain network allows the possibility of communication between them. This communication could be performed using less information than in a conventional blockchain, which increases the speed of transactions and, at the same time, the time needed to create a block.
- Reduced costAlthough it is not relevant from a technological point of view, it is true that integrating IoT and blockchain in the same device would result in the use of fewer devices than using both technologies separately in the same scenario. Therefore, fewer devices implies fewer failure options and less maintenance. This is directly related to a decrease in the cost of implementing the technology.
Consensus Algorithm
- Proof of WorkThe first consensus algorithm proposed for the blockchain was Proof-of-Work (PoW), defined for the Bitcoin blockchain. PoW based its effectiveness on using all available computational resources to solve a cryptography problem to create a valid block in the network. The solution to this problem consists of finding a nonce, a number that makes the hash function of the whole block match any condition, which differs according to the difficulty of the network at that moment. Once a block is created, the rest of the network is responsible for validating it. Although it is very costly to create a block, it is quite simple to check if it is valid or not, due to the use of hash functions as part of the cryptography problem. With N denoting the nonce, the hash of the previous block, all the transactions inside the block to be created, and the difficulty of the network, the PoW requirement in Bitcoin is defined as the following equation:The above equation was obtained from [39].Due to the fact that PoW needs to use the most resources of any algorithm, any node has to find the nonce to create a block [40], this consensus algorithm is discharged in the marketplace.
- Proof of StakeThe Proof-of-Stake (PoS) consensus algorithm is based on the following premise: nodes that have the most coins in a blockchain network have the least interest in attacking the network [41]. On the basis of this, PoS does not need to solve any complex problem to create a block. Instead, PoS bases block creation on a stake of coins for each node in the network. Thus, the node that stakes the largest amount of coins is declared the creator of the block and is in charge of adding the data to the new block and linking it to the main blockchain.Besides all its advantages, PoS has a main problem. As the consensus in this algorithm is reached by staking coins, it would be possible that some nodes join themselves and transfer funds between them to have enough coins to win any stake in the network. Due to that and some other related problems [42], PoS is not a suitable consensus algorithm for the proposed marketplace.
- Proof of AuthorityAnother alternative to reach consensus between nodes is the Proof-of-Authority (PoA) consensus algorithm. In PoA, the main difference from other consensus algorithms is that the trust of the blockchain network is based on identity and reputation [43] and does not requires any currency exchange. Nodes of the network need to be firstly authorized as voting nodes to avoid new nodes tampering the next steps of the algorithm. Then, the voting nodes decided, based on the reputation of the nodes, which nodes are voting to be selected as validator nodes. The selected validator nodes finally need to show themselves to the network, in return for being able to add new blocks to the blockchain. In this consensus algorithm, as for the PoS consensus algorithm, a block is said to be signed instead of mined, and it does not require a high computational capability per GPU. In case the remaining nodes detect a rogue block, incorporated by a malicious node, the node will be identified and removed from the network. The main disadvantage of the PoA algorithm is that if an authority could have control of half plus one node of the network, the consensus algorithm will be tampered with, similar to PoW. Therefore, increasing the number of nodes in the network (i.e., with more prosumers in the proposed market), the security of the system increases.
- Practical Byzantine Fault ToleranceThe practical Byzantine Fault Tolerance (pBFT) is an algorithm that ensures the unalterability of the network messages. Its consensus is based on state machines’ replication, i.e., the consensus is reached when two thirds plus one of the nodes answers the same state for the request sent by a client, which is another node. So, it is possible to support rogue nodes if they are fewer than a third of the total nodes in the blockchain network. As any client needs to communicate to all nodes in the network in each request, this consensus algorithm generates excessive network traffic, which is against the purpose of creating a lightweight blockchain proposed in this paper.
- Proof of Elapsed TimeThe Proof of Elapsed Time (PoET) is based on random time windows, in which a participant of the consensus competes to generate a block, develop a cryptographic proof, and send it to a controller. The controller verifies the proof and accepts the block to proceed. The controller then creates a new time window, and the participants compete again. Although the consensus algorithm is free to use, it is developed using technology introduced by Intel hardware. Due to this, it is not suitable for use in the proposed lightweight devices.
- Proof of ImportanceThe Proof of Important (PoI) consensus algorithm seems like the PoS algorithm, with a main difference: the selection of the node is made by the score any node has. This score is related to the quality of the node and refers to the number of recent transactions, the vest of currency for the creation of new blocks, the network traffic, and more. Due to the fact that the more network traffic a node has, the better score it is able to reach, this consensus algorithm favors this feature, which is against the proposed lightweight blockchain.
4. Proposed Architecture of the Distributed Marketplace
- Client or prosumer: as described above, they should act as a consumer or a generator. In both cases, the proposed node will be deployed on the smart meter (or be the smart meter by itself) to obtain the energy data each fifteen minutes, in the best case. This node will send the data to the energy retailer database and trigger the SC to publish both powers: surplus or demand.
- Energy retailer: It is responsible for the installation of the nodes and the connection between them. It may have a register of all information registers in the blockchain network within its database.
- The IoT node behavior registers any power data, sent each fifteen minutes periodically. This information includes the power surplus of the prosumer. This will be a positive number, in the case of power generation, or a negative for power demand. In the remaining time, all nodes work as blockchain nodes, reaching a consensus of the blocks in the network using the PoA consensus algorithm [44]. These blocks contain transactions that consist of hashed data and SC information.
- At the moment a surplus of power data is received, the node checks through a SC if the user is registered into the blockchain to send data. If not, an SC is called to register the user on the blockchain. If the user exists in the blockchain network, the blockchain node will send the power surplus data inside a generation SC or a demand SC, depending on the sign of the power surplus data. The data are also sent to the energy retailer to store them in its database, before the new data is registered. It is important to note that the marketplace does not perform any data processing, only stores the data sent by the SCs, which consist of hashed data and not the data itself.
- The high-level or primary blockchain periodically executes (each 15 min or each time required by the retailer) a matching algorithm. It matches the generation registers with demand registers in the blockchain, checking the source of generation and offers.
- Scalable sidechainIn this case, it would be proposed to have only one sidechain in the whole marketplace. A sidechain is defined as a parallel blockchain, which works while the original blockchain properties are locked so that the common data between those two blockchains have no potential for conflict. This sidechain has its main advantage in its scalability property, which allows it to reach all the actors in the energy retailer. Unfortunately, it would require developing a specific sidechain core, compliant with ARM architectures, this is required, as ARM is currently state-of-the-art among computational capabilities and consumption. Although it has been studied, this restriction provides a non-valid solution for this marketplace.
- Using Hyperledger-based distributed ledger technology.This option requires distributed ledger technology (DLT) that uses some of the solutions provided by the Hyperledger blockchain [45]. Some Hyperledger applications do not have a non-native ARM implementation, such as Hyperledger Besu [46], so it is not known if it would be possible to adapt it to the requirements of this paper.
- Using alternatives based on consensus algorithms by capacity, space, or time.This kind of consensus algorithm seems to be appropriate for this project, as it reduces computing and consumption of the nodes. Due to the limited storage that nodes have, it would be difficult to implement this alternative with effectiveness. Therefore, it is discharged.
- Using IoT-oriented alternativesThere are alternatives that are not blockchains, but would be considered blockchains or DLTs, such as IOTA [47]. It has been tested in a private network (Tangle) over a virtual machine in a PC, which allows the installation of a Hornet service in lightweight nodes. However, after that, some shortcomings merged in terms of compatibility and interoperability. Although it appears that this problem will be solved in the next version of the client, right now it is not a real solution for the purposes of this paper.
- Using Ethereum-based solutionsThere are some Ethereum-based blockchains which are able to be used in ARM architectures and also different options related to Ethereum that could be used. Moreover, the main structure for this type of network eases the interoperability and the connection with other sidechains if necessary. In fact, commercial solutions exist for this purpose. Therefore, it is the most viable alternative for this paper, and the one we finally used.
5. Energy Market Testbed Description
- Raspberry Pi 3 B+ (RPi3), a low-cost single-board computer. Its central processing unit (CPU) has been developed over an ARM architecture and has 1 GB of random access memory (RAM). Its disk size depends on the size of the memory card inserted into it. Its consumption is low, and it is commonly used in several applications, such as edge computing in an IoT context [51] or sensor network management [52].
- Raspberry Pi 4 (RPi4) is an upgraded and more recent version of RPi3. The main differences are that RPi4 has better CPU performance and different versions with different sizes (RAM), in exchange for slightly higher consumption.
- Jetson Nano (JNano) is an embedded computing board with a target-embedded IoT application and robotics [53]. Its CPU is also ARM-based, the same as the other devices, but JNano has some extra hardware features, such as a GPU. It has more power consumption than the other devices but consumes power without excess.
6. Marketplace Testbed and Results
- Raspberry Pi 3 and 4Both RPi3 and RPi4 contain analogue software. Both are built on an Ubuntu Server operating system (OS). Ubuntu is a general-purpose Linux-based OS, which has versions for many different architectures, among them ARM architectures such as those deployed on these devices. A server version of the OS has been installed to save as many computing resources as possible, avoiding any graphical interface.After that, Geth was installed on both devices. This was conducted by downloading ARM-specific compilations from the source page, after downloading GoLang packages for ARM, implemented in the native package download application for Ubuntu.
- Jetson NanoJNano software is built over an OS as part of the Jetson Nano Developer Kit. This is a set of tools that enables the OS to work properly on a JNano. It is a Linux-based distribution, built specifically for this device, with many similarities with other operating systems such as Ubuntu. GoLang was then installed and Geth after that, as Raspberry Pi 3 and 4 had previously been installed. In this case, Geth has a native download from the OS package manager.
6.1. Genesis Block
6.2. Smart Contracts
- It is not on approach to storing the data closest to the place where it was generated or obtained.
- It is possible to tamper with the data, so that, in the blockchain, different data could be stored than in the primitive one.
- It requires more complexity to afford it, as it implies adding an oracle between the data and the blockchain network.
- RegisterThis contract allows the registration of the actors involved in the marketplace. Thus, it is possible to register a prosumer, identified by its Universal Supply Point Code (USPC), or a retailer, identified by its VAT number. It has enabled some restrictions, such as the prohibition of an external actor from participating in the marketplace, as will be discussed in the following section. It also has some extra functions to retrieve some information in the contract, such as the number of actors in the marketplace, or the count of the prosumers.
- OperationThe second SC has the register of any operation inside the marketplace. Therefore, in the blockchain, there will be information about any generation and offer that occurs in the marketplace. The producer of this generation, the price of this generation, and the generated power are all stored in the generation register. In the case of an offer register, the blockchain stores the information of the producer and, as in the case of generation, the price and the amount of power. The SC is in charge of storing this information in the blockchain with a corresponding timestamp.
- Auxiliary contractsFor the proper functioning of the SCs above mentioned, it is also necessary to create some more auxiliary contracts, which ensure the register and operation contract will work as desired. Therefore, the option to delete a registered actor in the system was developed, but only restricted to its own actor. For this, it was necessary to create other contracts that ensure the owner of the contract. Finally, an auxiliary contract was created to ensure that any actor in the marketplace had enough funds to execute it.
7. Performance Results Obtained
- Disk_ReadDatarefers to the amount of data read on the disk in bytes.The data read from the disk are used to evaluate the performance of the node. It is desirable that the node should read the least data possible, to avoid processing time wasted in reading data operations.
- Disk_WriteData describes the amount of data written onto the disk in bytes.This metric is directly related to the necessary disk size in case the node was a full node of the blockchain
- Network_InboundTraffic indicates the inbound traffic in the p2p network in bytes.
- Network_OutboundTraffic indicates the outbound traffic in the p2p network in bytes.These two metrics are relevant in the case of a network failure. The more traffic inside or outside the node, the more synchronization problems that would exist. It also refers to the network speed needed to run the blockchain successfully.
- Memory_Allocated refers to the amount of memory assigned to the blockchain in bytes.
- Memory_AllocatedTotal indicates the Memory_Allocated metric related to the total RAM each device has.
- CPU_ProcessesTime describes the total time the CPU has taken during the blockchain processes.Finally, these two metrics are crucial to evaluate whether the node could be used for other tasks at the same time as running the blockchain network.
- The blockchain network is technically feasible. It has been deployed, started, and run for hours without any error or strange behavior.
- Each device has different performance. In fact, the device with lower specifications in terms of CPU speed and RAM generates modest metrics compared to other devices. However, it is more than enough to run the proposed blockchain network.
- There is virtually no limit on disk usage. If we take the worst case, which is 11.5 KB per hour for RPi4, it would take roughly 10 years to occupy 1 GB of disk space.
- The blockchain does not need much network speed. A simple General Packet Radio Service (GPRS) connection has enough speed to obtain a successful connection between nodes.
- Nodes may have enough features to run other tasks while the blockchain is running. Over 90% of free CPU time in any node, and less than 1% of RAM allocated by the blockchain, make these low-performance nodes suitable for executing some data acquisition tasks. Thus, it is possible to obtain data and upload them to the blockchain from the same device, without any other connection or device that could manipulate the data quality.
- 1000 operations at 25 transactions per second (TPS).
- 1000 operations at 50 TPS.
- 1000 operations at 100 TPS.
8. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Dileep, G. A survey on smart grid technologies and applications. Renew. Energy 2020, 146, 2589–2625. [Google Scholar] [CrossRef]
- Personal, E.; Guerrero, J.; Garcia, A.; Peña, M.; Leon, C. Key performance indicators: A useful tool to assess Smart Grid goals. Energy 2014, 76, 976–988. [Google Scholar] [CrossRef]
- Guerrero, J.; Personal, E.; Garcia Caro, S.; Parejo, A.; Rossi, M.; Garcia, A.; Perez Sanchez, R.; Leon, C. Evaluating Distribution System Operators: Automated Demand Response and Distributed Energy Resources in the Flexibility4Chile Project. IEEE Power Energy Mag. 2020, 18, 64–75. [Google Scholar] [CrossRef]
- Das, U.; Tey, K.; Seyedmahmoudian, M.; Mekhilef, S.; Idris, M.; Van Deventer, W.; Horan, B.; Stojcevski, A. Forecasting of photovoltaic power generation and model optimization: A review. Renew. Sustain. Energy Rev. 2018, 81, 912–928. [Google Scholar] [CrossRef]
- Dobrea, M.A.; Bichiu, S.; Opris, I.; Vasluianu, M. The Energy Efficiency of a Prosumer in a Photovoltaic System. In Proceedings of the 2020 IEEE 26th International Symposium for Design and Technology in Electronic Packaging (SIITME), Pitesti, Romania, 21–24 October 2020. [Google Scholar] [CrossRef]
- Blaabjerg, F.; Teodorescu, R.; Liserre, M.; Timbus, A. Overview of control and grid synchronization for distributed power generation systems. IEEE Trans. Ind. Electron. 2006, 53, 1398–1409. [Google Scholar] [CrossRef] [Green Version]
- Jogunola, O.; Wang, W.; Adebisi, B. Prosumers matching and least-cost energy path optimisation for peer-to-peer energy trading. IEEE Access 2020, 8, 95266–95277. [Google Scholar] [CrossRef]
- Azghiou, K.; El Mouhib, M.; Bikrat, Y.; Benlghazi, A.; Benali, A. Guidelines for scalable and reliable photovoltaic wireless monitoring system: A case of study. Lect. Notes Electr. Eng. 2021, 681, 183–191. [Google Scholar] [CrossRef]
- Li, Z.; Kang, J.; Yu, R.; Ye, D.; Deng, Q.; Zhang, Y. Consortium blockchain for secure energy trading in industrial internet of things. IEEE Trans. Ind. Inform. 2018, 14, 3690–3700. [Google Scholar] [CrossRef] [Green Version]
- Mengelkamp, E.; Notheisen, B.; Beer, C.; Dauer, D.; Weinhardt, C. A blockchain-based smart grid: Towards sustainable local energy markets. Comput. Sci. Res. Dev. 2018, 33, 207–214. [Google Scholar] [CrossRef]
- Li, H.; Xiao, F.; Yin, L.; Wu, F. Application of Blockchain Technology in Energy Trading: A Review. Front. Energy Res. 2021, 9, 130. [Google Scholar] [CrossRef]
- Wang, N.; Zhou, X.; Lu, X.; Guan, Z.; Wu, L.; Du, X.; Guizani, M. When energy trading meets blockchain in electrical power system: The state of the art. Appl. Sci. 2019, 9, 1561. [Google Scholar] [CrossRef]
- Gai, K.; Wu, Y.; Zhu, L.; Qiu, M.; Shen, M. Privacy-preserving energy trading using consortium blockchain in smart grid. IEEE Trans. Ind. Inform. 2019, 15, 3548–3558. [Google Scholar] [CrossRef]
- Munsing, E.; Mather, J.; Moura, S. Blockchains for decentralized optimization of energy resources in microgrid networks. In Proceedings of the 2017 IEEE Conference on Control Technology and Applications (CCTA), Mauna Lani Resort, HI, USA, 27–30 August 2017. [Google Scholar] [CrossRef] [Green Version]
- Alladi, T.; Chamola, V.; Rodrigues, J.; Kozlov, S. Blockchain in smart grids: A review on different use cases. Sensors 2019, 19, 4862. [Google Scholar] [CrossRef] [Green Version]
- Yousefpour, A.; Fung, C.; Nguyen, T.; Kadiyala, K.; Jalali, F.; Niakanlahiji, A.; Kong, J.; Jue, J. All one needs to know about fog computing and related edge computing paradigms: A complete survey. J. Syst. Archit. 2019, 98, 289–330. [Google Scholar] [CrossRef]
- Miglani, A.; Kumar, N.; Chamola, V.; Zeadally, S. Blockchain for Internet of Energy management: Review, solutions, and challenges. Comput. Commun. 2020, 151, 395–418. [Google Scholar] [CrossRef]
- Erturk, E.; Lopez, D.; Yu, W. Benefits and risks of using blockchain in smart energy: A literature review. Contemp. Manag. Res. 2019, 15, 205–225. [Google Scholar] [CrossRef]
- Konda, S.; Al-Sumaiti, A.; Panwar, L.; Panigrahi, B.; Kumar, R. Impact of Load Profile on Dynamic Interactions between Energy Markets: A Case Study of Power Exchange and Demand Response Exchange. IEEE Trans. Ind. Inform. 2019, 15, 5855–5866. [Google Scholar] [CrossRef]
- Espe, E.; Potdar, V.; Chang, E. Prosumer communities and relationships in smart grids: A literature review, evolution and future directions. Energies 2018, 11, 2528. [Google Scholar] [CrossRef] [Green Version]
- Zafar, R.; Mahmood, A.; Razzaq, S.; Ali, W.; Naeem, U.; Shehzad, K. Prosumer based energy management and sharing in smart grid. Renew. Sustain. Energy Rev. 2018, 82, 1675–1684. [Google Scholar] [CrossRef]
- Harighi, T.; Bayindir, R.; Padmanaban, S.; Mihet-Popa, L.; Hossain, E. An Overview of Energy Scenarios, Storage Systems and the Infrastructure for Vehicle-to-Grid Technology. Energies 2018, 11, 2174. [Google Scholar] [CrossRef] [Green Version]
- Lwin, M.; Yim, J.; Ko, Y.B. Blockchain-based lightweight trust management in mobile ad-hoc networks. Sensors 2020, 20, 698. [Google Scholar] [CrossRef] [Green Version]
- Kim, M.; Park, K.; Yu, S.; Lee, J.; Park, Y.; Lee, S.W.; Chung, B. A Secure Charging System for Electric Vehicles Based on Blockchain. Sensors 2019, 19, 3028. [Google Scholar] [CrossRef] [Green Version]
- Andoni, M.; Robu, V.; Flynn, D.; Abram, S.; Geach, D.; Jenkins, D.; McCallum, P.; Peacock, A. Blockchain technology in the energy sector: A systematic review of challenges and opportunities. Renew. Sustain. Energy Rev. 2019, 100, 143–174. [Google Scholar] [CrossRef]
- Mengelkamp, E.; Gärttner, J.; Rock, K.; Kessler, S.; Orsini, L.; Weinhardt, C. Designing microgrid energy markets: A case study: The Brooklyn Microgrid. Appl. Energy 2018, 210, 870–880. [Google Scholar] [CrossRef]
- Lu, Y. Implementing blockchain in information systems: A review. Enterp. Inf. Syst. 2021, 1–32. [Google Scholar] [CrossRef]
- Tsang, Y.; Wu, C.; Ip, W.; Shiau, W.L. Exploring the intellectual cores of the blockchain–Internet of Things (BIoT). J. Enterp. Inf. Manag. 2021, 34, 1287–1317. [Google Scholar] [CrossRef]
- Dai, H.N.; Zheng, Z.; Zhang, Y. Blockchain for Internet of Things: A Survey. IEEE Internet Things J. 2019, 6, 8076–8094. [Google Scholar] [CrossRef] [Green Version]
- Zhang, Y.; Kasahara, S.; Shen, Y.; Jiang, X.; Wan, J. Smart contract-based access control for the internet of things. IEEE Internet Things J. 2019, 6, 1594–1605. [Google Scholar] [CrossRef] [Green Version]
- Hang, L.; Kim, D.H. Design and Implementation of an Integrated IoT Blockchain Platform for Sensing Data Integrity. Sensors 2019, 19, 2228. [Google Scholar] [CrossRef] [Green Version]
- Chen, X.; Nguyen, K.; Sekiya, H. An experimental study on performance of private blockchain in IoT applications. Peer-to-Peer Netw. Appl. 2021, 14, 3075–3091. [Google Scholar] [CrossRef]
- Pustišek, M.; Dolenc, D.; Kos, A. LDAF: Low-Bandwidth Distributed Applications Framework in a Use Case of Blockchain-Enabled IoT Devices. Sensors 2019, 19, 2337. [Google Scholar] [CrossRef] [Green Version]
- Gonzalez-Amarillo, C.; Cardenas-Garcia, C.; Mendoza-Moreno, M.; Ramirez-Gonzalez, G.; Corrales, J. Blockchain-iot sensor (Biots): A solution to iot-ecosystems security issues. Sensors 2021, 21, 4388. [Google Scholar] [CrossRef] [PubMed]
- Song, J.; Kang, E.; Shin, H.; Jang, J. A smart contract-based p2p energy trading system with dynamic pricing on ethereum blockchain. Sensors 2021, 21, 1985. [Google Scholar] [CrossRef] [PubMed]
- Berdik, D.; Otoum, S.; Schmidt, N.; Porter, D.; Jararweh, Y. A Survey on Blockchain for Information Systems Management and Security. Inf. Process. Manag. 2021, 58, 102397. [Google Scholar] [CrossRef]
- Casino, F.; Dasaklis, T.; Patsakis, C. A systematic literature review of blockchain-based applications: Current status, classification and open issues. Telemat. Inform. 2019, 36, 55–81. [Google Scholar] [CrossRef]
- Bach, L.M.; Mihaljevic, B.; Zagar, M. Comparative analysis of blockchain consensus algorithms. In Proceedings of the 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 21–25 May 2018. [Google Scholar] [CrossRef]
- Bashir, I. Mastering Blockchain; Packt Publishing: Birmingham, UK, 2017. [Google Scholar]
- Supreet, Y.; Vasudev, P.; Pavitra, H.; Naravani, M.; Narayan, D. Performance Evaluation of Consensus Algorithms in Private Blockchain Networks. In Proceedings of the 2020 International Conference on Advances in Computing, Communication & Materials (ICACCM), Dehradun, India, 21–22 August 2020; pp. 449–453. [Google Scholar] [CrossRef]
- Zheng, Z.; Xie, S.; Dai, H.; Chen, X.; Wang, H. An Overview of Blockchain Technology: Architecture, Consensus, and Future Trends. In Proceedings of the 2017 IEEE International Congress on Big Data (BigData Congress), Honolulu, HI, USA, 25–30 June 2017; pp. 557–564. [Google Scholar] [CrossRef]
- Deirmentzoglou, E.; Papakyriakopoulos, G.; Patsakis, C. A survey on long-range attacks for proof of stake protocols. IEEE Access 2019, 7, 28712–28725. [Google Scholar] [CrossRef]
- Singh, P.; Singh, R.; Nandi, S.; Nandi, S. Managing smart home appliances with proof of authority and blockchain. Commun. Comput. Inf. Sci. 2019, 1041, 221–232. [Google Scholar] [CrossRef]
- An, A.C.; Diem, P.T.X.; Lan, L.T.T.; Toi, T.V.; Binh, L.D.Q. Building a Product Origins Tracking System Based on Blockchain and PoA Consensus Protocol. In Proceedings of the 2019 International Conference on Advanced Computing and Applications (ACOMP), Nha Trang, Vietnam, 26–28 November 2019. [Google Scholar] [CrossRef]
- Androulaki, E.; Barger, A.; Bortnikov, V.; Cachin, C.; Christidis, K.; De Caro, A.; Enyeart, D.; Ferris, C.; Laventman, G.; Manevich, Y.; et al. Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains. In Proceedings of the Thirteenth EuroSys Conference (EuroSys ’18), Porto, Portugal, 23–26 April 2018; Association for Computing Machinery: New York, NY, USA, 2018. [Google Scholar] [CrossRef] [Green Version]
- Ahmad, R.; Hasan, H.; Jayaraman, R.; Salah, K.; Omar, M. Blockchain applications and architectures for port operations and logistics management. Res. Transp. Bus. Manag. 2021, 41, 100620. [Google Scholar] [CrossRef]
- Shabandri, B.; Maheshwari, P. Enhancing IoT Security and Privacy Using Distributed Ledgers with IOTA and the Tangle. In Proceedings of the 2019 6th International Conference on Signal Processing and Integrated Networks (SPIN), Noida, India, 7–8 March 2019; pp. 1069–1075. [Google Scholar] [CrossRef]
- Chandra, P.; Vamsi, G.; Manoj, Y.; Mary, G. Automated energy meter using WiFi enabled raspberry Pi. In Proceedings of the 2016 IEEE International Conference on Recent Trends in Electronics, Information & Communication Technology (RTEICT), Bangalore, India, 20–21 May 2016; pp. 1992–1994. [Google Scholar] [CrossRef]
- Pamulaparthy, M.; Jeevana Jyothi, K. Autonomous Smart Energy Meter over Internet of Things using Raspberry Pi. IOP Conf. Ser. Mater. Sci. Eng. 2020, 981, 042012. [Google Scholar] [CrossRef]
- Bourhnane, S.; Abid, M.; Zine-Dine, K.; Elkamoun, N.; Benhaddou, D. Cluster of single-board computers at the edge for smart grids applications. Appl. Sci. 2021, 11, 10981. [Google Scholar] [CrossRef]
- Xhafa, F.; Kilic, B.; Krause, P. Evaluation of IoT stream processing at edge computing layer for semantic data enrichment. Future Gener. Comput. Syst. 2020, 105, 730–736. [Google Scholar] [CrossRef]
- Al Qundus, J.; Dabbour, K.; Gupta, S.; Meissonier, R.; Paschke, A. Wireless sensor network for AI-based flood disaster detection. Ann. Oper. Res. 2020. [Google Scholar] [CrossRef]
- Kanagachidambaresan, G. Introduction to Internet of Things and SBCs. In Role of Single Board Computers (SBCs) in Rapid IoT Prototyping; Springer: Cham, Switzerland, 2021; pp. 1–18. [Google Scholar] [CrossRef]
- Suzen, A.A.; Duman, B.; Sen, B. Benchmark Analysis of Jetson TX2, Jetson Nano and Raspberry PI using Deep-CNN. In Proceedings of the 2020 International Congress on Human-Computer Interaction, Optimization and Robotic Applications (HORA), Ankara, Turkey, 26–28 June 2020. [Google Scholar] [CrossRef]
- Goranovic, A.; Meisel, M.; Wilker, S.; Sauter, T. Hyperledger Fabric Smart Grid Communication Testbed on Raspberry PI ARM Architecture. In Proceedings of the 2019 15th IEEE International Workshop on Factory Communication Systems (WFCS), Sundsvall, Sweden, 27–29 May 2019; Volume 2019. [Google Scholar] [CrossRef]
- Mahony, A.; Popovici, E. A Systematic Review of Blockchain Hardware Acceleration Architectures. In Proceedings of the 2019 30th Irish Signals and Systems Conference (ISSC), Maynooth, Ireland, 17–18 June 2019. [Google Scholar] [CrossRef]
- Ethereum Improvement Proposals. Available online: https://eips.ethereum.org/ (accessed on 4 September 2021).
- Bistarelli, S.; Mazzante, G.; Micheletti, M.; Mostarda, L.; Sestili, D.; Tiezzi, F. Ethereum smart contracts: Analysis and statistics of their source code and opcodes. Internet Things 2020, 11, 100198. [Google Scholar] [CrossRef]
- Lo, S.; Xu, X.; Staples, M.; Yao, L. Reliability analysis for blockchain oracles. Comput. Electr. Eng. 2020, 83, 106582. [Google Scholar] [CrossRef]
- Lohachab, A.; Garg, S.; Kang, B.; Amin, M. Performance evaluation of Hyperledger Fabric-enabled framework for pervasive peer-to-peer energy trading in smart Cyber–Physical Systems. Future Gener. Comput. Syst. 2021, 118, 392–416. [Google Scholar] [CrossRef]
- Benoit-Cattin, T.; Velasco-Montero, D.; Fernández-Berni, J. Impact of Thermal Throttling on Long-Term Visual Inference in a CPU-Based Edge Device. Electronics 2020, 9, 2106. [Google Scholar] [CrossRef]
RPi3 | RPi4 [54] | JNano [54] | |
---|---|---|---|
CPU | Quad-core ARM Cortex-A53 @ 1.4 GHz | Quad-core ARM Cortex-A72 @ 1.5 GHz | Quad-core ARM Cortex-A57 @ 1.42 GHz |
Memory | 1 GB LPDDR2 | 8 GB LPDDR4 | 4 GB LPDDR4 |
Power mean Power peak | 2.1 W 5 W | 2.56 W 7.30 W | 5 W 10 W |
Metric | RPi4 | RPi3 | JNano | Units |
---|---|---|---|---|
Disk_ReadData | 9745.44 | 1604.88 | 2058.76 | bytes per hour |
Disk_WriteData | 11,495.96 | 2534.52 | 353.64 | bytes per hour |
Network_InboundTraffic | 1573.60 | 68.13 | 68.17 | bytes per hour |
Network_OutboundTraffic | 2123.52 | 68.24 | 68.44 | bytes per hour |
Memory_Allocated | 3290.40 | 316.84 | 241.67 | bytes per hour |
Memory_AllocatedTotal | 4.11 | 3.17 | 6.04 | % |
CPU_ProcessesTime | 1.55 | 3.58 | 2.03 | % |
Name | Send Rate (TPS) | Max Latency (s) | Min Latency (s) | Avg Latency (s) |
---|---|---|---|---|
25 TPS | 25.0 | 7.43 | 2.09 | 4.72 |
50 TPS | 50.1 | 7.71 | 2.15 | 4.90 |
100 TPS | 99.0 | 9.44 | 2.71 | 6.50 |
Name | Throughput (TPS) | CPU% (Peak) | CPU% (Avg) |
---|---|---|---|
25 TPS | 21.8 | 29.33 | 21.03 |
50 TPS | 41.1 | 50.33 | 23.84 |
100 TPS | 73.3 | 100 | 42.6 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Guerra, J.A.; Guerrero, J.I.; García, S.; Domínguez-Cid, S.; Larios, D.F.; León, C. Design and Evaluation of a Heterogeneous Lightweight Blockchain-Based Marketplace. Sensors 2022, 22, 1131. https://doi.org/10.3390/s22031131
Guerra JA, Guerrero JI, García S, Domínguez-Cid S, Larios DF, León C. Design and Evaluation of a Heterogeneous Lightweight Blockchain-Based Marketplace. Sensors. 2022; 22(3):1131. https://doi.org/10.3390/s22031131
Chicago/Turabian StyleGuerra, Javier Antonio, Juan Ignacio Guerrero, Sebastián García, Samuel Domínguez-Cid, Diego Francisco Larios, and Carlos León. 2022. "Design and Evaluation of a Heterogeneous Lightweight Blockchain-Based Marketplace" Sensors 22, no. 3: 1131. https://doi.org/10.3390/s22031131
APA StyleGuerra, J. A., Guerrero, J. I., García, S., Domínguez-Cid, S., Larios, D. F., & León, C. (2022). Design and Evaluation of a Heterogeneous Lightweight Blockchain-Based Marketplace. Sensors, 22(3), 1131. https://doi.org/10.3390/s22031131