Mobile Agents.

Slides:



Advertisements
Similar presentations
Agents & Mobile Agents.
Advertisements

Understanding Code Mobility
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Silberschatz and Galvin  Operating System Concepts Module 16: Distributed-System Structures Network-Operating Systems Distributed-Operating.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
Fundamentals of Computer Security Geetika Sharma Fall 2008.
Distributed components
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Context-based Information Sharing and Authorization in Mobile Ad Hoc Networks Incorporating QoS Constraints Sanjay Madria, Missouri University of Science.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Chapter 7: Client/Server Computing Business Data Communications, 5e.
Tcl Agent : A flexible and secure mobile-agent system Paper by Robert S. Gray Dartmouth College Presented by Vipul Sawhney University of Pennsylvania.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
PRASHANTHI NARAYAN NETTEM.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Chapter 4.1 Interprocess Communication And Coordination By Shruti Poundarik.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Client Server Model and Software Design TCP/IP allows a programmer to establish communication between two application and to pass data back and forth.
Client-Server Computing in Mobile Environments
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Distributed Process Implementation Hima Mandava. OUTLINE Logical Model Of Local And Remote Processes Application scenarios Remote Service Remote Execution.
Distributed Process Implementation
ATIF MEHMOOD MALIK KASHIF SIDDIQUE Improving dependability of Cloud Computing with Fault Tolerance and High Availability.
1 Kyung Hee University Prof. Choong Seon HONG Network Control.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
 Protocols used by network systems are not effective to distributed system  Special requirements are needed here.  They are in cases of: Transparency.
Chapter 5.4 DISTRIBUTED PROCESS IMPLEMENTAION Prepared by: Karthik V Puttaparthi
The Grid System Design Liu Xiangrui Beijing Institute of Technology.
Locating Mobile Agents in Distributed Computing Environment.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
MOBILE AGENTS What is a software agent ? Definition of an Agent (End-User point of view): An agent is a program that assists people and acts on their behalf.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Lecture 6: Sun: 8/5/1435 Distributed Applications Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Distributed File Systems 11.2Process SaiRaj Bharath Yalamanchili.
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Institute for Visualization and Perception Research 1 © Copyright 1999 Haim Levkowitz Java-based mobile agents.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
Dsitributed File Systems
Core and Framework DIRAC Workshop October Marseille.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Chapter 1 Characterization of Distributed Systems
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Boots Cassel Villanova University
CSC 480 Software Engineering
#01 Client/Server Computing
Threads, SMP, and Microkernels
AGENT OS.
Outline Midterm results summary Distributed file systems – continued
Mobile Agents M. L. Liu.
An Introduction to Software Architecture
Chapter 17: Client/Server Computing
Introduction To Distributed Systems
In Distributed Systems
Database System Architectures
Design.
Chapter 2: System models
ISO Open system Requirements and IT Needs
#01 Client/Server Computing
Presentation transcript:

Mobile Agents

Agent system implements the agent paradigm What is an agent? A program that acts on behalf of a user Represents the user into the network Migrates autonomously in the network Performs computations on behalf of the user Path of the agent Predetermined Agents determine dynamically Reduce n/w use Increase asynchrony between clients & servers Add client specified functionally to servers & Introduce concurrency Agent system implements the agent paradigm

parameters RPC server client data procedure server client Results S2 REV Agent migration Mobile agents S2 S1 Agent migration Agent dispatch Agent migration S3 client

Repeated client-server interactions Bandwidth, Flexibility, Mobility Repeated client-server interactions Maintain connections over long periods Several separate requests No need for continuous connection with the use of mobile agents Resource can be freed up for other use Particularly useful in mobile computers Not connected all the time

Mobile agents RPC for controlling a device/instrument? parameters Client can maintain its own interface at the server node – a mobile agent serves as a proxy A given task can be divided into multiple tasks and distributed among mobile agents – achieve parallelism Mobile agent paradigm can be used For low level system management For middleware user-level applications RPC for controlling a device/instrument? parameters server client data Back and forth several time

Agent application Low level Middleware – user applications Network maintenance Testing and fault diagnosis Installation and software upgrade Middleware – user applications Electronic market place Active mail messages

Agent Server Agent code execution Primitive operations Migrate Communicate Access resources Application specific services

Migration Server Server State : Thread’s execution context and call stack Deactivate Capture state & transmit Receive Restore agent state Reactivate

Transfer code Agent carries all the code with it Execute on any server Agent code preinstalled on servers Does not carry code Reference to Code base A code server keeps all the code

Naming Tacking an agent Agent Agent Server

Location transparent names Location dependent Easy to implement Cumbersome to track Location transparent names Complex - encapsulation System updates location info when MA moves Global Location independent names Do not change when the entity relocates Name service maps symbolic names to the current location

Security Agent Privacy and integrity Agent and server authentication Part of the agent system may be sensitive Agent may not trust all servers Selective – servers Security breaches in the code – hard to prevent but detectable Secure communication Agent and server authentication Identity – digital signatures Authorization and access control Metering, charging and payment mechanisms

Agent programming primitives Basic agent management Agent-to-agent communication and synchronization Agent monitoring and control Fault-tolerance Security related

Coordination Client-server Message-oriented Blackboard Linda-like Blackboard + associative mechanisms Tuple spaces – access by content rather than id