Title: Adapting Asynchronous Messaging Middleware to Ad Hoc Networking
1Adapting Asynchronous Messaging Middlewareto Ad
Hoc Networking
- Mirco Musolesi
- Cecilia Mascolo
- Stephen Hailes
- Dept. of Computer Science
- University College London
- MPAC04
2Outline
- Motivation
- Background
- EMMA
- Current research directions
- A few ideas for a research roadmap
3Motivation
- 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
4Motivation
- 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
5Challenges
- 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)
6Middleware 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
7Message 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
8Existing 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!
9EMMA
- 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
10Epidemic-style routing
11Point 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
12Publish-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
13Adaptation 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
14Evaluation 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.
15Simulation 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
16EMMA 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.
17EMMA 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.
18Limitations 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
19Towards 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
20Context-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
21Cross-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.
22A 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
23Conclusions
- 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
24Questions
Mirco Musolesi Dept. of Computer Science,
UCL m.musolesi_at_cs.ucl.ac.uk http//www.cs.ucl.ac.u
k/staff/m.musolesi