13
A Presentation 0f Advance Operating System RPC Master of Technology In Computer Science &Engineering Submitted By Vikash MainanwaI

Remote Procedure Call

Embed Size (px)

Citation preview

A Presentation 0f Advance Operating System

RPC

Master of TechnologyIn

Computer Science &EngineeringSubmitted By

Vikash MainanwaI

Communication primitive Remote procedure callIssue of RPCDistributed Deadlock DetectionDDD Algorithm

CONTENTS

1. The communication primitive are the high level constructs with which program use underlying communication network.

2. It’s two types a. Message passing models b. Remote procedure call

Communication Primitives

A message is information which is sent from a sender to a receiver.

Message

Passing

Passing is a way which going through one step to another.

NetworkS

end

Rece

ive

Blocking VS. Non-Blocking

Remote Procedure Call…• Remote Procedure Call (RPC) is a protocol that allows

programs to call procedures located on other machines.

• RPC uses the client/server model. The requesting program is a client and the service-providing program is the server.

• The client stub acts as a proxy for the remote procedure.

• The server stub acts as a correspondent to the client stub.

RPC…..

Client(caller)

Server(callee)

PacketHandler

PacketHandler

call

return

send

receive

send

receive

return

call

Netw

orkNetw

ork

ClientStub

bundleargs

bundleret vals

unbundleret vals

ServerStub

unbundleargs

Machine A

Machine B

mbox1

mbox2

Asynchronous…

Blocking state

client server

request

reply

Executing state

Call procedure and wait for reply

Receive request and start process execution

Send reply and wait for next execution

Resume execution

Design Issue in RPC

Structure:- RPC mechanism is based on Stub procedure.

Binding:- Is that process who determines remote

procedure and machine, what will be execute also check

compatibility of parameter.

Parameter and result passing:- To pass parameters or results to a remote procedure, a stub procedure has to convert the parameters and results into an appropriate representation first and then pack them into a buffer in a form suitable for transmission

A remote procedure call can fail for at least two reasons

1. Computer failures.

2. Communication failures.

Handling failures in distributed system is difficult.

Remote Procedure call