AJR.jpg (20877 bytes)
ajanta-menu.jpg (2499 bytes)
 
Ajanta homepage

Whats new in the Ajanta Project

People invlolved in Ajanta research

Get in touch

Ajanta papers, technical reports, whitepapers, articles, documents

Download Ajanta Software

Related research and pointers to other info on the web
 

click on the links to go there

 

search
 

 
 

 

 
   A software agent is a program that works on behalf of a human user. A mobile agent has the added ability to travel autonomously (under its own control) from machine to machine on a network. Ajanta is a mobile agent programming system being developed at the University of Minnesota. It allows agents written in Java to securely migrate from machine to machine on the Internet. The Ajanta project is aimed at building an infrastructure for mobile agent execution that incorporates security and robustness features as an integral part of the design. The system is being implemented using Java. 

    Ajanta is a system for programming agent­based applications over the Internet. In a broad sense, a mobile agent is a program which represents a user in a network and is capable of migrating autonomously from node to node, performing computations on behalf of the user. The main advantages of the mobile agent paradigm lie in its ability to move client code and computation to remote server resources, and in permitting increased asynchrony in client­server interactions. Mobile agents introduce a higher level of abstraction (in comparison to RPC and message­passing), for which many applications are naturally suited. The programmer can define agents as active application components that traverse the network performing computations relevant to their current location. The agent paradigm offers the promise of utility in many potential applications. For example, agents can be used for information searching, filtering and retrieval, and for electronic commerce on the Web, thus acting as personal assistants for their owners. As tools for system administration, they can be used in low­level network maintenance, testing, fault diagnosis, and for installing or upgrading software on remote machines. Agents are also useful for extending or modifying the capabilities of existing services by dynamically adding to their functionality. Security and robustness concerns about mobile agents are the biggest hurdle preventing the widespread use of agent­based applications. The use of mobile agents requires a participating host in the system to provide a facility for executing them. It is generally required that only authorized agents be able to execute on a host and perform any operations. Unless some countermeasures are taken, agents can potentially leak, destroy or alter sensitive data and disrupt the normal functioning of the host. Malicious agents can also cause inordinate consumption of host resources, thereby denying their use to other legitimate users. Security mechanisms are thus necessary to safeguard hosts' resources. Similarly, agents themselves need to be protected from their hosts, as an agent may carry sensitive information about the user it represents. Robustness concerns in mobile agent execution also require that an agent's owner have full control over its roaming agent. An agent's owner should be able to monitor its agents periodically or recall any of its mobile agents at any time. 

    The main focus of the Ajanta design is on mechanisms for secure and robust executions of mobile agents in open systems. In Ajanta, the mobile agent paradigm is based on the generic concept of a network mobile object. Agents in this system are active mobile objects, which encapsulate code and execution context along with data. Ajanta is implemented using the Java language and its security mechanisms are designed based on Java's security model. It also makes use of several other facilities of Java, such as object serialization, reflection, and remote method invocation. 

Current Projects

Agent Based Network Monitoring

Policy Driven Secure Distributed Collaboration

Secure Context Aware Distributed Collaboration Systems
 

Sponsors

National Science Foundation (NSF) Grants: ANIR 9813703, EIA 9818338, ITR 0082215, ANI 0087514 , CNS 0411961

 


This page was last modified on: Friday, September 07, 2007 02:28 PM

Visits since March 7, 1999: [Visit Counter Image]