by Valerie Issarny, Nikolaos Georgantas and Sonia Ben Mokhtar
With computing and communication capabilities now embedded in more and more physical objects in the surrounding environment and with most users carrying wireless computing devices, the pervasive computing vision pioneered by Mark Weiser is being realised more than ever. Nevertheless, such an abundance of ambient capabilities in the open, dynamic pervasive environment naturally comes with high heterogeneity, which hinders their ad hoc integration into rich pervasive applications. Within the INRIA ARLES team, we are investigating efficient solutions to pervasive heterogeneity building upon semantic service-oriented architectures.
Various pervasive applications may be provided in today's networked environments. Figure 1 illustrates exploitation of the networked devices to create smart spaces for users. In such an environment, the nomadic user may, in particular, benefit from a large display nearby to watch multimedia content provided by a local media server. The content will automatically be switched to the user's smart phone display as soon as other users get close, to preserve the user's privacy. This application may further be extended to share experiences with others. For instance, assume that the user is actually in a holiday resort, watching an advertisement for available excursions. The user may wish to get feedback about the excursion, which may be obtained through blogs supplied by other nearby visitors on their handhelds and/or the Internet. The user may even wish to look at alternative excursions, whether advertised at nearby resorts, at tourist information offices or even on the Internet. Actuator resources such as displays and software resources such as blogs, multimedia streams and advertisements on the Web, all constitute networked capabilities that may conveniently be combined to dynamically create a pervasive application providing a holiday planner for nomadic users.
Pervasive computing environments, like the one shown above, embed networked devices, possibly wireless, from various application domains, eg, mobile and personal computing, consumer electronics, and home automation domains. This diversity of devices, along with those of networks and of software infrastructures, call for computing paradigms that enable loose, dynamic coupling among heterogeneous resources. Service-oriented architectures (SOA) have emerged as an appropriate computing paradigm resolving a number of heterogeneity issues. However, pervasive environments have further introduced new challenges for SOA both at middleware and at application layer. Regarding the former, devices need to dynamically detect services available in the open networked environment and to interact with them. This requires enabling interoperability of both discovery and communication protocols, as services are implemented on top of diverse middleware platforms (eg, UPnP used in the home and Jini in the mobile domain). Regarding the latter, applications need to compose, in an ad hoc fashion, services available at the specific time and place, which have been developed independently without a priori mutual knowledge. The major challenges are enabling common understanding and adaptation of the semantics of the services being associated and interoperability between service behaviour protocols. A significant enabler for dealing with these issues is the Semantic Web and in particular the Semantic Web Services paradigms, which allow description of service semantics and behaviour and rigorous reasoning about the former. Tackling both semantics and behaviour heterogeneity in a combined way is still an open, challenging issue, further exacerbated by the fact that semantic reasoning is a compute-intensive task, too demanding for the wireless, resource-constrained devices of the pervasive environment.
As part of the work of the INRIA ARLES team, on the development of distributed systems enabling the pervasive computing vision, we are devising enablers for pervasive services. We have, in particular, investigated interoperability enablers and their integration within the base SOA architectural style. The resulting SOA style for pervasive computing offers two key functionalities, each one vertically integrating related advanced features in the middleware and in the application layer, as depicted in Figure 2. First, semantic-rich interoperable service discovery enables the locating of networked services according to their semantic descriptions. In the middleware layer, discovery is achieved, despite the possible coexistence of various discovery protocols, by interworking between them, which further includes middleware data type system interworking. In the application layer, semantics and behaviours of services are reasoned upon and matched with the requested ones in order to decide their adequacy for a given user request. Second, semantic-rich interoperable service interaction enables services to cooperate and compose. In the middleware layer, support is provided for communication protocol and data type system interworking. In the application layer, semantics and behaviours of services are adapted and interworked to enable their seamless interaction. Prototypes of the related architectural components have been implemented. Performance evaluation shows that our solutions comply with the requirements of the pervasive computing environment. We are now in the process of integrating them to offer an instance of the overall architecture. We are further studying extensions to the architecture to effectively exploit beyond third generation networks and related multi-radio wireless handheld devices; this will expand the scope of our interoperability solution to further cover radio and network heterogeneity.
Enabling the pervasive computing vision has given rise to tremendous research over the last decade. In particular, various supporting software infrastructures have been proposed, some enabling semantic awareness for services, others dealing with middleware interoperability. Our contribution lies in the integrated treatment of service interoperability, from the application to the middleware layer. Our solution has further been designed to be lightweight and thus can be supported in most pervasive environments, not requiring the presence of a dedicated server. As a result, true open, pervasive computing environments are enabled - integrating and composing in an ad hoc fashion the most appropriate networked services in order to deliver rich applications to users, independently of heterogeneous underlying software technologies and semantic representations.
Our research is conducted as part of the European IST Amigo and Plastic projects and industrial collaborations with Alcatel and Thales.
ARLES site: http://www-rocq.inria.fr/arles/
Valerie Issarny, Nikolaos Georgantas, INRIA, France
Tel: +33 1 39 63 57 89
E-mail: Valerie.Issarnyinria.fr, Nikolaos.Georgantasinria.fr