Aglets Based on Mobile Agents with Java: The Aglet API by Danny B. Lange and Mitsuru Oshima.

Slides:



Advertisements
Similar presentations
Institut für Softwarewissenschaft - Universität WienP.Brezany 1 Multi-Agent Systems A Modern Approach to Distributed Artificial Intelligence Peter Brezany.
Advertisements

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.
Mobile Agents Mouse House Creative Technologies Mike OBrien.
COS 461 Fall 1997 Network Objects u first good implementation: DEC SRC Network Objects for Modula-3 u recent implementation: Java RMI (Remote Method Invocation)
C++ Language Fundamentals. 2 Contents 1. Introduction to C++ 2. Basic syntax rules 3. Declaring and using variables.
Distributed Systems Topics What is a Distributed System?
Mobile Software Agents Tomasz Müldner October 2, 1998.
Java Mobile Agents with Aglets Wolfgang Schreiner
The Java Language. Topics of this Course  Introduction to Java  The Java Language  Object Oriented Programming in Java  Exceptions Handling  Threads.
Agent Caching in APHIDS CPSC 527 Computer Communication Protocols Project Presentation Presented By: Jake Wires and Abhishek Gupta.
Context-based Information Sharing and Authorization in Mobile Ad Hoc Networks Incorporating QoS Constraints Sanjay Madria, Missouri University of Science.
Java: History and Introduction (Lecture # 1). History… Java – Based on C and C++ – Developed in 1991 for intelligent consumer electronic devices – Green.
A high level language for Distributed Web Programming Anton Eliens Vrije Universiteit, Amsterdam.
Multiagent systems a practical approach to MAS construction in Java (using Boris) Simon Lynch
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Mobile Agents: Agile Agents for Ambient.
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
Design, Implementation, and Experimentation on Mobile Agent Security for Electronic Commerce Applications Anthony H. W. Chan, Caris K. M. Wong, T. Y. Wong,
Mobile Agent Systems. Mobility Mobile Agents A Mobile Agent is a software agent that exists in a software Environment and can migrate from machine to.
Multiagent systems (MAS) Simon Lynch
Communication in Distributed Systems –Part 2
Foundations of Agents. Agent World Agent Definitions Agent’s Properties Classification of Agents Agent Autonomy Concurrent Programming.
CS884 (Prasad)Java Goals1 “Perfect Quote” You know you've achieved perfection in design, Not when you have nothing more to add, But when you have nothing.
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
JAVA v.s. C++ Programming Language Comparison By LI LU SAMMY CHU By LI LU SAMMY CHU.
CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.
Lecturer PEN PHIROM Tel : Web site: Lecturer PEN PHIROM Tel :
EEL 6938 Mobile agents EEL 6938 Engineering Applications of Autonomous Agents Lotzi Bölöni.
Analysis, Design, and Implementation of an Agent Based Management Information System Management Information System Supervisor: Dr. Razzazi Supervisor:
Mobile Agent Technology for the Management of Distributed Systems - a Case Study Claudia Raibulet& Claudio Demartini Politecnico di Torino, Dipartimento.
Java Introduction Lecture 1. Java Powerful, object-oriented language Free SDK and many resources at
Java threads and locks1 OS Lecture 5 Java threads.
Using Mobile Agents for Network Resource Discovery in P2P Network Zhengzheng Wan.
Comparison of Web Services, RMI, CORBA, DCOM Usha, Lecturer MCA Department of Computer Science and Engineering.
Algorithm Programming Bar-Ilan University תשס"ח by Moshe Fresko.
University of Houston-Clear Lake Proprietary© 1997 Evolution of Programming Languages Basic cycle of improvement –Experience software difficulties –Theory.
Architectures of distributed systems Fundamental Models
1 MAIN TABLE OF CONTENTS Definition: SOFTWARE AGENT HOW MANY TYPES OF AGENT? DEFINITION OF MOBILE AGENT: SOFTWARE AGENTS PROPERTIES, WORKING OF MOBILE.
Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent.
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.
1 CMSC421: Principles of Operating Systems Nilanjan Banerjee Principles of Operating Systems Acknowledgments: Some of the slides are adapted from Prof.
Client Call Back Client Call Back is useful for multiple clients to keep up to date about changes on the server Example: One auction server and several.
Java Security Model For Mobile Code Abdo Achkar. Mobile Code A mobile object is a “self contained piece” of executable code. Definition:  Code that can.
A Summary of the Distributed System Concepts and Architectures Gayathri V.R. Kunapuli
Mobile Agents Babak Esfandiari. Types of Applications Dynamic load balancing. Dynamic service deployment. Intermittently connected systems.
Code Migration Russell T. Potee, III. Overview Why Code Migration? Code Migration Models Migration and Handling Resources Heterogeneous Systems Migration.
Computer Programming 2 Why do we study Java….. Java is Simple It has none of the following: operator overloading, header files, pre- processor, pointer.
ICMC 2004 – Nov. 5 1 Andante: Composition and Performance with Mobile Musical Agents Leo Kazuhiro Ueda Fabio Kon
1. An Introduction A Programming Language A Technology Java Development Kit Java API One Language: Three Editions Standard Edition Enterprise Edition.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Java Mobile Agents with Aglets End of studies report Responsible : M. Logothetis ERASMUS Exchange.
EEL 5937 Mobile agents (2) EEL 5937 Multi Agent Systems Lotzi Bölöni.
Third International Workshop on Networked Appliance 2001 SONA: Applying Mobile Agent to Networked Appliance Control S.Aoki, S.Makino, T.Okoshi J.Nakazawa.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Object Oriented Programming in
Before You Begin Nahla Abuel-ola /WIT.
Mobile Agents Technology - Programming with Aglet
DISTRIBUTED COMPUTING
Mobile Agents.
Object Oriented Programming
Mobile Agents M. L. Liu.
Unit V Mobile Middleware.
Prof. Leonardo Mostarda University of Camerino
In Distributed Systems
Presentation transcript:

Aglets Based on Mobile Agents with Java: The Aglet API by Danny B. Lange and Mitsuru Oshima

Their Definition of Agent n A software object n Mandatory properties –reactive –autonomous –goal-driven –temporally continous

Seven Good Reasons (I) n Reduce network load through mobility n Overcome network latency n Encapsulate protocols -- dealing with legacy systems n Execute asynchronously and autonomously

Seven Good Reasons (II) n Adapt dynamically n Naturally heterogeneous n Robust and fault-tolerant –can find better hosts –can distribute tasks –work redundantly

Pos. Agent Chars. of Java (I) n Platform independent n Secure execution –no illegal type casting –no pointer arithmetic –byte code is checked before execution n Dynamic class loading n Multithread programming –synchronization primitives

Pos. Agent Chars. of Java (II) n Object serialization n Reflection

Neg. Agent Chars. of Java (I) n No resource control –CPU cycles –memory –GUI handles n No protection of references –access to public methods –proxy

Neg. Agent Chars. of Java (II) n No object ownership of references –garbage collection –memory, GUIs not released –agent kept alive against its will (with reference to agent) n No support for preservation and resumption of execution state –no access to virtual machine, program counter, etc.

Basic Concepts of Aglets n Aglet n Proxy n Context n Message –synchronous and asynchronous n Future reply n Identifier

Basic Operation on Aglets n Create n Clone n Dispatch n Retract n Activate and deactivate n Dispose n Send and receive messages