, Volume 3, Issue 1–4, pp 367–391

Distributed match-making

  • Sape J. Mullender
  • Paul M. B. Vitányi


In many distributed computing environments, processes are concurrently executed by nodes in a store- and-forward communication network. Distributed control issues as diverse as name server, mutual exclusion, and replicated data management involve making matches between such processes. We propose a formal problem called “distributed match-making” as the generic paradigm. Algorithms for distributed match-making are developed and the complexity is investigated in terms of messages and in terms of storage needed. Lower bounds on the complexity of distributed match-making are established. Optimal algorithms, or nearly optimal algorithms, are given for particular network topologies.

Key words

Locating objects Locating services Mutual exclusion Replicated data management Distributed algorithms Computational complexity Store- and-forward computer networks Network topology 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Awerbuch, B., L. M. Kirousis, E. Kranakis, and P. M. B. Vitányi, On proving register atomicity, Technical Report CS-R8707, Centrum voor Wiskunde en Informatica, Amsterdam (May, 1987).Google Scholar
  2. [2]
    Broomel, G. and J. R. Heath, Classification categories and historical development of circuit switching topologies,ACM Computing Surveys 15, pp. 95–133 (1983).CrossRefGoogle Scholar
  3. [3]
    Dalai, Y. K. and R. Metcalfe, Reverse path forwarding of broadcast packets,Communications of the Association for Computing Machinery 21, pp. 1040–1048 (1978).Google Scholar
  4. [4]
    Dijkstra, E. W., Solution to a problem in concurrent programming control,Communications of the Association for Computing Machinery 8, p. 567 (1965).Google Scholar
  5. [5]
    Erdös, P., L. Geréncser, and A. Maté, Problems of graph theory concerning optimal design, inColloquia Mathematica Societatis János Bolyai 4, ed. P. Erdös, North-Holland, Amsterdam (1970), pp. 317–325.Google Scholar
  6. [6]
    Farber, D. J. and K. C. Larson, The system architecture of the distributed system—the communication system,Proceedings of the Polytechnic Institute of Brooklyn Symposium on Computer Networks (April, 1972).Google Scholar
  7. [7]
    Fowler, R. J., The complexity of forwarding address protocols for decentralized object finding,Proceedings of the 5th ACM Symposium on Principles of Distributed Computing (1986), pp. 108–120.Google Scholar
  8. [8]
    Gelernter, D. and A. J. Bernstein, Distributed communication via a global buffer,Proceedings of the llth ACM Symposium on Principles of Distributed Computing (1982), pp. 10–18.Google Scholar
  9. [9]
    Gifford, D. K., Weighted voting for replicated data,Proceedings of the 7th ACM Symposium on Operating Systems Principles (1979).Google Scholar
  10. [10]
    Gifford, D. K., Information storage in a decentralized computer system, Technical Report CSL-81-8, Xerox Corporation (March, 1983).Google Scholar
  11. [11]
    Kranakis, E. and P. M. B. Vitányi, Distributed control in computer networks and cross-sections of colored multidimensional bodies, Technical Report MIT/LCS/TM-304, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA (March, 1986).Google Scholar
  12. [12]
    Lamport, L., The mutual exclusion problem, Parts I and II,Journal of the Association for Computing Machinery 33, pp. 313–326, 327–348 (1986).MATHMathSciNetGoogle Scholar
  13. [13]
    Lampson, B. W., Designing a global nameservice,Proceedings of the 5th ACM Symposium on Principles of Distributed Computing (1986), pp. 1–10.Google Scholar
  14. [14]
    Liskov, B. and S. Zilles, Programming with abstract data types,SIGPLAN Notices 9, pp. 50–59 (1974).CrossRefGoogle Scholar
  15. [15]
    Maekawa, M., AN**1/2 algorithm for mutual exclusion in decentralized systems,ACM Transactions on Computer Systems 3, pp. 145–159 (1985).CrossRefGoogle Scholar
  16. [16]
    Mullender, S. J. and P. M. B. Vitányi, Distributed match-making for processes in computer networks,Proceedings of the 4th Annual ACM Symposium on Principles of Distributed Computing (1985), pp. 261–271. (Reprinted inOperating System Review, 1986.)Google Scholar
  17. [17]
    Needham, R. M. and A. J. Herbert,The Cambridge Distributed Computer System, Addison-Wesley, Reading, MA (1982).Google Scholar
  18. [18]
    Powell, M. L. and B. P. Miller, Process migration in DEMOS/MP,Proceedings of the 9th ACM Symposium on Operating Systems Principles (1983), pp. 110–119.Google Scholar
  19. [19]
    Seitz, Ch. L., The cosmic cube,Communications of the Association for Computing Machinery 28, pp. 22–33 (1985).Google Scholar
  20. [20]
    Sloane, N. J. A.,A Handbook of Integer Sequences, Academic Press, New York (1973).MATHGoogle Scholar
  21. [21]
    Tanenbaum, A. S. and S. J. Mullender, An overview of the Amoeba distributed operating system,Operating System Review 15, pp. 51–64 (1981).CrossRefGoogle Scholar
  22. [22]
    Mullender, S. J. and A. S. Tanenbaum, The design of a capability-based distributed operating system,The Computer Journal 29, pp. 289–300 (1986).CrossRefGoogle Scholar
  23. [23]
    Valiant, L. G., A scheme for fast parallel communication,SIAM Journal on Computing 11, pp. 350–361 (1982).MATHCrossRefMathSciNetGoogle Scholar
  24. [24]
    Vitanyi, P. M. B. and B. Awerbuch, Atomic shared register access by asynchronous hardware,Proceedings of the 27th Annual IEEE Symposium on Foundations of Computer Science (1986).Google Scholar

Copyright information

© Springer-Verlag New York Inc. 1988

Authors and Affiliations

  • Sape J. Mullender
    • 1
  • Paul M. B. Vitányi
    • 1
    • 2
  1. 1.Centrum voor Wiskunde en InformaticaAmsterdamThe Netherlands
  2. 2.Laboratory for Computer ScienceMassachusetts Institute of TechnologyCambridgeUSA

Personalised recommendations