Sprite (contd) Code and Process Migration

Similar documents
Types of Virtualization. Types of virtualization

Concepts of Distributed Systems 2006/2007

Lecture 7: February 10

Process Management. Processes. Processes. Processes, Threads, and Agents. A distributed system is a collection of cooperating processes.

Distributed Systems Principles and Paradigms

May Gerd Liefländer System Architecture Group Universität Karlsruhe (TH), Systemarchitektur

Verteilte Systeme (Distributed Systems)

Multiprocessor Scheduling. Multiprocessor Scheduling

Multiprocessor Scheduling

殷亚凤. Processes. Distributed Systems [3]

Dr Markus Hagenbuchner CSCI319. Distributed Systems Chapter 3 - Processes

FIPA specification and JADE. Tomáš Poch

Mobile Code Paradigms

Processes in Distributed Systems

Processes in Distributed Systems

Jade: Java Agent DEvelopment Framework Overview

Multiprocessor Scheduling. Multiprocessor Scheduling

Jade: Java Agent DEvelopment Framework Overview

Scalable Middleware Environment for Agent-Based Internet Applications]

NOWHERE. Targeted for Personal (Web) agents Supports Knowledge Level (KL) Agents. a Knowledge-Level API Agent Programming Infrastructure 1 06/09/06

Software Agent Computing. Agent Mobility

IG-JADE-PKSlib. An Agent Based Framework for Advanced Web Service Composition and Provisioning. Erick Martínez & Yves Lespérance

FIPA Agent Software Integration Specification

Integrating Ontologies into Distributed Multi-Agent System

Agenda. A. Paschke 1, A. Kozlenkov 2 1. RuleResponder Approach Reaction RuleML Prova Semantic Web Rule Engine Use Cases Summary

Software Agents: A Literature Survey

Prof. Jacques Pasquier

FIPA and FIPA-OS. Stefan Poslad. Multimedia, Intelligent Systems & Applications Group Dept. Electronic Engineering


Introduction to the Semantic Web

Object-oriented perspective

Underlying computer system = hardware + software

Semantic agents for location-aware service provisioning in mobile networks

Introduction to Distributed Systems

FIPA Agent Management Support for Mobility Specification

FIPA ACL Message Structure Specification

Agent-Environment for Small Mobile Devices

Chapter 5 INTRODUCTION TO MOBILE AGENT

Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach

Processing Interaction Protocols in Parallel: a Logic Programming implementation for Robotic Soccer

Information Collection and Survey Infrastructure, APIs, and Software Tools for Agent-based Systems (An Overview of JADE)

Review of FIPA Specifications

Robotics and Autonomous Systems

Semantic SOA - Realization of the Adaptive Services Grid

Triadic Formal Concept Analysis within Multi Agent Systems

5 Distributed Objects: The Java Approach

Caching. Caching Overview

Last Class: Network Overview. Today: Distributed Systems

CHAPTER 7 JAVA AGENT DEVELOPMENT ENVIRONMENT

Network Based Hard/Soft Information Fusion Network Architecture/SOA J. Rimland

Vision Document for Multi-Agent Research Tool (MART)

Networked Applications: Sockets. Goals of Todayʼs Lecture. End System: Computer on the ʻNet. Client-server paradigm End systems Clients and servers

AGENTSPEAK AND JASON. AgentSpeak ROBOTICS AND AUTONOMOUS SYSTEMS. Today. Language of choice for the Multi-Agent Programming Contest

MODELS OF DISTRIBUTED SYSTEMS

Application Firewalls

The DNS. Application Proxies. Circuit Gateways. Personal and Distributed Firewalls The Problems with Firewalls

CP EDI 997 Guidelines (Version 7010)

Processing Interaction Protocols in Parallel: a Logic Programming implementation for Robotic Soccer

Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept

Sven Apel Don Batory Christian Kastner. Gunter Saake. Feature-Oriented Software Product Lines. Concepts and Implementation.

Advanced Topics in Distributed Systems. Dr. Ayman A. Abdel-Hamid. Computer Science Department Virginia Tech

3. WWW and HTTP. Fig.3.1 Architecture of WWW

Design and Implementation of Multimedia Service Management Agent on Home Networks Environment

Computer Basics 1/24/13. Computer Organization. Computer systems consist of hardware and software.

Yellow pages and Interaction Protocols

06/02/ Local & Metropolitan Area Networks 0. INTRODUCTION. 1. History and Future of TCP/IP ACOE322

SANDEEP KUMAR SHRESTHA FIPA-COMPLIANCE OF HTML5 AGENT FRAMEWORK

Multiagent Systems for Service-Oriented Computing

IST 220: Application Layer

CSMC 412. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 2. September 15 CMSC417 Set 2 1

Lecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)

Annales UMCS Informatica AI IX, 1 (2009) ; DOI: /v x UMCS. Analysis of communication processes in the multi agent systems

Widget Toolkits CS MVC

IBM Tivoli System Automation for z/os

1. true / false By a compiler we mean a program that translates to code that will run natively on some machine.

QuickSpecs HP Insight Rapid Deployment software 6.0

Multi-Agent Programming

raceability Support in OpenModelica Using Open Services for Lifecycle Collaboration (OSLC)

Software Architecture

Identity-based Access Control

Recursive Functions of Symbolic Expressions and Their Computation by Machine Part I

Computer Basics 1/6/16. Computer Organization. Computer systems consist of hardware and software.

COMP219: Artificial Intelligence. Lecture 14: Knowledge Representation

Tutorial. Title: Implementing Agent Applications in Java: Using Mobile and Intelligent Agents.

[07] SEGMENTATION 1. 1

Web as a Distributed System

Knowledge Integration Environment

Adaptive Cluster Computing using JavaSpaces

Enabling the Autonomic Data Center with a Smart Bare-Metal Server Platform

Java Applets, etc. Instructor: Dmitri A. Gusev. Fall Lecture 25, December 5, CS 502: Computers and Communications Technology

Text Mining and the. Text Mining and the Semantic Web. Semantic Web. Tim Finin. University of Maryland Baltimore County

Software Paradigms (Lesson 10) Selected Topics in Software Architecture

F-OWL: An OWL Reasoner in Flora-2 Youyong Zou, Harry Chen, Tim Finin, Lalana Kagal

FIPA Query Interaction Protocol Specification

Agilla/Agimone: Middleware for Sensor Networks

997 Functional Acknowledgment

Processes. Process Scheduling, Process Synchronization, and Deadlock will be discussed further in Chapters 5, 6, and 7, respectively.

Service-Oriented Computing in Recomposable Embedded Systems

Collaboration in Teams: Simulink Projects Demonstration

Rei and Rules. Tim Finin, UMBC Lalana Kagal, MIT

Transcription:

Sprite (contd) Sprite process migration Facilitated by the Sprite file system State transfer Swap everything out Send page tables and file descriptors to receiver Demand page process in Only dependencies are communication-related Redirect communication from home WS to receiver Lecture 8, page 1 Code and Process Migration Motivation How does migration occur? Resource migration Agent-based system Details of process migration Lecture 8, page 2

Motivation Key reasons: performance and flexibility Process migration (aka strong mobility) Improved system-wide performance better utilization of system-wide resources Examples: Condor, DQS Code migration (aka weak mobility) Shipment of server code to client filling forms (reduce communication, no need to pre-link stubs with client) Ship parts of client application to server instead of data from server to client (e.g., databases) Improve parallelism agent-based web searches Lecture 8, page 3 Motivation Flexibility Dynamic configuration of distributed system Clients don t need preinstalled software download on demand Lecture 8, page 4

Migration models Process = code seg + resource seg + execution seg Weak versus strong mobility Weak => transferred program starts from initial state Sender-initiated versus receiver-initiated Sender-initiated (code is with sender) Client sending a query to database server Client should be pre-registered Receiver-initiated Java applets Receiver can be anonymous Lecture 8, page 5 Who executes migrated entity? Code migration: Execute in a separate process [Applets] Execute in target process Process migration Remote cloning Migrate the process Lecture 8, page 6

Models for Code Migration Alternatives for code migration. Lecture 8, page 7 Do Resources Migrate? Depends on resource to process binding By identifier: specific web site, ftp server By value: Java libraries By type: printers, local devices Depends on type of attachments Unattached to any node: data files Fastened resources (can be moved only at high cost) Database, web sites Fixed resources Local devices, communication end points Lecture 8, page 8

Resource Migration Actions Resource-to machine binding Unattached Fastened Fixed Process-toresource binding By identifier By value By type MV (or GR) CP ( or MV, GR) RB (or GR, CP) GR (or MV) GR (or CP) RB (or GR, CP) GR GR RB (or GR) Actions to be taken with respect to the references to local resources when migrating code to another machine. GR: establish global system-wide reference MV: move the resources CP: copy the resource RB: rebind process to locally available resource Lecture 8, page 9 Migration in Heterogeneous Systems Systems can be heterogeneous (different architecture, OS) Support only weak mobility: recompile code, no run time information Strong mobility: recompile code segment, transfer execution segment [migration stack] Virtual machines - interpret source (scripts) or intermediate code [Java] Lecture 8, page 10

Agents Software agents Autonomous process capable of reacting to, and initiating changes in its environment, possibly in collaboration More than a process can act on its own Mobile agent Capability to move between machines Needs support for strong mobility Example: D Agents (aka Agent TCL) Support for heterogeneous systems, uses interpreted languages Lecture 8, page 11 Software Agents in Distributed Systems Property Autonomous Reactive Proactive Common to all agents? Yes Yes Yes Description Can act on its own Responds timely to changes in its environment Initiates actions that affects its environment Communicative Yes Can exchange information with users and other agents Continuous Mobile Adaptive No No No Has a relatively long lifespan Can migrate from one site to another Capable of learning Some important properties by which different types of agents can be distinguished. Lecture 8, page 12

Agent Technology The general model of an agent platform (adapted from [fipa98-mgt]). Lecture 8, page 13 Agent Communication Languages Message purpose INFORM QUERY-IF QUERY-REF CFP PROPOSE ACCEPT-PROPOSAL REJECT-PROPOSAL REQUEST Description Inform that a given proposition is true Query whether a given proposition is true Query for a give object Ask for a proposal Provide a proposal Tell that a given proposal is accepted Tell that a given proposal is rejected Request that an action be performed Message Content Proposition Proposition Expression Proposal specifics Proposal Proposal ID Proposal ID Action specification SUBSCRIBE Subscribe to an information source Reference to source Lecture 8, page 14

Agent Communication Languages Field Purpose Sender Receiver Language Ontology Content Value INFORM max@http://fanclub-beatrix.royalty-spotters.nl:7239 elke@iiop://royalty-watcher.uk:5623 Prolog genealogy female(beatrix),parent(beatrix,juliana,bernhard) A simple example of a FIPA ACL message sent between two agents using Prolog to express genealogy information. Lecture 8, page 15