The Joint Symposium ASA-MA 2000 Department of Computer Science
Swiss Federal Institute of Technology (ETH)
ASAMA-Home   Call for Papers Program Information Registration Symposium Committee General Information
[goto]   [goto] [current] [goto] [goto] [goto]

Symposium Tutorials

[T1] Wednesday Morning (9:00am - 12:30pm)
Bob Gray (Dartmouth College)
Introduction to Mobile Agents: Performance, Security and Programming Examples
[T2] Wednesday Morning (9:00am - 12:30pm)
Franco Zambonelli (Universita di Modena e Reggio Emilia), Andrea Omicini (Universita di Bologna)
Coordination Technologies for Internet Agents
[T3] Friday Afternoon (1:30pm - 5pm)
Günter Karjoth (IBM Research)
Security Services for Mobile Agent-based Applications
[T4] Friday Afternoon (1:30pm - 5pm)
Peer Hasselmeyer (Darmstadt University)
Introduction to Jini

Tutorial Abstracts

[T1] Introduction to Mobile Agents: Performance, Security and Programming Examples

  • Speaker: Bob Gray (Dartmouth College)
  • Time: Wednesday Morning (9:00am - 12:30pm)
Abstract: Some agents, even if they are performing simple tasks, can achieve a significant performance improvement by moving themselves to more attractive network locations. For example, if an agent needs to interact with a resource on the other side of an unreliable network link, it could improve performance by moving itself to some proxy machine on the other side of that link.

Agents that can move themselves to new locations are called mobile agents. More specifically, a mobile agent is an agent that can move at times of its own choosing from machine to machine in a heterogeneous network.

Of course, moving to a new location will not be advantageous for all applications or in all network environments. Mobility is best viewed as simply another tool available to the agent programmer, to be used or ignored as the application and its target environment dictates.

In this tutorial, we first explore the situations in which mobility should and should not be used. These situations depend on the network environment, the application's task, the performance metric of interest, and the properties of the selected mobile-agent system. During this exploration, we use the D'Agents mobile-agent system ( as a case study, and consider several information-retrieval applications that have been implemented on top of it. Along the way, we look at several example D'Agent programs, and also survey other state-of-the-art mobile-agent systems and applications.

After considering performance, we turn our attention to security, which is one of the key technical challenges in mobile-agent systems. Machines must be protected from malicious mobile agents, and mobile agents must be protected from malicious machines. We briefly consider current techniques and research, and speculate on future directions.

The tutorial provides an overview of mobile agents, guidelines to when they should be used, and practical examples of mobile-agent programming. The tutorial is an introductory tutorial, is similar to Bob Gray's tutorials at IPPS'99 and PAAM 2000, and will be of most interest to agent programmers who are interested in adding code mobility to their repertoire.

The tutorial provides only a brief overview of mobile-agent security. Conference attendees who are interested in a more in-depth treatment of mobile-agent security should attend Gunter Karjoth's tutorial "Security Services for Mobile Agent-based Applications", which is also offered at ASA/MA 2000.

[T2] Coordination Technologies for Internet Agents

Abstract: Internet applications are typically made of a multiplicity of autonomous, network-aware and mobile entities (Internet agents), which are of an intrinsic interactive nature. In this context, the definition of appropriate coordination models, languages and architectures is a key issue for the effective design and development of multi-agent Internet applications.

The first part of the tutorial sketches the main issues related to Internet agent interactions, and surveys the proposals of well- known Internet agent systems. The second part of the tutorial introduces the concept of coordination model, and shows that a coordination model may represent a powerful framework for the design and development on multi-agent Internet applications. The third part of the tutorial focuses on tuple-based coordination models and details the characteristics of several commercial and research proposals.

Two application examples (cooperative information retrieval and conference management) are taken as case studies thorough the tutorial to evaluate the impact of different coordination models and architectures in application design and execution.

The tutorial will give attendees an in-deep understanding of the problems related to interaction and coordination in Internet applications based on network-aware and mobile agents. In particular, the attendees will acquire a global view of the currently available coordination techniques and will learn how the choice of a suitable coordination model can positively impact on the design of multi-agent systems on the Internet, and can help managing the specific problems of Internet interactions.

[T3] Security Services for Mobile Agent-based Applications

Abstract: Mobile agents offer a new paradigm for distributed computation, but their potential benefits must be weighed against the very real security threats they pose. These threats originate not just in malicious agents but in malicious hosts as well. A mobile agent's user needs to be able to trust that the agent cannot be subverted when visiting a malicious server or at least that illegal modifications can later be detected.

In this tutorial, we first introduce concepts and basic mechanisms of network security. Next, we study the security requirements of mobile agent applications covering areas such as electronic commerce, work flow, and telecommunications. We then discuss existing security mechanisms, for example the provision of controlled access to server resources and the protection of agent resources. We also evaluate the feasibility of new mechanisms. Finally, we sketch the definition of a generic security service targeted for the needs of mobile agent application programmers.

The tutorial provides an overview of security risks, an analysis of the requirements placed on a secure and reliable agent system, a review of the state of the art of countermeasures, and the definition of a security architecture. Prior knowledge in security is helpful but not required.

[T4] Introduction to Jini

  • Speaker: Peer Hasselmeyer (Darmstadt University)
  • Time: Friday Afternoon (1:30pm - 5:00pm)
Abstract: Jini is a Java technology for "spontaneous networking" and the formation of ad hoc service federations. In addition to enabling plug-and-play for hardware and software, it offers improved flexibility for creating distributed applications by supporting mobile code, dynamic binding of components, and strict service orientation.

This tutorial starts with an introduction to middleware and ubiquitous computing to motivate the importance of spontaneous networking. Some important building blocks of Jini, in particular Java Remote Method Invocation (RMI), Serialization, and Java's mobile code features are described. After this introductory part, the main Jini infrastructure is thoroughly discussed. The Jini Lookup Service as well as Jini's protocols, namely discovery, join, and lookup, are presented. A number of programming examples is shown to help better understand the basic technology. In addition, further concepts and advanced services of the Jini architecture, in particular leases, distributed events, transactions, and JavaSpaces, are explained. Weak points of Jini, especially security and support for resource-limited devices are identified and a short look at the future is taken.

Join: Registration . Accommodation . IBM Student Awards! Where: Location . Zurich . Travel Info
Contribute: Call for Papers . Call for Posters . Submissions Who: Committees . ETH . Our Sponsors
What: Technical Program . Tutorials . Banquet . Excursions ASA/MA 2000 Quick Access

Last updated December 30 2003 02:23:24 PM MET ml