RPC

Why we need Remote Procedures?

  • The client needs an easy way to call the procedures of the server to get some services.
  • RPC enables clients to communicate with servers by calling procedures in a similar way to the conventional use of procedure calls in high-level languages.
  • RPC is modeled on the local procedure call, but the called procedure is executed in a different process and usually a different computer.

RPC Principles

RPC Model

!05-web-services, p.12

!05-web-services, p.14

Marshalling

Passing Value Parameters

  1. Client call to procedure
  2. Stub builds message
  3. Message is sent across the network
  4. Server OS hands message to server stub
  5. Stub unpacks message
  6. Stub makes local call to "add"

RPC Issues