An efficient multicast protocol for content-based publish-subscribe systems

The publish/subscribe (or pub/sub) paradigm is an increasingly popular model for interconnecting applications in a distributed environment. Many existing pub/sub systems are based on pre-defined subjects, and hence are able to exploit multicast technologies to provide scalability and availability. An emerging alternative to subject-based systems, known as content-based systems, allow information consumers to request events based on the content of published events. This model is considerably more flexible than subject-based pub/sub. However, it was previously not known how to efficiently multicast published events to interested content-based subscribers within a large and geographically distributed network of broker (or router) machines. We develop and evaluate a novel and efficient distributed algorithm for this purpose, called -link matching". Link matching performs just enough computation at each node to determine the subset of links to which an event should be forwarded. We show via simulations that: link matching yields higher throughput than flooding when subscriptions are selective; and the overall CPU utilization of link matching is comparable to that of centralized matching.

[1]  Vyless Black TCP/IP & Related Protocols , 1995 .

[2]  Lorenzo Aguilar,et al.  Datagram routing for internet multicasting , 1984, Comput. Commun. Rev..

[3]  G.J. Minden,et al.  A survey of active network research , 1997, IEEE Communications Magazine.

[4]  Eric N. Hanson,et al.  A predicate matching algorithm for database rule systems , 1990, SIGMOD '90.

[5]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[6]  David S. Rosenblum,et al.  Design of a Scalable Event Notification Service: Interface and Architecture , 1998 .

[7]  Dale Skeen,et al.  The Information Bus: an architecture for extensible distributed systems , 1994, SOSP '93.

[8]  Shivakant Mishra,et al.  Consul: a communication substrate for fault-tolerant distributed programs , 1993, Distributed Syst. Eng..

[9]  Stephen E. Deering,et al.  Multicast routing in internetworks and extended LANs , 1988, CCRV.

[10]  David Powell,et al.  Group communication , 1996, CACM.

[11]  Stephen E. Deering,et al.  Multicast routing in internetworks and extended LANs , 1988, SIGCOMM '88.

[12]  Marcos K. Aguilera,et al.  Matching events in a content-based subscription system , 1999, PODC '99.

[13]  Kenneth P. Birman,et al.  The process group approach to reliable distributed computing , 1992, CACM.

[14]  Luciano Baresi,et al.  Architectures for an Event Notification Service Scalable to Wide-area Networks , 2000 .

[15]  Wei Tao,et al.  Information flow based event distribution middleware , 1999, Proceedings. 19th IEEE International Conference on Distributed Computing Systems. Workshops on Electronic Commerce and Web-based Applications. Middleware.

[16]  William A. Arbaugh,et al.  The SwitchWare active network architecture , 1998, IEEE Netw..

[17]  John Edward Gough,et al.  Efficient Recognition of Events in a Distributed System , 1995 .