Results 1 - 10
of
17
A polynomial-time tree decomposition to minimize congestion
- in Proceedings of the 15th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA
, 2003
"... ABSTRACT R"acke recently gave a remarkable proof showing that any undirected multicommodity flow problem can be routed in an oblivious fashion with congestion that is within a factor of O(log 3 n) of the best off-line solution to the problem. He also presented interesting applications of this r ..."
Abstract
-
Cited by 47 (0 self)
- Add to MetaCart
ABSTRACT R"acke recently gave a remarkable proof showing that any undirected multicommodity flow problem can be routed in an oblivious fashion with congestion that is within a factor of O(log 3 n) of the best off-line solution to the problem. He also presented interesting applications of this result to distributed computing. Maggs, Miller, Parekh, Ravi and Wu have shown that such a decomposition also has an application to speeding up iterative solvers of linear systems. R"acke's construction finds a decomposition tree of the underlying graph, along with a method to obliviously route in a hierarchical fashion on the tree. The construction, however, uses exponential-time procedures to build the decomposition. The non-constructive nature of his result was remedied, in part, by Azar, Cohen, Fiat, Kaplan, and R"acke, who gave a polynomial time method for building an oblivious routing strategy. Their construction was not based on finding a hierarchical decomposition, and this precludes its application to iterative methods for solving linear systems. In this paper, we show how to compute a hierarchical decomposition and a corresponding oblivious routing strategy in polynomial time. In addition, our decomposition gives an improved competitive ratio for congestion of O(log 2 n log log n). In an independent result in this conference, Bienkowski, Korzeniowski, and R"acke give a polynomial-time method for constructing a decomposition tree with competitive ratio O(log 4 n). We note that our original submission used essentially the same algorithm, and we appreciate them allowing us to present this improved version.
Approximation Algorithms for Data Placement in Arbitrary Networks
- in Proceedings of the 12th Annual ACM-SIAM Symposium on Discrete Algorithms
, 2001
"... Abstract We develop approximation algorithms for the problem of placing replicated data in arbitrary net-works, where the nodes may both issue requests for data objects and have capacity for storing data objects, so as to minimize the average data-access cost. We introduce the data placement problem ..."
Abstract
-
Cited by 47 (1 self)
- Add to MetaCart
Abstract We develop approximation algorithms for the problem of placing replicated data in arbitrary net-works, where the nodes may both issue requests for data objects and have capacity for storing data objects, so as to minimize the average data-access cost. We introduce the data placement problem tomodel this problem. We have a set of caches F, a set of clients D, and a set of data objects O. Each cache i can store at most ui data objects. Each client j 2 D has demand dj for a specific data object o(j) 2 O and has to be assigned to a cache that stores that object. Storing an object o in cache i incurs astorage cost of f oi, and assigning client j to cache i incurs an access cost of djcij. The goal is to find aplacement of the data objects to caches respecting the capacity constraints, and an assignment of clients
Placement Algorithms for Hierarchical Cooperative Caching
, 1999
"... Consider a hierarchical network in which each node periodically issues a request for an object drawn from a fixed set of unit-size objects. Suppose further that the following conditions are satisfied: the frequency with which each node accesses each object is known; each node has a cache of known ca ..."
Abstract
-
Cited by 44 (7 self)
- Add to MetaCart
Consider a hierarchical network in which each node periodically issues a request for an object drawn from a fixed set of unit-size objects. Suppose further that the following conditions are satisfied: the frequency with which each node accesses each object is known; each node has a cache of known capacity; any cache can be accessed by any node; any request is satisfied by the closest node with a copy of the desired object, at a cost proportional to the distance between the accessing node and the closest copy. In such an environment, it is desirable to fill the available cache space with copies of objects in such a way that the average access cost is minimized. We provide both exact and approximate polynomial-time algorithms for this hierarchical placement problem. Our exact algorithm is based on a reduction to min-cost flow, and does not appear to be practical for large problem sizes. Thus we are motivated to search for a faster approximation algorithm. Our main result is a simple constant-factor approximation algorithm for the hierarchical placement problem that admits an efficient distributed implementation.
A Framework for Evaluating Replica Placement Algorithms
, 2002
"... This paper introduces a framework for evaluating replica placement algorithms (RPA) for content delivery networks (CDN) as well as RPAs from other fields that might be applicable to current or future CDNs. First, the framework classifies and qualitatively compares RPAs using a generic set of primiti ..."
Abstract
-
Cited by 34 (1 self)
- Add to MetaCart
This paper introduces a framework for evaluating replica placement algorithms (RPA) for content delivery networks (CDN) as well as RPAs from other fields that might be applicable to current or future CDNs. First, the framework classifies and qualitatively compares RPAs using a generic set of primitives that capture problem definitions and heuristics. Second, it provides estimates for the decision times of RPAs using an analytic model. To achieve accuracy, the model takes into account disk accesses and message sizes, in addition to computational complexity and message numbers that have been considered traditionally. Third, it uses the "goodness" of produced placements to compare RPAs even when they have different problem definitions. Based on these evaluations, we identify open issues and potential areas for future research.
Bandwidth Constrained Placement in a WAN
- IN PODC
, 2001
"... In this paper, we examine the bandwidth-constrained placement problem, focusing on trade-os appropriate for wide area network (WAN) environments. The goal is to place copies of objects at a collection of distributed caches to minimize expected access times from distributed clients to those objects ..."
Abstract
-
Cited by 26 (9 self)
- Add to MetaCart
In this paper, we examine the bandwidth-constrained placement problem, focusing on trade-os appropriate for wide area network (WAN) environments. The goal is to place copies of objects at a collection of distributed caches to minimize expected access times from distributed clients to those objects subject to a maximum bandwidth constraint at each cache. We develop a simple algorithm to generate a bandwidth-constrained placement by hierarchically rening an initial per-cache greedy placement. We prove that this hierarchical algorithm generates a placement whose expected access time is within a constant factor of the optimal placement's expected access time. We then proceed to extend this algorithm to compute close to optimal placement strategies for dynamic environments.
Oblivious routing on node-capacitated and directed graphs
- in Proceedings of the 16th ACM-SIAM Symposium on Discrete Algorithms (SODA), 2005
, 2005
"... Oblivious routing algorithms for general undirected networks were introduced by Räcke [17], and this work has led to many subsequent improvements and applications. Comparatively little is known about oblivious routing in general directed networks, or even in undirected networks with node capacities. ..."
Abstract
-
Cited by 15 (8 self)
- Add to MetaCart
Oblivious routing algorithms for general undirected networks were introduced by Räcke [17], and this work has led to many subsequent improvements and applications. Comparatively little is known about oblivious routing in general directed networks, or even in undirected networks with node capacities. We present the first non-trivial upper bounds for both these cases, providing algorithms for k-commodity oblivious routing problems with competitive ratio O ( √ k log(n)) for undirected node-capacitated graphs and O ( √ k n 1/4 log(n)) for directed graphs. In the special case that all commodities have a common source or sink, our upper bound becomes O ( √ n log(n)) in both cases, matching the lower bound up to a factor of log(n). The lower bound (which first appeared in [6]) is obtained on a graph with very high degree. We show that in fact the degree of a graph is a crucial parameter for node-capacitated oblivious routing in undirected graphs, by providing an O( ∆ polylog(n))-competitive oblivious routing scheme for graphs of degree ∆. For the directed case, however, we show that the lower bound of Ω ( √ n) still holds in low-degree graphs. Finally, we settle an open question about routing problems in which all commodities share a common source or sink. We show that even in this simplified scenario there are networks in which no oblivious routing algorithm can achieve a competitive ratio better than Ω(log n). 1
A Data Tracking Scheme for General Networks
, 2001
"... Consider an arbitrary distributed network in which large numbers of objects are continuously being created, replicated, and destroyed. A basic problem arising in such an environment is that of organizing a distributed directory service for locating object copies. In this paper, we present a new data ..."
Abstract
-
Cited by 13 (0 self)
- Add to MetaCart
Consider an arbitrary distributed network in which large numbers of objects are continuously being created, replicated, and destroyed. A basic problem arising in such an environment is that of organizing a distributed directory service for locating object copies. In this paper, we present a new data tracking scheme for locating nearby copies of objects in arbitrary distributed environments. Our tracking scheme supports ecient accesses to data objects while keeping the local memory overhead low. In particular, our tracking scheme achieves an expected polylog(n)- approximation in the cost of any access operation, for an arbitrary network. The memory overhead incurred by our scheme is O(polylog(n)) times the maximum number of objects stored at any node, with high probability. We also show that our tracking scheme adapts well to dynamic changes in the network. 1 College of Computer Science, Northeastern University, Boston, MA 02115, rraj@ccs.neu.edu. Supported by NSF CAREER award NSF CCR{9983901. 2 Department of Computer Science and Engineering, Arizona State University, Tempe, AZ 85287-5406, aricha@asu.edu. Supported in part by NSF CAREER Award CCR{9985284 and NSF Grant CCR{9900304. 3 Max-Planck-Institut f ur Informatik, Saarbr ucken, Germany. Supported in part by the IST Programme of the EU under contrac number IST-1999-14186 (ALCOM-FT) 4 Compaq Corporation, San Jose, CA, Gayathri.Vuppuluri@compaq.com. This work was done while the author was a graduate student at Arizona State University, supported in part by NSF CAREER Award CCR{9985284. 1
Locally Efficient On-Line Strategies for Routing Packets along Fixed Paths
- In Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms
, 1999
"... Most of the work done in the area of static routing concentrates on minimizing the runtime of the whole schedule rather than minimizing the runtime of individual packets, using global parameters such as the congestion and dilation of a path collection. In this paper, we study the problem of minim ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
Most of the work done in the area of static routing concentrates on minimizing the runtime of the whole schedule rather than minimizing the runtime of individual packets, using global parameters such as the congestion and dilation of a path collection. In this paper, we study the problem of minimizing the routing time of individual packets, using local parameters. In fact, we present the first (up to a log log factor) optimal, truly on-line routing protocols for the following problems: Packet switching: Assume that a fixed collection of paths is given. For every path p in this collection, let c p denote the maximum number of paths that share an edge with p, and let d p denote the length of p. Find a schedule (that does not require to know c p and d p ) such that the routing time of a packet following a path p merely depends on c p and d p . Virtual circuit switching: Assume that a fixed set of sessions is given. For every session i, packets are injected at a rate r i to f...
Distributed transactional memory for metric-space networks
- In Proc. International Symposium on Distributed Computing (DISC 2005
, 2005
"... Abstract. Transactional Memory is a concurrent programming API in which concurrent threads synchronize via transactions (instead of locks). Although this model has mostly been studied in the context of multiprocessors, it has attractive features for distributed systems as well. In this paper, we con ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
Abstract. Transactional Memory is a concurrent programming API in which concurrent threads synchronize via transactions (instead of locks). Although this model has mostly been studied in the context of multiprocessors, it has attractive features for distributed systems as well. In this paper, we consider the problem of implementing transactional memory in a network of nodes where communication costs form a metric. The heart of our design is a new cache-coherence protocol, called the Ballistic protocol, for tracking and moving up-to-date copies of cached objects. For constant-doubling metrics, a broad class encompassing both Euclidean spaces and growth-restricted networks, this protocol has stretch logarithmic in the diameter of the network. 1
A Unified Framework for Evaluating Replica Placement Algorithms
, 2002
"... The placement of data to maximize the performance and minimize the cost of a computing system is an optimization problem that has been studied extensively in several fields, including distributed databases, storage systems and, more recently, content delivery networks. However, little has been done ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
The placement of data to maximize the performance and minimize the cost of a computing system is an optimization problem that has been studied extensively in several fields, including distributed databases, storage systems and, more recently, content delivery networks. However, little has been done to compare the various approaches and their applicability to different systems.

