ISSN 1000-1239 CN 11-1777/TP

Journal of Computer Research and Development ›› 2014, Vol. 51 ›› Issue (9): 2046-2057.doi: 10.7544/issn1000-1239.2014.20130058

Previous Articles     Next Articles

Self Stabilizing Distributed Transactional Memory Model and Algorithms

Lin Fei1, Sun Yong2, Ding Hong1, Ren Yizhi1   

  1. 1(School of Software Engineering, Hangzhou Dianzi University, Hangzhou 310018) ;2(Department of Information Technology, Zhejiang Institute of Communications, Hangzhou 311112)
  • Online:2014-09-01

Abstract: Aiming at the issue of transient fault tolerance in distributed system while taking into account the system's robustness and scalability, a self-stabilizing distributed transactional memory model, called SSDTM, is proposed. Firstly, the model frame is constructed by layered technology and collateral composition theory, which includes spanning tree layer, objects location layer, transaction proxy layer and application layer. Furthermore, the spanning tree algorithm is improved in self-stabilizing way, which can solve deficiencies of being only adaptive to stable environments based on existing methods. Then, data object manipulation algorithms are designed, which utilize data stream paradigm and self-stabilizing theory for locating objects and enhancing data access locality, and ensure mutually exclusive access to objects in distributed system with transient faults. Moreover, after building the transaction service model that defines the basic types of memory transaction states and operations, the concurrency control algorithms based on the improved logic clock are given. Finally, combining theoretical derivation and instance verification, the performance of SSDTM is verified and analyzed through multi-angle large-scale virtual tests based on 4 classical benchmarks in SimJava environment. Experimental results show that the algorithms presented in the paper exhibit good robustness and applicability, and SSDTM has higher system throughput and better fault-tolerance compared with other models under the same conditions.

Key words: self stabilization, transactional memory, transient fault, spanning tree, ballistic target, logical clock

CLC Number: