Consensus in Smart Computing Systems
Zhiwei Yang, Weigang Wu, Huaguan Li, Yu Zhou · 2017
A smart computing system is usually composed of smart mobile nodes, such as mobile phones and/or sensor nodes. In this paper, we study the consensus problem in a smart computing system, which has many applications in smart computing, such as smart grid. Due to mobility and failures, smart computing nodes may join and leave a system from time to time. Such dynamicity in node set of a smart computing system brings new challenges in consensus protocol design. A process newly joining the system may miss messages sent out before the joining, which will cause existing consensus algorithms blocked forever and cannot terminate. Process leave may cause the value of previous decision lost, which will make existing consensus algorithms decide on multiple values and violate the agreement property. To address such challenges, we firstly define necessary dynamicity model to constrain the change of process set, and then design a dynamic consensus algorithm which can handle process join and leave effectively via two novel mechanisms. The first mechanism lets old processes send redeeming messages to new processes, while the second one lets processes jump to higher rounds under some specific scenarios. The correctness of our proposed algorithm is rigorously proved, in terms of termination, agreement and validity.