Mobile Agents. 2 Introduction Mobile agent is a distributed computing paradigm. It has become viable, with recent technologies such as those provided.

Slides:



Advertisements
Similar presentations
A Lightweight Platform for Integration of Mobile Devices into Pervasive Grids Stavros Isaiadis, Vladimir Getov University of Westminster, London {s.isaiadis,
Advertisements

DISTRIBUTED COMPUTING PARADIGMS
Distributed Systems Architectures
David Martin for DAML-S Coalition 05/08/2003 OWL-S: Bringing Services to the Semantic Web David Martin SRI International
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
11 Copyright © 2005, Oracle. All rights reserved. Creating the Business Tier: Enterprise JavaBeans.
1 Term 2, 2004, Lecture 9, Distributed DatabasesMarian Ursu, Department of Computing, Goldsmiths College Distributed databases 3.
1 G54PRG Programming Lecture 1 Amadeo Ascó Adam Moore G54PRG Programming Lecture 1 Amadeo Ascó 3 Java Programming Language.
Peer-to-peer and agent-based computing Peer-to-Peer Computing: Introduction.
Institut für Softwarewissenschaft - Universität WienP.Brezany 1 Multi-Agent Systems A Modern Approach to Distributed Artificial Intelligence Peter Brezany.
Universitá degli Studi di LAquila Mälardalens Högskola, Västerås 10th September 2009 Integrating Wireless Systems into Process Industry and Business Management.
1 Communication in Distributed Systems REKs adaptation of Tanenbaums Distributed Systems Chapter 2.
1 Java Card Technology Prepared by:Ali Toyserkani Adopted from: Introduction to Java Card Technology C. Enrique Ortiz.
Access Control 1. Given Credit Where It Is Due Most of the lecture notes are based on slides by Dr. Daniel M. Zimmerman at CALTECH Some slides are from.
Agents & Mobile Agents.
Comparison Study of Three Mobile Agent Systems Aglets, Grasshopper and Voyager Qunhua Zhao, Hua Wang and Yi Zhang Department of Computer Science and Engineering.
By Olga Gelbart Mobile Agents By Olga Gelbart
Mobile Agents Mouse House Creative Technologies Mike OBrien.
1 Wireless and Mobile Networks Part 2 November 25, 2008 Department of Electrical and Computer Engineering University of Western Ontario ECE 436a Networking:
Database System Concepts and Architecture
Executional Architecture
1 Chapter 11: Data Centre Administration Objectives Data Centre Structure Data Centre Structure Data Centre Administration Data Centre Administration Data.
What is RMI? Remote Method Invocation –A true distributed computing application interface for Java, written to provide easy access to objects existing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
Fundamentals of Computer Security Geetika Sharma Fall 2008.
Distributed Network and System Management Based on Intelligent and Mobile Agents Jianguo Ding 25/03/2002 DVT-DatenVerarbeitungsTechnik FernUniversität.
1 Mobile Agent Instructor: Dr. AGGARWAL Presenter: Liu Lun.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Distributed Systems Architectures
Design, Implementation, and Experimentation on Mobile Agent Security for Electronic Commerce Applications Anthony H. W. Chan, Caris K. M. Wong, T. Y. Wong,
AgentOS: The Agent-based Distributed Operating System for Mobile Networks Salimol Thomas Department of Computer Science Illinois Institute of Technology,
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Distributed Process Implementation Hima Mandava. OUTLINE Logical Model Of Local And Remote Processes Application scenarios Remote Service Remote Execution.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System Services Application Network OS.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Mobile Agent Technology for the Management of Distributed Systems - a Case Study Claudia Raibulet& Claudio Demartini Politecnico di Torino, Dipartimento.
Lecture 3: Sun: 16/4/1435 Distributed Computing Technologies and Middleware Lecturer/ Kawther Abas CS- 492 : Distributed system.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Chapter 5.4 DISTRIBUTED PROCESS IMPLEMENTAION Prepared by: Karthik V Puttaparthi
The OMG Mobile Agent System Interoperability Facility.
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
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.
DISTRIBUTED COMPUTING. Computing? Computing is usually defined as the activity of using and improving computer technology, computer hardware and software.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
Mobile Agents Babak Esfandiari. Types of Applications Dynamic load balancing. Dynamic service deployment. Intermittently connected systems.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
ECI – electronic Commerce Infrastructure “ An application to the Shares Market ” Demetris Zeinalipour ( Melinos Kyriacou
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
Kemal Baykal Rasim Ismayilov
Fundamentals of Information Systems, Second Edition 1 Telecommunications, the Internet, Intranets, and Extranets.
Mobile Agents M. L. Liu. Distributed Computing, M. L. Liu2 Introduction Mobile agent is a distributed computing paradigm. It has become viable, with recent.
Institute for Visualization and Perception Research 1 © Copyright 1999 Haim Levkowitz Java-based mobile agents.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
CSC 480 Software Engineering
CORBA Within the OS & Its Implementation
#01 Client/Server Computing
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
AGENT OS.
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Inventory of Distributed Computing Concepts
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
Mobile Agents M. L. Liu.
Unit V Mobile Middleware.
#01 Client/Server Computing
Presentation transcript:

Mobile Agents

2 Introduction Mobile agent is a distributed computing paradigm. It has become viable, with recent technologies such as those provided by Java. It has great potential for network applications. It has not been widely deployed.

3 Mobile (transportable) agents An agent is an independent software program, which runs on behalf of a network user. A mobile agent is a program that, once it is launched by a user, can travel from node to node autonomously, and can continue to function even if the user is disconnected from the network.

4 Agent Server Agent Server Agent server File server... A mobile agent performs work on behalf of a user as it travels to multiple locations on the network. user Database server

5 Advantages of Mobile Agents They allow efficient and economical use of communication channels that may have low bandwidth, high latency, and may be error- prone. They enable the use of portable, low-cost, personal communications devices to perform complex tasks even when the device is disconnected from the network. They allow asynchronous operations and true decentralization

6 Mobile Agent Paradigm vs. Client-Server Paradigm

7 Basic Architecture An agent server process runs on each participating host. Participating hosts are networked through links that can be low-bandwidth and unreliable. An agent is a serializable object whose execution state can be frozen for transportation and reconstituted upon arrival at a remote site.

8 Basic Architecture

9 Whats in the Agent? An agent is an object, hence it contains state data and methods. Among the instance data is an itinerary of the sites to be visited, which may be dynamically constructed or adjusted. Other data may include an agent ID or other authentication data. The agents behavior at each stop can be pre- programmed and dynamically adjusted.

10 A simple demo See the mobileAgents folder in the program samples. RMI is used to implement the agent, the server, and the agent-launching client. The agent is a serialized object with an execute method, which is invoked by a server that receives the agent.

11 Mobile-agent applications Information retrieval Monitoring Virtual market-place/ meeting room Shareware Personal Mobile Agent white paperPersonal Mobile Agent white paper, IEEE Network Magazine special issue on Applicability of Mobile Agents to Telecommunications, May-June 2002

12 Security in Mobile Agent Systems Security concern is the primary deterrent of deploying the mobile-agent technology. There are concerns for both the agent hosts and the mobile agents. –Agent host concerns: Malicious/unauthorized agents can misuse/destroy system resources (e.g., worms). –Agent concerns: Malicious hosts can destroy or alter an agents logic, ( e.g., Mobile agents route can be altered.)

13 Security in Mobile Agent Systems Measures: Authentication – an agent must authenticate itself to the host, and an agent server must authenticate itself to the agent. Encryption – an agent encrypts its sensitive data. Resource access – a host enforces strict access control to its resources.

14 Mobile-agent framework systems Using RMI to implement a mobile agent application is not generally recommended ( - MobileAgentArchitectures) - MobileAgentArchitectures The solution to the mobile computing agent using RMI is, at best, a work-around. Other distributed Java architectures have been designed to address security concerns and other issues. These are collectively called mobile agent architectures. Some examples are IBM's Aglets Architecture and ObjectSpace's Voyager System. These systems are specifically designed to allow and support the movement of Java objects between JVMs, carrying their data along with their execution instructions.Aglets Architecture ObjectSpace's Voyager System

15 Existing Mobile-agent framework system IBM Aglet: Mitsubishi Concordia white paper

16 The Mobile Agent System Interoperability Facility (MASIF) From the OMG (The Object Management Group):Mobile agent platforms have been developed, built on top of different operating systems, based on different programming languages and technologies. Even new languages have been realized, exclusively designed for the support of mobile agents. However, common trends can be noticed: Interpreter-based programming languages like Java build the basis for most of today's agent platforms, and several approaches are associated with the integration of mobile agents and RPC-based middleware like CORBA.

17 Several fundamental requirements have been identified due to experiences that have been made during research and development activities. These requirements cover the following topics: –Management Support –Security Support –Mobility Support –Support for Unique Identification –Transaction Support –Communication Support MASIF

18 MASIF Due to the considerations mentioned above, the OMG issued a Request for Proposal (Common Facilities RFP3) for a mobile agent standard in November The corresponding Mobile Agent System Interoperability Facility (MASIF) submission, developed by Crystaliz, General Magic, GMD FOKUS, IBM, and The Open Group, has been adopted by the OMG in February 1998.

19 MASIF The idea behind the MASIF standard is to achieve a certain degree of interoperability between mobile agent platforms of different manufacturers without enforcing radical platform modifications. MASIF is not intended to build the basis for any new mobile agent platform. Instead, the provided specifications shall be used as an "add-on" to already existing systems.

20 MASIF The following list comprises the mandatory requirements that were identified within the MASIF RFP: –Marshalling and un-marshalling of agent programs –Encoding of agent containers for transport –Transport of agents from one agent facility (i.e. execution engine) to another –Runtime registration and invocation of agent facilities –Runtime query of a named agent facility by agents –Runtime security of agents

21 Ongoing Research D'Agents: Mobile Agents at Dartmouth CollegeD'Agents: Mobile Agents at Dartmouth College – overview; position paperoverviewposition paper The MAP systemThe MAP system (Italy) GypsyGypsy (Austria) Grasshopper (Germany)

22 Sources of Information Mobile Agents Introductory Mobile Agents Introductory The Mobile Agent List Mobile Agent Applications Software Engineering Concerns for Mobile Agent Systems Software Engineering Concerns for Mobile Agent Systems CSE01mobility/papers/cook.pdf