Title: Mobile Chedar
1Mobile Chedar A Peer-to-Peer Middleware for
Mobile Devices Presentation for International
Workshop on Mobile Peer-to-Peer Computing
(MP2P05)
- 12.3.2005
- Niko Kotilainen, research assistant
- Department of Mathematical Information Technology
- University of Jyväskylä, Finland
- http//tisu.it.jyu.fi/cheesefactory
- With co-authors Matthieu Weber, Mikko Vapa and
Jarkko Vuori
2Overview
- This paper describes Mobile Chedar, which is an
implementation of a mobile peer-to-peer
middleware enabling information sharing in a
mobile environment - The proposed middleware is an extension to a
non-mobile Chedar P2P network - Mobile Chedar allows Bluetooth-enabled mobile
devices to access resources of Chedar P2P network
through Chedar gateway nodes (workstations with
Bluetooth adapters) - The middleware can be used to construct mobile
peer-to-peer applications and as an example of
such applications a co-operative learning
application using Mobile Chedar is presented
3Related Work
- Four different MP2P middleware propositions were
identified as the closest related work - Proem, 7DS, XMIDDLE and MOBY
- In contrast to these middlewares, Mobile Chedar
is an extension to existing peer-to-peer network
and therefore differs in the approach - Also, Mobile Chedar provides mechanisms for data
streaming, whereas the considered middlewares are
designed for disseminating rather static content - The implementation of Mobile Chedar relies on
Bluetooth, whereas many of the others have been
built on Wireless LAN technology
4Chedar
- Chedar (CHEap Distributed ARchitecture) is a
peer-to-peer middleware designed for peer-to-peer
applications - For example Chedar can be used to locate idle
computers with a given characteristics in order
to run computationally intensive calculations - Programmed with Java 2 Standard Edition using TCP
sockets - Currently used for speeding up the computations
of NeuroSearch resource discovery algorithm with
Peer-to-Peer Distributed Computing application
(P2PDisCo) and for studying distributed data
fusion in peer-to-peer environment
5Chedar Internals
- Nodes maintain a database of locally available
resources and metadata for the resources such as
type and path for a file or description of
application registered as a resource - Resource database is stored as an XML document
using a specific DTD, which allows making rich
and complex queries to the database in the form
of XPath expressions - Each Chedar node is identified with a unique
identifier
6Mobile Chedar
- With the advent of mobile computing and the
inherent peer-to-peer properties of mobile ad hoc
networks, Chedar has been extended to Mobile
Chedar for mobile devices - Mobile Chedar provides functionalities for
registering resources on a mobile device and for
querying resources from other peers - Using Mobile Chedar, mobile devices can for
example locate a communication stream from the
network and subscribe to that stream to get all
data written to the stream - By publishing the stream further other peers can
join the stream - Programmed with Java 2 Micro Edition using
Bluetooth transmission technology
7Restrictions of Bluetooth
- Because of restrictions in Bluetooth, one node
can be connected to only one piconet at a time
forcing the connection topology to be star-shaped - Chedar / Mobile Chedar gateway node can be for
example workstation with a Bluetooth adapter and
an Internet connection
Mobile Chedar
Mobile Chedar
Mobile Chedar
BT
BT
Chedar P2P Network
BT
Mobile Chedar
Chedar / Mobile Chedar gateway
BT
BT
BT
Mobile Chedar
TCP
Mobile Chedar
8Streamable Resources
- Nodes can provide streamable resources to other
peers and subscribe to these streams - Multiple peers can simultaneously subscribe to
the same stream and after subscribing they also
start publishing the stream - Because streams are duplex, the data written to
the streams by peers will be delivered to all
other peers currently subscribed - However, the order of the data is not preserved
and it is handled in a First-In-First-Out manner
9Stream Delivery
10Neighbor and Resource Discovery
- Neighbor discovery is a prerequisite for resource
queries - Using Bluetooths Service Discovery Protocol
(SDP) all nodes within range of the radio
frequency transceiver can be detected - Discovery of resources is performed as one hop
query tagged with a unique Message-ID to all the
nodes within Bluetooth range - When a query arrives to Chedar/Mobile Chedar
gateway node, it forwards the query to all of its
Chedar neighbors with default time-to-live
11Mobile Chedar Application Programming Interface
- Mobile Chedar provides the following API for MP2P
applications - MP2P applications must implement the following
methods
register(String resourceidentifier) Adds a
resource to the resource database. unregister
(String resourceidentifier) Removes a resource
from the resource database. connected() Chec
ks if Mobile Chedar is connected to other
Chedar nodes. query(String resourceidentifier) Ex
ecutes a query. subscribe(Resource
resource) Subscribes to the found
resource. unsubscribe(Resource
resource) Unsubscribes from a subscribed
resource. send(Resource resource, Message
data) Sends data to the subscribed resource.
resourceFound(Resource resource) Informs the
application when the query has located a
matching resource. receive(Resource resource,
Message data) Informs the application when new
data has arrived to a subscribed resource.
12Mobile Peer-to-Peer Learning Environment
- Mobile Peer-to-Peer Learning Environment (MP2PLE)
is designed for collaborative note taking during
lectures as a test application for Chedar
peer-to-peer network and Mobile Chedar middleware - MP2PLE user interface contains a text area
displaying the current state of notes and
provides means for users to edit them - The user is allowed to modify any part of the
notes by selecting a paragraph and submitting the
changes - Whenever the data is being changed it is streamed
to other participants subscribed to the same
stream
13MP2PLE User Interface
14Use Cases for MP2PLE
- There are two common use cases for such kind of
an application - Firstly, it serves as a personal note-taking tool
to store lecture notes - Secondly, people who do not take notes can
benefit from other users notes, either during
the lectures, or later, e.g. from home by
accessing Mobile Chedar nodes through a gateway
node
15Limitations of MP2PLE
- Tiny user interface is problematic and provides
only primitive means to take notes e.g., pictures
cannot be drawn and class presentation material
cannot be integrated with MP2PLE - Also, taking lecture notes is difficult because
of the small keypads in mobile phones - Bluetooth does not allow multi-hop with current
mobile phones, because the device can only belong
to one piconet at a time
16Conclusion and Future Work
- Mobile peer-to-peer enables new kind of
applications taking advantage of emerging
short-range radio technologies and allowing
collaborative resource sharing between peers - This paper described one way to construct
peer-to-peer networks with support for mobile
devices and demonstrates the feasibility with a
prototype implementation - The future work of Mobile Chedar and MP2PLE
includes the support of audio and video streams
and determining the feasibility of the approach
with practical experiments
17Thank You!