UNIVERSITY OF JYVÄSKYLÄ Mobile Chedar – A Peer-to-Peer Middleware for Mobile Devices...
-
Upload
katelyn-moreno -
Category
Documents
-
view
215 -
download
0
Transcript of UNIVERSITY OF JYVÄSKYLÄ Mobile Chedar – A Peer-to-Peer Middleware for Mobile Devices...
UNIVERSITY OF JYVÄSKYLÄ
Mobile Chedar – A Peer-to-Peer Middleware for Mobile Devices Presentation for International Workshop on Mobile Peer-to-Peer Computing (MP2P’05)
12.3.2005
Niko Kotilainen, research assistantDepartment of Mathematical Information Technology
University of Jyväskylä, Finlandhttp://tisu.it.jyu.fi/cheesefactory
With co-authors Matthieu Weber, Mikko Vapa and Jarkko Vuori
2005
UNIVERSITY OF JYVÄSKYLÄ
Overview
• 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Related 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Chedar
• 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Chedar 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Mobile 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Restrictions 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
Mobile Chedar
Chedar /Mobile Chedar
gateway
Mobile Chedar
Mobile Chedar
Chedar P2P Network
Chedar P2P Network
TCP
BT
BTBT
BTBTBT
2005
UNIVERSITY OF JYVÄSKYLÄ
Streamable 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Stream Delivery
2005
UNIVERSITY OF JYVÄSKYLÄ
Neighbor and Resource Discovery
• Neighbor discovery is a prerequisite for resource queries• Using Bluetooth’s 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Mobile 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() Checks if Mobile Chedar is connected to other Chedar nodes.
query(String resourceidentifier) Executes 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.
2005
UNIVERSITY OF JYVÄSKYLÄ
Mobile 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
2005
UNIVERSITY OF JYVÄSKYLÄ
MP2PLE User Interface
2005
UNIVERSITY OF JYVÄSKYLÄ
Use 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 user’s notes, either during the lectures, or later, e.g. from home by accessing Mobile Chedar nodes through a gateway node
2005
UNIVERSITY OF JYVÄSKYLÄ
Limitations 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
2005
UNIVERSITY OF JYVÄSKYLÄ
Conclusion 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
UNIVERSITY OF JYVÄSKYLÄ
Thank You!
Any questions?