Mobile Agents

Reviews
Shared by: vixycn
Stats
views:
41
rating:
not rated
reviews:
0
posted:
10/12/2009
language:
ENGLISH
pages:
0
Mobile Agents Niranjan Suri nsuri@ai.uwf.edu University of West Florida Outline          Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues Applications Challenges Survey of Mobile Agent Systems Summary 2 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Definition of Software Agents       Computer program Autonomous behavior Represents some entity Has authority (delegation) Reacts and learns about environment Communicates using high-level Agent Communication Languages (ACLs) 3 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Mobile Agents Definition – – Software agents Move from one computer to another  User-directed or autonomous 4 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline  Overview of Agents and Mobile Agents         Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues Applications Challenges Survey of Mobile Agent Systems Summary 5 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Characterizing Mobility  Three capabilities – – – RPC, Servlets, Stored Procedures  Various combinations are possible M St obil at e e Mobile Computation Mobile code Mobile computation Mobile state Mobile Code Remote Installation Checkpointing 6 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Mobile Code   Allows executable code to be moved to a new host May use the push or pull model – – Pull: Applets Push: Remote Installation Sometimes, an agent push may result in a code pull   Mobile agents use push – Code may be binary (intermediate or native) or source 7 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Mobile Code  Advantages: – Dynamically change capabilities   Download new code to add / change / update capabilities of platform Remove code when no longer needed  Problems: – Security concerns due to untrusted / unchecked code  Code could be malicious, buggy, and/or tampered 8 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Mobile Computation  Evolution of Remote Computation – RPC, RSH, RMI, Servlets, Stored Procedures, CORBA    Allows one system to run a computation on another system Utilize resources on remote system – CPU, memory Files, databases, etc. Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Access resources on remote system – 9 Mobile State     Evolution of State Capture – Checkpointing Allows execution state of a process to be captured and moved State may be machine specific or machine independent May contain – – State of single or multiple threads Code 10 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Combinations of Capabilities RPC, Servlets, Stored Procedures Weak Mobility Process Migration Mobile Computation Strong Mobility Mobile Code St obil at e e M Remote Installation 11 Checkpointing Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Strong Mobility   Move execution state with agent Why is it important? – – – Computationally equivalent to weak mobility However, simpler, more natural abstraction Therefore, easier to write mobile agents  More importantly – mobile state allows forced mobility 12 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Weak Mobility Example public class Example extends Aglet { boolean _theRemote = false; public void onCreation (Object init) { addMobilityListener( new MobilityAdapter() { public void onArrival (MobilityEvent e) { _theRemote = true; } } ); } public void run() { if (!_theRemote) { System.out.println (“On Source”); dispatch(destination); } else { System.out.println (“On Destination”); } } } 13 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Strong Mobility Example public class Example extends Agent { public static void main (String[] args) { System.out.println (“On source”); go (destination); System.out.println (“On destination”); } } 14 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline   Overview of Agents and Mobile Agents Characterization of Mobility        Advantages of Mobile Agents System Components Language / Design Issues Applications Challenges Survey of Mobile Agent Systems Summary 15 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Client-Server Versus Mobile Agents Client Client Agent Client Client Agent Agent Server Traditional Server Server Mobile Agent-Based Server 16 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Advantages of Mobile Agents   Reduced network bandwidth Disconnected operation – – – Short “On-Line” times Low-power requirements Support for mobile units  Low-latency interaction 17 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Jini Versus Mobile Agents Client Client Proxy Client Client Client Agent Device Device Device Device Agent Device 18 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Advantages of Mobile Agents  Highly Dynamic and Flexible Systems – – – – Enabled my mobile code Download new capabilities / services Remove old / unused capabilities  “Swapping” for memory constrained devices “Universal” server Open Services Gateway Initiative (OSGI) Structure systems around mobile code   19 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Advantages of Mobile Agents  Unique capability: Send an executable program that does your bidding on someone else’s computer  Very powerful but… can be dangerous! – Only one step removed from a Virus 20 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Agent Programming Paradigms   Itinerant Agents – Use an itinerary that dictates mobility of agents Event-based approach Events trigger mobility of agents Minions: Small mobile agents spawned by larger agents Reactive Agents – –  Agent-Minion – 21 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline    Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents      System Components Language / Design Issues Challenges Survey of Mobile Agent Systems Summary 22 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida System Components Administration Tools Visualization Tools Global Directory Service Global Logging Service Other Frameworks (DARPA CoABS Grid, etc.) Execution Environment Authentication Encryption Policy Manager Logging Service Execution Environment Agent Transfer Protocol Agent Messaging Protocol Directory Service Messaging Service Persistence Service Interpreter 23 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline     Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components      Language / Design Issues Applications Challenges Survey of Mobile Agent Systems Summary 24 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Languages for Mobile Agents     Java – Numerous Systems D’Agents, SMIA Omniware Telescript Lisp, Scheme, custom, etc. TCL – C/C++ – Miscellaneous – – 25 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Advantages of Java   Platform independent Virtual Machine execution environment – Important for isolation   Small footprint “Real” programming language – Compared to TCL  Most security conscious – Though still not adequate! 26 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Limitations of Java   No state capture Importance: – Mobile state     Mobile agent systems Load balancing (distributed systems) Forced migration Cloning (fault tolerance) Faster VM startup Restarting crashed applications Persisting processes for later resumption – Checkpointing    27 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Limitations of Java   No resource control Importance: – Protect against denial-of-service attacks   Malicious code Buggy code – – Prioritize tasks Foundation for providing QoS guarantees 28 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Limitations of Java   No resource accounting Importance: – Measuring resource consumption  Charging / billing resource usage – Observing behavior of code 29 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Directory Service Issues   Difficult to find an agent – Chase agent around May be difficult/inefficient to update directory service Fast Moving Agents – 30 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Authentication Issues  Agent Anonymity – – Agent may want to be anonymous on a host Analogy: Window shopping  Multiple Hop – Agent may not want to carry credentials  Credentials could be stolen by malicious hosts 31 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline      Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues     Applications Challenges Survey of Mobile Agent Systems Summary 32 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Applications of Mobile Agents Information Retrieval – – Mobile agents reduce network bandwidth Depends on:    Quantity of information searched Quantity of information retrieved Size of mobile agent Dartmouth College, Lockheed Martin ATL, University of West Florida – Comprehensive study for DARPA  33 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Applications of Mobile Agents     Monitoring – Computer programs can be very patient  Remote Control Dynamic Systems – Universal servers Send executable content as email Active Mail – 34 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline       Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues Applications    Challenges Survey of Mobile Agent Systems Summary 35 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Challenges for Mobile Agents  Security Issues – – Protecting network communication Protecting hosts from agents   Illegal access Denial of service Tampering Extracting information Capture / Replay – Protecting agents from hosts     System-wide Administration / Management – – Policies Tracking / Visualization 36 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Challenges for Mobile Agents  Access to non-mobile resources – – Network endpoints Files   Deployment (of environments) Interoperability – – OMG MASIF – Not successful DARPA CoABS – We shall see…  Debugging – Highly Asynchronous 37 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Outline        Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues Applications Challenges   Survey of Mobile Agent Systems Summary 38 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Survey of Mobile Agent Systems Commercial Systems – – Telescript/Odyssey - General Magic Voyager - ObjectSpace – – – Aglets - IBM Concordia - Mitsubishi Electric ITA Jumping Beans - AdAstra 39 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Survey of Mobile Agent Systems Research Systems – – – – – – – NOMADS KAoS D’Agents Agents for Remote Action (ARA) Mole Sumatra Many others... Mobile Agent List: http://www.informatik.uni-stuttgart.de/ipvr/vs/projekte/mole/mal/mal.html 40 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida NOMADS Java-based mobile agent system – Strong mobility    Capture full execution state of running agents Provides anytime mobility – simplifies writing mobile agents Provides forced mobility – arbitrary Java code can be moved Dynamically control resource usage (rates and quantities) Allows platform owner full control over agent execution Protect against denial of service attacks – Strong security    41 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Strong Security  Limitations of current Java systems – – – Rely on JDK security  Does not provide resource control Does not scale Not a preventive measure Either assume agents are safe  Or rely on code signing   Goal: Build secure execution environments – Run untrusted or partially-trusted code 42 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Aroma Virtual Machine     Clean-room implementation State capture mechanism Dynamic, fine-grained resource control – Disk, Network, CPU Uses Java Platform API from JRE 1.2.2 No AWT / Swing JDK 1.2.2 compatible – –    Ported to Win32 (x86), Linux (x86), Solaris (SPARC) No Just-In-Time compilation (Almost) No optimization Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida 43 State Capture  Aroma supports two modes – Full VM state    All threads, loaded classes, objects State may be restored into a “blank” VM Size: Approx 1.5 MB Method stack and all reachable objects Thread may be restored into running VM Size: Approx 4 KB – Individual thread state    44 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida State Capture  State capture is fine-grained – – Between any two Java bytecode instructions Supports blocked, waiting, sleeping, and suspended threads   State is platform independent State may be stored in memory, saved to disk, or streamed over the network 45 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Resource Control Rate control – – – – Control rate at which resources are used Dynamically adjustable Fine grained Examples:    CPU limited to 10% Disk write rate limited to 30 KB/sec Network read rate limited to 10 KB/sec Disk Usage Rate 46 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Resource Control Quantity control – – – – Control quantity of resources used Dynamically adjustable Fine grained Examples:   Disk space limited to 1.8 MB Total network writes limited to 1024 KB Disk Usage Quantity – Still needed: memory 47 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Benefits of Resource Control   Protect host from malicious agents – Prevent denial of service attacks Agents do not need to worry about resource control / limits Raising limits increases priority Simplify agent writer’s task –   Means of prioritization –  Basis for Quality of Service Means of accounting Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida 48 Outline         Overview of Agents and Mobile Agents Characterization of Mobility Advantages of Mobile Agents System Components Language / Design Issues Applications Challenges Survey of Mobile Agent Systems  Summary 49 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida Summary     Mobile Agents are Good  – Code mobility adds significant flexibility Security is Critical Deployment is Difficult No Interoperability MH MP MPD 50 Mobile Agents Tutorial - Niranjan Suri - Cognition Institute/University of West Florida

Related docs
Mobile code_ Mobile Agents _ Mobility
Views: 144  |  Downloads: 7
Mobile Agents_1_
Views: 15  |  Downloads: 1
Security in Mobile Agents
Views: 26  |  Downloads: 3
Mobile Agents_3_
Views: 7  |  Downloads: 3
Mobile Agents_2_
Views: 17  |  Downloads: 3
Mobile Software Agents Tomasz Müldner
Views: 0  |  Downloads: 0
Reusable Mobile Agents for Cluster Computing
Views: 31  |  Downloads: 1
Mobile Agent
Views: 32  |  Downloads: 6
premium docs
Other docs by vixycn
Open Architecture Overview
Views: 7  |  Downloads: 0
Zoledronic Acid_ Development Overview
Views: 7  |  Downloads: 0
XTOD Overview
Views: 5  |  Downloads: 0
XMSF X3D Overview_ Websim 2003
Views: 3  |  Downloads: 0
XML Overview
Views: 8  |  Downloads: 1
WSN Overview
Views: 4  |  Downloads: 0
Wireless Communications Research Overview_1_
Views: 4  |  Downloads: 0
Wireless CDT Overview
Views: 4  |  Downloads: 0
Wireless Access Product Overview
Views: 6  |  Downloads: 0
Windows 2000 Security Features Overview
Views: 4  |  Downloads: 0
Windows 2000 Overview
Views: 3  |  Downloads: 0
WiMAX Market_Business Overview
Views: 5  |  Downloads: 0
Wiki Overview
Views: 3  |  Downloads: 0