SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
Anjan Mondal (Roll No. - 01)
                           Arnab Pal (Roll No. - 02)
                           M.E. (Software Engineering)
                           Dept. of Information Technology
                           Jadavpur University



Wednesday, July 25, 2012                                     1
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).



Wednesday, July 25, 2012                                          2
How Agent works

                             SENSORS




                           ACTUATORS




Wednesday, July 25, 2012               3
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.

Wednesday, July 25, 2012                             4
Properties of Agent contd.
 Communicative – able to communicate with
     other agents.

 Mobile – can travel from one host to another.

 Learning – adapts in accordance with previous
     experience.

 Believable – appears believable to the end-user.

Wednesday, July 25, 2012                             5
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
     with an agent on a different system, it typically
     uses a communication mechanism such as remote
     procedure calling (RPC).




Wednesday, July 25, 2012                                  6
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 state
       Transport saved state to next system
       Resume execution of saved state

Wednesday, July 25, 2012                           7
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)

Wednesday, July 25, 2012                                    8
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
Wednesday, July 25, 2012                                              9
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 the
          beginning

Wednesday, July 25, 2012                             10
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 the
        point it stopped on the previous host


Wednesday, July 25, 2012                                11
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.

Wednesday, July 25, 2012                                       12
Events in Mobile Agent’s life-time
 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.


Wednesday, July 25, 2012                               13
Agent Life-Cycle Model
                              Context A                       Context B     Dispose

           Clone                              Dispatch
                                Agent
                               Agent                           Agent
                                              Retract

                                     Create
Agent Life Cycle                                 Deactivate               Activate
-Creation
-Cloning                Class
-Dispatching and
                         File
Retraction                                                     Disk
(Mobility) and
-Activation                                                   Storage
 Deactivation (Persistence)
-Disposal

   Wednesday, July 25, 2012                                                          14
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.




Wednesday, July 25, 2012                        15
Mobile Code Systems: Design
 Four basic types:
      Client/Server
      Code on Demand
      Remote Evaluation
      Mobile Agents
  Elements
      Data (stored result sets)
      Code (commands)
      Program stack (current status of the program)
Wednesday, July 25, 2012                              16
Wednesday, July 25, 2012   17
Client/Server Discussion
 Examples: WWW, RPC, Webservices, CORBA, EJBs
 Elements
              data - mobile
              code - static
              program stack – static

 Advantages
      easy to implement
      widespread
 Disadvantages
      there‘s no “one size fits all“
 CORBA (Common Object Request Broker Architecture), EJB (Enterprise JavaBeans)


Wednesday, July 25, 2012                                                         18
d   e
                                    Co

                                    Ex 3.
                                      ec
                                    co ute
                                      de




                                         e
                                    C od

                                    Ex 5.
                                      ec
                                    co ute
                                      de
                           Result
Wednesday, July 25, 2012                       19
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 each
     other and very often a combination of the two is the
     most appropriate.

Wednesday, July 25, 2012                                 20
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 heterogeneous
      They are robust and fault-tolerant
 There is still no killer app for mobile agents!
Wednesday, July 25, 2012                             21
Companies and Products
 IBM: Aglets
 Information on Aglets can be found at http://www.trl.ibm.co.jp/aglets
 FTP Software: CyberAgents
 Information on CyberAgents used to be able to be found at http://www.ftp.com/cyberagents

 General Magic: Tabriz
 More 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




Wednesday, July 25, 2012                                                                    22
Wednesday, July 25, 2012   23
Security Threats
 Threats to security generally fall into three main classes:

  Disclosure of information
  Denial of service
  Corruption of information




Wednesday, July 25, 2012                                   24
Agent System Model

               HOME
                           Agent      Agent             platform
              platform


                                              Network



                              Agent       platform




Wednesday, July 25, 2012                                           25
Malicious agents


  Malicious agencies.




Wednesday, July 25, 2012   26
Malicious Agents
   Malicious agents are those that try to attack the
   hosting agency or other agent.

   Classification malicious agents according to the
   target they attack

   Attacking the Hosting Agency.
   Attacking Other Agents


Wednesday, July 25, 2012                               27
Attacking the Hosting Agency
 1.     The most obvious example of a malicious agent is
        one that consumes resources of the hosting
        environment in an improper way.

  Recourses may be :
   Memory,
   CPU cycles,
   Network bandwidth
  Effect : The agency eventually is not able to provide its usual
        service to other agents.
Wednesday, July 25, 2012                                             28
Attacking the Hosting Agency(2)
 2. The second type of attack to the hosting agency is
     when an agent tries to gain unauthorized access to
     the agency.

  private keys of the agency or its users.
  An agent could also try to disclose the agency’s code
        or even try to terminate the agency completely


Wednesday, July 25, 2012                                  29
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.




Wednesday, July 25, 2012                             30
Attacking Other Agents(2)
 A malicious agent could initiate denial of service attacks
   on other agents, for example, by sending thousands of
   spam messages.




Wednesday, July 25, 2012                                  31
Malicious Agencies
 A malicious agency is one that tries to attack mobile
  agents currently residing on it or other agencies.
  Two types of attack can occur-

           •   Passive attack.
           •   Active attack.




Wednesday, July 25, 2012                                  32
Passive attack
 passive attack "attempts to learn or make use of
  information from the system but does not
  affect system resources"

 Traffic analysis
  each message is encrypted because it is not important
     whether the data is readable(understandable) to the
     attacker. Here, the adversary attempts to find patterns in
     the communication between two agencies, which might
     allow the adversary to derive certain assumptions based
     on these patterns.
Wednesday, July 25, 2012                                          33
Passive attack
 Traffic analysis
                           Attacker




    Agency                            Agency




Wednesday, July 25, 2012                       34
Active Attack
 Active attacks include security threats in which an
     agency tries to manipulate agent code or data while it
     is transmitted between agencies. The most common
     examples of this kind of attack are alterations, in
     which an agent’s data is deleted or tampered with by
     an agency




Wednesday, July 25, 2012                                      35
Active attack
         Agency A                               Agency B


                                                    B
             A




                                   C
                           Malicious Agencies


Wednesday, July 25, 2012                                   36
Example of active attack
  An agent is sent out to find the best airfare for a flight with a
   particular route
  The agent is given various requirements, such as departure and
   destination, time restrictions.
  The agent will visit every airline and query their databases before
   committing to a purchase and reporting back to the agent owner
  A malicious host can interfere with the agent execution in several
   ways
        Erase all information previously collected by the agent .
        change the agent’s route so that airlines with more favourable offers are
         not visited.
        simply terminate the agent



Wednesday, July 25, 2012                                                             37
Example
                                                     Platform 5
                                                      Airline 4


                           Platform 2   Platform 3    Platform 4
                            Airline 1    Airline 2   Malicious host
     Agent
    Migration                                          Airline 3




Wednesday, July 25, 2012                                              38
Attacking Agents
 cut and paste attack


 This attack works even if data has been encrypted so
  that It 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.

Wednesday, July 25, 2012                                                     39
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 Group
     Information Security Group, Royal Holloway, University of London

  Artificial Intelligence A Modern Approach by Russell & Norvig, Second
     Edition, Prentice Hall.




Wednesday, July 25, 2012                                                   40
Thank You


Wednesday, July 25, 2012   41

Contenu connexe

Tendances

Data management issues
Data management issuesData management issues
Data management issuesNeha Bansal
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computinggaurav jain
 
Clustering: Large Databases in data mining
Clustering: Large Databases in data miningClustering: Large Databases in data mining
Clustering: Large Databases in data miningZHAO Sam
 
Mobile Computing UNIT-6
Mobile Computing UNIT-6Mobile Computing UNIT-6
Mobile Computing UNIT-6Ramesh Babu
 
Wireless routing protocols
Wireless routing protocolsWireless routing protocols
Wireless routing protocolsbarodia_1437
 
Interface specification
Interface specificationInterface specification
Interface specificationmaliksiddique1
 
CS6010 Social Network Analysis Unit II
CS6010 Social Network Analysis   Unit IICS6010 Social Network Analysis   Unit II
CS6010 Social Network Analysis Unit IIpkaviya
 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseMd. Shamsur Rahim
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed SystemSunita Sahu
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memoryAshish Kumar
 
Locks In Disributed Systems
Locks In Disributed SystemsLocks In Disributed Systems
Locks In Disributed Systemsmridul mishra
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slidesMahesh Rajawat
 
GOOGLE FILE SYSTEM
GOOGLE FILE SYSTEMGOOGLE FILE SYSTEM
GOOGLE FILE SYSTEMJYoTHiSH o.s
 
Overview of computing paradigm
Overview of computing paradigmOverview of computing paradigm
Overview of computing paradigmRipal Ranpara
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationMNM Jain Engineering College
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed SystemsRupsee
 

Tendances (20)

Data link layer
Data link layer Data link layer
Data link layer
 
Data management issues
Data management issuesData management issues
Data management issues
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computing
 
Clustering: Large Databases in data mining
Clustering: Large Databases in data miningClustering: Large Databases in data mining
Clustering: Large Databases in data mining
 
Mobile Computing UNIT-6
Mobile Computing UNIT-6Mobile Computing UNIT-6
Mobile Computing UNIT-6
 
Wireless routing protocols
Wireless routing protocolsWireless routing protocols
Wireless routing protocols
 
Interface specification
Interface specificationInterface specification
Interface specification
 
CS6010 Social Network Analysis Unit II
CS6010 Social Network Analysis   Unit IICS6010 Social Network Analysis   Unit II
CS6010 Social Network Analysis Unit II
 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed Database
 
Mobile computing unit 5
Mobile computing  unit 5Mobile computing  unit 5
Mobile computing unit 5
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed System
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
 
Locks In Disributed Systems
Locks In Disributed SystemsLocks In Disributed Systems
Locks In Disributed Systems
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slides
 
Trends in distributed systems
Trends in distributed systemsTrends in distributed systems
Trends in distributed systems
 
GOOGLE FILE SYSTEM
GOOGLE FILE SYSTEMGOOGLE FILE SYSTEM
GOOGLE FILE SYSTEM
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
 
Overview of computing paradigm
Overview of computing paradigmOverview of computing paradigm
Overview of computing paradigm
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communication
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 

Similaire à Mobile agent

Introduction to JADE (Java Agent DEvelopment) Framework
Introduction to JADE (Java Agent DEvelopment) FrameworkIntroduction to JADE (Java Agent DEvelopment) Framework
Introduction to JADE (Java Agent DEvelopment) FrameworkAhmed Gad
 
Sunrise Presentation, Company Overview 2012
Sunrise Presentation, Company Overview 2012Sunrise Presentation, Company Overview 2012
Sunrise Presentation, Company Overview 2012jvangombos
 
Sl virtual apps-131106
Sl virtual apps-131106Sl virtual apps-131106
Sl virtual apps-131106SL Corporation
 
Testing and TDD - KoJUG
Testing and TDD - KoJUGTesting and TDD - KoJUG
Testing and TDD - KoJUGlburdz
 
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User ExperienceNagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User ExperienceNagios
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT VAzhar Shaik
 
Introduction to OSLC
Introduction to OSLCIntroduction to OSLC
Introduction to OSLCopenservices
 
Scaling identity to internet proportions
Scaling identity to internet proportionsScaling identity to internet proportions
Scaling identity to internet proportionsOracleIDM
 
Dom introduction-website-v1.0
Dom introduction-website-v1.0Dom introduction-website-v1.0
Dom introduction-website-v1.0Cogility
 
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.02014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0Joakim Lindbom
 
OOP_chapter _1.pptx
OOP_chapter _1.pptxOOP_chapter _1.pptx
OOP_chapter _1.pptxAbdexAliyi
 

Similaire à Mobile agent (20)

Mobile Agents
Mobile AgentsMobile Agents
Mobile Agents
 
Mobile Agents
Mobile AgentsMobile Agents
Mobile Agents
 
Sikuli
SikuliSikuli
Sikuli
 
Introduction to JADE (Java Agent DEvelopment) Framework
Introduction to JADE (Java Agent DEvelopment) FrameworkIntroduction to JADE (Java Agent DEvelopment) Framework
Introduction to JADE (Java Agent DEvelopment) Framework
 
Sunrise Presentation, Company Overview 2012
Sunrise Presentation, Company Overview 2012Sunrise Presentation, Company Overview 2012
Sunrise Presentation, Company Overview 2012
 
Sunrise presentation
Sunrise presentationSunrise presentation
Sunrise presentation
 
Sl virtual apps-131106
Sl virtual apps-131106Sl virtual apps-131106
Sl virtual apps-131106
 
Software agents
Software agentsSoftware agents
Software agents
 
Testing and TDD - KoJUG
Testing and TDD - KoJUGTesting and TDD - KoJUG
Testing and TDD - KoJUG
 
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User ExperienceNagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
 
03 requirement engineering_process
03 requirement engineering_process03 requirement engineering_process
03 requirement engineering_process
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT V
 
14 software technical_metrics
14 software technical_metrics14 software technical_metrics
14 software technical_metrics
 
Introduction to OSLC
Introduction to OSLCIntroduction to OSLC
Introduction to OSLC
 
Scaling identity to internet proportions
Scaling identity to internet proportionsScaling identity to internet proportions
Scaling identity to internet proportions
 
Dom introduction-website-v1.0
Dom introduction-website-v1.0Dom introduction-website-v1.0
Dom introduction-website-v1.0
 
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.02014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
 
UML_Training.ppt
UML_Training.pptUML_Training.ppt
UML_Training.ppt
 
Mudassar_Yash Technologies AB_CV
Mudassar_Yash Technologies AB_CVMudassar_Yash Technologies AB_CV
Mudassar_Yash Technologies AB_CV
 
OOP_chapter _1.pptx
OOP_chapter _1.pptxOOP_chapter _1.pptx
OOP_chapter _1.pptx
 

Dernier

The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 

Dernier (20)

20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 

Mobile agent

  • 1. Anjan Mondal (Roll No. - 01) Arnab Pal (Roll No. - 02) M.E. (Software Engineering) Dept. of Information Technology Jadavpur University Wednesday, July 25, 2012 1
  • 2. 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). Wednesday, July 25, 2012 2
  • 3. How Agent works SENSORS ACTUATORS Wednesday, July 25, 2012 3
  • 4. 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. Wednesday, July 25, 2012 4
  • 5. Properties of Agent contd. Communicative – able to communicate with other agents. Mobile – can travel from one host to another. Learning – adapts in accordance with previous experience. Believable – appears believable to the end-user. Wednesday, July 25, 2012 5
  • 6. 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 with an agent on a different system, it typically uses a communication mechanism such as remote procedure calling (RPC). Wednesday, July 25, 2012 6
  • 7. 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 state Transport saved state to next system Resume execution of saved state Wednesday, July 25, 2012 7
  • 8. 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) Wednesday, July 25, 2012 8
  • 9. 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 Wednesday, July 25, 2012 9
  • 10. 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 the beginning Wednesday, July 25, 2012 10
  • 11. 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 the point it stopped on the previous host Wednesday, July 25, 2012 11
  • 12. 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. Wednesday, July 25, 2012 12
  • 13. Events in Mobile Agent’s life-time 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. Wednesday, July 25, 2012 13
  • 14. Agent Life-Cycle Model Context A Context B Dispose Clone Dispatch Agent Agent Agent Retract Create Agent Life Cycle Deactivate Activate -Creation -Cloning Class -Dispatching and File Retraction Disk (Mobility) and -Activation Storage Deactivation (Persistence) -Disposal Wednesday, July 25, 2012 14
  • 15. 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. Wednesday, July 25, 2012 15
  • 16. Mobile Code Systems: Design Four basic types: Client/Server Code on Demand Remote Evaluation Mobile Agents  Elements Data (stored result sets) Code (commands) Program stack (current status of the program) Wednesday, July 25, 2012 16
  • 18. Client/Server Discussion Examples: WWW, RPC, Webservices, CORBA, EJBs Elements data - mobile code - static program stack – static Advantages easy to implement widespread Disadvantages there‘s no “one size fits all“ CORBA (Common Object Request Broker Architecture), EJB (Enterprise JavaBeans) Wednesday, July 25, 2012 18
  • 19. d e Co Ex 3. ec co ute de e C od Ex 5. ec co ute de Result Wednesday, July 25, 2012 19
  • 20. 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 each other and very often a combination of the two is the most appropriate. Wednesday, July 25, 2012 20
  • 21. 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 heterogeneous They are robust and fault-tolerant There is still no killer app for mobile agents! Wednesday, July 25, 2012 21
  • 22. Companies and Products IBM: Aglets Information on Aglets can be found at http://www.trl.ibm.co.jp/aglets FTP Software: CyberAgents Information on CyberAgents used to be able to be found at http://www.ftp.com/cyberagents General Magic: Tabriz More 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 Wednesday, July 25, 2012 22
  • 24. Security Threats Threats to security generally fall into three main classes:  Disclosure of information  Denial of service  Corruption of information Wednesday, July 25, 2012 24
  • 25. Agent System Model HOME Agent Agent platform platform Network Agent platform Wednesday, July 25, 2012 25
  • 26. Malicious agents  Malicious agencies. Wednesday, July 25, 2012 26
  • 27. Malicious Agents Malicious agents are those that try to attack the hosting agency or other agent. Classification malicious agents according to the target they attack Attacking the Hosting Agency. Attacking Other Agents Wednesday, July 25, 2012 27
  • 28. Attacking the Hosting Agency 1. The most obvious example of a malicious agent is one that consumes resources of the hosting environment in an improper way.  Recourses may be :  Memory,  CPU cycles,  Network bandwidth  Effect : The agency eventually is not able to provide its usual service to other agents. Wednesday, July 25, 2012 28
  • 29. Attacking the Hosting Agency(2) 2. The second type of attack to the hosting agency is when an agent tries to gain unauthorized access to the agency.  private keys of the agency or its users.  An agent could also try to disclose the agency’s code or even try to terminate the agency completely Wednesday, July 25, 2012 29
  • 30. 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. Wednesday, July 25, 2012 30
  • 31. Attacking Other Agents(2) A malicious agent could initiate denial of service attacks on other agents, for example, by sending thousands of spam messages. Wednesday, July 25, 2012 31
  • 32. Malicious Agencies A malicious agency is one that tries to attack mobile agents currently residing on it or other agencies.  Two types of attack can occur- • Passive attack. • Active attack. Wednesday, July 25, 2012 32
  • 33. Passive attack passive attack "attempts to learn or make use of information from the system but does not affect system resources" Traffic analysis  each message is encrypted because it is not important whether the data is readable(understandable) to the attacker. Here, the adversary attempts to find patterns in the communication between two agencies, which might allow the adversary to derive certain assumptions based on these patterns. Wednesday, July 25, 2012 33
  • 34. Passive attack Traffic analysis Attacker Agency Agency Wednesday, July 25, 2012 34
  • 35. Active Attack Active attacks include security threats in which an agency tries to manipulate agent code or data while it is transmitted between agencies. The most common examples of this kind of attack are alterations, in which an agent’s data is deleted or tampered with by an agency Wednesday, July 25, 2012 35
  • 36. Active attack Agency A Agency B B A C Malicious Agencies Wednesday, July 25, 2012 36
  • 37. Example of active attack  An agent is sent out to find the best airfare for a flight with a particular route  The agent is given various requirements, such as departure and destination, time restrictions.  The agent will visit every airline and query their databases before committing to a purchase and reporting back to the agent owner  A malicious host can interfere with the agent execution in several ways  Erase all information previously collected by the agent .  change the agent’s route so that airlines with more favourable offers are not visited.  simply terminate the agent Wednesday, July 25, 2012 37
  • 38. Example Platform 5 Airline 4 Platform 2 Platform 3 Platform 4 Airline 1 Airline 2 Malicious host Agent Migration Airline 3 Wednesday, July 25, 2012 38
  • 39. Attacking Agents cut and paste attack This attack works even if data has been encrypted so that It 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. Wednesday, July 25, 2012 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 Group Information Security Group, Royal Holloway, University of London  Artificial Intelligence A Modern Approach by Russell & Norvig, Second Edition, Prentice Hall. Wednesday, July 25, 2012 40