ACM/IEEE Trans. on Networking, November 2013.
(Accepted for publication in August, 2013).
Peer-to-peer (P2P) networks can offer benefits to distributed content-based publish/subscribe data dissemination systems. In particular, since a P2P network's aggregate resources grow as the number of participants increases, scalability can be achieved using no infrastructure other than the participants' own resources. This paper proposes algorithms for supporting content-based publish/subscribe in which subscriptions can specify a range of interest and publications a range of values. The algorithms are built over a distributed hash table abstraction and are completely decentralized. Load balance is addressed by subscription delegation away from overloaded peers and a bottom up tree search technique that avoids root hotspots. Furthermore, fault-tolerance is achieved with a light-weight replication scheme that quickly detects and recovers from faults. Experimental results support the scalability and fault-tolerance properties of the algorithms: For example, doubling the number of subscriptions, does not double system internal messages, and even the simultaneous failure of 20% of the peers in the system requires less than two minutes to fully recover.