IT533 - SOFTWARE ARCHITECTURES - CLASS 9
PROCEEDURE ORIENTED MIDDLEWARE
The basic idea behind procedure oriented middleware is that
as far as the client process is concerned, there is no logical
difference between calling a local procedure or calling a remote
Remote Procedure Calls
A remote procedure call uses direct, connection-oriented, synchronous
communication to allow a client process to call a remote procedure.
- Enabling a Call
The following steps are required to enable a remote procedure call:
- Code the procedure name and parameters using the syntax of
the Interface Definition Language (IDL) provided by the
- Use the IDL to create the source code for a client stub
and a server skeleton.
- Compile and link the stub into the client process.
- Compile and link the skeleton into the server process.
- Making a Call
To make a remote procedure call:
- The client process calls the client stub as if it was
a local procedure.
- The client stub converts the parameters into a string of bits
(called marshalling) and sends the bits over the network to
the server skeleton.
- The server skeleton converts the bits back to parameters (called
demarshalling) and calls the server procedure.
- The server skeleton converts the procedure response into a string
of bits and sends then over the network to the client stub.
- The client stub converts the bits to the response and returns it
to the calling procedure.
The best known RPC mechanisms are:
- Distributed Computing Environment (DCE) from the Open Software
- Open Network Computing (ONC) from SUN.
Prepared by David L. March -- Last Revised on May 26, 2003
COPYRIGHT © 2003 BY DAVID L. MARCH