Upload
arnab-pal
View
219
Download
0
Embed Size (px)
Citation preview
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 1/40
Anjan Mondal (Roll No. - 01)
Arnab Pal (Roll No. - 02)
M.E. (Software Engineering)
Dept. of Information Technology Jadavpur University
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 2/40
Meaning of Agent ‘An agent is a computer system that is situated in some
environment, and that is capable of autonomous action
in this environment in order to meet its design objectives’.
Two basic properties of Software Agents :
Autonomicity – ability to act without direct human
intervention.
Situatedness – Agents tend to be used where the
environment is challenging (dynamic, unpredictable
and unreliable).
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 3/40
How Agent works
SENSORS
ACTUATORS
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 4/40
Other properties of Agent Reactive – senses changes in the environment and
acts accordingly to those changes.
Proactive – persistently pursues goals.
Flexible – has multiple ways of achieving goals.
Robust – recovers from failure.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 5/40
Properties of Agent contd. Communicative – able to communicate withother agents.
Mobile – can travel from one host to another.
Learning – adapts in accordance with previous
experience.
Believable – appears believable to the end-user.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 6/40
Definition of a Stationary Agent A stationary agent executes only on the system
where it begins execution. If it needs information
that is not on that system, or needs to interact withan agent on a different system, it typically uses acommunication mechanism such as remoteprocedure calling (RPC).
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 7/40
What is a Mobile Agent? Program that can migrate from system to system
within a network environment
Performs some processing at each host Agent decides when and where to move next
How does it move ?
Save stateTransport saved state to next system
Resume execution of saved state
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 8/40
Evolution End point in the incremental evolution of mobile
abstractions such as mobile code, mobile objects,mobile processes.
Mobile Code – transfers (code)
Mobile Object – transfers (code + data)
Mobile Process – transfers
(code + data + thread state) Mobile Agent – transfers
(code + data + thread + authority of its owner)
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 9/40
A Mobile Agent Dissected A mobile agent contains the following 3 components:
Code - the program (in a suitable language) that definesthe agent's behavior.
State - the agent's internal variables etc., which enable itto resume its activities after moving to another host.
Attributes - information describing the agent, its originand owner, its movement history, resource requirements,authentication keys etc. Part of this may be accessible tothe agent itself, but the agent must not be able to modify the attributes
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 10/40
Levels of Mobility Weak Mobility
When moving a mobile agent carries
(code + data state)
Data State - global or instance variable
On moving, execution has to start from thebeginning
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 11/40
Levels of Mobility Strong Mobility
When moving a mobile agent carries
(code + data state + execution state) Data State - global or instance variable
Execution State – local variables and threads
On moving, execution can continue from thepoint it stopped on the previous host
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 12/40
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 lifeand its state is restored from persistent storage.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 13/40
Events in Mobile Agent’s life-time
Retraction: an agent is brought back from a remotehost along with its state to the home machine.
Disposal: an agent is terminated and its state is lostforever.
Communication: Notifies the agent to handle
messages incoming from other agents , which is theprimary means of inter-agent correspondence.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 14/40
Agent Life-Cycle Model
Agent Agent
ClassFileDisk
Storage
CreateDeactivate Activate
Dispose
Clone
Retract
Dispatch
Context BContext A
Agent Life Cycle
Agent
Disk
Storage
Disk
Storage
-Creation
-Cloning
-Dispatching andRetraction (Mobility )
-Disposal
-Activation andDeactivation (Persistence)
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 15/40
Applets, Servlets and Mobile Agents Applet – Downloaded from server to client.
Servlet – Uploaded from client to server.
Mobile Agents – Detached from client, can have
multiple hops.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 16/40
Mobile Code Systems: Design Four basic types:
Client/Server
Code on DemandRemote Evaluation
Mobile Agents
Elements
Data (stored result sets)Code (commands)
Program stack (current status of the program)
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 17/40
Client/Server
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 18/40
Client/Server Discussion Examples: WWW, RPC, Webservices, CORBA, EJBs Elements
data - mobilecode - staticprogram stack – static
Advantageseasy to implement
widespread Disadvantagesthere‘s no “one size fits all“
CORBA (Common Object Request Broker Architecture), EJB (Enterprise JavaBeans)
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 19/40
Mobile Agents
ResultSunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 20/40
Mobile Agents Discussion Elements
data - semi-mobile (necessary data is mobile)code - mobile
program stack – mobile
The Mobile Agent paradigm can solve all distributed computing issues
NO! Mobile Agents are not a substitute for client-server techniques. The two techniques augment eachother and very often a combination of the two is themost appropriate.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 21/40
Seven Good Reasons for Mobile Agents Danny Lange’s Seven Good Reasons For Mobile Agents
They reduce network load
They overcome network latency
They encapsulate protocols
They execute asynchronously and autonomously
They adapt dynamically
They are naturally heterogeneousThey are robust and fault-tolerant
There is still no killer app for mobile agents!
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 22/40
Companies and Products IBM: AgletsInformation on Aglets can be found at http://www.trl.ibm.co.jp/aglets
FTP Software: CyberAgentsInformation on CyberAgents used to be able to be found at http://www.ftp.com/cyberagents
General Magic: TabrizMore information on Tabriz can be found at http://www.genmagic.com/tabriz
Languages:The following languages are being used today for authoring agents.
Java, Telescript, TCL or Tools Control Language, Obliq, Python
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 23/40
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 24/40
Security Threats Threats to security generally fall into three main classes:
Disclosure of information
Denial of service
Corruption of information
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 25/40
Agent System Model
HOMEplatform Agent platform Agent
Agent platform
Network
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 26/40
Malicious agents
Malicious agencies.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 27/40
Malicious AgentsMalicious agents are those that try to attack thehosting agency or other agent.
Classification malicious agents according to thetarget they attack
Attacking the Hosting Agency. Attacking Other Agents
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 28/40
Attacking the Hosting Agency 1. The most obvious example of a malicious agent is
one that consumes resources of the hostingenvironment in an improper way.
Recourses may be :
Memory,
CPU cycles, Network bandwidth
Effect : The agency eventually is not able to provide its usualservice to other agents.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 29/40
Attacking the Hosting Agency(2)
2. The second type of attack to the hosting agency is when an agent tries to gain unauthorized access tothe agency.
private keys of the agency or its users.
An agent could also try to disclose the agency’s code oreven try to terminate the agency completely
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 30/40
Attacking Other Agents No agent must have access to any other agent on the
programming language level.
If we assume object-oriented programming languages,no agent should ever obtain a direct reference of another agent. Otherwise, the malicious agent would
gain full control of the referenced agent.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 31/40
Attacking Other Agents(2) A malicious agent could initiate denial of service attacks
on other agents, for example, by sending thousands of spam messages.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 32/40
Malicious Agencies A malicious agency is one that tries to attack mobile
agents currently residing on it or other agencies by attacking the communication link.
Two types of attack can occur-
• Passive attack.
•
Active attack.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 33/40
Passive attackTraffic analysis
each message is encrypted because it is not important whether the data is readable(understandable) to theattacker. Here, the adversary attempts to find patternsin the communication between two agencies, which
might allow the adversary to derive certainassumptions based on these patterns.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 34/40
Attacker
Passive attack Traffic analysis
A B
c
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 35/40
Active Attack Active attacks include security threats in which an
agency tries to manipulate agent code or data while itis transmitted between agencies. The most common
examples of this kind of attack are alterations, inwhich an agent’s data is deleted or tampered with by an agency
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 36/40
Active attack
Malicious Agencies
A B
Agency A Agency B
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 37/40
Example
Platform 4
Malicious host Platform 3Platform 2 Agent
Migration
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 38/40
Attacking Agents cut and paste attack
This attack works even if data has been encrypted so thatIt can be read only at specific agencies. An agent, α, carries a data item protected with the public key of an
agency, Ai that the agent is going to visit.
a malicious agency, Am, which currently is hosting agent α, could cut
the data item, paste it into a new agent, and let this agent migrate to Ai. The new agent decrypts the data item and carries it back to agency Am.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 39/40
References: Mobile Agents Basic Concepts, Mobility Models, and the Tracy Toolkit
Peter Braun Swinburne University of Technology, Victoria, Australia
Wilhelm Rossak ,Friedrich Schiller University, Jena, Thuringia,Germany.
Mobile agent security Niklas Borselius Mobile VCE Research GroupInformation Security Group, Royal Holloway, University of London
Artificial Intelligence A Modern Approach by Russell & Norvig, Second
Edition, Prentice Hall.
Sunday, April 22, 2012
8/3/2019 Mobile Agent Roll 01 & 02
http://slidepdf.com/reader/full/mobile-agent-roll-01-02 40/40
Thank You