As blockchain technology mature, private blockchain network deployment has become increasingly feasible and desirable, especially for enterprise and Internet of Things use cases. Deploying private blockchain networks allows organizations to assert finer control over how these networks perform and behave. Such a degree of control, however, presents architects with a barrage of new design decisions that determine important network qualities such as performance, security, and governance. Moreover, network qualities play a dominating role in how the software deployed on a blockchain network (i.e., smart contracts) performs and behaves. Thus, it is beneficial to be able to quickly deploy and benchmark prototype networks to gather empirical evidence about the quality of network design for further refinement. In this paper, we propose an automation framework called NVAL that takes a representation of a blockchain network as an input, assesses it for consistency and feasibility, plans, and executes a sequence of actions that deploy the prescribed blockchain network on a designated hardware infrastructure and, optionally, evaluate it. In order to carry out this task, NVAL employs a novel graph-based blockchain model to describe the architecture of blockchain networks, a two-phase search mechanism for planning, and a system architecture that facilitates the extensibility of the capabilities making up the framework. We have developed and employed a proof-of-concept of NVAL to test a network design hypothesis and share the findings and experiences as parts of a demonstrative case study.
- Nguyen Khoi Tran
- Liuyue (William) Jiang