<XML><RECORDS><RECORD><REFERENCE_TYPE>0</REFERENCE_TYPE><REFNUM>6744</REFNUM><AUTHORS><AUTHOR>Eugster,P.</AUTHOR><AUTHOR>Boichat,R.</AUTHOR><AUTHOR>Guerraoui,R.</AUTHOR><AUTHOR>Sventek,J.S.</AUTHOR></AUTHORS><YEAR>2001</YEAR><TITLE>Effective Multicast Programming in Large Scale Distributed Systems</TITLE><PLACE_PUBLISHED>Concurrency and Computation: Practice and Experience, Vol. 13, No. 6 </PLACE_PUBLISHED><PUBLISHER>Wiley</PUBLISHER><PAGES>421-447</PAGES><ISBN>ISSN: 1532-0626</ISBN><LABEL>Eugster:2001:6744</LABEL><KEYWORDS><KEYWORD>concurrency; scalability; reliability; multicast; membership; partitions</KEYWORD></KEYWORDS<ABSTRACT>Many distributed applications have a strong requirement for efficient dissemination of large amounts of information to widely spread consumers in large networks. These include applications in e-commerce and telecommunication. Publish/subscribe is considered one of the most important interaction styles with which to model communication on a large scale. Producers publish information on a topic and consumers subscribe to the topics they wish to be informed of. The decoupling of producers and consumers in time, space, and flow makes the publish/subscribe paradigm very attractive for large scale distribution, especially in environments like the Internet. This paper describes the architecture and implementation of DACE (Distributed Asynchronous Computing Environment), a framework for publish/subscribe communication based on an objectoriented programming abstraction in the form of Distributed Asynchronous Collection (DAC). DACs capture the variants of publish/subscribe, without blurring their respective advantages. The architecture we present is tolerant of network partitions and crash failures. The underlying model is based on the notion of Topic Membership: a weak membership for the parties involved in a topic. We present how Topic Membership enables the realization of a robust and efficient reliable multicast on a large scale. The protocol ensures that, inside a topic, even a subscriber who is temporarily partitioned away eventually receives a published message. </ABSTRACT></RECORD></RECORDS></XML>