Klava: a Java package for distributed and mobile applications

Highly distributed networks have now become a common infrastructure for wide‐area distributed applications whose key design principle is network awareness, namely the ability to deal with dynamic changes of the network environment. Network‐aware computing has called for new programming languages that exploit the mobility paradigm as a basic interaction mechanism. In this paper we present the architecture of KLAVA, an experimental Java package for distributed applications and code mobility. We describe how KLAVA permits code mobility by relying on Java and present a few distributed applications that exploit mobile code programmed in KLAVA. Copyright © 2002 John Wiley & Sons, Ltd.

[1]  J. C. Byington,et al.  Mobile agents and security , 1998, IEEE Commun. Mag..

[2]  Ken Arnold,et al.  JavaSpaces¿ Principles, Patterns, and Practice , 1999 .

[3]  Lorenzo Bettini,et al.  Modelling Node Connectivity in Dynamically Evolving Networks , 2001, Electron. Notes Theor. Comput. Sci..

[4]  Sara Bouchenak,et al.  Pickling threads state in the Java system , 2000, Proceedings 33rd International Conference on Technology of Object-Oriented Languages and Systems TOOLS 33.

[5]  Lorenzo Bettini,et al.  An infrastructure language for open nets , 2002, SAC '02.

[6]  Rocco De Nicola,et al.  Formalizing Properties of Mobile Agent Systems , 2002, COORDINATION.

[7]  Rocco De Nicola,et al.  A Modal Logic for KLAIM , 2000, AMAST.

[8]  Lori Pollock,et al.  Compiler analysis and optimization of tuplespace programs for distributed-memory systems , 1998 .

[9]  Jan Vitek,et al.  Coordinating processes with secure spaces , 2003, Sci. Comput. Program..

[10]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[11]  Carlo Ghezzi,et al.  Analyzing Mobile Code Languages , 1996, Mobile Object Systems.

[12]  Gordon S. Blair,et al.  Limbo: a tuple space based platform for adaptive mobile applications , 1997 .

[13]  Li Gong,et al.  Inside Java 2 Platform Security: Architecture, API Design, and Implementation , 1999 .

[14]  Rocco De Nicola,et al.  Translating Strong Mobility into Weak Mobility , 2001, Mobile Agents.

[15]  Antony I. T. Rowstron,et al.  Proving the Correctness of Optimising Destructive and Non-destructive Reads over Tuple Spaces , 2000, COORDINATION.

[16]  Rocco De Nicola,et al.  Types for access control , 2000, Theor. Comput. Sci..

[17]  Giovanni Vigna,et al.  Designing Distributed Applications with Mobile Code Paradigms , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[18]  Bennet S. Yee,et al.  How to Migrate Agents , 1998 .

[19]  Rocco De Nicola,et al.  Interactive mobile agents in X-KLAIM , 1998, Proceedings Seventh IEEE International Workshop on Enabling Technologies: Infrastucture for Collaborative Enterprises (WET ICE '98) (Cat. No.98TB100253).

[20]  Alexandru Nicolau,et al.  Advances in languages and compilers for parallel processing , 1991 .

[21]  Krzysztof Zielinski,et al.  Extention of Strand with Linda-like operations - Implementation and performance study , 1993 .

[22]  Paolo Ciancarini,et al.  The ShaPE of ShaDe: a Coordination System , 1996 .

[23]  Rocco De Nicola,et al.  KLAIM: A Kernel Language for Agents Interaction and Mobility , 1998, IEEE Trans. Software Eng..

[24]  John K. Ousterhout,et al.  A Safe Tcl Toolkit for Electronic Meeting Places , 1995, USENIX Workshop on Electronic Commerce.

[25]  Cecilia Mascolo,et al.  Using a coordination language to specify and analyze systems containing mobile components , 2000, TSEM.

[26]  David Gelernter,et al.  Multiple Tuple Spaces in Linda , 1989, PARLE.

[27]  Lorenzo Bettini,et al.  LINGUISTIC CONSTRUCTS FOR OBJECT-ORIENTED MOBILE CODE PROGRAMMING & THEIR IMPLEMENTATIONS , 2003 .

[28]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[29]  Jim Waldo,et al.  The Jini Specification , 1999 .

[30]  Stefanos Kaxiras,et al.  Dynamic Optimizations in Linda Systems , 1998 .

[31]  Joel H. Saltz,et al.  Network-aware mobile programs , 1997 .

[32]  Tobin J. Lehman,et al.  T Spaces , 1998, IBM Syst. J..

[33]  Christian F. Tschudin,et al.  Protecting Mobile Agents Against Malicious Hosts , 1998, Mobile Agents and Security.

[34]  Danny B. Lange,et al.  Programming and Deploying Java¿ Mobile Agents with Aglets¿ , 1998 .

[35]  Nicholas Carriero,et al.  How to write parallel programs: a guide to the perplexed , 1989, CSUR.

[36]  David P. Anderson,et al.  SETI@home-massively distributed computing for SETI , 2001, Comput. Sci. Eng..

[37]  Paolo Ciancarini,et al.  Jada - Coordination and Communication for Java Agents , 1996, Mobile Object Systems.

[38]  Nicholas Carriero,et al.  Adaptive Parallelism and Piranha , 1995, Computer.

[39]  Antony I. T. Rowstron,et al.  An Efficient Distributed Tuple Space Implementation for Networks of Workstations , 1996, Euro-Par, Vol. I.

[40]  Lorenzo Bettini,et al.  Structured nets in KLAIM , 2000, SAC '00.

[41]  Lorenzo Bettini X-KLAIM: a Programming Language for Object-Oriented Mobile Code. User's manual , 2004 .

[42]  Tommy Thorn,et al.  Programming languages for mobile code , 1997 .

[43]  Dwight Deugo,et al.  Mobile agent messaging models , 2001, Proceedings 5th International Symposium on Autonomous Decentralized Systems.

[44]  Giorgio Ghelli,et al.  TQL Algebra and its Implementation , 2002, IFIP TCS.

[45]  Jan Vitek,et al.  A Coordination Model for Agents Based on Secure Spaces , 1999 .

[46]  Amy L. Murphy,et al.  LIME: Linda meets mobility , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[47]  Franco Zambonelli,et al.  Reactive Tuple Spaces for Mobile Agent Coordination , 1998, Mobile Agents.

[48]  Aaron Kershenbaum,et al.  Mobile Agents: Are They a Good Idea? , 1996, Mobile Object Systems.

[49]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[50]  Jan Vitek,et al.  Mobile Object Systems Towards the Programmable Internet , 1996, Lecture Notes in Computer Science.

[51]  Matt Bishop,et al.  What Is Computer Security? , 2003, IEEE Secur. Priv..

[52]  李幼升,et al.  Ph , 1989 .

[53]  Robert S. Hanmer,et al.  Fault-tolerant telecommunication system patterns , 1996 .

[54]  Ken Arnold,et al.  The Java Programming Language , 1996 .

[55]  John K. Ousterhout,et al.  Safe Tcl: a toolbox for constructing electronic meeting places , 1995 .

[56]  Bennet S. Yee A Sanctuary for Mobile Agents , 2001, Secure Internet Programming.

[57]  Rocco De Nicola,et al.  A Java Middleware for Guaranteeing Privacy of Distributed Tuple Spaces , 2002, FIDJI.

[58]  Holger Peine,et al.  The Architecture of the Ara Platform for Mobile Agents , 1999, Mobile Agents.

[59]  Joel H. Saltz,et al.  Sumatra: A Language for Resource-Aware Mobile Programs , 1996, Mobile Object Systems.

[60]  Philip R. Zimmermann,et al.  The official PGP user's guide , 1996 .

[61]  Gian Pietro Picco µCODE: A Lightweight and Flexible Mobile Code Toolkit , 1998, Mobile Agents.

[62]  Danny B. Lange,et al.  Programming and Deploying Mobile Agents with Java Aglets , 1998 .