Performance Analysis and Design of an IoT-Friendly DAG-based Distributed Ledger System


Distributed ledgers provide many advantages over centralized solutions in IoT projects including but not limited to improved security, transparency and fault tolerance. However, in order to leverage them at scale, their well-known limitations, i.e., scalability and performance, should be adequately addressed. DAG-based distributed ledgers have been proposed to tackle the performance and scalability issues by design. The first among them, IOTA, has shown promising signs in terms of scalability and performability. In this thesis, we first conduct a comprehensive literature review on both distributed ledger technology applications in IoT and the performance evaluation of such decentralized systems. Then we present a detailed technical overview of IOTA, following a contractive review of different DAG-based distributed ledger technologies. Next, we propose a scalable transactive smart homes infrastructure by leveraging IOTA protocol and following the separation of concerns (SOC) design principle. Based on the proposed solution, an experiment with 40 home nodes is conducted to prove the concept at large scale in a cloud environment. The results show that our solution provides a high transaction speed and scalability, as well as good performance on micropayment which is important in IoT initiatives. We conduct an analysis and discuss how the new system breaks out the Blockchain Trilemma, which claims that it is almost impossible for a blockchain platform to simultaneously reach decentralization, scalability and security. Based on our findings on scalability and performance, we conclude that the proposed DAG-based distributed ledger is an effective solution for building an IoT infrastructure for smart communities, in which local residents can freely and securely transfer values. Finally, we rigorously study the performance of the ledger to examine its applicability for IoT projects in which a high throughput is required. More specifically, we investigate the IOTA system to answer two key research questions 1) what is the confirmation rate in the system given the design parameters and 2) what will be the optimal waiting time for a user to resend its previously submitted but not yet confirmed transaction to the ledger? In order to answer these vital questions, we perform real experimentation, simulation and analytical modeling. Our findings reveal the impact of arrival rate of transactions, consensus algorithm, randomness of the weighted random walk for tip selection and network delay on the confirmation rate. By decomposing the transaction confirmations in each graph layer, we build an analytical layered model. Thanks to the analytical modeling, we shed some light on the distribution of confirmation process, which is leveraged to calculate the optimal time for resending the unconfirmed transaction to the distributed ledger. Our performance model can be used by IoT project designers to perform what-if analysis and capacity planning in advance of the real deployments, with high level of accuracy.

In MSc Thesis
Caixiang Fan
Caixiang Fan
PhD Candidate, Blockchain Researcher

My research interests include blockchain, IoT and performance modelling.