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

Mobile Agent Roll 01 & 02

Embed Size (px)

Citation preview

Page 1: Mobile Agent Roll 01 & 02

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

Page 2: Mobile Agent Roll 01 & 02

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

Page 3: Mobile Agent Roll 01 & 02

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

Page 4: Mobile Agent Roll 01 & 02

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

Page 5: Mobile Agent Roll 01 & 02

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

Page 6: Mobile Agent Roll 01 & 02

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

Page 7: Mobile Agent Roll 01 & 02

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

Page 8: Mobile Agent Roll 01 & 02

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

Page 9: Mobile Agent Roll 01 & 02

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

Page 10: Mobile Agent Roll 01 & 02

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

Page 11: Mobile Agent Roll 01 & 02

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

Page 12: Mobile Agent Roll 01 & 02

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

Page 13: Mobile Agent Roll 01 & 02

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

Page 14: Mobile Agent Roll 01 & 02

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

Page 15: Mobile Agent Roll 01 & 02

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

Page 16: Mobile Agent Roll 01 & 02

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

Page 17: Mobile Agent Roll 01 & 02

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

Page 18: Mobile Agent Roll 01 & 02

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

Page 19: Mobile Agent Roll 01 & 02

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

Page 20: Mobile Agent Roll 01 & 02

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

Page 21: Mobile Agent Roll 01 & 02

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

Page 22: Mobile Agent Roll 01 & 02

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

Page 23: Mobile Agent Roll 01 & 02

8/3/2019 Mobile Agent Roll 01 & 02

http://slidepdf.com/reader/full/mobile-agent-roll-01-02 23/40

Sunday, April 22, 2012

Page 24: Mobile Agent Roll 01 & 02

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

Page 25: Mobile Agent Roll 01 & 02

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

Page 26: Mobile Agent Roll 01 & 02

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

Page 27: Mobile Agent Roll 01 & 02

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

Page 28: Mobile Agent Roll 01 & 02

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

Page 29: Mobile Agent Roll 01 & 02

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

Page 30: Mobile Agent Roll 01 & 02

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

Page 31: Mobile Agent Roll 01 & 02

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

Page 32: Mobile Agent Roll 01 & 02

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

Page 33: Mobile Agent Roll 01 & 02

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

Page 34: Mobile Agent Roll 01 & 02

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

Page 35: Mobile Agent Roll 01 & 02

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

Page 36: Mobile Agent Roll 01 & 02

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

Page 37: Mobile Agent Roll 01 & 02

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

Page 38: Mobile Agent Roll 01 & 02

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

Page 39: Mobile Agent Roll 01 & 02

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

Page 40: Mobile Agent Roll 01 & 02

8/3/2019 Mobile Agent Roll 01 & 02

http://slidepdf.com/reader/full/mobile-agent-roll-01-02 40/40

Thank You