Remote Procedure Call (RPC) Neil Tang 11/26/2008

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

Remote Procedure Call (RPC)
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tam Vu Remote Procedure Call CISC 879 – Spring 03 Tam Vu March 06, 03.
INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 9 Prof. Crista Lopes.
CSE331: Introduction to Networks and Security Lecture 11 Fall 2002.
Middleware Technologies compiled by: Thomas M. Cosley.
Outcomes What is RPC? The difference between conventional procedure call and RPC? Understand the function of client and server stubs How many steps could.
NFS. The Sun Network File System (NFS) An implementation and a specification of a software system for accessing remote files across LANs. The implementation.
.NET Mobile Application Development Remote Procedure Call.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Inter-process Communication and Coordination Chaitanya Sambhara CSC 8320 Advanced Operating Systems.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Other Topics RPC & Middleware.
1 Chapter 38 RPC and Middleware. 2 Middleware  Tools to help programmers  Makes client-server programming  Easier  Faster  Makes resulting software.
1 Chapter 2. Communication. STEM-PNU 2 Layered Protocol TCP/IP : de facto standard Our Major Concern Not always 7-layered Protocol But some other protocols.
Communication Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Introduction to Distributed Systems Slides for CSCI 3171 Lectures E. W. Grundke.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
SEMINOR. INTRODUCTION 1. Middleware is connectivity software that provides a mechanism for processes to interact with other processes running on multiple.
Politecnico di Milano © 2001 William Fornaciari Operating Systems R P C Remote Procedure Call Lecturer: William Fornaciari Politecnico di Milano
University of the Western Cape Chapter 13: - The Session Layer The session layer (Layer 5) establishes, manages, and terminates sessions between applications.
Remote Procedure Call RPC
MW Tech IS 8040 Data Comm and Networking Dr. Hoganson Middleware Technology Communication Mechanisms Synchronous – process on client side must stop and.
1 Chapter 38 RPC and Middleware. 2 Middleware  Tools to help programmers  Makes client-server programming  Easier  Faster  Makes resulting software.
Manish Kumar,MSRITSoftware Architecture1 Remote procedure call Client/server architecture.
Computer Science Lecture 3, page 1 CS677: Distributed OS Last Class: Communication in Distributed Systems Structured or unstructured? Addressing? Blocking/non-blocking?
1 Chapter 2. Communication. STEMPusan National University STEM-PNU 2 Layered Protocol TCP/IP : de facto standard Our Major Concern Not always 7-layered.
Channels. Models for Communications Synchronous communications – E.g. Telephone call Asynchronous communications – E.g. .
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Introduction to Distributed Systems Slides for CSCI 3171 Lectures E. W. Grundke.
Remote Procedure Calls
Prof. Leonardo Mostarda University of Camerino
Computer Roles in a Network
Distributed Systems CS
5. End-to-end protocols (part 1)
Chapter 3 Internet Applications and Network Programming
Software Connectors.
#01 Client/Server Computing
Ch > 28.4.
Distributed Systems CS
XML-RPC.
Multimedia and Networks
COT 5611 Operating Systems Design Principles Spring 2012
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
Outline Midterm results summary Distributed file systems – continued
SNMP Neil Tang 12/10/2008 CS440 Computer Networks.
By Brian N. Bershad, Thomas E. Anderson, Edward D
Lecture 4: RPC Remote Procedure Call CDK: Chapter 5
Advanced Computer Networks
Remote Procedure Call (invocation) RPC
Channels.
EECE.4810/EECE.5730 Operating Systems
Message Queuing.
Channels.
Distributed Systems CS
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Channels.
Introduction to Computer Networks
Lecture 6: RPC (exercises/questions)
Lecture 7: RPC (exercises/questions)
Last Class: Communication in Distributed Systems
#01 Client/Server Computing
Distributed Systems CS
Presentation transcript:

Remote Procedure Call (RPC) Neil Tang 11/26/2008 CS440 Computer Networks

Outline Request/Reply Paradigm Challenges Components CS440 Computer Networks

Request/Reply Paradigm CS440 Computer Networks

Challenges The network between the calling process and the called process has much more complex properties than a single computer. For example, it is likely to limit message size and has a tendency to lose and reorder the messages. The host computers on which the calling and called processes run may have significantly different architecture and data representation formats (e.g., big/little endian). CS440 Computer Networks

Challenges Guarantee message delivery. Deliver messages in the same order they are sent. Delivers at most one copy of each message. Support arbitrarily large messages. Support synchronization between the sender and receiver. Allows the receiver to apply flow control to the sender. Support multiple application processes on each host. CS440 Computer Networks

Components A protocol that manages the messages sent between the client and the server processes and that deals with the potential undesirable properties of the underlying network. The programming language and compiler support to package the arguments into a request message on the client machine and then to translate this message back to the arguments on the server machine, and likewise with the return value. CS440 Computer Networks

RPC Mechanism CS440 Computer Networks