A Generic Self-repair Approach for Overlays

  • Barry Porter
  • Geoff Coulson
  • François Taïani
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4278)

Abstract

Self-repair is a key area of functionality in overlay networks, especially as overlays become increasingly widely deployed and relied upon. Today’s common practice is for each overlay to implement its own self-repair mechanism. However, apart from leading to duplication of effort, this practice inhibits choice and flexibility in selecting from among multiple self-repair mechanisms that make different deployment-specific trade-offs between dependability and overhead. In this paper, we present an approach in which overlay networks provide functional behaviour only, and rely for their self-repair on a generic self-repair service. In our previously-published work in this area, we have focused on the distributed algorithms encapsulated within our self-repair service. In this paper we focus instead on API and integration issues. In particular, we show how overlay implementations can interact with our generic self-repair service using a small and simple API. We concretise the discussion by illustrating the use of this API from within an implementation of the popular Chord overlay. This involves minimal changes to the implementation while considerably increasing its available range of self-repair strategies.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: Proceedings of the 2001 conference on applications, technologies, architectures, and protocols for computer communications, pp. 149–160. ACM Press, New York (2001)CrossRefGoogle Scholar
  2. 2.
    Jannotti, J., et al.: Overcast: Reliable multicasting with an overlay network. In: Proceedings of the Fourth Symposium on Operating System Design and Implementation (OSDI), pp. 197–212 (2000)Google Scholar
  3. 3.
    Porter, B., Taïani, F., Coulson, G.: Generalized repair for overlay networks. In: Proceedings of the Symposium on Reliable Distributed Sytems, Leeds, UK (2006)Google Scholar
  4. 4.
    Porter, B., Coulson, G., Hughes, D.: Intelligent dependability services for overlay networks. In: Eliassen, F., Montresor, A. (eds.) DAIS 2006. LNCS, vol. 4025, pp. 199–212. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Mathy, L., Canonico, R., Hutchison, D.: An overlay tree building control protocol. In: Crowcroft, J., Hofmann, M. (eds.) NGC 2001. LNCS, vol. 2233, p. 76. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  6. 6.
    (Gridkit middleware public release), https://sourceforge.net/projects/gridkit/
  7. 7.
    Kiczales, G., Lamping, J.: Operating systems: Why object-oriented? In: Hutchinson, L.F.C., Norman (eds.) The Third International Workshop on Object-Orientation in Operating Systems, Asheville, North Carolina, pp. 25–30 (1993)Google Scholar
  8. 8.
    Killijian, M., Fabre, J., Ruiz-García, J., Shiba, S.: A metaobject protocol for fault-tolerant CORBA applications. In: 17th IEEE Symposium on Reliable Distributed Systems (SRDS-17), West Lafayette (USA), pp. 127–134 (1998)Google Scholar
  9. 9.
    Ganek, A., Corbi, T.: The dawning of the autonomic computing era. IBM Systems Journal 42(1), 5–19 (2003)CrossRefGoogle Scholar
  10. 10.
    Li, B., Guo, J., Wang, M.: iOverlay: A lightweight middleware infrastructure for overlay application implementations. In: Proceedings of IFIP/ACM/USENIX Middleware, Toronto, Canada (2004)Google Scholar
  11. 11.
    Rodriguez, A., et al.: Macedon: Methodology for automatically creating, evaluating, and designing overlay networks. In: Proceedings of the Symposium on Networked Systems Design and Implementation (NSDI), San Francisco, USA (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Barry Porter
    • 1
  • Geoff Coulson
    • 1
  • François Taïani
    • 1
  1. 1.Computing DepartmentLancaster UniversityLancasterUK

Personalised recommendations