skip to main content
article
Free Access

Local management of a global resource in a communication network

Published:01 January 1996Publication History
Skip Abstract Section

Abstract

This paper introduces a new distributed data object called Resource Controller that provides an abstraction for managing the consumption of a global resource in a distributed system. Examples of resources that may be managed by such an object include; number of messages sent, number of nodes participating in the protocol, and total CPU time consumed.

The Resource Controller object is accessed through a procedure that can be invoked at any node in the network. Before consuming a unit of resource at some node, the controlled algorithm should invoke the procedure at this node, requesting a permit or a rejection.

The key characteristics of the Resource Controller object are the constraints that it imposes on the global resource consumption. An (M, W)-Controller guarantees that the total number of permits granted is at most M; it also ensures that, if a request is rejected, then at least M—W permits are eventually granted, even if no more requests are made after the rejected one.

In this paper, we describe several message and space-efficient implementations of the Resource Controller object. In particular, we present an (M, W)-Controller whose message complexity is O(n log2n log(M/(W + 1)) where n is the total number of nodes. This is in contrast to the O(nM) message complexity of a fully centralized controller which maintains a global counter of the number of granted permits at some distinguished node and relays all the requests to the node.

References

  1. AFEK, Y., AWERBUCH, B., AND GAFNI, E. 1987. Applying static network protocols to dynamic networks. In Proceedings of the 28th IEEE Annual Symposium on Foundations of Computer Science. IEEE, New York, pp. 358-370.Google ScholarGoogle Scholar
  2. AFEK, Y., LANDAU, G. M,, SCHIEBER, B., AND YUNG, M. 1988. The power of Multimedia: Combining point-to-point and multiaccess networks. In Proceedings of the 7th Annual ACM Symposium on Principles of Distributed Computing. (Toronto, Ont., Canada, Aug. 15-17). ACM, New York, pp. 90-104. Google ScholarGoogle Scholar
  3. AWERBUCH, B. 1985. Complexity of network synchronization. J. ACM 32, 804-823. Google ScholarGoogle Scholar
  4. AWERBUCH, B. 1988. On the effects of feedback in dynamic network protocols. In Proceed/rigs of the 29th IEEE Annual Symposium on Foundations of Computer Science. 231-245.Google ScholarGoogle Scholar
  5. BnR-YEHUDA, R., A~D KUTrEN, S. 1988. Fault tolerant distributed majority commitment. J. Algorithms 9, 568-582. Google ScholarGoogle Scholar
  6. DIJKSTRA, E. W., AND SCHOLTEN, C. S. 1980. Termination detection for diffusing computations. Inf. Proc. Lett. 11, 1-4.Google ScholarGoogle Scholar
  7. GALLAGER, R. G., HUMBLEr, P. A., AND SI~IRA, P. M. 1983. A distributed algorithm for minimum-weight spanning trees. ACM Trans. Prog. Lang. Syst. 5, 66-77. Google ScholarGoogle Scholar
  8. GOLDBERG, A., aND PLOTKIN, S. 1987. Parallel (A + I) coloring of constant-degree graphs. Inf. Proc. Lett. 25, 4, 241-245. Google ScholarGoogle Scholar
  9. GOt. DBERG, A. V., PLOTKIN, S. A., AND SHANNON, G. E. 1988. Parallel symmetry-breaking in sparse graphs. SIAM J. Disc. Math. 1,434-446. Google ScholarGoogle Scholar
  10. LYNCH, N. A., GRIFFETH, N. D., FISCHER, M. J., AND GUIBAS, L. J. 1986. Probabilistic analysis of a network resource allocation algorithm. Inf. Cont. 68, 47-85. Google ScholarGoogle Scholar

Index Terms

  1. Local management of a global resource in a communication network

        Recommendations

        Reviews

        William W. Oblitey

        A resource controller distributed data object that can be used to dispense requests to processes participating in a distributed protocol is discussed in this paper. Each request is limited to the consumption of only one unit of the resource. Resources that can be managed using the resource controller object include the number of messages sent in a particular protocol, the total number of participating nodes, and the total number of blocks in use. A standard point-to-point message-passing asynchronous communication network model whose node processors do not share memory is employed for the study. Messages on a link incur an arbitrary but finite delay. The resource controller does not transmit any messages except for those in response to requests, and it is required to issue an answer to every request. The authors assumed a diffusing computational model such that there is a single initiator distributed algorithm, which permits new nodes to dynamically join the set of participating nodes. A tree with the initiator at its root spans the participating nodes. The resource controller object is employed in the discussion of the distributed algorithm. The main controller deals with resources that can only be consumed. Its complexity depends on the actual number of participating nodes. Operation of the basic controller assumes that an upper bound on the number of participating nodes is already known. It consists of three parts: the resource-request procedure, the delivery process, and the root-delivery process. A copy of the resource-request procedure resides at every participating node. A copy of the delivery process exists at every node except the root. The root- delivery process controls the bins associated with each node in the hierarchy. Each node maintains a queue for incoming messages associated with the basic controller. The pseudocode for these three procedures is presented and discussed.

        Access critical reviews of Computing literature here

        Become a reviewer for Computing Reviews.

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader