| Literature DB >> 35161877 |
Javier Antonio Guerra1, Juan Ignacio Guerrero1,2, Sebastián García1, Samuel Domínguez-Cid1, Diego Francisco Larios1,2, Carlos León1.
Abstract
The proposal of this paper is to introduce a low-level blockchain marketplace, which is a blockchain where participants could share its power generation and demand. To achieve this implementation in a secure way for each actor in the network, we proposed to deploy it over efficient and generic low-performance devices. Thus, they are installed as IoT devices, registering measurements each fifteen minutes, and also acting as blockchain nodes for the marketplace. Nevertheless, it is necessary that blockchain is lightweight, so it is implemented as a specific consensus protocol that allows each node to have enough time and computer requirements to act both as an IoT device and a blockchain node. This marketplace will be ruled by Smart Contracts deployed inside the blockchain. With them, it is possible to make registers for power generation and demand. This low-level marketplace could be connected to other services to execute matching algorithms from the data stored in the blockchain. Finally, a real test-bed implementation of the marketplace was tested, to confirm that it is technically feasible.Entities:
Keywords: Internet of Things; blockchain; marketplace
Mesh:
Year: 2022 PMID: 35161877 PMCID: PMC8840334 DOI: 10.3390/s22031131
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Nodes in a decentralized network.
Figure 2Marketplace scheme.
Specifications of the selected devices.
| RPi3 | RPi4 [ | JNano [ | |
|---|---|---|---|
| CPU | Quad-core ARM | Quad-core ARM | Quad-core ARM |
| Memory | 1 GB LPDDR2 | 8 GB LPDDR4 | 4 GB LPDDR4 |
| Power mean | 2.1 W | 2.56 W | 5 W |
Figure 3Proposed network scheme.
Figure 4Marketplace-tested devices: up: switch; bottom-left: JNano; bottom-middle: RPi3; bottom-right: RPi4.
Figure 5Example of the registerProsumer function inside one of the Smart Contracts.
Metrics of the implemented blockchain by node.
| 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 | % |
Figure 6Comparison of disk usage metric between the proposed marketplace and an analogue blockchain over a PC.
Figure 7Comparison of the memory allocation metric between the proposed marketplace and an analogue blockchain over a PC.
Figure 8Comparison of CPU usage metric between the proposed marketplace and an analogue blockchain over a PC.
Benchmarks on RPi3: send rate and latencies in seconds (s).
| 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 |
Benchmarks over RPi3: throughput, CPU usage peak, and CPU usage average.
| 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 |
Figure 9Percentage of CPU used for RPi3 and number of transactions per second.
Figure 10RPi3 CPU temperatures in different scenarios.
Figure 11RPi3 power consumption in different scenarios.