PRESENTED BY:
ABDALLA ELAOGALI
Mobile Agents
THE LIBYAN ACADEMY
COMPUTER SCIENCE
Agent Systems
Fall 2013
Outline
Introduction
What are Agents?
What is a Mobile Agent
Static and Mobile Agent
More about Mobile Agents
Why use Mobile Agents?
Working of Mobile Agents
The life cycle of a Mobile Agen
Outline - cont
Agent Migration Strategies
oStrong Migration
oWeak Migration
Properties of Mobile Agents
Agent Communication Strategies
Applications of Mobile Agents
Advantages of Mobile Agents
Disadvantages of Mobile Agents
Security Issues
Conclusions
References
What are Agents?
The concept of agents is not an unfamiliar one. The
precepts of agent technology have existed in many
of the applications we use today and take for
granted. For example, your e-mail client.
Recently, intelligent agents have come to vogue.
One of the most interesting and much vaunted
category of agents is mobile agents.
Anand Tripathi, University of Minnesota
5
Mobile Agents
A mobile agent is an object capable of autonomously
migrating from one host to another in a distributed
system to perform actions on behalf of its creator.
Client
agent
(code+data)
Mobile Agent
Server 1
Server 3 Server 2
Static and Mobile Agents
Static agents achieve their goal by executing on a
single machine.
mobile agents migrate from one computer to another
in the network and execute on several machines.
Mobility increases the functionality of the mobile
agent and allows the mobile agent to perform tasks
beyond the scope of static agents.
Figure 1
More about Mobile Agents
A mobile agent is an active object that can move both
data and functionality (code) to multiple places
within a distributed system.
A mobile agent should be able to execute on any
machine within a network, regardless of the
processor type or operating system.
Figure 1
Why use Mobile Agents?
User passivity/data timeliness
Multi-staged/multi-processed calculations
Untrusted collaborators
Low-reliability/partially-disconnected networks
Figure 1
Working of Mobile Agents
A mobile agent consists of the program code and the
program execution.
Initially a mobile agent resides on a computer called
the home machine.
The agent is then dispatched to execute on a remote
computer called a mobile agent host.
The life cycle of a Mobile Agent
• 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.
Cont,
• 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.
Agent Migration Strategies
Strong Migration
The code, data and execution state are migrated to
the next host.
Weak Migration
Involves only the migration of the code and data
state of the mobile agent.
Properties of Mobile Agents
Adaptive Learning
Mobile agents can learn from experiences and
adapt themselves to the environment
Autonomy
Mobile agents can take some decisions on its own.
Mobility
Mobile agents have the ability to move from one
host to another in the network.
Agent Communication Strategies
a mobile agent should interacts and cooperates with
others.
To communicate with a remote mobile agent:
owe must find the location of the agent and route the
message to it.
oA naming scheme is needed to identify agents in a
unique fashion.
oOne mechanism such as message passing, streams,
events, proxies, blackboard mechanism and CORBA
as a communication protocol.
Applications of Mobile Agents
Mobile Agents are suitable for the following applications
Parallel Computing.
Data Collection .
E-commerce.
Mobile Computing.
Advantages of Mobile Agents
 Reduction in bandwidth usage.
 Reduce total time.
 Reduce Latency.
 Disconnected Operation.
 Load Balancing.
 Dynamic Deployment.
Reduction in bandwidth usage
Dataset
Dataset
Dataset
Dynamicall
y selected
proxy site
Merged and
filtered data
stream
Server
Dataset
Proxy
Proxy
Server
Dataset
Reduction in bandwidth usage
cont,
Overcome total time
Dataset
Dataset
Dataset
Fact
• Sending an agent avoids remote interaction.
Goal
• Avoiding remote interaction leads to faster completion
times.
Current Systems
• Do not meet the goal in all network environments
• Tradeoff: Local interaction vs. interpretive overhead
Reduction in latency
Sumatra chat server
[RASS97]
1. Observe
high average
latency to
clients
2. Move to
better location
2 to 4 times
smaller latency
in trial runs
Disconnected Operation
Dataset
Dataset
Dataset
Dynamicall
y selected
proxy site
X
Agent continues its task even
if the link to its home
machine goes down
(temporarily).
Load Balancing
Machine A Machine B
Machine A Machine B
Agent moves to
balance load
Dynamic Deployment
Dataset
Dataset
Disadvantages of Mobile Agents
The main drawback of mobile agents is the security
risk involved in using mobile agents.
Security risks in a mobile computing environment
are twofold.
Conclusions
Distributed computing involving several computers
in a network can be achieved using message passing
or remote procedure calls (RPC).
References
Strategies of Mobile Agent for Handling a
Task.ISSN: 2277-3754 ISO 9001:2008 Certified
International Journal of Engineering and Innovative
Technology (IJEIT) Volume 2, Issue 1, July 2012 244
Cornell University, Department of Computer
Science.
http://www.cs.cornell.edu
WIKIPEDIA The Free Encyclopedia
http://en.wikipedia.org/wiki/Mobile_agent
Mole - Concepts of a Mobile Agent System
Dipl.-Inform. J. Baumann, Dipl.-Inform. F. Hohl, Prof. Dr.
K. Rothermel, Dipl.-Inform. M. Straßer
Security Issues in Mobile Code Systems
David M. Chess
http://klynch.com/documents/agents/#Refs

Mobile Agents

  • 1.
    PRESENTED BY: ABDALLA ELAOGALI MobileAgents THE LIBYAN ACADEMY COMPUTER SCIENCE Agent Systems Fall 2013
  • 2.
    Outline Introduction What are Agents? Whatis a Mobile Agent Static and Mobile Agent More about Mobile Agents Why use Mobile Agents? Working of Mobile Agents The life cycle of a Mobile Agen
  • 3.
    Outline - cont AgentMigration Strategies oStrong Migration oWeak Migration Properties of Mobile Agents Agent Communication Strategies Applications of Mobile Agents Advantages of Mobile Agents Disadvantages of Mobile Agents Security Issues Conclusions References
  • 4.
    What are Agents? Theconcept of agents is not an unfamiliar one. The precepts of agent technology have existed in many of the applications we use today and take for granted. For example, your e-mail client. Recently, intelligent agents have come to vogue. One of the most interesting and much vaunted category of agents is mobile agents.
  • 5.
    Anand Tripathi, Universityof Minnesota 5 Mobile Agents A mobile agent is an object capable of autonomously migrating from one host to another in a distributed system to perform actions on behalf of its creator. Client agent (code+data) Mobile Agent Server 1 Server 3 Server 2
  • 6.
    Static and MobileAgents Static agents achieve their goal by executing on a single machine. mobile agents migrate from one computer to another in the network and execute on several machines. Mobility increases the functionality of the mobile agent and allows the mobile agent to perform tasks beyond the scope of static agents. Figure 1
  • 7.
    More about MobileAgents A mobile agent is an active object that can move both data and functionality (code) to multiple places within a distributed system. A mobile agent should be able to execute on any machine within a network, regardless of the processor type or operating system. Figure 1
  • 8.
    Why use MobileAgents? User passivity/data timeliness Multi-staged/multi-processed calculations Untrusted collaborators Low-reliability/partially-disconnected networks Figure 1
  • 9.
    Working of MobileAgents A mobile agent consists of the program code and the program execution. Initially a mobile agent resides on a computer called the home machine. The agent is then dispatched to execute on a remote computer called a mobile agent host.
  • 10.
    The life cycleof a Mobile Agent • 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.
  • 11.
    Cont, • Retraction: anagent 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.
  • 12.
    Agent Migration Strategies StrongMigration The code, data and execution state are migrated to the next host. Weak Migration Involves only the migration of the code and data state of the mobile agent.
  • 13.
    Properties of MobileAgents Adaptive Learning Mobile agents can learn from experiences and adapt themselves to the environment Autonomy Mobile agents can take some decisions on its own. Mobility Mobile agents have the ability to move from one host to another in the network.
  • 14.
    Agent Communication Strategies amobile agent should interacts and cooperates with others. To communicate with a remote mobile agent: owe must find the location of the agent and route the message to it. oA naming scheme is needed to identify agents in a unique fashion. oOne mechanism such as message passing, streams, events, proxies, blackboard mechanism and CORBA as a communication protocol.
  • 15.
    Applications of MobileAgents Mobile Agents are suitable for the following applications Parallel Computing. Data Collection . E-commerce. Mobile Computing.
  • 16.
    Advantages of MobileAgents  Reduction in bandwidth usage.  Reduce total time.  Reduce Latency.  Disconnected Operation.  Load Balancing.  Dynamic Deployment.
  • 17.
    Reduction in bandwidthusage Dataset Dataset Dataset Dynamicall y selected proxy site Merged and filtered data stream
  • 18.
  • 19.
    Overcome total time Dataset Dataset Dataset Fact •Sending an agent avoids remote interaction. Goal • Avoiding remote interaction leads to faster completion times. Current Systems • Do not meet the goal in all network environments • Tradeoff: Local interaction vs. interpretive overhead
  • 20.
    Reduction in latency Sumatrachat server [RASS97] 1. Observe high average latency to clients 2. Move to better location 2 to 4 times smaller latency in trial runs
  • 21.
    Disconnected Operation Dataset Dataset Dataset Dynamicall y selected proxysite X Agent continues its task even if the link to its home machine goes down (temporarily).
  • 22.
    Load Balancing Machine AMachine B Machine A Machine B Agent moves to balance load
  • 23.
  • 24.
    Disadvantages of MobileAgents The main drawback of mobile agents is the security risk involved in using mobile agents. Security risks in a mobile computing environment are twofold.
  • 25.
    Conclusions Distributed computing involvingseveral computers in a network can be achieved using message passing or remote procedure calls (RPC).
  • 26.
    References Strategies of MobileAgent for Handling a Task.ISSN: 2277-3754 ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 2, Issue 1, July 2012 244 Cornell University, Department of Computer Science. http://www.cs.cornell.edu WIKIPEDIA The Free Encyclopedia http://en.wikipedia.org/wiki/Mobile_agent Mole - Concepts of a Mobile Agent System Dipl.-Inform. J. Baumann, Dipl.-Inform. F. Hohl, Prof. Dr. K. Rothermel, Dipl.-Inform. M. Straßer Security Issues in Mobile Code Systems David M. Chess http://klynch.com/documents/agents/#Refs