DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
Agents & Mobile Agents.
Mobile Agents Mouse House Creative Technologies Mike OBrien.
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
RPC Robert Grimm New York University Remote Procedure Calls.
Distributed System Structures Network Operating Systems –provide an environment where users can access remote resources through remote login or file transfer.
Remote Procedure Call Design issues Implementation RPC programming
Processes: Code Migration Chapter 3 Will Cameron CSC 8530 Dr. Schragger.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Tam Vu Remote Procedure Call CISC 879 – Spring 03 Tam Vu March 06, 03.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
Implementing Remote Procedure Calls Andrew Birrell and Bruce Nelson Presented by Kai Cong.
Distributed components
Context-based Information Sharing and Authorization in Mobile Ad Hoc Networks Incorporating QoS Constraints Sanjay Madria, Missouri University of Science.
Winter, 2004CSS490 Process Migration1 Textbook Ch8 Instructor: Munehiro Fukuda These slides were compiled from the course textbook, the reference books,
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
CS533 - Concepts of Operating Systems 1 Remote Procedure Calls - Alan West.
Implementing Remote Procedure Calls Authors: Andrew D. Birrell and Bruce Jay Nelson Xerox Palo Alto Research Center Presenter: Jim Santmyer Thanks to:
CSS434 Process Migration1 Textbook and Non-Textbook Contents Professor: Munehiro Fukuda.
Communication in Distributed Systems –Part 2
AgentOS: The Agent-based Distributed Operating System for Mobile Networks Salimol Thomas Department of Computer Science Illinois Institute of Technology,
Tcl Agent : A flexible and secure mobile-agent system Paper by Robert S. Gray Dartmouth College Presented by Vipul Sawhney University of Pennsylvania.
CHAPTER 9: Input / Output
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
1 Distributed Systems: Distributed Process Management – Process Migration.
.NET Mobile Application Development Remote Procedure Call.
Summary for Chapter 5 --Distributed Process Scheduling
Summary :- Distributed Process Scheduling Prepared BY:- JAYA KALIDINDI.
Distributed Process Implementation Hima Mandava. OUTLINE Logical Model Of Local And Remote Processes Application scenarios Remote Service Remote Execution.
Distributed Process Implementation
Computation for Physics 計算物理概論 Introduction to Linux.
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.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Chapter Nine The Session Layer. Objectives We’ll see how a new session is created, maintained, and dismantled. The process of logon authentication will.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
Communication Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
X one. Mobile development platform We mobilize your process IP. ALARMS AUTOMOTION.
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
Implementing Remote Procedure Calls Authored by Andrew D. Birrell and Bruce Jay Nelson Xerox Palo Alto Research Center Presented by Lars Larsson.
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
IEEE MEDIA INDEPENDENT HANDOVER DCN: Title: MIH_Handover primitives and scenarios Date Submitted: April, 30,
Locating Mobile Agents in Distributed Computing Environment.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
 Remote Procedure Call (RPC) is a high-level model for client-sever communication.  It provides the programmers with a familiar mechanism for building.
1 Process migration n why migrate processes n main concepts n PM design objectives n design issues n freezing and restarting a process n address space.
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai
Summary :-Distributed Process Scheduling Prepared By:- Monika Patel.
REQUEST/REPLY COMMUNICATION
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Shuman Guo CSc 8320 Advanced Operating Systems
Mobile Agents For Mobile Computing Department Of Computer Science – Dartmouth College Robert Gray David Kotz Saurab Nog Daniela Rus George Cybenko.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Institute for Visualization and Perception Research 1 © Copyright 1999 Haim Levkowitz Java-based mobile agents.
+ Routing Concepts 1 st semester Objectives  Describe the primary functions and features of a router.  Explain how routers use information.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
C HAPTER 5.4 DISTRIBUTED PROCESS IMPLEMENTAION By: Nabina Pradhan 10/09/2013.
Module 4 Remote Login.
University of Technology
NET323 D: Network Protocols
Mobile Agents.
NET323 D: Network Protocols
Mobile Agents M. L. Liu.
Process Migration Troy Cogburn and Gilbert Podell-Blume
Presentation transcript:

DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA

OBJECTIVE Logical Model Of Local And Remote Processes Three application scenarios Remote Service Remote Execution Process Migration Mobile agent Process migration vs. mobile agents

Logical Model Of Local And Remote Processes

THREE APPLICATION SCENARIOS Depending on how request messages are interpreted, there are three significant application scenarios : Remote Service Remote Execution Process Migration

REMOTE SERVICE Its primary application : resource sharing in distributed systems. request message for remote service can be generated at three different software levels. As remote procedure calls at the language level As remote commands at the operating system level As interpretive messages at the application level

Remote Procedure Calls At The Language Level At language level for remote service requests Most suitable model : RPC It is service oriented and provides both access and location transparency At the operating system level There are some frequently used commands that need to invoke remote objects. These commands can be built in as part of the command shell and recognized by the local operating system

Remote Commands At The Operating System Level Remote commands are limited only to shell commands. The concept can be generalized to process messages. user Want to send message Remote host Some user-defined operations at remote host invoke Stub process at Server site has capability of -- Interpreting messages sent from client stub -- invoking respective operations Rules  application communication protocol Based on the content of message

Interpretive Messages At The Application Level Remote operations Initiated by Remote procedure calls remote commands interpretive messages Constrained to Services that are supported at the remote host Primary implementation issues I/O redirection security Client stub server stub copies Client process’ standard input to the remote command Standard output and error of the remote command to client process copies Access to remote resources required authorization

REMOTE EXECUTION Remote operation initiated by client is created by the client message sent from client to server is client program to be executed at the server Means generating process at remote host Selected host System with specific resources for resource sharing Remote Service System with purpose of load sharing Remote Execution Implementation issue Load sharing algorithm location independence system heterogeneity protection and security

Load sharing algorithm Process server Responsible for Maintaining load information negotiating remote host invoking remote operation creating stub processes for linking client& server Remote execution Initiated Implicitly – local process server explicitly – process Relationship of process Parent/child or disjoint

Load sharing algorithm Practical implementation Each process server maintain list of registered hosts First step is to select remote host Client process server indicate Resource requirement to process server at remote site If authenticated and its resource request can be met Server grants permission for remote execution

LOCATION INDEPENDANCE Process created by remote execution require Coordination to accomplish common task So, it is necessary to support logical view for the processes Each remote process is represented by an agent process at the originating host

SYSTEM HETEROGENEITY If remote execution is invoked on heterogeneous host It is necessary to recompile the program Overhead may be too high Solution Use canonical machine-independent intermediate language for program execution.

PROTECTION AND SECURITY Remote executionpowerful Foreign code image can be Trojan horse Solution Accept only remote execution in source or intermediate codes Language used to describe a remote execution could be restricted to exclude potential problems Run-time checking of parameters and stack overflow is also necessary to protect the integrity of the remote hosts

PROCESS MIGRATION Process P1 : Execution suspended Source Site Destination Site Execution Resumed : Process P1 Transfer of control Time Freezing time

LINK REDIRECTION Transfer of address space Source node Destination node Suspended Migration decision resumed Freezing time Transfer of address space Source node Destination node Suspended Migration decision resumed Freezing time Total Freezing Pretransferring Merits: easy implementation Demerits:long delay time Merits: freezing time reduce Demerits:total time extended

MESSAGE FORWARDING Three types of messages: 1. received when the process execution is stopped on the source node and has not restarted on the destination node 2. received on the source node after the execution started on destination node 3. sent to the migrant process after it started execution on destination node

MESSAGE FORWARDING Sender Origin Dest 1 Dest 2 Receiver Migrate Migrate again Resend Resend again Sender Origin Dest 1 Dest 2 Receiver Migrate Migrate again Resending messages Ask origin site Send Forward messages of type 1 and 2 are either dropped or negatively ack-ed, the sender is notified and it needs to locate the migrant process origin node keeps the info on the current location of the process created there, all messages are sent to origin which forwards them to migrant process

MESSAGE FORWARDING Sender Origin Dest 1 Dest 2 Receiver Migrate Migrate again Link traversal Link Send Forward Send messages of type 1 are queued and sent to destination node as part of migration procedure link is left on source node to redirect messages of type 2 and 3, link contains the system-wide unique id of a process and its last known location

MESSAGE FORWARDING Sender Origin Dest 1 Dest 2 Receiver Migrate Migrate again Link Update Send New location Send New location Send Current location during the transfer the source node sends the notification (link update) of the transfer to all the nodes to which the process communicates: messages of type 1 and 2 are forwarded by the source node messages of type 3 are sent directly to the destination node

MOBILE AGENTS it is composition of computer software and data which is able to move from one computer to another autonomously and continue its execution on the destination computer. It refers to a process that can transport its state from one environment to another, with its data intact Mobile agents can decide when and where to move next When a mobile agent decides to move, it saves its own state and transports this saved state to next host and resume execution from the saved state. Common applications include: Resource availability, discovery, monitoring Information retrieval Network management Dynamic software deployment

Process migration vs. mobile agents Process MigrationMobile Agents Navigational Autonomy Migration decision is made by system. Agents decide where and where to go Code ExecutionPrograms are fully compiled and executed in native mode. Most agents are coded in Java and are interpreted by their execution engine. Strong/Weak MigrationExecution is resumed where it has been suspended. Java-based agents resume their execution from the top of a given method. I/O StateLong-term I/Os are forwarded to processes migrated to the destination. Agents relinquish I/O connections every time they depart for their next destination.

REFERENCES Distributed operating system and algorithms Randy chow, Theodore johnson A Framework for Process Migration in Software DSM Environments ieeexplore.ieee.org/iel5/6662/17807/ pdf …. ( 2000 ) Presentation on Parallel & Distributed Computing courses.washington.edu/css434/slides/Migration.ppt Mobile agent - Wikipedia, the free encyclopedia en.wikipedia.org/wiki/Mobile_agent