This work focuses on publish/subscribe systems, where producers publish information and consumers express their interests for certain types of information. The data is disseminated according to its nature and the interests of the consumers. Publish/subscribe systems have become a hot research topic, because the strong decoupling that they offer between the participants makes them well adapted to large scale distributed information systems.
We first present a publish/subscribe system that we specifically designed to implement efficient and reliable distribution of structured xml content to very large populations of consumers. For that purpose, our system integrates several novel technologies, such as subscription aggregation. We have analyzed its efficiency by the means of various simulations and, to experiment with the conditions of the real internet, we have performed a large scale deployment in the planetlab testbed. Experimental results demonstrate that our system offers very good performance and salability under normal operation and can quickly recover from system failures.
We then present a novel approach to building a publish/subscribe system based on the peer-to-peer paradigm. Our system features an extremely simple routing process. The price to pay for this simplicity is that routing may not be perfectly accurate. However, by organizing the peers in "semantic communities'', i.e., by organizing them according to their interests with adequate proximity metrics, we can minimize the routing inaccuracy. Experimental results demonstrate that the routing process is indeed very accurate and highly efficient in the presence of large consumer populations.