Brokering Planning Metadata in a P2P Environment
In self-adaptive systems, metadata about resources in the system (e.g., services, nodes) must be dynamically published, updated, and discarded. Current adaptive middleware approaches use statically configured, centralized repositories for storing and retrieving of such metadata. In peer-to-peer (P2P) environments, we can not assume the existence of server nodes that are always available for hosting such centralized services. However, the metadata repository is the keystone of the adaptation middleware and the consistency of adaptations relies on its reliability.
To address this limitation in our QuA planning-based adaptation middleware, we introduce a P2P broker, which is a metadata advertisement service based on P2P technology. This P2P broker can be plugged into the QuA middleware to support the construction of self-adaptive applications in a P2P environment. We use a structured P2P protocol that distributes the service metadata over a set of nodes based on service type and property information. The P2P broker is therefore capable of handling node failures by providing replication of the metadata. We present a working prototype of the P2P broker as well as results from initial experiments. These results show that the metadata distributes well over the nodes in the network, thus enabling scalability and robustness to node failures.
KeywordsPeer-to-peer systems resource brokering self-adaptive middleware service planning
- 1.Eliassen, F., Gjørven, E., Eide, V.S.W., Michaelsen, J.A.: Evolving Self-Adaptive Services using Planning-Based Reflective Middleware. In: 5th Int. Middleware Workshop on Adaptive and Reflective Middleware (ARM). AICPS, vol. 190, p. 6. ACM, New York (2006)Google Scholar
- 3.Bracha, G., Ungar, D.: Mirrors: Design Principles for Meta-level Facilities of Object-Oriented Programming Languages. In: 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Vancouver, BC, Canada, pp. 331–344. ACM, New York (2004)CrossRefGoogle Scholar
- 4.Sun Microsystems: Jini Architecture Specifications - v2.1 (2005), http://www.sun.com/software/jini/specs
- 5.Bearman, M.: Tutorial on ODP Trading Function. Faculty of Information Sciences Engineering. University of Canberra, Australia (February 1997)Google Scholar
- 6.OASIS: UDDI Version 3.0.2 (February 2005), http://uddi.xml.org
- 7.Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: Int. Conference on Applications, technologies, architectures, and protocols for computer communications (SIGCOMM), San Diego, CA, USA, pp. 149–160. ACM, New York (2001)Google Scholar
- 8.Sun Microsystems: JXTA Protocol Specification - v2.0. 2.5.3 edn. (October 2007), https://jxta-spec.dev.java.net
- 10.Ratnasamy, S., Francis, P., Handley, M., Karp, R., Schenker, S.: A scalable content-addressable network. In: Int. Conference on Applications, technologies, architectures, and protocols for computer communications (SIGCOMM), San Diego, CA, USA, pp. 161–172. ACM Press, New York (2001)Google Scholar
- 13.Zhao, B.Y., Huang, L., Stribling, J., Rhea, S.C., Joseph, A.D., Kubiatowicz, J.: FreePastry. Rice University, Houston, USA. and Max Plank Institute for Software Systems, Saarbrucken, Germany, http://freepastry.org