A Decentralized Redeployment Algorithm for Improving the Availability of Distributed Systems

  • Sam Malek
  • Marija Mikic-Rakic
  • Nenad Medvidovic
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3798)


In distributed and mobile environments, the connections among the hosts on which a software system is running are often unstable. As a result of connectivity losses, the overall availability of the system decreases. The distribution of software components onto hardware nodes (i.e., the system’s deployment architecture) may be ill-suited for the given target hardware en-vironment and may need to be altered to improve the software system’s avail-ability. Determining a software system’s deployment that will maximize its availability is an exponentially complex problem. Although several polyno-mial-time approximative techniques have been developed recently, these techniques rely on the assumption that the system’s deployment architecture and its properties are accessible from a central location. For these reasons, the existing techniques are not applicable to an emerging class of decentralized systems marked by the limited system wide knowledge and lack of central-ized control. In this paper we present an approximative solution for the rede-ployment problem that is suitable for decentralized systems and assess its performance.


Software Component Centralize Algorithm Sweet Spot Target Hardware Shared Data Structure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bastarrica, M.C., et al.: A Binary Integer Programming Model for Optimal Object Distribu-tion. In: 2nd Int’l. Conf. on Principles of Distributed Systems, Amiens, France (December 1998)Google Scholar
  2. 2.
    Fuggetta, A., Picco, G.P., Vigna, G.: Understanding Code Mobility. IEEE Trans. on Soft-ware Engineering (May 1998)Google Scholar
  3. 3.
    Ganesh, A.J., Kermarrec, A., Massoulie, L.: Peer-to-Peer Membership Management for Gos-sip-Based Protocols. IEEE Transactions on Computers 52, 139–149 (2003)CrossRefGoogle Scholar
  4. 4.
    Garlan, D., et al.: Using Gauges for Architecture-Based Monitoring and Adaptation. In: Work-ing Conf. on Complex and Dynamic Systems Arch., Brisbane, Australia (December 2001)Google Scholar
  5. 5.
    Gifford, D.K.: Weighted Voting for Replicated Data. In: Proceedings of the 7th Symposium on Operating System Principles, New York, pp. 150–162 (1979)Google Scholar
  6. 6.
    Hardekopf, B., et al.: A Decentralized Voting Algorithm for Increasing Dependability inDistributed Systems. In: 5th World Multi- Conference on Systemic, Cybernetics and Informat-ics, (SCI 2001) (2001)Google Scholar
  7. 7.
    Hunt, G., Scott, M.: The Coign Automatic Distributed Partitioning System. In: 3rd Sympo-sium on Operating System Design and Implementation, New Orleans, LA (February 1999)Google Scholar
  8. 8.
    IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries, New York, NY (1990)Google Scholar
  9. 9.
    Jia, W., Kaiser, J., Nett, E.: An Efficient and Reliable Group Multicast Protocol. In: Second International Symposium on Autonomous Decentralized Systems. Phoenix, Arizona (April 1995)Google Scholar
  10. 10.
    Johnson, B.: Design and Analysis of Fault Tolerant Digital Systems. Addison-Wesley, Reading (1989)Google Scholar
  11. 11.
    Kichkaylo, T., et al.: Constrained Component Deployment in Wide-Area Networks Using AIPlanning Techniques. In: Int’l. Parallel and Distributed Processing Symposium (April 2003)Google Scholar
  12. 12.
    Kieckhafer, R., Walter, C., Finn, A., Thambidurai, P.: The MAFT Architecture for Distributed Fault Tolerance. IEEE Transactions On Computers 37(4), 398–405 (1988)CrossRefGoogle Scholar
  13. 13.
    Kreps, D.: Game Theory and Economic Modeling. Clarendon Press, Oxford (1990)CrossRefGoogle Scholar
  14. 14.
    Lee, E.A.: Embedded software. Advances in Computers 56 (2002)Google Scholar
  15. 15.
    Malek, S., Mikic-Rakic, M., Medvidovic, N.: Prism-MW: A Style-Aware ArchitecturalMiddleware for Resource Constrained, Distributed Systems. IEEE Trans. on Software Engineering 31(3) (March 2005)Google Scholar
  16. 16.
    Medvidovic, N., et al.: Software Architectural Support for Handheld Computing. IEEE Computer (September 2003)Google Scholar
  17. 17.
    Mikic-Rakic, M., et al.: A Tailorable Environment for Assessing the Quality of DeploymentArchitectures in Highly Distributed Settings. In: Emmerich, W., Wolf, A.L. (eds.) CD 2004. LNCS, vol. 3083, pp. 1–17. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  18. 18.
    Mikic-Rakic, M., et al.: Improving Availability in Large, Distributed, Component-BasedSystems via Redeployment. In: Dearle, A., Eisenbach, S. (eds.) CD 2005. LNCS, vol. 3798, pp. 83–98. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  19. 19.
    Mikic-Rakic, M., Medvidovic, N.: Software Architectural Support for DisconnectedOperation in Highly Distributed Environments. In: International Symposium on Component-based Software Engineering (CBSE7), Edinburgh, UK (May 2003)Google Scholar
  20. 20.
    Oreizy, P., et al.: Architecture-Based run-time Software Evolution. In: ICSE 1998, Kyoto, Japan (April 1998)Google Scholar
  21. 21.
    Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach. Prentice Hall, Englewood Cliffs (1995)zbMATHGoogle Scholar
  22. 22.
    Tanenbaum, A.: Computer Networks. Prentice Hall, Englewood CliffsGoogle Scholar
  23. 23.
    Waldpurger, C.A., et al.: Spawn. A Distributed Computational Economy. IEEE Trans. on Software Engineering (February 1992)Google Scholar
  24. 24.
    Weissman, J.: Fault-Tolerant Wide-Area Parallel Computing. In: IPDPS 2000 Workshop, Can-cun, Mexico (May 2000)Google Scholar
  25. 25.
    Weinsberg, Y., Ben-Shaul, I.: A Programming Model and System Support for Discon-nected-Aware Applications on Resource-Constrained Devices. In: ICSE 2002, Orlando, FL (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Sam Malek
    • 1
    • 3
  • Marija Mikic-Rakic
    • 2
  • Nenad Medvidovic
    • 1
  1. 1.Computer Science DepartmentUniversity of Southern CaliforniaLos AngelesUSA
  2. 2.Google Inc.Santa MonicaUSA
  3. 3.The Boeing CompanyHuntington BeachUSA

Personalised recommendations