Autonomy, local autonomy, and coherence in naming in distributed computer systems

  • Authors:
  • Sanjay Radia

  • Affiliations:
  • University of Waterloo, Canada

  • Venue:
  • EW 3 Proceedings of the 3rd workshop on ACM SIGOPS European workshop: Autonomy or interdependence in distributed systems?
  • Year:
  • 1988

Quantified Score

Hi-index 0.00

Visualization

Abstract

In a distributed system, different subsystems (for example, a machine or a network) may have the need and capability for quite different degrees of autonomy; for example, a mobile machine with a large disk that occasionally connects to a distributed system would be configured to be more autonomous than a disk-less workstation that is permanently connected. We wish to understand the issues and tradeoffs in controlling the degree of autonomy.An important factor limiting autonomy in a distributed system is dependence on remote objects. However, making these objects locally available may not be sufficient. The autonomy of a subsystem with respect to its local objects may be constrained by the need for coherence (or cooperation) in the system. Coherence can occur in different forms and at different levels[8]; for example, a common protocol may be used to allow subsystems to communicate, operations may have the same semantics for local and remote objects (this is often called network transparency), global names may be used to allow names to be freely exchanged and to make sharing easier, etc. The potential conflict between autonomy and coherence was observed early in the development of distributed systems [2,8].The aim is to find mechanisms that support coherence within a system, but do not constrain the autonomous functioning of a subsystem with respect to its local objects. This would allow a choice between autonomy and dependence so that different subsystems can be configured with different degrees of dependence on remote objects and hence different degrees of autonomy.We investigate two areas. First, we take a closer look at what it means for a subsystem to be autonomous, for this has been largely neglected in the literature. We aim for a broad definition which is consistent with the general meaning of the term autonomy. Second, we investigate the conflict between autonomy and coherence in naming, and outline a solution for naming communication end-points that supports coherence without limiting the autonomy of machines and networks.