|Consortium||Johannes Kepler Universität Linz, Siemens AG Deutschland|
This industrial research project with Siemens AG Germany provides a basis for situated spontaneous interaction of mobile devices in decentralized ad-hoc scenarios.
With the mobility of user gadgets and the increasing pervasiveness of computing-power enabled devices, the unplanned encountering of other previously unknown objects is gaining more and more importance and requires new ways for supporting the interaction between and with these devices and collections of such devices.
In the Autonomic Peer Systems project, we are investigating technologies and architectures for decentralized, shared-nothing spontaneous interaction between devices, humans and the environment, the autonomy and self-description of such devices and how to interact with groups of such entities (ensembles). Interaction is situated, which means that it is influenced by environmental parameters (the current context) of an interaction entity. It is moreover personalized regarding the interaction partners and is achieved decentralized and autonomously; each entity acts on its own and an intermediary interaction coordinator is not required. We use xml-encoded profiles for the self-description containing interests, intentions, capabilities and requirements of each entity. The self-description is exchanged upon encountering other entities (optionally within a defined spatial geometry), matched against each other and finally filtered/modified by the current context of an entity.
We have implemented a generic framework for peer-to-peer interaction among autonomous entities, supporting various technologies for communication, the detection of proximity of devices and the interaction with passive objects equipped with object identification technologies. The framework is designed layer oriented and consists of several individual OSGi software components. Starting with the Transport-Layer that is responsible for communication with other devices using various communication technologies (optionally simultaneously), the Peer-Service component is responsible for the management of the availability of peers and transparent messaging between peers. The Object-Peer Handling part of the Peer-Service is responsible for the transparent integration of resourceless "object-peers" (regarding computing-power means for storage and communication) as if they were ordinary pees by utilizing proxy-peers that interacts on behalf of defined object-peers. The Ports-Service provides means for ad-hoc remote method invocation instead of interaction using messages. The Profile-Service is responsible for the self-description and its exchange of/between peers. Security Support provides the framework and applications on top of it with means for authentication and encryption. The PML-Integration component allows to include Product-Markup-Language specifications into the Self-description of a peer upon it is attached to a PML enabled entity. The Self-configuration component is responsible for adopting the profile as well as various runtime aspects of a peer using Event-Condition-Action rules. Finally, the Bundle Repository and Exchange components provides means for the transfer of components between peers at runtime.