Browse Prior Art Database

Local Remote Procedure Call Extensions for Distributed Computer Environment

IP.com Disclosure Number: IPCOM000114432D
Original Publication Date: 1994-Dec-01
Included in the Prior Art Database: 2005-Mar-28
Document File: 2 page(s) / 88K

Publishing Venue

IBM

Related People

Jindal, A: AUTHOR

Abstract

Disclosed is a mechanism which allows faster communication among client(s) and server(s) executing on the same machine. The work described here, improves performance of Distributed Computer Environment-Remote Procedure Call (DCE-RPC) for client(s) and server(s) executing on the same machine, while preserving the existing RPC functionality and semantics.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Local Remote Procedure Call Extensions for Distributed Computer Environment

      Disclosed is a mechanism which allows faster communication
among client(s) and server(s) executing on the same machine.  The
work described here, improves performance of Distributed Computer
Environment-Remote Procedure Call (DCE-RPC) for client(s) and
server(s) executing on the same machine, while preserving the
existing RPC functionality and semantics.

      The Local Remote Procedure Call extensions to DCE are: (a)
implicit within RPC runtime and do not impact other DCE components,
(b) totally transparent to the distributed application.

      Local Remote Procedure Call Extension: allows client(s) and
server(s) executing on the same machine to communicate via System V
message queues.

      A on-the fly detection mechanism in local RPC extension, based
on the location of the receiver process, decides on the type of
communication mechanism for data transfer.  For example, if the
receiver process is on the same machine as the sender process, then
System V message queues are used for data transfer; whereas if sender
and receiver are on different machines then data is transferred via
internet domain sockets.

      Message Queue Creation: For each internet domain socket
created by RPC runtime, a corresponding System V message queue is
created.  The port number obtained during internet domain socket
creation is used as a key for creating the message queue.  Using port
number as a key for message queue creation: 1) ensures uniqueness of
the key (as port numbers on a single machine are unique),  2)
eliminates the need to exchange message queue ids among client(s) and
server(s) (each process's RPC runtime knows about the port number
that the other process is listening on).  The message queues created
by the RPC runtime will be used to receive all messages destined for
this process.

      Local RPC Send Model:  During the send operation, the RPC
runtime checks the sender address against the local machine address.
If both addresses are the same, then the receiver is local, otherwise
it is remote.  In case of a Local Receiver, the sender a) derives the
receiver queue id, call it QID, using receiver port number as the
key, and b) sends the message on QID using "cma_msgsnd operation.

      In case of a Remote Receiver, the RPC runtime sends the message
using internet domain sockets.

      L...