1 / 17

12.3.2005 Niko Kotilainen, research assistant Department of Mathematical Information Technology

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 assistant Department of Mathematical Information Technology University of Jyväskylä, Finland

Download Presentation

12.3.2005 Niko Kotilainen, research assistant Department of Mathematical Information Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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 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

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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 BT BT Chedar P2P Network BT Mobile Chedar Chedar / Mobile Chedar gateway BT BT BT Mobile Chedar TCP Mobile Chedar

  8. 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

  9. Stream Delivery

  10. 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

  11. 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.

  12. 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

  13. MP2PLE User Interface

  14. 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

  15. 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

  16. 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

  17. Thank You! Any questions?

More Related