Mobile agents (2) - PowerPoint PPT Presentation

About This Presentation
Title:

Mobile agents (2)

Description:

PDAs etc. Aglets Java based mobile agent system I have chosen to present this because of its major focus on mobility Research project at IBM Japan ... – PowerPoint PPT presentation

Number of Views:136
Avg rating:3.0/5.0
Slides: 14
Provided by: JohnKubi2
Learn more at: http://www.cs.ucf.edu
Category:
Tags: agent | agents | mobile

less

Transcript and Presenter's Notes

Title: Mobile agents (2)


1
Mobile agents (2)
  • EEL 5937 Multi Agent Systems
  • Lotzi Bölöni

2
Weak mobility
3
Weak mobility
  • In the case of weak mobility, agents are allowed
    to transfer data only at specific instances.
  • Weak mobility puts smaller requirements on the
    agent systems
  • Traditional programming languages can be used
    Java, Perl, Python, Lisp
  • Smaller performance penalty
  • But there are still a number of challenges

4
Challenges in soft mobility
  • Platform independent code
  • How do I handle heterogeneous systems?
  • What about _extremely_ heterogeneous systems?
  • How to collect state / data?
  • How to mark checkpoints (when is mobility
    possible)?
  • Authorization, security, resource management
  • Reliability problems
  • How do I handle open files and other local
    resources?
  • How do I handle global names? How do I send a
    message to a mobile agent? What is the address of
    the agent?

5
Agent systems with weak mobility
  • Most agent system designers considered that
    migration is a relatively rare even in the life
    of the agent system.
  • Thus weak mobility
  • The agent system is allowed to migrate, but
    migration is not a fundamental type of operation,
    but a problem to be solved
  • In Telescript, migration was the basic
    communication primitive!
  • Examples
  • Aglets, Jade, Concordia, Grasshopper, Bond 2,
    aIsland (JXTA)
  • About 60 agent systems on the Mobile Agent List
  • http//mole.informatik.uni-stuttgart.de/mal/mal.ht
    ml

6
Standards for weak mobility
  • Object Management Group (OMG), an international
    consortium dealing with interoperability
    specifications (e.g. CORBA)
  • MASIF Mobile Agent Facility
  • A specification, released in 2000, specifying how
    CORBA based agents should implement weak mobility
  • There are a number of conformant agent systems
    (eg. Grasshopper, partially Aglets)
  • As of yet, FIPA did not release any standard for
    agent mobility.
  • But they did for mobile (nomadic) users, eg. PDAs
    etc.

7
Aglets
  • Java based mobile agent system
  • I have chosen to present this because of its
    major focus on mobility
  • Research project at IBM Japan (from 1996)
  • Danny Lange and Mitsuro Oshima
  • http//www.trl.ibm.com/aglets/index_e.htm
  • As IBM decided to phase out the project it was
    released as an Open Source project
  • http//aglets.sourceforge.net/

8
Aglets (contd)
  • Goal Provide an easy and comprehensive model
    for programming mobile agents without requiring
    modifications to Java VM or native code

9
Aglet Lifecycle
10
Agent lifecycle
  • Instantiating
  • Creating a new aglet from the codebase
  • Cloning (the clone has the same state as the
    original but different identity)
  • An aglet can dispatch itself to a remote server
    by calling the Aglet.dispatch(URL dest)
    primitive. To be more precise, an aglet occupies
    the aglet context and can move from this context
    to others during its execution. Because the
    server may serve multiple contexts within one
    Java VM, and one host may serve multiple servers
    in one host the context are named as the
    following set
  • the address of the host, typically IP-address.
  • the port number to which the server is listening.
  • the name of context within the server.
  • Example atp//aglets.ibm.com1434/context_name
  • ATP// Aglets Transport Protocol

11
Aglet lifecycle (contd)
  • Dispatching causes an aglet to suspend its
    execution, serialize its internal state and
    bytecode into the standard form and then to be
    transported to the destination. On the receiver
    side, the Java object is reconstructed according
    to the data received from the origin, and a new
    thread is assigned and executed.
  • Aglets can be persistent. Since a mobile aglet
    needs to be serializable into a bit-stream, all
    mobile aglet can be persistent in nature. The
    Aglet.deactivate(long timeout) primitive causes
    an aglet to be stored in secondary storage and to
    sleep for a specified number of milliseconds.

12
Migration events in Aglets
13
Security issues in aglets / mobile agents
  • For secure agent execution, the agent system must
    provide the following security services
  • Authentication of the Sender, the Manufacturer
    and the Owner of the Agent.
  • Who is responsible for this agent?
  • Who is responsible for the agent code?
  • Has the agent (code and state) been tampered
    with?
  • Authorization of the Agent (or Its Owner)
  • What can this agent do? (E.g, can this agent
    access files?)
  • Secure Communication between Agent Systems.
  • Can the agent protect its privacy?
  • Non-repudiation and Auditing.
  • How can we ensure that a deal has been actually
    carried out?
  • Security-sensitive activities of agents must be
    recorded, and an administrator must be able to
    audit them.
Write a Comment
User Comments (0)
About PowerShow.com