0% found this document useful (0 votes)
126 views27 pages

Mobile Agent PDF

Mobile agents are software programs that can autonomously migrate between nodes in a network to perform tasks; they contain code, state, and attributes. A mobile agent system provides support for agent execution, management, security, mobility, identification, communication and transactions to enable the movement of agents across networks. While mobile agents can reduce network usage and latency, security remains a key challenge for their widespread adoption.

Uploaded by

Dipesh Chaudhary
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
126 views27 pages

Mobile Agent PDF

Mobile agents are software programs that can autonomously migrate between nodes in a network to perform tasks; they contain code, state, and attributes. A mobile agent system provides support for agent execution, management, security, mobility, identification, communication and transactions to enable the movement of agents across networks. While mobile agents can reduce network usage and latency, security remains a key challenge for their widespread adoption.

Uploaded by

Dipesh Chaudhary
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Mobile Agent

1
Outline
• Introduction to Mobile Agent(MA)
• Introduction to Mobile Agent
System(MAS)
• Some issues of Mobile Agent
• Mobile Agent application
• Concluding remarks

2
What is mobile agent?
• Mobile agents are defined as active objects (or
clusters of objects) that have behavior, state and
location.
• Mobility: Agents that can travel in network
• Autonomy: Agent itself decides when and
where to migrate next
• Opposite :
• Stationary agent
• Mobile code (Applets)

3
Comparison of 3 Network
computing paradigm
Client-Server Paradigm Code-on-Demand Paradigm
Download
Server (Applet) Know
Client Client how Server
Know- Know-
how how

Mobile Agent Paradigm


Agent Agent
Network
Know- how Know- how

Host Host

4
A Mobile Agent Dissected

• A mobile agent contains the following 3 components:

• Code - the program (in a suitable language) that defines the


agent's behavior.

• State - the agent's internal variables etc., which enable it to


resume its activities after moving to another host.

• Attributes - information describing the agent, its origin and


owner, its movement history, resource requirements,
authentication keys etc. Part of this may be accessible to the
agent itself, but the agent must not be able to modify the
attributes

5
Events in Mobile Agent’s
life-time
• Creation: a brand new agent is born and its state is
initialized.

• Dispatch: an agent travels to a new host.

• Cloning: a twin agent is born and the current state of


the original is duplicated in the clone.

• Deactivation: an agent is put to sleep and its state is


saved in persistent storage.

• Activation: a deactivated agent is brought back to


life and its state is restored from persistent storage.
6
Contd
• Retraction: an agent is brought back from a
remote host along with its state to the home
machine.

• Disposal: an agent is terminated and its state is


lost forever.

• Communication: Notifies the agent to handle


messages incoming from other agents , which
is the primary means of inter-agent
correspondence.
7
MA System Arichitecture
• The main components include
• mobile agents (defined before)
• places
• supports the execution of particular procedures and provides
access to local resources.
• agent systems
• Places inside an agent system may share resources, code, or
security mechanisms and, in general, have a privileged
relationship with each other and less expensive mobility.
• Regions
• Agent systems may be grouped in regions. A region represents
a security domain where network-wide resources are accessed
following a uniform policy.
• Principals
• Agents, places, agent systems, and regions are associated with
a number of principals that represent real-world entities such as
a person, an organization, or a company.

8
9
Requirement of a MAS
• Agent Execution Support,
• Management Support,
• Security Support,
• Mobility Support,
• Unique Identification of Agents Support,
• Transaction Support, and
• Communication Support.

10
Object mobility
• Strong Mobility
• Migration of agent code, data and execution state

• Weak Mobility
• Migration of only the agent code and data

• Strong mobility is difficult to accomplish!


• If the agent code is interpreted, access to the execution state
is difficult to obtain
• If the agent code is compiled before execution, the execution
state is represented by the stack. Transporting the stack and
rebuilding it on a different host, which can be an entirely
different architecture, is a nontrivial task.

11
Support Languages for
mobile agent
• The first language for programming mobile
agents called TeleScript was introduced in
1994.
• Mobile agent could be implement by various
languages, but java language is the most
popular because:
• Platform independence.
• Create once, go everywhere.
• Object-oriented feature
• Security model

12
Security issue - host
security
• Authentication of user
• Determination of whether the user has
the authorization to execute
• Determination of agents ability to pay
for the service provided by the server

13
Trusted and un-trusted
mobile agent
• Some MA platform treat trusted and
untrusted agent differently
• Untrusted agents are prohibited to run
dangerous command.

14
Agent Security- agent
security
• Example:
• An agent roams around the Internet to look for the
lowest price of a air ticket; it remembers the lowest
price it finds most recently
• Data tampering: change of execution state of
agents by malicious hosts (“brain-flush” the agent
of the lowest price it remembers)
• Solution:
• Agent tampering detection (e.g. cryptographic
watermarks)
• Prevention (e.g. execution of encrypted functions)

15
Virus detection

• One Solution: to make the system Turing-complete.


• Consider an mobile agent only have the following
limited power:
• to alter its own internal state variables
• to make database queries in the current server
• to move to another server
• to send text message back to its owner

16
Standardization of
mobile agent
• There are various mobile agent system
available such as AgentTcl , Aglets,
MOA, Grasshopper and Odyssey.
• These differ widely in architecture and
implementation. thereby impeding
interoperability, rapid proliferation of
agent technology

17
Standardization of
mobile agent (contd)
• MASIF is a Standardization effort by the
Object Management Group (OMG) to enable
different mobile agent systems to
interoperate.
• MASIF provide 2 sets of interfaces to
standardizes:
• Agent Management
• Agent Transfer
• Agent and Agent System Names.
• Agent System Type and Location Syntax.
18
Standardization of
mobile agent (contd)

• Other standardization effort include


developing a common Agent
Communication Languages (e.g., KQML)
to improve interoperability between
agents, and between agents and mobile
agent middleware

19
other issues related to
mobile agent
• Execution performance
Execution performance is often sacrificed
in order to achieve portability via code
interpretation. Justintime compilation is one
way towards better performance.
• Robustness.
Adding robustness involves fault tolerance
schemes (e.g., coping with hosts crashing)
and is key for trust and acceptance of the
technology in companies.
20
Competing Technologies

• Message passing systems


• Remote Method Invocation (RMI)
• Common Object Remote Broker
Architecture (CORBA) etc.
Distributed objects frameworks are
de-centralized but their functionality
is fixed

21
Mobile Agent vs. Remote
Procedure Call(RPC)
RPC:
• using Synchronous protocol-High Efficiency
and low latency
• Scaling -- Multiple servers
Mobile Agent:
• Messaging(Asynchronous) :Robustness,
especially in wide area network
• Every node is a server

22
Application Areas for
Mobile Agents
• Data collection from many places

• Searching and filtering

• Monitoring

• Negotiating

23
Application area for
Mobile Agent(cont’)
• Bartering

• Parallel processing

• Entertainment

• Targeted information dissemination

24
Potential usage for
mobile client
• Mobile clients’ feature:
1. They only intermittently connected to a network,
2. Even when connected they have limited bandwidth
3. They have limited storage and processing
capability
• Mobile agents’ feature:
1. Reduction of Network traffic
2. Asynchronous interaction
3. Remote searching and filtering

25
Concluding Remarks
Achievement:
• MA can effectively reduce network load and overcome network
latency.
• MA can improve both flexibility and communication robustness.
• MA has proved to be beneficial to information collection and
monitoring.
Open issue:
• Security, secrecy and complexity(easy to deploy but hard to
debug), and execution performance remain a big challenge for
its industrial use.
• Limited availability of quantitative performance evaluation
• Further standardization work still required for heterogeneous
environments

26
Reference
• http://www.cnri.reston.va.us/home/koe/index.html
• http://www.ikv.de/products/grasshopper/
• http://www.cs.dartmouth.edu/˜agent/
• http://mole.informatik.uni-stuttgart.de/
• http://www.jumpingbeans.com
• http://www.dsg.technion.ac.il/fargo/
• http://sun195.iit.unict.it/MAP
• http://www.trl.ibm.com/aglets/

27

You might also like