This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments
July 2003 (vol. 52 no. 7)
pp. 943-959

Abstract—This paper presents the design, implementation, and evaluation of the replication framework of Deno, a decentralized, peer-to-peer object-replication system targeted for weakly connected environments. Deno uses weighted voting for availability and pair-wise, epidemic information flow for flexibility. This combination allows the protocols to operate with less than full connectivity, to easily adapt to changes in group membership, and to make few assumptions about the underlying network topology. We present two versions of Deno's protocol that differ in the consistency levels they support. We also propose security extensions to handle a class of malicious actions that involve misrepresentation of protocol information. Deno has been implemented and runs on top of Linux and Win32 platforms. We use the Deno prototype to characterize the performance of the Deno protocols and extensions. Our study reveals several interesting results that provide fundamental insight into the benefits of decentralization and the mechanics of epidemic protocols.

[1] A. El Abbadi and S. Toue.g., "Availability in Partitioned Replicated Databases (extended abstract)," Proc. Fifth ACM Symp. Principles of Database Systems, pp. 240-251, Mar. 1986.
[2] D. Agrawal and A.E. Abbadi, An Efficient and Fault-Tolerant Solution for Distributed Mutual Exclusion ACM Trans. Computing Systems, vol. 9, no. 1, pp. 1-20, 1991.
[3] D. Agrawal, A. El Abbadi, and R.C. Steinke, “Epidemic Algorithms in Replicated Databases,” Proc. 16th Symp. Database Systems (PODS), pp. 161-172, 1997.
[4] Y. Amir and A. Wool, Optimal Availability Quorum Systems: Theory and Practice Information Processing Letters, vol. 65, pp. 223-228, Apr. 1998.
[5] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[6] P. Bober and M. Carey, Multiversion Query Locking Proc. 18th Conference on Very Large Databases, 1992.
[7] Y. Breitbart, R. Komondoor, R. Rastogi, S. Seshadri, and A. Silberschatz, “Update Propagation Protocols For Replicated Databases,” Proc. ACM SIGMOD Int'l Conf. Management of Data, SIGMOD Record, vol. 28, no. 2, June 1999.
[8] M. Castro and B. Liskov, Practical Byzantine Fault Tolerance Proc. Third Symp. Operating Systems Design and Implementation, 1999.
[9] U. Cetintemel and P.J. Keleher, Light-Weight Currency Management Mechanisms in Deno Proc. 10th IEEE Workshop Research Issues in Data Eng., Feb. 2000.
[10] U. Cetintemel and P.J. Keleher, Performance of Mobile, Single-Object Replication Protocols Proc. 19th IEEE Symp. Reliable Distributed Systems, 2000.
[11] U. Cetintemel, P.J. Keleher, and B. Bhattacharjee, A Security Infrastructure for Mobile Transactional Systems Univ. of Maryland, UMIACS-TR-2000-59, 2000.
[12] U. Cetintemel, P.J. Keleher, and M.J. Franklin, Support for Speculative Update Propagation and Mobility in Deno Univ. of Maryland, UMIACS-TR-99-70, Oct. 1999.
[13] U. Cetintemel, P.J. Keleher, and M.J. Franklin, Support for Speculative Update Propagation and Mobility in Deno Proc. IEEE Int'l Conf. Distributed Computing Systems, 2001.
[14] U. Cetintemel, B. Ozden, M.J. Franklin, and A. Silberschatz, Design and Evaluation of Token Redistribution Strategies for Wide-Area Commodity Distribution Proc. IEEE Int'l Conf. Distributed Computing Systems, 2001.
[15] L. Cranor and R. Cryton, Sensus: A Security-Conscious Electronic Polling Scheme for the Internet Proc. Hawai Int'l Conf. System Sciences, 1997.
[16] S.B. Davidson, H. Garcia-Molina, and D. Skeen, "Consistency in Partitioned Networks," ACM Computing Surveys, vol. 17, no. 3, pp. 341-370, Sept. 1985.
[17] A. Demers, D. Greene, C. Hauser, W. Irish, J. Larson, S. Shenker, H. Sturgis, D. Swinehart, and D. Terry, Epidemic Algorithms for Replicated Database Maintenance Proc. Sixth ACM Symp. Principles of Distributed Computing, 1987.
[18] A. Fujioka, T. Okamoto, and K. Ohta, A Practical Secret Voting Scheme for Large-Scale Elections Advances in Cryptology, 1992.
[19] H. Garcia-Molina and G. Wiederhold, Read-Only Transactions in a Distributed Database System ACM Trans. Database Systems, vol. 7, no. 2, pp. 209-234, June 1982.
[20] D.K. Gifford, “Weighted Voting for Replicated Data,” Proc. Seventh ACM SIGOPS Symp. Operating Systems Principles, pp. 150-159, Dec. 1979.
[21] J. Gray, P. Helland, P. O'Neil, and D. Shasha, “The Dangers of Replication and a Solution,” Proc. 1996 ACM SIGMOD Conf. Management of Data, SIGMOD Record, pp. 173-182, June 1996.
[22] J. Holliday, R. Steinke, D. Agrawal, and A.E. Abbadi, Epidemic Quorums for Managing Replicated Data Proc. 19th IEEE Int'l Performance, Computing, and Comm. Conf., 2000.
[23] S. Jajodia and D. Mutchler, “Dynamic Voting Algorithms for Maintaining the Consistency of a Database,” ACM Trans. Data Systems, vol. 15, no. 2, pp. 230-280, June 1990.
[24] L. Kawell, S. Beckhardt, T. Halvorsen, R. Ozie, and L. Greif, Replicated Document Management in a Group Communication System Proc. Conf. Computer Supported Cooperative Work, 1988.
[25] P.J. Keleher, Decentralized Replicated-Object Protocols Proc. 18th ACM Symp. Principles of Distributed Computing, May 1999.
[26] R. Ladin, B. Liskov, L. Shrira, and S. Ghemawat, "Providing High Availability Using Lazy Replication," ACM Trans. Computer Systems, vol. 10, no. 4, pp. 360-391, Nov. 1992.
[27] D. Malkhi, Y. Mansour, and M. Reiter, On Diffusing Updates in a Byzantine Environment Proc. 18th IEEE Symp. Reliable Distributed Systems, 1999.
[28] F. Mattern, Virtual Time and Global States of Distributed Systems Parallel and Distributed Algorithms, 1989.
[29] T.W. Page, R.G. Guy, J.S. Heidemann, D. Ratner, P. Reiher, A. Goel, G.H. Kuenning, and G.J. Popek, Perspectives on Optimistically Replicated Peer-to-Peer Filing Software: Practice and Experience, vol. 28, no. 2, pp. 155-180, Feb. 1998.
[30] D. Peleg and A. Wool, The Availability of Quorum Systems Information and Computation, vol. 123, no. 2, pp. 210-223, 1995.
[31] M.K. Reiter, Secure Agreement Protocols: Reliable and Atomic Group Multicast in Rampart Proc. Second ACM Conf. Computer and Comm. Security, 1994.
[32] O. Rodeh, K.P. Berman, M. Hayden, Z. Xiao, and D. Dolev, Ensemble Security Cornell Univ. TR-98-1703, 1998.
[33] M. Stonebraker, Concurrency Control and Consistency of Multiple Copies of Data in Distributed INGRES IEEE Trans. Software Eng., vol. 5, no. 3, pp. 188-194, May 1979.
[34] D.B. Terry, M.M. Theimer, K. Petersen, A.J. Demers, M.J. Spreitzer, and C.H. Hauser, Managing Update Conflicts in a Weakly Connected Replicated Storage System Proc. ACM Symp. Operating Systems Principles, 1995.
[35] R.H. Thomas, “A Majority Consensus Approach to Concurrency Control,” ACM Trans. Database Systems, vol. 4, no. 2, pp. 180-209, June 1979.

Index Terms:
Data replication, epidemic protocols, peer-to-peer systems, weak consistency, voting.
Citation:
Ugur ?etintemel, Peter J. Keleher, Bobby Bhattacharjee, Michael J. Franklin, "Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments," IEEE Transactions on Computers, vol. 52, no. 7, pp. 943-959, July 2003, doi:10.1109/TC.2003.1214342
Usage of this product signifies your acceptance of the Terms of Use.