Mobile Agents Coordination in Mobadtl
We present and formalize Mobadtl, a model for network-aware applications, extending the Oikos-adtl temporal-logic based approach to the specification and verification of distributed systems. The model supports strong subjective mobility of agents under the control of stationary guardians. Communications are based on asynchronous message passing. The approach exploits the notions of coordination and refinement to deal separately with the specification of functional issues in the agents, and with the specification of coordination policies, e.g. security, routing, etc., in the guardians. The goal is to specify mobile agents as independently as possible of the requirements related to the other facets of distribution. The specification of an application is obtained by instantiating the general model, refining it along different dimensions corresponding to the different aspects of interest, and finally composing the refinements. The main advantage, besides the increased flexibility of the specification process, is that it is possible to specify rich coordination policies incrementally, while the functional units remain relatively simple. We use Mobadtl to specify a simple electronic commerce application, paying particular attention to the incremental specification of the policies. We show how refined policies lead to stronger system properties.
Unable to display preview. Download preview PDF.
- 1.J.-M. Andreoli, C. Hankin, and D. L. Métayer, editors. Coordination Programming: Mechanisms, Models and Semantics Imperial College Press, 1996.Google Scholar
- 2.F. Arbab, M. Bonsangue, and F. de Boer. A coordination language for mobile components. In Proc. of the 2000 ACM Symposium on Applied Computing (SAC 2000). ACM Press, 2000.Google Scholar
- 4.R. Back and J. von Wright. Refinement Calculus. A Systematic Introduction. Graduate texts in computer science. Springer-Verlag, 1998.Google Scholar
- 5.L. Cardelli, G. Ghelli, and A. Gordon. Mobility Types for Mobile Ambients. In J. Wiederman, P. van Emde Boas, and M. Nielsen, editors, 26th Colloquium on Automata, Languages and Programming (ICALP) (Prague, Czech Republic), volume 1644 of Lecture Notes in Computer Science, pages 230–239. Springer-Verlag, July 1999.CrossRefGoogle Scholar
- 7.N. Carriero and D. Gelernter. Coordination Languages and their Significance. Communications of the ACM, 5(2):97–107, 1989.Google Scholar
- 10.G. Cugola, C. Ghezzi, G. Picco, and G. Vigna. Analyzing Mobile Code Languages. In Mobile Object Systems: Towards the Programmable Internet, volume 1222 of Lecture Notes in Computer Science, pages 93–110. Springer-Verlag, Apr 1997.Google Scholar
- 12.R. De Nicola, G. Ferrari, R. Pugliese, and B. Venneri. Types for Access Control. Theoretical Computer Science, to appear, 2000. Available at http://rap.dsi.unifi.it/papers.html.
- 13.G. Ferrari, C. Montangero, L. Semini, and S. Semprini. Multiple Security Policies in Mobadtl. In Proc. Workshop on Issues in the Theory of Security (WITS’00), Geneva, 7,8 July 2000.Google Scholar
- 14.C. Fournet, G. Gonthier, J.-J. Lévy, L. Maranget, and D. Rémy. A Calculus of Mobile Agents. In U. Montanari and V. Sassone, editors, Proc. CONCUR’ 96: Concurrency Theory, 7th International Conference, volume 1119 of Lecture Notes in Computer Science, pages 406–421, Pisa, Aug. 1996. Springer-Verlag. 248 G. Ferrari et al.CrossRefGoogle Scholar
- 17.L. Gong. Inside Java 2 Platform Security. Addison-WESLEY, 1999.Google Scholar
- 18.M. Hennessy and J. Riely. Resource Access Control in Systems of Mobile Agents. In U. Nestmann and B. Pierce, editors, Proc. HLCL’ 98: High-Level Concurrent Languages, volume 16.3 of Electronic Notes on Theoretical Computer Science, pages 3–17, Nice, France, Sep. 1998. Elsevier Science Publishers.Google Scholar
- 19.D. B. Lange and M. Oshima. Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley, 1998.Google Scholar
- 20.F. Levi and D. Sangiorgi. Controlling Interference in Ambients. In Proc. 27 th Annual ACM Symp. on Principles of Programming Languages, pages 352–264, Boston, Jan 00. ACM Press.Google Scholar
- 21.P. McCann and G.-C. Roman. Compositional programming abstractions for mobile computing. IEEE Transactions on Software Engineering, 24(2):97–110, Feb. 1998.Google Scholar
- 22.C. Montangero and L. Semini. Composing Specifications for Coordination. In P. Ciancarini and A. Wolf, editors, Proc. 3nd Int. Conf. on Coordination Models and Languages, volume 1594 of Lecture Notes in Computer Science, pages 118–133, Amsterdam, Apr. 1999. Springer-Verlag.Google Scholar
- 23.G. Necula. Proof-carrying code. In Proc. of the ACM Symposium on Principles of Programming Languages. ACM, 1997.Google Scholar
- 24.L. Paulson and T. Nipkow. Isabelle. http://www.cl.cam.ac.uk/Research/HVG/Isabelle/.
- 25.D. Sangiorgi. Personal Communication.Google Scholar
- 27.P. Sewell and J. Vitek. Secure Composition of Insecure Components. In Proc. Computer Security Foundations Workshop 12, CSFW-12. IEEE, 1999.Google Scholar
- 28.J. Vitek and G. Castagna. Towards a Calculus of Secure Mobile Computations. In Proc. Workshop on Internet Programming Languages, volume 1686 of Lecture Notes in Computer Science, Chicago, Illinois, May 1998. Springer-Verlag.Google Scholar
- 29.J. E. White. Mobile Agents. In J. Bradshaw, editor, Software Agents. AAAI Press and MIT Press, 1996.Google Scholar