scispace - formally typeset
Search or ask a question

Showing papers on "Distributed algorithm published in 1980"


Proceedings ArticleDOI
28 Apr 1980
TL;DR: This paper attempts to get at some of the fundamental properties of distributed computing by means of the following question: “How much does each processor in a network of processors need to know about its own identity, the identities of other processors, and the underlying connection network in order for the network to be able to carry out useful functions?
Abstract: This paper attempts to get at some of the fundamental properties of distributed computing by means of the following question: “How much does each processor in a network of processors need to know about its own identity, the identities of other processors, and the underlying connection network in order for the network to be able to carry out useful functions?” The approach we take is to require that the processors be designed without any knowledge (or only very broad knowledge) of the networks they are to be used in, and furthermore, that all processors with the same number of communication ports be identical. Given a particular network function, e.g., setting up a spanning tree, we ask whether processors may be designed so that when they are embedded in any connected network and started in some initial configuration, they are guaranteed to accomplish the desired function.

621 citations


Journal ArticleDOI
TL;DR: This research suggests that a programming approach is the task allocation strategy most likely to balance these conflicting factors.
Abstract: Load balancing increases throughput but creates interprocessor overhead. This research suggests that a programming approach is the task allocation strategy most likely to balance these conflicting factors.

390 citations


Journal ArticleDOI
TL;DR: This paper presents an overview of the SDD-1 design and its solutions to the above problems.
Abstract: The declining cost of computer hardware and the increasing data processing needs of geographically dispersed organizations have led to substantial interest in distributed data management. SDD-1 is a distributed database management system currently being developed by Computer Corporation of America. Users interact with SDD-1 precisely as if it were a nondistributed database system because SDD-1 handles all issues arising from the distribution of data. These issues include distributed concurrency control, distributed query processing, resiliency to component failure, and distributed directory management. This paper presents an overview of the SDD-1 design and its solutions to the above problems.This paper is the first of a series of companion papers on SDD-1 (Bernstein and Shipman [2], Bernstein et al. [4], and Hammer and Shipman [14]).

253 citations


Journal ArticleDOI
TL;DR: A taxonomy by which a number of parameters of a distributed simulation method are classified, and solutions to problems of synchronization, deadlock prevention and inter-process communication arising with various methods in each class of the taxonomy are sought.

156 citations


Journal ArticleDOI
TL;DR: The reliability mechanisms of SDD-1, a prototype distributed database system being developed by the Computer Corporation of America, center around the concept of the Reliable Network (RelNet).
Abstract: This paper presents the reliability mechanisms of SDD-1, a prototype distributed database system being developed by the Computer Corporation of America. Reliability algorithms in SDD-1 center around the concept of the Reliable Network (RelNet). The RelNet is a communications medium incorporating facilities for site status monitoring, event timestamping, multiply buffered message delivery, and the atomic control of distributed transactions.This paper is one of a series of companion papers on SDD-1 [3, 4, 6, 13].

148 citations


Journal ArticleDOI
TL;DR: The range of application areas to which distributed processing has been applied effectively is limited as discussed by the authors. In order to extend this range, new models for organizing distributed systems must be developed, and a new approach for distributed processing is needed.
Abstract: The range of application areas to which distributed processing has been applied effectively is limited. In order to extend this range, new models for organizing distributed systems must be developed.

136 citations


Journal ArticleDOI
TL;DR: A lower bound on the interprocessor information transfer required for computing a function in a distributed network configuration is derived in terms of the function's derivatives, and it is used to exhibit functions whose computation requires a great deal of interprocess communication.
Abstract: Lower bounds on the interprocessor communication required for computing a differentiable real-valued function in a distributed network are derived These bounds are independent of the network interconnection configuration, and they impose no assumptions other than differentiability constraints on the computations performed by individual processors As a sample application, lower bounds on information transfer in the distributed computation of some-typical matrix operations are exhibited

117 citations


Journal ArticleDOI
TL;DR: An algorithm, based on the "bounded branch and bound" integer programming technique, has been developed to obtain the optimal solution of the model, and it is found to be more efficient than several existing general nonlinear integer programming algorithms.
Abstract: In this paper a model is developed for the optimization of distributed information systems. Compared with the previous work in this area, the model is more complete, since it considers simultaneously the distribution of processing power, the allocation of programs and databases, and the assignment of communication line capacities. It also considers the return flow of information, as well as the dependencies between programs and databases. In addition, an algorithm, based on the "bounded branch and bound" integer programming technique, has been developed to obtain the optimal solution of the model. The algorithm is more efficient than several existing general nonlinear integer programming algorithms. Also, it avoids some of the disadvantages of heuristic and decomposition algorithms which are used widely in the optimization of computer networks and distributed databases. The algorithm has been implemented in Fortran, and the computation times of the algorithm for several test problems have been found very reasonable.

90 citations


Journal ArticleDOI
TL;DR: This paper considers the design of enumeration schemes in a distributed environment in an attempt to exploit the parallel activities inherent in enumeration algorithms.
Abstract: Known solutions of a large number of important (and difficult) computational problems called NP-complete problems depend on enumeration techniques which examine all feasible alternatives. This paper considers the design of enumeration schemes in a distributed environment in an attempt to exploit the parallel activities inherent in enumeration algorithms.

75 citations


ReportDOI
01 Jul 1980
TL;DR: Flow control algorithms consisting of two parts: quasi- static flow control and dynamic flow control are considered, which has the function of admitting or rejecting individual units of traffic into the network so as to enforce the maximum allocated rates and to prevent congestion by smoothing out the fluctuations in buffer occupancy.
Abstract: : We consider flow control algorithms consisting of two parts: quasi- static flow control and dynamic flow control. The quasi-static part uses short term average information on network utilization to allocate maximum data rates and to determine routes for each user. The rates are allocated to achieve an optimal trade-off between assigned priority cost functions for each user and the cost of congestion in the network. This optimization can be done by a distributed algorithm and is essentially no more complicated than optimizing routing alone. The dynamic flow control has the function of admitting or rejecting individual units of traffic into the network so as to enforce the maximum allocated rates and to prevent congestion by smoothing out the fluctuations in buffer occupancy. (Author)

65 citations


Proceedings ArticleDOI
13 Oct 1980
TL;DR: The idea of Probabilistic implementation of guard scheduling is suggested, which allows completely distributed symmetric programs and frees the designer of an algorithm from looking for specific probabilistic algorithms, by allowing the compiler to generate probabilism target code from nonprobabilistic source code.
Abstract: From the users' point of view, resource management schemes may be considered as an abstract data type. An abstract specification of such schemes using axioms holding in partial algebras and relatively distributed implementations (expressed as CSP programs) are given and analyzed. Then the idea of probabilistic implementation of guard scheduling is suggested, which allows completely distributed symmetric programs. It frees the designer of an algorithm from looking for specific probabilistic algorithms, by allowing the compiler to generate probabilistic target code from nonprobabilistic source code.

Journal ArticleDOI
01 Feb 1980
TL;DR: In this paper, the authors present algorithms for time-driven simulation using a network of processors, where each node k of an n-node network simulation cannot proceed directly with its part of a simulation, and must be broadcast to every other node for recomputation of the B -function in a distributed manner.
Abstract: Simulation, particularly of networks of queues, is an application with a high degree of inherent parallelism, and is of considerable practical interest. We continue the analysis of synchronization methods for distributed simulation, defined by the taxonomy in our previous paper. Specifically, we develop algorithms for time-driven simulation using a network of processors. For most of the synchronization methods considered, each node k of an n-node network simulation cannot proceed directly with its part of a simulation. Rather, it must compute some function B k ( ν 1 , ν 2 , …, ν n ), where ν i is some value which must be obtained from node i . The value of ν i at each node changes as the simulation progresses, and must be broadcast to every other node for the recomputation of the B -functions. In some cases, it is advantageous to compute the B -function in a distributed manner. Broadcast algorithms for such distributed computation are presented. Since the performance of a broadcast algorithm depends on the properties of the inter-process communication facility, we characterize some particular cases and give algorithms for each of them.


Journal ArticleDOI
TL;DR: The essential characteristics of distributed processing systems are described and the attributes of alternative systems to the requirements of industrial control are related.

Proceedings ArticleDOI
14 May 1980
TL;DR: A file allocation problem in a hierarchical distributed computer network is examined and it is shown that the problem is NP-hard, and an approximation algorithm is suggested.
Abstract: A file allocation problem in a hierarchical distributed computer network is examined. It is shown that the problem is NP-hard. An approximation algorithm is suggested. It is estimated that the approximation algorithm has a high chance of obtaining the optimal solution. Experimental results show that the difference between the optimal solution and the solution generated by the approximation algorithm is no more than 4% away from the optimal solution.

Book
01 Jan 1980
TL;DR: This volume describes the state-of-the-art, and explores the underlying issues (and controversies) of distributed computer systems, and expands chapters on network protocols, distributed data, distributed database, and software structure.
Abstract: From the Publisher: Distributed processing has become a mainstream systems style. This volume describes the state-of-the-art, and explores the underlying issues (and controversies) of distributed computer systems. Contains new material on recent developments in software, hardware, and systems design--and expanded chapters on network protocols, distributed data, distributed database, and software structure. Also discusses the costs of distributed computer systems, and the effects of distributed processing on management styles.


Proceedings Article
01 Oct 1980
TL;DR: A distributed algorithm for update control whereby the update initiating node acts as a semi- centralized manager for that update, and a timestamp is not required to be stored with each of the data items for this algorithm to work.
Abstract: A critical problem in the implementation of distributed databases is that of update "synchronization" This paper presents a distributed algorithm for update control whereby the update initiating node acts as a semi- centralized manager for that update A timestamp is not required to be stored with each of the data items for this algorithm to work An analysis of the performance of the algorithm, along with a comparison with the majority consensus algorithm, is also included






Proceedings ArticleDOI
Gene Hilborn1
19 May 1980
TL;DR: A new methodology for describing and comparing the survival effectiveness of connected networks of processing subsystems (termed "distributed processing networks") which are subject to deliberate or natural failures or losses of processing or communication components is developed.
Abstract: We seek to develop a new methodology for describing and comparing the survival effectiveness of connected networks of processing subsystems (termed "distributed processing networks") which are subject to deliberate or natural failures or losses of processing or communication components. Examples of distributed processing networks include:• resource-sharing computer networks• military force teams• distributed architecture computers• distributed sensor-processing systems• distributed ballistic missile defense systems

Journal ArticleDOI
TL;DR: This paper attempts to present a framework for the analysis of message-based distributed computations in the context of the classical critical section problem and the high-level language, PLITS.
Abstract: Distributed computing with widely separated machines is a subject of growing theoretical and practical interest. This paper attempts to present a framework for the analysis of message-based distributed computations. This is done in the context of the classical critical section problem and the high-level language, PLITS. The proof techniques described are based on the use of finite-state machines which characterize the external behavior of each module in the distributed computation.



01 Jan 1980
TL;DR: Distributed problem solving is anayzed as a blend of two disciplines: (1) problem solving and ai; and (2) distributed systems (monitoring).
Abstract: Distributed problem solving is anayzed as a blend of two disciplines: (1) problem solving and ai; and (2) distributed systems (monitoring). It may be necessary to distribute because the application itself is one of managing distributed resources (e.g., distributed sensor net) and communication delays preclude centralized processing, or it may be desirable to distribute because a single computational engine may not satisfy the needs of a given task. In addition, considerations of reliability may dictate distribution. Examples of multi-process language environment are given.

Journal ArticleDOI
TL;DR: A relational model of a small distributed database is used to illustrate problems of consistency and integrity with specific reference to distributed systems, and to discuss methods for their solution.
Abstract: A relational model of a small distributed database is used to illustrate problems of consistency and integrity with specific reference to distributed systems, and to discuss methods for their solution. It is shown that some limitation may be necessary on the freedom to make modifications on a purely local basis, and that questions of time consistency due to the network have a partial but limiting solution.