Skip to main content

Location-Independent Communication for Mobile Agents: A Two-Level Architecture

  • Conference paper
  • First Online:
Internet Programming Languages (ICCL 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1686))

Included in the following conference series:

Abstract

We study communication primitives for interaction between mobile agents. They can be classified into two groups. At a low level there are location dependent primitives that require a programmer to know the current site of a mobile agent in order to communicate with it. At a high level there are location independent primitives that allow communication with a mobile agent irrespective of its current site and of any migrations. Implementation of these requires delicate distributed infrastructure. We propose a simple calculus of agents that allows implementations of such distributed infrastructure algorithms to be expressed as encodings, or compilations, of the whole calculus into the fragment with only location dependent communication. These encodings give executable descriptions of the algorithms, providing a clean implementation strategy for prototype languages. The calculus is equipped with a precise semantics, providing a solid basis for understanding the algorithms and for reasoning about their correctness and robustness. Two sample infrastructure algorithms are presented as encodings.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Mart’in Abadi, Luca Cardelli, Benjamin Pierce, and Gordon Plotkin. Dynamic typing in a statically typed language. ACM Transactions on ProgrammingLanguages and Systems,, 13(2):237–268, April 1991.

    Article  Google Scholar 

  2. R. M. Amadio and S. Prasad. Localities and failures. In P. S. Thiagarajan, editor, Proceedings of 14th FST and TCS Conference, FST-TCS’94. LNCS 880, pages 205–216. Springer-Verlag, 1994.

    Google Scholar 

  3. Roberto M. Amadio and Sanjiva Prasad. Modelling IP mobility. In Proceedings of CONCUR’ 98: Concurrency Theory. LNCS 1466, pages 301–316, September 1998.

    Chapter  Google Scholar 

  4. G. Berry and G. Boudol. The chemical abstract machine. Theoretical Computer Science, 96:217–248, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  5. G’erard Boudol. Asynchrony and the π-calculus (note). Rapport de Recherche 1702, INRIA Sofia-Antipolis, May 1992.

    Google Scholar 

  6. Luca Cardelli. Amber and the amber machine. In Guy Cousineau, Pierre-Louis Curien, and Bernard Robinet, editors, Combinators and Functional Programming Languages, LNCS 242, pages 21–70, 1986.

    Google Scholar 

  7. Luca Cardelli and Andrew D. Gordon. Mobile ambients. In Proc. of Foundations of Software Science and Computation Structures (FoSSaCS), ETAPS’98, LNCS 1378, pages 140–155, March 1998.

    Chapter  Google Scholar 

  8. D. Chess, C. Harrison, and A. Kershenbaum. Mobile agents: Are they a good idea? In Mobile Object Systems — Towards the Programmable Internet. LNCS 1222, pages 25–48, 1997.

    Google Scholar 

  9. [FGL+96]_C’edric Fournet, Georges Gonthier, Jean-Jacques L’evy, Luc Maranget, and Didier R’emy. A calculus of mobile agents. In Proceedings of CONCUR’ 96. LNCS 1119, pages 406–421. Springer-Verlag, August 1996.

    Google Scholar 

  10. Matthew Hennessy and James Riely. Resource access control in systems of mobile agents. In Workshop on High-Level Concurrent Languages, 1998. Full version as University of Sussex technical report CSTR 98/02.

    Google Scholar 

  11. Matthew Hennessy and James Riely. Type-safe execution of mobile agents in anonymous networks. In Workshop on Mobile Object Systems, (satellite of ECOOP’ 98), 1998. Full version as University of Sussex technical report CSTR 98/03.

    Google Scholar 

  12. Kohei Honda and Mario Tokoro. An object calculus for asynchronous communication. In Pierre America, editor, Proceedings of ECOOP’ 91, LNCS 512, pages 133–147, July 1991.

    Google Scholar 

  13. Simon Peyton Jones, Andrew Gordon, and Sigbjorn Finne. Concurrent Haskell. In Conference Record of the 23 rd ACM Symposium on Principles of Programming Languages, pages 295–308, St. Petersburg, Florida, January 21–24, 1996. ACM Press.

    Google Scholar 

  14. The join calculus language, 1998. Implementations available from http://www.pauillac.inria.fr/join/unix/eng.htm.

  15. Nancy A. Lynch. Distributed algorithms. Morgan Kaufmann, 1996.

    Google Scholar 

  16. Robin Milner. Functions as processes. Journal of Mathematical Structures in Computer Science, 2(2):119–141, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  17. D. S. Milojicic, W. LaForge, and D. Chauhan. Mobile Objects and Agents (MOA). In USENIX COOTS’ 98, Santa Fe, April 1998.

    Google Scholar 

  18. R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes, Parts I + II. Information and Computation, 100(1):1–77, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  19. R. M. Needham. Names. In S. Mullender, editor, Distributed Systems, pages 89–101. Addison-Wesley, 1989.

    Google Scholar 

  20. ObjectSpace. Voyager core technology user guide, version 2.0 beta 1. Available from http://www.objectspace.com/, 1997.

  21. Benjamin C. Pierce and David N. Turner. Concurrent objects in a process calculus. In Theoryand Practice of Parallel Programming (TPPP), Sendai, Japan, November 1994.

    Google Scholar 

  22. Benjamin C. Pierce and David N. Turner. Pict: A programming language based on the pi-calculus. Technical Report CSCI 476, Computer Science Department, Indiana University, 1997. To appear in Proof, Language and Interaction: Essays in Honour of Robin Milner, Gordon Plotkin, Colin Stirling, and Mads Tofte, editors, MIT Press.

    Google Scholar 

  23. John Reppy. CML: A higher-order concurrent language. In Programming Language Design and Implementation, pages 293–259. SIGPLAN, ACM, June 1991.

    Google Scholar 

  24. James Riely and Matthew Hennessy. Distributed processes and location failures. In Proceedings of ICALP’ 97. LNCS 1256, pages 471–481. Springer-Verlag, July 1997.

    Google Scholar 

  25. James Riely and Matthew Hennessy. A typed language for distributed mobile processes. In Proceedings of the 25th POPL, January 1998.

    Google Scholar 

  26. Peter Sewell. Global/local subtyping for a distributed π-calculus. Technical Report 435, University of Cambridge, August 1997. Available from http://www.cl.cam.ac.uk/users/pes20/.

  27. Peter Sewell. On implementations and semantics of a concurrent programming language. In Proceedings of CONCUR’ 97. LNCS 1243, pages 391–405, 1997.

    Google Scholar 

  28. Peter Sewell. Global/local subtyping and capability inference for a distributed π-calculus. In Proceedings of ICALP’ 98, LNCS 1443, pages 695–706, 1998.

    Google Scholar 

  29. Peter Sewell. A brief introduction to applied π, January 1999. Lecture notes for the Math.t Instructional Meeting on Recent Advances in Semantics and Types for Concurrency: Theory and Practice, July 1998. Available from http://www.cl.cam.ac.uk/users/pes20/.

  30. Peter Sewell, PaweLl T. Wojciechowski, and Benjamin C. Pierce. Location independence for mobile agents. In Workshop on Internet Programming Languages, Chicago, May 1998.

    Google Scholar 

  31. Tatsurou Sekiguchi and Akinori Yonezawa. A calculus with code mobility. In Howard Bowman and John Derrick, editors, Formal Methods for Open Object-based Distributed Systems (Proceedings of FMOODS’ 97), pages 21–36. IFIP, Chapman and Hall, July 1997.

    Google Scholar 

  32. Bent Thomsen, Lone Leth, and Tsung-Min Kuo. A Facile tutorial. In Proceedings of CONCUR’ 96. LNCS 1119, pages 278–298. Springer-Verlag, August 1996.

    Google Scholar 

  33. David N. Turner. The Polymorphic Pi-calculus: Theory and Implementation. PhD thesis, University of Edinburgh, 1996.

    Google Scholar 

  34. Jan Vitek and Guiseppe Castagna. Towards a calculus of mobile computations. In Workshop on Internet Programming Languages, Chicago, May 1998.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sewell, P., Wojciechowski, P.T., Pierce, B.C. (1999). Location-Independent Communication for Mobile Agents: A Two-Level Architecture. In: Bal, H.E., Belkhouche, B., Cardelli, L. (eds) Internet Programming Languages. ICCL 1998. Lecture Notes in Computer Science, vol 1686. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47959-7_1

Download citation

  • DOI: https://doi.org/10.1007/3-540-47959-7_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66673-8

  • Online ISBN: 978-3-540-47959-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics