Detail

Publication date: 1 de June, 2021

Middleware for Network Eccentric and Mobile Applications

The Minema Project is an EU initiative (European Science Foundation), in the context of an Excellence Network Program joining research centers, institutions and researchers in different cooperation activities. The program intends to foster the definition and implementation of middleware abstractions for new and emerging applications on top of ad hoc networks. These range from so-called mobile and ubiquitous applications to peer-to-peer applications. It is felt by the subscribers of the current proposal that middleware is the critical component needed to leverage the development of a wide range of applications for the ad hoc infrastructure.

Despite their usefulness, only a limited number of applications have been designed for ad hoc networks. One of the reasons for the current scenario is that most research performed so far in the area has concentrated on communication and system level issues, such as network access, routing protocols, QoS preservation, or power consumption. While these issues are extremely important, enabling the programming of meaningful applications go first through encapsulating, through a high-level middleware layer, low-level routing and networking issues.

A fundamental challenge of middleware for ad hoc infrastructures is that the abstractions provided to the programmer must be implementable in an environment that is radically different from the fixed environment but, simultaneously, should be as close as possible to abstractions that are known, accepted and understood by most programmers. The definition of these abstraction requires the interaction of researchers with different expertises, including knowledge on ad hoc network protocols (the abstractions depend on a good characterization of the environment), distributed algorithms (to specify the relevant distributed protocols that support the abstractions), software engineering (the abstractions should be expressed using the appropriate language constructs), and applications (the abstractions must satisfy the applications requirements).

A number of paradigms, as described later, are emerging as candidates to play a significant role in ad hoc networks. The publish-subscribe paradigm is one example of a model of interaction that extends the more conventional remote procedure call (RPC) paradigm to address new types of applications. However, these abstractions by themselves do not have the breath needed to ease the development of applications. The middleware for fixed networks complements the basic remote invocation paradigm with a number of services (name services, transaction services, storage services, replication services, etc) that, in their current form, cannot be directly applied to the mobile environment. Therefore, a goal of the MINEMA project programme is also to define the auxiliary services that should become first class citizens of the middleware environment for ad hoc networks.
The main challenge of MiNEMA is to identify new paradigms, or new specializations and adaptations of known paradigms that are adequate for mobile and peer-to-peer systems. This requires a re-evaluation of solutions that have proven successful in the fixed and wired setting, which is typically characterized by good connectivity, high bandwidth connections and a rich availability of memory, processing and power resources. On the other hand, the environment targeted by MiNEMA is characterized by a huge heterogeneity of devices, scarce resources and poor or intermittent connectivity. It is expected that, in the target environment, computers will be embedded in a wide range of appliances ranging in size from door locks to vehicle controllers, and will co-operate to perform tasks on behalf of their human users ranging from automatically opening doors to routing vehicles to their intended destinations in co-operation with other vehicles’ controllers.

Consider for instance the architecture of information systems in the wired setting. The heart of an information system has traditionally been the central database server. Several client processes can store and retrieve information of interest through a database server process. Such a client-server mode of interaction is typically done in a synchronous way where clients query-update the database server and resume their activities when the query-update is over, or in an asynchronous way by subscribing to the database and receiving information of interest whenever such information is published on the database. In the latter case, we talk about an active database and a publish-subscribe interaction scheme.

In a large scale environment, relying on a central database server does hardly make any sense. The database might easily turn out to be a single point of failure and a bottleneck performance. One might indeed consider implementing the database on a cluster of machines that provides acceptable performance and high availability, but this still poses the problem of accessing that cluster. A reasonable way to overcome the reachability problem is to replicate the database on several processes, and make sure that these processes are reachable to clients that potentially require the access to the information. In a mobile environment, ensuring however such a reachability is hopeless precisely because potential clients are mobile and it is not clear how to determine the adequate processes on which the database should be replicated. Therefore, one needs to consider a system where the database is everywhere, i.e., distributed in a way that it can be accessed despite the several impairments inherent to the mobile setting. We can identify a number of abstractions and mechanisms that need to be revisited in the context of MiNEMA to materialize this vision. Different Research direccions and open issues will be addressed by the participants of the MiNEMA programme. Research topics are described in the Project Webpage, as well as, the researchers involved in the project initiatives.

Team

Henrique Domingos,

URL http://www.minema.di.fc.ul.pt/
State Concluded
Startdate 01/04/2006
Enddate 31/03/2009