P2P Rec

Architecture and Implementation

The design and implementation of P2Prec is based on the Shared-data Overlay Network (SON) which is now central for the DataRing architecture. SON is an open source development platform for P2P networks using web services, JXTA and OSGi. SON combines three powerful paradigms: components, SOA and P2P. Components communicate by asynchronous message passing to provide weak coupling between system entities.

Figure 1: P2Prec Architecture

We developed P2Prec as a SON application with two components: the LDA component for the documents topics process and the P2Prec component for the recommendation process. For instance, the services of the P2Prec component are the services for passive and active propagation through gossip services (gossip and gossipAnswer services) and the queries services (query and queryAnswer services). There are two OSGi configurations, the Bootstrap Server (BS) configuration and the Client (the peer) configuration, as shown in Figure 1. To run the P2Prec application, the BS must be started on a given machine (with a given IP address). This IP address will be used as the entry point into the P2Prec network for new peers. At the startup time, a new peer must first identify itself with the BS (connect service) and the BS is going to return the current set of all topics (allTopics service). Then within the local peer's LDA component and the current topics, the topics of each document is computed locally. After these steps, the peer can start the recommendation steps and documents discovery without any connection with the BS. Indeed, the research of topics of a new document (computeTopic(doc) service) and the computing of topics of a query (computeTopic(query) service) can be made locally with the local peer's LDA component. Depending on the evolution of documents on the P2Prec network, the BS may update the set of topics of documents, and inform the peers by broadcasting this new topic set (using the allTopics service).

INRIA main page