A Light-Weight Component Model for Peer-to-Peer Applications
A. Ferscha, M. Hechinger, R. Mayrhofer, R. Oberhauser - A Light-Weight Component Model for Peer-to-Peer Applications - 2nd International Workshop on Mobile Distributed Computing, Tokyo, Japan, 2004, pp. 520-527
Mobile Peer-to-Peer (P2P) computing applications involve collections of heterogeneous and resource-limited devices (such as PDAs or embedded sensor-actuator systems), typically operated in ad-hoc completely decentralized networks and without requiring dedicated infrastructure support. Short-range wireless communication technologies together with P2P networking capabilities on mobile devices are responsible for a proliferation of such applications, yet these applications are often complex and monolithic in nature due to the lack of lightweight component/container support in these resource-constrained devices. In this paper we describe our lightweight software component model P2Pcomp that addresses the development needs for mobile P2P applications. An abstract, flexible, and high-level communication mechanism among components is developed via a ports concept, supporting protocol independence, location independence, and (a)synchronous invocations; dependencies are not hard-coded in the components, but can be defined at deployment or runtime, providing late-binding and dynamic rerouteability capabilities. Peers can elect to provide services as well as consume them, services can migrate between containers, and services are ranked to support Quality-of-Service choices. Our lightweight container realization leverages the OSGi platform and can utilize various P2P communication mechanisms such as JXTA. A â€œsmart spaceâ€ application scenario demonstrates how P2Pcomp supports flexible and highly tailorable mobile P2P applications.