adapting asynchronous messaging middleware to ad hoc networking mirco musolesi cecilia mascolo...
Post on 18-Dec-2015
221 views
TRANSCRIPT
Adapting Asynchronous Messaging Middlewareto Ad Hoc Networking
Mirco MusolesiCecilia Mascolo Stephen Hailes
Dept. of Computer ScienceUniversity College London
MPAC’04
Outline
Motivation Background EMMA Current research directions A few ideas for a research roadmap
Motivation Our research goals:
Enabling communication in ad hoc networks environments also in presence of disconnections is a hard problem
Providing support for the development of distributed applications in these environments
Not only a pure theoretical problem, but also practical communication among disconnected communities in
poor areas of the world indoor communication interplanetary communication
Motivation
In presence of disconnections, synchronous communication mechanisms are not sufficient
Asynchronous communication seems a suitable paradigm for mobile ad hoc network settings characterised by frequent disconnections and network partition
Challenges
Not only the classic issues of distributed environments but also: Frequent disconnections Limited resources Topology changes Temporary network partitions Heterogeneous mobile devices Different possible deployment scenarios
(and consequently different requirements) …
Middleware solutions for ad hoc environments
The use of middleware solutions is an effective choice since by adopting them it is possible: to hide the complexity of the underlying
networks to deal with the increasing heterogeneity of
the devices (laptops, mobile phones, PDAs, sensors, etc.)
to design a set of primitives for the adaptation and the configuration of the system
Message oriented middleware for ad hoc environments
Starting from these considerations, message oriented middleware based on asynchronous communication mechanism seems a good solution to provide a support for communication also in presence of intermittently connected clouds of hosts
Based on the same abstractions of systems for fixed networks, but many additional design issues
Existing middleware systems
Many examples of middleware for mobile computing for communication also in the case of intermittent disconnections: Tuple based (i.e., LIME) Sharing of complex data structures (i.e., XMIDDLE)
Message oriented middleware for mobile computing: Academic projects: Pronto, Mobile JMS, STEAM, etc. Industrial products: WebSphere MQ EveryPlace,
Broadbeam ExpressQ, SoftWired IBus Mobile, etc. However, they do not support pure ad hoc network
environment with intermittent connectivity!
EMMA
Message oriented middleware for mobile ad hoc networks environments
Adaptation of JMS Implementation of both point to point
publish/subscribe models Message delivery based on a pure epidemic
routing protocol in case of disconnections Based on a different levels of priority for a
smart use of buffers
Epidemic-style routing
M
M
M
M
MM
M
M M
M
M
M
M
M
M
M
M
M
M
M
M
M
Point to point model
Queues positioned on a certain number of hosts
Queues advertised using the epidemic mechanism
If a host is in reach, the message is delivered immediately
If a host is not currently in reach, the epidemic style routing is used
Publish-subscribe model Delivery mechanisms based on an epidemic
style routing protocol in case of disconnections as in the point to point model
Single message with multiple recipients, instead of multiple messages with multiple recipients.
In order to delete the other possible replicas around the networks, we exploit acknowledgment messages
Adaptation of the semantics of durable and non durable subscriptions
Adaptation of the JMS Message Model
Implementation of a subset of the JMS Message Model specification with a different semantics
Definition of persistent and non persistent messages
Support for messages with different priorities Expiration time used to free space in the
buffers
Evaluation of EMMA We have implemented a prototype of our
platform using the J2ME Personal Profile The size of the executable is about 250KB
including the JMS 1.1 jar file We have tested our prototype on HP IPaq
PDAs running Linux and on a number of laptops with the same network interface interconnected with WaveLan.
We also evaluated the middleware platform using the OMNET++ discrete event simulator in order to have some simulation results considering scenario composed of a realistic number of hosts.
Simulation parameters Number of hosts: 16/24/32 Simulation area: 1 Km x 1 Km Propagation model: free space Antenna type: omni-directional Transmission range (radius): 200 m Mobility model: clustered random way point Number of clouds: 4 Cloud area: 200 m x 200 m Node speed: 1-3 m/s (randomly generated) Cloud speed: 1-2 m/s (randomly generated) Number of messages sent: 100 Number of recipients (pub/sub): 80% of the number of hosts Max number of hops: 15 Message buffer size: 10 to 100 Routing table size: 20 entries Max distance: 15 Max allowed delay time: 4 minutes
EMMA performance
Point to point model (scenario with 32 hosts): delivery ratio of persistent and non persistent
messages vs buffer size.
Point to point model (scenario with 32 hosts): delivery ratio of persistent and not persistent
messages vs population density.
EMMA performance
Publish-Subscribe model (scenario with 32 hosts: delivery
ratio distribution of persistent messages with different priorities
Publish-subscribe model (scenario with 32 hosts): delivery
ratio distribution of persistent messages vs buffer size.
Limitations of EMMA
Epidemic algorithms are efficient in terms of delivery ratio and delay time but they are really expensive from a resource consumption point of view
Discovery process not optimised Queues are not replicated No adaptation Limited set of primitives
Towards a new middleware platform
EMMA is our initial effort; we are currently working towards the definition of a new middleware
Substitution of the epidemic protocol with a more optimised and adaptive Context-Aware Routing protocol (CAR)
Definition of a new set of primitives Support for geocasting
Context-aware middleware for ad hoc networking Exploitation of context
information for the optimisation of the delivery process in terms of resource consumption (memory, battery, etc.)
Design of prediction mechanisms based on the evaluation of the history of context information (mobility, co-location, battery level, etc.)
Replication mechanisms in accordance with the level of required reliability
Cross-layering
Current trend in mobile ad hoc networking We think that it is possible to extend this
methodology to the design of middleware and applications
Optimisation and adaptation of the system can be realised by the integration of the network level software components in the middleware platform.
A few ideas for a roadmap for ad hoc networks middleware research
Many open issues or problems not explored sufficiently in depth: Design of adaptive and autonomic systems
Self-optimising systems Self-healing systems ...
Positioning and replication of data and entities Auto-configuration Exploitation of the properties of the underlying
network Cross-layering based design Security
Conclusions
Cross-layering is a promising methodology for the design of middleware solutions for mobile ad hoc computing
EMMA is a first example of a platform for asynchronous messaging in ad hoc networks designed using a cross-layering approach
Necessity of new mechanisms for optimisation and context adaptation in such a dynamic environment
Questions
Mirco MusolesiDept. of Computer Science, [email protected]://www.cs.ucl.ac.uk/staff/m.musolesi