Peer-to-Peer Middleware

Peer-to-Peer Middleware is an open source library implemented in Java by the members of the mTeam project.

The middleware consists of three main layers:

  • generic peer-to-peer communication library
    This layer is based on the Peer-to-Peer Protocol. Our implementation allows higher-layer applications to use Kademlia or a simple hierarchical routing. However it can be easily extended to provide a great variety of peer-to-peer routing algorithms.
  • publish-subscribe protocol layer
    It is built on top of Peer-to-Peer Protocol and aims to preserve its flexibility while most of the existing algorithms strongly depend on the underlying peer-to-peer routing algorithm (look here for details).
  • synchronized collections
    This layer provides a synchronized, distributed version of standard Java collections (look here for details).

Detailed user guide for the higher-layer applications developers is available here