Results 1 -
5 of
5
A Scalable Content-Addressable Network
- IN PROC. ACM SIGCOMM 2001
, 2001
"... Hash tables – which map “keys ” onto “values” – are an essential building block in modern software systems. We believe a similar functionality would be equally valuable to large distributed systems. In this paper, we introduce the concept of a Content-Addressable Network (CAN) as a distributed infra ..."
Abstract
-
Cited by 3371 (32 self)
- Add to MetaCart
(Show Context)
Hash tables – which map “keys ” onto “values” – are an essential building block in modern software systems. We believe a similar functionality would be equally valuable to large distributed systems. In this paper, we introduce the concept of a Content-Addressable Network (CAN) as a distributed infrastructure that provides hash table-like functionality on Internet-like scales. The CAN is scalable, fault-tolerant and completely self-organizing, and we demonstrate its scalability, robustness and low-latency properties through simulation.
SCRIBE: A large-scale and decentralized application-level multicast infrastructure
- IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS (JSAC
, 2002
"... This paper presents Scribe, a scalable application-level multicast infrastructure. Scribe supports large numbers of groups, with a potentially large number of members per group. Scribe is built on top of Pastry, a generic peer-to-peer object location and routing substrate overlayed on the Internet, ..."
Abstract
-
Cited by 658 (29 self)
- Add to MetaCart
(Show Context)
This paper presents Scribe, a scalable application-level multicast infrastructure. Scribe supports large numbers of groups, with a potentially large number of members per group. Scribe is built on top of Pastry, a generic peer-to-peer object location and routing substrate overlayed on the Internet, and leverages Pastry's reliability, self-organization, and locality properties. Pastry is used to create and manage groups and to build efficient multicast trees for the dissemination of messages to each group. Scribe provides best-effort reliability guarantees, but we outline how an application can extend Scribe to provide stronger reliability. Simulation results, based on a realistic network topology model, show that Scribe scales across a wide range of groups and group sizes. Also, it balances the load on the nodes while achieving acceptable delay and link stress when compared to IP multicast.
Mercury: Supporting scalable multi-attribute range queries
- In SIGCOMM
, 2004
"... This paper presents the design of Mercury, a scalable protocol for supporting multi-attribute rangebased searches. Mercury differs from previous range-based query systems in that it supports multiple attributes as well as performs explicit load balancing. Efficient routing and load balancing are imp ..."
Abstract
-
Cited by 339 (6 self)
- Add to MetaCart
(Show Context)
This paper presents the design of Mercury, a scalable protocol for supporting multi-attribute rangebased searches. Mercury differs from previous range-based query systems in that it supports multiple attributes as well as performs explicit load balancing. Efficient routing and load balancing are implemented using novel light-weight sampling mechanisms for uniformly sampling random nodes in a highly dynamic overlay network. Our evaluation shows that Mercury is able to achieve its goals of logarithmic-hop routing and near-uniform load balancing. We also show that a publish-subscribe system based on the Mercury protocol can be used to construct a distributed object repository providing efficient and scalable object lookups and updates. By providing applications a range-based query language to express their subscriptions to object updates, Mercury considerably simplifies distributed state management. Our experience with the design and implementation of a simple distributed multiplayer game built on top of this object management framework shows that indicates that this indeed is a useful building block for distributed applications. Keywords: Range queries, Peer-to-peer systems, Distributed applications, Multiplayer games 1
Minimizing the Reconfiguration Overhead in Content-Based Publish-Subscribe
- In Proc. of the ACM Symp. on Applied Computing (SAC) 2004
, 2003
"... The publish-subscribe model provides strong decoupling among the components of a distributed application. This characteristic makes it amenable to highly dynamic environments. Nevertheless, publish-subscribe systems exploiting a distributed event dispatcher are typically not able to rearrange dyn ..."
Abstract
-
Cited by 29 (15 self)
- Add to MetaCart
(Show Context)
The publish-subscribe model provides strong decoupling among the components of a distributed application. This characteristic makes it amenable to highly dynamic environments. Nevertheless, publish-subscribe systems exploiting a distributed event dispatcher are typically not able to rearrange dynamically their operations to adapt to changes impacting the topology of the dispatching infrastructure. This paper presents a description and analysis of a novel algorithm to deal with this kind of reconfiguration. The strength of this algorithm is its ability to minimize the portion of the system affected by the reconfiguration by exploiting a novel concept we refer to as the reconfiguration path. Simulations compare our approach with two others from the literature and show a significant reduction (up to 76%) in the overhead caused by reconfiguration.
Bringing Dynamic Reconfiguration into Publish-Subscribe Systems
"... Publish-subscribe systems allow the components of a distributed application to subscribe for events, and provide an infrastructure to allow dynamic routing of such events from sources to subscribers. The resulting architecture yields a loose coupling among publishers and subscribers, making the mode ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Publish-subscribe systems allow the components of a distributed application to subscribe for events, and provide an infrastructure to allow dynamic routing of such events from sources to subscribers. The resulting architecture yields a loose coupling among publishers and subscribers, making the model amenable to supporting dynamic applications in both wired and wireless environments. In contrast, however, most publish-subscribe systems are not themselves dynamic. Specifically, they usually do not provide any mechanism to reconfigure the dispatching infrastructure in response to the loss of a communication channel. Simple solutions have been proposed by others, exploiting the standard subscription and unsubscription mechanisms to update the event routing information within the dispatching infrastructure. In this paper, we show that such an approach is often inefficient, causing unnecessary updates to the subscription information throughout the dispatching network and potentially leading to the unnecessary loss of events during reconfiguration. After an analysis of the potential sources of reconfiguration, we propose an approach which constructs a reconfiguration path containing only those dispatchers whose subscription information may change in response to the topology change, thus limiting the impact of reconfiguration on the underlying event dispatching service. Further, we provide an analysis of the mechanisms necessary to detect the link failure and to construct the reconfiguration path in various application environments spanning from wired to mobile ad hoc networks.