Thoughts on Interactions in Distributed Services (RFC0722)
Original Publication Date: 1976-Sep-16
Included in the Prior Art Database: 2000-Sep-13
Internet Society Requests For Comment (RFCs)
This paper addresses some issues concerned with the design of distributed services. In particular, it is concerned with the characteristics of the interactions, between programs which support some service at various network sites. The ideas presented are derived mainly from experience with various service protocols [Reference 1] on the ARPANET.
Network Working Group Jack Haverty (MIT)
Request for Comments: 722 Sept 1976
This paper addresses some issues concerned with the
design of distributed services. In particular, it is
concerned with the characteristics of the interactions,
between programs which support some service at various
network sites. The ideas presented are derived mainly from
experience with various service protocols [Reference 1]
on the ARPANET.
A model is developed of interactions between programs.
Salient features of this model which promote and simplify
the construction of reliable, responsive services are
identified. These dualities are motivated by problems
experienced with various ARPANET protocols and in the design
and maintenance of programs which use these protocols in the
performance of some service.
Using this model as a template, the general
architecture of one possible interaction protocol is
presented. This mechanism provides a foundation on which
protocols would be constructed for particular services,
simplifying the process of creating services which are easy
to implement and maintain, and appear reliable and
responsive to the customer. This presentation is meant to
serve as an introduction to a specific instance of such a
protocol, called the RRP, which is defined in one of the
II. OVERVIEW AND TERMINOLOGY
This paper considers the interaction of two programs
which support some network service. It develops a model of
the interactions of a class of such applications, and
includes some thoughts on desirable goals and
characteristics of implementations. The model is derived
from a proposal [Reference 2] for mail-handling
systems. Terminology, as introduced, is highlighted by
Many uses of computer networks involve communication
directly between programs, without human intervention or
monitoring. Some examples would include an advanced
mail-handling system, or any kind of multi-site data base
Such programs will be termed SERVERs. They are the
users of some mechanism which provides the needed
communication and synchronization. The particular facility
which the servers implement will be termed a SERVICE.
Servers for any particular service may be written in several
languages, operate in various system environments on
different kinds of computers. The entity which utilizes the
service will be termed the CUSTOMER.
Servers interact during ENCOUNTERs, which are the
periods when two servers are in comm...