Distribution is increasingly becoming an important issue in both enterprise applications and mobile computing. OSGi itself has only rudimental support for distribution, in forms of interfaces for interaction with Jini (R3) or UPnP (R3 + R4) infrastructures. When it comes to interconnecting different OSGi frameworks, there are only few solutions so far.
In this talk, we present these existing solutions and compare the different approaches with our own R-OSGi. The goal of our open source project is to provide a seamless and non-invasive middleware for accessing remote services in OSGi frameworks. We explain the basic design principles of R-OSGi, such as transparent service access and spontaneous interaction, and briefly mention the internal structure and techniques used in R-OSGi, such as service discovery and smart proxies.
Different communication patterns and ways of interaction are taken into account. We cover both client/server applications and peer to peer setups where each peer can provide and consume services. The scope of the technology ranges from small mobile and embedded devices, typically within personal area networks (PANs) up to large-scale applications interconnected by global networks. Using example deployments of R-OSGi, e.g. sensor networks and a fluid computing middleware (flowSGi), we give attendees the opportunity to get an idea how the access of external OSGi services can be integrated into existing systems. We will furthermore explore how the different forms of communication can be modeled and how distributed OSGi can help to develop future mobile and network-based applications.
Jan S. Rellermeyer joined the Information and Communication Systems Research Group of Prof. Gustavo Alonso at ETH Zurich in May 2006 after he received his MSc in Distributed Systems from ETH. He already worked in a couple of OSGi-related research and open-source projects before, e.g., the Jadabs project and the Maven (1.x) OSGi Plugin. His research focus is on OSGi in distributed systems and fluid computing. Often, he works with mobile or embedded devices and in highly dynamic network environments. On of the challenges he tackles in his research projects is the federation of ubiquitous devices and the development of middleware for creating mobile and collaborative applications.