Paper Evaluations

Carnevali $ilvio (csmede@hotmail.com)
Mon, 15 May 2000 20:12:22 PDT

Implementing RPCs

This paper deals with the main features of a package implementing RPCs and
it's development on a LAN. Even though
previous work has been done on that subject, this paper is entirely
dedicated to develop a performant RPC
protocol as a mean of communication for both control and data transfers, and
as an alternative to existing
communication methods (message passing, address sharing, etc).

RPC was designed to be flexible, but was optimized for a specific
environment (signle-user Mesa-based workstations
on a LAN), with simplicity, efficiency and security as the main goals. The
reason for chosing RPC is because
procedures are the main ctrl and data transfer mechanism in Mesa, thus full
compatibility with local procedure
calls was provided as a mean for simplicity.
The RPC mechanism uses the concepts of stub and RPCRuntime for communication
over the network. When the user generates
a RP call, the stub simply packs the arguments and gives them to the RPC
comm. package that takes care of the
communication over the network; the reception is done in a symmetrical way.
Stubs are automatically generated by a
system program (Lupine), thus the user just needs to write the interface and
the appz code.
The RPC protocol itself can be used in two different modes: simple and
complicated. The difference between the two
is that ACK packets can be considered as implicit on reception of a generic
data packet and thus can be eliminated;
they are still needed though in case we need to detect any communication
network failure.
Security and Performance are provided through encryption and a special
mechanism that allows idle processes to be
resumed on an RPC call, which avoids the creation of a new process
(expensive).

This paper is a very good presentation of an RPC implementation, and even
though it is oriented towards a specific
system it helped me understand the main mechanisms involved during
communication through RPC. I think it's really well
structured and presents the main points without giving useless details.
The system was already implemented and running when the paper was written,
and it's performance satisfied the authors;
there is no direct mention of future work, even though they remark that for
Broadcasting, RPC is not the better solution,
which may have involved some future work.

Performing Remote Operations Efficiently on a Local Computer Network

The main point of this paper is presenting a communication model
implementing efficiently remote references across
a local network. This methodology is not designed specifically for a given
system, even though in the scope of this
paper it is applied to the Xerox Alto computer network. Even though previous
work has been done on the topic of
performant distributed systems across a network, this paper introduces the
new concept of performance across a local
secure network.

To achieve high performance communication on high speed local networks, an
integrated implementation was chosen,
providing special communication-oriented functions; communication between
processes was thus provided by special
communication processes taking care of packet TX/RX and all the required
synchronization, even though the specification
of the various transmission options was up to the communicating processes.
Thus, on a remote reference a process could
choose among several reliability levels, specify whether an optional return
value is expected as well as remote operation
synchronization and flow control, and the type of the called remote process.
The dedicated communication process would then take care of the creation of
sessions, which provide the logical connection
between 2 processes through a network socket, as well as their termination,
initialization of remote executions and other
network-related requests.
Finally, the constant switching between communicating processes and the
dedicated communication process required fast
context switches, in order to provide efficient process communication across
a local network.

The theory and implementation of this communication model is explained very
well in this paper, with some good examples
given to illustrate it's advantages. I personally had a chance to increase
my understanding of all the different
solutions that can be adopted to increase performance on a local network.
Future work is suggested when the paper mentions
that the system could be improved to handle communication between one server
and multiple slaves.

________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com