CMPE 541 TERM PROJECT PRESENTATION Remote Procedure Call for Distributed Processing - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

CMPE 541 TERM PROJECT PRESENTATION Remote Procedure Call for Distributed Processing

Description:

In RPC these services are modules with an interface that exports procedures to ... RPC is general technique for interprocess communication ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 15
Provided by: mer127
Category:

less

Transcript and Presenter's Notes

Title: CMPE 541 TERM PROJECT PRESENTATION Remote Procedure Call for Distributed Processing


1
CMPE 541TERM PROJECT PRESENTATION Remote
Procedure Call for Distributed Processing
EASTERN MEDITERRANEAN UNIVERSITYDEPARTMENT OF
COMPUTER ENGINEERING
  • MERYEM ERBILEK

2
OUTLINE
  • Introduction
  • Remote Procedure Call (RPC)
  • Features of RPC
  • User Package
  • Design Issues of RPC
  • How RPC works?
  • Possible failures of RPC
  • Conclusion
  • References

3
INTRODUCTION
  • Remote Procedure Calling mechanisms integrate
  • Client/Server arrangement with conventional
  • procedural programming languages.
  • ?In that case clients communicates with servers
    by
  • calling procedures.

Client
Server
Request
Reply
Figure1 Client/Server Model
4
Remote Procedue Call
  • clients can only access to resources (in server)
    only by calling procedures which are supplied by
    services
  • In RPC these services are modules with an
    interface that exports procedures to operate
    resources.
  • ( ex authentication service?validity of
    names passwords )
  • is modelled on the local procedure call but
    actually called procedure is executed in
    different remote process.

Caller
Called
Request
NETWORK
Reply
Figure2 RPC
5
Features of RPC
  • Remote procedure has I/O parameters
  • Input parameters client ? server
  • values of arguments(in request msg) copied into
    variables
  • and passed as parameters to procedure (in the
    server).
  • Output parameters server ? client
  • They are used to replace variables in the client.
  • Caller computer cant access to variables in
    called computer

6
User Package
  • is a library of conventional procedures that can
    be used in application programs.

Relationship between a client program,user
package andsoftware below RPC interface.
User Package Interface
?
RPC Interface
Figure3 Levels in client software
7
User Package
  • Why to support application program with user
    package
  • RPC interface is not the most convenient for
    client programs because
  • There are differences between local and remote
    procedures
  • Service should be defined at a level appropriate
    for the widest possible use
  • There are some tasks such as location of suitable
    server that must be performed by client

8
User Package
  • Advantages of user package
  • The application progragrammer dont need to work
    in an interface definition language.
  • Improve the performance and reduce the complexity
    of remote service (because some of the
    functionality of service can be put in user
    package).

9
Design Issues of RPC
  • Interface definition specifies characteristics
    of procedures which are provided by server but
    visible to clients.
  • Exception handling is needed for reporting
    failures to clients (caller).
  • Transparency is up to designers of interface
    languages.
  • Transparent case client calls procedures in
    normal way
  • Non-Transparent case client uses special
    notation for calling remote procedures.

10
How RPC works?
  • Binding is necessary when client and server
    starts first.
  • Stub Procedure deals with marshaling and
    unmarshaling
  • Communication Module deals with communication of
    client and server.

11
Local Call ----------- Local Return
Marshalling Parameters ----------------- Unmarshal
ling Results
Send Req. --------- Receive Reply
CLIENT COMP.
NETWORK
Return ---------- Execute procedure
Marshalling Results --------------- Unmarshalling
Parameters
Send Reply --------- Receive Req.
SERVER COMP.
Figure4 RPCs flow of activity
12
Possible failures of RPC
  • 1. Request to server may lost
  • 2. Server may crashes after receiving request
  • 3. Reply to client may lost.
  • 4. Client may crashes after sending request.

13
CONCLUSION
  • RPC is an attractive technique
  • to the application programmer it is similar to an
    ordinary procedure call
  • RPC is general technique for interprocess
    communication
  • Today RPC is the core of many distributed
    systems
  • used from object oriented Corba systems and
    reliability issues are more evident than in past.
  • reliability issues are more evident than in past

14
REFERENCES
  • 1 Coulouris, G., Dollimore, J., Kindberg, T.,
    Distributrd Systems Concepts and Designs, 1994.
  • 2 Y.Liu , D.B.Hoang,1996.OSI remote procedure
    call Standardization issues, design and
    implementation.Computer communications
    20,Elsevier B.V.
  • 3 Sullivan, M. ,Anderson, D.,1989.Marinette a
    System for Parallel Distributed Programming Using
    a Master/Slave Model.IEEE.
  • 4 Software Engineering Enstitute, Remote
    Procedure Call,
  • Available at http//www.sei.cmu.edu/str/desc
    riptions/rpc.html
  • 5 A. D. Marshall, Remote Procedure Call,
    Available at http//www.cs.cf.ac.uk/Dave/C/node33
    .htmlSECTION003300000000000000000
Write a Comment
User Comments (0)
About PowerShow.com